.fadeIn { opacity: 0; transform: translate(0, 50%); transition: 1s;}
.fadeIn.is-show { transform: translate(0, 0); opacity: 1; }
@media only screen and (max-width:800px){
	#content{ padding-top: 65px; overflow-x:hidden!important;}
	body{overflow-x:hidden!important;}
}



/*=============================================
  TOPPAGE
=============================================*/
#toppage .inner {
    display: flex; flex-direction: column; gap:100px;
    margin: auto; padding:100px 0; width: 90%; max-width: 1320px;
}
#toppage img { width: 100%; height: auto;}
@media only screen and (max-width:768px){
    #toppage .inner { gap:80px; padding:80px 0;}
}
@media only screen and (max-width:468px){
    #toppage .inner { gap:60px; padding:60px 0;}
}



#toppage h3 {
    margin: auto; padding:100px 0 0; width: 90%; max-width: 1320px;
    font-weight: 600; letter-spacing: 5px;
}
#toppage .fs80 { font-size:clamp(40px, 6.5vw, 80px);}
#toppage .fs60 { font-size:clamp(35px, 4.5vw, 60px);}
#toppage .fs46 { font-size:clamp(33px, 4vw, 46px);}
#toppage .fs40 { font-size:clamp(30px, 3.5vw, 40px);}
#toppage .fs30 { font-size:clamp(24px, 3.6vw, 30px);}
#toppage .fs24 { font-size:clamp(20px, 2.2vw, 24px);}
#toppage .fs20 { font-size:clamp(18px, 2vw, 20px);}
#toppage .fs18 { font-size:112.5%;}
#toppage .fs16 { font-size:100%;}
#toppage .fs14 { font-size:87.5%;}
#toppage .fs12 { font-size:75%;}
#toppage .fcg { color:#10877F;}
#toppage .fce { color:#20B4A0;}
#toppage .fcy { color:#FFF003;}
#toppage .fcyg { color:#54BD70;}
#toppage .fcf { color:#FFFFFF;}
#toppage .center { text-align: center;}
@media only screen and (max-width:768px){
    #toppage h3 { padding:80px 0 0; letter-spacing:3px;}
}
@media only screen and (max-width:468px){
    #toppage h3 { padding:60px 0 0; letter-spacing:0;}
}



#toppage .bg_f { background-color:#FFFFFF !important;}
#toppage .bg_g { background-color:#018077 !important;}
#toppage .bg_e { background-color:#20B4A0 !important;}
#toppage .bg_yg { background-color:#54BD70 !important;}
#toppage .bg_le { background-color:#DFECDE !important;}
#toppage .bg_ly { background-color:#F8F8EA !important;}
@media only screen and (max-width:768px){
}



#toppage .b_more a {
    display: block;
    margin: auto;
    padding: 20px;
    width: 90%;
    max-width: 690px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    background:#018077 url("../img/winter/arrow1.webp") no-repeat 95% center;
    background-size: auto 45px;
    border-radius: 50px;
    box-shadow: 10px 10px 0px 0px rgba(0, 0, 0, 0.16);
}
#toppage .bc_g a { color: #ffffff; background-color:#018077;}
#toppage .bc_y a { color: #018077; background-color:#FFF003;}
@media only screen and (min-width:768px){
    #toppage .b_more a:hover { opacity: 0.7;}
}



#toppage .b_more2 a {
    display: block;
    padding: 0px 15px;
    color: #fff;
    text-decoration: none;
    background: url("../img/winter/arrow2.webp") no-repeat 96% center;
    background-size: 15px auto;
    border: 1px solid #fff;
    border-radius: 50px;
}
@media only screen and (min-width:768px){
    #toppage .b_more2 a:hover { opacity: 0.7;}
}



