@charset "utf-8";

/* Base Start */

* {
	box-sizing:border-box;
  margin:0;
  padding:0;
}

article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,textarea {
	display:block;
}

img {
  border:0;
  vertical-align:top;
}

em,address {
	font-style:normal;
}

body {
	color:#000;
	font-family:"Noto Serif JP",'小塚明朝 Pro','Kozuka Mincho Pro',"游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-size:100%;
	text-align:center;
}

.gothic {
	font-family:"Noto Sans JP", '小塚ゴシック Pro','Kozuka Gothic Pro',"游ゴシック体",YuGothic,"YuGothic M","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS P Gothic",sans-serif;
}

a {
	color:#0090d8;
	outline:none;
	text-decoration:none;
}

a:hover {
	text-decoration:underline;
}

#anc-wrapper {
	width:100%;
	overflow:hidden;
}

/* Base End */

/* Clearfix Start */

.clearfix::after {
	content:"";
	display:block;
	clear:both;
}

/* Clearfix End */

/* Header Start */

#header {
	z-index:9000;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:66px;
}

#nav-toggle {
	z-index:10001;
	position:fixed;
	right:0;
	top:0;
	display:flex;
	justify-content:center;
	align-items:center;
	margin-left:auto;
	background-color:#000;
	width:66px;
	height:66px;
	cursor:pointer;
}

#nav-toggle section {
	display:flex;
	justify-content:center;
	align-items:center;
	border:1px solid transparent;
	width:35px;
	height:35px;
}

#nav-toggle section div {
	position:relative;
	width:27px;
	height:21px;
}

#nav-toggle section div span {
	position:absolute;
	left:0;
	display:block;
	width:100%;
	height:3px;
	background-color:#fff;
	transition:.35s ease-in-out;
}

#nav-toggle section div span:nth-child(1) {
	top:0;
}

#nav-toggle section div span:nth-child(2) {
	top:9px;
}

#nav-toggle section div span:nth-child(3) {
	top:18px;
}

.gnavi {
	z-index:9998;
	position:absolute;
	right:100%;
	top:0;
	background-color:#000;
	width:100%;
	height:auto;
	min-height:613px;
	-webkit-transition:.5s ease-in-out;
	-moz-transition:.5s ease-in-out;
	transition:.5s ease-in-out;
	text-align:right;
}

.gnavi>img {
	z-index:1;
	position:absolute;
	left:0;
	top:0;
	width:50%;
	max-width:390px;
}

.gnavi div {
	z-index:10;
	position:absolute;
	right:84px;
	top:0;
	padding:164px 0 152px 0;
}

.gnavi div ul {
	list-style-type:none;
}

.gnavi div ul>li {
	padding-bottom:36px;
	line-height:100%;
	font-size:22px;
}

.gnavi div ul li a {
	color:#fff;
	text-decoration:none;
}

.gnavi div ul li a:hover {
	text-decoration:underline;
}

.gnavi div ul+ul {
	position:relative;
	padding-top:37px;
}

.gnavi div ul+ul::before {
	position:absolute;
	right:0;
	top:0;
	display:block;
	background-color:#fff;
	width:96px;
	height:1px;
	content:"";
}

.gnavi div ol {
	display:flex;
	justify-content:flex-end;
	list-style-type:none;
}

.gnavi div ol>li+li {
	padding-left:12px;
}

.open #nav-toggle section {
	border-color:#fff;
}

.open #nav-toggle section div span:nth-child(1) {
	top:10px;
	transform:rotate(315deg);
}

.open #nav-toggle section div span:nth-child(2) {
	width:0;
	left:50%;
}

.open #nav-toggle section div span:nth-child(3) {
	top:10px;
	transform:rotate(-315deg);
}

.open .gnavi {
	transform:translateX(100%);
}

.upper {
	position:relative;
	width:100%;
	height:auto;
}

.upper>img {
	z-index:1;
	width:100%;
	height:auto;
}

.mv-base {
	z-index:10;
	position:absolute;
	left:0;
	top:0;
	display:flex;
	align-items:center;
	width:100%;
	height:100%;
}

