@charset "UTF-8";
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal; }

img {
  width: 100%;
  height: 100%;
  object-fit: cover; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

nav ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: black; }

li {
  list-style: none; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input,
select {
  vertical-align: middle; }

/*********************************************/
/*                 inputReset                */
/*********************************************/
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none; }

textarea {
  resize: vertical; }

input[type="checkbox"],
input[type="radio"] {
  display: none; }

select::-ms-expand {
  display: none; }

img {
  -webkit-user-drag: none; }

a:-webkit-any-link {
  cursor: none; }

/*********************************/
/*            commmon            */
/*********************************/
/*********************************************/
/*             color                         */
/*********************************************/
/*********************************************/
/*             font-family                   */
/*********************************************/
@font-face {
  font-family: "OHC-Font";
  src: url("/static/font/MetroNovaPro-Regular.otf"); }

/*********************************************/
/*                 font                   */
/*********************************************/
/*********************************************/
/*                 bold                   */
/*********************************************/
/*********************************************/
/*                 button                   */
/*********************************************/
/*********************************************/
/*             box-shadow                    */
/*********************************************/
/*********************************************/
/*                 wrap                   */
/*********************************************/
/*********************************************/
/*                  Common                   */
/*********************************************/
body {
  font-family: "Noto Sans JP", sans-serif;
  overflow-x: hidden;
  position: relative; }
  @media only screen and (max-width: 768px) {
    body {
      cursor: auto; } }
.forSp {
  display: none; }
  @media only screen and (max-width: 768px) {
    .forSp {
      display: block; } }
.forPc {
  display: block; }
  @media only screen and (max-width: 768px) {
    .forPc {
      display: none; } }
.forced-change-en-font {
  font-family: "OHC-Font", serif !important; }

#main_content {
  position: relative;
  /*描画を#particles-jsよりも上にするためposition:relative;を指定*/
  z-index: 1;
  /*z-indexの数字を大きくすることで描画を#particles-jsよりも上に*/
  width: 100%;
  height: 100%;
  padding-top: 19rem; }
  @media only screen and (max-width: 768px) {
    #main_content {
      padding-top: 13.8rem; } }
.cmn-ttl {
  font-size: 3.6rem;
  color: #525252;
  font-family: "OHC-Font", serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  position: relative;
  display: inline-block;
  padding-bottom: 1.8rem;
  padding-right: 4.8rem;
  border-bottom: 0.2rem solid #c7c7c7; }
  @media only screen and (max-width: 768px) {
    .cmn-ttl {
      font-size: 2.8rem;
      padding-bottom: 1.2rem;
      padding-right: 3.2rem; } }
  .cmn-ttl::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: 33%;
    height: 0.2rem;
    background-color: #ee7800; }
  .cmn-ttl__wrap {
    padding-bottom: 8rem; }
    @media only screen and (max-width: 768px) {
      .cmn-ttl__wrap {
        padding-bottom: 6rem; } }
.cmn__color--orange {
  color: #ee7800; }

.cmn__required-icon:after {
  content: "※";
  color: #ee7800;
  font-size: 1.4rem;
  padding-left: 0.5rem;
  display: inline-block;
  transform: translateY(-10%); }
  @media only screen and (max-width: 768px) {
    .cmn__required-icon:after {
      font-size: 1.4rem;
      transform: translateY(0%); } }
/*********************************************/
/*                 hover                   */
/*********************************************/
.hover {
  transition: all 0.4s ease; }
  .hover:hover {
    opacity: 0.6; }

/*********************************************/
/*                 mask                   */
/*********************************************/
#mask {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  background-color: rgba(233, 232, 232, 0.98);
  transition: opacity 0.4s ease; }
  #mask.is-active {
    opacity: 1;
    z-index: 100; }

/*********************************************/
/*                  button                   */
/*********************************************/
.cmn-btn__blue {
  font-size: 1.8rem;
  color: #fff;
  background-color: #46b5e9;
  padding: 2.1rem 0;
  width: 26rem;
  letter-spacing: 0.15em;
  font-weight: bold;
  border-radius: 4rem;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif; }

