@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');

html,
body {
	height: 100%;
	margin: 0;
	padding: 0;
}

/* default */
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	word-break: break-all;
	font-size: inherit;
	width: 100%;
}

fieldset,
img {
	border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-style: normal;
	font-weight: normal;
}

li {
	list-style: none;
}

caption,
th {
	text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
}

q::before,
q::after {
	content: '';
}

abbr {
	border: 0;
	font-variant: normal;
}

sup {
	vertical-align: text-top;
}

sub {
	vertical-align: text-bottom;
}

input,
textarea,
select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

input,
textarea,
select {
	*font-size: 100%;
}

legend {
	color: #fff;
}

select,
input,
button,
textarea {
	font-family: 'Noto Sans JP', sans-serif;
}

pre,
code,
kbd,
samp {
	font-family: monospace;
	*font-size: 108%;
	line-height: 100%;
}

.aligncenter {
	text-align: center;
}

figure {
	padding: 0;
	margin: 0;
}

img {
	vertical-align: bottom;
	line-height: 1;
	max-width: 100%;
	height: auto;
	width: 100%;
}

* {
	box-sizing: border-box;
}

body {
	font-family: "Shippori Mincho", serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: .1em;
	color: #1C1810;
}

img {
	width: 100%;
	display: block;
}

h2,
h3 {
	line-height: 1.2;
}

a {
	transition: all .5s;
	text-decoration: none;
}

.inner {
	max-width: 1400px;
	width: calc(100% - 100px);
	margin: 0 auto;
}

.sp {
	display: none !important;
}

.abs {
	position: absolute;
}

.wrapper {
	overflow: hidden;
	min-width: 1200px;
	width: 100%;
}

.flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.flex.reverse {
	flex-direction: row-reverse;
}

.fade-target {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.8s ease, transform 0.8s ease;
}

.fade-target.is-fade {
	opacity: 1;
	transform: translateY(0);
}

.wraper {
	width: 100%;
}

.fixed-bg {
	z-index: -1;
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
}

.fixed-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

header {
	position: fixed;
	width: 100%;
	top: 0px;
	left: 0;
	transition: all .7s;
	z-index: 10;
	background: rgba(200, 200, 200, .3);
}

.header-flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: calc(100% - 200px);
	margin: 0 auto;
}

.header-logo {
	width: 210px;
}

.header-btns {
	display: flex;
	align-items: stretch;
	width: 430px;
}

.header-btns .header-access {
	width: 40%;
}

.header-btns .header-access a {
	display: flex;
	justify-content: center;
	align-items: center;
	background: rgba(156, 184, 176, .9);
	padding: 20px 0;
}

.header-btns .header-access a:hover {
	opacity: .7;
}

.header-btns .header-access a img {
	width: 20px;
	margin-right: 7.5px;
}

.header-btns .header-access a p {
	font-size: 26px;
	line-height: 1;
	color: #fff;
}

.header-btns .header-tel {
	width: 60%;
}

.header-btns .header-tel a {
	display: flex;
	justify-content: center;
	align-items: baseline;
	background: rgba(28, 24, 16, .8);
	padding: 10px 0;
	pointer-events: none;
	opacity: .8;
}

/* .header-btns .header-tel a:hover {
	opacity: .6;
} */
.header-btns .header-tel a img {
	width: 25px;
	margin-right: 5px;
}

.header-btns .header-tel a p {
	font-size: 30px;
	line-height: 1;
	color: #fff;
}

.header-btns .header-tel a p span {
	font-size: 14px;
	display: block;
	padding-top: 2.5px;
}

.drawer-toggle {
	position: absolute;
	width: 110px;
	height: 66.5px;
	border: none;
	background: none;
	cursor: pointer;
	z-index: 1100;
	top: 0;
	right: 0;
	padding: 0;
}

.drawer-toggle::before,
.drawer-toggle::after {
	content: '';
	position: absolute;
	left: 0;
	width: 30px;
	height: 1px;
	background-color: #DBC8A0;
	transition: 0.3s ease;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}

.drawer-toggle::before {
	top: 15px;
}

.drawer-toggle::after {
	bottom: 15px;
}

.drawer-toggle.is-open::before {
	transform: rotate(45deg)translateX(0%);
	top: 50%;
	left: 35%;
}

.drawer-toggle.is-open::after {
	transform: rotate(-45deg)translateX(0%);
	bottom: auto;
	top: 50%;
	left: 35%;
}

.drawer-toggle.is-open {
	background: #fff;
}

.drawer-menu.is-open {
	right: 0;
}

