@import url("ress_custom.min.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1405759909vw;
  line-height: 1.8em;
  color: #555555;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.1405759909vw;
  line-height: 1.8em;
  color: #7a7a7a;
}

.clearfix:after {
  content: " ";
  display: block;
  clear: both;
}

a,
a:hover {
  text-decoration: none;
  color: #555555;
}

a:visited {
  color: #555555;
}

img {
  vertical-align: bottom;
}

a > img:hover {
  opacity: 0.75;
}

li {
  list-style-type: none;
  list-style-position: inside;
}

h1 img,
h2 img,
h3 img,
h4 img,
h5 img,
h6 img,
p img,
div img,
li img {
  width: 100%;
  height: auto;
}

.pc {
  display: block;
}

.pcil {
  display: inline;
}

.sp {
  display: none;
}

.spil {
  display: none;
}

@media (max-width: 768px) {
  .sp {
    display: block;
  }
  .spil {
    display: inline;
  }
  .pc {
    display: none;
  }
  .pcil {
    display: none;
  }
}
div.wrapper {
  width: 100%;
  height: auto;
  margin: 0 auto;
  position: relative;
}

.navi_modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  background: #ededed;
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  transition: all 0.5s ease;
}
.navi_modal.active {
  visibility: visible;
  opacity: 1;
}
.navi_modal .gnavi {
  position: absolute;
  top: 8vw;
  left: 50%;
  transform: translate(-50%, 0);
  width: 80%;
  padding: 0;
}
.navi_modal .gnavi ul.navi {
  list-style: none;
  padding: 0;
  margin: 0;
}
.navi_modal .gnavi ul.navi li {
  text-align: center;
  margin-bottom: 6vw;
}
.navi_modal .gnavi ul.navi li a {
  display: block;
  margin: auto;
}
.navi_modal .gnavi ul.navi li a img {
  height: 3.4217279726vw;
  width: auto;
}

header {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 10vw;
  z-index: 1000;
}
header .toggle_menu {
  position: absolute;
  top: 3vw;
  left: 3vw;
  width: 6vw;
  height: 1vw;
  z-index: 1000;
  cursor: pointer;
}
header .toggle_menu::before, header .toggle_menu::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #000;
  position: absolute;
  left: 0;
  transition: all 0.6s ease;
}
header .toggle_menu::before {
  top: 0;
}
header .toggle_menu::after {
  bottom: 0;
}
header .toggle_menu .menu_btn_bar {
  width: 100%;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.6s ease;
  visibility: visible;
  opacity: 1;
}
header .toggle_menu.active {
  position: fixed;
}
header .toggle_menu.active::before {
  transform: rotate(45deg);
  top: 50%;
}
header .toggle_menu.active::after {
  transform: rotate(-45deg);
  bottom: 50%;
}
header .toggle_menu.active .menu_btn_bar {
  visibility: hidden;
  opacity: 0;
}

section {
  width: 100%;
  height: auto;
}
section h2 {
  height: 3.6498431708vw;
  width: fit-content;
  margin: auto;
}
section h2 img {
  height: 100%;
  width: auto;
}