.cmn-btn__white {
  font-size: 1.8rem;
  color: #fff;
  background-color: transparent;
  padding: 2.1rem 0;
  width: 26rem;
  letter-spacing: 0.15em;
  font-weight: bold;
  border-radius: 4rem;
  text-align: center;
  font-family: "OHC-Font", serif;
  border: #fff solid 1.4px;
  transition: all 0.4s ease;
  display: block; }
  .cmn-btn__white:hover {
    background-color: #fff;
    color: #ee7800; }
  .cmn-btn__white.ff-jp {
    font-family: "Noto Sans JP", sans-serif; }

.cmn-btn__orange {
  font-size: 1.8rem;
  color: #ee7800;
  background-color: transparent;
  padding: 2.1rem 0;
  width: 26rem;
  letter-spacing: 0.15em;
  font-weight: bold;
  border-radius: 4rem;
  text-align: center;
  font-family: "OHC-Font", serif;
  border: #ee7800 solid 1.4px;
  transition: all 0.4s ease; }
  .cmn-btn__orange:hover {
    background-color: #ee7800;
    color: #fff; }

/*********************************************/
/*           アニメーション関数                 */
/*********************************************/
/*********************************************/
/*                   fade in                 */
/*********************************************/
/* →その場でフワッと出てくる動作 */
.fadein {
  opacity: 0;
  transition: opacity 2s; }
  .fadein.inview {
    opacity: 1; }

/* →下からくる動作 */
/*********************************/
/*          PC header            */
/*********************************/
#header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  transition: all 0.4s ease;
  z-index: 100;
  background-color: #fff;
  box-shadow: 3px 3px 99px #48484829; }
  #header.hamburger-menu-adjust {
    /* homeページ以外でデザインのずれがあるため、その調整用のスタイリング */ }
    @media only screen and (max-width: 768px) {
      #header.hamburger-menu-adjust {
        transform: translateY(0); } }
  #header.is-active {
    /* hamburgerMenuをクリックした後のスタイリング */
    background-color: transparent !important;
    box-shadow: none !important; }
  #header.is-active-bg-color {
    background-color: #fff;
    box-shadow: 3px 3px 99px #48484829; }
  #header .header__wrap {
    width: 98rem;
    margin: 0 auto;
    height: 8rem;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media only screen and (max-width: 768px) {
      #header .header__wrap {
        width: 31.5rem;
        margin: 0 auto;
        height: 7.6rem; } }
  #header .logo__img {
    display: block;
    width: 18rem;
    height: 4rem; }
  #header .nav__wrap {
    width: 100rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* hamburgerMenuをクリックした後のスタイリング */ }
    @media only screen and (max-width: 768px) {
      #header .nav__wrap {
        display: none; } }
    @media only screen and (max-width: 768px) {
      #header .nav__wrap.is-active {
        display: block;
        position: fixed;
        left: 12%;
        left: calc(50vw - 15.7rem);
        top: 100%;
        width: 31.5rem;
        margin: 0 auto;
        margin-top: 4rem; } }
    @media only screen and (max-width: 768px) {
      #header .nav__wrap.is-active__menu {
        line-height: 8rem;
        font-size: 2.4rem; } }
    #header .nav__wrap.is-active__menu:hover {
      border: solid;
      border-color: #b6dbea; }
  #header .nav__menu {
    font-size: 1.6rem;
    color: #525252;
    font-family: "OHC-Font", serif;
    font-weight: 700;
    letter-spacing: 0.1em; }
    @media only screen and (max-width: 768px) {
      #header .nav__menu {
        line-height: 8rem;
        font-size: 2.4rem; } }
    #header .nav__menu:hover {
      color: #ee7800;
      cursor: pointer; }
    #header .nav__menu.contact {
      font-size: 1.6rem;
      color: #fff;
      background-color: #46b5e9;
      padding: 1.6rem 0;
      width: 13.7rem;
      letter-spacing: 0.15em;
      font-weight: bold;
      border-radius: 4rem;
      text-align: center;
      display: inline-block;
      background-color: #ee7800;
      border: solid;
      border-color: #edd3b8;
      transition: all 0.4s ease; }
      @media only screen and (max-width: 768px) {
        #header .nav__menu.contact {
          background-color: transparent;
          font-weight: 900;
          color: #525252;
          padding: 0;
          display: inline;
          border: none;
          transition: all 0s ease;
          font-size: 2.4rem; } }
      #header .nav__menu.contact:hover {
        background-color: #46b5e9;
        border: solid;
        border-color: #b6dbea; }
        @media only screen and (max-width: 768px) {
          #header .nav__menu.contact:hover {
            background-color: transparent;
            color: #ee7800;
            border: none; } }
  #header .nav__language-changer-btn {
    width: 3.2rem;
    height: 3.2rem;
    margin-left: 1rem; }
    @media only screen and (max-width: 768px) {
      #header .nav__language-changer-btn {
        position: absolute;
        bottom: 0;
        right: 1.8rem; } }
  #header .hamburger-menu {
    /* hamburgerMenuをクリックした後のスタイリング */ }
    @media only screen and (max-width: 768px) {
      #header .hamburger-menu {
        position: relative;
        width: 2.4rem;
        height: 1.4rem; } }
    @media only screen and (max-width: 768px) {
      #header .hamburger-menu span {
        display: inline-block;
        transition: all 0.4s;
        /*アニメーションの設定*/
        position: absolute;
        right: 0;
        height: 0.3rem;
        width: 2.4rem;
        background-color: #ee7800;
        border-radius: 8px; } }
    @media only screen and (max-width: 768px) {
      #header .hamburger-menu span:nth-of-type(1) {
        top: 100%; } }
    @media only screen and (max-width: 768px) {
      #header .hamburger-menu span:nth-of-type(2) {
        top: 0%; } }
    @media only screen and (max-width: 768px) {
      #header .hamburger-menu.is-active span:nth-of-type(1) {
        transform: translateY(-7px) rotate(45deg); } }
    @media only screen and (max-width: 768px) {
      #header .hamburger-menu.is-active span:nth-of-type(2) {
        transform: translateY(7px) rotate(-45deg); } }
