@charset "utf-8";

/* base
-------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure,
footer, header, main, menu, nav, section {
	display: block;
}
html {
	line-height: 1;
}
ul, ol {
	list-style-type: none;
}
table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}
q, blockquote {
	quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
	content: "";
	content: none;
}
a img {
	border: none;
}
img {
	vertical-align: bottom;
	border: none;
	max-width: 100%;
	height: auto;
}
img[src*=".svg"] {
	width: 100%;
}
a {
	color: inherit;
	text-decoration: none;
}
*,
:before,
:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
input,
button,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font: inherit;
	border: none;
	border-radius: 0;
	outline: none;
}
textarea {
	resize: vertical;
}
input[type='checkbox'],
input[type='radio'] {
	display: none;
}
input[type='submit'],
input[type='button'],
label,
button,
select {
	cursor: pointer;
}
select::-ms-expand {
	display: none;
}

/* --------------------------------------------------------
	フォントと背景
-------------------------------------------------------- */
html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body {
	font-family: "Zen Kaku Gothic New", sans-serif;
	color: #fff;
	font-size: 1.6em;
	font-weight: 500;
	background: #333;
	letter-spacing: .05em;
	line-height: 1.75;
}

/* フォント */
.ff_shippori-mincho { font-family: "Shippori Mincho", serif; }
.ff_roboto {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-variation-settings:
		"wdth" 75;
}
.ff_Montserrat {
	font-family: "Montserrat", sans-serif;
	font-weight: 300;
}
.ff_YakuHanMP { font-family: YakuHanMP, sans-serif; }
.bold { font-weight: 700; }
.heavy { font-weight: 900; }
.tal { text-align: left; }
.tac { text-align: center; }
.tar { text-align: right; }


/* 文字色 */
/* 文字サイズ */
@media screen and (max-width: 768px) {
}

/* 背景 */
.c-bg-wh {
	color: #333;
	background: #fff;
}
@media screen and (max-width: 768px) {
	body { font-size: min(3.4825vw, 1.4em); }
}


/* --------------------------------------------------------
	リンク
-------------------------------------------------------- */
a {
	color: inherit;
	transition: .5s;
}
a:hover { opacity: 0.5; }
::-moz-selection {
	color: #fff;
	background: #00327a;
}
::selection {
	color: #fff;
	background: #00327a;
}


/* テキストリンク
-------------------------------------------------------- */
a.underline {
	text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
a.underline:hover {
    text-decoration-color: transparent;
    opacity: 1;
}


/* アンカーリンク
-------------------------------------------------------- */
.anchor {
	margin-top: -80px;
	padding-top: 80px;
}
@media screen and (max-width: 768px) {
.anchor {
	margin-top: 0;
	padding-top: 0;
}
}



/* --------------------------------------------------------
	共通
-------------------------------------------------------- */
.inner {
	max-width: 1200px;
	width: 90.2985%;
	margin: auto;
}
.inner.mw900 {
	max-width: 900px;
}
.inner.mw1285 {
	max-width: 1285px;
}

@media screen and (max-width: 768px) {
.inner.is-wide {
	width: 100%;
}
.inner.is-large {
	width: 94.6666%;
}
.inner-sp {
	padding: 0 4.85%;
}
}

/* iframe */
.iframe { position: relative; }
.iframe.youtube { padding-top: 56.25%; }
.iframe iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}


/* flex */
.flex {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.nowrap { flex-wrap: nowrap; }
.fd_c {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.fd_rr {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
}
.ai_fs {
	-webkit-box-align: start;
	align-items: flex-start;
}
.ai_fe {
	-webkit-box-align: end;
	align-items: flex-end;
}
.ai_c {
	-webkit-box-align: center;
	align-items: center;
}
.jc_fs {
	-webkit-box-pack: start;
	justify-content: flex-start;
}
.jc_fe {
	-webkit-box-pack: end;
	justify-content: flex-end;
}
.jc_c {
	-webkit-box-pack: center;
	justify-content: center;
}
.jc_sb {
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.jc_sa {
	justify-content: space-around;
}
.order1 {
	-ms-flex-order: 1;
	-webkit-order: 1;
	order: 1;
}
.order2 {
	-ms-flex-order: 2;
	-webkit-order: 2;
	order: 2;
}
.overflow_hidden {
	overflow: hidden;
}


/* --------------------------------------------------------
	アニメーション
-------------------------------------------------------- */
/* ローディング
-------------------------------------------------------- */
#loading {
	width: 100%;
	height: 100dvh;
	background: #f2f2f2;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	position: fixed;
	top: 0;
	left: 0;
	transition: .5s;
	z-index: 500;
}
#loading.is-loaded {
	opacity: 0;
	visibility: hidden;
}
.loading_logo {
	max-width: 306px;
	width: 80%;
}

.trigger {
	opacity: 0;
}
/* 下から上へ */
.animation.animation01 {
	animation: fadeup .8s ease forwards;
}
@keyframes fadeup{
	from {
		opacity: 0;
		transform: translateY(2em);
	}
	
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* 左から右へ */
.animation.animation02 {
	animation: faderight .8s ease forwards;
}
@keyframes faderight{
	from {
		opacity: 0;
		transform: translateX(-2em);
	}
	
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

/* 右から左へ */
.animation.animation03 {
	animation: fadeleft .8s ease forwards;
}
@keyframes fadeleft{
	from {
		opacity: 0;
		transform: translateX(2em);
	}
	
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes fadein {
	0% { opacity:0; }
	50% { opacity:0; }
	100% { opacity:1; }
}

/* 下から上へ流れる */
@keyframes slideUp {
	0% { transform: translateY(0); }
	100% { 	transform: translateY(-100%); }
}
/* 上から下へ流れる */
@keyframes slideDown {
	0% { transform: translateY(-100%); }
	100% { transform: translateY(0); }
}
/* 右から左へ流れる */
@keyframes slideLeft {
	0% { transform:translateX(0); }
	100% { transform:translateX(-100%); }
}
/* 左から右へ流れる */
@keyframes slideRight {
	0% { transform:translateX(-100%); }
	100% { transform:translateX(0); }
}
.trigger.bg-btm {
	opacity: 1;
}
.bg-btm::before {
    content: "";
    width: 100%;
    height: 0;
    background: #000014;
    display: inline-block;
    position: absolute;
	top: 0;
    left: 0;
    z-index: 5;
}
.bg-btm > picture,
.bg-btm > img,
.bg-btm > div,
.bg-btm .t-works-category__title {
	opacity: 0;
	display: block;
}
.bg-btm.animation picture,
.bg-btm.animation > img,
.bg-btm.animation > div,
.bg-btm.animation .t-works-category__title  {
	animation: fadein 0s ease .5s 1 normal forwards;
}
.bg-btm.animation::before {
        animation: bg-btm 1s ease 0s 1 normal forwards;
}
@keyframes bg-btm {
	0% {
		top: 0;
		height: 0;
	}
	50% {
		top: 0;
		height: 100%;
	}
	51% {
		top: 0;
		height: 100%;
	}
	100% {
		top: 100%;
		height: 0;
	}
}

.c-ticker,
.c-ticker .c-ticker_track {
	display: -webkit-box;
	display: flex;
}
.c-ticker {
	color: #fafafa;
	font-size: 7.2rem;
	font-style: italic;
	line-height: 1.4;
	white-space: nowrap;
	opacity: .3;
	overflow: hidden;
}
.c-ticker.is-bl {
	color: #00b6ec;
}
.c-ticker.is-left .c-ticker_track {
	animation: slideLeft 80s linear infinite;
}
.c-ticker.is-right .c-ticker_track {
	animation: slideRight 80s linear infinite;
}
@media screen and (max-width: 768px) {
.c-ticker {
	font-size: min(9.6vw, 3.6rem);
}
}

/* ズームアップ */
@keyframes zoomUp {
	0% { transform: scale(1); }
	100% { transform: scale(1.15); }
}

/* 左から表示 */
@keyframes textClip {
	0%{ clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%); }
	100%{ clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%); }
}


/* --------------------------------------------------------
	ボタン
-------------------------------------------------------- */
.c-btn01 {
	font-size: 2rem;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	gap: 20px;
}
.c-btn01__arrow {
	width: 48px;
	height: 48px;
	border: solid 1px #fff;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	flex-shrink: 0;
	transition: .5s;
}
.c-btn01__arrow::after {
	content: "";
	width: min(3.98vw, 16px);
	height: min(2.7363vw, 11px);
	background-image: url(../img/cmn/arrow_r_wh03.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.c-btn01:hover {
	opacity: 1;
}
.c-btn01:hover .c-btn01__arrow {
	background: #fff;
}
.c-btn01:hover .c-btn01__arrow::after {
	background-image: url(../img/cmn/arrow_r_bk03.svg);
}
@media screen and (max-width: 768px) {
.c-btn01 {
	font-size: min(4.4776vw, 1.8rem);
	gap: min(3.98vw, 16px);
}
.c-btn01__arrow {
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
}
}

/* --------------------------------------------------------
	見出し
-------------------------------------------------------- */
/* 英語
-------------------------------------------------------- */
.c-en-title {
	font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
.c-en-title {
	font-size: min(5.97vw, 2.4rem);
}
}

.c-border-title01 {
	font-size: 2rem;
	font-weight: 700;
	border-bottom: solid 1px #fff;
	margin: 0 0 min(12.4378vw, 50px);
	padding: 0 0 40px;
}
@media screen and (max-width: 768px) {
.c-border-title01 {
	font-size: min(4.4776vw, 1.8rem);
	padding: 0 0 min(7.4626vw, 30px);
}
}

.c-border-title02 {
	font-size: min(7.96vw, 3.2rem);
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	position: relative;
}
.c-border-title02::before {
	content: "";
	width: 1px;
	height: 40px;
	background: #fff;
	display: block;
}
.c-border-title02.m-bk {
	color: #333;
}
.c-border-title02.m-bk::before {
	background: #333;
}
@media screen and (min-width: 769px) {
.c-border-title02 {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	gap: 16px;
}
}
@media screen and (max-width: 768px) {
.c-border-title02 {
	margin: 0 0 min(7.96vw, 32px);
	padding: 0 0 0 min(12.4378vw, 50px);
}
.c-border-title02::before {
	width: min(9.95vw, 40px);
	height: 1px;
	position: absolute;
	top: min(7.4626vw, 30px);
	left: 0;
}
}

.c-title01 {
	font-size: 2.4rem;
	margin: 0 0 20px;
}
@media screen and (max-width: 768px) {
.c-title01 {
	font-size: min(4.9751vw, 2rem);
	margin: 0 0 min(20px);
}
}
.c-title02 {
	font-size: 2rem;
	border-bottom: solid 1px #333;
	margin: 0 0 min(2.4875vw, 10px);
	padding: 0 0 min(2.4875vw, 10px);
}
@media screen and (max-width: 768px) {
.c-title02 {
	font-size: min(4.4776vw, 1.8rem);
}
}

/* --------------------------------------------------------
	リスト
-------------------------------------------------------- */
/* 黒丸
-------------------------------------------------------- */
.c-circle__list01 > li {
	padding: 0 0 0 min(4.4776vw, 18px);
	position: relative;
}
.c-circle__list01 > li::before {
	content: "";
	width: min(1.99vw, 8px);
	height: min(1.99vw, 8px);
	background: #fff;
	border-radius: 50%;
	position: absolute;
	top: .625em;
	left: 0;
}
.c-circle__list01:not(.m-line) > li:not(:last-child) {
	margin: 0 0 10px;
}
.c-circle__list01.m-bk > li::before {
	background: #333;
}
.c-circle__list01.m-line {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	margin: -5px -32px 0 0;
}
.c-circle__list01.m-line > li {
	margin: 5px 32px 0 0;
}
@media screen and (max-width: 768px) {
.c-circle__list01:not(.m-line) > li:not(:last-child) {
	margin: 0 0 min(1.2437vw, 5px);
}
.c-circle__list01.m-line.m-block-sp,
.c-circle__list01.m-line.m-block-sp > li { margin: 0; }
.c-circle__list01.m-line.m-block-sp > li { width: 100%; }
.c-circle__list01.m-line.m-block-sp > li:not(:last-child) {
	margin: 0 0 min(2.4875vw, 10px);
}
}

/* 米印
-------------------------------------------------------- */
.c-note__list01 > li {
	padding: 0 0 0 18px;
	position: relative;
}
.c-note__list01 > li::before {
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width: 768px) {
.c-note__list01 > li {
	padding: 0 0 0 min(3.98vw, 16px);
}
}

/* --------------------------------------------------------
	表
-------------------------------------------------------- */
.c-tbl01 th,
.c-tbl01 td {
	border-bottom: solid 1px #fff;
	padding: 30px 16px;
}
.c-tbl01 th {
	width: 160px;
}
@media screen and (max-width: 768px) {
.c-tbl01 th,
.c-tbl01 td {
	width: 100%;
	display: block;
	padding: min(7.4626vw, 30px) min(4.9751vw, 20px);
}
.c-tbl01 th {
	border-bottom: none;
	padding-bottom: 0;
}
.c-tbl01 td {
	padding-top: min(4.9751vw, 20px);
}
}


/* --------------------------------------------------------
	タブ切替
-------------------------------------------------------- */
.c-tab_btns {
	background: #0078cf;
	border-radius: 4px;
}
.c-tab_btns .c-tab_btn {
	color: #fff;
	width: 100%;
	background: none;
	display: block;
	padding: 0;
	position: relative;
	transition: .5s;
}
.c-tab_btns .c-tab_btn span {
	display: block;
	position: relative;
}
.c-tab_btns .c-tab_btn > span::before {
	content: "";
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: 4px;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	transition: .5s;
	z-index: 0;
}
.c-tab_btns .c-tab_btn > span span {
	z-index: 1;
}
.c-tab_btns .c-tab_btn:hover,
.c-tab_btns .c-tab_btn.is-active {
	color: #0078cf;
}
.c-tab_btns .c-tab_btn:hover > span::before,
.c-tab_btns .c-tab_btn.is-active > span::before {
	opacity: 1;
}
.c-tab_contents .c-tab_content {
	display: none;
}
.c-tab_contents .c-tab_content.is-show {
	display: block;
}

/* 縦 */
.c-tabs.is-line .c-tab_btns {
	max-width: 220px;
	width: 100%;
	margin: 0 0 48px;
}
.c-tabs.is-line .c-tab_btns .c-tab_btn {
	padding: 5px;
}
.c-tabs.is-line .c-tab_btns .c-tab_btn > span {
	padding: 5px;
}

/* 横 */
.c-tabs.is-grid .c-tab_btns {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 40px;
	padding: 8px;
}
.c-tabs.is-grid .c-tab_btns .c-tab_btn > span {
	padding: 15px 8px 17px;
}
.c-tabs.is-grid.is-2col .c-tab_btns .c-tab_btn {
	width: 48.6666%;
	margin-top: 1.33333%;
	margin-right: 1.33333%;
}
.c-tabs.is-grid.is-3col .c-tab_btns .c-tab_btn {
	width: 32.44444%;
	margin-top: 1.33333%;
	margin-right: 1.33333%;
}

@media screen and (max-width: 1024px) {
.c-tab_btns {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.c-tabs.is-line .c-tab_btns {
	max-width: min(86.6666vw, 650px);
	margin: 0;
	padding: 0;
}
.c-tabs.is-line .c-tab_btns .c-tab_btn {
	width: 50%;
	padding: 5px;
}
.c-tabs.is-line .c-tab_contents {
	background: #00B6EC;
	background: linear-gradient(45deg, rgba(0, 182, 236, 1) 0%, rgba(0, 120, 207, 1) 100%);
	padding: 40px 6.6667%;
}
}
@media screen and (min-width: 769px) {
.c-tabs.is-grid.is-2col .c-tab_btns .c-tab_btn:nth-child(-n + 2) {
	margin-top: 0;
}
.c-tabs.is-grid.is-2col .c-tab_btns .c-tab_btn:nth-child(2n) {
	margin-right: 0;
}
.c-tabs.is-grid.is-3col .c-tab_btns .c-tab_btn:nth-child(-n + 3) {
	margin-top: 0;
}
.c-tabs.is-grid.is-3col .c-tab_btns .c-tab_btn:nth-child(3n) {
	margin-right: 0;
}
}
@media screen and (max-width: 768px) {
.c-tabs.is-grid .c-tab_btns {
	padding: 5px;
}
.c-tabs.is-grid.is-2col .c-tab_btns .c-tab_btn,
.c-tabs.is-grid.is-3col .c-tab_btns .c-tab_btn {
	width: calc(50% - 5px);
	margin-top: 10px;
	margin-right: 10px;
}
.c-tabs.is-grid .c-tab_btns .c-tab_btn > span {
	padding: 5px;
}
.c-tabs.is-grid.is-2col .c-tab_btns .c-tab_btn:nth-child(-n + 2),
.c-tabs.is-grid.is-3col .c-tab_btns .c-tab_btn:nth-child(-n + 2) {
	margin-top: 0;
}
.c-tabs.is-grid.is-2col .c-tab_btns .c-tab_btn:nth-child(2n),
.c-tabs.is-grid.is-3col .c-tab_btns .c-tab_btn:nth-child(2n) {
	margin-right: 0;
}
}


/* --------------------------------------------------------
	プラグイン
-------------------------------------------------------- */
#cookie-notice .cn-close-icon {
	opacity: 1;
}
#cookie-notice .cn-close-icon:before,
#cookie-notice .cn-close-icon:after {
	background: #fff;
}
@media screen and (max-width: 768px) {
}

/* --------------------------------------------------------
	PC SP切替
-------------------------------------------------------- */
.is-sp { display: none; }
@media screen and (max-width: 768px) {
	.is-pc { display: none; }
	.is-sp { display: block; }
}

.c-sns__list {
	display: -webkit-box;
	display: flex;
}
.c-sns__list {
	gap: 30px;
}
.c-sns__list > li {
	max-width: 40px;
	width: 100%;
}
@media screen and (max-width: 768px) {
.c-sns__list > li {
	max-width: min(9.95vw, 40px);
}
.c-sns__list {
	gap: min(7.4626vw, 30px);
}
}

/* --------------------------------------------------------
	ヘッダー
-------------------------------------------------------- */
header {
	width: 100%;
	padding: 20px min(3.9vw, 40px) 20px min(2.3437vw, 24px);
	position: fixed;
	top: 0;
	left: 0;
	transition: .5s;
	z-index: 100;
}
header::after {
	content: "";
	width: 100%;
	height: 100%;
	background: #333;
	opacity: .7;
	position: absolute;
	top: -100%;
	left: 0;
	transition: .5s;
	z-index: 1;
}
.hdr-main {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}
.hdr-logo,
.hdr-nav {
	position: relative;
	z-index: 2;
}
.hdr-logo {
	max-width: 137px;
	width: 100%;
	transition: .5s;
}
.hdr-nav {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: end;
	justify-content: flex-end;
	flex: 1 1 auto;
}
.hdr-info {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	margin: 0 16px 0 0;
}
.hdr-summary {
	font-size: 1.4rem;
	display: grid;
	grid-template-rows: 1fr;
	letter-spacing: 0;
	margin: -5px 0 8px;
	overflow: hidden;
	position: relative;
	transition: .5s;
	z-index: 2;
}
.hdr-summary > span {
	min-height: 0;
	display: inline-block;
}
.hdr-links {
	display: -webkit-box;
	display: flex;
	gap: 16px;
}
.hdr-link {
	border: solid 1px #fff;
	padding: 6px 20px 8px;
}
.hdr-link.m-new {
	padding: 6px 30px 8px;
}
.hdr-btns {
	display: -webkit-box;
	display: flex;
	gap: min(3.98vw, 16px);
}
.hdr-btn {
	width: 70px;
	height: 70px;
	background: transparent;
	border: solid 1px #fff;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	transition: .5s;
}
.hdr-btn:hover {
	opacity: .5;
}
.hdr-btn.m-tel::before {
	content: "";
	width: 31px;
	height: 32px;
	background: url(../img/cmn/icon_tel_wh.svg) no-repeat;
	background-size: contain;
}
.hamb-icon {
	width: 32px;
	height: 26px;
	position: relative;
}
.hamb-icon span {
	width: 100%;
	height: min(.4975vw, 2px);
	background: #fff;
	display: block;
	position: absolute;
	left: 0;
	transition: .5s;
}
.hamb-icon span:nth-child(1) {
	top: 0;
}
.hamb-icon span:nth-child(2) {
	top: calc(50% - min(.2487vw, 1px));
}
.hamb-icon span:nth-child(3) {
	top: calc(100% - min(.4975vw, 2px));
}
.hamb-nav {
	width: 100%;
	height: 100dvh;
    background-image: url(../img/cmn/wood_grain.jpg);
    background-position: center;
	opacity: 0;
	overflow: auto;
	visibility: hidden;
	padding: min(16.1132vw, 165px) 9.95% min(20.996vw, 215px);
	position: fixed;
	top: 0;
	left: 0;
	transition: .5s;
	z-index: 0;
}
.hamb-nav__list {
	max-width: 816px;
	width: 100%;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	margin-inline: auto;
}
.hamb-nav__list > li {
	width: 45%;
}
.hamb-nav__list > li:not(:last-child) {
	border-bottom: solid 1px #fff;
}
.hamb-nav__list > li.m-sns,
.hamb-nav__list > li > a {
	padding: min(3.9vw, 40px) 0;
}
.hamb-nav__list > li.m-sns {
	padding-bottom: 0;
}
.hamb-nav__list > li.m-sns {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
}
.hamb-nav__list > li > a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	justify-content: space-between;
	line-height: 1;
}
.hamb-nav__en {
	font-size: min(3.125vw, 3.2rem);
}
.hamb-nav__ja {
	font-size: min(1.9531vw, 2rem);
}

body.is-scroll header::after,
body.is-hamb-open.is-hamb-scroll header::after { top: 0; }
body.is-scroll .hdr-summary {
	grid-template-rows: 0fr;
}
body.is-scroll .hdr-summary > span {
	min-height: 0;
}
body.is-scroll .hdr-summary {
	grid-template-rows: 0fr;
	margin: 0;
}
body.is-hamb-open { overflow: hidden; }
body.is-hamb-open header { mix-blend-mode: normal; }
body.is-hamb-open .hamb-nav {
	opacity: 1;
	visibility: inherit;
}
body.is-hamb-open .hamb-icon span:nth-child(1),
body.is-hamb-open .hamb-icon span:nth-child(3) {
	top: 12px;
}
body.is-hamb-open .hamb-icon span:nth-child(1) {
	transform: rotate(45deg);
}
body.is-hamb-open .hamb-icon span:nth-child(2) {
	transform: scaleX(0);
}
body.is-hamb-open .hamb-icon span:nth-child(3) {
	transform: rotate(-45deg);
}
@media screen and (min-width: 769px) {
.hamb-nav__list > li {
	margin-right: 10%;
}
.hamb-nav__list > li:nth-child(2n) {
	margin-right: 0;
}
.hamb-nav .c-sns__list {
    gap: min(2.9296vw, 30px);
}
.hamb-nav .c-sns__list > li {
	max-width: min(3.9vw, 40px);
}
body.is-scroll header {
	padding-top: min(.9765vw, 10px);
	padding-bottom: min(.9765vw, 10px);
}
body.is-scroll .hdr-logo { max-width: 103px; }
body.is-scroll .hdr-btn {
	width: 60px;
	height: 60px;
}
body.is-scroll .hdr-btn.m-tel::before {
	width: 21px;
	height: 22px;
}
body.is-scroll .hamb-icon {
	width: 22px;
	height: 16px;
}
body.is-hamb-open.is-scroll .hamb-icon span:nth-child(1),
body.is-hamb-open.is-scroll .hamb-icon span:nth-child(3) {
    top: 8px;
}
body.is-scroll .hamb-nav {
	padding-top: min(12.6953vw, 130px);
}
}
@media screen and (max-width: 768px) {
header {
	padding: min(8.9552vw, 36px) min(4.9751vw, 20px) min(2.4875vw, 10px);
}
.hdr-summary {
	font-size: min(2.985vw, 1.2rem);
	margin: 0;
}
.hdr-summary > span {
	min-height: min(8.9552vw, 36px);
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}
.hdr-logo {
	max-width: min(21.1442vw, 85px);
}
.hdr-nav {
	position: static;
}
.hdr-info {
	width: 100%;
	margin: 0;
	padding: 0 min(4.9751vw, 20px);
	position: absolute;
	top: 0;
	left: 0;
}
.hdr-links { display: none; }
.hdr-btn {
	width: min(12.4378vw, 50px);
	height: min(12.4378vw, 50px);
}
.hdr-btn.m-tel::before {
	width: min(6.2189vw, 25px);
	height: min(6.4676vw, 26px);
}
.hamb-icon {
	width: min(5.97vw, 24px);
	height: min(3.4825vw, 14px);
}
.hamb-nav {
    background-image: url(../img/cmn/wood_grain_sp.jpg);
	padding: min(28.8557vw, 116px) 9.95% min(6.9651vw, 28px);
}
.hamb-nav__list > li {
	width: 100%;
}
.hamb-nav__list > li.m-sns {
	padding: min(7.4626vw, 30px) 0 0;
}
.hamb-nav__list > li > a {
	padding: min(4.9751vw, 20px) 0;
}
.hamb-nav__en {
	font-size: min(3.98vw, 1.6rem);
}
.hamb-nav__ja {
	font-size: min(3.4825vw, 1.4rem);
}
.hamb-nav__list > li.m-sns {
	-webkit-box-pack: center;
	justify-content: center;
}
body.is-scroll header {
	padding-top: min(2.4875vw, 10px);
	top: -100%;
}
body.is-scroll.is-scroll-up header {
	top: 0;
}
body.is-scroll .hamb-nav {
	padding-top: min(22.388vw, 90px);
}
body.is-hamb-open .hamb-icon span:nth-child(1),
body.is-hamb-open .hamb-icon span:nth-child(3) {
	top: min(1.4925vw, 6px);
}
}


/* --------------------------------------------------------
	フッター
-------------------------------------------------------- */
footer {
	background-image: url(../img/cmn/wood_grain.jpg);
	background-position: center;
	background-repeat: repeat;
	background-size: 1728px auto;
}
.ft-main {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
}
.ftr-info {
	flex-shrink: 0;
}
.ftr-logo {
	max-width: 172px;
	width: 100%;
}
.ftr-address {
	margin: 32px 0 0;
}
.ftr-info .c-sns__list {
	margin: 22px 0 0;
}
.ftr-nav {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
	flex: 1 1 auto;
	padding: 46px 0 0;
}
.ftr-nav__list {
	max-width: 715px;
	width: 100%;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.ftr-nav__list > li {
	width: 22%;
	margin-right: 4%;
}
.ftr-btm {
	font-size: 1.4rem;
	text-align: right;
}
#fixed-btns {
	border-top: solid 1px #fff;
	display: none;
	opacity: 0;
	visibility: hidden;
	position: -webkit-sticky;
	position: sticky;
	bottom: 0;
	transition: .5s;
	z-index: 50;
}
.fixed-btn {
	width: 50%;
	background: #333;
	border-bottom: none;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	padding: min(2.4875vw, 10px) min(4.9751vw, 20px);
}
#fixed-btns .fixed-btn:not(:nth-child(2n)) {
	border-right: solid 1px #fff;
}
@media screen and (min-width: 769px) {
footer {
	font-size: min(1.3913vw, 1.6rem);
	padding: min(10.4347vw, 120px) 0 min(1.2173vw, 14px);
}
.ftr-logo {
	max-width: min(14.9565vw, 172px);
}
.ftr-address {
	margin: min(2.7826vw, 32px) 0 0;
}
.ftr-info .c-sns__list {
	gap: min(2.6vw, 30px);
	margin: min(1.913vw, 22px) 0 0;
}
.ftr-info .c-sns__list > li {
	max-width: min(3.4782vw, 40px);
}
.ftr-nav {
	padding: min(4vw, 46px) 0 0;
}
.ftr-nav__list {
	max-width: min(62.1739vw, 715px);
}
.ftr-nav__list > li {
	white-space: nowrap;
	margin-top: min(1.5652vw, 18px);
}
.ftr-nav__list > li:nth-child(-n + 4) {
	margin-top: 0;
}
.ftr-nav__list > li:nth-child(4n) {
	margin-right: 0;
}
.ftr-btm {
	font-size: min(1.2173vw, 1.4rem);
}
}
@media screen and (max-width: 768px) {
footer {
	background-image: url(../img/cmn/wood_grain_sp.jpg);
	background-size: min(100vw, 402px) auto;
	padding: min(9.95vw, 40px) 0 min(2.4875vw, 10px);
}
.ft-main {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
}
.ftr-info {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
}
.ftr-logo {
	max-width: min(29.85vw, 120px);
}
.ftr-address {
	text-align: center;
	margin: min(5.97vw, 24px) 0 0;
}
.ftr-info .c-sns__list {
	margin: min(7.4626vw, 30px) 0 0;
}
.ftr-nav {
	-webkit-box-pack: center;
	justify-content: center;
}
.ftr-nav__list {
	width: 80%;
}
.ftr-nav__list > li {
	width: 49%;
	margin-top: min(2.4875vw, 10px);
	margin-right: 2%;
}
.ftr-nav__list > li:nth-child(-n + 2) {
	margin-top: 0;
}
.ftr-nav__list > li:nth-child(2n) {
	margin-right: 0;
}
.ftr-btm {
	font-size: min(2.985vw, 1.2rem);
	text-align: center;
	margin: min(12.9353vw, 52px) 0 0;
}
#fixed-btns {
	display: -webkit-box;
	display: flex;
}
body.is-scroll #fixed-btns {
	opacity: 1;
	visibility: inherit;
}
}



