@charset "UTF-8";
/*!
Theme Name: nichibi_2026
Theme URI:
Author:
Author URI: 
Description: 日本総合ビジネス専門学校 大垣 2026年用
Version: 1.0
License: 
License URI:
Tags:
Text Domain:
Tested up to:
Requires PHP:


◆00：基本設定
◆10：レイアウト設定
 ◆11 ボディー 
 ◆12 ヘッダー 
 ◆13 グローバルナビ 
 ◆14 キービジュアル 
 ◆15 コンテンツ 
 ◆16 トピックパス 
 ◆17 メインコンテンツ 
 ◆18 サブコンテンツ 
 ◆19 フッター 
 ◆20 サイドバーメニュー 
◆40：各コンテンツ
◆70：WordPress専用
◆80：絶対表記
◆90：プリント用
*/
/* CSS Document */
html {
  font: 10px/1.5 "Noto Sans JP", "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  /* 基本文字設定 */
  *font-size: small;
  /* Win IE7およびWin IE6標準準拠モード向け */
  *font: x-small;
  /* Win IE 5-5.5､6(後方互換モード)向け */
  letter-spacing: 0;
  background-color: #FFF;
  color: var(--wp--custom_color_text, #000);
  font-weight: 400; }

:root {
  font-size: 10px;
  --wp--custom_color_text: #000;
  --wp--custom_color_h1: #FFF;
  --wp--custom_color_first: #3186CA;
  --wp--custom_color_second: #F2F5F8;
  --wp--custom_color_link: #2BB8FF;
  --wp--custom_color_bg: #FFF;
  --wp--custom_color_header_bg: #FFF;
  --wp--custom_color_header_text: #000;
  --wp--custom_color_footer_bg: #FFF;
  --wp--custom_color_footer_text: #000;
  --border-bottom: #CCC;
  --calendar-color-spring: #FFD1D4;
  --calendar-color-summer: #CFEA9A;
  --calendar-color-autumn: #FFD4A8;
  --calendar-color-winter: #C9DCE4;
  --calendar-color-date: #858484;
  --date-color-sun: #E14F59;
  --date-color-sat: #39A6C7;
  --navi-color-main: #23659B;
  --required-color: #E50010; }
  @media screen and (max-width: 600px) {
    :root {
      font-size: 2.66667vw; } }

/*==============================================
◆00：基本設定
==============================================*/
/* web-font icon 読み込み */
* {
  outline: none; }

/*リンク*/
a {
  outline: none;
  text-decoration: none;
  display: inline-block;
  transition: all 300ms ease-in-out; }
  a[href^="tel:"] {
    pointer-events: none; }
    @media screen and (max-width: 600px) {
      a[href^="tel:"] {
        pointer-events: auto; } }
  a:after {
    text-decoration: none; }
  a:hover, a:focus {
    color: var(--wp--custom_color_link, #2BB8FF);
    opacity: 0.8; }
    a:hover img, a:focus img {
      opacity: 0.8; }
  a:focus-visible {
    outline: dotted 1px #000;
    outline-offset: -2px;
    color: var(--wp--custom_color_second, #F2F5F8);
    box-shadow: 0 0 0 2px #333; }
  a img {
    background: url(image/share/transparent.png);
    transition: opacity 300ms ease-in-out; }
  .main-wpcontent a {
    color: var(--wp--custom_color_link, #2BB8FF);
    text-decoration: underline; }

button:focus-visible {
  outline: dotted 1px #000;
  outline-offset: -2px;
  color: var(--wp--custom_color_second, #F2F5F8);
  box-shadow: 0 0 0 2px #333; }

textarea:focus,
input:focus {
  box-shadow: 0 0 3px 1px inset var(--wp--custom_color_second, #F2F5F8); }

/*--見出し--*/
#main-h1 {
  position: relative;
  width: 100%;
  margin: 0 auto 2rem;
  padding: 0;
  box-sizing: border-box;
  background-color: var(--wp--custom_color_first, #3186CA); }
  @media screen and (max-width: 600px) {
    #main-h1 {
      margin-bottom: 1rem; } }
  #main-h1__inner {
    width: 100rem;
    box-sizing: border-box;
    padding: 0;
    margin: 0 auto; }
    @media screen and (max-width: 1200px) {
      #main-h1__inner {
        padding: 0 5rem;
        width: auto; } }
    @media screen and (max-width: 600px) {
      #main-h1__inner {
        padding: 0 2rem; } }
  #main-h1--title {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    margin: 0;
    padding: 0;
    color: var(--wp--custom_color_h1, #FFF);
    min-height: 24rem;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center; }
    @media screen and (max-width: 600px) {
      #main-h1--title {
        font-size: 2.4rem;
        min-height: 10rem; } }

.main-wpcontent h2 {
  position: relative;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 6rem 0 4rem;
  padding: 1.5rem 2rem;
  box-sizing: border-box;
  border-radius: 1rem;
  background: var(--wp--custom_color_second, #F2F5F8);
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h2 {
      font-size: 2.1rem;
      margin-top: 6rem;
      margin-bottom: 4rem;
      padding: 1rem 1.5rem; } }
  .main-wpcontent h2.style-none {
    background: transparent;
    padding: 0; }
  .main-wpcontent h2.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h2.has-text-align-center {
    text-align: center; }
  .main-wpcontent h2.has-text-align-right {
    text-align: right; }

.main-wpcontent h3 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 6rem 0 2rem;
  padding: 0.5rem 0 0.5rem 2rem;
  border-left: 1.5rem solid var(--wp--custom_color_first, #3186CA);
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h3 {
      font-size: 1.8rem;
      margin-top: 6rem;
      margin-bottom: 2rem;
      padding: 0.5rem 0 0.5rem 1rem;
      border-left-width: 1rem; } }
  .main-wpcontent h3.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h3.has-text-align-center {
    text-align: center; }
  .main-wpcontent h3.has-text-align-right {
    text-align: right; }

.main-wpcontent h4 {
  position: relative;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 6rem 0 1.5rem;
  padding: 0 0 1.5rem;
  border-bottom: 3px solid var(--wp--custom_color_first, #3186CA);
  overflow: hidden; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h4 {
      font-size: 1.8rem;
      margin-top: 6rem;
      margin-bottom: 1.5rem;
      padding: 0 0 1rem;
      border-bottom-width: 2px; } }
  .main-wpcontent h4.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h4.has-text-align-center {
    text-align: center; }
  .main-wpcontent h4.has-text-align-right {
    text-align: right; }

.main-wpcontent h5 {
  position: relative;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 6rem 0 1.5rem;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h5 {
      font-size: 1.8rem;
      margin-top: 6rem;
      margin-bottom: 1.5rem; } }
  .main-wpcontent h5.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h5.has-text-align-center {
    text-align: center; }
  .main-wpcontent h5.has-text-align-right {
    text-align: right; }

.main-wpcontent h6 {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 6rem 0 1.5rem; }
  @media screen and (max-width: 600px) {
    .main-wpcontent h6 {
      font-size: 1.6rem;
      margin-top: 6rem;
      margin-bottom: 1.5rem; } }
  .main-wpcontent h6.has-text-align-left {
    text-align: justify;
    text-justify: inter-ideograph; }
  .main-wpcontent h6.has-text-align-center {
    text-align: center; }
  .main-wpcontent h6.has-text-align-right {
    text-align: right; }

.main-wpcontent h2 + h3,
.main-wpcontent h2 + section > h3:first-child,
.main-wpcontent > h2:first-child,
h2:first-child,
h2 + table {
  margin-top: 0; }

.main-wpcontent h3 + h4,
.main-wpcontent h3 + section > h4:first-child,
.main-wpcontent > h3:first-child,
h3:first-child,
h3 + table {
  margin-top: 0; }

.main-wpcontent h4 + h5,
.main-wpcontent h4 + section > h5:first-child,
.main-wpcontent > h4:first-child,
h4:first-child,
h4 + table {
  margin-top: 0; }

.main-wpcontent h5 + h6,
.main-wpcontent h5 + section > h6:first-child,
.main-wpcontent > h5:first-child,
h5:first-child,
h5 + table {
  margin-top: 0; }

.main-wpcontent h6 + h7,
.main-wpcontent h6 + section > h7:first-child,
.main-wpcontent > h6:first-child,
h6:first-child,
h6 + table {
  margin-top: 0; }

/* セクション */
section {
  margin: 6rem 0; }
  @media screen and (max-width: 600px) {
    section {
      margin-top: 6rem;
      margin-bottom: 6rem; } }
  section:first-child {
    margin-top: 0; }
  section:last-child {
    margin-bottom: 0; }

/*--リスト--*/
.main-wpcontent ul, .main-wpcontent ol, dl {
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 2rem 0;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent ul, .main-wpcontent ol, dl {
      margin: 2rem 0; } }

.main-wpcontent ul > li dl, .main-wpcontent ul > li ul, .main-wpcontent ul > li ol, .main-wpcontent ol > li dl, .main-wpcontent ol > li ul, .main-wpcontent ol > li ol, dl dd dl, dl dd ul, dl dd ol {
  margin: 1.25em 0 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent ul > li dl, .main-wpcontent ul > li ul, .main-wpcontent ul > li ol, .main-wpcontent ol > li dl, .main-wpcontent ol > li ul, .main-wpcontent ol > li ol, dl dd dl, dl dd ul, dl dd ol {
      margin-top: 1.25em; } }

.main-wpcontent ul {
  list-style-type: none; }
  .main-wpcontent ul > li {
    line-height: 1.625;
    position: relative;
    margin: 0 0 1.25em;
    padding: 0 0 0 2.25em; }
    @media screen and (max-width: 600px) {
      .main-wpcontent ul > li {
        margin-bottom: 1.25em; } }
    .main-wpcontent ul > li ol {
      list-style: none; }
    .main-wpcontent ul > li::before {
      position: absolute;
      content: "";
      display: block;
      background-color: var(--wp--custom_color_first, #3186CA);
      width: 0.625em;
      height: 0.625em;
      border-radius: 50%;
      left: 0.5em;
      top: 0.5em; }
    .main-wpcontent ul > li:last-child {
      margin-bottom: 0; }

ol {
  list-style-type: decimal; }
  .main-wpcontent ol {
    counter-reset: ol-counter;
    list-style: none; }
    .main-wpcontent ol > li {
      position: relative;
      line-height: 1.625;
      margin: 0 0 1.25em;
      padding: 0 0 0 2.25em; }
      @media screen and (max-width: 600px) {
        .main-wpcontent ol > li {
          margin-bottom: 1.25em; } }
      .main-wpcontent ol > li ol {
        list-style: none; }
      .main-wpcontent ol > li::before {
        position: absolute;
        display: flex;
        counter-increment: ol-counter;
        content: counter(ol-counter) "";
        color: var(--wp--custom_color_h1, #FFF);
        background: var(--wp--custom_color_first, #3186CA);
        font-size: 1em;
        font-weight: 700;
        top: 0;
        left: 0;
        height: 1.625em;
        width: 1.8em;
        justify-content: center;
        align-items: center;
        align-items: center; }
      .main-wpcontent ol > li:last-child {
        margin-bottom: 0; }

.main-wpcontent ol[style*="upper-alpha"] {
  counter-reset: ol-counter;
  list-style: none; }

dl dt {
  font-weight: 700;
  margin: 0 0 1.25em;
  padding: 0; }
dl dd {
  margin: 0 0 1.25em;
  padding: 0;
  line-height: 1.625; }
  dl dd:last-child {
    margin-bottom: 0; }

/* --TABLE-- */
table {
  width: 100%;
  font-size: 100%;
  margin: 4rem auto;
  border: 1px solid var(--border-bottom, #CCC);
  background: var(--wp--custom_color_bg, #FFF); }
  table tr {
    position: relative; }
  table th, table td {
    text-align: justify;
    text-justify: inter-ideograph;
    line-height: 1.625;
    letter-spacing: 0;
    vertical-align: top;
    overflow-wrap: break-word;
    padding: 1rem;
    min-width: 10rem;
    box-sizing: border-box;
    border: 1px solid var(--border-bottom, #CCC);
    vertical-align: middle; }
    @media screen and (max-width: 600px) {
      table th, table td {
        padding: 1rem;
        min-width: 20rem;
        max-width: 45rem; } }
  table th {
    font-weight: 400;
    color: var(--wp--custom_color_h1, #FFF);
    background-color: var(--wp--custom_color_first, #3186CA); }
  table dl:last-child,
  table ul:last-child,
  table p:last-child {
    margin-bottom: 0; }

/* --OTHER TAGS-- */
abbr, acronym {
  border-bottom: 1px dotted;
  cursor: help; }

blockquote {
  background-color: var(--wp--custom_color_bg, #FFF);
  border: 1px solid var(--wp--custom_color_text, #000);
  font-style: normal;
  font-weight: 400;
  text-align: justify;
  padding: 1.5rem;
  margin-top: 2rem;
  margin-bottom: 2rem; }
  blockquote cite {
    font-style: normal; }
  @media screen and (max-width: 600px) {
    blockquote {
      margin-top: 2rem;
      margin-bottom: 2rem;
      padding: 1.2rem 1.5rem; } }
  blockquote p {
    margin-bottom: 0.5em; }
  blockquote dl:last-child,
  blockquote ul:last-child,
  blockquote p:last-child {
    margin-bottom: 0; }

small {
  font-size: 70%; }

em, span.em {
  color: #E50010;
  font-weight: bold;
  font-style: normal;
  border-style: none; }

strong {
  font-weight: bold;
  font-style: normal;
  border-style: none; }

code {
  color: var(--wp--custom_color_text, #000);
  padding: 0;
  background: var(--wp--custom_color_second, #F2F5F8);
  border-radius: 0; }

pre {
  margin: 0;
  white-space: pre;
  tab-size: 2; }

p {
  text-align: justify;
  text-justify: inter-ideograph;
  background-image: url(image/share/transparent.png);
  margin-bottom: 1.75em; }
  p:last-child {
    margin-bottom: 0; }

hr {
  display: block;
  margin-top: 4rem;
  margin-bottom: 4rem; }
  @media screen and (max-width: 600px) {
    hr {
      margin-top: 4rem;
      margin-bottom: 4rem; } }

figure {
  margin: 2rem auto;
  padding: 0; }
  @media screen and (max-width: 600px) {
    figure {
      margin-top: 2rem;
      margin-bottom: 2rem; } }

figcaption {
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.5;
  color: var(--wp--custom_color_text, #000);
  margin: 1rem 0 0;
  padding: 0; }
  @media screen and (max-width: 600px) {
    figcaption {
      font-size: 1.2rem;
      margin-top: 1rem; } }

address {
  font-style: normal; }

details {
  padding: 0; }
  details > summary {
    position: relative;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.625;
    letter-spacing: 0;
    margin: 0 0 2rem;
    padding: 2rem 2rem 2rem 5rem;
    color: var(--wp--custom_color_h1, #FFF);
    background-color: var(--wp--custom_color_first, #3186CA);
    list-style: none; }
    @media screen and (max-width: 600px) {
      details > summary {
        font-size: 1.6rem;
        margin-bottom: 2rem;
        padding: 1.5rem 1.5rem 1.5rem 4rem; } }
    details > summary::before, details > summary::after {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 1.2rem;
      margin: auto;
      content: "";
      width: 2.6rem;
      height: 3px;
      background-color: var(--wp--custom_color_h1, #FFF);
      border-radius: 999rem;
      transition: all 300ms ease-in-out; }
      @media screen and (max-width: 600px) {
        details > summary::before, details > summary::after {
          left: 1.25rem;
          width: 1.5rem;
          height: 2px; } }
    details > summary::after {
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg); }
  details > * {
    padding: 0; }
    @media screen and (max-width: 600px) {
      details > * {
        padding: 0; } }
  details[open] > summary::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }

/* clearfix */
.clearfix:after {
  content: " ";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0; }

.pc-none {
  display: none; }
  @media screen and (max-width: 600px) {
    .pc-none {
      display: block; } }

.sp-none {
  display: block; }
  @media screen and (max-width: 600px) {
    .sp-none {
      display: none; } }

@media screen and (max-width: 600px) {
  .pc-br {
    display: none; } }

.sp-br {
  display: none; }
  @media screen and (max-width: 600px) {
    .sp-br {
      display: inline-block; } }

.fw_bold {
  font-weight: 700; }

.ib {
  display: inline-block; }

@media screen and (max-width: 600px) {
  .sp-ib {
    display: inline-block; } }

.radius-50 {
  border-radius: 9999px; }

.mb00 {
  margin-bottom: 0 !important; }
  .mb00 + * {
    margin-top: 0 !important; }

.mt00 {
  margin-top: 0 !important; }

.mt10 {
  margin-top: 1rem !important; }
  @media screen and (max-width: 600px) {
    .mt10 {
      margin-top: 1rem !important; } }

.mt20 {
  margin-top: 2rem !important; }
  @media screen and (max-width: 600px) {
    .mt20 {
      margin-top: 2rem !important; } }

.pt00 {
  padding-top: 0 !important; }

.pt05 {
  padding-top: 0.5rem !important; }
  @media screen and (max-width: 600px) {
    .pt05 {
      padding-top: 0.5rem !important; } }

.pt10 {
  padding-top: 1rem !important; }
  @media screen and (max-width: 600px) {
    .pt10 {
      padding-top: 1rem !important; } }

.pb00 {
  padding-bottom: 0 !important; }

.pb05 {
  padding-bottom: 0.5rem !important; }
  @media screen and (max-width: 600px) {
    .pb05 {
      padding-bottom: 0.5rem !important; } }

.pb10 {
  padding-bottom: 1rem !important; }
  @media screen and (max-width: 600px) {
    .pb10 {
      padding-bottom: 1rem !important; } }

/*==============================================
◆10：レイアウト設定
==============================================*/
/* ◆11 ボディー */
body {
  background-color: var(--wp--custom_color_bg);
  color: var(--wp--custom_color_text); }

#mainScroll {
  position: relative;
  margin: 0 auto;
  padding: 0;
  z-index: 300; }

#mainScroll.blur {
  -ms-filter: blur(4px);
  filter: blur(4px); }

/* ◆12 ヘッダー */
#header {
  position: sticky;
  top: 0;
  z-index: 400;
  background-color: var(--wp--custom_color_header_bg);
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }
  @media screen and (max-width: 1200px) {
    #header {
      padding: 0 5rem; } }
  @media screen and (max-width: 600px) {
    #header {
      padding: 0 0 0 2rem; } }
  #header__inner {
    position: relative;
    width: 100rem;
    height: 9rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box; }
    @media screen and (max-width: 1200px) {
      #header__inner {
        width: auto; } }
    @media screen and (max-width: 600px) {
      #header__inner {
        height: 6.5rem; } }
    #header__inner #identity-area {
      flex: 0 0 30rem;
      width: 30rem;
      line-height: 1; }
      @media screen and (max-width: 600px) {
        #header__inner #identity-area {
          flex: 0 0 21rem;
          width: 21rem; } }
      #header__inner #identity-area h1 {
        font-size: 0;
        line-height: 0;
        letter-spacing: 0;
        margin: 0;
        padding: 0;
        display: inline; }
      #header__inner #identity-area img {
        width: 100%;
        height: auto; }

#help-nav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  align-self: center;
  gap: 0 1rem;
  margin: 0;
  padding: 0; }
  #help-nav > li {
    margin: 0;
    padding: 0; }
    #help-nav > li:marker {
      display: none; }
    #help-nav > li a {
      display: block;
      width: 9rem;
      height: 9rem;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-self: center;
      align-items: center; }
      #help-nav > li a img {
        width: 2.4rem;
        height: auto;
        margin: 0 0 5px; }
      #help-nav > li a > span {
        font-size: 1.4rem;
        color: var(--wp--custom_color_text, #000);
        text-align: center;
        font-weight: 700;
        line-height: 1.5; }
    @media screen and (max-width: 900px) {
      #help-nav > li.help-nav--request {
        display: none; } }
    @media screen and (max-width: 900px) {
      #help-nav > li.help-nav--access {
        display: none; } }

#help-area-sp {
  display: none; }
  @media screen and (max-width: 900px) {
    #help-area-sp {
      display: block;
      position: fixed;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 1050; } }

#help-nav-sp {
  position: relativee;
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: 7rem;
  background: var(--wp--custom_color_h1, #FFF); }
  #help-nav-sp::before {
    position: absolute;
    content: "";
    display: block;
    width: 1px;
    top: 1rem;
    bottom: 1rem;
    left: 50%;
    background: var(--wp--custom_color_h1, #FFF); }
  @media screen and (max-width: 600px) {
    #help-nav-sp {
      height: 7rem; } }
  #help-nav-sp > li {
    flex: 0 0 50%; }
    #help-nav-sp > li a {
      display: flex;
      width: 100%;
      height: 100%;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      background: var(--wp--custom_color_first, #3186CA); }
      #help-nav-sp > li a img {
        width: 2.4rem;
        height: auto;
        filter: brightness(0) invert(1); }
        @media screen and (max-width: 600px) {
          #help-nav-sp > li a img {
            width: 2.4rem;
            height: auto; } }
      #help-nav-sp > li a span {
        font-size: 1.4rem;
        color: var(--wp--custom_color_h1, #FFF);
        text-align: center;
        font-weight: 700;
        line-height: 1.5; }

#menu-button {
  position: relative;
  width: 9rem;
  height: 9rem;
  background-color: transparent;
  padding: 3rem 0 0;
  margin: 0;
  box-sizing: border-box;
  border-radius: 0;
  transition: all 300ms ease-in-out;
  font-size: 12px;
  line-height: 1;
  color: #000;
  font-weight: 700;
  text-align: center; }
  #menu-button:hover {
    cursor: pointer; }
  @media screen and (max-width: 1200px) {
    #menu-button {
      display: block; } }
  @media screen and (max-width: 600px) {
    #menu-button {
      width: 7.8rem;
      height: 6.5rem;
      font-size: 1.2rem;
      line-height: 1.5;
      border-radius: 0; } }
  #menu-button .menu--line {
    position: absolute;
    display: block;
    width: 1.8rem;
    height: 0.2rem;
    background-color: #000;
    left: 50%;
    top: 3.2rem;
    border-radius: 99999px;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    transition: all 300ms ease-in-out;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0); }
    @media screen and (max-width: 600px) {
      #menu-button .menu--line {
        top: 2.1rem;
        width: 1.8rem;
        height: 0.2rem; } }
  #menu-button .menu--line--top {
    -webkit-transform: translate(-50%, -0.7rem);
    transform: translate(-50%, -0.7rem); }
    @media screen and (max-width: 600px) {
      #menu-button .menu--line--top {
        -webkit-transform: translate(-50%, -0.7rem);
        transform: translate(-50%, -0.7rem); } }
  #menu-button .menu--line--bottom {
    -webkit-transform: translate(-50%, 0.7rem);
    transform: translate(-50%, 0.7rem); }
    @media screen and (max-width: 600px) {
      #menu-button .menu--line--bottom {
        -webkit-transform: translate(-50%, 0.7rem);
        transform: translate(-50%, 0.7rem); } }
  #menu-button .menu--text {
    font-size: 1.4rem;
    color: var(--wp--custom_color_text, #000);
    text-align: center;
    font-weight: 700;
    line-height: 1.5; }
    @media screen and (max-width: 600px) {
      #menu-button .menu--text {
        font-size: 1.2rem; } }
  #menu-button.active .menu--line--top {
    -webkit-transform: translate(-50%, 0) rotate(45deg);
    transform: translate(-50%, 0) rotate(45deg); }
  #menu-button.active .menu--line--middle {
    opacity: 0; }
  #menu-button.active .menu--line--bottom {
    -webkit-transform: translate(-50%, 0) rotate(-45deg);
    transform: translate(-50%, 0) rotate(-45deg); }

