#page.standby #main, #page.standby .f_aside, #page.standby .f_cta_entry, #page.standby #footer {
  opacity: 0;
}
#page.standby .introarea .con_txt, #page.standby .introarea .con_pagenav {
  opacity: 0;
}
#page.standby .introarea .bg_slash > div.sla01 {
  left: -100vw;
}
#page.standby .introarea .bg_slash > div.sla02 {
  left: -100vw;
}

#main, .f_aside, .f_cta_entry, #footer {
  transition: opacity 800ms ease-in-out;
}

.introarea .con_txt, .introarea .con_pagenav {
  transition: opacity 800ms ease-in-out 1000ms;
}
.introarea .bg_slash > div.sla01 {
  transition: left 1200ms ease-in-out 0ms;
}
.introarea .bg_slash > div.sla02 {
  transition: left 800ms ease-in-out 450ms;
}

@media only screen and (max-width:767px) {
  .introarea > .bg_slash .sla01 {
    left: 14vw;
    background: rgba(0, 0, 0, 0.6);
  }
  .introarea > .bg_slash .sla02 {
    width: 98.4vw;
    left: 6.4vw;
  }
}
@media only screen and (min-width:768px) {
  .introarea > .bg_slash .sla01 {
    width: min(43.28125vw, 692.5px);
    margin-left: max(-26.09375vw, -417.5px);
    background: rgba(0, 0, 0, 0.6);
  }
  .introarea > .bg_slash .sla02 {
    width: min(43.28125vw, 692.5px);
    margin-left: max(-30.9375vw, -495px);
  }
}
/* -----------------------------------------------------------
	.con_pageintro
----------------------------------------------------------- */
#page.viewing .con_pageintro:before {
  transform: translateY(-100%);
}

.con_pageintro {
  padding: calc(10.6666666667vw + var(--height-hlogo)) 10.6666666667vw 0;
}
.con_pageintro:before {
  content: "";
  display: block;
  background: var(--color-bg);
  position: fixed;
  left: 0;
  width: 100%;
  transition: transform 400ms ease-in-out;
  height: var(--height-hlogo);
  top: 0;
  transform-origin: top center;
}
.con_pageintro .con_txt {
  position: relative;
  color: #fff;
}
.con_pageintro .con_txt:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 21.3333333333vw;
  border-left: 1px solid var(--color-yellow);
  border-top: 1px solid var(--color-yellow);
  left: 0;
  top: 0;
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
}
.con_pageintro .con_txt h1 {
  font-size: 5.8666666667vw;
  font-weight: 600;
  letter-spacing: 0.2ex;
  padding: 4.2666666667vw 0 0 4.2666666667vw;
}
.con_pageintro .con_txt .en {
  font-size: 4vw;
  font-weight: 600;
  margin-top: 2.4vw;
  padding-left: 4.2666666667vw;
  color: var(--color-yellow);
}
.con_pageintro .con_txt .txt {
  font-size: 3.7333333333vw;
  letter-spacing: 0.3ex;
  margin-top: 8vw;
  line-height: 1.8;
  text-align: justify;
}
.con_pageintro .con_pagenav {
  position: relative;
  width: 100vw;
  margin-top: 10.6666666667vw;
  margin-left: -10.6666666667vw;
  z-index: 3;
  padding: 8vw 10.6666666667vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: var(--color-bg);
}
.con_pageintro .con_pagenav > p {
  font-size: 4vw;
  font-weight: 600;
  letter-spacing: 0.2ex;
  transition: color 300ms ease-in-out;
}
.con_pageintro .con_pagenav .pagenavigation {
  margin-top: 3.7333333333vw;
}
.con_pageintro .con_pagenav .pagenavigation ul {
  grid-template-columns: repeat(2, 1fr);
}
.con_pageintro .con_pagenav .pagenavigation ul li:not(:first-child) {
  margin-top: 3.7333333333vw;
}
.con_pageintro .con_pagenav .pagenavigation ul li.wide {
  grid-column: 1/3;
}
.con_pageintro .con_pagenav .pagenavigation ul li a {
  display: block;
  border-top: 1px solid currentColor;
  border-left: 1px solid currentColor;
  padding: 2.6666666667vw 4.8vw 2.9333333333vw 2.6666666667vw;
  font-size: 3.7333333333vw;
  line-height: 1.3;
  letter-spacing: 0.15ex;
  position: relative;
  transition: color 300ms ease-in-out;
}
.con_pageintro .con_pagenav .pagenavigation ul li a:after {
  content: "";
  display: block;
  position: absolute;
  width: 1.6vw;
  height: 1.6vw;
  border-right: 0.2666666667vw solid currentColor;
  border-bottom: 0.2666666667vw solid currentColor;
  right: min(1.171875vw, 18.75px);
  top: 50%;
  margin-top: -1.3333333333vw;
  transform: rotate(45deg);
}