#c-contact {
	overflow: hidden;
	padding: 80px 0 0;
	position: relative;
}
#c-contact > div:not(.c-contact-scroll) {
	position: relative;
	z-index: 1;
}
.c-contact__head {
	max-width: 755px;
	margin-inline: auto;
	margin-bottom: 60px;
}
.c-contact__head .c-en-title {
	margin: 0 0 2px;
}
.c-contact__text {
	font-size: 2rem;
	font-weight: 700;
}
.c-contact__list {
	max-width: 920px;
	width: 100%;
	margin-inline: auto;
	gap: 4%;
}
.c-contact__list > li {
	width: 48%;
}
.c-contact__list > li > a {
	height: 100%;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	background: rgba(51, 51, 51, .7);
	border: solid 1px #fff;
	padding: min(1.4925vw, 6px) min(5.97vw, 24px) min(7.4626vw, 30px);
}
.c-contact__list-head,
.c-contact__list-head > div,
.c-contact__list-icon {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}
.c-contact__list-head > div {
	padding: 0 min(.78125vw, 8px);
	position: relative;
}
.c-contact__list-head > div::after {
	content: "";
	width: 100%;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: min(.995vw, 4px);
	left: 0;
}
.c-contact__list-icon {
	font-size: min(3.125vw, 3.2rem);
	margin: 0 min(.78125vw, 8px) 0 0;
}
.c-contact__list-icon span:nth-child(2) {
	font-size: 0;
	max-width: min(2.4414vw, 25px);
	margin: 0 min(.78125vw, 8px) 0;
}
.c-contact__list-title {
	font-size: min(4.8828vw, 5rem);
}
.c-contact__list-body {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
	-webkit-box-pack: end;
	justify-content: flex-end;
	flex: 1 1 auto;
	margin: min(3.125vw, 32px) 0 0;
}
.c-contact__list-btn {
	font-size: min(1.9531vw, 2rem);
	display: -webkit-box;
	display: flex;
    -webkit-box-align: center;
    align-items: center;
    gap: min(1.9531vw, 20px);
	margin-top: auto;
}
.c-contact__list-btn::after {
    content: "";
    width: min(4.6875vw, 48px);
    height: min(4.6875vw, 48px);
    background: url(../img/cmn/arrow_r_wh02.svg) no-repeat;
    background-size: contain;
}
.c-contact__list-item.m-tel .c-contact__list-body {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.c-contact__list-item.m-tel .c-contact__list-icon span:nth-child(2) {
	max-width: min(2.246vw, 23px);
}
.c-contact__list-num {
	font-size: min(3.125vw, 3.2rem);
}
.c-contact__list-hours {
	margin: max(-.39vw, -4px) 0 0;
}

.c-contact__copy {
	font-size: 9.21vw;
	letter-spacing: -0.08em;
	line-height: 1;
	white-space: nowrap;
	margin-top: min(9.8958vw, 171px);
	margin-bottom: -.4629vw;
}
.c-contact-scroll {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.c-contact-scroll,
.c-contact-scroll__list {
    display: -webkit-box;
    display: flex;
}
.c-contact-scroll,
.c-contact-scroll__list,
.c-contact-scroll__list > li,
.c-contact-scroll__list > li > div {
	height: 100%;
}
.c-contact-scroll__list,
.c-contact-scroll__list > li,
.c-contact-scroll__list > li > div {
    flex-shrink: 0;
}
.c-contact-scroll__list {
    animation: infinite-scroll__left 120s linear infinite;
}
.c-contact-scroll__list > li > div {
	width: calc(100vh * 768 / 800);
    overflow: hidden;
}
.c-contact-scroll__list > li > div img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}
@keyframes infinite-scroll__left {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-100%);
    }
}
@media screen and (min-width: 769px) {
.c-contact__list-hours {
	font-size: min(1.5625vw, 1.6rem);
}
}
@media screen and (max-width: 768px) {
#c-contact {
	padding: min(28.1vw, 113px) 0 0;
}
.c-contact__head {
	margin-bottom: min(11.94vw, 48px);
}
.c-contact__head .c-en-title {
	margin: 0 0 min(1.99vw, 8px);
}
.c-contact__text {
	font-size: min(4.4776vw, 1.8rem);
}
.c-contact__list {
	gap: min(9.95vw, 40px);
}
.c-contact__list > li {
	width: 100%;
	min-height: min(54.7263vw, 220px);
}
.c-contact__list-head > div {
	padding: 0 min(1.99vw, 8px);
}
.c-contact__list-icon {
	font-size: min(7.96vw, 3.2rem);
	margin: 0 min(1.99vw, 8px) 0 0;
}
.c-contact__list-icon span:nth-child(2) {
	max-width: min(6.2189vw, 25px);
	margin: 0 min(1.99vw, 8px) 0;
}
.c-contact__list-title {
	font-size: min(12.4378vw, 5rem);
}
.c-contact__list-body {
	margin: min(7.96vw, 32px) 0 0;
}
.c-contact__list-btn {
	font-size: min(4.4776vw, 1.8rem);
    gap: min(3.98vw, 16px);
}
.c-contact__list-btn::after {
    width: min(9.95vw, 40px);
    height: min(9.95vw, 40px);
}
.c-contact__list-item.m-tel .c-contact__list-icon span:nth-child(2) {
	max-width: min(5.7213vw, 23px);
}
.c-contact__list-num {
	font-size: min(7.96vw, 3.2rem);
}
.c-contact__list-hours {
	margin: max(-.995vw, -4px) 0 0;
}
.c-contact__copy {
	font-size: min(17.4129vw, 7rem);
	-ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
	margin-top: min(17.1641vw, 69px);
	margin-bottom: min(4.9751vw, 20px);
	margin-right: 0;
	margin-left: auto;
}
.c-contact__copy > span {
	display: inline-block;
}
.c-contact__copy-text02 {
	margin: min(11.4427vw, 46px) 0 0;
}
.c-contact__copy .is-sp { display: block; }
}

#c-access {
	background: #fff;
	overflow: hidden;
	padding: 0 0 100px;
	position: relative;
}
#c-access .inner {
	padding: 40px 0 0;
	position: relative;
	z-index: 1;
}
#c-access .inner::after {
	content: "";
	width: 200vw;
	height: 88%;
	background: #333;
	position: absolute;
	top: 0;
	right: 7%;
	z-index: 0;
}
#c-access .inner > div {
	position: relative;
	z-index: 1;
}
.c-access__address {
	margin: 16px 0 0;
}
.c-access__map {
	overflow: hidden;
	margin: 32px 0 0;
	padding-top: 38.91%;
	position: relative;
}
.c-access__map iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
#c-access {
	padding: 0;
}
body#front-page #c-access {
	padding: 0 0 min(20.398vw, 82px);
}
#c-access .inner {
	padding: min(11.94vw, 48px) 0 0;
}
#c-access .inner::after { right: 0; }
#c-access .c-en-title,
.c-access__address {
	margin: min(4.9751vw, 20px) 0 0;
	padding: 0 4.9751%;
}
.c-access__map {
	margin: min(5.97vw, 24px) 0 0;
	padding-top: 124.3781%;
}
}



/* --------------------------------------------------------
	トップページ
-------------------------------------------------------- */
/* メインビジュアル
-------------------------------------------------------- */
#t-mv {
	min-height: 600px;
	height: 100dvh;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
	position: relative;
}
.t-mv__content {
	max-width: 1728px;
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}
.t-mv__text {
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	line-height: 2;
	margin: 0 0 min(1.1574vw, 20px);
	padding: 0 0 0 min(1.7361vw, 30px);
}
.t-mv__list,
.t-mv__swiper,
.t-mv__img {
	height: 100%;
}
.t-mv__swiper {
	width: 50%;
	z-index: 0;
}
.t-mv__img {
	overflow: hidden;
	position: relative;
}
.t-mv__img img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: cover;
}
.t-mv__list .swiper-slide-active .t-mv__img img,
.t-mv__list .swiper-slide-duplicate-active .t-mv__img img,
.t-mv__list .swiper-slide-prev .t-mv__img img {
	animation: zoomDown 7s linear 0s normal both;
}
/* ズームダウン */
@keyframes zoomDown {
	0% {
		transform: scale(1.15);
	}
	100% {
		transform: scale(1);
	}
}

@media screen and (max-width: 768px) {
#t-mv {
	min-height: 620px;
}
.t-mv__content {
	position: static;
	transform: none;
}
.t-mv__text {
	font-size: min(3.98vw, 1.6rem);
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	top: min(27.3631vw, 110px);
	right: min(4.9751vw, 20px);
}
.t-mv__copy {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}
.t-mv__swiper {
	width: 100%;
	height: 50%;
}
}
@media screen and (max-width: 480px) {
#t-mv {
	min-height: inherit;
}
}


/* トピックス
-------------------------------------------------------- */
#t-topics {
	color: #333;
	background: #fff;
	overflow: hidden;
	padding: 150px 0;
}
#t-topics .inner {
	display: -webkit-box;
	display: flex;
}
.t-topics__head {
	width: fit-content;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	margin: 0 37px 0 0;
	position: relative;
	z-index: 2;
}
.t-topics__body {
	min-width: 0;
	flex: 1 1 auto;
	position: relative;
}
.t-topics__body::after {
	content: "";
	width: 100%;
	height: 100%;
	background: #fff;
	position: absolute;
	top: 0;
	left: -100%;
	z-index: 1;
}
.p-topics__img {
	overflow: hidden;
	margin: 0 0 18px;
	padding-top: 66.6666%;
	position: relative;
}
.p-topics__img img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: cover;
	transition: .5s;
}
.p-topics__meta {
	border-bottom: solid 1px #333;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	margin: 0 0 10px;
	padding: 0 0 8px;
}
.p-topics__category {
	flex: 1 1 auto;
}
.p-topics__time {
	margin: 0 0 0 8px;
}
.p-topics__title {
	font-size: 2rem;
}
.p-topics__list.m-swiper {
	overflow: visible;
}
.p-topics__list.m-swiper a:hover {
	opacity: 1;
}
.p-topics__list.m-swiper a:hover .p-topics__img img {
	transform: scale(1.15);
}