section.fv {
  height: 70.1454234388vw;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
section.fv img.main_img {
  width: 61.752209866vw;
  height: auto;
}
section.fv p.main_copytext {
  font-size: 1.5225em;
  text-align: center;
  margin-top: 1.1em;
  letter-spacing: 0.05em;
}

section.concept {
  position: relative;
  z-index: 5;
  padding-top: 31.9076133447%;
}
section.concept .header_back {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}
section.concept .concept_contents {
  width: 62.5891074993vw;
  height: 62.5891074993vw;
  margin: auto;
  border: 1px solid #555555;
  border-radius: 50%;
  position: relative;
  padding-top: 14%;
}
section.concept .concept_contents h2 {
  margin-bottom: 1em;
}
section.concept .concept_conthead {
  width: 20.5466970387%;
  position: absolute;
  top: -11%;
  left: 50%;
  transform: translateX(-50%);
}
section.concept .concept_body p {
  text-align: center;
  line-height: 1.9em;
  margin-bottom: 1.6em;
  letter-spacing: 0.1em;
}
section.concept .concept_body .concept_leadtext {
  font-size: 1.75em;
  margin-bottom: 0.6em;
  line-height: 1.8em;
}

section.program {
  position: relative;
}
section.program div.program_contents {
  width: 76.6752209866vw;
  border-radius: 38.3376104933vw;
  margin: auto;
  background: #fefaf6;
  padding-top: 29.369831765vw;
  margin-top: -20.5303678358vw;
}
section.program h2 {
  margin-bottom: 2em;
}
section.program .program_list {
  width: 66.9803250642vw;
  margin: auto;
  display: block;
}
section.program .program_list li {
  border-top: 2px solid #d8d6d4;
  width: 100%;
  padding: 3em 0 1em;
}
section.program .program_list .program_date {
  text-align: center;
  font-size: 1.25em;
  margin-bottom: 0.5em;
}
section.program .program_list .program_title {
  text-align: center;
  font-size: 1.5em;
  margin-bottom: 1em;
}
section.program .program_list .program_img {
  margin-bottom: 1.8em;
}
section.program .program_list .program_detail {
  display: flex;
}
section.program .program_list .program_concept {
  width: 40%;
  border-right: 1px solid #d8d6d4;
  padding-left: 4em;
}
section.program .program_list .program_data {
  width: 60%;
  padding-left: 4em;
  white-space: nowrap;
}
section.program a.checknow {
  display: block;
  width: 31.25178215vw;
  margin: 2em auto;
  padding: 0.6em 0;
  line-height: 1em;
  background: #585552;
  text-align: center;
  color: #fff;
}
section.program .program_footer {
  width: 66.9803250642vw;
  margin: auto;
  border-top: 2px solid #d8d6d4;
  padding-bottom: 10em;
  padding-top: 2em;
}
section.program .program_footer_dot {
  text-align: center;
  font-size: 1.5em;
  line-height: 1em;
}
section.program .commingsoon {
  height: 2.5662959795vw;
  width: auto;
  display: block;
  margin: 2em auto 0;
}

section.partnership {
  padding: 7em 0;
}
section.partnership h2 {
  margin-bottom: 2em;
}
section.partnership .partnership_leadtitle {
  text-align: center;
  font-size: 1.625em;
  margin-bottom: 2em;
  letter-spacing: 0.1em;
}
section.partnership .partnership_leadtext {
  text-align: center;
  letter-spacing: 0.1em;
  margin-bottom: 3em;
}
section.partnership .partnership_contents {
  width: 63.0168234959vw;
  margin: auto;
}
section.partnership a.contactus {
  display: block;
  width: 31.25178215vw;
  margin: 2em auto;
  padding: 0.6em 0;
  line-height: 1em;
  background: #585552;
  text-align: center;
  color: #fff;
}
section.partnership .partnership_action_list {
  margin-top: 2em;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
section.partnership .partnership_action_list li {
  width: 30%;
  margin-bottom: 4em;
}
section.partnership .partnership_action_list li h3 {
  text-align: center;
  font-weight: 300;
  font-size: 1.125rem;
  line-height: 3em;
}
section.partnership .partnership_action_list li h3 img {
  display: block;
  margin: auto;
  height: 2.3381807813vw;
  width: fit-content;
}

section.founder {
  position: relative;
  height: 54.1773595666vw;
  overflow: hidden;
}
section.founder div.founder_contents {
  width: 76.6752209866vw;
  border-radius: 38.3376104933vw;
  margin: auto;
  background: #fefaf6;
  padding: 2em 0 100vw;
}
section.founder h2 {
  margin-bottom: 2em;
}
section.founder .founder_list {
  width: 72.8151729267%;
  margin: 2em auto;
  display: flex;
  justify-content: space-between;
}
section.founder .founder_list li {
  width: 26.5%;
}
section.founder .swc_icon {
  width: 20.0456230396vw;
  height: auto;
  display: block;
  margin: 0 auto 1em;
}

footer {
  position: absolute;
  width: 90%;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  border-top: 1px solid #000;
}
footer p.copyright {
  padding: 0em 0 3em;
  width: 13.2877102937vw;
  height: fit-content;
  margin: auto;
  text-align: center;
}

@media (max-width: 768px) {
  body {
    font-size: 3.0973451327vw;
  }
  .navi_modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    background: #fff;
    z-index: 100;
    visibility: hidden;
    opacity: 0;
    transition: all 0.5s ease;
  }
  .navi_modal.active {
    visibility: visible;
    opacity: 1;
  }
  .navi_modal .gnavi {
    position: absolute;
    top: 30vw;
    left: 50%;
    transform: translate(-50%, 0);
    width: 80%;
    padding: 0;
  }
  .navi_modal .gnavi ul.navi {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  .navi_modal .gnavi ul.navi li {
    text-align: center;
    margin-bottom: 18vw;
  }
  .navi_modal .gnavi ul.navi li a {
    display: block;
    margin: auto;
  }
  .navi_modal .gnavi ul.navi li a img {
    height: 8.8495575221vw;
    width: auto;
  }
  header {
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 10vw;
    z-index: 1000;
  }
  header .toggle_menu {
    position: absolute;
    top: 5vw;
    left: 4vw;
    width: 12vw;
    height: 3vw;
    z-index: 1000;
    cursor: pointer;
  }
  header .toggle_menu::before, header .toggle_menu::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #000;
    position: absolute;
    left: 0;
    transition: all 0.6s ease;
  }
  header .toggle_menu::before {
    top: 0;
  }
  header .toggle_menu::after {
    bottom: 0;
  }
  header .toggle_menu .menu_btn_bar {
    width: 100%;
    height: 1px;
    background-color: #000;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.6s ease;
    visibility: visible;
    opacity: 1;
  }
  header .toggle_menu.active {
    position: fixed;
  }
  header .toggle_menu.active::before {
    transform: rotate(45deg);
    top: 50%;
  }
  header .toggle_menu.active::after {
    transform: rotate(-45deg);
    bottom: 50%;
  }
  header .toggle_menu.active .menu_btn_bar {
    visibility: hidden;
    opacity: 0;
  }
  section {
    width: 100%;
    height: auto;
  }
  section h2 {
    height: 10vw;
  }
  section h2 img {
    height: 100%;
    width: auto;
  }
  section.fv {
    height: 155.7522123894vw;
  }
  section.fv img.main_img {
    width: 96.4690265487vw;
  }
  section.fv p.main_copytext {
    font-size: 1.1457142857em;
  }
  section.concept {
    position: relative;
    z-index: 5;
    padding-top: 40.2654867257%;
    overflow: hidden;
  }
  section.concept .header_back {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
  }
  section.concept .concept_contents {
    width: 159.7345132743vw;
    height: 159.7345132743vw;
    padding-top: 30%;
    left: 50%;
    transform: translateX(-50%);
  }
  section.concept .concept_contents h2 {
    margin-bottom: 1em;
  }
  section.concept .concept_conthead {
    width: 19.7229916898%;
    position: absolute;
    top: -9%;
    left: 50%;
    transform: translateX(-50%);
  }
  section.concept .concept_body p {
    text-align: center;
    line-height: 1.9em;
    margin-bottom: 1.6em;
    letter-spacing: 0.1em;
  }
  section.concept .concept_body .concept_leadtext {
    font-size: 1.3142857143em;
    margin-bottom: 1.2em;
    line-height: 1.6em;
  }
  section.program {
    position: relative;
  }
  section.program div.program_contents {
    width: 100%;
    border-radius: 49.5vw;
    margin: auto;
    background: #fcf9f6;
    padding-top: 25vw;
    margin-top: -5vw;
  }
  section.program h2 {
    margin-bottom: 1em;
  }
  section.program .program_list {
    width: 83.6283185841vw;
    margin: auto;
    display: block;
  }
  section.program .program_list li {
    border-top: 2px solid #d8d6d4;
    width: 100%;
    padding: 3em 0 1em;
  }
  section.program .program_list .program_date {
    text-align: center;
    font-size: 1em;
    margin-bottom: 0.5em;
  }
  section.program .program_list .program_title {
    text-align: center;
    font-size: 1.4285714286em;
    margin-bottom: 0.5em;
  }
  section.program .program_list .program_img {
    margin-bottom: 1em;
  }
  section.program .program_list .program_detail {
    display: block;
  }
  section.program .program_list .program_concept {
    width: 100%;
    border-right: none;
    padding-left: 0em;
    margin-bottom: 1em;
  }
  section.program .program_list .program_data {
    width: 100%;
    padding-left: 0em;
    white-space: wrap;
  }
  section.program .program_list .program_data p {
    margin-bottom: 1em;
  }
  section.program a.checknow {
    width: 100%;
    padding: 1em 0;
  }
  section.program .program_footer {
    width: 83.6283185841vw;
    padding-bottom: 6em;
    padding-top: 2em;
  }
  section.program .program_footer_dot {
    text-align: center;
    font-size: 1.4285714286em;
    line-height: 1em;
  }
  section.program .commingsoon {
    height: 5.3097345133vw;
    width: auto;
    display: block;
    margin: 2em auto 0;
  }
  section.partnership {
    padding: 9em 0;
  }
  section.partnership h2 {
    margin-bottom: 2em;
  }
  section.partnership .partnership_leadtitle {
    text-align: center;
    font-size: 1.2857142857em;
    margin-bottom: 2em;
    letter-spacing: 0.1em;
  }
  section.partnership .partnership_leadtext {
    text-align: center;
    letter-spacing: 0em;
    margin-bottom: 3em;
  }
  section.partnership .partnership_contents {
    width: 86.7256637168vw;
    margin: auto;
  }
  section.partnership a.contactus {
    display: block;
    width: 100%;
    margin: 2em auto;
    padding: 0.6em 0;
    line-height: 1em;
    background: #585552;
    text-align: center;
    color: #fff;
  }
  section.partnership .partnership_action_list {
    margin-top: 3em;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  section.partnership .partnership_action_list li {
    width: 48%;
    margin-bottom: 4em;
  }
  section.partnership .partnership_action_list li h3 {
    text-align: center;
    font-weight: 300;
    font-size: 1.0571428571em;
    line-height: 3em;
  }
  section.partnership .partnership_action_list li h3 img {
    display: block;
    margin: auto;
    height: 6.1946902655vw;
    width: fit-content;
  }
  section.founder {
    position: relative;
    height: 149.9115044248vw;
    overflow: hidden;
  }
  section.founder div.founder_contents {
    width: 100%;
    border-radius: 49vw;
    margin: auto;
    background: #fcf9f6;
    padding: 8em 0 200vw;
  }
  section.founder h2 {
    margin-bottom: 2em;
  }
  section.founder .founder_list {
    width: 92%;
    margin: 2em auto;
    display: flex;
    justify-content: space-between;
  }
  section.founder .founder_list li {
    width: 32%;
  }
  section.founder .swc_icon {
    width: 49.5575221239vw;
    height: auto;
    display: block;
    margin: 2em auto 1em;
  }
  footer {
    position: absolute;
    width: 90%;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    border-top: 1px solid #000;
  }
  footer p.copyright {
    padding: 1em 0 2em;
    width: 35.0442477876vw;
    height: fit-content;
    margin: auto;
    text-align: center;
  }
}

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