/*
Theme Name: Lightning Child Sample
Theme URI:
Template: lightning
Description:
Author:
Tags:
Version: 0.6.1
*/

.vk_borderBox.select-language {
	background-color: #ffffe0 !important;
}

:where(body .is-layout-flex) {
    gap: 12px;
}
::placeholder {
    color: #CCC;
}
.site-body {
    padding: 0 0.3rem;
}
.site-header-logo img {
    width: inherit;
}

/* バーガーボタンに「MENU」表示 */
.vk-mobile-nav-menu-btn {
  text-indent: 5px;
  font-size: 8px;
  padding-top: 28px;
  overflow: visible;
  border: none;
  background-position: top;
  height: 40px;
}
.vk-mobile-nav-menu-btn.menu-open {
  border: none;
}
.vk-mobile-nav {
  padding-top: 50px;
}

/* ナビゲーションボタン */
/* .vk-mobile-nav-menu-btn {
    display: block !important;
    top: auto;
    bottom: 10px;
    left: 0;
    width: 46px;
    height: 46px;
    background-color: #FFF;
} */
.vk-mobile-nav-menu-btn.position-right {
    left: 5px;
}

/* 資料：日本国旗 */
.ja-box {
    position: relative;
}
#ja-doc {
    display:none;
    position: absolute;
    left: 0;
    top: 0;
}
#ja-doc ul {
    list-style:none;width: 300px;
}
#ja-doc ul li a {
    display: block;
}

/* ヘッダーメニュー */
ul.global-nav-list > li {
    height: 1.4rem;
    margin: auto 0;
}
ul.global-nav-list > li a {
    border-right:1px solid #000;
    padding: 5px !important;
    line-height: 1rem;
}
ul.global-nav-list > li:last-child a {
    border-right: none;
}

/* ヘッダーサブメニュー */
ul.sub-menu li.menu-item {
    width: 100% !important;
}
ul.sub-menu li.menu-item a {
    font-size: 0.9rem;
    /* height: 3rem;
    line-height: 2.8rem; */
    line-height: 2.4rem;
    display: block;
    padding-left: 1rem !important;
}

/* モバイルメニュー */
.vk-mobile-nav {
    display: block !important;
    overflow: hidden;
}
.vk-mobile-nav-menu-outer {
    text-align: center;
    font-size: 1.2rem;
}

/* アイキャッチ */
.page-header {
	background: url(/img/common/page_header.jpg) no-repeat center center !important;
    background-size: cover !important;
}
.page-header-title > span {
    font-size: 1.4rem;
    font-weight: normal;
}

/* トップページ */
.full-width{
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
}
.full-width .c-row>.c-row__col {
    margin-bottom: 10px;
}
.full-width img {
    max-height: 220px;
}
.w-100 {
    width: 100%;
}
.wp-block-cover {
    min-height: 100%;
}
h2 {
    font-size: 1.4rem !important;
}

.facilities .smb-panels__item__body{
    margin: 5px;
    padding: 0 !important;
    border: 1px solid #EEE;
}

/* 動画でわかる、資料でわかる */
.select-language .vk_borderBox_title:after {
    content: "SELECT LANGUAGE 国旗をクリックしてください" !important;
}

/* モバイルナビ：スクロールバー */
.vk-mobile-nav {
    overflow: auto; 
}

/* SPフッターナビ */
/* .site-footer {
    margin-bottom: 60px;
}
#global-nav {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #000;
    opacity: 0.9;
}
#global-nav li {
    padding: 10px 0;
    margin: 0 5px;
} */

/* 請求ボタン */
.application-btn {
    margin: 0;
    width: 120px;
    height: 46px;
    border: none;
    border-radius: 5px;
    font-size: 1rem;
    line-height: 3.3rem;
    color: #FFF;
}
.application-btn-color1 {
    background-color: #0000FF;
}
.application-btn-color2 {
    background-color: #FF0000;
}