#t-topics .swiper-controller,
#t-topics .swiper-buttons {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
}
#t-topics .swiper-controller {
	width: fit-content;
	margin-top: auto;
}
#t-topics .swiper-controller.is-hidden {
	display: none;
}
#t-topics .swiper-pagination,
#t-topics .swiper-button-next,
#t-topics .swiper-button-prev {
	position: static;
}
#t-topics .swiper-pagination {
	font-size: 2rem;
	font-weight: 700;
	display: -webkit-box;
	display: flex;
	margin: 0 0 30px;
}
#t-topics .swiper-pagination-fraction {
	width: auto;
}
#t-topics .swiper-pagination > span {
	display: -webkit-box;
	display: flex;
	line-height: 1;
}
#t-topics .swiper-pagination-current {
	margin: 0 -16px 0 0;
} 
#t-topics .swiper-pagination-total {
	-webkit-box-align: end;
	align-items: flex-end;
	margin: 0 0 0 -16px;
} 
#t-topics .swiper-pagination-slash::after {
	content: "";
	width: 56px;
	height: 56px;
	background: url(../img/cmn/slash_bk.svg) no-repeat;
	background-size: contain;
	display: block;
} 
#t-topics .swiper-buttons {
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	flex-direction: column-reverse;
	gap: 20px;
}
#t-topics .swiper-button-next,
#t-topics .swiper-button-prev {
	width: 80px;
	height: 80px;
	background: #333;
	border: solid 1px #333;
	border-radius: 50%;
	margin-top: 0;
	position: relative;
	top: 0;
	transition: .5s;
}
#t-topics .swiper-button-next {
	right: 0;
}
#t-topics .swiper-button-prev {
	left: 0;
}
#t-topics .swiper-button-next::after,
#t-topics .swiper-button-prev::after {
	content: "";
}
#t-topics .swiper-button-next::after,
#t-topics .swiper-button-prev::after {
	width: 40px;
	height: 11px;
	background-image: url(../img/cmn/arrow_r_wh01.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
#t-topics .swiper-button-prev::after {
	transform: scale(-1, 1);
}
#t-topics .swiper-button-next:hover,
#t-topics .swiper-button-prev:hover {
	background: #fff;
}
#t-topics .swiper-button-next:hover::after,
#t-topics .swiper-button-prev:hover::after {
	background-image: url(../img/cmn/arrow_r_bk01.svg);
}

@media screen and (max-width: 1024px) {
#t-topics .inner {
	flex-wrap: wrap;
}
.t-topics__head,
.t-topics__body {
	width: 100%;
}
.t-topics__head,
#t-topics .swiper-controller,
#t-topics .swiper-buttons {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	flex-direction: row;
}
.t-topics__head {
	-webkit-box-align: center;
	align-items: center;
	margin: 0 0 20px;
}
.t-topics__head .c-en-title {
	flex: 1 1 auto;
}
.p-topics__meta {
	margin: 0 0 min(2.4875vw, 10px);
	padding: 0 0 min(2.4875vw, 10px);
}
.p-topics__time {
	margin: 0 0 0 min(1.99vw, 8px);
}
.p-topics__title {
	font-size: min(4.4776vw, 1.8rem);
}
#t-topics .swiper-pagination {
	font-size: min(4.4776vw, 1.8rem);
	margin: 0 min(6.4676vw, 26px) 0 0;
}
#t-topics .swiper-pagination-current {
	margin: max(-.4975vw, -2px) max(-2.4875vw, -10px) 0 0;
} 
#t-topics .swiper-pagination-total {
	margin: 0 0 min(.4975vw, 2px) max(-2.4875vw, -10px);
} 
#t-topics .swiper-pagination-slash::after {
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
} 
#t-topics .swiper-buttons {
	gap: min(3.98vw, 16px);
}
#t-topics .swiper-button-next,
#t-topics .swiper-button-prev {
	width: min(12.4378vw, 50px);
	height: min(12.4378vw, 50px);
}
#t-topics .swiper-button-next::after,
#t-topics .swiper-button-prev::after {
	width: min(5.4726vw, 22px);
	height: min(1.4925vw, 6px);
}
}
@media screen and (max-width: 768px) {
#t-topics {
	padding: min(19.1542vw, 77px) 0 min(19.9vw, 80px);
}
}


/* 会社案内
-------------------------------------------------------- */
#t-company {
	background-image: url(../img/cmn/wood_grain.jpg);
	background-position: center;
	background-repeat: repeat;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	flex-direction: column-reverse;
	overflow: hidden;
	padding: min(16.6666vw, 200px) 0 0;
}
.t-company__title {
	font-size: 12.575vw;
	line-height: 1;
	letter-spacing: -0.08em;
	white-space: nowrap;
	margin: min(10.3333vw, 124px) 0 -.48vw -2.1875vw;
}
.t-company__content .inner {
	font-size: min(1.9531vw, 2rem);
	width: 100%;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-pack: center;
	justify-content: center;
	letter-spacing: .1em;
}
.t-company__texts,
.t-company__text {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.t-company__texts {
	gap: min(5.4687vw, 56px);
}
.t-company__btn {
	margin: 0 min(10.1562vw, 104px) 0 0;
}
@media screen and (min-width: 769px) {
.t-company__content .inner {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.t-company__text {
	gap: 16px;
}
#t-company .c-btn01 {
	font-size: min(1.9531vw, 2rem);
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	gap: min(2.1484vw, 22px);
}
#t-company .c-btn01__text {
	position: relative;
}
#t-company .c-btn01__text::before {
	content: "";
	width: 1px;
	height: 100%;
	background: #fff;
	position: absolute;
	right: -5px;
	transition: .5s;
	bottom: 0;
}
#t-company .c-btn01__arrow {
	width: min(4.6875vw, 48px);
    height: min(4.6875vw, 48px);
}
#t-company .c-btn01__arrow::after {
	width: min(1.5625vw, 16px);
    height: min(1.0742vw, 11px);
}
#t-company .c-btn01:hover .c-btn01__text::before { height: 0; }
}
@media screen and (max-width: 768px) {
#t-company {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
	padding: 0 0 min(35.3233vw, 142px);
}
.t-company__content .inner {
	font-size: min(4.4776vw, 1.8rem);
}
.t-company__title {
	font-size: min(19.9vw, 8rem);
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	margin: max(-3.98vw, -16px) min(.4975vw, 2px) 0;
}
.t-company__content {
	flex: 1 1 auto;
	padding: 0 0 0 9.95%;
}
.t-company__texts {
	gap: min(9.95vw, 40px);
	padding: min(24.8756vw, 100px) 0 0 0;
}
.t-company__texts .is-sp { display: block; }
.t-company__btn {
	margin: 50px 0 0;
}
}
@media screen and (max-width: 768px) {
}


/* 施工例
-------------------------------------------------------- */
#t-works {
	background: #fff;
	padding: 110px 0 0;
}
.t-works__upper {
	overflow: hidden;
	position: relative;
	padding: 0 0 100px;
}
.t-works__upper .inner {
	display: -webkit-box;
	display: flex;
	position: relative;
	z-index: 1;
}
.t-works__upper .c-en-title {
	color: #333;
}
.t-works__upper__head {
    width: fit-content;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    margin: 0 37px 0 0;
}
.t-works__upper__body {
    min-width: 0;
    flex: 1 1 auto;
	position: relative;
	z-index: 0;
}
.t-works__upper .swiper-controller,
.t-works__upper .swiper-buttons {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
}
.t-works__upper .swiper-controller {
	width: fit-content;
	margin-top: auto;
}
.t-works__upper .swiper-controller.is-hidden {
	display: none;
}
.t-works__upper .swiper-pagination,
.t-works__upper .swiper-button-next,
.t-works__upper .swiper-button-prev {
	position: static;
}
.t-works__upper .swiper-pagination {
	font-size: 2rem;
	font-weight: 700;
	display: -webkit-box;
	display: flex;
	margin: 0 0 30px;
}
.t-works__upper .swiper-pagination-fraction {
	width: auto;
}
.t-works__upper .swiper-pagination > span {
	display: -webkit-box;
	display: flex;
	line-height: 1;
}
.t-works__upper .swiper-pagination-current {
	margin: 0 -16px 0 0;
} 
.t-works__upper .swiper-pagination-total {
	-webkit-box-align: end;
	align-items: flex-end;
	margin: 0 0 0 -16px;
} 
.t-works__upper .swiper-pagination-slash::after {
	content: "";
	width: 56px;
	height: 56px;
	background-image: url(../img/cmn/slash_wh.svg);
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
} 
.t-works__upper .swiper-buttons {
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	flex-direction: column-reverse;
	gap: 20px;
}
.t-works__upper .swiper-button-next,
.t-works__upper .swiper-button-prev {
	width: 80px;
	height: 80px;
	border: solid 1px #fff;
	border-radius: 50%;
	margin-top: 0;
	transition: .5s;
}
.t-works__upper .swiper-button-next::after,
.t-works__upper .swiper-button-prev::after {
	content: "";
	width: 40px;
	height: 11px;
	background: url(../img/cmn/arrow_r_wh01.svg) no-repeat;
	background-size: contain;
}
.t-works__upper .swiper-button-prev::after {
	transform: scale(-1, 1);
}
.t-works__upper .swiper-button-next:hover,
.t-works__upper .swiper-button-prev:hover {
	background: #fff;
}
.t-works__upper .swiper-button-next:hover::after,
.t-works__upper .swiper-button-prev:hover::after {
	background-image: url(../img/cmn/arrow_r_bk01.svg);
}

.t-works__img > div {
    background-color: #D9D9D9;
    overflow: hidden;
    padding-top: 66.6666%;
    position: relative;
}
.t-works__img > div img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: cover;
	transition: .5s;
}
.t-works__title {
	font-size: 2rem;
}
.t-works__list.m-swiper {
	margin-right: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
	z-index: 2;
}
.t-works__list.m-swiper a {
    display: -webkit-box;
    display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
	position: relative;
	z-index: 1;
}
.t-works__list.m-swiper a > div {
	position: relative;
	z-index: 1;
}
.t-works__list.m-swiper .t-works__img {
	width: 100%;
}
.t-works__list.m-swiper .t-works__content {
    color: #fff;
	letter-spacing: .1em;
	margin: 0 10px 0 0;
	position: relative;
    z-index: 2;
}
.t-works__list.m-swiper .t-works__category {
	margin: 0 0 0 3px;
}
.t-works__list.m-swiper .t-works__title {
	margin: 0 10px 0 0;
}
.t-works__list.m-swiper a:hover {
	opacity: 1;
}
.t-works__list.m-swiper a:hover .t-works__img > div img {
	transform: scale(1.15);
}

@media screen and (max-width: 768px) {
.t-works__title {
	font-size: min(4.4776vw, 1.8rem);
}
.t-works__list.m-swiper .t-works__title {
	margin: 0;
}
.t-works__upper .swiper-button-next:hover,
.t-works__upper .swiper-button-prev:hover {
	border-color: #333;
}
}