/* ◆13 グローバルナビ */
#global-area {
  position: absolute;
  top: 9rem;
  right: 0;
  max-width: 300px;
  width: 100%;
  height: 0;
  min-height: 0;
  padding: 0;
  z-index: 1100;
  background-color: var(--navi-color-main, #23659B);
  box-sizing: border-box;
  transition: all 300ms ease-in-out;
  overflow: hidden;
  text-align: center;
  overflow-y: scroll;
  overflow-x: hidden; }
  @media screen and (max-width: 600px) {
    #global-area {
      max-width: inherit;
      top: 6.5rem;
      width: 100vw; } }
  #global-area::-webkit-scrollbar {
    width: 2px; }
  #global-area::-webkit-scrollbar-track {
    background: var(--wp--custom_color_first, #3186CA);
    border-radius: 1px; }
  #global-area::-webkit-scrollbar-thumb {
    background: var(--wp--custom_color_text, #000);
    border-radius: 1px; }
  #global-area.active {
    min-height: calc(100vh - 9rem); }
    @media screen and (max-width: 900px) {
      #global-area.active {
        padding: 0 0 7rem; } }
    @media screen and (max-width: 600px) {
      #global-area.active {
        min-height: calc(100vh - 6.5rem);
        padding: 0 0 7rem; } }
  #global-area__inner {
    position: relative;
    padding: 0;
    min-height: 100%;
    box-sizing: border-box; }
    @media screen and (max-width: 600px) {
      #global-area__inner {
        padding: 0; } }

#nav-global {
  position: relative;
  z-index: 200;
  margin: 0;
  padding: 0;
  box-sizing: border-box; }
  #nav-global > li {
    position: relative;
    font-size: 1.4rem;
    font-weight: 700;
    text-align: justify;
    text-justify: inter-ideograph;
    line-height: 1;
    margin: 0;
    padding: 0;
    background: var(--wp--custom_color_h1, #FFF);
    border-bottom: 1px solid #CCC; }
    @media screen and (max-width: 600px) {
      #nav-global > li {
        font-size: 1.4rem;
        line-height: 1; } }
    #nav-global > li a {
      position: relative;
      display: flex;
      justify-content: flex-start;
      align-items: center;
      align-content: center;
      margin: 0;
      padding: 2rem 5rem 2rem 2rem;
      line-height: 1.5;
      color: var(--wp--custom_color_h1, #FFF);
      width: 100%;
      background-color: var(--navi-color-main, #23659B); }
      @media screen and (max-width: 600px) {
        #nav-global > li a {
          line-height: 1.5;
          padding: 2rem 5rem 2rem 2rem; } }
      @media screen and (max-width: 600px) {
        #nav-global > li a:hover {
          opacity: 1; } }
      #nav-global > li a:focus, #nav-global > li a:focus-visible {
        outline: dotted 1px var(--wp--custom_color_h1, #FFF);
        outline-offset: -3px;
        box-shadow: none; }
    #nav-global > li.menu-item-has-children > a .nav-global--child {
      display: block;
      position: absolute;
      width: 2.1rem;
      height: 2.1rem;
      right: 2rem;
      top: 50%;
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%); }
      #nav-global > li.menu-item-has-children > a .nav-global--child:focus, #nav-global > li.menu-item-has-children > a .nav-global--child:focus-visible {
        outline: dotted 2px var(--wp--custom_color_h1, #FFF);
        outline-offset: 2px;
        box-shadow: none; }
      @media screen and (max-width: 600px) {
        #nav-global > li.menu-item-has-children > a .nav-global--child {
          width: 2.1rem;
          height: 2.1rem;
          right: 2rem; } }
      #nav-global > li.menu-item-has-children > a .nav-global--child::before, #nav-global > li.menu-item-has-children > a .nav-global--child::after {
        content: "";
        display: block;
        position: absolute;
        width: 1.9rem;
        height: 2px;
        background-color: var(--wp--custom_color_h1, #FFF);
        transition: all 300ms ease-in-out;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        border-radius: 999rem; }
        @media screen and (max-width: 600px) {
          #nav-global > li.menu-item-has-children > a .nav-global--child::before, #nav-global > li.menu-item-has-children > a .nav-global--child::after {
            width: 1.9rem; } }
      #nav-global > li.menu-item-has-children > a .nav-global--child::before {
        -webkit-transform: translate(-50%, -50%) rotate(90deg);
        transform: translate(-50%, -50%) rotate(90deg); }
    #nav-global > li.menu-item-has-children.active .nav-global--child::before {
      opacity: 0;
      -webkit-transform: translate(0, -50%) rotate(0);
      transform: translate(0, -50%) rotate(0); }
    #nav-global > li > ul {
      display: none;
      margin: 0;
      padding: 0; }
      #nav-global > li > ul > li {
        font-size: 1.2rem;
        font-weight: 400;
        line-height: 1.5;
        border-bottom: 1px solid #CCC;
        background-color: var(--navi-color-main, #23659B); }
        @media screen and (max-width: 600px) {
          #nav-global > li > ul > li {
            font-size: 1.2rem; } }
        #nav-global > li > ul > li > a {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          align-content: center;
          line-height: 1.5;
          margin: 0;
          padding: 1rem 2rem;
          width: 100%;
          color: var(--wp--custom_color_text, #000);
          background-color: #FFF; }
          @media screen and (max-width: 600px) {
            #nav-global > li > ul > li > a {
              padding: 1rem 2rem; } }
          @media screen and (max-width: 600px) {
            #nav-global > li > ul > li > a:hover {
              opacity: 1; } }

/* ◆14 キービジュアル */
/* ◆15 コンテンツ */
#contents-area {
  position: relative; }

/* ◆16 トピックパス */
#breadcrumb__outer {
  width: 100rem;
  margin: 0 auto 6rem;
  padding: 0;
  box-sizing: border-box; }
  @media screen and (max-width: 1200px) {
    #breadcrumb__outer {
      padding-left: 5rem;
      padding-right: 5rem;
      width: auto; } }
  @media screen and (max-width: 600px) {
    #breadcrumb__outer {
      padding-left: 2rem;
      padding-right: 2rem;
      margin-bottom: 3rem; } }

#breadcrumb {
  font-size: 1.2rem;
  text-align: left;
  line-height: 1.5;
  color: var(--wp--custom_color_first, #3186CA);
  margin: 0;
  padding: 0; }
  @media screen and (max-width: 600px) {
    #breadcrumb {
      font-size: 1.2rem; } }
  #breadcrumb a {
    color: var(--wp--custom_color_text, #000);
    display: inline-block;
    text-decoration: none; }
    #breadcrumb a:hover {
      text-decoration: underline; }
  #breadcrumb span {
    color: var(--wp--custom_color_text, #000); }

/* ◆17 メインコンテンツ */
#main-area {
  position: relative;
  width: 100rem;
  margin: 0 auto 12rem;
  padding: 0;
  font-size: 1.6rem;
  line-height: 1.5;
  z-index: 20; }
  @media screen and (max-width: 1200px) {
    #main-area {
      width: auto;
      margin: 0 auto 12rem;
      padding: 0 5rem; } }
  @media screen and (max-width: 600px) {
    #main-area {
      font-size: 1.6rem;
      margin: 0 auto 8rem;
      padding: 0 2rem; } }

/* ◆18 サブコンテンツ */
/* ◆19 フッター */
#footer {
  position: relative;
  background-color: var(--wp--custom_color_footer_bg, #FFF);
  color: var(--wp--custom_color_footer_text, #000);
  margin: 12rem 0 0;
  padding: 0 0 3rem;
  z-index: 30; }
  @media screen and (max-width: 900px) {
    #footer {
      padding-bottom: 10rem; } }
  @media screen and (max-width: 600px) {
    #footer {
      margin-top: 8rem;
      padding-bottom: 9rem; } }
  #footer a {
    color: var(--wp--custom_color_footer_text, #000); }
    #footer a:focus-visible {
      outline: dotted 1px var(--wp--custom_color_footer_text, #000);
      color: var(--wp--custom_color_footer_text, #000);
      box-shadow: 0 0 0 2px var(--wp--custom_color_footer_text, #000); }
  #footer__inner {
    width: 100rem;
    margin: 0 auto; }
    @media screen and (max-width: 1200px) {
      #footer__inner {
        width: auto;
        padding: 0 5rem; } }
    @media screen and (max-width: 600px) {
      #footer__inner {
        padding: 0 2rem; } }

#footer-banner {
  display: flex;
  justify-content: space-between;
  gap: 0 0.5rem; }
  @media screen and (max-width: 600px) {
    #footer-banner {
      flex-direction: column;
      gap: 2rem 0; } }
  #footer-banner > li {
    flex: 1 1 auto; }
    #footer-banner > li a {
      display: flex;
      width: 100%;
      height: 20rem;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      color: var(--wp--custom_color_h1, #FFF);
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.5;
      margin: 0.3rem 0 0; }
      @media screen and (max-width: 600px) {
        #footer-banner > li a {
          height: 20.3rem;
          font-size: 1.6rem; } }
      #footer-banner > li a::before {
        content: "";
        display: block;
        width: 4.9rem;
        height: 5rem; }
        @media screen and (max-width: 600px) {
          #footer-banner > li a::before {
            width: 6.5rem;
            height: 8.2rem; } }
    #footer-banner > li.footer-banner--admission_info a {
      background: url("image/share/footer-admission_info@2x.jpg") center center no-repeat;
      background-size: cover; }
      #footer-banner > li.footer-banner--admission_info a::before {
        background: url("image/share/icon-admission_info.svg") center center no-repeat;
        background-size: cover; }
    #footer-banner > li.footer-banner--recruit_results a {
      background: url("image/share/footer-recruit_results@2x.jpg") center center no-repeat;
      background-size: cover; }
      #footer-banner > li.footer-banner--recruit_results a::before {
        background: url("image/share/icon-recruit_results.svg") center center no-repeat;
        background-size: cover; }
    #footer-banner > li.footer-banner--schedule a {
      background: url("image/share/footer-schedule@2x.jpg") center center no-repeat;
      background-size: cover; }
      #footer-banner > li.footer-banner--schedule a::before {
        background: url("image/share/icon-schedule.svg") center center no-repeat;
        background-size: cover; }

#footer-navarea {
  margin: 6rem 0 5rem;
  padding: 4rem 0 0;
  border-top: 1px solid var(--border-bottom, #CCC); }
  @media screen and (max-width: 600px) {
    #footer-navarea {
      display: none; } }

#nav-footer {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  align-content: stretch;
  gap: 5rem 0;
  margin: 0 0 8.5rem;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #nav-footer {
      justify-content: flex-start;
      gap: 5rem; } }
  #nav-footer > li {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5; }
    #nav-footer > li.footer-nonlink > a {
      display: none; }
    #nav-footer > li > ul {
      margin: 1.5rem 0 0;
      padding: 0; }
      #nav-footer > li > ul:where(.footer-nonlink *) {
        margin-top: 0; }
      #nav-footer > li > ul > li {
        position: relative;
        font-size: 1.2rem;
        font-weight: 400;
        line-height: 1.5;
        margin: 0 0 1rem;
        padding: 0 0 0 1.3rem; }
        #nav-footer > li > ul > li::before {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          left: 0;
          height: 1px;
          width: 0.8rem;
          background: currentColor; }
        #nav-footer > li > ul > li:last-child {
          margin-bottom: 0; }
        #nav-footer > li > ul > li:where(.footer-nonlink *) {
          font-size: 1.4rem;
          font-weight: 700;
          line-height: 1.5;
          margin: 0 0 1.5rem;
          padding: 0; }
          #nav-footer > li > ul > li:where(.footer-nonlink *):last-child {
            margin-bottom: 0; }
          #nav-footer > li > ul > li:where(.footer-nonlink *)::before {
            display: none; }

#footer-bottom {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 3rem 7rem; }
  @media screen and (max-width: 600px) {
    #footer-bottom {
      margin: 4rem 0 0;
      padding: 4rem 0 0;
      border-top: 1px solid var(--border-bottom, #CCC);
      flex-direction: column;
      gap: 3rem 0; } }

@media screen and (max-width: 1200px) {
  #footer-address {
    flex: 0 0 100%;
    text-align: center; } }
@media screen and (max-width: 600px) {
  #footer-address {
    flex: 0 0 auto;
    text-align: justify;
    text-justify: inter-ideograph; } }
#footer-address .footer-address--list {
  margin: 0;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #footer-address .footer-address--list {
      text-align: center; } }
  @media screen and (max-width: 600px) {
    #footer-address .footer-address--list {
      text-align: justify;
      text-justify: inter-ideograph; } }
  #footer-address .footer-address--list > dt {
    margin: 0 0 1.2rem;
    padding: 0; }
    @media screen and (max-width: 600px) {
      #footer-address .footer-address--list > dt {
        margin-bottom: 2rem; } }
    #footer-address .footer-address--list > dt img {
      width: 42.6rem;
      height: auto; }
      @media screen and (max-width: 600px) {
        #footer-address .footer-address--list > dt img {
          width: 100%; } }
  #footer-address .footer-address--list > dd {
    font-size: 1.4rem;
    line-height: 1.5;
    margin: 0;
    padding: 0; }
    @media screen and (max-width: 600px) {
      #footer-address .footer-address--list > dd {
        font-size: 1.2rem;
        line-height: 1.5; } }

#footer-sns {
  margin: 0 auto 0 0;
  padding: 3rem 0 0;
  display: flex;
  gap: 2rem; }
  @media screen and (max-width: 1200px) {
    #footer-sns {
      flex: 0 0 100%;
      justify-content: center;
      text-align: center;
      margin: 0;
      padding: 0; } }
  @media screen and (max-width: 600px) {
    #footer-sns {
      justify-content: flex-start;
      gap: 2rem;
      text-align: left; } }
  #footer-sns > li {
    flex: 0 0 3rem; }
    @media screen and (max-width: 600px) {
      #footer-sns > li {
        flex: 0 0 3rem; } }
    #footer-sns > li a img {
      width: 100%;
      height: auto; }

#copyright {
  font-size: 1.2rem;
  line-height: 1.5;
  align-self: center; }
  @media screen and (max-width: 1200px) {
    #copyright {
      flex: 0 0 100%;
      text-align: center; } }
  @media screen and (max-width: 600px) {
    #copyright {
      font-size: 1rem;
      line-height: 1.5;
      text-align: left;
      align-self: flex-start; } }

