@charset "UTF-8";

:root {
    --main-color: #69BD83;
    --black-color: #1C1C1C;
}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    font-size: 100%;
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

@font-face {
    font-family: "Avenir";
    src: url("fonts/Avenir Black.ttf") format("TrueType");
    font-weight: 900;
}

@font-face {
    font-family: "Avenir";
    src: url("fonts/Avenir Heavy.ttf") format("TrueType");
    font-weight: 600;
}

@font-face {
    font-family: "花とちょうちょ";
    src: url("fonts/花とちょうちょ.ttf") format("TrueType");
}

html,
button,
input,
select,
textarea {
    font-family: "Noto Sans JP", sans-serif;
}

.f_ave {
    font-family: "Avenir";
}

.f_nos {
    font-family: "Noto Serif JP", serif;
    font-weight: 500;
    font-style: normal;
}

.f_hana {
    font-family: "花とちょうちょ";
}

body {
    color: var(--black-color);
    font-size: 16px;
    line-height: 1.7;
    margin: 0px;
    background-color: #ffffff;
}

.flex {
    flex-wrap: wrap;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
}

.flex_sb {
    flex-wrap: wrap;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    justify-content: space-between;
}

.wrap {
    position: relative;
    width: 1140px;
    margin: 0 auto;
}

/* ヘッダー */
#header {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 150px 0 50px;
    width: 100%;
}

#header .hd_cont {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 20px;
}

#header .hd_cont .logo_box .logo_text {
    font-size: 13px;
    letter-spacing: 0.07em;
    font-weight: 500;
    margin-bottom: 15px;
}

#header .hd_cont .logo_box .logo {
    display: block;
    width: 328px;
}

#header .hd_cont .logo_box .logo img {
    width: 100%;
}

#header .hd_cont .hd_menu {
    padding-top: 40px;
}

#header .hd_cont .hd_menu ul {
    display: flex;
    gap: 0 52px;
}

#header .hd_cont .hd_menu ul li {
    position: relative;
}

#header .hd_cont .hd_menu ul li+li::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -25px;
    width: 2px;
    background: #434343;
}

#header .hd_cont .hd_menu ul li .link {
    display: block;
    font-size: 16px;
    letter-spacing: 0.07em;
    line-height: 1.5;
    font-weight: 700;
    color: initial;
    transition: 0.3s;
}

#header .hd_cont .hd_menu ul li .link:hover {
    color: var(--main-color);
}

