﻿@charset "utf-8";
*{
	margin:0;
	padding:0;
	list-style:none;
}
html{
	/*background:#a1d5d2;*/
}
body{
	background:#fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:16px;
	line-height:1.8;
	color:#333;
}
.clearfix{
	zoom:100%;
	min-height:0px;
}
.clearfix:after{
	content:"";
	display:block;
	clear:both;
}
.blue{
	color:#08c0f9 !important;  }
img{
	vertical-align:top;
}
article a{
	color:#33a0b8;
	text-decoration:none;
}
article a:hover{
		text-decoration:underline;
}
a img{
	border:none;
}
@media screen and (min-width:671px){
	html{
		min-width:990px;
	}
.sp-only{
	display:none !important;
}
.br-pc { display:none;
}
	/* ===== header ===== */
	header{
		position:fixed;
		width:100%;
		padding:10px 0;
		height:85px;
		top:0;
		z-index:3;
	}
	header.gray{
		/*background:#999;*/
		background:rgba(255,255,255,0.66);
		z-index:9;
	}
	header h1{
		position:absolute;
		left:0;
		right:0;
		width:230px;
		margin:auto;
		bottom:5px;
		text-align:center;
	}
	header h1 img{
		width:100%;
		margin-top:10px;
		z-index:12;
	}
	header .sns_area{
		text-align:right;
		font-size:0;
		margin:0 0 10px;
	}
	header .sns_area li:not(.tel){
		width:40px;
	}
	header .sns_area li.tel_sp{
		display:none;
	}
	header .sns_area li{
		width:40px;
		display:inline-block;
		margin:0 10px 0 0;
	}
	header .sns_area li a{
		background:#78a8b4;
		display:block;
		width:auto;
		height:40px;
		border-radius:20px;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	header .sns_area li:first-child a{
		background:#a1d5d2;
	}
	header .sns_area li.tel{
		background:#fff;
		width:auto;
		height:40px;
		border-radius:20px;
	}
	header .sns_area li.mail a:hover{
		background:url(../images/icon_mail_hover.png) no-repeat center #fff;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	header .sns_area li.tw a:hover{
		background:url(../images/icon_tw_hover.png) no-repeat center #fff;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	header .sns_area li.fb a:hover{
		background:url(../images/icon_fb_hover.png) no-repeat center #fff;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	header .sns_area li.ig a:hover{
		background:url(../images/icon_ig_hover.png) no-repeat center #fff;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	header .sns_area li a:hover img{
		opacity:0;
	}
	header nav{
		width:990px;
		margin:0 auto;
	}
	header nav ul li{
		width:180px;
		float:left;
		text-align:center;
	}
	header nav ul li.nav02{
		margin:0 270px 0 0;
	}
	header nav ul li a{
		width:auto;
		height:34px;
		display:block;
		color:#000;
		font-weight:bold;
		letter-spacing:0.2em;
		text-decoration:none;
		line-height:34px;
		border-bottom:#a1d5d2 solid 1px;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	header nav ul li.nav02 a,
	header nav ul li.nav03 a{
		border-bottom:#78a8b4 solid 1px;
	}
	header nav ul li a:hover{
		border-bottom:#fff solid 1px;
	}
	.toppage header nav ul li a{
		color:#333;
	}
	header.gray nav ul li a{
		color:#000;
	}
	/* ===== article ===== */
	.newsimage{
		background:url(../images/img_news.jpg) center fixed;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		height:335px;
		padding:195px 0 0;
		background-position: 50% 120%;
	}
	.aboutimage{
		background:url(../images/img_about.jpg) center fixed;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		/*height:265px;*/
		height:335px;
		padding:195px 0 0;
	}
	.serviceimage{
		background:url(../images/img_service.jpg) center fixed;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		height:335px;
		padding:195px 0 0;
		background-position: 50% 120%;
	}
	.faqimage{
		background:url(../images/img_faq.jpg) center fixed;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		height:335px;
		padding:195px 0 0;
		background-position: 50% 120%;
	}
	.privacyimage{
		background:url(../images/img_privacy.jpg) center fixed;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		height:335px;
		padding:195px 0 0;
	}
	.contactimage{
		background:url(../images/img_contact.jpg) center fixed;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		height:335px;
		padding:195px 0 0;
	}
	article hgroup{
		letter-spacing:0.2em;
		text-align:center;
		position:relative;
	}
	article h2{
		font-size:42px;
		font-weight:bold;
		line-height:1.0;
		display:inline-block;
		margin:0 auto;
		padding:0 0 20px;
		border-bottom:#e5e5e5 solid 1px;
		position:relative;
		z-index:5;
	}
	article section:not(.faqTop) h2{
		text-shadow:-1px -1px 5px #fff,1px 1px 5px #fff;
	}
	.topimage{
		background:#eceef0;
		width:100%;
		padding:105px 0 60px;
		margin:0 0 85px;
		display:table;
		position:relative;
		border-bottom:#e5e5e5 solid 1px;
	}
	/*.topimage{
		background:url(../images/img_about_002.jpg);
		background-repeat: repeat repeat;
		width:100%;
		padding:105px 0 60px;
		margin:0 0 85px;
		display:table;
		position:relative;
	}
	.topimage:after{
		content: "";
		background: rgba(236,238,240,0.88);
		width: 100%;
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		z-index: 1; 
	}*/
	.topimage .textblock{
		display:table-cell;
		vertical-align:middle;
		text-align:center;
		line-height:1.0;
		position:relative;
		z-index: 5; 
	}
	.topimage .textblock h2{
		font-size:60px;
		margin:0 0 40px;
		padding:0;
		line-height:1.5;
		border-bottom:none;
		text-shadow:none;
		color:#333;
		letter-spacing:0.1em;
	}
	.topimage .textblock h3{
		font-size:24px;
		color:#333;
	}
	.topimage a{
		background:url(../images/icon_arw.png) no-repeat ;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		width:40px;
		height:40px;
		border-radius:22px;
		display:block;
		margin:0 auto;
		text-decoration:none;
		text-align:center;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
		/*border:#a1d5d2 solid 1px;*/
		position:absolute;
		bottom:20px;
		left:0;
		right:0;
		text-indent:-9999px;
		z-index: 5;
	}
	.topimage a:hover{
		background:url(../images/icon_arw_hover.png) no-repeat;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	article hgroup small{
		background:#fff;
		width:110px;
		margin:auto;
		padding:7px;
		color:#a1d5d2;
		font-size:14px;
		font-weight:bold;
		line-height:1.0;
		position:absolute;
		z-index:6;
		top:48px;
		left:0;
		right:0;
		border-radius:14px;
	}
	.servicelist{
		/*width:960px;*/
		margin:140px 0;
	}
	.servicelist p{
		/*width:960px;*/
		margin:40px 20px 0;
		font-size:18px;
		text-align:center;
	}
	.servicelist ul{
		width:100%;
		margin:60px 0;
		display:table;
	}
	.servicelist ul li{
		/*background:#78a8b4;*/
		background:#4c4948;
		width:33%;
		display:table-cell;
		text-align:center;
		font-size:24px;
		font-weight:bold;
		line-height:60px;
	}
	.servicelist ul li.service02{
		/*background:#a1d5d2;*/
		background:#4c4948;
		width:34%;
		border-left:#fff solid 1px;
		border-right:#fff solid 1px;
		box-sizing:border-box;
	}
	.servicelist ul li figure{
		/*height:270px;*/
		height:400px;
		position:relative;
	}
	.servicelist ul li.service01 figure{
		background:url(../images/top_service01.jpg) center top;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	.servicelist ul li.service02 figure{
		background:url(../images/top_service02.jpg) center top;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	.servicelist ul li.service03 figure{
		background:url(../images/top_service03.jpg) center top;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	.servicelist ul li a{
		width:100%;
		/*height:330px;*/
		height:460px;
		display:block;
		color:#fff;
		text-decoration:none;
	}
	.servicelist ul li a figcaption{
		/*background:rgba(255,255,255,0.9);*/
		background:rgba(0,0,0,0.6);
		color:#fff;
		position:absolute;
		width:100%;
		/*height:270px;*/
		height:400px;
		padding:80px;
		box-sizing:border-box;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
		opacity:0;
		font-size:16px;
		line-height:1.8;
	}
	.servicelist ul li a:hover figcaption{
		opacity:1;
	}
	/* ===== aboutlist ===== */
	.aboutTop{
		padding:0 0 140px;
		text-align:center;
	}
	.aboutTop > p{
		margin:40px 0;
		font-size:18px;
		font-weight:bold;
	}
	.aboutTop figure{
		width:200px;
		margin:0 auto 20px;
	}
	.aboutTop .name{
		font-weight:bold;
		margin:0 0 40px;
	}
	.aboutTop ul.btn_button{
		text-align:center;
		font-size:0;
	}
	.aboutTop ul.btn_button li{
		display:inline-block;
	}
	.aboutTop ul.btn_button li a{
		background:#a1d5d2;
		color:#fff;
		margin:0 auto;
		width:260px;
		height:56px;
		display:block;
		text-align:center;
		font-size:14px;
		line-height:56px;
		border-radius:60px;
		text-decoration:none;
		box-shadow: 0 20px 30px 0 rgba(0,0,0,0.2);
		font-weight:bold;
		border:#a1d5d2 solid 1px;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	.aboutTop ul.btn_button li a:hover{
		background:#fff;
		color:#a1d5d2;
		height:56px;
	}
	/* ===== FAQ ===== */	
	.faqTop{
		padding:140px 0;
		/*background:#B30F00;*/
		width:100%;
		display:table;
		background:url(../images/top_image01.jpg) center fixed;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		text-align:center;
		color:#fff;
		position:relative;
	}
	.faqTop:after{
		content: "";
		background: rgba(0,0,0,0.44);
		width: 100%;
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		z-index: 1; 
	}
	.faqTop p{
		margin:40px 20px;
		font-size:18px;
		z-index: 5;
		position:relative;
	}
	.faqTop ul.btn_button{
		text-align:center;
		font-size:0;
		z-index: 5;
		position:relative;
	}
	.faqTop ul.btn_button li{
		display:inline-block;
	}
	.faqTop ul.btn_button li a{
		background:#a1d5d2;
		color:#fff;
		margin:0 auto;
		width:260px;
		height:56px;
		display:block;
		text-align:center;
		font-size:14px;
		line-height:56px;
		border-radius:60px;
		box-shadow: 0 20px 30px 0 rgba(0,0,0,0.2);
		text-decoration:none;
		font-weight:bold;
		border:#a1d5d2 solid 1px;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	.faqTop ul.btn_button li a:hover{
		background:#fff;
		color:#a1d5d2;
		height:56px;
	}
	/* ===== newslist ===== */
	.newslist,
	.newsdetail{
		margin:105px 0 40px;
		padding:0 0 40px;
	}
	.top{
		padding-top:35px;
	}
	.newslist dl{
		width:960px;
		margin:40px auto;
		border-bottom:#ccc dashed 1px;
	}
	.newslist dl a{
		padding: 20px 0;
		display: block;
	}
	.newslist dl dt{
		width:160px;
		padding:20px 0;
		float:left;
		border-top:#ccc dashed 1px;
	}
	.newslist dl dd{
		width:800px;
		/*padding:20px 0;*/
		float:left;
		border-top:#ccc dashed 1px;
	}
	.newslist .btn_news,
	.newsdetail .btn_news{
		width:960px;
		margin:0 auto;
		text-align:right;
	}
	.newslist .btn_news a,
	.newsdetail .btn_news a{
		color:#333;
		line-height:20px;
		text-decoration:none;
	}
	.newslist .btn_news a:before,
	.newsdetail .btn_news a:before{
		content:">";
		width:20px;
		height:20px;
		text-align:center;
		line-height:20px;
		display:inline-block;
		background:#a1d5d2;
		color:#fff;
		margin:0 10px 0 0;
		border-radius:10px;
		vertical-align:middle;
	}
	.newslist .btn_news a:hover,
	.newsdetail .btn_news a:hover{
		text-decoration:underline;
	}
	.newslist .paging{
		font-size:0;
		text-align:center;
	}
	.newslist .paging li{
		display:inline-block;
		margin:0 10px;
	}
	.newslist .paging li a{
		background:#eceef0;
		min-width:20px;
		font-size:14px;
		line-height:40px;
		padding:0 10px;
		display:block;
		border-radius:20px;
		color:#4c4948;
		text-decoration:none;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	.newslist .paging li a:hover{
		/*background:#fff;
		color:#78a8b4;*/
		opacity: 70%;
	}
	.newsdetail h3{
		position:relative;
		width:960px;
		margin:60px auto 30px;
		padding-bottom:10px;
		border-bottom:1px solid #ddd;
		font-size:24px;
		font-weight:bold;
		letter-spacing:0.1em;
	}
	.newsdetail h3:after{
		content:"";
		display:block;
		position:absolute;
		left:0;
		bottom:-1px;
		width:33%;
		height:1px;
		background:#a1d5d2;
	}
	.newsdetail .textarea{
		width:960px;
		margin:0 auto 30px;
		padding:0 0 30px;
		border-bottom:#ccc dashed 1px;
	}
	.newsdetail .textarea h4 {
	  padding: 0 0.5em;
	  background: transparent;
	  font-size:18px;
	  border-left: solid 4px #a1d5d2;
	  margin-bottom: 1rem;
	}
	.newsdetail .textarea ul{
		list-style: none;
		margin: 20px auto;
		background: #f5f5f5;
		border-radius :8px;
		padding: 1em 0.5em 1em 2em;
	}
	.newsdetail .textarea ul ul{
		padding-left: 1em;
	}
	.newsdetail .textarea ul li{
		padding-left: 1.5em;
		text-indent: -1.5em;
	}
	.newsdetail .textarea ul li:before{
		content: "・";
		color:#a1d5d2;
		padding-right: .5em;
	}
	.newsdetail .textarea ol{
		counter-reset: item;
		list-style-type: none;
		background: #f5f5f5;
		margin: 20px auto;
		border-radius :8px;
		padding: 1em 0.5em 1em 2em;
	}
	.newsdetail .textarea ol ol{
		padding-left: 1em;
	}
	.newsdetail .textarea ol li{
		text-indent: -1.5em;
		padding-left: 1.5em;
	}
	.newsdetail .textarea ol li:before {
		counter-increment: item;
		content: counter(item)'.';
		padding-right: .5em;
		color: #a1d5d2;
	}
	.newsdetail .textarea img{
		max-width:960px !important;
		height:auto !important;
	}
	/* ===== service ===== */
	.service{
		margin:105px 0 0;
		padding:0 0 40px;
	}
	.service > p{
		width:960px;
		margin:60px auto 30px;
		font-size:18px;
		font-weight:bold;
		text-align:center;
	}
	.service > ul > li{
		padding:60px 0;
	}
	.service > ul > li figure{
		width:50%;
	}
	.service > ul > li:nth-of-type(2n+1) figure{
		float:left;
	}
	.service > ul > li:nth-of-type(2n) figure{
		float:right;
		margin: 0 0 0 -90px;
	}
	.service > ul > li .textarea{
		/*background:rgba(255,255,255,0.66);*/
		background:#fff;
		width:40%;
		padding:60px;
		box-sizing:border-box;
		float:left;
		/*border:#dedbcc solid 1px;*/
		font-size:14px;
		position: absolute;
	}
	.service > ul  > li:nth-of-type(2n+1) .textarea{
		/*margin:80px 0 0 -90px;*/
		margin:120px 0;
		left: -webkit-calc(50% - 90px);
		left: calc(50% - 90px);
	}
	.service > ul  > li:nth-of-type(2n+1) .textarea:before{
		content:"01";
		width: 100px;
		height: 100px;
		display:block;
		font-size:100px;
		font-weight:bold;
		font-family:Arial, Helvetica, sans-serif;
		line-height:80px;
		text-align:center;
		color:#f5f5f5;
		position: absolute;
		top: -30px;
		right:-30px;
		z-index: 1;
	}
	.service >  ul > li:nth-of-type(2n) .textarea{
		/*margin:80px 0 0 90px;*/
		margin:120px 0;
		right: -webkit-calc(50% - 90px);
		right: calc(50% - 90px);
	}
	.service > ul  > li:nth-of-type(2n) .textarea:before{
		content:"02";
		width: 100px;
		height: 100px;
		display:block;
		font-size:100px;
		font-weight:bold;
		font-family:Arial, Helvetica, sans-serif;
		line-height:80px;
		text-align:center;
		color:#f5f5f5;
		position: absolute;
		top: -30px;
		left:-60px;
		z-index: 1;
	}
	.service > ul  > li:nth-of-type(3) .textarea:before{
		content:"03";
	}
	.service > ul > li .textarea h3{
		position:relative;
		margin:0 0 30px;
		padding-bottom:10px;
		border-bottom:1px solid #ddd;
		font-size:24px;
		line-height:1.0;
		font-weight:bold;
		letter-spacing:0.1em;
	}
	.service > ul > li .textarea h3:after{
		content:"";
		display:block;
		position:absolute;
		left:0;
		bottom:-1px;
		width:33%;
		height:1px;
		background:#a1d5d2;
	}
	.service ul li .textarea ol{
		margin:0 0 30px;
	}
	.service ul li .textarea ol li:not(:first-of-type){
		margin-top:15px;
	}
	.service ul li .textarea dl dt{
		color:#a1d5d2;
		font-size:18px;
		font-weight:bold;
		letter-spacing:0.1em;
		margin:0 0 10px;
	}
	.service ul li .textarea dl dt:not(:first-of-type){
		margin-top:15px;
	}
	.service ul li .textarea dl dd{
		font-size:16px;
	}
	.service > ul > li .textarea .thumbnail{
		margin:30px 0 0;
		font-size:0;
	}
	.service > ul > li .textarea .thumbnail li{
		width:150px;
		display:inline-block;
		margin:0 10px 0 0;
		font-size:12px;
	}
	/* 20190824リスト追加 */
	.service .brandlist{
		max-width: 960px;
		margin: 10px auto;
	}
	.service .brandlist li{
		padding: 0 0 0 20px;
		position: relative;
		list-style: none;
	}
	.service .brandlist li:before{
		content: "・";
		position: absolute;
		top: 0;
		left: 0;
	}
	.service .brandlist li:not(:last-of-type){
		margin: 0 0 5px;
	}

	/* ===== flow ===== */
	.flow{
        background:#eceef0;
		margin:60px 0;
		padding:80px 0;
	}
	/*.flow{
		background:url(../images/img_about_002.jpg);
		margin:60px 0;
		padding:80px 0;
		background-repeat: repeat repeat;
		position:relative;
		z-index:0;
	}
	.flow:after{
		content:"";
		background:rgba(236,238,240,0.88);
		position:absolute;
		top:0;
		bottom:0;
		left:0;
		right:0;
		z-index:-1;
	}*/
	.flow > .lead{
		width:960px;
		margin:0 auto 60px;
		text-align: center;
		font-size:18px;
		font-weight:bold;
	}
	.flow h3{
		width:960px;
		position:relative;
		margin:30px auto 50px;
		padding-bottom:10px;
		font-size:28px;
		font-weight:bold;
		text-align: center;
		letter-spacing:0.1em;
	}
	.flow h3:after{
		content:"";
		display:block;
		position:absolute;
		margin: auto;
		right: 0;
		left:0;
		bottom:0;
		width: 90px;
		height:1px;
		background:#0e1668;
	}
	.flow h3 small{
		background:#0e1668;
		font-size:16px;
		color:#fff;
		margin:0 20px 0 0;
		padding:5px 10px;
	}
	.flow .Inner {
		margin-left: auto;
		margin-right: auto;
		max-width: 1020px;
	}
	.flow p{
		margin: 0;
		padding: 0;
	}
	.flow li:not(.service){
		list-style: none;
	}
	.flow .List-Item {
		border-top: 1px solid #bbb;
		width: 100%;
	}
	.flow .List-Item:nth-of-type(1) {
		border-top: 0;
	}
	.flow .List-Item-Content {
		margin-left: auto;
		margin-right: auto;
		padding-top: 30px;
		padding-bottom: 30px;
		max-width: 920px;
		display: flex;
		align-items: center;
		position: relative;
		z-index: 1;
	}
	.flow .List-Item-Content.one {
		padding-top: 0;
	}
	.flow .List-Item-Content-Number {
		position: relative;
		margin-right: 40px;
		border-radius: 50%;
		width: 60px;
		height: 60px;
		line-height: 60px;
		text-align: center;
		background: #a1d5d2;
		font-family:Arial, Helvetica, sans-serif;
		color: #fff;
		font-size: 26px;
	}
	.flow .List-Item-Content::before {
		content: "";
		width: 4px;
		background: #a1d5d2;
		position: absolute;
		top: -1px;
		bottom: 0;
		left: 28px;
		z-index: -1;
	}
	.flow .List-Item:first-of-type .List-Item-Content::before {
		top: 50%;
	}
	.flow .List-Item:last-of-type .List-Item-Content::before {
		bottom: 50%;
	}
	.flow .List-Item-Content-Title {
		margin-right: 20px;
		flex-basis: 200px;
		color: #a1d5d2;
		font-size: 20px;
		font-weight:bold;
	}
	.flow .List-Item-Content-Description {
		width: -webkit-calc(100% - 60px - 40px - 200px - 20px);
		width: calc(100% - 60px - 40px - 200px - 20px);
		line-height: 1.5;
		font-size: 16px;
	}
	/* ===== about ===== */
	.about{
		margin:105px 0 0;
	}
	.about > p{
		width:960px;
		margin:60px auto;
		font-size:18px;
		font-weight:bold;
		text-align:center;
	}
	.about h3{
		width:960px;
		position:relative;
		margin:30px auto 30px;
		padding-bottom:10px;
		border-bottom:1px solid #ddd;
		font-size:24px;
		font-weight:bold;
		letter-spacing:0.1em;
	}
	.about h3:after{
		content:"";
		display:block;
		position:absolute;
		left:0;
		bottom:-1px;
		width:33%;
		height:1px;
		background:#a1d5d2;
	}
	.about figure{
		width:100%;
		margin:60px auto 30px;
	}
	.about figure + p,
	.about h3 + p{
		width:960px;
		margin:0 auto 80px;
	}
	.about .heading {
		width:960px;
		position:relative;
		margin: 0 auto 50px;
		padding-bottom:10px;
		font-size:28px;
		font-weight:bold;
		text-align: center;
		letter-spacing:0.1em;
		border: none;
	}
	.about .heading:after{
		content:"";
		display:block;
		position:absolute;
		margin: auto;
		right: 0;
		left:0;
		bottom:0;
		width: 90px;
		height:1px;
		background:#a1d5d2;
	}
	.about__philosophy{
		width: 960px;
		margin: 0 auto;
		padding: 80px 0;
	}
	.about__philosophy .philosophy__heading {
		font-size:20px;
		font-weight:bold;
		color: #a1d5d2;
		letter-spacing:0.1em;
	}
	.about__philosophy p{
		margin:15px 0 0;
	}
	.about__policy {
		padding: 80px 0;
	}
	/*.about__policy{
		background:url(../images/img_about_001.jpg)no-repeat center;
		padding: 100px 0;
		position:relative;
		z-index:0;
	}
	.about__policy:after{
		content:"";
		background:rgba(0,0,0,0.66);
		position:absolute;
		top:0;
		bottom:0;
		left:0;
		right:0;
		z-index:-1;
	}*/
	.about__policy .heading {
		width:960px;
		position:relative;
		margin: 0 auto 50px;
		padding-bottom:10px;
		font-size:28px;
		font-weight:bold;
		text-align: center;
		letter-spacing:0.1em;
		border: none;
	}
	.about__policy p:not(:firast-of-type){
		margin: 1rem 0 0;
	}
	.about__policy .policylist{
		width: 960px;
		margin: 0 auto;
	}
	.about__policy .policylist li{
		padding: 0 0 0 20px;
		position: relative;
		list-style: none;
	}
	.about__policy .policylist li:before{
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-radius: 50%;
		background-color: #a1d5d2;
		position: absolute;
		top: 12px;
		left: 0;
	}
	.about__infomation {
		padding: 80px 0;
	}
	.about dl{
		width:960px;
		margin: 0 auto;
		line-height:2.0;
		border-bottom: #dedbcc solid 1px;
	}
	.about dl dt{
		width:230px;
		margin:0 0 20px;
		padding:20px 20px 0 0;
		float:left;
		border-top:#dedbcc solid 1px;
	}
	.about dl dd{
		width:710px;
		margin:0 0 20px;
		padding:20px 0 0;
		float:left;
		border-top:#dedbcc solid 1px;
	}
	.about a[href^="http"] {
		background:url(../images/linkico.png) no-repeat right center;
		padding-right:18px;
		margin-right:5px;
	}
	.about a[href^="https://hpdemo.tokyo/"] {
		background:none;
		padding-right:0px;
		margin-right:0px;
	}
	/* ===== access ===== */
	.access{
		background:#eceef0;
		margin:105px 0 40px;
		padding:60px 0 80px;
	}
	/*.access{
		background:url(../images/img_about_002.jpg);
		margin:105px 0 40px;
		padding:60px 0 80px;
		background-repeat: repeat repeat;
		position:relative;
		z-index:0;
	}
	.access:after{
		content:"";
		background:rgba(236,238,240,0.88);
		position:absolute;
		top:0;
		bottom:0;
		left:0;
		right:0;
		z-index:-1;
	}*/
	.access ul{
		width:960px;
		margin:40px auto 0;
		display:table;
	}
	.access ul li{
		width:50%;
		display:table-cell;
		vertical-align:top;
		padding:0 40px;
		box-sizing:border-box;
	}
    .access ul li figure #map_canvas_01 {
		width: 600px;
		height: 350px;
		float:left;
		box-sizing:border-box;
	}
    .access ul li figure #map_canvas_02 {
		width: 600px;
		height: 350px;
		float:left;
		box-sizing:border-box;
	}
	.access ul li h4{
		font-size:18px;
		font-weight:bold;
		letter-spacing:0.1em;
		margin:10px auto;
	}
	.access ul li h4 small{
		margin:0 20px 0 0;
		font-size:14px;
	}
	.access ul li p{
		text-align:left;
	}
	/*.access .access_inner{
		width:960px;
		margin: 0 auto;
	}
    .access .access_inner figure #map_canvas_01 {
		height: 450px;
	}
	.access .access_inner h4{
		font-size:18px;
		font-weight:bold;
		letter-spacing:0.1em;
		margin:20px auto 10px;
	}
	.access .access_inner h4 small{
		margin:0 20px 0 0;
		font-size:14px;
	}
	.access .access_inner p{
		text-align:left;
	}
	.about__history {
		padding: 80px 0;

	}*/
	/* ===== privacy ===== */
	.privacy{
		margin:105px 0 0;
		padding:0 0 40px;
	}
	.privacy .lead{
		width:960px;
		margin:60px auto;
		font-size:18px;
		font-weight:bold;
		text-align:center;
	}
	.privacy h3{
		width:960px;
		position:relative;
		margin:30px auto 30px;
		padding-bottom:10px;
		border-bottom:1px solid #ddd;
		font-size:24px;
		font-weight:bold;
		letter-spacing:0.1em;
	}
	.privacy h3:after{
		content:"";
		display:block;
		position:absolute;
		left:0;
		bottom:-1px;
		width:33%;
		height:1px;
		background:#a1d5d2;
	}
	.privacy h4{
		width:960px;
		color:#a1d5d2;
		font-size:18px;
		font-weight:bold;
		letter-spacing:0.1em;
		margin:30px auto;
	}
	.privacy p:not(.lead){
		width:960px;
		margin:15px auto 0;
	}
	.privacy dl{
		width:960px;
		margin:0 auto 0;
	}
	.privacy dl dt{
		font-weight:bold;
	}
	.privacy dl dd{
		margin:15px 0 30px;
		padding:0 0 0 15px;
	}
	.privacy ul{
		width:960px;
		background:#f3f3f3;
		margin:0 auto 0;
		padding:30px 20px;
	}
	.privacy ul li{
		margin:0 0 10px 1em;
	}
	.privacy ul li:before{
		content:"・";
		margin:0 0 0 -1em;
	}
	
		/* ===== faq ===== */
	.faq{
		margin:105px 0 0;
		padding:0 0 40px;
		position:relative;
	}
	.faq .lead{
		width:960px;
		margin:60px auto;
		font-size:18px;
		font-weight:bold;
		text-align:center;
	}
	.faq dl{
		width:960px;
		margin:0 auto 0;
	}
	.faq dl dt{
		line-height:40px;
		font-weight:bold;
	}
	.faq dl dt:not(:first-of-type){
		margin-top:20px;
	}
	.faq dl dt:before{
		background:#a1d5d2;
		content:"Q";
		width:40px;
		height:40px;
		border-radius:20px;
		color:#fff;
		text-align:center;
		display:inline-block;
		margin:0 10px 0 0;
	}
	.faq dl dd{
		margin:20px 0 0;
		padding:0 0 20px 50px;
		border-bottom:#dedbcc solid 1px;
	}
	.faq a[href^="http"] {
	             background:url(../images/linkico.png) no-repeat right center;
	             padding-right:18px;
	             margin-right:5px;
	}
	.faq a[href^="https://test06.hpdemo.tokyo/"] {
	             background:none;
	             padding-right:0px;
	             margin-right:0px;
	}
	.faq ul.btn_button{
		text-align:center;
		font-size:0;
	}
	.faq ul.btn_button li{
		display:inline-block;
		margin:30px 0 105px;
	}
	.faq ul.btn_button li a{
		background:#a1d5d2;
		color:#fff;
		width:260px;
		height:56px;
		display:block;
		text-align:center;
		font-size:14px;
		line-height:56px;
		border-radius:60px;
		box-shadow: 0 20px 30px 0 rgba(0,0,0,0.2);
		text-decoration:none;
		font-weight:bold;
		border:#a1d5d2 solid 1px;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	.faq ul.btn_button li a:hover{
		background:#fff;
		color:#a1d5d2;
		height:56px;
	}
	.faq figure{
		padding:105px 0;
		background:#FBFAE9;
	}
	.faq figure ul{
		font-size:0;
	}
	.faq figure ul li{
		width:33%;
		display:inline-block;
		vertical-align:top;
	}
	.faq figure ul li:nth-of-type(3n+2){
		margin:0 0.5%;
	}
	/* ===== message ===== */
	.message{
		background:#eceef0;
		margin:105px 0 40px;
		padding:80px 0;
	}
	.message h3{
		width:960px;
		position:relative;
		margin:30px auto 50px;
		padding-bottom:10px;
		font-size:28px;
		font-weight:bold;
		text-align: center;
		letter-spacing:0.1em;
	}
	.message h3:after{
		content:"";
		display:block;
		position:absolute;
		margin: auto;
		right: 0;
		left:0;
		bottom:0;
		width: 90px;
		height:1px;
		background:#a1d5d2;
	}
	.message ul{
		width:960px;
		margin:40px auto 0;
		display:table;
	}
	.message ul li{
		width:50%;
		display:table-cell;
		vertical-align:top;
		padding:0 40px;
		box-sizing:border-box;
	}
	.message ul li figure{
		width:300px;
		height:300px;
		border-radius:150px;
		margin:0 auto 30px;
		overflow:hidden;
	}
	.message ul li h4{
		font-size:18px;
		font-weight:bold;
		letter-spacing:0.1em;
		text-align:center;
		margin:10px auto;
	}
	.message ul li h4 small{
		margin:0 20px 0 0;
		font-size:14px;
	}
	.message ul li p{
		text-align:center;
	}
	/* ===== contact ===== */
	.contact{
		margin:105px 0 0;
		padding:0 0 40px;
	}
	.contact .lead{
		width:960px;
		margin:60px auto;
		font-size:18px;
		font-weight:bold;
		text-align:center;
	}
	.contact p:not(.lead){
		width:960px;
		margin:30px auto;
	}
	.contact .btnBack{
		width:960px;
		margin:30px auto;
	}
	.contact .btnBack a{
		background:#a1d5d2;
		color:#fff;
		margin:0 auto;
		width:260px;
		height:56px;
		display:block;
		text-align:center;
		font-size:14px;
		line-height:56px;
		border-radius:60px;
		box-shadow: 0 20px 30px 0 rgba(0,0,0,0.2);
		text-decoration:none;
		font-weight:bold;
		border:#a1d5d2 solid 1px;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	.contact .btnBack a:hover{
		background:#fff;
		color:#a1d5d2;
		height:56px;
	}
	.contact dl{
		width:960px;
		margin:30px auto;
		border-bottom:#ccc solid 1px;
	}
	.contact dl dt{
		width:30%;
		min-height:40px;
		line-height:40px;
		padding:19px 0;
		border-top:#ccc solid 1px;
		float:left;
	}
	.contact dl dt.must:before{
		background:#4c4948;
		width:40px;
		height:40px;
		content:"必須";
		margin:0 10px 0 0;
		display:inline-block;
		text-align:center;
		color:#fff;
		font-size:14px;
		border-radius:20px;
	}
	.contact dl dt:not(.must){
		text-indent:50px;
	}
	.contact dl dd{
		width:70%;
		min-height:40px;
		line-height:40px;
		padding:20px 0;
		border-top:#ccc solid 1px;
		float:left;
	}
	.contact dl dd .red{
		color:#f00;
		font-weight:bold;
		margin:0 0 10px;
	}
	.contact dl dd ul li{
		display:inline-block;
		margin:0 10px 0 0;
	}
	.contact dl dd input[type="text"]{
		width:670px;
		height:38px;
		border:#ccc solid 1px;
		font-size:14px;
		padding: 0 0 0 10px ;
	}
	.contact dl dd input[type="tel"]{
		width:670px;
		height:38px;
		border:#ccc solid 1px;
		font-size:14px;
		padding: 0 0 0 10px ;
	}
	.contact dl dd input[type="email"]{
		width:670px;
		height:38px;
		border:#ccc solid 1px;
		font-size:14px;
		padding: 0 0 0 10px ;
	}
	.contact dl dd select{
		height:38px;
		border:#ccc solid 1px;
	}
	.contact dl dd textarea{
		width:670px;
		height:148px;
		border:#ccc solid 1px;
		font-size:14px;
			line-height:1.5;
		padding: 10px 10px 10px 10px ;
	}
	.contact ul.btn_submit{
		text-align:center;
	}
	.contact ul.btn_submit li{
		display:inline-block;
		margin: 0 10px;
	}
	.contact ul.btn_submit li input[type="submit"]{
		width:260px;
		height:56px;
		border:none;
		text-align:center;
		cursor:pointer;
		border:#a1d5d2 solid 2px;
		border-radius:60px;
		font-size:14px;
		line-height:51px;
		font-weight:bold;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	.contact ul.btn_submit li .submit{
	background: #a1d5d2;
	color: #fff;
	}
	.contact ul.btn_submit li .send{
		background: #a1d5d2;
		color: #fff;
	}
	.contact ul.btn_submit li .back{
		background: #fff;
		color: #a1d5d2;
	}
	.contact ul.btn_submit li input[type="submit"]:hover{
		opacity: 0.7;
	}


	/* ===== footer ===== */
	footer .btn_topto{
		text-align:right;
		margin:0 10px 20px;
	}
	footer .btn_topto a{
		background:url(../images/icon_topto.png) no-repeat #a1d5d2;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		width:40px;
		height:40px;
		display:inline-block;
		border-radius:20px;
		text-decoration:none;
		text-align:center;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
		text-indent:-9999px;
	}
	footer .btn_topto a:hover{
		background:url(../images/icon_topto_hover.png) no-repeat center #fff;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	footer .links{
		background:#fff;
		padding:30px 0;
		/*border-top:#ccc solid 1px;
		border-bottom:#ccc solid 1px;*/
	}
	footer .links ul{
		width:1020px;
		font-size:0;
		margin:0 auto;
	}
	footer .links ul li{
		width:300px;
		min-height:100px;
		display:inline-block;
		margin:0 20px 30px;
	}
	footer .links ul li a:hover{
		opacity: 0.7;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	footer .inner{
		width:990px;
		margin:40px auto 0;
		display:table;
	}
	footer address{
		display:table-cell;
		height:60px;
		position:relative;
		padding:0 0 0 300px;
		box-sizing:border-box;
		font-style:normal;
	}
	footer address figure{
		width:230px;
		height:60px;
		position:absolute;
		top:40px;
		left:46px;
	}
	footer address figure img{
		width:100%;
	}
	footer address h2{
		font-size:18px;
	}
	footer address a{
		font-size:14px;
		color:#333;
		text-decoration:none;
	}
	footer address a:hover{
		text-decoration:underline;
		color:#a1d5d2;
	}
	footer .sns_area{
		display:table-cell;
		width:150px;
		vertical-align:middle;
		text-align:right;
		font-size:0;
	}
	footer .sns_area li{
		width:40px;
		display:inline-block;
		margin:0 10px 0 0;
	}
	footer .sns_area li a{
		background:#a1d5d2;
		display:block;
		width:auto;
		height:40px;
		border-radius:20px;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		-ms-transition: all 1s;
		-o-transition: all 1s;
		transition: all 1s;
	}
	footer .sns_area li.tw a:hover{
		background:url(../images/icon_tw_hover.png) no-repeat center #fff;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	footer .sns_area li.fb a:hover{
		background:url(../images/icon_fb_hover.png) no-repeat center #fff;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	footer .sns_area li.ig a:hover{
		background:url(../images/icon_ig_hover.png) no-repeat center #fff;
		background-size:cover;
		-webkit-background-size:cover;
		-moz-background-size:cover;
	}
	footer .sns_area li a:hover img{
		opacity:0;
	}
	footer nav ul{
		text-align:center;
		font-size:0;
		margin:30px 0;
	}
	footer nav ul li{
		font-size:14px;
		display:inline-block;
		margin:0 20px;
	}
	footer nav ul li:before{
		content:">";
		display:inline-block;
		vertical-align:middle;
		margin:0 10px 0 0;
		color:#a1d5d2;
	}
	footer nav ul li a{
		color:#333;
		text-decoration:none;
	}
	footer nav ul li a:hover{
		text-decoration:underline;
	}
	footer small{
		background:#a1d5d2;
		width:100%;
		height:60px;
		display:block;
		line-height:60px;
		text-align:center;
		color:#fff;
	}
}