/*-----------------------------------------------------------------------------------
  MAINIMG
-----------------------------------------------------------------------------------*/
#toppage .mainimg { position: relative;}
#toppage .mini_search {
    position: absolute; bottom: 50px; right: 50px;
    padding: 30px;
    width: 350px;
    font-weight: 600;
    color: #018077;
    background: #fff;
    border-radius: 40px;
}
#toppage .mini_search .tit {
    margin-bottom: 20px;
    padding-bottom:30px;
    font-size: 137.5%;
    text-align: center;
    border-bottom: 2px solid #018077;
}
#toppage .mini_search dl { display: flex; flex-wrap: wrap; gap:20px; }
#toppage .mini_search dl dt { width: 50px; font-size: 87.5%;}
#toppage .mini_search dl dd {  width: calc(100% - 70px); font-size: 87.5%;}
#toppage .mini_search dl dd label { width: 100%;}
#toppage .mini_search dl dd select  { width:100%; background: #fff; border: 1px solid #ddd; border-radius: 5px;}
#toppage .mini_search .b_btn {
    cursor: pointer;
    display: block;
    margin-top: 20px;
    padding:5px 20px;
    width:100%;
    max-width: 300px;
    color: #018077;
    font-size:112.5%;
    font-weight: 600;
    background: #FFF003;
    border-radius: 50px;
    border: none;
}
@media only screen and (max-width:768px){
    #toppage .mini_search { display: none !important;}
}



/*-----------------------------------------------------------------------------------
  SCHEDULE
-----------------------------------------------------------------------------------*/
#toppage .schedule .inner { gap:50px; padding: 50px 0;}
#toppage .schedule .schedule_list { display: flex; gap:40px;}
#toppage .schedule p { width: calc(50% - 20px);}
@media only screen and (max-width:368px){
    #toppage .schedule .inner { padding: 30px 0;}
    #toppage .schedule .schedule_list { flex-direction: column;}
    #toppage .schedule p { width:100%;}
}


/*-----------------------------------------------------------------------------------
  ABOUT
-----------------------------------------------------------------------------------*/
#toppage .intro .box { display: flex; align-items: center; gap:60px;}
#toppage .intro .box .pic { width: 35%;}
#toppage .intro .box .pic img { width:200%; border-radius: 40px; aspect-ratio: 820 / 500;}
#toppage .intro .box .cont { width: calc(100% - 35% - 60px); display: flex; flex-direction: column; justify-content: flex-start; gap:40px;}
#toppage .intro .box .come { font-weight: 600; line-height: 250%;}
#toppage .intro .box .b_more a { margin: 0; width: 100% !important;}
@media only screen and (max-width:768px){
    #toppage .intro h2 { text-align: center;}
    #toppage .intro .box { flex-direction: column;}
    #toppage .intro .box .pic { width: 100%;}
    #toppage .intro .box .pic img { width:100%;}
    #toppage .intro .box .cont { width: 100%;}
    #toppage .intro .box .come { text-align: center; line-height: 200%;}
}
@media only screen and (max-width:468px){
    #toppage .intro .box .come { font-size: 100%;}
}



/*-----------------------------------------------------------------------------------
  POINT
-----------------------------------------------------------------------------------*/
#toppage .point .inner { padding-bottom: 0;}
#toppage .point .point_list { display: flex; flex-wrap: wrap; gap:60px;}
#toppage .point .box {
    position: relative;
    width: calc(50% - 30px);
    background-position: 91% center !important;
    background-size: 140px auto !important;
}
#toppage .point .box .tag {
    padding: 10px 20px;
    width: 240px;
    font-weight: 600;
    background: #F8F8EA;
}
#toppage .point .box .tag b { margin-left: 10px;}
#toppage .point .box .come { padding: 30px; color: #fff; font-weight: 600;}
#toppage .point .box .b_more2 { margin-top: 20px; width: 200px;;}
#toppage .point .point1 { background: url("../img/winter/point_icon1.webp") no-repeat;}
#toppage .point .point2 { background: url("../img/winter/point_icon2.webp") no-repeat;}
#toppage .point .point3 { background: url("../img/winter/point_icon3.webp") no-repeat;}
#toppage .point .point4 { background: url("../img/winter/point_icon4.webp") no-repeat;}
@media only screen and (max-width:768px){
    #toppage .point .point_list { flex-direction: column; gap:20px;}
    #toppage .point .box { width: 100%; padding-right: 200px;}
    #toppage .point .box .come br { display:none;}
}
@media only screen and (max-width:468px){
    #toppage .point .box { width: 100%; padding-right: 100px;}
    #toppage .point .box .come br { display:inline;}
}