/* ◆20 サイドバーメニュー */
/*==============================================
◆40：各コンテンツ
==============================================*/
#top .top--title {
  position: relative;
  margin: 0 0 4rem; }
  @media screen and (max-width: 600px) {
    #top .top--title {
      margin-bottom: 4.7rem; } }
  #top .top--title::after {
    content: "";
    position: absolute;
    display: block;
    height: 1px;
    width: 3.5rem;
    background: var(--wp--custom_color_first, #3186CA);
    left: 0;
    bottom: -2rem; }
  #top .top--title p {
    color: var(--wp--custom_color_first, #3186CA);
    font-family: "Barlow Condensed", sans-serif;
    font-size: 6rem;
    font-style: italic;
    font-weight: 600;
    line-height: 1;
    margin: 0 0 1rem;
    padding: 0; }
    @media screen and (max-width: 600px) {
      #top .top--title p {
        font-size: 5rem; } }
  #top .top--title h2 {
    margin: 0;
    padding: 0;
    border-radius: 0;
    background-color: inherit;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5; }
    @media screen and (max-width: 600px) {
      #top .top--title h2 {
        font-size: 1.4rem; } }

#top-main {
  position: relative;
  margin: 0;
  padding: 0; }
  #top-main--movie {
    width: 100%;
    aspect-ratio: 16/9; }
  #top-main--sound {
    position: absolute;
    top: 5rem;
    right: 5rem;
    width: 7rem;
    height: 7rem;
    background: url("image/top/btn-off.svg") center center no-repeat;
    background-size: contain; }
    @media screen and (max-width: 1200px) {
      #top-main--sound {
        top: 2.5rem;
        right: 2.5rem;
        width: 5rem;
        height: 5rem; } }
    @media screen and (max-width: 600px) {
      #top-main--sound {
        top: 1rem;
        right: 1rem;
        width: 3rem;
        height: 3rem; } }
    #top-main--sound.active {
      background: url("image/top/btn-on.svg") center center no-repeat;
      background-size: contain; }

#top-news_sns {
  margin: 8rem 0 0;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #top-news_sns {
      padding: 0 5rem; } }
  @media screen and (max-width: 600px) {
    #top-news_sns {
      margin-top: 5rem;
      padding: 0 2rem; } }
  #top-news_sns__inner {
    max-width: 100rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 1200px) {
      #top-news_sns__inner {
        flex-direction: column;
        gap: 6rem 0; } }

#top-news {
  margin: 0;
  padding: 0;
  flex: 0 0 60rem; }
  @media screen and (max-width: 1200px) {
    #top-news {
      flex: 0 0 100%; } }
  #top-news .top-news--link {
    margin: 1rem 0 0; }
    @media screen and (max-width: 600px) {
      #top-news .top-news--link {
        margin-top: 2rem;
        text-align: center; } }
    #top-news .top-news--link a {
      position: relative;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.5;
      color: #FFF;
      background-color: var(--wp--custom_color_first, #3186CA);
      border: 1px solid var(--wp--custom_color_first, #3186CA);
      border-radius: 9999rem;
      display: inline-block;
      padding: 2rem 4rem;
      box-sizing: border-box; }
      @media screen and (max-width: 600px) {
        #top-news .top-news--link a {
          font-size: 1.4rem;
          line-height: 1.5;
          padding: 1.5rem 4rem; } }
      #top-news .top-news--link a::after {
        display: inline-block;
        content: "";
        width: 2.4rem;
        height: 2.4rem;
        margin: 0 0 0 1rem;
        vertical-align: middle;
        -webkit-mask-image: url("image/share/icon-arrow.svg");
        -webkit-mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-image: url("image/share/icon-arrow.svg");
        mask-size: contain;
        mask-repeat: no-repeat;
        mask-position: center;
        background-color: currentColor; }
        @media screen and (max-width: 600px) {
          #top-news .top-news--link a::after {
            width: 2rem;
            height: 2rem; } }

#top-news--list {
  margin: 0;
  padding: 0; }
  #top-news--list > li {
    position: relative;
    margin: 0;
    padding: 2rem 0;
    display: grid;
    grid-template-columns: 20rem 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas: "area_img  area_archive" "area_img  area_title";
    gap: 1.5rem 4rem;
    transition: all 300ms ease-in-out; }
    @media screen and (max-width: 600px) {
      #top-news--list > li {
        grid-template-columns: 15rem 1fr;
        padding: 2rem 0;
        gap: 1rem 1.5rem; } }
    #top-news--list > li:hover {
      background-color: rgba(43, 184, 255, 0.3); }
      @media screen and (max-width: 600px) {
        #top-news--list > li:hover {
          background-color: inherit; } }
    #top-news--list > li + li {
      border-top: 1px solid var(--border-bottom, #CCC); }
    #top-news--list > li .news-list--img {
      grid-area: area_img; }
      #top-news--list > li .news-list--img img {
        width: 20rem;
        height: 15rem;
        aspect-ratio: 4/3;
        object-fit: cover; }
        @media screen and (max-width: 600px) {
          #top-news--list > li .news-list--img img {
            width: 15rem; } }
    #top-news--list > li .news-list--archive {
      text-align: left;
      grid-area: area_archive; }
      @media screen and (max-width: 600px) {
        #top-news--list > li .news-list--archive {
          line-height: 2.5; } }
    #top-news--list > li .news-list--date {
      color: var(--calendar-color-date, #858484);
      font-size: 1.4rem;
      line-height: 1.5; }
      @media screen and (max-width: 600px) {
        #top-news--list > li .news-list--date {
          font-size: 1.2rem;
          line-height: 1.5; } }
    #top-news--list > li .news-list--category {
      margin: 0 0 0 1rem; }
      #top-news--list > li .news-list--category span {
        display: inline-flex;
        height: 1.9rem;
        padding: 0.25rem 1rem;
        border-radius: 999rem;
        background: var(--wp--custom_color_first, #3186CA);
        justify-content: center;
        align-items: center;
        color: var(--wp--custom_color_h1, #FFF);
        font-size: 1.4rem;
        line-height: 1; }
        @media screen and (max-width: 600px) {
          #top-news--list > li .news-list--category span {
            font-size: 1.2rem;
            line-height: 1.5; } }
        #top-news--list > li .news-list--category span + span {
          margin-left: 1rem; }
    #top-news--list > li .news-list--title {
      grid-area: area_title;
      color: #2E2E2E;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.625;
      text-align: justify;
      text-justify: inter-ideograph; }
      @media screen and (max-width: 600px) {
        #top-news--list > li .news-list--title {
          font-size: 1.4rem;
          line-height: 1.5; } }
    #top-news--list > li .news-list--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

#top-sns {
  margin: 0;
  padding: 0;
  flex: 0 0 30rem; }
  @media screen and (max-width: 1200px) {
    #top-sns {
      flex: 0 0 100%; } }
  #top-sns .top-sns--copy {
    position: relative;
    width: 100%;
    height: 11.8rem;
    background: var(--wp--custom_color_first, #3186CA);
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.8rem;
    text-align: center;
    font-weight: 700;
    line-height: 1.5;
    color: var(--wp--custom_color_h1, #FFF);
    margin: 0; }
    @media screen and (max-width: 600px) {
      #top-sns .top-sns--copy {
        height: 12rem;
        font-size: 1.6rem;
        line-height: 1.5; } }
    #top-sns .top-sns--copy img {
      position: absolute;
      opacity: 0.4;
      mix-blend-mode: multiply;
      width: 13.2rem;
      height: auto;
      top: 1.551rem;
      left: 0.909rem; }
      @media screen and (max-width: 600px) {
        #top-sns .top-sns--copy img {
          width: 13.1678rem;
          top: 0.924rem;
          left: 1.551rem; } }

#top-sns--list {
  margin: 0;
  padding: 2rem;
  border-radius: 0 0 2rem 2rem;
  background: var(--wp--custom_color_second, #F2F5F8); }
  @media screen and (max-width: 1200px) {
    #top-sns--list {
      display: flex;
      justify-content: space-around;
      padding: 4rem 3rem;
      flex-wrap: wrap;
      gap: 2remm; } }
  @media screen and (max-width: 600px) {
    #top-sns--list {
      justify-content: space-between;
      gap: 0;
      flex-wrap: nowrap; } }
  #top-sns--list > li {
    position: relative;
    margin: 0;
    padding: 1rem;
    transition: opacity 300ms ease-in-out; }
    #top-sns--list > li:hover {
      opacity: 0.8; }
    #top-sns--list > li > dl {
      display: grid;
      grid-template-columns: 4rem 1fr;
      grid-template-areas: "area_img  area_title" "area_img  area_hash";
      gap: 0 1.5rem;
      margin: 0;
      padding: 0; }
      @media screen and (max-width: 600px) {
        #top-sns--list > li > dl {
          display: block; } }
    #top-sns--list > li .top-sns--list--img {
      grid-area: area_img;
      margin: 0;
      padding: 0; }
      #top-sns--list > li .top-sns--list--img img {
        width: 4rem;
        height: 4rem;
        aspect-ratio: 1/1;
        object-fit: cover; }
        @media screen and (max-width: 600px) {
          #top-sns--list > li .top-sns--list--img img {
            width: 4rem;
            height: 4rem; } }
    #top-sns--list > li .top-sns--list--title {
      grid-area: area_title;
      font-size: 1.6rem;
      line-height: 1.5;
      margin: 0;
      padding: 0; }
      @media screen and (max-width: 600px) {
        #top-sns--list > li .top-sns--list--title {
          display: none; } }
    #top-sns--list > li .top-sns--list--text {
      grid-area: area_hash;
      color: var(--calendar-color-date, #858484);
      font-size: 1.2rem;
      line-height: 1.5;
      margin: 0;
      padding: 0; }
      @media screen and (max-width: 600px) {
        #top-sns--list > li .top-sns--list--text {
          display: none; } }
    #top-sns--list > li .top-sns--list--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

#top-faculty {
  margin: 8rem 0 0;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #top-faculty {
      padding: 0 5rem; } }
  @media screen and (max-width: 600px) {
    #top-faculty {
      margin-top: 6rem;
      padding: 0 2rem; } }
  #top-faculty__inner {
    width: 100rem;
    margin: 0 auto; }
    @media screen and (max-width: 1200px) {
      #top-faculty__inner {
        width: auto; } }
    #top-faculty__inner .top-faculty--title {
      margin-bottom: 6rem; }
      @media screen and (max-width: 600px) {
        #top-faculty__inner .top-faculty--title {
          margin-bottom: 5rem; } }

#top-faculty--list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 4rem; }
  @media screen and (max-width: 1200px) {
    #top-faculty--list {
      gap: 4rem 4%; } }
  @media screen and (max-width: 900px) {
    #top-faculty--list {
      gap: 4rem; } }
  @media screen and (max-width: 600px) {
    #top-faculty--list {
      gap: 2rem; } }
  #top-faculty--list > li {
    flex: 0 0 48rem;
    position: relative;
    display: grid;
    grid-template-rows: 1fr auto;
    align-items: flex-end; }
    @media screen and (max-width: 1200px) {
      #top-faculty--list > li {
        flex: 0 0 48%; } }
    @media screen and (max-width: 900px) {
      #top-faculty--list > li {
        flex: 0 0 100%; } }
    @media screen and (max-width: 600px) {
      #top-faculty--list > li {
        flex: 0 0 100%; } }
    #top-faculty--list > li .top-faculty--list--jp {
      color: var(--wp--custom_color_h1, #FFF);
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.5;
      margin: 0 2rem 2rem;
      padding: 0;
      grid-column-start: 1;
      grid-column-end: 1;
      grid-row-start: 2;
      grid-row-end: 3;
      z-index: 30; }
      @media screen and (max-width: 600px) {
        #top-faculty--list > li .top-faculty--list--jp {
          font-size: 1.4rem;
          line-height: 1.5;
          margin: 0 2rem 2rem; } }
    #top-faculty--list > li .top-faculty--list--en {
      color: var(--wp--custom_color_h1, #FFF);
      font-family: "Barlow Condensed", sans-serif;
      font-size: 3rem;
      font-weight: 600;
      line-height: 1;
      padding: 0 0 1rem;
      margin: 0 2rem 1rem;
      border-bottom: 1px solid var(--wp--custom_color_h1, #FFF);
      grid-column-start: 1;
      grid-column-end: 1;
      grid-row-start: 1;
      grid-row-end: 2;
      z-index: 20; }
      @media screen and (max-width: 600px) {
        #top-faculty--list > li .top-faculty--list--en {
          font-size: 2.5rem;
          line-height: 1.4;
          margin: 0 2rem 0.5rem;
          padding: 0 0 0.5rem; } }
    #top-faculty--list > li .top-faculty--list--img {
      border-radius: 1rem;
      grid-column-start: 1;
      grid-column-end: 1;
      grid-row-start: 1;
      grid-row-end: 3;
      z-index: 10;
      background: #000;
      transition: all 300ms ease-in-out; }
      #top-faculty--list > li .top-faculty--list--img:where(li:hover *) {
        background: #3186ca; }
      #top-faculty--list > li .top-faculty--list--img img {
        width: 480px;
        height: 300px;
        aspect-ratio: 8/5;
        object-fit: cover;
        border-radius: 1rem;
        opacity: 0.7; }
        @media screen and (max-width: 1200px) {
          #top-faculty--list > li .top-faculty--list--img img {
            width: 100%;
            height: auto; } }
    #top-faculty--list > li .top-faculty--list--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 40; }

#top-campus {
  margin: 11.5rem 0 0;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #top-campus {
      padding: 0 5rem; } }
  @media screen and (max-width: 600px) {
    #top-campus {
      margin-top: 4rem;
      padding: 0 2rem; } }
  #top-campus__inner {
    position: relative;
    width: 100rem;
    margin: 0 auto;
    display: flex;
    align-items: flex-start; }
    @media screen and (max-width: 1200px) {
      #top-campus__inner {
        width: auto; } }
    @media screen and (max-width: 600px) {
      #top-campus__inner {
        flex-wrap: wrap; } }
    #top-campus__inner .top-campus--textarea {
      position: relative;
      z-index: 10;
      flex: 0 0 52rem;
      border-radius: 2rem;
      background: var(--wp--custom_color_first, #3186CA);
      padding: 4.5rem 16rem 4.5rem 6rem; }
      @media screen and (max-width: 1200px) {
        #top-campus__inner .top-campus--textarea {
          flex: 0 1 62rem;
          margin-bottom: 34rem;
          padding-right: 6rem; } }
      @media screen and (max-width: 600px) {
        #top-campus__inner .top-campus--textarea {
          flex: 0 0 100%;
          border-radius: 2rem 2rem 0 0;
          padding: 3rem 3.3rem 3rem 3.3rem;
          margin: 0; } }
    #top-campus__inner .top-campus--title {
      position: relative;
      margin: 0 0 5rem; }
      @media screen and (max-width: 600px) {
        #top-campus__inner .top-campus--title {
          margin-bottom: 3.2rem; } }
      #top-campus__inner .top-campus--title::after {
        content: "";
        position: absolute;
        display: block;
        height: 1px;
        width: 3.5rem;
        background: var(--wp--custom_color_h1, #FFF);
        left: 0;
        bottom: -2rem; }
        @media screen and (max-width: 600px) {
          #top-campus__inner .top-campus--title::after {
            width: 3.5rem;
            bottom: -1.7rem; } }
      #top-campus__inner .top-campus--title p {
        color: var(--wp--custom_color_h1, #FFF);
        font-family: "Barlow Condensed", sans-serif;
        font-size: 6rem;
        font-style: italic;
        font-weight: 600;
        line-height: 1;
        margin: 0 0 1rem;
        padding: 0; }
        @media screen and (max-width: 600px) {
          #top-campus__inner .top-campus--title p {
            font-size: 5rem;
            line-height: 1; } }
      #top-campus__inner .top-campus--title h2 {
        margin: 0;
        padding: 0;
        border-radius: 0;
        background-color: inherit;
        color: var(--wp--custom_color_h1, #FFF);
        font-size: 1.4rem;
        font-weight: 700;
        line-height: 1.5; }
        @media screen and (max-width: 600px) {
          #top-campus__inner .top-campus--title h2 {
            font-size: 1.4rem;
            line-height: 1.5; } }
    #top-campus__inner .top-campus--text {
      color: var(--wp--custom_color_h1, #FFF);
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.5;
      margin: 0; }
      @media screen and (max-width: 600px) {
        #top-campus__inner .top-campus--text {
          font-size: 1.4rem;
          line-height: 1.5; } }
      #top-campus__inner .top-campus--text span {
        display: inline-block; }
        @media screen and (max-width: 600px) {
          #top-campus__inner .top-campus--text span {
            display: inline; } }
    #top-campus__inner .top-campus--link {
      position: relative;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.5;
      color: var(--wp--custom_color_first, #3186CA);
      background-color: #FFF;
      border: 1px solid #FFF;
      border-radius: 9999rem;
      display: inline-block;
      margin: 2.5rem 0 0;
      padding: 2rem 4rem;
      box-sizing: border-box; }
      @media screen and (max-width: 600px) {
        #top-campus__inner .top-campus--link {
          font-size: 1.4rem;
          line-height: 1.5;
          margin-top: 1.5rem;
          padding: 1.45rem 0;
          width: 100%;
          text-align: center; } }
      #top-campus__inner .top-campus--link::after {
        display: inline-block;
        content: "";
        width: 2.4rem;
        height: 2.4rem;
        margin: 0 0 0 1rem;
        vertical-align: middle;
        -webkit-mask-image: url("image/share/icon-arrow.svg");
        -webkit-mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-image: url("image/share/icon-arrow.svg");
        mask-size: contain;
        mask-repeat: no-repeat;
        mask-position: center;
        background-color: currentColor; }
        @media screen and (max-width: 600px) {
          #top-campus__inner .top-campus--link::after {
            width: 2.4rem;
            height: 2.4rem; } }
    #top-campus__inner .top-campus--img {
      position: relative;
      z-index: 20;
      flex: 0 0 52rem;
      margin: 11rem 0 0 -4rem;
      border-radius: 2rem; }
      @media screen and (max-width: 1200px) {
        #top-campus__inner .top-campus--img {
          position: absolute;
          flex: none;
          margin: 0;
          bottom: 0;
          right: 0; } }
      @media screen and (max-width: 600px) {
        #top-campus__inner .top-campus--img {
          flex: 0 0 100%;
          position: relative;
          right: auto;
          bottom: auto;
          border-radius: 0 0 2rem 2rem; } }
      #top-campus__inner .top-campus--img img {
        width: 52rem;
        height: 36rem;
        object-fit: cover;
        border-radius: 2rem; }
        @media screen and (max-width: 600px) {
          #top-campus__inner .top-campus--img img {
            width: 100%;
            height: auto;
            object-fit: cover;
            border-radius: 0 0 2rem 2rem; } }

