@charset "utf-8";

body {border-top: solid 4px #165d12;}

section#midashi{text-align: center;margin: 80px auto 0 auto;padding: 0;}
section#midashi .logo{max-width: 200px;width: 66%;margin: 0 auto;padding: 0;}
section#midashi p.sub_text{font-size: 16px;line-height: 1.6;margin: 15px 0 0 0;padding: 0;color: #666;font-weight: 500;font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;font-feature-settings: "palt";letter-spacing: 0.1em;text-align: center;width: 100%;}
section#midashi p.link{font-size: 14px;line-height: 1.7;margin: 30px 0 0 0;padding: 10px 50px 10px 25px;color: #FFF;background-color: #214f39;font-weight: 500;font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;font-feature-settings: "palt";letter-spacing: 0.1em;display: inline-block;border-radius: 8px;position: relative;opacity: 1.0;transition: 0.5s;}
section#midashi p.link::after{content: '';display: inline-block;width: 18px;height: 12px;background-image: url("../images/arrow-under.png");background-size: contain;background-repeat: no-repeat;position: absolute;top: 53%;right: 8%;transform: translateY(-50%) translateX(0%);-webkit- transform: translateY(-50%) translateX(0%);}
section#midashi p.link a{display: block;position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
section#midashi p.link:hover{opacity: 0.7;transition: 0.5s;}

section p{font-size: 16px;line-height: 1.7;margin: 0;padding: 0;color: #555;font-weight: 400;font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;font-feature-settings: "palt";letter-spacing: 0.05em;}


header{width: 100%;margin: 80px 0 50px 0;padding: 0;}
header h1{width: 70vw;max-width: 454px;margin: 0 auto;padding: 0;}
header ul.navi{width: 100%;margin: 50px 0 0 0;padding: 0;display: flex;flex-flow: row wrap;justify-content: center;align-items: center;}
header ul.navi li{font-size: 16px;line-height: 1.4;margin: 0 20px;padding: 0;color: #666;letter-spacing: 0.1em;list-style: none;position: relative;}
header ul.navi li:nth-child(6){background-color: #165d12;color: #FFF;padding: 8px 20px;border-radius: 6px;}
header ul.navi li a{color: #666;text-decoration: none;transition: 0.5s;}
header ul.navi li a:hover{color: #165d12;/*font-weight: bold;*/transition: 0.5s;}
/* 下線のスタイル */
header ul.navi li a::after {background-color: #165d12;bottom: -6px;content: "";height: 2px;left: 0;position: absolute;transform: scale(0, 1);transform-origin: left top;transition: transform .3s;width: 100%;}
/* リンクにホバーした際の下線の表示 */
header ul.navi li a:hover::after {transform: scale(1, 1); /* 下線を横方向に1倍、縦方向に1倍に変形（表示） */}
header ul.navi li:nth-child(6) a{position:absolute;top:0;left:0;width:100%;height:100%;}
header ul.navi li:nth-child(6) a:hover{background-color: #FFF;opacity: 0.2;}
header ul.navi li:nth-child(6) a::after{height: 0;}
header ul.navi li.cel{color: #165d12;}
header ul.navi li.cel::after {position: absolute;background-color: #165d12;bottom: -6px;left: 0;content: "";height: 2px;width: 100%;}
.main_visual{height: 38vw;max-height: 750px;text-align: center;margin: 0;padding: 0;background: url("../images/main.webp") no-repeat center top;background-size: cover;position: relative;}


section.sec02{width: 1044px;margin: 100px auto;padding: 0;text-align: center;}
section.sec02 .fL{width: 522px;margin: 0px;padding: 0px;float: left;}
section.sec02 .fL .img01{width: 170px;margin: 0px auto;padding: 0px;}
section.sec02 .fL .img02{width: 210px;margin: 30px auto 0px auto;padding: 0px;}
section.sec02 .fR{width: 522px;margin: 0px;padding: 0px;float: right;}
section.sec02 a {transition: 0.7s;display: block;}
section.sec02 a:hover {opacity: 0.5;}

section.sec02 p{color: #777;text-align: left;margin: 0px;padding: 0px;}
section.sec02 p.text01{font-size: 24px;line-height: 1.2;}
section.sec02 p.text02{font-size: 42px;line-height: 1.2;margin-bottom: 0px;}
section.sec02 p.text02.mb20{margin-bottom: 20px;}
section.sec02 p.text03{font-size: 16px;line-height: 1.4;margin-bottom: 10px;}
section.sec02 p.text04{font-size: 18px;line-height: 1.6;margin-bottom: 5px;}
section.sec02 dl.text05{margin-top: 0px;margin-bottom: 10px;}
section.sec02 dl.text05 p{font-size: 18px;line-height: 1.6;}
section.sec02 dl.text05 dt{width: 15%;float: left;margin: 0px;padding: 0px;clear: both;}
section.sec02 dl.text05 dd{width: 85%;float: right;margin: 0px;padding: 0px;}
section.sec02 p.text06{font-size: 12px;line-height: 1.4;}
section.sec02 p.text07{font-size: 21px;line-height: 1.4;margin-bottom: 0px;}
section.sec02 p.text08{font-size: 13px;line-height: 1.8;margin-bottom: 20px;}
section.sec02 div.btn{font-size: 16px;line-height: 1.3;padding: 7px 30px; margin: 10px 0px 25px 0px;background-color: #013C5F;color: #FFF;display: inline-block;float: left;border-radius: 20px;-webkit-border-radius: 20px;-moz-border-radius: 20px;position: relative;}
section.sec02 div.btn span{font-size: 12px;line-height: 1.4;margin-left: 5px;position: relative;top: -1px;}
section.sec02 a{color: #777;text-decoration: none;}
section.sec02 a:hover{color: #999;}
section.sec02 div.btn a{display: block;position: absolute;top: 0;left: 0;width: 100%;height: 100%;transition: 0.7s;background-color: #FFF; opacity: 0;}
section.sec02 div.btn a:hover{opacity: 0.3;}

section.sec02 p.mail {margin: 0;font-size: 18px;line-height: 1.6;}
section.sec02 p.mail a{color: #777;text-decoration: none;display: inline;}

footer.foot {background-color: #e9f3f2;text-align: center;margin: 0;padding: 35px 0;}
footer.foot ul.sns {width: 110px;margin: 0 auto;padding: 0px;}
footer.foot ul.sns li {width: 42px;margin: 0px;padding: 0px;list-style: none;float: right;}
footer.foot ul.sns li:first-child {float: left;}
footer.foot ul.sns li a:hover {opacity: 0.7;}
footer.foot .icon {width: 42px;margin: 36px auto 0 auto;}
footer.foot p.link {font-size: 12px;line-height: 1.4;color: #181107;margin-top: 20px;font-weight: bold;}
footer.foot p.link a {color: #181107;text-decoration: none;}
footer.foot p.link a:hover {opacity: 0.7;}
footer.foot p.copyright {font-size: 9px;line-height: 1.4;color: #181107;margin-top: 20px;}


/* ipod */
@media screen and (max-width:1044px){ 
    
section.sec02{width: 92%;}
section.sec02 .fL{width: 36%;}
section.sec02 .fR{width: 64%;}
}

@media screen and (max-width:980px){ 
header{width: 100%;margin: 8vw auto 5vw auto;}
header h1 {width: 50vw;}
header ul.navi li{font-size: 1.8vw;margin: 0 2.6vw;}
}

/* iphone12 */
@media screen and (max-width:428px){
section#midashi p{text-align: left;width: 80%;}
	
header {margin-bottom: 8vw;}
header h1{width: 70vw;}
header ul.navi{margin-top: 8vw;}
header ul.navi li{font-size: 3.6vw;margin: 3vw 4vw;}
	
section.sec02{width: 92%;margin: 80px auto;}
section.sec02 .fL{width: 100%;float: none;}
section.sec02 .fL .img01{width: 40%;}
section.sec02 .fL .img02{width: 40%;}
section.sec02 .fR{width: 100%;float: none;}
section.sec02 a:hover {opacity: 1.0;}


section.sec02 p.text01{font-size: 1.8rem;line-height: 1.2;margin-top: 40px;}
section.sec02 p.text02{font-size: 3.8rem;line-height: 1.2;margin-bottom: 0px;}
section.sec02 p.text02.mb20{margin-bottom: 20px;}
section.sec02 p.text03{font-size: 16px;line-height: 1.4;margin-bottom: 20px;}
section.sec02 p.text04{font-size: 18px;line-height: 1.6;margin-bottom: 5px;}
section.sec02 dl.text05{margin-top: 0px;margin-bottom: 10px;}
section.sec02 dl.text05 p{font-size: 18px;line-height: 1.6;}
section.sec02 dl.text05 dt{width: 25%;float: left;margin: 0px;padding: 0px;clear: both;}
section.sec02 dl.text05 dd{width: 75%;float: right;margin: 0px;padding: 0px;}
section.sec02 p.text06{font-size: 12px;line-height: 1.4;}

section.sec02 a{color: #777;text-decoration: none;}
section.sec02 a:hover{color: #999;}

section.sec02 p.text07{font-size: 1.8rem;line-height: 1.4;margin-bottom: 0px;}
section.sec02 div.btn{font-size: 1.2rem;line-height: 1.2;padding: 7px 30px; margin: 10px 0px 25px 0px;}
section.sec02 div.btn span{font-size: 1.2rem;line-height: 1.4;margin-left: 5px;position: relative;top: -1px;}
section.sec02 div.btn a{display: block;position: absolute;top: 0;left: 0;width: 100%;height: 100%;transition: 0.7s;background-color: #FFF; opacity: 0;}
section.sec02 div.btn a:hover{opacity: 0.3;}
	
	
footer.foot {padding: 30px 0;}
footer.foot ul.sns {width: 30%;margin: 0 auto;padding: 0px;}
footer.foot ul.sns li {width: 40%;}
footer.foot ul.sns li a:hover {opacity: 1;}
footer.foot .icon {width: 12%;margin: 25px auto 0 auto;}
footer.foot p.link {font-size: 0.8rem;margin-top: 20px;}
footer.foot p.link a:hover {opacity: 1;}
footer.foot p.copyright {font-size: 0.8rem;margin-top: 20px;}
}

/* iphone12-mini */
@media screen and (max-width:540px){
}

/* iphone8等 */
@media screen and (max-width:375px){
}

/* Android各種 */
@media screen and (max-width:360px){
}