/* scrill to top */
.progress-wrap.btn-right-side {
    right: 5px !important;
    bottom: 10px;
    z-index: 1000;
}

/* スケジュール */
.schedule-table tr {
    min-height: 100px;
}
.schedule-table td:nth-of-type(1) {
    width: 14%;
    background-color: #ffa150;
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    color: #FFF;
}
.schedule-table td:nth-of-type(2) {
    width: 46%;
    vertical-align: top;
}
.schedule-table td:nth-of-type(3) {
    width: 40%;
    vertical-align: middle;
}
.schedule-table td:nth-of-type(3) img {
    width: 100% !important;
}

/* 時間割 */
.timetable tr td {
    height: 36px;
}

/* Google Mapを囲う要素 */
.map {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 75%; /* 比率を4:3に固定 */
}
/* Google Mapのiframe */
.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* 学科紹介：就職 */
.smb-accordion .place-of-employment {
    --smb-accordion--title-background-color: #ffa150;
    color: #FFF;
}
.smb-accordion .place-of-employment .smb-accordion__item__body {
    padding: 10px 0 0;
    color: #000;
}
.license {
    font-size: 0.9rem;
}
.introduction-shingakuritsu {
    position: relative;
}
.introduction-jisseki {
    font-size: 1.8rem !important;
    position: absolute;
    bottom: 10%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

/* AO入試の流れ */
ul.ao_flow {
    list-style: none !important;
    padding: 0;
}
.ao_flow li {
    width: 80%;
    margin: 0 auto 20px;
    padding: 10px 0;
    background-color: #fff8f9;
    border: solid 1px #ff798f;
    text-align: center;
    position: relative;
}
.ao_flow li::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: solid 10px transparent;
    border-top: solid 10px #ff798f;
    position: absolute;
    bottom: -26px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
}
.ao_flow li:last-child::before {
    content: none;
}

/* 資料請求・オープンキャンパス参加申込 */
.required {
    color: #FF0000;
}
.contact-form {
    display: flex;
    flex-direction: column;
}
.contact-form .item {
    width: 100%;
    background-color: #EEE;
    padding: 10px;
}
.contact-form .input {
    width: 100%;
}
.contact-form p {
    margin-bottom: 0;
}
.contact-form .input.radio {
    margin: 10px 0;
    padding: 0;
}
.contact-form .input p {
    margin: 10px 0;
    padding: 0;
}
.wpcf7-previous {
    font-size: 1rem;
    height: 40px;
    border: none;
    border-radius: 5px;
    background-color: #CCC;
    color: #000;
    padding: 10px 32px;
    margin-top: 20px;
    margin-bottom: 10px;
}

/* サイトマップ */
.sitemap {
    list-style: none;
    padding-left: 0;
}
.sitemap ul {
    list-style: none;
    border-top: 1px solid #CCC;
    margin-top: 10px;
    margin-bottom: 0;
}
.sitemap li {
    padding: 10px;
    margin-bottom: 10px;
    background-color: #EEE;
}
.sitemap ul li {
    padding: 5px;
    margin-bottom: 0;
}
.sitemap li:before {
    content: "\f138";
    font-family: FontAwesome;
    margin-right: 0.5rem;
}
.sitemap ul li:before {
    content: "\f105";
    font-family: FontAwesome;
    margin-right: 0.5rem;
}

/* 法人情報 リンク */
.edu-corp a:link,
.edu-corp a:visited {
    color: #0000EE;
    text-decoration: underline;
}
.edu-corp a:hover {
    color: #FFA500;
}
.edu-corp a:active {
    color: #FF0000;
    text-decoration: underline;
}