@media only screen and (min-width:768px) {
  .con_pageintro {
    min-height: 100vh;
    padding: 10vh 0;
    display: flex;
    align-items: center;
  }
  .con_pageintro:before, .con_pageintro:after {
    display: none;
  }
  .con_pageintro .con_txt:before {
    width: min(43.75vw, 700px);
    height: min(10vw, 160px);
    left: max(-2.5vw, -40px);
    top: max(-2.8125vw, -45px);
  }
  .con_pageintro .con_txt:after {
    width: min(44.140625vw, 706.25px);
    height: calc(100% + min(12.890625vw, 206.25px));
    transform-origin: left top;
    top: max(-7.1875vw, -115px);
    left: max(-5.46875vw, -87.5px);
    opacity: 1;
  }
  .con_pageintro .con_txt h1 {
    font-size: min(2.65625vw, 42.5px);
    padding: 0;
  }
  .con_pageintro .con_txt .en {
    font-size: min(1.5625vw, 25px);
    margin-top: min(0.46875vw, 7.5px);
    padding: 0;
  }
  .con_pageintro .con_txt .txt {
    width: min(25vw, 400px);
    font-size: min(1.09375vw, 17.5px);
    margin-top: min(4.6875vw, 75px);
  }
  .con_pageintro .con_pagenav {
    display: none;
  }
}
/* -----------------------------------------------------------
	.con_message
----------------------------------------------------------- */
.con_message {
  padding: 13.3333333333vw 6.6666666667vw;
}
.con_message .title_basic {
  z-index: 2;
}
.con_message .box_message {
  margin-top: 4.2666666667vw;
}
.con_message .box_message .con_author {
  position: relative;
  width: calc(100% + 13.3333333333vw);
  min-height: 66.6666666667vw;
  margin-left: -6.6666666667vw;
  padding: 8vw 6.6666666667vw;
}
.con_message .box_message .con_author p {
  position: relative;
  z-index: 1;
  letter-spacing: 0.15ex;
}
.con_message .box_message .con_author .st {
  font-size: 5.0666666667vw;
  font-weight: 600;
}
.con_message .box_message .con_author .str_position {
  margin-top: 9.3333333333vw;
  font-size: 3.7333333333vw;
  font-weight: 600;
}
.con_message .box_message .con_author .str_name {
  margin-top: 0.5333333333vw;
  font-size: 4.2666666667vw;
  font-weight: 600;
}
.con_message .box_message .con_author picture {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.con_message .box_message .con_author picture img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.con_message .box_message .wrap_message {
  background: rgba(255, 255, 255, 0.85);
  padding: 4.2666666667vw;
  width: 100%;
}
.con_message .box_message .wrap_message .txt {
  text-align: justify;
  font-size: 3.7333333333vw;
  letter-spacing: 0.2ex;
  line-height: 1.7;
}
.con_message .box_message .con_message_faq {
  margin-top: -8vw;
  position: relative;
}
.con_message .box_message .con_message_faq .wrap_message:not(:first-child) {
  margin-top: 2.6666666667vw;
}
@media only screen and (max-width:767px) {
  .con_message .box_message .con_message_faq .st_arr {
    display: flex;
    align-items: center;
  }
  .con_message .box_message .con_message_faq .st_arr:before {
    top: 50%;
    transform: translateY(-50%);
    margin-top: -0.8vw;
  }
}
.con_message .box_message .con_message_faq .st_arr .en {
  font-size: 4vw;
}
.con_message .box_message .con_message_faq .txt_question {
  font-size: 3.7333333333vw;
  letter-spacing: 0.2ex;
}
.con_message .box_message .con_message_faq .st_faq {
  font-size: 5.0666666667vw;
  font-weight: 600;
  letter-spacing: 0.3ex;
  margin-top: 4.2666666667vw;
}
.con_message .box_message .con_message_faq .txt {
  margin-top: 2.6666666667vw;
  text-indent: 1em;
}
.con_message .box_message .con_message_faq .txt + .txt {
  margin-top: 0;
}

@media only screen and (min-width:768px) {
  .con_message {
    padding: min(7.8125vw, 125px) 0;
  }
  .con_message .box_message {
    margin-top: min(2.5vw, 40px);
  }
  .con_message .box_message .con_author {
    position: relative;
    width: 100%;
    min-height: min(31.25vw, 500px);
    margin: 0;
    padding: min(7.8125vw, 125px) min(5vw, 80px) min(5vw, 80px);
  }
  .con_message .box_message .con_author p {
    letter-spacing: 0.15ex;
  }
  .con_message .box_message .con_author .st {
    font-size: min(2.1875vw, 35px);
  }
  .con_message .box_message .con_author .str_position {
    margin-top: min(4.53125vw, 72.5px);
    font-size: min(1.09375vw, 17.5px);
  }
  .con_message .box_message .con_author .str_name {
    margin-top: min(0.3125vw, 5px);
    font-size: min(1.875vw, 30px);
  }
  .con_message .box_message .wrap_message {
    padding: min(2.5vw, 40px);
    width: min(61.25vw, 980px);
    margin: 0 auto;
  }
  .con_message .box_message .wrap_message .txt {
    font-size: min(1.09375vw, 17.5px);
  }
  .con_message .box_message .con_message_faq {
    margin-top: max(-4.0625vw, -65px);
  }
  .con_message .box_message .con_message_faq .wrap_message:not(:first-child) {
    margin-top: min(1.5625vw, 25px);
  }
  .con_message .box_message .con_message_faq .st_arr .en {
    font-size: min(1.40625vw, 22.5px);
  }
  .con_message .box_message .con_message_faq .txt_question {
    font-size: min(1.25vw, 20px);
    letter-spacing: 0.2ex;
  }
  .con_message .box_message .con_message_faq .st_faq {
    font-size: min(1.875vw, 30px);
    font-weight: 600;
    letter-spacing: 0.3ex;
    margin-top: min(2.5vw, 40px);
  }
  .con_message .box_message .con_message_faq .txt {
    margin-top: min(0.78125vw, 12.5px);
  }
}
.layout_system {
  background: #fff;
  padding: 4.2666666667vw;
  display: grid;
  gap: 2.1333333333vw 3.7333333333vw;
  grid-template-columns: 13.3333333333vw 1fr;
  grid-template-rows: 13.3333333333vw auto;
  align-items: center;
}
.layout_system h3 {
  grid-column: 2;
  font-size: 4vw;
  font-weight: 600;
  letter-spacing: 0.2ex;
}
.layout_system p {
  grid-row: 2;
  grid-column: 1/3;
  text-align: justify;
  font-size: 3.7333333333vw;
  letter-spacing: 0.25ex;
  line-height: 1.7;
  align-self: flex-start;
}
.layout_system figure {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  height: 100%;
}
.layout_system figure img {
  display: block;
  max-width: 100%;
  max-height: 100%;
}

@media only screen and (min-width:768px) {
  .layout_system_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: min(1.5625vw, 25px);
  }
  .layout_system {
    padding: min(2.5vw, 40px);
    gap: min(0.9375vw, 15px) min(1.5625vw, 25px);
    grid-template-columns: min(6.25vw, 100px) 1fr;
    grid-template-rows: min(6.25vw, 100px) auto;
    min-height: min(23.4375vw, 375px);
  }
  .layout_system h3 {
    font-size: min(1.875vw, 30px);
  }
  .layout_system p {
    font-size: min(1.09375vw, 17.5px);
  }
}
/* -----------------------------------------------------------
	.con_traning
----------------------------------------------------------- */
.con_traning {
  padding: 13.3333333333vw 6.6666666667vw 24vw;
}
.con_traning .box_traning {
  margin-top: 4.2666666667vw;
}
.con_traning .wrap_traning:not(:first-child) {
  margin-top: 2.6666666667vw;
}
.con_traning .btn_basic {
  margin-top: 8.5333333333vw;
  display: flex;
  justify-content: flex-end;
  padding: 0 4.2666666667vw;
}
.con_traning .btn_basic a {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2.4vw 4.2666666667vw;
}
.con_traning .btn_basic i {
  display: block;
  width: 4vw;
  position: relative;
  z-index: 1;
}
.con_traning .btn_basic i svg {
  display: block;
  width: 100%;
}

