@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap");
@keyframes arrow01 {
  0% {
    transform: scale(0, 1);
  }
  30% {
    transform: scale(0, 1);
  }
  40% {
    transform: scale(1, 1);
  }
  85% {
    transform: scale(1, 1);
    opacity: 1;
  }
  90% {
    transform: scale(1, 1);
    opacity: 0;
  }
  100% {
    transform: scale(1, 1);
    opacity: 0;
  }
}

html {
  font-size: 10px;
}

@media (max-width: 1500px) and (min-width: 1025px) {
  html {
    font-size: calc(100vw / 150);
  }
}

@media (max-width: 1024px) and (min-width: 751px) {
  html {
    font-size: calc(100vw / 102.4);
  }
}

@media (max-width: 750px) {
  html {
    font-size: calc(100vw / 75);
  }
}



html, body {
  width: 100%;
}

body {
  /*font-size: 1.06vw;*/
  font-size: 1.6rem;
  color: #000;
  font-family: 'Noto Sans JP', serif;
  line-height: 1.88;
}

@media (max-width: 1024px) {
  body {
    font-size: 2.8rem;
    line-height: 1.71;
  }
}

img {
  vertical-align: bottom;
}

@media (max-width: 1024px) {
  img {
    width: 100%;
  }
}

a {
  text-decoration: none;
  color: #000;
}

li {
  list-style: none;
}

.pc {
  display: block;
}

@media (max-width: 1024px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}

@media (max-width: 1024px) {
  .sp {
    display: block;
  }
}

.error {
  color: #ff0000;
}

header {
  width: 100%;
  position: fixed;
  z-index: 3;
  top: 0;
  left: 0;
  transition: all ease-in .3s;
}

@media (max-width: 1024px) {
  header {
    padding-top: 3rem;
    padding-bottom: 3rem;
    background: #fff;
  }
}

header.scroll {
  position: fixed;
  top: 0;
  left: 0;
  background: #fff;
  transition: all ease-in .3s;
  z-index: 99;
}

.h-inner {
  width: 100%;
  display:-webkit-box;
  display:-ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
	-ms-flex-pack: justify;
  justify-content: space-between;
}

@media (max-width: 1024px) {
  .h-inner {
    width: 70rem;
    margin: 0 auto;
  }
}

.h-inner h1 {
  padding: 1rem 5rem;
}

@media (max-width: 1024px) {
  .h-inner h1 {
    padding: .5rem 0;
  }
}

@media (max-width: 1024px) {
  .h-inner nav {
    width: 100%;
    transform: translateX(200%);
    position: fixed;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    left: 0;
    top: 16vw;
    transition: all ease-in .3s;
  }
}

@media (max-width: 1024px) {
  .h-inner nav.opened {
    transform: translateX(50%);
    transition: all ease-in .3s;
    overflow-y: scroll;
  }
}

.h-inner nav ul {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}

@media (max-width: 1024px) {
  .h-inner nav ul {
    display: block;
  }
}

.h-inner nav li {
  margin: 0 1.5rem;
}

@media (max-width: 1024px) {
  .h-inner nav li {
    width: 100%;
    padding: 0;
    margin: 0;
    border-bottom: 1px solid #000;
    background: #fff;
  }
}

@media (max-width: 1024px) {
  .h-inner nav ul a {
    width: 100%;
    display: block;
    text-align: center;
    padding: 2.66vw 0;
  }
}

.h-inner nav li.member {
  background: #126b3e;
  margin: 0 0 0 1.5rem;
}

@media (max-width: 1024px)  {
  .h-inner nav li.member {
    margin: 0;
  }
}

.h-inner nav li.member a {
  font-weight: 700;
  display: block;
  padding: 2rem 0;
  width: 15rem;
  color: #fff;
  text-align: center;
}

@media (max-width: 1024px) {
  .h-inner nav li.member a {
    width: 100%;
    padding: 2.66vw 0;
  }
}

.h-menu-btn {
  width: 6rem;
  height: 3rem;
  position: relative;
  margin-left: auto;
}

.h-menu-btn span {
  width: 6rem;
  height: 4px;
  border-top: 4px solid #000;
  transition: all ease-in .3s;
}

.h-menu-btn span:first-child {
  position: absolute;
  top: 2.66vw;
}

.h-menu-btn span:last-child {
  position: absolute;
  top: 5.33vw;
}

.h-menu-btn.opened span {
  transition: all ease-in .3s;
}