/* モバイル専用 */
@media (max-width: 575.98px) {
    /* バーガーボタンに干渉するためロゴずらす */
    .site-header-logo img {
        margin: 0 0 0 auto;
    }
}
/* タブレット専用 */
@media (min-width: 576px) and (max-width: 991.98px) {
    /*  */
}
/* PC専用 */
@media (min-width: 992px) {

    /* ヘッダーコンテナ */
    .site-header-container {
        margin-left: 10px;
        height: 70px;
    }

    /* ヘッダーロゴ */
    .site-header-logo {
        padding-top: 10px;
        max-width: 300px;
    }

    /* 請求ボタン*/
    .application-btn {
        width: 160px;
        line-height: 3.0rem;
    }

    /* メニューボタン */
    .vk-mobile-nav-menu-btn {
        top: 5px;
        bottom: auto;
    }
    .vk-mobile-nav-menu-btn.position-right {
        left: auto;
    }

    /* PCヘッダーナビ */
    #global-nav {
        position: relative;
        background-color: transparent;
    }
    #global-nav ul li a {
        padding: 2px 3px;
    }
    /* PCスクロールナビ */
    .header_scrolled .site-header-logo {
        display: block;
    }

    /* フッター */
    .site-footer {
        margin-bottom: 0;
    }

    /* アイキャッチ */
    .page-header {
        height: 200px;
    }

    /* トップ */
    .select-language .wp-element-caption {
        font-size: 1rem;
    }
    .full-width img {
        max-height: 100%;
    }
    .select-language h4.vk_borderBox_title:after {
        content: "SELECT LANGUAGE （国旗をクリックしてください）" !important;
    }

    /* スケジュール */
    .schedule-table tr {
        height: 180px;
    }

    /* 在校生・卒業生の声*/
    .current-student .smb-items__item__title {
        background-color: #ffa151;
        padding: 10px;
        height: 100px;
    }
    .graduate .smb-items__item__title {
        background-color: #6dbed1;
        padding: 10px;
        height: 120px;
    }
    
    /* 学科紹介：就職 */
    .license {
        font-size: 1.0rem;
    }
    .introduction-jisseki {
        font-size: 2.4rem !important;
    }

    /* AO入試の流れ */
    .ao_flow {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
    .ao_flow li {
        -webkit-writing-mode: vertical-lr;
            -ms-writing-mode: tb-lr;
                writing-mode: vertical-lr;
        margin: 0 20px 50px;
        width: auto;
        padding: 10px 15px;
    }
    .ao_flow li::before {
        border: solid 10px transparent;
        border-left: solid 10px #ff798f;
        bottom: 50%;
        left: auto;
        right: -38px;
        -webkit-transform: translate(0, 50%);
                transform: translate(0, 50%);
    }
    .ao_flow li:last-child::before {
        content: none;
    }

    /* 資料請求・オープンキャンパス参加申込 */
    .contact-form {
        flex-direction: row;
    }
    .contact-form .item {
        width: 30%;
        text-align: center;
        background-color: #FFF;
        padding-top: 35px;
    }
    .contact-form .item.confirm {
        padding-top: 25px;
    }
    .contact-form .input {
        width: 70%;
        padding-top: 5px;
    }
    .contact-form .input.radio {
        margin: 0;
        padding: 20px 0 20px 0;
    }
    .contact-form .input p {
        margin: 20px 0;
        padding: 0;
    }
    .contact-form .input.radio p {
        margin: 10px 0;
        padding: 0;
    }
}

/* オープンキャンパス・資料請求 */
#autozip {
    display: none !important;   /* ハイフンなしで入力！非表示 */
}
.open_campus_title {
  text-align: center;
  padding: 16px 0;
  color: #fff;
  font-weight: normal;
  margin-bottom: 20px;
  background-color: #6DBED1;
}

.open_campus_info {
  border-bottom: dotted 1px #ccc;
}
.open_campus_info dt {
  display: inline-block;
  background-color: #000;
  color: #fff;
  border-radius: 4px;
  padding: 5px 20px;
  margin-bottom: 8px;
}
.open_campus_info dd {
  margin: 0 0 10px 0;
  line-height: 1.4;
}
.open_campus_info dd span {
  font-weight: bold;
}

.dl_odd {
  background-color: #f5f5f5;
}