@media screen and (min-width: 769px) {
.t-works__upper::after {
	content: "";
	width: 200vw;
	height: calc(100% - 75px);
	background: #333;
	position: absolute;
	bottom: 0;
	left: -100vw;
	z-index: 0;
}
.t-works__upper .c-en-title {
	margin: 0 0 24px;
}
.t-works__list.m-swiper a {
	background: #fff;
    display: -webkit-box;
    display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
	position: relative;
	z-index: 1;
}
.t-works__list.m-swiper a::after {
	content: "";
	width: 102%;
	height: calc(100% - 75px);
	background: #333;
	position: absolute;
	bottom: 0;
	left: -1px;
	z-index: 0;
}
.t-works__list.m-swiper .t-works__content {
	max-height: min(48.7969vw, 649px);
	mix-blend-mode: difference;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.t-works__list.m-swiper .t-works__meta {
	font-size: min(1.5625vw, 1.6rem);
	border-left: solid 1px #fff;
}
.t-works__list.m-swiper .t-works__title {
	height: 100%;
	font-size: min(1.9531vw, 2rem);

}
}
@media screen and (max-width: 768px) {
#t-works {
	padding: min(12.4378vw, 50px) 0 0;
}
.t-works__upper {
	padding: 0;
}
.t-works__upper .inner {
	width: 100%;
	flex-wrap: wrap;
}
.t-works__upper__head,
.t-works__upper__body {
	width: 100%;
}
.t-works__upper__head,
.t-works__upper .swiper-controller,
.t-works__upper .swiper-buttons {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	flex-direction: row;
}
.t-works__upper__head {
	-webkit-box-align: center;
	align-items: center;
	margin: 0 0 min(4.9751vw, 20px);
	padding: 0 6.6667%;
}
.t-works__upper__head .c-en-title {
	flex: 1 1 auto;
}
.t-works__upper .swiper-pagination {
	color: #333;
	font-size: min(4.4776vw, 1.8rem);
	margin: 0 min(6.4676vw, 26px) 0 0;
}
.t-works__upper .swiper-pagination-current {
	margin: max(-.4975vw, -2px) max(-2.4875vw, -10px) 0 0;
} 
.t-works__upper .swiper-pagination-total {
	margin: 0 0 min(.4975vw, 2px) max(-2.4875vw, -10px);
} 
.t-works__upper .swiper-pagination-slash::after {
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
	background-image: url(../img/cmn/slash_bk.svg);
} 
.t-works__upper .swiper-buttons {
	gap: min(3.98vw, 16px);
}
.t-works__upper .swiper-button-next,
.t-works__upper .swiper-button-prev {
	width: min(12.4378vw, 50px);
	height: min(12.4378vw, 50px);
	background: #333;
}
.t-works__upper .swiper-button-next::after,
.t-works__upper .swiper-button-prev::after {
	width: min(5.4726vw, 22px);
	height: min(1.4925vw, 6px);
}
.t-works__upper__body {
	padding: min(9.95vw, 40px) 0 min(19.1542vw, 77px);
}
.t-works__upper__body::before {
	content: "";
	width: 95.0248%;
	height: 100%;
	background: #333;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
}
.t-works__list.m-swiper a {
	max-height: inherit;
	min-height: inherit;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.t-works__list.m-swiper .t-works__img {
	margin: 0 0 min(3.7313vw, 15px);
}
.t-works__list.m-swiper .t-works__img > div {
	padding-top: 66.6666%;
}
.t-works__list.m-swiper .t-works__content {
	padding: 0 4.9751% 0 9.95%;
}
.t-works__list.m-swiper .t-works__meta {
	border-bottom: solid 1px #fff;
	margin: 0 0 min(2.4875vw, 10px);
	padding: 0 0 min(2.4875vw, 10px);
}
}


/* 施工例カテゴリー一覧 */
.t-works__btm {
	background: #333;
	overflow: hidden;
	position: relative;
}
.t-works__mask {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
}
.t-works-category__list {
	position: relative;
	z-index: 1;
}
.t-works-category__img {
	overflow: hidden;
	padding-top: 169%;
	position: relative;
}
.t-works-category__img img {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	object-fit: cover;
	transition: .5s;
	z-index: 0;
}
.t-works-category__title {
	color: #fff;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	line-height: 1;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}
.t-works-category__list > li:nth-child(2) .t-works-category__title,
.t-works-category__list > li:nth-child(3) .t-works-category__title {
	letter-spacing: -0.25em;
}
.t-works-category__content-in {
	color: #333;
    display: -webkit-box;
    display: flex;
	-webkit-box-align: center;
	align-items: center;
	position: relative;
}
.t-works-category__text::after {
	content: "";
	background: url(../img/cmn/arrow_r_bk02.svg) no-repeat;
	background-size: contain;
	flex-shrink: 0;
}
.t-works-category__text { flex: 1 1 auto; }
.t-works-category__arrow {
	border: solid 1px #333;
	border-radius: 50%;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    flex-shrink: 0;
    transition: .5s;
}
.t-works-category__arrow::after {
    content: "";
    background-image: url(../img/cmn/arrow_r_bk03.svg);
    background-repeat: no-repeat;
    background-size: contain;
}
.t-works-category__list > li > a:hover {
	opacity: 1;
}
.t-works-category__list > li > a:hover .t-works-category__img img {
	transform: scale(1.15);
}
.t-works-category__list > li > a:hover .t-works-category__arrow {
	background: #333;
}
.t-works-category__list > li > a:hover .t-works-category__arrow::after {
    background-image: url(../img/cmn/arrow_r_wh03.svg);
}
@media screen and (min-width: 1025px) {
.t-works__btm {
	padding: 0 0 min(5.787vw, 100px);
}
.t-works-category__list > li {
	width: 23.9583%;
	margin-right: 1.3889%;
}
.t-works-category__list > li:nth-child(4n) { margin-right: 0; }
.t-works-category__list > li:nth-child(2) { padding-top: min(2.8935vw, 50px); }
.t-works-category__list > li:nth-child(3) { padding-top: min(5.787vw, 100px); }
.t-works-category__list > li:nth-child(4) { padding-top: min(8.68vw, 150px); }
.t-works-category__title { font-size: min(4.6296vw, 8rem); }
.t-works-category__content { padding: min(1.1574vw, 20px) min(1.62vw, 28px); }
.t-works-category__content-in {
	font-size: min(1.1574vw, 2rem);
	gap: min(.5787vw, 10px);
}
.t-works-category__arrow {
	width: min(2.7777vw, 48px);
	height: min(2.7777vw, 48px);
}
.t-works-category__arrow::after {
    width: min(.9259vw, 16px);
    height: min(.6365vw, 11px);
}
}
@media screen and (max-width: 1024px) {
.t-works__btm {
	background: #fff;
	padding: 0 0 min(34.3283vw, 138px);
}
.t-works__mask {
	top: 0;
	bottom: inherit;
}
.t-works-category__list > li {
	width: 49%;
	margin-top: 58px;
	margin-right: 2%;
}
.t-works-category__list > li:nth-child(-n + 2) {
	margin-top: 0;
}
.t-works-category__list > li:nth-child(2n) {
	padding-top: 50px;
	margin-right: 0;
}
.t-works-category__content { padding: min(1.9531vw, 20px) min(2.7343vw, 28px); }
.t-works-category__title { font-size: min(7.8125vw, 8rem); }
.t-works-category__arrow {
	width: min(4.6875vw, 48px);
	height: min(4.6875vw, 48px);
}
.t-works-category__arrow::after {
    width: min(1.5625vw, 16px);
    height: min(1.0742vw, 11px);
}
}
@media screen and (max-width: 768px) {
.t-works__mask {
	display: none;
}
.t-works-category__list > li {
	width: 100%;
	margin-right: 0;
}
.t-works-category__list > li,
.t-works-category__list > li:nth-child(-n + 2) {
	margin-top: min(14.4278vw, 58px);
}
.t-works-category__list > li:nth-child(1) {
	margin-top: 0;
}
.t-works-category__list > li:nth-child(2n) {
	padding-top: 0;
}
.t-works-category__img { padding-top: 100%; }
.t-works-category__title { font-size: min(17.4129vw, 7rem); }
.t-works-category__content { padding: min(1.99vw, 8px) min(4.9751vw, 20px) 0; }
.t-works-category__content-in {
	font-size: min(4.4776vw, 1.8rem);
	gap: min(2.4875vw, 10px);
}
.t-works-category__arrow {
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
}
.t-works-category__arrow::after {
    width: min(3.98vw, 16px);
    height: min(2.7363vw, 11px);
}
}


/* インフォメーション
-------------------------------------------------------- */
#t-post {
	padding: 131px 0 151px;
}
.t-post__layout {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: 142px;
}
#t-post .c-en-title {
	margin: 0 0 32px;
}
.t-post__head {
	border-bottom: solid 1px #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
	margin: 0 0 40px;
	padding: 0 0 20px;
}
.t-post__title {
	font-size: 8rem;
	flex: 1 1 auto;
	letter-spacing: -0.05em;
	line-height: 1;
}
.t-post__head .t-post__btn {
	margin: 0 0 11px;
}
.t-post__btm { display: none; }
@media screen and (min-width: 1025px) {
	#t-post .p-post__list.m-swiper .swiper-wrapper .swiper-slide:nth-child(n + 4) {
		display: none;
	}
}
@media screen and (max-width: 1024px) {
.t-post__head .t-post__btn { display: none; }
.t-post__btm {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
	margin: min(10.4477vw, 42px) 0 0;
}
}
@media screen and (max-width: 768px) {
#t-post {
	padding: min(5.97vw, 24px) 0 min(21.6417vw, 87px);
}
.t-post__layout {
	gap: min(19.1542vw, 77px);
}
#t-post .c-en-title {
	margin: 0 0 min(5.97vw, 24px);
}
.t-post__head {
	border-bottom: none;
	margin: 0 0 min(5.4726vw, 22px);
	padding: 0;
}
.t-post__title {
	font-size: min(17.4129vw, 7rem);
}
}
.p-post__list.m-grid {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-post__list.m-grid > li {
	width: 30%;
	margin-top: 72px;
	margin-right: 5%;
}
.p-post__img {
	background-color: #D9D9D9;
	overflow: hidden;
    padding-top: 66.7142%;
	position: relative;
}
.p-post__img img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: cover;
	transition: .5s;
}
.p-post__list a {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.p-post__list .p-post__img {
	margin: 0 0 18px;
}
.p-post__list .p-post__meta {
	border-bottom: solid 1px #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	margin: 0 0 10px;
	padding: 0 0 8px;
}
.p-post__list .p-post__category {
	flex: 1 1 auto;
}
.p-post__list .p-post__time {
	margin: 0 0 0 8px;
}
.p-post__list .p-post__title {
	font-size: 2rem;
}
.p-post__list a:hover { opacity: 1; }
.p-post__list a:hover .p-post__img img {
	transform: scale(1.15);
}
@media screen and (min-width: 1025px) {
.p-post__list.m-swiper .swiper-wrapper {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-post__list.m-swiper .swiper-slide {
	width: 30%;
	margin-top: 72px;
	margin-right: 5%;
}
.p-post__list.m-grid > li:nth-child(-n + 3),
.p-post__list.m-swiper .swiper-slide:nth-child(-n + 3) {
	margin-top: 0;
}
.p-post__list.m-grid > li:nth-child(3n),
.p-post__list.m-swiper .swiper-slide:nth-child(3n) {
	margin-right: 0;
}
.p-post__list.m-swiper .swiper-controller {
	display: none;
}
}
@media screen and (max-width: 1024px) {
.p-post__list .p-post__img {
	margin: 0 0 min(3.7313vw, 15px);
}
.p-post__list .p-post__meta {
	margin: 0 0 min(2.4875vw, 10px);
	padding: 0 0 min(2.4875vw, 10px);
}
.p-post__list .p-post__time {
	margin: 0 0 0 min(1.99vw, 8px);
}
.p-post__list .p-post__title {
	font-size: min(4.4776vw, 1.8rem);
}
.p-post__list.m-grid > li {
	width: 47.5%;
}
.p-post__list.m-grid > li:nth-child(-n + 2) {
	margin-top: 0;
}
.p-post__list.m-grid > li:nth-child(2n) {
	margin-right: 0;
}
.p-post__list.m-swiper {
    margin-right: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
}
.p-post__list.m-swiper .swiper-controller {
	margin: 0 0 min(4.9751vw, 20px);
}
.p-post__list.m-swiper .swiper-controller,
.p-post__list.m-swiper .swiper-buttons {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}
.p-post__list.m-swiper .swiper-controller {
	-webkit-box-pack: end;
	justify-content: flex-end;
}
.p-post__list.m-swiper .swiper-pagination,
.p-post__list.m-swiper .swiper-button-next,
.p-post__list.m-swiper .swiper-button-prev {
	position: static;
}
.p-post__list.m-swiper .swiper-pagination {
	font-size: min(4.4776vw, 1.8rem);
	font-weight: 700;
	display: -webkit-box;
	display: flex;
	margin: 0 min(6.4676vw, 26px) 0 0;
}
.p-post__list.m-swiper .swiper-pagination-fraction {
	width: auto;
}
.p-post__list.m-swiper .swiper-pagination > span {
	display: -webkit-box;
	display: flex;
	line-height: 1;
}
.p-post__list.m-swiper .swiper-pagination-current {
	margin: max(-.4975vw, -2px) max(-2.4875vw, -10px) 0 0;
} 
.p-post__list.m-swiper .swiper-pagination-total {
	-webkit-box-align: end;
	align-items: flex-end;
	margin: 0 0 min(.4975vw, 2px) max(-2.4875vw, -10px);
} 
.p-post__list.m-swiper .swiper-pagination-slash::after {
	content: "";
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
	background: url(../img/cmn/slash_wh.svg) no-repeat;
	background-size: contain;
	display: block;
} 
.p-post__list.m-swiper .swiper-buttons > div:not(:last-child) {
	margin: 0 min(3.98vw, 16px) 0 0;
}
.p-post__list.m-swiper .swiper-button-next,
.p-post__list.m-swiper .swiper-button-prev {
	width: min(12.4378vw, 50px);
	height: min(12.4378vw, 50px);
	border: solid 1px #fff;
	border-radius: 50%;
	margin-top: 0;
}
.p-post__list.m-swiper .swiper-button-next::after,
.p-post__list.m-swiper .swiper-button-prev::after {
	content: "";
	width: min(5.4726vw, 22px);
	height: min(1.4925vw, 6px);
	background: url(../img/cmn/arrow_r_wh01.svg) no-repeat;
	background-size: contain;
}
.p-post__list.m-swiper .swiper-button-prev::after {
	transform: scale(-1, 1);
}
}
@media screen and (max-width: 768px) {
.p-post__list.m-grid > li {
	width: 100%;
	margin-right: 0;
}
.p-post__list.m-grid > li,
.p-post__list.m-grid > li:nth-child(-n + 2) {
	margin-top: min(14.9253vw, 60px);
}
.p-post__list.m-grid > li:nth-child(1) {
	margin-top: 0;
}
}
.c-pager {
	width: 100%;
	margin-top: 80px;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	gap: 40px;
	position: relative;
}
.wp-pagenavi {
	font-size: 2rem;
	width: 100%;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
	color: #fff;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	margin: 0 8px;
}
.wp-pagenavi a:hover,
.wp-pagenavi span.current {
	color: #333;
	background: #fff;
	opacity: 1;
}
.wp-pagenavi span.extend {
	border: none;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	border: solid 1px #fff;
    overflow: hidden;
    text-indent: -999999999999px;
    position: relative;
}
.wp-pagenavi .previouspostslink::after,
.wp-pagenavi .nextpostslink::after {
	content: "";
	width: 40px;
	height: 11px;
	background-image: url(../img/cmn/arrow_r_wh01.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.wp-pagenavi .previouspostslink::after {
	transform: scale(-1, 1);
}
.wp-pagenavi .previouspostslink:hover::after,
.wp-pagenavi .nextpostslink:hover::after {
	background-image: url(../img/cmn/arrow_r_bk01.svg);
}
.c-pager.is-works-backnumber-show .wp-pagenavi .previouspostslink,
.c-pager.is-works-backnumber-show .wp-pagenavi .nextpostslink {
	display: none;
}
@media screen and (max-width: 768px) {
.c-pager {
	margin-top: min(9.95vw, 40px);
}
.wp-pagenavi {
	font-size: min(4.4776vw, 1.8rem);
}
.wp-pagenavi a,
.wp-pagenavi span {
	width: min(12.4378vw, 50px);
	height: min(12.4378vw, 50px);
	margin: 0 min(.2487vw, 1px);
}
.wp-pagenavi .previouspostslink::after,
.wp-pagenavi .nextpostslink::after {
	width: min(5.4726vw, 22px);
	height: min(1.4925vw, 6px);
}
}
.p-works__more {
	max-width: 321px;
	width: 100%;
}
.p-works__more > a {
	height: 100px;
	background: url(../img/works/backnumber.jpg) no-repeat center center;
	background-size: cover;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	gap: 5px;
	position: relative;
}
.p-works__more > a::after {
	content: "";
	width: 100%;
	height: 100%;
	border: solid 1px #fff;
	position: absolute;
	top: 0;
	left: 0;
}
.p-works__more-title {
	font-size: 2rem;
	line-height: 1.3;
}
.p-works__more-text {
	font-size: 1.4rem;
}
@media screen and (min-width: 1025px) {
.p-works__more {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
.c-pager.is-works-backnumber-show.is-not-pager {
	-webkit-box-pack: end;
	justify-content: flex-end;
}
.c-pager.is-works-backnumber-show.is-not-pager .p-works__more {
	position: relative;
	top: 0;
	transform: none;
}
}
@media screen and (max-width: 1024px) {
.c-pager {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
	gap: min(9.95vw, 40px);
}
}
@media screen and (max-width: 768px) {
.p-works__more > a {
	height: min(37.3134vw, 150px);
}
.p-works__more-title {
	font-size: min(4.4776vw, 1.8rem);
}
.p-works__more-text {
	font-size: min(2.985vw, 1.2rem);
}
}

#c-instagram {
	color: #333;
	background: #fff;
	overflow: hidden;
	padding: 0 0 100px;
}
#c-instagram .c-en-title {
	margin: 0 0 -32px;
}
.c-instagram__body {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
	-webkit-box-align: end;
	align-items: flex-end;
	position: relative;
}
.c-instagram__wrap {
	flex: 1 1 auto;
	padding: 0 82px 50px 103px;
	position: relative;
	z-index: 0;
}
.c-instagram__wrap::after {
	content: "";
	width: 100%;
	height: 80%;
	background: #333;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
}
.c-instagram__list {
	position: relative;
	z-index: 1;
}
.c-instagram__list > li {
	width: 24%;
	margin-right: 1.3333%;
}
.c-instagram__list > li > a {
	background: #eee;
	display: block;
	overflow: hidden;
	padding-top: 100%;
	position: relative;
}
.c-instagram__list > li > a img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: cover;
	transition: .5s;
}
.c-instagram__btn {
	margin: 0 -63px 0 0;
	padding: 0 0 50px;
	position: relative;
	z-index: 1;
}
.c-instagram__list > li > a:hover { opacity: 1; }
.c-instagram__list > li > a:hover img {
	transform: scale(1.15);
}
@media screen and (min-width: 1025px) {
	.c-instagram__list > li:nth-child(4n) { margin-right: 0; }
}
@media screen and (max-width: 1024px) {
.c-instagram__list > li {
	width: 49%;
	margin-top: 2%;
	margin-right: 2%;
}
.c-instagram__list > li:nth-child(-n + 2) { margin-top: 0; }
.c-instagram__list > li:nth-child(2n) { margin-right: 0; }
}
@media screen and (max-width: 768px) {
#c-instagram {
	padding: 0 0 min(21.393vw, 86px);
}
#c-instagram .inner { width: 100%; }
#c-instagram .c-en-title {
	margin: 0 0 32px;
	padding: 0 6.66667%;
}
.c-instagram__body {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	padding: min(9.95vw, 40px) 0 min(14.9253vw, 60px);
}
.c-instagram__body::before {
	content: "";
	width: 95%;
	height: 100%;
	background: #333;
	position: absolute;
	top: 0;
	right: 0;
}
.c-instagram__body > div { width: 100%; }
.c-instagram__wrap { padding: 0; }
.c-instagram__wrap::after { content: none; }
.c-instagram__btn {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
	margin: min(9.95vw, 40px) 0 0;
	padding: 0 6.66667%;
}
.c-instagram__btn .c-btn01 {
	color: #fff;
}
}

.p-lower-top {
	color: #fff;
	background-image: url(../img/cmn/wood_grain.jpg);
    background-position: center;
    background-repeat: repeat;
    background-size: 1728px auto;
	border-bottom: solid 1px #fff;
	padding: 131px 0 80px 4.975%;
}
.p-lower-top .inner {
	width: 100%;
}
.p-lower-top .c-en-title {
	flex-shrink: 0;
}
.p-lower-top.m-meta-only {
	padding-bottom: 28px;
}
.p-lower-top__meta {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}
.c-breadcrumb {
	font-size: 1.4rem;
	margin: 0 0 0 24px;
	flex: 1 1 auto;
	overflow-x: auto;
}
.c-breadcrumb__list,
.c-breadcrumb__list > li {
	display: -webkit-box;
	display: flex;
	white-space: nowrap;
}
.c-breadcrumb__list::after {
    content: "";
    display: block;
    width: 4.975%; /* ← スクロールした最後に入れたい右余白のサイズ */
    flex-shrink: 0; /* 潰れないように固定 */
}
.c-breadcrumb__list > li:not(:last-child)::after {
	content: "/";
	margin: 0 min(3.98vw, 16px);
}
.c-breadcrumb__list > li > a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.c-breadcrumb__list > li > a:hover {
	opacity: 1;
	text-decoration-color: transparent;
}
.p-lower-top__title {
	font-size: 8rem;
	letter-spacing: -0.05em;
	line-height: 1.1;
	margin: 27px 0 0;
}
@media screen and (max-width: 768px) {
.p-lower-top {
	background-image: url(../img/cmn/wood_grain_sp.jpg);
    background-size: min(100vw, 402px) auto;
	padding: min(36.5671vw, 147px) 0 min(14.9253vw, 60px) 4.975%;
}
.p-lower-top.m-meta-only {
	padding-bottom: min(6.2189vw, 25px);
}
.c-breadcrumb {
	font-size: min(2.985vw, 1.2rem);
	margin: 0 0 0 min(6.9651vw, 28px);
}
.p-lower-top__title {
	font-size: min(14.9253vw, 6rem);
	line-height: 1;
	margin: min(7.4626vw, 30px) 0 0;
}
}

.p-section {
	padding: 78px 0 100px;
}
@media screen and (max-width: 768px) {
.p-section {
	padding: min(14.9253vw, 60px) 0 min(24.8756vw, 100px);
}
}