.drawer-menu {
	position: fixed;
	top: 0;
	right: -100%;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .7);
	color: #fff;
	transition: right 0.3s ease;
	z-index: 1000;
	backdrop-filter: blur(30px);
}

.drawer-bg {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
}

.drawer-bg.is-open {
	display: block;
}

.drawer-flex {
	position: absolute;
	align-items: flex-end;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: calc(100% - 100px);
	max-width: 1500px;
}

.drawer-flex .txt-link {
	width: 47.5%;
}

.drawer-flex .txt-link li a {
	display: flex;
	align-items: flex-end;
	margin-bottom: 50px;
}

.drawer-flex .txt-link li a span {
	font-size: 32px;
	color: #fff;
	width: 32.5%;
}

.drawer-flex .txt-link li a p {
	font-size: 16px;
	color: #fff;
}

.drawer-txt {
	width: 50%;
	text-align: right;
}

.drawer-txt p {
	font-size: 52px;
	letter-spacing: .075em;
}

.drawer-txt span {
	font-size: 20px;
	padding-top: 5px;
}

.fv {
	position: relative;
	height: 100vh;
}

.fv-txt {
	position: absolute;
	max-width: 1500px;
	width: calc(100% - 120px);
	bottom: 200px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	color: #fff;
}

.fv-txt-top {
	padding-bottom: 25px;
	margin-bottom: 40px;
	max-width: 540px;
	border-bottom: 1px solid #fff;
}

.fv-txt-top p {
	font-size: 32px;
}

.fv-txt-bottom h1 {
	font-size: 70px;
}

.fv-txt-bottom p {
	font-size: 26px;
}

.container {}

.inner {
	max-width: 1500px;
	width: calc(100% - 120px);
	margin: 0 auto;
}

.fixed-cont {
	position: fixed;
	width: 100%;
	padding: 12.5px 0;
	bottom: 0;
	left: 0;
	background: #fff;
}

.fixed-cont-inner {
	display: flex;
	align-items: flex-end;
	width: calc(100% - 120px);
	margin: 0 auto;
	justify-content: space-between;
}

.fixed-logo {
	width: 195px;
}

.cmn-btn {
	max-width: 300px;
	width: 100%;
	position: relative;
}

.cmn-btn a {
	color: #fff;
	text-align: center;
	padding: 12px 0;
	display: block;
	width: 100%;
	font-size: 20px;
	position: relative;
	z-index: 2;
	border: 1px solid #1C1810;
	pointer-events: none;
	opacity: .8;
}

.cmn-btn::before {
	content: "";
	background: #B8892A;
	width: 100%;
	max-width: 300px;
	height: 100%;
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: -1;
	transition: all .8s;
}

/* .cmn-btn a:hover {
	opacity: 1;
}

.cmn-btn:hover::before {
	top: 0;
	left: 0;
} */
.fv-bottom {
	padding: 230px 0 200px;
	background: rgba(255, 255, 255, .05);
	backdrop-filter: blur(30px);
}

.fv-bottom-txt {
	text-align: center;
	margin-bottom: 70px;
}

.fv-bottom-txt h2 {
	font-size: 36px;
	line-height: 2.6;
	padding-bottom: 90px;
	margin-bottom: 90px;
	position: relative;
	color: #fff;
}

.fv-bottom-txt h2::before {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width: 250px;
	height: 1px;
	background: #fff;
	content: "";
}

.fv-bottom-txt p {
	font-size: 20px;
	line-height: 2.4;
	color: #fff;
}

.fv-bottom-btn {
	max-width: 900px;
	margin: 0 auto 20px;
}

.fv-bottom-btn.cmn-btn a {
	font-size: 40px;
	padding: 30px 0;
	border-color: #fff;
}

.fv-bottom-btn.cmn-btn::before {
	max-width: 900px;
	top: 10px;
	left: 10px;
}

/* .fv-bottom-btn.cmn-btn:hover::before {
	top: 0;
	left: 0;
} */
.btn-bottom-txt {
	text-align: center;
}

.btn-bottom-txt a {
	text-align: center;
	text-decoration: underline;
	font-size: 16px;
	color: #fff;
}

.btn-bottom-txt a:hover {
	text-decoration: none;
}

.btn-bottom-txt p {
	font-size: 14px;
	color: #fff;
	padding-top: 20px;
}

.item {
	padding: 200px 0;
	background: #fff;
}

.item-flex-cont {
	align-items: flex-end;
}

.item-flex-cont:nth-child(1) {
	margin-bottom: 70px;
}

.item-flex-cont-left {
	width: 67.5%;
}

.item-flex-cont-abs-img {
	width: 27.5%;
}