.mv-text {
	padding:0 128px 50px 0;
	width:100%;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	color:#fff;
	text-shadow:0px 0px 5px rgba(0,0,0,.9),0px 0px 5px rgba(0,0,0,.8),0px 0px 5px rgba(0,0,0,.7),0px 0px 10px rgba(0,0,0,.7);
	text-align:left;
}

.mv-text h1 {
	padding-left:36px;
	line-height:166%;
	font-size:40px;
	font-weight:normal;
}

.mv-text p {
	line-height:220%;
	font-size:16px;
	letter-spacing:2px;
}

.mv-base strong {
	position:absolute;
	left:27px;
	bottom:0;
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#fff;
	width:250px;
	height:214px;
}

.ticker-base {
	position:absolute;
	left:410px;
	right:90px;
	bottom:-16px;
	display:flex;
	align-items:center;
	height:60px;
	background-color:#063212;
	color:#fff;
	border-radius:6px;
	line-height:230%;
	font-size:15px;
	list-style-type:none;
}

.ticker-title {
	flex-shrink:0;
	padding:0 24px;
}

.ticker-main {
	padding:0 20px;
	border-left:1px solid rgba(255,255,255,.5);
	width:calc(100% - 271px);
	height:30px;
	text-align:left;
}

.ticker-main ul li {
	line-height: 1;
}

.ticker-main ul li a {
	line-height: 2;
	color:#fff;
	text-decoration:none;
}

.ticker-main ul li a:hover {
	text-decoration:underline;
}

.ticker-button {
	flex-shrink:0;
	padding-right:38px;
}

.ticker-button em {
	display:inline-block;
	width:125px;
	height:28px;
}

.ticker-button em a {
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#fff;
	color:#063212;
	border-radius:4px;
	width:100%;
	height:100%;
	line-height:100%;
	font-size:12px;
	text-decoration:none;
}

.ticker-button em a::after {
	position:absolute;
	right:8px;
	top:calc(50% - 4px);
	display:block;
	border-top:1px solid #063212;
	border-right:1px solid #063212;
	width:8px;
	height:8px;
	transform:rotate(45deg);
	content:"";
}

.ticker-button em a:hover {
	opacity:.8;
}

@media only screen and (max-width : 1149px) {
	.upper {
		height:800px;
	}
	
	.upper>img {
		height:800px;
		object-fit:cover;
	}
	
	.mv-base div {
		padding:0 62px 50px 0;
	}
	
	.mv-base div h1 {
		padding-left:20px;
		line-height:140%;
		font-size:36px;
	}
	
	.mv-base div p {
		line-height:180%;
	}
	
	.ticker-base {
		left:0;
		right:0;
		top:100%;
		bottom:auto;
		width:100%;
		border-radius:0;
	}
	
	
}


@media screen and (min-width : 768px) and (max-width : 1149px) {
	
}

@media only screen and (max-width : 767px) {
	.ticker-base {
		flex-flow:row wrap;
		justify-content:space-between;
		height:auto;
	}
	
	.ticker-title,
	.ticker-button {
		padding:7px 12px;
		height:50px;
	}
	
	.ticker-main {
		position:relative;
		order:1;
		padding:5px 12px;
		border:0;
		width:100%;
		height:50px;
	}

	.ticker-main ul li {
		line-height: inherit;
	}
	
	.ticker-main ul li a {
		line-height: inherit;
	}
	
	.ticker-main::before {
		position:absolute;
		left:12px;
		top:0;
		display:block;
		background-color:rgba(255,255,255,.5);
		width:calc(100% - 24px);
		height:1px;
		content:"";
	}
	
	.bxslider li {
		width:350px !important;
	}
}

/* Header End */

/* Main Start */

#contents {
	position:relative;
}

.container {
	margin:0 auto;
	width:1140px;
}

.inner {
	margin:0 auto;
	width:1110px;
}

#contents h2 {
	line-height:0;
	font-size:0;
	text-align:left;
}