/*********************************/
/*          PC footer            */
/*********************************/
#footer {
  z-index: 100;
  position: relative;
  padding: 5rem 0 3rem; }
  #footer .copyright {
    font-size: 1.4rem;
    color: #525252;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    text-align: center; }
    @media only screen and (max-width: 768px) {
      #footer .copyright {
        font-size: 1.2rem; } }
#bg_animation {
  position: fixed;
  /*描画固定*/
  z-index: -100;
  /*描画を一番下に*/
  width: 100%;
  height: 100%;
  background-color: #FAFAF9;
  /*背景色*/ }

#language-changer {
  position: fixed;
  top: 7rem;
  right: 12%;
  right: calc(50vw - 54rem);
  opacity: 0;
  visibility: hidden;
  transition: ease 0.4s;
  z-index: 101; }
  @media only screen and (max-width: 768px) {
    #language-changer {
      position: inherit;
      transform: translateX(12rem); } }
  #language-changer.is-active {
    opacity: 1; }
    #language-changer.is-active .main {
      visibility: visible; }
  #language-changer .main {
    background-color: #a2a0a0;
    width: 12rem;
    height: 4.8rem;
    display: flex;
    justify-content: center;
    align-items: center;
    visibility: none; }
    #language-changer .main__space {
      width: 1rem;
      height: 0.1rem;
      background-color: #fff;
      margin: 0 1rem; }
    #language-changer .main__txt {
      font-size: 1.8rem;
      color: #fff;
      font-family: "OHC-Font", serif;
      font-weight: 500;
      letter-spacing: 0.05em; }

.progress {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.8rem;
  /* バーの高さを指定 */
  z-index: 1000; }
  .progress__bar {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #46b5e9;
    /* バーの色を指定 */
    height: 100%;
    width: 0;
    /* 初期値は0 */ }