.item-flex-cont-abs-img img {
	max-width: 250px;
	margin: 0 auto;
}

.item-flex-cont:nth-child(2) .item-flex-cont-abs-img img {
	max-width: 350px;
}

.item-flex-cont-img {
	margin-bottom: 45px;
}

.item-flex-cont-txt {
	padding: 0 65px;
}

.item-flex-cont-txt-title {
	margin-bottom: 35px;
}

.cmn-title p {
	font-size: 18px;
	padding-bottom: 10px;
	color: #B8892A;
}

.cmn-title h3,
.cmn-title h2 {
	font-size: 36px;
}

.item-flex-cont-txt-txt p {
	font-size: 20px;
	line-height: 2;
}

.selection {
	padding: 200px 0;
	background: #9CB8B0;
	color: #fff;
}

.selection .cmn-title {
	margin-bottom: 20px;
}

.cmn-txt {
	margin-bottom: 80px;
}

.cmn-txt p {
	font-size: 20px;
	line-height: 2;
}

.marquee-img {
	height: 450px;
	overflow: hidden;
	position: relative;
}

.marquee-track {
	display: flex;
	width: max-content;
	height: 100%;
	animation: marquee-horizontal 45s linear infinite;
}

.marquee-track img {
	height: 100%;
	width: auto;
	display: block;
	flex-shrink: 0;
}

/* 横スクロール */
@keyframes marquee-horizontal {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-50%);
	}
}