/*-----------------------------------------------------------------------------------
  VOICE1
-----------------------------------------------------------------------------------*/
#toppage .voice1 .inner {gap:0; padding: 0;}
#toppage .voice1 h3 { margin: 0; width: 40%;}
#toppage .voice1 .voice_list { position: relative; min-height: 450px;}
#toppage .voice1 .voice_list p { 
    position: absolute;
    height: auto;
    font-weight: 600;
    text-align: center;
    background-size:100% 100% !important;
}
#toppage .voice1 .voice_list p:nth-child(1) {
    left:0; bottom: 0;
    padding-top: 5%;
    width:26%;
    background: url("../img/winter/voice1_bg1.webp") no-repeat;
    aspect-ratio: 724 / 583;
}
#toppage .voice1 .voice_list p:nth-child(2) {
    left:25%; top: 10%;
    padding-top: 6%;
    width:26%;
    background: url("../img/winter/voice1_bg2.webp") no-repeat;
    aspect-ratio: 728 / 660;
}
#toppage .voice1 .voice_list p:nth-child(3) {
    right:15%; top: -10%;
    padding-top: 2.5%;
    width:30%;
    background: url("../img/winter/voice1_bg3.webp") no-repeat;
    aspect-ratio: 818 / 526;
}
#toppage .voice1 .voice_list p:nth-child(4) {
    right: 0; bottom: 0;
    padding-top: 3.5%;
    width:30%;
    background: url("../img/winter/voice1_bg4.webp") no-repeat;
    aspect-ratio: 812 / 420;
}
@media only screen and (max-width:1208px){
    #toppage .voice1 .voice_list { min-height: 400px;}
    #toppage .voice1 .voice_list p { font-size: 87.5%; line-height: 150%;}
    #toppage .voice1 .voice_list p:nth-child(1) { left:0; bottom: 0; padding-top: 7%; width:32%;}
    #toppage .voice1 .voice_list p:nth-child(2) { left:28%; top: 10%; padding-top: 8%; width:32%}
    #toppage .voice1 .voice_list p:nth-child(3) { right:3%; top:-10%; padding-top: 3%; width:36%;}
    #toppage .voice1 .voice_list p:nth-child(4) { right: 0; bottom: 0; padding-top: 5%; width:36%;}
}
@media only screen and (max-width:768px){
    #toppage .voice1 .voice_list { min-height: 470px;}
    #toppage .voice1 .voice_list p { font-size: 80%; line-height: 150%;}
    #toppage .voice1 .voice_list p:nth-child(1) { left:0; bottom: 0; padding-top: 8%; width:40%;}
    #toppage .voice1 .voice_list p:nth-child(2) { left:15%; top: 10%; padding-top: 9%; width:40%}
    #toppage .voice1 .voice_list p:nth-child(3) { right:0; top:-5%; padding-top: 5%; width:47%;}
    #toppage .voice1 .voice_list p:nth-child(4) { right: 0; bottom: 0; padding-top: 7%; width:47%;}
}
@media only screen and (max-width:468px){
    #toppage .voice1 h3 { margin: 0 0 50px; width: 60%;}
    #toppage .voice1 .voice_list { margin: auto; width: 320px; height:690px;}
    #toppage .voice1 .voice_list p { width: 270px !important;}
    #toppage .voice1 .voice_list p:nth-child(1) { left:0; top: 0; bottom:inherit; padding-top:60px; width:280px;}
    #toppage .voice1 .voice_list p:nth-child(2) { left:inherit; right: 0; top:195px; padding-top:70px; width:280px;}
    #toppage .voice1 .voice_list p:nth-child(3) { left:0; right:inherit; top:400px; padding-top:25px; width:280px;}
    #toppage .voice1 .voice_list p:nth-child(4) { right: 0; bottom: 0; padding-top:35px; width:280px;}
}



