@charset "utf-8";
/* ===========================================================
 *
 * 魚沼中央自動車学校 スタイルシート
 * Last UpDate : 2025/09/26
 *
=========================================================== */

/* ----------------------------------------------------------
	style.css
---------------------------------------------------------- */

/* ----------------------------------------------------------
 common
---------------------------------------------------------- */


html {
  font-feature-settings: "palt";
}

body {
color: #333;
background-color: #fff;
font-family: "Noto Sans JP","source-han-sans-japanese","Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", serif;
font-weight: 400;
font-style: normal;
letter-spacing: 1px;
}
/*
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .h2Wrap{ line-height: 1.7 !important; }

}
*/

a{transition: .5s;}
a:hover{transition: .5s;}


.noto-sans-jp-uniquifier{
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}


.roboto-uniquifier {
  font-family: "Roboto", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

.zen-maru-gothic-regular {
  font-family: "Zen Maru Gothic", serif;
  font-weight: 400;
  font-style: normal;
}

.m-plus-rounded-1c-regular {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 400;
  font-style: normal;
}

:root{
	--main-color: #ea6da4;
	--dark-color: #f12a81;
	--bright-color: #ff93c3;
	--light-color: #ffddec;
	--student-color: #ff567e;
}




/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/*a:link		{ color: #fff; text-decoration: none; }
a:visited	{ color: #333; text-decoration: none; }
a:hover		{ color: #425a9f; text-decoration: none; }
a:active	{ color: #425a9f; text-decoration: none; }*/



/* ----------------------------------------------------------
 header
---------------------------------------------------------- */

header{ position: fixed; width: 100%; background-color: #fff; height: 60px; z-index: 999; box-shadow: 0px 6px 16px -6px rgba(0,0,0,0.3);}
.header_sec{ margin: 0 0 0 auto; display: flex;  align-items: center; justify-content: space-between; height: 60px;}
.header_logo01{padding-left: 15px;}
.header_logo01 a{ display: block;}
.header_logo01 img{width: 170px;}

.header_navi{background-color: #fff; height: 80px; margin: 0 0 0 auto;  position: relative;}

.header_navi .gnavi{display: flex; align-items: center;}
.header_navi ul{display: flex;  font-weight: 700; font-style: normal; gap: 10px; align-items: center; margin-right: 25px;}
.header_item01{font-size: 1.6rem; color: #222; }
.header_item01 a{padding: 28px 15px;}
.header_item02{font-size: 1.6rem; color: #fff; display: flex; text-align: center; gap: 20px; margin-right: 15px;}
.header_item02 a{display: block; transition: .5s;}
.header_tel{margin-right: 20px;}
.header_tel01{font-family: "Roboto", serif; font-size: 2.5rem; font-weight: 700; font-style: normal;}
.header_tel01 img{width: 45px; height: auto; vertical-align: baseline; margin-right: 5px;}
.header_tel01 i{color: #333; font-size: 2.2rem; margin-right: 5px;}
.header_tel02{font-size: 1.1rem; font-weight: 400; display: block; text-align: right;}



.header_btn{margin: 0 60px 0 0; display: flex;}
.header_btn_item{width: 60px; height: 60px; text-align: center; font-size: 1rem; font-weight: 700; overflow: hidden;}
.header_btn_item a{padding: 12px 0;}
.header_preapplication a{ color: var(--dark-color); display: block;}
.header_btn_current a{background-color: #fff; color: var(--student-color); display: block; }
.header_btn_item i{display: block; font-size: 2.5rem; margin-bottom: 5px;}


.header_item01 a{
	position: relative;
	display: inline-block;
	text-decoration: none;
  }
  
.header_item01 a::after{
	position: absolute;
	bottom: 0px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	opacity: 0;
	visibility: hidden;
	transition: .4s;
	background-color: var(--dark-color);
  }
.header_item01 a:hover::after {
	bottom: 25px;
	opacity: 1;
	visibility: visible;
  }


/***************************************
サブメニュー
***************************************/
.has-child{position: relative;}


ul.submenu {
  position: absolute;
  top: 80px;
  left: 50%;
  transform: translate(-50% , 0);
  width: 230px;
  
  margin: 0;
  text-align: center;
  z-index: 99999;
  display: block;
  box-shadow: 0px 8px 10px -6px rgba(0,0,0,0.3);
}


.submenu a{padding: 15px 0; display: block; border-bottom: 1px solid var(--dark-color); background-color: #fff; font-size: 1.5rem; }
.submenu a:hover{background-color: var(--dark-color); color: #fff; }
.submenu li{visibility: hidden; height: 0; opacity: 0; transition: .5s;}
.submenu li:last-child a{border: none;}

ul.submenu li:first-child {
  border: 0 none; 
}
.has-child:hover .submenu li{visibility: visible; height: 54px; opacity: 1; transition: .5s;}

.header_item01 ul.submenu a::after{display: none;}


/*▲ メニューカスタマイズ (ここまで) ▲ */



/*ACCORDION toggle*/
 
	.accordion_logo{width: 80%; margin: 0 auto 30px; text-align: center;}





	.toggle{
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1000;
    margin: 0;
    padding: 0;
    width: 100px;
    height: 100px;
    border: none;
    transition: background-color 0.2s ease;
    cursor: pointer;}

/*
	.toggle::before, .toggle::after {
    content: "";
    background-color: #000;
    transition: background-color 0.3s ease;
}
	
	.toggle > span, .toggle:before, .toggle:after{
	  display: block;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 33px;
    height: 2px;
    margin: -2px 0 0 -15px;}
	.toggle:before{transform: translateY(-9px);}
	.toggle:after{transform: translateY(9px);}
*/

  .toggle .toggle_menu{
    position: absolute;
    color: #2B4F91;
    left: 50%;
    bottom: 27px;
    font-family: zen-old-mincho, sans-serif; font-weight: 700;
    transform: translate(-50%, 0);
    top: initial;
    margin: initial;
    width: initial;
    height: initial;
    background-color: initial;}

.toggle {
  position: fixed;
  background-color: #fff;
  width: 60px;
  height: 60px;
  padding: 13px;
  transition: .5s;
}

.toggle[aria-expanded=true] { transition: .5s;}

.menu_list {
 	display: none; 
	position: fixed;
	width: 100%;
	height: 100vh;
	margin: 0;
	list-style: none;
	top: 0;
	left: 0;
	padding: 60px 25px;
  background-color: #fff;
  font-family: zen-old-mincho, sans-serif; font-weight: 700;
  
    }

/*
.toggle[aria-expanded=true] > span {
  
}
.toggle[aria-expanded=true]::before, .toggle[aria-expanded=true]::after {

}
.toggle[aria-expanded=true]::before {
  animation: 0.3s ease closeBar1 forwards;
}
.toggle[aria-expanded=true]::after {
  animation: 0.3s ease closeBar2 forwards;
}
.toggle.-close::before {
  animation: 0.3s ease closeBar1Rev forwards;
}
.toggle.-close::after {
  animation: 0.3s ease closeBar2Rev forwards;
}

@keyframes closeBar1 {
  0% {
    transform: translateY(-10px);
  }
  50% {
    transform: translateY(0) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(45deg);
  }
}
	
@keyframes closeBar2 {
  0% {
    transform: translateY(10px);
  }
  50% {
    transform: translateY(0) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(-45deg);
  }
}
@keyframes closeBar1Rev {
  0% {
    transform: translateY(0) rotate(45deg);
  }
  50% {
    transform: translateY(0) rotate(0);
  }
  100% {
    transform: translateY(-10px);
  }
}
@keyframes closeBar2Rev {
  0% {
    transform: translateY(0) rotate(-45deg);
  }
  50% {
    transform: translateY(0) rotate(0);
  }
  100% {
    transform: translateY(10px);
  }
}

*/

.nav {
	position: fixed;
	top: 0;
    right: 0;
	z-index: 100;
	width: 100%;
	height: 100%;
	padding: 60px 40px;
    border: 1px solid #f5f5f5;
	justify-content: center;
	align-items: center;
	overflow: scroll;
	background-color: rgba(234, 109, 164, 0.9);
	color: #fff;
	transition: opacity 0.3s ease, visibility 0.3s ease;
    /* スクロールバー非表示 */
    /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
  -ms-overflow-style: none;
  /*Firefoxへの対応*/
  scrollbar-width: none;
}


 /*Google Chrome、Safariへの対応*/
.nav::-webkit-scrollbar{
  display: none;

}

.nav[aria-hidden=true] {
  	visibility: hidden;
  	opacity: 0;
 	pointer-events: none;
    
}
.nav[aria-hidden=false] {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
    overflow: scroll;
}

.toggle_menu li {

}
.toggle_menu li a {
	color: #fff;
	transition: .5s;
	display: block;
	padding: 12px 0;
  font-size: 1.8rem;
  font-weight: 500;
  border-bottom: 1px solid #fff;
}

.header_accordion .icon-tire{color: var(--main-color); display: block; font-size: 2.5rem; margin-bottom: 5px;}
.header_accordion span::before{content: "MENU"; color: var(--main-color); font-size: 1rem; font-weight: 700;}
.toggle[aria-expanded=true] span::before{content: "CLOSE";}

.toggle_menu i{margin-right: 10px;}
.toggle_menu li a:hover{}
.menu_sub{ padding: 8px 0;}
.menu_sub li{line-height: 2rem;}
.menu_sub li a{font-size: 1.7rem; padding: 8px 20px; border-bottom: none; position: relative;}
.menu_sub li a:after{content: ""; background-color: #fff; width: 8px; height: 11px; clip-path: polygon(0 0, 0% 100%, 100% 50%); position: absolute; top: 12px; left: 5px;}


/* ページ横ボタン */
.side_btn{position: fixed; right: 0; top: 120px; writing-mode: tb-rl; display: flex; z-index: 10;}
.side_btn_item{ font-weight: 400; }
.side_btn_item a{color: #fff; display: block; font-size: 2rem; font-weight: 700; padding: 15px 10px;}
.side_btn_item i{margin-bottom: 5px;}
.side_btn_item:first-child a{background-color: var(--main-color); border-top-left-radius: 10px; border: 1px solid var(--main-color); transition: .5s;}
.side_btn_item:first-child a:hover{color: var(--main-color); background-color: #fff; transition: .5s;}
.side_btn_item:nth-child(2) a{background-color: #1D9779; border-bottom-left-radius: 10px; border: 1px solid #1D9779; transition: .5s;}
.side_btn_item:nth-child(2) a:hover{color: #1D9779; background-color: #fff; transition: .5s;}

/* 合宿ページヘッダー */
.header_camp .header_logo01 a{display: flex; align-items: center;}
.header_camp .header_logo01 span{font-weight: 500; margin-left: 10px; color: #fff; background-color: var(--main-color); padding: 5px; width: 100px; font-size: 1.6rem; text-align: center;}


/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
.bottom_wrapper{background-color: #eee; padding: 40px 0 0;}
.bottom_wrapper .top_contents_head{text-align: center; margin-bottom: 20px;}

.bottom_sec{width: 90%; margin: 0 auto; max-width: 800px;}
.bottom_number{font-family: "Roboto", serif; font-size: 4rem; text-align: center; font-weight: 700; margin-bottom: 5px;}
.bottom_number img{width: 60px; height: auto; vertical-align: baseline; margin-right: 10px;}
.bottom_number i{margin-right: 10px;}
.bottom_number .bottom_time{display: block; text-align: center; font-weight: 400; font-size: 1.7rem; font-family: "Noto Sans JP", serif;}
.bottom_time span{width: 145px; font-size: 1.5rem; color: #fff; background-color: var(--dark-color); padding: 5px 15px; border-radius: 18px; font-weight: 700; display: block; margin: 0 auto 10px;}
.bottom_request_btn{width: 90%; max-width: 360px; text-align: center; margin: 0 auto;}
.bottom_request_btn a{display: block; color: #fff; background-color: #CD4187; border: 1px solid #CD4187; padding: 15px 0; border-radius: 8px; position: relative;}
.bottom_request_btn a:hover{color: #CD4187; background-color: #fff;}
.bottom_request_btn .icon-memo{margin-right: 10px;}
.bottom_request_btn .icon-arrow_right01{position: absolute; right: 10px; top: 50%; transform: translateY(-50%);}
.bottom_googlemap{margin-bottom: 20px;}
.bottom_googlemap iframe{width: 100%;}
.bottom_inner{border-bottom: 1px solid #ccc; padding-bottom: 15px;}

footer{width: 100%; background-color: #eee; padding: 20px 0 100px;}
footer .top_contents_head{text-align: center; margin-bottom: 30px;}
.footer_access_btn{width: 260px; text-align: center; margin: 0 auto 30px;}
.footer_access_btn a{display: block; padding: 10px 0; color: #fff; background-color: var(--dark-color); font-size: 1.6rem; font-weight: 700; border-radius: 30px; border: 1px solid var(--dark-color);}
.footer_access_btn a:hover{color: var(--dark-color); background-color: #fff;}
.footer_access_btn i{margin-right: 5px; font-size: 1.6rem;}
.footer_logo{text-align: center; margin-bottom: 10px;}
.footer_sns{display: flex; gap: 20px; justify-content: center; align-items: center; font-size: 3.5rem; margin-bottom: 20px;}
.footer_info{text-align: center; font-size: 1.6rem; font-weight: 500; margin-bottom: 40px;}
.footer_copyright{font-size: 1rem; color: #898989; text-align: center;}


.footer_sitemap_wrapper{font-weight: 700; padding-bottom: 50px; }
.footer_sitemap{display: flex; gap: 70px; justify-content: center;}
.footer_sitemap a:hover{opacity: 0.7;}
.footer_sitemap i{margin-right: 5px;}
.footer_sitemap01{display: flex; flex-direction: column; row-gap: 25px; font-size: 1.4rem;}
.footer_sitemap01 li{position: relative;}
.footer_sitemap01 li::before{
  content: "";
  position: absolute;
  top: 5px;
  left: -18px;
  width: 7px;
  height: 7px;
  border-right: 2px solid var(--dark-color);
  border-bottom: 2px solid var(--dark-color);
  transform: rotate(-45deg);}
.footer_sitemap02{display: flex; flex-direction: column; font-size: 1.2rem; font-weight: 400; row-gap: 8px; margin-top: 15px;}
.footer_sitemap02 li{margin-left: 20px; position: relative; font-weight: 700;}
.footer_sitemap02 li:before{content: ""; clip-path: none; width: initial; height: initial; background-color: #333; border: none; padding: 1px; border-radius: 100%; position: absolute; top: 8px; left: -10px;}


/* ページ下部 固定メニュー */
.btm_menu { position: fixed; bottom: -60px; width: 100%; border-top: 1px solid var(--main-color); z-index: 99; }
.btm_menu li { float: left; width: calc(100%/4); border-right: 1px solid #fff;}
.btm_menu li:last-child { border-right: none; }
.btm_menu li a { display: block; height: 50px; text-align: center; font-size: 1.6rem; padding: 10px 5px 0px; background-color: var(--main-color); color: #fff; transition: .5s; font-weight: 700;}
.btm_menu li a i{ font-size: 2.5rem; display: block;}
.btm_menu li a:hover { background-color: #fff; color: var(--main-color); transition: .5s;}
.btm_menu ul:after { content: ''; clear: both; display: block; }

/* ページ下部 高齢者講習 */
.btm_menu_senior{bottom: -75px; border-top: 1px solid #F68879;}
.btm_menu_senior li{ width: calc(100%/2);}
.btm_menu_senior li a{height: 55px; background-color: #F68879; padding: 20px 5px 0; font-size: 2.2rem;}
.btm_menu_senior li a i{ display: initial; font-size: 2rem; margin-right: 5px;}

/* ページ下部 合宿 */
.btm_menu_camp li{width: calc(100% / 2);}



/* h1見出し*/
.h1_wrapper{width: 100%; color: var(--dark-color); background-color: var(--light-color); padding: 15px 0; margin: 0 auto 30px; position: relative; text-align: center;}
.h1_wrapper .h1_inner{font-weight: 700; font-size: 3rem;}
.h1_wrapper h1{font-weight: 700; font-size: 3rem;}


/* ぱんくず */
.breadcrumbs_wrapper{font-size: 1rem;}
.breadcrumbs{display: inline-block;}   
.breadcrumbs > ol{font-size: 1rem;} 
.breadcrumbs > ol > li{ display: inline-block; position: relative; color: #fff; }
.breadcrumbs > ol > li:before,
.breadcrumbs > ol > li:before{ content: "/"; display: block; position: absolute; top: -5px; left: 7px;  font-size: 1.9rem; }
.breadcrumbs > ol > li:first-child:before{ content: ""; font-size: 1.4rem;}
.breadcrumbs > ol > li a{ font-size: 1rem; margin: 0 0 0 30px; }
.breadcrumbs > ol > li:first-child a{ margin: 0 0 0 0; }
.breadcrumbs > ol > li a:hover{ opacity: 0.6; }
.breadcrumbs ol span a{margin: 0 8px 0 8px;}
.breadcrumbs ol span:first-child a{margin: 0 8px 0 0;}


/* swiper */
.swiper-button-prev, .swiper-rtl .swiper-button-next{display: none;}
.swiper-button-next, .swiper-button-prev{display: none;}
.swiper-pagination-bullet{display: none;}

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.wrapper{ position: relative; padding-top: 60px;}
.contents{background-color: #fff;}
img{max-width: 100%; height: auto; }
.anchor{}

.mb20{margin-bottom: 20px;}


.anchor02{ padding-top: 50px; margin-top: -50px; display: block; position: relative; z-index: -999}



/* lnavi */
.lnavi_wrapper{background-color: #eee; padding: 15px; width: 90%; margin: 0 auto 30px; border-radius: 10px; max-width: 800px;}
.lnavi ul{display: flex; gap: 30px; row-gap: 10px; flex-wrap: wrap; justify-content: center;}
.lnavi ul li{font-size: 1.5rem; font-weight: 700; position: relative;}
.lnavi ul li::after{content: "/"; right: -20px; position: absolute;}
.lnavi ul li:last-child::after{display: none;}



/* トップページ */
.top_wrapper{padding-top: 0;}
.top_first_wrapper{width: 100%;  position: relative; margin: 0 0 0 auto;}
.top_main_bnr{background-color: #fff; padding: 20px 0;}
.top_main_bnr_inner{max-width: 90%; margin: 0 auto;}
.top_main_bnr_inner ul{display: flex; gap: 20px; justify-content: center;}
.slick-slide{margin: 0 10px;}
.slick-slide img{width: 100%; height: auto;}

.top_access_wrapper{background-color: var(--light-color); padding: 15px 0 50px; position: relative;}
.top_access_sec{width: 90%; margin: 0 auto;}
.top_access_head{font-size: 2.5rem; color: var(--dark-color); text-align: center; margin-bottom: 15px; font-weight: 700;}
.top_access_head i{margin-right: 5px; vertical-align: -1px;}
.top_access_list{display: flex; flex-direction: column; gap: 10px; margin-bottom: 15px;}
.top_access_list_item{padding: 5px 15px 5px 50px; background-color: #fff; font-size: 2rem; position: relative; font-weight: 700;}
.top_access_list_item i{color: #fff; width: 20px; height: 20px; text-align: center; font-size: 1rem; line-height: 2.1rem; border-radius: 100%; background-color: var(--bright-color); position: absolute; left: 10px; top: 50%; transform: translateY(-50%);}
.top_access_list_txt{transform: translateY(-4px);}
.top_access_station{font-size: 2.2rem;}
.top_access_number{font-size: 3rem; margin: 0 3px; display: inline-block; transform: translateY(2px); color: var(--main-color);}
.top_access_txt{font-size: 2rem; text-align: center; font-weight: 700;}
.top_access_btn{position: absolute; bottom: -30px; left: 50%; transform: translateX(-50%); width: 430px; max-width: 90%; text-align: center;}
.top_access_btn a{display: block; color: var(--dark-color); background-color: #fff; border: 1px solid var(--dark-color); padding: 15px 0; border-radius: 8px; position: relative; font-weight: 700;}
.top_access_btn a:hover{color: #fff; background-color: var(--dark-color);}
.top_access_btn i{position: absolute; right: 10px; top: 50%; transform: translateY(-50%);}

.top_post_wrapper{padding: 80px 0 50px; background-color: #fff;}

.top_post_sec{width: 90%; max-width: 1500px; display: flex; flex-direction: column; gap: 30px; margin: 0 auto; justify-content: center;}
.top_post_item{width: 100%;}
.top_post_head{font-size: 2.5rem; color: var(--main-color); margin-bottom: 20px; position: relative; font-weight: 700;}
.top_post_news .top_post_head{display: flex; justify-content: space-between;}
.top_post_head i{color: #fff; background-color: var(--main-color); margin-right: 10px; border-radius: 100%; padding: 10px;}
.top_news_list{margin-bottom: 15px; margin: 0 auto 15px;}
.top_news_list li{font-weight: 400;  padding: 10px 0; border-bottom: 1px solid #ccc; display: flex; gap: 20px;}
.top_news_date{color: #999; font-size: 1.5rem;}
.top_news_tit{font-size: 1.5rem; font-weight: 700;}
.top_post_btn{width: 140px; text-align: center; margin: 0 0 0 auto;}
.top_post_btn a{display: block; padding: 10px; color: var(--dark-color); background-color: var(--light-color); border: 1px solid var(--dark-color); border-radius: 5px; font-size: 1.4rem; font-weight: 700;}
.top_post_btn a:hover{opacity: 0.5;}


.top_reason_wrapper{background-color: #fff; padding-bottom: 80px;}
/*
.top_contents_head{width: 100%; text-align: center; color: #fff; background-color: var(--main-color); font-size: 2.5rem; margin-bottom: 30px; padding: 15px 0; font-weight: 700;}
.top_contents_head i{margin-right: 5px;}
*/
.top_contents_head{font-size: 2.5rem; color: var(--main-color); position: relative; font-weight: 700; width: 90%; margin: 0 auto 20px; text-align: center;}
.top_contents_head i{color: #fff; background-color: var(--main-color); margin-right: 10px; border-radius: 100%; padding: 10px;}

.top_reason_head{margin-bottom: 50px; border-top: 1px solid var(--main-color); border-bottom: 1px solid var(--main-color); text-align: center; padding: 15px 0;}
.top_reason_sec{width: 90%; margin: 0 auto; }
.top_reason_list{display: flex; flex-direction: column; gap: 40px;}
.top_reason_item_tit{font-size: clamp(2rem, 5vw, 2.8rem); color: var(--main-color); margin-bottom: 10px; font-weight: 700; text-align: center; font-family: "Zen Maru Gothic", serif;}
.top_reason_item_tit .top_reason_item_tit_head{width: 75px; color: #fff; border-radius: 28px; padding: 3px 10px 5px; margin-right: 5px; font-size: 1.4rem; display: block; text-align: center; margin: 0 auto 5px; font-family: "Noto Sans JP", serif;}
.top_reason_item_tit_head01{background-color: #9187F3;}
.top_reason_item_tit_head02{background-color: #DF9725;}
.top_reason_item_tit_head03{background-color: #ed809f;}
.top_reason_item01 .top_reason_item_tit{color: #9187F3;}
.top_reason_item02 .top_reason_item_tit{color: #DF9725;}
.top_reason_item03 .top_reason_item_tit{color: #ed809f;}
.top_reason_item01 .top_reason_btn a{color: #9187F3; border: 1px solid #9187F3;}
.top_reason_item01 .top_reason_btn a:hover{background-color: #9187F3;}
.top_reason_item02 .top_reason_btn a{color: #DF9725; border: 1px solid #DF9725;}
.top_reason_item02 .top_reason_btn a:hover{background-color: #DF9725;}
.top_reason_item03 .top_reason_btn a{color: #ed809f; border: 1px solid #ed809f;}
.top_reason_item03 .top_reason_btn a:hover{background-color: #ed809f;}

.top_reason_head_mark{background-color: #FAF78C;}
.top_reason_head_mark2{background-color: #FAF78C;}
.top_reason_item_img{border-radius: 10px; margin-bottom: 10px;}
.top_reason_item_img img{width: 100%; height: auto;}
.top_reason_item p{font-size: 1.7rem; margin-bottom: 20px; line-height: 3rem;}
.top_reason_btn{width: 90%; max-width: 360px; text-align: center; margin: 0 auto;}
.top_reason_btn a{padding: 15px 0; background-color: #fff; color: var(--dark-color); border: 1px solid var(--dark-color); border-radius: 8px; position: relative; font-weight: 700; display: block;}
.top_reason_btn a:hover{background-color: var(--dark-color); color: #fff;}
.top_reason_btn i{position: absolute; right: 10px; top: 50%; transform: translateY(-50%);}

/* 別案 */
.top_reason_test .top_reason_sec{width: 100%;}
.top_reason_test .reason_item_head02{color: #28CF67;}


.top_price_wrapper{background-color: #fff; padding-bottom: 50px;}
.top_price_sec{width: 90%; margin: 0 auto;}
.top_price_caution{text-align: center; font-size: 1.5rem;}
.top_price_caution p{margin-bottom: 10px;}
.top_price_caution p:last-child{margin-bottom: 0;}
.top_price_tab_list{ max-width: 1000px; margin: 0 auto 30px;}
.top_price_tab_list input{display: none;}
.top_price_tab_list .top_price_tab_list_items{display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 20px;}
.top_price_tab_list label{width: calc((100% - 24px)/4); color: #fff; background-color: #ccc; padding: 10px 0;  display: inline-block; cursor: pointer; text-align: center; border-radius: 10px;}
.top_price_tab_list02 label{width: calc((100% - 16px)/3); font-weight: 700;}
.top_price_tab_list .price_tab_item04{margin-right: 0;}
.top_price_tab_list02 .price_tab_item03{margin-right: 0;}

/* ▼選択状態のタブ(＝チェックが入っているラジオボタンの隣にあるタブの装飾) */
.top_price_tab_list input:checked + label {
  color: #fff; 
  background-color: var(--dark-color);
}

/* ▼タブ機能を制御するラジオボタン(非表示にする) */
.gallery_tab_list input { display: none; }

 /* ▼タブの中身(共通装飾＋非選択状態の装飾) */
 .tabcontent {
  display: none;             /* 標準では非表示にする */
}


.top_price_info{color: #fff; background-color: var(--dark-color); text-align: center; font-size: 2.3rem; font-weight: 700; padding: 30px 5% 20px;  margin-bottom: 30px; border-radius: 10px;}
.top_price_info_tit{margin-bottom: 15px;}
.top_price_inner{ display: flex; flex-direction: column; gap: 10px; max-width: 1000px; margin: 0 auto 30px; font-size: 2rem;}
.top_price_inner_item{display: block; padding-bottom: 10px; border-bottom: 1px solid #ccc; display: flex; justify-content: center; align-items: baseline;}
.top_price_inner_item .small{font-size: 1.3rem; text-align: right;}
.top_price_inner_item:last-child{margin-bottom: 0; }
.top_price_inner_item01{display: flex; flex-direction: column; margin-right: 20px;}
.top_price_inner .top_price_zeinuki{display: block; font-size: 1.5rem;}
.top_price_karimen{font-size: 1.6rem; margin-bottom: 20px;}
.top_price_btn{width: 90%; max-width: 360px; text-align: center; margin: 0 auto;}
.top_price_btn a{padding: 15px 0; background-color: #fff; color: var(--main-color); border: 1px solid var(--main-color); border-radius: 8px; position: relative; display: block; font-size: 1.8rem;}
.top_price_btn a:hover{background-color: var(--main-color); color: #fff;}
.top_price_btn i{position: absolute; right: 10px; top: 50%; transform: translateY(-50%); }

.top_plan_wrapper{background-color: #fff; padding-bottom: 80px;}
.top_plan_sec{}
.top_plan_inner{display: flex; flex-direction: column; gap: 30px; row-gap: 60px; width: 90%; margin: 0 auto 30px; max-width: 1200px; padding-top: 40px; flex-wrap: wrap;}
.top_plan_item{ display: flex; flex-direction: column; position: relative; padding: 50px 20px 20px; border-radius: 10px; position: relative; text-align: center;}
.top_plan_item p{display: inline-block; }
a.top_plan_item:hover{opacity: 0.7;}
.top_plan_item:last-child{margin-bottom: 0;}
.top_plan_item_head{font-size: 2.6rem; font-family: "Zen Maru Gothic", serif; font-weight: 700; text-align: center; margin-bottom: 15px;}
.top_plan_item p{font-size: 1.7rem; margin-bottom: 0; line-height: 3rem;}
.top_plan_btn{width: 90%; max-width: 360px; text-align: center; margin: 0 auto; margin-top: auto;}
.top_plan_btn a{padding: 15px 0; background-color: #fff; color: var(--dark-color); border: 1px solid var(--dark-color); border-radius: 8px; position: relative; display: block; font-size: 1.6rem; font-weight: 700;}
.top_plan_btn a:hover{background-color: var(--dark-color); color: #fff;}
.top_plan_btn .icon-arrow_right01{position: absolute; right: 10px; top: 50%; transform: translateY(-50%);}
.top_plan_btn .fa-file-pdf{margin-right: 5px;}

.top_plan_icon{position: absolute; left: 50%; transform: translateX(-50%); top: -40px; color: #fff; width: 80px; height: 80px; border-radius: 100%; text-align: center; font-size: 4rem; line-height: 2;}
.top_plan_kakudai{background-color: #FAF7DD;}
.top_plan_schedule{background-color: #DCF0DC;}
.top_plan_option{background-color: #FCE5D3;}
.top_plan_speed{background-color: #FAF7DD;}
.top_plan_kakudai .top_plan_item_head{color: #DCCC1A;}
.top_plan_schedule .top_plan_item_head{color: #159715;}
.top_plan_option .top_plan_item_head{color: #D51919;}
.top_plan_speed .top_plan_item_head{color: #FB8F3C;}

.top_plan_icon01{background-color: #159715;}
.top_plan_icon02{background-color: #DCCC1A;}
.top_plan_icon03{background-color: #5760DD;}
.top_plan_icon04{background-color: #D51919;}
.top_plan_icon05{background-color: #FB8F3C;}



.top_instagram_wrapper{background-color: #fff; padding-bottom: 80px;}
.top_instagram_sec{width: 90%; margin: 0 auto; max-width: 1200px;}

.top_link{display: flex; flex-direction: column; gap: 10px; width: 94%; margin: 0 auto; padding-bottom: 30px;}
.top_link_item a{display: flex; background-color: #f5f5f5; border-radius: 8px;}
.top_link_item a:hover{background-color: var(--dark-color);}
.top_link_item:nth-child(2n) a{flex-direction: row-reverse;}
.top_link_inner{width: 50%; align-self: center; text-align: center; font-weight: 700;}

.top_link_head01{font-family: "Roboto", serif; display: block; color: var(--dark-color);}
.top_link_head02{font-size: 2rem; color: var(--dark-color);}
.top_link_item a:hover .top_link_head01,
.top_link_item a:hover .top_link_head02{color: #fff;}
.top_link_btn{text-align: center; max-width: 90%; margin: 0 auto;}
.top_link_btn a{display: block; color: var(--dark-color); background-color: #fff; font-size: 1.4rem; padding: 10px 0; border-radius: 18px; border: 1px solid var(--dark-color);}
.top_link_img{width: 50%;}
.top_link_img img{height: 100%; object-fit: cover; width: 100%; border-top-right-radius: 8px; border-bottom-right-radius: 8px;}

.top_other{display: flex; flex-direction: column; gap: 20px; margin-bottom: 40px;}
.top_other_btn{width: 100%; text-align: center; font-weight: 700;}
.top_other_btn a{display: block; padding: 20px 0; background-color: var(--dark-color); color: #fff;}
.top_other_btn a:hover{opacity: 0.7;}
.top_other_btn_current a{background-color: var(--student-color); }
.top_other_btn i{font-size: 4rem; position: absolute; left: -50px; bottom: 0;}
.top_otherbtn_txt01{display: block; font-size: 1.2rem;}
.top_otherbtn_txt02{display: inline-block; font-size: 2.5rem; position: relative;}

.top_bottom_bnr{background-color: #CCC; padding: 35px 0;}
.top_bottom_bnr_inner ul{ display: flex; flex-wrap: wrap; gap: 20px; flex-direction: column; align-items: center;}
.top_bottom_bnr_inner li{max-width: 90%; margin: 0 auto;}
.top_bottom_bnr_inner li:hover{opacity: 0.7;}


/* セカンドページ共通 */
.page_wrapper{padding-bottom: 0px;}
.page_sec h2{font-size: 2.5rem; color: var(--main-color); position: relative; font-weight: 700; width: 90%; margin: 0 auto 20px; text-align: center;}
.page_sec h2 i{color: #fff; background-color: var(--main-color); margin-right: 10px; border-radius: 100%; padding: 10px; width: 48px; height: 48px; line-height: 1.1; display: inline-block;}
.page_sec h3{ margin: 0 auto 20px; padding: 10px 0; font-size: 2rem; border-top: 1px solid var(--main-color); border-bottom: 1px solid var(--main-color); text-align: center; margin-bottom: 20px; font-weight: 700;}
.page_sec p{font-size: 1.7rem; line-height: 3.2rem;}
.page_sec strong{font-weight: bold;}
.page_center ul,
.page_center ol{list-style: disc; display: inline-block; text-align: left;}
.page_term{width: 90%; margin: 0 auto; max-width: 1200px; padding-bottom: 50px;}
.page_center{text-align: center; margin: 0 auto;}
.page_center p{display: inline-block; text-align: left;}
.page_center strong{ text-align: left;}

.page_topic figure{max-width: 1000px; margin: 0 auto 20px;}
p.has-small-font-size{line-height: 2.8rem;}
.left-center{text-align: center;}
.left-center p{display: inline-block; text-align: left;}


/* 割引特典ページ */
.detail_txt .waribiki_head{font-size: 2rem; padding: 10px; font-weight: 600;}
.waribiki_price strong{font-size: 2.5rem;}
.detail_txt .waribiki_case{font-size: 1.6rem; margin-bottom: 10px;}
.detail_txt .waribiki_caution{font-weight: 400; line-height: 2.5rem; margin-bottom: 10px;}



/* 送迎バス */
.page_sec p.bus_intorduce{width: 90%; margin: 0 auto 30px; max-width: 1000px; font-size: 2rem; line-height: 3.5rem; font-weight: 700;}
.page_sec .bus_caution{width: 90%; margin: 0 auto 30px; max-width: 1000px; font-size: 1.7rem; line-height: 3rem;}
.busmap_btn{width: 90%; max-width: 360px; text-align: center; margin: 0 auto;}
.busmap_btn a{padding: 15px 0; background-color: #fff; color: var(--dark-color); border: 1px solid var(--dark-color); border-radius: 8px; position: relative; font-weight: 700; display: block;}
.busmap_btn a:hover{background-color: var(--dark-color); color: #fff;}
.bus_choice{font-size: 1.6rem; font-weight: 400; margin-bottom: 30px;}
.bus_accordion{width: 90%; margin: 0 auto 20px; max-width: 1000px; border-radius: 10px;}
.bus_accordion .ark-block-accordion__title{color: #fff; background: none; font-weight: 700; font-size: 2rem; position: relative; padding-left: 20px;}
/*.bus_accordion .ark-block-accordion__title::before{content: "A"; position: absolute; font-family: "Roboto", serif; font-weight: 400; font-size: 3.5rem; color: #fff; left: 20px;}*/
.bus_accordion .ark-block-accordion__body{padding: 10px;}
.bus_accordion_inner{background-color: #fff; padding: 20px;}
.bus_googlemap{margin-bottom: 30px;}
.bus_googlemap iframe{width: 100%;}
.bus_table_head{padding: 10px 0; font-size: 2rem; border-top: 1px solid var(--main-color); border-bottom: 1px solid var(--main-color); text-align: center; margin-bottom: 20px; font-weight: 700;}
.bus_table table{max-width: initial!important; margin: 20px 0;}
.bus_table th,
.bus_table td{padding: 8px; min-width: 100px!important;}
.bus_table thead th{font-size: 1.4rem; font-weight: 700;}
.bus_table tbody td{font-size: 1.4rem;}
.bus_table_caution{font-size: 1.4rem;}

.bus_accordion01{background-color: #46AC9A;}
/*.bus_accordion01 .ark-block-accordion__title::before{content: "A";}*/
.bus_accordion02{background-color: #FCD16B;}
/*.bus_accordion02 .ark-block-accordion__title::before{content: "B";}*/
.bus_accordion03{background-color: #62AEE9;}
/*.bus_accordion03 .ark-block-accordion__title::before{content: "C";}*/
.bus_accordion04{background-color: #E88782;}
/*.bus_accordion04 .ark-block-accordion__title::before{content: "D";}*/
.bus_accordion05{background-color: #6A5F90;}
/*.bus_accordion05 .ark-block-accordion__title::before{content: "E";}*/
.bus_accordion06{background-color: #F59C6F; margin-bottom: 50px;}
/*.bus_accordion06 .ark-block-accordion__title::before{content: "F";}*/
mark{font-style: normal;}

.bus_caution_flex{}
.bus_caution_txt strong{font-weight: 700; font-size: 1.9rem;}
.page_sec .bus_caution_bottom{font-size: 1.5rem;}

.bus_sec h3{max-width: 1000px; margin: 0 auto 20px;}
.bus_term{max-width: 800px; margin: 0 auto;}
.bus_area_flex{width: 90%; max-width: 800px; margin: 0 auto 20px; gap: 20px;}
.bus_area_flex_item{text-align: center;}

.bus_point_inner{text-align: center;}
.bus_point_list{text-align: left; display: inline-block;}
.bus_point_list li{position: relative; font-size: 2.1rem; font-weight: 600; padding-left: 20px; margin-bottom: 5px;}
.bus_point_list li::before{content: ""; padding: 5px; background-color: var(--main-color); border-radius: 100%; position: absolute; left: 0; top: 50%; transform: translateY(-50%);}

.bus_link_btn{display: flex; gap: 15px; justify-content: center; max-width: 94%; margin: 0 auto 20px;}
.bus_link_btn_item{width: 130px; text-align: center;}
.bus_link_btn_item a{display: block; color: #EA6D6D; background-color: #fff; border: 1px solid #EA6D6D; border-radius: 8px; font-size: 2rem; padding: 5px; font-weight: 600;}
.bus_link_btn_item a:hover{color: #fff; background-color: #EA6D6D;}

.bus_accordion_JR{font-weight: 500;}
.bus_accordion_JR strong{font-size: 2rem; position: relative; padding-left: 15px;}
.bus_accordion_JR strong::before{content: ""; padding: 5px; background-color: var(--main-color); border-radius: 100%; position: absolute; left: 0; top: 50%; transform: translateY(-50%);}
.bus_accordion_JR p{font-size: 1.7rem;}



/* 選ばれる理由 */
/*
.reason_sec{width: 90%; margin: 0 auto; max-width: 1200px;}
.reason_detail_item{margin-bottom: 50px;}
.reason_item_flex{display: flex; flex-direction: column-reverse; margin-bottom: 30px;}
.reason_detail_term{margin-bottom: 30px;}
p.reason_detail_head{font-weight: 700; margin-bottom: 20px; font-size: 2rem;}
*/
.h1_reason{margin: 0 auto;}
.reason_topic{text-align: center;  margin: 0 auto;}
.reason_sec .page_center{max-width: 800px;}
.reason_item{margin-bottom: 50px;}
.reason_item .top_reason_item_tit{font-size: clamp(2.2rem, 5vw, 3.5rem); color: #8076DC;}
.reason_item_head{display: flex; gap: 20px; margin-bottom: 20px;}
.reason_item_head01{font-family: "Roboto", serif; font-weight: 700; font-size: 7rem; color: #fff; background-color: #28CF67; text-align: center; border-top-right-radius: 10px; border-bottom-right-radius: 10px; position: relative; min-width: 90px; align-self: center;}
.reason_item_head01 span{font-family: "Noto Sans JP", serif; position: absolute; min-width: 60px; color: #fff; background-color: var(--dark-color); font-weight: 700; font-size: 1.4rem; border-radius: 10px; text-align: center; padding: 1px 5px; top: -10px; left: 50%; transform: translateX(-50%);}
.reason_item_head02{font-weight: 700; font-size: clamp(2.2rem , 6vw , 2.8rem); align-self: center;}
.reason_item_head_color{color: #28CF67;}
.reason_about_head{text-align: center; font-weight: 700; margin-bottom: 15px; font-size: 1.8rem;}
.reason_about_txt{font-size: 1.7rem; width: 90%; margin: 0 auto 30px;}
.reason_about_txt01{ margin: 0 auto 20px;}
.reason_plan_list{display: flex; flex-direction: column; gap: 80px; margin: 40px 0;}
.reason_plan_item{padding: 80px 5% 30px; background-color: #DFF8E8; position: relative;}
.reason_plan_item_head{position: absolute; left: 50%; top: -40px; transform: translateX(-50%); max-width: 90%; width: 420px; padding: 10px; text-align: center; color: #fff; border-radius: 10px; font-size: 2.2rem; font-weight: 700;} 
.reason_plan_item_head{background: rgb(62,141,255); background: linear-gradient(135deg, rgba(62,141,255,1) 40%, rgba(58,134,204,1) 60%);}
.reason_plan_item{background-color: #F0EEFF;}


.reason_plan_item_head span{font-size: 1.8rem; display: block;}
.reason_plan_img{text-align: center; margin-bottom: 30px;}
.reason_plan_recommend{position: relative; background-color: #fff; padding: 45px 20px 20px; border-radius: 10px; margin-bottom: 20px;}
.reason_plan_recommend_head{position: absolute; left: 50%; top: -15px; transform: translateX(-50%); width: 180px; color: #9187f3; font-size: 1.4rem; font-weight: 700; background-color: #fff; border: 1px solid #9187f3; border-radius: 15px; padding: 4px 0; text-align: center;}
.reason_plan_recommend_head span{position: relative; display: block;}
.reason_plan_recommend_head span::after{content: ""; 
width:0;
height:0;
position: absolute;
left: 50%;
bottom: -15px;
transform: translateX(-50%);
border-style:solid;
border-width: 10px 7px 0 7px;
border-color: #9187f3 transparent transparent transparent;}
.plan_recommend_list{display: flex; flex-direction: column; gap: 10px;}
.plan_recommend_list li{ padding: 0 0 15px 30px; position: relative; border-bottom: 1px solid #ccc; font-weight: 700;}
.plan_recommend_list li i{position: absolute; color: #DD6453; top: 5px; left: 5px;}
.reason_plan_item p{font-size: 1.6rem;}
.reason_other{width: 90%; margin: 0 auto 50px; }
.reason_other_img{margin-bottom: 20px; text-align: center;}
.reason_other_head{text-align: center; font-weight: 700; font-size: 1.7rem; margin-bottom: 15px; color: #ed809f;}
.reason_other p{font-size: 1.6rem; margin-bottom: 20px;}
.reason_btn{width: 90%; max-width: 360px; text-align: center; margin: 30px auto 0;}
.reason_btn a{padding: 15px 0; background-color: #fff; color: var(--dark-color); border: 1px solid var(--dark-color); border-radius: 8px; position: relative; font-weight: 700; display: block;}
.reason_btn a:hover{background-color: var(--dark-color); color: #fff;}
.reason_btn i{position: absolute; right: 10px; top: 50%; transform: translateY(-50%);}
.reason_other_item{margin-bottom: 30px;}

.reason_merit_list{display: flex; flex-direction: column; gap: 60px; margin: 60px auto 20px;}
.reason_merit{width: 90%; margin: 0 auto; background-color: #FAF0DF; padding: 60px 20px 40px 20px; position: relative;}
.reason_merit_icon{position: absolute; left: 50%; top: -40px; transform: translateX(-50%);}
.reason_merit_head{text-align: center; font-size: 2.2rem; font-weight: 700; margin-bottom: 15px;}
.reason_merit_head span{color: #fff; background-color: #DF9725; display: inline-block; padding: 3px 30px; min-width: 270px; margin: 5px auto 0;}
.reason_merit p{font-size: 1.6rem; margin-bottom: 10px;}
.reason_merit_img{text-align: center; }
.mb20{margin-bottom: 20px;}

.reason_trust_list{display: flex; flex-direction: column; gap: 80px; margin-bottom: 40px;}
.reason_trust_item_head{font-size: 1.8rem;}
.reason_trust_img{text-align: center; margin-bottom: 20px;}


.questionnaire_img{margin-bottom: 15px;}
.questionnaire_btn{max-width: 170px; width: 100%; text-align: center; margin: 0 auto;}
.questionnaire_btn a{display: block; color: #fff; background-color: var(--dark-color); font-size: 1.4rem; font-weight: 700; padding: 3px; border: 1px solid var(--dark-color); border-radius: 15px;}

.reason_merit_img_flex{display: flex; gap: 20px; flex-direction: column; margin-bottom: 30px;}

.reason_item01 .top_reason_item_tit_head{background-color: #9187F3;}
.reason_item02 .top_reason_item_tit_head{background-color: #159715;}
.reason_item03 .top_reason_item_tit_head{background-color: #DF9725;}
.reason_item02 .top_reason_item_tit{color: #159715;}
.reason_item03 .top_reason_item_tit{color: #DF9725;}

.reason_item03 .reason_plan_item_head{border-radius: 50px; background: #ed809f;}
.reason_item03 .reason_questionnaire_wrapper{background: url(/info/wp-content/uploads/img_blossom_bg01.jpg); background-repeat: no-repeat; background-size: cover; padding: 0; width: 100%; margin-bottom: 20px;}
.reason_item03 .reason_questionnaire_inner{height: 130vw; max-height: 600px; width: 100%; max-width: 500px; margin: 0 auto; position: relative;}
.reason_questionnaire_btn a{color: #ed809f; border: 1px solid #ed809f; border: 1px solid #ed809f;}
.reason_questionnaire_btn a:hover{color: #fff; background-color: #ed809f;}
.reason_summary{width: 90%; margin: 0 auto;}
.reason_summary_head{font-family: "Zen Maru Gothic", serif; font-size: 2rem; font-weight: 700; margin-bottom: 10px; color: #ed809f; text-align: center;}
.reason_summary p{font-size: 1.6rem; margin-bottom: 10px;}
.reason_summary_img{margin-bottom: 10px; text-align: center;}
.reason_summary_message{font-weight: 700; font-family: "Zen Maru Gothic", serif; font-size: clamp(2.2rem , 4vw , 2.6rem); color: #ed809f; text-align: center;}

.reason_trust_questionnaire{}
.reason_trust_questionnaire li{position: absolute; width: 33vw; max-width: 145px;}
.reason_trust_questionnaire li img{width: 100%; height: auto; }
.reason_trust_questionnaire li:first-child{top: 10%; left: 10%; }
.reason_trust_questionnaire li:nth-child(2){top: 11%; left: 58%; }
.reason_trust_questionnaire li:nth-child(3){top: 42%; left: 4%; }
.reason_trust_questionnaire li:nth-child(4){top: 30%; left: 34%; }
.reason_trust_questionnaire li:nth-child(5){top: 43%; left: 65%; }
.questionnaire_people{position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 100%; text-align: center;}
.questionnaire_people img{width: 100%; max-width: 400px;}

.reason_sougei{width: 90%; max-width: 800px; margin: 0 auto 50px; display: flex; flex-direction: column; gap: 30px; flex-wrap: wrap;}
.reason_sougei_item{width: 100%; background-color: #E7F4E7; padding: 30px 20px;}
.reason_sougei_img{margin-bottom: 20px;}



/* 料金 */
.price_navi_btn_wrapper{display: flex; flex-direction: column; gap: 15px; margin-bottom: 30px;}
.price_navi_btn{width: 90%; max-width: 360px; text-align: center; margin: 0 auto;}
.price_navi_btn a{display: block; color: #fff; background-color: var(--dark-color); font-size: 1.7rem; border: 1px solid var(--dark-color); border-radius: 20px; font-weight: 700; padding: 8px;}
.price_navi_btn a:hover{color: var(--dark-color); background-color: #fff;}
.price_navi_btn i{margin-right: 5px;}


.price_topic{padding-bottom: 30px;}
.price_topic figure{max-width: 1000px; margin: 0 auto 20px!important;}
.price_topic figure img{width: 100%; height: auto;}
.price_topic_txt{text-align: left; max-width: 1080px; margin: 0 auto;}
.price_topic_txt ul{max-width: 1080px; margin: 0 auto; display: block; margin: 0 auto;}
.price_topic p{width: 90%; margin: 0 auto;}
.price_basic_price{display: flex; gap: 30px; align-items: center; flex-wrap: wrap; justify-content: center; margin-bottom: 50px;}
.price_basic_price_karimen{text-align: center;}
.price_basic_price_item{display: flex; gap: 15px; flex-direction: column;}
.price_basic_price_item01{min-width: 40px; padding: 5px; background-color: var(--dark-color); color: #fff; border-radius: 5px; font-size: 1.6rem; min-width: 150px; margin: 0 auto; font-weight: 700; text-align: center; align-self: baseline;}
.price_basic_price_item02{font-size: 2.5rem; font-weight: 700;}
.price_basic_price_item02 span{text-align: right; font-size: 1.6rem; font-weight: 400; margin-left: 3px;}

.price_pdf_list{display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; max-width: 1000px; margin: 0 auto;}
.price_pdf_list li{width: 400px; max-width: 90%; text-align: center;}
.price_pdf_list li a{display: block; color: #fff; background-color: var(--dark-color); font-size: 1.7rem; border-radius: 20px; padding: 8px; border: 1px solid var(--dark-color); font-weight: 700;}
.price_pdf_list li a:hover{color: var(--dark-color); background-color: #fff;}
.price_pdf_list li i{margin-right: 5px;}

.condition_table{ margin: 0 auto 50px; max-width: 1000px;}
.condition_table th,
.condition_table td{border: none!important; border-bottom: 1px solid #ccc!important; font-size: 1.5rem;}
.condition_table th{font-weight: 700; width: 25%;}

.price_available{text-align: center;}
.available_list{font-size: 1.6rem; font-weight: 400; margin-bottom: 15px; display: inline-block; text-align: left;}
.available_list li{position: relative; padding-left: 15px; margin-bottom: 2px; }
.available_list li::before{content: ""; padding: 4px; background-color: var(--main-color); position: absolute; border-radius: 100%; left: 0; top: 8px;}
.available_list li ul{margin-top: 5px;}
.available_list li li{font-size: 1.6rem; padding-left: 20px;}
.available_list li li::before{background: none; border: 1px solid #333; padding: 2px; left: 8px; top: 8px;}
p.available_list_caution{font-size: 1.4rem;}

.curriculum_table{margin: 0 auto; max-width: 1000px;}
.curriculum_table th,
.curriculum_table td{font-size: 1.4rem; border: 1px solid #ccc!important;}
.flowchart_img{text-align: center; width: 90%; margin: 0 auto 20px;}

.curriculum_table_kyufu a{text-decoration: underline; color: #00a1e9;}

.price_pay{max-width: 1000px; margin: 0 auto 30px;}
.price_pay figure{margin-bottom: 20px;}
.price_pay p{font-size: 1.5rem;}
p.price_pay_head{font-size: 1.6rem; font-weight: 700; text-align: center; padding: 10px 0; border-top: 1px solid #333; border-bottom: 1px solid #333; margin-bottom: 15px;}

.price_pay h4{font-size: 1.8rem; font-weight: 700; margin-bottom: 10px;}

.price_basic_head{text-align: center; margin-bottom: 20px; font-size: 2rem; font-weight: 700; border-bottom: 1px solid #333; width: 90%; max-width: 500px; margin: 0 auto 20px;}
.price_basic_price:last-child{margin-bottom: 0;}

.price_basic_list{display: flex; flex-direction: column; gap: 40px;}

.prepare_flex{gap: 20px!important; margin-bottom: 30px;}
.prepare_flex_item{width: calc((100% - 20px)/2);}
.prepare_head{font-weight: 700; font-size: 1.7rem;}
.prepare_txt{font-size: 1.6rem; line-height: 3rem;}
.page_sec .prepare_caution{font-size: 1.4rem;}
.page_sec h2 i.icon-bike01{transform: scale(-1, 1); display: inline-block;}

.gassyuku_btn a{color: #4078E9; border: 1px solid #4078E9;}
.gassyuku_btn a:hover{background-color: #4078E9; color: #fff;}

.plan_kashidashi_img{max-width: 450px; margin: 0 auto;}
.plan_prepare{text-align: center;}


/* プラン紹介 */
.page_sec .plan_topic_head{padding-bottom: 30px; font-size: 2.3rem; font-weight: 700; color: #288DCE; text-align: center; line-height: 3.5rem;}
.plan_topic{width: 90%; margin: 0 auto; max-width: 1000px;}
.plan_topic_btn a{pointer-events: none;}

.plan_introduce{display: flex; flex-direction: column; gap: 80px; padding-top: 50px; flex-wrap: wrap; width: 90%; max-width: 1200px; margin: 0 auto 50px;}
.plan_basicprice{background-color: #fff; padding: 10px; border-radius: 10px; font-size: 1.8rem; text-align: center; font-weight: 700; margin-bottom: 10px;}
.plan_basicprice span{width: 70px; color: #fff; border-radius: 15px; text-align: center; padding: 5px; font-size: 1.5rem; display: inline-block; margin-right: 5px;}
.plan_basicprice_stage01{background-color: #288DCE;}
.plan_basicprice_stage02{background-color: #5FB4EA;}

.top_plan_mypace{background-color: #E6E7FA;}
.top_plan_mypace .top_plan_item_head{color: #5760DD;}
.plan_introduce .top_plan_item{padding-bottom: 50px;}
.plan_worry_img{width: 65%; margin: 0 auto; max-width: 300px;}
.plan_worry_btns{display: flex; flex-direction: column; gap: 20px; }
.plan_worry_btn{width: 100%; font-weight: 700;}
.plan_worry_btn a{padding: 15px!important; pointer-events: none;}
.plan_worry_btn .wp-block-buttons>.wp-block-button{width: 100%;}
.plan_introduce .top_plan_item .plan_item_btn{position: absolute; display: block; bottom: -25px; left: 50%; transform: translateX(-50%); width: 90%; max-width: 360px; font-size: 1.6rem; padding: 5px; text-align: center;}
.plan_introduce .top_plan_item .plan_item_btn a{padding: 15px 0; background-color: #fff; color: var(--dark-color); border: 1px solid var(--dark-color); border-radius: 8px; position: relative; font-weight: 700; display: block;}
.plan_introduce .top_plan_item .plan_item_btn a:hover{color: #fff; background-color: var(--dark-color);}
.plan_introduce .top_plan_item .plan_item_btn i{position: absolute; right: 10px; top: 50%; transform: translateY(-50%);}

.plan_summary{margin-bottom: 50px;}

/* プラン詳細 */
.page_sec .plan_detail_about_head{font-size: 2.5rem; font-weight: 700; margin-bottom: 20px; line-height: 3.5rem;}
.plan_detail_people{text-align: center; max-width: 300px; width: 65%; margin: 0 auto;}
.plan_detail_merit_btns{display: flex; flex-direction: column; gap: 15px; margin-bottom: 20px;}
.plan_detail_merit_btn{font-size: 1.8rem; font-weight: 700;}
.plan_detail_merit_btn a{pointer-events: none;}

.plan_detail_price{font-size: 1.8rem; font-weight: 700;}
.plan_detail_price a{pointer-events: none;}

.plan_detail_topic_flex{max-width: 800px; margin: 0 auto; gap: 0!important;}
.plan_detail_topic_flex_img{max-width: 185px; margin: 0 auto!important;}

/* 安心サポート */
.anshin_inner{max-width: 600px; margin: 0 auto 40px; font-family: "Zen Maru Gothic", serif;}
.anshin_inner h3{color: #D51919; font-size: 2.5rem; border: none; padding: 0;}
.anshin_inner h3 i{color: #fff; background-color: #D51919; margin-right: 10px; border-radius: 100%; text-align: center; padding: 8px;}
.anshin_item{text-align: center; font-weight: 600; margin-bottom: 15px;}
.anshin_item_head{text-align: left; display: inline-block;}
.anshin_item_head .anshin_name{color: #D51919; font-size: 2rem; position: relative;}
.anshin_item_head .anshin_name::before{content: ""; padding: 4px; background-color: #D51919; border-radius: 100%; position: absolute; left: -15px; top: 12px;}
.anshin_item_head .anshin_price{background-color: #F9DDDD; font-size: 2rem; padding: 2px 8px; margin-left: 10px;}
.anshin_item_head .anshin_price .anshin_tax{font-size: 1.5rem;}
.anshin_item .anshin_item_detail{font-size: 1.8rem;}
.anshin_inner p.anshin_caution{color: #333; font-size: 1.4rem; line-height: 2.5rem; font-weight: 400; text-align: center;}





/* キャンペーン情報 */
.campaign_wrapper{padding-bottom: 50px;}
.campaign_sec{width: 90%; margin: 0 auto;}
.campaign_list{display: flex; flex-wrap: wrap; gap: 20px; row-gap: 30px;}
.campaign_item{width: calc((100% - 20px)/2);}
.campaign_item:hover{opacity: 0.7;}
.campaign_thumbnail{position: relative; padding-top: 100%; margin-bottom: 5px;}
.campaign_thumbnail img{width: 100%; height: 100%; position: absolute; object-fit: cover; left: 0; top: 0;}
.campaign_date{font-weight: 500; font-size: 1.2rem; color: #28CF67;}
.campaign_tit{font-size: 1.6rem; font-weight: 700;}
.campaign_inner strong{font-weight: 600;}

.campaign_inner table{font-size: 1.4rem;}

.wp-pagenavi{font-family: "Roboto", serif; font-weight: 700; display: flex; gap: 10px; justify-content: center; margin-top: 50px; display: flex; gap: 10px; text-align: center; line-height: 2; justify-content: center; }
.wp-pagenavi a{width: 38px; height: 38px; font-size: 1.7rem; line-height: 2; display: inline-block; color: var(--dark-color); border: 1px solid var(--dark-color); text-align: center; border-radius: 100%;}
.wp-pagenavi a:hover{color: #fff; background-color: var(--dark-color);}
.wp-pagenavi span{font-size: 1.7rem; line-height: 2; color: #fff; background-color: var(--dark-color); display: inline-block; width: 40px; height: 40px; border: 1px solid var(--dark-color); border-radius: 100%;}

/* キャンペーン情報詳細ページ */
.detail_inner{padding-bottom: 10px; }
.detail_info{margin-bottom: 5px;}
.detail_date{font-family: "Roboto", serif; font-weight: 500; color: var(--bright-color); font-size: 1.2rem;}
.detail_tit{padding: 10px 0; font-size: 2rem; border-top: 1px solid var(--main-color); border-bottom: 1px solid var(--main-color); text-align: left; margin-bottom: 20px; font-weight: 700;}
.detail_txt h2{width: 100%; text-align: left; color: #fff; background-color: var(--main-color); font-size: 2rem; margin-bottom: 30px; padding: 10px; font-weight: 700;}
.detail_txt h3{padding-bottom: 5px; text-align: left; font-size: 1.8rem; border-bottom: 1px solid var(--main-color); margin-bottom: 15px; font-weight: 700;}
.detail_txt p{font-weight: 400; font-size: 1.6rem; margin-bottom: 20px; line-height: 3rem;}
.detail_txt ul,
.detail_txt ol{font-size: 1.6rem; margin: 0 0 20px 20px; list-style: circle;}
.detail_txt figure{margin-bottom: 5px;}

.detail_related{margin-top: 50px;}
.detail_related_head{padding: 10px 0; font-size: 2rem; border-top: 1px solid var(--main-color); border-bottom: 1px solid var(--main-color); text-align: center; margin-bottom: 20px; font-weight: 700;}

/* お知らせ */
.news_wrapper{padding-bottom: 50px;}
.news_sec{width: 90%; max-width: 1000px; margin: 0 auto;}
.news_category{margin-bottom: 30px;}
.news_category_list{display: flex; gap: 20px; row-gap: 10px; flex-wrap: wrap;}
.news_category_list li{font-size: 1.4rem; font-weight: 700; text-align: center; width: calc((100% - 20px)/2);}
.news_category_list li a{display: block; color: var(--dark-color); background-color: #fff; border: 1px solid var(--dark-color); border-radius: 8px; padding: 8px;}
.news_category_list li a:hover{color: #fff; background-color: var(--dark-color);}


.news_list{display: flex; flex-direction: column;}
.news_item{display: block; padding: 10px 0; margin-bottom: 15px; border-bottom: 1px solid #ccc;}
.news_item_info{display: flex; flex-direction: row-reverse; gap: 8px; align-items: center; margin-bottom: 10px; justify-content: left;}
.news_item_cat{ text-align: center;}
.news_item_cat a{display: block; font-size: 1.2rem; font-weight: 500; color: var(--main-color);}
.news_item_date{font-weight: 500; font-size: 1.2rem; color: var(--main-color); border-right: 1px solid #ccc; padding-right: 8px;}
.news_tit{font-weight: 700; font-size: 1.5rem;}


/*お知らせ詳細*/
.bottom_category{margin-top: 50px;}
.bottom_category_head{padding: 10px 0; font-size: 2rem; border-top: 1px solid var(--main-color); border-bottom: 1px solid var(--main-color); text-align: center; margin-bottom: 20px; font-weight: 700;}
.bottom_category_list{display: flex; flex-direction: column;}
.bottom_category_list li{padding: 10px 5px 10px 15px; border-bottom: 1px solid #ccc; font-weight: 700; font-size: 1.5rem; position: relative;}
.bottom_category_list li::before{content: ""; padding: 2px; position: absolute; background-color: #333; left: 3px; top: 19px; border-radius: 100%;}


/* スクール紹介 */
.school_point_flex{display: flex; flex-direction: column; gap: 30px;}
.school_point_item{width: 100%;}
.school_point_head{display: flex; align-items: center; font-size: 1.4rem; margin-bottom: 15px;}
.school_point_head01{background-color: #149214; color: #fff; font-weight: 400; border-top-left-radius: 10px; border-bottom-left-radius: 10px; padding: 12px;}
.school_point_head02{font-size: 1.8rem; font-weight: 700; background-color: #E7F4E7; padding: 10px 15px; border-top-right-radius: 10px; border-bottom-right-radius: 10px; flex-grow: 1;}
.school_point_item figure{text-align: center;}
.school_point_item img{margin-bottom: 5px;}
.school_point_item p{font-size: 1.7rem; line-height: 3rem;}
.school_car_head{font-size: 1.8rem; font-weight: 700; background-color: #E7F4E7; padding: 10px 15px; border-radius: 10px; margin-bottom: 15px;}

.page_term .n2-section-smartslider{margin-bottom: 20px;}

.school_equipment_list{display: flex; flex-wrap: wrap; gap: 20px;}
.school_equipment_list li{width: calc((100% - 20px)/2);}
.school_equipment_img{margin-bottom: 5px;}
.school_equipment_name{font-size: 1.5rem; font-weight: 400;}

.school_course_main{margin-bottom: 20px;}
.school_course img{margin-bottom: 5px;}
.school_course p{font-size: 1.5rem; font-weight: 400;}
.school_course_flex{display: flex; gap: 20px; flex-wrap: wrap;}
/*
.school_course_flex_item{width: calc((100% - 20px)/2);}
.school_course_flex_item:first-child{width: 100%;}
*/
.school_course_flex_item p{font-size: 1.5rem; font-weight: 400;}
.school_course_flex_item a:hover{opacity: 0.7;}

.school_staff_list{display: flex; gap: 25px; flex-wrap: wrap;}
.school_staff_list li{width: calc((100% - 50px)/3);}
.school_staff_img{margin-bottom: 5px;}
.school_staff_position{font-size: 1.3rem; font-weight: 400; text-align: center;}
.school_staff_name{font-size: 1.6rem; font-weight: 400; text-align: center;}

.staff_caution{text-align: center; margin-bottom: 30px; font-size: 1.6rem;}
.no-photo{margin-top: 30px; row-gap: 20px;}
.no-photo li{position: relative; }
.no-photo li a{display: block; padding: 3px; border: 1px solid #ccc; border-radius: 5px;}

.no-photo .school_staff_img{margin-bottom: 0;}



/*
.no-photo li::before{content: ""; position: absolute; padding: 2px; background-color: #444; border-radius: 100%; top: 50%; left: 10px; transform: translateX(-50%);}
*/

.recommend_point_wrapper{width: 90%; margin: 0 auto; max-width: 1000px; padding-bottom: 30px;}
.recommend_point_topic{text-align: center; margin-bottom: 30px;}
.recommend_point_detail_inner{margin-bottom: 20px; display: flex; gap: 15px; justify-content: center;}
.recommend_point_detail_inner:nth-child(2){flex-direction: row-reverse;}
.recommend_point_txt{width: 60%; font-size: 1.5rem; line-height: 3rem;}
.recommend_point_bottom{text-align: center;}
.recommend_point_img img{border-radius: 8px;}


/* 卒業までの流れ */
.flow_term p{font-weight: 400; font-size: 1.8rem; line-height: 3rem;}
.flow_topic_txt{margin-bottom: 30px;}
.flow_list{display: flex; flex-direction: column; gap: 40px; align-items: stretch;}
.flow_list_item_head{display: flex; font-size: 1.4rem; margin-bottom: 15px;}
.flow_list_item{margin-bottom: 30px; display: flex;}
.flow_list_item > .wp-block-group__inner-container{display: flex; flex-direction: column;}
.flow_head01{background-color: var(--main-color); font-weight: 400; border-top-left-radius: 10px; border-bottom-left-radius: 10px; padding: 15px; min-width: 60px; position: relative;}
.flow_head01 span{position: absolute; left: 50%; top: 50%; transform: translate(-50% , -50%); background-color: #fff; color: var(--main-color); border-radius: 100%; display: inline-block; width: 30px; height: 30px; text-align: center; font-size: 1.8rem; font-weight: 700; line-height: 1.6;}
.flow_head02{font-size: 1.8rem; font-weight: 700; background-color: var(--light-color); padding: 15px 15px; border-top-right-radius: 10px; border-bottom-right-radius: 10px; flex-grow: 1;}
.flow_txt{font-weight: 400; font-size: 1.8rem; line-height: 3rem; margin-bottom: 20px;}
.flow_list_item .flow_img{margin-top: auto;}

.flow_other{margin-top: 50px;}
.flow_other_flex{gap: 20px!important; margin-bottom: 30px;}
.flow_other_item_head{text-align: center; font-size: 1.8rem; font-weight: 700!important; padding: 10px; background-color: #E7F4E7; border-radius: 10px; margin-bottom: 10px;}
.flow_other_list figure{margin-bottom: 15px!important;}
.flow_other_item p{font-size: 1.6rem;}

/* 卒業生の声 */
.satisfaction_flex{ gap: 15px; max-width: 900px; margin: 0 auto;}
.satisfaction_graph{ text-align: center; margin: 0 auto!important;}
.impressions_list{display: flex; flex-wrap: wrap; flex-direction: column; gap: 30px; margin: 0 auto;}
.impression_item{width: 100%;}
.impression_info{padding: 10px; font-weight: 700; font-size: 1.8rem; margin-bottom: 10px;}
.impression_info_male{background-color: #DDE2F6;}
.impression_info_female{background-color: #F8E9F1;}
.impression_item_about{}
.impression_icon{width: 80px; min-width: 80px;}
.impression_btn{width: 80%; max-width: 360px; text-align: center; margin: 0 auto 15px;}
.impression_btn a{padding: 15px 0; background-color: var(--dark-color); color: #fff; border: 1px solid var(--dark-color); border-radius: 8px; font-weight: 700; display: block;}
.impression_btn a:hover{background-color: #fff; color: var(--dark-color);}
.impression_comment{font-size: 1.6rem; padding: 15px; background-color: #EFFCEF;}
#imageData{display: none!important;}
.impression_term_caution{margin-bottom: 30px;}

.voice_title{font-size: 2rem; font-weight: 700; color: var(--main-color); max-width: 1000px; margin: 0 auto 20px; position: relative; padding-left: 15px;}
.voice_title::before{content: ""; padding: 5px; border-radius: 100%; background-color: var(--main-color); left: 0; top: 10px; position: absolute;}

.voice_archive_list{display: flex; gap: 15px; flex-wrap: wrap; max-width: 1000px; margin: 0 auto 20px;}
.voice_archive_list li{width: calc((100% - 15px)/2); text-align: center;}
.voice_archive_list li a{display: block; font-weight: 700; font-size: 2rem; color: #EA9C30; background-color: #fff; border: 1px solid #EA9C30; padding: 8px; border-radius: 5px;}
.voice_archive_list li a:hover{color: #fff; background-color: #EA9C30;}


/* よくある質問 */
.faq_wrapper{padding-bottom: 50px;}
.faq_list{ width: 90%; margin: 0 auto 50px; font-weight: 700; font-style: normal; max-width: 1000px;}
.faq_list_item{background-color: #fff; border: 2px solid var(--bright-color); width: 100%; padding: 20px 20px 20px 20px; margin-bottom: 20px;}
.faq_question{ display: flex; gap: 40px; cursor: pointer; position: relative; padding-right: 50px; }
.faq_question_txt{font-weight: 700; font-size: clamp(1.6rem, 4vw, 2rem); color: var(--dark-color);}
.faq_question_icon{position: absolute; top: 5px; right: 10px; color: var(--dark-color); font-size: 1.4rem; }
.close .faq_open_btn::after{ display: block; content: "";  position: absolute; width: 2px; height: 20px; top: 50%; left: 50%; transform: translate(-50%, -50%); background-color: #222;}
.close .faq_question_icon{transform: rotate(180deg); }
.faq_answer{background-color: #eee; padding: 15px; margin-top: 10px; display: none; font-size: 1.5rem; font-weight: 500; line-height: 3rem;}
.faq_answer a{color: #0693e3; text-decoration: underline; font-weight: 700;}
.faq_carmodel_table th{padding-right: 10px;}

.faq_guide{margin-bottom: 20px; width: 90%; }


/* 採用情報 */
.recruit_topic{max-width: 1000px;}

.recruit_table{width: 90%; max-width: 1000px; margin: 0 auto; margin-bottom: 50px;}
.recruit_table th,
.recruit_table td{border-style: initial!important; border-color: initial!important;}
.recruit_table th{width: 30%; text-align: left; padding: 15px; font-weight: 700; font-size: 1.7rem; border-bottom: 1px solid #ccc!important;}
.recruit_table td{padding: 15px!important; font-size: 1.7rem; border-bottom: 1px solid #ccc!important;}

.recruit_topic .recruit_topic_table th,
.recruit_topic .recruit_topic_table td{border: none!important; font-size: 1.6rem; display: block; width: 100%;}


/* 入所案内 */
.guide_topic{font-size: 1.7rem; margin-bottom: 20px;}
.guide_flex{display: flex; flex-direction: column; gap: 15px; margin-bottom: 20px;}
.guide_flex_item{width: 100%;}
.guide_flex_head{font-size: 1.7rem; font-weight: 700; padding-bottom: 5px; border-bottom: 1px solid #666; margin-bottom: 5px; text-align: center!important;}
.guide_reception{padding: 20px; background-color: #eee; margin-bottom: 10px;}
.guide_preparation_list{display: flex; flex-direction: column; gap: 30px;}
.guide_pay_flex{display: flex; gap: 15px; justify-content: center; max-width: 90%; margin: 0 auto 30px;}

.guide_preparation_icon{width: 100px!important; text-align: center;}
.guide_sec .guide_preparation_txt p{font-size: 1.7rem;}
.guide_sec .guide_preparation_head strong{font-weight: 700; margin-bottom: 15px; font-size: 2rem; display: block;}

.guide_check{max-width: 900px;}
.guide_check p{font-size: 1.6rem;}
.guide_check ul li{position: relative; padding-left: 15px; font-size: 1.6rem; margin-bottom: 10px;}
.guide_check ul li::before{content: ""; padding: 2px; position: absolute; left: 0; top: 11px; border-radius: 100%; background-color: #333;}

.guide_test_table{font-size: 1.6rem;}

.guide_enter_btn{margin: 0 auto; width: 300px; text-align: center;}
.guide_enter_btn a{display: block; background-color: var(--main-color); color: #fff; padding: 15px 0; border-radius: 8px; border: 1px solid var(--main-color);}
.guide_enter_btn a:hover{color: var(--main-color); background-color: #fff;}


/* 各種講習 */
.kousyu_img_flex{gap: 20px!important; margin-bottom: 20px;}
.kousyu_term{max-width: 800px;}
.kousyu_term p{font-size: 1.6rem;}
.kousyu_info_list{font-size: 1.5rem; margin-bottom: 15px;}
.kousyu_info_list strong{font-weight: 700;}
.kousyu_info_list li{position: relative; padding-left: 12px;}
.kousyu_info_list li::before{content: ""; position: absolute; padding: 2px; border-radius: 100%; background-color: #333; top: 8px; left: 0;}
.kousyu_term h4{font-weight: 700; border-bottom: 1px solid #333; padding-bottom: 5px; margin-bottom: 15px;}
.kousyu_term .curriculum_table{width: 100%;}
.kousyu_term .curriculum_table th{ font-weight: 700;}

/* 企業講習 */
.corporate_copy_img{max-width: 90%; margin: 0 auto;}
p.kousyu_corporate_topic_head{font-size: 2.5rem;}
.kousyuu_corporate_target{display: flex; gap: 20px; flex-wrap: wrap;}
.kousyuu_corporate_target_item{width: calc((100% - 20px)/2); text-align: center; padding: 20px 10px; border-radius: 10px; background-color: #FBFAE4;}
.kousyuu_corporate_target_icon{margin-bottom: 10px;}
.kousyuu_corporate_target_detail{font-size: 1.8rem; font-weight: 700;}

.corporate_plan_tab{justify-content: center;}
.corporate_plan_tab > label{flex: initial; width: 100%; max-width: 360px; border: 1px solid #288DCE; color: #288DCE;}
.corporate_plan_tab > label:hover{background-color: #288DCE; color: #fff;}
.corporate_plan_tab  label:has(:checked){background-color: #288DCE; color: #fff;}
.corporate_plan_tab_inner{background-color: #EEEEEE!important; border-radius: 10px; margin-top: 15px;}
.corporate_plan_head{text-align: center; font-size: 2.5rem; font-weight: 700; color: #288DCE; margin-bottom: 20px;}
.corporate_plan_tab_sec{display: block!important; text-align: center;}
.corporate_plan_tab_sec p{text-align: left; display: inline-block;}
.corporate_plan_tab_sec .workshop_plan_about{font-size: 1.8rem; white-space: nowrap;}
.corporate_plan_detail{margin-bottom: 20px;}

/* 教育訓練給付金制度 */
.kunren_about_txt a{text-decoration: underline; color: #00a1e9;}
.kunren_about_img{max-width: 200px; margin: 0 auto!important;}
.kunren_list{font-size: 1.7rem; line-height: 3rem;}
.kunren_list li{position: relative; padding-left: 10px; margin-bottom: 5px;}
.kunren_list li::before{content: ""; padding: 3px; background-color: #333; border-radius: 100%; position: absolute; left: 0; top: 12px;}
.kunren_list li li{padding-left: 15px; font-size: 1.6rem;}
.kunren_list li li::before{content: ""; background-color: #fff; border: 1px solid #333; padding: 1.5px; top: 13px; left: 5px;}
.kunren_table{font-size: 1.6rem;}

.kunren h4{font-weight: 700; margin-bottom: 5px;}



/* 高齢者講習 */
.other_detail_flex{max-width: 1200px; width: 90%; margin: 0 auto 30px; display: flex; flex-direction: column-reverse; gap: 20px;}
.application_flex{display: flex; flex-direction: column; gap: 20px;}
.other_detail_pay_topic{margin-bottom: 15px;}
.other_detail_pay_topic p{margin-bottom: 10px;}

.workshop_plan{position: relative; background-color: #fff; border-radius: 10px; padding: 35px 15px; margin-top: 40px;}
.workshop_plan_time{position: absolute; left: 50%; transform: translateX(-50%); top: -18px; color: #fff; background-color: #288DCE; border-radius: 20px; font-weight: 700; width: 170px; text-align: center; padding: 5px 0;}
.workshop_plan_time i{margin-right: 5px;}
.workshop_plan_about{font-size: 2rem; font-weight: 700; margin-bottom: 10px;}

.workshop_plan_about i{color: #288DCE; margin-right: 10px;}
.workshop_plan_about span{color: #288DCE; background-color: #fff; border: 1px solid #288DCE; padding: 3px 8px; width: 80px; margin-left: 15px; font-size: 1.4rem; border-radius: 15px;}
.workshop_plan_price{position: absolute; left: 50%; transform: translateX(-50%); bottom: -20px; padding: 5px 0; color: #fff; background-color: #288DCE; border-radius: 20px; font-size: 2rem; font-weight: 700; text-align: center; width: 280px;}
.workshop_plan_price i{font-size: 1.6rem; margin-right: 5px;}
.workshop_plan_caution{font-size: 1.4rem;}
.workshop_unitprice{padding: 20px 15px;}
.workshop_unitprice .workshop_plan_about span{color: #fff; background-color: #288DCE;}
.workshop_unitprice .workshop_plan_about span i{margin-right: 5px; color: #fff;}

.senior_training_flex_wrapper{text-align: center;}

.senior_tab_item01_tit01{padding: 5px; font-size: 2rem;}
.senior_tab_item01_tit_red{background-color: #F68879;}
.senior_tab_item01_tit_yellow{background-color: #FFF584;}
.senior_tab_item01_tit_green{background-color: #B6DA94;}

.senior_tab_item01_detail01{text-align: left; }
.senior_tab_item01_price{display: block; margin-top: 5px; font-weight: initial!important;}

.senior_training_flex_wrapper{max-width: 1000px; margin: 0 auto 20px; width: 90%;}
.senior_flow_btn{text-align: center; width: 300px; max-width: 90%; margin: 0 auto 30px;}
.senior_flow_btn a{display: block; color: #fff; background-color: var(--student-color); border: 1px solid var(--student-color); border-radius: 5px; font-size: 1.8rem; font-weight: 700; padding: 10px;}
.senior_flow_btn a:hover{color: var(--student-color); background-color: #fff;}

.flow_hagaki p{font-size: 1.8rem;}
.hagaki_btn_flex{display: flex; gap: 30px;}
.hagaki_btn{width: calc((100% - 30px)/2); text-align: center;}
.hagaki_btn a{display: block; color: #fff; background-color: #7093D9; padding: 15px;}
.hagaki_btn a:hover{opacity: 0.7;}


/* お問い合わせ */
.contact_sec{width: 90%; max-width: 1200px; margin: 0 auto;}
.contact_file input{margin-bottom: 15px;}
.policy_wrapper{background-color: #fff;}
.policy_sec{max-width: 1100px; margin: 0 auto; padding: 50px 0 0; width: 90%;}
.policy_sec h3{font-family: zen-old-mincho, sans-serif; font-weight: 700; font-size: 3.5rem; color: #ccc;}
.contents .policy_sec h3{margin-bottom: 15px;}
.policy_txt{margin-bottom: 40px;}
.policy_txt p{ font-weight: 300; line-height: 3.5rem;}

.contact_thanks {
  max-width: 1275px;
  margin: 0 auto;
  padding: 50px 0;
  line-height: 3.5rem;
}

/* フォーム */
.contact_form_inner{ width: 90%; max-width: 1000px; margin: 0 auto 50px;}
.contact_item{display: flex; padding: 20px 20px; border-bottom: 1px solid #ccc; align-items: center;}
.contact_tit{width: 35%;  font-weight: 700; position: relative; margin-left: 60px;}
.contact_tit span{position: absolute;  background-color: #FFE7E7; color: #DE4B4B; margin-right: 15px; border: 1px solid #DE4B4B; padding: 0 8px; left: -60px; top: -2px; border-radius: 24px; font-size: 1.2rem;}
.contact_txt,
.contact_adress,
.contact_check,
.contact_txtarea{width: 65%;}
.contact_txt input,
.contact_txt select{font-size: 1.6rem; background: #f7f7f7; height: 35px; padding: 8px; border: 1px solid #ccc; width: 80%;}
.contact_txtarea textarea{font-size: 1.6rem; padding: 8px; background: #f7f7f7; border: 1px solid #ccc; width: 80%;}
.contact_adress_sub p{padding-bottom: 10px;}
.contact_adress input{background: #f7f7f7; border: 1px solid #ccc; height: 35px; margin-left: 15px; font-size: 1.6rem; }
.contact_submit{border-bottom: none;}
.contact_submit_btn{text-align: center; margin-top: 20px;}
.contact_submit_btn input{ font-weight: 700; background-color: #fff; color: var(--dark-color); border-radius: 10px; font-size: 1.6rem; letter-spacing: 1px; padding: 10px 15px; cursor: pointer; border: 2px solid var(--main-color); width: 100%; max-width: 360px;}
.contact_name p{display: flex; gap: 15px;}

.contact_radio input[type="radio"]{width: initial; height: initial; box-sizing: border-box; padding: 0px; vertical-align: baseline; font-size: 1.6rem;}
.contact_select select{padding: 8px; font-size: 1.6rem; height: 50px;}
.contact_file input[type="file"]{font-size: 1.5rem; margin-bottom: 5px;}
.contact_file_caution{font-size: 1.5rem;}

input[type="checkbox"]{float: left; margin: 0 5px 0 0; transform: translateY(9px);}
.contact_check .checkbox{display: flex; flex-direction: column; gap: 5px;}
.contact_check .checkbox .wpcf7-list-item{margin: 0;}

.contact_radio .wpcf7-list-item{margin: 0;}
.contact_radio .wpcf7-list-item label{margin-right: 30px;}

.contact_submit .contact_tit{width: 30%;}
.wpcf7-spinner{display: block;}

.form_sec{max-width: 1000px; margin: 0 auto; padding-bottom: 80px;}
.form_tit{position: relative; max-width: 1000px; margin: 0 auto 100px;}
.form_tit01{ position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
  font-size: 1.2rem;
  width: 140px;
  padding: 4px 0;
  border-radius: 18px;
  background-color: #5083CF;}

.form_tit02{font-size: 4rem;
  font-weight: 500;
  display: block;
  text-align: center;
  padding: 30px 0;
  border-bottom: 2px solid #333;
  border-top: 2px solid #5083CF;}


.policy_link{text-decoration: underline;}
.wpcf7-spinner{position: absolute!important;}

.policy_box{ height: 250px; overflow: scroll; font-size: 1.4rem; border: 1px solid #ccc; padding: 20px; margin-bottom: 10px; display: none;}
.policy_box .policy_head{font-weight: 700; margin-bottom: 20px;}
.policy_box p{font-size: 1.5rem; margin-bottom: 10px;}

.page_sec .wpcf7-list-item{margin: 0;}

#admission-day{display: none;}


/* 個人情報保護方針 */
.policy_inner{width: 90%; max-width: 1000px; margin: 0 auto 50px;}


/* お友達紹介フォーム */
.contact_item_bottom{border-bottom: 0; margin-bottom: 30px;}


/* 個人情報保護方針 */
.policy_term p{font-size: 1.7rem; line-height: 3rem; margin-bottom: 30px;}

/* 在校生専用 */
/*
.current_navi_list{display: flex; flex-wrap: wrap; gap: 20px; width: 90%; max-width: 800px; margin: 0 auto 30px;}
.current_navi_list li{width: calc((100% - 20px)/2); text-align: center;}
.current_navi_list li a{display: block; color: #fff; background-color: var(--dark-color); padding: 10px; border: 1px solid var(--dark-color); border-radius: 5px; font-size: 1.5rem;}
.current_navi_list li a:hover{color: var(--dark-color); background-color: #fff;}
.current_navi_list li i{margin-right: 5px;}
*/
.current_navi_btn{display: flex; flex-wrap: wrap; gap: 15px; width: 90%; max-width: 400px; margin: 0 auto 30px;}
.current_navi_btn li{width: calc((100% - 15px)/2); text-align: center;}
.current_navi_btn li img{width: 85%;}
.current_navi_btn li:hover{opacity: 0.7;}


.current_calendar_wrapper{margin-bottom: 20px;}
.current_calendar_btns{display: flex; flex-direction: column; gap: 20px;}
.current_calendar_btn, .current_btn{width: 90%; max-width: 360px; text-align: center; margin: 0 auto;}
.current_calendar_btn a, .current_btn a{padding: 15px 0; background-color: #fff; color: var(--dark-color); border: 1px solid var(--dark-color); border-radius: 8px; position: relative; font-weight: 700; display: block;}
.current_calendar_btn a:hover , .current_btn a:hover{background-color: var(--dark-color); color: #fff;}
.current_btn i{position: absolute; right: 10px; top: 50%; transform: translateY(-50%);}
.current_calendar_btn i{position: absolute; left: 30px; top: 50%; transform: translateY(-50%); font-size: 3rem;}

.current_number{font-family: "Roboto", serif; font-size: 4rem; font-weight: 700; text-align: center;}
.current_number img{width: 60px; height: auto; vertical-align: baseline; margin-right: 5px;}
.current_number i{font-size: 4rem; margin-right: 15px; display: inline-block; vertical-align: -3px;}

.current_term{text-align: center; }
.current_term p{display: inline-block; text-align: left;}

/* サイトマップ */
.sitemap_sec{max-width: 1000px; margin: 0 auto;  font-weight: 700; padding: 50px 0; color: #222; width: 90%;}
.sitemap_list01{display: flex; flex-direction: column; }
.sitemap_list01 li{margin-bottom: 30px;}
.sitemap_item01{font-size: 2rem;  position: relative; transition: 0.5s;  margin: 0 0 0 20px;}
.sitemap_item01:before{content: "";  background-color: var(--dark-color); width: 8px; height: 11px; clip-path: polygon(0 0, 0% 100%, 100% 50%); position: absolute; top: 9px; left: -15px;}
.sitemap_list02{display: flex; flex-direction: column; gap: 15px; font-size: 1.5rem; margin: 20px 0 0 50px;}
.sitemap_list02 li{position: relative; margin-bottom: 0; color: #666;}
.sitemap_list02 li:before{content: ""; background-color: #666; padding: 2px; position: absolute; top: 9px; left: -15px; border-radius: 100%;}
.sitemap_sec i{margin-left: 5px;}


/* サンクスページ */
.thanks_sec{max-width: 1000px; margin: 0 auto; line-height: 4rem;}


/* コラム */
.campaign_sec #toc_container{width: 100%; margin: 0 auto 40px; padding: 20px; max-width: 600px;}
.campaign_sec .toc_title{font-size: 2.5rem; padding-bottom: 10px!important; border-bottom: 1px solid #ccc;}
.campaign_sec #padSection .sns_icons{display: none;}
.campaign_sec #toc_container p.toc_title+ul.toc_list{font-size: 1.8rem;}
#toc_container ul li{margin-bottom: 5px;}
#toc_container ul ul{font-size: 1.5rem; margin-bottom: 10px;}

/*
.column_sec{width: 90%; max-width: 1200px; margin: 0 auto; display: flex; gap: 40px; padding-bottom: 80px; color: #222; font-family: source-han-sans-japanese, sans-serif;}
.column_inner{width: 72%; font-family: source-han-sans-japanese, sans-serif;}
.column_about{margin-bottom: 60px; display: none;}
.column_about_head{font-family: source-han-sans-japanese, sans-serif; font-size: 3.5rem; font-weight: 700; color: #0768AC; margin-bottom: 30px;}
.column_about p{font-family: source-han-sans-japanese, sans-serif; font-weight: 400; font-size: 1.8rem; line-height: 3.5rem;}

.column_month{font-size: 2rem; margin-bottom: 20px;}
.column_list{display: flex; flex-direction: column;}
.column_list .column_item{padding: 10px 0; border-bottom: 1px solid #ccc;}
.column_item_info{display: flex; gap: 10px; align-items: center; margin-bottom: 10px;}
.column_item{padding: 20px 0;  border-bottom: 1px solid #ccc;  gap: 10px; position: relative;}
.column_item::after{content: ""; width: 100%; height: 1px; background-color: #0768AC; display: block; margin-top: 1px; position: absolute; left: 0; bottom: 2px;}
.column_item:first-child{padding: 0 0 20px;}
.column_item_date{font-size: 1.5rem; font-weight: 400;}
.term_list{display: flex; gap: 5px;}
.term_item{ min-width: 120px; text-align: center; }
.term_item a{ display: block; font-weight: 700; font-size: 1.2rem; color: #fff; background-color: #0768AC; padding: 3px 0; border-radius: 12px;}
.term_item a:hover{opacity: 0.7;}
.column_cat_list{display: flex; gap: 10px;}
.term_item{text-align: center;}
.term_item a{display: block; background-color: #0768AC; color: #fff; font-size: 1.4rem; border-radius: 20px; padding: 3px 20px;}
.column_item_tit{font-size: 2rem; font-weight: 700; }
.column_list a{transition: .5s;}
.column_list a:hover{transition: .5s; opacity: 0.7;}

.column_sec .pagination{width: 100%; margin: 40px auto 0px auto; padding-top: 40px; border-top: 1px solid #ccc;}
.column_sec .wp-pagenavi{margin-top: 30px;}

.column_side{width: 28%;}
.sidebar_sec{margin-bottom: 30px; }
.sidebar_sec:last-child{margin-bottom: 0;}
.sidebar_tit{ font-size: 1.8rem; color: #fff; background-color: #35A67D; padding: 10px 20px; font-weight: 700; border-radius: 5px 5px 0 0;}
.sidebar_tit i{margin-right: 5px;}
.sidebar_column .sidebar_tit{background-color: #0768AC;}
.sidebar_sec ul{display: flex; flex-direction: column; background-color: #f5f5f5; padding: 20px 20px; gap: 8px;}
.sidebar_sec li{ font-size: 1.4rem; position: relative; margin-left: 20px;}
.sidebar_sec li::before{
  content: ""; 
  position: absolute;
  left: -20px;
  top: 3px;
  width:0;
  height:0;
  border-style:solid;
  border-width: 6px 0 6px 10.4px;
  border-color: transparent transparent transparent #35A67D;}
.sidebar_tit .sidebar_sec li::before{background-color: #0768AC;}



.sidebar_sec{margin-bottom: 30px;}
.searchSec01{background-color: #F5F5F5; padding: 20px; border-radius: 0 0 5px 5px;}
.sidebar_head,
.sidebar_search_head{font-size: 1.8rem; background-color: #35A67D; color: #fff; padding: 10px 20px; border-radius: 5px 5px 0 0;}
.sidebar_list{ background-color: #F5F5F5; padding: 20px; border-radius: 0 0 5px 5px;}
.sidebar_list li{padding: 8px; border-bottom: 1px solid #ccc; font-size: 1.4rem;}

.sidebar_search form{display: flex; gap: 5px; justify-content: center;}
.sidebar_search input[type="text"]{font-size: 1.6rem; width: 200px; padding: 7px;}
.sidebar_search input[type="submit"]{cursor: pointer; border: none; background-color: #35A67D; color: #fff; font-size: 1.6rem; padding: 4px 15px 6px; }

.flex_img{gap: 40px;}
.flex_img_item{width: calc((100% - 40px)/2); }

.column_sec #toc_container{width: 80%; margin: 0 auto 40px; padding: 40px; max-width: 560px;}
.column_sec .toc_title{font-size: 2.5rem; padding-bottom: 5px; border-bottom: 1px solid #ccc;}
.column_sec #padSection .sns_icons{display: none;}
.column_sec #toc_container p.toc_title+ul.toc_list{font-size: 2rem;}
#toc_container ul ul{font-size: 1.5rem;}
*/

/* アクセス */
.access_info{text-align: center; padding-bottom: 30px;}
.access_center{text-align: center;}
.access_center p{display: inline-block; text-align: left;}
.page_sec p.access_caution{font-size: 1.5rem;}

.access_googlemap{text-align: center;}
.access_googlemap iframe{width: 100%; max-width: 1000px;}
.access_way_flex{gap: 30px!important; max-width: 1500px;}
.access_way_flex_item ul{text-align: left; display: inline-block; list-style: none;}
.access_way_flex_item li{position: relative; padding-left: 10px; font-size: 1.6rem; margin-bottom: 5px;}
.access_way_flex_item li::before{content: ""; padding: 2px; position: absolute; border-radius: 100%; background-color: #333; left: 0; top: 10px;} 


/* 404error */
.error_sec{text-align: center; padding: 200px 0 120px;}

/* 資料請求 */
.document_term{margin-bottom: 30px;}
.document_head{font-size: 2rem; font-weight: 700; border-bottom: 1px solid #ccc; margin-bottom: 15px;}
.document_btn_list{display: flex; gap: 20px; flex-wrap: wrap;}
.document_btn{width: 100%; text-align: center;}
.document_btn a{display: block; padding: 15px; color: #fff; background-color: #1D9779; font-size: 1.8rem; font-weight: 700; border-radius: 8px; border: 1px solid #1D9779;}
.document_btn a:hover{color: #1D9779; background-color: #fff;}



/* 合宿ページ */
.h1_camp,
.h1_camp_b{margin-bottom: 0!important;}
.camp_main{text-align: center; width: 100%; margin: 0 auto;}
.camp_top_bg{ background: url(/info/wp-content/uploads/camp_attractiveness_other_bg01.jpg); background-size: cover;}
.camp_topic{font-weight: 500; font-size: 1.8rem; text-align: center;  width: 90%; margin: 0 auto 50px; line-height: 3rem;}

.camp_sec_head{
  /*
  background-image: repeating-linear-gradient(45deg, #fce9f1, #fce9f1 30px, #fdf2f7 30px, #fdf2f7 60px);
  */
  color: var(--main-color);
  font-size: 3rem;
  text-align: left;
  border-radius: 8px;
  width: 90%;
  max-width: 860px;
  margin: 0 auto 20px;
  font-weight: 600;
}
.camp_merit_list{display: flex; justify-content: center; gap: 100px; row-gap: 30px; max-width: 1280px; width: 90%; flex-wrap: wrap; margin: 0 auto 80px;}
.camp_merit_list li{width: calc((100% - 100px)/2); max-width: 100%; position: relative; background-color: #FCE9F1; border-radius: 5px; padding: 20px 50px 20px 100px;}
.camp_merit_head{color: var(--main-color); font-size: 4.5rem; font-weight: 600;}
.camp_merit_txt{font-size: 1.8rem;}
.camp_merit_icon{position: absolute; width: 120px; height: 120px; text-align: center; background-color: var(--main-color); border-radius: 100%; font-size: 7rem; color: #fff; line-height: 12rem; left: -60px; top: 50%; transform: translateY(-50%);}

.camp_attractiveness{margin-bottom: 80px; padding-top: 30px;}
.camp_attractiveness_txt{text-align: center; width: 90%; margin: 0 auto 30px; line-height: 3rem;}
.camp_attractiveness_list{display: flex; gap: 30px; width: 90%; max-width: 1300px; margin: 0 auto 30px;}
.camp_attractiveness_list li{width: calc((100% - 60px)/3); max-width: 600px; margin: 0 auto;}
.camp_attractiveness_img{margin-bottom: 20px; border-radius: 10px;}
.camp_attractiveness_term{font-size: 2.4rem; font-weight: 600; color: var(--main-color); margin-bottom: 10px; text-align: center;}
.camp_attractiveness_list p{font-size: 1.6rem; line-height: 3.5rem;}
.camp_attractiveness_btn{text-align: center; width: 580px; margin: 0 auto; max-width: 90%;}
.camp_attractiveness_btn a{display: block; color: #fff; font-size: 2.5rem; padding: 15px; border-radius: 10px; background: linear-gradient(135deg, #ff934d 30.5%, #fc686f 59.5%);}
.camp_attractiveness_btn a:hover{opacity: 0.5;}

.camp_other_inner{width: 100%; padding: 50px 0; margin-bottom: 30px;}
.camp_other_list{display: flex; flex-wrap: wrap; gap: 40px; row-gap: 30px; width: 90%; max-width: 1540px; margin: 0 auto;}
.camp_other_list li{width: calc((100% - 80px)/3); padding: 30px 30px; border-radius: 20px;}
.camp_other_img{text-align: center; margin-bottom: 10px;}
.camp_other_term{font-size: 2.4rem; font-weight: 600; text-align: center; margin-bottom: 10px;}

.camp_other_list li:first-child{background-color: #FEFCE2;}
.camp_other_list li:nth-child(2){background-color: #E3FFFE;}
.camp_other_list li:nth-child(3){background-color: #FFE8EE;}
.camp_other_list li:nth-child(4){background-color: #E3FFEE;}
.camp_other_list li:nth-child(5){background-color: #FEF6D4;}
.camp_other_list li:nth-child(6){background-color: #FAE8FF;}

.camp_other_list li:first-child .camp_other_term{color: #cdc01d;}
.camp_other_list li:nth-child(2) .camp_other_term{color: #27b0ab;}
.camp_other_list li:nth-child(3) .camp_other_term{color: #cf385f;}
.camp_other_list li:nth-child(4) .camp_other_term{color: #44a268;}
.camp_other_list li:nth-child(5) .camp_other_term{color: #b49e44;}
.camp_other_list li:nth-child(6) .camp_other_term{color: #ab39cb;}


.camp_top_link .top_link_inner{padding: 10px;}
.top_link_item:nth-child(2n) .top_link_img img{border-bottom-left-radius: 8px; border-top-left-radius: 8px; border-bottom-right-radius: 0; border-top-right-radius: 0;}





/* 合宿 施設 */
.camp_hospitality{padding: 50px; width: 90%; max-width: 1200px; margin: 0 auto 80px; background-color: #f5f5f5;}
.camp_hospitality_inner{display: flex; gap: 50px; justify-content: center; margin: 0 auto 50px;}
.camp_hospitality_inner:nth-child(2n){flex-direction: row-reverse;}
.camp_hospitality_inner:last-child{margin-bottom: 0;}
.camp_hospitality_txt{width: 550px;}
.camp_hospitality_txt p{line-height: 3.5rem;}
.camp_hospitality_head{font-size: 2.5rem; font-weight: 500; margin-bottom: 10px;}
.camp_hospitality_txt o{line-height: 3.5rem;}
.camp_hospitality_img{width: 500px;}

.camp_facility{width: 90%; max-width: 1000px; margin: 0 auto 80px;}
.camp_facility_head{font-size: 2rem; font-weight: 500; padding-bottom: 5px; border-bottom: 1px solid #ccc; margin-bottom: 15px;}
.camp_facility_flex{display: flex; gap: 20px; margin-bottom: 30px; flex-wrap: wrap;}
.camp_facility_item{width: calc((100% - 60px)/4);}
.camp_facility_img{margin-bottom: 10px;}
.camp_facility_txt{text-align: center;}


.camp_bottom{margin-top: 10px;}
.camp_license_head{text-align: center; font-size: 2.4rem; font-weight: 600; margin-bottom: 30px;}
.camp_license{display: flex; gap: 30px; row-gap: 40px; flex-wrap: wrap; max-width: 1200px; margin: 0 auto 50px; width: 90%;}
.camp_license_item{width: calc((100% - 60px)/3);}
.camp_license_img{margin-bottom: 15px;}
.camp_license_btn{width: 100%; max-width: 400px; text-align: center; margin: 0 auto;}
.camp_license_btn a{display: block; padding: 12px; color: #fff; background-color: var(--main-color); border: 1px solid var(--main-color); font-weight: 600;}
.camp_license_btn a:hover{color: var(--main-color); background-color: #fff;}

/*
.camp_other_link{display: flex; gap: 30px; justify-content: center; width: 90%; max-width: 1000px; margin: 0 auto 80px; padding: 20px; background-color: #f5f5f5; border-radius: 40px;}
.camp_other_link_item{font-size: 1.6rem; position: relative; font-weight: 600;}
.camp_other_link_item::before{content: "/"; font-size: 1.3rem; position: absolute; top: 4px; left: -15px;}
.camp_other_link_item:first-child::before{display: none;}
*/
.camp_other_link{display: flex; gap: 30px; max-width: 1200px; margin: 0 auto 50px; width: 90%;}
.camp_other_link_item{width: 100%; max-width: 400px; text-align: center; margin: 0 auto;}
.camp_other_link_item a{display: block; padding: 12px; color: #fff; background-color: var(--main-color); border: 1px solid var(--main-color); font-weight: 600;}
.camp_other_link_item a:hover{color: var(--main-color); background-color: #fff;}


.camp_facility_detail_bnr{max-width: 600px; margin: 0 auto; border: 1px solid #ccc;}
.camp_facility_detail_bnr a{display: block;}


.camp_voice{width: 90%; max-width: 660px; margin: 0 auto; padding-top: 50px;}
.camp_faq_navi{ width: 90%; max-width: 800px; margin: 0 auto 80px; padding: 20px; background-color: #f5f5f5; border-radius: 40px; }
.camp_faq_navi ul{display: flex; gap: 30px; justify-content: center;}
.camp_faq_navi li{position: relative; padding-left: 10px;}
.camp_faq_navi li::before{content: ""; padding: 2px; background-color: #333; position: absolute; left: 0; top: 50%; transform: translateY(-50%); border-radius: 100%;}
.camp_goods{max-width: 900px; width: 90%; margin: 0 auto;}
.camp_goods_head{font-size: 1.8rem; font-weight: 500; margin-bottom: 15px; }
.camp_goods ul{margin-bottom: 30px;}
.camp_goods li{position: relative; padding-left: 15px; margin-bottom: 8px; font-size: 1.6rem;}
.camp_goods li::before{content: ""; background-color: #333; padding: 5px; position: absolute; left: 0; top: 7px;}
.camp_goods_list02{columns: 2;}
.camp_goods ul span{font-size: 1.5rem;}

.camp_pay_btn{text-align: center; width: 400px; max-width: 100%; margin: 20px auto 0;}
.camp_pay_btn a{display: block; padding: 12px; color: var(--main-color); background-color: #fff; border: 1px solid var(--main-color); border-radius: 5px; font-weight: 700;}
.camp_pay_btn a:hover{color: #fff; background-color: var(--main-color);}

.camp_pay_bank{margin-top: 10px; font-size: 1.5rem; text-align: left;}
.camp_pay_bank_inner{margin-bottom: 8px;}
.camp_pay_bank_head,
.camp_pay_bank_label{display: block; margin-bottom: 5px; font-size: 1.8rem;}
.camp_pay_bank_furigana{margin: 10px 0; display: block;}


.camp_facility_detail{width: 90%; max-width: 1000px; margin: 0 auto 50px; }
.camp_facility_detail_inner{margin-bottom: 30px;}
.camp_facility_detail_head{font-size: 1.8rem; font-weight: 600; margin-bottom: 5px;}
.camp_facility_detail_txt{margin-bottom: 15px; font-size: 1.6rem; line-height: 3rem;}
.camp_facility_detail_img{display: flex; gap: 20px; margin-bottom: 15px;}
.facility_detail_img_item{width: calc((100% - 20px)/2);}
.camp_facility_detail_btn{width: 400px; max-width: 100%; text-align: center;}
.camp_facility_detail_btn a{display: block; padding: 12px; color: var(--main-color); background-color: #fff; border: 1px solid var(--main-color); font-weight: 600; font-size: 1.6rem;}
.camp_facility_detail_btn a:hover{color: #fff; background-color: var(--main-color);}


/* 合宿免許の規約と注意点 */
.rule_wrapper{padding: 50px 0;}
.rule_sec{width: 90%; max-width: 900px; margin: 0 auto;}
.rule_sec ul{margin-left: 15px; list-style: disc;}
.rule_sec li{font-size: 1.7rem;}

/* 合宿免許 取得免許 */
.camp_term{max-width: 800px;}
.camp_term .ark-block-buttons{pointer-events: none!important;}
.camp_license_target{max-width: 1000px; width: 90%; margin: 0 auto 20px;}
.camp_moushikomi_btn{text-align: center; width: 400px; max-width: 100%; margin: 20px auto 0;}
.camp_moushikomi_btn a{display: block; padding: 12px; color: #fff; background-color: var(--main-color); border: 1px solid var(--main-color); border-radius: 5px; font-weight: 700;}
.camp_moushikomi_btn a:hover{color: var(--main-color); background-color: #fff;}


/* 入校カレンダー */
.calendar_wrapper{padding: 50px 0;}
.calendar_sec{ max-width: 1200px; width: 92%; margin: 0 auto;}
.camp_calendar_img{margin-bottom: 30px;}
.camp_calendar_pdf{text-align: center; width: 400px; max-width: 100%; margin: 0 auto;}
.camp_calendar_pdf a{display: block; padding: 12px; color: #fff; background-color: var(--main-color); border: 1px solid var(--main-color);}
.camp_calendar_pdf a:hover{color: var(--main-color); background-color: #fff;}
.camp_calendar_list{display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 50px;}
.camp_calendar_list .cal{width: calc((100% - 20px)/2);}
.camp_calendar_caution{font-size: 1.4rem; margin-bottom: 20px;}



/* スケジュール例 */
.schedule-wrap{
  margin: 20px auto;
  background:#fff;
  max-width: 900px;
}
.schedule-title{
  text-align:center;
  font-size:26px;
  font-weight:bold;
  margin-bottom:20px;
}

/* ===== 表 ===== */
.schedule-table{
  width: 100%;
  border-collapse:collapse;
  table-layout:fixed;
  text-align:center;
  font-size:14px;
  margin: 0 auto;
}
.schedule-table th,
.schedule-table td{
  border:2px solid #f1c63a;
  min-width: 80px;
  vertical-align: middle;
  padding: 10px 5px;
}

/* 見出し */
.schedule-table thead th{
  background:#f3ffe0;
  color:#5cb300;
  font-weight:bold;
}
.schedule-table thead th.time-head{
  background:#c7ff9a;
  color:#4b8f00;
  width: 60px;
}

.schedule-table td{padding-top: 12px;}

/* 左の「◯日目」 */
.schedule-table tbody th.day-head{
  background:#e6f6ff;
  color:#00a0e9;
  font-weight:bold;
  font-size: 1.2rem;
}

/* ===== アイコン説明エリア ===== */
.schedule-legend {
  margin-bottom: 20px;
}

.schedule-legend p {
  margin: 0 0 8px;
  font-weight: bold;
  color: #333;
  font-size: 16px;
}

.schedule-legend ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.schedule-legend li {
  margin-bottom: 6px;
  font-size: 15px;
  color: #333;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}

.schedule-legend li i {
  display: inline-block;
    color: #345CA3;
    font-size: 2.5rem;
}

/* ラベル系 */
.label{
  padding:4px 10px;
  border-radius:6px;
  color:#fff;
  font-size: 1.2rem;
}
.label-procedure{ background:#9DC3E6; }     /* 手続き（黄緑） */
.label-test{ background:#7ccf33; }    /* テスト（黄緑） */
.label-exam{ background:#ff4040; }    /* 検定（赤） */
.label-free {
  background: var(--main-color); /* 自由時間 */
}


.schedule-table i{color: #345CA3; font-size: 2.2rem; vertical-align: middle;}
.schedule-table .schedule_txt{display: block; font-size: 1.5rem;}



/* 北里大学LP */
.kitasatopremium_sec{width: 90%; max-width: 800px; margin: 0 auto;}
.lp_topic p{font-size: 2rem;}
.kitasatopremium_sec h3{text-align: left; border: none; color: #904E04; background-color: #F7B7AB; border-radius: 5px; padding: 10px;}
.kitasatopremium_sec p{font-size: 1.6rem;}
.lp_link_btn{text-align: center; width: 400px; max-width: 100%; margin: 0 auto;}
.lp_link_btn a{display: block; padding: 12px; color: var(--main-color); background-color: #fff; border: 1px solid var(--main-color); border-radius: 5px; font-weight: 700;}
.lp_link_btn a:hover{color: #fff; background-color: var(--main-color);}



/* ----------------------------------------------------------
 SP CSS
---------------------------------------------------------- */
@media screen and (max-width:520px){
img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 60%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; height: auto !important; padding-top: 0; }

/* 非表示用 */
.noneSP	{ display: none !important; }


/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
.header_logo01{padding-left: 5px;}



/*ACCORDION*/
.toggle{width: 60px; height: 60px;}
.toggle .toggle_menu{bottom: 8px;}

/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
footer{}

.footer_wrapper{}
.footer_sec{display: block; margin: 0 auto 30px; text-align: center; padding-bottom: 0;}
.footer_sec01{padding: 0; border: none; display: block;}
.footer_sitemap_wrapper{display: none;}
.footer_logo{text-align: center;}
.footer_logo img{width: 230px;}
.footer_info{line-height: 2.5rem; text-align: center; margin: 0 auto 30px;}
.footer_info span{text-align: center;}

.footer_copyright{margin: 0 auto; text-align: center;}




/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */

h3{ font-size: 2.2rem; font-weight: 700; letter-spacing: 2px; line-height: 1.8; }

/* ぱんくず */
.breadcrumbs{ position: relative; z-index: 1; padding: 0; font-weight: 700; width: 90%; margin: 0 auto; display: block;}  
.breadcrumbs > ol{} 
.breadcrumbs > ol > li{ display: inline-block; position: relative;  }
.breadcrumbs > ol > li:before{ content: "/"; display: block; position: absolute; top: -5px; left: 3px;  font-size: 1.9rem; }
.breadcrumbs > ol > li:first-child:before{ content: ""; }
.breadcrumbs > ol > li a{ font-size: 1.2rem; margin: 0 0 0 20px; }
.breadcrumbs > ol > li:first-child a{ margin: 0 0 0 0; }
.breadcrumbs > ol > li a:hover{ opacity: 0.6; }


    
    
/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.wrapper{ position: relative; overflow: hidden; padding-top: 60px;}

.page_sec{padding: 0;}
.sp_br{display: block;}




/* h1見出し */
.h1_wrapper{width: 100%; height: initial;}
.h1_left{height: initial; text-align: center; width: 100%;}
.h1_left_inner{min-width: initial; padding: 50px 0; background-color: rgba(255, 255, 255, 0.7); position: initial; text-align: center;}
.h1_left h1{font-size: 4rem;}
.h1_margin{padding: 0;}
.h1_margin::before{display: none;}
.h1_margin:after{display: none;}

/* 入所案内 */
.guide_preparation_list{gap: 50px;}
.guide_preparation_item{display: block!important;}
.guide_preparation_icon{width: 100px!important; float: left; margin-right: 15px!important;}
.guide_sec .guide_preparation_txt p{font-size: 1.5rem;}
.guide_sec .guide_preparation_head strong{font-weight: 700; margin-bottom: 15px; font-size: 1.8rem; display: block;}

/* 送迎バス */
.bus_caution_txt{font-size: 1.5rem;}
.bus_caution_flex{gap: 15px;}


/* お問合せフォーム */
.contact_sec{width: 90%; margin: 0 auto;}
.contact_item{display: block; padding: 20px 0;}
.contact_tit{margin: 0 0 20px 0; width: initial;}
.contact_essential .contact_tit{margin-left: 60px; width: initial;}
.wpcf7-form-control-wrap{}
.contact_txt, .contact_adress, .contact_txtarea, .contact_check{width: 100%;}
.contact_txt input{width: calc(100% - 16px); margin: 0 auto;}
.contact_name input{width: 85%;}
.contact_adress input{width: 100%; margin-left: 0;}
input[type="checkbox"]{padding: 8px;}
.form-width{max-width: 100%;}
.contact_sec .wpcf7-spinner{display: block;}
.contact_txtarea textarea{width: calc(100% - 16px);}
.policy_txt{margin-bottom: 30px;}
.policy_sec h3{font-size: 2.5rem; letter-spacing: 1px;}
.policy_txt p{font-size: 1.5rem;}

.contact_select select{width: 100%; padding: 8px;}

/* サイトマップ */
.sitemap_item01:before{top: 7px;}
.sitemap_list02 li:before{top: 8px;}


    
::placeholder{ color: #999;}
/* 旧Edge対応 */
::-ms-input-placeholder{ color: #999; }
/* IE対応 */
:-ms-input-placeholder{ color: #999; }

/* お知らせ */
.information_sec{flex-direction: column;}
.news_inner{width: 100%;}
.news_side{width: 100%;}
.news_head{display: block;}
.news_list_content{font-size: 1.5rem; line-height: 3.5rem; overflow: auto;}


/* コラム */
.column_wrapper{padding: 0;}
.column_sec{flex-direction: column; gap: 80px; padding-bottom: 50px;}
.column_inner{width: 100%;}
.column_about p{font-size: 1.5rem;}
.column_side{width: 100%;}

/* コラム詳細 */
.contents .column_detail_tit{font-size: 2.5rem;}
.column_detail #toc_container{padding: 20px 30px;}
.column_detail h3{}
.column_detail p{margin-bottom: 30px;}

.column_detail .flex_pattern01,
.column_detail .flex_img{flex-direction: column; gap: 20px;}
.flex_pattern_txt,
.flex_pattern_img{width: 100%;}
.wp-block-column{width: 100%;}


.contact_thanks {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
  padding: 50px 0;
  line-height: 3.5rem;
}


/* 高齢者講習 */

.senior_hagaki_sec{}
.senior_hagaki_sec .wp-block-media-text__content{ padding:  10px 0 !important; }
.senior_hagaki_sec .wp-block-media-text__media{ text-align: center; }
.senior_hagaki_sec .wp-block-media-text__media img{ width: 50%; height: auto; }

.senior_tab{ display: flex; flex-wrap: wrap; gap: 0 10px; max-width: auto; }
.senior_tab > label{ flex: 1 1; order: -1; opacity: .5; min-width: 48%; padding: .6em .5em; border-radius: 5px; border: 1px solid var(--dark-color); color: var(--dark-color); font-size: .9em; text-align: center; cursor: pointer; margin-bottom: 10px; }
.senior_tab > label:hover{ opacity: .8; }
.senior_tab > label span{ font-size: 2rem; font-weight: bold; }
.senior_tab input{ display: none; }
.senior_tab > div{ display: none; width: 100%; padding: 0; background-color: #fff; }
.senior_tab label:has(:checked){ opacity: 1; background-color: var(--dark-color); color: #fff;  }
.senior_tab label:has(:checked) + div{ display: block; }

/* Mac対応 */
.senior_tab input[type="radio"] {
  display: none;
}
/* 全div（内容）の初期状態は非表示 */
.senior_tab label + div {
  display: none;
}

/* 選択されたラベルのスタイル（input:checked + label） */
.senior_tab input[type="radio"]:checked + label {
  background-color: var(--dark-color);
  color: #fff;
  opacity: 1;
}

/* 選択されたラベル直後のdivを表示（input:checked + label + div） */
.senior_tab input[type="radio"]:checked + label + div {
  display: block;
}


.senior_tab_time{ width: 240px; background-color: #eee; font-size: 2.2rem; font-weight: 500; padding: 10px; border-radius: 10px; margin: 0 auto 20px auto; text-align: center; }

.senior_tab_list01{ display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 40px; }
.senior_tab_item01{ flex-basis: 100%; align-items: center; display: flex; align-items: left; margin-bottom: 30px; }
.senior_tab_item01_img01{ flex-basis: 35%; width: 35%; margin: 0 auto 20px auto;; }
.senior_tab_item01_img01 img{ width: 100%; height: auto; border-radius: 100%; object-fit: cover; }
.senior_tab_item01_txt01{ flex-basis: 60%; text-align: left; }
.senior_tab_item01_tit01{ font-size: 2.2rem; font-weight: 700; margin-bottom: 10px; }
.senior_tab_item01_detail01{ font-size: 1.6rem; }
.senior_tab_item01_detail01 span{ font-weight: bold; }


.senior_tab_list02{ width: 100%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.senior_tab_item02{ flex-basis: 100%; display: flex; align-items: center; margin-bottom: 30px; }
.senior_tab_item02_ico01{ width: 60px; height: 60px; background-color: #d1c13b; border-radius: 100%; text-align: center; margin-right: 10px; }
.senior_tab_item02_ico01 i{ font-size: 4rem; line-height: 60px; color: #fff; }
.senior_tab_item02_tit01{ font-size: 1.8rem; font-weight: 700; }


.senior_tab_list03{ margin-bottom: 20px; }
.senior_tab_item03{ position: relative; font-size: 1.6rem; padding-left: 30px; margin-bottom: 10px; }
.senior_tab_item03:before{ content: ""; display: block; position: absolute; left: 0; top: 7px; width: 15px; height: 15px; border-radius: 100%; background-color: #d1c13b; }

.senior_tab_sec{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.senior_tab_hagaki{ flex-basis: 100%; text-align: center; margin-bottom: 20px; }
.senior_tab_sec01{ flex-basis: 100%; }


.hagaki_btn_flex{flex-direction: column;}
.hagaki_btn{width: 100%; max-width: 400px;}



/* 企業講習 */
.corporate_plan_tab > label{border: 1px solid #288DCE; color: #288DCE;}
.corporate_plan_tab > label:hover{background-color: #288DCE; color: #fff;}
.corporate_plan_tab  label:has(:checked){background-color: #288DCE; color: #fff;}
.corporate_plan_tab > label{flex: initial!important; width: 100%!important;}
.corporate_plan_tab_inner{padding: 30px 18px 50px !important;}



/* 合宿 */
.camp_topic{font-size: 1.6rem; text-align: left; }
.camp_sec_head{font-size: 2.3rem;}
.camp_merit_list{flex-direction: column; gap: 50px;}
.camp_merit_list li{width: 100%; padding: 30px;}
.camp_merit_icon{width: 60px; height: 60px; font-size: 3.5rem; left: 50%; top: -30px; transform: translateX(-50%); line-height: 6.5rem;}
.camp_merit_head{text-align: center; margin-bottom: 5px; font-size: 3rem;}
.camp_merit_txt{font-size: 1.6rem;}
.camp_attractiveness_txt{text-align: left; font-size: 1.6rem;}

.camp_attractiveness_list{flex-direction: column;}
.camp_attractiveness_list li{width: 100%;}
.camp_attractiveness_term{font-size: 2rem;}
.camp_attractiveness_btn a{font-size: 1.8rem;}
.camp_other_list{flex-direction: column;}
.camp_other_list li{width: 100%;}

.camp_other_inner{padding: 30px 0;}
.camp_other_list li{padding: 30px 20px;}
.camp_other_list li p{font-size: 1.6rem;}

.camp_hospitality{padding: 30px;}
.camp_hospitality_inner{flex-direction: column;}
.camp_hospitality_inner:nth-child(2n){flex-direction: column;}
.camp_hospitality_txt{ width: 100%;}
.camp_hospitality_head{font-size: 2rem;}
.camp_hospitality_txt p{font-size: 1.6rem;}
.camp_hospitality_img{width: 100%; max-width: 600px; margin: 0 auto;}
.camp_facility_item{width: calc((100% - 20px)/2);}
.camp_license{gap: 20px;}
.camp_license_item{width: calc((100% - 20px)/2);}

.camp_other_link{flex-direction: column; gap: 15px; padding: 20px 40px;}
.camp_other_link_item::before{display: none;}

/* 合宿免許FAQ */
.camp_faq_navi{padding: 20px 40px;}
.camp_faq_navi ul{flex-direction: column; gap: 10px;}
.camp_goods ul{columns: 1;}


/* 入校カレンダー */
.camp_calendar_list .cal th, 
.camp_calendar_list .cal td{font-size: 1.2rem;}


}

/* ----------------------------------------------------------
 SP CSS END
---------------------------------------------------------- */

/* ----------------------------------------------------------
 TAB CSS
---------------------------------------------------------- */
@media screen and (min-width:521px) and (max-width:1130px){

img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 62.5%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; padding-top: 0; }

/* 非表示用 */
.noneTAB		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */



/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
.btm_menu li{width: calc(100%/3);}

/* ページ下部 高齢者講習 */
.btm_menu_senior li{ width: 100%;}

/* ページ下部 高齢者講習 */
.btm_menu_camp li{ width: 100%;}

	
/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */


/* ぱんくず */
.breadcrumbs{ position: relative; z-index: 1; width: 100%; padding: 0; margin: 0 auto; display: block;}  
.breadcrumbs > ol{} 
.breadcrumbs > ol > li{  position: relative; }
.breadcrumbs > ol > li:before{ content: "/"; display: block; position: absolute; top: 0; left: 6px;  font-size: 1.9rem; }
.breadcrumbs > ol > li:first-child:before{ content: ""; }
.breadcrumbs > ol > li a{ font-size: 1.6rem; margin: 0 0 0 20px; }
.breadcrumbs > ol > li:first-child a{ margin: 0 0 0 0; }
.breadcrumbs > ol > li a:hover{ opacity: 0.6; }

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.wrapper{ position: relative; overflow: hidden; padding-top: 60px;}
		

.contents{}



/*トップページ*/

/* スクール紹介 */
.school_point_flex{max-width: 600px; margin: 0 auto;}
.school_equipment_list{max-width: 600px; margin: 0 auto;}
.school_equipment_img img{width: 100%;}
.school_course_flex{ margin: 0 auto;}
.school_course_flex_item img{width: 100%;}
.school_staff_list{max-width: 600px; margin: 0 auto;}
.school_staff_img{text-align: center;}

.no-photo{margin-top: 30px;}


/* 選ばれる理由 */
.reason_sougei_item{padding: 30px 40px;}



/* キャンペーン情報 */
.campaign_sec{max-width: 600px;}
.campaign_list{gap: 40px;}
.campaign_item{width: calc((100% - 40px)/2);}


/* お問合せフォーム */
.contact_sec{width: 90%; margin: 0 auto;}
.contact_item{display: block; padding: 20px 5%;}
.contact_tit{margin: 0 0 20px 0; width: initial;}
.contact_essential .contact_tit{margin-left: 60px; width: initial;}
.form_tit01{display: none;}
.form_tit02{padding: 20px 0; font-size: 3rem;}
.form_sec{width: 90%;}
.policy_sec .page_sec{padding: 0;}

.list-checkbox-wrap .nf-field-element li label{text-align: left;}
.wpcf7-form-control-wrap{}
.contact_txt, .contact_adress, .contact_txtarea, .contact_check{width: 100%;}
.contact_txt input{width:  calc(100% - 16px); margin: 0 auto;}
.contact_txtarea textarea{width:  calc(100% - 16px);}
.contact_adress input{width: 100%; margin-left: 0;}
input[type="checkbox"]{padding: 8px;}
.form-width{max-width: 100%;}
.contact_sec .wpcf7-spinner{display: block;}

::placeholder{ color: #999;}

/* 旧Edge対応 */
::-ms-input-placeholder{ color: #999; }
/* IE対応 */
:-ms-input-placeholder{ color: #999; }

/* お知らせ */
.information_sec{flex-direction: column;}
.news_inner{width: 100%;}
.news_side{width: 100%;}
.news_head{display: block;}
.news_list_content{font-size: 1.5rem; line-height: 3.5rem; overflow: auto;}


/* コラム */
.column_wrapper{padding: 0;}
.column_sec{flex-direction: column; gap: 80px; padding-bottom: 50px;}
.column_inner{width: 100%;}
.column_about p{font-size: 1.5rem;}
.column_side{width: 100%;}


/* コラム詳細 */
.contents .column_detail_tit{font-size: 2.5rem;}
.column_detail #toc_container{padding: 20px 30px;}
.column_detail h3{font-size: 2rem; padding: 15px;}
.column_detail p{margin-bottom: 30px;}

.column_detail .flex_pattern01,
.column_detail .flex_img{flex-direction: column; gap: 20px;}
.flex_pattern_txt,
.flex_pattern_img{width: 100%;}
.wp-block-column{width: 100%;}


.contact_thanks {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
  padding: 50px 0;
  line-height: 3.5rem;
}

/* 高齢者講習 */
.senior_hagaki_sec{}
.senior_hagaki_sec .wp-block-media-text__content{ padding:  10px 0 !important; }
.senior_hagaki_sec .wp-block-media-text__media{ text-align: center; }
.senior_hagaki_sec .wp-block-media-text__media img{ width: 50%; height: auto; }

.senior_tab{ display: flex; flex-wrap: wrap; gap: 0 10px; max-width: auto; }
.senior_tab > label{ flex: 1 1; order: -1; opacity: .5; min-width: 220px; padding: .6em .5em; border-radius: 5px; border: 1px solid var(--dark-color); color: var(--dark-color); font-size: .9em; text-align: center; cursor: pointer; margin-bottom: 10px; }
.senior_tab > label:hover{ opacity: .8; }
.senior_tab > label span{ font-size: 2rem; font-weight: bold; }
.senior_tab input{ display: none; }
.senior_tab > div{ display: none; width: 100%; padding: 1.5em 0 0 0; background-color: #fff; }
.senior_tab label:has(:checked){ opacity: 1; background-color: var(--dark-color); color: #fff; }
.senior_tab label:has(:checked) + div{ display: block; }

/* Mac対応 */
.senior_tab input[type="radio"] {
  display: none;
}
/* 全div（内容）の初期状態は非表示 */
.senior_tab label + div {
  display: none;
}

/* 選択されたラベルのスタイル（input:checked + label） */
.senior_tab input[type="radio"]:checked + label {
  background-color: var(--dark-color);
  color: #fff;
  opacity: 1;
}

/* 選択されたラベル直後のdivを表示（input:checked + label + div） */
.senior_tab input[type="radio"]:checked + label + div {
  display: block;
}

.senior_tab_time{ width: 240px; background-color: #eee; font-size: 2.2rem; font-weight: 500; padding: 10px; border-radius: 10px; margin: 0 auto 20px auto; text-align: center; }

.senior_tab_list01{ display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 40px; }
.senior_tab_item01{ flex-basis: 100%; align-items: center; display: flex; align-items: left; margin-bottom: 30px; }
.senior_tab_item01_img01{ flex-basis: 35%; width: 35%; margin: 0 auto 20px auto;; }
.senior_tab_item01_img01 img{ width: 100%; height: auto; border-radius: 100%; object-fit: cover; }
.senior_tab_item01_txt01{ flex-basis: 60%; text-align: left; }
.senior_tab_item01_tit01{ font-size: 2.2rem; font-weight: 700; margin-bottom: 10px; }
.senior_tab_item01_detail01{ font-size: 1.8rem; }
.senior_tab_item01_detail01 span{ font-weight: bold; }


.senior_tab_list02{ width: 100%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.senior_tab_item02{ flex-basis: 100%; display: flex; align-items: center; margin-bottom: 30px; }
.senior_tab_item02_ico01{ width: 80px; height: 80px; background-color: #d1c13b; border-radius: 100%; text-align: center; margin-right: 10px; }
.senior_tab_item02_ico01 i{ font-size: 5rem; line-height: 80px; color: #fff; }
.senior_tab_item02_tit01{ font-size: 2rem; font-weight: 700; }


.senior_tab_list03{ margin-bottom: 20px; }
.senior_tab_item03{ position: relative; font-size: 1.8rem; padding-left: 30px; margin-bottom: 10px; }
.senior_tab_item03:before{ content: ""; display: block; position: absolute; left: 0; top: 7px; width: 15px; height: 15px; border-radius: 100%; background-color: #d1c13b; }

.senior_tab_sec{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.senior_tab_hagaki{ flex-basis: 100%; text-align: center; margin-bottom: 20px; }
.senior_tab_sec01{ flex-basis: 100%; }

/* 卒業生の声 */
.satisfaction_flex{flex-direction: row;}
.impressions_list{display: flex; flex-direction: row; flex-wrap: wrap; gap: 30px; row-gap: 40px; max-width: 1000px; margin: 0 auto;}
.impression_item{width: calc((100% - 30px)/2);}

/* 企業講習 */
.corporate_plan_tab > label{border: 1px solid #288DCE; color: #288DCE;}
.corporate_plan_tab > label:hover{background-color: #288DCE; color: #fff;}
.corporate_plan_tab  label:has(:checked){background-color: #288DCE; color: #fff;}
.corporate_plan_tab > label{flex: initial; width: 100%;}
.corporate_plan_tab_inner{padding: 30px 50px 50px!important;}


/* アクセス */
.access_way_flex{flex-direction: column!important;}


/* 合宿 */
.camp_topic{font-size: 1.6rem; text-align: left; }
.camp_sec_head{font-size: 2.5rem;}
.camp_merit_list{flex-direction: column; gap: 50px;}
.camp_merit_list li{width: 100%; padding: 30px;}
.camp_merit_icon{width: 60px; height: 60px; font-size: 3.5rem; left: 50%; top: -30px; transform: translateX(-50%); line-height: 6.5rem;}
.camp_merit_head{text-align: center; margin-bottom: 5px; font-size: 3rem;}
.camp_merit_txt{font-size: 1.6rem;}
.camp_attractiveness_txt{text-align: left; font-size: 1.6rem;}

.camp_attractiveness_list{flex-direction: column;}
.camp_attractiveness_list li{width: 100%;}
.camp_attractiveness_term{font-size: 2rem;}
.camp_attractiveness_btn a{font-size: 1.8rem;}
.camp_other_list{flex-direction: column;}
.camp_other_list li{width: 100%; max-width: 600px; margin: 0 auto;}

.camp_other_inner{padding: 30px;}
.camp_other_list li{padding: 30px 20px;}
.camp_other_list li p{font-size: 1.6rem;}

.camp_hospitality{padding: 30px;}
.camp_hospitality_inner{flex-direction: column;}
.camp_hospitality_inner:nth-child(2n){flex-direction: column;}
.camp_hospitality_txt{ width: 100%;}
.camp_hospitality_head{font-size: 2rem;}
.camp_hospitality_txt p{font-size: 1.6rem;}
.camp_hospitality_img{width: 100%; max-width: 600px; margin: 0 auto;}
.camp_facility_item{width: calc((100% - 20px)/2);}
.camp_license{gap: 20px;}
.camp_license_item{width: calc((100% - 20px)/2);}

.camp_other_link{flex-direction: column; gap: 15px; padding: 20px 40px;}
.camp_other_link_item::before{display: none;}


/* 合宿免許FAQ */
.camp_faq_navi{padding: 20px 40px;}
.camp_faq_navi ul{flex-direction: column; gap: 10px;}
.camp_goods ul{columns: 1;}




}
/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 TAB CSS END
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */

/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 PC CSS
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
@media print, screen and (min-width:1131px) and (max-width:1370px){

/* フォントサイズ10px */
html{ font-size: 62.5%; }

/* 基本のフォントサイズ */
body{  font-size: 1.8rem; }

/* 非表示用 */
.nonePC		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{height: 80px;}
.header_sec{height: 80px;}
.header_logo01 img{width: 230px;}
.header_tel{display: none;}

.header_navi ul{gap: 10px; margin-right: 20px;}
.header_item01 a{padding: 28px 10px;}
.header_contact {width: 160px; text-align: center;}
.header_contact a{display: block; padding: 27px 0; background-color: var(--main-color); color: #fff; border: 1px solid var(--main-color); font-size: 1.6rem; font-weight: 700;}
.header_contact a:hover{color: var(--main-color); background-color: #fff; transition: .5s;}
.header_contact i{margin-right: 5px; font-size: 2rem; vertical-align: -2px; }
.header_current{width: 160px; text-align: center;}
.header_current a{display: block; padding: 27px 0; background-color: var(--student-color); color: #fff; border: 1px solid var(--student-color); font-size: 1.6rem; font-weight: 700;}
.header_current a:hover{color: var(--student-color); background-color: #fff; transition: .5s;}
.header_current i{margin-right: 5px; font-size: 2rem; vertical-align: -2px;}


/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
footer{padding-bottom: 20px;}
.footer_logo{margin-bottom: 30px;}


/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.gnavi_item > a{font-size: 1.5rem;}
.pc_br{display: block;}
.page_sec{}
.lnavi ul{gap: 30px;}
.anchor02{ padding-top: 80px; margin-top: -80px; display: block; position: relative; z-index: -999;}
	
/* パンくず */
.breadcrumbs > ol{max-width: 1100px; margin: 0 auto;} 
	
.wrapper{padding-top: 80px;}
.top_main_bnr_inner{}
.top_access_sec{max-width: 1200px; width: 94%;}
.top_access_list{flex-direction: row; gap: 20px; justify-content: center;}
.top_access_list_item{width: calc((100% - 40px)/3);}

.top_post_sec{display: flex; flex-direction: row; gap: 50px;}
.top_post_item{width: calc((100% - 50px)/2);}
.top_reason_list{display: flex; flex-direction: row; justify-content: center;}
.top_reason_item{width: calc((100% - 80px)/3); display: flex; flex-direction: column;}
.top_reason_item p{font-size: 1.6rem;}
.top_reason_btn{margin-top: auto;}

.top_contents_head{text-align: center;}

/* 別案 */
.top_reason_test .top_reason_sec{width: 90%;}
.top_price_wrapper{padding-bottom: 50px;}
.top_price_inner{display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 30px; padding: 20px 30px;}

.top_price_tab_list .top_price_tab_list_items{margin-bottom: 0; flex-wrap: nowrap;}
.top_price_tab_list{}
.top_price_info{border-radius: 0 ; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px;}
.top_price_tab_list label{border-radius: 0; border-top-left-radius: 10px; border-top-right-radius: 10px;}
.top_price_inner_item{width: calc((100% - 50px)/2);}

.top_plan_wrapper{margin-bottom: 0;}
.top_plan_inner{display: flex; flex-direction: row; gap: 30px; row-gap: 60px;}
.top_plan_item{width: calc((100% - 30px)/2); }


.top_link{display: flex; flex-direction: row; gap: 30px; width: 90%; max-width: 1200px; margin: 0 auto 50px;}
.top_link_item, .top_link_item:nth-child(2n){flex-direction: column-reverse; width: calc((100% - 90px)/4);}
.top_link_item a{flex-direction: column-reverse;}
.top_link_item:nth-child(2n) a{flex-direction: column-reverse;}

.top_link_inner,
.camp_top_link .top_link_inner{width: 100%; padding: 20px 0;}
.top_link_img{width: 100%;}
.top_link_img img{width: 100%; height: auto; border-radius: 0;}
.top_link_btn a{padding: 8px 0;}

.top_other{flex-direction: row; width: 90%; max-width: 1200px; margin: 0 auto 50px;}
.top_otherbtn_txt02{font-size: 2rem;}

.top_bottom_bnr{margin-bottom: 50px; justify-content: center;}
.top_bottom_bnr_inner ul{display: flex; flex-direction: row; gap: 30px; width: 90%; max-width: 1300px; margin: 0 auto;}
.top_bottom_bnr_inner li{width: calc((100% - 90px)/4);}

/* バス送迎 */
.bus_table table{width: 100%!important;}
.page_sec p.bus_intorduce{text-align: center;}

.page_sec .bus_caution_handsup{flex-basis: initial!important; flex-grow: initial; width: 80%!important; max-width: 240px; margin: 0 auto 10px!important;}

/* 選ばれる理由 */
.reason_sec{width: 100%; margin: 0 auto;}
.reason_topic{margin-top: 20px;}
.reason_item_head01{border-radius: 10px;}
.reason_plan_list{flex-direction: row; gap: 40px; max-width: 1600px; margin: 50px auto 40px;}
.reason_plan_item{width: calc((100% - 80px)/2); padding: 80px 20px 50px;}
.reason_other_img{text-align: center;}
.reason_merit_list{flex-direction: row; flex-wrap: wrap; column-gap: 40px; width: 90%; max-width: 1600px;}
.reason_merit{width: calc((100% - 40px)/2); padding: 60px 40px 40px;}

.reason_trust_list{gap: 40px; flex-direction: row; flex-wrap: wrap;}
.reason_trust_list .reason_plan_item{width: calc((100% - 40px)/2); margin-bottom: 40px; padding: 80px 40px 50px;}
.reason_trust_list .reason_plan_item:first-child{width: 100%;}

.reason_merit_img_flex{flex-direction: row;}

.centeralignment{text-align: center;}
.top_reason_item_tit{margin-bottom: 15px;}

.reason_summary p{text-align: center;}

.reason_item03 .reason_questionnaire_inner{max-width: 1300px; max-height: 450px;}
.reason_trust_questionnaire li:first-child{top: 17%; left: 20%;}
.reason_trust_questionnaire li:nth-child(2){top: 28%; left: 32%;}
.reason_trust_questionnaire li:nth-child(3){top: 17%; left: 44%;}
.reason_trust_questionnaire li:nth-child(4){top: 21%; left: 56%;}
.reason_trust_questionnaire li:nth-child(5){top: 17%; left: 68%;}

.reason_sougei{flex-direction: row; max-width: 1600px;}
.reason_sougei_item{width: calc((100% - 30px)/2); padding: 30px 40px;}


/* 安心サポート */
.anshin_item_head .anshin_name{color: #D51919; font-size: 2.3rem; position: relative;}
.anshin_item_head .anshin_name::before{content: ""; padding: 4px; background-color: #D51919; border-radius: 100%; position: absolute; left: -15px; top: 14px;}



/* スクール紹介 */
.school_point_flex{flex-direction: row; }
.school_point_item{width: calc((100% - 40px)/2);}
.school_car_inner{max-width: 800px; margin: 0 auto; flex-direction: row;}

.school_equipment_list li{width: calc((100% - 60px)/4);}
.school_equipment_img img{width: 100%; height: auto;}
.school_course, .school_course_flex{ margin: 0 auto;}
/*
.school_course_flex_item,
.school_course_flex_item:first-child{width: calc((100% - 40px)/3);}
*/
.school_staff_list{gap: 30px;}
.school_staff_list li{width: calc((100% - 120px)/5); text-align: center;}
.school_staff_img img{width: 100%; height: auto;}

.recommend_point_detail{display: flex; gap: 30px; margin-bottom: 30px;}
.recommend_point_detail_inner{width: calc((100% - 30px)/2);}
.recommend_point_detail_inner:nth-child(2){flex-direction: row;}


/* キャンペーン情報 */
.campaign_sec{max-width: 800px;}
.campaign_list{gap: 30px;}
.campaign_item{width: calc((100% - 60px)/3);}

/* お知らせ */
.news_detail_sec{display: flex; gap: 50px;}
.detail_inner{width: 100%;}
.bottom_category{margin-top: 23px; flex-grow: 1;}

/* コラム */
.campaign_detail_inner
.column_detail_inner,{width: 100%;}

/* 卒業までの流れ */
.flow_list{display: flex; flex-direction: row; flex-wrap: wrap;}
.flow_list_item{width: calc((100% - 40px)/2);}
/*.flow_list_item:nth-child(5){width: 100%;}*/
.flow_other_list > .wp-block-group__inner-container{display: flex; gap: 20px;}

/* 入所案内 */
.guide_term{max-width: 1000px; margin: 0 auto;}
.guide_flex{flex-direction: row; margin-bottom: 30px; gap: 30px;}
.guide_flex_item{width: calc((100% - 30px)/2); flex-basis: initial!important; flex-grow: 0!important;}
.guide_preparation_list{flex-direction: row; gap: 30px; flex-wrap: wrap;}
.guide_preparation_item{width: calc((100% - 30px)/2);}

.guide_pay_flex{max-width: 600px; margin: 0 auto 30px;}
.guide_pay_list{display: flex; flex-direction: row; gap: 30px; flex-wrap: wrap;}
.guide_pay_list_item{width: calc((100% - 30px)/2);}

.guide_price_pdf{gap: 20px;}
.guide_price_pdf li{width: calc((100% - 20px)/2);}

/* 安全運転講習 */
.anzen_term{max-width: 800px; margin: 0 auto; padding: 50px 0 80px;}



/* 高齢者講習 */
.other_detail_flex{ flex-direction: row; margin: 0 auto 50px;}
.other_detail_term{max-width: 1000px;}
.other_detail_pay_topic{text-align: center;}
.application_flex{display: flex; flex-direction: row; gap: 30px; flex-wrap: wrap;}
.application_flex_item{width: calc((100% - 30px)/2);}

/* 料金 */
.price_navi_btn_wrapper{flex-direction: row; flex-wrap: wrap; max-width: 1000px; gap: 20px; margin: 0 auto 30px;}
.price_navi_btn{width: calc((100% - 40px)/3); margin: 0;}
.price_navi_btn a{font-size: 1.7rem;}
.price_topic p{text-align: left;}
.price_basic_price{gap: 50px;}
.condition_table th, 
.condition_table td{font-size: 1.8rem;}
.curriculum_table th, 
.curriculum_table td{font-size: 1.8rem;}

.price_available{text-align: center;}
.price_available > .wp-block-group__inner-container{text-align: left; display: inline-block;}
.available_list{font-size: 1.8rem;}
p.available_list_caution{font-size: 1.6rem;}
.available_list li::before{top: 10px;}
.available_list li li::before{top: 6px;}
.price_pay p{font-size: 1.8rem;}

.price_basic_list{flex-direction: row; justify-content: center; gap: 50px;}

.plan_prepare{justify-content: center; }

/* 在校生専用 */
.current_navi_btn{max-width: 800px; gap: 20px;}
.current_navi_btn li{width: calc((100% - 60px)/4);}
.current_calendar{max-width: 900px; margin: 0 auto;}
.current_calendar_btns{flex-direction: row;}

/* プラン紹介 */
.plan_introduce{flex-direction: row; gap: 30px; row-gap: 80px; margin-bottom: 80px;}
.plan_introduce_item{width: calc((100% - 30px)/2);}

.plan_worry_img{max-width: 360px; text-align: center; margin: 0 auto 20px;}
.plan_worry_btns{display: flex; flex-direction: row; gap: 20px;}
.plan_topic{text-align: center;}

/* プラン詳細 */
.plan_detail_topic p{text-align: center;}
.plan_detail_merit_btns{display: flex; flex-direction: row; align-items: flex-start; justify-content: center;}
.plan_detail_merit_btn{width: calc((100% - 30px)/3); justify-content: center;}

.plan_detail_topic_flex_img{max-width: 300px; margin: 0 auto!important;}






/* 高齢者講習 */

.senior_tab{ display: flex; flex-wrap: wrap; gap: 0 5px; max-width: 1000px; }
.senior_tab > label{ flex: 1 1; order: -1; opacity: .5; min-width: 195px; max-width: 195px; padding: .6em .2em; border-radius: 5px; border: 1px solid var(--dark-color); color: var(--dark-color); font-size: .8em; text-align: center; cursor: pointer; }
.senior_tab > label:hover{ opacity: .8; }
.senior_tab > label span{ font-size: 2rem; font-weight: bold; }
.senior_tab input{ display: none; }
.senior_tab > div{ display: none; width: 100%; padding: 1.5em 0; background-color: #fff; }
.senior_tab label:has(:checked){ opacity: 1; background-color: var(--dark-color); color: #fff; }
.senior_tab label:has(:checked) + div{ display: block; }

/* Mac対応 */
.senior_tab input[type="radio"] {
  display: none;
}
/* 全div（内容）の初期状態は非表示 */
.senior_tab label + div {
  display: none;
}

/* 選択されたラベルのスタイル（input:checked + label） */
.senior_tab input[type="radio"]:checked + label {
  background-color: var(--dark-color);
  color: #fff;
  opacity: 1;
}

/* 選択されたラベル直後のdivを表示（input:checked + label + div） */
.senior_tab input[type="radio"]:checked + label + div {
  display: block;
}

.senior_tab_time{ width: 240px; background-color: #eee; font-size: 2.2rem; font-weight: 500; padding: 10px; border-radius: 10px; margin: 0 auto; text-align: center; }

.senior_tab_list01{ display: flex; justify-content: center; margin-bottom: 60px; }
.senior_tab_item01{ flex-basis: 30%; align-items: center; margin: 0 1%; }
.senior_tab_item01_img01{ width: 70%; margin: 0 auto 20px auto;; }
.senior_tab_item01_img01 img{ width: 100%; height: auto; border-radius: 100%; object-fit: cover; }
.senior_tab_item01_txt01{ text-align: center; }
.senior_tab_item01_tit01{ font-size: 2.2rem; font-weight: 700; margin-bottom: 10px; }
.senior_tab_item01_detail01{ font-size: 1.8rem; }
.senior_tab_item01_detail01 span{ font-weight: bold; }


.senior_tab_list02{ width: 100%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.senior_tab_item02{ flex-basis: 48%; display: flex; align-items: center; margin-bottom: 30px; }
.senior_tab_item02_ico01{ flex-basis: 80px; width: 80px; height: 80px; background-color: #d1c13b; border-radius: 100%; text-align: center; margin-right: 10px; }
.senior_tab_item02_ico01 i{ font-size: 5rem; line-height: 80px; color: #fff; }
.senior_tab_item02_tit01{ flex-basis: 70%; font-size: 2rem; font-weight: 700; }


.senior_tab_list03{ margin-bottom: 60px; }
.senior_tab_item03{ position: relative; font-size: 1.8rem; padding-left: 30px; margin-bottom: 10px; }
.senior_tab_item03:before{ content: ""; display: block; position: absolute; left: 0; top: 7px; width: 15px; height: 15px; border-radius: 100%; background-color: #d1c13b; }

.senior_tab_sec{ display: flex; justify-content: space-between; }
.senior_tab_hagaki{ flex-basis: 26%; }
.senior_tab_hagaki img{ width: 100%; height: auto; }
.senior_tab_sec01{ flex-basis: 70%; }


/* 企業講習 */
.workshop_plan{text-align: center; max-width: 800px; margin: 40px auto 0;}
.workshop_term{max-width: 800px;}
.kousyuu_corporate_target_item{width: calc((100% - 60px)/4);}
.corporate_plan_tab{margin: 0 auto;}
.corporate_plan_tab > label{max-width: initial;}
.corporate_plan_tab_inner{padding: 30px 50px 50px!important;}
.corporate_plan_tab > label{border: 1px solid #288DCE; color: #288DCE;}
.corporate_plan_tab > label:hover{background-color: #288DCE; color: #fff;}
.corporate_plan_tab  label:has(:checked){background-color: #288DCE; color: #fff;}


/* アクセス */
.access_bus_flex{flex-direction: row-reverse;}
.access_way_flex{gap: 20px!important;}


/* 資料請求 */
.document_btn{width: calc((100% - 40px)/3); text-align: center;}

/* 卒業生の声 */
.satisfaction_flex{flex-direction: row;}
.impressions_list{display: flex; flex-direction: row; flex-wrap: wrap; gap: 30px; row-gap: 40px; max-width: 1000px; margin: 0 auto;}
.impression_item{width: calc((100% - 30px)/2);}

/* 採用情報 */
.recruit_topic .recruit_topic_table th,
.recruit_topic .recruit_topic_table td{display: initial; font-size: 1.8rem;}

/* 合宿ページ */
.camp_sec_head{text-align: center;}

}
/* ----------------------------------------------------------
 PC CSS END
---------------------------------------------------------- */
/* ----------------------------------------------------------
 PC WIDE CSS
---------------------------------------------------------- */
@media screen and (min-width:1371px){
/* フォントサイズ10px */
html{ font-size: 62.5%; height: 100%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem;  }

/* 非表示用 */
.nonePCWIDE		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{height: 80px;}
.header_sec{height: 80px;}
.header_logo01 img{width: 210px;}

.header_contact {width: 160px; text-align: center;}
.header_contact a{display: block; padding: 27px 0; background-color: var(--main-color); color: #fff; border: 1px solid var(--main-color); font-size: 1.6rem; font-weight: 700;}
.header_contact a:hover{color: var(--main-color); background-color: #fff; transition: .5s;}
.header_contact i{margin-right: 5px; font-size: 2rem; vertical-align: -2px; }
.header_current{width: 160px; text-align: center;}
.header_current a{display: block; padding: 27px 0; background-color: var(--student-color); color: #fff; border: 1px solid var(--student-color); font-size: 1.6rem; font-weight: 700;}
.header_current a:hover{color: var(--student-color); background-color: #fff; transition: .5s;}
.header_current i{margin-right: 5px; font-size: 2rem; vertical-align: -2px;}

    
/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
footer{padding-bottom: 20px;}
/* ページ下部 固定メニュー */
.btm_menu{ display: none; }




/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */



/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.pc_br{display: block;}
.wrapper{padding-top: 80px;}
.anchor02{ padding-top: 80px; margin-top: -80px; display: block; position: relative; z-index: -999;}

.top_main_bnr_inner{}
.top_access_sec{max-width: 1200px; width: 94%;}
.top_access_list{flex-direction: row; gap: 20px; justify-content: center;}
.top_access_list_item{width: calc((100% - 40px)/3);}

.top_contents_head{text-align: center;}

.top_post_sec{display: flex; flex-direction: row; gap: 50px;}
.top_post_item{width: calc((100% - 50px)/2);}
.top_reason_list{display: flex; flex-direction: row; justify-content: center;}
.top_reason_item{width: calc((100% - 80px)/3); display: flex; flex-direction: column; } 
.top_reason_item p{font-size: 1.6rem;}
.top_reason_btn{margin-top: auto;}

/* 別案 */
.top_reason_test .top_reason_sec{width: 90%;}

.top_price_wrapper{padding-bottom: 50px;}
.top_price_inner{display: flex; flex-wrap: wrap; gap: 30px; justify-content: center; padding: 20px 30px; flex-direction: row; margin-bottom: 15px; }
.top_price_inner_item{width: calc((100% - 50px)/2);}

.top_price_tab_list .top_price_tab_list_items{margin-bottom: 0; flex-wrap: nowrap;}
.top_price_tab_list{}
.top_price_info{border-radius: 0 ; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px;}
.top_price_tab_list label{border-radius: 0; border-top-left-radius: 10px; border-top-right-radius: 10px;}

.top_plan_wrapper{margin-bottom: 0;}
.top_plan_sec{}
.top_plan_inner{display: flex; flex-direction: row; row-gap: 60px;}
.top_plan_item{width: calc((100% - 30px)/2); }

.top_link{display: flex; flex-direction: row; gap: 30px; width: 90%; max-width: 1200px; margin: 0 auto; padding-bottom: 30px;}
.top_link_item, .top_link_item:nth-child(2n){flex-direction: column-reverse; width: calc((100% - 90px)/4);}
.top_link_item a{flex-direction: column-reverse;}
.top_link_item:nth-child(2n) a{flex-direction: column-reverse;}

.top_link_inner,
.camp_top_link .top_link_inner{width: 100%; padding: 20px 0;}
.top_link_img{width: 100%;}
.top_link_img img{width: 100%; height: auto; border-radius: 0;}
.top_link_item:nth-child(2n) .top_link_img img{border-radius: 0;}
.top_link_btn a{padding: 8px 0;}

.top_other{flex-direction: row; width: 90%; max-width: 1200px; margin: 0 auto 50px;}
.top_otherbtn_txt02{font-size: 2rem;}

.top_bottom_bnr{margin-bottom: 50px; justify-content: center;}
.top_bottom_bnr_inner ul{display: flex; flex-direction: row; gap: 30px; width: 90%; max-width: 1200px; margin: 0 auto;}
.top_bottom_bnr_inner li{width: calc((100% - 80px)/4);}

/* バス送迎 */
.page_sec p.bus_intorduce{text-align: center;}
.bus_table table{width: 100%!important;}

/* 選ばれる理由 */
.reason_sec{width: 100%; margin: 0 auto;}
.reason_topic{margin-top: 20px;}
.reason_item_head01{border-radius: 10px;}
.reason_plan_list{flex-direction: row; gap: 40px; max-width: 1600px; margin: 50px auto 40px;}
.reason_plan_item{width: calc((100% - 80px)/2); padding: 80px 20px 50px;}
.reason_other_img{text-align: center;}
.reason_merit_list{flex-direction: row; flex-wrap: wrap; column-gap: 40px; width: 90%; max-width: 1600px;}
.reason_merit{width: calc((100% - 40px)/2); padding: 60px 40px 40px;}

.reason_trust_list{gap: 40px; flex-direction: row; flex-wrap: wrap;}
.reason_trust_list .reason_plan_item{width: calc((100% - 40px)/2); margin-bottom: 40px; padding: 80px 40px 50px;}
.reason_trust_list .reason_plan_item:first-child{width: 100%;}

.reason_merit_img_flex{flex-direction: row;}

.centeralignment{text-align: center;}
.top_reason_item_tit{margin-bottom: 15px;}
.reason_summary p{text-align: center;}

.reason_item03 .reason_questionnaire_inner{max-width: 1300px; max-height: 450px;}
.reason_trust_questionnaire li:first-child{top: 17%; left: 20%;}
.reason_trust_questionnaire li:nth-child(2){top: 28%; left: 32%;}
.reason_trust_questionnaire li:nth-child(3){top: 17%; left: 44%;}
.reason_trust_questionnaire li:nth-child(4){top: 21%; left: 56%;}
.reason_trust_questionnaire li:nth-child(5){top: 17%; left: 68%;}

.page_sec .bus_caution_handsup{flex-basis: initial!important; flex-grow: initial; width: 80%!important; max-width: 240px; margin: 0 auto 10px!important;}

.reason_sougei{flex-direction: row; max-width: 1600px;}
.reason_sougei_item{width: calc((100% - 30px)/2); padding: 30px 40px;}

/* 安心サポート */
.anshin_item_head .anshin_name{color: #D51919; font-size: 2.3rem; position: relative;}
.anshin_item_head .anshin_name::before{content: ""; padding: 4px; background-color: #D51919; border-radius: 100%; position: absolute; left: -15px; top: 14px;}


/* スクール紹介 */
.school_point_flex{flex-direction: row; }
.school_point_item{width: calc((100% - 40px)/2);}
.school_car_inner{max-width: 800px; margin: 0 auto;}

.school_equipment_list li{width: calc((100% - 60px)/4);}
.school_equipment_img img{width: 100%; height: auto;}
.school_course, .school_course_flex{ margin: 0 auto;}
/*
.school_course_flex_item,
.school_course_flex_item:first-child{width: calc((100% - 40px)/3);}
*/
.school_staff_list{gap: 30px;}
.school_staff_list li{width: calc((100% - 120px)/5); text-align: center;}
.school_staff_img img{width: 100%; height: auto;}

.recommend_point_detail{display: flex; gap: 30px; margin-bottom: 30px;}
.recommend_point_detail_inner{width: calc((100% - 30px)/2);}
.recommend_point_detail_inner:nth-child(2){flex-direction: row;}


/* キャンペーン情報 */
.campaign_sec{max-width: 800px;}
.campaign_list{gap: 30px;}
.campaign_item{width: calc((100% - 60px)/3);}

/* お知らせ */
.news_detail_sec{display: flex; gap: 50px;}
.detail_inner{width: 100%;}
.bottom_category{margin-top: 23px; flex-grow: 1;}

/* コラム */
.campaign_detail_inner,
.column_detail_inner{width: 100%;}



/* 卒業までの流れ */
.flow_list{display: flex; flex-direction: row; flex-wrap: wrap;}
.flow_list_item{width: calc((100% - 40px)/2);}
/*.flow_list_item:nth-child(5){width: 100%;}*/
.flow_other_list > .wp-block-group__inner-container{display: flex; gap: 20px;}

/* 入所案内 */
.guide_term{max-width: 1000px; margin: 0 auto;}
.guide_flex{flex-direction: row; margin-bottom: 30px; gap: 30px;}
.guide_flex_item{width: calc((100% - 30px)/2); flex-basis: initial!important; flex-grow: 0!important;}
.guide_preparation_list{flex-direction: column; gap: 50px; flex-wrap: wrap;}
.guide_preparation_item{width: 100%; max-width: 800px; margin: 0 auto;}

.guide_pay_flex{max-width: 600px; margin: 0 auto 30px;}
.guide_pay_list{display: flex; flex-direction: row; gap: 30px; flex-wrap: wrap;}
.guide_pay_list_item{width: calc((100% - 30px)/2);}

.guide_price_pdf{gap: 20px;}
.guide_price_pdf li{width: calc((100% - 20px)/2);}


/* 安全運転講習 */
.anzen_term{max-width: 800px; margin: 0 auto; padding: 50px 0 80px;}


/* 高齢者講習 */
.other_detail_flex{ flex-direction: row; margin: 0 auto 50px;}
.other_detail_term{max-width: 1000px;}
.other_detail_pay_topic{text-align: center;}
.top_bottom_bnr_inner ul{display: flex; flex-direction: row; gap: 30px; width: 90%; max-width: 1300px; margin: 0 auto;}
.top_bottom_bnr_inner li{width: calc((100% - 90px)/4);}



/* 料金 */
.price_navi_btn_wrapper{flex-direction: row; flex-wrap: wrap; max-width: 1000px; gap: 20px; margin: 0 auto 30px;}
.price_navi_btn{width: calc((100% - 40px)/3); margin: 0;}
.price_navi_btn a{font-size: 1.7rem;}
.price_topic p{text-align: left;}
.price_basic_price{gap: 50px;}
.condition_table th, 
.condition_table td{font-size: 1.8rem;}
.curriculum_table th, 
.curriculum_table td{font-size: 1.8rem;}

.plan_prepare{display: flex; gap: 20px; justify-content: center;}


.price_available{text-align: center;}
.price_available > .wp-block-group__inner-container{text-align: left; display: inline-block;}
.available_list{font-size: 1.8rem;}
p.available_list_caution{font-size: 1.6rem;}
.available_list li::before{top: 10px;}
.price_pay p{font-size: 1.8rem;}

.price_basic_list{flex-direction: row; justify-content: center; gap: 50px;}

.price_topic_txt ul{max-width: 1080px; width: 90%; font-size: 1.6rem; display: block; margin: 0 auto;}


/* 在校生専用 */
.current_navi_btn{max-width: 800px; gap: 20px;}
.current_navi_btn li{width: calc((100% - 60px)/4);}
.current_calendar{max-width: 900px; margin: 0 auto;}
.current_calendar_btns{flex-direction: row;}

/* プラン紹介 */
.plan_introduce{flex-direction: row; gap: 30px; row-gap: 80px; margin-bottom: 80px;}
.plan_introduce_item{width: calc((100% - 30px)/2);}

.plan_worry_img{max-width: 360px; text-align: center; margin: 0 auto 20px;}
.plan_worry_btns{display: flex; flex-direction: row; gap: 20px;}
.plan_topic{text-align: center;}

/* プラン詳細 */
.plan_detail_topic p{}
.plan_detail_merit_btns{display: flex; flex-direction: row; align-items: flex-start; justify-content: center;}
.plan_detail_merit_btn{width: calc((100% - 30px)/3); justify-content: center;}

.plan_detail_topic_flex_img{max-width: 300px; margin: 0 auto!important;}





/* 高齢者講習 */

.senior_tab{ display: flex; flex-wrap: wrap; gap: 0 10px; max-width: 1200px; }
.senior_tab > label{ flex: 1 1; order: -1; opacity: .5; min-width: 220px; padding: .6em 1em; border-radius: 5px; border: 1px solid var(--dark-color); color: var(--dark-color); font-size: .9em; text-align: center; cursor: pointer; }
.senior_tab > label:hover{ opacity: .8; }
.senior_tab > label span{ font-size: 2rem; font-weight: bold; }
.senior_tab input{ display: none; }
.senior_tab > div{ display: none; width: 100%; padding: 1.5em 0; background-color: #fff; }
.senior_tab label:has(:checked){ opacity: 1; background-color: var(--dark-color); color: #fff;  }
.senior_tab label:has(:checked) + div{ display: block; }

/* Mac対応 */
.senior_tab input[type="radio"] {
  display: none;
}
/* 全div（内容）の初期状態は非表示 */
.senior_tab label + div {
  display: none;
}

/* 選択されたラベルのスタイル（input:checked + label） */
.senior_tab input[type="radio"]:checked + label {
  background-color: var(--dark-color);
  color: #fff;
  opacity: 1;
}

/* 選択されたラベル直後のdivを表示（input:checked + label + div） */
.senior_tab input[type="radio"]:checked + label + div {
  display: block;
}

.senior_tab_time{ width: 270px; background-color: #eee; font-size: 2.2rem; font-weight: 500; padding: 10px; border-radius: 10px; margin: 0 auto; text-align: center; }

.senior_tab_list01{ display: flex; justify-content: center; margin-bottom: 60px; }
.senior_tab_item01{ flex-basis: 30%; align-items: center; margin: 0 1%; }
.senior_tab_item01_img01{ width: 70%; margin: 0 auto 20px auto;; }
.senior_tab_item01_img01 img{ width: 100%; height: auto; border-radius: 100%; object-fit: cover; }
.senior_tab_item01_txt01{ text-align: center; }
.senior_tab_item01_tit01{ font-size: 2rem; font-weight: 700; margin-bottom: 10px; }
.senior_tab_item01_detail01{ font-size: 1.8rem; }
.senior_tab_item01_detail01 span{ font-weight: bold; }


.senior_tab_list02{ width: 100%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.senior_tab_item02{ flex-basis: 48%; display: flex; align-items: center; margin-bottom: 30px; }
.senior_tab_item02_ico01{ width: 80px; height: 80px; background-color: #d1c13b; border-radius: 100%; text-align: center; margin-right: 10px; }
.senior_tab_item02_ico01 i{ font-size: 5rem; line-height: 80px; color: #fff; }
.senior_tab_item02_tit01{ font-size: 2rem; font-weight: 700; }


.senior_tab_list03{ margin-bottom: 20px; }
.senior_tab_item03{ position: relative; font-size: 1.8rem; padding-left: 30px; margin-bottom: 10px; }
.senior_tab_item03:before{ content: ""; display: block; position: absolute; left: 0; top: 7px; width: 15px; height: 15px; border-radius: 100%; background-color: #d1c13b; }


.senior_tab_sec{ display: flex; justify-content: space-between; }
/*
.senior_tab_hagaki{ flex-basis: 30%; }
.senior_tab_sec01{ flex-basis: 70%; }
*/

/* 企業講習 */
.kousyuu_corporate_target_item{width: calc((100% - 60px)/4);}
.corporate_plan_tab_inner{padding: 30px 50px 50px!important;}
.workshop_plan{text-align: center; max-width: 800px; margin: 40px auto 0;}
.workshop_term{max-width: 800px;}
.corporate_plan_tab > label{border: 1px solid #288DCE; color: #288DCE;}
.corporate_plan_tab > label:hover{background-color: #288DCE; color: #fff;}
.corporate_plan_tab  label:has(:checked){background-color: #288DCE; color: #fff;}



/* アクセス */
.access_bus_flex{flex-direction: row-reverse;}
.access_way_flex{gap: 20px!important;}

/* 資料請求 */
.document_btn{width: calc((100% - 40px)/3); text-align: center;}

/* 卒業生の声 */
.satisfaction_flex{flex-direction: row;}
.impressions_list{display: flex; flex-direction: row; flex-wrap: wrap; gap: 30px; row-gap: 40px; max-width: 1000px; margin: 0 auto;}
.impression_item{width: calc((100% - 30px)/2);}

/* 合宿ページ */
.camp_sec_head{text-align: center;}


}
/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 PCWIDE CSS END
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