#news-archive--list {
  margin: 0;
  padding: 0; }
  #news-archive--list > li {
    position: relative;
    margin: 0;
    padding: 2rem 0;
    display: grid;
    grid-template-columns: 20rem 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas: "area_img  area_archive" "area_img  area_title";
    gap: 1.5rem 4rem;
    transition: all 300ms ease-in-out; }
    #news-archive--list > li::before {
      display: none; }
    @media screen and (max-width: 600px) {
      #news-archive--list > li {
        grid-template-columns: 15rem 1fr;
        padding: 2rem 0;
        gap: 1rem 1.5rem; } }
    #news-archive--list > li:hover {
      background-color: rgba(43, 184, 255, 0.3); }
      @media screen and (max-width: 600px) {
        #news-archive--list > li:hover {
          background-color: inherit; } }
    #news-archive--list > li + li {
      border-top: 1px solid var(--border-bottom, #CCC); }
    #news-archive--list > li .news-list--img {
      grid-area: area_img; }
      #news-archive--list > li .news-list--img img {
        width: 20rem;
        height: 15rem;
        aspect-ratio: 4/3;
        object-fit: cover; }
        @media screen and (max-width: 600px) {
          #news-archive--list > li .news-list--img img {
            width: 15rem; } }
    #news-archive--list > li .news-list--archive {
      text-align: left;
      grid-area: area_archive; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-list--archive {
          line-height: 2.5; } }
    #news-archive--list > li .news-list--date {
      color: var(--calendar-color-date, #858484);
      font-size: 1.4rem;
      line-height: 1.5; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-list--date {
          font-size: 1.2rem;
          line-height: 1.5; } }
    #news-archive--list > li .news-list--category {
      margin: 0 0 0 1rem; }
      #news-archive--list > li .news-list--category span {
        display: inline-flex;
        height: 1.9rem;
        padding: 0.25rem 1rem;
        border-radius: 999rem;
        background: var(--wp--custom_color_first, #3186CA);
        justify-content: center;
        align-items: center;
        color: var(--wp--custom_color_h1, #FFF);
        font-size: 1.4rem;
        line-height: 1; }
        @media screen and (max-width: 600px) {
          #news-archive--list > li .news-list--category span {
            font-size: 1.2rem;
            line-height: 1.5; } }
        #news-archive--list > li .news-list--category span + span {
          margin-left: 1rem; }
    #news-archive--list > li .news-list--title {
      grid-area: area_title;
      color: #2E2E2E;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.625;
      text-align: justify;
      text-justify: inter-ideograph; }
      @media screen and (max-width: 600px) {
        #news-archive--list > li .news-list--title {
          font-size: 1.4rem;
          line-height: 1.5; } }
    #news-archive--list > li .news-list--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

#news-archive--area {
  margin: 0 0 4rem;
  font-size: 1.4rem;
  line-height: 1.5; }
  #news-archive--area .news-archive--date {
    color: #9D9D9D; }
  #news-archive--area .news-archive--category {
    margin: 0 0 0 1.5rem; }
    #news-archive--area .news-archive--category a {
      color: var(--wp--custom_color_h1, #FFF);
      text-decoration: none;
      display: inline-flex;
      height: 1.9rem;
      padding: 0 1rem;
      justify-content: center;
      align-items: center;
      border-radius: 9999rem;
      background: var(--wp--custom_color_first, #3186CA); }
      #news-archive--area .news-archive--category a + a {
        margin-left: 1.5rem; }

#page-loop-index {
  display: flex;
  flex-wrap: wrap;
  gap: 8rem 8rem; }
  @media screen and (max-width: 1200px) {
    #page-loop-index {
      gap: 8rem 8%; } }
  @media screen and (max-width: 600px) {
    #page-loop-index {
      gap: 6rem 4%; } }
  #page-loop-index > li {
    position: relative;
    flex: 0 0 46rem;
    transition: opacity 300ms ease-in-out; }
    @media screen and (max-width: 1200px) {
      #page-loop-index > li {
        flex: 0 0 46%; } }
    @media screen and (max-width: 600px) {
      #page-loop-index > li {
        flex: 0 0 100%; } }
    #page-loop-index > li:hover {
      opacity: 0.7; }
      @media screen and (max-width: 600px) {
        #page-loop-index > li:hover {
          opacity: 1; } }
    #page-loop-index > li .loop-index--img {
      position: relative;
      overflow: hidden; }
      #page-loop-index > li .loop-index--img img {
        width: 46rem;
        height: 24rem;
        object-fit: cover; }
        @media screen and (max-width: 1200px) {
          #page-loop-index > li .loop-index--img img {
            width: 100%;
            height: auto;
            aspect-ratio: 46 / 24; } }
    #page-loop-index > li .loop-index--title {
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      padding: 0 0 1.5rem;
      margin: 0 0 2rem;
      border-bottom: 1px solid var(--border-bottom, #CCC); }
      @media screen and (max-width: 1200px) {
        #page-loop-index > li .loop-index--title {
          font-size: 1.8rem; } }
      @media screen and (max-width: 600px) {
        #page-loop-index > li .loop-index--title {
          font-size: 2rem; } }
      #page-loop-index > li .loop-index--title::after {
        display: inline-block;
        content: "";
        width: 2.4rem;
        height: 2.4rem;
        margin: 0 0 0 1rem;
        vertical-align: middle;
        -webkit-mask-image: url("image/share/icon-arrow.svg");
        -webkit-mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-image: url("image/share/icon-arrow.svg");
        mask-size: contain;
        mask-repeat: no-repeat;
        mask-position: center;
        background-color: var(--wp--custom_color_first, #3186CA); }
        @media screen and (max-width: 1200px) {
          #page-loop-index > li .loop-index--title::after {
            width: 2.3rem;
            height: 2.3rem; } }
        @media screen and (max-width: 600px) {
          #page-loop-index > li .loop-index--title::after {
            width: 2.4rem;
            height: 2.4rem; } }
    #page-loop-index > li .loop-index--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

#schedule-list .schedule-list--month {
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: 6rem;
  margin: 0;
  padding: 0 0 10rem; }
  @media screen and (max-width: 900px) {
    #schedule-list .schedule-list--month {
      gap: 4rem; } }
  @media screen and (max-width: 600px) {
    #schedule-list .schedule-list--month {
      gap: 2rem; } }
  #schedule-list .schedule-list--month::before {
    position: absolute;
    content: "";
    width: 3px;
    height: 100%;
    background-color: var(--border-bottom, #CCC);
    top: 0;
    left: 4.9rem;
    bottom: 0; }
    @media screen and (max-width: 900px) {
      #schedule-list .schedule-list--month::before {
        left: 3.9rem; } }
    @media screen and (max-width: 600px) {
      #schedule-list .schedule-list--month::before {
        left: 2.9rem; } }
  #schedule-list .schedule-list--month:last-child {
    padding-bottom: 0; }
    #schedule-list .schedule-list--month:last-child::before {
      display: none; }
  #schedule-list .schedule-list--month > dt {
    position: relative;
    flex: 0 0 10rem;
    width: 10rem;
    height: 10rem;
    border-radius: 1rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0; }
    @media screen and (max-width: 900px) {
      #schedule-list .schedule-list--month > dt {
        flex: 0 0 8rem;
        width: 8rem;
        height: 8rem; } }
    @media screen and (max-width: 600px) {
      #schedule-list .schedule-list--month > dt {
        flex: 0 0 6rem;
        width: 6rem;
        height: 6rem; } }
  #schedule-list .schedule-list--month--spr {
    background-color: var(--calendar-color-spring, #FFD1D4); }
  #schedule-list .schedule-list--month--smr {
    background-color: var(--calendar-color-summer, #CFEA9A); }
  #schedule-list .schedule-list--month--aut {
    background-color: var(--calendar-color-autumn, #FFD4A8); }
  #schedule-list .schedule-list--month--wtr {
    background-color: var(--calendar-color-winter, #C9DCE4); }
  #schedule-list .schedule-list--month--num {
    color: var(--wp--custom_color_text, #000);
    text-align: center;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 5rem;
    font-style: italic;
    font-weight: 600;
    line-height: 1; }
    @media screen and (max-width: 600px) {
      #schedule-list .schedule-list--month--num {
        font-size: 4rem; } }
  #schedule-list .schedule-list--month--en {
    color: var(--calendar-color-date, #858484);
    text-align: center;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 1.8rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1; }
    @media screen and (max-width: 600px) {
      #schedule-list .schedule-list--month--en {
        font-size: 1.6rem; } }
  #schedule-list .schedule-list--month > dd {
    flex: 1 1 100%;
    margin: 0;
    padding: 0; }
#schedule-list .schedule-list--event {
  margin: 0;
  padding: 0; }
  #schedule-list .schedule-list--event > div + div {
    padding-top: 4rem; }
#schedule-list .schedule-list--name {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  padding: 0 0 1.5rem;
  border-bottom: 2px solid var(--calendar-color-date, #858484); }
  @media screen and (max-width: 600px) {
    #schedule-list .schedule-list--name {
      font-size: 1.8rem;
      padding-bottom: 1rem;
      margin-bottom: 1em; } }
#schedule-list .schedule-list--text {
  line-height: 1.625; }
#schedule-list .schedule-list--img--list {
  margin: 4rem 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 4rem; }
  @media screen and (max-width: 1200px) {
    #schedule-list .schedule-list--img--list {
      gap: 2rem 4%; } }
  @media screen and (max-width: 600px) {
    #schedule-list .schedule-list--img--list {
      margin-top: 2rem; } }
  #schedule-list .schedule-list--img--list > li {
    margin: 0;
    padding: 0;
    flex: 0 0 40rem; }
    @media screen and (max-width: 1200px) {
      #schedule-list .schedule-list--img--list > li {
        flex: 0 0 48%; } }
    @media screen and (max-width: 600px) {
      #schedule-list .schedule-list--img--list > li {
        flex: 0 0 100%; } }
    #schedule-list .schedule-list--img--list > li::before {
      display: none; }
    #schedule-list .schedule-list--img--list > li a img {
      width: 100%;
      height: auto; }

.page-template-page-sdepartment-child-php section {
  margin: 10rem 0; }

.sdepartment-mainimg {
  margin: 0 0 4rem; }
  .sdepartment-mainimg img {
    width: 100%;
    height: 45rem;
    object-fit: cover; }
    @media screen and (max-width: 600px) {
      .sdepartment-mainimg img {
        height: auto;
        aspect-ratio: 20 / 9; } }

#sdepartment-main {
  margin: 0;
  padding: 0; }
  #sdepartment-main .sdepartment--title {
    position: relative;
    margin: 0 0 4rem; }
    #sdepartment-main .sdepartment--title > p {
      font-family: "Barlow Condensed", sans-serif;
      font-size: 6rem;
      font-style: italic;
      font-weight: 600;
      text-align: center;
      color: var(--wp--custom_color_first, #3186CA);
      line-height: 1;
      margin: 0; }
      @media screen and (max-width: 600px) {
        #sdepartment-main .sdepartment--title > p {
          font-size: 5rem; } }
      #sdepartment-main .sdepartment--title > p + h2 {
        margin-top: 2rem; }
        @media screen and (max-width: 600px) {
          #sdepartment-main .sdepartment--title > p + h2 {
            margin-top: 1.5rem; } }
    #sdepartment-main .sdepartment--title > h2 {
      text-align: center;
      font-size: 1.4rem;
      font-weight: 700;
      line-height: 1.5;
      margin: 0;
      padding: 0;
      border-radius: none;
      background: transparent; }
    #sdepartment-main .sdepartment--title::after {
      content: "";
      position: absolute;
      left: 50%;
      bottom: -2rem;
      width: 5rem;
      height: 2px;
      background: var(--wp--custom_color_first, #3186CA);
      -webkit-transform: translate(-50%, 0);
      transform: translate(-50%, 0); }
  #sdepartment-main .sdepartment--copy {
    font-size: 3.5rem;
    font-style: normal;
    text-align: center;
    font-weight: 700;
    line-height: 1.51429; }
    @media screen and (max-width: 600px) {
      #sdepartment-main .sdepartment--copy {
        font-size: 3rem; } }

#sdepartment--point {
  margin: 0;
  padding: 0; }
  #sdepartment--point .sdepartment--point--title {
    background: url("image/share/icon-point.svg") left center no-repeat;
    background-size: 8.5rem auto;
    min-height: 8rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0;
    padding: 0 0 0 10.5rem; }
    #sdepartment--point .sdepartment--point--title p {
      font-family: "Barlow Condensed", sans-serif;
      font-size: 4rem;
      font-style: italic;
      font-weight: 600;
      color: var(--wp--custom_color_first, #3186CA);
      line-height: 1;
      margin: 0;
      padding: 0; }
      #sdepartment--point .sdepartment--point--title p + h2 {
        margin-top: 0.5rem 0 0; }
    #sdepartment--point .sdepartment--point--title h3 {
      font-size: 1.4rem;
      font-style: 700;
      font-weight: 700;
      line-height: 1.5;
      margin: 0;
      padding: 0;
      border: none; }

#sdepartment--point--list {
  margin: 0;
  padding: 5rem 1rem;
  border-radius: 2rem;
  background: var(--wp--custom_color_second, #F2F5F8);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 3rem; }
  @media screen and (max-width: 600px) {
    #sdepartment--point--list {
      gap: 2rem;
      padding: 3rem 2rem; } }
  #sdepartment--point--list > li {
    flex: 0 0 28.5rem;
    border-radius: 2rem;
    background: var(--wp--custom_color_first, #3186CA);
    margin: 0;
    padding: 3rem 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--wp--custom_color_h1, #FFF);
    text-align: center;
    line-height: 1.5; }
    @media screen and (max-width: 600px) {
      #sdepartment--point--list > li {
        flex: 0 0 100%;
        padding: 2rem 1.5rem; } }
    #sdepartment--point--list > li::before {
      display: none; }

#sdepartment-keyllearningpoint > section {
  margin: 6rem 0; }
@media screen and (max-width: 900px) {
  #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--text, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--text, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--text {
    margin-bottom: 0; } }
@media screen and (max-width: 900px) {
  #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--img01, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--img02, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img01, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img02, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img01, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img02 {
    text-align: center; } }
#sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--img img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--img01 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--img02 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img01 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img02 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img01 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img02 img {
  width: 48rem;
  height: 36rem;
  object-fit: cover; }
  @media screen and (max-width: 900px) {
    #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--img img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--img01 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--textonly .sdepartment-keyllearningpoint--img02 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img01 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img02 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img01 img, #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img02 img {
      max-width: 48rem;
      width: 100%;
      height: auto;
      aspect-ratio: 4 / 3; } }
#sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "area_title  area_img" "area_text   area_img" "area_free   area_img";
  gap: 0 4rem; }
  @media screen and (max-width: 900px) {
    #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img {
      grid-template-columns: 1fr;
      grid-template-areas: "area_title" "area_text" "area_img";
      gap: 3rem; } }
  #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--subtitle {
    grid-area: area_title; }
  #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--text {
    grid-area: area_text; }
  #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--1img .sdepartment-keyllearningpoint--img {
    grid-area: area_img; }
#sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "area_title area_title" "area_text  area_text" "area_img01 area_img02";
  gap: 0 4rem; }
  @media screen and (max-width: 900px) {
    #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img {
      grid-template-columns: 1fr;
      grid-template-areas: "area_title" "area_text" "area_img01" "area_img02";
      gap: 3rem; } }
  #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--subtitle {
    grid-area: area_title; }
  #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--text {
    grid-area: area_text; }
  #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img01 {
    grid-area: area_img01; }
  #sdepartment-keyllearningpoint .sdepartment-keyllearningpoint--2img .sdepartment-keyllearningpoint--img02 {
    grid-area: area_img02; }

#sdepartment-curriculum .sdepartment-curriculum--title {
  margin-bottom: 1rem; }
#sdepartment-curriculum .sdepartment-curriculum--syllabus {
  text-align: right;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-bottom: 4rem; }
#sdepartment-curriculum .sdepartment-curriculum--tbl th {
  width: 50%; }

#sdepartment-study {
  margin: 6rem 0; }
  #sdepartment-study .sdepartment-study--title {
    margin: 0 0 4rem;
    padding: 0 0 2rem;
    border-bottom: 1px solid var(--border-bottom, #CCC); }
    #sdepartment-study .sdepartment-study--title p {
      font-family: "Barlow Condensed", sans-serif;
      font-size: 4rem;
      font-style: italic;
      font-weight: 600;
      color: var(--wp--custom_color_first, #3186CA);
      line-height: 1;
      text-align: center;
      margin: 0; }
    #sdepartment-study .sdepartment-study--title h3 {
      font-size: 1.4rem;
      text-align: center;
      margin: 0.5rem 0 0;
      padding: 0;
      border: none; }

#sdepartment-study--list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 6rem 8rem; }
  #sdepartment-study--list > li {
    flex: 0 0 46rem;
    margin: 0;
    padding: 0; }
    @media screen and (max-width: 1200px) {
      #sdepartment-study--list > li {
        flex: 0 0 100%; } }
    #sdepartment-study--list > li:last-child {
      flex: 0 0 100%; }
    #sdepartment-study--list > li:nth-child(2n):last-child {
      flex: 0 0 46rem; }
      @media screen and (max-width: 1200px) {
        #sdepartment-study--list > li:nth-child(2n):last-child {
          flex: 0 0 100%; } }
    #sdepartment-study--list > li::before {
      display: none; }
    #sdepartment-study--list > li > dl {
      margin: 0;
      padding: 0;
      display: grid;
      grid-template-areas: "area_img area_title" "area_img area_text" "area_img area_free";
      grid-template-columns: 22rem 1fr;
      gap: 0 2rem; }
      @media screen and (max-width: 600px) {
        #sdepartment-study--list > li > dl {
          grid-template-columns: 12rem 1fr; } }
      #sdepartment-study--list > li > dl dt {
        margin: 0 0 1rem;
        padding: 0; }
      #sdepartment-study--list > li > dl dd {
        margin: 0;
        padding: 0; }
      #sdepartment-study--list > li > dl .sdepartment-study--list--title {
        grid-area: area_title;
        font-size: 1.4rem;
        font-weight: 700;
        line-height: 1.5;
        color: var(--wp--custom_color_first, #3186CA); }
      #sdepartment-study--list > li > dl .sdepartment-study--list--text {
        grid-area: area_text;
        font-size: 1.4rem;
        line-height: 1.5; }
      #sdepartment-study--list > li > dl .sdepartment-study--list--img {
        grid-area: area_img; }
        #sdepartment-study--list > li > dl .sdepartment-study--list--img img {
          width: 22rem;
          height: 22rem;
          object-fit: cover; }
          @media screen and (max-width: 600px) {
            #sdepartment-study--list > li > dl .sdepartment-study--list--img img {
              width: 100%;
              height: auto;
              aspect-ratio: 1 / 1; } }

#sdepartment-voice .sdepartment-voice--list {
  margin: 6rem 0; }
  #sdepartment-voice .sdepartment-voice--list:first-child {
    margin-top: 4rem; }
#sdepartment-voice .sdepartment-voice--imgtext {
  display: flex;
  justify-content: space-between;
  gap: 3rem; }
  @media screen and (max-width: 600px) {
    #sdepartment-voice .sdepartment-voice--imgtext {
      flex-wrap: wrap; } }
  #sdepartment-voice .sdepartment-voice--imgtext + .sdepartment-voice--youtube {
    margin-top: 4rem; }