/*************************************/
/*            Home                   */
/*************************************/
#home {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  #home .top-view {
    position: relative;
    width: 100%;
    height: 100vh; }
    #home .top-view__video {
      position: absolute;
      z-index: -1;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      height: 101%;
      min-height: 100%;
      min-width: 100%; }
      #home .top-view__video--wrap {
        position: absolute;
        z-index: -1;
        /*最背面に設定*/
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        overflow: hidden; }
    #home .top-view__wrap {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 100%;
      display: flex;
      flex-flow: column; }
    #home .top-view__ttl {
      font-size: 5.6rem;
      color: #ee7800;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 700;
      letter-spacing: 0.05em;
      text-align: center; }
      @media only screen and (max-width: 768px) {
        #home .top-view__ttl {
          font-size: 3.6rem;
          line-height: 5rem;
          width: 26rem;
          margin: 0 auto; } }
    #home .top-view__logo {
      width: 28rem;
      height: auto;
      margin: 0 auto 3rem auto;
      display: block; }
      @media only screen and (max-width: 768px) {
        #home .top-view__logo {
          margin-bottom: 6rem; } }
    #home .top-view__btn {
      display: block;
      margin: 8rem auto 0 auto; }
      @media only screen and (max-width: 768px) {
        #home .top-view__btn {
          margin-top: 6rem; } }
  #home .list-member {
    margin-top: 24rem;
    position: relative;
    z-index: 100; }
    @media only screen and (max-width: 768px) {
      #home .list-member {
        margin-top: 16rem; } }
    #home .list-member__wrap {
      width: 100%;
      max-width: 118rem;
      margin: 0 auto; }
      @media only screen and (max-width: 768px) {
        #home .list-member__wrap {
          width: 31.5rem;
          margin: 0 auto; } }
    #home .list-member__ttl {
      font-size: 4.2rem;
      color: #525252;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 700;
      letter-spacing: 0.05em;
      display: inline-block;
      text-align: center; }
      #home .list-member__ttl--wrap {
        margin: 0 auto 8rem auto;
        display: block;
        text-align: center; }
        @media only screen and (max-width: 768px) {
          #home .list-member__ttl--wrap {
            line-height: 3.8rem;
            margin-bottom: 6rem; } }
      @media only screen and (max-width: 768px) {
        #home .list-member__ttl {
          font-size: 3.2rem;
          line-height: 4rem; } }
      @media print {
        #home .list-member__ttl {
          font-family: "Noto Sans JP", sans-serif;
          font-weight: 700; } }
      #home .list-member__ttl.blue {
        color: skyblue; }
      #home .list-member__ttl.orange {
        color: #ee7800; }
    #home .list-member__main {
      display: flex;
      justify-content: center;
      align-items: flex-start;
      flex-wrap: nowrap;
      gap: 2rem;
      padding: 0;
      margin: 0 auto;
      width: 100%; }
      @media only screen and (max-width: 768px) {
        #home .list-member__main {
          flex-flow: column;
          flex-wrap: wrap; } }
      #home .list-member__main li {
        flex: 0 0 auto;
        width: auto;
        max-width: 24rem;
        height: auto; }
        @media only screen and (max-width: 768px) {
          #home .list-member__main li {
            width: 100%;
            max-width: 100%;
            height: auto; } }
        @media only screen and (max-width: 768px) {
          #home .list-member__main li:not(:first-child) {
            margin-top: 4rem; } }
    #home .list-member__img {
      break-inside: avoid;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      border-radius: 1000px;
      width: 21rem;
      height: 21rem;
      margin: 0 auto;
      display: block;
      transition: all 0.4s ease; }
      #home .list-member__img--wrap {
        width: 21rem;
        height: 21rem;
        border-radius: 1000px;
        position: relative;
        margin: 0 auto;
        display: block;
        transition: all 0.4s ease;
        background-color: #000; }
        #home .list-member__img--wrap:hover .list-member__img {
          opacity: 0.4; }
          #home .list-member__img--wrap:hover .list-member__img--hover-txt {
            opacity: 1; }
      #home .list-member__img--hover-txt {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: 3.6rem;
        color: #fff;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        letter-spacing: 0.2em;
        text-align: center;
        line-height: 4.8rem;
        transition: all 0.4s ease;
        opacity: 0; }
    #home .list-member__txt--wrap {
      font-size: 1.6rem;
      color: #525252;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      letter-spacing: 0.05em;
      padding-top: 2.4rem;
      text-align: center; }
      @media print {
        #home .list-member__txt--wrap {
          font-family: "Noto Sans JP", sans-serif;
          font-weight: 700; } }
      @media only screen and (max-width: 768px) {
        #home .list-member__txt--wrap {
          padding-top: 1.6rem; } }
    #home .list-member__txt--name {
      font-size: 2.8rem;
      font-weight: 700;
      line-height: 2.8rem; }
      @media only screen and (max-width: 768px) {
        #home .list-member__txt--name {
          font-size: 2.8rem; } }
    #home .list-member__txt--univ {
      color: #6c6767;
      font-size: 2rem;
      font-weight: 700;
      padding-top: 1.4rem;
      line-height: 2.4rem; }
      @media only screen and (max-width: 768px) {
        #home .list-member__txt--univ {
          font-size: 1.6rem; } }
    #home .list-member__txt--major {
      color: #6c6767;
      font-size: 1.2rem;
      padding-top: 0.8rem;
      line-height: 2rem;
      width: 24rem;
      margin: 0 auto; }
      @media only screen and (max-width: 768px) {
        #home .list-member__txt--major {
          font-size: 1.2rem; } }
  #home .prototype {
    position: relative;
    width: 100vw;
    height: 100vh;
    margin-top: 24rem;
    z-index: -1; }
    @media only screen and (max-width: 768px) {
      #home .prototype {
        margin-top: 16rem; } }
    #home .prototype__wrap {
      width: 98rem;
      margin: 0 auto;
      font-size: 1.6rem;
      color: #fff;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      letter-spacing: 0.05em;
      padding-top: 100vh;
      transform: translateY(-50%); }
      @media print {
        #home .prototype__wrap {
          font-family: "Noto Sans JP", sans-serif;
          font-weight: 700; } }
      @media only screen and (max-width: 768px) {
        #home .prototype__wrap {
          width: 31.5rem;
          margin: 0 auto; } }
    #home .prototype__ttl {
      font-size: 4.8rem;
      font-weight: 900;
      margin-top: 3rem;
      line-height: 5.8rem; }
      @media only screen and (max-width: 768px) {
        #home .prototype__ttl {
          font-size: 3.8rem;
          margin-top: 2.6rem;
          line-height: 4.8rem; } }
      #home .prototype__ttl--sub {
        font-size: 3rem;
        font-weight: 900;
        font-family: "OHC-Font", serif; }
        @media only screen and (max-width: 768px) {
          #home .prototype__ttl--sub {
            font-size: 2.6rem; } }
    #home .prototype__des {
      font-size: 2rem;
      margin-top: 3.6rem;
      line-height: 4.2rem;
      display: inline-block; }
      @media only screen and (max-width: 768px) {
        #home .prototype__des {
          font-size: 1.6rem;
          line-height: 2.8rem;
          width: 31.5rem;
          overflow: hidden; } }
    #home .prototype__btn {
      margin-top: 4.8rem;
      display: block; }
      @media only screen and (max-width: 768px) {
        #home .prototype__btn {
          margin-top: 3.8rem; } }
    #home .prototype__bg-img {
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      bottom: 0;
      z-index: -1; }
  #home .members {
    padding-top: 24rem;
    width: 98rem;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      #home .members {
        width: 31.5rem;
        margin: 0 auto;
        padding-top: 16rem; } }
    #home .members__lists {
      margin-top: 8rem; }
      @media only screen and (max-width: 768px) {
        #home .members__lists {
          margin-top: 6rem; } }
    #home .members__list {
      margin-bottom: 8rem;
      display: flex;
      justify-content: space-between;
      align-items: center; }
      @media only screen and (max-width: 768px) {
        #home .members__list {
          display: block;
          margin-bottom: 6rem; } }
      #home .members__list:nth-child(even) {
        flex-direction: row-reverse; }
      #home .members__list:last-child {
        margin-bottom: 0; }
    #home .members__img {
      border-radius: 4px; }
      #home .members__img--wrap {
        width: 45.4rem;
        height: 42rem; }
        @media only screen and (max-width: 768px) {
          #home .members__img--wrap {
            width: 100%;
            height: 24rem; } }
    #home .members__txt--wrap {
      width: 45.4rem; }
      @media only screen and (max-width: 768px) {
        #home .members__txt--wrap {
          width: 100%; } }
    @media only screen and (max-width: 768px) {
      #home .members__txt--head {
        padding-top: 2.2rem; } }
    #home .members__txt--name {
      font-size: 2.8rem;
      color: #525252;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 700;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 768px) {
        #home .members__txt--name {
          padding-top: 0.4rem; } }
    #home .members__txt--univ {
      font-size: 1.6rem;
      color: #6c6767;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      letter-spacing: 0.05em;
      padding-top: 2rem; }
      @media only screen and (max-width: 768px) {
        #home .members__txt--univ {
          font-size: 1.4rem;
          padding-top: 1rem; } }
    #home .members__txt--major {
      font-size: 1.6rem;
      color: #6c6767;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      letter-spacing: 0.05em;
      padding-top: 0.4rem;
      line-height: 1.8rem; }
      @media only screen and (max-width: 768px) {
        #home .members__txt--major {
          font-size: 1.4rem; } }
    #home .members__txt--body {
      padding-top: 2.2rem; }
    #home .members__txt--profile {
      font-size: 1.6rem;
      color: #525252;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      letter-spacing: 0.05em;
      line-height: 2.4rem; }
      @media only screen and (max-width: 768px) {
        #home .members__txt--profile {
          font-size: 1.4rem; } }
  #home .newsfeed__wrap {
    padding-top: 24rem;
    width: 98rem;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      #home .newsfeed__wrap {
        width: 31.5rem;
        margin: 0 auto;
        padding-top: 16rem; } }
  #home .newsfeed__lists {
    margin-top: 8rem;
    width: 100%;
    display: flex;
    justify-content: space-between; }
    @media only screen and (max-width: 768px) {
      #home .newsfeed__lists {
        margin-top: 6rem;
        flex-flow: column; } }
  #home .newsfeed__list {
    width: 48%;
    height: 32rem;
    /* 要素数が3つの場合のスタイリング*/ }
    @media only screen and (max-width: 768px) {
      #home .newsfeed__list {
        width: 100%; } }
    @media only screen and (max-width: 768px) {
      #home .newsfeed__list:not(:first-child) {
        margin-top: 6rem; } }
    #home .newsfeed__list:first-child:nth-last-child(3), #home .newsfeed__list:first-child:nth-last-child(3) ~ .newsfeed__list {
      width: 32%;
      height: 28rem; }
      @media only screen and (max-width: 768px) {
        #home .newsfeed__list:first-child:nth-last-child(3), #home .newsfeed__list:first-child:nth-last-child(3) ~ .newsfeed__list {
          width: 100%; } }
    #home .newsfeed__list:hover .newsfeed__img {
      opacity: 0.7; }
    #home .newsfeed__list:hover .newsfeed__more {
      background-color: #fff; }
      #home .newsfeed__list:hover .newsfeed__more--txt {
        color: #ee7800; }
    #home .newsfeed__list:hover .newsfeed__body--ttl {
      opacity: 0.7; }
  #home .newsfeed__head {
    width: 100%;
    height: 100%;
    position: relative;
    border-radius: 4px;
    background-color: #000000;
    border-radius: 10px;
    display: block; }
    @media only screen and (max-width: 768px) {
      #home .newsfeed__head {
        height: 21.7rem; } }
  #home .newsfeed__img {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    box-shadow: 0px 0px 4px #79797933;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    @media only screen and (max-width: 768px) {
      #home .newsfeed__img {
        height: 21.7rem; } }
  #home .newsfeed__more {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    padding: 0.8rem 1.4rem;
    background-color: #ee7800;
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    @media only screen and (max-width: 768px) {
      #home .newsfeed__more {
        border-radius: 4px; } }
    #home .newsfeed__more--txt {
      display: inline-block;
      transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      font-size: 1.8rem;
      color: #fff;
      font-family: "OHC-Font", serif;
      font-weight: 700;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 768px) {
        #home .newsfeed__more--txt {
          font-size: 1.6rem; } }
  #home .newsfeed__body--ttl {
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    font-size: 2rem;
    color: #525252;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 2.6rem;
    padding-top: 3rem; }
    @media only screen and (max-width: 768px) {
      #home .newsfeed__body--ttl {
        font-size: 2rem;
        line-height: 3rem;
        padding-top: 2rem; } }
  #home .media__wrap {
    padding-top: 24rem;
    width: 98rem;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      #home .media__wrap {
        width: 31.5rem;
        margin: 0 auto;
        padding-top: 16rem; } }
  #home .media__content {
    margin-top: 8rem; }
    #home .media__content--txt {
      margin: 0 auto;
      display: block;
      text-align: center;
      padding-top: 20px;
      font-size: 1.8rem;
      color: #525252;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 700;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 768px) {
        #home .media__content--txt {
          font-size: 1.0rem; } }
    #home .media__content--note {
      margin: 5rem auto 0 auto;
      display: block;
      box-sizing: border-box;
      width: 20%;
      border-radius: 10px;
      background-color: #fff;
      box-shadow: 0px 0px 4px #79797933; }
      #home .media__content--note:hover {
        cursor: pointer;
        box-shadow: 0px 0px 20px #79797933; }
      @media only screen and (max-width: 768px) {
        #home .media__content--note {
          margin-top: 4rem;
          width: 50%; } }
    #home .media__content .items {
      margin-top: 6rem; }
    #home .media__content--udemy {
      margin: 5rem auto 0 auto;
      display: block;
      box-sizing: border-box;
      width: 20%;
      padding: 1rem 2rem;
      border-radius: 10px;
      background-color: #fff;
      box-shadow: 0px 0px 4px #79797933; }
      #home .media__content--udemy:hover {
        cursor: pointer;
        box-shadow: 0px 0px 20px #79797933; }
      @media only screen and (max-width: 768px) {
        #home .media__content--udemy {
          margin-top: 4rem;
          width: 50%; } }
  #home .contact__wrap {
    padding-top: 15rem;
    width: 98rem;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      #home .contact__wrap {
        width: 31.5rem;
        margin: 0 auto;
        padding-top: 16rem; } }
  #home .contact__des {
    font-size: 2rem;
    color: #525252;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-top: 6.8rem; }
    @media print {
      #home .contact__des {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700; } }
    @media only screen and (max-width: 768px) {
      #home .contact__des {
        font-size: 1.8rem;
        line-height: 4rem;
        margin-top: 4.8rem;
        width: 29rem; } }
  #home .contact__btn {
    margin: 10.8rem auto 20rem auto;
    display: block; }
    @media only screen and (max-width: 768px) {
      #home .contact__btn {
        margin-top: 4.8rem; } }
  #home .home__ttl {
    font-size: 4.2rem;
    color: #525252;
    font-family: "OHC-Font", serif;
    font-weight: 900;
    letter-spacing: 0.05em;
    margin-bottom: 2rem; }
    @media print {
      #home .home__ttl {
        font-family: "Noto Sans JP", sans-serif; } }
    @media only screen and (max-width: 768px) {
      #home .home__ttl {
        font-size: 3.6rem;
        margin-bottom: 1.6rem; } }