.h-menu-btn.opened span:first-child {
  transform: rotate(45deg);
  top: 5.33vw;
}

.h-menu-btn.opened span:last-child {
  transform: rotate(-45deg);
  top: 5.33vw;
}

.mv {
  width: 100vw;
  background: url(../../img/top/mv-pc.jpg) no-repeat;
  background-size: 100%;
  position: relative;
  top: -1.34vw;
  z-index: 2;
  padding: 20vw 0;
}

@media (max-width: 1024px) {
  .mv {
    background: url(../../img/top/mv-sp.jpg) no-repeat;
    background-size: cover;
    padding-top: 40vw;
    padding-bottom: 86.66vw;
    top: 10.66vw;
  }
}

.mv-catch {
  position: absolute;
  /*
  top: 30%;
  */
  top: 50%;
  /*
  left: 12vw;
  */
  left: 50%;
  transform: translate(-110%, -80%);
}

@media (max-width: 1024px) {
  .mv-catch {
    top: 65%;
    left: 16vw;
    transform: translate(0, 0);
  }
}

@media (min-width: 1501px) {
  .mv-catch {
    left: 13vw;
    transform: translate(0, -80%);
  }
}

.mv-catch p {
  font-size: 4.8rem;
  letter-spacing: 0.2em;
  font-weight: 700;
  line-height: 1.33;
  text-align: center;
}

@media (max-width: 1024px) {
  .mv-catch p {
    font-size: 6.4vw;
  }
}

.mv-catch p.mini {
  font-size: 1.8rem;
  font-weight: 400;
  letter-spacing: 1px;
}

@media (max-width: 1024px) {
  .mv-catch p.mini {
    font-size: 2.13vw;
    text-align: center;
  }
}

.mv-btn {
  position: absolute;
  /*
  top: 60%;
  */
  top: 50%;
  width: 39.5rem;
  /*
  left: 14.66vw;
  */
  left: 50%;
  background: #126b3e;
  border-radius: 1.8rem;
  border: 2px solid #fff;
  box-shadow: 0 4px 1px #cab4a9;
  transform: translate(-131%, 60%);
}

@media (max-width: 1024px) {
  .mv-btn {
    width: 46.66vw;
    position: absolute;
    top: 85%;
    left: 26.66vw;
    transform: translate(0, 0);
  }
}

@media (min-width: 1501px) {
  .mv-btn {
    left: 15.66vw;
    transform: translate(0, 60%);
  }
}

.mv-btn a {
  display: block;
  width: 100%;
  color: #fff;
  padding: 3rem 0;
  font-size: 2.6rem;
  line-height: 1.3;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.2em;
}

@media (max-width: 1024px) {
  .mv-btn a {
    padding: 4vw 0;
    font-size: 3.46vw;
  }
}

.mv-btn::after {
  content: "";
  width: 12px;
  height: 12px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: rotate(135deg) translateY(50%);
}

@media (max-width: 1024px) {
  .mv-btn::after {
    width: 8px;
    height: 8px;
  }
}

footer {
  text-align: center;
}

footer .f-logo {
  width: 32.3rem;
  margin: 4.8rem auto 2.4rem;
}

@media (max-width: 1024px) {
  footer .f-logo {
    width: 45.33vw;
  }
}

footer .copyright {
  margin: 4rem 0;
  font-size: 1.4rem;
}

h2 {
  font-size: 3.8rem;
  line-height: 1.47;
  font-weight: 700;
  margin: 0 0 4rem;
}

@media (max-width: 1024px) {
  h2 {
    font-size: 5.33vw;
    line-height: 1.45;
  }
}

h2 span {
  font-family: 'Roboto', sans-serif;
  display: block;
  font-size: 2.2rem;
  line-height: 1.72;
  font-weight: 700;
}

@media (max-width: 1024px) {
  h2 span {
    font-size: 3.73vw;
    line-height: 1.35;
  }
}

.about-section {
  padding: 13rem 0 0 0;
  margin-top: -5.34vw;
}

@media (max-width: 1024px) {
  .about-section {
    padding: 21.33vw 0 0 0;
    margin-top: -2.67vw;
  }
}

.about-section .about-top {
  display: flex;
  align-items: center;
  margin: 0 auto 5.33vw;
}

@media (max-width: 1024px) {
  .about-section .about-top {
    flex-wrap: wrap;
    flex-direction: column-reverse;
    justify-content: space-between;
    width: 90.66vw;
    margin: 0 auto;
  }
}