#contents h2 small {
	display:block;
	padding-bottom:28px;
	color:#063212;
	line-height:100%;
	font-size:18px;
	font-weight:bold;
	letter-spacing:2px;
}

#contents h2 big {
	display:block;
	line-height:100%;
	font-size:39px;
	font-weight:normal;
	letter-spacing:3px;
}

.beige {
	background-color:rgba(244,238,230,.64);
}

.graysh-beige {
	background-color:#edeae6;
}

@media only screen and (max-width : 1149px) {
	.inner {
		width:100%;
	}
	
	
}

@media screen and (min-width : 768px) and (max-width : 1149px) {
	.container {
		width:750px;
	}
	
	#contents h2 small {
		padding-bottom:21px;
		font-size:17px;
	}
	
	#contents h2 big {
		font-size:34px;
	}
	
	
}

@media only screen and (max-width : 767px) {
	.container {
		width:80%;
	}
	
	#contents h2 small {
		padding-bottom:14px;
		font-size:16px;
	}
	
	#contents h2 big {
		font-size:29px;
	}
	
	
}

/* Main End */

/* Footer Start */

#footer {
	padding:52px 0 64px 0;
	background-color:#000;
}

.foot-inner {
	display:flex;
	margin:0 auto;
	width:1110px;
}

.foot-data {
	padding-top:28px;
	color:#fff;
	text-align:left;
}

.foot-data ul {
	padding:32px 0 64px 0;
	list-style-type:none;
}

.foot-data ul>li dl {
	display:flex;
	line-height:220%;
	font-size:14px;
	letter-spacing:2px;
}

.foot-data ul>li dl dt {
	flex-shrink:0;
	width:130px;
}

.foot-data ul>li dl dd {
	flex-grow:1;
}

.foot-data ul>li dl dd span {
	display:inline-block;
}

.foot-data ol {
	display:flex;
	list-style-type:none;
}

.foot-data ol>li+li {
	padding-left:12px;
}

.foot-data small {
	display:block;
	padding-top:24px;
	line-height:100%;
	font-size:10px;
}

.foot-buttons {
	margin-left:auto;
}

.foot-buttons ul {
	list-style-type:none;
}

.foot-buttons ul li {
	padding-bottom:22px;
	width:360px;
}

.foot-buttons ul li em {
	display:block;
	height:70px;
}

.foot-buttons ul li em a {
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	padding-left:2px;
	color:#000;
	border-radius:8px;
	width:100%;
	height:100%;
	line-height:100%;
	font-size:15px;
	letter-spacing:2px;
	text-decoration:none;
}

.foot-buttons ul li:nth-child(1) em a {
	background-color:#fff;
}

.foot-buttons ul li:nth-child(2) em a {
	background-color:rgba(255,255,255,.8);
}

.foot-buttons ul li em a::before {
	position:absolute;
	left:10px;
	top:calc(50% - 6px);
	display:block;
	border-top:1px solid #000;
	border-right:1px solid #000;
	width:12px;
	height:12px;
	transform:rotate(45deg);
	content:"";
}

.foot-buttons ul li em a:hover {
	opacity:.8;
}

@media only screen and (max-width : 1149px) {
	.foot-inner {
		flex-direction:column;
	}
	
	.foot-buttons {
		order:-1;
		margin-left:0;
	}
}

@media screen and (min-width : 768px) and (max-width : 1149px) {
	#footer {
		padding:39px 0 48px 0;
	}
	
	.foot-inner {
		width:750px;
	}
	
	.foot-data {
		padding-top:21px;
	}
	
	.foot-data ul {
		padding:24px 0 48px 0;
	}
	
	.foot-data small {
		padding-top:18px;
	}
	
	.foot-buttons ul {
		display:flex;
	}
	
	.foot-buttons ul li {
		width:48.5%;
	}
	
	.foot-buttons ul li+li {
		margin-left:3%;
	}
}

