@charset "UTF-8";
/* CSS Document */


/*===================================
　input
====================================*/
* {
   -webkit-appearance: none;
}

.cf::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	overflow: hidden;
	clear: both;
}
.clear {
	clear: both;
}
* {
	box-sizing: border-box;
	margin:0;
	padding:0;
}
html,
body {
	font-family: -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', ' 游ゴシック Medium', meiryo, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background:#ffffff;
	box-sizing:border-box;
}
a:hover img{
	opacity:0.7;
}
a {
	color: #333333;
	text-decoration: none;
}
a:hover {
	color:#ed1c24;
}
strong{
	font-weight:bold;
}
.wrap{
	width:1100px;
	margin:0 auto;
	line-height:1.9;
	font-size:16px;
}
p {
    text-align: justify;
}
.mincho{	
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.tag img{
	width:100%;
	
	height:auto;
}
.pc{
	display:block;
}
.sp{
	display:none;
}
.pc_inline{
	display:inline-block;
}
.sp_inline{
	display:none;
}
/*mv
--------------------------------*/
.mv{
	position:relative;
	background:url(../img/mv.jpg)no-repeat center top;
	padding: 285px 0px 0;
    text-align: center;
}
.mv .tag{
    margin: 110px 0 35px;
}
.mv .tag img{
	width:auto;
}
.mv .mainTtl{
	
}
.detailBox{
	position:relative;
	z-index:2;width:900px;
	margin:-35px auto 0;
}
.detailBox .detailBlock{
	width:283px;
	float:left;
	text-align:center;
	margin-right:25px;
}
.detailBox .detailBlock:nth-child(3){
	margin-right:0;
}
.detailBox .detailBlock:nth-child(2){
    margin-top: 163px;
}
.detailBox .detailBlock:nth-child(2) .img{
    position:relative;
}
.detailBox .detailBlock:nth-child(2) .img:after,
.detailBox .detailBlock:nth-child(2) .img:before{
    position:absolute;
	content:"";
	width:30px;height:2px;background:#0088BC;
}
.detailBox .detailBlock:nth-child(2) .img:after{
	right: -29px;top: 74px;
    transform: rotate(-30deg);
}
.detailBox .detailBlock:nth-child(2) .img:before{
    left: -29px;top: 74px;
    transform: rotate(30deg);
}
.detailBox .detailBlock .img{
    margin-bottom:24px;
}
.detailBox .detailBlock .ttl{
    margin-bottom:24px;
}
.detailBox .detailBlock .txt{
    font-size:18px;
	text-align:left;
	padding:0 5px;
    line-height: 1.8;
}
/*sec01
--------------------------------*/
.sec01{
	margin-bottom:155px;
}
.sec01 .sec01_img{
	margin-top:-150px;
}
.sec01 .sec01_txtBox{
	width:760px;
	margin:-170px auto 150px;
	font-size:20px;line-height:24px;
}
.sec01 .detailBox .detailBlock:nth-child(2) .img:after,
.sec01 .detailBox .detailBlock:nth-child(2) .img:before{
    background:#231815;
}


.generalTtl{
	font-size:30px;
	line-height:1.9;
	color:#0088BC;
	font-weight:bold;
	text-align:center;
}
.generalTtl span{
	background: linear-gradient(transparent 60%, #FFF0B6 60%);
}
.sec01 .sec01_txtBox .ttl{
	margin-bottom:35px;
}
.sec01 .sec01_txtBox .txt{
	font-size:20px;
	line-height:2.1;
}
.sec01 .detailBox{
	margin-bottom:60px;
}
.sec01 .btn{
	text-align:center;
}

/*sec02
--------------------------------*/
.sec02 {
	margin-bottom:180px;
}
.sec02 .ttl{
	margin-bottom:70px;
}
.sec02 .detailBox {
	margin-bottom: 65px;
}
.sec02 .btn {
    text-align:center;
}
/*sec03
--------------------------------*/
.sec03{
	margin-bottom: 120px;
}
.sec03 .mainTtl{
	margin-bottom:90px;
}
.sec03 .sec03_txtArea{
	width:950px;
}
.sec03 .sec03_txtArea01 .ttl{
	text-align:right;
}

.sec03 .sec03_txtArea .sec03_txtBox{
	margin-top:-115px;
	display:flex;
	display: -ms-flexbox; /* IE10 */
	display: -webkit-box; /* Android4.3以下、Safari3.1〜6.0 */
	display: -webkit-flex; /* Safari6.1以降 */
}
.sec03 .sec03_txtArea01 .sec03_txtBox .txtBlock{
	margin-top: 180px;
    font-size: 20px;
    line-height: 2.1;
    margin-left: 20px;
	width:364px;
}
.sec03 .sec03_txtArea01{
	margin-bottom: 40px;
}
.sec03 .sec03_txtArea01 .sec03_txtBox .imgBlock .profBox{
	width:315px;
	color:#0088BC;
	margin: -200px 0 0 170px;font-size:18px;line-height:1.9;
}
.sec03 .sec03_txtArea01 .sec03_txtBox .imgBlock .profBox .ttl{
	margin-bottom:30px;
}
.sec03 .sec03_txtArea02{
	float:right;
}
.sec03 .sec03_txtArea02 .ttl{
	text-align:left;
}
.sec03 .sec03_txtArea02 .sec03_txtBox .txtBlock{
	margin-top: 170px;
    font-size: 20px;
    line-height: 2.1;
	width:437px;
    margin-right: 54px;
}
.sec03 .btn{
	text-align: center;
    margin-top: 55px;
}
/*sec04
--------------------------------*/
.sec04{
    padding: 110px 0 0;
	color:#231815;
}
.sec04 .ttl01{
	text-align:center;
	
}
.detailList{
	width:720px;
	margin:0 auto;

}
.detailList dl{
	display:flex;
	display: -ms-flexbox; /* IE10 */
	display: -webkit-box; /* Android4.3以下、Safari3.1〜6.0 */
	display: -webkit-flex; /* Safari6.1以降 */
	margin-bottom:25px;
	font-weight:bold;
    line-height: 1.5;
	font-size:18px;
}
.detailList dl dt{
	width:7em;
}
.detailList dl dd{
	flex:1;
}
.detailList dl dd p+p{
	margin-top:20px;
}
.detailList dl dd .numList li{
	text-indent:-1em;
	padding-left:1em;
}
.detailList dl dd .at{
    text-indent: -1em;
    padding-left: 1em;
    display: block;
}
.sec04 .sec04Inner {
    background: #0088BC;
    padding-bottom: 135px;
}
.sec04 .sec04_01 .detailList {
    margin-bottom: 110px;
	color:#fff;
    padding-top: 100px;
}
.sec04 .ttl02{
	text-align:center;
    margin-bottom: 100px;

}
.sec04 .flowBox{
	width:625px;
	margin:0 auto;
}
.sec04 .flowBox .flowBlock{
	padding:25px 125px;
	margin-bottom:40px;
	background:#7F7763;
	position:relative;
}
.sec04 .flowBox .flowBlock:nth-child(2n){
	background:#604C3F;
}
.sec04 .flowBox .flowBlock:after{
	content:"";
	width:106px;height:102px;
	position:absolute;
	left:-30px;
	top:0;bottom:0;margin:auto;
}
.sec04 .flowBox .flowBlock:nth-child(1):after{
	background:url(../img/section05_icon01.png)no-repeat center center;
	background-size:contain;
}
.sec04 .flowBox .flowBlock:nth-child(2):after{
	background:url(../img/section05_icon02.png)no-repeat center center;
	background-size:contain;
}
.sec04 .flowBox .flowBlock:nth-child(3):after{
	background:url(../img/section05_icon03.png)no-repeat center center;
	background-size:contain;
}
.sec04 .flowBox .flowBlock:nth-child(4):after{
	background:url(../img/section05_icon04.png)no-repeat center center;
	background-size:contain;
}


/*sec05
--------------------------------*/
.sec05{
	color:#231815;
}
.sec05 .sec05_mv{
	margin-bottom:55px;
}
.sec05 .ttl{
	text-align:center;
	margin-bottom:50px;
}
.sec05 .sec05_01 .detailList {
    margin-bottom: 45px;
}
.sec05 .sec05_02 .txt {
    padding-top:10px;text-align:center;
	margin-bottom:70px;font-weight:bold;font-size: 18px;
}
#maps {
    margin:0 auto 20px;
    width: 100%;
    height: 280px;
}
/*sec06
--------------------------------*/
.sec06{
	color:#231815;
	padding:15px 0 0;
}
.sec06 .sec06Inner{
	background:#404040;
	 padding: 125px 0 130px;
}
.sec06 .sec06Inner .sec06_contentArea{
	width:750px;
	margin:0 auto;
   
}
.sec06 .sec06Inner .ttl{
	text-align:center;
	margin-bottom:60px;
}
.sec06 .sec06Inner .formArea{
	color:#fff;
	font-size:18px;
}
.sec06 .sec06Inner .headTxt{
	display:block;
	width:600px;
	margin:0 auto 70px;
}
.sec06 .sec06Inner .must{
	color:#F4DF26;
}
.sec06 .sec06Inner .formArea .formCont .must{
	font-size:10px;
	display:inline-block;
	border:1px solid;
	border-radius:10px;
	margin-left:5px;
	padding:3px;
	line-height:1;
}
.sec06 .sec06Inner .formArea .formCont dl{
	display:flex;
	margin-bottom:10px;
}
.sec06 .sec06Inner .formArea .formCont dl dt{
    width: 210px;
    margin-top: 2px;
}
.sec06 .sec06Inner .formArea .formCont dl dd{
	flex:1;
}
.sec06 .sec06Inner .formArea .formCont dl .error input[type=text], 
.sec06 .sec06Inner .formArea .formCont dl .error textarea,
.sec06 .sec06Inner .formArea .formCont dl .error select {
    background: #F4D4D4;
}
.sec06 .sec06Inner .formArea .formCont dl dd input {
    width: 100%;
    border: 1px solid #969696;
    padding:12px 6px;
	font-size:18px;
}
.sec06 .sec06Inner .formArea .formCont dl dd .error {
   font-size:12px;
	color:#fdfdfd;
}
.sec07 .sec06Inner .formArea .formCont dl dd.error .error {
	display:block;
}
.sec06 .sec06Inner .formArea .formCont dl dd .selectBox {
   background: url(../img/icon_select.png) no-repeat 96% 50%;
    height: 38px;
   overflow: hidden;
   width: 275px;
    padding: 3px 10px;
   -webkit-border-radius: 20px;
   -moz-border-radius: 20px;
   border-radius: 20px;
	background-color:#fff;
}
.sec06 .sec06Inner .formArea .formCont dl dd select{
   background: transparent;
   border: none;
   font-size: 16px;
   height: 29px;
   padding: 5px; /* If you add too much padding here, the options won't show in IE */
   width: 290px;
}
.sec06 .sec06Inner .formArea .formCont dl dd textarea{
   width:100%;
	height:220px;
	padding:10px;
	font-size:16px;
	display:block;
}
.sec06 .sec06Inner .formArea .formCont dl dd textarea.textarea01{
	height:155px;
}
.sec06 .sec06Inner .formArea .formCont dl dd textarea.textarea02{
	height:220px;
}
.sec06 .sec06Inner .formArea .formCont .btnArea .confirm,
.sec06.finish .sec06Inner .formArea .topback a{
    width: 100%;
    font-size: 24px;
    color: #fff;
    background: #0088BC;
    font-weight: bold;
    padding: 10px;
	margin-top:40px;
	display:block;
	text-align: center;
}

/*foot
--------------------------------*/
#foot{
	position:relative;
	padding:40px 0 70px;
}
#foot .pagetop{
    position: fixed;
    right: 20px;
    bottom: 20px;
    opacity: 0;
    transition: all 0.4s ease-in-out 0s;
    z-index: 99;
}
#foot .footerNav{
	margin-bottom:60px;
}
#foot .footerNav ul{
	text-align:center;
}
#foot .footerNav ul li{
	display:inline-block;
	padding:0 12px;
}
#foot .footerNav ul span,
#foot .footerNav ul li a{ 
    color: #0088BC;
    font-size: 18px;
    font-weight: bold;
}
#foot .footerBottom {
	width:860px;
	margin:0 auto;
}
#foot .footerBottom .logoBox{
	width:400px;float:left;
	margin-top: 12px;
}
#foot .footerBottom .txtBox{
	width:385px;float:right;
	font-size:18px;
	line-height:1.5;
}