/*-----------------------------------------------------------------------------------
  ARUKIKATA
-----------------------------------------------------------------------------------*/
#toppage .arukikata .inner { width: 100%; max-width: none;}
#toppage .arukikata .box {
    margin:  0 20px;
    padding: 30px 40px;
    width: 950px;
    background:#DEEBDE; 
    border-radius: 10px;
}
#toppage .arukikata .box.arukikata1 {border-left: 15px solid #018077;}
#toppage .arukikata .box.arukikata2 {border-left: 15px solid #54BD70;}
#toppage .arukikata .box.arukikata3 {border-left: 15px solid #20B4A0;}
#toppage .arukikata .box .come {
    display: flex; flex-wrap: wrap; gap:40px;
    padding-left: 200px;
    padding-bottom: 50px;
    background-size: 25% auto !important;
}
#toppage .arukikata .box.arukikata1 .come  { background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2025/09/aruki_pic1.webp") no-repeat; }
#toppage .arukikata .box.arukikata2 .come  { background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2025/09/aruki_pic2.webp") no-repeat; }
#toppage .arukikata .box.arukikata3 .come  { background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2025/09/aruki_pic3.webp") no-repeat; }
#toppage .arukikata .box .come p {
    position: relative;
    display: flex; flex-direction: column; justify-content: center;
    padding:0 20px;
    width: calc(50% - 20px);
    min-height: 120px;
    text-align: center;
    color: #018077;
    font-weight: 500;
    border-radius: 10px;
    background: #fff;
}
#toppage .arukikata .box .come p.bg_g,
#toppage .arukikata .box .come p.bg_e,
#toppage .arukikata .box .come p.bg_yg { color: #fff;}
#toppage .arukikata .box p::before {
    position: absolute; top: 0; bottom: 0; right: -13px;
    display: block; clear: both; content:"";
    margin: auto;
    width: 0; height: 0;
    border-style: solid;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 15px solid #fff;
    border-right: 0;
}
#toppage .arukikata .box p.bg_f::before { border-left-color:#FFFFFF !important;}
#toppage .arukikata .box p.bg_g::before { border-left-color:#018077 !important;}
#toppage .arukikata .box p.bg_e::before { border-left-color:#20B4A0 !important;}
#toppage .arukikata .box p.bg_yg::before { border-left-color:#54BD70 !important;}
@media only screen and (max-width:968px){
    #toppage .arukikata .box { margin:  0 10px; width:650px;}
    #toppage .arukikata .box .come { flex-direction: column; gap:15px;}
    #toppage .arukikata .box .come p { width: 100%; min-height: 120px;}
}
@media only screen and (max-width:768px){
    #toppage .arukikata .box { margin: 0 5px; padding: 40px 20px 30px; width:300px;}
    #toppage .arukikata .box.arukikata1 { border-left: 5px solid #018077;}
    #toppage .arukikata .box.arukikata2 { border-left: 5px solid #54BD70;}
    #toppage .arukikata .box.arukikata3 { border-left: 5px solid #20B4A0;}
    #toppage .arukikata .box .case { text-align: center;}
    #toppage .arukikata .box .case small { font-size: 100%;}
    #toppage .arukikata .box .come {
        flex-direction: column; gap:15px;
        padding: 150px 0 0;
        line-height: 130%;
        background-size: auto 130px !important;
        background-position: center top !important;
    }
    #toppage .arukikata .box .come p { width: 100%; min-height: 100px;}
}