@media only screen and (max-width : 767px) {
	#footer {
		padding:26px 0 32px 0;
	}
	
	.foot-inner {
		width:90%;
	}
	
	.foot-data {
		padding-top:14px;
	}
	
	.foot-data ul {
		padding:16px 0 32px 0;
	}
	
	.foot-data ul>li dl dt {
		width:120px;
	}
	
	.foot-data small {
		padding-top:12px;
	}
	
	.foot-buttons ul li {
		padding-bottom:11px;
		width:100%;
	}
}

/* Footer End */

/* Pagetop Start */

#pagetop {
	position:fixed;
	right:50px;
	bottom:18px;
	width:45px;
	height:44px;
}

@media only screen and (max-width : 1149px) {
	
}

@media screen and (min-width : 768px) and (max-width : 1149px) {
	#pagetop {
		right:36px;
	}
}

@media only screen and (max-width : 767px) {
	#pagetop {
		right:22px;
	}
}

/* Pagetop End */

/* Top Page (index.html) Start */

.about {
	margin-left:auto;
	padding:192px 0 124px 0;
	width:97%;
}

.about dl {
	display:flex;
	padding-top:64px;
}

.about dl dt {
	flex-shrink:0;
	width:563px;
}

.about dl dd {
	order:-1;
	flex-grow:1;
	margin:-9px 52px 0 0;
}

.about dl dd p,
.concept-inner dl dd p,
.service-texts p,
.message p,
.service-details ul li dl dd p,
.shop-info p {
	line-height:220%;
	font-size:16px;
	text-align:left;
	letter-spacing:2px;
}

.concept {
	padding:40px 0 160px 0;
	background:url(../top_images/bg_big01.jpg) left top no-repeat;
	background-size:cover;
}

.concept-inner {
	margin:0 auto;
	padding:80px 60px 60px;
	background-color:rgba(255,255,255,.85);
	width:1186px;
}

.concept-inner h2,
.message h2,
.service-details h2 {
	text-align:center !important;
}

.concept-inner h2 small,
.message h2 small,
.service-details h2 small {
	padding-left:2px;
}

.concept-inner h2 big,
.message h2 big,
.service-details h2 big {
	padding-left:3px;
}

.concept-inner dl {
	display:flex;
	padding-top:80px;
}

.concept-inner dl dt {
	flex-shrink:0;
	width:406px;
}

.concept-inner dl dd {
	order:-1;
	flex-grow:1;
	margin:-9px 60px 0 0;
}

.service {
	position:relative;
}

.service img {
	z-index:1;
	width:100%;
	height:auto;
}

.service-texts {
	z-index:10;
	position:absolute;
	left:calc(50% - 555px);
	top:0;
	padding-top:10%;
	color:#fff;
	width:1110px;
	height:100%;
}

.service-texts h2 small {
	color:#fff !important;
}

.service-texts p {
	padding-top:44px;
	width:41%;
}

.message {
	padding:156px 0 168px 0;
}

.message h2 {
	margin-bottom:128px;
}

.message em {
	display:block;
	padding-top:20px;
	line-height:220%;
	font-size:16px;
	text-align:right;
	letter-spacing:2px;
}

.light-beige {
	background-color:rgba(249,247,234,.26);
}

.beige {
	background-color:#f8f6f3;
}

.service-details {
	padding:140px 0 124px 0;
}

.service-details ul {
	margin:0 auto;
	padding-top:172px;
	max-width:1078px;
	list-style-type:none;
}

.service-details ul li {
	padding-bottom:40px;
}

.service-details ul li dl {
	display:flex;
	align-items:center;
}

.service-details ul li dl dt {
	flex-shrink:0;
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#063212;
	color:#fff;
	width:118px;
	height:118px;
	line-height:150%;
	font-size:16px;
}

.service-details ul li dl dd {
	flex-grow:1;
	margin-left:40px;
}

.shop-info {
	padding:160px 0 164px 0;
}

.shop-info h2 {
	margin-bottom:32px;
}

.shop-info h3 {
	position:relative;
	margin-top:180px;
	line-height:0;
	font-size:0;
	text-align:left;
}

.shop-info h3 span {
	position:relative;
	display:block;
	padding-left:110px;
}

