@charset "utf-8";

h2.pl {
	font-size:2.3em;
}

h2.eng {
	display:inline-block;
	color:#fff;
	font-size:1em;
	margin:2.6em auto 1.2em auto;
	padding:6px 36px;
	background:#111;
	text-align:center;
	border-radius:48px;
}

h2.eng span {
	font-family: 'Oswald', sans-serif;
	font-size:290%;
	display:block;
	font-weight:normal;
}
@media screen and (max-width: 767px) {
	h2.eng {
		margin:2.6em auto 1.2em auto;
		padding:6px 36px;
		border-radius:48px;
    max-width: 50%;
	}
	h2.eng span {
		font-size:200%;
	}

}

h3.pl {
	font-size:1.6em;
	text-align:left;
}
.intro_wrap {
	max-width:960px;
	margin:0 auto;
}
.intro_wrap h2 {
	font-size:2.1em;
	color:#99393e;
	padding:0;
	margin:0.3em 0;
}
.intro_wrap p {
	text-align:left;
	color:#222;
	margin:0 auto 1.1em auto;
	max-width:690px;
	font-size:1.28em;
	line-height:1.9em;
}
article.al {
	/*background: url("./../img/bg_aqualine.jpg") no-repeat center;*/
	background-size:cover;
	padding-bottom:40px;
}
article.mid {
	background: url("./../img/bg_wood.jpg") no-repeat top center #f3ebda;
	padding-bottom:40px;
}
@media screen and (max-width: 767px) {
	h2.pl {
		font-size:1.48em;
		padding:0 1.3%;
		text-align:left;
	}
	h3.pl {
		font-size:1.43em;
		text-align:left;
	}
}

h2.img {
	width:180px;
	margin:0 auto;
	font-size:1.2em;
}
h2.img img {
	max-width:100%;
	height:auto
}
@media screen and (max-width: 767px) {
	h2.img {
		font-size:1.1em !important;
	}
	h2.img img {
		max-width:68%;
		height:auto
	}
}


/* 左右に線が付く見出し */
h2.bl {
	width:76%;
	max-width:640px;
	font-size:2em;
	letter-spacing:0.13em;
	display: flex;
	align-items: center;
	margin:0.5em auto 1.8em auto;
}
h2.bl:before,
h2.bl:after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: #6391dd;
	display: block;
}
h2.bl:before {
	margin-right: .4em;
}
h2.bl:after {
	margin-left: .4em;
}