#sdepartment-voice .sdepartment-voice--imgarea {
  flex: 0 0 30rem; }
  @media screen and (max-width: 900px) {
    #sdepartment-voice .sdepartment-voice--imgarea {
      flex: 0 0 20rem; } }
  @media screen and (max-width: 600px) {
    #sdepartment-voice .sdepartment-voice--imgarea {
      flex: 0 0 100%;
      text-align: center; } }
  #sdepartment-voice .sdepartment-voice--imgarea img {
    width: 30rem;
    height: 25rem;
    object-fit: cover;
    margin: 0;
    padding: 0; }
    @media screen and (max-width: 900px) {
      #sdepartment-voice .sdepartment-voice--imgarea img {
        width: 20rem;
        height: auto;
        aspect-ratio: 6 / 5; } }
    @media screen and (max-width: 600px) {
      #sdepartment-voice .sdepartment-voice--imgarea img {
        width: 30rem;
        height: auto;
        aspect-ratio: 6 / 5; } }
  #sdepartment-voice .sdepartment-voice--imgarea figcaption {
    margin: 1rem 0 0; }
    #sdepartment-voice .sdepartment-voice--imgarea figcaption > dl {
      margin: 0;
      padding: 0; }
      #sdepartment-voice .sdepartment-voice--imgarea figcaption > dl > dt {
        margin: 0;
        padding: 0; }
      #sdepartment-voice .sdepartment-voice--imgarea figcaption > dl > dd {
        margin: 0;
        padding: 0; }
      #sdepartment-voice .sdepartment-voice--imgarea figcaption > dl .sdepartment-voice--name {
        font-size: 1.8rem;
        line-height: 1.5;
        border-bottom: 1px solid var(--border-bottom, #CCC);
        margin: 0 0 1rem;
        padding: 0 0 1rem; }
        #sdepartment-voice .sdepartment-voice--imgarea figcaption > dl .sdepartment-voice--name small {
          font-size: 1.4rem; }
      #sdepartment-voice .sdepartment-voice--imgarea figcaption > dl .sdepartment-voice--company, #sdepartment-voice .sdepartment-voice--imgarea figcaption > dl .sdepartment-voice--department {
        font-size: 1.4rem;
        line-height: 1.5; }
#sdepartment-voice .sdepartment-voice--textara {
  flex: 1 1 100%; }
  #sdepartment-voice .sdepartment-voice--textara > div + div {
    margin: 2rem 0 0; }
  #sdepartment-voice .sdepartment-voice--textara > div dt {
    font-weight: 700;
    color: var(--wp--custom_color_first, #3186CA);
    line-height: 1.625;
    margin: 0;
    padding: 0; }
  #sdepartment-voice .sdepartment-voice--textara > div dd {
    line-height: 1.625;
    margin: 0;
    padding: 0; }
#sdepartment-voice .sdepartment-voice--youtube {
  text-align: center; }
  #sdepartment-voice .sdepartment-voice--youtube iframe {
    width: 100%;
    height: auto;
    max-width: 60rem;
    aspect-ratio: 16 / 9; }

#sdepartment-indexarea {
  margin: 14rem auto 12rem;
  background: var(--wp--custom_color_second, #F2F5F8);
  margin: 0 auto 12rem;
  padding: 6rem 0; }
  @media screen and (max-width: 1200px) {
    #sdepartment-indexarea {
      margin: 14rem auto 12rem;
      padding: 6rem 5rem; } }
  @media screen and (max-width: 600px) {
    #sdepartment-indexarea {
      margin: 14rem auto 12rem;
      padding: 6rem 2rem; } }

#sdepartment-index {
  max-width: 100rem;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 6rem 4rem;
  justify-content: space-between; }
  @media screen and (max-width: 1200px) {
    #sdepartment-index {
      gap: 6rem 4%; } }
  @media screen and (max-width: 900px) {
    #sdepartment-index {
      justify-content: space-around; } }
  #sdepartment-index > li {
    position: relative;
    flex: 0 0 30rem;
    transition: opacity 300ms ease-in-out; }
    @media screen and (max-width: 1200px) {
      #sdepartment-index > li {
        flex: 0 0 30%; } }
    @media screen and (max-width: 900px) {
      #sdepartment-index > li {
        flex: 0 0 100%; } }
    #sdepartment-index > li:hover {
      opacity: 0.7; }
    #sdepartment-index > li .sdepartment-index--img {
      position: relative;
      overflow: hidden; }
      #sdepartment-index > li .sdepartment-index--img img {
        width: 30rem;
        height: 20rem;
        object-fit: cover;
        border-radius: 1rem; }
        @media screen and (max-width: 900px) {
          #sdepartment-index > li .sdepartment-index--img img {
            width: 100%;
            height: 30rem; } }
        @media screen and (max-width: 600px) {
          #sdepartment-index > li .sdepartment-index--img img {
            width: 100%;
            height: auto;
            aspect-ratio: 3 / 2; } }
      #sdepartment-index > li .sdepartment-index--img::before {
        display: block;
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        background: rgba(0, 0, 0, 0.5);
        border-radius: 1rem; }
    #sdepartment-index > li .sdepartment-index--title {
      font-size: 1.4rem;
      font-weight: 700;
      line-height: 1.5;
      margin: 1.5rem 0 0; }
      #sdepartment-index > li .sdepartment-index--title::after {
        display: inline-block;
        content: "";
        width: 2.1rem;
        height: 2.1rem;
        margin: 0 0 0 0.5rem;
        vertical-align: middle;
        -webkit-mask-image: url("image/share/icon-arrow.svg");
        -webkit-mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-image: url("image/share/icon-arrow.svg");
        mask-size: contain;
        mask-repeat: no-repeat;
        mask-position: center;
        background-color: var(--wp--custom_color_first, #3186CA); }
    #sdepartment-index > li .sdepartment-index--link {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

.page-template-page-opencampus-php #breadcrumb__outer {
  margin-bottom: 3rem; }
.page-template-page-opencampus-php #main-area {
  width: auto; }
  @media screen and (max-width: 1200px) {
    .page-template-page-opencampus-php #main-area {
      padding: 0; } }
  @media screen and (max-width: 600px) {
    .page-template-page-opencampus-php #main-area {
      padding: 0; } }
.page-template-page-opencampus-php hgroup {
  margin: 0 0 4rem; }
  .page-template-page-opencampus-php hgroup p {
    color: var(--wp--custom_color_first, #3186CA);
    font-family: "Barlow Condensed", sans-serif;
    font-size: 6rem;
    font-style: italic;
    font-weight: 600;
    line-height: 1;
    margin: 0 0 1rem; }
    @media screen and (max-width: 600px) {
      .page-template-page-opencampus-php hgroup p {
        font-size: 5rem; } }
  .page-template-page-opencampus-php hgroup h2 {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.16667;
    margin: 0;
    padding: 0;
    background: inherit;
    border-radius: 0; }
    @media screen and (max-width: 600px) {
      .page-template-page-opencampus-php hgroup h2 {
        font-size: 1.4rem; } }

#opencampus-main {
  margin: 0 0 16rem;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #opencampus-main {
      padding: 0 5rem; } }
  @media screen and (max-width: 600px) {
    #opencampus-main {
      padding: 0 2rem; } }
  #opencampus-main__inner {
    position: relative;
    width: 100rem;
    margin: 0 auto; }
    @media screen and (max-width: 1200px) {
      #opencampus-main__inner {
        width: auto; } }
    #opencampus-main__inner .opencampus-main--nextdate {
      position: absolute;
      width: 22rem;
      height: 22rem;
      border-radius: 50%;
      background: var(--wp--custom_color_h1, #FFF);
      border: 1rem solid var(--wp--custom_color_second, #F2F5F8);
      right: 0;
      bottom: -12rem;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 1rem; }
      @media screen and (max-width: 900px) {
        #opencampus-main__inner .opencampus-main--nextdate {
          position: relative;
          width: auto;
          height: auto;
          border: none;
          border-radius: 0;
          background: var(--wp--custom_color_second, #F2F5F8);
          right: auto;
          bottom: auto;
          padding: 2rem;
          flex-direction: row; } }
      @media screen and (max-width: 600px) {
        #opencampus-main__inner .opencampus-main--nextdate {
          flex-direction: column; } }
      #opencampus-main__inner .opencampus-main--nextdate--title {
        text-align: center;
        font-size: 1.6rem;
        font-weight: 700;
        line-height: 1.625; }
      #opencampus-main__inner .opencampus-main--nextdate--date {
        text-align: center;
        font-size: 3.4rem;
        font-weight: 700;
        line-height: 1.5; }
      #opencampus-main__inner .opencampus-main--nextdate--day {
        font-size: 3.4rem;
        font-weight: 700;
        line-height: 1.5; }
        #opencampus-main__inner .opencampus-main--nextdate--day--sat {
          color: var(--date-color-sat, #39A6C7); }
        #opencampus-main__inner .opencampus-main--nextdate--day--sun {
          color: var(--date-color-sun, #E14F59); }
      #opencampus-main__inner .opencampus-main--nextdate--text {
        color: var(--wp--custom_color_first, #3186CA);
        text-align: center;
        font-size: 1.6rem;
        font-weight: 700;
        line-height: 1.625; }

#opencampus-reservation {
  margin: 16rem 0 0;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #opencampus-reservation {
      padding: 0 5rem; } }
  @media screen and (max-width: 600px) {
    #opencampus-reservation {
      padding: 0 2rem; } }
  #opencampus-reservation__inner {
    width: 100rem;
    margin: 0 auto; }
    @media screen and (max-width: 1200px) {
      #opencampus-reservation__inner {
        width: auto; } }
    #opencampus-reservation__inner .opencampus-reservation--note {
      text-align: center;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.625;
      margin: 3rem 0 0; }

#opencampus-reservation--list {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 5rem;
  margin: 0;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #opencampus-reservation--list {
      flex-wrap: wrap;
      justify-content: center; } }
  #opencampus-reservation--list > li {
    flex: 0 0 30rem;
    margin: 0;
    padding: 3rem;
    border-radius: 2rem;
    background: var(--wp--custom_color_second, #F2F5F8); }
    @media screen and (max-width: 600px) {
      #opencampus-reservation--list > li {
        flex: 0 0 100%; } }
    #opencampus-reservation--list > li::before {
      display: none; }
    #opencampus-reservation--list > li > dl {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      text-align: center;
      gap: 1.5rem;
      margin: 0;
      padding: 0; }
      #opencampus-reservation--list > li > dl .opencampus-reservation--list--title {
        text-align: center;
        font-size: 2.4rem;
        font-weight: 700;
        line-height: 1.5;
        margin: 0;
        padding: 0; }
      #opencampus-reservation--list > li > dl .opencampus-reservation--list--text {
        font-size: 1.6rem;
        text-align: center;
        line-height: 1.625;
        margin: 0;
        padding: 0; }
      #opencampus-reservation--list > li > dl .opencampus-reservation--list--link {
        text-align: center;
        font-size: 1.6rem;
        font-weight: 700;
        line-height: 1.5;
        margin: 0;
        padding: 0;
        width: 100%; }
        @media screen and (max-width: 600px) {
          #opencampus-reservation--list > li > dl .opencampus-reservation--list--link {
            font-size: 1.4rem;
            line-height: 1.5; } }
        #opencampus-reservation--list > li > dl .opencampus-reservation--list--link a {
          display: flex;
          color: var(--wp--custom_color_h1, #FFF);
          justify-content: center;
          align-items: center;
          width: 100%;
          height: 5rem;
          background: var(--wp--custom_color_first, #3186CA);
          border-radius: 999rem;
          text-decoration: none; }
          #opencampus-reservation--list > li > dl .opencampus-reservation--list--link a::after {
            display: inline-block;
            content: "";
            width: 2.4rem;
            height: 2.4rem;
            margin: 0 0 0 1rem;
            vertical-align: middle;
            -webkit-mask-image: url("image/share/icon-arrow.svg");
            -webkit-mask-size: contain;
            -webkit-mask-repeat: no-repeat;
            -webkit-mask-position: center;
            mask-image: url("image/share/icon-arrow.svg");
            mask-size: contain;
            mask-repeat: no-repeat;
            mask-position: center;
            background-color: currentColor; }
            @media screen and (max-width: 600px) {
              #opencampus-reservation--list > li > dl .opencampus-reservation--list--link a::after {
                width: 2rem;
                height: 2rem; } }

#opencampus-program {
  margin: 8.6rem 0 0;
  padding: 6rem 0 6rem;
  background: var(--wp--custom_color_second, #F2F5F8); }
  @media screen and (max-width: 1200px) {
    #opencampus-program {
      padding: 6rem 5rem; } }
  @media screen and (max-width: 600px) {
    #opencampus-program {
      padding: 6rem 2rem; } }
  #opencampus-program__inner {
    width: 100rem;
    margin: 0 auto; }
    @media screen and (max-width: 1200px) {
      #opencampus-program__inner {
        width: auto; } }

#opencampus-program--list {
  margin: 0;
  padding: 0; }
  #opencampus-program--list > li {
    display: grid;
    grid-template-rows: 6rem 30rem 1fr;
    grid-template-columns: 47.85rem 4.05rem 1fr;
    margin: 0;
    padding: 0; }
    @media screen and (max-width: 1200px) {
      #opencampus-program--list > li {
        grid-template-rows: auto auto;
        grid-template-columns: auto; } }
    #opencampus-program--list > li + li {
      margin-top: 8rem; }
      @media screen and (max-width: 600px) {
        #opencampus-program--list > li + li {
          margin-top: 6rem; } }
    #opencampus-program--list > li::before {
      display: none; }
    #opencampus-program--list > li .opencampus-program--list--textarea {
      min-height: 33.5rem;
      grid-column-start: 2;
      grid-column-end: 4;
      grid-row-start: 2;
      grid-row-end: 4;
      z-index: 20;
      border-radius: 2rem;
      background: var(--wp--custom_color_h1, #FFF);
      padding: 4rem 6rem;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: flex-start; }
      @media screen and (max-width: 1200px) {
        #opencampus-program--list > li .opencampus-program--list--textarea {
          min-height: inherit;
          grid-column-start: 1;
          grid-column-end: 2;
          grid-row-start: 2;
          grid-row-end: 3;
          padding: 3rem;
          border-radius: 0 0 2rem 2rem; } }
      #opencampus-program--list > li .opencampus-program--list--textarea dl {
        margin: 0;
        padding: 0;
        width: 100%; }
        #opencampus-program--list > li .opencampus-program--list--textarea dl dd:last-child {
          margin-bottom: 0; }
    #opencampus-program--list > li .opencampus-program--list--title {
      color: var(--wp--custom_color_first, #3186CA);
      font-size: 2.8rem;
      font-weight: 700;
      text-align: justify;
      text-justify: inter-ideograph;
      line-height: 1.5;
      margin: 0 0 1.5rem;
      padding: 0 0 1.5rem;
      border-bottom: 2px solid var(--calendar-color-date, #858484); }
    #opencampus-program--list > li .opencampus-program--list--copy {
      font-size: 1.6rem;
      font-weight: 700;
      text-align: justify;
      text-justify: inter-ideograph;
      line-height: 1.625;
      margin: 0 0 1rem;
      padding: 0; }
    #opencampus-program--list > li .opencampus-program--list--example {
      font-size: 1.4rem;
      line-height: 1.5;
      text-align: justify;
      text-justify: inter-ideograph;
      margin: 0 0 1rem;
      padding: 0; }
    #opencampus-program--list > li .opencampus-program--list--text {
      font-size: 1.6rem;
      line-height: 1.625;
      text-align: justify;
      text-justify: inter-ideograph;
      margin: 0 0 1rem;
      padding: 0; }
    #opencampus-program--list > li .opencampus-program--list--note {
      font-size: 1.4rem;
      line-height: 1.5;
      text-align: justify;
      text-justify: inter-ideograph;
      margin: 0;
      padding: 0; }
    #opencampus-program--list > li .opencampus-program--list--img {
      grid-column-start: 1;
      grid-column-end: 3;
      grid-row-start: 1;
      grid-row-end: 3;
      z-index: 10; }
      @media screen and (max-width: 1200px) {
        #opencampus-program--list > li .opencampus-program--list--img {
          min-height: inherit;
          grid-column-start: 1;
          grid-column-end: 2;
          grid-row-start: 1;
          grid-row-end: 2; } }
      #opencampus-program--list > li .opencampus-program--list--img img {
        width: 100%;
        height: auto; }

#opencampus-schedule {
  margin: 6rem 0 0;
  padding: 0; }
  #opencampus-schedule__inner {
    width: 100rem;
    margin: 0 auto; }
    @media screen and (max-width: 1200px) {
      #opencampus-schedule__inner {
        width: auto;
        padding: 0 5rem; } }
    @media screen and (max-width: 600px) {
      #opencampus-schedule__inner {
        padding: 0 2rem; } }