.shop-info h3 span small {
	display:block;
	padding-bottom:10px;
	line-height:100%;
	font-size:24px;
	font-weight:normal;
}

.shop-info h3 span big {
	display:block;
	line-height:100%;
	font-size:39px;
	font-weight:normal;
}

.shop-info h3 span big>span {
	position:static;
	display:inline;
	padding:0;
}

.shop-info h3 span::before {
	position:absolute;
	left:0;
	top:calc(50% - 42px);
	display:block;
	background:url(../top_images/bg_logo.png) no-repeat;
	background-size:85px 84px;
	width:85px;
	height:84px;
	content:"";
}

.shop-info h3::after {
	display:block;
	margin-top:48px;
	background-color:#063212;
	width:100%;
	height:1px;
	content:"";
}

.shop-info strong {
	display:block;
	padding:36px 0 20px 0;
	line-height:220%;
	font-size:16px;
	font-weight:normal;
	text-align:left;
	letter-spacing:2px;
}

.shop-info ul {
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	padding-top:36px;
	list-style-type:none;
}

.shop-info ul li {
	padding:0 15px 30px;
}

.shop-info ul li img {
	border-radius:10px;
}

.shop-info h4 {
	padding:60px 0 32px 0;
	text-align:left;
	line-height:100%;
	font-size:26px;
	font-weight:normal;
	letter-spacing:2px;
}

.shop-data-map {
	display:flex;
	padding:20px 0 60px 0;
}

.shop-data {
	flex-grow:1;
	margin-top:10px;
	margin-right:32px;
	text-align:left;
}

.shop-data b {
	display:block;
	padding-bottom:20px;
	line-height:220%;
	font-size:17px;
	letter-spacing:2px;
}

.shop-data b span {
	display:inline-block;
}

.shop-data>p {
	line-height:220%;
	font-size:15px;
	letter-spacing:2px;
}

.shop-map {
	flex-shrink:0;
	width:460px;
}

.shop-map div {
	position:relative;
	padding-top:78.26%;
	width:100%;
	height:0;
	overflow:hidden;
}

.shop-map div iframe {
	position:absolute;
	left:0;
	top:0;
	width:100% !important;
	height:100% !important;
}

.shop-info em {
	display:block;
	padding-top:160px;
}

.shop-info em a {
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#000;
	color:#fff;
	border-radius:8px;
	margin:0 auto;
	width:100%;
	max-width:550px;
	height:100px;
	text-decoration:none;
	line-height:220%;
	font-size:17px;
}

.shop-info em a small {
	display:inline-block;
	text-align:left;
	font-size:inherit;
}

.shop-info em a::before {
	position:absolute;
	left:10px;
	top:calc(50% - 6px);
	display:block;
	border-top:1px solid #fff;
	border-right:1px solid #fff;
	width:12px;
	height:12px;
	transform:rotate(45deg);
	content:"";
}

.shop-info em a:hover {
	opacity:.8;
}

.update-info {
	padding:124px 0 160px 0;
}

.update-info div {
	display:flex;
}

.update-info div h2 {
	width:390px;
}

.update-info div section {
	padding-top:46px;
	width:calc(100% - 390px);
}

.update {
	list-style-type:none;
}

.update li dl {
	color:#3e3232;
	text-align:left;
}

.update li dl dt {
	display:flex;
	align-items:center;
}

.update li dl dt small {
	display:inline-block;
	width:110px;
	line-height:100%;
	font-size:16px;
	font-weight:bold;
}

.update li dl dt big {
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#f0f0ee;
	border-radius:15px;
	color:#999;
	width:120px;
	height:30px;
	line-height:100%;
	font-size:12px;
	font-weight:bold;
}

.update li dl dd {
	padding:8px 0 44px 0;
	line-height:220%;
	font-size:16px;
	letter-spacing:2px;
}

.update li dl dd a {
	color:#3e3232;
	text-decoration:none;
}

.update li dl dd a:hover {
	text-decoration:underline;
}

.update-info em {
	display:block;
	text-align:right;
}