.fair {
	padding: 200px 0;
	background-image: url(../img/black_bg.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	color: #fff;
}

.fair-flex {
	margin-bottom: 120px;
}

.fair-flex-left {
	width: 70%;
}

.fair-flex-right {
	width: 30%;
}

.fair-flex-left-top {
	margin-bottom: 55px;
	display: flex;
	align-items: center;
}

.fair-flex-left-top span {
	font-size: 22px;
	border: 1px solid #fff;
	background: rgba(28, 24, 16, 0.6);
	padding: 12.5px 30px;
	margin-right: 30px;
}

.fair-flex-left-top p {
	font-size: 30px;
	color: #fff;
}

.fair-flex-left-title {
	margin-bottom: 50px;
}

.fair-flex-left-title h2 {
	font-size: 60px;
	line-height: 2;
}

.fair-flex-left-txt p {
	font-size: 20px;
	line-height: 2;
}

.fair-flex-cont {
	width: 50%;
}

.fair-flex-cont-txt {
	max-width: 750px;
	padding: 100px 30px;
}

.fair-flex-cont-txt-title {
	margin-bottom: 30px;
}

.fair-flex-cont-txt-title p {
	font-size: 16px;
}

.fair-flex-cont-txt-title h3 {
	font-size: 30px;
}

.fair-flex-cont-txt-txt {
	margin-bottom: 50px;
}

.fair-flex-cont-txt-txt p {
	font-size: 16px;
	line-height: 2;
}

.fair-flex-cont-txt .cmn-btn {
	max-width: 495px;
}

.fair-flex-cont-txt .cmn-btn::before {
	max-width: 495px;
}

.fair-flex-cont-txt .cmn-btn a {
	border-color: #fff;
}

.bage-cont {
	width: calc(100% - 120px);
	margin: 0 auto 55px;
	position: relative;
	background: rgba(0, 0, 0, .25);
	overflow: hidden;
	padding: 100px 0;
}

.bage-cont .bage-cont-txt p {
	position: absolute;
	font-size: 12vw;
	color: rgba(255, 255, 255, .05);
	top: -3%;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width: 100%;
	line-height: 1;
}

.bage-cont .inner {
	position: relative;
	z-index: 1;
}

.bage-cont-flex {
	margin-bottom: 35px;
}

.bage-cont-flex-left {
	width: 52.5%;
}

.bage-cont-flex-left-title {
	margin-bottom: 45px;
}

.bage-cont-flex-left-title p {
	font-size: 30px;
	padding-bottom: 20px;
}

.bage-cont-flex-left-title p span {
	background: #9CB8B0;
	color: #fff;
	font-size: 20px;
	padding: 7.5px 17.5px;
	margin-left: 40px;
}

.bage-cont-flex-left-title h3 {
	font-size: 40px;
}

.bage-cont-flex-right {
	width: 45%;
}

.bage-cont-flex-right img {
	max-width: 600px;
}

.bage-cont-flex-left-txt p {
	font-size: 16px;
	line-height: 2;
}

.bage-cont-bottom-txt p {
	font-size: 16px;
	padding-bottom: 25px;
}

.bage-cont-bottom-txt-flex {
	justify-content: initial;
}

.bage-cont-bottom-txt-flex p.box {
	font-size: 20px;
	padding: 15px 30px;
	color: #fff;
	background: #9CB8B0;
}

.bage-cont-bottom-txt-flex p.or {
	font-size: 18px;
	margin-inline: 20px;
	padding: 0;
}

.bage-cont-bottom-txt-flex a.border {
	padding: 15px 30px;
	color: #fff;
	border: 1px solid #fff;
	display: flex;
	justify-content: center;
	position: relative;
}

.bage-cont-bottom-txt-flex a.border::before {
	content: "";
	background: #9CB8B0;
	width: 100%;
	max-width: 100%;
	height: 100%;
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: -1;
	transition: all .5s;
}

.bage-cont-bottom-txt-flex a.border:hover::before {
	top: 0px;
	left: 0px;
}

.bage-cont-bottom-txt-flex a.border span {
	font-size: 20px;
}

.bage-cont-bottom-txt-flex a.border img {
	width: 22px;
	margin-left: 10px;
}

.bage-cont-bottom-txt p.caution {
	font-size: 12px;
	padding-bottom: 0;
	position: relative;
	bottom: -27px;
	margin-left: 15px;
}

.caution-txt {
	margin-bottom: 50px;
}

.caution-txt {
	font-size: 16px;
}

.caution-box {
	padding: 50px;
	background: rgba(28, 24, 16, 0.3);
	border: 1px solid #fff;
}

.caution-box-title {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}

.caution-box-title img {
	width: 32.5px;
	margin-right: 15px;
}

.caution-box-title h3 {
	font-size: 24px;
}

.caution-box-txt p {
	font-size: 16px;
	line-height: 2;
}

.strength {
	padding: 200px 0;
	background: #fff;
	position: relative;
	z-index: 1;
	clip-path: polygon(0 0,
			100% 0,
			100% 100%,
			92% 99%,
			84% 98.2%,
			76% 97.5%,
			68% 97%,
			60% 96.6%,
			55% 96.4%,
			50% 96.3%,
			45% 96.4%,
			40% 96.6%,
			32% 97%,
			24% 97.5%,
			16% 98.2%,
			8% 99%,
			0 100%);
}

.strength-title {
	margin-bottom: 30px;
}

.strength .cmn-txt {
	margin-bottom: 150px;
}

.strength .cmn-txt p {
	font-size: 20px;
	line-height: 2;
}

.strength-list li {
	margin-bottom: 100px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.strength-list li:nth-child(even) {
	flex-direction: row-reverse;
}

.strength-list li:last-child {
	margin-bottom: 0;
}

.strength-list-img {
	width: 62.5%;
}

.strength-list-txt {
	width: 35%;
}

.strength-list-txt-title {
	position: relative;
	margin-bottom: 25px;
}

.strength-list-txt-title h3 {
	font-size: 24px;
	line-height: 1.5;
}

.strength-list-txt-title p {
	position: absolute;
	bottom: 0;
	right: 0;
	line-height: 1;
	font-size: 100px;
	color: #dbc8a0;
	opacity: 0.3;
}

.strength-list-txt-txt p {
	font-size: 16px;
	line-height: 2;
}

.order {
	padding: 350px 0 250px;
	margin-top: -200px;
	position: relative;
	background: rgba(255, 255, 255, .7);
	backdrop-filter: blur(15px) brightness(2);
	clip-path: polygon(0% 0%, 100% 0, 100% 90%, 50% 100%, 0 90%);
}

.order-title {
	text-align: center;
	margin-bottom: 70px;
	position: relative;
}

.order-title h2 {
	font-size: 36px;
	line-height: 2;
}

.order-title p {
	font-size: 8vw;
	position: absolute;
	color: rgba(184, 137, 42, .1);
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	top: -25%;
	width: 100%;
	line-height: 1;
}

.order-txt {
	margin-bottom: 70px;
	text-align: center;
}

.order-txt p {
	font-size: 20px;
	line-height: 2;
}

.order-list {
	margin-bottom: 70px;
}

.order-list ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.order-list ul li {
	padding: 45px 30px;
	border-right: 1px solid #1C1810;
}

.order-list ul li:nth-child(1) {
	border-left: 1px solid #1C1810;
}

.order-list-title {
	margin-bottom: 35px;
}

.order-list-title h3 {
	font-size: 20px;
	color: #8E5F00;
	line-height: 1.5;
}

.order-list-txt p {
	font-size: 16px;
	line-height: 2;
}

.order-txt-box {
	padding: 50px;
	background: rgba(255, 255, 255, 0.15);
	border: 1px solid #8e5f00;
}

.order-txt-box p {
	font-size: 16px;
	line-height: 2;
}

.howto {
	padding: 300px 0 200px;
	background: #F1E9D9;
	margin-top: -200px;
	clip-path: polygon(50% 10%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0% 0%);
}

.howto-flex-img {
	width: 60%;
}

.howto-flex-txt {
	width: 35%;
}

.howto .cmn-title {
	margin-bottom: 40px;
}

.howto .cmn-title h2 {
	line-height: 2;
}

.howto-flex-txt-txt {
	margin-bottom: 55px;
}

.howto-flex-txt-txt h3 {
	font-size: 24px;
	padding-bottom: 20px;
}

.howto-flex-txt-txt p {
	font-size: 16px;
	line-height: 2;
}

.howto .cmn-btn,
.howto .cmn-btn::before {
	max-width: 450px;
}

.howto .cmn-btn a {
	border-color: #fff;
}

.message-flex {
	display: flex;
}

.message-flex-left {
	width: 67.5%;
	background-color: rgba(255, 255, 255, 1);
	background-image: url(../img/message_bg.webp);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: 200px 60px;
}

.message-flex-txt {
	max-width: 920px;
	margin: 0 auto;
}

.message-flex-left-title.cmn-title {
	margin-bottom: 70px;
}

.message-flex-left-title.cmn-title h3 {
	line-height: 2;
}

.message-flex-left-txt {
	margin-bottom: 60px;
}

.message-flex-left-txt p {
	font-size: 16px;
	line-height: 2;
	padding-bottom: 30px;
}

.message-flex-left-txt p:last-child {
	padding-bottom: 0;
}

.message-flex-right {
	width: 32.5%;
	position: relative;
}

.message-flex-right img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.message-flex-left-txt-name {
	text-align: right;
}

.message-flex-left-txt-name span {
	font-size: 16px;
	padding-bottom: 5px;
}

.message-flex-left-txt-name p {
	font-size: 24px;
}

.access {
	padding: 200px 0;
	background: #fff;
}

.access-flex-left {
	width: 47.5%;
}

.access-flex-left .cmn-title {
	margin-bottom: 80px;
}

.access-flex-right {
	width: 47.5%;
}

.access-flex-right table th {
	display: block;
	width: 100%;
	font-size: 14px;
	color: #b8892a;
	margin-bottom: 10px;
}

.access-flex-right table td {
	display: block;
	width: 100%;
	font-size: 19px;
	padding-bottom: 17.5px;
	margin-bottom: 17.5px;
	border-bottom: 1px solid #DDDDDD;
}

.access-txt-box {
	background: #9CB8B0;
	padding: 25px 40px;
}

.access-txt-box-title {
	margin-bottom: 12.5px;
}

.access-txt-box-title p {
	font-size: 14px;
	color: #fff;
	font-weight: 700;
}

.access-txt-box-flex {
	justify-content: initial;
}

.access-txt-box-flex-left {
	margin-right: 30px;
}

.access-txt-box-flex-left img {
	width: 20px;
	margin-right: 10px;
}

.access-txt-box-flex-left p {
	font-size: 18px;
	font-weight: 500;
	color: #fff;
}

.access-txt-box-flex-right p {
	font-size: 14px;
	color: #fff;
}

footer {
	margin-bottom: 83px;
}

footer .copy {
	background: #1C1810;
	padding: 25px 0;
}

footer .copy p {
	font-size: 14px;
	color: #fff;
	text-align: center;
}

.slide-left-item {
	opacity: 0;
	transform: translateX(-40px);
	transition: opacity 0.7s ease, transform 0.7s ease;
}

.slide-left-item.is-slide-left {
	opacity: 1;
	transform: translateX(0);
}

@media screen and (max-width: 1400px) {
	.inner {
		max-width: 100%;
		width: calc(100% - 40px);
	}

	.header-flex {
		width: calc(100% - 30px);
		padding-right: 90px;
	}

	.message-flex-left {
		padding: 140px 15px;
	}

	.caution-box {
		padding: 30px 15px;
	}

	.item-flex-cont-txt {
		padding: 0;
	}

	.fair-flex-cont-txt {
		max-width: 100%;
		padding: 60px 20px;
	}

	.bage-cont {
		width: calc(100% - 30px);
	}

	.bage-cont .bage-cont-txt p {
		font-size: 13vw;
		white-space: nowrap;
	}

	.bage-cont-bottom-txt p.caution {
		margin-top: 20px;
	}

	.fixed-cont-inner {
		width: calc(100% - 30px);
	}
}

@media screen and (max-width: 834px) {
	.sp {
		display: block !important;
	}

	.pc {
		display: none !important;
	}

	.wrapper {
		min-width: 100%;
	}

	.header-flex {
		width: calc(100% - 30px);
		padding-right: 35px;
	}

	.header-logo {
		width: 120px;
	}

	.header-btns {
		width: 100px;
	}

	.header-btns .header-access {
		width: 50px;
	}

	.header-btns .header-tel {
		width: 50px;
	}

	.header-btns .header-access a {
		padding: 12px 0;
	}

	.header-btns .header-access a img {
		width: 20px;
		margin-right: 0;
	}

	.header-btns .header-tel a {
		padding: 12.5px 0;
	}

	.header-btns .header-tel a img {
		width: 25px;
		margin-right: 0;
	}

	.drawer-toggle {
		width: 50px;
		height: 50px;
	}

	.drawer-toggle.is-open::before,
	.drawer-toggle.is-open::after {
		left: 20%;
	}

	.drawer-flex {
		width: calc(100% - 40px);
		max-width: 500px;
		display: block;
	}

	.drawer-flex .txt-link {
		width: 100%;
		margin-bottom: 30px;
	}

	.drawer-txt {
		width: 100%;
	}

	.drawer-flex .txt-link li a {
		margin-bottom: 20px;
	}

	.drawer-flex .txt-link li a span {
		font-size: 24px;
	}

	.drawer-flex .txt-link li a p {
		font-size: 14px;
	}

	.drawer-txt p {
		font-size: 24px;
	}

	.drawer-txt span {
		font-size: 12px;
	}

	.fixed-logo {
		width: 90px;
	}

	.cmn-btn::before,
	.cmn-btn {
		max-width: 250px;
	}

	.cmn-btn a {
		font-size: 16px;
	}

	.fv {
		position: relative;
	}

	.fv::after {
		position: absolute;
		content: "";
		width: 1px;
		height: 60px;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		background: #fff;
	}

	.fv-txt-top {
		padding-bottom: 20px;
		margin-bottom: 20px;
		max-width: 275px;
	}

	.fv-txt {
		max-width: 100%;
		width: calc(100% - 40px);
		bottom: 70px;
	}

	.fv-txt-top p {
		font-size: 15px;
	}

	.fv-txt-bottom h1 {
		font-size: 40px;
	}

	.fv-txt-bottom p {
		font-size: 14px;
	}

	.fv-bottom {
		padding: 100px 0;
	}

	.fv-bottom-txt h2 {
		font-size: 20px;
		line-height: 2.5;
		padding-bottom: 55px;
		margin-bottom: 55px;
	}

	.fv-bottom-txt h2::before {
		width: 125px;
		background: #B8892A;
	}

	.fv-bottom-txt p {
		font-size: 14px;
		line-height: 2.2;
	}

	.fv-bottom-btn.cmn-btn a {
		font-size: 20px;
		padding: 20px 0;
	}

	.fv-bottom-btn,
	.fv-bottom-btn.cmn-btn::before {
		max-width: 320px;
	}

	.fv-bottom-btn {
		margin-bottom: 30px;
	}

	.fv-bottom-btn.cmn-btn::before {
		top: 5px;
		left: 5px;
	}

	.fv-bottom-btn.cmn-btn:hover::before {
		top: 5px;
		left: 5px;
	}

	.btn-bottom-txt a {
		font-size: 14px;
	}

	.btn-bottom-txt p {
		font-size: 10px;
		padding-top: 40px;
	}

	.item {
		padding: 100px 0;
	}

	.item-flex-cont:nth-child(1) {
		margin-bottom: 50px;
	}

	.item-flex-cont {
		display: block;
	}

	.item-flex-cont-left {
		width: 100%;
		max-width: 500px;
		margin-bottom: 50px;
	}

	.item-flex-cont-img {
		margin-bottom: 15px;
		margin-left: -20px;
	}

	.item-flex-cont:nth-child(2) {
		margin-left: auto;
	}

	.item-flex-cont:nth-child(2) .item-flex-cont-img {
		margin-left: 0;
		margin-right: -20px;
	}

	.cmn-title p {
		font-size: 14px;
	}

	.cmn-title h3,
	.cmn-title h2 {
		font-size: 24px;
		line-height: 1.6;
	}

	.item-flex-cont-txt-title {
		margin-bottom: 30px;
	}

	.item-flex-cont-txt-txt p {
		font-size: 16px;
	}

	.item-flex-cont-abs-img {
		width: 100%;
	}

	.item-flex-cont-abs-img img {
		max-width: 185px;
	}

	.item-flex-cont-txt {
		padding-right: 15px;
	}

	.item-flex-cont:nth-child(2) .item-flex-cont-txt {
		padding-right: 0;
		padding-left: 15px;
	}

	.item-flex-cont:nth-child(2) .item-flex-cont-left {
		margin-left: auto;
	}

	.item-flex-cont:nth-child(2) .item-flex-cont-abs-img img {
		max-width: 295px;
	}

	.selection {
		padding: 100px 0;
	}

	.cmn-txt p {
		font-size: 16px;
	}

	.cmn-txt {
		margin-bottom: 50px;
	}

	.marquee-img {
		height: 175px;
	}

	.fair {
		padding: 100px 0;
	}

	.fair-flex {
		margin-bottom: 70px;
		display: block;
	}

	.fair-flex-left {
		width: 100%;
		margin-bottom: 55px;
	}

	.fair-flex-left-top {
		margin-bottom: 35px;
		display: block;
	}

	.fair-flex-left-top span {
		font-size: 18px;
		padding: 12.5px 25px;
		margin-right: 0px;
		margin-bottom: 15px;
		display: inline-block;
	}

	.fair-flex-left-top p {
		font-size: 20px;
	}

	.fair-flex-left-title {
		margin-bottom: 40px;
	}

	.fair-flex-left-title h2 {
		font-size: 30px;
	}

	.fair-flex-left-txt p {
		font-size: 16px;
	}

	.fair-flex-right {
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}

	.fair-flex-conts {
		display: block;
	}

	.fair-flex-cont {
		width: 100%;
	}

	.fair-flex-cont-txt {
		max-width: 100%;
		padding: 35px 20px 70px;
	}

	.fair-flex-cont-txt-title h3 {
		font-size: 20px;
	}

	.fair-flex-cont-txt-title {
		margin-bottom: 20px;
	}

	.fair-flex-cont-txt .cmn-btn {
		max-width: 325px;
		margin: 0 auto;
	}

	.bage-cont {
		width: calc(100% - 20px);
		padding: 70px 0;
		max-width: 500px;
		margin: 0 auto 70px;
	}

	.bage-cont-flex {
		margin-bottom: 45px;
		display: block;
	}

	.bage-cont-flex-left {
		width: 100%;
	}

	.bage-cont .bage-cont-txt p {
		font-size: 90px;
		top: -1%;
		text-align: center;
	}

	.bage-cont-flex-left-title {
		margin-bottom: 35px;
		position: relative;
	}

	.bage-cont-flex-left-title p {
		font-size: 20px;
		padding-bottom: 15px;
	}

	.bage-cont-flex-left-title h3 {
		font-size: 28px;
		line-height: 1.5;
	}

	.bage-cont-flex-left-title p span {
		font-size: 16px;
		padding: 5px 12.5px;
		margin-left: 0px;
		position: absolute;
		bottom: 0;
		right: 0;
	}

	.bage-cont-flex-left img {
		max-width: 315px;
		margin-block: 30px;
	}

	.bage-cont-flex-left-txt p {
		font-size: 14px;
	}

	.bage-cont-bottom-txt p {
		font-size: 14px;
		padding-bottom: 30px;
	}

	.bage-cont-bottom-txt-flex {
		justify-content: initial;
		display: block;
		text-align: center;
	}

	.bage-cont-bottom-txt-flex p.box {
		font-size: 18px;
		padding: 17.5px 30px;
		margin: 0 auto;
	}

	.bage-cont-bottom-txt-flex p.or {
		font-size: 20px;
		margin: 15px auto;
	}

	.bage-cont-bottom-txt-flex a.border {
		padding: 20px 10px 15px;
		display: flex;
		max-width: 310px;
		width: 100%;
		margin: 0 auto;
	}

	.bage-cont-bottom-txt p.caution {
		bottom: 0;
		font-size: 10px;
		text-align: right;
		margin-left: 0;
		;
	}

	.caution-txt {
		font-size: 12px;
	}

	.caution-box {
		padding: 50px 30px;
		max-width: 500px;
		margin: 0 auto;
	}

	.caution-box-title h3 {
		font-size: 20px;
	}

	.caution-box-title img {
		width: 22.5px;
		margin-right: 10px;
	}

	.strength .cmn-txt p {
		font-size: 16px;
	}

	.strength .cmn-txt {
		margin-bottom: 70px;
	}

	.strength {
		padding: 100px 0;
		clip-path: polygon(0 0,
				100% 0,
				100% 100%,
				92% 99.5%,
				84% 99.1%,
				76% 98.7%,
				68% 98.5%,
				60% 98.3%,
				55% 98.2%,
				50% 98.15%,
				45% 98.2%,
				40% 98.3%,
				32% 98.5%,
				24% 98.7%,
				16% 99.1%,
				8% 99.5%,
				0 100%);
	}

	.strength-list li {
		margin: 0 auto 50px;
		max-width: 500px;
		display: block;
	}

	.strength-list-img {
		width: 100%;
		margin-bottom: 35px;
	}

	.strength-list-txt {
		width: 100%;
	}

	.strength-list-txt-title h3 {
		font-size: 20px;
	}

	.strength-list-txt-txt p {
		font-size: 14px;
	}

	.strength-list-txt-title p {
		font-size: 80px;
	}

	.order {
		padding: 175px 0 250px;
		margin-top: -100px;
		clip-path: polygon(0% 0%, 100% 0, 100% 95%, 50% 100%, 0 95%);
	}

	.order-title {
		margin-bottom: 50px;
	}

	.order-title h2 {
		font-size: 26px;
	}

	.order-title p {
		font-size: 80px;
		top: -30%;
		line-height: 1.1;
	}

	.order-txt {
		margin-bottom: 90px;
	}

	.order-txt p {
		font-size: 16px;
	}

	.order-list ul {
		display: block;
	}

	.order-list ul li {
		padding: 40px 20px;
		border-right: none;
		border-bottom: 1px solid #1c1810;
	}

	.order-list ul li:nth-child(1) {
		border-top: 1px solid #1C1810;
		border-left: none;
	}

	.order-list-title {
		margin-bottom: 25px;
	}

	.order-list-title h3 {
		font-size: 18px;
	}

	.order-list-txt p {
		font-size: 14px;
	}

	.order-list {
		margin-bottom: 50px;
	}

	.order-txt-box {
		padding: 30px;
	}

	.order-txt-box p {
		font-size: 12px;
	}

	.howto {
		padding: 135px 0 100px;
		margin-top: -200px;
		clip-path: polygon(50% 5%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0% 0%);
	}

	.howto-flex {
		max-width: 500px;
		margin: 0 auto;
		display: block;
	}

	.howto-flex-img {
		width: 100%;
		margin-bottom: 35px;
	}

	.howto-flex-txt {
		width: 100%;
	}

	.howto-flex-txt-txt h3 {
		font-size: 20px;
		padding-bottom: 15px;
	}

	.howto-flex-txt-txt p {
		font-size: 14px;
	}

	.howto-flex-txt-txt {
		margin-bottom: 35px;
	}

	.howto .cmn-btn,
	.howto .cmn-btn::before {
		max-width: 325px;
		margin: 0 auto;
	}

	.message-flex {
		display: block;
	}

	.message-flex-left {
		padding: 100px 20px;
		width: 100%;
	}

	.message-flex-left-title.cmn-title {
		margin-bottom: 40px;
	}

	.message-flex-left-txt {
		margin-bottom: 40px;
	}

	.message-flex-right {
		width: 100%;
	}

	.message-flex-right img {
		position: relative;
		width: 100%;
		height: auto;
		object-fit: initial;
	}

	.access {
		padding: 100px 0;
	}

	.access-flex {
		display: block;
		max-width: 500px;
		margin: 0 auto;
	}

	.access-flex-left,
	.access-flex-right {
		width: 100%;
	}

	.access-flex-left {
		margin-bottom: 35px;
	}

	.access-flex-left .cmn-title {
		margin-bottom: 15px;
	}

	.access-map iframe {
		height: 250px;
	}

	.access-flex-right table td {
		font-size: 18px;
		padding-inline: 20px;
	}

	.access-flex-right table th {
		padding-inline: 20px;
	}

	.access-txt-box {
		padding: 35px 20px;
		margin-top: 30px;
	}

	.access-txt-box-flex {
		display: block;
	}

	.access-txt-box-flex-left {
		margin-right: 0;
		justify-content: initial;
		align-items: baseline;
	}

	.access-txt-box-flex-right p {
		padding-left: 30px;
		margin-top: 5px;
	}

	footer {
		margin-bottom: 76px;
	}

	footer .copy {
		padding: 17.5px 0;
	}

	footer .copy p {
		font-size: 10px;
		letter-spacing: 0;
	}
}

@media screen and (max-width: 500px) {
	.drawer-flex .txt-link li a span {
		width: 48.5%;
	}

	.fv {
		height: 95vh;
	}

	.fv-txt {
		bottom: 100px;
	}

	.order-title h2 {
		font-size: 24px;
	}
}