.open_campus_form, .doc-request_form {
  margin: 0;
  padding: 10px;
}
.open_campus_form dt, .doc-request_form dt {
  margin: 0 0 8px;
  font-size: 12px;
}
.open_campus_form dd, .doc-request_form dd {
  margin: 0;
}
.open_campus_form dd input[type=text], .open_campus_form dd input[type=email], .open_campus_form dd input[type=tel], .open_campus_form dd textarea, .doc-request_form dd input[type=text], .doc-request_form dd input[type=email], .doc-request_form dd input[type=tel], .doc-request_form dd textarea {
  border: none;
  border-bottom: solid 1px #ccc;
  width: 100%;
  padding: 5px;
  font-size: 15px;
  background: none;
  outline: 0;
  -webkit-transition: border 0.4s ease 0s;
  transition: border 0.4s ease 0s;
}
.open_campus_form dd input[type=text]:focus, .open_campus_form dd input[type=email]:focus, .open_campus_form dd input[type=tel]:focus, .doc-request_form dd input[type=text]:focus, .doc-request_form dd input[type=email]:focus, .doc-request_form dd input[type=tel]:focus {
  border-bottom: solid 1px #6DBED1;
}
.open_campus_form dd select, .doc-request_form dd select {
  border: none;
  outline: 0;
  border-bottom: solid 1px #ccc;
  border-radius: 0;
  background: none;
  font-size: 15px;
  width: 100%;
  padding: 5px;
  -webkit-transition: border 0.4s ease 0s;
  transition: border 0.4s ease 0s;
}
.open_campus_form dd select:focus, .doc-request_form dd select:focus {
  border-bottom: solid 1px #6DBED1;
}
.open_campus_form dd input[type=text].desired_time, .doc-request_form dd input[type=text].desired_time {
  width: 25%;
}

.form_btn_row {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.form_btn_row input {
  display: block;
  width: 80%;
  padding: 10px;
  background-color: #333;
  color: #fff;
  text-align: center;
  border: none;
  border-radius: 4px;
  margin: 0 5px;
}
.form_btn_row input.colored_pink {
  background-color: #FFA150;
}

@media screen and (min-width: 576px) {
  .open_campus_title {
    padding: 16px 0;
    margin-bottom: 20px;
  }

  .open_campus_info dt {
    padding: 5px 20px;
    margin-bottom: 8px;
  }
  .open_campus_info dd {
    margin: 0 0 10px 0;
  }

  .open_campus_form, .doc-request_form {
    margin: 0 auto;
    padding: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .open_campus_form dt, .doc-request_form dt {
    margin: 0;
    font-size: 14px;
    width: 24%;
    background-color: #6DBED1;
    color: #fff;
    border-radius: 4px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 5px 0;
  }
  .open_campus_form dd, .doc-request_form dd {
    margin: 0;
    width: 76%;
    padding-left: 16px;
  }
  .open_campus_form dd input[type=text], .open_campus_form dd input[type=email], .open_campus_form dd input[type=tel], .open_campus_form dd textarea, .doc-request_form dd input[type=text], .doc-request_form dd input[type=email], .doc-request_form dd input[type=tel], .doc-request_form dd textarea {
    padding: 5px;
    font-size: 15px;
  }
  .open_campus_form dd select, .doc-request_form dd select {
    font-size: 15px;
    padding: 5px;
  }
  .open_campus_form dd input[type=text].desired_time, .doc-request_form dd input[type=text].desired_time {
    width: 10%;
  }

  .form_btn_row {
    margin-top: 20px;
  }
  .form_btn_row input {
    width: 48%;
    padding: 15px 10px;
    margin: 0 5px;
  }
}
@media screen and (min-width: 992px) {
  .open_campus_form, .doc-request_form {
    width: 800px;
    padding: 15px;
  }
  .open_campus_form dt, .doc-request_form dt {
    font-size: 15px;
  }
  .open_campus_form dd, .doc-request_form dd {
    margin: 0;
    padding-left: 16px;
  }

  .form_btn_row {
    margin-top: 40px;
  }
}


