@charset "utf-8";
/* CSS Document */
/*------------------共通------------------*/
body {
	width: 100%;
	margin: 0 auto;
	font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  sans-serif;
	font-size: 14px;
	color:#333;
	text-align: center;
}

.inbox{
	width: 1080px;
	margin:0 auto;
}

.yu-min{
    font-family:游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-weight: bold;
}

.yu-go{
    font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-weight: bold;
}

.pagenation{
    color: #8e4120;
    font-size: 12px;
    position: relative;
}

.pagenation li{
    background: #fff;
    padding: 5px 10px;
    color: #8e4120;
    font-size: 16px;
    display: inline-block;
    box-sizing: border-box;
    vertical-align: middle;
    margin-right: 10px;
}

.pagenation li a{
    color: #8e4120;
}

.pagenation .current{
    background:#8e4120;
}

.current{
    color: #fff !important;
}

.pagetation p a{
    color: #8e4120;
}

.right{
    position: absolute;
    right: 2%;
    z-index: 2;
}

.center{
    position: absolute;
    left: 0;
    right: 0;
    z-index: 1;
}

.left{
    position: absolute;
    left: 2%;
    z-index: 2;
}

a{
    color: #333;
}

a[href^="tel:"] {
    pointer-events: none;
}

a::before,
a::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}

a,
a::before,
a::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}

a:hover {
    filter:alpha(opacity=60);
    opacity: 0.6;
}

.cmn_dl{
	background:#fff;
}

.cmn_dl dt,
.cmn_dl dd{
    display: table-cell;
    vertical-align:middle;
    box-sizing: border-box;
    text-align: left;
}

.cmn_dl dl{
    border-bottom: 1px solid #333;
}

.cmn_dl dl:last-child{
    border-bottom: none;
}

.cmn_dl dt{
    background: #f2f2f2;
    padding:15px 10px;
    width: 160px;
}

.cmn_dl dd{
    padding:15px 10px;
    line-height: 23px;
}