.about-section .about-image {
  width: 45.33vw;
}

@media (max-width: 1024px) {
  .about-section .about-image {
    width: 90.66vw;
    margin-bottom: 8vw;
  }
}

.about-section .about-txt {
  width: 60rem;
  margin: 0 0 0 6rem;
}

@media (max-width: 1024px) {
  .about-section .about-txt {
    width: 90.66vw;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 5.33vw;
  }
}

@media (min-width: 1501px) {
  .about-section .about-txt {
    margin: 0 0 0 5vw;
  }
}

.about-section .about-check {
  width: 100%;
  background: #fbfbf2;
  padding: 4vw 0;
  background-position: 92% 66%;
}

@media (max-width: 1024px) {
  .about-section .about-check {
    background: url(../../img/top/about-check-image.png), #fbfbf2;
    background-position: center bottom;
    background-repeat: no-repeat;
    padding: 8vw 0 24vw 0;
  }
}

.about-section .about-check-inner {
  width: 110rem;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  position: relative;
}

@media (max-width: 1024px) {
  .about-section .about-check-inner {
    display: block;
    width: 90.66vw;
  }
}

.about-section .about-check-inner:after {
  content: '';
  width: 6.6rem;
  height: 9.1rem;
  background-image: url(../../img/top/about-check-image.png);
  background-position: center;
  background-size: cover;
  display: inline-block;
  position: absolute;
  bottom: 1.5rem;
  right: -8.5rem;
}

@media (max-width: 1024px) {
  .about-section .about-check-inner:after {
    display: none;
  }
}

.about-section .about-check-inner ul {
  width: 35vw;
}

@media (max-width: 1024px) {
  .about-section .about-check-inner ul {
    width: 90.66vw;
    margin: 0 auto;
  }
}

.about-section .about-check-inner li {
  list-style-image: url(../../img/common/check.png);
  font-size: 1.8rem;
  line-height: 1.66;
  margin: 0 0 2rem;
}

@media (max-width: 1024px) {
  .about-section .about-check-inner li {
    font-size: 2.8vw;
    margin-bottom: 2.66vw;
    list-style-position: inside;
  }
}

.contents-section {
  background: #c2c44c;
  padding: 6.66vw 0 4vw 0;
}

@media (max-width: 1024px) {
  .contents-section {
    padding: 13.33vw 0 8vw 0;
  }
}

.contents-section h2 {
  width: 110rem;
  margin: 20px auto;
  letter-spacing: 0.07em;
}

@media (max-width: 1024px) {
  .contents-section h2 {
    width: 90.66vw;
  }
}

.contents-section .title-msg {
  width: 110rem;
  margin: 0 auto 8rem;
}

@media (max-width: 1024px) {
  .contents-section .title-msg {
    width: 90.66vw;
  }
}

.contents-section .inner {
  width: 100%;
  max-width: 117rem;
  margin: 0 auto;
}

@media (max-width: 1024px) {
  .contents-section .inner {
    width: 90.66vw;
  }
}

.contents-section .contents-block {
  background: #fff;
  padding: 0 4rem;
  margin: 0 0 8rem;
  position: relative;
}

.contents-section .contents-block h3 {
  width: 20rem;
  background: #126b3e;
  padding: 1rem 3rem;
  font-size: 2.2rem;
  color: #fff;
  font-family: 'Roboto', sans-serif;
  font-weight: 700;
  text-align: center;
  border-top-right-radius: 1.8rem;
  position: relative;
  top: -3rem;
  left: -4rem;
  z-index: 5;
}

@media (max-width: 1024px) {
  .contents-section .contents-block h3 {
    width: 26.66vw;
    padding: 1.33vw 4vw;
    font-size: 2.93vw;
  }
}

.contents-section .contents-block h4 {
  font-size: 3.8rem;
  letter-spacing: 0.07em;
  font-weight: 700;
  margin: 0 0 3rem;
}

.contents-section .contents-block h4 .mini {
  font-size: 2.5rem;
  line-height: 1.68;
  letter-spacing: 0.1em;
}

@media (max-width: 1024px) {
  .contents-section .contents-block h4 .mini {
    font-size: 4vw;
    line-height: 1.5;
  }
}

@media (max-width: 1024px) {
  .contents-section .contents-block h4 {
    font-size: 5.33vw;
  }
}