/*-----------------------------------------------------------------------------------
  KIGHO SLIDE
-----------------------------------------------------------------------------------*/
#toppage .kigyos .inner { width: 100%; max-width: none;}
#toppage .kigyos .box {
    display: flex; flex-direction: column; gap:30px;
    margin:  0 20px;
    width: 370px; height: 500px !important;
    padding: 30px;
    background: #fff;
    border-radius: 10px;
}
#toppage .kigyos .box .pic { width: 100%; height: auto; aspect-ratio: 6 / 4; display:flex; flex-direction: column; justify-content: center; align-items:center;}
#toppage .kigyos .box .pic img { width: auto; height: auto; max-width: 100%; max-height:100%;}
#toppage .kigyos .box .cont {
    display: flex; flex-direction: column; gap:20px;
    text-align: center;
}
@media only screen and (max-width:768px){
    #toppage .kigyos .box { margin:  0 10px; width: 300px;}
}
@media only screen and (max-width:468px){
    #toppage .kigyos h3 { text-align: center;}
    #toppage .kigyos .box { margin:  0 10px; width: 300px;}
}



/*-----------------------------------------------------------------------------------
  SHIRU
-----------------------------------------------------------------------------------*/
#toppage .shiru .shiru_list { display: flex; flex-direction: column; align-items: flex-end; gap:80px; }
#toppage .shiru .box {
    position: relative;
    display: flex; flex-direction:row-reverse;
    padding: 40px;
    max-width: 900px;
    border-radius: 40px;
}
#toppage .shiru .box .pic { width: 40%;}
#toppage .shiru .box .pic img { width: 100%; height: auto; aspect-ratio: 3 / 5; object-fit: cover;}
#toppage .shiru .box .cont {
    display: flex; flex-direction: column; gap:50px;
    padding: 90px 80px 0 50px;
    width: 70%;
}
#toppage .shiru .box .come {
    padding: 20px 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
#toppage .shiru .box::before {
    position: absolute; top: -40px; left: -40px;
    display: block; clear:both; content:"";
    width: 160px; height:auto;
    aspect-ratio: 1 / 1; 
    border: 10px solid #F8F8EA;
    background-size: 90% auto !important;
    border-radius: 160px;
}
#toppage .shiru .shiru1:before { background: #20B4A0 url("../img/winter/shiru_icon1.webp") no-repeat center center; }
#toppage .shiru .shiru2:before { background: #54BD70 url("../img/winter/shiru_icon2.webp") no-repeat center center; }
#toppage .shiru .shiru3:before { background: #20B4A0 url("../img/winter/shiru_icon3.webp") no-repeat center center; }
#toppage .shiru .shiru3 .come { border-top: 1px solid #20B4A0; border-bottom: 1px solid #20B4A0;}
@media only screen and (max-width:768px){
    #toppage .shiru .shiru_list { gap:60px; }
    #toppage .shiru .box::before {  left: -3%; width: 100px; border: 5px solid #F8F8EA; }
    #toppage .shiru .box .cont { gap:30px; padding: 40px 40px 0 0; width: 70%;}
}
@media only screen and (max-width:468px){
    #toppage .shiru h3 { text-align: center;}
    #toppage .shiru .shiru_list { gap:40px; }
    #toppage .shiru .box { flex-direction: column;}
    #toppage .shiru .box .pic { width: 100%;}
    #toppage .shiru .box .pic img { aspect-ratio: 6 / 4;}
    #toppage .shiru .box .cont { gap:20px; padding: 30px 0 0;  width: 100%; }
    #toppage .shiru .box .cont h4,
    #toppage .shiru .box .cont h5 { text-align: center;}
    #toppage .shiru .box .cont .come { font-size: 100%; line-height: 130%;}
    #toppage .shiru .box::before {  top: -3%;}
}

#toppage .shiru .time {
	display: block;
	margin-top: 10px;
	padding: 5px 10px;
	font-size: 24px;
	font-weight: 900;
	color: #FFF003;
	line-height: 24px;
	border: 2px solid #FFF003;
}
#toppage .shiru .time span:nth-child(2)::before { content:"/"; padding: 0 5px;} 
@media only screen and (max-width:768px){
	#toppage .shiru .time { font-size: 20px;}
}
@media only screen and (max-width:468px){
	#toppage .shiru .time { font-size: 16px;}
}