.intro_wrap h3,
article.news h3
{
	
	margin:1.8em auto 1.4em auto;
	max-width:880px;
	font-size:1.72em;
	color:#a52907;
	font-weight:bold;
	letter-spacing:0.09em;
	text-align:center !important;
	padding:0 0 2px 0;
}
.intro_wrap h3 span,
article.news h3 span
{
	display:inline-block;
	padding:5px 80px 0 80px;
	background: url(./../img/fig_menu.png) no-repeat center left, url(./../img/fig_menu.png) no-repeat bottom right;
}
.intro_wrap h3:after,
article.news h3:after
{
	content: "";
	flex-grow: 1;
	height: 1px;
	background: linear-gradient(to left, #f3ebda, #48a430 10%, #48a430 90%, #f3ebda);
	margin-left:0.8em;
	display: block;
}
@media screen and (max-width: 767px) {
	.intro_wrap h3,
	article.news h3
	{
		font-size:1.25em !important;
		letter-spacing:0.03em;
	}
	.intro_wrap h3 span,
	article.news h3 span
	{
		padding:5px 43px 0 43px;
	}
}

body.about h4 {
	background: url(./../img/bg_about_ttl.png) no-repeat center;
	background-size:100% auto;
	
	color:#fff;
	font-size:1.7em;
	letter-spacing:0.09em;
	padding:0.2em;
	text-align:center;
}
body.menu h4 {
	background: url(./../img/bg_menu_ttl.png) no-repeat center;
	
	color:#fff;
	font-size:1.6em;
	letter-spacing:0.09em;
	padding:0.2em;
	text-align:center;
}
body.shops h4 {
	
	margin:2em auto 1.4em auto;
	max-width:980px;
	font-size:1.52em;
	font-weight:normal;
	color:#59493f;
	display: flex;
	font-weight:bold;
	letter-spacing:0.08em;
	align-items: center;
}
body.shops h4:before {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: linear-gradient(to left, #48a430 88%, #f3ebda);
	margin-right: 0.8em;
	display: block;
}
body.shops h4::after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: linear-gradient(to right, #48a430 88%, #f3ebda);
	margin-left:0.8em;
	display: block;
}
@media screen and (max-width: 767px) {
	body.menu h4,
	body.shops h4 {
		font-size:1.38em;
	}
}


/*      料金表ページ　
----------------------------------------*/
body.price .wd h3 {
	text-align:left;
	font-size:1.5em;
	color:#333;
	border-bottom:2px solid #555;
	margin-bottom:0.9em !important;
}
body.price .wd h3 span {
	font-family: 'Oswald', sans-serif;
	display:inline-block;
	width:1em;
	padding:0 4px;
	text-align:center;
	font-weight:normal;
	background:#3087b8;
	color:#fff;
	margin-right:0.4em;
	font-size:1em;
	border-radius:2px;
}
@media screen and (max-width: 767px) {
	body.price .wd h3 {
		font-size:1.26em;
		border-bottom:1px solid #555;
	}
	body.price .wd h3 span {
		font-size:0.9em;
	}
}
body.price .wd {
	max-width:890px;
	margin:0 auto 3.8em auto;
	padding:0 !important;
}

.anchor {
	max-width:320px;
	margin:0 auto;
}
.anchor a {
	display:block;
	text-align:left;
	margin:5px;
	font-size:1.2em;
	color: #3087b8;
	border:1px solid #3087b8;
	border-radius:2px;
	padding:0.2em;
}
.anchor a:hover {
	background:#e6f3fa;
	color: #3087b8;
}
.anchor a span {
	font-family: 'Oswald', sans-serif;
	display:inline-block;
	width:1em;
	padding:0 4px;
	text-align:center;
	font-weight:normal;
	background:#3087b8;
	color:#fff;
	margin-right:0.4em;
	font-size:0.8em;
}
.caus {
	display:inline-block;
	margin:2.6em auto 0.9em auto;
	background: #f4eee2;
	border:1px solid #a9a9a9;
	border-radius:3px;
	text-align:left;
	padding:4px 16px;
	font-size:1em;
}
.caus ul {
	padding:0;
	margin:0 0 0 12px;
}
@media screen and (max-width: 767px) {
	.anchor a {
		font-size:1.08em;
	}
	.caus {
		font-size:0.92em;
	}
}


/* ライン 右へフェイド 
-------------------------------*/
body.privacy h3,
body.contact-reserv h3,
body.contact-thanks h3
{
	position:relative;
	
	margin:0 auto 1.4em auto;
	font-size:1.7em;
	color:#59493f;
	font-weight:bold;
	letter-spacing:0.03em;
	border-bottom: 1px solid !important;
    border-image: linear-gradient(to right, #59493f 86%, #fff);
    border-image-slice: 1;
}
body.contact h4,
body.privacy h4 {
	
	font-size:1.6em;
	color:#333;
	letter-spacing:0.09em;
	padding:0.2em;
	text-align:left;
}
body.contact h4:after,
body.privacy h4:after
{
	content: "";
	flex-grow: 1;
	height: 1px;
	background: linear-gradient(to right, #888 90%, #f3ebda);
	margin:0;
	display: block;
}
.tbl_wrap h5 {
	background: url("./../img/bg_mark2.png") no-repeat 1px 6px;
	
	font-size: 1.418em;
	color: #180b53;
	letter-spacing: 0.09em;
	text-align:left;
	padding: 0.2em 0.2em 0.2em 1.9em;
}
.tbl_wrap h5:after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: linear-gradient(to right, #180b53 90%, #fff);
	margin:0 0 0 -36px;
	display: block;
}
@media screen and (max-width: 767px) {
	body.contact h4,
	body.privacy h4 {
		font-size:1.3em;
	}
}


article.gr {
	background:#e4e4e4;
	min-height:260px;
}

article.gr .cont {
	max-width:1200px;
	margin:0 auto;
	padding:0.8em 3%;
	text-align:center;
}
article.gr .cont p {
	max-width:660px;
	margin:0 auto 1.3em auto;
	line-height:1.96em;
	font-size:1.46em;
	font-weight:bold;
	color:#333;
	text-align:left;
}
@media screen and (max-width: 767px) {
	article.gr .cont p {
		margin:0 auto 1.3em auto;
		font-size:1.1em !important;
		font-weight:normal !important;

	}
	body.home .wrap p {
		font-size:1.1em !important;
		line-height:1.6em !important;
		font-weight:normal !important;
	}
}
/*---------------------------------------

  	フレックス共通
		  
----------------------------------------*/
.flexcon {
	max-width:1380px;
	margin:0 auto;
	display:flex;
}
.flexcon .items {
	-webkit-flex: 1;
    flex: 1;
	padding:0;
}
@media screen and (max-width: 767px) {
	.flexcon {
		display:block;
	}
}


/*---------------------------------------

  	イントロ
		  
----------------------------------------*/
article.intro {
	padding:0 !important;
	background:#0c0c0b;
}

article.intro .txt {
	min-height:340px;
	color:#fff;
	text-align:left;
	padding:8% 9%;
	font-size:1.2em;
	line-height:2.3em;
	font-weight:bold;
}
article.intro .bgs {
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}
article.intro .bgt {
	background: url(./../img/bg_intro.jpg) no-repeat center;
	background-size:cover;
}
@media screen and (max-width: 767px) {
	article.intro .txt {
		padding:1.2em 7.8%;
		font-size:1.1em;
		line-height:1.96em;
		min-height:auto;
	}
	article.intro .bgs {
		width:80%;
		margin:0 auto;
		padding-top:49%;
	}
}






/*---------------------------------------

  	使い方部分
		  
----------------------------------------*/
.sub_ttl {
	margin:-26px auto 0 auto;
	padding:0;
	font-size:4.7em;
	color:#fff;
	font-weight:bold;
	color:#777\9; /* IE10以下 */
	-webkit-text-stroke-color: #000;
	-webkit-text-stroke-width: 1px;
}

article.sld {
	padding:0 !important;
	background:#e7e3e2;
}
article.sld ul li {
	color:#222;
    position: relative;
	list-style:none;
	font-size:1.6em;
	font-weight:bold;
	text-align:left;
	padding:0 0 0 1.2em;
	margin:0 0 0.8em 0;
}
/* 右向き三角を描く */
article.sld ul li:before {
    content: "";
    position: absolute;
	top:8px;
	left:1px;
	width: 0;
	height: 0;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 16px solid #f79b0a;
}
@media screen and (max-width: 767px) {
	article.sld {
		padding-bottom:26px !important;
		background:#e7e3e2;
	}
	article.sld ul {
		display:inline-block;
		margin:0 auto;
		padding:0;
	}
	article.sld ul li {
		font-size:1.1em;
		padding:0 0 0 1.26em;
		margin:0 0 0.5em 0;
	}
	article.sld ul li:before {
		top:5px;
		border-top: 5px solid transparent;
		border-bottom: 5px solid transparent;
		border-left: 10px solid #f79b0a;
	}
}

/*---------------------------------------

  	問い合わせ部分
		  
----------------------------------------*/
article.subm {
	padding:0 !important;
	background:#e3e1dc;
}
article.subm section .inner {
	max-width:960px;
	margin:0 auto;
}
article.subm .tel img {
	max-width:230px;
	height:auto;
	margin:0 auto;
	border:none !important;
}
article.subm .info ul {
	display:inline-block;
	margin:0 auto;
}
article.subm .info ul li {
	list-style:none;
	text-align:left;
}






body.home section .wrap {
	padding:3% 5%;
}
article.a1 {
	background:#f3eddd;
}
article.a2 {
	background:#e8f8ff;
}
article.a3 {
	background:#eaeba5;
}
article.tire {
	background:#eaeba5;
}
/*
.worry {
	position:relative;
	background-image: linear-gradient(to bottom, #edf5f9, #acd9f0);
	max-width:790px;
	margin:0 auto;
	border-radius:21px;
	border:6px solid #fb845d;
}
*/
.figs {
	max-width:790px;
	margin:30px auto -7px auto !important;
	text-align: center;
}
.figs img {
	max-width:100%;
	height:auto;
	margin:0 auto;
}
.worry ul li {
	background: url(./../img/icon_ase.png) no-repeat top left;
	list-style:none;
	text-align:left;
	font-size:1.3em;
	font-weight:bold;
	margin:0.9em 0;
	color:#103354;
	padding:0.4em 0 0.4em 2.5em;
}
@media screen and (max-width: 767px) {
	body.home section .wrap {
		padding:0.8%;
	}
	.figs img {
		max-width:70%;
	}
	/*
	.worry {
	 	border-radius:7px;
		border:3px solid #fb845d;
	}
	.worry ul {
		padding:0;
		margin:0 0 0 0.4em;
	}	
	.worry ul li {
		background: url(./../img/icon_ases.png) no-repeat 3px 1px;
		font-size:1.15em;
		padding:0 0.6em 0.4em 1.9em;
	}
	*/	
}



/*---------------------------------------

  	フッター上
		  
----------------------------------------*/
article.aft {
	padding:0 !important;
	background:#0c0c0b;
}
.para {
	position:relative;
	background-attachment: fixed;
	max-width:1200px;
	margin:0 auto;
	height:390px;
	background-size: cover;
	background-repeat:no-repeat;
	background-position: center;
}
.para .cover {
	position:absolute;
	background:rgba(0,0,0,0.2);
	margin:auto;
	top:0;
	bottom:0;
	left:0;
	right:0;
	z-index:10;
}
.para .txt {
	position:absolute;
	margin:auto;
	top:0;
	bottom:0;
	left:0;
	right:0;
	font-size:3em;
	font-weight:bold;
	z-index:20;
	color:#fff;
	text-align:center;
	padding-top:12%;
}
@media screen and (max-width: 767px) {
	.para {
		background-attachment: scroll;
		background-size:cover;
		padding:1.5em 8%;
		height:240px;
	}
	.para .inner {
		width:auto;
		padding:5px 0;
		font-size:1.05em;
	}
	.para .inner h4 {
		font-size:1.38em;
		text-align:left;
	}
	.para .inner p {
		font-size:1.1em;
	}
	.para .txt {
		font-size:1.6em;
		padding:12% 10%;
	}
}


	


.ttl_intro {
	background:#094a77;
}
.ttl_service {
	background:#094a77;
}
.ttl_recruit {
	background:#d34a4a;
}

.ttls {
	position:relative;
	color:#fff;
	text-align: center;
}
.ttls span {
	font-family: 'Oswald', sans-serif;
	font-size:3.8em;
	display:block;
	letter-spacing:0.06em;
}
.ttls h2 {
	padding:0.3em 0 0.3em 0;
	margin:0;
}
@media screen and (max-width: 767px) {
	.ttls span {
		font-size:2em;
	}
	.ttls h2 {
		font-size:1.05em !important;
	}
}

.video_wrap {
	position:relative;
	width:100%;
	max-width:640px;
	height:360px;
	margin:0 auto 5em auto;
}
@media screen and (max-width: 767px) {
	.video_wrap {
		margin:0 auto 3em auto;
	}
}


/*      お問い合わせ（送信完了）　
----------------------------------------*/

body.contact-thanks .wds {
	max-width:580px;
	margin:3em auto;
}
.rbtn {
	padding:3em;
	text-align:center;
}
.rbtn a {
	position:relative;
	display:inline-block;
	background:#e9aa50;
	color:#fff;
	font-weight:bold;
	font-size:1.3em;
	padding:0.18em 2.9em;
	border-radius:2px;
}
.rbtn a:hover {
	background:#e9aa50;
	color:#fff;
	opacity:0.78;
}
/*  <  を描く */
.rbtn a:before{
	position:absolute;
	bottom:0.8em;
	left:6%;
	content:'';
	height:6px;
	width:6px;
	display:block;
	border:1px solid #fff;
	border-top-width:0;
	border-right-width:0;
	transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	-o-transform:rotate(45deg);
}
article.al .cont {
	max-width:790px;
	margin:0 auto;
	text-align:center;
	color:#fff;
	padding:0 2.3%;
}
article.al .cont p {
	font-weight:bold;
	font-size:1.6em;
	text-align:center;
}

.dats {
	width:96%;
	max-width:960px;
	margin:-26px auto 36px auto;
	text-align:center;
	background:#222;
	padding:0.9em 2.6%;
	border-radius:5px;
}
.dats .dts {
	display:inline-block;
	background:rgba(255,255,255,0.96);
	color:#222;
	margin:0 auto 23px auto;
	font-weight:bold;
	padding:0.8em 2.3em;
	border-radius:40px;
}
.dats .dts p {
	padding:0;
	margin:0;
}


/*    室内画像  
----------------------------------------*/
.img_block {
	width:auto;
	margin:0 auto;
}
/* clearfix */
.img_block:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
.img_block ul {
	margin: 0 -1px 0 0;
	padding: 0;
	overflow: hidden;
 	/zoom: 1;/* for IE6,7 */
}
.img_block ul li {
	width: 24.6%;
	height:auto;
	float:left;
	display:inline-block;
	*display:inline;
	/zoom: 1;/* for IE6,7 */
	margin:0 1px 0 0 !important;
	padding:0;
	list-style: none;
}
.img_block ul li .img {
	position:relative;
	display:block;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
	width:100%;
	padding-top:89%;
}
@media screen and (max-width: 767px) {

	.s_nav {
		max-width:560px;
		margin:0 auto;
		padding:0 5px;
	}
	.s_nav ul {
		margin:0 auto;
	}
	.s_nav ul li {
		width:100%;
		float:none;
		display:block;
		margin:0 0 1.2em 0;
	}
.img_block ul {
	margin: 0 -1px 0 0;
	padding: 0;
	overflow: hidden;
 	/zoom: 1;/* for IE6,7 */
}
.img_block ul li {
	width: 49%;
	height:auto;
	float:left;
	display:inline-block;
	*display:inline;
	/zoom: 1;/* for IE6,7 */
	margin:0 0.5% 0 0 !important;
	padding:0;
	list-style: none;
}
.img_block ul li .img {
	position:relative;
	display:block;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
	width:100%;
	padding-top:89%;
}
}














