@charset "utf-8";

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// under 404
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

p.mes404{text-align:center;margin:100px auto;}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// mimage
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

section.mimage{width:100%;height:980px;background:url(../images/top/mimg_bg.png) center -6px no-repeat;background-size:auto 100%;;margin:0 auto;position:relative;}

section.mimage h2{position:absolute;color:#366BA0;font-size:4rem;font-weight:bold;line-height:1.6;top:150px;}
section.mimage h3{position:absolute;color:#323333;font-size:2rem;font-weight:bold;line-height:1.8;top:300px;}
section.mimage p{position:absolute;font-size:1.6rem;line-height:1.8;top:390px;}

section.mimage button{background:#5DB58F;color:#fff;position:absolute;font-size:1.8rem;padding:15px 20px;top:500px;border-radius:8px;letter-spacing: 4px;}
section.mimage button span{font-size:3rem;font-weight:bold;margin-left:10px;}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// about
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

section.about{width:100%;padding:80px 0;}
section.about h2{width:100%;color:#4D4D4D;font-size:2.6rem;font-weight:bold;line-height:1.5;}
section.about h2 span{color:#5DB58F;font-size:1.6rem;}

section.about ul{display:flex;flex-wrap:wrap;margin:30px auto;}
section.about ul li{width:calc(33.33% - 10px);margin-right:15px;text-align:center;}
section.about ul li:last-child{margin-right:0;}
section.about ul li img{height:300px;margin-bottom:20px;}
section.about ul li p{font-size:1.6rem;color:#4D4D4D;line-height:1.5;}


/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// about con
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

section.head_h2{width:100%;background:#F2F2F2;padding:160px 0 60px;}

section.head_h2 h2{font-size:3.3rem;font-weight:bold;letter-spacing:1px;color:#323333;}

section.head_h2 p{line-height:2.2;margin-top:40px;}

section.about01{padding:60px 0 0;}
section.about01 div.sec_wrap{position:relative;padding-bottom: 370px;}
section.about01 h2{color:#5DB58F;font-size:2.6rem;font-weight:bold;border-bottom:1px solid #ccc;padding:2px 2px 15px 6px;position:relative;letter-spacing:1px;margin-bottom:30px;}
section.about01 h2:before{content:"";width:100px;height:4px;background:#5DB58F;left:0;bottom:0;position:absolute;}
section.about01 p{line-height:2.2;}

section.about01 img{position:absolute;right:0;bottom:0;z-index:1;}

div.h3_name{width:100%;background:rgba(93,181,143,0.8);padding:20px 0;position: relative;top:-157px;}
div.h3_name h3{color:#4D4D4D;line-height:1.5;font-size:2.6rem;}
div.h3_name h3 span{font-size:2.1rem;}

section.about01 div.h3_name div.sec_wrap{position:relative;padding-bottom: 0;}


section.about02{padding:0 0 100px;margin-top:-80px;}
section.about02 h2{color:#5DB58F;font-size:2.6rem;font-weight:bold;border-bottom:1px solid #ccc;padding:2px 2px 15px 6px;position:relative;letter-spacing:1px;margin-bottom:50px;}
section.about02 h2:before{content:"";width:100px;height:4px;background:#5DB58F;left:0;bottom:0;position:absolute;}
section.about02 ul li{border-bottom:1px solid #7F8080;padding:20px 0;color:#323333;}



/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// service
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

section.service{width:100%;padding:80px 0;background:#F2F2F2;}
section.service h2{width:100%;color:#4D4D4D;font-size:2.6rem;font-weight:bold;line-height:1.5;margin-bottom:30px;}
section.service h2 span{color:#366BA0;font-size:1.6rem;}
section.service h3{font-size:1.4rem;line-height:1.5;}

section.service ul{display:flex;flex-wrap:wrap;margin:50px auto 30px;}
section.service ul li{width:calc(25% - 10px);margin-right:12px;text-align:center;}
section.service ul li:last-child{margin-right:0;}
section.service ul li img{width:100%;}

section.service01{padding:50px 0;}

section.service01 ul{display:flex;flex-wrap:wrap;}
section.service01 ul li{width:50%;padding:30px 20px;}
section.service01 ul li h2{color:#366BA0;font-size:2.5rem;font-weight:bold;line-height:1.5;text-align:center;letter-spacing:1px;}
section.service01 ul li h2 img{margin-bottom:15px;}

section.service01 div.s_inner{width:100%;min-height:350px;padding:20px 20px 55px 20px;border:1px solid #366BA0;margin-top:15px;position:relative;}

section.service01 li h3{color:#366BA0;font-size:1.6rem;font-weight:bold;margin:15px 0 8px;}
section.service01 li p{line-height:1.8;color:#4D4D4D;}
section.service01 li p span{font-weight:bold;}

section.service01 div.btn_contact{position:absolute;width:100%;left:0;bottom:0;border-top:1px solid #366BA0;}
section.service01 div.btn_contact a{width:100%;display:block;text-align:center;padding:20px;position:relative;color:#366BA0;font-size:1.8rem;font-weight:bold;}
section.service01 div.btn_contact a:after{position:absolute;width:28px;height:27px;content:"";background:url(../images/common/icon_arrow02.png) no-repeat;right:25px;top:15px;}

section.service01 div.btn_contact a:hover{background:#366BA0;color:#fff;}
section.service01 div.btn_contact a:hover:after{background:url(../images/common/icon_arrow02_white.png) no-repeat;}

section.service01 div.view_more{display:none;}
section.service01 div.view_more div.btn_contact{position:static;width: calc(100% + 40px);margin-left: -20px;margin-top: 20px;}



section.service01 div.btn_more{position:absolute;width:100%;left:0;bottom:0;border-top:1px solid #366BA0;}
section.service01 div.btn_more span{width:100%;display:block;text-align:center;padding:20px;position:relative;color:#fff;background:#366BA0;font-size:1.8rem;font-weight:bold;box-sizing: border-box;}
section.service01 div.btn_more span:after{position:absolute;width:28px;height:27px;content:"∨";right:25px;top:17px;transform:scaleX(1.5);}

section.service01 div.btn_more span:hover{background:#fff;color:#366BA0;}

section.service01 div.active span:after{content:"∧";}


section.service01 div.btn_more span.open{display:block;}
section.service01 div.btn_more span.close{display:none;}
section.service01 div.active span.open{display:none;}
section.service01 div.active span.close{display:block;}



div.s_contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;margin:60px auto 40px;}
div.s_contact p{color:#5DB58F;font-size:2rem;font-weight:bold;letter-spacing:2px;}

div.s_contact a{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;background:#366BA0;border:2px solid #366BA0;padding:10px 20px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;border-radius:40px;transition: .7s;}
div.s_contact a img{width:30px;margin-right:8px;}


/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// company
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

div.company01{width:100%;background:#fff;border-radius:10px;padding: 50px 40px;margin: 60px auto;}

div.company01 dl{display:flex;flex-wrap:wrap;}

div.company01 dt{width:150px;border-bottom:3px solid #666;padding:10px 0 25px;margin-bottom:30px;color:#4D4D4D;line-height:2;}
div.company01 dd{width:calc(100% - 150px);border-bottom:1px solid #ccc;padding:10px 0 25px;margin-bottom:30px;color:#4D4D4D;line-height:2;}


/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// access
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

section.access01{padding:60px 0 0;}
section.access01 h2{color:#5DB58F;font-size:2.6rem;font-weight:bold;border-bottom:1px solid #ccc;padding:2px 2px 15px 6px;position:relative;letter-spacing:1px;margin-bottom:30px;}
section.access01 h2:before{content:"";width:100px;height:4px;background:#5DB58F;left:0;bottom:0;position:absolute;}
section.access01 p{line-height:2.2;color:#4D4D4D;margin-bottom:30px;}

section.access01 hr{height:1px;background:#ccc;margin-bottom:30px;border:none;}





/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// flow
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

section.flow{width:100%;padding:80px 0 0;}
section.flow h2{width:100%;color:#4D4D4D;font-size:2.6rem;font-weight:bold;line-height:1.5;margin-bottom:30px;}
section.flow h2 span{color:#5DB58F;font-size:1.6rem;}
section.flow h3{font-size:1.4rem;line-height:1.8;}

section.flow dl{display:flex;flex-wrap:wrap;margin:30px auto;}
section.flow dt{width:40%;}
section.flow dd{width:60%;}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// contact
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

section.contact{width:100%;padding:180px 0 80px;background:url(../images/common/bg_wave.jpg) repeat-x center 0 #F2F2F2;}
section.contact h2{width:100%;color:#4D4D4D;font-size:2.6rem;font-weight:bold;line-height:1.5;margin-bottom:30px;text-align:center;}
section.contact h2 span{color:#366BA0;font-size:1.6rem;}
section.contact h3{font-size:2.5rem;line-height:1.5;text-align:center;}

section.contact ul{display:flex;flex-wrap:wrap;margin:50px auto;justify-content:center;}
section.contact li{width:100%;max-width:392px;margin:0 15px;color:#fff;font-size:2rem;text-align:center;}
section.contact li img{margin-right:15px;}
section.contact li:last-child{background:#5DB58F;line-height:1.3;border:2px solid #5DB58F;padding:12px 20px;border-radius:40px;}
section.contact li span{font-size:1.5rem;}

section.contact li a{width:100%;height:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;background:#366BA0;border:2px solid #366BA0;padding:12px 20px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;border-radius:40px;transition: .7s;}
section.contact li a:hover{background:#fff;color:#366BA0; }
section.contact li a:hover img{border:1px solid #366BA0;border-radius:100%;}


div.contact01{width:100%;background:#fff;border-radius:10px;padding: 30px 40px;margin: 60px auto;}

div.contact01 h3{color:#5DB58F;font-size:2.6rem;font-weight:bold;border-bottom:1px solid #ccc;padding:2px 2px 15px 6px;position:relative;letter-spacing:1px;margin:60px auto 30px;letter-spacing:3px;}
div.contact01 h3:before{content:"";width:150px;height:4px;background:#5DB58F;left:0;bottom:0;position:absolute;}

div.contact01 p{line-height:2;}

div.contact01 dl{display:flex;flex-wrap:wrap;}

div.contact01 dt{width:150px;border-bottom:3px solid #666;padding:10px 0 25px;margin-bottom:30px;color:#4D4D4D;line-height:2;letter-spacing:3px;}
div.contact01 dd{width:calc(100% - 150px);border-bottom:1px solid #ccc;padding:10px 0 25px;margin-bottom:30px;color:#4D4D4D;line-height:2;letter-spacing:3px;}