/*-----------------------------------------------------------------------------------
  SOUDAN
-----------------------------------------------------------------------------------*/
#toppage .soudan .soudan_list { display: flex; gap:40px;}
#toppage .soudan .box {
    width:calc(33.3% - 26.66px);
    background: #fff;
    border-radius:10px;
}
#toppage .soudan .box .cont {
    display: flex; flex-direction: column; gap:30px;
    padding: 30px;
    font-weight: 500;
    text-align: center;
}
#toppage .soudan .box h4 { padding-bottom:30px;border-bottom: 3px solid #20B4A0;}
@media only screen and (max-width:768px){
    #toppage .soudan .soudan_list { flex-direction: column;} 
    #toppage .soudan .box { display: flex; gap:0; width: 100%;}
    #toppage .soudan .box .pic { width: 45%;}
    #toppage .soudan .box .cont { width: 55%; padding: 30px; gap:10px;}
    #toppage .soudan .box h4 { margin-bottom: 10px; padding-bottom:15px; text-align: left;}
    #toppage .soudan .box .come1 { font-size: 100%;  text-align:left; line-height: 130%;}
    #toppage .soudan .box .come2 { font-size: 87.5%;  text-align:left; line-height: 130%;}
}
@media only screen and (max-width:468px){
    #toppage .soudan .box { flex-direction: column;}
    #toppage .soudan .box .pic,
    #toppage .soudan .box .cont { width:100%;}
}



/*-----------------------------------------------------------------------------------
  KIGYO
-----------------------------------------------------------------------------------*/
#toppage .kigyo .kigyo_list { display: flex; flex-wrap: wrap; gap:20px 40px;}
#toppage .kigyo .kigyo_list p { display: flex; gap:10px; width: calc( 33.3% - 26.66px);}
#toppage .kigyo .kigyo_list p a { padding-bottom: 10px; font-size: 112.5%; line-height: 1.2; color: #10877F; text-decoration: none;}
#toppage .kigyo .kigyo_list .kaijyo { min-width: 85px; overflow: hidden;}
#toppage .kigyo .kigyo_list .kaijyo img + img { margin-left: 5px;}
#toppage .kigyo .kigyo_list .kaijyo img { float: left; width: auto; height:26px;}
@media only screen and (min-width:768px){
    #toppage .kigyo .kigyo_list p a:hover { text-decoration: underline;}
}
@media only screen and (max-width:768px){
    #toppage .kigyo .kigyo_list p { width: calc( 50% - 20px);}
	#toppage .kigyo .kigyo_list p a { font-size: 100%;}
}
@media only screen and (max-width:468px){
    #toppage .kigyo .kigyo_list p { width: 100%;}
}