@media only screen and (min-width:768px) {
  .con_traning {
    padding: min(7.8125vw, 125px) 0;
  }
  .con_traning .box_traning {
    margin-top: min(2.5vw, 40px);
  }
  .con_traning .box_traning .wrap_traning:nth-child(1) figure img {
    width: min(5.703125vw, 91.25px);
  }
  .con_traning .wrap_traning:not(:first-child) {
    margin: 0;
  }
  .con_traning .btn_basic {
    margin-top: min(2.5vw, 40px);
    padding: 0;
  }
  .con_traning .btn_basic a {
    width: min(20.3125vw, 325px);
    padding: min(1.40625vw, 22.5px) min(2.5vw, 40px);
  }
  .con_traning .btn_basic i {
    width: min(1.328125vw, 21.25px);
  }
}
/* -----------------------------------------------------------
	.con_culture
----------------------------------------------------------- */
.con_culture {
  padding: 0 6.6666666667vw 20vw;
}
.con_culture .box_culture {
  margin-top: 4.2666666667vw;
}
.con_culture .wrap_culture {
  background: #fff;
  padding: 4.2666666667vw;
}
.con_culture .wrap_culture:not(:first-child) {
  margin-top: 2.6666666667vw;
}
.con_culture .wrap_culture h3 {
  font-size: 4vw;
  font-weight: 600;
  letter-spacing: 0.2ex;
}
.con_culture .wrap_culture img {
  display: block;
  width: 100%;
  margin-top: 2.6666666667vw;
}
.con_culture .wrap_culture p {
  text-align: justify;
  font-size: 3.7333333333vw;
  letter-spacing: 0.25ex;
  line-height: 1.7;
  margin-top: 2.6666666667vw;
}