.p-page-main {
	padding: 65px 0 28px;
	position: relative;
}
.p-page-main .inner {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
	-webkit-box-align: end;
	align-items: flex-end;
	position: relative;
	z-index: 1;
}
.p-page-main__title,
.p-page-main__texts {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.p-page-main__title {
	font-size: 10rem;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	flex: 1 1 auto;
	gap: 26px;
	white-space: nowrap;
	line-height: 1;
}
.p-page-main__title span:nth-child(2) {
	margin: 47px 0 0;
}
.p-page-main.m-craftsman .p-page-main__title span:nth-child(2) {
	margin: 307px 0 0;
}
.p-page-main__title span span {
	letter-spacing: -.1em;
}
.p-page-main__texts,
.p-page-main__text {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.p-page-main__texts {
	font-size: 2rem;
	line-height: 1.3;
	gap: min(6.25vw, 64px);
	margin: 0 0 35px;
}
.p-page-main__bg {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.p-page-main__bg,
.p-page-main__bg-list {
    display: -webkit-box;
    display: flex;
}
.p-page-main__bg,
.p-page-main__bg-list,
.p-page-main__bg-list > li,
.p-page-main__bg-list > li > div {
	height: 100%;
}
.p-page-main__bg-list,
.p-page-main__bg-list > li,
.p-page-main__bg-list > li > div {
    flex-shrink: 0;
}
.p-page-main__bg-list {
    animation: infinite-scroll__left 240s linear infinite;
}
.p-page-main__bg-list > li > div {
	width: calc(100vh * 1371 / 900);
    overflow: hidden;
}
.p-page-main__bg-list > li > div img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}
@media screen and (min-width: 769px) {
.p-page-main {
	height: 900px;
}
.p-page-main .inner,
.p-page-main__title {
	height: 100%;
}
.p-page-main__text {
	gap: min(1.9531vw, 20px);
}
}
@media screen and (max-width: 768px) {
.p-page-main {
	padding: min(11.4427vw, 46px) 0 min(10.4477vw, 42px);
}
.p-page-main .inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.p-page-main__title {
	font-size: min(17.4129vw, 7rem);
	gap: min(4.8751vw, 20px);
}
.p-page-main__title span:nth-child(2) {
	margin: min(8.2vw, 33px) 0 0;
}
.p-page-main__texts {
	font-size: min(4.4776vw, 1.8rem);
	width: 100%;
	writing-mode: horizontal-tb;
	margin: min(2.7363vw, 11px) 0 0;
	gap: min(9.95vw, 40px);
}
.p-page-main__text {
	line-height: 2;
}
.p-page-main.m-craftsman .p-page-main__title {
	gap: min(2.4875vw, 10px);
}
.p-page-main.m-craftsman .p-page-main__title span:nth-child(2) {
	margin: min(34.8258vw, 140px) 0 0;
}
.p-page-main.m-craftsman .p-page-main__texts {
	margin: max(-19.9vw, -80px) 0 0;
}
.p-page-main__bg-list {
    animation: infinite-scroll__left 320s linear infinite;
}
}


.p-page-nav {
	border-bottom: solid 1px #fff;
	overflow-x: auto;
	padding: min(2.4875vw, 10px) 0;
}
.p-page-nav__list {
	display: -webkit-box;
	display: flex;
	white-space: nowrap;
}
.p-page-nav {
	overflow-x: auto;
}
.p-page-nav .p-page-nav__list {
	white-space: nowrap;
}
.p-page-nav__list > li > a {
	font-size: 2rem;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	padding: 20px 40px;
	position: relative;
}
.p-page-nav__list > li > a::after {
	content: "";
	width: 100%;
	height: 100%;
	background: #fff;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	transition: .5s;
	z-index: 0;
}
.p-page-nav__list > li > a > span {
	position: relative;
	z-index: 1;
}
.p-page-nav__list > li > a:hover,
.p-page-nav__list > li.is-active > a {
	color: #333;
	opacity: 1;
}
.p-page-nav__list > li > a:hover::after,
.p-page-nav__list > li.is-active > a::after {
	opacity: 1;
}
@media screen and (max-width: 768px) {
.p-page-nav__list > li > a {
	font-size: min(4.4776vw, 1.8rem);
	padding: min(2.4875vw, 10px) min(4.9751vw, 20px);
}
.p-page-nav.m-grid {
	overflow: inherit;
	padding: 0;
}
.p-page-nav.m-grid .inner {
	width: 100%;
}
.p-page-nav.m-grid .p-page-nav__list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	white-space: normal;
}
.p-page-nav.m-grid .p-page-nav__list > li {
	width: 50%;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
}
.p-page-nav.m-grid .p-page-nav__list > li:nth-child(-n + 2) {
	border-top: none;
}
.p-page-nav.m-grid .p-page-nav__list > li:nth-child(2n) {
	border-right: none;
}
}


@media screen and (min-width: 769px) {
.p-page-layout.m-vertical {
	display: -webkit-box;
	display: flex;
}
.p-page-layout.m-vertical .p-page-layout__head {
	flex-shrink: 0;
	margin: 0 min(9.6vw, 128px) 0 0;
}
.p-page-layout.m-vertical .p-page-layout__body {
	min-width: 0;
	flex: 1 1 auto;
	padding: 56px 0 0;
}
}
@media screen and (max-width: 768px) {
}

.p-single-post__head {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: 20px;
}
.p-single-post__head.m-default {
	border-bottom: solid 1px #fff;
	margin: 0 0 50px;
	padding: 0 0 40px;
}
.p-single-post__head.m-simple {
	margin: 0 0 33px;
}
.p-single-post__head .p-post__meta {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: center;
	align-items: center;
	gap: 16px;
}
.p-single-post__head .p-post__category__list {
	display: -webkit-box;
	display: flex;
	gap: min(3.98vw, 16px);
}
.p-single-post__head .p-post__category__list > li {
	color: #333;
	background: #fff;
	padding: 2px 16px 4px;
}
.p-single-post__head .p-post__title {
	font-size: 2rem;
}
.p-single-post.m-post .p-single-post__body.m-border {
	border-bottom: solid 1px #fff;
	padding: 0 0 80px;
}
/* 見出し */
.p-single-post.m-post .p-single-post__body h1,
.p-single-post.m-post .p-single-post__body h2 {
	font-size: 3rem;
	margin: 0 0 10px;
}
.p-single-post.m-post .p-single-post__body h3 {
	font-size: 2rem;
	margin: 0 0 16px;
}
/* 太字 */
.p-single-post.m-post .p-single-post__body strong,
.p-single-post.m-post .p-single-post__body b {
	font-weight: 700;
}
/* イタリック */
.p-single-post.m-post .p-single-post__body em {
	font-style: italic;
}
/* 上付き文字 */
.p-single-post.m-post .p-single-post__body sup {
	vertical-align: super;
    font-size: smaller;
}
/* 下付き文字 */
.p-single-post.m-post .p-single-post__body sub {
	vertical-align: sub;
    font-size: smaller;
}
.p-single-post.m-post .p-single-post__body ul li {
	padding: 0 0 0 min(4.4776vw, 18px);
	position: relative;
}
.p-single-post.m-post .p-single-post__body ul li::before {
	content: "";
	width: min(1.99vw, 8px);
	height: min(1.99vw, 8px);
	background: #fff;
	border-radius: 50%;
	position: absolute;
	top: .625em;
	left: 0;
}
.p-single-post.m-post .p-single-post__body ul li:not(:last-child) {
	margin: 0 0 10px;
}
.p-single-post.m-post .p-single-post__body ol {
	list-style-type: decimal;
	list-style-position: inside;
}
.p-single-post.m-post .p-single-post__body a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.p-single-post.m-post .p-single-post__body a:hover {
    opacity: 1;
	text-decoration-color: transparent;
}
.p-single-post.m-post .p-single-post__body a[target="_blank"]::after {
	content: "";
	width: 24px;
	height: 24px;
	background-image: url(../img/cmn/icon_blank_wh.svg);
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 min(1.99vw, 8px);
}
@media screen and (max-width: 768px) {
.p-single-post__head {
	gap: min(2.4875vw, 10px);
}
.p-single-post__head.m-default {
	margin: 0 0 min(8.4577vw, 34px);
	padding: 0 0 min(6.9651vw, 28px);
}
.p-single-post__head.m-simple {
	margin: 0 0 min(7.4626vw, 30px);
}
.p-single-post__head .p-post__meta {
	gap: min(3.4825vw, 14px);
}
.p-single-post__head .p-post__category__list > li {
	padding: min(.4975vw, 2px) min(3.4825vw, 14px) min(.995vw, 4px);
}
.p-single-post__head .p-post__title {
	font-size: min(4.4776vw, 1.8rem);
}
.p-single-post.m-post .p-single-post__body.m-border  {
	padding: 0 0 min(12.4378vw, 50px);
}
/* 見出し */
.p-single-post.m-post .p-single-post__body h1,
.p-single-post.m-post .p-single-post__body h2 {
	font-size: min(5.97vw, 2.4rem);
	margin: 0 0 min(1.99vw, 8px);
}
.p-single-post.m-post .p-single-post__body h3 {
	font-size: min(4.4776vw, 1.8rem);
	margin: 0 0 min(2.985vw, 12px);
}
.p-single-post.m-post .p-single-post__body ul li:not(:last-child) {
	margin: 0 0 min(1.2437vw, 5px);
}
.p-single-post.m-post .p-single-post__body a[target="_blank"]::after {
	width: min(4.9751vw, 20px);
	height: min(4.9751vw, 20px);
}
}


.p-single-pager {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	margin: 50px 0 0;
	position: relative;
}
.p-single-pager__btn.m-back {
	border: solid 1px #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	padding: min(2.4875vw, 10px) min(7.96vw, 32px) min(2.985vw, 12px);
}
.p-single-pager__btn.m-prev,
.p-single-pager__btn.m-next {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	gap: min(3.98vw, 16px);
	position: absolute;
	top: -15px;
}
.p-single-pager__btn.m-prev {
	left: 0;
}
.p-single-pager__btn.m-next {
	right: 0;
}
.p-single-pager__btn-arrow {
	width: 80px;
	height: 80px;
	border: solid 1px #fff;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	transition: .5s;
}
.p-single-pager__btn-arrow::before {
	content: "";
	width: 40px;
	height: 11px;
	background-image: url(../img/cmn/arrow_r_wh01.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.p-single-pager__btn.m-prev .p-single-pager__btn-arrow::before {
	transform: scale(-1, 1);
}
.p-single-pager__btn.m-prev.is-not-post,
.p-single-pager__btn.m-next.is-not-post {
	opacity: 0;
	visibility: hidden;
}
.p-single-pager__btn:hover {
	opacity: 1;
}
.p-single-pager__btn.m-back:hover,
.p-single-pager__btn.m-prev:hover .p-single-pager__btn-arrow,
.p-single-pager__btn.m-next:hover .p-single-pager__btn-arrow {
	background: #fff;
}
.p-single-pager__btn.m-back:hover {
	color: #333;
}
.p-single-pager__btn.m-prev:hover .p-single-pager__btn-arrow::before,
.p-single-pager__btn.m-next:hover .p-single-pager__btn-arrow::before {
	background-image: url(../img/cmn/arrow_r_bk01.svg);
}
@media screen and (max-width: 768px) {
.p-single-pager {
	font-size: min(4.4776vw, 1.8rem);
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
	margin: min(7.4626vw, 30px) 0 0;
}
.p-single-pager__btn.m-back,
.p-single-pager__nav {
	width: 100%;
}
.p-single-pager__nav {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
	margin: 0 0 min(7.4626vw, 30px);
}
.p-single-pager__btn.m-prev,
.p-single-pager__btn.m-next {
	position: static;
}
.p-single-pager__btn-arrow {
	width: min(12.4378vw, 50px);
	height: min(12.4378vw, 50px);
}
.p-single-pager__btn-arrow::before {
	width: min(5.4726vw, 22px);
	height: min(1.4925vw, 6px);
}
}

/* --------------------------------------------------------
	アコーディオン
-------------------------------------------------------- */
.c-acc__list {
	border-top: solid 1px #fff;
}
.c-acc__list > div {
	border-bottom: solid 1px #fff;
	transition: .5s;
}
.c-acc__list > div > dt,
.c-acc__list > div > dd > div {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
}
.c-acc__list > div > dt,
.c-acc__list > div > dd > div {
	padding: 30px 0;
}
.c-acc__list > div > dt {
	font-size: 2.4rem;
}
.c-acc__list > div > dd {
	display: none;
	margin: -10px 0 0;
}
.c-acc__list > div > dd > div {
	padding-top: 0;
}
.c-acc__head {
	cursor: pointer;
	padding-right: 74px !important;
	position: relative;
}
.c-acc__head::before,
.c-acc__head::after {
	content: "";
	width: min(3.4825vw, 14px);
	height: min(.4975vw, 2px);
	background: #fff;
	position: absolute;
	top: calc(50% - min(.2487vw, 1px));
	right: 40px;
	transition: .5s;
}
.c-acc__head::after {
	transform: rotate(90deg);
}
.c-acc__head > div {
	transition: .5s;
}
.c-acc__head:hover > div {
	opacity: .5;
}
.c-acc.is-acc-open .c-acc__head::after {
	transform: rotate(0);
}
@media screen and (max-width: 768px) {
.c-acc__list > div > dt,
.c-acc__list > div > dd > div {
	padding: min(4.9751vw, 20px) 0;
}
.c-acc__list > div > dt {
	font-size: min(4.9751vw, 2rem);
}
.c-acc__list > div > dd {
	margin: max(-1.2437vw, -5px) 0 0;
}
.c-acc__list > div > dd > div {
	padding-top: 0;
}
.c-acc__head {
	padding-right: min(10.9452vw, 44px) !important;
}
.c-acc__head::before,
.c-acc__head::after {
	right: min(4.9751vw, 20px);
}
}


/* --------------------------------------------------------
	よくある質問
-------------------------------------------------------- */
.p-faq-categories > div:not(:last-child) {
	margin-bottom: 140px;
}
.p-faq__list > div > dt,
.p-faq__list > div > dd > div {
	padding: 30px 40px;
}
.p-faq__list > div > dd {
	margin: 0;
}
.p-faq__list > div > dd > div {
	padding-top: 0;
}
.p-faq__icon,
.p-faq__text {
	transition: .5s;
}
.p-faq__icon {
	font-size: min(5.97vw, 2.4rem);
	flex-shrink: 0;
}
.p-faq__text {
	padding: 5px 0 0 20px;
}
.p-faq__list > div > dt .p-faq__text {
	font-size: 2rem;
}
.p-faq__list > div.c-acc.is-acc-open {
	background: #676767;

@media screen and (max-width: 768px) {
.p-faq-categories > div:not(:last-child) {
	margin-bottom: min(19.9vw, 80px);
}
.p-faq__list > div > dt,
.p-faq__list > div > dd > div {
	padding: min(7.4626vw, 30px) min(4.9751vw, 20px);
}
.p-faq__list > div > dd > div {
	padding-top: 0;
}
.p-faq__text {
	padding: min(1.4925vw, 6px) 0 0 min(4.9751vw, 20px);
}
.p-faq__list > div > dt .p-faq__text {
	font-size: min(4.4776vw, 1.8rem);
}
}
}


/* --------------------------------------------------------
	お問い合わせ
-------------------------------------------------------- */
/* 電話
-------------------------------------------------------- */
#p-contact-tel {
	padding: 70px 0 124px;
}
.p-contact-tel__link {
	margin: 3px 0 0;
}
.p-contact-tel__link-num {
	font-size: 4.6rem;
	font-weight: 700;
	letter-spacing: .1em;
}
.p-contact-tel__link-hours {
	letter-spacing: .1em;
	margin: -7px 0 0;
}
@media screen and (max-width: 768px) {
#p-contact-tel {
	padding: min(12.4378vw, 50px) 0 min(19.9vw, 80px);
}
.p-contact-tel__link {
	margin: min(5.97vw, 24px) 0 0;
	padding: 0 0 0 min(12.9353vw, 52px);
}
.p-contact-tel__link-num {
	font-size: min(9.95vw, 4rem);
}
.p-contact-tel__link-hours {
	margin: min(.7462vw, 3px) 0 0;
}
}

/* メールフォーム
-------------------------------------------------------- */
#p-contact-form {
	color: #333;
	background: #fff;
	padding: 70px 0 100px;
}
.p-contact-form__fields {
	background: #F6F6F6;
	margin: min(7.4626vw, 30px) 0 0;
	padding: 60px 20px;
}
.p-contact-form__fields > div {
	max-width: 858px;
	width: 100%;
	margin: auto;
}
.p-contact-form__tbl {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-contact-form__tbl > div {
	width: 100%;
}
.p-contact-form__tbl > div > dt {
	font-size: 2rem;
	margin: 0 0 min(2.4875vw, 10px);
}
.p-contact-form__label,
.p-contact-form__label > span {
	display: inline-block;
}
.p-contact-form__label {
	padding: 0 0 0 min(11.94vw, 48px);
	position: relative;
}
.p-contact-form__label > span {
	color: #fff;
	font-size: 1.4rem;
	background: #676767;
	line-height: 1;
	padding: 4px 6px 6px;
	position: absolute;
	top: min(1.4925vw, 6px);
	left: 0;
}
.p-contact-form__label > span.m-required {
	background: #FF7525;
}
.p-contact-form__name {
	display: -webkit-box;
	display: flex;
	gap: min(1.99vw, 8px);
}
.p-contact-form__name > li {
	width: calc(50% - min(.995vw, 4px));
}
.p-contact-form__address {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: min(2.4875vw, 10px);
}
.p-contact-form__address > div {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}
.p-contact-form__address > div > dt {
	width: 158px;
	flex-shrink: 0;
}
.p-contact-form__address > div > dd {
	flex: 1 1 auto;
}
.p-contact-form__tbl ::placeholder { color: #A4A4A4; }
.p-contact-form__tbl ::-ms-input-placeholder { color: #A4A4A4; }
.p-contact-form__tbl :-ms-input-placeholder { color: #A4A4A4; }
.p-contact-form__tbl input[type="text"],
.p-contact-form__tbl input[type="email"],
.p-contact-form__tbl input[type="tel"],
.p-contact-form__tbl select,
.p-contact-form__tbl textarea {
	color: #333;
	width: 100%;
	background-color: #fff;
	border: solid 1px #E1E1E1;
	border-radius: 5px;
	display: block;
	padding: min(2.4875vw, 10px) min(4.9751vw, 20px);
}
.p-contact-form__tbl select:invalid { color: #A4A4A4; }
.p-contact-form__tbl select {
	background-image: url(../img/cmn/arrow_b_bk01.svg);
	background-position: right min(4.9751vw, 20px) center;
	background-repeat: no-repeat;
	background-size: min(2.985vw, 12px) auto;
	padding-right: min(9.95vw, 40px);
}
.p-contact-form__tbl textarea {
	height: 178px;
}
.p-contact-form__tbl .wpcf7-form-control.m-middle {
	max-width: 366px;
}
.p-contact-form__tbl .wpcf7-form-control.m-small {
	max-width: 158px;
}
.wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
}
.wpcf7-acceptance .wpcf7-list-item-label {
	display: inline-block;
	padding: 0 0 0 min(5.97vw, 24px);
	position: relative;
}
.wpcf7-acceptance .wpcf7-list-item-label::before,
.wpcf7-acceptance .wpcf7-list-item-label::after {
	content: "";
	border-radius: 50%;
	position: absolute;
	left: 0;
	transition: .5s;
}
.wpcf7-acceptance .wpcf7-list-item-label::before {
	width: min(3.98vw, 16px);
	height: min(3.98vw, 16px);
	background: #fff;
	border: solid 1px #E1E1E1;
	top: min(1.4925vw, 6px);
	z-index: 0;
}
.wpcf7-acceptance .wpcf7-list-item-label::after {
	width: min(2.4875vw, 10px);
	height: min(2.4875vw, 10px);
	background: #FF7525;
	opacity: 0;
	top: min(2.2388vw, 9px);
    left: min(.7462vw, 3px);
	z-index: 1;
}
.wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label::after,
.wpcf7-acceptance input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
	opacity: 1;
}
.wpcf7-acceptance .wpcf7-list-item-label a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.wpcf7-acceptance .wpcf7-list-item-label a:hover {
	opacity: 1;
	text-decoration-color: transparent;
}
.p-contact-form__submit {
	border-top: solid 1px #E1E1E1;
	margin: 40px 0 0;
	padding: 40px 0 0;
}
.p-contact-form__submit-btn > p {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
}
.p-contact-form__submit-btn > p > input {
	color: #333;
	background: #fff;
	border: solid 1px #333;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	padding: 10px 32px;
	transition: .5s;
}
.p-contact-form__submit-btn > p > input:disabled {
	color: #fff;
	background: #A4A4A4;
	border-color: #A4A4A4;
}
.p-contact-form__submit-btn > p > input:hover {
	color: #fff;
	background: #333;
}
.wpcf7-spinner {
    display: none;
}
.cf7-cf-turnstile {
    width: fit-content;
    margin: min(3.98vw, 16px) auto 0 !important;
}
@media screen and (min-width: 1025px) {
.p-contact-form__tbl {
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.p-contact-form__tbl > div:not(:last-child) {
	margin-bottom: min(9.95vw, 40px);
}
.p-contact-form__tbl > div.m-half {
	width: calc(50% - min(3.15vw, 42px));
}
}
@media screen and (max-width: 1024px) {
.p-contact-form__tbl {
	gap: min(9.95vw, 40px);
}
}
@media screen and (max-width: 768px) {
#p-contact-form {
	padding: min(17.4129vw, 70px) 0 0;
}
#p-contact-form .p-page-layout__head,
#p-contact-form .p-contact__text {
	padding: 0 4.9751%;
}
.p-contact-form__fields {
	padding: min(14.9253vw, 60px) 4.9751% min(24.8756vw, 100px);
}
.p-contact-form__tbl > div > dt {
	font-size: min(4.4776vw, 1.8rem);
}
.p-contact-form__label > span {
	font-size: min(2.985vw, 1.2rem);
	padding: min(.995vw, 4px) min(1.99vw, 8px) min(1.4925vw, 6px);
}
.p-contact-form__address > div { display: block; }
.p-contact-form__address > div > dt {
	width: auto;
	margin: 0 0 min(1.2437vw, 5px);
}
.p-contact-form__tbl textarea {
	height: min(49.7512vw, 200px);
}
.p-contact-form__tbl .wpcf7-form-control.m-middle {
	max-width: inherit;
}
.p-contact-form__tbl .wpcf7-form-control.m-small {
	max-width: min(44.2786vw, 178px);
}
.p-contact-form__submit {
	border-top: none;
	margin: min(12.4378vw, 50px) 0 0;
	padding: 0;
}
.p-contact-form__submit-btn > p > input {
	font-size: min(4.4776vw, 1.8rem);
	width: 100%;
	padding: min(2.985vw, 12px);
}
}

/* サンクス
-------------------------------------------------------- */
#p-contact-thanks {
	color: #333;
	background: #fff;
	padding: 100px 0;
}
.p-contact-thanks__title {
	font-size: 4rem;
	line-height: 1.1;
	margin: 0 0 20px;
}
.p-contact-thanks__back {
	border-top: solid 1px #333;
	margin: 50px 0 0;
	padding: 40px 0 0;
}
.p-contact-thanks__btn {
	border: solid 1px #333;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	padding: 10px 32px;
}
.p-contact-thanks__btn:hover {
	color: #fff;
	background: #333;
	opacity: 1;
}
@media screen and (max-width: 768px) {
#p-contact-thanks {
	padding: min(12.4378vw, 50px) 0 min(24.8756vw, 100px);
}
.p-contact-thanks__title {
	font-size: min(7.96vw, 3.2rem);
	margin: 0 0 min(7.4626vw, 30px);
}
.p-contact-thanks__back {
	border-top: none;
	margin: min(14.9253vw, 60px) 0 0;
	padding: 0;
}
.p-contact-thanks__btn {
	font-size: min(4.4776vw, 1.8rem);
	width: 100%;
	padding: min(2.985vw, 12px);
}
}


/* --------------------------------------------------------
	プライバシーポリシー
-------------------------------------------------------- */
.p-privacy__list {
	counter-reset: number 0;
}
.p-privacy__list > div:not(:last-child) {
	margin: 0 0 min(12.4378vw, 50px);
}
.p-privacy__list > div > dt {
	font-size: 2.4rem;
	margin: 0 0 min(4.9751vw, 20px);
	padding: 0 0 0 24px;
	position: relative;
}
.p-privacy__list > div > dt::before {
	counter-increment: number 1;
	content: counter(number)".";
	position: absolute;
	top: 0;
	left: 0;
}
.p-privacy__list > div > dd:not(:nth-of-type(1)) {
	margin: min(4.9751vw, 20px) 0 0;
}
.p-privacy__list a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.p-privacy__list a:hover {
	opacity: 1;
    text-decoration-color: transparent;
}
@media screen and (max-width: 768px) {
.p-privacy__list > div > dt {
	font-size: min(4.9751vw, 2rem);
	padding: 0 0 0 min(4.9751vw, 20px);
}
}