.update-info em a {
	position:relative;
	display:inline-block;
	padding-left:16px;
	color:#3e3232;
	line-height:100%;
	font-size:16px;
	text-decoration:none;
}

.update-info em a::before {
	position:absolute;
	left:0;
	top:calc(50% - 5px);
	display:block;
	border-top:1px solid #3e3232;
	border-right:1px solid #3e3232;
	width:10px;
	height:10px;
	transform:rotate(45deg);
	content:"";
}

.update-info em a:hover {
	text-decoration:underline;
}

.about dl dt img,
.concept-inner dl dt img,
.shop-info ul li img {
	max-width:100%;
	height:auto;
}

@media only screen and (max-width : 1149px) {
	.about {
		margin:0 auto;
	}
	
	.about dl,
	.concept-inner dl,
	.shop-data-map {
		flex-direction:column;
	}
	
	.about dl dt,
	.concept-inner dl dt {
		width:100%;
	}
	
	.about dl dd,
	.concept-inner dl dd {
		order:0;
		margin:0;
		padding-top:32px;
	}
	
	.about h2 {
		text-align:center !important;
	}
	
	.about h2 small {
		padding-left:2px;
	}
	
	.about h2 big {
		padding-left:3px;
	}
	
	.service img {
		height:700px;
		object-fit:cover;
	}
	
	.shop-data {
		margin:0;
		padding-top:20px;
	}
	
	.shop-map {
		order:-1;
		width:100%;
	}
	
	
}

@media screen and (min-width : 768px) and (max-width : 1149px) {
	.about {
		padding:144px 0 93px 0;
		width:750px;
	}
	
	.about dl {
		padding-top:48px;
	}
	
	.concept-inner {
		width:750px;
	}
	
	.concept-inner dl {
		padding-top:60px;
	}
	
	.service-texts {
		left:calc(50% - 375px);
		width:750px;
	}
	
	.service-texts p {
		padding-top:33px;
		width:65%;
	}
	
	.message {
		padding:117px 0 126px 0;
	}
	
	.message h2 {
		margin-bottom:96px;
	}
	
	.message em {
		padding-top:15px;
	}
	
	.service-details {
		padding:105px 0 93px 0;
	}
	
	.service-details ul {
		padding-top:129px;
	}
	
	.service-details ul li {
		padding-bottom:30px;
	}
	
	.service-details ul li dl dd {
		margin-left:30px;
	}
	
	.shop-info {
		padding:120px 0 123px 0;
	}
	
	.shop-info h2 {
		margin-bottom:24px;
	}
	
	.shop-info h3 {
		margin-top:135px;
	}
	
	.shop-info h3 span {
		padding-left:95px;
	}
	
	.shop-info h3 span small {
		font-size:22px;
	}
	
	.shop-info h3 span big {
		font-size:34px;
	}
	
	.shop-info h3 span::before {
		top:calc(50% - 39px);
		background-size:79px 78px;
		width:79px;
		height:78px;
	}
	
	.shop-info h3::after {
		margin-top:36px;
	}
	
	.shop-info strong {
		padding:27px 0 15px 0;
	}
	
	.shop-info ul {
		padding-top:27px;
	}
	
	.shop-info ul li {
		padding:0 calc(25px / 2) 25px;
	}
		
	.shop-info h4 {
		padding:45px 0 24px 0;
	}
	
	.shop-data-map {
		padding:15px 0 45px 0;
	}
	
	.shop-data b {
		padding-bottom:15px;
	}
	
	.shop-info em {
		padding-top:120px;
	}
	
	.update-info {
		padding:93px 0 120px 0;
	}
	
	.update-info div h2 {
		width:200px;
	}
	
	.update-info div section {
		padding-top:38px;
		width:calc(100% - 200px);
	}
	
	.update li dl dd {
		padding:8px 0 33px 0;
	}
	
	
}