#company-page .top {
  width: 98rem;
  margin: 0 auto; }
  @media only screen and (max-width: 768px) {
    #company-page .top {
      width: 31.5rem;
      margin: 0 auto; } }
#company-page .main {
  width: 98rem;
  margin: 0 auto;
  padding-bottom: 14rem; }
  @media only screen and (max-width: 768px) {
    #company-page .main {
      width: 31.5rem;
      margin: 0 auto; } }
  #company-page .main__list {
    display: flex;
    padding: 2.8rem 0 2.8rem;
    border-bottom: 2px dotted #dedada; }
    @media only screen and (max-width: 768px) {
      #company-page .main__list {
        display: block; } }
    #company-page .main__list-head {
      width: 32%; }
      @media only screen and (max-width: 768px) {
        #company-page .main__list-head {
          width: 100%;
          padding-bottom: 2.4rem; } }
      #company-page .main__list-head--txt {
        font-size: 1.8rem;
        color: #ee7800;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        letter-spacing: 0.05em;
        display: block; }
        @media only screen and (max-width: 768px) {
          #company-page .main__list-head--txt {
            font-size: 1.6rem; } }
    #company-page .main__list-body {
      width: 68%; }
      #company-page .main__list-body--txt {
        font-size: 1.6rem;
        color: #525252;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        letter-spacing: 0.05em;
        display: flex; }
        @media only screen and (max-width: 768px) {
          #company-page .main__list-body--txt {
            font-size: 1.4rem;
            line-height: 2.4rem; } }
        #company-page .main__list-body--txt:not(:first-child) {
          padding-top: 1.4rem; }
        #company-page .main__list-body--txt p:nth-child(1) {
          width: 12rem; }
          @media only screen and (max-width: 768px) {
            #company-page .main__list-body--txt p:nth-child(1) {
              width: 10rem; } }