.p-works__img {
	position: relative;
}
.p-works__img img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: contain;
	z-index: 0;
}
.swiper.p-works__list.m-main .p-works__img {
	padding-top: 66.7142%;
}
.swiper.p-works__list.m-thumb {
	margin-right: calc(50% - 50vw);
    padding-right: calc(-50% + 50vw);
	position: static;
}
.beer-slider {
	width: 100%;
	display: block;
}
.beer-slider > img {
	width: 100%;
}
.swiper.p-works__list.m-thumb .p-works__img {
	padding-top: 100%;
}
.swiper.p-works__list.m-thumb .p-works__img::before {
	content: "";
	width: 100%;
	height: 100%;
	border: solid 2px #fff;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	transition: .5s;
	z-index: 1;
}
.swiper.p-works__list.m-thumb .p-works__img img {
	object-fit: cover;
}
.swiper.p-works__list.m-thumb .swiper-slide {
	cursor: pointer;
	opacity: .5;
}
.swiper.p-works__list.m-thumb .swiper-slide.swiper-slide-thumb-active,
.swiper.p-works__list.m-thumb .swiper-slide.swiper-slide-thumb-active .p-works__img::before {
	opacity: 1;
}
.p-works__text {
	margin: 23px 0 0;
}
.p-works-swiper__thumb {
	overflow: hidden;
	margin: 23px 0 0;
	padding: 0 min(5.6224vw, 56px);
	position: relative;
}
.p-works-swiper__thumb::after {
	content: "";
	width: min(5.6224vw, 56px);
	height: 100%;
	background: #333;
	background: linear-gradient(90deg,rgba(51, 51, 51, 0) 0%, rgba(51, 51, 51, 1) 100%);
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}
.swiper.p-works__list.m-thumb .swiper-button-next,
.swiper.p-works__list.m-thumb .swiper-button-prev {
	width: min(4.8192vw, 48px);
	height: min(4.8192vw, 48px);
	background: #333;
	border: solid 1px #fff;
	border-radius: 50%;
	margin-top: 0;
	top: calc(50% - min(2.4vw, 24px));
	transition: .5s;
	z-index: 2;
}
.swiper.p-works__list.m-thumb .swiper-button-next {
	right: 0;
}
.swiper.p-works__list.m-thumb .swiper-button-prev {
	left: 0;
}
.swiper.p-works__list.m-thumb .swiper-button-next::after,
.swiper.p-works__list.m-thumb .swiper-button-prev::after {
	content: "";
	width: min(1.6vw, 16px);
	height: min(1.1vw, 11px);
	background-image: url(../img/cmn/arrow_r_wh03.svg);
	background-repeat: no-repeat;
	background-size: contain;
	transition: .5s;
}
.swiper.p-works__list.m-thumb .swiper-button-prev::after {
	transform: scale(-1, 1);
}
.swiper.p-works__list.m-thumb .swiper-button-next:hover,
.swiper.p-works__list.m-thumb .swiper-button-prev:hover {
	background: #fff;
}
.swiper.p-works__list.m-thumb .swiper-button-next:hover::after,
.swiper.p-works__list.m-thumb .swiper-button-prev:hover::after {
	background-image: url(../img/cmn/arrow_r_bk03.svg);
}
@media screen and (max-width: 768px) {
.swiper.p-works__list.m-thumb .p-works__img::before {
	border-width: min(.4975vw, 2px);
}
.p-works__text {
	margin: min(3.98vw, 16px) 0 0;
}
.p-works-swiper__thumb {
	margin: min(3.98vw, 16px) 0 0;
	padding: 0 min(12.4378vw, 50px);
}
.p-works-swiper__thumb::after {
	width: min(12.4378vw, 50px);
}
.swiper.p-works__list.m-thumb .swiper-button-next,
.swiper.p-works__list.m-thumb .swiper-button-prev {
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
	top: calc(50% - min(4.9751vw, 20px));
}
.swiper.p-works__list.m-thumb .swiper-button-next::after,
.swiper.p-works__list.m-thumb .swiper-button-prev::after {
	width: min(3.98vw, 16px);
	height: min(2.7363vw, 11px);
}
}
.p-works-info {
	border-top: solid 1px #fff;
	border-bottom: solid 1px #fff;
	margin: 50px 0 0;
	padding: 30px 0;
}
.p-works-info__tbl,
.p-works-info__tbl > div {
	display: -webkit-box;
	display: flex;
}
.p-works-info__tbl {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: 10px;
}
.p-works-info__tbl > div > dt,
.p-works-info__tbl > div > dd {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}
.p-works-info__tbl > div > dt {
	width: 86px;
	border-right: solid 1px #676767;
	flex-shrink: 0;
	padding: 0 min(3.98vw, 16px) min(.4975vw, 2px) 0;
}
.p-works-info__tbl > div > dd {
	flex: 1 1 auto;
	padding: 0 0 min(.4975vw, 2px) min(3.98vw, 16px);
}
@media screen and (max-width: 768px) {
.p-works-info {
	margin: min(9.95vw, 40px) 0 0;
	padding: min(4.9751vw, 20px) 0;
}
.p-works-info__tbl {
	gap: min(3.7313vw, 15px);
}
.p-works-info__tbl > div > dt {
	width: min(18.9vw, 76px);
}
}

.p-brokerage-fee {
	background: #FF7525;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	gap: 16px;
	padding: min(3.98vw, 16px);
}
.p-brokerage-fee__title {
	color: #FF7525;
	font-size: 2rem;
	font-weight: 700;
	width: 217px;
	height: 80px;
	background: #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	flex-shrink: 0;
	line-height: 1;
	text-align: center;
	padding: 13px 24px;
}
.p-brokerage-fee__title > span {
	margin: -8px 0 0;
}
.p-brokerage-fee__title > span > span {
	font-size: min(9.95vw, 4rem);
}
@media screen and (max-width: 768px) {
.p-brokerage-fee {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: min(4.9751vw, 20px);
}
.p-brokerage-fee__title {
	font-size: min(6.9651vw, 2.8rem);
	width: 100%;
	height: min(14.9253vw, 60px);
	padding: min(3.4825vw, 14px) min(3.98vw, 16px) min(4.9751vw, 20px);
}
.p-brokerage-fee__title > span {
	margin: max(-.4975vw, -2px) 0 0;
}
}

.p-property-categories > div:not(:last-child) {
    margin-bottom: 100px;
}
.p-property__list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-property__list > li {
	width: 47%;
}
.p-property__img {
	background-color: #D9D9D9;
	overflow: hidden;
	margin: 0 0 18px;
	padding-top: 66.6666%;
	position: relative;
}
.p-property__status {
	position: absolute;
	top: 16px;
	left: 16px;
	z-index: 2;
}
.p-property__status-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	gap: min(1.99vw, 8px);
	position: relative;
	z-index: 1;
}
.p-property__status-list > li {
	color: #fff;
	background: #333;
	padding: 10px 16px;
}
.p-property__status-list > li.m-brokerage-fee {
	background: #FF7525;
}
.p-property__status.m-soldout {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
}
.p-property__status.m-soldout,
.p-property__status.m-soldout::before {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.p-property__status.m-soldout::before {
	content: "";
	background: #333;
	opacity: .5;
	position: absolute;
	z-index: 0;
}
.p-property__status.m-soldout .p-property__status-list > li {
	font-size: 2rem;
	padding: 20px 32px;
}
.p-property__img img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: cover;
	transition: .5s;
	z-index: 0;
}
.p-property__list a {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.p-property__list .p-property__meta {
	border-bottom: solid 1px #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	margin: 0 0 10px;
	padding: 0 0 8px;
}
.p-property__list .p-property__category {
	flex: 1 1 auto;
}
.p-property__list .p-property__time {
	margin: 0 0 0 8px;
}
.p-property__list .p-property__title {
	font-size: 2rem;
}
.p-property__price {
	font-size: min(3.98vw, 1.6rem);
}
.p-property__price span {
	font-size: min(7.96vw, 3.2rem);
	font-weight: 700;
}
.p-property__list .p-property__price {
	margin: min(1.4925vw, 6px) 0 0;
}
.p-property__info {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	margin: min(.995vw, 4px) 0 0;
	gap: 10px;
}
.p-property__info > li {
	padding: 0 0 0 32px;
	position: relative;
}
.p-property__info > li::before {
	content: "";
	width: 24px;
	height: 24px;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: min(.4975vw, 2px);
	left: 0;
}
.p-property__info > li.p-property__info-icon01::before {
	background-image: url(../img/cmn/icon_home_wh.svg);
}
.p-property__info > li.p-property__info-icon02::before {
	background-image: url(../img/cmn/icon_address_wh.svg);
}
.p-property__info > li.p-property__info-icon03::before {
	width: 16px;
	height: 20px;
	background-image: url(../img/cmn/icon_access_wh.svg);
	top: min(1.2437vw, 5px);
	left: 4px;
}
.p-property__info > li.p-property__info-icon04::before {
	height: 10px;
	background-image: url(../img/cmn/icon_land_wh.svg);
	top: min(2.4875vw, 10px);
}
.p-property__list a:hover { opacity: 1; }
.p-property__list a:hover .p-property__img img {
	transform: scale(1.15);
}
@media screen and (min-width: 769px) {
.p-property__list > li {
	margin-top: 100px;
	margin-right: 6%;
}
.p-property__list > li:nth-child(-n + 2) {
	margin-top: 0;
}
.p-property__list > li:nth-child(2n) {
	margin-right: 0;
}
.p-property__status {
	top: min(1.2vw, 16px);
	left: min(1.2vw, 16px);
}
.p-property__status-list {
	gap: min(.6vw, 8px);
}
.p-property__status-list > li {
	font-size: min(1.5625vw, 16px);
	padding: min(.9765vw, 10px) min(1.5625vw, 16px);
}
.p-property__status.m-soldout .p-property__status-list > li {
	font-size: min(1.9531vw, 2rem);
	padding: min(1.9531vw, 20px) min(3.125vw, 32px);
}
}
@media screen and (max-width: 768px) {
.p-property-categories > div:not(:last-child) {
    margin-bottom: min(17.4129vw, 70px);
}
.p-property__list > li {
	width: 100%;
	margin-top: min(14.9253vw, 60px);
}
.p-property__list > li:nth-child(1) {
	margin-top: 0;
}
.p-property__list .p-property__img {
	margin: 0 0 min(3.7313vw, 15px);
}
.p-property__status {
	top: min(2.4875vw, 10px);
	left: min(2.4875vw, 10px);
}
.p-property__status-list > li {
	padding: min(1.24378vw, 5px) min(2.4875vw, 10px);
}
.p-property__status.m-soldout .p-property__status-list > li {
	font-size: min(4.4776vw, 1.8rem);
	padding: min(2.4875vw, 10px) min(6.4676vw, 26px);
}
.p-property__list .p-property__meta {
	margin: 0 0 min(2.4875vw, 10px);
	padding: 0 0 min(2.4875vw, 10px);
}
.p-property__list .p-property__time {
	margin: 0 0 0 min(1.99vw, 8px);
}
.p-property__list .p-property__title {
	font-size: min(4.4776vw, 1.8rem);
}
.p-property__info {
	gap: min(1.2437vw, 5px);
}
.p-property__info > li {
	padding: 0 0 0 min(6.9651vw, 28px);
}
.p-property__info > li::before {
	width: min(4.9751vw, 20px);
	height: min(4.9751vw, 20px);
}
.p-property__info > li.p-property__info-icon03::before {
	width: min(3.4825vw, 14px);
	height: min(4.4776vw, 18px);
	left: min(.7462vw, 3px);
}
.p-property__info > li.p-property__info-icon04::before {
	height: min(1.99vw, 8px);
}
}
.p-property__main-btm {
	display: -webkit-box;
	display: flex;
	margin: 40px 0 0;
}
.p-property__main-info {
	flex: 1 1 auto;
}
.p-property__main-links {
	width: 240px;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	flex-shrink: 0;
	gap: 10px;
	margin: 0 0 0 16px;
}
.p-property__main-link {
	color: #FF7525;
	font-size: 2rem;
	background: #fff;
	border: solid 1px #fff;
	border-radius: 35px;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	padding: 16px;
}
.p-property__main-link.m-reserve {
	color: #fff;
	background: #FF7525;
	border-color: #FF7525;
}
@media screen and (max-width: 768px) {
.p-property__main-btm {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	margin: min(4.9751vw, 20px) 0 0;
}
.p-property__main-links {
	width: auto;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	flex-direction: row;
	gap: 4%;
	margin: min(7.4626vw, 30px) 0 0;
}
.p-property__main-link {
	width: 48%;
	font-size: min(4.4776vw, 1.8rem);
	padding: min(1.99vw, 8px) min(1.99vw, 8px) min(2.4875vw, 10px);
}
}

.p-property__map {
	overflow: hidden;
	padding-top: 55.5555%;
	position: relative;
}
.p-property__map iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
.p-property__map {
	padding-top: 138.1215%;
}
}
.p-property__youtube {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-property__youtube > li {
	width: 33%;
	margin-right: .5%;
}
.p-property__youtube > li:nth-child(3n) {
	margin-right: 0;
}
.p-property__youtube > li > a {
	display: block;
	cursor: pointer;
	overflow: hidden;
	padding-top: 179%;
	position: relative;
}
.p-property__youtube > li > a > img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: cover;
}
.p-property__contents {
	border-top: solid 1px #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: 60px;
	margin: 50px 0 0;
	padding: 50px 0 0;
}
@media screen and (max-width: 768px) {
.p-property__contents {
	border-top: none;
	gap: min(12.4378vw, 50px);
	margin: min(12.4378vw, 50px) 0 0;
	padding: 0;
}
}

.p-related .c-title01 {
	margin: 0 0 40px;
}
.p-related .p-property__list .p-property__meta {
	border-bottom-color: #333;
}
.p-related .p-property__info > li.p-property__info-icon01::before {
	background-image: url(../img/cmn/icon_home_bk.svg);
}
.p-related .p-property__info > li.p-property__info-icon02::before {
	background-image: url(../img/cmn/icon_address_bk.svg);
}
.p-related .p-property__info > li.p-property__info-icon03::before {
	background-image: url(../img/cmn/icon_access_bk.svg);
}
.p-related .p-property__info > li.p-property__info-icon04::before {
	background-image: url(../img/cmn/icon_land_bk.svg);
}
.p-property-related__back {
    border-top: solid 1px #333;
    margin: 50px 0 0;
    padding: 40px 0 0;
}
.p-property-related__btn {
	border: solid 1px #333;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    padding: 10px 32px;
}
.p-property-related__btn:hover {
    color: #fff;
    background: #333;
    opacity: 1;
}
@media screen and (max-width: 768px) {
.p-related .c-title01 {
	margin: 0 0 min(4.975vw, 20px);
}
.p-related.m-service {
	padding-bottom: min(.4975vw, 2px);
}
.p-related.m-service .c-title01 {
	padding: 0 4.975%;
}
.p-property-related__back {
	border-top: none;
	margin: min(14.9253vw, 60px) 0 0;
	padding: 0;
}
.p-property-related__btn {
	font-size: min(4.4776vw, 1.8rem);
	width: 100%;
	padding: min(2.985vw, 12px);
}
}