@media only screen and (max-width : 767px) {
	.about {
		padding:180px 0 62px 0;
		width:80%;
	}
	
	.about dl {
		padding-top:32px;
	}
	
	.concept {
		padding:40px 0;
		background-size:200% auto;
	}
	
	.concept-inner {
		padding:40px 30px 30px;
		width:80%;
	}
	
	.concept-inner dl {
		padding-top:40px;
	}
	
	.service-texts {
		left:10%;
		width:80%;
	}
	
	.service-texts p {
		padding-top:22px;
		width:100%;
	}
	
	.message {
		padding:78px 0 84px 0;
	}
	
	.message h2 {
		margin-bottom:64px;
	}
	
	.message em {
		padding-top:10px;
	}
	
	.service-details {
		padding:70px 0 62px 0;
	}
	
	.service-details ul {
		padding-top:86px;
	}
	
	.service-details ul li {
		padding-bottom:20px;
	}
	
	.service-details ul li dl {
		flex-direction:column;
	}
	
	.service-details ul li dl dd {
		margin-left:0;
		padding-top:20px;
	}
	
	.shop-info {
		padding:80px 0 82px 0;
	}
	
	.shop-info h2 {
		margin-bottom:16px;
	}
	
	.shop-info h3 {
		margin-top:90px;
	}
	
	.shop-info h3 span {
		padding-left:80px;
	}
	
	.shop-info h3 span small {
		font-size:20px;
	}
	
	.shop-info h3 span big {
		font-size:29px;
	}
	
	.shop-info h3 span big>span {
		font-size:16px;
	}
	
	.shop-info h3 span::before {
		top:calc(50% - 36px);
		background-size:73px 72px;
		width:73px;
		height:72px;
	}
	
	.shop-info h3::after {
		margin-top:24px;
	}
	
	.shop-info strong {
		padding:18px 0 10px 0;
	}
	
	.shop-info ul {
		flex-direction:column;
		padding-top:18px;
		width:100%;
	}
	
	.shop-info ul li {
		margin:0 auto;
		padding:0 0 20px;
	}
		
	.shop-info h4 {
		padding:30px 0 16px 0;
	}
	
	.shop-data-map {
		padding:10px 0 30px 0;
	}
	
	.shop-data b {
		padding-bottom:10px;
	}
	
	.shop-map div {
		padding-top:100%;
	}
	
	.shop-info em {
		padding-top:80px;
	}
	
	.shop-info em a small span {
		display:block;
	}
	
	.update-info {
		padding:62px 0 80px 0;
	}
	
	.update-info div {
		flex-direction:column;
	}
	
	.update-info div h2 {
		width:100%;
	}
	
	.update-info div section {
		padding-top:24px;
		width:100%;
	}
	
	.update li dl dd {
		padding:8px 0 22px 0;
	}
	
	
}

/* Top Page (index.html) End */

/* News Index (news/index.html) Start */

.news,
.news-detail {
	padding:188px 0 160px 0;
}

.news div {
	padding:92px 140px 160px;
}

.news em {
	display:block;
}

.news em a {
	display:flex;
	justify-content:center;
	align-items:center;
	margin:0 auto;
	padding-left:2px;
	background-color:#000;
	border-radius:8px;
	color:#fff;
	width:100%;
	max-width:330px;
	height:60px;
	line-height:100%;
	font-size:17px;
	letter-spacing:2px;
	text-decoration:none;
}

.news em a span {
	position:relative;
	display:inline-block;
	padding:0 44px;
}

.news em a span::before {
	position:absolute;
	left:0;
	top:calc(50% - 5px);
	display:block;
	border-top:1px solid #fff;
	border-right:1px solid #fff;
	width:10px;
	height:10px;
	transform:rotate(45deg);
	content:"";
}

.news em a:hover {
	opacity:.8;
}

@media only screen and (max-width : 1149px) {
	
}

@media screen and (min-width : 768px) and (max-width : 1149px) {
	.news,
	.news-detail {
		padding:141px 0 120px 0;
	}
	
	.news div {
		padding:69px 0 120px;
	}
	
	
}

@media only screen and (max-width : 767px) {
	.news,
	.news-detail {
		padding:94px 0 80px 0;
	}
	
	.news div {
		padding:46px 0 80px;
	}
	
	
}