@media only screen and (min-width:768px) {
  .con_culture {
    padding: 0 0 min(7.8125vw, 125px);
  }
  .con_culture .box_culture {
    margin-top: min(2.5vw, 40px);
  }
  .con_culture .wrap_culture {
    display: grid;
    grid-template-columns: 1fr max-content;
    align-items: center;
    padding: min(2.5vw, 40px);
    gap: min(1.5625vw, 25px) 0;
  }
  .con_culture .wrap_culture:not(:first-child) {
    margin-top: min(1.5625vw, 25px);
  }
  .con_culture .wrap_culture h3 {
    font-size: min(1.875vw, 30px);
    grid-column: 1;
  }
  .con_culture .wrap_culture img {
    grid-column: 2;
    grid-row: 1/3;
    width: min(17.1875vw, 275px);
    margin: 0 0 0 min(2.5vw, 40px);
  }
  .con_culture .wrap_culture p {
    font-size: min(1.09375vw, 17.5px);
    margin: 0;
    grid-column: 1;
    grid-row: 2;
  }
}
/* -----------------------------------------------------------
	.con_benefit
----------------------------------------------------------- */
.con_benefit {
  padding: 0 6.6666666667vw 20vw;
}
.con_benefit .box_benefit {
  margin-top: 4.2666666667vw;
}
.con_benefit .wrap_benefit:not(:first-child) {
  margin-top: 2.6666666667vw;
}

@media only screen and (min-width:768px) {
  .con_benefit {
    padding: 0 0 min(7.8125vw, 125px);
  }
  .con_benefit .box_benefit {
    margin-top: min(2.5vw, 40px);
  }
  .con_benefit .wrap_benefit:not(:first-child) {
    margin-top: 0;
  }
}