#opencampus-schedule--list {
  margin: 0;
  padding: 0; }
  #opencampus-schedule--list > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0 4rem; }
    @media screen and (max-width: 1200px) {
      #opencampus-schedule--list > div {
        justify-content: center;
        gap: 3rem 4rem; } }
    @media screen and (max-width: 600px) {
      #opencampus-schedule--list > div {
        justify-content: space-between;
        gap: 2rem 4%; } }
    #opencampus-schedule--list > div + div {
      margin: 6rem 0 0; }
    #opencampus-schedule--list > div::before, #opencampus-schedule--list > div::after {
      display: block;
      content: "";
      flex: 0 0 22rem;
      margin: 0;
      padding: 0; }
      @media screen and (max-width: 600px) {
        #opencampus-schedule--list > div::before, #opencampus-schedule--list > div::after {
          display: none; } }
  #opencampus-schedule--list dt {
    flex: 0 0 100%;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 0 0 1rem;
    padding: 0; }
    @media screen and (max-width: 600px) {
      #opencampus-schedule--list dt {
        margin-bottom: 0; } }
  #opencampus-schedule--list dd {
    position: relative;
    flex: 0 0 22rem;
    display: flex;
    width: 22rem;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    border-radius: 1rem;
    border: 2px solid var(--wp--custom_color_first, #3186CA);
    background: var(--wp--custom_color_second, #F2F5F8);
    margin: 0 0 3rem;
    padding: 1rem; }
    @media screen and (max-width: 1200px) {
      #opencampus-schedule--list dd {
        margin-bottom: 0; } }
    @media screen and (max-width: 600px) {
      #opencampus-schedule--list dd {
        flex: 0 0 48%;
        margin-bottom: 0; } }
    #opencampus-schedule--list dd:nth-last-child(4), #opencampus-schedule--list dd:nth-last-child(3), #opencampus-schedule--list dd:nth-last-child(2), #opencampus-schedule--list dd:nth-last-child(1) {
      margin-bottom: 0; }
    #opencampus-schedule--list dd.opencampus-schedule--list--yearlist--over {
      border: 2px solid var(--border-bottom, #CCC);
      background: var(--border-bottom, #CCC); }
    #opencampus-schedule--list dd .opencampus-schedule--list--date {
      text-align: center;
      font-size: 3.5rem;
      font-weight: 700;
      line-height: 1.48571; }
      @media screen and (max-width: 600px) {
        #opencampus-schedule--list dd .opencampus-schedule--list--date {
          font-size: 2.6rem;
          line-height: 1.5; } }
      #opencampus-schedule--list dd .opencampus-schedule--list--date:where(.opencampus-schedule--list--yearlist--over *) {
        color: var(--calendar-color-date, #858484); }
      #opencampus-schedule--list dd .opencampus-schedule--list--date--sat {
        color: var(--date-color-sat, #39A6C7); }
        #opencampus-schedule--list dd .opencampus-schedule--list--date--sat:where(.opencampus-schedule--list--yearlist--over *) {
          color: var(--calendar-color-date, #858484); }
      #opencampus-schedule--list dd .opencampus-schedule--list--date--sun {
        color: var(--date-color-sun, #E14F59); }
        #opencampus-schedule--list dd .opencampus-schedule--list--date--sun:where(.opencampus-schedule--list--yearlist--over *) {
          color: var(--calendar-color-date, #858484); }
    #opencampus-schedule--list dd .opencampus-schedule--list--time {
      text-align: center;
      font-size: 1.8rem;
      font-weight: 700;
      line-height: 1.44444; }
      @media screen and (max-width: 600px) {
        #opencampus-schedule--list dd .opencampus-schedule--list--time {
          font-size: 1.6rem;
          line-height: 1.5; } }
  #opencampus-schedule--list .opencampus-schedule--list--link {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }

#opencampus-conference {
  margin: 6rem 0 0;
  padding: 6rem 0;
  background: var(--wp--custom_color_first, #3186CA); }
  @media screen and (max-width: 1200px) {
    #opencampus-conference {
      padding: 4rem 5rem; } }
  @media screen and (max-width: 600px) {
    #opencampus-conference {
      padding: 2rem 2rem; } }
  #opencampus-conference__inner {
    width: 100rem;
    margin: 0 auto;
    padding: 4rem 6rem;
    background: var(--wp--custom_color_h1, #FFF);
    border-radius: 2rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem 4rem;
    grid-template-areas: "area_textarea  area_img" "area_content  area_apply" "area_note  area_note"; }
    @media screen and (max-width: 1200px) {
      #opencampus-conference__inner {
        padding: 4rem;
        width: auto;
        grid-template-columns: auto;
        gap: 2rem;
        grid-template-areas: "area_img  " "area_textarea" "area_content" "area_apply" "area_note"; } }
    @media screen and (max-width: 600px) {
      #opencampus-conference__inner {
        padding: 2rem; } }
    #opencampus-conference__inner .opencampus-conference--textarea {
      grid-area: area_textarea; }
    #opencampus-conference__inner .opencampus-conference--title {
      font-size: 2.8rem;
      font-weight: 700;
      line-height: 1.5;
      margin: 0 0 2rem;
      padding: 1.5rem 2rem;
      text-align: center;
      border-radius: 1rem;
      background: var(--wp--custom_color_second, #F2F5F8);
      border: none; }
      @media screen and (max-width: 600px) {
        #opencampus-conference__inner .opencampus-conference--title {
          font-size: 2.1rem;
          padding: 1.5rem 1.5rem; } }
    #opencampus-conference__inner .opencampus-conference--text {
      font-size: 1.6rem;
      line-height: 1.625;
      margin: 0;
      text-align: justify;
      text-justify: inter-ideograph; }
    #opencampus-conference__inner .opencampus-conference--img {
      grid-area: area_img; }
      #opencampus-conference__inner .opencampus-conference--img img {
        width: 100%;
        height: auto; }
    #opencampus-conference__inner .opencampus-conference--content, #opencampus-conference__inner .opencampus-conference--apply {
      display: flex;
      margin: 0;
      padding: 0; }
      @media screen and (max-width: 600px) {
        #opencampus-conference__inner .opencampus-conference--content, #opencampus-conference__inner .opencampus-conference--apply {
          flex-wrap: wrap; } }
      #opencampus-conference__inner .opencampus-conference--content > dt, #opencampus-conference__inner .opencampus-conference--apply > dt {
        display: flex;
        flex: 0 0 12rem;
        width: 12rem;
        padding: 1rem 17rem;
        justify-content: center;
        align-items: center;
        margin: 0;
        padding: 0;
        background: var(--wp--custom_color_first, #3186CA);
        color: var(--wp--custom_color_second, #F2F5F8);
        text-align: center;
        font-size: 1.6rem;
        font-weight: 700;
        line-height: 1.625%; }
        @media screen and (max-width: 600px) {
          #opencampus-conference__inner .opencampus-conference--content > dt, #opencampus-conference__inner .opencampus-conference--apply > dt {
            flex: 0 0 100%;
            width: auto;
            padding: 1.5rem 1rem; } }
      #opencampus-conference__inner .opencampus-conference--content > dd, #opencampus-conference__inner .opencampus-conference--apply > dd {
        flex: 1 1 100%;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        margin: 0;
        text-align: justify;
        text-justify: inter-ideograph;
        padding: 1rem;
        background: var(--wp--custom_color_second, #F2F5F8);
        font-size: 1.6rem;
        line-height: 1.625; }
        @media screen and (max-width: 600px) {
          #opencampus-conference__inner .opencampus-conference--content > dd, #opencampus-conference__inner .opencampus-conference--apply > dd {
            flex: 0 0 100%; } }
    #opencampus-conference__inner .opencampus-conference--content {
      grid-area: area_content; }
    #opencampus-conference__inner .opencampus-conference--apply {
      grid-area: area_apply; }
    #opencampus-conference__inner .opencampus-conference--note {
      grid-area: area_note;
      font-size: 1.4rem;
      text-align: justify;
      text-justify: inter-ideograph;
      line-height: 1.5; }

#opencampus-access {
  margin: 6rem 0 0;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #opencampus-access {
      padding: 0 5rem; } }
  @media screen and (max-width: 600px) {
    #opencampus-access {
      padding: 0 2rem; } }
  #opencampus-access__inner {
    width: 100rem;
    margin: 0 auto; }
    @media screen and (max-width: 1200px) {
      #opencampus-access__inner {
        width: auto; } }
    #opencampus-access__inner .opencampus-access--address {
      font-size: 1.6rem;
      line-height: 1.625;
      margin: 0; }
    #opencampus-access__inner .opencampus-access--map {
      margin: 1rem 0 0; }
    #opencampus-access__inner .opencampus-access--note {
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.625;
      margin: 1rem 0 0; }

#opencampus-contact {
  margin: 6rem 0 0;
  padding: 0; }
  @media screen and (max-width: 1200px) {
    #opencampus-contact {
      padding: 0 5rem; } }
  @media screen and (max-width: 600px) {
    #opencampus-contact {
      padding: 0 2rem; } }
  #opencampus-contact__inner {
    width: 100rem;
    margin: 0 auto; }
    @media screen and (max-width: 1200px) {
      #opencampus-contact__inner {
        width: auto; } }
    #opencampus-contact__inner .opencampus-contact--text {
      font-size: 1.6rem;
      line-height: 1.625;
      margin: 0 0 3rem; }
    #opencampus-contact__inner .opencampus-contact--note {
      text-align: center;
      color: var(--required-color, #E50010);
      text-align: center;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.625;
      margin: 0 0 6rem; }

