@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;600&display=swap');


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

index

----------------------------------------------------------  */
/* kv */
.top-kv>div {
	height: 64rem;
	position: relative;

}

.top-kv>div:nth-of-type(1) {
	background: url(../img/top-kv2.jpg) no-repeat center / cover;
}

.top-kv>div:nth-of-type(2) {
	background: url(../img/top-kv3.jpg) no-repeat center / cover;
}

/*
.top-kv>div:nth-of-type(3) {
	background: url(../img/top-kv3.jpg) no-repeat center / cover;
}
*/

.top-kv>div:nth-of-type(1)>div {
	width: 25vw;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
}

/* スマホ用 */
@media screen and (max-width: 767px) {
	.top-kv>div:nth-of-type(2)>div {
		width: 60vw;
	}
}

/* 私たちについて */
.top-about {
	padding: 18rem 10rem 15rem 10rem;
}

.js-parallax {
	background: url(../img/top-bg1.png) no-repeat center;
	background-size: 72rem auto;
	background-attachment: fixed;
}

.top-about p {
	font-size: 19px;
	line-height: 2.4;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	font-weight: 800;
	text-shadow: 3px 3px 3px #fff;
}

/* 店舗理念 */
.top-philosophy {
	background:
		url(../img/top-deco1.png) no-repeat right top,
		url(../img/top-deco2.png) no-repeat left bottom,
		url(../img//bg-ptn.jpg) center top;
	background-size:
		34rem auto,
		34rem auto,
		100rem auto;
	padding: 5rem 15rem;
}

.top-philosophy-copy {
	background: #fff;
	padding: 4rem 0;
	width: 70%;
	margin: -8rem 0 0 -5rem;
	position: relative;
	z-index: 99;
	text-align: center;
	font-size: 2rem;
	box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.04);
}

.top-philosophy-copy p:first-of-type {
	margin-bottom: 6rem;
	position: relative;
}

.top-philosophy-copy p:first-of-type::after {
	content: "";
	background: var(--primary);
	width: 4rem;
	height: 1px;
	position: absolute;
	left: calc(50% - 2rem);
	bottom: -3rem;
	display: block;
}

/* 店舗案内 */
.top-store {
	background: url(../img/bg-texture2.jpg) no-repeat center / cover;
	padding: 5rem 10rem;
}

.top-store>div {
	background: #fff;
	padding: 10rem 8rem;
}

.top-store ul {
	display: flex;
	flex-wrap: wrap;
}

.top-store ul li {
	width: 31%;
	text-align: center;
	margin-right: 3.5%;
}

.top-store ul li:nth-child(3n) {
	margin-right: 0;
}

.top-store ul li img {
	margin-bottom: 1rem;
}

.top-store ul li:nth-child(1) {
	margin-bottom: 4rem;
}