.p-service {
	overflow: hidden;
	padding: 70px 0 0;
}
.p-service__head,
.p-service__body {
	padding: 0 0 0 10%;
}
.p-service__head {
	margin: 0 0 50px;
}
.p-service__title {
	font-size: 7.2rem;
	line-height: .9722;
	margin: 0 0 50px;
}
.p-service__title span {
	letter-spacing: -0.15em;
}
.p-service__body {
	padding-bottom: 100px;
	position: relative;
}
.p-service__body::after {
	content: "";
	width: 200vw;
	height: calc(100% - min(3vw, 40px));
	background: #333;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
}
.p-service__list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	position: relative;
	z-index: 1;
}
.p-service__list > li {
	width: 49.3269%;
}
.p-service__list > li > a {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	display: block;
	overflow: hidden;
	padding-top: 38.9863%;
	position: relative;
}
.p-service__list > li > a > picture > img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: cover;
	transition: .5s;
	z-index: 0;
}
.p-service__list-title,
.p-service__list-arrow {
	position: absolute;
	z-index: 1;
}
.p-service__list-title {
	color: #fff;
	font-size: min(7.96vw, 3.2rem);
	line-height: 1;
	top: 10px;
	left: 10px;
}
.p-service__list-arrow {
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
	background: rgba(51, 51, 51, 0.50);
	backdrop-filter: blur(2px);
	border: solid 1px #fff;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	right: 10px;
	bottom: 9px;
	transition: .5s;
}
.p-service__list-arrow::after {
	content: "";
	width: min(3.98vw, 16px);
	height: min(2.7363vw, 11px);
	background-image: url(../img/cmn/arrow_r_wh03.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.p-service__list > li > a:hover {
	opacity: 1;
}
.p-service__list > li > a:hover > picture > img {
	transform: scale(1.15);
}
.p-service__list > li > a:hover .p-service__list-arrow {
	background: #fff;
}
.p-service__list > li > a:hover .p-service__list-arrow::after {
	background-image: url(../img/cmn/arrow_r_bk03.svg);
}

@media screen and (min-width: 1025px) {
.p-service__list > li {
	margin-top: 1.3462%;
	margin-right: 1.3462%;
}
.p-service__list > li:nth-child(-n + 2) {
	margin-top: 0;
}
.p-service__list > li:nth-child(2n) {
	margin-right: 0;
}
.p-service__list-title {
	font-size: min(2.4vw, 3.2rem);
	top: min(.75vw, 10px);
	left: min(.75vw, 10px);
}
.p-service__list-arrow {
	width: min(3vw, 40px);
	height: min(3vw, 40px);
	right: min(.75vw, 10px);
	bottom: min(.6751vw, 9px);
}
.p-service__list-arrow::after {
	width: min(1.2vw, 16px);
	height: min(.8252vw, 11px);
}
}
@media screen and (max-width: 1024px) {
.p-service .inner {
	width: 100%;
}
.p-service__head {
	padding: 0 4.975%;
}
.p-service__body {
	padding: 0 0 min(.4975vw, 2px);
}
.p-service__body::after {
	content: none;
}
.p-service__list > li {
	width: 100%;
	margin-top: min(.4975vw, 2px);
}
.p-service__list > li:nth-child(1) {
	margin-top: 0;
}
}
@media screen and (max-width: 768px) {
.p-service {
	padding: min(12.4378vw, 50px) 0 0;
}
.p-service__head {
	margin: 0 0 min(9.95vw, 40px);
}
.p-service__title {
	font-size: min(17.4129vw, 7rem);
	line-height: 1.1428;
	margin: 0 0 min(4.9751vw, 20px);
}
.p-service__list > li > a {
	padding-top: 49.7512%;
}
.p-service__list > li.m-service01 > a {
	background-image: url(../img/service/service01_sp.png);
}
.p-service__list > li.m-service02 > a {
	background-image: url(../img/service/service02_sp.png);
}
.p-service__list > li.m-service03 > a {
	background-image: url(../img/service/service03_sp.png);
}
.p-service__list > li.m-service04 > a {
	background-image: url(../img/service/service04_sp.png);
}
.p-service__list > li.m-service05 > a {
	background-image: url(../img/service/service05_sp.png);
}
.p-service__list > li.m-service06 > a {
	background-image: url(../img/service/service06_sp.png);
}
.p-service__list > li.m-service07 > a {
	background-image: url(../img/service/service07_sp.png);
}
.p-service__list > li.m-service08 > a {
	background-image: url(../img/service/service08_sp.png);
}
.p-service__list-title {
	top: min(4.9751vw, 20px);
	left: min(4.9751vw, 20px);
}
.p-service__list-arrow {
	right: min(4.9751vw, 20px);
	bottom: min(4.9751vw, 20px);
}
}

.p-service-nav__list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	position: relative;
	z-index: 1;
}
.p-service-nav__list > li {
	width: 24.6666%;
}
.p-service-nav__list > li > a {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	display: block;
	overflow: hidden;
	padding-top: 100%;
	position: relative;
}
.p-service-nav__list > li > a > picture > img {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	object-fit: cover;
	transition: .5s;
	z-index: 0;
}
.p-service-nav__list > li:nth-child(1) > a {
	padding-top: 49.5553%;
}
.p-service-nav__list-title,
.p-service-nav__list-arrow {
	position: absolute;
	z-index: 1;
}
.p-service-nav__list-title {
	color: #fff;
	font-size: 2.4rem;
	line-height: 1.5;
	top: 10px;
	left: 10px;
}
.p-service-nav__list-arrow {
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
	background: rgba(51, 51, 51, 0.50);
	backdrop-filter: blur(2px);
	border: solid 1px #fff;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	transition: .5s;
	right: 10px;
	bottom: 9px;
}
.p-service-nav__list-arrow::after {
	content: "";
	width: min(3.98vw, 16px);
	height: min(2.7363vw, 11px);
	background-image: url(../img/cmn/arrow_r_wh03.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.p-service-nav__list > li > a:hover {
	opacity: 1;
}
.p-service-nav__list > li > a:hover > picture > img {
	transform: scale(1.15);
}
.p-service-nav__list > li > a:hover .p-service-nav__list-arrow {
	background: #fff;
}
.p-service-nav__list > li > a:hover .p-service-nav__list-arrow::after {
	background-image: url(../img/cmn/arrow_r_bk03.svg);
}

@media screen and (min-width: 769px) {
.p-service-nav__list > li {
	margin-top: .4445%;
	margin-right: .4445%;
}
.p-service-nav__list > li:nth-child(-n + 3) {
	margin-top: 0;
}
.p-service-nav__list > li:nth-child(3),
.p-service-nav__list > li:last-child {
	margin-right: 0;
}
.p-service-nav__list > li:nth-child(1) {
	width: 49.7777%;
}
.p-service-nav__list-title {
	font-size: min(2.3437vw, 2.4rem);
	top: min(.9765vw, 10px);
	left: min(.9765vw, 10px);
}
.p-service-nav__list-arrow {
	width: min(3.9vw, 40px);
	height: min(3.9vw, 40px);
	right: min(.9765vw, 10px);
	bottom: min(.8789vw, 9px);
}
.p-service-nav__list-arrow::after {
	width: min(1.5625vw, 16px);
	height: min(1vw, 11px);
}
}
@media screen and (max-width: 768px) {
.p-service-nav__list > li {
	width: 49.751%;
	margin-top: .498%;
	margin-right: .498%;
}
.p-service-nav__list > li:nth-child(1) {
	width: 100%;
	margin-top: 0;
}
.p-service-nav__list > li:nth-child(3),
.p-service-nav__list > li:nth-child(5),
.p-service-nav__list > li:nth-child(7) {
	margin-right: 0;
}
.p-service-nav__list-title {
	font-size: min(4.9751vw, 2rem);
	top: min(4.9751vw, 20px);
	left: min(4.9751vw, 20px);
}
}

/* --------------------------------------------------------
	会社案内
-------------------------------------------------------- */
/* 代表挨拶
-------------------------------------------------------- */
#p-company-message {
	padding: 70px 0 100px;
}
.p-company-message__wrap {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: start;
	align-items: flex-start;
}
.p-company-message__img {
	width: 38%;
	position: relative;
}
.p-company-message__img > span {
	display: inline-block;
	position: relative;
}
.p-company-message__content {
	width: 62%;
	padding: 0 0 0 30px;
}
.p-company-message__content > div {
	padding: 0 0 0 9px;
}
.p-company-message__title {
	font-size: 5rem;
	line-height: 1.4;
	margin: 0 0 20px;
}
.p-company-message__meta {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
	-webkit-box-pack: justify;
	justify-content: space-between;
	margin: 100px 0 0;
}
.p-company-message__profile-person {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
	margin: 20px 0 0;
}
.p-company-message__profile-position {
	flex-shrink: 0;
	margin: 0 13px 0 0;
}
.p-company-message__profile-name {
	font-size: 0;
	max-width: 174px;
	width: 100%;
}
@media screen and (min-width: 1025px) {
.p-company-message__content {
	font-size: min(1.2vw, 1.6rem);
	padding: 0 0 0 min(2.25vw, 30px);
}
.p-company-message__content > div {
	padding: 0 0 0 min(.6751vw, 9px);
}
.p-company-message__title {
	font-size: min(3.75vw, 5rem);
	margin: 0 0 min(1.5vw, 20px);
}
.p-company-message__meta {
	margin: min(7.5vw, 100px) 0 0;
}
.p-company-message__profile-person {
	margin: min(1.5vw, 20px) 0 0;
}
.p-company-message__profile-position {
	margin: 0 min(.9752vw, 13px) 0 0;
}
.p-company-message__profile-name {
	max-width: min(13vw, 174px);
}
.p-company-message__content .c-btn01 {
    font-size: min(1.5vw, 2rem);
    gap: min(1.5vw, 20px);
}
.p-company-message__content .c-btn01__arrow {
    width: min(3.6vw, 48px);
	height: min(3.6vw, 48px);
}
.p-company-message__content .c-btn01__arrow::after {
    width: min(1.2vw, 16px);
    height: min(.8252vw, 11px);
}
}
@media screen and (max-width: 1024px) {
.p-company-message__img,
.p-company-message__content {
	width: 100%;
}
.p-company-message__img {
	text-align: center;
	margin: 0 0 min(7.2139vw, 29px);
}
.p-company-message__content,
.p-company-message__content > div { padding: 0; }
}
@media screen and (max-width: 768px) {
#p-company-message {
	padding: min(13.93vw, 56px) 0 min(23.383vw, 94px);
}
.p-company-message__title {
	font-size: min(11.194vw, 4.5rem);
	margin: 0 0 min(7.4626vw, 30px);
}
.p-company-message__meta {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	margin: min(12.4378vw, 50px) 0 0;
}
.p-company-message__profile-person {
	margin: min(2.4875vw, 10px) 0 0;
}
.p-company-message__profile-position {
	margin: 0 min(3.4825vw, 14px) 0 0;
}
.p-company-message__profile-name {
	max-width: min(36.8159vw, 148px);
}
.p-company-message__content .c-btn01 {
	margin: min(12.4378vw, 50px) 0 0;
}
}

/* 本社ショールーム
-------------------------------------------------------- */
#p-company-showroom {
	overflow: hidden;
}
.p-company-showroom__title {
	font-size: 7.2rem;
	letter-spacing: -0.1em;
	line-height: .9722;
	margin: 0 0 50px;
}
#p-company-showroom .p-page-layout__body {
	min-width: 0;
}
.p-company-showroom__head,
.p-company-showroom__body {
	position: relative;
}
.p-company-showroom__head {
	z-index: 1;
}
.p-company-showroom__body {
	margin: 50px 0 0;
	z-index: 0;
}
.p-company-showroom__body .p-company-showroom__text {
	display: none;
}
.p-company-showroom__swiper {
	padding: 0 0 40px;
	position: relative;
	z-index: 0;
}
.p-company-showroom__swiper::before {
	content: "";
	width: 200vw;
	height: calc(100% - 40px);
	background: #333;
	position: absolute;
	bottom: 0;
	left: 92px;
	z-index: 0;
}
.p-company-showroom__list {
	margin-right: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
}
.p-company-showroom__list a {
	display: block;
	overflow: hidden;
	padding-top: 169%;
	cursor: pointer;
	position: relative;
}
.p-company-showroom__list a img {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	object-fit: cover;
	transition: .5s;
	z-index: 0;
}
.p-company-showroom__list-title {
	color: #fff;
	font-size: 3.2rem;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	line-height: 1;
	top: 10px;
	right: 14px;
}
.p-company-showroom__list-title,
.p-company-showroom__list-arrow {
	position: absolute;
	z-index: 1;
}
.p-company-showroom__list-arrow {
    width: min(9.95vw, 40px);
    height: min(9.95vw, 40px);
    background: rgba(51, 51, 51, 0.50);
    backdrop-filter: blur(2px);
    border: solid 1px #fff;
    border-radius: 50%;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    right: 10px;
    bottom: 9px;
	transition: .5s;
}
.p-company-showroom__list-arrow::after {
    content: "";
    width: min(3.98vw, 16px);
    height: min(2.7363vw, 11px);
    background-image: url(../img/cmn/arrow_r_wh03.svg);
    background-repeat: no-repeat;
    background-size: contain;
	right: 10px;
	bottom: 12px;
}
.p-company-showroom__list a:hover {
	opacity: 1;
}
.p-company-showroom__list a:hover img {
	transform: scale(1.15);
}
.p-company-showroom__list a:hover .p-company-showroom__list-arrow {
    background: #fff;
}
.p-company-showroom__list a:hover .p-company-showroom__list-arrow::after {
    background-image: url(../img/cmn/arrow_r_bk03.svg);
}
.p-company-showroom__swiper .swiper-pagination {
	display: none;
}
.p-company-showroom__swiper .swiper-buttons {
	display: -webkit-box;
	display: flex;
	gap: 24px;
	margin: 40px 0 0;
}
.p-company-showroom__swiper .swiper-button-next,
.p-company-showroom__swiper .swiper-button-prev {
	width: 80px;
	height: 80px;
	border: solid 1px #fff;
	border-radius: 50%;
	margin-top: 0;
	cursor: pointer;
	position: relative;
	top: 0;
	transition: .5s;
}
.p-company-showroom__swiper .swiper-button-next {
	right: 0;
}
.p-company-showroom__swiper .swiper-button-next::after,
.p-company-showroom__swiper .swiper-button-prev::after {
	content: "";
}
.p-company-showroom__swiper .swiper-button-next::after,
.p-company-showroom__swiper .swiper-button-prev::after {
	width: 40px;
	height: 11px;
	background-image: url(../img/cmn/arrow_r_wh01.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.p-company-showroom__swiper .swiper-button-next:hover {
	background: #fff;
}
.p-company-showroom__swiper .swiper-button-next:hover::after {
	background-image: url(../img/cmn/arrow_r_bk01.svg);
}
.p-company-showroom__swiper .swiper-button-prev {
	left: 0;
}
.p-company-showroom__swiper .swiper-button-prev::after {
	transform: scale(-1, 1);
}
@media screen and (min-width: 1025px) {
.p-company-showroom__list-title {
	font-size: min(2.4vw, 3.2rem);
	top: min(.75vw, 10px);
	right: min(1.05vw, 14px);
}
.p-company-showroom__list-arrow {
    width: min(9.95vw, 40px);
    height: min(9.95vw, 40px);
    right: 10px;
    bottom: 9px;
}
.p-company-showroom__list-arrow::after {
    content: "";
    width: min(3.98vw, 16px);
    height: min(2.7363vw, 11px);
    background-image: url(../img/cmn/arrow_r_wh03.svg);
    background-repeat: no-repeat;
    background-size: contain;
	right: 10px;
	bottom: 12px;
}
}
@media screen and (min-width: 769px) {
.p-company-showroom__swiper .swiper-button-prev {
	border: solid 1px #333;
}
.p-company-showroom__swiper .swiper-button-prev::after {
	background-image: url(../img/cmn/arrow_r_bk01.svg);
}
.p-company-showroom__swiper .swiper-button-prev:hover {
	background: #333;
}
.p-company-showroom__swiper .swiper-button-prev:hover::after {
	background-image: url(../img/cmn/arrow_r_wh01.svg);
}
}
@media screen and (max-width: 768px) {
#p-company-showroom {
	padding: min(13.93vw, 56px) 0 0;
}
#p-company-showroom .inner { width: 100%; }
#p-company-showroom .p-page-layout__head { padding: 0 4.975%; }
#p-company-showroom .p-page-layout__body {
    display: -webkit-box;
    display: flex;
	padding: 0 4.7263% 0 2.985%;
}
.p-company-showroom__head {
	color: #fff;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	mix-blend-mode: difference;
	white-space: nowrap;
}
.p-company-showroom__head .p-company-showroom__text { display: none; }
.p-company-showroom__body {
	min-width: 0;
	flex: 1 1 auto;
	margin: min(2.4875vw, 10px) 0 0;
}
.p-company-showroom__title {
	font-size: min(17.4129vw, 7rem);
	line-height: 1;
	margin: 0 min(4.4776vw, 18px) 0 0;
}
.p-company-showroom__body .p-company-showroom__text {
	display: block;
	margin: 0 0 min(7.4626vw, 30px);
}
.p-company-showroom__swiper { padding: 0; }
.p-company-showroom__swiper::before {
	height: 100%;
	top: min(12.6865vw, 51px);
	left: -100vw;
}
.p-company-showroom__swiper .swiper-controller {
    display: -webkit-box;
    display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: end;
	justify-content: flex-end;
	gap: min(6.4676vw, 26px);
	margin: 42px 0 0;
}
.p-company-showroom__swiper .swiper-pagination {
	color: #fff;
	font-size: min(4.4776vw, 1.8rem);
	font-weight: 700;
	display: -webkit-box;
	display: flex;
	position: relative;
}
.p-company-showroom__swiper .swiper-pagination-fraction {
	width: auto;
	bottom: 0;
}
.p-company-showroom__swiper .swiper-pagination > span {
	display: -webkit-box;
	display: flex;
	line-height: 1;
}
.p-company-showroom__swiper .swiper-pagination-current {
	margin: max(-.4975vw, -2px) max(-2.4875vw, -10px) 0 0;
} 
.p-company-showroom__swiper .swiper-pagination-total {
	-webkit-box-align: end;
	align-items: flex-end;
	margin: 0 0 min(.4975vw, 2px) max(-2.4875vw, -10px);
} 
.p-company-showroom__swiper .swiper-pagination-slash::after {
	content: "";
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
	background: url(../img/cmn/slash_wh.svg) no-repeat;
	background-size: contain;
	display: block;
} 
.p-company-showroom__swiper .swiper-buttons {
	gap: min(3.98vw, 16px);
	margin: 0;
}
.p-company-showroom__swiper .swiper-button-next,
.p-company-showroom__swiper .swiper-button-prev {
	width: min(12.4378vw, 50px);
	height: min(12.4378vw, 50px);
}
.p-company-showroom__swiper .swiper-button-next::after,
.p-company-showroom__swiper .swiper-button-prev::after {
	width: min(5.4726vw, 22px);
	height: min(1.4925vw, 6px);
}
}

/* モーダル */
.js-modal {
	display: none;
	max-width: 1202px;
	width: 90%;
	max-height: 90%;
	overflow: auto;
	position: fixed;
	z-index: 200;
}
.js-modal__in {
	padding: 0 min(10.2539vw, 105px);
	position: relative;
}
.js-modal__switch-text { display: none; }
.js-modal__switch {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.js-modal__switch-arrow {
	width: min(7.8125vw, 80px);
	height: min(7.8125vw, 80px);
	border: solid 1px #fff;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	transition: .5s;
}
.js-modal__switch-arrow::before {
	content: "";
	width: min(3.9vw, 40px);
	height: min(1.0742vw, 11px);
	background-image: url(../img/cmn/arrow_r_wh01.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.js-modal__switch.m-prev { left: 0; }
.js-modal__switch.m-next { right: 0; }
.js-modal__switch.m-prev .js-modal__switch-arrow::before {
	transform: scale(-1, 1);
}
.js-modal__switch:hover {
	opacity: 1;
}
.js-modal__switch:hover .js-modal__switch-arrow {
	background: #fff;
}
.js-modal__switch:hover .js-modal__switch-arrow::before {
	background-image: url(../img/cmn/arrow_r_bk01.svg);
}
.js-modal__body {
	background: #676767;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: start;
	align-items: flex-start;
	padding: min(5.85937vw, 60px) min(3.9vw, 40px);
	position: relative;
}
.js-modal__img {
	width: 40%;
}
.js-modal__img > div {
	overflow: hidden;
	padding-top: 100%;
	position: relative;
}
.js-modal__img > div > img {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	object-fit: cover;
}
.js-modal__content {
	color: #fff;
	width: 60%;
	padding: 0 0 0 min(3.9vw, 40px);
}
.js-modal__title {
	font-size: 3.2rem;
	line-height: 1.15625;
	margin: 0 0 min(2.9296vw, 30px);
}
.js-modal__open,
.js-modal__close {
	cursor: pointer;
}
.js-modal__close {
	width: min(4.6875vw, 48px);
	height: min(4.6875vw, 48px);
	background: #333;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	transition: .5s;
	position: absolute;
	top: min(.9765vw, 10px);
	right: min(.9765vw, 10px);
}
.js-modal__close::after {
	content: "";
	width: min(1.5625vw, 16px);
	height: min(1.5625vw, 16px);
	background-image: url(../img/cmn/icon_times_wh.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.js-modal__close:hover {
	background: #fff;
}
.js-modal__close:hover::after {
	background-image: url(../img/cmn/icon_times_bk.svg);
}
.js-modal__bg {
    width: 100%;
    height: 100%;
    background: #333;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
	z-index: 150;
}
@media screen and (max-width: 768px) {
.js-modal__in {
	height: 90vh;
	overflow: auto;
	padding: 0;
	position: relative;
}
.js-modal__nav,
.js-modal__switch {
	display: -webkit-box;
	display: flex;
}
.js-modal__nav {
	width: 100%;
	background: #333;
	-webkit-box-pack: justify;
	justify-content: space-between;
	padding: min(7.4626vw, 30px) 0 0;
	position: absolute;
	bottom: 0;
	left: 0;
}
.js-modal__switch {
	-webkit-box-align: center;
	align-items: center;
	gap: min(3.98vw, 16px);
	position: relative;
	top: 0;
	transform: none;
}
.js-modal__switch-arrow {
	width: min(12.4378vw, 50px);
	height: min(12.4378vw, 50px);
}
.js-modal__switch-arrow::before {
	width: min(5.4726vw, 22px);
	height: min(1.4925vw, 6px);
}
.js-modal__switch-text {
	color: #fff;
	font-size: min(4.4776vw, 1.8rem);
	display: block;
}
.js-modal__body {
	height: 90vh;
	overflow: auto;
	padding: 0;
	position: relative;
}
.js-modal__img,
.js-modal__content {
	width: 100%;
}
.js-modal__content {
	color: #fff;
	min-height: calc(min(73.1342vw, 294px) + min(26.1194vw, 105px));
	padding: min(7.4626vw, 30px) 4.9751%;
}
.js-modal__title {
	font-size: min(7.96vw, 3.2rem);
	margin: 0 0 min(4.9751vw, 20px);
}
.js-modal__close {
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
	top: min(2.4875vw, 10px);
	right: min(2.4875vw, 10px);
}
.js-modal__close::after {
	width: min(2.985vw, 12px);
	height: min(2.985vw, 12px);
}
}

/* 会社概要
-------------------------------------------------------- */
#p-company-overview .c-circle__list01 > li:not(:last-child) {
	margin: 0 0 16px;
}
@media screen and (max-width: 768px) {
#p-company-overview .c-border-title02 {
	margin: 0;
}
#p-company-overview .c-circle__list01 > li:not(:last-child) {
	margin: 0 0 min(2.4875vw, 10px);
}
}


/* --------------------------------------------------------
	むらくもの家づくり
-------------------------------------------------------- */
/* 強み
-------------------------------------------------------- */
.p-strengths {
	background-image: url(../img/cmn/wood_grain.jpg);
    background-position: center;
    background-repeat: repeat;
    background-size: 1728px auto;
	padding: 170px 0;
}
.p-strengths__list > li {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: start;
	align-items: flex-start;
	gap: 3%;
}
.p-strengths__list > li:nth-child(even) {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
}
.p-strengths__list > li:not(:last-child) {
	margin: 0 0 160px;
}
.p-strengths__img {
	width: 50%;
}
.p-strengths__img > div {
	overflow: hidden;
	padding-top: 50%;
	position: relative;
}
.p-strengths__img > div img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	inset: 0;
	object-fit: cover;
}
.p-strengths__content {
	width: 47%;
}
.p-strengths__title {
	font-size: 7.2rem;
	letter-spacing: -0.05em;
	line-height: .9722;
	margin: 0 0 50px;
}
.p-strengths__title span {
	letter-spacing: -0.15em;
}
@media screen and (min-width: 1025px) {
.p-strengths__list > li {
	gap: 3%;
}
}
@media screen and (max-width: 1024px) {
.p-strengths {
	padding: 0 0 170px;
}
.p-strengths .inner { width: 100%; }
.p-strengths__img,
.p-strengths__content {
	width: 100%;
}
.p-strengths__img {
	margin: 0 0 min(9.95vw, 40px);
}
.p-strengths__content {
	padding: 0 4.9751%;
}
}
@media screen and (max-width: 768px) {
.p-strengths {
	padding: 0 0 min(24.8756vw, 100px);
}
.p-strengths__list > li:not(:last-child) {
	margin: 0 0 min(14.9253vw, 60px);
}
.p-strengths__title {
	font-size: min(17.4129vw, 7rem);
	line-height: 1;
	margin: 0 0 min(9.95vw, 40px);
}
}

/* こだわり
-------------------------------------------------------- */
.p-feature {
	padding: 70px 0 130px;
}
.p-feature__head {
	margin: 0 0 50px;
}
.p-feature__title {
	font-size: 7.2rem;
	letter-spacing: -0.05em;
	line-height: .9722;
	margin: 0 0 50px;
}
.p-feature-figure {
	background: #F6F6F6;
	padding: min(7.4626vw, 30px);
}
.p-feature-figure__head {
	padding: 0 50px;
	position: -webkit-sticky;
	position: sticky;
	top: 80px;
	z-index: 5;
}
.p-feature-figure__title,
.p-feature-figure__text {
	width: 100%;
}
.p-feature-figure__title {
	font-size: min(4.9751vw, 2rem);
	background: #fff;
	line-height: 1.4;
	text-align: center;
	margin: 0 0 30px;
	padding: min(2.4875vw, 10px);
}
.p-feature-figure__text {
	margin: 30px 0 0;
}
.p-feature-figure__list {
	width: 100%;
	max-width: 100%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	-webkit-box-pack: justify;
	justify-content: space-between;
	overflow-x: auto;
	padding: 0 50px;
}
.p-feature-figure__list > li {
	width: 278.6px;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
	flex-shrink: 0;
}
.p-feature-figure__list > li:not(:last-of-type) { margin: 0 40px 0 0; }
.p-feature-figure__list .scroll-hint-icon {
	top: min(24.8756vw, 100px);
}
.p-feature-figure__arrow {
	max-width: 47px;
	width: 100%;
	margin: 0 0 10px;
}
.p-feature-figure.p-feature-figure01 {
	padding: 50px 0;
}
.p-feature-figure01 .p-feature-figure__title {
	color: #fff;
	background: #FF7525;
	box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.10);
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	margin: 0 0 min(2.4875vw, 10px);
	padding: 0;
}
.p-feature-figure01 .p-feature-figure__title::before,
.p-feature-figure01 .p-feature-figure__title::after {
	content: "";
	width: min(17.4129vw, 70px);
	height: min(17.4129vw, 70px);
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	margin: min(2.4875vw, 10px) 0 0;
}
.p-feature-figure01 .p-feature-figure__title::before {
	background-image: url(../img/concept/feature_icon01.svg);
}
.p-feature-figure01 .p-feature-figure__title::after {
	background-image: url(../img/concept/feature_icon02.svg);
}
.p-feature-figure01 .p-feature-figure__title > span {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	margin: 0 10px;
}
.p-feature-figure01 .p-feature-figure__img {
	box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.10);
}
.p-feature-figure__badge {
	margin: min(3.98vw, 16px) 0 0;
}