#contact-form,
#request-form,
#opencampus-form {
  margin: 6rem 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 4rem; }
  @media screen and (max-width: 600px) {
    #contact-form,
    #request-form,
    #opencampus-form {
      gap: 3rem; } }
  #contact-form > dl,
  #request-form > dl,
  #opencampus-form > dl {
    flex: 0 0 100%;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
    gap: 2rem; }
    @media screen and (max-width: 1200px) {
      #contact-form > dl,
      #request-form > dl,
      #opencampus-form > dl {
        display: block; } }
    #contact-form > dl.opencampus-form--grade, #contact-form > dl.opencampus-form--date,
    #request-form > dl.opencampus-form--grade,
    #request-form > dl.opencampus-form--date,
    #opencampus-form > dl.opencampus-form--grade,
    #opencampus-form > dl.opencampus-form--date {
      flex: 0 0 calc(50% - 2rem); }
      @media screen and (max-width: 600px) {
        #contact-form > dl.opencampus-form--grade, #contact-form > dl.opencampus-form--date,
        #request-form > dl.opencampus-form--grade,
        #request-form > dl.opencampus-form--date,
        #opencampus-form > dl.opencampus-form--grade,
        #opencampus-form > dl.opencampus-form--date {
          flex: 0 0 100%; } }
    #contact-form > dl > dt,
    #request-form > dl > dt,
    #opencampus-form > dl > dt {
      flex: 0 0 18rem;
      text-align: justify;
      text-justify: inter-ideograph;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.625;
      margin: 0;
      padding: 0;
      display: flex;
      align-items: center;
      align-content: center; }
      @media screen and (max-width: 1200px) {
        #contact-form > dl > dt,
        #request-form > dl > dt,
        #opencampus-form > dl > dt {
          flex: none;
          margin-bottom: 2rem; } }
      @media screen and (max-width: 600px) {
        #contact-form > dl > dt,
        #request-form > dl > dt,
        #opencampus-form > dl > dt {
          font-size: 1.6rem;
          margin-bottom: 1.5rem; } }
      #contact-form > dl > dt sup,
      #request-form > dl > dt sup,
      #opencampus-form > dl > dt sup {
        color: #E50010;
        font-size: 1em;
        vertical-align: middle; }
    #contact-form > dl > dd,
    #request-form > dl > dd,
    #opencampus-form > dl > dd {
      flex: 1 1 100%;
      font-size: 1.6rem;
      line-height: 1.625;
      margin: 0;
      padding: 0; }
      @media screen and (max-width: 1200px) {
        #contact-form > dl > dd,
        #request-form > dl > dd,
        #opencampus-form > dl > dd {
          flex: none; } }
      @media screen and (max-width: 600px) {
        #contact-form > dl > dd,
        #request-form > dl > dd,
        #opencampus-form > dl > dd {
          font-size: 1.6rem; } }
      #contact-form > dl > dd > dl,
      #request-form > dl > dd > dl,
      #opencampus-form > dl > dd > dl {
        display: flex;
        flex-wrap: wrap;
        gap: 0.6rem 2rem;
        margin: 0;
        padding: 0; }
        #contact-form > dl > dd > dl + dl,
        #request-form > dl > dd > dl + dl,
        #opencampus-form > dl > dd > dl + dl {
          margin: 2rem 0 0;
          padding: 0; }
        #contact-form > dl > dd > dl > dt,
        #request-form > dl > dd > dl > dt,
        #opencampus-form > dl > dd > dl > dt {
          flex: 0 0 100%;
          font-size: 1.4rem;
          line-height: 1.5;
          margin: 0;
          padding: 0; }
        #contact-form > dl > dd > dl > dd,
        #request-form > dl > dd > dl > dd,
        #opencampus-form > dl > dd > dl > dd {
          margin: 0;
          padding: 0; }
          #contact-form > dl > dd > dl > dd.contact-form--zipcode, #contact-form > dl > dd > dl > dd.contact-form--pref
          #contact-form > dl > dd > dl > dd.request-form--zipcode, #contact-form > dl > dd > dl > dd.request-form--pref,
          #request-form > dl > dd > dl > dd.contact-form--zipcode,
          #request-form > dl > dd > dl > dd.contact-form--pref
          #contact-form > dl > dd > dl > dd.request-form--zipcode,
          #request-form > dl > dd > dl > dd.request-form--pref,
          #opencampus-form > dl > dd > dl > dd.contact-form--zipcode,
          #opencampus-form > dl > dd > dl > dd.contact-form--pref
          #contact-form > dl > dd > dl > dd.request-form--zipcode,
          #opencampus-form > dl > dd > dl > dd.request-form--pref, #contact-form > dl > dd > dl > dd.contact-form--pref
          #request-form > dl > dd > dl > dd.request-form--zipcode,
          #request-form > dl > dd > dl > dd.contact-form--pref
          #request-form > dl > dd > dl > dd.request-form--zipcode,
          #opencampus-form > dl > dd > dl > dd.contact-form--pref
          #request-form > dl > dd > dl > dd.request-form--zipcode, #contact-form > dl > dd > dl > dd.contact-form--pref
          #opencampus-form > dl > dd > dl > dd.request-form--zipcode,
          #request-form > dl > dd > dl > dd.contact-form--pref
          #opencampus-form > dl > dd > dl > dd.request-form--zipcode,
          #opencampus-form > dl > dd > dl > dd.contact-form--pref
          #opencampus-form > dl > dd > dl > dd.request-form--zipcode {
            flex: 0 0 24rem; }
            @media screen and (max-width: 600px) {
              #contact-form > dl > dd > dl > dd.contact-form--zipcode, #contact-form > dl > dd > dl > dd.contact-form--pref
              #contact-form > dl > dd > dl > dd.request-form--zipcode, #contact-form > dl > dd > dl > dd.request-form--pref,
              #request-form > dl > dd > dl > dd.contact-form--zipcode,
              #request-form > dl > dd > dl > dd.contact-form--pref
              #contact-form > dl > dd > dl > dd.request-form--zipcode,
              #request-form > dl > dd > dl > dd.request-form--pref,
              #opencampus-form > dl > dd > dl > dd.contact-form--zipcode,
              #opencampus-form > dl > dd > dl > dd.contact-form--pref
              #contact-form > dl > dd > dl > dd.request-form--zipcode,
              #opencampus-form > dl > dd > dl > dd.request-form--pref, #contact-form > dl > dd > dl > dd.contact-form--pref
              #request-form > dl > dd > dl > dd.request-form--zipcode,
              #request-form > dl > dd > dl > dd.contact-form--pref
              #request-form > dl > dd > dl > dd.request-form--zipcode,
              #opencampus-form > dl > dd > dl > dd.contact-form--pref
              #request-form > dl > dd > dl > dd.request-form--zipcode, #contact-form > dl > dd > dl > dd.contact-form--pref
              #opencampus-form > dl > dd > dl > dd.request-form--zipcode,
              #request-form > dl > dd > dl > dd.contact-form--pref
              #opencampus-form > dl > dd > dl > dd.request-form--zipcode,
              #opencampus-form > dl > dd > dl > dd.contact-form--pref
              #opencampus-form > dl > dd > dl > dd.request-form--zipcode {
                flex: 0 0 100%; } }
          #contact-form > dl > dd > dl > dd.contact-form--search, #contact-form > dl > dd > dl > dd.contact-form--address, #contact-form > dl > dd > dl > dd.request-form--search, #contact-form > dl > dd > dl > dd.request-form--address,
          #request-form > dl > dd > dl > dd.contact-form--search,
          #request-form > dl > dd > dl > dd.contact-form--address,
          #request-form > dl > dd > dl > dd.request-form--search,
          #request-form > dl > dd > dl > dd.request-form--address,
          #opencampus-form > dl > dd > dl > dd.contact-form--search,
          #opencampus-form > dl > dd > dl > dd.contact-form--address,
          #opencampus-form > dl > dd > dl > dd.request-form--search,
          #opencampus-form > dl > dd > dl > dd.request-form--address {
            flex: 0 0 calc(100% - 26rem); }
            @media screen and (max-width: 600px) {
              #contact-form > dl > dd > dl > dd.contact-form--search, #contact-form > dl > dd > dl > dd.contact-form--address, #contact-form > dl > dd > dl > dd.request-form--search, #contact-form > dl > dd > dl > dd.request-form--address,
              #request-form > dl > dd > dl > dd.contact-form--search,
              #request-form > dl > dd > dl > dd.contact-form--address,
              #request-form > dl > dd > dl > dd.request-form--search,
              #request-form > dl > dd > dl > dd.request-form--address,
              #opencampus-form > dl > dd > dl > dd.contact-form--search,
              #opencampus-form > dl > dd > dl > dd.contact-form--address,
              #opencampus-form > dl > dd > dl > dd.request-form--search,
              #opencampus-form > dl > dd > dl > dd.request-form--address {
                flex: 0 0 100%; } }
  #contact-form .contact-search,
  #request-form .contact-search,
  #opencampus-form .contact-search {
    display: flex;
    height: 5rem;
    padding: 1rem 2rem;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    color: var(--wp--custom_color_h1, #FFF);
    background: var(--wp--custom_color_text, #000);
    font-size: 1.6rem;
    line-height: 1.625;
    border-radius: 1rem;
    transition: opacity 300ms ease-in-out; }
    #contact-form .contact-search:hover,
    #request-form .contact-search:hover,
    #opencampus-form .contact-search:hover {
      opacity: 0.8; }
  #contact-form #contact-address:where(#opencampus-form *),
  #contact-form #contact-grade:where(#opencampus-form *),
  #contact-form #contact-date:where(#opencampus-form *),
  #contact-form #contact-courtesy:where(#opencampus-form *),
  #request-form #contact-address:where(#opencampus-form *),
  #request-form #contact-grade:where(#opencampus-form *),
  #request-form #contact-date:where(#opencampus-form *),
  #request-form #contact-courtesy:where(#opencampus-form *),
  #opencampus-form #contact-address:where(#opencampus-form *),
  #opencampus-form #contact-grade:where(#opencampus-form *),
  #opencampus-form #contact-date:where(#opencampus-form *),
  #opencampus-form #contact-courtesy:where(#opencampus-form *) {
    width: 21.5rem; }
    @media screen and (max-width: 600px) {
      #contact-form #contact-address:where(#opencampus-form *),
      #contact-form #contact-grade:where(#opencampus-form *),
      #contact-form #contact-date:where(#opencampus-form *),
      #contact-form #contact-courtesy:where(#opencampus-form *),
      #request-form #contact-address:where(#opencampus-form *),
      #request-form #contact-grade:where(#opencampus-form *),
      #request-form #contact-date:where(#opencampus-form *),
      #request-form #contact-courtesy:where(#opencampus-form *),
      #opencampus-form #contact-address:where(#opencampus-form *),
      #opencampus-form #contact-grade:where(#opencampus-form *),
      #opencampus-form #contact-date:where(#opencampus-form *),
      #opencampus-form #contact-courtesy:where(#opencampus-form *) {
        width: 100%; } }
  #contact-form #contact-grade:where(#request-form *),
  #request-form #contact-grade:where(#request-form *),
  #opencampus-form #contact-grade:where(#request-form *) {
    width: 26rem; }
    @media screen and (max-width: 600px) {
      #contact-form #contact-grade:where(#request-form *),
      #request-form #contact-grade:where(#request-form *),
      #opencampus-form #contact-grade:where(#request-form *) {
        width: 100%; } }
  #contact-form #contact-pref:where(#contact-form *), #contact-form #contact-pref:where(#request-form *),
  #contact-form #contact-zipcode:where(#contact-form *),
  #contact-form #contact-zipcode:where(#request-form *),
  #request-form #contact-pref:where(#contact-form *),
  #request-form #contact-pref:where(#request-form *),
  #request-form #contact-zipcode:where(#contact-form *),
  #request-form #contact-zipcode:where(#request-form *),
  #opencampus-form #contact-pref:where(#contact-form *),
  #opencampus-form #contact-pref:where(#request-form *),
  #opencampus-form #contact-zipcode:where(#contact-form *),
  #opencampus-form #contact-zipcode:where(#request-form *) {
    width: 24rem; }
    @media screen and (max-width: 600px) {
      #contact-form #contact-pref:where(#contact-form *), #contact-form #contact-pref:where(#request-form *),
      #contact-form #contact-zipcode:where(#contact-form *),
      #contact-form #contact-zipcode:where(#request-form *),
      #request-form #contact-pref:where(#contact-form *),
      #request-form #contact-pref:where(#request-form *),
      #request-form #contact-zipcode:where(#contact-form *),
      #request-form #contact-zipcode:where(#request-form *),
      #opencampus-form #contact-pref:where(#contact-form *),
      #opencampus-form #contact-pref:where(#request-form *),
      #opencampus-form #contact-zipcode:where(#contact-form *),
      #opencampus-form #contact-zipcode:where(#request-form *) {
        width: 100%; } }
  #contact-form input[type="text"],
  #contact-form input[type="email"],
  #contact-form input[type="tel"],
  #contact-form select,
  #request-form input[type="text"],
  #request-form input[type="email"],
  #request-form input[type="tel"],
  #request-form select,
  #opencampus-form input[type="text"],
  #opencampus-form input[type="email"],
  #opencampus-form input[type="tel"],
  #opencampus-form select {
    font-size: 1.4rem;
    line-height: 1.5;
    height: 5rem;
    width: 100%;
    box-sizing: border-box;
    border-radius: 10px;
    border: 1px solid var(--wp--custom_color_first, #3186CA);
    padding: 1.2rem 2rem;
    border-radius: 1rem;
    background-color: #FFF; }
    @media screen and (max-width: 600px) {
      #contact-form input[type="text"],
      #contact-form input[type="email"],
      #contact-form input[type="tel"],
      #contact-form select,
      #request-form input[type="text"],
      #request-form input[type="email"],
      #request-form input[type="tel"],
      #request-form select,
      #opencampus-form input[type="text"],
      #opencampus-form input[type="email"],
      #opencampus-form input[type="tel"],
      #opencampus-form select {
        height: 5rem;
        padding: 1.2rem 1rem;
        font-size: 1.4rem; } }
    #contact-form input[type="text"]::placeholder,
    #contact-form input[type="email"]::placeholder,
    #contact-form input[type="tel"]::placeholder,
    #contact-form select::placeholder,
    #request-form input[type="text"]::placeholder,
    #request-form input[type="email"]::placeholder,
    #request-form input[type="tel"]::placeholder,
    #request-form select::placeholder,
    #opencampus-form input[type="text"]::placeholder,
    #opencampus-form input[type="email"]::placeholder,
    #opencampus-form input[type="tel"]::placeholder,
    #opencampus-form select::placeholder {
      font-size: 1.6rem;
      color: var(--border-bottom, #CCC); }
      @media screen and (max-width: 600px) {
        #contact-form input[type="text"]::placeholder,
        #contact-form input[type="email"]::placeholder,
        #contact-form input[type="tel"]::placeholder,
        #contact-form select::placeholder,
        #request-form input[type="text"]::placeholder,
        #request-form input[type="email"]::placeholder,
        #request-form input[type="tel"]::placeholder,
        #request-form select::placeholder,
        #opencampus-form input[type="text"]::placeholder,
        #opencampus-form input[type="email"]::placeholder,
        #opencampus-form input[type="tel"]::placeholder,
        #opencampus-form select::placeholder {
          font-size: 1.4rem; } }
    #contact-form input[type="text"] option,
    #contact-form input[type="email"] option,
    #contact-form input[type="tel"] option,
    #contact-form select option,
    #request-form input[type="text"] option,
    #request-form input[type="email"] option,
    #request-form input[type="tel"] option,
    #request-form select option,
    #opencampus-form input[type="text"] option,
    #opencampus-form input[type="email"] option,
    #opencampus-form input[type="tel"] option,
    #opencampus-form select option {
      font-size: 1.6rem; }
      @media screen and (max-width: 600px) {
        #contact-form input[type="text"] option,
        #contact-form input[type="email"] option,
        #contact-form input[type="tel"] option,
        #contact-form select option,
        #request-form input[type="text"] option,
        #request-form input[type="email"] option,
        #request-form input[type="tel"] option,
        #request-form select option,
        #opencampus-form input[type="text"] option,
        #opencampus-form input[type="email"] option,
        #opencampus-form input[type="tel"] option,
        #opencampus-form select option {
          font-size: 1.4rem; } }
    #contact-form input[type="text"]:focus,
    #contact-form input[type="email"]:focus,
    #contact-form input[type="tel"]:focus,
    #contact-form select:focus,
    #request-form input[type="text"]:focus,
    #request-form input[type="email"]:focus,
    #request-form input[type="tel"]:focus,
    #request-form select:focus,
    #opencampus-form input[type="text"]:focus,
    #opencampus-form input[type="email"]:focus,
    #opencampus-form input[type="tel"]:focus,
    #opencampus-form select:focus {
      box-shadow: 0 0 3px 1px inset var(--wp--custom_color_first, #3186CA); }
  #contact-form .wpcf7-form-control-wrap:has(select),
  #request-form .wpcf7-form-control-wrap:has(select),
  #opencampus-form .wpcf7-form-control-wrap:has(select) {
    position: relative; }
    #contact-form .wpcf7-form-control-wrap:has(select)::after,
    #request-form .wpcf7-form-control-wrap:has(select)::after,
    #opencampus-form .wpcf7-form-control-wrap:has(select)::after {
      display: block;
      position: absolute;
      content: "";
      right: 2rem;
      top: 50%;
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%);
      width: 2.6rem;
      height: 2.6rem;
      background: url("image/share/icon-arrow-b.svg") center center no-repeat;
      background-size: contain; }
  #contact-form select,
  #request-form select,
  #opencampus-form select {
    appearance: none;
    position: relative;
    padding: 1.2rem 4rem 1.2rem 2rem; }
    @media screen and (max-width: 600px) {
      #contact-form select,
      #request-form select,
      #opencampus-form select {
        width: 100%;
        padding: 1.2rem 4rem 1.2rem 1rem; } }
  #contact-form input[type="checkbox"],
  #request-form input[type="checkbox"],
  #opencampus-form input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    vertical-align: middle;
    color: inherit;
    font: inherit;
    background: transparent;
    padding: 0;
    margin: 0;
    border-radius: 0;
    text-align: inherit;
    text-transform: inherit; }
    #contact-form input[type="checkbox"] ~ .wpcf7-list-item-label,
    #request-form input[type="checkbox"] ~ .wpcf7-list-item-label,
    #opencampus-form input[type="checkbox"] ~ .wpcf7-list-item-label {
      position: relative;
      margin: 0;
      padding: 0 0 0 2em; }
      #contact-form input[type="checkbox"] ~ .wpcf7-list-item-label:hover,
      #request-form input[type="checkbox"] ~ .wpcf7-list-item-label:hover,
      #opencampus-form input[type="checkbox"] ~ .wpcf7-list-item-label:hover {
        cursor: pointer; }
      #contact-form input[type="checkbox"] ~ .wpcf7-list-item-label::before,
      #request-form input[type="checkbox"] ~ .wpcf7-list-item-label::before,
      #opencampus-form input[type="checkbox"] ~ .wpcf7-list-item-label::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        border: 1px solid var(--wp--custom_color_first, #3186CA);
        background-color: #FFF;
        width: 1.625em;
        height: 1.625em;
        box-sizing: border-box; }
    #contact-form input[type="checkbox"]:focus ~ .wpcf7-list-item-label::before,
    #request-form input[type="checkbox"]:focus ~ .wpcf7-list-item-label::before,
    #opencampus-form input[type="checkbox"]:focus ~ .wpcf7-list-item-label::before {
      box-shadow: 0 0 3px 1px inset #000; }
    #contact-form input[type="checkbox"]:checked ~ .wpcf7-list-item-label::after,
    #request-form input[type="checkbox"]:checked ~ .wpcf7-list-item-label::after,
    #opencampus-form input[type="checkbox"]:checked ~ .wpcf7-list-item-label::after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      margin: auto;
      line-height: 1;
      box-sizing: border-box;
      width: 1.45em;
      height: 0.95em;
      border-left: 3px solid #000;
      border-bottom: 3px solid #000;
      -webkit-transform: translate(0, -0.2em) rotate(-45deg);
      transform: translate(0, -0.2em) rotate(-45deg); }
  #contact-form input[type="radio"],
  #request-form input[type="radio"],
  #opencampus-form input[type="radio"] {
    -webkit-appearance: none;
    appearance: none;
    vertical-align: middle;
    color: inherit;
    font: inherit;
    background: transparent;
    padding: 0;
    margin: 0;
    border-radius: 0;
    text-align: inherit;
    text-transform: inherit; }
    #contact-form input[type="radio"] ~ .contact--plan--radiobutton,
    #request-form input[type="radio"] ~ .contact--plan--radiobutton,
    #opencampus-form input[type="radio"] ~ .contact--plan--radiobutton {
      position: relative;
      margin: 0;
      padding: 0 0 0 2em; }
      #contact-form input[type="radio"] ~ .contact--plan--radiobutton:hover,
      #request-form input[type="radio"] ~ .contact--plan--radiobutton:hover,
      #opencampus-form input[type="radio"] ~ .contact--plan--radiobutton:hover {
        cursor: pointer; }
      #contact-form input[type="radio"] ~ .contact--plan--radiobutton::before,
      #request-form input[type="radio"] ~ .contact--plan--radiobutton::before,
      #opencampus-form input[type="radio"] ~ .contact--plan--radiobutton::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        border: 1px solid var(--border-bottom, #CCC);
        background-color: #FFF;
        width: 1.875em;
        height: 1.875em;
        border-radius: 50%;
        box-sizing: border-box; }
    #contact-form input[type="radio"]:focus ~ .contact--plan--radiobutton::before,
    #request-form input[type="radio"]:focus ~ .contact--plan--radiobutton::before,
    #opencampus-form input[type="radio"]:focus ~ .contact--plan--radiobutton::before {
      box-shadow: 0 0 3px 1px inset #CCC; }
    #contact-form input[type="radio"]:checked ~ .contact--plan--radiobutton::after,
    #request-form input[type="radio"]:checked ~ .contact--plan--radiobutton::after,
    #opencampus-form input[type="radio"]:checked ~ .contact--plan--radiobutton::after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0.2em;
      margin: auto;
      border: 1px solid #000;
      background-color: #000;
      width: 1.2em;
      height: 1.2em;
      border-radius: 50%;
      box-sizing: border-box; }
  #contact-form input[type="submit"],
  #request-form input[type="submit"],
  #opencampus-form input[type="submit"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none; }
  #contact-form textarea,
  #request-form textarea,
  #opencampus-form textarea {
    font-size: 1.4rem;
    line-height: 1.5;
    height: 16rem;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid var(--wp--custom_color_first, #3186CA);
    padding: 1.2rem 2rem;
    border-radius: 1rem;
    background-color: #FFF; }
    @media screen and (max-width: 600px) {
      #contact-form textarea,
      #request-form textarea,
      #opencampus-form textarea {
        padding: 1.2rem 1rem;
        height: 15.3rem; } }
    #contact-form textarea:focus,
    #request-form textarea:focus,
    #opencampus-form textarea:focus {
      box-shadow: 0 0 3px 1px inset var(--wp--custom_color_first, #3186CA); }
    #contact-form textarea::placeholder,
    #request-form textarea::placeholder,
    #opencampus-form textarea::placeholder {
      font-size: 1.6rem;
      color: #CCC; }
      @media screen and (max-width: 600px) {
        #contact-form textarea::placeholder,
        #request-form textarea::placeholder,
        #opencampus-form textarea::placeholder {
          font-size: 1.4rem; } }
  #contact-form #contact-privacyarea,
  #contact-form #request-privacyarea,
  #contact-form #opencampus-privacyarea,
  #request-form #contact-privacyarea,
  #request-form #request-privacyarea,
  #request-form #opencampus-privacyarea,
  #opencampus-form #contact-privacyarea,
  #opencampus-form #request-privacyarea,
  #opencampus-form #opencampus-privacyarea {
    flex: 0 0 100%;
    text-align: center;
    margin: 4rem 0 0; }
    @media screen and (max-width: 600px) {
      #contact-form #contact-privacyarea,
      #contact-form #request-privacyarea,
      #contact-form #opencampus-privacyarea,
      #request-form #contact-privacyarea,
      #request-form #request-privacyarea,
      #request-form #opencampus-privacyarea,
      #opencampus-form #contact-privacyarea,
      #opencampus-form #request-privacyarea,
      #opencampus-form #opencampus-privacyarea {
        margin-top: 1rem; } }
    #contact-form #contact-privacyarea p,
    #contact-form #request-privacyarea p,
    #contact-form #opencampus-privacyarea p,
    #request-form #contact-privacyarea p,
    #request-form #request-privacyarea p,
    #request-form #opencampus-privacyarea p,
    #opencampus-form #contact-privacyarea p,
    #opencampus-form #request-privacyarea p,
    #opencampus-form #opencampus-privacyarea p {
      text-align: center;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.625; }
      #contact-form #contact-privacyarea p a,
      #contact-form #request-privacyarea p a,
      #contact-form #opencampus-privacyarea p a,
      #request-form #contact-privacyarea p a,
      #request-form #request-privacyarea p a,
      #request-form #opencampus-privacyarea p a,
      #opencampus-form #contact-privacyarea p a,
      #opencampus-form #request-privacyarea p a,
      #opencampus-form #opencampus-privacyarea p a {
        color: var(--wp--custom_color_text, #000); }
    #contact-form #contact-privacyarea .contact-agreearea,
    #contact-form #request-privacyarea .contact-agreearea,
    #contact-form #opencampus-privacyarea .contact-agreearea,
    #request-form #contact-privacyarea .contact-agreearea,
    #request-form #request-privacyarea .contact-agreearea,
    #request-form #opencampus-privacyarea .contact-agreearea,
    #opencampus-form #contact-privacyarea .contact-agreearea,
    #opencampus-form #request-privacyarea .contact-agreearea,
    #opencampus-form #opencampus-privacyarea .contact-agreearea {
      margin: 2rem 0 0; }
  #contact-form #contact-submitarea,
  #contact-form #request-submitarea,
  #contact-form #opencampus-submitarea,
  #request-form #contact-submitarea,
  #request-form #request-submitarea,
  #request-form #opencampus-submitarea,
  #opencampus-form #contact-submitarea,
  #opencampus-form #request-submitarea,
  #opencampus-form #opencampus-submitarea {
    flex: 0 0 100%;
    text-align: center;
    margin: 6rem 0 0; }
    @media screen and (max-width: 600px) {
      #contact-form #contact-submitarea,
      #contact-form #request-submitarea,
      #contact-form #opencampus-submitarea,
      #request-form #contact-submitarea,
      #request-form #request-submitarea,
      #request-form #opencampus-submitarea,
      #opencampus-form #contact-submitarea,
      #opencampus-form #request-submitarea,
      #opencampus-form #opencampus-submitarea {
        margin-top: 3rem; } }
    #contact-form #contact-submitarea p,
    #contact-form #request-submitarea p,
    #contact-form #opencampus-submitarea p,
    #request-form #contact-submitarea p,
    #request-form #request-submitarea p,
    #request-form #opencampus-submitarea p,
    #opencampus-form #contact-submitarea p,
    #opencampus-form #request-submitarea p,
    #opencampus-form #opencampus-submitarea p {
      text-align: center; }
    #contact-form #contact-submitarea #contact-submit,
    #contact-form #request-submitarea #contact-submit,
    #contact-form #opencampus-submitarea #contact-submit,
    #request-form #contact-submitarea #contact-submit,
    #request-form #request-submitarea #contact-submit,
    #request-form #opencampus-submitarea #contact-submit,
    #opencampus-form #contact-submitarea #contact-submit,
    #opencampus-form #request-submitarea #contact-submit,
    #opencampus-form #opencampus-submitarea #contact-submit {
      display: flex;
      width: 30rem;
      padding: 2rem 4rem;
      justify-content: center;
      align-items: center;
      gap: 1rem;
      border: none;
      border-radius: 9999rem;
      background: var(--wp--custom_color_first, #3186CA);
      color: var(--wp--custom_color_h1, #FFF);
      text-align: center;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.5;
      margin: 0 auto;
      text-shadow: none;
      transition: opacity 300ms ease-in-out; }
      @media screen and (max-width: 600px) {
        #contact-form #contact-submitarea #contact-submit,
        #contact-form #request-submitarea #contact-submit,
        #contact-form #opencampus-submitarea #contact-submit,
        #request-form #contact-submitarea #contact-submit,
        #request-form #request-submitarea #contact-submit,
        #request-form #opencampus-submitarea #contact-submit,
        #opencampus-form #contact-submitarea #contact-submit,
        #opencampus-form #request-submitarea #contact-submit,
        #opencampus-form #opencampus-submitarea #contact-submit {
          width: 100%; } }
      #contact-form #contact-submitarea #contact-submit::after,
      #contact-form #request-submitarea #contact-submit::after,
      #contact-form #opencampus-submitarea #contact-submit::after,
      #request-form #contact-submitarea #contact-submit::after,
      #request-form #request-submitarea #contact-submit::after,
      #request-form #opencampus-submitarea #contact-submit::after,
      #opencampus-form #contact-submitarea #contact-submit::after,
      #opencampus-form #request-submitarea #contact-submit::after,
      #opencampus-form #opencampus-submitarea #contact-submit::after {
        display: inline-block;
        content: "";
        width: 2rem;
        height: 2rem;
        margin: 0;
        vertical-align: middle;
        -webkit-mask-image: url("image/share/icon-arrow.svg");
        -webkit-mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-image: url("image/share/icon-arrow.svg");
        mask-size: contain;
        mask-repeat: no-repeat;
        mask-position: center;
        background-color: currentColor; }
      #contact-form #contact-submitarea #contact-submit:disabled,
      #contact-form #request-submitarea #contact-submit:disabled,
      #contact-form #opencampus-submitarea #contact-submit:disabled,
      #request-form #contact-submitarea #contact-submit:disabled,
      #request-form #request-submitarea #contact-submit:disabled,
      #request-form #opencampus-submitarea #contact-submit:disabled,
      #opencampus-form #contact-submitarea #contact-submit:disabled,
      #opencampus-form #request-submitarea #contact-submit:disabled,
      #opencampus-form #opencampus-submitarea #contact-submit:disabled {
        background: var(--calendar-color-date, #858484); }
        #contact-form #contact-submitarea #contact-submit:disabled:hover,
        #contact-form #request-submitarea #contact-submit:disabled:hover,
        #contact-form #opencampus-submitarea #contact-submit:disabled:hover,
        #request-form #contact-submitarea #contact-submit:disabled:hover,
        #request-form #request-submitarea #contact-submit:disabled:hover,
        #request-form #opencampus-submitarea #contact-submit:disabled:hover,
        #opencampus-form #contact-submitarea #contact-submit:disabled:hover,
        #opencampus-form #request-submitarea #contact-submit:disabled:hover,
        #opencampus-form #opencampus-submitarea #contact-submit:disabled:hover {
          cursor: not-allowed; }
      #contact-form #contact-submitarea #contact-submit:hover,
      #contact-form #request-submitarea #contact-submit:hover,
      #contact-form #opencampus-submitarea #contact-submit:hover,
      #request-form #contact-submitarea #contact-submit:hover,
      #request-form #request-submitarea #contact-submit:hover,
      #request-form #opencampus-submitarea #contact-submit:hover,
      #opencampus-form #contact-submitarea #contact-submit:hover,
      #opencampus-form #request-submitarea #contact-submit:hover,
      #opencampus-form #opencampus-submitarea #contact-submit:hover {
        cursor: pointer;
        opacity: 0.8; }