/* News Index (news/index.html) End */

/* News Detail (news/detail.html) Start */

.news-detail dl {
	display:flex;
	align-items:center;
	padding-top:128px;
	color:#3e3232;
	text-align:left;
}

.news-detail dl dt {
	width:110px;
	line-height:100%;
	font-size:16px;
	font-weight:bold;
}

.news-detail dl dd {
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#f0f0ee;
	border-radius:15px;
	color:#999;
	width:120px;
	height:30px;
	line-height:100%;
	font-size:12px;
	font-weight:bold;
}

.news-detail h3 {
	padding:32px 0 64px 0;
	color:#3e3232;
	line-height:220%;
	font-size:27px;
	font-weight:normal;
	text-align:left;
	letter-spacing:3px;
}

.news-detail p {
	padding-bottom:36px;
	line-height:220%;
	font-size:16px;
	text-align:left;
	letter-spacing:2px;
}

.news-detail p img {
	margin-bottom:60px;
	max-width:100%;
	height:auto;
}

.news-detail ul {
	display:flex;
	justify-content:center;
	padding:200px 0 136px 0;
	list-style-type:none;
}

.news-detail ul li {
	padding:0 148px;
}

.prev a {
	position:relative;
	display:inline-block;
	padding-left:34px;
	color:#000;
	text-decoration:none;
}

.prev a::before {
	position:absolute;
	left:0;
	top:calc(50% - 9px);
	display:block;
	border-bottom:1px solid #000;
	border-left:1px solid #000;
	width:18px;
	height:18px;
	transform:rotate(45deg);
	content:"";
}

.next a {
	position:relative;
	display:inline-block;
	padding-right:34px;
	color:#000;
	text-decoration:none;
}

.next a::after {
	position:absolute;
	right:0;
	top:calc(50% - 9px);
	display:block;
	border-top:1px solid #000;
	border-right:1px solid #000;
	width:18px;
	height:18px;
	transform:rotate(45deg);
	content:"";
}

.news-detail ul li a:hover {
	text-decoration:underline;
}

.news-detail em {
	display:block;
}

.news-detail em a {
	display:flex;
	justify-content:center;
	align-items:center;
	margin:0 auto;
	padding-left:2px;
	background-color:#000;
	color:#fff;
	border-radius:8px;
	width:100%;
	max-width:495px;
	height:90px;
	line-height:100%;
	font-size:17px;
	letter-spacing:2px;
	text-decoration:none;
}

.news-detail em a span {
	position:relative;
	display:inline-block;
	padding:0 38px;
}

.news-detail em a span::before {
	position:absolute;
	left:0;
	top:calc(50% - 5px);
	display:block;
	border-top:1px solid #fff;
	border-right:1px solid #fff;
	width:10px;
	height:10px;
	transform:rotate(45deg);
	content:"";
}

.news-detail em a:hover {
	opacity:.8;
}

@media only screen and (max-width : 1149px) {
	
}

@media screen and (min-width : 768px) and (max-width : 1149px) {
	.news-detail dl {
		padding-top:96px;
	}
	
	.news-detail h3 {
		padding:24px 0 48px 0;
	}
	
	.news-detail p {
		padding-bottom:27px;
	}
	
	.news-detail p img {
		margin-bottom:45px;
	}
	
	.news-detail ul {
		padding:150px 0 102px 0;
	}
	
	.news-detail ul li {
		padding:0 140px;
	}
	
	
}

@media only screen and (max-width : 767px) {
	.news-detail dl {
		padding-top:64px;
	}
	
	.news-detail h3 {
		padding:16px 0 32px 0;
	}
	
	.news-detail p {
		padding-bottom:18px;
	}
	
	.news-detail p img {
		margin-bottom:30px;
	}
	
	.news-detail ul {
		padding:100px 0 68px 0;
	}
	
	.news-detail ul li {
		padding:0 50px;
	}
	
	
}

/* News Detail (news//detail.html) End */