/*********************************************/
/*            Contact-Page                   */
/*********************************************/
#contact-page {
  /* プルダウンメニューの記述 */ }
  #contact-page .top {
    width: 98rem;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      #contact-page .top {
        width: 31.5rem;
        margin: 0 auto; } }
    #contact-page .top__txt {
      font-size: 1.6rem;
      color: #525252;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      letter-spacing: 0.05em;
      line-height: 2.4rem;
      padding-bottom: 8.8rem; }
      @media only screen and (max-width: 768px) {
        #contact-page .top__txt {
          font-size: 1.4rem;
          padding-bottom: 7rem; } }
      #contact-page .top__txt--btm {
        padding-top: 0.8rem;
        display: inline-block; }
  #contact-page .form {
    background-color: rgba(229, 227, 227, 0.32);
    padding-top: 7.2rem; }
    @media only screen and (max-width: 768px) {
      #contact-page .form {
        padding: 5.3rem 0 12rem; } }
    #contact-page .form__lists {
      width: 98rem;
      margin: 0 auto; }
      @media only screen and (max-width: 768px) {
        #contact-page .form__lists {
          width: 31.5rem;
          margin: 0 auto; } }
    #contact-page .form__list {
      display: flex;
      justify-content: space-between;
      align-items: center; }
      @media only screen and (max-width: 768px) {
        #contact-page .form__list {
          flex-flow: column;
          align-items: start; } }
      #contact-page .form__list:not(last-child) {
        margin-bottom: 4.83rem; }
        @media only screen and (max-width: 768px) {
          #contact-page .form__list:not(last-child) {
            margin-bottom: 2.4rem; } }
      #contact-page .form__list--ttl {
        margin-top: 10rem; }
        @media only screen and (max-width: 768px) {
          #contact-page .form__list--ttl {
            margin-top: 6rem; } }
    #contact-page .form__head {
      font-size: 1.6rem;
      color: #525252;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 700;
      letter-spacing: 0.05em;
      line-height: 2.4rem; }
      @media only screen and (max-width: 768px) {
        #contact-page .form__head {
          font-size: 1.4rem;
          margin-bottom: 0.8rem; } }
      #contact-page .form__head--ttl {
        margin-top: 5rem; }
    #contact-page .form__body {
      font-size: 1.6rem;
      color: #525252;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      letter-spacing: 0.05em;
      padding: 0 1.8rem;
      display: block;
      box-sizing: border-box;
      width: 71.25rem;
      height: 5.67rem;
      border-radius: 10px;
      background-color: #fff;
      border: #e6ebf6 solid 2px; }
      @media only screen and (max-width: 768px) {
        #contact-page .form__body {
          font-size: 1.4rem;
          padding: 0 1.4rem;
          width: 100%;
          height: 4.7rem; } }
      #contact-page .form__body::placeholder {
        color: #d5d5d5; }
        @media only screen and (max-width: 768px) {
          #contact-page .form__body::placeholder {
            font-size: 1.4rem; } }
      #contact-page .form__body.textarea {
        line-height: 2.4rem;
        height: 24rem;
        padding: 1.4rem; }
        @media only screen and (max-width: 768px) {
          #contact-page .form__body.textarea {
            height: 18rem; } }
    #contact-page .form__pp {
      background-color: #eae9e9;
      border-radius: 4px;
      padding: 2.6rem 0;
      margin: 7rem 0 4.4rem;
      height: 24.8rem; }
      @media only screen and (max-width: 768px) {
        #contact-page .form__pp {
          padding: 1.8rem 1.6rem;
          margin: 3.2rem 0 3.6rem;
          height: 17.884rem; } }
      #contact-page .form__pp--wrap {
        width: 83.8rem;
        margin: 0 auto;
        font-size: 1.4rem;
        color: #525252;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        letter-spacing: 0.025em;
        line-height: 2.4rem;
        height: 100%;
        display: block;
        overflow-y: scroll; }
        @media only screen and (max-width: 768px) {
          #contact-page .form__pp--wrap {
            font-size: 1.4rem;
            width: 100%; } }
    #contact-page .form__submit--btn {
      display: block;
      margin: 7rem auto 18rem auto; }
    #contact-page .form__submit--note {
      font-size: 1.4rem;
      color: #525252;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 500;
      letter-spacing: 0.05em;
      text-align: center;
      margin: 7rem 0; }
      @media only screen and (max-width: 768px) {
        #contact-page .form__submit--note {
          font-size: 1.4rem;
          line-height: 2.4rem; } }
    #contact-page .form__agreement {
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 4.4rem 0; }
      @media only screen and (max-width: 768px) {
        #contact-page .form__agreement {
          padding: 3.8rem 0; } }
      #contact-page .form__agreement--checkbox {
        display: inline-block;
        position: relative; }
        #contact-page .form__agreement--checkbox::before {
          content: "";
          background-color: #eae9e9;
          display: block;
          height: 2rem;
          left: -0.5rem;
          margin-top: -0.8rem;
          position: absolute;
          top: 42%;
          width: 2rem;
          transition: 0.2s ease; }
        #contact-page .form__agreement--checkbox::after {
          border-right: 0.3rem solid #46b5e9;
          border-bottom: 0.3rem solid #46b5e9;
          content: "";
          display: block;
          height: 1.4rem;
          left: 0.2rem;
          margin-top: -1.1rem;
          opacity: 0;
          position: absolute;
          top: 50%;
          transform: rotate(45deg);
          width: 0.6rem;
          transition: 0.2s ease; }
        #contact-page .form__agreement--checkbox:checked.form__agreement--checkbox::after {
          opacity: 1; }
      #contact-page .form__agreement--txt {
        font-size: 1.4rem;
        color: #525252;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 500;
        letter-spacing: 0.05em;
        display: inline-block;
        padding-left: 3rem; }
        @media only screen and (max-width: 768px) {
          #contact-page .form__agreement--txt {
            padding-left: 2.2rem; } }
  #contact-page #id_InqueryCategory {
    font-size: 1.6rem;
    color: #525252;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
    padding: 0 1.8rem;
    display: block;
    box-sizing: border-box;
    width: 71.25rem;
    height: 5.67rem;
    border-radius: 10px;
    background-color: #fff;
    border: #e6ebf6 solid 2px; }
    @media only screen and (max-width: 768px) {
      #contact-page #id_InqueryCategory {
        font-size: 1.4rem;
        padding: 0 1.4rem;
        width: 100%;
        height: 4.7rem; } }
    #contact-page #id_InqueryCategory::placeholder {
      color: #d5d5d5; }
      @media only screen and (max-width: 768px) {
        #contact-page #id_InqueryCategory::placeholder {
          font-size: 1.4rem; } }
    #contact-page #id_InqueryCategory.textarea {
      line-height: 2.4rem;
      height: 24rem;
      padding: 1.4rem; }
      @media only screen and (max-width: 768px) {
        #contact-page #id_InqueryCategory.textarea {
          height: 18rem; } }