.cmn_img{
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.cmn_img img{
    position: absolute;
    width: auto;
    height: auto;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

@supports ( object-fit: cover ) {
    .cmn_img img {
        position: static;
        height: 100%;
        width: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        top: 0;
        -ms-transform: none;
        -moz-transform: none;
        -webkit-transform: none;
        transform: none;
    }
}

.wrapper{
	min-width:1280px;
	position: relative;
}


img { vertical-align:bottom; }

/*-----------------header------------------*/

.header {
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 999;
}

.header h1 {
	color:#e6e6e6;
	font-size:12px;
	font-weight:normal;
	padding-left: 5px;
	height: 20px;
	text-align: left;
	line-height: 20px;
}

.h_cont {
	width: 450px;
	margin-left: auto;
	margin-right: 10px;
	display: block;
}

.h_tel{
	float: left;
	padding-top: 7px;
}

.h_btn{
	float: right;
	width: 200px;
	font-size: 16px;
}

.h_btn a{
	color: #fff;
	background: url(../img/mail01.png) no-repeat,
				#b3d628;
	background-position: 15% 50%;
	padding: 10px 5px 10px 25px;
	border-radius: 6px;
	display: block;
}

.fix-btn {
	position: fixed;
	top: 5%;
	right: 2%;
	z-index: 999;
	background: url(../img/fix_bg.png) no-repeat;
	width: 200px;
	padding: 30px 15px 35px 15px;
	box-sizing: border-box;
}

.copy {
	position: fixed;
	top: 35%;
	right: 2%;
	z-index: 999;
	background: url(../img/fix_bg2.png) no-repeat;
	width: 200px;
	padding: 52px 15px 60px 15px;
	box-sizing: border-box;
}

.fix_txt{
	font-size: 17px;
	color: #fff;
	line-height: 24px;
	border-bottom: 2px dotted #fff;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

.fix_tel{
	margin-bottom: 10px;
}

.fix_link{
	width: 140px;
	margin: 0 auto;
	font-size: 13px;
	text-align: left;
	line-height: 16px;
}

.fix_link a{
	color: #368f05;
	background: url(../img/mail02.png) no-repeat,
				#fff;
	
	background-position: 10% 50%;
	border-radius: 6px;
	padding:5px 5px 5px 45px;
	display: block;
	box-sizing: border-box;
}

.fix_link2 a{
	color: #df7684;
	background: #fff;
	background-position: 10% 50%;
	border-radius: 6px;
	padding:5px 5px 5px 5px;
	display: block;
	box-sizing: border-box;
	margin-top: 10px;
}

/*---------main_visual------------*/
.main_visual {
	width:100%;
	height: 760px;
	position: relative;
	overflow: hidden;
	text-align: center;
	background-size: cover;
}

.main_visual video{
	position: absolute;
    top:50%;
    min-width: 100%;
    min-height: 100%;
    width: 100%;
    height: auto;
    transform: translate(-50%,-50%);
  	-ms-transform: translate(-50%,-50%);
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){
	.main_visual video{
		position: absolute;
	    min-width: 100%;
	    min-height: 100%;
	    width: 100%;
	    height: auto;
	    top: 0 !important;
	    transform:none !important;
	    -ms-transform:none !important;
	}
}

.mv-logo {
	width: 363px;
	height: 240px;
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 100;
}

/*-----------------container------------------*/
#container {
	text-align:center;
	position: relative;
}

/*-----------------section01------------------*/
.sec01{
	background: url(../img/sec01_img01.png) no-repeat,
				url(../img/sec01_img02.png) no-repeat,
				url(../img/sec01_bg.jpg) center no-repeat;
	background-position: calc(50% + 450px) calc(18% + 95px),
						 calc(50% - 500px) calc(100% - 95px),
						 50% 50%;
	padding:95px 0 205px 0;
	background-size:auto, auto, cover;
}

.sec01 h3{
	margin-bottom: 65px;
}

.sec01_cont .sec01_box{
	margin-bottom: 125px;
	position: relative;
	z-index: 1;
}

.sec01_cont .sec01_box:last-child{
	margin-bottom: 0;
}

.sec01_cont .sec01_box:nth-child(odd){
	width: 680px;
	margin-right: auto;
}

.sec01_cont .sec01_box:nth-child(even){
	width: 680px;
	margin-left: auto;
}

.sec01_box h4{
	font-size: 38px;
	padding: 5px 40px;
	text-align: left;
	border-bottom: 5px solid #b3d628;
	background: url(../img/icon02.png) left center no-repeat;
	margin-bottom: 25px;
}

.sec01_list{
	margin-left: 20px;
	margin-bottom: 20px;
}

.sec01_list li{
	text-align: left;
	font-size: 24px;
	padding:5px 5px 5px 40px;
	background: url(../img/check01.png) left center no-repeat;
	margin-bottom: 15px;
}

.sec01_list li:last-child{
	margin-bottom: 0;
}

.sec01_list li span{
	color: #dc2b2b;
}

.sec01_txt{
	text-align: left;
	line-height: 24px;
	font-size: 16px;
	background: #fff;
	padding: 10px 15px;
	margin-bottom: 20px;
}

.sec01_btn a{
	font-size: 20px;
	color: #fff;
	background: url(../img/arr01.png) no-repeat,
				#368f05;
	background-position: 35% 50%;
	color: #fff;
	padding: 15px 0;
	display: block;
	border-radius: 25px;
}

/*-----------------section02------------------*/
.sec02{
	background:url(../img/sec02_bg.jpg) center no-repeat;
	padding-bottom:85px;
	position: relative;
	z-index: 1;
}

.sec02::before{
	background: url(../img/sec02_tbg.png) no-repeat;
	position: absolute;
	content: '';
	width: 100%;
	height: 450px;
	margin: 0 auto;
	top: -170px;
	left: 0;
	right: 0;
	z-index: -1;
}

.sec02 h3{
	width: 940px;
	margin:0 auto;
	padding-bottom: 15px;
	border-bottom: 5px dotted #fff;
	margin-bottom: 330px;
}

.sec02_box{
	margin-bottom: 80px;
}

.sec02_cont .sec02_box:nth-child(odd){
	margin-right: auto;
	position: relative;
}

.sec02_cont .sec02_box:nth-child(even){
	margin-left: auto;
	position: relative;
}

.sec02_cont .sec02_box:first-child{
	width: 440px;
}

.sec02_cont .sec02_box:first-child::before{
	background: url(../img/img01.png) no-repeat;
	position: absolute;
	content: '';
	width: 360px;
	height: 361px;
	margin:0 auto;
	top: -193%;
	right: -43%;
	left: 0;
}

.sec02_cont .sec02_box:nth-child(2){
	width: 460px;
}

.sec02_cont .sec02_box:nth-child(2)::before{
	background: url(../img/img02.png) no-repeat;
	position: absolute;
	content: '';
	width: 320px;
	height: 320px;
	margin:0 auto;
	top: -150%;
	left: -5%;
}

.sec02_cont .sec02_box:nth-child(3){
	width: 560px;
}

.sec02_cont .sec02_box:nth-child(3)::before{
	background: url(../img/img03.png) no-repeat;
	position: absolute;
	content: '';
	width: 300px;
	height: 300px;
	margin:0 auto;
	top: -157%;
	right: 4%;
}

.sec02_cont .sec02_box:nth-child(4){
	width: 430px;
}

.sec02_cont .sec02_box:nth-child(4)::before{
	background: url(../img/img04.png) no-repeat;
	position: absolute;
	content: '';
	width: 360px;
	height: 360px;
	margin:0 auto;
	top: -130%;
	right: 26%;
}

.sec02_cont .sec02_box:nth-child(5){
	width: 470px;
}

.sec02_cont .sec02_box:nth-child(5)::before{
	background: url(../img/img05.png) no-repeat;
	position: absolute;
	content: '';
	width: 340px;
	height: 340px;
	margin:0 auto;
	top: -145%;
	right: 26%;
}

.sec02_cont .sec02_box:last-child{
	width: 570px;
	margin-bottom: 0;
}

.sec02_cont .sec02_box:last-child::before{
	background: url(../img/img06.png) no-repeat;
	position: absolute;
	content: '';
	width: 320px;
	height: 320px;
	margin:0 auto;
	top: -120%;
	left: 0;
}

.sec02_ttl{
	position: relative;
}

.sec02_box h4{
	font-size: 36px;
	background: #fff;
	border-left: 5px solid #dc2b2b;
	padding:15px 20px;
	text-align: left;
	line-height: 40px;
	margin-bottom: 15px;
}

.sec02_box h4 span{
	color: #dc2b2b;
}

.circle01{
	position: absolute;
	width: 100px;
	padding: 50px 0;
	color: #fff;
	font-size: 20px;
	line-height: 24px;
	background: url(../img/shape01.png) center no-repeat;
}

.sec02_cont .sec02_box:first-child .circle01{
	right: -60px;
	top: -40px;
}

.sec02_cont .sec02_box:nth-child(2) .circle01{
	left: -60px;
	top: -95px;
}

.sec02_cont .sec02_box:nth-child(3) .circle01{
	right: 15px;
	top: -85px;
}

.sec02_cont .sec02_box:nth-child(4) .circle01{
	left: -85px;
	top: -20px;
}

.sec02_cont .sec02_box:nth-child(5) .circle01{
	right: -45px;
	top: -80px;
}

.sec02_cont .sec02_box:last-child .circle01{
	right: 40px;
	top: -85px;
}

.sec02_txt{
	text-align: left;
	line-height: 24px;
}

/*-----------------section03------------------*/
.sec03{
	background: url(../img/sec03_tbg.png) left top no-repeat,
				url(../img/sec03_bg.jpg) bottom center no-repeat;
	padding: 220px 0 95px 0;
}

.sec03 h3{
	background: url(../img/border01.png) bottom center no-repeat;
	padding-bottom: 30px;
	margin-bottom: 55px;
}

.sec03_cont{
	margin-bottom: 80px;
}

.sec03_cont h4{
	font-size: 32px;
	padding-bottom: 10px;
	border-bottom:10px solid #b3d628;
	margin-bottom: 10px;
}

.caution{
	text-align: right;
	font-size: 12px;
	margin-bottom: 15px;
}

.sec03_cont .sec03_box:last-child{
	margin-bottom: 0;
}

.sec03_box{
	margin-bottom: 25px;
}

.sec03_cont .sec03_box:last-child .cmn_dl dt{
	width: 320px;
}

.sec03_box h5{
	font-size: 20px;
	padding:5px 20px;
	background: url(../img/border02.png) left center no-repeat;
	text-align: left;
	margin-bottom: 10px;
}

.bnr{
	background: url(../img/icon03.png) no-repeat,
				url(../img/bnr_img.png) no-repeat,
				url(../img/bnr_shape.png) no-repeat,
				url(../img/bnr_tbg.png) no-repeat,
				#fff;
	background-position: 60% -14%,
						107% 100%,
						 50% 120%,
						 0 -4%;
	border:10px solid #8dcd31;
	box-sizing: border-box;
	padding: 5px 10px 15px 10px;
}

.bnr_cont{
	width: 665px;
	margin-right: auto;
}

.bnr_txt{
	margin-bottom: 15px;
}

.bnr_btn{
	width: 530px;
	font-size: 20px;
	margin-left: 25px;
}

.bnr_btn a{
	color: #fff;
	background: url(../img/arr01.png) no-repeat,
				#b3d628;
	border-radius: 10px;
	background-position: 25% 50%;
	padding: 15px 15px 15px 25px;
	display: block;
}

/*-----------------section04------------------*/
.sec04 {
	border-top: 10px solid #8dcd31;
	background: url(../img/sec04_bg.png) center;
	padding: 80px 0 100px 0;
}

.sec04 h3{
	margin-bottom: 55px;
}

.sec04_head{
	margin-bottom: 60px;
}

.sec04_head-l{
	width: 600px;
	float: left;
}

.sec04_head-l .cmn_dl{
	margin-bottom: 30px;
}

.sec04_head-l .cmn_dl dt{
	width: 140px;
}

.sec04_tag  a{
	font-size: 23px;
	text-align: right;
	border:2px solid #8dcd31;
	background: url(../img/bnr_logo.png) no-repeat,
				url(../img/arr02.png) no-repeat,
				url(../img/bng_bg.png) left center no-repeat,
				#fff;
	background-position: 35% 50%,
						 97% 50%,
						 0% 50%;
	padding: 35px 60px;
	display: block;
}

.facebook{
	float: right;
	width: 450px;
}

.map{
	margin-bottom: 35px;
}

.map h4{
	font-size: 24px;
	padding:10px 0;
	margin-bottom: 10px;
	border-bottom: 5px solid #b3d628;
	background: url(../img/icon04.png) no-repeat;
	background-position: 39% 50%;
}

.access{
	background: #fff;
	border:5px solid #e6e6e6;
	padding: 10px 10px 25px 10px;
	box-sizing: border-box;
}

.access h4{
	background: #b3d628;
	color: #fff;
	font-size: 18px;
	padding: 10px 0;
	margin-bottom: 30px;
}

.way_box{
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
	background: #f2f2f2;
	padding: 20px;
	width: 440px;
	margin-right: 20px;
}

.way_box h5{
	padding-bottom:15px;
	border-bottom:1px solid #ccc;
	margin-bottom: 15px;
}

.way_box h5 span{
  	background:#fff;
  	padding: 0;
  	margin: 0;
	width: 100px;
  	height: 100px;
  	font-size: 16px;
  	text-align: center;
  	display: inline-block;
  	border-radius: 50%;
  	line-height: 150px;
}

.way_box p,
.way_box li{
	line-height: 26px;
}

.way_box p span,
.way_box li span{
	color: #368f05;
	font-weight: bold;
}

.access_cont .way_box:first-child h5 span{
	background: url(../img/icon05.png) no-repeat,
				#fff;
	background-position: 50% 25%;
}

.access_cont .way_box:last-child h5 span{
	background: url(../img/icon06.png) no-repeat,
				#fff;
	background-position: 50% 40%;
}

/*-----------------section05------------------*/
.sec05 h3{
	background: url(../img/sec05_tbg.jpg) center;
	padding:50px 0;
}

.contact{
	padding: 50px 0 80px 0;
}

.contact_form{
	background: #fff;
	box-sizing: border-box;
	position: relative;
}

.input_form{
	background: url(../img/sec05_bg.png) no-repeat;
	background-position: calc(50% - 435px) calc(100% - 35px);
}

.contact_form dt{
	width: 280px;
	font-weight: bold;
}

.contact_form dt span{
    color:#FF0000;
    border-radius: 4px;
    font-weight: bold;
    padding:3px;
    font-size: 11px;
    margin-left: 5px;
}

.contact_form dl:last-child dt{
	vertical-align: top;
}

.contact_form textarea{
    height: 260px;
}

.error-text{
    color: #ed1c24;
}

.txtarea{
    border:none;
    width: 770px;
    background: #f2f2f2;
    padding: 5px;
}

.pr_check{
	margin-top: 20px;
}

.g-recaptcha div{
    margin: 0 auto;
    margin-top:25px;
    margin-bottom: 25px;
}

.check_btn{
    width: 320px;
    margin:0 auto;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 2px;
    border:none;
    color: #fff;
    background:url(../img/arr03.png) no-repeat,#b3d628;
    background-position: 20% 50%;
    padding: 25px 0;
    margin-top:20px;
}

.contact-submits-wrap{
	margin-top: 25px;
}

.back_btn{
    width: 300px;
    margin:0 auto;
    font-size: 16px;
    font-weight: bold;
    border-radius: 10px;
    letter-spacing: 2px;
    border:none;
    color: #fff;
    background:url(../img/common/arr04.png) no-repeat,#b3d628;
    background-position: 10% 50%;
    padding: 20px 0;
    margin-right: 40px;
}

.send_btn{
    width: 260px;
    margin:0 auto;
    font-size: 16px;
    font-weight: bold;
    border-radius: 10px;
    letter-spacing: 2px;
    border:none;
    color: #fff;
    background:url(../img/common/arr04.png) no-repeat,#b3d628;
    background-position: 20% 50%;
    padding: 20px 0;
}

/*プライバシーポリシー
--------------------------------------------*/
#privacy{
	background: url(../img/pp_bg.png) center;
	padding: 45px 0 80px 0;
}

#privacy h4{
	font-size: 32px;
	padding-bottom: 10px;
	border-bottom: 10px solid #b3d628;
	margin-bottom: 15px;
}