/*-----------------------------------------------------------------------------------
  TOKUTEN
-----------------------------------------------------------------------------------*/
#toppage .tokuten { padding: 100px 0;}
#toppage .tokuten .inner { 
    position: relative;
    display: flex; flex-direction: column; gap:100px;
    background: linear-gradient(#54BD70, #018077);
    border-radius: 40px;
}
#toppage .tokuten h3 { position: absolute; top: -30px; left: 0; right: 0; margin: auto; padding: 0; text-align: center;}
#toppage .tokuten h3 img { max-width: 500px;}
#toppage .tokuten .tokuten_list {
    display: flex; gap:40px;
    margin: auto; width: 90%;
}
#toppage .tokuten .cont_l  { width: calc(43% - 20px); }
#toppage .tokuten .cont_r { width: calc(57% - 20px); }
#toppage .tokuten .cont_r { display: flex; flex-direction: column; gap:20px; }
#toppage .tokuten .box {
    display: flex; flex-direction: column; justify-content: center;
    height: 100%;
    padding: 10% 5%;
    color: #10877F;
    background: #fff;
    border-radius: 40px;
}
#toppage .tokuten .box h4 { font-weight: 600; text-align: center;}
#toppage .tokuten .box h4 span {
    line-height: 150%;
    background: url("../img/winter/txt_line.jpg") repeat-x left bottom;
    background-size: auto 25px;
}
#toppage .tokuten .box h5 {
    margin-bottom: 30px;
    padding: 30px 0;
    text-align: center;
    border-bottom: 1px solid #ddd;
}
#toppage .tokuten .box .come1 { line-height: 130%;}
#toppage .tokuten .box.row {
    flex-direction: row; flex-wrap: wrap; align-items: center; gap:20px;
}
#toppage .tokuten .box.row h4 { width: 220px;}
#toppage .tokuten .box.row .come2 { width: calc(100% - 220px - 20px);}
@media only screen and (max-width:768px){
    #toppage .tokuten { padding: 80px 0;}
    #toppage .tokuten h3 { top: -25px;}
    #toppage .tokuten h3 img { max-width:330px;}
    #toppage .tokuten .tokuten_list { flex-direction: column; gap:20px;}
    #toppage .tokuten .cont_l,
    #toppage .tokuten .cont_r { width:100%;}
    #toppage .tokuten .box.row { flex-direction: column;}
    #toppage .tokuten .box.row h4,
    #toppage .tokuten .box.row .come2 { width:100%;}
}
@media only screen and (max-width:468px){
    #toppage .tokuten { padding: 60px 0;}
    #toppage .tokuten .inner { border-radius: 20px; }
    #toppage .tokuten h3 { top: -20px;}
    #toppage .tokuten h3 img { max-width:280px;}
    #toppage .tokuten .box { border-radius: 20px; }
}



/*-----------------------------------------------------------------------------------
  VOICE2
-----------------------------------------------------------------------------------*/
#toppage .voice2 h3 {
    padding:75px 0;
    text-align: left;
    background: url("../img/winter/voice2_tit.webp") no-repeat;
     background-size: auto 100%;
}
#toppage .voice2 .box { display: flex; flex-wrap: wrap; justify-content: space-between; gap:60px;}
#toppage .voice2 .box.voice1 { flex-direction: row-reverse;}
#toppage .voice2 .box.voice2 { flex-direction: row;}
#toppage .voice2 .profile { 
    position: relative;
    display: flex; flex-direction: column; gap:20px;
    width:calc(45% - 60px); max-width: 500px;
    padding-top: 150px;
}
#toppage .voice2 .profile .mid {
    position: absolute; top: -30px; right: 0;
    width: 60%;
}
#toppage .voice2 .profile .come p:nth-child(1) { margin-bottom: 20px;}
#toppage .voice2 .qa {
    width: 55%;
    display: flex; flex-direction: column; gap:60px;
}
#toppage .voice2 .qa dl { display: flex; flex-direction: column; gap:30px; font-weight: 500; }
#toppage .voice2 .qa dl dt:before { content:"ー";}
@media only screen and (max-width:768px){
    #toppage .voice2 h3 { padding:40px 0;}
    #toppage .voice2 .box { flex-direction: column; gap:40px;}
    #toppage .voice2 .profile,
    #toppage .voice2 .qa { width: 100%; max-width: none;}
    #toppage .voice2 .profile { flex-direction: row; align-items: center; gap:50px; padding: 0;}
    #toppage .voice2 .profile .pic { width: 200px;}
    #toppage .voice2 .profile .come { width:calc(100% - 200px - 50px);}
    #toppage .voice2 .profile .mid { left: 100px; right: 0; width: 130px;}
}
@media only screen and (max-width:468px){
    #toppage .voice2 .profile { display: block; width: 100%;}
    #toppage .voice2 .profile .pic { width:150px;}
    #toppage .voice2 .profile .come { width:100%;}
    #toppage .voice2 .profile .come p:nth-child(1) { margin-bottom: 5px;}
    #toppage .voice2 .profile .come p { font-size: 87.5%; line-height: 150%;}
    #toppage .voice2 .profile .mid { top:0; left: 150px; right: 0; width:120px;}
}



