@charset "utf-8";
/* Copyright 2024 design hack. */

/* ------------------------------------------------------------
サイト共通設定
------------------------------------------------------------ */
/* デフォルト文字設定 */
body{color:#333333;background: #FFFFFF; font-family:'Noto Sans JP','Helvetica Neue','Helvetica','Arial',sans-serif;font-weight: 500; font-size:16px;line-height:2.0;letter-spacing: 0.05em;}
main{display:block;}
@media print, screen and (max-width: 767px){body{font-size:15px;}}
/* デフォルトリンク色の設定 */
a{text-decoration:none;outline: none;-webkit-transition: color 0.3s;transition: color 0.3s;}
/* 青いの消す */
*:focus {outline: none;}
/*	clearfix */
.clearfix:after{/*for modern browser*/  content: "";  display:block;  clear:both;}
.clearfix{ *zoom:1; } /*for IE6,IE7*/
p#browser{padding:10px 0;background:#000;color:#FFF;text-align:center;}
p#browser span{font-size:86%;}
img {vertical-align:top;}
h2,h3{font-weight: 400;}


/* ------------------------------------------------------------

レイアウト

------------------------------------------------------------ */
/* ----------------------------------------------
ヘッダー
---------------------------------------------- */
header{background: #FFFFFF;}
div#wrap_h1{width:100%;text-align: right;padding:10px 20px 0 0;}
h1{line-height: 1.0;color: #808080;font-size: 12px;font-weight: normal;}

div#wrap_header{width:100%;height:110px;position:relative;letter-spacing: 0.1em;font-weight: 500;line-height: 1.0;}
p#pc_logo{position:absolute;left:20px;top:30px;}
p#pc_logo img{width:180px;height:42px; }
p#pc_logo a:hover{opacity:0.7;transition: 0.3s;}

/* グローバルナビゲーション */
nav#wrap_nav_main{position:absolute;right:210px;top:50px;}
nav#wrap_nav_main ul#nav_main {font-size: 0;}
nav#wrap_nav_main ul#nav_main li{display: inline-block;font-size: 14px;margin-right: 40px;font-weight: 700;}
nav#wrap_nav_main ul#nav_main li a{color: #333333;display:block;}
nav#wrap_nav_main ul#nav_main li:hover,nav#wrap_nav_main ul#nav_main li a:hover{color:#47B156; transition: 0.3s;}
nav#wrap_nav_main ul#nav_main li:first-child{background:url(/common/img/ico_plus.png) no-repeat right 0.2em;background-size: 10px 10px; padding-right:20px;}
nav#wrap_nav_main ul#nav_main li:last-child{margin-right: 0;}

p#hdr_contact{position:absolute;right:20px;top:30px;background: #F19121;width:160px;height: 50px; padding: 17px 0 19px;text-align: center;border-radius: 25px;font-size: 16px;font-weight: 600;}
p#hdr_contact:hover{background: #ED6819; transition: 0.3s;}
p#hdr_contact a{color: #FFFFFF;}

nav#wrap_nav_main ul#nav_main li ul.nav_sub{display:none;}
nav#wrap_nav_main ul#nav_main li ul.nav_sub{position:absolute;top:34px;left: -50px;width:210px;background:#FFFFFF;padding:20px 0 20px 20px;}
nav#wrap_nav_main ul#nav_main li ul.nav_sub li{margin: 0 0 20px 0;font-size: 13px;letter-spacing: 0;display: block;}
nav#wrap_nav_main ul#nav_main li ul.nav_sub li a{color: #808080;font-weight: 500;}
nav#wrap_nav_main ul#nav_main li ul.nav_sub li a:hover{color: #008943;transition: 0.3s;}
nav#wrap_nav_main ul#nav_main li ul.nav_sub li:first-child{background:none;}
nav#wrap_nav_main ul#nav_main li ul.nav_sub li:last-child{margin: 0 0 0 0;}

p#hdr_reserve a{position:absolute;right:20px;top:50px;color: #FFFFFF;background: #389445;width:140px;height: 50px; padding: 17px 0 19px;text-align: center;font-size: 20px;}
p#hdr_reserve a:hover{background: #38B645; transition: 0.3s;}

div#sp_nav{display: none;}

@media print, screen and (min-width: 1230px){.global_nav{display: none;}}
/* ----------------------------------------------
device
---------------------------------------------- */
@media print, screen and (max-width:1230px){
div#pc_nav{display: none;}
div#sp_nav{display: block;} 
/* ----header---- */
/*--h1--*/ 
h1{position:absolute;top: 5px;right: 5px;font-size: 10px;}

header{width:100%;height:65px;position:fixed;top:0;left:0;z-index:8888;}
#header_fixed{width:100%;height:65px;position:relative;z-index:9999;}
div#wrap_h1{width:100%;padding:0;}
p#sp_logo{position:absolute;left:20px;top:20px;}
p#sp_logo img{width:150px;height:35px;}
p#sp_logo a{display:block;}
    
/*--menu button--*/
.toggle {position: fixed;display: block;right: 20px;top: 30px;width: 25px;height: 19px;cursor: pointer;}
.toggle span {display: block;position: absolute;width: 100%;background-color: #008943; /* 線色 */content: "";display: block;height: 3px;-webkit-transition: .35s ease-in-out;-moz-transition: .35s ease-in-out;transition: .35s ease-in-out;}
.toggle span:nth-child(1) {top: 0px;}
.toggle span:nth-child(2) {top: 8px;}
.toggle span:nth-child(3) {top: 16px;}
.toggle.active span:nth-child(1) {top: 10px;left: 0;-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);transform: rotate(-45deg);}
.toggle.active span:nth-child(2),.toggle.active span:nth-child(3) {top: 10px;-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);transform: rotate(45deg);}

/* .global_nav */
.global_nav {position: fixed;top: 0;left: 0;width: 100%;height:100%;transform: translateY(-100%);z-index: 110;padding-top: 65px;text-align: left;transition: all 0.8s;font-weight: bold;line-height: 1.0;}
#nav_inner{font-size: 17px;padding: 0 20px;background: #F4F4F4;}
#nav_inner p{margin-bottom: 0;}
.global_nav.active {transform: translateY(0%);}
.global_nav ul{}
.global_nav ul li {padding: 30px 0;border-bottom: 1px solid #CCCCCC;}
.global_nav ul li a{display:block;color:#333333;text-decoration: none;}
.global_nav ul li:last-child{border-bottom:none;}

.global_nav p.navi span#g_nav01,.global_nav p.navi span#g_nav02{display:block;padding: 30px 0;border-bottom: 1px solid #CCCCCC;color:#333333;}
.global_nav span#g_nav01,.global_nav span#g_nav02{background:#F4F4F4 url(/common/img/navi_open.png) no-repeat right center;background-size:15px 15px;}
.global_nav p.navi.active span#g_nav01,.global_nav p.navi.active span#g_nav02{background:#F4F4F4 url(/common/img/navi_close.png) no-repeat right center;background-size:15px 15px;}

.global_nav p.navi + ul{display:none;padding: 30px 0 0 0;border-bottom: 1px solid #CCCCCC;}
.global_nav p.navi + ul > li{border-bottom:none;padding: 0; background:#F4F4F4;font-size: 15px;margin: 0 0 30px 0;}
.global_nav p.navi + ul > li > a{display: block;color: #808080;}
.global_nav p.navi + ul > li::after{background:none !important;}
}

/* フッター
---------------------------------------------- */
/* ページトップ
---------------------------------------------- */
ul#float_button{position:fixed;right:20px;bottom:20px;z-index: 100;}
@media print, screen and (max-width: 767px){
ul#float_button{position:fixed;right:auto;top:auto;left:0;bottom:0;z-index: 100;}
}

/* CONTACT
---------------------------------------------- */
section#ftr_contact{background:#00682C;padding: 100px 20px 95px;color: #FFFFFF;}
section#ftr_contact h2{font-size: 50px;text-align: center;font-weight: 500;font-family: "Rubik", sans-serif;letter-spacing: 0.1em;line-height: 1.0;margin: -6px 0 30px;}
div#ftr_contact_wrap{margin: 0 auto;width: 100%; max-width:1000px;overflow: hidden;}
div#ftr_contact_txt{float: left;width: 58.333%;}
section#ftr_contact h3{font-size: 24px;font-weight: 500;letter-spacing: 0.1em;line-height: 1.0;margin: -2px 0 19px; position: relative;padding:0 0 0 20px;}
section#ftr_contact h3:before {position: absolute;top: calc(50% - 5px);left: 0;width: 10px;height: 10px;content: '';border-radius: 50%;background: #fff;}
div#ftr_contact_btn{font-size: 26px;width: 35.417%; float: right;font-family: "Rubik", sans-serif;letter-spacing: 0.1em;font-weight: 500;}
div#ftr_contact_btn a{color: #F19121;background:url(/common/img/arw_org.png) no-repeat right center;background-size: 100px 100px;padding: 25px 140px 25px 0;display: block;}
div#ftr_contact_btn a:hover{color: #FFFFFF;background:url(/common/img/arw_wht.png) no-repeat right center;background-size: 100px 100px;padding: 25px 130px 25px 0;transition: 0.3s;}

/* footer navi --------------*/
footer div#ftr_wrap{position: relative;width: 100%;height: 350px;font-size: 14px;line-height: 1.0;}
footer h2#ftr_logo{position: absolute;left: 20px;top: 80px;}
footer h2#ftr_logo img{width: 180px;height: 42px;}

footer p#ftr_add{position: absolute;left: 20px;top: 142px;line-height: 2.0;}

footer ul.ftr_nav{color: #333333;font-weight: 800;}
footer ul.ftr_nav li{margin-bottom: 30px;}
footer ul.ftr_nav li a:hover,footer ul#ftr_list01 li a:hover{color: #47B156;}

footer ul#ftr_list01{position: absolute;right:360px;top: 80px;}
footer ul#ftr_list02{position: absolute;right: 166px;top: 80px;}
footer ul#ftr_list03{position: absolute;right: 20px;top: 80px;}

footer ul#ftr_list01 li{margin: 0 0 20px 0;}
footer ul#ftr_list01 li a{color: #808080;font-weight: 500;font-size: 13px;}

footer p#small{position: absolute;right: 20px;bottom: 60px;line-height: 1.0;font-size: 12px;color: #808080;}

@media print, screen and (max-width: 1240px){
footer ul.ftr_nav{display: none;}
    
div#ftr_contact_btn{width: 32%;}
div#ftr_contact_btn a{padding: 0 140px 0 0;}
div#ftr_contact_btn a:hover{padding: 0 140px 0 0;}
}

@media print, screen and (max-width: 767px){
section#ftr_contact{padding: 60px 20px 60px;}
section#ftr_contact h2{margin: -7px 0 32px;}
div#ftr_contact_wrap{margin: 0;max-width:100%;overflow: visible;}
div#ftr_contact_txt{float: none;width: 100%;margin-bottom: 40px;}
section#ftr_contact h3{font-size: 20px;margin: -2px 0 17px;}
div#ftr_contact_btn{font-size: 20px;float: none;width: 257px;max-width: 100%;}
div#ftr_contact_btn a{background:url(/common/img/arw_org.png) no-repeat right center;background-size: 70px 70px;padding: 15px 100px 15px 0;display:block;}
div#ftr_contact_btn a:hover{background:url(/common/img/arw_wht.png) no-repeat right center;background-size: 70px 70px;padding: 15px 80px 15px 0;}
    
/* footer --------------*/
footer{padding: 60px 20px 60px;text-align: center;}
footer div#ftr_wrap{position: static;width: 100%;height: auto;}
footer h2#ftr_logo{position: static;}
footer h2#ftr_logo img{width: 150px;height: 35px;}
footer p#ftr_add{position: static;font-size: 13px;margin: 25px 0 35px;}
footer p#small{position: static;font-size: 10px;}
}

/* 共通非表示
---------------------------------------------- */
@media print, screen and (max-width: 767px){.sp_none{display: none;}}
@media print, screen and (min-width: 768px){.pc_none{display: none;}}

/* パンくず
---------------------------------------------- */
div#breadcrumb{margin: 0 0 0 20px;padding-top: 30px;}
div#breadcrumb ul{font-size:0;line-height: 1.0;text-align: left;}
div#breadcrumb ul li{display: inline-block; color:#808080;position: relative;padding-right:15px;margin-right:10px;font-size:12px;}
div#breadcrumb ul li:after {content: '';position: absolute;top: 1px;right: 0;width: 1px;height: 12px;background-color:#808080;transform: rotate(25deg);}
div#breadcrumb ul li:last-child:after{display: none;}
div#breadcrumb ul li a{color:#008943;}
div#breadcrumb ul li a:hover{color:#47B156;}

@media print, screen and (max-width: 767px){
div#breadcrumb{margin: 0 0 0 20px;padding-top: 20px;}
div#breadcrumb ul li{margin-right:10px;font-size:10px;}
div#breadcrumb ul li:after {top: 0;right: 2px;width: 1px;height: 10px;transform: rotate(25deg);}
    
.rcrumbs {white-space: nowrap;}
.rcrumbs > ul {padding: 0;list-style: none;}
.rcrumbs > ul > li {overflow: hidden;display: none;}
.rcrumbs > ul > li.show {display: inline-block;}
.rcrumbs > ul > li.ellipsis {text-overflow: ellipsis;-o-text-overflow: ellipsis;overflow: hidden;}
}

/* コンテンツエリア
---------------------------------------------- */
.wrap_content{width: 100%;max-width: 1240px; margin: 0 auto;padding: 140px 20px;}
.bg_gry{background: #F4F4F4;}

/* h2 */
div#bg_h2{width: 100%;height: 500px;position: relative;font-family: "Rubik", sans-serif;color: #FFFFFF;}
div#bg_h2 h2{position: absolute;bottom: 60px;left:20px;font-size:60px;font-weight: 600;line-height: 1.0;letter-spacing: 0.1em;margin: 0 0 -9px 0;}
div#bg_h2 h2 span{font-size:30px;font-weight: 600;display: block;margin-bottom: 20px;}

/* ttl */
.ttl_style_sub{font-size: 34px;color:#333333;font-weight: 700;font-family:"Rubik",'Noto Sans JP',sans-serif;margin:0 0 31px 0;}
.ttl_style_sub span{font-size: 20px;color:#008943;margin:-12px 0 -1px 0;display: block;letter-spacing: 0.1em;}

/* wrap2col */
div.wrap2col{overflow: hidden;width: 100%;margin-bottom: 100px;}
div.wrap2box{float: left;}
div.wrap2box:first-child{margin-right: 6.667%;}
div.wrap2box p{margin-bottom: 22px;}
div.wrap2box p:last-child{margin-bottom: 0;}

div.w500{width: 41.667%;}
div.w620{width: 51.667%;}

.ttl_bdr_gry{font-size: 28px;color:#008943;border-bottom: 1px solid #CCCCCC;font-weight: 700;margin:-16px 0 40px 0;padding:0 0 17px 0;}
.ttl_ccl{font-size: 22px;font-weight: 700;position: relative;padding: 0 0 0 30px;margin:-13px 0 20px 0;}
.ttl_ccl:after {position: absolute;content: '';top: 13px;left: 0;width: 20px;height:20px;border: solid 5px #47B156;border-radius:100%;}

@media screen and (min-width: 1200px){
.br-sp {display: none;}
}

@media print, screen and (max-width: 1200px){
.wrap_content{width: 100%;margin: 0;padding: 140px 20px;}
}

@media print, screen and (max-width: 767px){
.wrap_content{padding: 70px 20px;}
    
/* h2 */
div#bg_h2{height: 300px;max-height: 300px;}
div#bg_h2 h2{bottom: 30px;font-size:25px;margin: 0 0 -9px 0;}
div#bg_h2 h2 span{font-size: 20px;margin-bottom: 19px;}
    
/* ttl */
.ttl_style_sub{font-size: 27px;margin:0 0 25px 0;}
.ttl_style_sub span{margin:-12px 0 -1px 0;}

/* wrap2col */
div.wrap2col{overflow: visible;width: 100%;margin-bottom: 60px;}
div.wrap2box{float: none;}
div.wrap2box:first-child{margin:0 0 30px 0;}
div.wrap2box p{margin-bottom: 14px;}
div.wrap2box p:last-child{margin-bottom: 0;}

div.w500{width:100%;}
div.w620{width:100%;}

.ttl_bdr_gry{font-size: 22px;margin:-13px 0 30px 0;padding:0 0 15px 0;}
.ttl_ccl{font-size: 18px;padding: 0 0 0 28px;margin:-10px 0 10px 0;}
.ttl_ccl:after {top: 11px;left: 0;width: 17px;height:17px;border: solid 5px #47B156;border-radius:100%;}
}

/* ------------------------------------------------------------

ベースCSS

------------------------------------------------------------ */

/* center
---------------------------------------------- */
.center{margin:0 auto;}
/* width
---------------------------------------------- */
.w100per{width: 100%;}
/* clear
---------------------------------------------- */
.overflow_clear{overflow:hidden;height:100%;}
/* text-align
---------------------------------------------- */
.align_right{text-align:right !important;}
.align_left{text-align:left !important;}
.align_center{text-align:center !important;}
/* float
---------------------------------------------- */
.left{float:left;}
.right{float:right;}
/* font
---------------------------------------------- */
.normal{font-weight:normal !important;}
.bold{font-weight:bold !important;}

/* margin
---------------------------------------------- */
.mb_1em{margin-bottom:1em !important;}
.mb_2em{margin-bottom:2em !important;}

.mt_none{margin-top:0px !important;}
.mt_05{margin-top:5px !important;}
.mt_10{margin-top:10px !important;}
.mt_15{margin-top:15px !important;}
.mt_20{margin-top:20px !important;}
.mt_25{margin-top:25px !important;}
.mt_30{margin-top:30px !important;}
.mt_35{margin-top:35px !important;}
.mt_40{margin-top:40px !important;}
.mt_45{margin-top:45px !important;}
.mt_50{margin-top:50px !important;}

.mr_none{margin-right:0px !important;}
.mr_05{margin-right:5px !important;}
.mr_10{margin-right:10px !important;}
.mr_15{margin-right:15px !important;}
.mr_20{margin-right:20px !important;}
.mr_25{margin-right:25px !important;}
.mr_30{margin-right:30px !important;}
.mr_35{margin-right:35px !important;}
.mr_40{margin-right:40px !important;}
.mr_45{margin-right:45px !important;}
.mr_50{margin-right:50px !important;}
.mr_60{margin-right:60px !important;}
.mr_65{margin-right:65px !important;}

.mb_none{margin-bottom:0px !important;}
.mb_05{margin-bottom:5px !important;}
.mb_10{margin-bottom:10px !important;}
.mb_15{margin-bottom:15px !important;}
.mb_20{margin-bottom:20px !important;}
.mb_25{margin-bottom:25px !important;}
.mb_30{margin-bottom:30px !important;}
.mb_35{margin-bottom:35px !important;}
.mb_40{margin-bottom:40px !important;}
.mb_45{margin-bottom:45px !important;}
.mb_50{margin-bottom:50px !important;}
.mb_55{margin-bottom:55px !important;}
.mb_60{margin-bottom:60px !important;}
.mb_65{margin-bottom:65px !important;}
.mb_70{margin-bottom:70px !important;}
.mb_75{margin-bottom:75px !important;}
.mb_80{margin-bottom:80px !important;}
.mb_85{margin-bottom:85px !important;}
.mb_90{margin-bottom:90px !important;}
.mb_95{margin-bottom:95px !important;}
.mb_100{margin-bottom:100px !important;}
.mb_120{margin-bottom:120px !important;}
.mb_130{margin-bottom:130px !important;}

@media print, screen and (max-width: 767px){
.mb_55{margin-bottom:25px !important;}
.mb_60{margin-bottom:30px !important;}
.mb_100{margin-bottom:50px !important;}
}

.ml_none{margin-left:0px !important;}
.ml_05{margin-left:5px !important;}
.ml_10{margin-left:10px !important;}
.ml_15{margin-left:15px !important;}
.ml_20{margin-left:20px !important;}
.ml_25{margin-left:25px !important;}
.ml_30{margin-left:30px !important;}
.ml_35{margin-left:35px !important;}
.ml_40{margin-left:40px !important;}
.ml_42{margin-left:42px !important;}
.ml_45{margin-left:45px !important;}
.ml_50{margin-left:50px !important;}