#privacy iframe {
	width: 100%;
	height: 250px;
	background-color: #fff;
}

.privacy_box{
	text-align: left;
	margin-bottom: 10px;
	padding:10px 15px;
}

.pp_ttl{
	font-size: 20px;
	background: url(../img/border02.png) left center no-repeat;
	border-bottom: 1px solid #333;
	padding:15px 25px;
	margin-bottom: 15px;
	position: relative;
}

.privacy_text{
	line-height: 24px;
}

/*-----------------footer------------------*/
#pageTop {
	color: #FFF;
	position: fixed;
	bottom: 8%;
	right: 3%;
	z-index:999;
}

.footer {
	background-color:#333;
}

.ft_cont{
	padding: 20px 0;
}

.ft_contact{
	width: 450px;
	margin:0 auto;
}

.ft_txt{
	font-size: 15px;
	color: #fff;
	border-bottom:2px dotted #fff;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

.ft_contact{
	margin-bottom: 15px;
}

.ft_tel{
	float: left;
	padding-top: 5px;
}

.ft_mail{
	float: right;
	width: 200px;
	font-size: 16px;
}

.ft_mail a{
	background: url(../img/mail01.png) no-repeat,
				#b3d628;
	background-position: 15% 50%;
	color: #fff;
	border-radius: 6px;
	padding:10px 5px 10px 25px;
	display: block;
}

.ft_link{
	width: 450px;
	margin: 0 auto;
	font-size: 16px;
}

.ft_link a{
	color: #fff;
	background: url(../img/icon07.png) no-repeat,
				url(../img/arr04.png) no-repeat;
	background-position: 20% 50% , 80% 50%;
	border:1px solid #fff;
	padding: 10px 0;
	display: block;
}

#copyright {
	color:#fff;
	background-color:#4d4d4d;
	font-size:10px;
	height:30px;
	line-height:30px;
	text-align:center;
}