/*********************************/
/*            PC Base            */
/*********************************/
@media only screen and (max-width: 768px) {
  #thanks-page .top {
    width: 31.5rem;
    margin: 0 auto; } }

#thanks-page .top__ttl {
  font-size: 3.6rem;
  color: #525252;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 8rem; }
  @media only screen and (max-width: 768px) {
    #thanks-page .top__ttl {
      font-size: 2.4rem;
      line-height: 3.2rem;
      margin-bottom: 5rem;
      text-align: left; } }
#thanks-page .top__txt {
  display: block;
  width: 70.7rem;
  margin: 0 auto 8rem auto; }
  @media only screen and (max-width: 768px) {
    #thanks-page .top__txt {
      width: auto; } }
  #thanks-page .top__txt p {
    font-size: 1.6rem;
    color: #525252;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 2.8rem; }
    @media only screen and (max-width: 768px) {
      #thanks-page .top__txt p {
        font-size: 1.4rem;
        line-height: 2.4rem; } }
    @media only screen and (max-width: 768px) {
      #thanks-page .top__txt p:not(last-child) {
        margin-bottom: 1.8rem; } }
#thanks-page .btm {
  padding-bottom: 10rem; }
  @media only screen and (max-width: 768px) {
    #thanks-page .btm {
      background-color: rgba(229, 227, 227, 0.48); } }
  #thanks-page .btm__wrap {
    width: 98rem;
    margin: 0 auto;
    background-color: rgba(229, 227, 227, 0.48);
    padding: 5.2rem 0; }
    @media only screen and (max-width: 768px) {
      #thanks-page .btm__wrap {
        width: 31.5rem;
        margin: 0 auto;
        background-color: transparent; } }
  #thanks-page .btm__lists {
    width: 57.3rem;
    margin: 0 auto;
    padding-bottom: 4.8rem; }
    @media only screen and (max-width: 768px) {
      #thanks-page .btm__lists {
        width: auto;
        margin: auto; } }
  #thanks-page .btm__ttl {
    font-size: 1.6rem;
    color: #525252;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-bottom: 4.8rem; }
    @media only screen and (max-width: 768px) {
      #thanks-page .btm__ttl {
        font-size: 1.4rem;
        line-height: 2.4rem;
        margin-bottom: 2.8rem; } }
  #thanks-page .btm__txt {
    font-size: 1.4rem;
    color: #525252;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em; }
    @media only screen and (max-width: 768px) {
      #thanks-page .btm__txt {
        font-size: 1.2rem;
        line-height: 2.4rem; } }
    #thanks-page .btm__txt:not(last-child) {
      margin-bottom: 1.2rem; }
      @media only screen and (max-width: 768px) {
        #thanks-page .btm__txt:not(last-child) {
          margin-bottom: 0.8rem; } }
  #thanks-page .btm__btn {
    margin: 0 auto;
    display: block; }

/*********************************/
/*            PC Base            */
/*********************************/
html {
  font-size: 10px;
  box-sizing: border-box; }
  @media only screen and (max-width: 1024px) {
    html {
      font-size: 8px; } }
  @media only screen and (max-width: 768px) {
    html {
      font-size: 10px; } }
  @media only screen and (max-width: 320px) {
    html {
      font-size: 8px; } }

/*# sourceMappingURL=style.css.map */