@media all and (max-width: 768px) {
	img{
		width:100%;
	}
	a:hover img{
	opacity:1
	}
	.wrap{
		width:auto;
		margin:0 auto;
		line-height:1.7;
		font-size:14px;
	}
	.pc{
		display:none;
	}
	.sp{
		display:inline-block;
	}
	.pc_inline{
		display:none;
	}
	.sp_inline{
		display:inline-block;
	}
	
/*head
--------------------------------*/
	.mv {
		padding: 150px 0px 0;
	}
	.mv .mvTxt{
		padding:0 10px;
	}
	.mv .tag {
		margin: 80px 0 100px;
		padding: 0 10px;
	}
	.mv .tag img{
		width:100%;
		max-width:490px;
	}
	.mv .mainTtl {
		margin-top: 0;
	}
	.detailBox {
		width: auto;
		margin: 20px auto 0;
	}
	.detailBox .detailBlock {
		float: none;
		margin: 0 auto 20px;
	}
	.detailBox .detailBlock:nth-child(2) {
		margin-top: auto;
	}
	.detailBox .detailBlock:nth-child(3) {
		margin-right: auto;
	}
	.detailBox .detailBlock .img {
		margin-bottom: 15px;
	}
	.detailBox .detailBlock .txt {
		font-size: 15px;
	}
	.detailBox .detailBlock .ttl {
		width: 200px;
		margin: 0 auto 15px;
	}
	.detailBox .detailBlock:nth-child(2) .img:after, .detailBox .detailBlock:nth-child(2) .img:before {
		display:none;
	}
	
/*sec01
--------------------------------*/	
	.sec01 .sec01_img {
		margin-top: -40px;
	}
	.sec01 .sec01_txtBox {
		width: auto;
		margin: -15px auto 70px;
		padding: 0 10px;
	}
	.sec01 .sec01_txtBox .ttl {
		margin-bottom: 20px;
	}
	.generalTtl {
		font-size: 16px;
	}
	.sec01 .sec01_txtBox .txt {
		font-size: 15px;
		line-height: 2;
	}
	.sec01 .btn {
		text-align: center;
		padding: 0 10px;
	}
	.sec01 .btn img{
		max-width:490px;
		
	}
	.sec01 .detailBox {
		margin-bottom: 25px;
	}
	.sec01 {
		margin-bottom: 80px;
	}
	
	
/*sec02
--------------------------------*/	
	.sec02 .ttl {
		margin-bottom: 30px;
	}
	.sec02 .detailBox {
		margin-bottom: 25px;
	}
	.sec02 {
		margin-bottom: 90px;
	}
	.sec02 .btn {
		text-align: center;
		padding: 0 10px;
	}
	.sec02 .btn img {
		max-width:490px;
	}
	
	
	.sec03 .sec03_txtArea {
		width: auto;
	}
	.sec03 .sec03_txtArea .sec03_txtBox {
		margin-top: 0;
		display: block;
	}
	.sec03 .mainTtl {
		margin-bottom: 20px;
	}
	.sec03 .sec03_txtArea01 .ttl {
		text-align: center;
		margin-bottom: 20px;
	}
	.sec03 .sec03_txtArea01 .sec03_txtBox .imgBlock .profBox {
		width: auto;
		margin: 20px 10px 0 10px;
		font-size: 14px;
	}
	.sec03 .sec03_txtArea01 .sec03_txtBox .imgBlock .profBox .ttl img {
		max-width:312px;
	}
	.sec03 .sec03_txtArea01 .sec03_txtBox .imgBlock .profBox .ttl {
		margin-bottom: 15px;
	}
	.sec03 .sec03_txtArea01 .sec03_txtBox .txtBlock {
		margin-top: 25px;
		font-size: 16px;
		margin-left: 0;
		padding: 0 10px;
		width:auto;
	}
	.sec03 .sec03_txtArea01 {
		margin-bottom: 50px;
	}
	.sec03 .sec03_txtArea02 .ttl {
		text-align: center;
	}
	.sec03 .sec03_txtArea02 .sec03_txtBox .txtBlock {
		margin-top: 25px;
		font-size: 16px;
		line-height: 2.1;
		margin-right: 0;
		padding: 0 10px;
	    margin-bottom: 30px;
		width:auto;
	}
	.sec03 .btn {
		margin-top: 40px;
		padding:0 10px;
	}
	.sec03 .btn img {
		max-width:490px;
	}
	.sec03 {
		margin-bottom: 60px;
	}
/*sec04
--------------------------------*/
	.sec04 {
		padding: 0;
	}
	.sec04 .sec04Inner {
		padding-bottom: 70px;
	}
	.sec04 .sec04_01 .detailList {
		margin-bottom: 40px;
		padding: 30px 10px 20px;
	}
	.detailList {
		width: auto;
		margin: 0 auto;
	}
	.detailList dl {
    display: block;
    margin-bottom: 15px;
		font-size:15px;
}
	.detailList dl dd {
		flex: 1;
		font-weight: normal;
	}
	.detailList dl dd p+p {
		margin-top: 10px;
	}
	.sec04 .ttl02{
		margin-bottom:30px;
	}
	.sec04 .flowBox {
		width: auto;
	}
	.sec04 .flowBox .flowBlock img{
	    width: auto;
    	max-width: 100%;
	}
	.sec04 .flowBox .flowBlock {
		margin-bottom: 20px;
	    padding: 20px 10px 20px 23px;
		color: #fff;
	}
	.sec04 .flowBox .flowBlock:after {
		width: 42px;
		height: 42px;
		left: -10px;
		top: -18px;
		bottom: auto;
	}
	
/*sec05
--------------------------------*/
	.sec05 .sec05_mv {
		margin-bottom: 40px;
		margin-top: -1px;
	}
	.sec05 .ttl {
    	margin-bottom: 30px;
	}
	.sec05 .ttl img{
		width:auto;
	}
	.sec05 .sec05_01 .detailList {
		margin-bottom: 40px;
		padding: 0 10px;
	}
	.sec05 .sec05_02 .txt {
		padding-top: 10px;
		margin-bottom: 40px;
	    font-size: 15px;
	}
	
/*sec06
--------------------------------*/
	.sec06 {
		padding: 15px 0 0;
	}
	.sec06 .sec06Inner {
		width: auto;
		margin: 0 auto;
		padding:0 10px;
	}
	.sec06 .sec06Inner .sec06_contentArea {
		width: auto;
		margin: 0 auto;
		padding: 40px 10px 50px;
	}
	.sec06 .sec06Inner .ttl {
		margin-bottom: 20px;
	}
	.sec06 .sec06Inner .ttl img{
		width:auto;
	}
	.sec06 .sec06Inner .formArea {
		font-size: 14px;
		line-height: 1.6;
	}
	.sec06 .sec06Inner .headTxt {
		width: auto;
		margin: 0 auto 30px;
	}
	.sec06 .sec06Inner .formArea .formCont dl {
		display: block;
		margin-bottom: 10px;
	}
	.sec06 .sec06Inner .formArea .formCont dl dt {
		width: 100%;
		margin-top: 0;
		margin-bottom: 5px;
	}
	.sec06 .sec06Inner .formArea .formCont dl dd input {
		padding: 6px 6px;
		font-size: 14px;
	}
	.sec06 .sec06Inner .formArea .formCont dl dd select {
		font-size: 14px;
		height: 34px;
	}
	.sec06 .sec06Inner .formArea .formCont dl dd textarea {
		height: 150px;
		font-size: 14px;
	}
	.sec06 .sec06Inner .formArea .formCont .btnArea .confirm,
	.sec06.finish .sec06Inner .formArea .topback a {
		font-size: 17px;
		margin-top: 15px;
	}
	
/*foot
--------------------------------*/
	#foot .footerNav ul li {
		padding: 0px 8px;
	}
	#foot .pagetop {
		bottom: 20px;
		width: 60px;
	}
	#foot .footerBottom {
		width: auto;
	}
	#foot {
		padding: 40px 10px 30px;
	}
	#foot .footerNav {
		margin-bottom: 25px;
	}
	#foot .footerBottom .logoBox {
		text-align:center;
		width:300px;
		float:none;margin:0 auto 20px;
	}
	#foot .footerBottom .txtBox {
		width: auto;
		float: none;
		font-size: 14px;
		line-height: 1.5;
	    text-align: center;
	}
	#foot .footerNav ul span, #foot .footerNav ul li a {
		font-size: 14px;
	}
}