.p-feature-merit {
	margin: 50px 0 0;
}
.p-feature-merit__title {
	font-size: min(9.95vw, 4rem);
	margin: 0 0 min(4.9751vw, 20px);
}
.p-feature-merit__list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	gap: 2.5%;
}
.p-feature-merit__list > div {
	width: 48.75%;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
}
.p-feature-merit__list .p-feature-figure__img {
	width: 97%;
}
@media screen and (max-width: 1024px) {
.p-feature-merit__list {
	gap: min(4.9751vw, 20px);
}
.p-feature-merit__list > div {
	width: 100%;
}
}
@media screen and (max-width: 768px) {
.p-feature {
	padding: min(14.9253vw, 60px) 0 min(22.388vw, 90px);
}
.p-feature .p-page-layout__head,
.p-feature__head,
.p-feature-figure__head,
.p-feature-figure__list,
.p-feature-merit {
	padding: 0 4.9751%;
}
.p-feature__head {
	margin: 0 0 min(9.95vw, 40px);
}
.p-feature__title {
	font-size: min(17.4129vw, 7rem);
	line-height: 1.1428;
	margin: 0 0 min(4.9751vw, 20px);
}
.p-feature-figure__head {
	top: 0;
}
.p-feature-figure__title {
	font-size: min(4.4776vw, 1.8rem);
	margin: 0 0 min(4.9751vw, 20px);
}
.p-feature-figure__text {
	margin: min(4.9751vw, 20px) 0 0;
}
.p-feature-figure__list > li {
	width: min(58.7064vw, 236px);
}
.p-feature-figure__list > li:not(:last-of-type) { margin: 0 min(2.4875vw, 10px) 0 0; }
.p-feature-figure__arrow {
	max-width: min(9.95vw, 40px);
	margin: 0 0 min(2.4875vw, 10px);
}
.p-feature-figure.p-feature-figure01 {
	padding: min(9.95vw, 40px) 0;
}
.p-feature-figure01 .p-feature-figure__title {
	font-size: min(4.9751vw, 2rem);
}
.p-feature-merit {
	margin: min(19.9vw, 80px) 0 0;
}
.p-feature-merit__title {
	line-height: 1.5;
}
.p-feature-merit__list .p-feature-figure__img {
	width: 100%;
}
}

/* 家づくりの流れ
-------------------------------------------------------- */
.p-flow {
	overflow: hidden;
	padding: 70px 0 0;
}
.p-flow__list-item {
	padding: 50px 0 100px;
	position: relative;
}
.p-flow__list-item > div {
	position: relative;
	z-index: 1;
}
.p-flow__list-item:not(.p-flow__list-item01):after {
	content: "";
	width: 200vw;
	height: 100%;
	position: absolute;
	top: 0;
	left: -100vw;
	z-index: 0;
}
.p-flow__list-item02::after {
	background: #404040;
}
.p-flow__list-item03::after {
	background: #4E4E4E;
}
.p-flow__list-item04::after {
	background: #5C5C5C;
}
.p-flow__head {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	gap: 16px;
	margin: 0 0 min(7.4626vw, 30px);
}
.p-flow__title {
	font-size: min(9.95vw, 4rem);
}
.p-flow__period {
	background: #000;
	padding: min(1.99vw, 8px) min(16px) min(2.4875vw, 10px);
}
.p-flow-step__list {
    margin-right: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
}
.p-flow-step__list .swiper-slide {
	height: auto;
}
.p-flow-step__content {
	color: #333;
	height: 100%;
	background: #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	padding: 24px;
}
.p-flow-step__content a {
	text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.p-flow-step__content a:hover {
    opacity: 1;
    text-decoration-color: transparent;
}
.p-flow-step__title {
	font-size: 2rem;
	border-bottom: solid 1px #333;
	line-height: 1.4;
	margin: 0 0 min(4.9751vw, 20px);
	padding: 0 0 min(2.4875vw, 10px);
}
.p-flow-step__client {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: start;
	align-items: flex-start;
	margin: min(4.9751vw, 20px) 0 0;
}
.p-flow-step__client > dt {
	color: #fff;
	background: #000;
	margin: 0 0 min(1.2437vw, 5px);
	padding: min(1.99vw, 8px) min(16px) min(2.4875vw, 10px);
}
.swiper.p-flow-step__list .swiper-controller {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	margin: min(7.4626vw, 30px) 0 0;
}
.swiper.p-flow-step__list .swiper-pagination,
.swiper.p-flow-step__list .swiper-button-next,
.swiper.p-flow-step__list .swiper-button-prev {
	position: static;
}
.swiper.p-flow-step__list .swiper-pagination {
	font-size: min(4.4776vw, 1.8rem);
	font-weight: 700;
	display: -webkit-box;
	display: flex;
	margin: 0 min(6.4676vw, 26px) 0 0;
}
.swiper.p-flow-step__list .swiper-pagination-fraction {
	width: auto;
}
.swiper.p-flow-step__list .swiper-pagination > span {
	display: -webkit-box;
	display: flex;
	line-height: 1;
}
.swiper.p-flow-step__list .swiper-pagination-current {
	margin: max(-.4975vw, -2px) max(-2.4875vw, -10px) 0 0;
} 
.swiper.p-flow-step__list .swiper-pagination-total {
	-webkit-box-align: end;
	align-items: flex-end;
	margin: 0 0 min(.4975vw, 2px) max(-2.4875vw, -10px);
} 
.swiper.p-flow-step__list .swiper-pagination-slash::after {
	content: "";
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
	background-image: url(../img/cmn/slash_wh.svg);
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
} 
.swiper.p-flow-step__list .swiper-buttons {
	display: -webkit-box;
	display: flex;
	gap: 20px;
}
.swiper.p-flow-step__list .swiper-button-next,
.swiper.p-flow-step__list .swiper-button-prev {
	width: 80px;
	height: 80px;
	border: solid 1px #fff;
	border-radius: 50%;
	margin-top: 0;
	transition: .5s;
}
.swiper.p-flow-step__list .swiper-button-next::after,
.swiper.p-flow-step__list .swiper-button-prev::after {
	content: "";
	width: 40px;
	height: 11px;
	background: url(../img/cmn/arrow_r_wh01.svg) no-repeat;
	background-size: contain;
}
.swiper.p-flow-step__list .swiper-button-prev::after {
	transform: scale(-1, 1);
}
.swiper.p-flow-step__list .swiper-button-next:hover,
.swiper.p-flow-step__list .swiper-button-prev:hover {
	background: #fff;
}
.swiper.p-flow-step__list .swiper-button-next:hover::after,
.swiper.p-flow-step__list .swiper-button-prev:hover::after {
	background-image: url(../img/cmn/arrow_r_bk01.svg);
}
.p-flow-step.m-aftermaintenance .p-flow-step__content {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: min(4.9751vw, 20px);
}
@media screen and (min-width: 769px) {
.swiper.p-flow-step__list .swiper-pagination {
	display: none;
}
}
@media screen and (max-width: 768px) {
.p-flow {
	padding: min(14.9253vw, 60px) 0 0;
}
.p-flow__head {
	gap: min(5.97vw, 24px);
}
.p-flow__list-item {
	padding: min(9.95vw, 40px) 0 min(14.9253vw, 60px);
}
.p-flow__list-item01 {
	padding-top: 0;
}
.p-flow__title {
	line-height: 1.5;
}
.p-flow-step__content {
	padding: min(7.4626vw, 30px) min(5.97vw, 24px);
}
.p-flow-step__title {
	font-size: min(4.4776vw, 1.8rem);
}
.swiper.p-flow-step__list .swiper-controller {
	-webkit-box-pack: end;
	justify-content: flex-end;
}
.swiper.p-flow-step__list .swiper-buttons {
	gap: min(3.98vw, 16px);
}
.swiper.p-flow-step__list .swiper-button-next,
.swiper.p-flow-step__list .swiper-button-prev {
	width: min(12.4378vw, 50px);
	height: min(12.4378vw, 50px);
}
.swiper.p-flow-step__list .swiper-button-next::after,
.swiper.p-flow-step__list .swiper-button-prev::after {
	width: min(5.4726vw, 22px);
	height: min(1.4925vw, 6px);
}
}

/* 費用について
-------------------------------------------------------- */
.p-cost {
	padding: 70px 0 100px;
}
.p-cost__wrap {
	background: #333;
	margin: 30px 0 0;
	padding: 30px 30px 27px;
}
.p-cost__title {
	color: #fff;
	font-size: 2rem;
	line-height: 1.4;
	text-align: center;
	margin: 0 0 26px;
}
.p-cost__list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-cost__list > li {
	width: 32.6666%;
	background: #fff;
	margin-top: 1%;
	padding: min(4.9751vw, 20px) min(4.9751vw, 20px) min(7.4626vw, 30px);
}
.p-cost__item-title {
	border-bottom: solid 1px #333;
	margin: 0 0 min(3.7313vw, 15px);
	padding: 0 0 min(2.4875vw, 10px);
}
.p-cost__item-list {
	display: -webkit-box;
	display: flex;
}
.c-cost__note {
	color: #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	margin: -20px 0 0;
}
.c-cost__note-head {
	font-size: 2rem;
	font-weight: 900;
	background: #FF7525;
	border-radius: 75px;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	flex-shrink: 0;
	line-height: 1.4;
	text-align: center;
	padding: 21px 20px 26px 19px;
}
.c-cost__note-label {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	text-align: left;
	margin: 0 0 10px;
}
.c-cost__note-label > span {
	margin: 0 0 0 8.73px;
}
.c-cost__note-label::after {
	content: "";
	width: 97px;
	height: 43px;
	background: url(../img/concept/cost_label.svg);
	display: block;
	margin: -34.25px 0 0;
}
@media screen and (min-width: 1025px) {
.p-cost__list > li {
	margin-right: 1%;
}
.p-cost__list > li:nth-child(-n + 3) {
	margin-top: 0;
}
.p-cost__list > li:nth-child(3),
.p-cost__list > li:nth-child(5) {
	margin-right: 0;
}
.p-cost__list > li:nth-child(5) {
	width: 66.3334%;
}
.c-cost__note-body {
	padding: 45px 0 0 30px;
}
.p-cost__item-list {
	gap: 32px;
}
}
@media screen and (max-width: 1024px) {
.p-cost__list > li {
	width: 100%;
	margin-top: min(1.99vw, 8px);
}
.c-cost__note {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	margin: min(7.4626vw, 30px) 0 0;
}
.c-cost__note-head {
	width: 100%;
	border-radius: min(4.9751vw, 20px);
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	flex-direction: row;
	gap: min(3.4253vw, 13.77px);
}
.c-cost__note-label { margin: 5px 0 0; }
.c-cost__note-text {
	text-align: left;
	line-height: 1.5555;
}
.c-cost__note-body { margin: min(7.4626vw, 30px) 0 0; }
}
@media screen and (max-width: 768px) {
.p-cost {
	padding: min(14.9253vw, 60px) 0 min(22.388vw, 90px);
}
.p-cost__wrap {
	margin: min(9.95vw, 40px) 0 0;
	padding: min(8.7064vw, 35px) min(4.9751vw, 20px) min(8.4577vw, 34px);
}
.p-cost__title {
	font-size: min(4.4776vw, 1.8rem);
	line-height: 1.5555;
	margin: 0 0 min(7.4626vw, 30px);
}
.p-cost__item-title {
	line-height: 2;
}
.p-cost__item-list {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: min(1.2437vw, 5px);
}
.c-cost__note-head {
	font-size: min(4.4776vw, 1.8rem);
	padding: min(4.2288vw, 17px) min(1.99vw, 8px) min(4.2288vw, 17px) min(4.2288vw, 17px);
}
.c-cost__note-label {
	margin: min(1.99vw, 8px) 0 0;
}
.c-cost__note-label > span {
	margin: 0 0 0 min(1.995vw, 8.02px);
}
.c-cost__note-label::after {
	width: min(22.446vw, 90.233px);
	height: min(9.95vw, 40px);
	margin: max(-7.96vw, -32px) 0 0;
}
}

/* --------------------------------------------------------
	むらくもの職人達
-------------------------------------------------------- */
.p-craftsman-categories {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: 80px;
}
.p-craftsman-category__head {
	color: #fff;
	min-height: 300px;
	padding: 40px;
	position: relative;
}
.p-craftsman-category__title,
.p-craftsman-category__text {
	position: relative;
	z-index: 1;
}
.p-craftsman-category__title {
	font-size: 7.2rem;
	line-height: .97222;
	margin: 0 0 min(7.4626vw, 30px);
}
.p-craftsman-category__img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.p-craftsman-category__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.p-craftsman-category__body {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	margin: min(7.4626vw, 30px) 0 0;
	gap: min(7.4626vw, 30px);
}
.p-craftsman__text { margin: 0 0 50px; }
.p-craftsman-category__list {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: 30px;
}
.p-craftsman-category__list > li {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: start;
	align-items: flex-start;
}
.p-craftsman-category__item-img {
	width: min(23.4375vw, 240px);
}
.p-craftsman-category__item-img > div {
	background: #D9D9D9;
	overflow: hidden;
	padding-top: 66.6666%;
	position: relative;
}
.p-craftsman-category__item-img > div > img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
	object-fit: cover;
    z-index: 0;
}
.p-craftsman-category__item-content {
	width: calc(100% - min(23.4375vw, 240px));
	padding: 0 0 0 20px;
}
.p-craftsman-category__item-title {
	font-size: 2rem;
}
.p-craftsman-category__item-info,
.p-craftsman-category__item-info > div {
	display: -webkit-box;
	display: flex;
}
.p-craftsman-category__item-info {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	gap: min(2.4875vw, 10px);
	margin: min(2.4875vw, 10px) 0 0;
}
.p-craftsman-category__item-info > div > dt {
	width: 86px;
	border-right: solid 1px #676767;
	padding: 0 min(3.98vw, 16px) 0 0;
}
.p-craftsman-category__item-info > div > dd {
	width: calc(100% - 86px);
	padding: 0 0 0 min(3.98vw, 16px);
}
@media screen and (max-width: 768px) {
.p-craftsman-categories {
	gap: min(14.9253vw, 60px);
}
.p-craftsman-category__head {
	min-height: min(99.5vw, 400px);
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-pack: center;
	justify-content: center;
	padding: min(4.9751vw, 20px) 4.85%;
}
.p-craftsman-category__body {
	padding: 0 4.85%;
}
.p-craftsman__text {
	margin: 0 0 min(14.9253vw, 60px);
}
.p-craftsman-category__title {
	font-size: min(17.4129vw, 7rem);
	line-height: 1;
}
.p-craftsman-category__list {
	gap: min(9.95vw, 40px);
}
.p-craftsman-category__item-img,
.p-craftsman-category__item-content {
	width: 100%;
}
.p-craftsman-category__item-img {
	margin: 0 0 min(4.9751vw, 20px);
}
.p-craftsman-category__item-content { padding: 0; }
.p-craftsman-category__item-title {
	font-size: min(4.4776vw, 1.8rem);
}
.p-craftsman-category__item-info > div > dt {
	width: min(18.9vw, 76px);
}
.p-craftsman-category__item-info > div > dd {
	width: calc(100% - min(18.9vw, 76px));
}
}
.c-before-after {
	position: relative;
	width: 100%;
	padding-top: 66.7142%;
	overflow: hidden;
	user-select: none;
	touch-action: none;
	cursor: ew-resize;
}

.c-before-after__before,
.c-before-after__after {
	background: #333;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;  /* 横幅は100%固定 */
    height: 100%;
}

.c-before-after__before img,
.c-before-after__after img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* After要素の初期状態（最初は左側50%を表示） */
.c-before-after__after {
    clip-path: inset(0 0 0 50%);
}


/* ハンドル */
.c-before-after__handle {
	position: absolute;
	top: 0;
	left: 50%;
	width: 2px;
	height: 100%;
	background: #fff;
	transform: translateX(-50%);
	cursor: pointer;
	z-index: 2;
}

.c-before-after__handle span {
	width: 48px;
    height: 48px;
	background: #fff;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	gap: min(1.2437vw, 5px);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.c-before-after__handle span::before,
.c-before-after__handle span::after {
	content: "";
	width: min(2.4875vw, 10px);
	height: min(1.7412vw, 7px);
	background: url(../img/cmn/arrow_r_bk03.svg) no-repeat;
	background-size: contain;
	display: block;
}
.c-before-after__handle span::before {
	transform: scale(-1, 1);
}
.c-before-after__before-label,
.c-before-after__after-label {
	color: #fff;
	font-size: min(3.2338vw, 1.3rem);
	font-weight: 700;
	background: #333;
	line-height: 1;
	padding: 8px;
	position: absolute;
	bottom: 0;
}
.c-before-after__before-label {
	left: 0;
}
.c-before-after__after-label {
	right: 0;
}
@media screen and (max-width: 768px) {
.c-before-after__handle span {
	width: min(9.95vw, 40px);
	height: min(9.95vw, 40px);
}
}

/* --------------------------------------------------------
	404
-------------------------------------------------------- */
#p-404 {
    padding: 100px 0;
}
.p-404__title {
	font-size: 4rem;
	line-height: 1.1;
	margin: 0 0 20px;
}
.p-404__back {
	border-top: solid 1px #fff;
	margin: 50px 0 0;
	padding: 40px 0 0;
}
.p-404__btn {
	border: solid 1px #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	padding: 10px 32px;
}
.p-404__btn:hover {
	color: #333;
	background: #fff;
	opacity: 1;
}
@media screen and (max-width: 768px) {
#p-404 {
	padding: min(12.4378vw, 50px) 0 min(24.8756vw, 100px);
}
.p-404__title {
	font-size: min(7.96vw, 3.2rem);
	margin: 0 0 min(7.4626vw, 30px);
}
.p-404__back {
	border-top: none;
	margin: min(14.9253vw, 60px) 0 0;
	padding: 0;
}
.p-404__btn {
	font-size: min(4.4776vw, 1.8rem);
	width: 100%;
	padding: min(2.985vw, 12px);
}
}