/*　ハンバーガーボタン　*/
.pc_hamburger {
    display: block;
    position: fixed;
    z-index: 99999;
    right: 50px;
    top: 50px;
    width: 56px;
    height: 56px;
    cursor: pointer;
    text-align: center;
    border-radius: 4px;
    border: 2px solid var(--black-color);
    background: linear-gradient(to bottom, #d0ffde, #f2fc00);
}

.pc_hamburger span {
    display: block;
    position: absolute;
    width: 17px;
    height: 2px;
    left: 50%;
    translate: -50% 0;
    background: #555;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}

.pc_hamburger span:nth-child(1) {
    top: 22px;
}

.pc_hamburger span:nth-child(2) {
    top: 28px;
}

/* ナビ開いてる時のボタン */
.pc_hamburger.active span:nth-child(1) {
    top: 24px;
    left: 50%;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
}

.pc_hamburger.active span:nth-child(2) {
    top: 24px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
}

nav.globalMenu {
    position: fixed;
    z-index: 999;
    top: 0;
    right: 0;
    color: #000;
    transform: translateX(100%);
    transition: all 0.6s;
    width: 1290px;
    height: 100vh;
    align-items: center;
    overflow: scroll;
    display: flex;
    background: rgba(255, 255, 255, 0.92);
}

nav.globalMenu.active {
    transform: translateX(0%);
}

nav.globalMenu .menu_list {
    width: 890px;
    height: 100%;
}

nav.globalMenu .menu_list ul li {
    width: 100%;
    border-left: 2px solid var(--black-color);
    border-right: 2px solid var(--black-color);
}

nav.globalMenu .menu_list ul li+li {
    border-top: 2px solid var(--black-color);
}

nav.globalMenu .menu_list ul li .link {
    padding: 0 50px;
    height: calc((100vh - 12px) / 7);
    transition: 0.3s;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

nav.globalMenu .menu_list ul li.hydroponics .link,
nav.globalMenu .menu_list ul li.open_campus .link {
    background: #e8fdf7;
}

nav.globalMenu .menu_list ul li.about .link,
nav.globalMenu .menu_list ul li.campus .link,
nav.globalMenu .menu_list ul li.working .link,
nav.globalMenu .menu_list ul li.movie .link,
nav.globalMenu .menu_list ul li.guardian .link,
nav.globalMenu .menu_list ul li.information .link {
    background: #eefde8;
}

nav.globalMenu .menu_list ul li.course .link,
nav.globalMenu .menu_list ul li.access .link,
nav.globalMenu .menu_list ul li.recruitment .link,
nav.globalMenu .menu_list ul li.employment .link,
nav.globalMenu .menu_list ul li.features .link,
nav.globalMenu .menu_list ul li.faq .link {
    background: #fdf6e8;
}

nav.globalMenu .menu_list ul li.assessment .link {
    background: #fafafa;
}

nav.globalMenu .menu_list ul li .link:hover {
    background-color: rgba(28, 28, 28, 0.6);
}

nav.globalMenu .menu_list ul li.assessment .link:hover {
    background-color: #fafafa;
}

nav.globalMenu .menu_list ul li.assessment .link:hover .name {
    color: #000;
}

nav.globalMenu .menu_list ul li .link .img {
    position: absolute;
    inset: 0;
    z-index: -1;
}

nav.globalMenu .menu_list ul li .link .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

nav.globalMenu .menu_list ul li .link .name {
    font-size: 16px;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: var(--black-color);
    transition: 0.3s;
}

nav.globalMenu .menu_list ul li .link:hover .name {
    color: #fff;
}

nav.globalMenu .menu_list ul li .link .name .en {
    font-size: 40px;
    letter-spacing: 0;
    font-weight: 900;
    margin-right: 30px;
    -webkit-text-stroke: 1.5px black;
    background: linear-gradient(180deg, rgb(208, 255, 222) 0%, rgb(229, 253, 85) 50%, rgb(255, 247, 183) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

nav.globalMenu .menu_list ul li .link.sub::after {
    content: "";
    width: 40px;
    aspect-ratio: 1;
    background-image: url(../img/icon_plus_black.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: 0.3s;
}

nav.globalMenu .menu_list ul li .link.sub:hover::after {
    background-image: url(../img/icon_plus_white.svg);
}

nav.globalMenu .menu_list ul li .inner_menu {
    padding: 20px 50px;
    background: #fff;
}

nav.globalMenu .menu_list ul li .inner_menu .item {
    display: flex;
    align-items: center;
    gap: 0 10px;
    font-size: 16px;
    letter-spacing: 0.07em;
    font-weight: 700;
    color: initial;
    transition: 0.3s;
}

nav.globalMenu .menu_list ul li .inner_menu .item:hover {
    color: var(--main-color);
}

nav.globalMenu .menu_list ul li .inner_menu .item::before {
    content: "";
    background: #ffea65;
    width: 10px;
    aspect-ratio: 1;
    border-radius: 50%;
}

nav.globalMenu .menu_list ul li .inner_menu .closeBtnHat {
    display: none;
}

nav.globalMenu .menu_box {
    height: 100%;
    padding: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

nav.globalMenu .menu_box .logo_box {
    margin-bottom: 25px;
}

nav.globalMenu .menu_box .logo_box .text {
    font-size: 13px;
    letter-spacing: 0.07em;
    font-weight: 700;
    text-align: center;
    margin-bottom: 16px;
}

nav.globalMenu .menu_box .logo_box .logo {
    width: 300px;
}

nav.globalMenu .menu_box .logo_box .logo img {
    width: 100%;
}

nav.globalMenu .menu_box .info {
    font-size: 16px;
    letter-spacing: 0.01em;
    font-weight: 600;
    margin-bottom: 8px;
}

nav.globalMenu .menu_box .map_box {
    display: flex;
    gap: 15px;
    align-items: center;
    margin-bottom: 25px;
}

nav.globalMenu .menu_box .map_box .map {
    font-size: 14px;
    letter-spacing: 0.01em;
    font-weight: 900;
    color: initial;
    transition: 0.3s;
}

nav.globalMenu .menu_box .map_box:hover .map {
    color: var(--main-color);
}

nav.globalMenu .menu_box .map_box .icon {
    width: 11px;
}

nav.globalMenu .menu_box .map_box .icon svg {
    width: 100%;
}

nav.globalMenu .menu_box .map_box .icon svg path {
    transition: 0.3s;
}

nav.globalMenuSp .menu_box .map_box:hover .icon svg path {
    fill: var(--main-color);
}

nav.globalMenu .menu_box .btn_sec_box {
    margin-bottom: 26px;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box {
    width: 340px;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box+.btn_box {
    margin-top: 10px;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box a {
    display: flex;
    padding: 0px 20px;
    align-items: center;
    border-radius: 5px;
    transition: 0.3s;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box a:hover {
    opacity: 0.8;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box a.mail {
    background-color: #26bfed;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box a.line {
    background-color: #06c755;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box a .icon {
    width: 23px;
    translate: 0 4px;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box a .icon svg {
    width: 100%;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box a .name {
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    margin-left: 17px;
    line-height: 60px;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box a .arrow {
    width: 17px;
    translate: 0 5px;
    margin-left: auto;
}

nav.globalMenu .menu_box .btn_sec_box .btn_box a .arrow svg {
    width: 100%;
}

nav.globalMenu .menu_box .tel_sec_box {
    margin-bottom: 24px;
}

nav.globalMenu .menu_box .tel_sec_box .tel {
    font-size: 20px;
    font-weight: 900;
    color: var(--black-color);
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
    margin-bottom: 5px;
    display: block;
}

nav.globalMenu .menu_box .tel_sec_box .tel .big {
    font-size: 30px;
}

nav.globalMenu .menu_box .tel_sec_box .txt {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.01em;
    text-align: center;
}

nav.globalMenu .menu_box .sns_sec_box {
    display: flex;
    justify-content: center;
    gap: 0 25px;
}

nav.globalMenu .menu_box .sns_sec_box .link {
    display: block;
    width: 40px;
}

nav.globalMenu .menu_box .sns_sec_box .link img {
    width: 100%;
}

/* 追従 */
.fixed_menu {
    position: fixed;
    z-index: 998;
    bottom: 30px;
    right: 0;
    background: #ffffff;
    border-radius: 10px 0 0 10px;
    padding: 15px 13px;
}

.fixed_menu ul li+li {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #e3e3e3;
}

.fixed_menu ul li .link {
    display: block;
    transition: 0.3s;
}

.fixed_menu ul li .link:hover {
    opacity: 0.7;
}

.fixed_menu ul li .link .icon {
    width: 32px;
    margin: 0 auto 4px;
}

.fixed_menu ul li .link .icon img {
    width: 100%;
}

.fixed_menu ul li .link .name {
    font-size: 12px;
    letter-spacing: 0;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    color: initial;
}

/* トップページ */
.top_main {
    padding: 170px 0 120px;
    background-image: url(../img/top_main_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.top_main .main .cont {
    scale: 0.7;
    transition: 0.3s;
    position: relative;
    z-index: 1;
    border: 3px solid #000;
    border-radius: 6px;
}

.top_main .main .cont.slick-current {
    scale: 1;
}

.top_main .main .cont img {
    width: 100%;
}

.top_main .main .icon {
    position: absolute;
    top: 44%;
    z-index: 3;
    cursor: pointer;
    transition: 0.3s;
}

.top_main .main .icon:hover {
    opacity: 0.9;
}

.top_main .main .icon.left {
    rotate: 180deg;
    left: 23%;
}

.top_main .main .icon.right {
    right: 23%;
}

.top_main .main .slick-dots {
    position: absolute;
    bottom: -110px;
}

.top_main .main .slick-dots li {
    width: 80px;
    height: 7px;
    background-color: #dedede;
    border-radius: 2px;
    margin: 0 7.5px;
}

.top_main .main .slick-dots li.slick-active {
    background: rgb(208, 255, 222);
    background: linear-gradient(0deg, rgb(208, 255, 222) 0%, rgb(242, 252, 0) 100%);
}

.top_main .main .slick-dots li button {
    display: none;
}

.top_news {
    background-image: url(../img/top_second_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 100px 0 110px;
}

.top_news .sec_ttl {
    width: 1240px;
    margin: 0 auto;
}

.top_news .sec_ttl img {
    width: 100%;
}

.top_news .sec_box {
    margin-top: 90px;
}

.top_news .sec_box ul {
    display: flex;
    justify-content: space-between;
}

.top_news .sec_box ul li {
    width: 50%;
}

.top_news .sec_box ul li+li .contents::after {
    content: "";
    position: absolute;
    background-image: url(../img/border_dot_tate.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 100%;
    width: 10px;
    left: -6px;
    top: 0;
}

.top_news .sec_box ul li .ttl_box {
    position: relative;
}

.top_news .sec_box ul li .ttl_box::before {
    content: "";
    position: absolute;
    background-image: url(../img/icon_black_ten.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 80px;
    left: 50%;
    translate: -50% 0;
    top: -30px;
    height: 20px;
}

.top_news .sec_box ul li .ttl_box .jp {
    font-size: 20px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.06em;
    text-align: center;
}

.top_news .sec_box ul li .ttl_box .en {
    font-size: 50px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-align: center;
    margin-top: 15px;
    line-height: 1;
    -webkit-text-stroke: 2px black;
    background: linear-gradient(180deg, rgb(208, 255, 222) 0%, rgb(229, 253, 85) 50%, rgb(255, 247, 183) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.top_news .sec_box ul li .contents {
    position: relative;
    padding: 45px 80px;
    margin-top: 15px;
}

.top_news .sec_box ul li .contents::before {
    content: "";
    position: absolute;
    background-image: url(../img/border_dot_yoko.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 10px;
    top: 0;
    left: 0;
}

.top_news .sec_box ul li .contents .list {
    width: 380px;
    height: 390px;
    margin: 0 auto;
    overflow: hidden;
}

.top_news .sec_box ul li .contents .list .fb_iframe_widget {
    display: flex;
    justify-content: center;
}

.top_news .sec_box ul li .contents .list .fb_iframe_widget {
    height: 100%;
}

.top_news .sec_box ul li .contents .list .fb_iframe_widget span {
    height: 100% !important;
}

.top_news .sec_box ul li .contents .list iframe {
    height: 100% !important;
}

.top_news .sec_box ul li .contents .btn_box {
    width: 160px;
    margin: 40px auto 0;
}

.top_news .sec_box ul li .contents .btn_box a {
    display: block;
    text-align: center;
    color: #fff;
    background-color: var(--black-color);
    border-radius: 25px;
    line-height: 40px;
    font-size: 18px;
    font-weight: 900;
}

.top_link_sec ul li:last-child .link {
    border-bottom: 2px solid var(--black-color);
}

.top_link_sec ul li .link {
    padding: 79px calc(50vw - 570px) 33px;
    display: flex;
    justify-content: space-between;
    z-index: 1;
    position: relative;
    border-top: 2px solid var(--black-color);
}

.top_link_sec ul li .link::before,
.top_link_sec ul li .link::after {
    inset: 0;
    opacity: 0;
    transition: 0.3s;
    position: absolute;
    content: "";
}

.top_link_sec ul li .link::before {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    z-index: -2;
}

.top_link_sec ul li .link::after {
    z-index: -1;
    background-color: rgba(28, 28, 28, 0.6);
}

.top_link_sec ul li .link:hover::before {
    opacity: 1;
}

.top_link_sec ul li .link:hover::after {
    opacity: 1;
}

.top_link_sec ul li .link:hover .ttl_box .en {
    color: #fff;
}

.top_link_sec ul li .link:hover .ttl_box .jp {
    color: #fff;
}

.top_link_sec ul li .link:hover .view .name {
    color: #fff;
}

.top_link_sec ul li .link:hover .view .icon svg path {
    stroke: #fff;
}

.top_link_sec ul li .link.about {
    background-color: #e8fdf7;
}

.top_link_sec ul li .link.about::before {
    background-image: url(../img/top_about_bg.jpg);
}

.top_link_sec ul li .link.hydroponics {
    background-color: #eefde8;
}

.top_link_sec ul li .link.hydroponics::before {
    background-image: url(../img/top_hydroponics_bg.jpg);
}

.top_link_sec ul li .link.information {
    background-color: #fdf6e8;
}

.top_link_sec ul li .link.information::before {
    background-image: url(../img/top_information_bg.jpg);
}

.top_link_sec ul li .link .ttl_box {
    display: flex;
    gap: 85px;
    align-items: flex-end;
    margin-bottom: 40px;
}

.top_link_sec ul li .link .ttl_box .en {
    width: 490px;
    font-size: 68px;
    font-weight: 900;
    letter-spacing: 0.05em;
    line-height: 1;
    -webkit-text-stroke: 2px black;
    background: linear-gradient(180deg, rgb(208, 255, 222) 0%, rgb(229, 253, 85) 50%, rgb(255, 247, 183) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.top_link_sec ul li .link .ttl_box .jp {
    transition: 0.3s;
    font-size: 18px;
    line-height: 2.3;
    letter-spacing: 0.06em;
    color: var(--black-color);
    font-weight: 900;
}

.top_link_sec ul li .link .view {
    display: flex;
    align-items: flex-end;
    gap: 11px;
    margin-top: 20px;
}

.top_link_sec ul li .link .view .name {
    transition: 0.3s;
    color: var(--black-color);
    letter-spacing: 0.05em;
    font-size: 18px;
    line-height: 1;
    font-weight: 900;
}

.top_link_sec ul li .link .view .icon {
    width: 17px;
}

.top_link_sec ul li .link .view .icon svg {
    width: 100%;
    display: block;
}

.top_link_sec ul li .link .view .icon svg path {
    stroke: var(--black-color);
    transition: 0.3s;
}

.top_sns {
    padding-top: 70px;
}

.top_sns .sec_ttl {
    text-align: center;
}

.top_sns .sec_ttl .en {
    font-size: 60px;
    letter-spacing: 0.05em;
    line-height: 1;
    font-weight: 900;
}

.top_sns .sec_ttl .jp {
    font-size: 22px;
    font-weight: 900;
    letter-spacing: 0.06em;
    line-height: 1;
    margin-top: 8px;
}

.top_sns .inner {
    margin-top: 60px;
    background-image: url(../img/top_sns_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 125px 0 110px;
    position: relative;
    border-bottom: 3px solid var(--black-color);
    border-top: 3px solid var(--black-color);
}

.top_sns .inner .sankaku {
    position: absolute;
    top: -20px;
    left: 50%;
    translate: -50% 0;
}

.top_sns .inner .insta .ttl_sec_box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    padding-bottom: 30px;
}

.top_sns .inner .insta .ttl_sec_box::after {
    content: "";
    position: absolute;
    width: 101%;
    height: 11px;
    background-image: url(../img/border_yoko_long.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    left: 0;
    bottom: 0;
}

.top_sns .inner .insta .ttl_sec_box .ttl_box {
    display: flex;
    align-items: center;
    gap: 25px;
}

.top_sns .inner .insta .ttl_sec_box .ttl_box .icon {
    width: 50px;
    flex-shrink: 0;
}

.top_sns .inner .insta .ttl_sec_box .ttl_box .icon img {
    width: 100%;
}

.top_sns .inner .insta .ttl_sec_box .ttl_box .en {
    font-size: 30px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.06em;
}

.top_sns .inner .insta .ttl_sec_box .ttl_box .en .min {
    font-size: 20px;
}

.top_sns .inner .insta .sec {
    margin-top: 15px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 33px;
}

.top_sns .inner .insta .sec .in {
    height: 258px;
    width: 100% !important;
    overflow: hidden;
    border-radius: 10px;
}

.top_sns .inner .insta .sec .instagram-media {
    position: relative;
    top: -55px;
    left: 50%;
    translate: -50%;
    width: 100% !important;
    min-width: 100% !important;
}

.top_sns .inner .link_box {
    margin-top: 75px;
    display: flex;
    justify-content: space-between;
}

.top_sns .inner .link_box .box {
    width: 532px;
}

.top_sns .inner .link_box .box .ttl_sec_box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
    padding-bottom: 35px;
    position: relative;
}

.top_sns .inner .link_box .box .ttl_sec_box::after {
    content: "";
    position: absolute;
    background-image: url(../img/border_dot_yoko.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    height: 10px;
    width: 100%;
    bottom: 0;
    left: 0;
}

.top_sns .inner .link_box .box .ttl_sec_box .ttl_box {
    display: flex;
    align-items: center;
    gap: 25px;
}

.top_sns .inner .link_box .box .ttl_sec_box .ttl_box .icon {
    width: 50px;
    flex-shrink: 0;
}

.top_sns .inner .link_box .box .ttl_sec_box .ttl_box .icon img {
    width: 100%;
}

.top_sns .inner .link_box .box .ttl_sec_box .ttl_box .en {
    font-size: 30px;
    font-weight: 900;
    letter-spacing: 0.05em;
    line-height: 1;
}

.top_sns .inner .link_box .box .sec {
    width: 380px;
    height: 390px;
    overflow: hidden;
    margin: 0 auto;
}

.top_sns .inner .link_box .box.fb .sec {
    width: 326px;
    min-width: 180px;
}

.top_sns .inner .link_box .box .sec .fb_iframe_widget {
    height: 100%;
}

.top_sns .inner .link_box .box .sec .fb_iframe_widget span {
    height: 100% !important;
}

.top_sns .inner .link_box .box .sec .twitter-timeline {
    height: 100%;
}

.top_sns .inner .link_box .box .sec .fb_iframe_widget {
    height: 100%;
    width: 100% !important;
}

.top_sns .inner .link_box .box .sec .fb_iframe_widget span {
    height: 100% !important;
    width: 100% !important;
}

.top_sns .inner .link_box .box .sec iframe {
    height: 100% !important;
    width: 100% !important;
}

a.common_follow {
    width: 160px;
    display: block;
    text-align: center;
    background-color: var(--black-color);
    color: #fff;
    line-height: 40px;
    font-size: 18px;
    font-weight: 900;
    border-radius: 25px;
    border: 1px solid var(--black-color);
    transition: 0.3s;
}

a.common_follow.sp {
    display: none;
}

a.common_follow:hover {
    background-color: #fff;
    color: var(--black-color);
}

#footer {
    background: rgb(237, 255, 242);
    background: linear-gradient(180deg, rgb(237, 255, 242) 0%, rgb(254, 255, 248) 100%);
    padding: 140px 0 105px;
    position: relative;
}

#footer .ft_box {
    display: flex;
    justify-content: space-between;
}

#footer .ft_box .logo_sec_box .logo {
    width: 295px;
}

#footer .ft_box .logo_sec_box .logo img {
    width: 100%;
}

#footer .ft_box .logo_sec_box .info {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-top: 15px;
}

#footer .ft_box .logo_sec_box .map_box {
    display: flex;
    gap: 15px;
    align-items: center;
    margin-top: 5px;
}

#footer .ft_box .logo_sec_box .map_box .map {
    font-size: 14px;
    font-weight: 900;
    color: var(--black-color);
    letter-spacing: 0.05em;
}

#footer .ft_box .logo_sec_box .map_box .icon {
    width: 11px;
}

#footer .ft_box .logo_sec_box .map_box .icon svg {
    width: 100%;
}

#footer .ft_box .logo_sec_box .btn_sec_box {
    margin-top: 24px;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box {
    width: 340px;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box+.btn_box {
    margin-top: 10px;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box a {
    display: flex;
    padding: 0px 20px;
    align-items: center;
    border-radius: 5px;
    transition: 0.3s;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box a:hover {
    opacity: 0.8;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box a.mail {
    background-color: #26bfed;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box a.line {
    background-color: #06c755;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box a .icon {
    width: 23px;
    translate: 0 4px;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box a .icon svg {
    width: 100%;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box a .name {
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    margin-left: 17px;
    line-height: 60px;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box a .arrow {
    width: 17px;
    translate: 0 5px;
    margin-left: auto;
}

#footer .ft_box .logo_sec_box .btn_sec_box .btn_box a .arrow svg {
    width: 100%;
}

#footer .ft_box .logo_sec_box .tel_sec_box {
    margin-top: 24px;
}

#footer .ft_box .logo_sec_box .tel_sec_box .tel {
    font-size: 20px;
    font-weight: 900;
    color: var(--black-color);
    letter-spacing: 0.05em;
}

#footer .ft_box .logo_sec_box .tel_sec_box .tel .big {
    font-size: 30px;
}

#footer .ft_box .logo_sec_box .tel_sec_box .txt {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1;
    margin-top: 5px;
}

#footer .ft_box .logo_sec_box .sns_sec_box {
    display: flex;
    gap: 0 25px;
    margin-top: 2em;
}

#footer .ft_box .logo_sec_box .sns_sec_box .link {
    display: block;
    width: 50px;
}

#footer .ft_box .logo_sec_box .sns_sec_box .link img {
    width: 100%;
}

#footer .ft_box .menu_link_box {
    margin-left: 70px;
    display: flex;
    gap: 30px;
}

#footer .ft_box .menu_link_box .box_sec {
    display: flex;
    gap: 38px;
}

#footer .ft_box .menu_link_box .box_sec .box ul+ul {
    margin-top: 40px;
}

#footer .ft_box .menu_link_box .box_sec .box ul li {
    line-height: 1;
}

#footer .ft_box .menu_link_box .box_sec .box ul li+li {
    margin-top: 35px;
}

#footer .ft_box .menu_link_box .box_sec .box ul li .cont {
    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: var(--black-color);
}

#footer .ft_box .menu_link_box .box_sec .box ul li a {
    color: #333;
    font-size: 16px;
    letter-spacing: 0.05em;
    transition: 0.3s;
}

#footer .ft_box .menu_link_box .box_sec .box ul li a.color {
    color: #b3b3b3;
}

#footer .ft_box .menu_link_box .box_sec .box ul li a.color:hover {
    color: #b3b3b3;
}

#footer .ft_box .menu_link_box .box_sec .box ul li a:hover {
    color: var(--main-color);
}

#footer .ft_box .menu_link_box .box_sec .box ul li a.icon {
    display: flex;
    align-items: center;
    gap: 20px;
}

#footer .ft_box .menu_link_box .box_sec .box ul li a.icon::after {
    content: "";
    width: 14px;
    aspect-ratio: 1;
    background-image: url(../img/icon_link_black.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#footer .cr {
    text-align: center;
    margin-top: 78px;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: 0.05em;
}

#footer .back_btn {
    position: absolute;
    bottom: 0;
    right: 0;
    transition: 0.3s;
    width: 100px;
}

#footer .back_btn img {
    width: 100%;
}

#footer .back_btn:hover {
    opacity: 0.8;
}

/* 内部メインビュー */
.common_main_page {
    padding: 180px 0 0px;
    background-color: #f4fff2;
}

.common_main_page .ttl_box {
    text-align: right;
    border-bottom: 3px solid #333333;
    padding-bottom: 50px;
}

.common_main_page .ttl_box .en {
    font-size: 120px;
    line-height: 1;
    color: var(--main-color);
    -webkit-text-stroke: 3px var(--black-color);
    font-weight: 800;
}

.common_main_page .ttl_box .ttl {
    font-size: 26px;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.breadcrumb {
    margin-top: 20px;
}

.breadcrumb ul {
    display: flex;
    justify-content: flex-end;
    gap: 5px;
}

.breadcrumb ul li {
    font-size: 13px;
    color: var(--main-color);
    font-weight: 600;
    letter-spacing: 0.05em;
}

.breadcrumb ul li a {
    display: flex;
    gap: 10px;
}

.breadcrumb ul li a:hover .name {
    color: var(--main-color);
}

.breadcrumb ul li a .icon {
    width: 13px;
    flex-shrink: 0;
    translate: 0 2.9px;
}

.breadcrumb ul li a .icon svg {
    width: 100%;
    display: block;
}

.breadcrumb ul li a .name {
    color: #333333;
    transition: 0.3s;
    font-weight: 500;
}

.common_page_wrap {
    padding: 90px 0;
}

/* 学科・コースについて */
.page_course .course_sec .system_sec .text_img_box {
    display: flex;
    gap: 75px;
    align-items: center;
}

.page_course .course_sec .system_sec .text_img_box .text_box .ttl_box .en {
    font-size: 50px;
    font-weight: 800;
    letter-spacing: 0.01em;
    line-height: 1;
    color: var(--main-color);
}

.page_course .course_sec .system_sec .text_img_box .text_box .ttl_box .jp {
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
    margin-top: 22px;
}

.page_course .course_sec .system_sec .text_img_box .text_box .ttl_box .jp .size {
    font-size: .8em;
}

.page_course .course_sec .system_sec .text_img_box .text_box .text {
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-top: 41px;
    margin-bottom: 22px;
    font-weight: 900;
}

.page_course .course_sec .system_sec .text_img_box .text_box .small_text {
    font-size: 16px;
    letter-spacing: 0.07em;
    line-height: 1.5;
}

.page_course .course_sec .system_sec .text_img_box .text_box .small_text .indent {
    padding-left: 1em;
    text-indent: -1em;
    display: inline-block;
}

.page_course .course_sec .system_sec .text_img_box .text_box .small_text+.small_text {
    margin-top: 1em;
}

.page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 34px;
}

.page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link {
    display: block;
    padding: 15px 10px;
    border-radius: 5px;
    background-color: #efefb0;
    color: #333;
    border: 2px solid #333;
    font-size: 16px;
    font-weight: 800;
    text-align: center;
    cursor: pointer;
    transition: 0.3s;
}

.page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link:hover {
    background-color: #fff;
}

.page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link.saibai {
    background-color: #b780a5;
    color: #fff;
    border-color: #b780a5;
}

.page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link.saibai:hover {
    background-color: #fff;
    color: #b780a5;
}

.page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link.it {
    background-color: #31aecb;
    color: #fff;
    border-color: #31aecb;
}

.page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link.it:hover {
    background-color: #fff;
    color: #31aecb;
}

.page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link.business {
    background-color: #e96e69;
    color: #fff;
    border-color: #e96e69;
}
.page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link.business:hover {
    background-color: #fff;
    color: #e96e69;
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box_sec {
    display: flex;
    gap: 15px;
    margin-top: 34px;
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box {
    width: 295px;
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box a {
    display: flex;
    justify-content: space-between;
    padding: 0 20px;
    border-radius: 5px;
    background-color: var(--main-color);
    align-items: center;
    border: 1px solid var(--main-color);
    transition: 0.3s;
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box a:hover {
    background-color: #fff;
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box a:hover .name {
    color: var(--main-color);
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box a:hover .arrow svg path {
    stroke: var(--main-color);
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box a .name {
    font-size: 16px;
    font-weight: 800;
    color: #fff;
    letter-spacing: 0.05em;
    line-height: 60px;
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box a .arrow {
    width: 17px;
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box a .arrow svg {
    display: block;
}

.page_course .course_sec .system_sec .text_img_box .text_box .btn_box a .arrow svg path {
    stroke: #fff;
    transition: 0.3s;
}

.page_course .course_sec .system_sec .text_img_box .img {
    width: 470px;
    flex-shrink: 0;
    height: 447px;
}

.page_course .course_sec .system_sec .text_img_box .img img {
    border-radius: 10px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_course .course_sec .contents_sec {
    margin-top: 135px;
}

.page_course .course_sec .contents_sec .inner {
    position: relative;
    border: 4px solid #333333;
    border-radius: 20px;
    padding: 105px 50px;
    background-color: #fcffed;
}

.page_course .course_sec .contents_sec .inner::after {
    position: absolute;
    content: "";
    z-index: 1;
    background-color: #f7f7f7;
    border-radius: 20px;
    right: -50px;
    top: 50px;
    bottom: -50px;
    left: 50px;
    z-index: -1;
}

.page_course .course_sec .contents_sec .inner::before {
    content: "";
    position: absolute;
    background-image: url(../img/icon_pin_orange.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 80px;
    height: 105px;
    top: -55px;
    left: 50%;
    translate: -50% 0%;
}

.page_course .course_sec .contents_sec .inner .ttl_sec {
    padding-left: 35px;
    font-size: 46px;
    color: var(--main-color);
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
    display: flex;
    align-items: center;
    gap: 20px;
    white-space: nowrap;
    position: relative;
}

.page_course .course_sec .contents_sec .inner .ttl_sec::before {
    content: "";
    position: absolute;
    background-image: url(../img/icon_black_ten.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 80px;
    height: 25px;
    top: -20px;
    left: -10px;
    rotate: -25deg;
}

.page_course .course_sec .contents_sec .inner .ttl_sec::after {
    content: "";
    width: 100%;
    height: 10px;
    background-image: url(../img/border_yoko_long.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.page_course .course_sec .contents_sec .inner .sec_text_box {
    margin-top: 40px;
}

.page_course .course_sec .contents_sec .inner .sec_text_box .theme {
    font-size: 23px;
    font-weight: 800;
    letter-spacing: 0.06em;
    background: linear-gradient(transparent 65%, #fff421 30%);
    display: inline;
    color: #333333;
}

.page_course .course_sec .contents_sec .inner .sec_text_box .text {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-top: 25px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box {
    display: flex;
    align-items: center;
    margin-top: 25px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box .time_box .theme {
    font-size: 22px;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 45px;
    background-color: #faee00;
    width: 170px;
    text-align: center;
    border: 3px solid #333333;
    border-radius: 25px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box .time_box .time {
    margin-top: 10px;
    font-size: 40px;
    line-height: 1;
    letter-spacing: 0.06em;
    font-weight: 800;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box .time_box .time .color {
    font-size: 100px;
    color: var(--main-color);
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box ul {
    display: flex;
    margin-left: auto;
    gap: 15px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box ul li {
    background-image: url(../img/icon_time_green.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 150px;
    aspect-ratio: 1;
    line-height: 1.1;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    font-size: 20px;
    color: #fff;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box ul li .color {
    color: #fff421;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box ul li .big {
    font-size: 50px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_img {
    margin-top: 70px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_img img {
    width: 100%;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box {
    margin-top: 70px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li {
    border: 3px solid #333333;
    border-radius: 6px;
    background-color: #fff;
    position: relative;
    padding-bottom: 20px;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .tag {
    position: absolute;
    left: 50%;
    translate: -50% 0;
    top: -32px;
    width: 140px;
    line-height: 50px;
    text-align: center;
    letter-spacing: 0.05em;
    border: 3px solid #333333;
    letter-spacing: 0.05em;
    border-radius: 50px;
    background-color: #efefb0;
    font-size: 20px;
    font-weight: 800;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .tag .num {
    font-size: 30px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .img {
    width: 100%;
    height: 170px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box {
    padding: 0 20px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box.none_img {
    padding-top: 55px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box.none_img .sikaku {
    margin-top: 48px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box .ttl {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box .text {
    text-align: left;
    margin-top: 8px;
    letter-spacing: 0.05em;
    font-size: 15px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku {
    padding: 0 0px 14px;
    border-bottom: 2px solid #333333;
    border-left: 2px solid #333333;
    border-right: 2px solid #333333;
    background-color: #f7f7f7;
    margin: 0 20px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .name {
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1;
    display: flex;
    align-items: center;
    white-space: nowrap;
    gap: 5px;
    translate: 0 -7px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .name::before,
.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .name::after {
    content: "";
    height: 2px;
    background-color: #333333;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .name::before {
    width: 20px;
    flex-shrink: 0;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .name::after {
    width: 100%;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .box {
    display: flex;
    gap: 14px;
    align-items: center;
    padding: 0 10px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .box .cont {
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 6px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .box .cont::before {
    content: "";
    width: 15px;
    gap: 14px;
    aspect-ratio: 1;
    background-color: #fff421;
    border-radius: 50%;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box {
    margin-top: 50px;
    padding: 50px 0 0;
    display: flex;
    align-items: center;
    gap: 30px;
    border-top: 3px dashed #333333;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .img {
    width: 335px;
    height: 290px;
    flex-shrink: 0;
    line-height: 1.4;
    margin-bottom: 0.67em;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .text_box .en {
    font-size: 24px;
    font-weight: 900;
    line-height: 1.4;
    margin-bottom: 0.67em;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .text_box .theme {
    font-size: 24px;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1.5;
    color: var(--main-color);
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .text_box .text {
    margin-top: 18px;
    font-size: 15px;
    letter-spacing: 0.05em;
    line-height: 1.6;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .list {
    margin-top: 50px;
    padding-top: 50px;
    border-top: 3px dashed #333333;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .list ul li {
    height: 220px;
}

.page_course .course_sec .contents_sec .inner .zagaku_sec .list ul li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .ttl_sec {
    color: #de931a;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .ttl_sec::after {
    background-image: url(../img/border_yoko_orange.svg);
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .sec_text_box .theme {
    color: #333333;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec {
    margin-top: 65px;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul {
    display: flex;
    gap: 55px 0;
    flex-wrap: wrap;
    justify-content: space-between;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li {
    padding: 55px 20px 20px;
    border: 3px solid #333333;
    border-radius: 6px;
    position: relative;
    width: 330px;
    background-color: #fff;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big {
    width: 680px;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont {
    display: flex;
    align-items: center;
    gap: 55px;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont+.cont {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 2px dashed #333333;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont .theme_box .sub {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont .theme_box .text {
    font-size: 15px;
    margin-top: 10px;
    line-height: 1.5;
    letter-spacing: 0.05em;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont .img {
    width: 170px;
    flex-shrink: 0;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont .img img {
    width: 100%;
    border-radius: 6px;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .theme {
    text-align: center;
    position: absolute;
    width: 178px;
    border-radius: 25px;
    border: 3px solid #333333;
    background-color: #efefb0;
    line-height: 40px;
    font-weight: 800;
    font-size: 16px;
    letter-spacing: 0.06em;
    top: -25px;
    left: 0;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .theme .num {
    font-size: 26px;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .text_box .name {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-align: center;
    line-height: 1;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .text_box .text {
    font-size: 15px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    margin-top: 12px;
    /* text-align: center; */
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .img.lettuce {
    height: 150px;
    margin-top: 28px;
}

.page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.page_course .course_sec .contents_sec .inner .flow_sec {
    margin-top: 105px;
    margin-bottom: 123px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .sec_ttl {
    font-size: 23px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
    display: flex;
    align-items: center;
    gap: 20px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .sec_ttl::before {
    content: "";
    width: 100px;
    height: 10px;
    background-color: var(--main-color);
    flex-shrink: 0;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list {
    margin-top: 50px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li {
    display: flex;
    align-items: center;
    gap: 68px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li+li {
    margin-top: 45px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li+li .img_box::before {
    content: "";
    clip-path: polygon(100% 0, 100% 84%, 50% 100%, 0 84%, 0 0);
    position: absolute;
    z-index: 0;
    left: 49px;
    top: -215px;
    width: 130px;
    height: 215px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(1) .text_box .theme_box .theme .furi {
    left: 13px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(2) .img_box::before {
    background-color: #fff421;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(2) .text_box .theme_box .theme .furi {
    left: -2px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(3) .img_box::before {
    background-color: #cfdc28;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(3) .text_box .theme_box .theme .furi {
    left: 10px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(4) .img_box::before {
    background-color: #9dc93a;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(4) .text_box .theme_box .theme .furi {
    left: -1px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box {
    width: 224px;
    flex-shrink: 0;
    position: relative;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .img {
    position: relative;
    z-index: 1;
    width: 240px;
    aspect-ratio: 1;
    min-width: 0;
    overflow: hidden;
    border-radius: 50%;
    border: 3px solid #c9caca;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .week {
    position: relative;
    z-index: 1;
    width: 160px;
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    border-radius: 8px;
    background-color: #333333;
    margin: 20px auto 0;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .week .icon {
    width: 21px;
    flex-shrink: 0;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .week .icon svg {
    display: block;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .week .name {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #fff;
    line-height: 40px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box {
    background-color: #fff;
    border-radius: 6px;
    padding: 40px 30px 30px;
    position: relative;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box::before {
    content: "";
    position: absolute;
    background-image: url(../img/flow_deco.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    top: 17px;
    left: 0;
    transform: translateX(-100%);
    width: 35px;
    aspect-ratio: 0.36;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .theme_box {
    display: flex;
    align-items: center;
    gap: 20px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .theme_box .num {
    width: 60px;
    font-weight: 800;
    font-size: 30px;
    aspect-ratio: 1;
    border-radius: 50%;
    background-color: var(--main-color);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff421;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .theme_box .theme {
    font-size: 24px;
    position: relative;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .theme_box .theme .big {
    font-size: 34px;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .theme_box .theme .furi {
    position: absolute;
    font-size: 14px;
    letter-spacing: 0.04em;
    line-height: 1;
    top: -6px;
    white-space: nowrap;
}

.page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-top: 14px;
}

.page_course .course_sec .contents_sec .inner .message_sec {
    margin-top: 50px;
}

.page_course .course_sec .contents_sec .inner .message_sec .sec_ttl_box {
    text-align: center;
}

.page_course .course_sec .contents_sec .inner .message_sec .sec_ttl_box .en {
    font-size: 50px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
    display: flex;
    align-items: center;
    gap: 20px;
    color: var(--main-color);
    white-space: nowrap;
}

.page_course .course_sec .contents_sec .inner .message_sec .sec_ttl_box .en::before,
.page_course .course_sec .contents_sec .inner .message_sec .sec_ttl_box .en::after {
    content: "";
    width: 100%;
    height: 10px;
    background-image: url(../img/border_dot_yoko.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.page_course .course_sec .contents_sec .inner .message_sec .sec_ttl_box .jp {
    font-size: 18px;
    margin-top: 12px;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.page_course .course_sec .contents_sec .inner .message_sec .ttl_comment {
    margin-top: 33px;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 50px;
    background-color: #333333;
    color: #fff;
    border-radius: 25px;
    text-align: center;
}

.page_course .course_sec .contents_sec .inner .message_sec .ttl_comment .num {
    color: #fff421;
}

.page_course .course_sec .contents_sec .inner .message_sec .q_list {
    background-color: #69bd83;
    border-radius: 4px;
    padding: 16px;
    margin: 31px 0 40px;
}

.page_course .course_sec .contents_sec .inner .message_sec .q_list ol {
    display: flex;
    flex-wrap: wrap;
    gap: 0 0.5em;
    font-size: 15px;
    letter-spacing: 0;
    font-weight: 900;
    color: #fff;
    padding: 0;
    margin: 0;
}

.page_course .course_sec .contents_sec .inner .message_sec .q_list ol li {
    list-style: none;
}

.page_course .course_sec .contents_sec .inner .message_sec .q_list ol li {
    display: flex;
    gap: 0.5em;
}

.page_course .course_sec .contents_sec .inner .message_sec .q_list ol li .color {
    color: #fff421;
}

.page_course .course_sec .contents_sec .inner .message_sec .q_list ol li::after {
    content: "|";
}

.page_course .course_sec .contents_sec .inner .message_sec .q_list ol li:nth-child(5)::after,
.page_course .course_sec .contents_sec .inner .message_sec .q_list ol li:last-child::after {
    content: unset;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item+.voice_item {
    margin-top: 50px;
    padding-top: 50px;
    border-top: 3px dashed #333333;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .img {
    position: relative;
    width: 100%;
    border-radius: 10px;
    aspect-ratio: 1.65;
    overflow: hidden;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .img .over_text {
    position: absolute;
    right: 0;
    bottom: 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .img .over_text .small_text {
    background-color: #fff;
    padding: 0.4em 0.9em;
    font-size: 16px;
    letter-spacing: 0.07em;
    line-height: 1.4;
    font-weight: 600;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .img .over_text .name {
    font-size: 22px;
    letter-spacing: 0.07em;
    font-weight: 600;
    padding: 0.45em 1.4em;
    background-color: #fff;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .flex_box {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item:nth-child(odd) .flex_box {
    flex-direction: row-reverse;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .img_text_area {
    flex-grow: 1;
    width: 100%;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list {
    flex-shrink: 0;
    width: auto;
    display: flex;
    margin-top: 20px;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list ol {
    margin: 0;
    padding: 0;
    width: 100%;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list ol li {
    list-style: none;
    background-color: #fff;
    border-radius: 100vmax;
    height: 60px;
    display: flex;
    gap: 16px;
    align-items: center;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list ol li+li {
    margin-top: 14px;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list ol li .mark {
    background-image: url(../img/message_answer_bg.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    flex-shrink: 0;
    color: #faee00;
    font-size: 25px;
    letter-spacing: 0;
    font-weight: 900;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .text_area .inner_block+.inner_block,
.page_course .course_sec .contents_sec .inner .message_sec .voice_item .text_area {
    margin-top: 20px;
    width: 100%;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .text_area .lr_text {
    display: flex;
    align-items: center;
    gap: 1em;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 0.6em;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .text_area .lr_text::after {
    content: "";
    flex-grow: 1;
    height: 2px;
    background-color: currentColor;
}

.page_course .course_sec .contents_sec .inner .message_sec .voice_item .text_area .text {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.6;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec {
    margin-bottom: 80px;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .ttl_box {
    display: flex;
    align-items: center;
    gap: 25px;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .ttl_box .icon {
    width: 30px;
    flex-shrink: 0;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .ttl_box .icon svg {
    display: block;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .ttl_box .ttl {
    font-size: 34px;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .ttl_box .ttl .small {
    font-size: 26px;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .accent_box {
    margin-top: 27px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .accent_box .kome {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .accent_box .sub {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .list_img {
    width: 100%;
    margin-top: 20px;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .list_img .img {
    width: 100%;
}

.page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .list_img .img img {
    width: 100%;
}

/* 水耕栽培について */
.page_hydroponics .intro_sec .text_img_box {
    display: flex;
    gap: 80px;
    align-items: center;
}

.page_hydroponics .intro_sec .text_img_box .text_box .ttl_box .en {
    font-size: 50px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1;
    color: var(--main-color);
}

.page_hydroponics .intro_sec .text_img_box .text_box .ttl_box .jp {
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
    margin-top: 22px;
}

.page_hydroponics .intro_sec .text_img_box .text_box .text {
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-top: 20px;
    margin-bottom: 51px;
    font-weight: 900;
}

.page_hydroponics .intro_sec .text_img_box .text_box .small_text {
    font-size: 16px;
    letter-spacing: 0.07em;
    line-height: 1.75;
}

.page_hydroponics .intro_sec .text_img_box .text_box .small_text+.small_text {
    margin-top: 1.75em;
}

.page_hydroponics .intro_sec .text_img_box .img {
    width: 440px;
    flex-shrink: 0;
    height: 490px;
}

.page_hydroponics .intro_sec .text_img_box .img img {
    border-radius: 10px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_hydroponics .message_sec {
    margin-top: 130px;
    padding-top: 42px;
    position: relative;
}

.page_hydroponics .message_sec>* {
    position: relative;
    z-index: 1;
}

.page_hydroponics .message_sec::before {
    content: "";
    position: absolute;
    background-color: #fff875;
    top: 0;
    bottom: 0;
    left: calc(50vw - 520px);
    transform: translateX(-100%);
    width: calc(50vw - 520px);
}

.page_hydroponics .message_sec::after {
    content: "";
    position: absolute;
    background-image: url(../img/hydroponics_message_deco.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: 18px;
    bottom: 18px;
    left: calc(50vw - 520px);
    transform: translateX(-100%);
    width: 150px;
}

.page_hydroponics .message_sec .sec_ttl {
    display: flex;
    align-items: center;
    gap: 0.94em;
    font-size: 32px;
    font-weight: 900;
    letter-spacing: 0.05em;
    line-height: 1.4;
    margin-bottom: 45px;
}

.page_hydroponics .message_sec .sec_ttl::before {
    content: "";
    width: 120px;
    height: 12px;
    background-color: var(--main-color);
}

.page_hydroponics .message_sec .cont {
    display: flex;
    align-items: flex-end;
    gap: 74px;
}

.page_hydroponics .message_sec .cont .text_area {
    background-color: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
    padding: 30px 90px;
    border-radius: 10px;
}

.page_hydroponics .message_sec .cont .text_area .img_text_box {
    display: flex;
    gap: 55px;
    align-items: center;
}

.page_hydroponics .message_sec .cont .text_area .img_text_box .img {
    width: 300px;
    flex-shrink: 0;
}

.page_hydroponics .message_sec .cont .text_area .img_text_box .img img {
    width: 100%;
}

.page_hydroponics .message_sec .cont .text_area .img_text_box .profile {
    margin-top: 1em;
    padding: .5em 0;
    border-width: 2px 0;
    border-style: solid;
    font-size: 14px;
}

.page_hydroponics .message_sec .cont .text_area .lr_text {
    font-size: 24px;
    letter-spacing: 0.05em;
    color: var(--main-color);
    line-height: 1.7;
    font-weight: 900;
    margin-bottom: 1.1em;
}

.page_hydroponics .message_sec .cont .text_area .inner {
    margin-top: 30px;
}

.page_hydroponics .message_sec .cont .text_area .inner .text {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 0.08em;
}

.page_hydroponics .message_sec .cont .text_area .inner .text+.text {
    margin-top: 1.5em;
}

.page_hydroponics .message_sec .cont .text_area .prof_box {
    padding: 0.93em 0;
    border: 2px solid currentColor;
    border-left: none;
    border-right: none;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    font-weight: 500;
    width: fit-content;
}

.page_hydroponics .merit_sec {
    margin-top: 150px;
}

.page_hydroponics .merit_sec .hydro_sec_ttl_box {
    margin-bottom: 51px;
}

.hydro_sec_ttl_box .en_ttl {
    font-weight: 900;
    font-size: 50px;
    letter-spacing: 0;
    text-align: center;
    line-height: 1.4;
    color: var(--main-color);
    margin-bottom: 0.24em;
}

.hydro_sec_ttl_box .ttl {
    text-align: center;
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    text-align: center;
    font-weight: 900;
}

.page_hydroponics .merit_sec .cont {
    display: flex;
    align-items: flex-start;
    gap: 60px;
}

.page_hydroponics .merit_sec .cont .merit_list {
    flex-grow: 1;
}

.page_hydroponics .merit_sec .cont .merit_list ol {
    margin: 0;
    padding: 0;
}

.page_hydroponics .merit_sec .cont .merit_list ol li {
    list-style: none;
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.page_hydroponics .merit_sec .cont .merit_list ol li+li {
    margin-top: 15px;
}

.page_hydroponics .merit_sec .cont .merit_list ol li:not(:last-child) {
    padding-bottom: 30px;
    position: relative;
}

.page_hydroponics .merit_sec .cont .merit_list ol li:not(:last-child)::before {
    content: "";
    position: absolute;
    bottom: 0;
    top: 70px;
    left: 23px;
    width: 3px;
    background-color: var(--main-color);
}

.page_hydroponics .merit_sec .cont .merit_list ol li .num {
    background-color: var(--main-color);
    border-radius: 50%;
    width: 50px;
    aspect-ratio: 1;
    color: #fff421;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    line-height: 1;
    font-weight: 900;
    flex-shrink: 0;
    padding-top: 0.15em;
}

.page_hydroponics .merit_sec .cont .merit_list ol li .text_area {
    padding-top: 7px;
}

.page_hydroponics .merit_sec .cont .merit_list ol li .text_area .lr_text {
    font-size: 24px;
    letter-spacing: 0.05em;
    font-weight: 900;
    line-height: 1.5;
    color: var(--main-color);
    margin-bottom: 0.8em;
}

.page_hydroponics .merit_sec .cont .merit_list ol li .text_area .text {
    font-size: 16px;
    letter-spacing: 0.04em;
    font-weight: 500;
    line-height: 1.6;
}

.page_hydroponics .merit_sec .cont .detail_area {
    width: 510px;
    flex-shrink: 0;
    padding-top: 7px;
}

.page_hydroponics .merit_sec .cont .detail_area .img {
    width: 100%;
    height: 380px;
}

.page_hydroponics .merit_sec .cont .detail_area .img img {
    border-radius: 10px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_hydroponics .merit_sec .cont .detail_area .detail_text_area {
    margin-bottom: 5px;
}

.page_hydroponics .merit_sec .cont .detail_area .detail_text_area .text {
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 0.04em;
    margin-bottom: 0.25em;
}

.page_hydroponics .merit_sec .cont .detail_area .detail_text_area .text .size {
    font-size: 18px;
}

.page_hydroponics .merit_sec .cont .detail_area .detail_text_area .lr_text {
    font-size: 36px;
    font-weight: 900;
    letter-spacing: 0.04em;
}

.page_hydroponics .merit_sec .cont .detail_area .detail_text_area .lr_text .lr {
    font-size: 1.94em;
    color: var(--main-color);
    letter-spacing: 0;
    margin-right: 0.15em;
    line-height: 1;
}

.page_hydroponics .merit_sec .cont .detail_area .detail_text_area .lr_text .small {
    font-weight: 400;
    font-size: 11px;
    letter-spacing: 0.01em;
    margin-left: 1.8em;
}

.page_hydroponics .merit_sec .cont .detail_area .merit_table {
    margin-bottom: 7px;
}

.page_hydroponics .merit_sec .cont .detail_area .merit_table table {
    width: 100%;
}

.page_hydroponics .merit_sec .cont .detail_area .merit_table table th,
.page_hydroponics .merit_sec .cont .detail_area .merit_table table td {
    border-collapse: collapse;
    border: 1px solid #fff;
    font-size: 14px;
    letter-spacing: 0.08em;
    text-align: center;
    line-height: 1.4;
    vertical-align: middle;
}

.page_hydroponics .merit_sec .cont .detail_area .merit_table table th:not(:first-child),
.page_hydroponics .merit_sec .cont .detail_area .merit_table table td:not(:first-child) {
    width: 22%;
}

.page_hydroponics .merit_sec .cont .detail_area .merit_table table th {
    background-color: var(--main-color);
    font-weight: 700;
    color: #fff;
    padding: 5px;
}

.page_hydroponics .merit_sec .cont .detail_area .merit_table table td {
    padding: 0.57em;
    font-weight: 500;
    background-color: #e5fdec;
}

.page_hydroponics .merit_sec .cont .detail_area .merit_table table tr:nth-of-type(odd) td {
    background-color: #deffe8;
}

.page_hydroponics .merit_sec .cont .detail_area .note_text {
    font-size: 12px;
    letter-spacing: 0.01em;
    text-align: right;
    line-height: 1.4;
    margin-bottom: 51px;
}

.page_hydroponics .aqua_sec {
    margin: 130px 0 188px;
}

.page_hydroponics .aqua_sec .cont {
    background-color: #fcffed;
    border-radius: 20px;
    border: 4px solid var(--black-color);
    overflow: hidden;
    display: flex;
}

.page_hydroponics .aqua_sec .cont .img {
    flex-shrink: 0;
    width: 237px;
}

.page_hydroponics .aqua_sec .cont .img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.page_hydroponics .aqua_sec .cont .text_area {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 44px 41px 45px 45px;
}

.page_hydroponics .aqua_sec .cont .text_area .sec_ttl {
    color: var(--main-color);
    font-size: 28px;
    letter-spacing: 0.05em;
    line-height: 1.4;
    font-weight: 900;
    margin-bottom: 0.79em;
}

.page_hydroponics .aqua_sec .cont .text_area .inner .text {
    line-height: 1.3;
    font-weight: 500;
    font-size: 15px;
    letter-spacing: 0.07em;
}

.page_hydroponics .aqua_sec .cont .text_area .inner .text+.text {
    margin-top: 1.3em;
}

.page_hydroponics .common_page_wrap {
    padding-bottom: 0;
}

.page_hydroponics .future_sec {
    background-color: #fcffed;
    border: 3px solid var(--black-color);
    border-left: none;
    border-right: none;
    padding-top: 85px;
    padding-bottom: 99px;
}

.page_hydroponics .future_sec .hydro_sec_ttl_box {
    margin-bottom: 42px;
}

.page_hydroponics .future_sec .cont {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.page_hydroponics .future_sec .cont .img {
    width: 517px;
}

.page_hydroponics .future_sec .cont .img img {
    width: 100%;
}

.page_hydroponics .future_sec .cont .box {
    position: absolute;
}

.page_hydroponics .future_sec .cont .box::after {
    content: "";
    position: absolute;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.page_hydroponics .future_sec .cont .box_01::after {
    background-image: url(../img/graph_circle_bar_01.svg);
    left: -184px;
    top: 15px;
    width: 164px;
    height: 82px;
}

.page_hydroponics .future_sec .cont .box_02::after {
    background-image: url(../img/graph_circle_bar_02.svg);
    left: -112px;
    top: -45px;
    width: 92px;
    height: 66px;
}

.page_hydroponics .future_sec .cont .box_03::after {
    background-image: url(../img/graph_circle_bar_03.svg);
    width: 307px;
    height: 35px;
    right: -305px;
    top: 15px;
}

.page_hydroponics .future_sec .cont .box_04::after {
    background-image: url(../img/graph_circle_bar_04.svg);
    left: 145px;
    top: 10px;
    width: 250px;
    height: 92px;
}

.page_hydroponics .future_sec .cont .box_05::after {
    background-image: url(../img/graph_circle_bar_05.svg);
    width: 369px;
    height: 82px;
    left: 87px;
    top: 15px;
}

.page_hydroponics .future_sec .cont .box .lr_text {
    font-weight: 900;
    font-size: 22px;
    letter-spacing: 0.04em;
    margin-bottom: 0.64em;
    line-height: 1.3;
}

.page_hydroponics .future_sec .cont .box .text {
    font-size: 15px;
    letter-spacing: 0.01em;
    line-height: 1.7;
}

.page_hydroponics .future_sec .cont .box.box_01 {
    top: 0;
    right: 0;
}

.page_hydroponics .future_sec .cont .box.box_02 {
    bottom: 46px;
    right: 0;
}

.page_hydroponics .future_sec .cont .box.box_03 {
    left: 0;
    bottom: -13px;
}

.page_hydroponics .future_sec .cont .box.box_04 {
    left: 0;
    bottom: 166px;
}

.page_hydroponics .future_sec .cont .box.box_05 {
    top: 0;
    left: 0;
}

/* 学校について */
.page_about .about_sec .text_box {
    margin-top: 55px;
}

.page_about .about_sec .text_box .comment {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.page_about .about_sec .text_box .text {
    margin-top: 20px;
    font-weight: 400;
    letter-spacing: 0.05em;
    font-size: 16px;
}

.page_about .about_sec .text_box .btn_box {
    width: 295px;
    margin-top: 34px;
}

.page_about .about_sec .text_box .btn_box a {
    display: flex;
    justify-content: space-between;
    padding: 0 20px;
    border-radius: 5px;
    background-color: var(--main-color);
    align-items: center;
    border: 1px solid var(--main-color);
    transition: 0.3s;
}

.page_about .about_sec .text_box .btn_box a:hover {
    background-color: #fff;
}

.page_about .about_sec .text_box .btn_box a:hover .name {
    color: var(--main-color);
}

.page_about .about_sec .text_box .btn_box a:hover .arrow svg path {
    stroke: var(--main-color);
}

.page_about .about_sec .text_box .btn_box a .name {
    font-size: 16px;
    font-weight: 800;
    color: #fff;
    letter-spacing: 0.05em;
    line-height: 60px;
}

.page_about .about_sec .text_box .btn_box a .arrow {
    width: 17px;
}

.page_about .about_sec .text_box .btn_box a .arrow svg {
    display: block;
}

.page_about .about_sec .text_box .btn_box a .arrow svg path {
    stroke: #fff;
    transition: 0.3s;
}

.page_about .theme_sec {
    margin-top: 115px;
    padding-bottom: 90px;
    position: relative;
}

.page_about .theme_sec::before {
    content: "";
    position: absolute;
    z-index: -1;
    background-image: url(../img/top_second_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    inset: 0;
    top: 22px;
}

.page_about .theme_sec .ttl_box {
    text-align: center;
}

.page_about .theme_sec .ttl_box .theme {
    display: flex;
    justify-content: center;
    gap: 20px;
    align-items: center;
    white-space: nowrap;
    font-size: 50px;
    font-weight: 800;
    color: var(--main-color);
    line-height: 1;
}

.page_about .theme_sec .ttl_box .theme::before,
.page_about .theme_sec .ttl_box .theme::after {
    content: "";
    background-image: url(../img/border_yoko_long.svg);
    background-size: auto;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 11px;
}

.page_about .theme_sec .ttl_box .ttl {
    font-size: 18px;
    font-weight: 800;
    margin-top: 10px;
    line-height: 1;
}

.page_about .theme_sec .list {
    margin-top: 65px;
}

.page_about .theme_sec .list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
}

.page_about .theme_sec .list ul li {
    border: 3px solid var(--black-color);
    border-radius: 6px;
    background-color: #fff;
}

.page_about .theme_sec .list ul li .inner {
    height: 100%;
}

.page_about .theme_sec .list ul li .inner .img {
    height: 200px;
    width: 100%;
    position: relative;
    border-bottom: 3px solid var(--black-color);
}

.page_about .theme_sec .list ul li .inner .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_about .theme_sec .list ul li .inner .img .num {
    font-size: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    font-weight: 800;
    position: absolute;
    aspect-ratio: 1;
    border-radius: 50%;
    background-color: #d0ffde;
    border: 3px solid var(--black-color);
    top: -30px;
    left: 50%;
    translate: -50% 0%;
}

.page_about .theme_sec .list ul li .inner .text_box {
    padding: 20px 12px;
}

.page_about .theme_sec .list ul li .inner .text_box .ttl {
    font-size: 20px;
    color: var(--main-color);
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.05em;
}

.page_about .theme_sec .list ul li .inner .text_box .box {
    margin-top: 15px;
}

.page_about .theme_sec .list ul li .inner .text_box .box .text {
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.7;
}

.page_about .theme_sec .list ul li .inner .text_box .box .text+.text {
    margin-top: 18px;
}

.page_about .facility_sec {
    padding: 95px 0 175px;
    border-bottom: 3px solid var(--black-color);
}

.page_about .facility_sec .list {
    margin-top: 55px;
}

.page_about .facility_sec .list ul {
    display: grid;
    gap: 45px;
    grid-template-columns: repeat(3, 1fr);
}

.page_about .facility_sec .list ul li:nth-child(n+4) .img .num {
    background-color: #edad46;
}

.page_about .facility_sec .list ul li:nth-child(n+4) .img .sub {
    background-color: #edad46;
}

.page_about .facility_sec .list ul li:nth-child(n+4) .text_box .ttl {
    color: #edad46;
}

.page_about .facility_sec .list ul li .img {
    height: 200px;
    width: 100%;
    position: relative;
}

.page_about .facility_sec .list ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px;
}

.page_about .facility_sec .list ul li .img .num {
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    display: flex;
    padding-bottom: 13px;
    align-items: flex-end;
    justify-content: center;
    width: 50px;
    aspect-ratio: 1;
    border: 2px solid var(--black-color);
    border-radius: 50%;
    background-color: var(--main-color);
    letter-spacing: 0.06em;
    position: absolute;
    left: -25px;
    top: -25px;
}

.page_about .facility_sec .list ul li .img .num .big {
    font-size: 19px;
}

.page_about .facility_sec .list ul li .img .sub {
    position: absolute;
    background-color: var(--main-color);
    width: 100px;
    line-height: 34px;
    top: 0;
    font-size: 16px;
    letter-spacing: 0.05em;
    font-weight: 800;
    right: 0;
    border-radius: 0 6px 0 6px;
    text-align: center;
    color: #fff;
}

.page_about .facility_sec .list ul li .text_box {
    padding-top: 18px;
}

.page_about .facility_sec .list ul li .text_box .ttl {
    font-size: 20px;
    line-height: 1;
    color: var(--main-color);
    line-height: 1;
    font-weight: 800;
    margin-bottom: 10px;
}

.page_about .facility_sec .list ul li .text_box .text {
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.6;
}

.page_about .field_sec {
    background-color: #fcffed;
    padding: 92px 0;
    border-bottom: 3px solid var(--black-color);
}

.page_about .field_sec .comment {
    font-size: 18px;
    margin-top: 35px;
    letter-spacing: 0.05mm;
    line-height: 1.6;
    font-weight: 600;
}

.page_about .field_sec .list {
    margin-top: 60px;
}

.page_about .field_sec .list ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.page_about .field_sec .list ul li {
    background-color: #fff;
    border: 3px solid var(--black-color);
    padding: 0 30px 50px;
    border-radius: 6px;
}

.page_about .field_sec .list ul li .theme {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.06em;
    width: 280px;
    text-align: center;
    border-radius: 30px;
    border: 3px solid var(--black-color);
    background-color: #b0efc3;
    line-height: 50px;
    margin: -30px auto 0;
}

.page_about .field_sec .list ul li .text {
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 2;
    margin-top: 30px;
}

.page_about .field_sec .btn_box {
    width: 295px;
    margin: 40px auto 0;
}

.page_about .field_sec .btn_box a {
    display: flex;
    justify-content: space-between;
    padding: 0 20px;
    border-radius: 5px;
    background-color: var(--main-color);
    align-items: center;
    border: 1px solid var(--main-color);
    transition: 0.3s;
}

.page_about .field_sec .btn_box a .name {
    font-size: 16px;
    font-weight: 800;
    color: #fff;
    letter-spacing: 0.05em;
    line-height: 60px;
    transition: .3s;
}

.page_about .field_sec .btn_box a:hover {
    background-color: #fff;
}

.page_about .field_sec .btn_box a:hover .name {
    color: var(--main-color);
}

.page_about .field_sec .btn_box a .arrow {
    width: 17px;
}

.page_about .field_sec .btn_box a .arrow svg {
    display: block;
}

.page_about .field_sec .btn_box a .arrow svg path {
    stroke: #fff;
    transition: 0.3s;
}

.page_about .field_sec .btn_box a:hover .arrow svg path {
    stroke: var(--main-color);
}

.common_page_wrap.about {
    padding: 100px 0 0;
}

.common_about_ttl .en {
    font-size: 50px;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1;
    color: var(--main-color);
}

.common_about_ttl .ttl {
    font-size: 18px;
    line-height: 1;
    letter-spacing: 0.05em;
    margin-top: 10px;
    font-weight: 600;
}

/* キャンパスライフ */
.page_campus .event_sec .comment_box {
    margin-top: 48px;
}

.page_campus .event_sec .comment_box .sub {
    font-size: 24px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1.6;
}

.page_campus .event_sec .comment_box .comment {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.07em;
    line-height: 1.7;
    margin-top: 20px;
}

.page_campus .event_sec .list {
    margin-top: 50px;
}

.page_campus .event_sec .list ul li {
    display: flex;
    gap: 50px;
    align-items: center;
}

.page_campus .event_sec .list ul li+li {
    margin-top: 30px;
}

.page_campus .event_sec .list ul li .img {
    width: 450px;
    height: 320px;
    flex-shrink: 0;
}

.page_campus .event_sec .list ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.page_campus .event_sec .list ul li .text_box .en {
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.06em;
}

.page_campus .event_sec .list ul li .text_box .ttl {
    font-size: 26px;
    font-weight: 800;
    letter-spacing: 0.05em;
    color: var(--main-color);
    margin-top: 10px;
    line-height: 1;
}

.page_campus .event_sec .list ul li .text_box .text {
    font-size: 16px;
    margin-top: 24px;
    letter-spacing: 0.03em;
    line-height: 1.8;
    font-weight: 500;
}

.page_campus .event_sec .list ul li .text_box .text .translate {
    margin-left: 20px;
}

.page_campus .map_sec {
    margin-top: 110px;
}

.page_campus .map_sec .sec_ttl {
    display: flex;
    align-items: center;
    gap: 20px;
}

.page_campus .map_sec .sec_ttl .icon {
    width: 34px;
    flex-shrink: 0;
}

.page_campus .map_sec .sec_ttl .icon svg {
    display: block;
}

.page_campus .map_sec .sec_ttl .ttl {
    font-size: 30px;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1;
    white-space: nowrap;
}

.page_campus .map_sec .sec_ttl::after {
    content: "";
    width: 100%;
    height: 10px;
    background-image: url(../img/border_yoko_long.svg);
    background-size: auto;
    background-repeat: no-repeat;
    background-position: center;
}

.page_campus .map_sec .sec_comment {
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 1.7;
    margin-top: 22px;
}

.page_campus .map_sec .list {
    margin-top: 70px;
}

.page_campus .map_sec .list ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 60px 65px;
}

.page_campus .map_sec .list ul li {
    display: flex;
    align-items: center;
    border-radius: 6px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
}

.page_campus .map_sec .list ul li .img {
    width: 210px;
    flex-shrink: 0;
    height: 250px;
    position: relative;
}

.page_campus .map_sec .list ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px 0 0 6px;
}

.page_campus .map_sec .list ul li .img .con {
    font-size: 20px;
    width: 70px;
    aspect-ratio: 1;
    border-radius: 50%;
    color: #fff;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -40px;
    left: -40px;
    letter-spacing: 0.06em;
}

.page_campus .map_sec .list ul li .img .con.ten {
    background-color: #115fc9;
}

.page_campus .map_sec .list ul li .img .con.naka {
    background-color: #ad11c9;
}

.page_campus .map_sec .list ul li .img .con.umeda {
    background-color: #c91111;
}

.page_campus .map_sec .list ul li .text_box {
    padding: 0 20px;
}

.page_campus .map_sec .list ul li .text_box .theme {
    font-size: 24px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
}

.page_campus .map_sec .list ul li .text_box .text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.6;
    margin-top: 18px;
}

.page_campus .access_sec {
    margin-top: 70px;
}

.page_campus .access_sec .map_box {
    display: flex;
    gap: 120px;
    align-items: center;
}

.page_campus .access_sec .map_box .text_box .text {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.7;
    margin-top: 32px;
}

.page_campus .access_sec .map_box .map {
    width: 580px;
    flex-shrink: 0;
}

.page_campus .access_sec .map_box .map img {
    width: 100%;
}

/* 募集要項について */
.page_information .information_sec .menu_list_btn ul {
    display: flex;
    justify-content: space-between;
}

.page_information .information_sec .menu_list_btn ul li {
    width: 550px;
}

.page_information .information_sec .menu_list_btn ul li a {
    display: flex;
    align-items: center;
    padding: 0 30px;
    justify-content: space-between;
    border: 3px solid #333333;
    border-radius: 40px;
    background-color: #fff;
    transition: 0.3s;
}

.page_information .information_sec .menu_list_btn ul li a:hover {
    background-color: #b0efc3;
}

.page_information .information_sec .menu_list_btn ul li a .name {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 70px;
    color: #333333;
}

.page_information .information_sec .menu_list_btn ul li a .icon {
    width: 18px;
}

.page_information .information_sec .menu_list_btn ul li a .icon svg {
    display: block;
}

.page_information .information_sec .ttl_sec_box {
    margin-top: 115px;
}

.page_information .information_sec .ttl_sec_box .pdf_sec {
    margin-top: 40px;
}

.page_information .information_sec .ttl_sec_box .pdf_sec ul {
    display: flex;
    gap: 0 30px;
}

.page_information .information_sec .ttl_sec_box .pdf_sec ul li a {
    color: #00a2bf;
    text-decoration: underline;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 20px;
}

.page_information .information_sec .ttl_sec_box .pdf_sec ul li a::after {
    content: "";
    background-image: url(../img/icon_pdf.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 14px;
    aspect-ratio: 1;
}

.page_information .information_sec .recruit_sec_box {
    margin-top: 60px;
}

.page_information .information_sec .recruit_sec_box .box_btn ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.page_information .information_sec .recruit_sec_box .box_btn ul li {
    text-align: center;
    color: #333333;
    transition: 0.1s;
    border-radius: 8px 0 0 0;
    line-height: 60px;
    letter-spacing: 0.05em;
    cursor: pointer;
    font-size: 20px;
    font-weight: 600;
    background-color: #f5f5f5;
}

.page_information .information_sec .recruit_sec_box .box_btn ul li+li {
    border-radius: 0 8px 0 0;
}

.page_information .information_sec .recruit_sec_box .box_btn ul li.show {
    background-color: var(--main-color);
    color: #fff;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box {
    background-color: #fcffed;
    padding: 70px 60px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents {
    display: none;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents.show {
    display: block;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box+.sec_box {
    margin-top: 55px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .icon_ttl_box {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .icon_ttl_box .icon {
    width: 53px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .icon_ttl_box .icon svg {
    display: block;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .icon_ttl_box .ttl {
    font-size: 24px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.05em;
    translate: 0 7px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .ttl_comment {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.07em;
    line-height: 1;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box+.box {
    margin-top: 50px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .theme_ttl {
    line-height: 50px;
    background-color: var(--main-color);
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.05em;
    padding-left: 30px;
    margin-bottom: 30px;
    font-size: 22px;
    margin-top: 30px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .text {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.07em;
    line-height: 1.8;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .text+.text {
    margin-top: 15px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .text_big {
    font-size: 18px;
    margin-top: 30px;
    margin-bottom: 10px;
    font-weight: 600;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .text_ttl {
    color: var(--main-color);
    font-size: 22px;
    letter-spacing: 0.07em;
    line-height: 1;
    margin-bottom: 10px;
    font-weight: 600;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .sec {
    margin-top: 40px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .sec+.sec {
    padding-top: 40px;
    border-top: 2px dashed #333333;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box ul {
    margin-top: 10px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box ul li {
    list-style: disc;
    font-size: 18px;
    letter-spacing: 0.07em;
    font-weight: 600;
    margin-left: 23px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .inner {
    background-color: #fff;
    padding: 0 40px 55px;
    border-radius: 6px;
    margin-top: 30px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .inner .inner_theme {
    font-size: 26px;
    color: #fff;
    background-color: var(--main-color);
    text-align: center;
    width: 300px;
    line-height: 50px;
    font-weight: 600;
    border-radius: 25px;
    translate: -40px -25px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec {
    margin-top: 70px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .table_sec_box+.table_sec_box {
    margin-top: 50px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .sec_ttl {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1;
    margin-bottom: 24px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .text {
    font-size: 16px;
    letter-spacing: 0.07em;
    line-height: 1.8;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .text+.text {
    margin-top: 20px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .text .pdf {
    color: #00a2bf;
    text-decoration: underline;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .text .pdf::after {
    content: "";
    background-image: url(../img/icon_pdf.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 15px;
    aspect-ratio: 1;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn {
    margin-top: 40px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a {
    display: flex;
    align-items: center;
    gap: 30px;
    justify-content: center;
    border: 3px solid var(--main-color);
    background-color: #fff;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a:hover .name {
    color: #fff;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a:hover::before {
    right: -15px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a::before {
    transition: 0.4s;
    content: "";
    position: absolute;
    height: 100%;
    top: 0;
    left: -15px;
    right: 96%;
    background-color: var(--main-color);
    transform: skew(-15deg);
    z-index: -1;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a .name {
    color: var(--main-color);
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 80px;
    transition: 0.3s;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a .icon {
    width: 22px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a .icon img {
    width: 100%;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec {
    margin-top: 80px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .theme_ttl {
    line-height: 60px;
    letter-spacing: 0.07em;
    color: #fff;
    font-size: 22px;
    padding-left: 22px;
    background-color: var(--main-color);
    margin-bottom: 30px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box+.box {
    margin-top: 65px;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .theme_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .theme_box .theme {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.07em;
    line-height: 1;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .theme_box .en {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.07em;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .kome_box .kome {
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 1.6;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .text {
    font-size: 16px;
    letter-spacing: 0.06em;
    margin-top: 30px;
    line-height: 1.7;
}

.page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .sankou {
    font-size: 18px;
    letter-spacing: 0.07em;
    margin-top: 40px;
}

.common_inform_table {
    margin-top: 10px;
    margin-bottom: 20px;
}

.common_inform_table table {
    border-collapse: separate;
    border-spacing: 3px;
    width: 100%;
}

.common_inform_table table th {
    font-size: 18px;
    color: #fff;
    font-weight: 600;
    background-color: var(--main-color);
}

.common_inform_table table td {
    background-color: #deffe8;
    font-size: 16px;
}

.common_inform_table.pdf tr:nth-child(even) td,
.common_inform_table.seido tr:nth-child(even) td {
    background-color: #e5fdec;
}

.common_inform_table.pdf td,
.common_inform_table.pdf th {
    padding: 10px 2px;
    letter-spacing: 0.05em;
}

.common_inform_table.pdf.foreigner th:nth-child(3) {
    width: 20%;
}

.common_inform_table.pdf.foreigner th:nth-child(2) {
    width: 12%;
}

.common_inform_table.pdf.foreigner th:nth-child(1) {
    width: 68%;
}

.common_inform_table.pdf td {
    text-align: center;
    font-weight: 500;
    font-size: 16px;
}

.common_inform_table.pdf td a {
    color: #00a2bf;
    display: flex;
    align-items: center;
    gap: 9px;
    justify-content: center;
    text-decoration: underline;
}

.common_inform_table.pdf td a::after {
    content: "";
    background-image: url(../img/icon_pdf.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 15px;
    aspect-ratio: 1;
}

.common_inform_table.pdf td.f_ave {
    font-size: 18px;
    font-weight: 800;
}

.common_inform_table.pdf td:nth-child(1) {
    width: 70px;
}

.common_inform_table.pdf td:nth-child(2),
.common_inform_table.pdf td:nth-child(3),
.common_inform_table.pdf td:nth-child(4) {
    width: 170px;
}

.common_inform_table.cost .large {
    width: 21.8%;
}

.common_inform_table.cost .main {
    font-size: 20px;
    font-weight: 600;
    width: 11%;
}

.common_inform_table.cost th,
.common_inform_table.cost td {
    padding: 13px 0;
    text-align: center;
}

.common_inform_table.cost td {
    font-weight: 600;
}

.common_inform_table.cost td:last-child {
    background-color: #b0efc3;
}

.common_inform_table.cost .f_ave {
    font-weight: 800;
    padding-right: 10px;
    text-align: right;
}

.common_inform_table.cost .last td {
    background-color: #b0efc3;
}

.common_inform_table.seido th,
.common_inform_table.seido td {
    padding: 6px 0;
}

.common_inform_table.seido td {
    text-align: center;
    font-weight: 600;
}

.common_inform_table.seido td:nth-child(n+2) {
    text-align: right;
    padding-right: 10px;
}

.common_inform_table.seido td:last-child {
    background-color: #b0efc3 !important;
}

/* アクセス */
.page_access .map_sec .main_box {
    text-align: center;
}

.page_access .map_sec .main_box .text_box .logo {
    margin: 60px auto 0;
    width: 425px;
}

.page_access .map_sec .main_box .text_box .logo img {
    width: 100%;
}

.page_access .map_sec .main_box .text_box .add {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 1;
    text-align: center;
    margin-top: 20px;
}

.page_access .map_sec .main_box .text_box .color {
    font-size: 24px;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1;
    margin-top: 80px;
    text-align: center;
    color: var(--main-color);
}

.page_access .map_sec .main_box .text_box .text {
    font-size: 16px;
    margin-top: 18px;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 1.7;
}

.page_access .map_sec .main_box .map {
    width: 100%;
    margin-top: 60px;
}

.page_access .map_sec .main_box .map img {
    width: 100%;
}

.page_access .map_sec .flow_sec {
    margin-top: 80px;
    position: relative;
}

.page_access .map_sec .flow_sec .access {
    font-size: 16px;
    color: #fff;
    letter-spacing: 0.05em;
    line-height: 50px;
    position: absolute;
    text-align: center;
    width: 320px;
    font-weight: 800;
    background-color: var(--main-color);
    border-radius: 50px;
    top: 300px;
    left: 0;
    z-index: 10;
}

.page_access .map_sec .flow_sec .access .big {
    font-size: 24px;
}

.page_access .map_sec .flow_sec .access .big.color {
    color: #FFF421;
}

.page_access .map_sec .flow_sec .access::after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    bottom: -28px;
    right: 150px;
    border-style: solid;
    border-width: 36px 10px 0 10px;
    border-color: var(--main-color) transparent transparent transparent;
    rotate: -30deg;
}

.page_access .map_sec .flow_sec .img img {
    width: 100%;
}

.page_access .map_sec .map_sec {
    margin-top: 120px;
}

.page_access .map_sec .map_sec .common_about_ttl {
    text-align: center;
}

.page_access .map_sec .map_sec .map {
    margin-top: 30px;
    width: 100%;
    height: 430px;
}

.page_access .map_sec .map_sec .map iframe {
    width: 100%;
    height: 100%;
}

/* 学校紹介動画 */
.page_movie .list ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.page_movie .list ul li .inner {
    height: 100%;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 10px;
    overflow: hidden;
    display: block;
}

.page_movie .list ul li .inner:hover .text_box .theme {
    color: var(--main-color);
}

.page_movie .list ul li .inner .movie {
    border-radius: 10px;
    height: 260px;
    position: relative;
}

.page_movie .list ul li .inner .movie iframe {
    width: 100%;
    height: 100%;
}

.page_movie .list ul li .inner .text_box {
    padding: 20px;
}

.page_movie .list ul li .inner .text_box .theme {
    font-size: 18px;
    font-weight: 600;
    transition: .3s;
    letter-spacing: 0.06em;
    line-height: 1.6;
    height: 60px;
    color: var(--black-color);
}

.page_movie .list ul li .inner .text_box .btn {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 30px;
    justify-content: flex-end;
}

.page_movie .list ul li .inner .text_box .btn .name {
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1;
    color: var(--black-color);
}

.page_movie .list ul li .inner .text_box .btn .icon {
    width: 15px;
}

.page_movie .list ul li .inner .text_box .btn .icon svg {
    display: block;
}

/* 求人のお申込み */
.page_recruitment .for_sec .common_about_ttl {
    text-align: center;
}

.page_recruitment .for_sec .ttl_comment {
    margin-top: 40px;
    letter-spacing: 0.07em;
    font-size: 16px;
    line-height: 1.8;
    text-align: center;
}

.page_recruitment .for_sec .inner {
    border: 3px solid var(--black-color);
    padding: 70px 100px;
    background-color: #FCFFED;
    border-radius: 10px;
    margin-top: 40px;
}

.page_recruitment .for_sec .inner .box {
    text-align: center;
}

.page_recruitment .for_sec .inner .box .text {
    font-size: 16px;
    letter-spacing: 0.07em;
    line-height: 1.8;
}

.page_recruitment .for_sec .inner .box .text+.text {
    margin-top: 18px;
}

.page_recruitment .for_sec .inner .pdf_box {
    margin-top: 50px;
}

.page_recruitment .for_sec .inner .pdf_box .theme {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-align: center;
    line-height: 1;
}

.page_recruitment .for_sec .inner .pdf_box ul {
    margin-top: 24px;
    display: flex;
    justify-content: center;
    gap: 60px;
}

.page_recruitment .for_sec .inner .pdf_box ul li {
    width: 330px;
}

.page_recruitment .for_sec .inner .pdf_box ul li a {
    position: relative;
    background-color: #fff;
    border-radius: 40px;
    display: flex;
    align-items: center;
    padding: 0 30px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
}

.page_recruitment .for_sec .inner .pdf_box ul li a .icon {
    width: 25px;
}

.page_recruitment .for_sec .inner .pdf_box ul li a .icon img {
    width: 100%;
}

.page_recruitment .for_sec .inner .pdf_box ul li a .name {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.07em;
    line-height: 70px;
    color: #333333;
    margin-left: 20px;
    transition: .3s;
}

.page_recruitment .for_sec .inner .pdf_box ul li a:hover .name {
    color: var(--main-color);
}

.page_recruitment .for_sec .inner .pdf_box ul li a .download {
    width: 18px;
    margin-left: auto;
}

.page_recruitment .for_sec .inner .pdf_box ul li a .download svg {
    display: block;
}

.page_recruitment .for_sec .inner .pdf_box ul li+li a::before {
    content: "";
    position: absolute;
    width: 2px;
    height: 30px;
    left: -30px;
    top: 20px;
    background-color: #333;
}

.page_recruitment .for_sec .inner .mark_box {
    margin-top: 50px;
}

.page_recruitment .for_sec .inner .mark_box ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
    margin-top: 8px;
}

.page_recruitment .for_sec .inner .mark_box ul li {
    background-color: var(--main-color);
    line-height: 60px;
    text-align: center;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.07em;
}

.page_recruitment .for_sec .inner .mark_box ul.com li {
    background-color: unset;
    line-height: 1.5;
    color: var(--black-color);
    font-size: 14px;
    font-weight: 400;
}

/* 学校評価と公表 */
.page_assesment .pdf_list {
    padding: 80px 50px;
    background-color: #FCFCFC;
}

.page_assesment .pdf_list ul li {
    display: flex;
    align-items: baseline;
    gap: 90px;
    padding: 30px 0;
}

.page_assesment .pdf_list ul li+li {
    border-top: 1px solid #DBDBDB;
}

.page_assesment .pdf_list ul li .theme {
    font-size: 20px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.05em;
    width: 11.5%;
    flex-shrink: 0;
}

.page_assesment .pdf_list ul li .cont_box .cont a {
    display: flex;
    align-items: center;
    color: #00A2BF;
    gap: 10px;
    text-decoration: underline;
}

.page_assesment .pdf_list ul li .cont_box .cont+.cont {
    margin-top: 10px;
}

.page_assesment .pdf_list ul li .cont_box .cont a::after {
    content: "";
    background-image: url(../img/icon_pdf.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 15px;
    aspect-ratio: 1;
}

/* 再進学について */
.page_working .student_sec {
    text-align: center;
}

.page_working .student_sec .ttl {
    font-size: 30px;
    font-weight: 800;
    letter-spacing: 0.07em;
}

.page_working .student_sec .ttl_box {
    margin-top: 65px;
}

.page_working .student_sec .ttl_box .theme {
    font-size: 26px;
    font-weight: 800;
    letter-spacing: 0.06em;
    color: var(--main-color);
}

.page_working .student_sec .ttl_box .text {
    margin-top: 30px;
    font-weight: 500;
    letter-spacing: 0.07em;
    line-height: 1.7;
}

.page_working .list_sec .list {
    margin-top: 90px;
    padding-top: 90px;
    border-top: 2px dashed var(--black-color);
}

.page_working .list_sec .list ul li {
    display: flex;
    gap: 40px;
    align-items: center;
}

.page_working .list_sec .list ul li .img {
    width: 480px;
    height: 410px;
    flex-shrink: 0;
}

.page_working .list_sec .list ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.page_working .list_sec .list ul li .text_box .theme {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 0.05em;
    color: var(--main-color);
    line-height: 1.6;
    margin-bottom: 28px;
}

.page_working .list_sec .list ul li .text_box .text {
    font-size: 15px;
    letter-spacing: 0.07em;
    line-height: 1.8;
}

.page_working .list_sec .list ul li .text_box .text+.text {
    margin-top: 12px;
}

.page_working .list_sec .list ul li:nth-child(even) {
    flex-direction: row-reverse;
}

.page_working .list_sec .list ul li:nth-child(even) .img {
    margin-left: auto;
}

.page_working .list_sec .list ul li+li {
    margin-top: 80px;
}

/* オープンキャンパス */
.page_campus .about_sec .img_box .ttl {
    font-size: 32px;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
    margin-bottom: 30px;
}

.page_campus .about_sec .img_box .img {
    /* height: 390px; */
    width: 100%;
}

.page_campus .about_sec .img_box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_campus .about_sec .list_sec {
    margin-top: 50px;
}

.page_campus .about_sec .list_sec .list+.list {
    margin-top: 60px;
}

.page_campus .about_sec .list_sec .list .theme {
    line-height: 60px;
    background-color: #F4FFF2;
    padding-left: 50px;
    font-size: 22px;
    font-weight: 800;
    letter-spacing: 0.07em;
}

.page_campus .about_sec .list_sec .list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 30px;
    margin-top: 30px;
}

.page_campus .about_sec .list_sec .list ul li {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
    border-radius: 6px;
    overflow: hidden;
}

.page_campus .about_sec .list_sec .list ul li .img {
    width: 100%;
    height: 230px;
}

.page_campus .about_sec .list_sec .list ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_campus .about_sec .list_sec .list ul li .text_box {
    padding: 20px 10px;
}

.page_campus .about_sec .list_sec .list ul li .text_box .ttl_box {
    display: flex;
    align-items: center;
    gap: 10px;
}

.page_campus .about_sec .list_sec .list ul li .text_box .ttl_box .num {
    font-size: 35px;
    color: var(--main-color);
    font-weight: 800;
    letter-spacing: 0.03em;
    line-height: 1;
}

.page_campus .about_sec .list_sec .list ul li .text_box .ttl_box .ttl {
    font-size: 19px;
    font-weight: 600;
    letter-spacing: 0.07em;
}

.page_campus .about_sec .list_sec .list ul li .text_box .text {
    font-size: 15px;
    margin-top: 10px;
    letter-spacing: 0.07em;
    line-height: 1.8;
}

.page_campus .about_sec .list_sec .list .sec {
    display: flex;
    gap: 20px;
    margin-top: 20px;
    align-items: center;
}

.page_campus .about_sec .list_sec .list .sec .img_po {
    margin-left: auto;
    width: 300px;
    flex-shrink: 0;
}

.page_campus .about_sec .list_sec .list .sec .sec_text {
    margin-top: 0;
}

.page_campus .about_sec .list_sec .list .sec .img_po img {
    width: 100%;
}

.page_campus .about_sec .list_sec .list .sec_text {
    margin-top: 35px;
    letter-spacing: 0.07em;
    line-height: 1.8;
    font-size: 16px;
}

.page_campus .about_sec .btn_sec_box {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 70px;
}

.page_campus .about_sec .btn_sec_box .btn_box {
    width: 320px;
}

.page_campus .about_sec .btn_sec_box .btn_box a {
    display: flex;
    padding: 0px 15px;
    align-items: center;
    border-radius: 5px;
    transition: 0.3s;
}

.page_campus .about_sec .btn_sec_box .btn_box a:hover {
    opacity: 0.8;
}

.page_campus .about_sec .btn_sec_box .btn_box a.open {
    background-color: #e8389b;
}

.page_campus .about_sec .btn_sec_box .btn_box a.mail {
    background-color: #26bfed;
}

.page_campus .about_sec .btn_sec_box .btn_box a.line {
    background-color: #06c755;
}

.page_campus .about_sec .btn_sec_box .btn_box a .icon {
    width: 23px;
    translate: 0 4px;
}

.page_campus .about_sec .btn_sec_box .btn_box a .icon svg {
    width: 100%;
}

.page_campus .about_sec .btn_sec_box .btn_box a .name {
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    margin-left: 17px;
    line-height: 60px;
}

.page_campus .about_sec .btn_sec_box .btn_box a .arrow {
    width: 17px;
    translate: 0 5px;
    margin-left: auto;
}

.page_campus .about_sec .btn_sec_box .btn_box a .arrow svg {
    width: 100%;
}

.page_campus .about_sec .tel_sec_box {
    margin-top: 24px;
}

.page_campus .about_sec .tel_sec_box .tel {
    font-size: 20px;
    font-weight: 900;
    color: var(--black-color);
    letter-spacing: 0.05em;
}

.page_campus .about_sec .tel_sec_box .tel .big {
    font-size: 30px;
}

.page_campus .about_sec .tel_sec_box .txt {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1;
    margin-top: 5px;
}

/* faq */
.page_faq .menu_list_btn ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.page_faq .menu_list_btn ul li a {
    display: flex;
    align-items: center;
    padding: 0 30px;
    justify-content: space-between;
    border: 3px solid #333333;
    border-radius: 40px;
    background-color: #fff;
    transition: 0.3s;
}

.page_faq .menu_list_btn ul li a:hover {
    background-color: #b0efc3;
}

.page_faq .menu_list_btn ul li a .name {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 70px;
    color: #333333;
}

.page_faq .menu_list_btn ul li a .icon {
    width: 18px;
}

.page_faq .menu_list_btn ul li a .icon svg {
    display: block;
}

.page_faq .faq_sec_box {
    margin-top: 110px;
}

.page_faq .faq_sec+.faq_sec {
    margin-top: 110px;
}

.page_faq .faq_sec .common_about_ttl {
    text-align: center;
}

.page_faq .faq_sec .border {
    width: 155px;
    margin: 35px auto 0;
}

.page_faq .faq_sec .border svg {
    display: block;
}

.page_faq .faq_sec .list {
    margin-top: 35px;
}

.page_faq .faq_sec .list ul li {
    border: 3px solid var(--black-color);
    border-radius: 10px;
    background-color: #FCFFED;
}

.page_faq .faq_sec .list ul li+li {
    margin-top: 24px;
}

.page_faq .faq_sec .list ul li .quest {
    display: flex;
    gap: 30px;
    align-items: center;
    padding-right: 50px;
    position: relative;
    padding: 30px 60px 30px 40px;
}

.page_faq .faq_sec .list ul li .quest::before,
.page_faq .faq_sec .list ul li .quest::after {
    position: absolute;
    content: "";
    width: 26px;
    height: 2px;
    background-color: var(--black-color);
    right: 0;
    top: 50%;
    translate: -50% 0;
    transition: .3s;
}

.page_faq .faq_sec .list ul li .quest.nowOpen::before {
    rotate: 45deg;
}

.page_faq .faq_sec .list ul li .quest.nowOpen::after {
    rotate: -45deg;
}

.page_faq .faq_sec .list ul li .quest .q_mark {
    font-size: 44px;
    font-weight: 800;
    color: var(--main-color);
    line-height: 1;
}

.page_faq .faq_sec .list ul li .quest .text {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.06em;
}

.page_faq .faq_sec .list ul li .answer {
    display: flex;
    gap: 30px;
    align-items: center;
    margin: 0px 40px;
    border-top: 3px dashed #1c1c1c;
    padding: 30px 0px 30px;
}

.page_faq .faq_sec .list ul li .answer .a_mark {
    font-size: 44px;
    font-weight: 800;
    color: #C91111;
    line-height: 1;
}

.page_faq .faq_sec .list ul li .answer .text {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 1.8;
}

/* お問い合わせ */
.common_main_page.contact {
    background-color: #F2FFFE;
}

.common_main_page.contact .ttl_box .en {
    color: #28BFED;
}

.breadcrumb.contact ul li {
    color: #28BFED;
}

.page_contact .contact_sec .main_box {
    background-color: #F4FFF2;
    border: 3px solid var(--black-color);
    padding: 55px 50px;
}

.page_contact .contact_sec .main_box .theme {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 0.07em;
    line-height: 1;
    color: #69BD83;
}

.page_contact .contact_sec .main_box .theme {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 0.07em;
    line-height: 1;
    color: #69BD83;
}

.page_contact .contact_sec .main_box .comment {
    font-size: 16px;
    letter-spacing: 0.05em;
    margin-top: 11px;
}

.page_contact .contact_sec .main_box .list {
    margin-top: 25px;
}

.page_contact .contact_sec .main_box .list ul li {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.07em;
}

.page_contact .contact_sec .main_box .list ul li+li {
    margin-top: 3px;
}

.page_contact .contact_sec .main_box .line_sec {
    margin-top: 25px;
}

.page_contact .contact_sec .main_box .line_sec .com {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.page_contact .contact_sec .main_box .line_sec .btn_box {
    width: 320px;
    margin-top: 12px;
}

.page_contact .contact_sec .main_box .line_sec .btn_box a {
    display: flex;
    padding: 0px 20px;
    align-items: center;
    border-radius: 5px;
    transition: 0.3s;
}

.page_contact .contact_sec .main_box .line_sec .btn_box a:hover {
    opacity: 0.8;
}

.page_contact .contact_sec .main_box .line_sec .btn_box a.line {
    background-color: #06c755;
}

.page_contact .contact_sec .main_box .line_sec .btn_box a .icon {
    width: 23px;
    translate: 0 4px;
}

.page_contact .contact_sec .main_box .line_sec .btn_box a .icon svg {
    width: 100%;
}

.page_contact .contact_sec .main_box .line_sec .btn_box a .name {
    color: #fff;
    font-size: 16px;
    font-weight: 900;
    line-height: 1;
    margin-left: 17px;
    line-height: 60px;
}

.page_contact .contact_sec .main_box .line_sec .btn_box a .arrow {
    width: 17px;
    translate: 0 5px;
    margin-left: auto;
}

.page_contact .contact_sec .main_box .line_sec .btn_box a .arrow svg {
    width: 100%;
}

.page_contact .contact_sec .main_box .line_sec .acc {
    font-size: 16px;
    letter-spacing: 0.07em;
    margin-top: 10px;
}

.page_contact .contact_sec .contact_form {
    width: 100%;
    margin-top: 90px;
}

.page_contact .contact_sec .contact_form img {
    width: 100%;
}

.page_contact .contact_sec .contact_form .confirm_btn {
    width: 300px;
    margin: 50px auto 0;
}

.page_contact .contact_sec .contact_form .confirm_btn a {
    display: block;
    text-align: center;
    line-height: 70px;
    background-color: #26BFED;
    border-radius: 40px;
    color: #fff;
    font-weight: 800;
    font-size: 22px;
    letter-spacing: 0.06em;
    transition: .3s;
}

.page_contact .contact_sec .contact_form .confirm_btn a:hover {
    opacity: 0.7;
}

/* 就職について */
.page_employment .employment_sec .menu_list_btn ul {
    display: flex;
    justify-content: space-between;
}

.page_employment .employment_sec .menu_list_btn ul li {
    width: 360px;
}

.page_employment .employment_sec .menu_list_btn ul li a {
    display: flex;
    align-items: center;
    padding: 0 30px;
    justify-content: space-between;
    border: 3px solid #333333;
    border-radius: 40px;
    background-color: #fff;
    transition: 0.3s;
}

.page_employment .employment_sec .menu_list_btn ul li a:hover {
    background-color: #b0efc3;
}

.page_employment .employment_sec .menu_list_btn ul li a .name {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 64px;
    color: #333333;
}

.page_employment .employment_sec .menu_list_btn ul li a .icon {
    width: 18px;
}

.page_employment .employment_sec .menu_list_btn ul li a .icon svg {
    display: block;
}

.employment_sec_box {
    margin-top: 115px;
}

.employment_sec_box .page_ttl_box .ttl {
    font-size: 36px;
    font-weight: 600;
    letter-spacing: .12em;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 32px 0;
}

.employment_sec_box .employment_record_sec .page_ttl_box {
    position: relative;
}

.employment_sec_box .employment_record_sec .page_ttl_box .ttl {
    flex-direction: row;
    justify-content: flex-start;
    gap: 0 38px;
    color: var(--main-color);
    margin-left: 35px;
    font-weight: 900;
}

.employment_sec_box .employment_record_sec .page_ttl_box .ttl::before {
    content: '';
    width: 82px;
    height: 27px;
    position: absolute;
    top: 0;
    left: 0;
    rotate: -30deg;
    translate: -20% -50%;
    background-image: url(../img/icon_black_ten.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.employment_sec_box .page_ttl_box .ttl::after {
    content: '';
    width: 685px;
    height: 10px;
    background-image: url(../img/border_yoko_long.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: left;
}

.employment_sec_box .employment_record_sec .page_ttl_box .ttl::after {
    width: 797px;
}

.employment_sec_box .employment_record_sec {
    border-radius: 20px;
    background-color: #FCFFED;
    border: 4px solid var(--black-color);
    padding: 90px 50px 44px;
}

.employment_sec_box .employment_record_sec .main_text {
    font-size: 30px;
    letter-spacing: .05em;
    line-height: 1.5;
    font-weight: 900;
    text-decoration-line: underline;
    text-decoration-color: #FFF421;
    text-decoration-thickness: 12px;
    text-underline-offset: -5px;
    margin-top: 15px;
}

.employment_record_sec .employment_contents {
    border-radius: 6px;
    background-color: #fff;
    border: 3px solid var(--black-color);
    margin-top: 30px;
    padding: 30px;
}

.employment_record_sec .employment_contents .employment_list_box {
    position: relative;
}

.employment_record_sec .employment_contents .employment_list_box:first-child {
    padding-bottom: 30px;
}

.employment_record_sec .employment_contents .employment_list_box:first-child::before {
    content: '';
    width: 100%;
    height: 3px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: url(../img/deco_dashed.svg);
    background-repeat: repeat;
    background-size: cover;
    background-position: left;
}

.employment_record_sec .employment_contents .employment_list_box+.employment_list_box {
    padding-top: 30px;
}

.employment_record_sec .employment_contents .index {
    color: var(--main-color);
    font-size: 24px;
    letter-spacing: .07em;
    padding-bottom: .3em;
    font-weight: 700;
}

.employment_record_sec .employment_contents .employment_list_box dl,
.employment_record_sec .employment_contents .employment_list_box dd {
    margin: 0;
    font-weight: 500;
}

.employment_record_sec .employment_contents .employment_list_box dl+dl {
    margin-top: 25px;
}

.employment_support_sec {
    padding: 100px 0 171px;
}

.employment_sec_box .employment_support_sec .ttl {
    display: flex;
    align-items: center;
    gap: 0 20px;
    font-size: 32px;
    letter-spacing: .05em;
    font-weight: 900;
}

.employment_support_sec .ttl::before {
    content: "";
    width: 90px;
    height: 12px;
    background-color: var(--main-color);
}

.employment_support_sec .text_box {
    margin: 50px 0 80px;
}

.employment_support_sec .text_box .main_text {
    color: var(--main-color);
    font-size: 38px;
    letter-spacing: .05em;
    font-weight: 900;
    text-decoration-line: underline;
    text-decoration-color: #FFF421;
    text-decoration-thickness: 16px;
    text-underline-offset: -4px;
}

.employment_support_sec .text_box .text {
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: .07em;
    font-weight: 500;
    margin-top: 28px;
}

.employment_support_sec .schedule_box {
    border-radius: 6px;
    border: 3px solid #1C1C1C;
    position: relative;
    padding: 50px 30px;
    background-color: #fff;
}

.employment_support_sec .schedule_box::before {
    content: '';
    width: 1240px;
    height: 321px;
    position: absolute;
    bottom: -60px;
    left: 50%;
    translate: -50% 0%;
    background-color: #FFF421;
    z-index: -1;
}

.employment_support_sec .schedule_box::after {
    content: '';
    width: 100%;
    height: 80px;
    position: absolute;
    bottom: -60px;
    left: 0;
    background-image: url(../img/deco_border.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    z-index: -1;
}

.employment_support_sec .schedule_box .index {
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% -50%;
    z-index: 1;
    background-color: #fff;
    font-size: 28px;
    letter-spacing: .05em;
    font-weight: 900;
    padding: 0 1em;
    white-space: nowrap;
}

.employment_support_sec .schedule_box .schedule_list {
    display: flex;
    gap: 0 30px;
}

.employment_support_sec .schedule_box .schedule_list+.schedule_list {
    margin-top: 20px;
}

.employment_support_sec .schedule_box .schedule_list .years {
    width: 220px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    line-height: 1.3;
    letter-spacing: .05em;
    font-weight: 900;
    height: 300px;
}

.employment_support_sec .schedule_box .schedule_list.first_year .years {
    background-color: #FADAD2;
}

.employment_support_sec .schedule_box .schedule_list.second_year .years {
    background-color: #D2CDE6;
}

.employment_support_sec .schedule_box .schedule_list .list_box {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.employment_support_sec .schedule_box .schedule_list .list_box .point {
    border: 1px solid var(--black-color);
    padding: .3em 1em;
    width: fit-content;
    font-size: 16px;
    font-weight: 900;
    position: relative;
}

.employment_support_sec .schedule_box .schedule_list .list_box .point::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 1px;
    height: 75px;
    translate: -50% 100%;
    border-left: 2px dotted var(--black-color);
}

.employment_support_sec .schedule_box .schedule_list.second_year .list_box .point::before {
    top: 0;
    translate: -50% -100%;
}

.employment_support_sec .schedule_box .schedule_list .years_box .flex_box {
    display: flex;
    align-items: center;
}

.employment_support_sec .schedule_list .years_box .flex_box+.flex_box {
    margin-top: 10px;
}

.employment_support_sec .schedule_list .years_box .flex_box .month {
    flex-shrink: 0;
    width: 70px;
    font-size: 18px;
    font-weight: 500;
}

.employment_support_sec .schedule_list .years_box .flex_box .step_box {
    display: flex;
    align-items: center;
    gap: 0 20px;
}

.employment_support_sec .schedule_list .years_box .flex_box .step_box .en {
    flex-shrink: 0;
    font-weight: 900;
    font-size: 16px;
    letter-spacing: .05em;
    padding: 0.3em .5em;
    position: relative;
}

.employment_support_sec .schedule_list .years_box .flex_box .step_box .en::after {
    content: '';
    width: 12px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    translate: 97% 0%;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.employment_support_sec .schedule_list.first_year .years_box .flex_box .step_box .en::after {
    background-color: #FADAD2;
}

.employment_support_sec .schedule_list.second_year .years_box .flex_box .step_box .en::after {
    background-color: #D2CDE6;
}

.employment_support_sec .schedule_list.first_year .years_box .flex_box .step_box .en {
    background-color: #FADAD2;
}

.employment_support_sec .schedule_list.second_year .years_box .flex_box .step_box .en {
    background-color: #D2CDE6;
}

.employment_support_sec .schedule_list .years_box .flex_box .step_box .text {
    font-weight: 500;
    letter-spacing: .07em;
}

.employment_support_sec .schedule_list .years_box .flex_box .size {
    background-color: #F1BC1B;
    font-weight: 900;
    letter-spacing: .07em;
    font-size: 18px;
    padding: .5em 2em;
    margin-top: 20px;
}

.graduate_message_sec {
    background-color: #FFF8ED;
    border: 4px solid var(--black-color);
    border-radius: 20px;
    padding: 55px 50px 69px;
}

.graduate_message_sec .contents {
    display: flex;
    gap: 0 50px;
    margin-top: 39px;
}

.graduate_message_sec .contents:nth-child(odd) {
    flex-direction: row-reverse;
}

.graduate_message_sec .contents+.contents {
    margin-top: 100px;
}

.graduate_message_sec .contents .img_box {
    width: 310px;
    flex-shrink: 0;
}

.graduate_message_sec .contents .img_box .img img {
    width: 100%;
    height: 290px;
    object-fit: cover;
    border-radius: 6px;
}

.graduate_message_sec .contents .img_box .graduate_info {
    margin-top: 10px;
}

.graduate_message_sec .contents .img_box .graduate_info .flex_box {
    display: flex;
    justify-content: space-between;
}

.graduate_message_sec .contents .img_box .graduate_info .flex_box .name {
    font-weight: 700;
    letter-spacing: .05em;
    font-size: 16px;
}

.graduate_message_sec .contents .img_box .graduate_info .flex_box .name .small {
    font-size: 14px;
    font-weight: 500;
}

.graduate_message_sec .contents .img_box .graduate_info .flex_box .text {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0em;
}

.graduate_message_sec .contents .message_box .flex_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.graduate_message_sec .contents .message_box .message {
    color: var(--main-color);
    font-size: 22px;
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: .05em;
}

.graduate_message_sec .contents .message_box .company_box {
    border-radius: 8px;
    background-color: var(--main-color);
    color: #fff;
    font-size: 16px;
    letter-spacing: .11em;
    line-height: 1.3;
    font-weight: 900;
    text-align: center;
}

.graduate_message_sec .contents .message_box .company_box .text {
    padding: .5em 1em;
}

.graduate_message_sec .contents .message_box .company_box .company {
    border-top: 2px solid #fff;
    padding: 1em;
}

.graduate_message_sec .contents .message_box .text_box {
    margin-top: 20px;
}

.graduate_message_sec .contents .message_box .text_box .text {
    font-size: 16px;
    letter-spacing: .07em;
}

.graduate_message_sec .contents .message_box .text_box .text+.text {
    margin-top: 15px;
}

.companies_voice_sec {
    background-color: #F8FFF7;
    border: 4px solid var(--black-color);
    border-radius: 20px;
    padding: 70px 50px 62px;
    margin: 76px 0 40px;
}

.companies_voice_sec .contents {
    display: flex;
    gap: 0 50px;
    margin-top: 39px;
}

.companies_voice_sec .contents .img_box {
    width: 310px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
}

.companies_voice_sec .contents .img_box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px;
}

.companies_voice_sec .contents .img_box .company_info {
    margin-top: 10px;
    flex-grow: 1;
}

.companies_voice_sec .contents .img_box .company_info .company {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .05em;
}

.companies_voice_sec .contents .img_box .company_info .name {
    font-size: 14px;
    font-weight: 500;
    text-align: right;
}

.companies_voice_sec .contents .message_box .message {
    color: var(--main-color);
    font-size: 22px;
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: .05em;
}

.companies_voice_sec .contents .message_box .text_box {
    margin-top: 30px;
}

.companies_voice_sec .contents .message_box .text_box .text {
    font-size: 16px;
    letter-spacing: .07em;
}

.companies_voice_sec .contents .message_box .text_box .text .color {
    font-weight: 900;
}

.companies_voice_sec .contents .message_box .text_box .text+.text {
    margin-top: 18px;
}


/* 問い合わせ先方記述 */
.contact .form_sab {
    text-align: right;
    margin: 20px 0 10px
}

.contact .form_sab span {
    color: #F00;
}

.contact .form_area {
    background-color: #ffffff;
    padding: 30px;
}

.contact .form_area dl {
    margin: 0 0 20px;
    padding-bottom: 20px;
    border-bottom: solid 1px #cccc;
}

.contact .form_area dt {
    margin: 0 0 7px 0;
    font-size: 20px;
    font-weight: bold;
}

.contact .flex_item_up {
    margin-top: 20px;
}

.small_attention {
    background: none !important;
    color: #fe3131 !important;
}

.contact .form_area dt span {
    font-size: 15px;
    color: #ffffff;
    background: #da0000;
    border-radius: 50px;
    margin-left: 25px;
    padding-left: 17px;
    padding-right: 17px;
    padding-top: 5px;
    padding-bottom: 5px;
    vertical-align: middle;
}

.contact .form_area dd {
    margin: 0;
}

.contact .form_area dd input.form_border {
    border: #d0d0d0 solid 1px;
    background: #f0f0f0;
    padding: 12px;
}

.contact .form_area dd select.form_border {
    border: #AACF52 solid 1px;
    padding: 10px;
}

.contact .form_area dl.ninni dt span {
    background-color: #656565;
}

.contact .form_area dl.ninni dt span.inport {
    background-color: #da0000 !important;
}

.contact input::placeholder,
.contact input[type="text"] {
    color: #CCC;
    font-size: 14px;
}

.contact input[type="text"].textFocus {
    color: #333;
    font-size: 14px;
}

.contact textarea {
    color: #CCC;
    font-size: 14px;
    line-height: 140%;
}

.contact textarea.textFocus {
    color: #333;
    font-size: 14px;
    line-height: 140%;
}

.contact .seibetsu dd input {
    vertical-align: middle;
    margin: 0 5px 0 0;
}

.contact .seibetsu dd label {
    margin: 0 40px 0 0;
}

.contact .txt_xs {
    width: 230px;
}

.contact .txt_s {
    width: 340px;
}

.contact .txt_l {
    width: 640px;
}

.contact .message {
    width: 640px;
    height: 140px;
    border: #d0d0d0 solid 1px;
    background: #f0f0f0;
    padding: 10px;
}

.contact .address {
    margin: 20px 0 0 !important;
}

span.customSelect {
    width: 150px;
    padding: 8px 10px;
    background: url(../contact/images/select_icon.png) no-repeat right #FFF;
    border: #AACF52 solid 1px;
}

.customSelectInner {
    width: auto !important;
}

.contact .form_area dt span.caution {
    font-size: 13px;
    padding: 0 0 0 10px;
    vertical-align: bottom;
}

/* ボタン */
.btn_list {
    margin: 55px 0 30px;
    text-align: center;
}

.btn_list li {
    display: inline-block;
    width: 220px;
    height: 46px;
    margin: 0 10px;
    padding: 0;
}

.btn_list li input {
    width: 220px;
    height: 46px;
    text-indent: -9999px;
    border: none;
    cursor: pointer;
}

.btn_list li input:hover {
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}

.reset_btn {
    background: url(../img/contact_btn_02.png) no-repeat #FFF;
}

.check_btn {
    background: url(../img/contact_btn_01.png) no-repeat #FFF;
}

.contact .form_area dl.flex {
    justify-content: space-between;
    width: 100%;
}

.contact .form_area dl.flex dd input.form_border {
    width: 100%;
}

.contact .form_area dl.flex dd {
    width: 100%;
}

.contact .form_area dl.flex .flex_item {
    width: 48%;
}

/* ---------- 確認 ---------- */

table#mfp_confirm_table {
    border-spacing: 0px;
    border-collapse: collapse;
    width: 100%;
}

div#mfp_phase_confirm {
    clear: both;
}

#mfp_phase_confirm_inner h4 {
    font-size: 15px;
    color: #333;
    font-weight: normal;
}

#mfp_phase_confirm_inner th {
    margin: 30px 0 10px 0;
    font-size: 16px;
    display: block;
    font-weight: normal;
    text-align: left;
}

#mfp_phase_confirm_inner td {
    font-size: 16px;
    color: #666;
    margin: 0 0 10px 1em;
    display: block;
    text-align: left
}

.mfp_buttons {
    margin: 55px 0 30px;
}

.mfp_buttons button {
    width: 220px;
    height: 46px;
    margin: 0 10px;
    padding: 0;
}

#mfp_button_send {
    width: 220px;
    height: 46px;
    text-indent: -9999px;
    border: none;
    cursor: pointer;
    background: url(../contact/images/contact_btn_05.png) no-repeat #FFF;
}

#mfp_button_cancel {
    width: 220px;
    height: 46px;
    text-indent: -9999px;
    border: none;
    cursor: pointer;
    background: url(../contact/images/contact_btn_06.png) no-repeat #FFF;
}


/* ---------- 完了 ---------- */
.tel {
    font-size: 26px;
    font-weight: bold;
    margin: 40px 0 0;
}

.top_btn {
    text-align: center;
    margin: 40px 0 60px;
}

div#mfp_loading {
    z-index: 20001;
    position: absolute;
    display: none;
    width: 40px;
    height: 40px;
    background-image: url(../contact/images/mfp_loading.gif);
}

div.mfp_err,
.js_err#errormsg_opencamp {
    clear: both;
    display: none;
    text-align: left;
    margin: 5px 0px 0px 0px;
    padding: 3px 0px 5px 17px;
    color: #F00;
    font-size: 12px;
    line-height: normal;
    background-image: url(../contact/images/mfp_error.gif);
    background-repeat: no-repeat;
    background-position: 0px 5px;
}

.mfp_parent_error {
    border: solid 2px #F00;
}

.problem {
    background-color: #FCC;
}

div#mfp_error {
    background-color: #FEE;
    border: solid 1px #F00;
    padding: 10px;
    display: none;
}

div#mfp_error p {
    padding: 0px;
    margin: 0px;
    font-size: 14px;
    text-align: center;
}

div#mfp_error p strong {
    font-size: 18px;
    color: #F00;
}

div#mfp_warning {
    background-color: #FEE;
    border: solid 1px #F00;
    padding: 10px;
    display: none;
}

div#mfp_warning p {
    padding: 0px;
    margin: 0px;
    font-size: 14px;
    text-align: center;
}

div#mfp_warning p strong {
    font-size: 18px;
    color: #F00;
}

div#mfp_price {
    color: #C00;
    font-size: 36px;
    padding: 10px;
    font-weight: bolder;
}

div#mfp_price span {
    color: #666;
    font-size: 12px;
    font-weight: normal;
}

button.mfp_next,
button.mfp_prev {
    font-size: 18px;
    margin: 10px;
    padding: 5px 10px;
}

button.mfp_next {
    float: right;
}

button.mfp_prev {
    float: left;
}

ul#mfp_phase_stat {
    padding: 10px;
}

ul#mfp_phase_stat li {
    float: left;
    padding: 8px 15px;
    border-radius: 3px;
    margin: 5px;
    list-style: none;
    font-size: 14px;
}

ul#mfp_phase_stat li.mfp_phase_arrow {
    bos-shadow: none;
    padding: 8px 5px;
}

ul#mfp_phase_stat li.mfp_active_phase {
    background-color: #E8EEF9;
    box-shadow: 0px 0px 5px #000;
}

ul#mfp_phase_stat li.mfp_inactive_phase {
    background-color: #CCC;
    color: #666;
    box-shadow: 0px 0px 5px #CCC;
}

div.mfp_buttons {
    clear: both;
    padding: 10px 0px;
    text-align: center;
}

div.mfp_buttons button#mfp_button_cancel {}

.imagebutton {
    margin: 0px;
    padding: 0px;
    border: none;
    outline: none;
    background: none;
}

input#mfp_reserve_item,
input#mfp_reserve_date {
    display: none;
}

div#mfp_reserve_wrapper {
    position: relative;
    overflow: hidden;
    border: solid 1px #CCC;
}

div#mfp_reserve_inner {
    position: relative;
    padding: 0px 0px 0px 100px;
    overflow: auto;
}

div#mfp_reserve_wrapper table {
    border-spacing: 0px;
    border-collapse: collapse;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_label {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100px;
    background-color: #FEE;
    z-index: 100;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_value {
    padding: 0px 0px 0px 0px;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active,
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning {
    cursor: pointer;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active:hover,
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning:hover {
    background-color: #E8EEF9;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_current {
    background-color: #0068B7;
    color: #FFF;
}

td.mfp_reserve_disabled {
    background-color: #CCC;
}

td.mfp_reserve_warning {
    background-color: #FFC;
}

div#mfp_reserve_wrapper table tr td,
div#mfp_reserve_wrapper table tr th {
    border: solid 1px #CCC;
    padding: 0px 5px;
    font-size: 12px;
    text-align: center;
    font-family: Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
    font-weight: normal;
    height: 20px;
    text-align: left;
}

td.mfp_reserve_week_0 {
    color: #F00;
    background-color: #FEE;
}

td.mfp_reserve_week_6 {
    color: #00F;
    background-color: #EEF;
}

div.mfp_ok {
    border-radius: 5px;
    background-color: #090;
    border: solid 1px #090;
    display: inline-block;
    line-height: 1.5em;
    padding: 0px 5px;
    margin: 0px 2px;
    color: #FFF;
    font-size: 10px;
    background-image: url(images/header.png);
    background-size: 100% 100%;
    display: none;
}

div.prefcodeWrapper {
    position: relative;
}

div.prefcodeResult {
    position: absolute;
    top: 0px;
    left: 0px;
    padding: 5px;
    border: solid 1px #CCC;
    background-color: #FFF;
    box-shadow: 0px 0px 5px #CCC;
    display: none;
}

div.prefcodeResult div {
    cursor: pointer;
}

div.prefcodeResult div:hover {
    background-color: #C9EBFB;
}

div.prefcodeResult div.prefcodeNext {
    background-color: #EEE;
    text-align: center;
}

div.prefLoading {
    padding: 60px 100px;
    background: url(images/mfp_zip_loading.gif) no-repeat center center;
}

.hidefield {
    height: 0px;
    overflow: hidden;
}

.showfield {
    height: auto;
    overflow: visible;
}

div#mfp_hidden {
    overflow: hidden;
    width: 1px;
    height: 1px;
    padding: 0px;
    margin: 0px;
}

.erMsg {
    color: #d45252;
}

.contact_text.thanks {
    text-align: center;
    font-size: 18px;
    font-weight: 600;
}

.ichiran_link_form {
    width: 300px;
    display: block;
    margin: 50px auto 0;
    line-height: 55px;
    text-align: center;
    background-color: #06c755;
    color: #fff !important;
    font-size: 18px;
    font-weight: 600;
}

.thanks_page_box {
    text-align: center;
}

.thanks_page_box .thanks_text {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 1.8;
}

.thanks_page_box .top_btn_box {
    width: 300px;
    margin: 30px auto 0;
}

.thanks_page_box .top_btn_box a {
    background-color: #69bd83;
    transition: .3s;
    border: 1px solid #69bd83;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.05em;
    font-size: 18px;
    text-align: center;
    display: block;
    line-height: 50px;
}

.thanks_page_box .top_btn_box a:hover {
    background-color: #fff;
    color: #69bd83;
}

.ori_select_box {
    padding: 10px 5px;
    border: 1px solid #d0d0d0;
    background: #f0f0f0;
    width: 151px;
    font-size: 15px;
}

dl.opencamp dd input::placeholder {
    color: #F00;
    font-size: .8em;
    opacity: .7;
}

#info_flow .cont dl.giji {
    padding-bottom: 40px;
}

#info_flow .cont dl.giji>* {
    position: relative;
    z-index: 1;
}

#info_flow .cont dl.arrow {
    padding-top: 80px;
}

#info_flow .cont dl.arrow>* {
    position: relative;
    z-index: 1;
}

#info_flow .cont dl.arrow::before {
    content: "";
    position: absolute;
    bottom: 0;
    top: 0;
    height: 80px;
    background-color: #deffe8;
    width: 180px;
    left: 15px;
    clip-path: polygon(0 50%, 20% 50%, 20% 0, 80% 0, 80% 50%, 100% 50%, 50% 100%);
}

#info_flow .cont dl.giji::before {
    content: "";
    position: absolute;
    bottom: 0;
    top: 0;
    left: 60px;
    background-color: #deffe8;
    width: 90px;
}

#info_flow .cont dl {
    display: flex;
    gap: 30px;
    margin: 0;
    position: relative;
}

#info_flow .cont dl dt {
    border: 3px solid #333333;
    width: 210px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    font-size: 18px;
    background-color: #fff;
    font-weight: 700;
    letter-spacing: 0.07em;
}

#info_flow .cont dl dt .color {
    font-size: 1.2em;
    color: var(--main-color);
}

#info_flow .cont dl dt.red {
    background-color: #fffdb3;
}

#info_flow .cont dl dt.red .color {
    color: #C00;
}

#info_flow .cont dl dd {
    margin: 0;
    padding: 20px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 16px;
    letter-spacing: 0.07em;
    line-height: 1.8;
}

#info_flow .cont dl dd .lr_text {
    font-size: 18px;
    font-weight: 700;
}

#info_flow .cont dl dd .note_area {
    margin-top: 1em;
}

#info_flow .cont dl dd .note_area .note_text {
    display: flex;
    align-items: flex-start;
    gap: .5em;
}

#info_flow .cont dl dd .note_area .note_text::before {
    content: "※";
}

#info_flow .cont .tel_area {
    border: 3px solid #333333;
    background-color: #fff;
    text-align: center;
    padding: 40px;
}

#info_flow .cont .tel_area .color_text {
    font-size: 18px;
    color: #C00;
    letter-spacing: .07em;
    margin-bottom: .7em;
    font-weight: 700;
}

#info_flow .cont .tel_area .tel_num {
    font-size: 24px;
    font-weight: 700;
}

.contact .form_area dt span.size {
    font-size: .7em;
    color: #da0000;
    background: unset;
    border-radius: unset;
    margin-left: 0;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
    vertical-align: middle;
    margin-top: .5em;
}

.yubin {
    translate: -5px 10px;
}

.yubin_small {
    font-size: 12px;
    color: #6f6f6f !important;
    letter-spacing: 0.05em;
    translate: 15px 13px;
}

.attention_color {
    padding: 3px 0px 5px 17px;
    width: fit-content;
    color: #F00;
    font-size: 12px;
    line-height: normal;
    background-image: url(../contact/images/mfp_error.gif);
    background-repeat: no-repeat;
    background-position: 0px 5px;
    margin: 0 auto 5px;
}

.course_detail_area #saibai .ttl_sec,
.course_detail_area #saibai .area_ttl {
    color: #b780a5;
}

.course_detail_area #it .ttl_sec,
.course_detail_area #it .area_ttl {
    color: #31aecb;
}

.course_detail_area #business .ttl_sec,
.course_detail_area #business .area_ttl {
    color: #e96e69;
}

.course_detail_area {
    margin-bottom: 80px;
}

.course_detail_area .detail_block+.detail_block {
    margin-top: 80px;
}

.course_detail_area .detail_block .area_ttl {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: .02em;
    margin-bottom: .5em;
    padding-left: .5em;
    border-left: 5px solid currentColor;
    line-height: 1.5;
}

.course_detail_area .detail_block .ocu_area {
    margin-top: 40px;
}

.course_detail_area .detail_block .ocu_area .ocu_cont {
    background-color: #fff;
    border-radius: 20px;
    padding: 30px;
    border: 2px solid #333333;
}

.course_detail_area .detail_block .ocu_area .ocu_cont ul {
    display: flex;
    flex-wrap: wrap;
    gap: .7em 1.5em;
    font-size: 16px;
    letter-spacing: .02em;
    line-height: 1.5;
    font-weight: 700;
}

.course_detail_area .detail_block .ocu_area .ocu_cont ul li {
    display: flex;
    align-items: center;
    gap: 0.3em;
}

.course_detail_area .detail_block .ocu_area .ocu_cont ul li::before {
    content: "";
    width: .7em;
    height: .7em;
    border-radius: 50%;
    transform: translateY(.1em);
}

.course_detail_area #saibai.detail_block .ocu_area .ocu_cont ul li::before,
.course_detail_area #saibai.detail_block .course_feature_area .feature_list ul li .head {
    background-color: #b780a5;
}

.course_detail_area #it.detail_block .ocu_area .ocu_cont ul li::before,
.course_detail_area #it.detail_block .course_feature_area .feature_list ul li .head {
    background-color: #31aecb;
}

.course_detail_area #business.detail_block .ocu_area .ocu_cont ul li::before,
.course_detail_area #business.detail_block .course_feature_area .feature_list ul li .head {
    background-color: #e96e69;
}

.course_detail_area .detail_block .flex_box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    margin-top: 40px;
    align-items: center;
}

.course_detail_area .detail_block .flex_box .flex_text_area {
    padding: 16px 0;
}

.course_detail_area .detail_block .flex_box .flex_text_area .text {
    font-size: 16px;
    line-height: 1.7;
}

.course_detail_area .detail_block .flex_box .flex_img_area {
    height: 270px;
}

.course_detail_area .detail_block .flex_box .flex_img_area img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.course_detail_area .detail_block .course_feature_area {
    margin-top: 40px;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li+li {
    margin-top: 20px;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 30px;
    background-color: #fff;
    overflow: hidden;
    border-radius: 10px;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li .head {
    color: #fff;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    padding: 20px 10px;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li .head .num {
    font-size: 31px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1.1;
    margin-bottom: .2em;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li .head .num .size {
    font-size: .35em;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li .head .feature_ttl {
    font-size: 16px;
    line-height: 1.5;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li .feature_flex_box {
    display: flex;
    align-items: center;
    gap: 30px;
    justify-content: space-between;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li .feature_flex_box .text_area .text {
    font-size: 16px;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li .feature_flex_box .feature_img {
    width: 240px;
    aspect-ratio: 5/3;
    flex-shrink: 0;
}

.course_detail_area .detail_block .course_feature_area .feature_list ul li .feature_flex_box .feature_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.menu_list_btn {
    display: none;
}

.menu_list_btn.show {
    display: block;
}

/* 5つの特長（PC） */

.page_features section.section_introduction {
    text-align: center;
    margin-bottom: 200px;
}

.page_features section.section_introduction .title {
    font-size: 30px;
    font-weight: 800;
    letter-spacing: 0.07em;
    margin-bottom: 2em;
}

.page_features section.section_introduction .catch {
    font-size: 26px;
    font-weight: 800;
    letter-spacing: 0.06em;
    color: var(--main-color);
}

.page_features section.section_introduction .lead {
    margin-top: 30px;
    font-weight: 500;
    letter-spacing: 0.07em;
    line-height: 1.7;
}

.page_features section.section_features {
    background-image: url(../img/top_second_bg.jpg);
    background-position: center;
    padding: 100px 0 110px;
    border-top: 5px solid;
    border-bottom: 5px solid;
}

.page_features section.section_features .sec_title {
    text-align: center;
    margin-bottom: 100px;
    font-size: 40px;
}

.page_features section.section_features .sec_title .accent {
    font-size: 80px;
    line-height: 1;
    color: var(--main-color);
    -webkit-text-stroke: 3px var(--black-color);
    font-weight: 800;
}

.page_features section.section_features .sec_title .logo img {
    width: 400px;
}

.page_features section.section_features ol {
    padding: 0;
}

.page_features section.section_features ol li {
    list-style: none;
}

.page_features section.section_features ol li + li {
    margin-top: 50px
}

.page_features section.section_features ol li .flex_box {
    align-items: center;
}

.page_features section.section_features ol li.list {
    border: 3px solid var(--black-color);
    border-radius: 6px;
    background-color: #fff;
    padding: 50px;
}

.page_features section.section_features ol li .title_box {
    align-items: center;
    gap: 20px;
    margin-bottom: 50px;
}

.page_features section.section_features ol li .title_box .label {
    font-weight: 800;
    background-color: #d0ffde;
    border: 3px solid var(--black-color);
    border-radius: 55px;
    padding: .2em 1em;
    width: 100px;
    height: 100px;
    text-align: center;
    line-height: 1.1;
    padding-top: 13px;
}

.page_features section.section_features ol li .title_box .label .jp {
    font-size: 20px;
}

.page_features section.section_features ol li .title_box .label .num {
    font-size: 40px;
}

.page_features section.section_features ol li .title_box .title {
    font-size: 30px;
    color: var(--main-color);
    width: calc( 100% - 120px );
    border-bottom: 5px dashed;
    padding-bottom: 10px;
}

.page_features section.section_features ol li .text_box {
    width: 55%;
}

.page_features section.section_features ol li .text_box dl + dl {
    margin-top: 40px;
}

.page_features section.section_features ol li .text_box dl dt {
    font-weight: 800;
    font-size: 20px;
    margin-bottom: .5em;
}

.page_features section.section_features ol li .text_box dl dd {
    font-size: 15px;
    margin: 0;
}

.page_features section.section_features ol li .text_box dl dd ul li + li {
    margin-top: 1em;
}

.page_features section.section_features ol li .text_box dl dd ul li {
    position: relative;
    padding-left: 15px;
}

.page_features section.section_features ol li .text_box dl dd ul li:before {
    content: "";
    width: 8px;
    height: 8px;
    background: #000;
    border-radius: 100%;
    position: absolute;
    left: 0;
    top: 10px;
}

.page_features section.section_features ol li .text_box .attention {
    font-size: 12px;
}

.page_features section.section_features ol li .image_box {
    width: 36%;
}

.page_features section.section_features ol li .image_box .image + .image {
    margin-top: 20px;
}

.page_features section.section_features ol li .image_box img {
    border-radius: 10px;
}

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

    .sp {
        display: block;
    }

    header#sp_header {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        z-index: 999;
        height: 60px;
    }

    header#sp_header .logo {
        position: absolute;
        left: 10px;
        top: 15px;
        line-height: 0;
    }

    header#sp_header .logo .link {
        display: block;
        height: 30px;
    }

    header#sp_header .logo .link img {
        height: 100%;
    }

    /*　ハンバーガーボタン　*/
    .hamburger {
        display: block;
        position: fixed;
        z-index: 99999;
        right: 10px;
        top: 10px;
        width: 40px;
        height: 40px;
        cursor: pointer;
        text-align: center;
        border-radius: 4px;
        border: 2px solid var(--black-color);
        background: linear-gradient(to bottom, #d0ffde, #f2fc00);
    }

    .hamburger span {
        display: block;
        position: absolute;
        width: 16px;
        height: 2px;
        left: 50%;
        translate: -50% 0;
        background: #555;
        -webkit-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        transition: 0.5s ease-in-out;
    }

    .hamburger span:nth-child(1) {
        top: 14px;
    }

    .hamburger span:nth-child(2) {
        top: 20px;
    }

    .hamburger.active span:nth-child(1) {
        top: 17px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }

    .hamburger.active span:nth-child(2) {
        top: 17px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }

    nav.globalMenuSp {
        position: fixed;
        z-index: 999;
        top: 0;
        left: 0;
        color: #000;
        transform: translateX(100%);
        transition: all 0.6s;
        width: 100%;
        height: 100vh;
        background: #fff;
        overflow: scroll;
        padding: 340px 0 20px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    nav.globalMenuSp.active {
        transform: translateX(0%);
    }

    nav.globalMenuSp .box {
        width: 100%;
    }

    nav.globalMenuSp .menu_list {
        width: 100%;
        margin-bottom: 5vw;
    }

    nav.globalMenuSp .menu_list ul li {
        border-top: 2px solid var(--black-color);
    }

    nav.globalMenuSp .menu_list ul li:last-child {
        border-bottom: 2px solid var(--black-color);
    }

    nav.globalMenuSp .menu_list ul li .link {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 2vw 5vw;
        position: relative;
    }

    nav.globalMenuSp .menu_list ul li.hydroponics .link,
    nav.globalMenuSp .menu_list ul li.assessment .link,
    nav.globalMenuSp .menu_list ul li.open_campus .link {
        background: #e8fdf7;
    }

    nav.globalMenuSp .menu_list ul li.about .link,
    nav.globalMenuSp .menu_list ul li.working .link,
    nav.globalMenuSp .menu_list ul li.campus .link,
    nav.globalMenuSp .menu_list ul li.movie .link,
    nav.globalMenuSp .menu_list ul li.information .link {
        background: #eefde8;
    }

    nav.globalMenuSp .menu_list ul li.course .link,
    nav.globalMenuSp .menu_list ul li.recruitment .link,
    nav.globalMenuSp .menu_list ul li.faq .link,
    nav.globalMenuSp .menu_list ul li.access .link,
    nav.globalMenuSp .menu_list ul li.employment .link {
        background: #fdf6e8;
    }

    nav.globalMenuSp .menu_list ul li .link.sub::after {
        content: "";
        width: 6vw;
        aspect-ratio: 1;
        background-image: url(../img/icon_plus_black.svg);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    nav.globalMenuSp .menu_list ul li .link .name {
        font-size: 3.4vw;
        letter-spacing: 0.05em;
        font-weight: 700;
        color: initial;
    }

    nav.globalMenuSp .menu_list ul li .link .name .en {
        font-size: 5vw;
        letter-spacing: 0;
        font-weight: 900;
        margin-right: 3vw;
        -webkit-text-stroke: 1px black;
        background: linear-gradient(180deg, rgb(208, 255, 222) 0%, rgb(229, 253, 85) 50%, rgb(255, 247, 183) 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    nav.globalMenuSp .menu_list ul li .inner_menu {
        padding: 2vw 5vw;
    }

    nav.globalMenuSp .menu_list ul li .inner_menu .item {
        font-size: 3.4vw;
        letter-spacing: 0.05em;
        font-weight: 700;
        color: initial;
        display: flex;
        align-items: center;
        gap: 0 2vw;
    }

    nav.globalMenuSp .menu_list ul li .inner_menu .item::before {
        content: "";
        width: 2vw;
        aspect-ratio: 1;
        border-radius: 50%;
        background: #ffea65;
    }

    nav.globalMenuSp .menu_list ul li .inner_menu .closeBtnHat {
        display: none;
    }

    nav.globalMenuSp .menu_box {
        padding: 0 5vw;
    }

    nav.globalMenuSp .menu_box .logo {
        width: 70vw;
        margin: 0 auto;
        margin-bottom: 4vw;
    }

    nav.globalMenuSp .menu_box .logo img {
        width: 100%;
    }

    nav.globalMenuSp .menu_box .btn_sec_box {
        margin-bottom: 4vw;
    }

    nav.globalMenuSp .menu_box .btn_sec_box .btn_box {
        width: 90%;
        margin: 0 auto;
    }

    nav.globalMenuSp .menu_box .btn_sec_box .btn_box+.btn_box {
        margin-top: 1.5vw;
    }

    nav.globalMenuSp .menu_box .btn_sec_box .btn_box a {
        display: flex;
        padding: 0 3vw;
        align-items: center;
        justify-content: center;
        border-radius: 5px;
    }

    nav.globalMenuSp .menu_box .btn_sec_box .btn_box a.mail {
        background: #26bfed;
    }

    nav.globalMenuSp .menu_box .btn_sec_box .btn_box a.line {
        background: #06c755;
    }

    nav.globalMenuSp .menu_box .btn_sec_box .btn_box a .icon {
        width: 8vw;
        translate: 0 1vw;
    }

    nav.globalMenuSp .menu_box .btn_sec_box .btn_box a .icon svg {
        width: 100%;
    }

    nav.globalMenuSp .menu_box .btn_sec_box .btn_box a .name {
        font-size: 3.4vw;
        letter-spacing: 0.05em;
        font-weight: 700;
        line-height: 11vw;
        color: #fff;
        margin-left: 3vw;
    }

    nav.globalMenuSp .menu_box .tel_sec_box {
        margin-bottom: 3vw;
    }

    nav.globalMenuSp .menu_box .tel_sec_box .tel {
        font-size: 3.6vw;
        letter-spacing: 0.05em;
        line-height: 1;
        font-weight: 900;
        display: block;
        text-align: center;
        color: initial;
    }

    nav.globalMenuSp .menu_box .tel_sec_box .tel .big {
        font-size: 6.4vw;
    }

    nav.globalMenuSp .menu_box .tel_sec_box .txt {
        letter-spacing: 0.01em;
        font-size: 3.2vw;
        text-align: center;
    }

    nav.globalMenuSp .menu_box .sns_sec_box {
        display: flex;
        justify-content: center;
        gap: 0 2vw;
    }

    nav.globalMenuSp .menu_box .sns_sec_box .link {
        display: block;
        width: 10vw;
    }

    nav.globalMenuSp .menu_box .sns_sec_box .link img {
        width: 100%;
    }

    /* 追従 */
    .fixed_menu {
        bottom: 0;
        left: 0;
        right: 0;
        border-radius: 0;
        padding: 3vw 3vw;
    }

    .fixed_menu ul {
        display: flex;
        align-items: center;
    }

    .fixed_menu ul li {
        width: 25%;
    }

    .fixed_menu ul li+li {
        margin-top: 0;
        padding: 2vw 0;
        border-top: none;
        border-left: 1px solid #e3e3e3;
    }

    .fixed_menu ul li .link:hover {
        opacity: 0.7;
    }

    .fixed_menu ul li .link .icon {
        width: 7vw;
        margin: 0 auto 2vw;
    }

    .fixed_menu ul li .link .name {
        font-size: 3vw;
    }

    body {
        font-size: 3.6vw;
        line-height: 1.6;
        overflow: hidden;
    }

    .wrap {
        max-width: 90%;
    }

    /* トップページ */
    .top_main {
        padding: 17vw 5vw 20vw;
        background-image: url(../img/top_main_bg_sp.jpg);
    }

    .top_main .logo_text {
        font-size: 3.6vw;
        letter-spacing: 0.05em;
        text-align: center;
        margin-bottom: 8vw;
    }

    .top_main .main .icon {
        width: 8vw;
    }

    .top_main .main .icon:hover {
        opacity: 1;
    }

    .top_main .main .icon.left {
        left: -3%;
    }

    .top_main .main .icon.right {
        right: -3%;
    }

    .top_main .main .slick-dots {
        bottom: -10vw;
    }

    .top_main .main .slick-dots li {
        width: 15vw;
        height: 5px;
        margin: 0 2vw;
    }

    .top_news {
        padding: 20vw 0;
    }

    .top_news .sec_ttl {
        width: 100%;
    }

    .top_news .sec_box {
        margin-top: 11vw;
    }

    .top_news .sec_box ul {
        display: block;
    }

    .top_news .sec_box ul li {
        width: 100%;
    }

    .top_news .sec_box ul li+li {
        margin-top: 18vw;
    }

    .top_news .sec_box ul li+li .contents::after {
        display: none;
    }

    .top_news .sec_box ul li .ttl_box::before {
        width: 15vw;
        top: -7vw;
        height: 5vw;
    }

    .top_news .sec_box ul li .ttl_box .jp {
        font-size: 4.5vw;
    }

    .top_news .sec_box ul li .ttl_box .en {
        font-size: 10vw;
        margin-top: 3vw;
    }

    .top_news .sec_box ul li .contents {
        padding: 7vw 3vw;
        margin-top: 5vw;
    }

    .top_news .sec_box ul li .contents::before {
        height: 10px;
    }

    .top_news .sec_box ul li .contents .list {
        width: 100%;
        height: 100vw;
    }

    .top_news .sec_box ul li .contents .btn_box {
        width: 50%;
        margin: 7vw auto 0;
    }

    .top_news .sec_box ul li .contents .btn_box a {
        border-radius: 10vw;
        line-height: 11vw;
        font-size: 4.8vw;
    }

    .top_link_sec ul li .link {
        padding: 9vw 5vw 8vw;
    }

    .top_link_sec ul li .link::before,
    .top_link_sec ul li .link::after {
        display: none;
    }

    .top_link_sec ul li .link:hover .ttl_box .en {
        color: var(--black-color);
    }

    .top_link_sec ul li .link:hover .ttl_box .jp {
        color: var(--black-color);
    }

    .top_link_sec ul li .link:hover .view .name {
        color: var(--black-color);
    }

    .top_link_sec ul li .link:hover .view .icon svg path {
        stroke: var(--black-color);
    }

    .top_link_sec ul li .link .ttl_box {
        display: block;
        margin-bottom: 0vw;
    }

    .top_link_sec ul li .link .ttl_box .en {
        width: unset;
        font-size: 9vw;
    }

    .top_link_sec ul li .link .ttl_box .jp {
        font-size: 3.8vw;
    }

    .top_link_sec ul li .link .view {
        gap: 2vw;
        margin-top: 16vw;
    }

    .top_link_sec ul li .link .view .name {
        font-size: 4.2vw;
    }

    .top_link_sec ul li .link .view .icon {
        width: 4vw;
    }

    .top_sns {
        padding-top: 14vw;
    }

    .top_sns .sec_ttl .en {
        font-size: 9vw;
    }

    .top_sns .sec_ttl .jp {
        font-size: 3.8vw;
        margin-top: 2vw;
    }

    .top_sns .inner {
        margin-top: 14vw;
        padding: 18vw 0;
        background-image: url(../img/top_sns_bg_sp.jpg);
    }

    .top_sns .inner .sankaku {
        top: -5.4vw;
    }

    .top_sns .inner .insta .ttl_sec_box {
        display: block;
        padding-bottom: 8vw;
    }

    .top_sns .inner .insta .ttl_sec_box::after {
        background-image: url(../img/border_dot_yoko.svg);
        height: 10px;
    }

    .top_sns .inner .insta .ttl_sec_box .ttl_box {
        gap: 2vw;
    }

    .top_sns .inner .insta .ttl_sec_box .ttl_box .icon {
        width: 8vw;
    }

    .top_sns .inner .insta .ttl_sec_box .ttl_box .en {
        font-size: 7.5vw;
    }

    .top_sns .inner .insta .ttl_sec_box .ttl_box .en .min {
        font-size: 3.8vw;
    }

    .top_sns .inner .insta .sec {
        margin-top: 3vw;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
        overflow-x: scroll;
    }

    .top_sns .inner .insta .sec .in {
        flex-shrink: 0;
        height: 43.5vw;
        border-radius: 2vw;
    }

    .top_sns .inner .insta .common_follow {
        margin: 7vw auto 0;
    }

    .top_sns .inner .link_box {
        margin-top: 15vw;
        display: block;
    }

    .top_sns .inner .link_box .box {
        width: 100%;
    }

    .top_sns .inner .link_box .box+.box {
        margin-top: 15vw;
    }

    .top_sns .inner .link_box .box .ttl_sec_box {
        display: block;
        margin-bottom: 6vw;
        padding-bottom: 6vw;
    }

    .top_sns .inner .link_box .box .ttl_sec_box .ttl_box {
        gap: 2vw;
    }

    .top_sns .inner .link_box .box .ttl_sec_box .ttl_box .icon {
        width: 8vw;
    }

    .top_sns .inner .link_box .box .ttl_sec_box .ttl_box .en {
        font-size: 7.5vw;
    }

    .top_sns .inner .link_box .box .sec {
        width: 100%;
        height: 80vw;
    }

    .top_sns .inner .link_box .box .common_follow {
        margin: 7vw auto 0;
    }

    a.common_follow {
        width: 50%;
        line-height: 11vw;
        font-size: 4vw;
        border-radius: 10vw;
    }

    a.common_follow.pc {
        display: none;
    }

    a.common_follow.sp {
        display: block;
    }

    a.common_follow:hover {
        background-color: var(--black-color);
        color: #fff;
    }

    #footer {
        padding: 20vw 0 40vw;
    }

    #footer .ft_box {
        display: block;
    }

    #footer .ft_box .logo_sec_box .logo {
        width: 100%;
    }

    #footer .ft_box .logo_sec_box .info {
        font-size: 4vw;
        text-align: center;
        margin-top: 7vw;
    }

    #footer .ft_box .logo_sec_box .map_box {
        gap: 2vw;
        justify-content: center;
        margin-top: 2vw;
    }

    #footer .ft_box .logo_sec_box .map_box .map {
        font-size: 4.2vw;
    }

    #footer .ft_box .logo_sec_box .map_box .icon {
        width: 3.8vw;
    }

    #footer .ft_box .logo_sec_box .btn_sec_box {
        margin-top: 5vw;
    }

    #footer .ft_box .logo_sec_box .btn_sec_box .btn_box {
        width: 100%;
    }

    #footer .ft_box .logo_sec_box .btn_sec_box .btn_box+.btn_box {
        margin-top: 2vw;
    }

    #footer .ft_box .logo_sec_box .btn_sec_box .btn_box a {
        padding: 0px 5vw;
        border-radius: 2vw;
    }

    #footer .ft_box .logo_sec_box .btn_sec_box .btn_box a:hover {
        opacity: 1;
    }

    #footer .ft_box .logo_sec_box .btn_sec_box .btn_box a .icon {
        width: 7vw;
        translate: 0 1vw;
    }

    #footer .ft_box .logo_sec_box .btn_sec_box .btn_box a .name {
        font-size: 3.6vw;
        margin-left: 4vw;
        line-height: 13vw;
    }

    #footer .ft_box .logo_sec_box .btn_sec_box .btn_box a .arrow {
        width: 6vw;
        translate: 0 1vw;
    }

    #footer .ft_box .logo_sec_box .tel_sec_box {
        margin-top: 5vw;
        text-align: center;
    }

    #footer .ft_box .logo_sec_box .tel_sec_box .tel {
        font-size: 5.2vw;
    }

    #footer .ft_box .logo_sec_box .tel_sec_box .tel .big {
        font-size: 9vw;
    }

    #footer .ft_box .logo_sec_box .tel_sec_box .txt {
        font-size: 3.8vw;
        margin-top: 1vw;
    }

    #footer .ft_box .logo_sec_box .sns_sec_box {
        justify-content: center;
        gap: 0 3vw;
    }

    #footer .ft_box .logo_sec_box .sns_sec_box .link {
        width: 10vw;
    }

    #footer .ft_box .menu_link_box {
        display: none;
    }

    #footer .cr {
        margin-top: 10vw;
        font-size: 3.3vw;
    }

    #footer .back_btn {
        width: 20vw;
        bottom: 20vw;
    }

    #footer .back_btn:hover {
        opacity: 1;
    }

    /* 内部メインビュー */
    .common_main_page {
        padding: 25vw 0 0px;
    }

    .common_main_page .ttl_box {
        padding-bottom: 6vw;
    }

    .common_main_page .ttl_box .en {
        font-size: 11.5vw;
        margin-bottom: 2vw;
        -webkit-text-stroke: 2px var(--black-color);
    }

    .common_main_page .ttl_box .ttl {
        font-size: 4vw;
    }

    .breadcrumb {
        margin-top: 3.5vw;
    }

    .breadcrumb ul {
        gap: 0.5vw;
        flex-wrap: wrap;
    }

    .breadcrumb ul li {
        font-size: 3vw;
    }

    .breadcrumb ul li a {
        gap: 0.5vw;
    }

    .breadcrumb ul li a:hover .name {
        color: #333333;
    }

    .breadcrumb ul li a .icon {
        width: 3vw;
        translate: 0 1vw;
    }

    .common_page_wrap {
        padding: 20vw 0;
    }

    /* 学科・コースについて */
    .page_course .course_sec .system_sec .text_img_box {
        gap: 5vw;
        align-items: unset;
        flex-direction: column-reverse;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .ttl_box .en {
        font-size: 8.5vw;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .ttl_box .jp {
        font-size: 4.5vw;
        margin-top: 2.5vw;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .text {
        font-size: 4vw;
        margin-top: 4vw;
        margin-bottom: 1em;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .small_text {
        font-size: 3.4vw;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .btn_box {
        width: 100%;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .btn_box+.btn_box {
        margin-top: 2vw;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .btn_box a {
        padding: 0 10vw;
        transition: 0s;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .btn_box a:hover {
        background-color: var(--main-color);
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .btn_box a:hover .name {
        color: #fff;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .btn_box a:hover .arrow svg path {
        stroke: #fff;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .btn_box a .name {
        font-size: 4.2vw;
        line-height: 13vw;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .btn_box a .arrow {
        width: 5vw;
    }

    .page_course .course_sec .system_sec .text_img_box .img {
        width: 100%;
        height: 60vw;
    }

    .page_course .course_sec .contents_sec {
        margin-top: 18vw;
    }

    .page_course .course_sec .contents_sec .inner {
        border: 2px solid #333333;
        border-radius: 3vw;
        padding: 15vw 5vw;
    }

    .page_course .course_sec .contents_sec .inner::after {
        border-radius: 3vw;
        right: -3vw;
        top: 3vw;
        bottom: -3vw;
        left: 3vw;
    }

    .page_course .course_sec .contents_sec .inner::before {
        width: 8vw;
        height: 12vw;
        top: -6vw;
    }

    .page_course .course_sec .contents_sec .inner .ttl_sec {
        padding-left: 2vw;
        font-size: 6.7vw;
        gap: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .ttl_sec::before {
        width: 13vw;
        height: 5vw;
        top: -4vw;
        left: -3.2vw;
    }

    .page_course .course_sec .contents_sec .inner .ttl_sec::after {
        background-size: cover;
        height: 2.2vw;
        background-position: left;
    }

    .page_course .course_sec .contents_sec .inner .sec_text_box {
        margin-top: 7vw;
    }

    .page_course .course_sec .contents_sec .inner .sec_text_box .theme {
        font-size: 4vw;
        background: linear-gradient(transparent 65%, #fff421 30%);
    }

    .page_course .course_sec .contents_sec .inner .sec_text_box .text {
        font-size: 3.4vw;
        margin-top: 5vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box {
        display: block;
        margin-top: 6vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box .time_box .theme {
        font-size: 4vw;
        line-height: 9vw;
        width: 34vw;
        border: 2px solid #333333;
        border-radius: 10vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box .time_box .time {
        text-align: center;
        margin-top: 2vw;
        font-size: 7vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box .time_box .time .color {
        font-size: 22vw;
        margin-right: 2vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box ul {
        justify-content: center;
        margin-left: 0;
        gap: 3vw;
        flex-wrap: wrap;
        margin-top: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box ul li {
        width: 36vw;
        font-size: 4vw;
        line-height: 1.5;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .time_sec_box ul li .big {
        font-size: 9vw;
        line-height: 1.1;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_img {
        margin-top: 12vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box {
        margin-top: 12vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul {
        grid-template-columns: 100%;
        gap: 10vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li {
        border: 2px solid #333333;
        border-radius: 2vw;
        gap: 4vw 0;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .tag {
        top: -5vw;
        width: 35vw;
        line-height: 8vw;
        border: 2px solid #333333;
        border-radius: 10vw;
        font-size: 4.2vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .tag .num {
        font-size: 7vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .img {
        height: 50vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box {
        padding: 0 3vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box.none_img {
        padding-top: 12vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box.none_img .sikaku {
        margin-top: 4vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box .ttl {
        font-size: 4.5vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .text_box .text {
        margin-top: 2.5vw;
        font-size: 3.3vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku {
        padding: 0 0px 2.2vw;
        margin: 0 4vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .name {
        font-size: 3.8vw;
        gap: 3vw;
        translate: 0 -1.5vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .name::before {
        width: 5vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .box {
        gap: 3vw;
        padding: 0 2vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .box .cont {
        font-size: 3.4vw;
        gap: 2vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .study_box ul li .sikaku .box .cont::before {
        width: 4vw;
        gap: 2vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box {
        margin-top: 12vw;
        padding: 12vw 0 0;
        display: block;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .img {
        width: 100%;
        height: 53vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .img img {
        border-radius: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .text_box {
        margin-top: 5vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .text_box .en {
        font-size: 5vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .text_box .theme {
        font-size: 5.2vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .text_img_box .text_box .text {
        margin-top: 3vw;
        font-size: 3.5vw;
        line-height: 1.7;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .list {
        margin-top: 12vw;
        padding-top: 12vw;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .list ul {
        display: flex;
        gap: 3vw;
        overflow-x: scroll;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .list ul li {
        height: 50vw;
        width: 70vw;
        flex-shrink: 0;
    }

    .page_course .course_sec .contents_sec .inner .zagaku_sec .list ul li img {
        border-radius: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec {
        margin-top: 10vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul {
        display: flex;
        gap: 8vw 2vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li {
        padding: 10vw 2vw 4vw;
        border: 2px solid #333333;
        border-radius: 2vw;
        width: 48%;
        display: flex;
        flex-direction: column;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big {
        width: 100%;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont {
        flex-direction: column;
        gap: 0;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont+.cont {
        margin-top: 7vw;
        padding-top: 7vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont .theme_box {
        margin-top: 4vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont .theme_box .sub {
        font-size: 4vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont .theme_box .text {
        font-size: 3vw;
        margin-top: 2vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont .img {
        width: 100%;
        height: unset;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li.big .box .cont .img img {
        width: 100%;
        border-radius: 2vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .theme {
        width: 35vw;
        border-radius: 10vw;
        border: 2px solid #333333;
        line-height: 9vw;
        font-size: 3.5vw;
        top: -6vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .theme .num {
        font-size: 5.5vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .text_box {
        margin-top: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .text_box .name {
        font-size: 4.4vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .text_box .text {
        font-size: 3.2vw;
        margin-top: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .img.lettuce {
        height: 30vw;
        margin-top: 0;
    }

    .page_course .course_sec .contents_sec .inner .zisshuu_sec .list_sec ul li .img {
        order: -1;
        width: 100%;
        height: 30vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec {
        margin-top: 15vw;
        margin-bottom: 15vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .sec_ttl {
        font-size: 5.5vw;
        gap: 4vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .sec_ttl::before {
        width: 8vw;
        height: 5px;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list {
        margin-top: 6vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li {
        display: block;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li+li {
        margin-top: 18vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li+li .img_box::before {
        left: 50%;
        top: -18vw;
        width: 20vw;
        height: 16vw;
        translate: -50% 0;
        clip-path: polygon(100% 0, 100% 70%, 50% 100%, 0 70%, 0 0);
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(1) .img_box .theme_box .theme .furi {
        left: 1vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(2) .img_box .theme_box .theme .furi {
        left: -2vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(3) .img_box .theme_box .theme .furi {
        left: 0vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li:nth-child(4) .img_box .theme_box .theme .furi {
        left: -1vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box {
        width: 100%;
        display: flex;
        gap: 7vw;
        align-items: center;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .img {
        width: 32vw;
        flex-shrink: 0;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .week {
        display: none;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .week {
        display: flex;
        gap: 3vw;
        background-color: #333;
        border-radius: 2vw;
        width: 36vw;
        align-items: center;
        justify-content: center;
        margin: 5vw auto 0;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .week .icon {
        width: 6vw;
        translate: 0vw 1vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .week .name {
        font-size: 5vw;
        color: #fff;
        font-weight: 800;
        letter-spacing: 0.04em;
        line-height: 10vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box {
        margin-top: 3vw;
        border-radius: 2vw;
        padding: 7vw 3vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .theme_box .num {
        width: 12vw;
        aspect-ratio: 1;
        display: flex;
        align-items: center;
        line-height: 1.5;
        justify-content: center;
        background-color: var(--main-color);
        color: #fdf421;
        font-weight: 800;
        font-size: 6vw;
        border-radius: 50%;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .theme_box .theme {
        font-size: 4vw;
        font-weight: 800;
        letter-spacing: 0.05em;
        line-height: 1;
        margin-top: 6vw;
        position: relative;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .theme_box .theme .furi {
        font-size: 3vw;
        position: absolute;
        white-space: nowrap;
        top: -3.4vw;
        left: 1.3vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .theme_box {
        display: none;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .img_box .theme_box .theme .big {
        font-size: 6vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box .text {
        font-size: 3.2vw;
        margin-top: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec {
        margin-top: 15vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .sec_ttl_box .en {
        font-size: 9vw;
        gap: 2vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .sec_ttl_box .en::before,
    .page_course .course_sec .contents_sec .inner .message_sec .sec_ttl_box .en::after {
        height: 1.6vw;
        background-size: cover;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .sec_ttl_box .jp {
        font-size: 4vw;
        margin-top: 2vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .ttl_comment {
        margin-top: 5vw;
        font-size: 3vw;
        line-height: 1.8;
        border-radius: 4vw;
        padding: 3vw 0;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .ttl_comment .none {
        display: none;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .sec_box {
        margin-top: 10vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec {
        margin-bottom: 15vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .ttl_box {
        gap: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .ttl_box .icon {
        width: 6vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .ttl_box .ttl {
        font-size: 6.8vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .ttl_box .ttl .small {
        font-size: 5vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .accent_box {
        margin-top: 3vw;
        display: block;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .accent_box .kome {
        font-size: 4.2vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .accent_box .sub {
        font-size: 3.2vw;
        margin-top: 2vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .list_img {
        width: 100%;
        margin-top: 4vw;
        overflow-x: scroll;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .schedule_sec .list_img .img {
        width: 200vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .q_list {
        background-color: #69bd83;
        border-radius: 4px;
        padding: 4vw;
        margin: 7vw 0 0;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .q_list ol {
        flex-direction: column;
        gap: 0;
        font-size: 3.4vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .q_list ol li {
        align-items: flex-start;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .q_list ol li+li {
        margin-top: 2.5vw;
        padding-top: 2.5vw;
        border-top: 1px dashed #ccc;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .q_list ol li::after {
        content: unset;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .q_list ol li:nth-child(5)::after,
    .page_course .course_sec .contents_sec .inner .message_sec .q_list ol li:last-child::after {
        content: unset;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item+.voice_item {
        margin-top: 8vw;
        padding-top: 8vw;
        border-top: 3px dashed #333333;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .img {
        margin-bottom: 5vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .img .over_text {
        bottom: 4vw;
        gap: 2vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .img .over_text .small_text {
        font-size: 3.4vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .img .over_text .name {
        font-size: 5vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .flex_box {
        gap: 0;
        flex-direction: column;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item:nth-child(odd) .flex_box {
        flex-direction: column;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .img_text_area {
        flex-grow: 1;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list {
        width: 100%;
        display: block
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list ol+ol {
        margin-top: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list ol li {
        height: auto;
        min-height: 10vw;
        font-size: 3.4vw;
        padding: 1em 1em 1em 14vw;
        font-weight: 500;
        line-height: 1.4;
        letter-spacing: 0;
        position: relative;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list ol li+li {
        margin-top: 3vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .answer_list ol li .mark {
        width: 10vw;
        height: 10vw;
        font-size: 4vw;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        margin: auto;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .text_area .inner_block+.inner_block,
    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .text_area {
        margin-top: 5vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .text_area .lr_text {
        font-size: 4vw;
    }

    .page_course .course_sec .contents_sec .inner .message_sec .voice_item .text_area .text {
        font-size: 3.4vw;
    }

    .page_course .course_sec .contents_sec .inner .flow_sec .list ul li .text_box::before {
        content: unset;
    }

    /* 水耕栽培について */
    .page_hydroponics .intro_sec .text_img_box {
        flex-direction: column-reverse;
        gap: 5vw;
        align-items: unset;
    }

    .page_hydroponics .intro_sec .text_img_box .text_box .ttl_box .en {
        font-size: 8.5vw;
    }

    .page_hydroponics .intro_sec .text_img_box .text_box .text {
        font-size: 4.5vw;
        margin-top: 1em;
        margin-bottom: 1em;
    }

    .page_hydroponics .intro_sec .text_img_box .text_box .small_text {
        font-size: 3.4vw;
    }

    .page_hydroponics .intro_sec .text_img_box .img {
        width: 100%;
        height: 58vw;
        margin-bottom: 5vw;
    }

    .page_hydroponics .message_sec {
        margin-top: 20vw;
        padding: 0;
    }

    .page_hydroponics .message_sec::before {
        left: 0;
        transform: translateX(0);
        width: 25vw;
        opacity: 0.7;
        top: unset;
        height: 52vw;
    }

    .page_hydroponics .message_sec::after {
        top: unset;
        bottom: 4vw;
        left: 7vw;
        transform: translateX(0);
        width: 18vw;
        height: 44vw;
    }

    .page_hydroponics .message_sec .sec_ttl {
        gap: 0.5em;
        font-size: 6.5vw;
        margin-bottom: 1em;
    }

    .page_hydroponics .message_sec .sec_ttl::before {
        width: 18vw;
        height: 2vw;
    }

    .page_hydroponics .message_sec .cont {
        flex-direction: column;
        align-items: unset;
        gap: 6vw;
    }

    .page_hydroponics .message_sec .cont .flex_box {
        display: flex;
        align-items: center;
        gap: 4vw;
    }

    .page_hydroponics .message_sec .cont .flex_box .prof_box {
        border: 2px solid var(--black-color);
        border-left: none;
        border-right: none;
        padding: 1em 0;
        font-size: 3.2vw;
        flex-grow: 1;
    }

    .page_hydroponics .message_sec .cont .img {
        width: 30vw;
    }

    .page_hydroponics .message_sec .cont .text_area .lr_text {
        font-size: 4.5vw;
        margin-top: 5vw;
        margin-bottom: 0;
    }

    .page_hydroponics .message_sec .cont .text_area .inner {
        margin-bottom: 0;
        margin-top: 5vw;
    }

    .page_hydroponics .message_sec .cont .text_area .inner .text {
        font-size: 3.2vw;
    }

    .page_hydroponics .merit_sec {
        margin-top: 20vw;
    }

    .page_hydroponics .merit_sec .hydro_sec_ttl_box {
        margin-bottom: 10vw;
    }

    .hydro_sec_ttl_box .en_ttl {
        font-size: 8.5vw;
    }

    .hydro_sec_ttl_box .ttl {
        font-size: 4.5vw;
    }

    .page_hydroponics .merit_sec .cont {
        flex-direction: column;
        align-items: unset;
        gap: 15vw;
    }

    .page_hydroponics .merit_sec .cont .merit_list ol li {
        gap: 5vw;
    }

    .page_hydroponics .merit_sec .cont .merit_list ol li+li {
        margin-top: 5vw;
    }

    .page_hydroponics .merit_sec .cont .merit_list ol li:not(:last-child) {
        padding-bottom: 5vw;
    }

    .page_hydroponics .merit_sec .cont .merit_list ol li:not(:last-child)::before {
        top: 15vw;
        left: 5vw;
        width: 2px;
    }

    .page_hydroponics .merit_sec .cont .merit_list ol li .num {
        width: 10vw;
        font-size: 6vw;
    }

    .page_hydroponics .merit_sec .cont .merit_list ol li .text_area {
        padding-top: 0;
    }

    .page_hydroponics .merit_sec .cont .merit_list ol li .text_area .lr_text {
        font-size: 5vw;
    }

    .page_hydroponics .merit_sec .cont .merit_list ol li .text_area .text {
        font-size: 3.4vw;
    }

    .page_hydroponics .merit_sec .cont .detail_area {
        width: 100%;
        padding-top: 0;
    }

    .page_hydroponics .merit_sec .cont .detail_area .img {
        width: 100%;
        height: 65vw;
    }

    .page_hydroponics .merit_sec .cont .detail_area .detail_text_area {
        margin-bottom: 5vw;
    }

    .page_hydroponics .merit_sec .cont .detail_area .detail_text_area .text {
        font-size: 6vw;
        margin-bottom: 0.5em;
        text-align: center;
    }

    .page_hydroponics .merit_sec .cont .detail_area .detail_text_area .text .size {
        font-size: 4vw;
    }

    .page_hydroponics .merit_sec .cont .detail_area .detail_text_area .lr_text {
        font-size: 8vw;
        text-align: center;
        line-height: 1;
    }

    .page_hydroponics .merit_sec .cont .detail_area .detail_text_area .lr_text .small {
        font-size: 3.2vw;
        margin-left: 0;
    }

    .page_hydroponics .merit_sec .cont .detail_area .merit_table {
        margin-bottom: 4vw;
    }

    .page_hydroponics .merit_sec .cont .detail_area .merit_table table {
        width: 100%;
    }

    .page_hydroponics .merit_sec .cont .detail_area .merit_table table th,
    .page_hydroponics .merit_sec .cont .detail_area .merit_table table td {
        font-size: 3.2vw;
    }

    .page_hydroponics .merit_sec .cont .detail_area .merit_table table th {
        padding: 2vw;
    }

    .page_hydroponics .merit_sec .cont .detail_area .merit_table table td {
        padding: 0.5em;
    }

    .page_hydroponics .merit_sec .cont .detail_area .note_text {
        font-size: 3vw;
        text-align: left;
        margin-bottom: 10vw;
    }

    .page_hydroponics .aqua_sec {
        margin: 20vw 0;
    }

    .page_hydroponics .aqua_sec .cont {
        border-radius: 10px;
        border: 2px solid var(--black-color);
        overflow: hidden;
        flex-direction: column;
    }

    .page_hydroponics .aqua_sec .cont .img {
        flex-shrink: 0;
        width: 100%;
        height: 68vw;
        padding-top: 5vw;
    }

    .page_hydroponics .aqua_sec .cont .text_area {
        display: block;
        padding: 5vw;
    }

    .page_hydroponics .aqua_sec .cont .text_area .sec_ttl {
        font-size: 6vw;
    }

    .page_hydroponics .aqua_sec .cont .text_area .inner .text {
        font-size: 3.4vw;
    }

    .page_hydroponics .aqua_sec .cont .text_area .inner .text+.text {
        margin-top: 1.3em;
    }

    .page_hydroponics .future_sec {
        padding-top: 15vw;
        padding-bottom: 15vw;
        border: 2px solid var(--black-color);
        border-left: none;
        border-right: none;
    }

    .page_hydroponics .future_sec .hydro_sec_ttl_box {
        margin-bottom: 10vw;
    }

    .page_hydroponics .future_sec .cont {
        position: relative;
        display: block;
    }

    .page_hydroponics .future_sec .cont .img {
        width: 85%;
        margin: 0 auto 10vw;
    }

    .page_hydroponics .future_sec .cont .img img {
        width: 100%;
    }

    .page_hydroponics .future_sec .cont .box {
        position: static;
        margin-bottom: 6.5vw;
    }

    .page_hydroponics .future_sec .cont .box::after {
        content: unset;
    }

    .page_hydroponics .future_sec .cont .box .lr_text {
        font-size: 4.5vw;
        margin-bottom: 0.5em;
        border-left: 5vw solid #000;
        padding-left: 0.7em;
    }

    .page_hydroponics .future_sec .cont .box .text {
        font-size: 3.4vw;
    }

    .page_hydroponics .future_sec .cont .box.box_01 .lr_text {
        border-color: #ccfada;
    }

    .page_hydroponics .future_sec .cont .box.box_02 .lr_text {
        border-color: #C9FDFF;
    }

    .page_hydroponics .future_sec .cont .box.box_03 .lr_text {
        border-color: #FCD3EB;
    }

    .page_hydroponics .future_sec .cont .box.box_04 .lr_text {
        border-color: #E3CDF4;
    }

    .page_hydroponics .future_sec .cont .box.box_05 .lr_text {
        border-color: #EFEF97;
    }

    .page_hydroponics .future_sec .cont .box.box_05 {
        margin-bottom: 0;
    }

    /* 学校について */
    .page_about .about_sec .text_box {
        margin-top: 6vw;
    }

    .page_about .about_sec .text_box .comment {
        font-size: 4.8vw;
    }

    .page_about .about_sec .text_box .text {
        margin-top: 3vw;
        font-size: 3.4vw;
        line-height: 1.9;
    }

    .page_about .about_sec .text_box .btn_box {
        width: 100%;
        margin-top: 7vw;
    }

    .page_about .about_sec .text_box .btn_box a {
        padding: 0 9vw;
        border-radius: 2vw;
    }

    .page_about .about_sec .text_box .btn_box a:hover {
        background-color: var(--main-color);
    }

    .page_about .about_sec .text_box .btn_box a:hover .name {
        color: #fff;
    }

    .page_about .about_sec .text_box .btn_box a:hover .arrow svg path {
        stroke: #fff;
    }

    .page_about .about_sec .text_box .btn_box a .name {
        font-size: 4vw;
        line-height: 14vw;
    }

    .page_about .about_sec .text_box .btn_box a .arrow {
        width: 5vw;
    }

    .page_about .theme_sec {
        margin-top: 20vw;
        padding-bottom: 18vw;
    }

    .page_about .theme_sec::before {
        top: 3vw;
    }

    .page_about .theme_sec .ttl_box .theme {
        gap: 4.2vw;
        font-size: 9vw;
    }

    .page_about .theme_sec .ttl_box .theme::before,
    .page_about .theme_sec .ttl_box .theme::after {
        height: 5px;
        background-size: cover;
    }

    .page_about .theme_sec .ttl_box .ttl {
        font-size: 4vw;
        margin-top: 2vw;
    }

    .page_about .theme_sec .list {
        margin-top: 13vw;
    }

    .page_about .theme_sec .list ul {
        grid-template-columns: 100%;
        gap: 10vw;
    }

    .page_about .theme_sec .list ul li {
        border-radius: 2vw;
    }

    .page_about .theme_sec .list ul li .inner .img {
        height: 50vw;
    }

    .page_about .theme_sec .list ul li .inner .img .num {
        font-size: 6.5vw;
        width: 14vw;
        top: -7vw;
    }

    .page_about .theme_sec .list ul li .inner .text_box {
        padding: 6vw 4vw;
    }

    .page_about .theme_sec .list ul li .inner .text_box .ttl {
        font-size: 5.2vw;
    }

    .page_about .theme_sec .list ul li .inner .text_box .box {
        margin-top: 4vw;
    }

    .page_about .theme_sec .list ul li .inner .text_box .box .text {
        font-size: 3.4vw;
    }

    .page_about .theme_sec .list ul li .inner .text_box .box .text+.text {
        margin-top: 2vw;
    }

    .page_about .facility_sec {
        padding: 20vw 0;
    }

    .page_about .facility_sec .list {
        margin-top: 12vw;
    }

    .page_about .facility_sec .list ul {
        gap: 7vw 2vw;
        grid-template-columns: repeat(2, 1fr);
    }

    .page_about .facility_sec .list ul li .img {
        height: 35vw;
    }

    .page_about .facility_sec .list ul li .img img {
        border-radius: 2vw;
    }

    .page_about .facility_sec .list ul li .img .num {
        font-size: 2.5vw;
        padding-bottom: 2.6vw;
        width: 10vw;
        left: -1.3vw;
        top: -4.5vw;
    }

    .page_about .facility_sec .list ul li .img .num .big {
        font-size: 3.6vw;
    }

    .page_about .facility_sec .list ul li .img .sub {
        width: 18vw;
        line-height: 7vw;
        font-size: 3vw;
        border-radius: 0 1vw 0 1vw;
    }

    .page_about .facility_sec .list ul li .text_box {
        padding: 3vw 1.8vw 0;
    }

    .page_about .facility_sec .list ul li .text_box .ttl {
        font-size: 4.5vw;
        margin-bottom: 2.5vw;
    }

    .page_about .facility_sec .list ul li .text_box .text {
        font-size: 3.3vw;
    }

    .page_about .field_sec {
        padding: 20vw 0;
    }

    .page_about .field_sec .comment {
        font-size: 3.6vw;
        margin-top: 5vw;
        line-height: 1.8;
    }

    .page_about .field_sec .list {
        margin-top: 12vw;
    }

    .page_about .field_sec .list ul {
        grid-template-columns: 100%;
        gap: 10vw;
    }

    .page_about .field_sec .list ul li {
        padding: 0 4vw 7vw;
        border-radius: 1vw;
    }

    .page_about .field_sec .list ul li .theme {
        font-size: 4.4vw;
        width: 55vw;
        border-radius: 50vw;
        line-height: 10vw;
        margin: -6vw auto 0;
    }

    .page_about .field_sec .list ul li .text {
        font-size: 3.4vw;
        margin-top: 6vw;
    }

    .common_page_wrap.about {
        padding: 20vw 0 0;
    }

    .common_about_ttl .en {
        font-size: 9vw;
    }

    .common_about_ttl .ttl {
        font-size: 4.4vw;
        margin-top: 2vw;
        line-height: 1.5;
    }

    /* キャンパスライフ */
    .page_campus .event_sec .comment_box {
        margin-top: 8vw;
    }

    .page_campus .event_sec .comment_box .sub {
        font-size: 5vw;
    }

    .page_campus .event_sec .comment_box .comment {
        font-size: 3.4vw;
        margin-top: 3vw;
    }

    .page_campus .event_sec .list {
        margin-top: 8vw;
    }

    .page_campus .event_sec .list ul li {
        display: block;
    }

    .page_campus .event_sec .list ul li+li {
        margin-top: 7vw;
        padding-top: 7vw;
        border-top: 1px dashed #ccc;
    }

    .page_campus .event_sec .list ul li .img {
        width: 100%;
        height: 50vw;
    }

    .page_campus .event_sec .list ul li .img img {
        border-radius: 2vw;
    }

    .page_campus .event_sec .list ul li .text_box {
        margin-top: 5vw;
    }

    .page_campus .event_sec .list ul li .text_box .en {
        font-size: 4vw;
    }

    .page_campus .event_sec .list ul li .text_box .ttl {
        font-size: 5.5vw;
        margin-top: 2vw;
    }

    .page_campus .event_sec .list ul li .text_box .text {
        font-size: 3vw;
        margin-top: 4vw;
    }

    .page_campus .map_sec {
        margin-top: 20vw;
    }

    .page_campus .map_sec .sec_ttl {
        gap: 3vw;
    }

    .page_campus .map_sec .sec_ttl .icon {
        width: 6vw;
    }

    .page_campus .map_sec .sec_ttl .ttl {
        font-size: 6vw;
    }

    .page_campus .map_sec .sec_ttl::after {
        height: 6px;
        background-size: cover;
    }

    .page_campus .map_sec .sec_comment {
        font-size: 3.4vw;
        margin-top: 4vw;
    }

    .page_campus .map_sec .list {
        margin-top: 10vw;
    }

    .page_campus .map_sec .list ul {
        gap: 8vw 2vw;
    }

    .page_campus .map_sec .list ul li {
        display: block;
        border-radius: 1vw;
    }

    .page_campus .map_sec .list ul li .img {
        width: 100%;
        height: 35vw;
    }

    .page_campus .map_sec .list ul li .img img {
        border-radius: 1vw 1vw 0 0;
    }

    .page_campus .map_sec .list ul li .img .con {
        font-size: 3.6vw;
        width: 13vw;
        top: -6vw;
        left: -1.1vw;
    }

    .page_campus .map_sec .list ul li .text_box {
        padding: 5vw 3vw;
    }

    .page_campus .map_sec .list ul li .text_box .theme {
        font-size: 4.4vw;
    }

    .page_campus .map_sec .list ul li .text_box .text {
        font-size: 3.2vw;
        margin-top: 2vw;
    }

    .page_campus .access_sec {
        margin-top: 20vw;
    }

    .page_campus .access_sec .map_box {
        display: block;
    }

    .page_campus .access_sec .map_box .text_box .map {
        width: 100%;
        margin-top: 6vw;
        margin-left: -1.5vw;
    }

    .page_campus .access_sec .map_box .text_box .text {
        font-size: 3.4vw;
        margin-top: 4vw;
    }

    /* 募集要項について */
    .page_information .information_sec .menu_list_btn ul {
        display: block;
    }

    .page_information .information_sec .menu_list_btn ul li {
        width: 100%;
    }

    .page_information .information_sec .menu_list_btn ul li+li {
        margin-top: 2vw;
    }

    .page_information .information_sec .menu_list_btn ul li a {
        padding: 0 8vw 0 30vw;
        border-radius: 10vw;
        transition: 0s;
        background-color: #b0efc3;
    }

    .page_information .information_sec .menu_list_btn ul li a .name {
        font-size: 4vw;
        line-height: 12vw;
    }

    .page_information .information_sec .menu_list_btn ul li a .icon {
        width: 4vw;
    }

    .page_information .information_sec .ttl_sec_box {
        margin-top: 15vw;
    }

    .page_information .information_sec .ttl_sec_box .pdf_sec {
        margin-top: 6vw;
    }

    .page_information .information_sec .ttl_sec_box .pdf_sec ul {
        flex-direction: column;
        gap: 3vw 0;
    }

    .page_information .information_sec .ttl_sec_box .pdf_sec ul li a {
        gap: 2vw;
        font-size: 3.2vw;
    }

    .page_information .information_sec .ttl_sec_box .pdf_sec ul li a::after {
        width: 5vw;
    }

    .page_information .information_sec .recruit_sec_box {
        margin-top: 60px;
    }

    .page_information .information_sec .recruit_sec_box .box_btn ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .page_information .information_sec .recruit_sec_box .box_btn ul li {
        border-radius: 2vw 0 0 0;
        line-height: 13vw;
        font-size: 4vw;
    }

    .page_information .information_sec .recruit_sec_box .box_btn ul li+li {
        border-radius: 0 8px 0 0;
    }

    .page_information .information_sec .recruit_sec_box .box_btn ul li.show {
        background-color: var(--main-color);
        color: #fff;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box {
        padding: 10vw 3vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents {
        display: none;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents.show {
        display: block;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box+.sec_box {
        margin-top: 9vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .icon_ttl_box {
        gap: 2vw;
        margin-bottom: 5vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .icon_ttl_box .icon {
        width: 9vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .icon_ttl_box .icon svg {}

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .icon_ttl_box .ttl {
        font-size: 4.5vw;
        translate: 0 1vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .ttl_comment {
        font-size: 3.8vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box+.box {
        margin-top: 7vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .theme_ttl {
        line-height: 10vw;
        padding-left: 4vw;
        margin-bottom: 5vw;
        font-size: 4.5vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .text {
        font-size: 3.2vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .text+.text {
        margin-top: 2vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .text_big {
        font-size: 4.4vw;
        margin-top: 8vw;
        margin-bottom: 3vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .text_ttl {
        font-size: 5vw;
        margin-bottom: 3vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .sec {
        margin-top: 10vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .sec+.sec {
        padding-top: 10vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box ul {
        margin-top: 10px;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box ul li {
        font-size: 3.8vw;
        margin-left: 5vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box ul li+li {
        margin-top: 1.5vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .inner {
        padding: 0 3vw 5vw;
        border-radius: 2vw;
        margin-top: 6vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .sec_box .box .text_box .inner .inner_theme {
        font-size: 4.6vw;
        width: 40vw;
        line-height: 12vw;
        border-radius: 10vw;
        translate: -3vw -6vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec {
        margin-top: 15vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .sec_ttl {
        font-size: 5.8vw;
        margin-bottom: 6vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .text {
        font-size: 3.5vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .text+.text {
        margin-top: 3vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .text .pdf {
        gap: 2vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .text .pdf::after {
        width: 4vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn {
        margin-top: 8vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a {
        gap: 5vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a:hover .name {
        color: #fff;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a:hover::before {
        right: -5vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a::before {
        left: -3vw;
        right: -5vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a .name {
        font-size: 4.4vw;
        line-height: 14vw;
        color: #fff;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a .icon {
        width: 4.2vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .course_sec .pdf_btn a .icon img {
        width: 100%;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec {
        margin-top: 15vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .theme_ttl {
        line-height: 1.6;
        font-size: 5vw;
        padding: 3vw 3vw 3vw;
        margin-bottom: 5vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box+.box {
        margin-top: 10vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .theme_box {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .theme_box .theme {
        font-size: 4vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .theme_box .en {
        font-size: 3.2vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .kome_box .kome {
        font-size: 3.4vw;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .text {
        font-size: 3.4vw;
        margin-top: 6vw;
        line-height: 1.7;
    }

    .page_information .information_sec .recruit_sec_box .tab_contents_box .tab_contents .tokuten_sec .box .sankou {
        font-size: 4.2vw;
        margin-top: 8vw;
    }

    .common_inform_table {
        margin-top: 4vw;
        margin-bottom: 4vw;
        overflow-x: scroll;
    }

    .common_inform_table table {
        border-spacing: 1vw;
        width: 200vw;
    }

    .common_inform_table table th {
        font-size: 4vw;
    }

    .common_inform_table table td {}

    .common_inform_table.pdf tr:nth-child(even) td,
    .common_inform_table.seido tr:nth-child(even) td {}

    .common_inform_table.pdf td,
    .common_inform_table.pdf th {
        padding: 2vw 0;
        letter-spacing: 0.05em;
    }

    .common_inform_table.pdf td {
        font-size: 3.6vw;
    }

    .common_inform_table.pdf td a {
        gap: 2.2vw;
        font-size: 3.6vw;
    }

    .common_inform_table.pdf td a::after {
        content: "";
        background-image: url(../img/icon_pdf.svg);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 15px;
        aspect-ratio: 1;
    }

    .common_inform_table.pdf td.f_ave {
        font-size: 4vw;
    }

    .common_inform_table.pdf td:nth-child(1) {
        width: 15vw;
    }

    .common_inform_table.pdf td:nth-child(2),
    .common_inform_table.pdf td:nth-child(3),
    .common_inform_table.pdf td:nth-child(4) {
        width: 40vw;
    }

    .common_inform_table.cost .large {
        width: 21.8%;
    }

    .common_inform_table.cost .main {
        font-size: 4.2vw;
    }

    .common_inform_table.cost th,
    .common_inform_table.cost td {
        padding: 2vw 0;
    }

    .common_inform_table.cost td {
        font-size: 3.4vw;
    }

    .common_inform_table.cost .f_ave {
        padding-right: 2.8vw;
    }

    .common_inform_table.seido th,
    .common_inform_table.seido td {
        padding: 2vw 0;
    }

    .common_inform_table.seido td {
        font-size: 3.6vw;
    }

    .common_inform_table.seido td:nth-child(n+2) {
        padding-right: 2.8vw;
    }

    .common_inform_table.seido td:last-child {
        background-color: #b0efc3 !important;
    }

    /* アクセス */
    .page_access .map_sec .main_box .text_box .logo {
        margin: 10vw auto 0;
        width: 90%;
    }

    .page_access .map_sec .main_box .text_box .add {
        font-size: 4vw;
        margin-top: 5vw;
    }

    .page_access .map_sec .main_box .text_box .color {
        font-size: 4.6vw;
        margin-top: 10vw;
    }

    .page_access .map_sec .main_box .text_box .text {
        font-size: 3.4vw;
        margin-top: 4vw;
    }

    .page_access .map_sec .main_box .map {
        margin-top: 5vw;
    }

    .page_access .map_sec .flow_sec {
        margin-top: 8vw;
    }

    .page_access .map_sec .flow_sec .access {
        font-size: 3vw;
        line-height: 9vw;
        width: 45%;
        border-radius: 10vw;
        top: 15.5vw;
    }

    .page_access .map_sec .flow_sec .access .big {
        font-size: 3.5vw;
    }

    .page_access .map_sec .flow_sec .access::after {
        bottom: -3vw;
        right: 25vw;
        border-width: 5vw 2vw 0 2vw;
    }

    .page_access .map_sec .flow_sec .sp_scroll {
        overflow-x: scroll;
        padding-bottom: 5vw;
    }

    .page_access .map_sec .flow_sec .img {
        width: 100%;
    }

    .page_access .map_sec .map_sec {
        margin-top: 12vw;
    }

    .page_access .map_sec .map_sec .map {
        margin-top: 6vw;
        height: 45vw;
    }

    /* 学校紹介動画 */
    .page_movie .list ul {
        gap: 5vw 0vw;
        grid-template-columns: 100%;
    }

    .page_movie .list ul li .inner {
        border-radius: 1vw;
    }

    .page_movie .list ul li .inner:hover .text_box .theme {
        color: var(--main-color);
    }

    .page_movie .list ul li .inner .movie {
        height: 50vw;
    }

    .page_movie .list ul li .inner .movie::before {
        width: 9vw;
    }

    .page_movie .list ul li .inner .text_box {
        padding: 4vw 2vw;
    }

    .page_movie .list ul li .inner .text_box .theme {
        font-size: 4vw;
        height: unset;
        color: var(--black-color);
    }

    .page_movie .list ul li .inner .text_box .btn {
        gap: 2vw;
        margin-top: 3vw;
    }

    .page_movie .list ul li .inner .text_box .btn .name {
        font-size: 3.3vw;
    }

    .page_movie .list ul li .inner .text_box .btn .icon {
        width: 3vw;
    }

    /* 求人のお申込み */
    .page_recruitment .for_sec .ttl_comment {
        margin-top: 5vw;
        font-size: 3.2vw;
    }

    .page_recruitment .for_sec .inner {
        padding: 8vw 3vw;
        border-radius: 1vw;
        margin-top: 7vw;
    }

    .page_recruitment .for_sec .inner .box .text {
        font-size: 3.4vw;
        text-align: left;
    }

    .page_recruitment .for_sec .inner .box .text+.text {
        margin-top: 2.5vw;
    }

    .page_recruitment .for_sec .inner .pdf_box {
        margin-top: 8vw;
    }

    .page_recruitment .for_sec .inner .pdf_box .theme {
        font-size: 5.5vw;
    }

    .page_recruitment .for_sec .inner .pdf_box ul {
        margin-top: 4vw;
        display: block;
    }

    .page_recruitment .for_sec .inner .pdf_box ul li {
        width: 100%;
    }

    .page_recruitment .for_sec .inner .pdf_box ul li+li {
        margin-top: 2vw;
    }

    .page_recruitment .for_sec .inner .pdf_box ul li a {
        border-radius: 10vw;
        padding: 0 5vw 0 10vw;
    }

    .page_recruitment .for_sec .inner .pdf_box ul li a .icon {
        width: 6vw;
    }

    .page_recruitment .for_sec .inner .pdf_box ul li a .name {
        font-size: 4.5vw;
        line-height: 13vw;
        margin-left: 6vw;
    }

    .page_recruitment .for_sec .inner .pdf_box ul li a .download {
        width: 4vw;
    }

    .page_recruitment .for_sec .inner .pdf_box ul li+li a::before {
        display: none;
    }

    .page_recruitment .for_sec .inner .mark_box {
        margin-top: 6vw;
    }

    .page_recruitment .for_sec .inner .mark_box ul {
        gap: 1.5vw;
    }

    .page_recruitment .for_sec .inner .mark_box ul li {
        padding: 3vw 0;
        font-size: 3.6vw;
        line-height: 1.7;
        border-radius: 10vw;
    }

    /* 学校評価と公表 */
    .page_assesment .pdf_list {
        padding: 7vw 3vw;
    }

    .page_assesment .pdf_list ul li {
        display: block;
        padding: 4.5vw 0;
    }

    .page_assesment .pdf_list ul li .theme {
        font-size: 4.2vw;
        width: 100%;
    }

    .page_assesment .pdf_list ul li .cont_box {
        margin-top: 2vw;
    }

    .page_assesment .pdf_list ul li .cont_box .cont a {
        gap: 2vw;
    }

    .page_assesment .pdf_list ul li .cont_box .cont+.cont {
        margin-top: 1.5vw;
    }

    .page_assesment .pdf_list ul li .cont_box .cont a::after {
        width: 4vw;
    }

    /* 再進学について */
    .page_working .student_sec .ttl {
        font-size: 5.2vw;
    }

    .page_working .student_sec .ttl_box {
        margin-top: 7vw;
    }

    .page_working .student_sec .ttl_box .theme {
        font-size: 5vw;
    }

    .page_working .student_sec .ttl_box .text {
        margin-top: 3vw;
        font-size: 3.3vw;
    }

    .page_working .list_sec .list {
        margin-top: 10vw;
        padding-top: 10vw;
    }

    .page_working .list_sec .list ul li {
        display: block;
    }

    .page_working .list_sec .list ul li .img {
        width: 100%;
        height: 50vw;
    }

    .page_working .list_sec .list ul li .img img {
        border-radius: 2vw;
    }

    .page_working .list_sec .list ul li .text_box .theme {
        font-size: 4.2vw;
        margin-bottom: 3vw;
    }

    .page_working .list_sec .list ul li .text_box {
        margin-top: 5vw;
    }

    .page_working .list_sec .list ul li .text_box .text {
        font-size: 3.3vw;
    }

    .page_working .list_sec .list ul li .text_box .text+.text {
        margin-top: 2vw;
    }

    .page_working .list_sec .list ul li:nth-child(even) .img {
        margin-left: 0;
    }

    .page_working .list_sec .list ul li+li {
        margin-top: 12vw;
    }

    /* オープンキャンパス */
    .page_campus .about_sec .img_box .ttl {
        font-size: 5vw;
        margin-bottom: 5vw;
    }

    .page_campus .about_sec .img_box .img {
        /* height: 48vw; */
    }

    .page_campus .about_sec .list_sec {
        margin-top: 8vw;
    }

    .page_campus .about_sec .list_sec .list+.list {
        margin-top: 10vw;
    }

    .page_campus .about_sec .list_sec .list .theme {
        line-height: 12vw;
        padding-left: 4vw;
        font-size: 4.5vw;
    }

    .page_campus .about_sec .list_sec .list ul {
        grid-template-columns: 100%;
        gap: 3vw;
        margin-top: 5vw;
    }

    .page_campus .about_sec .list_sec .list ul li {
        border-radius: 1vw;
        display: flex;
        align-items: center;
    }

    .page_campus .about_sec .list_sec .list ul li .img {
        height: 30vw;
        width: 43%;
        flex-shrink: 0;
    }

    .page_campus .about_sec .list_sec .list ul li .text_box {
        padding: 1vw 2vw;
    }

    .page_campus .about_sec .list_sec .list ul li .text_box .ttl_box {
        gap: 1.5vw;
    }

    .page_campus .about_sec .list_sec .list ul li .text_box .ttl_box .num {
        font-size: 6vw;
    }

    .page_campus .about_sec .list_sec .list ul li .text_box .ttl_box .ttl {
        font-size: 3.8vw;
    }

    .page_campus .about_sec .list_sec .list ul li .text_box .text {
        font-size: 3vw;
        margin-top: 2vw;
        line-height: 1.6;
    }

    .page_campus .about_sec .list_sec .list .sec_text {
        margin-top: 3vw;
        font-size: 3.4vw;
    }

    .page_campus .about_sec .btn_sec_box {
        display: block;
        margin-top: 8vw;
    }

    .page_campus .about_sec .btn_sec_box .btn_box {
        width: 100%;
    }

    .page_campus .about_sec .btn_sec_box .btn_box+.btn_box {
        margin-top: 2vw;
    }

    .page_campus .about_sec .btn_sec_box .btn_box a {
        padding: 0px 5vw;
        border-radius: 1vw;
    }

    .page_campus .about_sec .btn_sec_box .btn_box a:hover {
        opacity: 1;
    }

    .page_campus .about_sec .btn_sec_box .btn_box a .icon {
        width: 5vw;
        translate: 0 1vw;
    }

    .page_campus .about_sec .btn_sec_box .btn_box a .name {
        font-size: 3.6vw;
        margin-left: 4vw;
        line-height: 13vw;
    }

    .page_campus .about_sec .btn_sec_box .btn_box a .arrow {
        width: 4.5vw;
        translate: 0 1vw;
    }

    .page_campus .about_sec .tel_sec_box {
        margin-top: 3vw;
    }

    .page_campus .about_sec .tel_sec_box .tel {
        font-size: 4.5vw;
    }

    .page_campus .about_sec .tel_sec_box .tel .big {
        font-size: 5vw;
    }

    .page_campus .about_sec .tel_sec_box .txt {
        font-size: 3.4vw;
        margin-top: 2vw;
    }

    /* faq */
    .page_faq .menu_list_btn ul {
        grid-template-columns: 100%;
        gap: 2vw;
    }

    .page_faq .menu_list_btn ul li a {
        padding: 0 5vw;
        border-radius: 10vw;
        background-color: #b0efc3;
    }

    .page_faq .menu_list_btn ul li a .name {
        font-size: 4.2vw;
        line-height: 11vw;
    }

    .page_faq .menu_list_btn ul li a .icon {
        width: 4vw;
    }

    .page_faq .faq_sec_box {
        margin-top: 12vw;
    }

    .page_faq .faq_sec+.faq_sec {
        margin-top: 14vw;
    }

    .page_faq .faq_sec .border {
        width: 50%;
        margin: 7vw auto 0;
    }

    .page_faq .faq_sec .list {
        margin-top: 6vw;
    }

    .page_faq .faq_sec .list ul li {
        border-radius: 1vw;
    }

    .page_faq .faq_sec .list ul li+li {
        margin-top: 3vw;
    }

    .page_faq .faq_sec .list ul li .quest {
        gap: 3.6vw;
        padding: 3.2vw 7vw 3.2vw 3vw;
    }

    .page_faq .faq_sec .list ul li .quest::before,
    .page_faq .faq_sec .list ul li .quest::after {
        width: 3vw;
    }

    .page_faq .faq_sec .list ul li .quest .q_mark {
        font-size: 7.2vw;
    }

    .page_faq .faq_sec .list ul li .quest .text {
        font-size: 3.4vw;
    }

    .page_faq .faq_sec .list ul li .answer {
        gap: 3.6vw;
        margin: 0 3vw;
        padding: 3.2vw 0;
    }

    .page_faq .faq_sec .list ul li .answer .a_mark {
        font-size: 7.2vw;
    }

    .page_faq .faq_sec .list ul li .answer .text {
        font-size: 3vw;
    }

    /* お問い合わせ */
    .page_contact .contact_sec .main_box {
        padding: 8vw 3vw;
    }

    .page_contact .contact_sec .main_box .theme {
        font-size: 5vw;
        line-height: 1.4;
    }

    .page_contact .contact_sec .main_box .comment {
        font-size: 3.4vw;
        margin-top: 1.7vw;
    }

    .page_contact .contact_sec .main_box .list {
        margin-top: 4vw;
    }

    .page_contact .contact_sec .main_box .list ul li {
        font-size: 3.2vw;
    }

    .page_contact .contact_sec .main_box .list ul li+li {
        margin-top: 0.8vw;
    }

    .page_contact .contact_sec .main_box .line_sec {
        margin-top: 4vw;
    }

    .page_contact .contact_sec .main_box .line_sec .com {
        font-size: 3.5vw;
    }

    .page_contact .contact_sec .main_box .line_sec .btn_box {
        width: 100%;
        margin-top: 3vw;
    }

    .page_contact .contact_sec .main_box .line_sec .btn_box a {
        padding: 0px 5vw;
        border-radius: 1vw;
    }

    .page_contact .contact_sec .main_box .line_sec .btn_box a:hover {
        opacity: 1;
    }

    .page_contact .contact_sec .main_box .line_sec .btn_box a .icon {
        width: 6vw;
        translate: 0 1vw;
    }

    .page_contact .contact_sec .main_box .line_sec .btn_box a .name {
        font-size: 3.6vw;
        margin-left: 4vw;
        line-height: 13vw;
    }

    .page_contact .contact_sec .main_box .line_sec .btn_box a .arrow {
        width: 5vw;
        translate: 0 1vw;
    }

    .page_contact .contact_sec .main_box .line_sec .acc {
        font-size: 3.4vw;
        margin-top: 2vw;
    }

    .page_contact .contact_sec .contact_form {
        margin-top: 12vw;
    }

    .page_contact .contact_sec .contact_form .confirm_btn {
        width: 100%;
        margin: 8vw auto 0;
    }

    .page_contact .contact_sec .contact_form .confirm_btn a {
        line-height: 12vw;
        border-radius: 10vw;
        font-size: 4.2vw;
    }

    .page_contact .contact_sec .contact_form .confirm_btn a:hover {
        opacity: 1;
    }

    .page_access .map_sec .main_box {
        text-align: center;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box ul {
        gap: 1vw;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link {
        padding: .7em .5em;
        font-size: 3.6vw;
        line-height: 1.3;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .link_sec_box .link:hover {
        background-color: #efefb0;
    }

    .page_course .course_sec .system_sec .text_img_box .text_box .btn_box_sec {
        display: block;
        margin-top: 5vw;
    }

    .page_hydroponics .message_sec .cont .text_area {
        padding: 7vw 3vw;
        border-radius: 1vw;
    }

    .page_hydroponics .message_sec .cont .text_area .img_text_box {
        display: block;
    }

    .page_hydroponics .message_sec .cont .text_area .img_text_box .img {
        width: 100%;
    }

    .page_hydroponics .message_sec .cont .text_area .img_text_box .img img {
        width: 100%;
    }

    .page_hydroponics .message_sec .cont .text_area .img_text_box .profile {
        font-size: 3.3vw;
        border-width: 1px 0;
    }

    .page_campus .event_sec .list ul li .text_box .text .translate {
        margin-left: 3.4vw;
    }

    .page_recruitment .for_sec .inner .mark_box ul.com li {
        font-size: 2.8vw;
        text-align: left;
    }

    .page_campus .about_sec .list_sec .list .sec {
        gap: 3vw;
        flex-direction: column-reverse;
        margin-top: 3vw;
        align-items: unset;
    }

    .page_campus .about_sec .list_sec .list .sec .img_po {
        margin-left: 0;
        width: 100%;
    }

    /* 就職について */
    .page_employment .employment_sec .menu_list_btn ul {
        display: block;
    }

    .page_employment .employment_sec .menu_list_btn ul li {
        width: 100%;
    }

    .page_employment .employment_sec .menu_list_btn ul li+li {
        margin-top: 2vw;
    }

    .page_employment .employment_sec .menu_list_btn ul li a {
        padding: 0 8vw 0 20vw;
        border-radius: 10vw;
        transition: 0s;
        background-color: #b0efc3;
    }

    .page_employment .employment_sec .menu_list_btn ul li a .name {
        font-size: 4vw;
        line-height: 12vw;
    }

    .page_employment .employment_sec .menu_list_btn ul li a .icon {
        width: 4vw;
    }

    .employment_sec_box {
        margin-top: 15vw;
    }

    .employment_sec_box .employment_record_sec {
        border: 3px solid #1c1c1c;
        padding: 8vw 4vw;
        border-radius: 4vw;
    }

    .employment_sec_box .page_ttl_box .ttl {
        font-size: 6vw;
        gap: 4vw 0;
    }

    .employment_sec_box .employment_record_sec .page_ttl_box .ttl {
        flex-direction: column;
        gap: 3vw 0;
        margin-left: 0;
    }

    .employment_sec_box .employment_record_sec .page_ttl_box .ttl::before {
        width: 12vw;
        height: 4vw;
        translate: 100% -50%;
        left: 7vw;
    }

    .employment_sec_box .employment_record_sec .page_ttl_box .ttl::after {
        width: 100%;
    }

    .employment_sec_box .page_ttl_box .ttl::after {
        width: 100%;
        height: 2vw;
    }

    .employment_sec_box .employment_record_sec .main_text {
        font-size: 4.5vw;
        text-decoration-thickness: 2vw;
        margin-top: 4vw;
    }

    .employment_record_sec .employment_contents {
        margin-top: 5vw;
        border: 2px solid;
        padding: 4vw;
    }

    .employment_record_sec .employment_contents .employment_list_box:first-child {
        padding-bottom: 5vw;
    }

    .employment_record_sec .employment_contents .employment_list_box:first-child::before {
        height: 2px;
    }

    .employment_record_sec .employment_contents .index {
        font-size: 4.2vw;
    }

    .employment_record_sec .employment_contents .employment_list_box dl,
    .employment_record_sec .employment_contents .employment_list_box dd {
        font-size: 3.5vw;
    }

    .employment_record_sec .employment_contents .employment_list_box dl+dl {
        margin-top: 4vw;
    }

    .employment_record_sec .employment_contents .employment_list_box+.employment_list_box {
        padding-top: 5vw;
    }

    .employment_support_sec {
        padding: 20vw 0 25vw;
    }

    .employment_sec_box .employment_support_sec .ttl {
        font-size: 5.5vw;
        gap: 2vw 0;
        flex-direction: column-reverse;
    }

    .employment_support_sec .ttl::before {
        width: 15vw;
        height: 1.2vw;
    }

    .employment_support_sec .text_box {
        margin: 8vw 0 20vw;
    }

    .employment_support_sec .text_box .main_text {
        font-size: 4.8vw;
        text-decoration-thickness: 1.5vw;
        text-underline-offset: 0;
        line-height: 1.8;
        text-align: center;
    }

    .employment_support_sec .text_box .text {
        font-size: 3.8vw;
        line-height: 1.7;
        margin-top: 6vw;
    }

    .employment_support_sec .schedule_box {
        padding: 8vw 4vw;
    }

    .employment_support_sec .schedule_box::before {
        width: 100vw;
        margin: calc(50% - 50vw);
        height: 35vw;
        bottom: -3vw;
        left: 0;
        translate: 0% 0%;
    }

    .employment_support_sec .schedule_box::after {
        height: 15vw;
        bottom: -9vw;
    }

    .employment_support_sec .schedule_box .index {
        font-size: 4.8vw;
    }

    .employment_support_sec .schedule_box .schedule_list {
        flex-direction: column;
        gap: 5vw 0;
    }

    .employment_support_sec .schedule_box .schedule_list .years {
        width: 100%;
        height: 13vw;
        font-size: 4vw;
    }

    .employment_support_sec .schedule_box .schedule_list .list_box {
        gap: 8vw 0;
    }

    .employment_support_sec .schedule_box .schedule_list .list_box .point {
        font-size: 3.8vw;
    }

    .employment_support_sec .schedule_box .schedule_list .list_box .point::before {
        height: 8vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .month {
        width: 10vw;
        font-size: 3.8vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .step_box {
        gap: 0 5vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .step_box .en {
        font-size: 3.5vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .step_box .text {
        font-size: 3.4vw;
    }

    .employment_support_sec .schedule_box .schedule_list+.schedule_list {
        margin-top: 7vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box+.flex_box {
        margin-top: 2vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .size {
        font-size: 3.5vw;
        margin-top: 2vw;
        width: 100%;
        text-align: center;
    }

    .employment_support_sec .schedule_box .schedule_list {
        flex-direction: column;
        gap: 5vw 0;
    }

    .employment_support_sec .schedule_box .schedule_list .years {
        width: 100%;
        height: 13vw;
        font-size: 4vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .month {
        width: 10vw;
        font-size: 3.8vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .step_box {
        gap: 0 5vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .step_box .en {
        font-size: 3.5vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .step_box .text {
        font-size: 3.4vw;
    }

    .employment_support_sec .schedule_box .schedule_list+.schedule_list {
        margin-top: 7vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box+.flex_box {
        margin-top: 2vw;
    }

    .employment_support_sec .schedule_list .years_box .flex_box .size {
        font-size: 3.5vw;
        margin-top: 2vw;
        width: 100%;
        text-align: center;
    }

    .graduate_message_sec {
        border-radius: 4vw;
        border: 3px solid;
        padding: 7vw 3vw;
    }

    .graduate_message_sec .contents {
        flex-direction: column;
        gap: 8vw 0;
        margin-top: 8vw;
    }

    .graduate_message_sec .contents+.contents {
        margin-top: 18vw;
    }

    .graduate_message_sec .contents .img_box {
        width: 100%;
    }

    .graduate_message_sec .contents .img_box .img img {
        height: 50vw;
    }

    .graduate_message_sec .contents .img_box .graduate_info {
        margin-top: 3vw;
    }

    .graduate_message_sec .contents .img_box .graduate_info .flex_box .name {
        font-size: 3.8vw;
    }

    .graduate_message_sec .contents .img_box .graduate_info .flex_box .text {
        font-size: 3.4vw;
    }

    .graduate_message_sec .contents .message_box .flex_box {
        flex-direction: column;
        gap: 3vw 0;
    }

    .graduate_message_sec .contents .message_box .message {
        font-size: 4.5vw;
    }

    .graduate_message_sec .contents .message_box .company_box {
        font-size: 3.6vw;
    }

    .graduate_message_sec .contents .message_box .company_box .company {
        border-top: 1px solid;
    }

    .graduate_message_sec .contents .message_box .text_box {
        margin-top: 7vw;
    }

    .graduate_message_sec .contents .message_box .text_box .text {
        font-size: 3.6vw;
    }

    .graduate_message_sec .contents .message_box .text_box .text+.text {
        margin-top: 3vw;
    }

    .graduate_message_sec .contents:nth-child(odd) {
        flex-direction: column;
    }

    .companies_voice_sec {
        border: 3px solid;
        padding: 8vw 3vw;
        margin: 20vw 0 7vw;
    }

    .companies_voice_sec .contents {
        flex-direction: column;
        gap: 8vw 0;
        margin-top: 8vw;
    }

    .companies_voice_sec .contents .img_box {
        width: 100%;
    }

    .companies_voice_sec .contents .img_box .img img {
        height: 80vw;
    }

    .companies_voice_sec .contents .img_box .company_info {
        margin-top: 3vw;
    }

    .companies_voice_sec .contents .img_box .company_info .company {
        font-size: 3.8vw;
    }

    .companies_voice_sec .contents .img_box .company_info .name {
        font-size: 3.4vw;
    }

    .companies_voice_sec .contents .message_box .message {
        font-size: 4.5vw;
    }

    .companies_voice_sec .contents .message_box .text_box {
        margin-top: 5vw;
    }

    .companies_voice_sec .contents .message_box .text_box .text {
        font-size: 3.8vw;
        line-height: 1.7;
    }

    .companies_voice_sec .contents .message_box .text_box .text+.text {
        margin-top: 4vw;
    }

    /* 問い合わせ先方記述 */
    .contact .form_sab {
        text-align: right;
        margin: 20px 0 10px
    }

    .contact .form_sab span {
        color: #F00;
    }

    .contact .form_area {
        background-color: #ffffff;
        padding: 4vw;
    }

    .contact .form_area dl {
        margin: 0 0 5vw;
        padding-bottom: 5vw;
    }

    .contact .form_area dt {
        margin: 0 0 3vw 0;
        font-size: 4vw;
    }

    .contact .form_area dt span {
        font-size: 10px;
        color: #ffffff;
        vertical-align: middle;
    }

    .form_area dd {
        margin: 0;
    }

    .form_area dd input.form_border {
        padding: 3vw 2vw;
    }

    input[type="text"] {
        color: #CCC;
        font-size: 3.5vw;
        width: 100%;
    }

    input[type="text"].textFocus {
        color: #333;
        font-size: 14px;
    }

    textarea {
        color: #CCC;
        font-size: 14px;
        line-height: 140%;
    }

    textarea.textFocus {
        color: #333;
        font-size: 14px;
        line-height: 140%;
    }

    .seibetsu dd input {
        vertical-align: middle;
        margin: 0 5px 0 0;
    }

    .seibetsu dd label {
        margin: 0 10vw 0 0;
    }

    .txt_xs {
        width: 150px;
    }

    .txt_s {
        width: 340px;
    }

    .txt_l {
        width: 640px;
    }

    .message {
        /* width: 100%; */
        /* height: 40vw; */
        /* padding: 1vw; */
    }

    .address {
        margin: 20px 0 0 !important;
    }

    span.customSelect {
        width: 150px;
        padding: 8px 10px;
        background: url(../../contact/images/select_icon.png) no-repeat right #FFF;
        border: #AACF52 solid 1px;
    }

    .customSelectInner {
        width: auto !important;
    }

    .contact .form_area dt span.caution {
        font-size: 3vw;
        padding: 1vw 0 0 0vw;
        display: block;
    }

    /* ボタン */
    .btn_list {
        margin: 55px 0 30px;
        text-align: center;
    }

    .btn_list li {
        display: block;
        height: 12vw;
        margin: 3vw auto;
        padding: 0;
    }

    .btn_list li input {
        width: 100%;
        height: 13vw;
    }

    .btn_list li input:hover {
        filter: alpha(opacity=70);
        -moz-opacity: 0.7;
        opacity: 0.7;
    }


    /* ---------- 確認 ---------- */

    table#mfp_confirm_table {
        border-spacing: 0px;
        border-collapse: collapse;
        width: 100%;
    }

    div#mfp_phase_confirm {
        clear: both;
    }

    #mfp_phase_confirm_inner h4 {
        font-size: 15px;
        color: #333;
        font-weight: normal;
    }

    #mfp_phase_confirm_inner th {
        margin: 30px 0 10px 0;
        font-size: 16px;
        display: block;
        font-weight: normal;
        text-align: left;
    }

    #mfp_phase_confirm_inner td {
        font-size: 16px;
        color: #666;
        margin: 0 0 10px 1em;
        display: block;
        text-align: left
    }

    .mfp_buttons {
        margin: 55px 0 30px;
    }

    .mfp_buttons button {
        width: 220px;
        height: 46px;
        margin: 0 10px;
        padding: 0;
    }

    #mfp_button_send {
        /* width: 100%; */
        /* height: 13vw; */
        /* display: flex; */
        /* align-items: center; */
        /* justify-content: center; */
    }

    #mfp_button_cancel {
        margin-top: 4vw;
    }


    /* ---------- 完了 ---------- */
    .tel {
        font-size: 26px;
        font-weight: bold;
        margin: 40px 0 0;
    }

    .top_btn {
        text-align: center;
        margin: 40px 0 60px;
    }

    div#mfp_loading {
        z-index: 20001;
        position: absolute;
        display: none;
        width: 40px;
        height: 40px;
        background-image: url(images/mfp_loading.gif);
    }

    div.mfp_err,
    .js_err#errormsg_opencamp {
        clear: both;
        display: none;
        text-align: left;
        margin: 5px 0px 0px 0px;
        padding: 3px 0px 5px 17px;
        color: #F00;
        font-size: 12px;
        line-height: normal;
        background-image: url(../contact/images/mfp_error.gif);
        background-repeat: no-repeat;
        background-position: 0px 1px;
    }

    .mfp_parent_error {
        border: solid 2px #F00;
    }

    .problem {
        background-color: #FCC;
    }

    div#mfp_error {
        background-color: #FEE;
        border: solid 1px #F00;
        padding: 10px;
        display: none;
    }

    div#mfp_error p {
        padding: 0px;
        margin: 0px;
        font-size: 14px;
        text-align: center;
    }

    div#mfp_error p strong {
        font-size: 18px;
        color: #F00;
    }

    div#mfp_warning {
        background-color: #FEE;
        border: solid 1px #F00;
        padding: 10px;
        display: none;
    }

    div#mfp_warning p {
        padding: 0px;
        margin: 0px;
        font-size: 14px;
        text-align: center;
    }

    div#mfp_warning p strong {
        font-size: 18px;
        color: #F00;
    }

    div#mfp_price {
        color: #C00;
        font-size: 36px;
        padding: 10px;
        font-weight: bolder;
    }

    div#mfp_price span {
        color: #666;
        font-size: 12px;
        font-weight: normal;
    }

    button.mfp_next,
    button.mfp_prev {
        font-size: 18px;
        margin: 10px;
        padding: 5px 10px;
    }

    button.mfp_next {
        float: right;
    }

    button.mfp_prev {
        float: left;
    }

    ul#mfp_phase_stat {
        padding: 10px;
    }

    ul#mfp_phase_stat li {
        float: left;
        padding: 8px 15px;
        border-radius: 3px;
        margin: 5px;
        list-style: none;
        font-size: 14px;
    }

    ul#mfp_phase_stat li.mfp_phase_arrow {
        bos-shadow: none;
        padding: 8px 5px;
    }

    ul#mfp_phase_stat li.mfp_active_phase {
        background-color: #E8EEF9;
        box-shadow: 0px 0px 5px #000;
    }

    ul#mfp_phase_stat li.mfp_inactive_phase {
        background-color: #CCC;
        color: #666;
        box-shadow: 0px 0px 5px #CCC;
    }

    div.mfp_buttons {
        clear: both;
        padding: 10px 0px;
        text-align: center;
    }

    div.mfp_buttons button#mfp_button_cancel {}

    .imagebutton {
        margin: 0px;
        padding: 0px;
        border: none;
        outline: none;
        background: none;
    }

    input#mfp_reserve_item,
    input#mfp_reserve_date {
        display: none;
    }

    div#mfp_reserve_wrapper {
        position: relative;
        overflow: hidden;
        border: solid 1px #CCC;
    }

    div#mfp_reserve_inner {
        position: relative;
        padding: 0px 0px 0px 100px;
        overflow: auto;
    }

    div#mfp_reserve_wrapper table {
        border-spacing: 0px;
        border-collapse: collapse;
    }

    div#mfp_reserve_wrapper table.mfp_reserve_table_label {
        position: absolute;
        top: 0px;
        left: 0px;
        width: 100px;
        background-color: #FEE;
        z-index: 100;
    }

    div#mfp_reserve_wrapper table.mfp_reserve_table_value {
        padding: 0px 0px 0px 0px;
    }

    div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active,
    div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning {
        cursor: pointer;
    }

    div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active:hover,
    div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning:hover {
        background-color: #E8EEF9;
    }

    div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_current {
        background-color: #0068B7;
        color: #FFF;
    }

    td.mfp_reserve_disabled {
        background-color: #CCC;
    }

    td.mfp_reserve_warning {
        background-color: #FFC;
    }

    div#mfp_reserve_wrapper table tr td,
    div#mfp_reserve_wrapper table tr th {
        border: solid 1px #CCC;
        padding: 0px 5px;
        font-size: 12px;
        text-align: center;
        font-family: Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
        font-weight: normal;
        height: 20px;
        text-align: left;
    }

    td.mfp_reserve_week_0 {
        color: #F00;
        background-color: #FEE;
    }

    td.mfp_reserve_week_6 {
        color: #00F;
        background-color: #EEF;
    }

    div.mfp_ok {
        border-radius: 5px;
        background-color: #090;
        border: solid 1px #090;
        display: inline-block;
        line-height: 1.5em;
        padding: 0px 5px;
        margin: 0px 2px;
        color: #FFF;
        font-size: 10px;
        background-image: url(images/header.png);
        background-size: 100% 100%;
        display: none;
    }

    div.prefcodeWrapper {
        position: relative;
    }

    div.prefcodeResult {
        position: absolute;
        top: 0px;
        left: 0px;
        padding: 5px;
        border: solid 1px #CCC;
        background-color: #FFF;
        box-shadow: 0px 0px 5px #CCC;
        display: none;
    }

    div.prefcodeResult div {
        cursor: pointer;
    }

    div.prefcodeResult div:hover {
        background-color: #C9EBFB;
    }

    div.prefcodeResult div.prefcodeNext {
        background-color: #EEE;
        text-align: center;
    }

    div.prefLoading {
        padding: 60px 100px;
        background: url(images/mfp_zip_loading.gif) no-repeat center center;
    }

    .hidefield {
        height: 0px;
        overflow: hidden;
    }

    .showfield {
        height: auto;
        overflow: visible;
    }

    div#mfp_hidden {
        overflow: hidden;
        width: 1px;
        height: 1px;
        padding: 0px;
        margin: 0px;
    }

    .contact .message {
        width: 100%;
    }

    .contact .form_area dd input.form_border {
        width: 100%;
    }

    .contact .form_area dl.flex {
        flex-direction: column;
        justify-content: initial;
        gap: 4vw;
    }

    .contact .form_area dl.flex .flex_item {
        width: 100%;
    }

    .contact_text.thanks {
        font-size: 3.8vw;
        line-height: 1.7;
    }

    .ichiran_link_form {
        width: 100%;
        margin: 10vw auto 0;
        line-height: 13vw;
        font-size: 4.5vw;
    }

    .thanks_page_box .thanks_text {
        font-size: 3.5vw;
    }

    .thanks_page_box .top_btn_box {
        width: 100%;
        margin: 3.5vw auto 0;
    }

    .thanks_page_box .top_btn_box a {
        font-size: 4.2vw;
        line-height: 11vw;
    }

    .thanks_page_box .top_btn_box a:hover {
        background-color: #69bd83;
        color: #fff;
    }

    .ori_select_box {
        padding: 10px;
        width: 100%;
        font-size: 14px;
    }

    .yubin {
        translate: -18px 34px;
    }

    .yubin_small {
        translate: 0px 5px;
    }

    .ori_select_box+.ori_select_box {
        margin-top: 5px;
    }

    .page_about .field_sec .btn_box {
        width: 100%;
        margin: 10vw 0 0;
    }

    .page_about .field_sec .btn_box a {
        padding: 0 9vw;
        border-radius: 2vw;
    }

    .page_about .field_sec .btn_box a .name {
        font-size: 4vw;
        line-height: 14vw;
    }

    .page_about .field_sec .btn_box a:hover {
        background-color: var(--main-color);
    }

    .page_about .field_sec .btn_box a:hover .name {
        color: #fff;
    }

    .page_about .field_sec .btn_box a .arrow {
        width: 5vw;
    }

    .page_about .field_sec .btn_box a:hover .arrow svg path {
        stroke: #fff;
    }

    dl.opencamp dd input::placeholder {
        font-size: .7em;
    }

    #info_flow .cont dl.giji {
        padding-bottom: 7vw;
    }

    #info_flow .cont dl.arrow {
        padding-top: 10vw;
    }

    #info_flow .cont dl.arrow::before {
        height: 10vw;
        width: 20vw;
        left: 0vw;
    }

    #info_flow .cont dl.giji::before {
        left: 5vw;
        width: 10vw;
    }

    #info_flow .cont dl {
        display: flex;
        flex-direction: column;
        gap: 5vw;
        margin: 0;
        position: relative;
    }

    #info_flow .cont dl dt {
        width: 100%;
        font-size: 4vw;
        padding: 1em;
    }

    #info_flow .cont dl dd {
        margin: 0;
        padding: 0;
        font-size: 3.6vw;
    }

    #info_flow .cont dl dd .lr_text {
        font-size: 4vw;
    }

    #info_flow .cont dl dd .note_area .note_text::before {
        content: "※";
    }

    #info_flow .cont .tel_area {
        padding: 5vw;
    }

    #info_flow .cont .tel_area .color_text {
        font-size: 4vw;
        color: #C00;
        letter-spacing: .07em;
        margin-bottom: .7em;
        font-weight: 700;
    }

    #info_flow .cont .tel_area .tel_num {
        font-size: 5vw;
        font-weight: 700;
    }

    .small_attention {
        background: none !important;
        color: #fe3131 !important;
        margin: 0 !important;
        padding: 0 !important;
        display: block;
        font-size: 9px !important;
        margin: 3px 0 0 !important;
    }

    .course_detail_area {
        margin-bottom: 13vw;
    }

    .course_detail_area .detail_block+.detail_block {
        margin-top: 13vw;
    }

    .course_detail_area .detail_block .area_ttl {
        font-size: 4vw;
        border-left: 4px solid currentColor;
    }

    .course_detail_area .detail_block .ocu_area {
        margin-top: 5vw;
    }

    .course_detail_area .detail_block .ocu_area .ocu_cont {
        border-radius: 10px;
        padding: 4vw;
    }

    .course_detail_area .detail_block .ocu_area .ocu_cont ul {
        font-size: 3.4vw;
        flex-direction: column;
        gap: .5em;
    }

    .course_detail_area .detail_block .flex_box {
        grid-template-columns: 1fr;
        gap: 4vw;
        margin-top: 5vw;
        align-items: unset;
    }

    .course_detail_area .detail_block .flex_box .flex_text_area {
        padding: 0;
    }

    .course_detail_area .detail_block .flex_box .flex_text_area .text {
        font-size: 3.4vw;
    }

    .course_detail_area .detail_block .flex_box .flex_img_area {
        min-height: unset;
        height: 45vw;
    }

    .course_detail_area .detail_block .course_feature_area {
        margin-top: 5vw;
    }

    .course_detail_area .detail_block .course_feature_area .feature_list ul li+li {
        margin-top: 3vw;
    }

    .course_detail_area .detail_block .course_feature_area .feature_list ul li {
        display: block;
    }

    .course_detail_area .detail_block .course_feature_area .feature_list ul li .head {
        text-align: left;
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        font-weight: 700;
        padding: 4vw;
    }

    .course_detail_area .detail_block .course_feature_area .feature_list ul li .head .num {
        font-size: 8vw;
        display: block;
        line-height: 1.1;
        margin-bottom: 0;
        margin-right: .4em;
    }

    .course_detail_area .detail_block .course_feature_area .feature_list ul li .head .num .size {
        font-size: .35em;
        margin-right: .3em;
    }

    .course_detail_area .detail_block .course_feature_area .feature_list ul li .head .feature_ttl {
        font-size: 3.8vw;
        line-height: 1.5;
    }

    .course_detail_area .detail_block .course_feature_area .feature_list ul li .feature_flex_box {
        display: flex;
        align-items: center;
        gap: 4vw;
        justify-content: space-between;
        flex-direction: column-reverse;
        padding: 4vw;
    }

    .course_detail_area .detail_block .course_feature_area .feature_list ul li .feature_flex_box .feature_img {
        width: 100%;
        height: 38vw;
        aspect-ratio: unset;
    }

    .course_detail_area .detail_block .course_feature_area .feature_list ul li .feature_flex_box .text_area .text {
        font-size: 3.4vw;
    }

    /* 5つの特長（SP） */
    
    .page_features section.section_introduction {
        margin-bottom: 20vw;
    }
    
    .page_features section.section_introduction .title {
        font-size: 5.2vw;
    }
    
    .page_features section.section_introduction .catch {
        font-size: 5vw;
    }
    
    .page_features section.section_introduction .lead {
        margin-top: 3vw;
        font-size: 3.3vw;
        text-align: left;
    }
    
    .page_features section.section_features {
        padding: 20vw 0;
        border-top: 3px solid;
        border-bottom: 3px solid;
        background-size: 100%;
    }
    
    .page_features section.section_features .sec_title {
        margin-bottom: 10vw;
        font-size: 6vw;
    }
    
    .page_features section.section_features .sec_title .accent {
        font-size: 13vw;
        line-height: 1;
    }
    
    .page_features section.section_features .sec_title .logo img {
        width: 70vw;
    }
    
    .page_features section.section_features ol li + li {
        margin-top: 10vw;
    }
    
    .page_features section.section_features ol li .flex_box {
        
    }
    
    .page_features section.section_features ol li.list {
        padding: 5vw;
    }
    
    .page_features section.section_features ol li .title_box {
        margin-bottom: 5vw;
        display: block;
        text-align: center;
    }
    
    .page_features section.section_features ol li .title_box .label {
        height: auto;
        padding: .5em 2em;
        border-radius: 5px;
        width: fit-content;
        margin: 0 auto 1em;
    }

    .page_features section.section_features ol li .title_box .label br {
        display: none;
    }
    
    .page_features section.section_features ol li .title_box .label .jp {
        font-size: 5vw;
    }
    
    .page_features section.section_features ol li .title_box .label .num {
        font-size: 6vw;
    }
    
    .page_features section.section_features ol li .title_box .title {
        font-size: 5vw;
        width: 100%;
        border-bottom: 3px dashed;
        padding-bottom: 4vw;
    }
    
    .page_features section.section_features ol li .text_box {
        width: 100%;
    }
    
    .page_features section.section_features ol li .text_box dl + dl {
        margin-top: 6vw;
    }
    
    .page_features section.section_features ol li .text_box dl dt {
        font-size: 4vw;
    }
    
    .page_features section.section_features ol li .text_box dl dd {
        font-size: 3.3vw;
    }
    
    .page_features section.section_features ol li .text_box dl dd ul li {
        padding-left: 3.3vw;
    }
    
    .page_features section.section_features ol li .text_box dl dd ul li:before {
        width: 2.2vw;
        height: 2.2vw;
        top: 2vw;
    }
    
    .page_features section.section_features ol li .text_box .attention {
        font-size: 3vw;
    }

    .page_features section.section_features ol li .text_box .image {
        margin: 8vw;
    }
    
}