/*===================================
　confirm
====================================*/

.sec06 .sec06Inner .formArea .formCont.confirm-form dl {
    margin-bottom: 15px;
}
.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea  {
    float:left;
}
.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea .back {
    width: 200px;
    font-size: 24px;
    color: #0088BC;
    background: #fff;
    font-weight: bold;
    padding: 10px;
    margin-top: 25px;
}
.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea .send {
    width: 530px;
    font-size: 24px;
    color: #fff;
    background: #0088BC;
    font-weight: bold;
    padding: 10px;
    margin-top: 25px;
	margin-left: 20px;
}
.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea .back:hover,
.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea .send:hover,
.sec06 .sec06Inner .formArea .formCont .btnArea .confirm:hover,
.sec06 .sec06Inner .formArea .formCont .btnBox .btnArea:hover{
    opacity:.7;
	cursor:pointer;
}
.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea {
	position:relative;
}
.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea:after {
    content:"";
	width:15px;
	height: 15px;
	border-top:2px solid #fff;
	border-right:2px solid #fff;
	transform:rotate(45deg);
	position:absolute;
	right:25px;
	top:25px;bottom:0;
	margin:auto;
}
.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea.btnStyle02:after {
	transform:rotate(-135deg);
	position:absolute;
	right:auto;left:25px;
	border-top:2px solid #0088BC;
	border-right:2px solid #0088BC;
}
.sec06.confirm {
    padding: 40px 0 115px;
}

@media all and (max-width: 768px) {
	.sec06 .sec06Inner .formArea .formCont.confirm-form dl dt {
		width: 100%;
		margin-top: 0;
		margin-bottom: 5px;
		font-size: 13px;
		color: #9f9f9f;
	}
	
	.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea  {
		width:100%;
	}
	.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea .back {
		width: 100%;
	    font-size: 20px;
	}
	.sec06 .sec06Inner .formArea .formCont.confirm-form .btnBox .btnArea .send {
		width: 100%;
	    margin-left: 0;
	 	font-size: 20px;
	}
	
	
	
}