/*-----------------------------------------------------------------------------------
  FAQ
-----------------------------------------------------------------------------------*/
#toppage .faq .faq_list {
    display: flex; flex-wrap: wrap; flex-direction: column; gap:40px;
    margin: auto; max-width: 800px;
}
#toppage .faq dl { color: #fff;}
#toppage .faq dt { padding-right: 50px;}
#toppage .faq dt {
    cursor: pointer;
    position: relative;
    min-height: 35px;
    font-weight:500;
    line-height: 130%;
}
#toppage .faq dd {
	display: none;
    line-height: 180%;
}
#toppage .faq dt.active { background:url("../img/accordion_on.png") no-repeat right top; background-size: 35px auto;}
#toppage .faq dt { background: url("../img/accordion_off.png") no-repeat right top; background-size: 35px auto;}
#toppage .faq dd .comment { padding-top: 20px;}
@media only screen and (max-width:768px){
    #toppage .faq dt { font-size: 137%;}
    #toppage .faq dd { font-size:100%;}
}



/*-----------------------------------------------------------------------------------
  ABOUT
-----------------------------------------------------------------------------------*/
#toppage .about .about_list { border-top: 1px solid #018077;}
#toppage .about dl {
    display: flex; align-items: center;
    padding: 10px;
    border-bottom: 1px solid #018077;
}
#toppage .about dt { width: 200px; text-align: center;}
#toppage .about dd { width: calc(100% - 200px);}
@media only screen and (max-width:768px){
}
@media only screen and (max-width:468px){
    #toppage .about dl { flex-direction: column; gap:10px;}
    #toppage .about dt,
    #toppage .about dd { width:100%;}
    #toppage .about dt { text-align: left; font-weight: 600;}
    #toppage .about dd { font-size: 87.5%; line-height: 150%;}
}



/*-----------------------------------------------------------------------------------
  Access
-----------------------------------------------------------------------------------*/
#toppage .map .box { display: flex; flex-wrap: wrap; gap:40px;}
#toppage .map .box .pic { width: 40%;}
#toppage .map .box .pic iframe { width: 100%; height: auto; aspect-ratio: 6 / 5;}
#toppage .map .box .cont {
    position: relative;
    display: flex; flex-direction: column; gap:20px;
    padding: 80px 0 0 30px;
    width: calc( 100% - 40% - 40px);
    font-weight: 500;
}
#toppage .map .box .area {
    position: absolute; top: -30px; left:0;
    display: inline-block;
    padding:20px 30px;
    color: #fff;
    background: #018077;
}
#toppage .map .box .come { line-height: 150%;}
#toppage .map ul.gallery { display: flex; flex-wrap: wrap; gap:40px;}
#toppage .map ul.gallery li { width:calc(33.3% - 26.66px);}
@media only screen and (max-width:768px){
    #toppage .map .box { gap:30px;}
    #toppage .map .box .cont { gap:10px; padding: 60px 0 0 0;}
    #toppage .map .box .area { padding: 15px 20px;}
    #toppage .map ul.gallery { gap:20px;}
    #toppage .map ul.gallery li { width:calc(33.3% - 13.33px);}
}
@media only screen and (max-width:468px){
    #toppage .map .box { flex-direction: column; gap:20px;}
    #toppage .map .box .pic,
    #toppage .map .box .cont { width: 100%;}
    #toppage .map .box .cont { gap:5px; padding:0;}
    #toppage .map .box .area { position:static; margin-bottom: 20px; padding: 10px 15px; text-align: center;}
    #toppage .map ul.gallery { gap:10px;}
    #toppage .map ul.gallery li { width:calc(50% - 5px);}
}



/*-----------------------------------------------------------------------------------
  BANNER
-----------------------------------------------------------------------------------*/
#toppage .banner .inner { flex-direction: row; gap:8.3%; text-align: center; }
#toppage .banner p { margin:auto; width:calc(50% - 4.15%);}
@media only screen and (max-width:768px){
    #toppage .banner .inner { gap:40px;}
    #toppage .banner p { width:calc(50% - 20px);}
}
@media only screen and (max-width:468px){
    #toppage .banner .inner { flex-direction: column; gap:20px;}
    #toppage .banner p { width:100%;}
}