.contents-section .contents-block__catch {
  font-size: 2.5rem;
  letter-spacing: 0.1em;
  line-height: 1.68;
  font-weight: 700;
  margin: 0 0 4rem;
}

.contents-section .contents-block__catch span {
  color: #f17d00;
}

@media (max-width: 1024px) {
  .contents-section .contents-block__catch {
    font-size: 4vw;
    line-height: 1.5;
    padding-bottom: 32vw;
  }
}

.contents-section .contents-block__msg {
  width: 65rem;
  padding: 0 0 10rem;
}

@media (max-width: 1024px) {
  .contents-section .contents-block__msg {
    width: 85.33vw;
    padding-top: 16vw;
  }
}

.contents-section .contents-block__msg.ptn01 {
  padding: 0 0 22.8rem;
  margin: 10.3rem 0 0;
}

@media (max-width: 1024px) {
  .contents-section .contents-block__msg.ptn01 {
    padding-top: 37.33vw;
    padding-bottom: 2.66vw;
  }
}

.contents-section .contents-block__msg.ptn02 {
  padding: 0 0 14rem;
}

@media (max-width: 1024px) {
  .contents-section .contents-block__msg.ptn02 {
    padding-top: 58.66vw;
    padding-bottom: 2.66vw;
  }
}

.contents-section .contents-block__msg.ptn03 {
  padding: 0 0 6rem;
}

@media (max-width: 1024px) {
  .contents-section .contents-block__msg.ptn03 {
    padding-top: 56vw;
    padding-bottom: 5.33vw;
  }
}

.contents-section .contents-block-image01-01 {
  width: 56rem;
  position: absolute;
  z-index: 5;
  top: -3rem;
  left: 60rem;
}

@media (max-width: 1024px) {
  .contents-section .contents-block-image01-01 {
    width: 74.66vw;
    top: 46.66vw;
    left: 5.33vw;
  }
}

.contents-section .contents-block-image01-02 {
  width: 42rem;
  top: 30rem;
  left: 72rem;
  position: absolute;
  z-index: 5;
}

@media (max-width: 1024px) {
  .contents-section .contents-block-image01-02 {
    position: static;
    width: 85.33vw;
    margin: 0 auto;
    padding-bottom: 5.33vw;
  }
}

.contents-section .contents-block-image02-01 {
  width: 54.5rem;
  position: absolute;
  top: -3rem;
  left: 60rem;
  z-index: 5;
}

@media (max-width: 1024px) {
  .contents-section .contents-block-image02-01 {
    width: 74.66vw;
    top: 24vw;
    left: 5.33vw;
  }
}

.contents-section .contents-block-image02-02 {
  width: 43rem;
  top: 30.1rem;
  left: 71rem;
  position: absolute;
  z-index: 5;
}

@media (max-width: 1024px) {
  .contents-section .contents-block-image02-02 {
    position: static;
    width: 85.33vw;
    margin: 0 auto;
    padding-bottom: 5.33vw;
  }
}

.contents-section .contents-block-image03 {
  width: 37rem;
  position: absolute;
  top: -2.8rem;
  left: 75rem;
  z-index: 5;
}

@media (max-width: 1024px) {
  .contents-section .contents-block-image03 {
    width: 48vw;
    top: 24vw;
    left: 24vw;
  }
}

.contents-section .contents-block-image04 {
  width: 37rem;
  position: absolute;
  top: -2.8rem;
  left: 75rem;
  z-index: 5;
}

@media (max-width: 1024px) {
  .contents-section .contents-block-image04 {
    width: 48vw;
    top: 24vw;
    left: 24vw;
  }
}

.details-section {
  padding: 20rem 0 0;
  margin-top: -6rem;
}

@media (max-width: 1024px) {
  .details-section {
    padding-top: 26.66vw;
    margin-top: -8vw;
    padding-bottom: 13.33vw;
  }
}

.details-section .inner {
  width: 100%;
  max-width: 117rem;
  margin: 0 auto;
}

@media (max-width: 1024px) {
  .details-section .inner {
    width: 90.66vw;
  }
}

.details-section .details-main {
  margin: 0 0 10rem;
}

.details-section .details-main h3 {
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  line-height: 1.68;
  margin-bottom: 1rem;
  font-weight: 700;
}

@media (max-width: 1024px) {
  .details-section .details-main h3 {
    font-size: 3.73vw;
  }
}

