@charset "UTF-8";

/* Reset */
*:where(:not(iframe, canvas, img, svg, video, input[type="radio"], :where(.wp-block-columns.is-layout-flex)):not(svg *)) {all: unset;display: revert;}
*, *::before, *::after {box-sizing: border-box;}
ol, ul {list-style: none;}
img {max-width: 100%;vertical-align: top;height: auto;}
table {border-collapse: collapse;}
textarea {white-space: revert;}
pre {white-space: pre;}
del {text-decoration: line-through;}
a {cursor: pointer;color: #3F51B5;}
a:hover {text-decoration: none;}
/* /Reset */

/* Setting */
:root {
  font-size: 10px;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #555;
  --cw: 100rem;
  --csp: 2rem;
  --safe-width: calc(100% - var(--csp) * 2);
  --noto: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;;
  --diplomata: "Diplomata", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
}

@media (max-width: 768px) {
  :root {
    --csp: 1.5rem;
  }
}
@media (max-width: 480px) {
  :root {
    font-size: 2.415458937198068vw;
  }
}
/* /Setting */

/* Common */
p {font-size: 1.8rem;line-height: 1.75;text-align: justify;margin-top: 1.75em;}
main > p {max-width: var(--cw);padding-right: var(--csp);padding-left: var(--csp);margin-left: auto;margin-right: auto;box-sizing: content-box;}

@media (max-width: 768px) {
  p {font-size: 1.6rem;}
}

strong {font-weight: bold;}

.word {display: inline-block !important;}

.mt0 {margin-top: 0 !important;}
.mt10 {margin-top: 10px !important;}
.mt20 {margin-top: 20px !important;}
.mt30 {margin-top: 30px !important;}
.mt40 {margin-top: 40px !important;}
.mt50 {margin-top: 50px !important;}
.mt60 {margin-top: 60px !important;}
.mt70 {margin-top: 70px !important;}
.mt80 {margin-top: 80px !important;}
.mt90 {margin-top: 90px !important;}
.mt100 {margin-top: 100px !important;}
.mt110 {margin-top: 110px !important;}
.mt120 {margin-top: 120px !important;}

.max60p {max-width: 60% !important;}

@media (max-width: 480px) {
  .sp_max60p {max-width: 60% !important;}
}

@media (max-width: 768px) {
  .tab_left {text-align: left !important;}
  .tab_justify {text-align: justify !important;}
}

@media (max-width: 480px) {
  .sp_hidden {display: none !important;}
  .sp_justify {text-align: justify !important;}
}
/* /Common */

/* Key Frames */
@keyframes footerCtaFlip {
  0% {
    transform: scaleY(1);
    background: #297991;
  }

  49% {
    transform: scaleY(0);
    background: #297991;
  }

  50% {
    transform: scaleY(0);
    background: #89c9dc;
  }

  100% {
    transform: scaleY(1);
    background: #89c9dc;
  }
}

@keyframes footerCtaFlipBack {
  0% {
    transform: scaleY(1);
    background: #89c9dc;
  }

  49% {
    transform: scaleY(0);
    background: #89c9dc;
  }

  50% {
    transform: scaleY(0);
    background: #297991;
  }

  100% {
    transform: scaleY(1);
    background: #297991;
  }
}
/* /Key Frames */

/* Gutenberg */
h1.wp-block-heading {font-size: 2rem;line-height: 1.75;margin-top: 9.9238rem;padding: 0 2rem;}
h2.wp-block-heading {font-size: 4.8rem;font-weight: bold;text-align: center;line-height: 1.4;color: #387992;position: relative;padding: 1rem var(--csp);margin: 12rem auto 0;}
h2.wp-block-heading::before, h2.wp-block-heading::after {content: "";display: block;position: absolute;height: 3px;left: 0;right: 0;background: url(../img/line-slash.png) repeat;}
h2.wp-block-heading strong {color: #f00;font-size: 1.2em;}
main > h2.wp-block-heading {max-width: var(--cw);  box-sizing: content-box;}
main > h2.wp-block-heading::before, main > h2.wp-block-heading::after {left: var(--csp);right: var(--csp);}
h2.wp-block-heading::before { top: 0 }
h2.wp-block-heading::after { bottom: 0 }
h3.wp-block-heading {font-size: 3.2rem;font-weight: bold;text-align: justify;color: #387992;border-bottom: 1px dashed;position: relative;line-height: 1.4;padding: 0 10rem 0.4rem 1.8rem;margin: 8rem auto 0;}
h3.wp-block-heading::before {content: "";display: block;position: absolute;left: 0;top: 0.2rem;bottom: 0.4rem;border-left: 0.7rem solid;}
h3.wp-block-heading::after {content: "";display: block;position: absolute;right: 0;bottom: 0;width: 9.5rem;border-top: 1px dashed;transform: rotateZ(15deg);transform-origin: bottom right;}
main > h3.wp-block-heading {max-width: var(--cw);width: var(--safe-width);}
h4.wp-block-heading {background: linear-gradient(to right, rgba(239,250,244,1) 0%,rgba(239,250,244,1) 31%,rgba(239,250,244,0) 70%,rgba(239,250,244,0) 100%);font-size: 2.5rem;font-weight: bold;text-align: justify;line-height: 1.4;padding: 0.6rem var(--csp);margin: 6rem auto 0;}
main > h4.wp-block-heading {max-width: var(--cw);width: var(--safe-width);}
h5.wp-block-heading {font-size: 2rem;font-weight: bold;line-height: 1.75;margin: 5rem auto 0;}
main > h5.wp-block-heading {max-width: var(--cw);width: var(--safe-width);}
h6.wp-block-heading {font-size: 1.8rem;font-weight: bold;line-height: 1.75;margin: 5rem auto 0;}
main > h6.wp-block-heading {max-width: var(--cw);width: var(--safe-width);}

@media (max-width: 768px) {
  h2.wp-block-heading {font-size: 3.2rem;}
  h3.wp-block-heading {font-size: 2.8rem;padding: 0 5rem 0.4rem 1.8rem;}
  h3.wp-block-heading::after {transform: rotateZ(30deg);width: 4rem;}
  h4.wp-block-heading {font-size: 2.2rem;}
  h5.wp-block-heading {font-size: 1.8rem;}
  h6.wp-block-heading {font-size: 1.6rem;}
}

.has-fs-12-font-size {font-size: 1.2rem !important;}
.has-fs-13-font-size {font-size: 1.3rem !important;}
.has-fs-14-font-size {font-size: 1.4rem !important;}
.has-fs-15-font-size {font-size: 1.5rem !important;}
.has-fs-16-font-size {font-size: 1.6rem !important;}
.has-fs-19-font-size {font-size: 1.9rem !important;}
.has-fs-20-font-size {font-size: 2.0rem !important;}
.has-fs-23-font-size {font-size: 2.3rem !important;}
.has-fs-25-font-size {font-size: 2.5rem !important;}
.has-fs-35-font-size {font-size: 3.5rem !important;}

ul.wp-block-list {font-size: 1.8rem;line-height: 1.5;margin: 5rem auto 0;display: flex;flex-direction: column;gap: 1.2em;}
ul.wp-block-list > li {position: relative;padding-left: 1.8em;}
ul.wp-block-list > li::before {content: "";display: block;position: absolute;left: 0.5em;top: 9px;width: 10px;height: 10px;background: #387992;border-radius: 5px;}
main > ul.wp-block-list {max-width: var(--cw);width: var(--safe-width);}

ol.wp-block-list {font-size: 1.8rem;line-height: 1.5;margin: 5rem auto 0;display: flex;flex-direction: column;gap: 1.2em;counter-reset: ol;}
ol.wp-block-list > li {position: relative;padding-left: 1.8em;counter-increment: ol;}
ol.wp-block-list > li::before {content: counter(ol);position: absolute;left: 0;font-weight: bold;}
ol.wp-block-list > li:nth-child(-n+9)::before {left: 0.5em;}
main > ol.wp-block-list {max-width: var(--cw);width: var(--safe-width);}

.wp-block-quote {background: #eee;padding: 2rem var(--csp);margin: 6rem auto 0;}
.wp-block-quote > :first-child {margin-top: 0 !important;}
.wp-block-quote cite {font-size: 1.4rem;color: #888;margin: 1rem auto 0;}
main > .wp-block-quote {max-width: var(--cw);width: var(--safe-width);}

.wp-element-caption {font-size: 1.4rem;color: #888;}

.wp-block-table {padding: 0 var(--csp);margin: 6rem auto 0;}
.wp-block-table table {width: 100%;margin: auto;font-size: 1.6rem;line-height: 1.5;}
.wp-block-table td, .wp-block-table th {border: 1px solid #ccc;padding: 1rem var(--csp);vertical-align: top;}
.wp-block-table th {font-weight: bold;background: #297991;color: #fff;}
.wp-block-table .wp-element-caption {text-align: center;margin-top: 1rem;}
main > .wp-block-table {max-width: var(--cw);box-sizing: content-box;}

.wp-block-image {margin: 3rem auto 0;}
.wp-block-image.dropshadow img {box-shadow: 0.5rem 0.5rem 1rem rgb(0 0 0 / 15%);}
.wp-block-image .wp-element-caption {display: block !important;}
.wp-block-image.alignright {text-align: right;}
main > figure.wp-block-image:not(.alignfull) {max-width: var(--cw);width: var(--safe-width);display: block !important;margin-left: auto;margin-right: auto;}

.wp-block-gallery {margin: 5rem auto 0;}
main > .wp-block-gallery {max-width: var(--cw);width: var(--safe-width);}

.wp-block-cover {margin-top: 12rem;padding: 6rem var(--csp);min-height: 0;}
.wp-block-cover__inner-container > :first-child {margin-top: 0 !important;}
main > .wp-block-cover:not(.alignfull) {max-width: var(--cw);margin-left: auto;margin-right: auto;}

.wp-block-media-text {margin: 6rem auto 0;}
.wp-block-media-text__content > :first-child {margin-top: 0 !important;}
main > .wp-block-media-text:not(.alignfull) {max-width: var(--cw);width: var(--safe-width);margin-left: auto;margin-right: auto;}

.wp-block-columns {margin: 6rem auto 0;}
.wp-block-column > :first-child {margin-top: 0 !important;}
main > .wp-block-columns {max-width: var(--cw);width: var(--safe-width);margin-left: auto;margin-right: auto;}

@media (max-width: 781px) {
  .wp-block-column-is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {max-width: none !important;}
}

.wp-block-separator {margin: 6rem auto 0;}

:where(.wp-block-cover-image:not(.has-text-color)),
:where(.wp-block-cover:not(.has-text-color)) {color: #fff;}
/* /Gutenberg */

/* Classic Editor */
.classic_editor {max-width: var(--cw);width: var(--safe-width);margin: auto;}
.classic_editor::after {content: "";display: block;clear: both;}

:where(.classic_editor) h1 {font-size: 4.8rem;font-weight: bold;text-align: center;line-height: 1.3;color: #387992;position: relative;padding: 1rem var(--csp);margin: 12rem auto 0;}
:where(.classic_editor) h1::before,
:where(.classic_editor) h1::after {content: "";display: block;position: absolute;height: 3px;left: 0;right: 0;background: url(../img/line-slash.png) repeat;}
:where(.classic_editor) h1::before {top: 0;}
:where(.classic_editor) h1::after {bottom: 0;}
:where(.classic_editor) h2 {font-size: 4.8rem;font-weight: bold;text-align: center;line-height: 1.3;color: #387992;position: relative;padding: 1rem var(--csp);margin: 12rem auto 0;}
:where(.classic_editor) h2::before,
:where(.classic_editor) h2::after {content: "";display: block;position: absolute;height: 3px;left: 0;right: 0;background: url(../img/line-slash.png) repeat;}
:where(.classic_editor) h2::before {top: 0;}
:where(.classic_editor) h2::after {bottom: 0;}
:where(.classic_editor) h3 {font-size: 3.2rem;font-weight: bold;text-align: justify;color: #387992;border-bottom: 1px dashed;position: relative;line-height: 1.4;padding: 0 10rem 0.4rem 1.8rem;margin: 8rem auto 0;}
:where(.classic_editor) h3::before {content: "";display: block;position: absolute;left: 0;top: 0.2rem;bottom: 0.4rem;border-left: 0.7rem solid;}
:where(.classic_editor) h3::after {content: "";display: block;position: absolute;right: 0;bottom: 0;width: 9.5rem;border-top: 0.1rem dashed;transform: rotateZ(15deg);transform-origin: bottom right;}
:where(.classic_editor) h4 {font-size: 2.5rem;line-height: 1.4;font-weight: bold;text-align: justify;color: #387992;margin: 6rem auto 0;border-bottom: 0.3rem solid #e5e5e5;position: relative;padding: 0 0 1.5rem;}
:where(.classic_editor) h4::after {content: "";display: block;position: absolute;left: 0;bottom: -0.3rem;width: 10rem;height: 0.3rem;background: #387992;}
:where(.classic_editor) h5 {font-size: 2rem;font-weight: bold;text-align: justify;margin: 5rem auto 0;background: linear-gradient(-45deg, #fdfdfd 25%, #c5efe0 25%, #c5efe0 50%, #fdfdfd 50%, #fdfdfd 75%, #c5efe0 75%, #c5efe0) repeat;background-size: 0.4rem 0.4rem;border-radius: 1rem;padding: 1rem 2rem;}
:where(.classic_editor) h6 {font-size: 1.8rem;font-weight: bold;line-height: 1.75;margin: 5rem auto 0;}

@media (max-width: 768px) {
  :where(.classic_editor) h1 {font-size: 3.2rem;}
  :where(.classic_editor) h2 {font-size: 3.2rem;}
  :where(.classic_editor) h3 {font-size: 2.8rem;padding: 0 5rem 0.4rem 1.8rem;}
  :where(.classic_editor) h3::after {transform: rotateZ(30deg);width: 4rem;}
  :where(.classic_editor) h4 {font-size: 2.2rem;}
  :where(.classic_editor) h5 {font-size: 1.8rem;}
  :where(.classic_editor) h6 {font-size: 1.6rem;}
}

:where(.classic_editor) em {font-style: italic;}

:where(.classic_editor) blockquote {background: #eee;padding: 2rem var(--csp);margin: 6rem auto 0;}
:where(.classic_editor) blockquote > :first-child {margin-top: 0 !important;}

:where(.classic_editor) li {position: relative;padding-left: 1.8em;}
:where(.classic_editor) li:nth-child(n+2) {margin-top: .5em;}
:where(.classic_editor) ul,
:where(.classic_editor) ol {font-size: 1.8rem;line-height: 1.5;text-align: justify;margin: 5rem auto 0;display: flex;flex-direction: column;gap: 1.2em;}
:where(.classic_editor) ul > li::before {content: "";display: block;position: absolute;left: 0.5em;top: 9px;width: 10px;height: 10px;background: #387992;border-radius: 5px;}
:where(.classic_editor) ol {counter-reset: ol;}
:where(.classic_editor) ol > li::before {content: counter(ol);position: absolute;left: 0;font-weight: bold;}
:where(.classic_editor) ol > li:nth-child(-n+9)::before {left: 0.5em;}
:where(.classic_editor) ol > li {counter-increment: ol;}

:where(.classic_editor) table {margin: 6rem auto 0;font-size: 1.6rem;line-height: 1.5;}
:where(.classic_editor) table caption {font-size: 1.4rem;line-height: 1.3;text-align: center;margin-bottom: 1rem;}
:where(.classic_editor) tr > * {border: 1px solid #ccc;padding: 10px 20px;vertical-align: top;}
:where(.classic_editor) th {font-weight: bold;background: #297991;color: #fff;}
:where(.classic_editor) .wp-caption-text {font-size: 1.4rem;margin-top: 0.5rem;text-align: center;line-height: 1.4;}

:where(.classic_editor) .alignleft {float: left;margin-right: 3rem;margin-bottom: 3rem;margin-top: 3.7rem;}
:where(.classic_editor) .alignright {float: right;margin-left: 3rem;margin-bottom: 3rem;margin-top: 3.7rem;}
:where(.classic_editor) .aligncenter {display: block;margin: 0 auto;}
/* /Classic Editor */

/* Header */
.header__description {background: #297991;color: #fff;padding: 0.2rem var(--csp);}
.header__description p {max-width: var(--cw);margin: auto;font-size: 1.2rem;line-height: 1.4;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.header__float_section {display: flex;justify-content: space-between;align-items: center;gap: 3rem;min-height: 10rem;}
.header__float_section_left {display: flex;gap: 0;align-items: center;}
.header__logo a {transition: .3s;}
.header__logo a:hover {opacity: .7;}
.header__header_text {padding: 1rem var(--csp);color: #161f84;}
.header__header_text_main {font-size: 2rem;font-weight: bold;line-height: 1.3;margin: 0;}
.header__header_text_sub {font-size: 1.6rem;font-weight: bold;line-height: 1.3;margin: 0.3rem auto 0;}
.header__mv img {width: 100%;height: 100%;object-fit: cover;}
.header__top_section {position: relative;}
.header__main_text {position: absolute;bottom: 2rem;width: 100%;padding: 0 var(--csp);text-align: center;margin: 0;color: #fff;text-shadow: 0 0 6px #000000;}
.header__main_text_sub {font-size: 2.7rem;font-weight: bold;line-height: 1.4;display: block;}
.header__main_text_main {font-size: 5.1rem;font-weight: bold;line-height: 1.2;display: block;margin-top: 0.5rem;}
.header__main_text_cn {display: block;font-size: 1.6rem;font-weight: bold;line-height: 1.5;margin-top: 4rem;}
.header__bottom_section {position: relative;padding: 2rem var(--csp) 1.5rem;display: flex;flex-direction: column;justify-content: center;align-items: center;gap: 2rem;min-height: 13rem;}
.header__sub_text {text-align: center;font-size: 2.1rem;line-height: 1.4;color: #1c4ec0;margin: 0;}
.header__sub_text_1 {color: #161f84;}
.header__sub_text_2 {display: block;font-size: 3rem;font-weight: bold;line-height: 1.3;}
.header__sub_text_3 {color: #161f84;margin-top: 0.3em;display: block;}
.header__resdv {display: grid;grid-template-columns: 1fr 1fr;gap: 1rem 3.3rem;padding: 0 var(--csp);align-items: center;}
.header__resdv_email_btn {grid-column: 1 / -1;--color: #fff;}
.header__resdv_email_btn svg {fill: var(--color);}
.header__resdv_heading {display: block;font-size: 1.6rem;font-weight: bold;line-height: 1;text-align: right;color: #000;}
.header__resdv_phone {--color: #000000;display: block;font-size: 3.3rem;font-weight: bold;line-height: 1;color: var(--color);margin-top: 0.3rem;}
.header__resdv_phone a {text-decoration: inherit;color: inherit;}
.header__resdv_phone svg {width: 0.697em;position: relative;top: -0.1em;fill: var(--color);}
.header__resdv p br {display: none;}
.header__resdv_contact_time {display: block;font-size: 1.3rem;line-height: 1.2;color: #333;text-align: right;}
.header__resdv p {margin: 0;}
.header__resdv_email_btn a {display: flex;justify-content: center;align-items: center;gap: 0.5rem;background: #37909b;color: var(--color);text-decoration: none;font-size: 1.4rem;font-weight: bold;line-height: 1.2;text-align: center;border-radius: 9999vw;transition: .6s;padding: 0.3rem 1rem;min-height: 3rem;}
.header__resdv_email_btn a:hover {opacity: .7;}
.header__resdv_email_btn a svg {width: 1.6em;}

@media (min-width: 1025px) {
  .header__mv {height: 41.1rem;}
}

@media (max-width: 1024px) {
  .header__header_text_main {font-size: 1.8rem;}
  .header__main_text_sub {font-size: 1.8rem;}
  .header__main_text_main {font-size: 3.2rem;}
  .header__sub_text {font-size: 1.6rem;}
}

@media (max-width: 1024px) and (min-width: 769px) {
  .header__mv {height: 30rem;}
}

@media (min-width: 769px) {
  .header__btns {display: none;}
}

@media (max-width: 768px) {
  .header__description p {text-align: center;}
  .header__float_section {min-height: 10rem;gap: 1.5rem;}
  .header__float_section_left > :nth-child(n+2) {display: none;}
  .header__header_text {padding-right: 0;}
  .header__header_text_main {font-size: 1.6rem;}
  .header__header_text_sub {font-size: 1.2rem;}
  .header__btns {padding-right: var(--csp);flex-shrink: 0;}
  .header__btns_inner {display: flex;gap: 1rem;}
  .header__btns_anchor {display: block;text-align: center;text-decoration: none;color: inherit;}
  .header__btns_anchor--phone {--icon: url(../img/icon-phone-white.svg);--bg-color: #4e4945;}
  .header__btns_anchor--email {--icon: url(../img/icon-email-white.svg);--bg-color: #92621b;}
  .header__btns_anchor::before {content: "";display: block;width: 4.5rem;height: 4.5rem;background-image: var(--icon);background-position: center;background-size: 50%;background-repeat: no-repeat;border-radius: 9999px;background-color: var(--bg-color);}
  .header__btns_label {display: block;font-size: 0.8rem;margin-top: 0.2rem;font-weight: bold;}
  .header__btns_label--hidden {display: none;}
  .header__main_text {--sub: 24;--main: 48;bottom: 4rem;}
  .header__main_text_sub {font-size: calc((100vw - 30px) * var(--sub) / 738);}
  .header__main_text_main {font-size: calc((100vw - 30px) * var(--main) / 738);margin-top: 1rem;}
  .header__sub_text {font-size: calc((100vw - 30px) / 738 * 24);}
  .header__resdv {display: none;}
}

@media (max-width: 640px) {
  .header__sub_text_2 {font-size: 1.6em;}
  .header__sub_text_3 {display: block;margin-top: 0.3em;}
}

@media (max-width: 480px) {
  .header__logo {width: 21rem;flex-shrink: 0;}
  .header__header_text_main {font-size: 1.4rem;}
  .header__header_text_sub {font-size: 0.8rem;}
  .header__btns_anchor::before {width: 3.9rem;height: 3.9rem;}
  .header__btns_inner {gap: 0.8rem;}
  .header__float_section {min-height: 8.8rem;}
  .header__bottom_section {min-height: 9rem;}
  .header__main_text {bottom: 3rem;}
  .header__main_text_sub {font-size: 2rem;}
  .header__main_text_main {font-size: 2.8rem;}
  .header__sub_text {font-size: 1.4rem;}
  .header__sub_text_2 {font-size: 2.2rem;}
}
/* /Header */

/* Global Navi */
.gn {background: linear-gradient(-45deg, #fdfdfd 25%, #edf1fa 25%, #edf1fa 50%, #fdfdfd 50%, #fdfdfd 75%, #edf1fa 75%, #edf1fa) repeat;background-size: 4px 4px;border-bottom: 20px solid #fce3a8;padding: 1rem var(--csp);}
.gn__inner {display: flex;max-width: var(--cw);margin: auto;--num: 5;--gap: 0px;gap: var(--gap);}
.gn__item {width: calc((100% + var(--gap)) / var(--num) - var(--gap));position: relative;}
.gn__item:first-child::before,
.gn__item::after {content: "";position: absolute;top: 0;bottom: 0;right: 0;width: 1px;background: #888888;}
.gn__item:first-child::before {left: 0;}
.gn__item::after {right: 0;}
.gn__anchor {display: block;text-align: center;text-decoration: none;}
.gn__anchor::before {content: "";display: block;width: 4.5rem;height: auto;aspect-ratio: 9 / 10;background-image: var(--icon);background-size: contain;background-repeat: no-repeat;margin: 0 auto 0.5rem;transition: .3s;}
.gn__anchor:hover::before {translate: 0 -5px;}
.gn__title {font-size: 1.8rem;font-weight: bold;line-height: 1.2;color: #525451;}

@media (max-width: 1024px) {
  .gn__anchor::before {width: 3rem;}
  .gn__title {font-size: 1.4rem;}
}

@media (max-width: 768px) {
  .gn__title {font-size: 1.2rem;}
}

@media (max-width: 480px) {
  .gn__title {font-size: 1rem;}
}
/* /Global Navi */

/* Footer CTA */
.footer_cta {background: #f3f7fe;margin-top: 12rem;}
.footer_cta__top {background: #b9b9b9;padding: 1rem var(--csp);}
.footer_cta__heading {color: #fff;text-align: center;font-size: 3rem;font-weight: bold;line-height: 1.3;}
.footer_cta__bottom {padding: 3.5rem var(--csp) 2.8rem;}
.footer_cta__inner {max-width: var(--cw);margin: auto;display: flex;justify-content: center;align-items: center;gap: 4.5rem;position: relative;}
.footer_cta__inner::after {content: "";position: absolute;top: 0;bottom: 0;left: 50%;width: 1px;background: #a0a0a0;}
.footer_cta__left {width: 100%;}
.footer_cta__right {width: 100%;display: flex;flex-direction: column;gap: 1.5rem;}
.footer_cta__btns {font-size: 1.8rem;font-weight: bold;line-height: 1.2;}
.footer_cta__btn a {--color: #fff;display: block;text-decoration: none;color: var(--color);}
.footer_cta__btn_inner {display: flex;align-items: center;min-height: 6.6rem;padding: 1rem 2rem;background: #297991;position: relative;overflow: hidden;transform-origin: center;transition: background .3s;}
.footer_cta__btn_inner::after {content: "";display: block;position: absolute;border: 0.5rem solid #fff;border-top-color: transparent;border-left-color: transparent;bottom: 0.4rem;right: 0.4rem;}
.footer_cta__btn svg {fill: var(--color);width: 2.8em;height: auto;margin-right: 2rem;}
.footer_cta__btn a:hover .footer_cta__btn_inner {animation: footerCtaFlip .3s ease forwards;}
.footer_cta__btn a:not(:hover) .footer_cta__btn_inner {animation: footerCtaFlipBack .3s ease forwards;}
.footer_cta__info_heading {font-size: 1.6rem;font-weight: bold;line-height: 1.3;margin: 0;}
.footer_cta__info_heading::before {content: "◆";}
.footer_cta__info_tel {font-size: 3.9rem;font-weight: bold;line-height: 1;margin: 0;}
.footer_cta__info_tel a {color: inherit;text-decoration: none;}
.footer_cta__info {color: #000;}
.footer_cta__info_time {font-size: 1.3rem;line-height: 1.3;margin: 0.8rem auto 0;}
.footer_cta__info_tel svg {width: 0.7em;height: auto;}

@media (max-width: 768px) {
  .footer_cta__heading {font-size: 2.4rem;}
  .footer_cta__inner {display: block;}
  .footer_cta__inner::after {content: none;}
  .footer_cta__right {margin-top: 3rem;flex-direction: row;justify-content: center;gap: 4rem;position: relative;}
  .footer_cta__right::before {content: "";position: absolute;left: 50%;width: 1px;background: #888;top: 0;bottom: 0;}
  .footer_cta__info {width: 100%;}
  .footer_cta__info_tel {font-size: 3.6rem;}
}

@media (max-width: 640px) {
  .footer_cta__right {flex-direction: column;}
  .footer_cta__right::before {top: 50%;left: 0;right: 0;bottom: auto;width: auto;height: 1px;}
}
/* /Footer CTA */

/* Footer Menu */
.footer_menu {padding: 4rem 1.6rem;}
.footer_menu__inner {display: flex;justify-content: center;gap: 3.2rem;flex-wrap: wrap;}
.footer_menu__menu {max-width: 24%;}
.footer_menu__heading {font-size: 1.4rem;font-weight: bold;line-height: 1.2;padding-left: 1.2em;position: relative;margin-bottom: 1.5rem;}
.footer_menu__heading a {text-decoration: inherit;color: inherit;}
.footer_menu__heading::before {content: "";border: 0.5em solid #a3a3a3;border-left-color: #555555;border-top-color: #555555;position: absolute;top: 0.3rem;left: 0;}
.footer_menu__list {display: flex;flex-direction: column;gap: 1.2rem;font-size: 1.4rem;line-height: 1.2;text-align: justify;}
.footer_menu__item a {text-decoration: none;color: inherit;}
.footer_menu__item a:hover {text-decoration: underline;}

@media (max-width: 768px) {
  .footer_menu__inner {--num: 4;--gap: 3rem;gap: var(--gap);}
  .footer_menu__menu {width: calc((100% + var(--gap)) / var(--num) - var(--gap));max-width: none;position: relative;}
  .footer_menu__menu:nth-child(n+2)::before {content: "";position: absolute;top: 0;bottom: 0;left: -1.5rem;width: 1px;background: #ccc;}
  .footer_menu__list {font-size: 1.2rem;}
}

@media (max-width: 480px) {
  .footer_menu__inner {--num: 2;}
  .footer_menu__menu:nth-child(2n+3)::before {content: none;}
}
/* /Footer Menu */

/* Footer */
.footer {background: #297991;color: #fff;padding: 2rem var(--csp) 2rem;}
.footer__inner {max-width: var(--cw);margin: auto;}
.footer__logo a {transition: .3s;}
.footer__logo a:hover {opacity: .7;}
.footer__inner2 {display: flex;gap: 3rem;justify-content: space-between;align-items: end;margin-top: 1.5rem;}
.footer__info_heading {font-size: 1.6rem;line-height: 1.5;margin: 0;}
.footer__info_address {font-size: 1.3rem;line-height: 1.5;margin: 0.3rem auto 0;}
.footer__info_tel {font-size: 3.3rem;font-weight: bold;line-height: 1.2;margin: 0.2rem auto 0;}
.footer__info_tel a {text-decoration: none;display: block;width: fit-content;max-width: 100%;color: inherit;}
.footer__info_tel svg {fill: #fff;margin-right: 0.2em;}
.footer__info_time {font-size: 1.3rem;line-height: 1.3;margin: 0.3rem auto 0;}
.footer__left {display: flex;gap: 3rem;}
.footer__info_heading::before {content: "◇ ";}
.footer__sns {display: flex;flex-direction: column;gap: 0.5rem;}
.footer__sns_item {max-width: 37.5rem;}
.footer__sns_item a {transition: .3s;}
.footer__sns_item a:hover {opacity: .7;}
.footer__copyright {display: block;margin-top: 1rem;text-align: right;font-size: 1.4rem;line-height: 1.2;}

@media (max-width: 1024px) {
  .footer__logo {text-align: center;}
  .footer__inner2 {display: block;}
  .footer__left {justify-content: center;}
  .footer__sns_item {margin: auto;}
  .footer__right {margin-top: 3rem;}
  .footer__copyright {text-align: center;}
}

@media (max-width: 768px) {
  .footer__logo {text-align: center;}
  .footer__innter2 {flex-direction: column;align-items: center;}
  .footer__info_heading {text-align: center;}
  .footer__info_address {text-align: center;}
  .footer__info_tel {text-align: center;}
  .footer__info_tel a {margin: auto;}
  .footer__info_time {text-align: center;}
  .footer__copyright {text-align: center;margin-top: 3rem;}
}

@media (max-width: 640px) {
  .footer__left {flex-direction: column;}
}
/* /Footer */

/* Pagetop Navi */
.pagetop_navi {position: fixed;right: 1.5rem;bottom: 1.5rem;background: #000;cursor: pointer;opacity: .7;width: 6rem;height: 6rem;border-radius: 1rem;text-indent: -99999px;transition: .6s;}
.pagetop_navi::after {content: "";display: block;position: absolute;background: #fff;width: 2.8rem;height: auto;aspect-ratio: 7/6;top: 50%;left: 50%;translate: -50% -50%;clip-path: polygon(50% 0%, 0% 100%, 100% 100%);}
.pagetop_navi--hidden {right: -6rem;}

@media (max-width: 768px) {
  .pagetop_navi {width: 3rem;height: 3rem;border-radius: 0.5rem;}
  .pagetop_navi::after {width: 1.2rem;}
}
/* /Pagetop Navi */

/* List Banners */
.wp-block-lazyblock-banner-links {margin: 6rem auto 0;padding: 0 1rem;}
.list_banners {display: flex;flex-wrap: wrap;--num: 2;--gap: 4rem;gap: 1.5rem var(--gap);}
.list_banners__item {width: calc((100% + var(--gap)) / var(--num) - var(--gap));}
.list_banners__anchor {display: block;position: relative;transition: .3s;}
.list_banners__anchor:hover {opacity: .7;}
.list_banners__anchor::before,
.list_banners__anchor::after {content: "";display: block;position: absolute;opacity: 0;transition: .6s;}
.list_banners__anchor::before {left: 0;top: 0;right: 100%;bottom: 100%;border-top: 4px solid rgba(0, 0, 0, 0.5);border-left: 4px solid rgba(0, 0, 0, 0.5);z-index: 1;}
.list_banners__anchor::after {right: 0;bottom: 0;left: 100%;top: 100%;border-right: 4px solid rgba(0, 0, 0, 0.5);border-bottom: 4px solid rgba(0, 0, 0, 0.5);z-index: 1;}
.list_banners__anchor:hover::before {opacity: 1;right: 0;bottom: 0;}
.list_banners__anchor:hover::after {opacity: 1;left: 0;top: 0;}
.list_banners__img {width: 100%;height: auto;aspect-ratio: 940/474;object-fit: contain;}
main > .wp-block-lazyblock-banner-links {max-width: var(--cw);margin-left: auto;margin-right: auto;}
/* /List Banners */

/* Floating Image */
.floating_img {max-width: var(--cw);margin: 3rem auto 0;text-align: center;}
.floating_img img {margin-bottom: 2rem;max-width: 45%;}
.floating_img--left img {margin-right: 2rem;}
.floating_img--right img {margin-left: 2rem;}

@media (max-width: 480px) {
  .floating_img img {float: none !important;max-width: 100%;margin: 0 auto !important;}
}
/* /Floating Image */

/* Block Green Tile */
.wp-block-lazyblock-block-greentile {padding: 7rem var(--csp);background: url(../img/bg-greentile.png) repeat;margin: 12rem auto 0;}
.block_greentile {max-width: var(--cw);margin: auto;}
/* /Block Green Tile */

/* Inner Blocks */
.lazyblock-inner-blocks > :first-child {margin-top: 0 !important;}
/* /Inner Blocks */

/* Box White Square */
.wp-block-lazyblock-box-whitesquare {background: #fff;border-radius: 1rem;box-shadow: 0.5rem 0.8rem rgba(0, 0, 0, .1);padding: 4rem;color: #535353;margin: 6rem auto 0;}
/* /Box White Square */

/* Error 404 */
.error-page {padding: 8rem var(--csp);text-align: center;}
.error-page__inner {max-width: var(--cw);margin: 0 auto;}
.error-page__title {font-size: 7.2rem;font-weight: 700;line-height: 1;margin-bottom: 2.4rem;color: #222;}
.error-page__lead {font-size: 2rem;margin-bottom: 1.6rem;font-weight: 500;text-align: center;}
.error-page__text {font-size: 1.4rem;color: #666;line-height: 1.8;width: fit-content;margin: 0 auto 4rem;}
.error-page__actions {display: flex;justify-content: center;gap: 1.6rem;flex-wrap: wrap;}
.error-page__button {display: inline-block;padding: 1.4rem 2.8rem;background: #000;color: #fff;text-decoration: none;font-size: 1.4rem;border-radius: 0.4rem;transition: 0.3s;}
.error-page__button:hover {background: #333;}
.error-page__button--secondary {background: #eee;color: #222;}
.error-page__button--secondary:hover {background: #ddd;}
/* /Error 404 */

/* Customize Heading */
.wp-block-lazyblock-customize-heading {max-width: var(--cw);margin: 6rem auto 0;width: var(--safe-width);}
.customize_heading {font-size: var(--font-size);font-weight: bold;text-align: center;margin: 0 auto;}
.customize_heading--underline {position: relative;border-bottom: 3px solid #e5e5e5;padding-bottom: 1rem;}
.customize_heading--underline::before {content: "";position: absolute;bottom: -3px;left: 0;height: 3px;background: #00a569;width: 10rem;}
.customize_heading--doubleline {border: 3px solid #707070;border-left: none;border-right: none;padding: 0.75rem var(--csp);}
.customize_heading--topdashed {border-top: 2px dashed #ccc;padding-top: 1.5em;}

@media (max-width: 781px) {
  .wp-block-column > .wp-block-lazyblock-customize-heading {width: auto !important;}
}
/* /Customize Heading */

/* Home Banners */
.wp-block-lazyblock-home-banners {padding: 0 var(--csp);}
.home_banners {max-width: var(--cw);margin: 10rem auto 0;}
.home_banners__inner {display: flex;flex-wrap: wrap;--num: 2;--gap: 6rem;gap: 2.4rem var(--gap);}
.home_banners__item {width: calc((100% + var(--gap)) / var(--num) - var(--gap));position: relative;}
.home_banners__item::before,
.home_banners__item::after {content: "";display: block;position: absolute;opacity: 0;transition: .6s;pointer-events: none;}
.home_banners__item::before {left: 0;top: 0;right: 100%;bottom: 100%;border-top: 4px solid rgba(0, 0, 0, 0.5);border-left: 4px solid rgba(0, 0, 0, 0.5);z-index: 1;}
.home_banners__item::after {right: 0;bottom: 0;left: 100%;top: 100%;border-right: 4px solid rgba(0, 0, 0, 0.5);border-bottom: 4px solid rgba(0, 0, 0, 0.5);z-index: 1;}
.home_banners__item:hover::before {opacity: 1;right: 0;bottom: 0;}
.home_banners__item:hover::after {opacity: 1;left: 0;top: 0;}
.home_banners__anchor {display: block;aspect-ratio: 470/237;position: relative;border: 1rem solid var(--color);border-bottom-width: 2.2rem;color: #fff;transition: 0.6s;}
.home_banners__anchor:hover {opacity: .7;}
.home_banners__figure {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.home_banners__img {width: 100%;height: 100%;object-fit: cover;}
.home_banners__body {position: absolute;bottom: -2.2rem;left: 0;width: 100%;background: var(--color);clip-path: polygon(0 0, 90% 0, 100% 100%, 0 100%);padding: 0.6rem 0 0.3rem;display: flex;flex-direction: column;justify-content: center;min-height: 8.8rem;}
.home_banners__heading {position: relative;font-size: 2.2rem;font-weight: bold;line-height: 1.273;display: block;padding-right: 3rem;}
.home_banners__sub {position: relative;font-size: 1.1rem;font-weight: bold;line-height: 1.417;display: block;margin-top: 0.4rem;}

@media (max-width: 1024px) {
  .home_banners__inner {--gap: 2.4rem;}
  .home_banners__heading {font-size: 1.5rem;}
  .home_banners__sub {font-size: 0.8rem;}
  .home_banners__body {min-height: 7rem;}
}

@media (max-width: 768px) {
  .home_banners {margin: 6rem auto 0;}
  .home_banners__anchor {aspect-ratio: 4/3;}
}

@media (max-width: 480px) {
  .home_banners__inner {--num: 1;}
  .home_banners__anchor {aspect-ratio: 900/434;}
}
/* /Home Banners */

/* Color Background Block */
.color_bg_block {background: var(--color);margin: 14rem auto 0;}
.color_bg_block__inner {padding: 4.5rem 0 7.6rem;}

@media (max-width: 768px) {
  .color_bg_block {margin: 6rem auto 0;}
}
/* /Color Background Block */

/* Gradation Heading */
.hd_grad_en {background-image: linear-gradient(90deg,var(--grad-start), var(--grad-end) 70%);padding: 0.6rem var(--csp);margin: 4.5rem auto 0;}
.hd_grad_en__en {font-family: var(--diplomata);font-size: 2.5rem;color: var(--grad-start);opacity: 0.5;position: absolute;bottom: 0.1em;right: 0;}
.hd_grad_en__inner {max-width: var(--cw);margin: auto;display: flex;justify-content: space-between;align-items: end;position: relative;}
.hd_grad_en__main {color: #000000;font-size: var(--font-size);font-weight: bold;line-height: 1.5;padding-right: 12.5em;}
.hd_grad_en--noen .hd_grad_en__main {padding-right: 0;}
.hd_grad_en--notfull {max-width: var(--cw);width: var(--safe-width);}

@media (max-width: 1024px) {
  .hd_grad_en__main {padding-right: 0;}
}

@media (max-width: 640px) {
  .hd_grad_en__main {font-size: calc(var(--font-size) * 0.8);}
  .hd_grad_en__en {font-size: 2rem;}
}
/* /Gradation Heading */

/* Contents List */
.wp-block-lazyblock-contents-list {padding: 0 var(--csp);margin-top: 10rem;}
.contents_list__inner {display: flex;flex-wrap: wrap;--num: 3;--gap: 5rem;gap: 6.8rem var(--gap);}
.contents_list {max-width: var(--cw);width: var(--safe-width);margin: auto;}
.contents_list__item {width: calc((100% + var(--gap)) / var(--num) - var(--gap));overflow: hidden;border-radius: 1.1rem;background: #fff;padding-bottom: 4rem;min-height: 37rem;}
.contents_list__anchor {display: block;height: 100%;color: #000;text-decoration: none;}
.contents_list__eyecatch {aspect-ratio: 3/2;overflow: hidden;position: relative;}
.contents_list__eyecatch img {width: 100%;height: 100%;object-fit: cover;transition: .6s;}
.contents_list__eyecatch .new_mark {position: absolute;bottom: 0;right: 0;font-size: 1.8rem;font-weight: bold;color: #fff;pointer-events: none;background: #d0130c;clip-path: polygon(100% 0, 100% 100%, 0 100%);width: 4.5em;height: auto;aspect-ratio: 1/1;text-align: right;display: flex;justify-content: end;align-items: end;padding: 0 0.3em 0.2em 0;}
.contents_list__type {display: flex;gap: 1rem;flex-wrap: wrap;font-size: 1rem;line-height: 1.2;margin-top: 1.5rem;padding: 0 2.1rem;}
.contents_list__type--news {--color: var(--article-tag-color-news);}
.contents_list__type--programs {--color: #b9a078;}
.contents_list__eyecatch img:hover {scale: 1.2;}
.contents_list__type a {color: var(--color);text-decoration: none;display: block;border: 1px solid;border-radius: 9999px;padding: 0.15em 0.65em;transition: .3s;}
.contents_list__heading {font-size: 1.8rem;font-weight: bold;line-height: 1.5;margin-top: 1.5rem;padding: 0 2.1rem;}
.contents_list__heading_link {color: inherit;text-decoration: none;}
.contents_list__heading_link:hover {text-decoration: underline;}
.contents_list__post_date {display: block;font-size: 1rem;line-height: 1.2;margin-top: 1.5rem;padding: 0 2.1rem;color: #B4B4B4;}
.contents_list__post_date::before {content: "";background: url(../img/icon-clock-gray.svg) center/contain no-repeat;display: inline-block;width: 1.5em;height: auto;aspect-ratio: 1/1;position: relative;top: 0.4em;margin-right: 0.5em;}
.contents_list__type--blog {--color: var(--article-tag-color-blog);}
.contents_list__type a:hover {color: #fff;border-color: var(--color);background: var(--color);}

@media (max-width: 1024px) {
  .contents_list__inner {--gap: 2rem;gap: var(--gap);}
}

@media (max-width: 768px) {
  .wp-block-lazyblock-contents-list {margin-top: 6rem;}
  .contents_list__inner {--num: 2;}
}

@media (max-width: 480px) {
  .contents_list__eyecatch .new_mark {font-size: 1rem;width: 4.5rem;padding: 0 0.3em 0.3em 0;}
  .contents_list__heading {font-size: 1.4rem;}
  .contents_list__item {min-height: 28rem;}
}
/* /Contents List */

/* Customize Buttons */
.wp-block-lazyblock-customize-buttons {padding: 0 var(--csp);}
.btn_list {max-width: var(--cw);margin: 5rem auto 0;display: flex;justify-content: var(--align);flex-wrap: wrap;gap: 1rem;}
.btn_list__anchor {--color: #fff;display: block;text-decoration: none;color: var(--color);font-size: 2rem;font-weight: bold;line-height: 1.2;min-width: 64.8%;}
.btn_list__anchor_inner {display: flex;justify-content: center;align-items: center;min-height: 5rem;padding: 1rem 2rem;background: #297991;position: relative;overflow: hidden;transform-origin: center;transition: background .3s;}
.btn_list__anchor_inner::after {content: "";display: block;position: absolute;border: 0.5rem solid #fff;border-top-color: transparent;border-left-color: transparent;bottom: 0.4rem;right: 0.4rem;}
.btn_list__anchor:hover .btn_list__anchor_inner {animation: footerCtaFlip .3s ease forwards;}
.btn_list__anchor:not(:hover) .btn_list__anchor_inner {animation: footerCtaFlipBack .3s ease forwards;}
/* /Customize Buttons */

/* Customize Buttons 2 */
.wp-block-lazyblock-list-btns2 {padding: 0 var(--csp);}
.list_btns2 {max-width: var(--cw);margin: 7.3rem auto 0;}
.list_btns2__inner {display: flex;flex-wrap: wrap;--num: 2;--gap: 5.8rem;gap: 2rem var(--gap);}
.list_btns2__anchor {color: #fff;text-decoration: none;width: calc((100% + var(--gap)) / var(--num) - var(--gap));font-size: 2.3rem;font-weight: bold;line-height: 1.3;}
.list_btns2__anchor_inner {text-align: center;display: flex;justify-content: center;align-items: center;min-height: 5rem;padding: 1rem 2rem;background: #297991;position: relative;overflow: hidden;transform-origin: center;transition: background .3s;}
.list_btns2__anchor_inner::after {content: "";display: block;position: absolute;border: 0.5rem solid #fff;border-top-color: transparent;border-left-color: transparent;bottom: 0.4rem;right: 0.4rem;}
.list_btns2__anchor.has_icon_left .list_btns2__anchor_inner2 {padding-left: var(--padding);}
.list_btns2__anchor.has_icon_right .list_btns2__anchor_inner2 {padding-right: var(--padding);}
.list_btns2__anchor.has_icon_left .list_btns2__anchor_inner2::before,
.list_btns2__anchor.has_icon_right .list_btns2__anchor_inner2::after {content: "";position: absolute;top: 50%;translate: 0 -50%;background-position: center;background-size: contain;background-repeat: no-repeat;width: 1.8em;height: auto;aspect-ratio: 1/1;}
.list_btns2__anchor.has_icon_left .list_btns2__anchor_inner2::before {left: 0;background-image: var(--icon-left);}
.list_btns2__anchor.has_icon_right .list_btns2__anchor_inner2::after {right: 0;background-image: var(--icon-right);}
.list_btns2__anchor:hover .list_btns2__anchor_inner {animation: footerCtaFlip .3s ease forwards;}
.list_btns2__anchor:not(:hover) .list_btns2__anchor_inner {animation: footerCtaFlipBack .3s ease forwards;}
.list_btns2__anchor_inner2 {position: relative;min-width: 32rem;--padding: 6rem;}

@media (max-width: 1024px) {
  .list_btns2__inner {--gap: 2.4rem;}
}

@media (max-width: 768px) {
  .list_btns2__inner {--num: 1;}
}
/* /Customize Buttons 2 */

/* Customize Buttons 3 */
.wp-block-lazyblock-list-btns3 {padding: 0 var(--csp);}
.list_btns3 {max-width: var(--cw);margin: 7.3rem auto 0;}
.list_btns3__inner {display: flex;--num: 2;--gap: 5.8rem;gap: 2rem var(--gap);}
.list_btns3__anchor {color: #fff;text-decoration: none;width: calc((100% + var(--gap)) / var(--num) - var(--gap));font-size: 1.6rem;font-weight: bold;line-height: 1.3;}
.list_btns3__anchor_inner {text-align: center;display: flex;justify-content: center;align-items: center;min-height: 3.8rem;padding: 0.3rem 2rem;background: #297991;position: relative;overflow: hidden;transform-origin: center;transition: background .3s;}
.list_btns3__anchor_inner::after {content: "";display: block;position: absolute;border: 0.5rem solid #fff;border-top-color: transparent;border-left-color: transparent;bottom: 0.4rem;right: 0.4rem;}
.list_btns3__anchor:hover .list_btns3__anchor_inner {animation: footerCtaFlip .3s ease forwards;}
.list_btns3__anchor:not(:hover) .list_btns3__anchor_inner {animation: footerCtaFlipBack .3s ease forwards;}
.list_btns3__anchor_inner2 {position: relative;min-width: 32rem;--padding: 6rem;}

@media (max-width: 1024px) {
  .list_btns3__inner {--gap: 2.4rem;}
}

@media (max-width: 768px) {
  .list_btns3__inner {--num: 1;}
}
/* /Customize Buttons 3 */

/* List Archives */
.wp-block-lazyblock-list-archives {padding: 0 var(--csp);}
.list_archives {max-width: var(--cw);margin: 3.6rem auto 0;}
.list_archives__inner {--border: 1px dashed #707070;border-top: var(--border);max-height: 35rem;overflow-y: auto;}
.list_archives__item {border-bottom: var(--border);padding: 1.2rem 0;}
.list_archives__item_inner {display: grid;grid-template-columns: max-content 1fr;grid-template-areas: "date title" "cat title";column-gap: 1.8rem;row-gap: 0.5rem;align-items: center;}
.list_archives__post_date {grid-area: date;font-size: 1.5rem;font-weight: bold;line-height: 1.2;color: #000;align-self: end;}
.list_archives__cat {grid-area: cat;display: flex;flex-wrap: wrap;gap: 0.3rem;align-self: start;}
.list_archives__title {grid-area: title;margin: 0;font-size: 1.6rem;line-height: 1.3;align-self: center;padding-right: 1em;}
.list_archives__cat_item--news {--color: var(--article-tag-color-news);}
.list_archives__cat_item--programs {--color: #b9a078;}
.list_archives__cat_item--blog {--color: var(--article-tag-color-blog);}
.list_archives__cat a {display: block;background: var(--color);color: #fff;text-decoration: none;font-size: 1rem;font-weight: bold;line-height: 1.2;text-align: center;padding: 0.45rem 1rem;transition: .3s;}
.list_archives__cat > li {width: 100%;}
.list_archives__title a {color: inherit;text-decoration: none;}
.list_archives__title a:hover {text-decoration: underline;}
.list_archives__cat a:hover {opacity: .7;}
/* /List Archives */

/* Page Title */
.pagetitle {font-size: 2.8rem;font-weight: bold;line-height: 1.4;text-align: center;background: #3fbabb;color: #fff;padding: 1rem var(--csp);display: flex;justify-content: center;align-items: center;min-height: 10rem;}
.pagetitle__inner {max-width: var(--cw);position: relative;padding: 0 1.3em;}
.pagetitle__inner::before, .pagetitle__inner::after {font-size: 1.464em;position: absolute;top: 50%;translate: 0 -50%;}
.pagetitle__inner::before {content: "[";left: 0;}
.pagetitle__inner::after {content: "]";right: 0;}
/* /Page Title */

/* Breadcrumbs */
.breadcrumbs {padding: 0 var(--csp);margin-top: 2.4rem;font-size: 1.2rem;}
.breadcrumbs__inner {max-width: var(--cw);margin: auto;}
.breadcrumbs a {color: inherit;text-decoration: none;}
.breadcrumbs a:hover {text-decoration: underline;}
/* /Breadcrumbs */

/* Google Map */
.wp-block-lazyblock-google {padding: 0 var(--csp);}
.gmap {max-width: var(--cw);margin: 3.5rem auto 0;aspect-ratio: 16/9;}
.gmap iframe {width: 100%;height: 100%;}

@media (max-width: 480px) {
  .gmap {aspect-ratio: 1/1;}
}
/* /Google Map */

/* Achievements */
.wp-block-lazyblock-activities {padding: 0 var(--csp);}
.achievements__inner {max-width: var(--cw);margin: auto;}
/* /Achievements */

/* List Licenses */
.list_licenses {font-size: 1.6rem;}
.list_licenses > li {position: relative;padding-left: 2rem;}
.list_licenses > li::before {content: "";display: block;position: absolute;left: 0;top: 0.9rem;width: 1rem;height: 1rem;background: #297991;border-radius: 0.5rem;}
.list_licenses > li + li {margin-top: 1.2rem;}
.list_licenses__optional_text {margin: 0.5em auto 0;padding: 0 0 0 1.2em;font-size: 1.6rem;}
/* /List Licenses */

/* Image Page Title */
.image_page_title {padding: 0 var(--csp);margin: 9rem auto 0;position: relative;}
.image_page_title__inner {max-width: var(--cw);margin: auto;position: relative;}
.image_page_title__img {aspect-ratio: 1000/380;}
.image_page_title__img img {width: 100%;height: 100%;object-fit: cover;}
.image_page_title__text {position: absolute;bottom: 2rem;left: 0;background: #dfe1e2;font-size: 3rem;font-weight: normal;line-height: 1.3;text-align: center;padding: 1.5rem 2.5rem;color: #000;}

@media (max-width: 640px) {
  .image_page_title__text {font-size: 2.4rem;}
}

@media (max-width: 480px) {
  .image_page_title__text {position: static;padding: 1rem;font-size: 2.2rem;}
}
/* /Image Page Title */

/* Instructors */
.instructors {padding: 0 var(--csp);margin: 4rem auto 0;}
.instructors__inner {max-width: var(--cw);margin: auto;background: #eef9fb;padding: 2rem;display: flex;flex-direction: column;gap: 2rem;}
.instructors__item a {display: flex;gap: 1rem;background: #fff;align-items: center;color: inherit;text-decoration: none;transition: .3s;padding-right: 18rem;position: relative;}
.instructors__item a:hover {opacity: .7;}
.instructors__photo {flex-shrink: 0;width: 15rem;height: 15rem;}
.instructors__photo img {width: 100%;height: 100%;object-fit: cover;object-position: top;}
.instructors__name {font-size: 1.8rem;font-weight: bold;line-height: 1.3;margin: 0;}
.instructors__sub {font-size: 0.722em;}
.instructors__cp {font-size: 1.3rem;font-weight: bold;line-height: 1.3;margin: 0.3rem auto 0;}
.instructors__cp_en {font-size: 1.1rem;line-height: 1.3;margin: 0.3rem auto 0;}
.instructors__cp_cn {font-size: 1.1rem;line-height: 1.3;margin: 0.3rem auto 0;}
.instructors__qualifications {font-size: 1.3rem;line-height: 1.3;margin: 1rem auto 0;}
.instructors__more {position: absolute;bottom: 1rem;right: 1.5rem;font-size: 1.3rem;padding-right: 1.9rem;line-height: 1.3;pointer-events: none;}
.instructors__more::after {content: "";position: absolute;top: 50%;right: 0;translate: 0 -43%;width: 1rem;height: 1.2rem;background: #888;clip-path: polygon(0 0,100% 50%, 0 100%);transition: .3s;}
.instructors__link:hover .instructors__more::after {right: -0.5rem;}

@media (max-width: 768px) {
  .instructors__item a {flex-direction: column;gap: 2rem;padding: 1.5rem 1.5rem 3.5rem;}
  .instructors__prof {width: 100%;}
}
/* /Instructors */

/* Instructor Profile */
.wp-block-lazyblock-instructors-details {padding: 0 var(--csp);}
.instructor-profile {max-width: var(--cw);margin: auto;}
.instructor-profile__thumbnail {float: right;padding: 0 8rem 2rem;text-align: center;}
.instructor-profile__thumbnail-image {width: 27.3rem;height: auto;aspect-ratio: 273/372;object-fit: cover;box-shadow: 0.5rem 0.5rem 1rem rgb(0 0 0 / 15%);}
.instructor-profile__thumbnail figcaption {font-size: 1.5rem;text-align: center;margin-top: 0.5rem;}
.instructor-profile__name {font-size: 3rem;font-weight: bold;line-height: 1.4;margin: 0;padding: 4.5rem 2rem 0;}
.instructor-profile__name_sub {font-size: 0.667em;font-weight: normal;}
.instructor-profile__catch-copy {font-size: 1.3rem;font-weight: bold;line-height: 1.3;background: #318198;color: #fff;padding: 0.3rem 0.5rem;margin: 1.5rem 0 0 2rem;width: fit-content;}
.instructor-profile__catch-copy p {font-size: inherit;line-height: inherit;margin: 0;}
.instructor-profile__introduction {font-size: 1.3rem;line-height: 1.462;margin-top: 1rem;padding: 0 2rem;}
.instructor-profile__introduction p {font-size: inherit;line-height: inherit;margin: 0;}
.instructor-profile__body {background: #fefcf8;margin: 2rem auto 0;padding: 1.3rem 2rem 5rem;}
.instructor-profile__section {border-left: 5px solid #318198;margin-top: 3.2rem;padding-left: 0.7rem;}
.instructor-profile__body > :first-child {margin-top: 0 !important;}
.instructor-profile__heading {font-size: 1.3rem;font-weight: bold;line-height: 1.3;}
.instructor-profile__content {font-size: 1.3rem;line-height: 1.462;margin-top: 0.5rem;}
.instructor-profile__content p {font-size: inherit;line-height: inherit;margin: 0;}
.instructor-profile__section--en,
.instructor-profile__section--cn {border: none;padding-left: 0;margin-top: 5rem;}
.instructor-profile__catch-copy--en,
.instructor-profile__catch-copy--cn {background: none;color: #318198;padding: 0;margin: 0;}

@media (max-width: 1024px) {
  .instructor-profile__thumbnail {padding: 0 2rem 2rem;}
}

@media (max-width: 768px) {
  .instructor-profile__name {padding: 4.5rem 0 0;}
  .instructor-profile__catch-copy {margin: 1.5rem 0 0 0;max-width: calc(100% - 15rem - 2rem);}
  .instructor-profile__thumbnail-image {width: 15rem;}
  .instructor-profile__introduction {padding: 0;}
  .instructor-profile__body {padding: 1.3rem var(--csp) 5rem;margin: 2rem calc(var(--csp) * -1) 0;}
  .instructor-profile__thumbnail figcaption {display: none;}
  .instructor-profile__thumbnail {padding: 0 0 2rem 2rem;}
}

@media (max-width: 480px) {
  .instructor-profile__thumbnail {float: none;margin: 5rem auto 0;padding: 0;}
  .instructor-profile__name {text-align: center;padding-top: 2rem;}
  .instructor-profile__catch-copy {max-width: none;width: auto;margin: 1rem auto 0;}
}
/* /Instructor Profile */

/* Form */
.form__wrapper {padding: 0 var(--csp);margin: 4rem auto 0;}
.form__inner {max-width: var(--cw);margin: auto;}
.form__row:nth-child(odd) {background: #f3f7fe;}
.form__row {padding: 1.5rem;display: flex;gap: 3rem;align-items: center;}
.form__label {font-size: 1.6rem;line-height: 1.3;flex-shrink: 0;width: 31rem;cursor: pointer;}
.form__field {width: 100%;}
.form__sub_row {display: flex;gap: 2rem;margin-top: 1.5rem;align-items: center;}
.form__sub_label {font-size: 1.6rem;line-height: 1.3;flex-shrink: 0;width: 30rem;text-align: right;cursor: pointer;}
.form__sub_field {width: 100%;}
.form input[type="number"] {all: revert;}
.form :is(input[type="text"], input[type="number"], input[type="tel"], input[type="email"], textarea) {border: 1px solid;background: #fff;width: 100%;font-size: 1.6rem;line-height: 1.3;padding: 1.5rem 0.8rem;box-sizing: border-box;}
.form__btns {display: flex;flex-wrap: wrap;justify-content: center;margin: 5.5rem auto 0;}
.form__btns input {background: #318198;color: #fff;font-size: 3rem;font-weight: bold;line-height: 1.2;padding: 2rem 7rem;cursor: pointer;min-width: 32rem;text-align: center;transition: .3s;}
.form__btns input:hover {opacity: .7;}
.form__btn_wrapper {position: relative;}
.form__btn_wrapper::after {content: "";position: absolute;bottom: 0.5rem;right: 0.5rem;width: 1rem;aspect-ratio: 1/1;background: #fff;clip-path: polygon(100% 0, 100% 100%, 0 100%);}
.form__btn_wrapper .wpcf7-spinner {position: absolute;left: 1rem;top: 50%;translate: 0 -50%;margin: 0;}
.form__response .wpcf7-response-output {font-size: 1.6rem;width: fit-content;margin: 4rem auto 0 !important;text-align: justify;}
.form__row--portfolio-url {position: absolute;left: -9999px;top: auto;width: 1px;height: 1px;overflow: hidden;}

@media (max-width: 768px) {
  .form__row {flex-direction: column;gap: 2rem;align-items: start;}
  .form__label {width: auto;font-weight: bold;}
  .form__btns input {font-size: 2.4rem;}
}

@media (max-width: 480px) {
  .form__sub_label {font-size: 1.4rem;width: 15em;}
}
/* /Form */

/* Archives Pagination */
.archives_pagination {padding: 0 var(--csp);margin: 5rem auto 0;}
.archives_pagination__inner {max-width: var(--cw);margin: auto;display: flex;justify-content: center;align-items: center;gap: 1rem;flex-wrap: wrap;}
.archives_pagination__link {display: flex;align-items: center;justify-content: center;min-width: 12rem;min-height: 3.8rem;padding: 0.6rem 1.4rem;background: #297991;color: #fff;text-decoration: none;font-size: 1.4rem;font-weight: bold;line-height: 1.3;text-align: center;transition: .3s;}
.archives_pagination__link:not(.is-disabled):hover {background: #89c9dc;}
.archives_pagination__link.is-disabled {background: #d8d8d8;color: #777;cursor: default;}
.archives_pagination__status {display: flex;align-items: center;justify-content: center;min-height: 3.8rem;padding: 0.6rem 1.4rem;font-size: 1.5rem;font-weight: bold;line-height: 1.3;color: #000;}
.archives_contents {margin-top: 5rem;background: url(../img/bg-greentile.png) repeat;padding: 6rem 0;}
.archives_contents .contents_list__eyecatch_link {display: block;}
.archives_contents__empty {max-width: var(--cw);margin: 0 auto;text-align: center;}

@media (max-width: 768px) {
  .archives_pagination__inner {gap: 0.8rem;}
  .archives_pagination__item {width: calc(50% - 0.4rem);}
  .archives_pagination__item--status {width: 100%;order: -1;}
  .archives_pagination__link {min-width: 0;width: 100%;font-size: 1.2rem;}
  .archives_pagination__status {width: 100%;font-size: 1.4rem;}
  .archives_contents .contents_list__inner {--num: 2;--gap: 2rem;}
}
/* /Archives Pagination */

/* FAQ */
.wp-block-lazyblock-faq {padding: 0 var(--csp);}
.qa-block {max-width: var(--cw);margin: 6rem auto 0;font-size: 1.6rem;line-height: 1.75;display: flex;flex-direction: column;gap: 4rem;}
.qa-block__item {position: relative;}
.qa-block__item:nth-child(n+2)::before {content: "";position: absolute;top: -2rem;left: 0;right: 0;height: 1px;background: #ccc;}
.qa-block__question {font-weight: bold;}
.qa-block__label {font-size: 1.5em;display: inline-block;width: 1.4em;}
.qa-block__question .qa-block__label {color: #3F51B5;}
.qa-block__answer .qa-block__label {color: #F44336;padding-left: 0.1em;}
/* /FAQ */

/* Single Post */
.article-pagination {padding: 0 var(--csp);margin: 5rem auto 0;}
.article-pagination__nav {max-width: var(--cw);margin: auto;display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 2rem;align-items: start;}
.article-pagination__item {margin: 0;font-size: 1.5rem;line-height: 1.5;text-align: left;background: #eefaff;padding: 1rem 1.5rem;}
.article-pagination__item--next {text-align: right;}
.article-pagination__item--next:only-child {grid-column: 2;}
.article-pagination__label {display: block;font-size: 1.3rem;font-weight: bold;line-height: 1.3;}
.article-pagination__label-link {color: #297991;text-decoration: none;}
.article-pagination__label-link:hover,
.article-pagination__title:hover {text-decoration: underline;}
.article-pagination__title {display: block;margin-top: 0.6rem;color: #000;text-decoration: none;}
.single-post__date {display: block;max-width: var(--cw);margin: 5rem auto 0;padding: 0 var(--csp);box-sizing: content-box;font-size: 1.5rem;line-height: 1.3;color: #666;}
.single-post__date::before {content: "";display: inline-block;width: 1em;height: auto;aspect-ratio: 1/1;background: url(../img/icon-clock-gray.svg) center/contain no-repeat;margin-right: 0.5em;position: relative;top: 0.1em;}
.single-post__title {max-width: var(--cw);margin: 1.5rem auto 0;padding: 0 var(--csp);box-sizing: content-box;font-size: 3.2rem;font-weight: bold;line-height: 1.45;color: #000;}
.single-post__meta {max-width: var(--cw);width: var(--safe-width);margin: 2rem auto 0;border-bottom: 1px solid #ccc;padding-bottom: 2rem;}
.article-tags {display: flex;flex-wrap: wrap;gap: 0.8rem;}
.article-tags__link {--article-tag-color: #297991;display: block;background: var(--article-tag-color);color: #fff;text-decoration: none;font-size: 1.3rem;font-weight: bold;line-height: 1.2;padding: 0.5rem 1.2rem;transition: .3s;}
.article-tags__link:hover {opacity: .7;}
.article-tags__wrapper {max-width: var(--cw);width: var(--safe-width);margin: 3.2rem auto 0;}

@media (max-width: 480px) {
  .article-pagination__nav {grid-template-columns: 1fr;}
  .article-pagination__item--next,
  .article-pagination__item--next:only-child {grid-column: auto;text-align: left;}
  .single-post__title {font-size: 2.5rem;}
}
/* /Single Post */
/* 文字化けチェック */