/* お知らせ */
.top-news {
	background:
		url(../img/top-deco1.png) no-repeat right top,
		url(../img/top-deco2.png) no-repeat left bottom,
		url(../img//bg-ptn.jpg) center top;
	background-size:
		34rem auto,
		34rem auto,
		100rem auto;
	padding: 5rem 0;
}

.top-news .more {
	margin: 0 auto;
}

.top-news-wrap {
	padding: 0 10rem 10rem 10rem;
	padding-bottom: 10rem;
	margin-bottom: 10rem;
	border-bottom: 1rem solid #e6dfc9;
}

.top-news-fb {
	width: 300px;
	margin: 0 auto;
}

/* 事業内容 */
.top-business {
	background:
		url(../img/top-deco3.png) no-repeat right top,
		url(../img/top-deco4.png) no-repeat left bottom,
		url(../img/bg-texture3.jpg) center top;
	background-size:
		34rem auto,
		34rem auto,
		140rem auto;
	padding: 5rem 0;
}

.top-business-wrap-1>div:first-of-type {
	width: 55%;
}

.top-business-wrap-1>div:last-of-type {
	width: 90%;
	margin-left: auto;
	background: #fff;
	padding: 10rem 5% 10rem 50%;
	margin-top: -36rem;
}

.top-business-wrap-1 .more {
	margin-left: auto;
}

.top-business-wrap-2>div:first-of-type {
	width: 55%;
	margin-left: auto;
}

.top-business-wrap-2>div:last-of-type {
	width: 90%;
	background: #fff;
	padding: 10rem 50% 10rem 5%;
	margin-top: -36rem;
}

.top-business h3 {
	width: 36rem;
	line-height: 1;
	margin-bottom: 3rem;
}

.top-business p {
	margin-bottom: 4rem;
}

/* 会社概要 */
.top-company {
	padding: 5rem 0;
	background: url(../img/bg-texture2.jpg) no-repeat center / cover;
	display: flex;
	align-items: center;
}

.top-company>*:first-of-type {
	width: 60%;
}

.top-company>*:last-of-type {
	width: 40%;
	padding: 0 5%;
	color: #fff;
}

.top-company p {
	margin-bottom: 4rem;
}

.top-company .more {
	margin: 0 auto;
}

/* 採用情報 */
.top-recruit {
	background:
		url(../img/top-deco3.png) no-repeat right top,
		url(../img/top-deco5.png) no-repeat left bottom,
		url(../img//bg-ptn.jpg) center top;
	background-size:
		34rem auto,
		24rem auto,
		100rem auto;
	padding: 5rem 10rem;
}

.top-recruit>div {
	background: url(../img/top-bg2.jpg) no-repeat center / cover;
	padding: 1rem;
}

.top-recruit>div>div {
	border: solid 2px #fff;
	padding: 6rem;
	color: #fff;
}

.top-recruit h2 {
	margin-bottom: 2rem;
}

.top-recruit .more {
	margin: 0 auto;
}

.top-recruit p {
	margin-bottom: 4rem;
	text-align: center;
}

/* お問い合わせ */
.cv {
	background: url(../img/top-bg3.jpg) no-repeat center / cover;
	padding: 3rem;
	color: #fff;
}

.cv a {
	color: #fff;
}

.cv-ttl {
	display: flex;
	align-items: center;
	margin-bottom: 6rem;
	justify-content: center;
}

.cv-ttl h2 {
	width: 32rem;
	margin: 0;
}

.cv-ttl p {
	width: calc(100% - 40rem);
}

.cv-contact {
	border: solid 1px #fff;
	padding: 3rem 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.cv-contact>*:first-of-type {
	margin-right: 4.4rem;
}

.cv-contact>*:first-of-type a {
	display: block;
	font-size: 4rem;
	line-height: 1;
	font-weight: bold;
}

.cv-contact>*:first-of-type a span {
	font-size: 2.8rem;
}

@media screen and (max-width: 767px) {

	/* kv */
	.top-kv>div {
		height: 40rem;
	}

	.top-kv>div:nth-of-type(1)>div {
		width: 16rem;
	}

	/* 私たちについて */
	.top-about {
		padding: 13rem 3rem 10rem 3rem;
	}

	.js-parallax {
		background: url(../img/top-bg1-sp.png) no-repeat center;
		background-size: 32rem auto;
		background-attachment: scroll;
	}

	.top-about p {
		font-size: 16px;
		line-height: 2.4;
		width: 100%;
		margin: 0 auto;
		text-align: center;
		font-weight: 800;
	}

	/* 店舗理念 */
	.top-philosophy {
		background-size:
			14rem auto,
			14rem auto,
			100rem auto;
		padding: 3rem 3rem;
	}

	.top-philosophy-copy {
		padding: 4rem 2rem;
		width: 100%;
		margin: 6rem 0 0 0;
		font-size: 1.7rem;
	}

	/* 店舗案内 */
	.top-store {
		padding: 3rem;
	}

	.top-store>div {
		padding: 6rem 3rem;
	}

	.top-store ul {
		justify-content: space-between;
	}

	.top-store ul li {
		width: 48%;
		margin-right: 0;
	}

	.top-store ul li img {
		margin-bottom: 1rem;
	}

	.top-store ul li:nth-child(2),
	.top-store ul li:nth-child(3) {
		margin-bottom: 4rem;
	}

	/* お知らせ */
	.top-news {
		background-size:
			14rem auto,
			14rem auto,
			100rem auto;
		padding: 3rem 0;
	}

	.top-news .more {
		margin: 0 auto;
	}

	.top-news-wrap {
		padding: 0 3rem 10rem 3rem;
		padding-bottom: 5rem;
		margin-bottom: 5rem;
	}

	/* 事業内容 */
	.top-business {
		background-size:
			16rem auto,
			16rem auto,
			140rem auto;
		padding: 3rem 3rem;
	}

	.top-business-wrap-1>div:first-of-type {
		width: 100%;
	}

	.top-business-wrap-1>div:last-of-type {
		width: 100%;
		background: #fff;
		padding: 4rem 3rem;
		margin-top: 0;
	}

	.top-business-wrap-2>div:first-of-type {
		width: 100%;
	}

	.top-business-wrap-2>div:last-of-type {
		width: 100%;
		background: #fff;
		padding: 4rem 3rem;
		margin-top: 0;
	}

	.top-business h3 {
		width: 100%;
		margin-bottom: 2rem;
	}

	/* 会社概要 */
	.top-company {
		padding: 3rem 3rem;
		display: block;
	}

	.top-company>*:first-of-type {
		width: 100%;
	}

	.top-company>*:last-of-type {
		width: 100%;
		padding: 4rem 0 0 0;
	}

	/* 採用情報 */
	.top-recruit {
		background-size:
			16rem auto,
			24rem auto,
			100rem auto;
		padding: 3rem 3rem;
	}

	.top-recruit>div>div {
		padding: 6rem 3rem;
	}

	.top-recruit h2 {
		margin-bottom: 2rem;
	}

	.top-recruit .more {
		margin: 0 auto;
	}

	/* お問い合わせ */
	.cv {
		padding: 3rem 3rem;
	}

	.cv-ttl {
		display: block;
		margin-bottom: 4rem;
	}

	.cv-ttl h2 {
		width: 32rem;
		margin: 0 auto 4rem auto;
	}

	.cv-ttl p {
		width: 100%;
	}

	.cv-contact {
		padding: 3rem;
		display: block;
	}

	.cv-contact>*:first-of-type {
		margin-right: 0;
		margin-bottom: 2rem;
		text-align: center;
	}

	.cv-contact>*:first-of-type a {
		display: block;
		font-size: 3.2rem;
	}

	.cv-contact>*:first-of-type a span {
		font-size: 2.2rem;
	}
}



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

store

----------------------------------------------------------  */
.store .inner .more {
	width: 100%;
	margin: 2rem 0 0 0;
}

.store-hp {
	display: flex;
	margin-bottom: 2rem;
}

.store-hp>div {
	width: calc(33.33333333% - 1.5rem * 2/3);
	margin-right: 1.5rem;
}

.store-hp>div:last-child {
	margin-right: 0;
}

.store-sns {
	display: flex;
	justify-content: center;
}

.store-sns li {
	font-size: 3.6rem;
	margin: 0 1rem;
	line-height: 1;
}

@media screen and (max-width: 767px) {

	.store .mb80 {
		margin-bottom: 40px;
	}

	.store .mb80:last-child {
		margin-bottom: 0;
	}

	.store-hp {
		flex-direction: column;
	}
	
	.store-hp>div {
		width: 100%;
		margin-right: 0;
	}

	.store-hp>div:last-child {
		margin-right: 0;
		margin-bottom: 0;
	}

	.store-hp>div a {
		margin-top: 1rem !important;
	}
}


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

news

----------------------------------------------------------  */
.CMS-NEWS-INDEX {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 6rem;
	position: relative;
	margin-bottom: -3.5%;
	position: relative;
}

.CMS-NEWS-INDEX>* {
	width: 31%;
	margin-right: 3.5%;
	margin-bottom: 3.5%;
}

.CMS-NEWS-INDEX>*:nth-of-type(3n) {
	margin-right: 0;
}

.CMS-NEWS-ITEM a {
	transition: all .3s;
	display: block;
}

.CMS-NEWS-ITEM a:hover {
	opacity: 0.6;
}

.CMS-NEWS-TIME {
	font-size: 1.2rem;
	margin: 2.5rem 0 0.8rem 0;
	line-height: 1;
}

.CMS-NEWS-LINK {
	line-height: 1.8;
}

.CMS-NEWS-INDEX>* img {
	height: 24rem;
	width: 100%;
	object-fit: cover;
}

/* read more */
.CMS-NEWS-MORE-READ {
	background: var(--primary);
	border: none;
	border-radius: 0.2rem;
	text-align: center;
	padding: 2rem 0;
	font-size: 1.4rem;
	color: #fff;
	text-align: center;
	margin: 4rem auto 0 auto;
	width: 24rem;
	display: block;
	transition: all .3s;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
	-webkit-transform: translate(-50%, 0);
}

.CMS-NEWS-MORE-READ:hover {
	cursor: pointer;
	opacity: 0.6;
}

.top-news .CMS-NEWS-MORE-READ {
	display: none;
}

/* detail */
.CMS-NEWS-TITLE {
	border-bottom: solid 1px rgba(0, 0, 0, 0.2);
	font-size: 2.4rem;
	line-height: 1.6;
	margin-bottom: 3rem;
	padding: 1rem 0 1.5rem 0;
	position: relative;
	font-weight: bold;
}

.CMS-NEWS-TITLE:after {
	border-bottom: solid 3px #8b0000;
	bottom: -3px;
	content: " ";
	display: block;
	position: absolute;
	width: 25%;
}

.CMS-NEWS-CONTENT img {
	width: 70%;
	height: auto;
	display: block;
	margin: 4rem auto;
}

@media screen and (max-width: 767px) {
	.CMS-NEWS-INDEX {
		display: block;
		margin-bottom: -6rem;
	}

	.CMS-NEWS-INDEX>* {
		width: 100%;
		margin-right: 0;
		margin-bottom: 6rem;
	}

	.CMS-NEWS-CONTENT img {
		width: 100%;
	}

	.CMS-NEWS-INDEX>* img {
		height: auto;
	}
}




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

form

----------------------------------------------------------  */
.CMS-FORM-GROUP {
	display: flex;
	align-items: center;
	margin-bottom: 4rem;
}

.CMS-FORM-GROUP label {
	width: 30%;
	font-weight: bold;
}

.CMS-FORM-GROUP input,
.CMS-FORM-GROUP textarea {
	width: 70%;
	padding: 2rem;
	border: #ddd solid 1px;
	box-sizing: border-box;
}

.CMS-FORM-GROUP textarea {
	height: 16rem;
}

.CMS-FORM-GROUP input[type="submit"] {
	background: var(--primary);
	border: none;
	color: #fff;
	display: block;
	font-weight: bold;
	width: 24rem;
	padding: 1.6rem 0;
	margin: 0 auto;
	transition: all .3s;
	display: block;
	font-family: 'Shippori Mincho', "游明朝", "YuMincho", 'Noto Serif JP', serif;
}

.CMS-FORM-GROUP input[type="submit"]:hover {
	cursor: pointer;
	opacity: 0.5;
}

form input[type="radio"] {
	width: 2rem !important;
	vertical-align: -0.18rem;
	margin-right: 1rem;
}

.CMS-FORM-RADIO {
	width: 70%;
	margin: 0;
}

.CMS-FORM-RADIO label {
	display: inline;
}

form input[type="radio"] {
	vertical-align: -0.18rem;
}

@media screen and (max-width: 767px) {
	.CMS-FORM-GROUP {
		display: block;
	}

	.CMS-FORM-GROUP label {
		width: 100%;
		display: block;
		margin-bottom: 10px;
	}

	.CMS-FORM-GROUP input,
	.CMS-FORM-GROUP textarea {
		width: 100%;
	}

	.CMS-FORM-RADIO {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}

	.CMS-FORM-RADIO label {
		margin: 0 0 1rem 0;
		padding: 0;
		width: 90%;
	}

	.CMS-FORM-RADIO input {
		margin-bottom: 1.1rem;
	}
}

.his {
	background: rgba(200, 0, 0, 1);
	border-radius: 2px;
	line-height: 1;
	color: #fff;
	font-size: 1rem;
	padding: 0.2rem 0.7rem 0.3rem 0.7rem;
	margin-left: 1rem;
	vertical-align: 0.2rem;
}

@media screen and (min-width: 768px) {
	.pc {
		display: inline;
	}

	.sp {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.pc {
		display: none;
	}

	.sp {
		display: inline;
	}
}

.white {
	color: #fff
}

.ttl{
    display: flex;
}

@media screen and (max-width: 767px) {
	.ttl{
    display: block;
}
}