/*
//tahnks
#thanks {
  p {
    font-size: round($f_size * 1);//14
    font-weight: $fw_normal;
    line-height: 2.214;
    letter-spacing: $f_letter;
    @include justify;
    @include mq('sm') {
      font-size: 3.733vw;
      line-height: 1.714;
    }
  }
}
*/
/*
.wpcf7-form {
  p {}
  label {}
  .wpcf7-form-control-wrap {}
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  textarea {
    background-color: $c_white;
    font-size: round($f_size * 1);//16
    font-weight: $fw_normal;
    line-height: 1;
    letter-spacing: $f_letter;
    @include justify;
    padding: 14px 15px;

    box-sizing: border-box;
    width: 100%;
    border: 1px solid $wp_c_first;
    @include mq('sm') {
      font-size: 4.267vw;
      padding: 3.733vw 4vw;
    }
    &:focus {
      //標準
      //outline: dotted 1px $wp_c_second;
      //outline-offset: -2px;
      //color: $wp_c_second;
      //box-shadow: 0 0 3px 1px inset $wp_c_second;
    }
  }
  textarea {
    line-height: 1.75;
  }
  input[type="checkbox"] {
    & + .wpcf7-list-item-label {
      position: relative;
      margin: 0;
      padding: 0 0 0 1.5em;
      &:hover {
        cursor: pointer;
      }
      &::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        border: 1px solid $wp_c_text;
        width: 1.1em;
        height: 1.1em;
        box-sizing: border-box;
      }
    }
    &:focus {
      & + .wpcf7-list-item-label {
        &::before {
          box-shadow: 0 0 3px 1px inset $wp_c_first;
        }
      }
    }
    &:checked + .wpcf7-list-item-label {
      &::after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        line-height: 1;
        box-sizing: border-box;
        width: 1.25em;
        height: 0.75em;
        border-left: 3px solid $wp_c_second;
        border-bottom: 3px solid $wp_c_second;
        @include transform(translate(0,-0.2em) rotate(-45deg));
      }
    }
  }
  .contactform-select{
    label{
      @include mq('sm'){
      display: inline-flex;
      }
    }
  }
  input[type="radio"] {
    & + .wpcf7-list-item-label {
      position: relative;
      margin: 0;
      padding: 0 0 0 2em;
      &:hover {
        cursor: pointer;
      }
      &::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        border: 1px solid var(--wp--custom_color_text);
        width: 1.1em;
        height: 1.1em;
        box-sizing: border-box;
        border-radius: 50%;
      }
    }
    &:focus {
      & + .wpcf7-list-item-label {
        &::before {
          box-shadow: 0 0 3px 1px inset var(--wp--custom_color_first);
        }
      }
    }
    &:checked {
      & + .wpcf7-list-item-label::after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0.2em;
        margin: auto;
        box-sizing: border-box;
        width: 0.7em;
        height: 0.7em;
        border-radius: 50%;
        background: #000000;
      }
    }
  }
  .wpcf7-not-valid-tip {
    display: inline-block;
  }
  .contactform-submit__outer {
    text-align: center;
    margin: 80px 0 0;
    p {
      text-align: center;
    }
  }
  input[type="submit"] {
    font-size: round($f_size * 0.875);//14
    line-height: 1;
    font-weight: $fw_bold;
    color: $wp_c_text;
    background-color: $c_white;
    border: 1px solid $wp_c_first;
    border-radius: 9999rem;
    display: inline-block;
    padding: 15px 25px;
    box-sizing: border-box;
    text-decoration: none;
    @include hover-transition(300ms,all);
    @include mq('sm') {
      font-size: 3.733vw;
      padding: 4vw 6.667vw;
      min-width: inherit;
    }
    &:hover {
      color: $c_white;
      background-color: $wp_c_first;
    }
    &:disabled {
      color: $c_gray;
      border-color: $c_gray;
      &:hover {
        color: $c_gray;
        background-color: $c_white;
      }
    }
  }
  .wpcf7-spinner {
    display: none;
  }
}
*/
/*==============================================
◆70：WordPress専用
==============================================*/
.main-wpcontent {
  text-align: justify;
  font-size: 1.6rem;
  line-height: 1.5;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .main-wpcontent {
      font-size: 1.6rem;
      line-height: 1.5; } }

/* WP5以降 用 */
/* wp-includes/css/dlist/block-library/style.css 参照 変更の部分だけ抜き出し。 */
ol[style*="upper-alpha"] {
  list-style-type: none !important; }
  ol[style*="upper-alpha"] > li::before {
    counter-increment: ol-counter;
    content: counter(ol-counter,upper-alpha); }

ol[style*="lower-alpha"] {
  list-style-type: none !important; }
  ol[style*="lower-alpha"] > li::before {
    counter-increment: ol-counter;
    content: counter(ol-counter,llower-alpha); }

ol[style*="upper-roman"] {
  list-style-type: none !important; }
  ol[style*="upper-roman"] > li::before {
    counter-increment: ol-counter;
    content: counter(ol-counter,upper-roman); }

ol[style*="lower-roman"] {
  list-style-type: none !important; }
  ol[style*="lower-roman"] > li::before {
    counter-increment: ol-counter;
    content: counter(ol-counter,lower-roman); }

.alignleft {
  float: left;
  max-width: 100%;
  margin-right: 4rem;
  margin-bottom: 1em; }
  @media screen and (max-width: 600px) {
    .alignleft {
      float: none;
      margin-right: 0; } }

.alignright {
  float: right;
  max-width: 100%;
  margin-left: 4rem;
  margin-bottom: 1em; }
  @media screen and (max-width: 600px) {
    .alignright {
      float: none;
      margin-left: 0; } }

.aligncenter {
  display: block;
  max-width: 100%; }
  .aligncenter margin {
    left: auto;
    right: auto;
    bottom: 1em; }
  @media screen and (max-width: 600px) {
    .aligncenter {
      display: block;
      max-width: 100%; }
      .aligncenter margin {
        left: auto;
        right: auto;
        bottom: 1em; } }

.alignnone {
  max-width: 100%;
  height: auto;
  margin: 0 4rem 1em 0; }
  @media screen and (max-width: 600px) {
    .alignnone {
      max-width: 100%;
      height: auto;
      margin: 0 auto 1em; } }

.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  max-width: 100%;
  height: auto; }

embed,
iframe,
object,
video {
  max-width: 100%; }

.is-type-video .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }

.is-type-video .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%; }

.wp-block-heading + .wp-block-heading, .wp-block-heading + .wp-block-media-text, .wp-block-columns + .wp-block-heading, .wp-block-column + .wp-block-heading, .alignright + .wp-block-heading, .alignleft + .wp-block-heading, .wp-block-heading + table {
  margin-top: 0; }

.wp-block-media-text {
  margin: 4rem 0; }
  @media screen and (max-width: 600px) {
    .wp-block-media-text {
      margin: 4rem 0; } }

.wp-block-image {
  margin-top: 4rem;
  margin-bottom: 4rem; }
  @media screen and (max-width: 600px) {
    .wp-block-image {
      margin-top: 4rem;
      margin-bottom: 4rem; } }
  .wp-block-image.alignright, .wp-block-image.alignleft {
    margin-top: 0; }
  .wp-block-image img {
    height: auto; }
  .wp-block-image.radius-none img {
    border-radius: 0; }
  .wp-block-image figcaption {
    font-size: 1.4rem;
    margin-top: 1rem;
    text-align: center; }
    @media screen and (max-width: 600px) {
      .wp-block-image figcaption {
        font-size: 1.4rem;
        margin-top: 1rem; } }

.wp-block-gallery {
  font-size: 5rem; }
  .wp-block-gallery .blocks-gallery-image figcaption,
  .wp-block-gallery .blocks-gallery-item figcaption {
    box-sizing: border-box; }
  @media screen and (max-width: 600px) {
    .wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
      font-size: 1rem; } }

.wp-block-quote cite {
  font-size: 1.4rem; }
.wp-block-quote.is-style-plain {
  border: none;
  background-color: var(--wp--custom_color_first, #3186CA);
  color: var(--wp--custom_color_h1, #FFF); }
  .wp-block-quote.is-style-plain a {
    color: var(--wp--custom_color_h1, #FFF); }

.wp-block-pullquote {
  background-color: var(--wp--custom_color_bg, #FFF);
  border: 1px solid var(--wp--custom_color_text, #000);
  margin-top: 2rem;
  margin-bottom: 2rem;
  padding: 1.5rem; }
  @media screen and (max-width: 600px) {
    .wp-block-pullquote {
      margin-top: 2rem;
      margin-bottom: 2rem;
      padding: 1.5rem; } }
  .wp-block-pullquote blockquote {
    border: none;
    background: none;
    margin: 0;
    padding: 0;
    border-radius: 0; }
    .wp-block-pullquote blockquote cite {
      font-size: 1.4rem; }

.main-wpcontent .wp-block-footnotes {
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: var(--wp--custom_color_second, #F2F5F8); }
  @media screen and (max-width: 600px) {
    .main-wpcontent .wp-block-footnotes {
      padding: 1.5rem;
      border-radius: 1.5rem; } }

.wp-block-code {
  font-size: 1.2rem;
  position: relative;
  display: block;
  overflow: auto;
  padding: 2rem;
  white-space: pre;
  min-width: 100%;
  overflow-x: auto;
  background-color: var(--wp--custom_color_second, #F2F5F8);
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--border-bottom, #CCC); }
  @media screen and (max-width: 600px) {
    .wp-block-code {
      font-size: 1.2rem;
      padding: 1.5rem; } }
  .wp-block-code::-webkit-scrollbar {
    width: 4px;
    height: 4px; }
  .wp-block-code::-webkit-scrollbar-track {
    background: #F2F5F8;
    border-radius: 2px; }
  .wp-block-code::-webkit-scrollbar-thumb {
    background: var(--wp--custom_color_first, #3186CA);
    border-radius: 2px; }
  .wp-block-code code {
    display: inline-block;
    text-wrap: nowrap;
    word-break: break-all;
    line-height: 1.2; }

.wp-block-video figcaption {
  text-align: center; }

.wp-block-separator:not(.is-style-wide) {
  width: 10rem;
  margin-left: auto;
  margin-right: auto; }
.wp-block-separator.is-style-dots {
  border-top: 3px dotted !important; }
  .wp-block-separator.is-style-dots::before {
    display: none; }

.wp-block-columns {
  margin-top: 4rem;
  margin-bottom: 4rem; }
  @media screen and (max-width: 600px) {
    .wp-block-columns {
      margin-top: 4rem;
      margin-bottom: 4rem; } }
  .wp-block-columns:first-child {
    margin-top: 0; }
  .wp-block-columns:last-child {
    margin-bottom: 0; }

.wp-block-column {
  box-sizing: border-box; }
  .wp-block-column > :first-child {
    margin-top: 0; }
  .wp-block-column > :last-child {
    margin-bottom: 0; }

.wp-block-group.has-background {
  padding: 2em 1em;
  border: 1px solid #000; }
  .wp-block-group.has-background > :first-child {
    margin-top: 0; }
  .wp-block-group.has-background > :last-child {
    margin-bottom: 0; }

.responsive-table {
  margin: 4rem 0; }
  @media screen and (max-width: 600px) {
    .responsive-table {
      margin: 4rem 0; } }
  @media screen and (max-width: 1200px) {
    .responsive-table {
      text-align: center;
      overflow-x: scroll;
      overflow-y: hidden; }
      .responsive-table::-webkit-scrollbar {
        height: 4px; }
      .responsive-table::-webkit-scrollbar-track {
        background: var(--wp--custom_color_h1, #FFF);
        border-radius: 2px; }
      .responsive-table::-webkit-scrollbar-thumb {
        background: var(--wp--custom_color_first, #3186CA);
        border-radius: 2px; } }
  .responsive-table table {
    margin: 0; }

.wp-block-table {
  margin: 4rem 0; }
  @media screen and (max-width: 600px) {
    .wp-block-table {
      margin: 4rem 0; } }
  .wp-block-table .responsive-table {
    margin: 0; }
  .wp-block-table table {
    margin: 0; }
    @media screen and (max-width: 600px) {
      .wp-block-table table.has-fixed-layout {
        table-layout: auto; } }
  .wp-block-table thead {
    border: none; }
  .wp-block-table th, .wp-block-table td {
    border-width: 1px;
    border-style: solid;
    border-color: var(--border-bottom, #CCC);
    padding: 1rem; }
    .wp-block-table th:has(.has-inline-color), .wp-block-table td:has(.has-inline-color) {
      text-align: left; }
    .wp-block-table th .has-inline-color, .wp-block-table td .has-inline-color {
      padding: 0.2rem 1rem;
      border-radius: 999rem;
      display: inline-block; }
  .wp-block-table.is-style-stripes th, .wp-block-table.is-style-stripes td {
    border-width: 1px;
    border-style: solid;
    border-color: var(--border-bottom, #CCC); }
  .wp-block-table.is-style-stripes td {
    background-color: transparent; }
  .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: transparent; }
  .wp-block-table.is-style-stripes tbody tr:nth-child(even) {
    background-color: var(--wp--custom_color_second, #F2F5F8); }
  .wp-block-table figcaption {
    font-size: 1.4rem;
    margin-top: 0.5rem;
    text-align: center; }
    @media screen and (max-width: 600px) {
      .wp-block-table figcaption {
        font-size: 1.4rem;
        margin-top: 0.5rem; } }

@media screen and (max-width: 600px) {
  .wp-block-audio audio {
    min-width: inherit; } }

.has-drop-cap::after {
  content: "";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0; }
.has-drop-cap:not(:focus):first-letter {
  float: left;
  font-size: 4em;
  line-height: .68;
  font-weight: 100;
  margin: 0 .1em 0 0;
  text-transform: uppercase;
  font-style: normal; }

.wp-block-buttons {
  margin-top: 4rem;
  margin-bottom: 4rem; }
  @media screen and (max-width: 600px) {
    .wp-block-buttons {
      margin-top: 4rem;
      margin-bottom: 4rem; } }

.wp-block-button__link {
  position: relative;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  color: #FFF;
  background-color: var(--wp--custom_color_first, #3186CA);
  border: 1px solid var(--wp--custom_color_first, #3186CA);
  border-radius: 9999rem;
  display: inline-block;
  padding: 2rem 4rem;
  box-sizing: border-box; }
  @media screen and (max-width: 600px) {
    .wp-block-button__link {
      padding: 2rem 3rem;
      min-width: inherit; } }
  .main-wpcontent .wp-block-button__link {
    text-decoration: none;
    color: var(--wp--custom_color_h1, #FFF); }
  .wp-block-button .wp-block-button__link:hover {
    opacity: 0.8; }
  .is-style-outline .wp-block-button__link:hover {
    opacity: 0.8; }
  .is-style-outline > .wp-block-button__link {
    padding: 2rem 4rem; }
    @media screen and (max-width: 600px) {
      .is-style-outline > .wp-block-button__link {
        padding: 2rem 3rem; } }
    .is-style-outline > .wp-block-button__link:not(.has-text-color) {
      color: var(--wp--custom_color_first, #3186CA); }
  .wp-block-button__link::after {
    display: inline-block;
    content: "";
    width: 2.5rem;
    height: 2.5rem;
    margin: 0 0 0 1rem;
    vertical-align: middle;
    -webkit-mask-image: url("image/share/icon-arrow.svg");
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-image: url("image/share/icon-arrow.svg");
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    background-color: currentColor; }

.wp-block-cover,
.wp-block-cover-image {
  box-sizing: border-box; }

ul.wp-block-social-links li {
  margin: 0;
  padding: 0; }
  ul.wp-block-social-links li::before {
    display: none; }

.wp-block-file .wp-block-file__button {
  background-color: var(--wp--custom_color_first, #3186CA);
  color: var(--wp--custom_color_h1, #FFF);
  text-decoration: none; }

.wp-block-preformatted {
  max-width: 100%;
  overflow-x: scroll; }
  .wp-block-preformatted::-webkit-scrollbar {
    width: 4px;
    height: 4px; }
  .wp-block-preformatted::-webkit-scrollbar-track {
    background: #F2F5F8;
    border-radius: 2px; }
  .wp-block-preformatted::-webkit-scrollbar-thumb {
    background: var(--wp--custom_color_second, #F2F5F8);
    border-radius: 2px; }

.wp_pagenavi_out {
  margin: 8rem 0 0;
  text-align: center; }
  @media screen and (max-width: 600px) {
    .wp_pagenavi_out {
      margin-top: 6rem; } }

.wp-pagenavi a,
.wp-pagenavi span {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 3rem;
  text-decoration: none;
  text-align: center;
  color: #3186CA;
  border: 1px solid #3186CA;
  border: none; }
  @media screen and (max-width: 600px) {
    .wp-pagenavi a,
    .wp-pagenavi span {
      font-size: 1.6rem;
      line-height: 3rem; } }
.wp-pagenavi span.current,
.wp-pagenavi a:hover {
  border: none;
  background-color: var(--wp--custom_color_first, #3186CA);
  font-weight: 400;
  color: var(--wp--custom_color_h1, #FFF); }

@media screen and (max-width: 600px) {
  .fb_iframe_widget > span {
    max-width: 100%; } }

@media screen and (max-width: 600px) {
  iframe.instagram-media {
    min-width: inherit !important; } }

.grecaptcha-badge {
  z-index: 1050; }

.main-wpcontent .seinou-text-column div {
  margin: 0;
  padding: 0;
  columns: 2;
  column-gap: 7rem;
  column-fill: balance; }
  @media screen and (max-width: 900px) {
    .main-wpcontent .seinou-text-column div {
      columns: auto; } }
  .main-wpcontent .seinou-text-column div p {
    margin: 0 0 1em;
    padding: 0; }
    .main-wpcontent .seinou-text-column div p:last-child {
      margin-bottom: 1em; }
    .main-wpcontent .seinou-text-column div p::before {
      content: none; }

/* CSS Document */
/* CSS Document */
/*==============================================
◆90：プリント用
==============================================*/
@media print {
  @page {
    margin: 12.7mm 9.7mm;
    page-break-before: always; }
  body {
    background-image: none;
    max-width: 1200px;
    -webkit-print-color-adjust: exact; }

  #header, footer {
    position: relative; }

  #mobile, #sidr {
    display: none; }

  a:link:after,
  a:visited:after {
    /*
    content: " (" attr(href) ") ";
    font-size: 90%;
    */ }

  #back-to-top,
  #side-menu,
  #sidr {
    display: none; }

  #map-root img,
  #map_canvas img {
    max-width: none !important;
    zoom: 1; }

  #section-map {
    page-break-before: always; }

  #map-root {
    display: inline-block;
    width: 100%; }

  .map-section {
    page-break-after: always; }

  #mainScroll,
  #top-slide {
    margin-top: 0; }

  @supports (-ms-ime-align: auto) {
    /*
        .h1-area .h1-area-inner {
          width: 100%;
          padding: 1.5em;
          flex-direction: column-reverse;
        }
        .h1-area .h1-area-inner > .h1-img-area {
          flex: 0 0 auto;
          width: 100%;
          margin-right: 0;
          max-width: inherit;
        }
        .h1-area .h1-area-inner > .h1-text-area {
          flex: 0 0 auto;
          width: 100%;
          margin-bottom: 0;
          padding: 2em;
          max-width: inherit;
        }
        .h1-area .h1-area-inner > .h1-img-area img {
          width: 100%;
          height: auto;
        }
        .main-wpcontent .wp-block-button__link {
          color: $c_off_black;
    //      border: 1px solid $c_tertiary;
        }
        #nav-global li.nav-global-recruit a {
          background: none;
          display: inline;
          padding: inherit;
          color: $c_off_black;
        }
        #top #main-area section .top-type1 .top-type1-img {
          flex: 0 0 68%;
          max-width: 68%;
        }
    */ } }

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