.details-section .details-table {
  margin: 0 0 1rem;
}

.details-section .details-table.personal h4 {
  width: 100%;
  padding: 1rem 4rem;
  color: #fff;
  background: #757575;
  font-weight: 700;
  font-size: 2.5rem;
}

@media (max-width: 1024px) {
  .details-section .details-table.personal h4 {
    padding: 1.33vw 0 1.33vw 5.33vw;
    font-size: 3.73vw;
  }
}

.details-section .details-table.personal .details-table-row ul:first-child {
  background: #f3f3f3;
}

.details-section .details-table.group h4 {
  width: 100%;
  padding: 1rem 4rem;
  color: #fff;
  background: #a0a15f;
  font-weight: 700;
  font-size: 2.5rem;
}

@media (max-width: 1024px) {
  .details-section .details-table.group h4 {
    padding: 1.33vw 0 1.33vw 1.33vw;
    font-size: 3.73vw;
  }
}

.details-section .details-table.group .details-table-row ul:first-child {
  background: #eeeedf;
}

.details-section .details-table-main {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.details-section .details-table-main .anno {
  margin-top: 1.33vw;
}

.details-section .details-table .details-table-row {
  display: table-row;
}

.details-section .details-table .details-table-row ul {
  display: table-cell;
  width: 50%;
  border-bottom: 1px solid #000;
}

@media (max-width: 1024px) {
  .details-section .details-table .details-table-row ul {
    display: block;
    width: 100%;
    padding: 2.66vw 0;
  }
}

.details-section .details-table .details-table-row ul li {
  padding: 1rem 0 0 4rem;
}

@media (max-width: 1024px) {
  .details-section .details-table .details-table-row ul:first-child {
    border-bottom: none;
  }
}

.details-section .details-table .details-table-row ul:last-child li {
  padding: 1rem 0 1rem 4rem;
}

.member-form {
  background: #f5f5f5;
  padding: 12rem 0;
}

@media (max-width: 1024px) {
  .member-form {
    padding: 16vw 0;
    margin-top: -16vw;
  }
}

.member-form h2 {
  text-align: center;
  margin: 0 0 8rem;
}

.member-form .inner {
  width: 100%;
  max-width: 80rem;
  margin: 0 auto;
}

@media (max-width: 1024px) {
  .member-form .inner {
    width: 90.66vw;
  }
}

.member-form .member-form-main .form-label {
  margin-bottom: 0.66vw;
}

.member-form .member-form-main .form-label span {
  color: #ff0000;
}

.member-form .member-form-main .form-data {
  margin-bottom: 20px;
}

.member-form .member-form-main .form-data label {
  display: block;
  margin-bottom: 10px;
}

.member-form .member-form-main .form-data span {
  display: inline-block;
  margin-left: 20px;
}

.member-form .member-form-main .form-data input[type="text"] {
  width: 100%;
  padding: 10px;
  border: none;
}

.member-form .member-form-main .form-data input[name="zipcode"] {
  width: 40%;
}

.member-form .member-form-main .form-data textarea {
  width: 100%;
  height: 150px;
  border: none;
}

.member-form .member-form-main .privacy {
  background: #fff;
  height: 200px;
  overflow: scroll;
  padding: 20px;
}

.member-form .member-form-main .privacy h3 {
  font-weight: bold;
  margin-bottom: 2em;
}

.member-form .member-form-main .privacy p {
  margin-bottom: 2em;
}

.member-form .member-form-main .send-anno {
  margin-top: 40px;
  margin-bottom: 20px;
  text-align: center;
}

.member-form .member-form-main .send-anno a {
  color: #ff0000;
  border-bottom: 1px solid #000;
  padding: 0 1rem .2rem;
  transition: all .2s ease;
}

.member-form .member-form-main .send-anno a:hover {
  color: #c2c44c;
}

.member-form .member-form-main .send-btn {
  width: 34.5rem;
  margin: 0 auto;
}

@media (max-width: 1024px) {
  .member-form .member-form-main .send-btn {
    width: 66.66vw;
  }
}

.member-form .member-form-main .send-btn.conf {
  width: 46.66vw;
  display: flex;
  justify-content: space-between;
}

.member-form .member-form-main .send-btn.conf input[type="submit"] {
  width: 48%;
}

.member-form .member-form-main .send-btn.conf input[type="button"] {
  width: 48%;
  display: block;
  font-size: 2.6rem;
  text-align: center;
  padding: 2rem;
  font-weight: 700;
  background: #ccc;
  color: #000;
  border: none;
  box-shadow: none;
  cursor: pointer;
}

.member-form .member-form-main .send-btn input[type="submit"] {
  width: 100%;
  font-weight: bold;
  font-size: 2.6rem;
  text-align: center;
  padding: 2rem;
  font-weight: 700;
  background: #126b3e;
  color: #fff;
  border: 1px solid #126b3e;
  box-shadow: none;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition: all .5s ease;
}

.member-form .member-form-main .send-btn input[type="submit"]:hover {
  background: #fff;
  color: #126b3e;
}

@media (max-width: 1024px) {
  .member-form .member-form-main .send-btn input[type="submit"] {
    font-size: 3.46vw;
    padding: 5.33vw;
  }
}

.concept-section {
  padding: 10rem 0;
  margin: -5rem 0 0;
}

@media (max-width: 1024px) {
  .concept-section {
    padding-top: 26.66vw;
    margin-top: -6.67vw;
    padding-bottom: 6.66vw;
  }
}

.concept-section .inner {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media (max-width: 1024px) {
  .concept-section .inner {
    width: 90.66vw;
    display: block;
  }
}

.concept-section .concept-txt {
  width: 59rem;
}

@media (max-width: 1024px) {
  .concept-section .concept-txt {
    width: 90.66vw;
    margin: 0 auto 30px auto;
  }
}

.concept-section .concept-image {
  width: 56rem;
}

@media (max-width: 1024px) {
  .concept-section .concept-image {
    width: 82.66vw;
    margin: 0 auto;
  }
}

.thanks {
  width: 100%;
  max-width: 1040px;
  padding: 0 2rem;
  margin: 0 auto;
}

.thanks-msg {
  text-align: center;
  margin: 3rem 0;
}

.member-on {
  margin-bottom: 2rem;
}

.member-on span {
  font-size: 2.4rem;
  font-weight: 700;
}

@media (max-width: 1024px) {
  .member-on span {
    font-size: 3.73vw;
  }
}

.member-on a {
  text-decoration: underline;
}

.thanks {
  padding: 20rem 0;
}

@media (max-width: 1024px) {
  .thanks {
    padding: 40rem 0 20rem;
  }
}

.thanks h2 {
  text-align: center;
}

.contact-txt {
  margin-top: -7rem;
  margin-bottom: 4.5rem;
}

.contact-txt p {
  text-align: center;
}

.member-form.contact {
  padding-top: 6.66vw;
}

@media (max-width: 1024px) {
  .member-form.contact {
    padding-top: 40vw;
  }
}

.ly-bg {
  background-color: #fbfbf2;
}

.about-link-container {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto 8rem;
}

.about-link-container ul {
  padding: 0 1.5rem;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  /*
  -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
  */
  -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

@media (max-width: 1024px) {
  .about-link-container ul {
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
  }
}

.about-link-container li {
  width: 18rem;
  margin: 0 2rem;
}

@media (max-width: 1024px) {
  .about-link-container li {
    width: calc(50% - 1vw);
    margin: 0 0 2vw;
  }
}

.about-link-container a {
  font-size: 1.7rem;
  width: 100%;
  color: #fff;
  background-color: #d0a113;
  border: 1px solid #d0a113;
  display: inline-block;
  padding: 1.5rem 0;
  text-align: center;
  transition: all .7s ease;
}

.about-link-container a:hover {
  color: #d0a113;
  background-color: #fff;
}

@media (max-width: 1024px) {
  .about-link-container a {
    font-size: 2.8rem;
    padding: 4vw 0;
  }
}

/* about下層共通css */
.about-childs-page header {
  background: #fff;
}

.about-childs-outer {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
  padding: 16rem 0;
}

@media (max-width: 1024px) {
  .about-childs-outer {
    padding: 20rem 2rem 8rem;
  }
}

.about-childs-inner h2 {
  text-align: center;
  position: relative;
  padding: 0 0 1rem;
  margin: 0 0 6rem;
}

@media (max-width: 1024px) {
  .about-childs-inner h2 {
    padding: 0 0 1.3rem;
    margin: 0 0 8rem;
  }
}

.about-childs-container {
  background-color: #fff;
  padding: 6rem 18rem;
}

@media (max-width: 1024px) {
  .about-childs-container {
    padding: 6rem 2rem;
  }
}

.flex-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}