@charset "UTF-8";

/* --------------------------------------------------------------------------------------
	共有パーツ
--------------------------------------------------------------------------------------- */

.post-type-page .montserrat { font-family: 'Montserrat', sans-serif; }

.is-root-container { font-size: 16px; }

html :where(.wp-block)  { max-width: 1100px; }

/* .is-root-container .pc,
.is-root-container .sp { position: relative; } */

.is-root-container .pc::before,
.is-root-container .sp::before {
	align-items: center;
	background-color: rgba(0, 0, 0, .6);
	box-sizing: border-box;
	color: #fff;
	content: 'このエリアはPCサイトのみ表示されます。';
	display: flex;
	font-size: 90%;
	height: 100%;
	justify-content: center;
	left: 0;
	padding: 10px 12px;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.is-root-container .sp::before { content: 'このエリアはスマートフォンのみ表示されます。';}

.about-us-wrap > p,
.about-us-wrap > div {
	margin-left: auto;
	margin-right: auto;
	max-width: 1100px;
	position: relative;
	text-align: left;
	z-index: 0;
}

.en-text {
	color: #868482;
	font-family: 'Montserrat';
	font-size: 14px;
	letter-spacing: 0;
	line-height: 1.8 !important;
	margin-top: 24px;
}

@media (max-width: 1099px) {

	.about-us-wrap { margin: min(8vw, 60px) min(5.333vw, 40px) 0; }

	.en-text {
		font-size: min(3.467vw, 26px);
		font-weight: 400;
		margin-top: min(4vw, 30px);
	}
}


/* --------------------------------------------------------------------------------------
	SERVICE
--------------------------------------------------------------------------------------- */

.service-details {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-top: 88px;
}

.service-details .wp-block-column { flex-grow: 0; }

.post-type-page .head-ttl {
	font-family: 'Helvetica','Arial', sans-serif;
	font-size: 36px;
	font-weight: 600;
}

.service-details-text {
	flex-basis: auto !important;
	flex-grow: 0 !important;
	position: relative;
	width: 724px;
}

.service-details-text .wp-block-group {
	border-bottom: 1px solid #c1c1c1;
	margin-bottom: 0;
	margin-top: 0;
	padding: 34px 0;
}

.service-details-text .wp-block-group:first-of-type { border-top: 1px solid #c1c1c1; }

.service-details-text .wp-block-group h3 {
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 0;
	margin-top: 0;
}

.service-details-text .wp-block-group p {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 0;
	margin-top: 10px;
}

.service-details-text .small {
	font-size: 12px;
	font-weight: bold;
	margin-top: 18px;
	text-align: right;
}

@media (max-width: 1099px) {

	.service-details {
		display: block;
		margin-top: min(13.333vw, 100px);
	}

	.service-details .head-ttl { text-align: left; }

	.service-details-text {
		margin-top: min(8vw, 60px);
		width: auto;
	}

	.service-details-text .wp-block-group { padding: min(4vw, 30px) 0; }

	.service-details-text .wp-block-group h3 { font-size: min(5.333vw, 40px); }

	.service-details-text .wp-block-group p {
		font-size: min(3.333vw, 25px);
		margin-top: 3.2vw;
	}

	.service-details-text .wp-block-group p strong { font-weight: 400; }
}

/* --------------------------------------------------------------------------------------
	PHOTO-GALLERY
--------------------------------------------------------------------------------------- */

.photo-gallery {
	display: block;
	margin-top: 60px;
	overflow: hidden;
}

.about-us-wrap .slider-wrap {
	margin-top: 60px;
	max-width: 100vw;
	overflow: hidden;
}

.slider-content {
	animation: loop-slide 52s infinite linear 1s both;
	display: flex;
	left: calc(-436px * 12);
	position: relative;
	width: fit-content;
}

.slider-content > div { margin-right: 16px; }
.slider-content > div::last-child { margin-right: 0; }

.slider-content > div img { max-width: inherit; }

.slider-content:hover { animation-play-state: paused; }

@keyframes loop-slide {
	from { transform: translateX(0); }
	to { transform: translateX(calc(-436px * 12)); }
}

@media (max-width: 1099px) {

	.about-us-wrap .slider-wrap { margin: min(8vw, 60px) -5.333vw 0; }

	.slider-content { left: calc(-45.867vw * 12); }
	.slider-content > div {
		margin-right: 2.667vw;
		width: 43.2vw;
	}

	.slider-content > div img { max-width: 100%; }

	@keyframes loop-slide {
		from { transform: translateX(0); }
		to { transform: translateX(calc(-45.867vw * 12)); }
	}
}

/* --------------------------------------------------------------------------------------
	PROFILE
--------------------------------------------------------------------------------------- */

.profile { margin-top: 110px; }

.profile-inner {
	display: block !important;
	margin-top: 48px;
	overflow: hidden;
}

.profile-inner .profile-image {
	float: right;
	margin-left: 20px;
	max-width: 348px;
	position: relative;
	z-index: 2;
}

.profile-inner .wp-block-column h3 { font-size: 24px; }
.profile-inner .wp-block-column p {
	line-height: 2.3;
	margin-top: 24px;
}

.image-thum { margin-top: 32px; }

@media (max-width: 1099px) {

	.profile { margin: min(12vw, 90px) min(5.333vw, 40px) 0; }

	.profile .head-ttl { text-align: left; }

	.profile-inner {
		display: flex !important;
		flex-direction: column;
		margin-top: min(6.4vw, 48px);
	}

	.profile-inner .wp-block-column h3 {
		font-size: min(5.333vw, 40px);
		order: 1;
	}

	.profile-inner .wp-block-column p {
		margin-top: min(3.2vw, 24px);
		order: 2;
	}

	.profile-inner .profile-image {
		float: none;
		margin-left: 0;
		margin-top: 0;
		max-width: 100%;
		order: 4;
	}

	.profile-inner .profile-image picture img { width: 100%; }

	.image-thum {
		flex-wrap: wrap;
		margin-top: 6px;
		order: 5;
	}

	.image-thum figure { width: 49.1%; }

	.image-thum figure:nth-of-type(n+2) { margin-left: 0; }
	.image-thum figure:nth-of-type(n+3) { margin-top: 6px; }

}

/* --------------------------------------------------------------------------------------
	AWARD
--------------------------------------------------------------------------------------- */

.post-type-page .award .wp-block-group__inner-container .award-column {
	border: 1px solid #c1c1c1;
	padding: 32px;
}

.award {
	margin-bottom: 120px;
	margin-top: 80px;
}

.award-tab-list {
	border-bottom: 1px solid #c1c1c1;
	border-top: 1px solid #c1c1c1;
	display: flex;
	flex-wrap: wrap;
	margin-top: 48px;
	padding: 30px 50px;
}

.award-tab-list li {
	cursor: pointer;
	font-size: 1.8rem;
	margin-right: 70px;
	overflow: hidden;
	position: relative;
	width: 48px;
}

.award-tab-list .current {
	border-bottom: 1px solid #735a3d;
	color: #735a3d;
}

.award-tab-list li:nth-of-type(9n) { margin-right: 0; }
.award-tab-list li:nth-of-type(n+10) { margin-top: 25px; }

.award-inner { margin-top: 30px; }

.award .tab-content ul { margin-left: 9px; }
.award .tab-content li:first-child { margin-top: 0; }

.award .tab label:nth-of-type(9n) { margin-right: 0; }
.award .tab label:nth-of-type(n+10) { margin-top: 25px; }

.award .wp-block-group__inner-container .award-column h3 { margin-top: 0; }
.award .wp-block-group__inner-container .award-column ul { margin-bottom: 0; }


body:not(.post-type-page) .award-inner .award-column { display: none; }
body:not(.post-type-page) .award-inner .award-column.current { display: block; }

body:not(.post-type-page) .award-inner .award-column h3 { display: none; }

body:not(.post-type-page) .award-inner .award-column li {
	line-height: 1.8;
	margin-top: 4px;
	padding-left: 20px;
	position: relative;
}

body:not(.post-type-page) .award-inner .award-column li::before {
	background-color: #735a3d;
	border-radius: 100vw;
	content: '';
	display: block;
	height: 8px;
	left: 0;
	position: absolute;
	top: 8px;
	width: 8px;
}

@media (max-width: 1099px) {

	.award { margin: min(12vw, 90px) min(5.333vw, 40px) min(13.333vw, 100px); }

	.award-tab-list {
		margin-top: min(8vw, 60px);
		padding: 5.333vw 0;
	}

	.award-tab-list li {
		font-size: 4.067vw;
		line-height: 1.8;
		margin-right: 4.0333vw;
		width: 11.067vw;
	}

	.award-tab-list li:nth-of-type(n+7),
	.award-tab-list li:nth-of-type(n+10) { margin-top: 2.733vw; }
	.award-tab-list li:nth-of-type(9n) { margin-right: 5.0333vw; }
	.award-tab-list li:nth-of-type(6n) { margin-right: 0 !important; }

	.award-inner { margin-top: 4vw; }
}