@charset "UTF-8";
/*==============================================

    STYLE SHEET

==============================================*/
/*==============================================

    RESET

==============================================*/
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 {
	border: 0;
	font-size: 100%;
	font-style: normal;
	font-weight: normal;
	font: inherit;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

th, td {
	text-align: left;
	vertical-align: top;
}

img {
	border: none;
	vertical-align: top;
}

/*==============================================

    SETTING MIXIN

==============================================*/
/*==============================================
    2-1. mixins
==============================================*/
/* font family */
/*==============================================

    BASE

==============================================*/
html {
	font-size: 14px;
}

@media screen and (min-width: 769px) {
	html {
		font-size: 16px;
	}
}

body {
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	line-height: 1.5;
	letter-spacing: .06em;
	background-color: #ffffff;
	color: #000000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-overflow-scrolling: touch;
	-webkit-text-size-adjust: 100%;
}

img {
	width: 100%;
	height: auto;
}

a {
	text-decoration: none;
	-webkit-transition: opacity .4s ease;
	transition: opacity .4s ease;
}

a:link, a:visited {
	color: #000000;
}

a:hover {
	opacity: .7;
}

a[data-rel="external"]:after {
	content: '';
	width: 1em;
	height: 1em;
	display: inline-block;
	vertical-align: middle;
	margin-left: .5em;
	background: transparent url("../image/icon-external.png") no-repeat scroll center center;
	background-size: contain;
	margin-right: .5em;
}

/*==============================================

    LAYOUT

==============================================*/
/*==============================================
    LAYOUT LIMIT
==============================================*/
.l-limit {
	margin: 0 auto;
}

@media screen and (min-width: 769px) {
	.l-limit {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		min-width: 1000px;
		max-width: 1600px;
	}
}

/*==============================================
    LAYOUT FRAME
==============================================*/
.l-frame {
	width: 85.33333%;
	margin: 0 auto;
}

@media screen and (min-width: 769px) {
	.l-frame {
		width: 83.33333%;
	}
}

/*==============================================
    LAYOUT COLUMNS
==============================================*/
@media screen and (min-width: 769px) {
	.l-column {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
}

.l-column-both {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.l-column--wrap {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.l-column--reverse {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

/*==============================================
    LAYOUT CONTAINER
==============================================*/
.l-container {
	padding: 0;
	overflow: hidden;
}

@media screen and (min-width: 769px) {
	.l-container {
		min-width: 1280px;
	}
}

.l-container h1 {
	font-size: 2rem;
}

/*==============================================
    SECTION
==============================================*/
.section__inner {
	margin-bottom: 40px;
}

/*==============================================
    BREADCRUMB
==============================================*/
.l-breadcrumb {
	position: relative;
	margin-left: auto;
	padding: 86px 30px 20px;
	z-index: 0;
}

@media screen and (min-width: 769px) {
	.l-breadcrumb {
		width: auto;
		margin-left: 200px;
		padding: 150px 0 20px;
	}
}

.l-breadcrumb ol {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.l-breadcrumb ol li {
	position: relative;
	padding-right: 20px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-weight: 500;
	font-size: 0.6875rem;
}

.l-breadcrumb ol li:after {
	content: '';
	position: absolute;
	top: 4px;
	right: 10px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.l-breadcrumb ol li:last-child:after {
	display: none;
}

/*==============================================
    BUTTON
==============================================*/
.l-button {
	position: relative;
	background-color: #000;
	width: auto;
	max-width: 704px;
}

.l-button__inner {
	position: relative;
	display: block;
	padding: 20px;
}

@media screen and (min-width: 769px) {
	.l-button__inner {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		padding: 24px 40px;
	}
}

.l-button__inner p {
	position: relative;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-weight: 500;
	font-size: 11px;
	color: #fff;
	margin: auto 0;
}

@media screen and (min-width: 769px) {
	.l-button__inner p {
		font-size: 0.75rem;
	}
}

.l-button__inner span {
	position: relative;
	display: inline-block;
	font-family: 'Shippori Mincho';
	font-weight: normal;
	font-size: 16px;
	color: #fff;
}

@media screen and (min-width: 769px) {
	.l-button__inner span {
		font-size: 1.5rem;
	}
}

.l-button:before {
	content: '';
	position: absolute;
	width: 24px;
	height: 24px;
	border: solid 1px #fff;
	border-radius: 50%;
	top: 28px;
	right: 20px;
}

@media screen and (min-width: 769px) {
	.l-button:before {
		top: 20px;
		right: 40px;
		width: 42px;
		height: 42px;
	}
}

.l-button:after {
	content: '';
	position: absolute;
	width: 4.5px;
	height: 4.5px;
	border-radius: 50%;
	background-color: #fff;
	top: 50%;
	right: 31px;
}

@media screen and (min-width: 769px) {
	.l-button:after {
		top: 50%;
		right: 60px;
	}
}

.l-button-m {
	position: relative;
	background-color: #000;
	width: auto;
	max-width: 704px;
}

.l-button-m__inner {
	position: relative;
	display: block;
	padding: 20px;
}

@media screen and (min-width: 769px) {
	.l-button-m__inner {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		padding: 24px 40px;
	}
}

.l-button-m__inner p {
	position: relative;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-weight: 500;
	font-size: 11px;
	color: #fff;
	margin: auto 0;
}

@media screen and (min-width: 769px) {
	.l-button-m__inner p {
		font-size: 0.75rem;
	}
}

.l-button-m__inner span {
	position: relative;
	display: inline-block;
	font-family: 'Shippori Mincho';
	font-weight: normal;
	font-size: 16px;
	color: #fff;
}

@media screen and (min-width: 769px) {
	.l-button-m__inner span {
		font-size: 1.5rem;
	}
}

.l-button-m:before {
	content: '';
	position: absolute;
	width: 24px;
	height: 24px;
	border: solid 1px #fff;
	border-radius: 50%;
	top: 21px;
	right: 20px;
}

@media screen and (min-width: 769px) {
	.l-button-m:before {
		top: 20px;
		right: 40px;
		width: 42px;
		height: 42px;
	}
}

.l-button-m:after {
	content: '';
	position: absolute;
	width: 4.5px;
	height: 4.5px;
	border-radius: 50%;
	background-color: #fff;
	top: 50%;
	right: 31px;
}

@media screen and (min-width: 769px) {
	.l-button-m:after {
		top: 50%;
		right: 60px;
	}
}

.l-button-s {
	position: relative;
	background-color: #000;
	width: 100%;
	max-width: 280px;
	margin: 20px auto 0;
}

@media screen and (min-width: 769px) {
	.l-button-s {
		max-width: 255px;
		margin: auto;
	}
}

.l-button-s__inner {
	position: relative;
	display: block;
	padding: 20px;
}

@media screen and (min-width: 769px) {
	.l-button-s__inner {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		padding: 20px;
	}
}

.l-button-s__inner span {
	position: relative;
	display: inline-block;
	font-family: 'Shippori Mincho';
	font-weight: normal;
	font-size: 16px;
	color: #fff;
}

@media screen and (min-width: 769px) {
	.l-button-s__inner span {
		font-size: 1rem;
	}
}

.l-button-s:before {
	content: '';
	position: absolute;
	width: 24px;
	height: 24px;
	border: solid 1px #fff;
	border-radius: 50%;
	top: 21px;
	right: 20px;
}

@media screen and (min-width: 769px) {
	.l-button-s:before {
		top: 20px;
		right: 19px;
		width: 24px;
		height: 24px;
	}
}

.l-button-s:after {
	content: '';
	position: absolute;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background-color: #fff;
	top: 50%;
	right: 31px;
}

@media screen and (min-width: 769px) {
	.l-button-s:after {
		top: 50%;
		right: 30px;
	}
}

/*==============================================

    HEADER

==============================================*/
.l-header {
	position: fixed;
	z-index: 3;
}

.l-header__inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: auto;
	width: 100vw;
}

@media screen and (min-width: 769px) {
	.l-header__inner {
		display: inline-block;
		height: 100vh;
		width: 200px;
	}
}

.l-header__button {
	position: fixed;
	background-color: #fff;
	border-radius: 30px;
	width: 130px;
	top: 60px;
	right: 40px;
	z-index: 2;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	display: none;
}

@media screen and (min-width: 769px) {
	.l-header__button {
		display: block;
		top: 60px;
	}
}

.l-header__button a {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-weight: 400;
	font-size: 0.75rem;
	line-height: 1;
	color: #000;
	padding: 12px 0;
	text-align: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.l-header__button.header-is-black {
	background-color: #000;
}

.l-header__button.header-is-black a {
	color: #fff;
}

.l-header__logo {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	max-width: 120px;
	height: auto;
	width: auto;
	margin: 10px 0 0 15px;
}

@media screen and (min-width: 769px) {
	.l-header__logo {
		max-width: 122px;
		height: auto;
		margin: 30px auto 0;
	}
}

.l-header__logo img {
	max-width: 85px;
}

@media screen and (min-width: 769px) {
	.l-header__logo img {
		max-width: 122px;
	}
}

.l-header__logo p {
	margin: 0 0 0 15px;
	font-family: "Shippori Mincho";
	font-weight: 400;
	font-size: 10px;
	font-size: 0.75rem;
	color: #fff;
	margin: auto 0;
}

@media screen and (min-width: 769px) {
	.l-header__logo p {
		margin: auto;
	}
}

.l-header__logo p.-black {
	color: #000;
}

.l-header__nav {
	position: relative;
	margin: 20px 30px 0 auto;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

@media screen and (min-width: 769px) {
	.l-header__nav {
		margin: 50px 0 70px;
		display: block;
	}
}

.l-header__nav .nav-open {
	position: relative;
	height: auto;
	margin: auto;
}

@media screen and (min-width: 769px) {
	.l-header__nav .nav-open {
		height: 60vh;
		margin: auto;
	}
}

.l-header__nav .nav-open__inner {
	height: 10px;
	position: relative;
	top: 50%;
	width: 48px;
	margin: auto auto 0;
	cursor: pointer;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

@media screen and (min-width: 769px) {
	.l-header__nav .nav-open__inner {
		margin: auto auto 15px;
	}
}

.l-header__nav .nav-open__inner span {
	display: inline-block;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
	position: absolute;
	height: 2px;
	background-color: #fff;
}

.l-header__nav .nav-open__inner span:nth-of-type(1) {
	top: 0%;
	width: 100%;
}

.l-header__nav .nav-open__inner span:nth-of-type(2) {
	top: 100%;
	width: 100%;
}

.l-header__nav .nav-open__inner:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	pointer-events: auto;
	content: "";
	background-color: transparent;
}

.l-header__nav .nav-open__clickarea {
	cursor: pointer;
	position: absolute;
	top: 0;
	bottom: 70px;
	left: -64px;
	right: 0;
	margin: auto;
	height: 100px;
	width: 100px;
}

@media screen and (min-width: 769px) {
	.l-header__nav .nav-open__clickarea {
		top: 30%;
		left: 0;
		right: 0;
		margin: 0 auto;
		height: 100px;
		width: 100px;
	}
}

.l-header__nav .nav-open__clickarea.active .nav-open__inner {
	height: 34px;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
	z-index: 2;
}

.l-header__nav .nav-open__clickarea.active .nav-open__inner span {
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
	background-color: #fff;
}

.l-header__nav .nav-open__clickarea.active .nav-open__inner span:nth-of-type(1) {
	top: 50%;
	left: 10%;
	-webkit-transform: translateY(6px) rotate(-45deg);
	transform: translateY(6px) rotate(-45deg);
	width: 75%;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

@media screen and (min-width: 769px) {
	.l-header__nav .nav-open__clickarea.active .nav-open__inner span:nth-of-type(1) {
		top: 25%;
	}
}

.l-header__nav .nav-open__clickarea.active .nav-open__inner span:nth-of-type(2) {
	top: 85%;
	left: 10%;
	-webkit-transform: translateY(-5px) rotate(45deg);
	transform: translateY(-5px) rotate(45deg);
	width: 75%;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

@media screen and (min-width: 769px) {
	.l-header__nav .nav-open__clickarea.active .nav-open__inner span:nth-of-type(2) {
		top: 60%;
	}
}

@media screen and (min-width: 769px) {
	.l-header__nav:before {
		content: "";
		position: absolute;
		display: block;
		width: 1px;
		height: 360px;
		background-color: #fff;
		top: 20%;
		right: 0;
		bottom: auto;
		-webkit-transition: all 0.4s;
		transition: all 0.4s;
		-webkit-animation: sdl 3s cubic-bezier(1, 0, 0, 1) infinite;
		animation: sdl 3s cubic-bezier(1, 0, 0, 1) infinite;
	}
}

@media screen and (min-width: 769px) {
	.l-header__nav:after {
		content: "";
		position: absolute;
		display: block;
		width: 1px;
		height: 360px;
		background-color: #ccc;
		top: 20%;
		right: 0;
		bottom: auto;
		opacity: 0.3;
		-webkit-transition: all 0.4s;
		transition: all 0.4s;
	}
}

.l-header__menu {
	display: block;
	text-align: center;
	font-family: "Montserrat";
	font-size: 0.6875rem;
	font-weight: 400;
	color: #fff;
	position: relative;
	top: 55%;
	margin-top: 12px;
}

@media screen and (min-width: 769px) {
	.l-header__menu {
		margin-top: 0;
	}
}

.l-header__sns {
	position: relative;
	margin: auto;
	display: none;
}

@media screen and (min-width: 769px) {
	.l-header__sns {
		position: absolute;
		margin: auto;
		display: block;
		left: 0;
		right: 0;
		bottom: 40px;
	}
}

.l-header__sns a, .l-header__sns--instagram {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 20px auto 0;
}

.l-header__sns a:first-of-type {
	margin: auto;
}

.l-header__sns--youtube {
	width: 22.6128px;
	height: 15.9317px;
	z-index: 1;
}

.l-header__sns--instagram {
	width: 18.0334px;
	height: 18px;
}

.l-header__sns--instagram__sub {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left: 0;
	padding-left: 40px;
	pointer-events: none;
	opacity: 0;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
	z-index: 0;
}

.l-header__sns--instagram__sub ul {
	background: white;
	padding: 22px 24px;
	font-size: 13px;
	width: 230px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.l-header__sns--instagram__sub ul::before {
	content: "";
	position: absolute;
	top: 64px;
	left: 30px;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 4px 10px 4px 0;
	border-color: transparent #ffffff transparent transparent;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

.l-header__sns--instagram__sub a {
	padding: 2px 0;
}

.l-header__sns--instagram:hover .l-header__sns--instagram__sub, .l-header__sns--instagram__sub:hover .l-header__sns--instagram__sub {
	opacity: 1;
	pointer-events: all;
}

.l-header__sns--x {
	width: 15.1916px;
	height: 15.1916px;
}

.l-header__sns--note {
	width: 20.5px;
	height: 20.5px;
}

@-webkit-keyframes sdl {
	0% {
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
	35% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
	35.1% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: 0 100%;
		transform-origin: 0 100%;
	}
	70%,
	100% {
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: 0 100%;
		transform-origin: 0 100%;
	}
}

@keyframes sdl {
	0% {
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
	35% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}
	35.1% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: 0 100%;
		transform-origin: 0 100%;
	}
	70%,
	100% {
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: 0 100%;
		transform-origin: 0 100%;
	}
}

.l-nav {
	position: relative;
	margin: 10px auto;
}

.l-fullnav {
	background: #000;
	display: none;
	height: 100%;
	min-height: 100vh;
	position: absolute;
	width: 100vw;
	z-index: 1;
	top: 0;
	overflow: scroll;
	-webkit-perspective: 1000;
	perspective: 1000;
}

@media screen and (min-width: 769px) {
	.l-fullnav {
		overflow: hidden;
		min-width: 1280px;
	}
}

.l-fullnav__inner {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 100%;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: absolute;
	width: 100%;
}

@media screen and (min-width: 769px) {
	.l-fullnav__inner {
		margin-left: -9%;
		-webkit-box-pack: end;
		-webkit-justify-content: end;
		-ms-flex-pack: end;
		justify-content: end;
	}
}

.l-fullnav__wrapper {
	position: absolute;
	display: block;
	top: 3%;
	margin: auto 0;
	padding: 0 10% 70px;
	width: 74%;
	min-width: 300px;
	max-width: 1200px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__wrapper {
		position: relative;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		top: 0;
		padding: 0;
		-webkit-transform: none;
		transform: none;
		width: 75.5%;
	}
}

.l-fullnav__menu {
	position: relative;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu {
		margin-right: 75px;
		-webkit-box-flex: 1;
		-webkit-flex: 1;
		-ms-flex: 1;
		flex: 1;
	}
}

.l-fullnav__menu--item {
	position: relative;
	display: block;
	padding: 20px 0;
	border-bottom: solid 1px #fff;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item {
		padding: 35px 0;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}
}

.l-fullnav__menu--item:first-child {
	padding: 0 0 20px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item:first-child {
		padding: 20px 0;
	}
}

.l-fullnav__menu--item:nth-of-type(4), .l-fullnav__menu--item:last-child {
	border-bottom: none;
}

.l-fullnav__menu--item:last-child {
	padding: 10px 0 30px;
}

.l-fullnav__menu--item-head {
	position: relative;
	display: block;
	width: auto;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item-head {
		width: 214px;
	}
}

.l-fullnav__menu--item-head h3 {
	font-family: "Cormorant Garamond";
	font-weight: normal;
	font-size: 0.875rem;
	line-height: 1;
	color: #967c5a;
}

.l-fullnav__menu--item-head p {
	position: relative;
	font-family: "Shippori Mincho";
	font-weight: 400;
	font-size: 15px;
	color: #fff;
	margin-top: 12px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item-head p {
		font-size: 1.25rem;
	}
}

.l-fullnav__menu--item-head a {
	position: relative;
	display: block;
	font-family: "Shippori Mincho";
	font-weight: 400;
	font-size: 15px;
	color: #fff;
	margin-top: 12px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item-head a {
		font-size: 1.25rem;
	}
}

.l-fullnav__menu--item-ul {
	position: relative;
	display: block;
	margin-top: 26px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item-ul {
		margin-top: 0;
	}
}

.l-fullnav__menu--item-list {
	position: relative;
	padding-bottom: 12px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item-list {
		padding-bottom: 1rem;
	}
}

.l-fullnav__menu--item-list:last-child {
	padding-bottom: 0;
}

.l-fullnav__menu--item-list a {
	position: relative;
	font-family: "Shippori Mincho";
	font-weight: 400;
	font-size: 15px;
	color: #fff;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item-list a {
		font-size: 1.25rem;
	}
}

.l-fullnav__menu--item-list a:before {
	content: "";
	position: absolute;
	width: 18px;
	height: 18px;
	border: solid 1px #fff;
	border-radius: 50%;
	top: 0;
	right: -30px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item-list a:before {
		width: 24px;
		height: 24px;
		top: 3px;
		right: -35px;
	}
}

.l-fullnav__menu--item-list a:after {
	content: "";
	position: absolute;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: #fff;
	top: 8px;
	right: -22px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--item-list a:after {
		top: 50%;
		right: -24px;
	}
}

.l-fullnav__menu--button {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--button {
		display: block;
	}
}

.l-fullnav__menu--button-item {
	position: relative;
	display: block;
	width: 50%;
	background-color: #fff;
	border-radius: 50px;
	margin: 0;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--button-item {
		width: 220px;
		margin: auto auto 1rem;
	}
}

.l-fullnav__menu--button-item p {
	font-family: "Shippori Mincho";
	font-size: 13px;
	padding: 4px 0;
	color: #000;
	text-align: center;
	margin: auto;
}

@media screen and (min-width: 769px) {
	.l-fullnav__menu--button-item p {
		font-size: 1.125rem;
		padding: 10px 0;
	}
}

.l-fullnav__voice .l-fullnav__menu--item-ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.l-fullnav__voice .l-fullnav__menu--item-ul .l-fullnav__menu--item-list {
	padding-bottom: 0;
	margin: auto 45px auto 0;
}

@media screen and (min-width: 769px) {
	.l-fullnav__voice .l-fullnav__menu--item-ul .l-fullnav__menu--item-list {
		margin: auto 80px 0 auto;
	}
}

.l-fullnav__company a {
	display: inline-block;
}

.l-fullnav__company a:before {
	content: "";
	position: absolute;
	width: 18px;
	height: 18px;
	border: solid 1px #fff;
	border-radius: 50%;
	top: 0;
	right: -30px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__company a:before {
		width: 24px;
		height: 24px;
		top: 3px;
		right: -35px;
	}
}

.l-fullnav__company a:after {
	content: "";
	position: absolute;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: #fff;
	top: 8px;
	right: -22px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__company a:after {
		top: 50%;
		right: -24px;
	}
}

.l-fullnav__lower__inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower__inner {
		display: block;
	}
}

.l-fullnav__lower--logo {
	position: relative;
	width: 31.6%;
	max-width: 140px;
	margin: 0 auto;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--logo {
		width: 166px;
		margin: 70px auto 0;
	}
}

.l-fullnav__lower--text {
	position: relative;
	margin: 0 auto 0 1rem;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--text {
		text-align: center;
		margin: 25px auto 0;
	}
}

.l-fullnav__lower--text p {
	position: relative;
	font-family: "Shippori Mincho";
	font-weight: 400;
	font-size: 13px;
	color: #fff;
	line-height: 1.6;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--text p {
		text-align: center;
		font-size: 0.875rem;
	}
}

.l-fullnav__lower--sns {
	position: relative;
	margin: 30px auto 0;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	display: -ms-grid;
	display: grid;
	text-align: left;
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--sns {
		margin: 60px 0 0 auto;
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
		gap: 20px;
	}
}

.l-fullnav__lower--sns li {
	position: relative;
	padding-left: 2rem;
	font-size: 12px;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--sns li {
		font-size: 14px;
	}
}

.l-fullnav__lower--sns li a {
	color: white;
}

.l-fullnav__lower--sns li::before {
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
}

.l-fullnav__lower--sns li:nth-child(1) {
	-ms-grid-row: 1;
	-ms-grid-row-span: 4;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 1 / 1 / 5 / 2;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--sns li:nth-child(1) {
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 1 / 1 / 2 / 2;
	}
}

.l-fullnav__lower--sns li:nth-child(2) {
	-ms-grid-row: 1;
	-ms-grid-row-span: 3;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-area: 1 / 2 / 4 / 3;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--sns li:nth-child(2) {
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 2 / 1 / 3 / 2;
	}
}

.l-fullnav__lower--sns li:nth-child(3) {
	-ms-grid-row: 4;
	-ms-grid-row-span: 3;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-area: 4 / 2 / 7 / 3;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--sns li:nth-child(3) {
		-ms-grid-row: 3;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 3 / 1 / 4 / 2;
	}
}

.l-fullnav__lower--sns li:nth-child(4) {
	-ms-grid-row: 7;
	-ms-grid-row-span: 3;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-area: 7 / 2 / 10 / 3;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--sns li:nth-child(4) {
		-ms-grid-row: 4;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 4 / 1 / 5 / 2;
	}
}

.l-fullnav__lower--sns li:nth-child(5) {
	-ms-grid-row: 10;
	-ms-grid-row-span: 3;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-area: 10 / 2 / 13 / 3;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--sns li:nth-child(5) {
		-ms-grid-row: 5;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 5 / 1 / 6 / 2;
	}
}

.l-fullnav__lower--sns li:nth-child(6) {
	-ms-grid-row: 5;
	-ms-grid-row-span: 4;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 5 / 1 / 9 / 2;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--sns li:nth-child(6) {
		-ms-grid-row: 6;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 6 / 1 / 7 / 2;
	}
}

.l-fullnav__lower--sns li:nth-child(7) {
	-ms-grid-row: 9;
	-ms-grid-row-span: 4;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 9 / 1 / 13 / 2;
}

@media screen and (min-width: 769px) {
	.l-fullnav__lower--sns li:nth-child(7) {
		-ms-grid-row: 7;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 7 / 1 / 8 / 2;
	}
}

.l-fullnav__lower--sns .-instagram::before {
	background: url(../../image/icon-instagram-white.svg) no-repeat;
	width: 18px;
	height: 18px;
	left: 0.8%;
}

.l-fullnav__lower--sns .-youtube::before {
	background: url(../../image/icon-youtube-white.svg) no-repeat;
	width: 22.6128px;
	height: 15.9317px;
}

.l-fullnav__lower--sns .-x::before {
	background: url(../../image/icon-x-white.svg) no-repeat;
	width: 15.1916px;
	height: 15.5254px;
	left: 2%;
}

.l-fullnav__lower--sns .-note::before {
	background: url(../../image/icon-note-white.svg) no-repeat;
	width: 20.5px;
	height: 20.5px;
	left: 0.8%;
}

.no-scroll {
	overflow: hidden;
	height: 100%;
}

.scroll-prevent {
	position: fixed;
	width: 100%;
	height: 100%;
}

.l-header-black .l-header__text {
	color: #000;
}

.l-header-black .l-header__nav:before {
	content: "";
}

@media screen and (min-width: 769px) {
	.l-header-black .l-header__nav:before {
		position: absolute;
		width: 1px;
		height: 360px;
		background-color: #000;
		top: 20%;
		right: 0;
		bottom: auto;
	}
}

.l-header-black .l-header__nav:after {
	content: "";
}

@media screen and (min-width: 769px) {
	.l-header-black .l-header__nav:after {
		content: "";
		position: absolute;
		width: 1px;
		height: 360px;
		background-color: #333;
		top: 20%;
		right: 0;
		opacity: 0.3;
		bottom: auto;
	}
}

.l-header-black .l-header__nav span {
	background-color: #000;
}

.l-header-black .l-header__menu {
	color: #000;
}

.header-is-black .l-header__logo p {
	color: #000;
}

.header-is-black .l-header__nav:before {
	content: "";
}

@media screen and (min-width: 769px) {
	.header-is-black .l-header__nav:before {
		content: "";
		position: absolute;
		width: 1px;
		height: 360px;
		background-color: #000;
		top: 20%;
		right: 0;
	}
}

.header-is-black .l-header__nav span {
	background-color: #000;
}

.header-is-black .l-header__menu {
	color: #000;
}

.js-scroll-image {
	z-index: 0;
	position: absolute;
	opacity: 0;
}

/*==============================================

    FOOTER

==============================================*/
.l-footer {
	position: relative;
	background-color: #000;
	padding-bottom: 40px;
}

@media screen and (min-width: 769px) {
	.l-footer {
		min-width: 1280px;
		padding-bottom: 60px;
	}
}

.l-footer__cta {
	background: #fff;
	padding: 2.2% 2.2% 36px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-column-gap: 2.2%;
	-moz-column-gap: 2.2%;
	column-gap: 2.2%;
}

@media screen and (min-width: 769px) {
	.l-footer__cta {
		padding: 2.4% 28.2% 2.4%;
		-webkit-column-gap: 10px;
		-moz-column-gap: 10px;
		column-gap: 10px;
	}
}

.l-footer__cta__item {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	overflow: hidden;
}

.l-footer__cta__item:hover img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	/* ホバー時に少し大きくなる */
}

.l-footer__cta__img {
	overflow: hidden;
	width: 100%;
}

.l-footer__cta img {
	-webkit-transition: 0.4s all;
	transition: 0.4s all;
	-webkit-transform-origin: center;
	transform-origin: center;
	-webkit-transform: scale(1);
	transform: scale(1);
	/* 初期状態はscale(1) */
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.l-footer__cta p {
	font-family: "Shippori Mincho";
	font-size: 12px;
	margin-top: 0.4rem;
	margin-left: 0.4em;
	line-height: 1.6;
}

@media screen and (min-width: 769px) {
	.l-footer__cta p {
		font-size: 16px;
		text-align: center;
	}
}

.l-footer__wrapper {
	font-family: "Shippori Mincho";
	font-weight: 400;
	color: #fff;
	padding: 40px 8% 60px;
	max-width: 400px;
	margin: auto;
}

@media screen and (min-width: 769px) {
	.l-footer__wrapper {
		padding: 60px 9.4% 0;
		max-width: 1200px;
		max-width: inherit;
		margin: auto;
	}
}

.l-footer__wrapper a,
.l-footer__wrapper p {
	font-family: "Shippori Mincho";
	font-size: 0.92857142857143rem;
}

@media screen and (min-width: 769px) {
	.l-footer__wrapper a,
	.l-footer__wrapper p {
		font-size: 0.9375rem;
	}
}

@media screen and (min-width: 769px) {
	.l-footer__inner {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
}

@media screen and (min-width: 769px) {
	.l-footer__inner:last-of-type {
		margin-top: 80px;
	}
	.l-footer__inner:last-of-type p,
	.l-footer__inner:last-of-type a {
		font-size: 14px;
	}
}

@media screen and (min-width: 769px) {
	.l-footer__menu {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 3;
		grid-template-columns: 3;
		-webkit-box-pack: start;
		-webkit-justify-content: flex-start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-column-gap: 80px;
		-moz-column-gap: 80px;
		column-gap: 80px;
	}
}

.l-footer__menu--item {
	margin-top: 20px;
}

.l-footer__menu--item:nth-of-type(1) {
	margin-top: 0px;
}

.l-footer__menu--item.l-footer__menu--item-list {
	padding-bottom: 0;
}

@media screen and (min-width: 769px) {
	.l-footer__menu--item {
		margin-top: 0px;
	}
	.l-footer__menu--item:nth-of-type(1) {
		-ms-grid-row: 1;
		-ms-grid-row-span: 2;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 1 / 1 / 3 / 2;
	}
	.l-footer__menu--item:nth-of-type(2) {
		-ms-grid-row: 1;
		-ms-grid-row-span: 2;
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-area: 1 / 2 / 3 / 3;
	}
	.l-footer__menu--item:nth-of-type(3) {
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		-ms-grid-column: 3;
		-ms-grid-column-span: 1;
		grid-area: 1 / 3 / 2 / 4;
	}
	.l-footer__menu--item:nth-of-type(4) {
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		-ms-grid-column: 3;
		-ms-grid-column-span: 1;
		grid-area: 2 / 3 / 3 / 4;
	}
}

.l-footer__menu--item a {
	color: #fff;
	position: relative;
	padding-right: 1.8rem;
}

.l-footer__menu--item a:before {
	content: "";
	position: absolute;
	width: 18px;
	height: 18px;
	border: solid 1px #fff;
	border-radius: 50%;
	top: 0;
	right: 0px;
	-webkit-transition: 0.3s all;
	transition: 0.3s all;
	-webkit-transform-origin: center;
	transform-origin: center;
	-webkit-transform: scale(1);
	transform: scale(1);
	/* 初期状態はscale(1) */
}

@media screen and (min-width: 769px) {
	.l-footer__menu--item a:before {
		top: 2px;
		right: 0px;
	}
}

.l-footer__menu--item a:after {
	content: "";
	position: absolute;
	width: 2px;
	height: 2px;
	border-radius: 50%;
	background-color: #fff;
	top: 9px;
	right: 9px;
}

@media screen and (min-width: 769px) {
	.l-footer__menu--item a:after {
		right: 9px;
		top: 50%;
	}
}

.l-footer__menu--item-head {
	font-size: 0.92857142857143rem;
	border-bottom: 1px solid #fff;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}

@media screen and (min-width: 769px) {
	.l-footer__menu--item-head {
		font-size: 0.9375rem;
	}
}

.l-footer__menu--item-ul {
	margin-top: 1.5rem;
}

@media screen and (min-width: 769px) {
	.l-footer__menu--item-ul {
		margin-top: 1.5rem;
	}
}

.l-footer__menu--item-ul.-flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-column-gap: 10px;
	-moz-column-gap: 10px;
	column-gap: 10px;
}

@media screen and (min-width: 769px) {
	.l-footer__menu--item-ul.-flex {
		display: block;
	}
}

.l-footer__menu--item-list {
	position: relative;
	padding-bottom: 0.8rem;
}

.l-footer__menu--item-list:last-child {
	padding-bottom: 0;
}

@media screen and (min-width: 769px) {
	.l-footer__menu--item-list {
		padding-bottom: 0.4rem;
		letter-spacing: normal;
	}
}

.l-footer__menu--item-list:hover a:before {
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
	-webkit-transform-origin: 9px 9px;
	transform-origin: 9px 9px;
}

.l-footer__button {
	margin-top: 30px;
}

@media screen and (min-width: 769px) {
	.l-footer__button {
		margin: 0;
		-webkit-box-flex: 1;
		-webkit-flex: 1;
		-ms-flex: 1;
		flex: 1;
	}
}

.l-footer__button--item {
	background-color: #fff;
	border-radius: 50px;
	display: block;
	width: 48%;
}

@media screen and (min-width: 769px) {
	.l-footer__button--item {
		width: 100%;
		max-width: 220px;
		margin: 0 0 0 auto;
	}
}

.l-footer__button--item p {
	padding: 4px 0;
	color: #000;
	text-align: center;
	margin: auto;
}

@media screen and (min-width: 769px) {
	.l-footer__button--item p {
		font-size: 18px;
		padding: 6.5px 50px;
	}
}

.l-footer__info {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 30px auto 0;
	-webkit-column-gap: 1.2rem;
	-moz-column-gap: 1.2rem;
	column-gap: 1.2rem;
}

@media screen and (min-width: 769px) {
	.l-footer__info {
		margin: 0;
		-webkit-box-flex: 1;
		-webkit-flex: 1;
		-ms-flex: 1;
		flex: 1;
		-webkit-column-gap: 1.6rem;
		-moz-column-gap: 1.6rem;
		column-gap: 1.6rem;
	}
}

.l-footer__logo {
	width: 36%;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

@media screen and (min-width: 769px) {
	.l-footer__logo {
		width: 20%;
	}
}

.l-footer__logo img {
	max-width: 124px;
}

@media screen and (min-width: 769px) {
	.l-footer__logo img {
		max-width: 106px;
	}
}

.l-footer__text {
	margin: 0 auto;
	width: 64%;
}

@media screen and (min-width: 769px) {
	.l-footer__text {
		width: 80%;
		margin-top: 4px;
	}
}

.l-footer__sns {
	position: relative;
	margin: 40px auto 0;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	display: -ms-grid;
	display: grid;
	text-align: left;
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	gap: 12px 10px;
}

@media screen and (min-width: 769px) {
	.l-footer__sns {
		margin: 0;
		gap: 10px 20px;
		height: -webkit-fit-content;
		height: -moz-fit-content;
		height: fit-content;
	}
}

.l-footer__sns li {
	position: relative;
	padding-left: 2rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.l-footer__sns li a {
	color: white;
	font-size: 12px;
}

@media screen and (min-width: 769px) {
	.l-footer__sns li a {
		font-size: 14px;
	}
}

.l-footer__sns li::before {
	content: "";
	position: absolute;
	left: 0;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.l-footer__sns li:nth-child(1) {
	-ms-grid-row: 1;
	-ms-grid-row-span: 4;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 1 / 1 / 5 / 2;
}

@media screen and (min-width: 769px) {
	.l-footer__sns li:nth-child(1) {
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 1 / 1 / 2 / 2;
	}
}

.l-footer__sns li:nth-child(2) {
	-ms-grid-row: 5;
	-ms-grid-row-span: 4;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 5 / 1 / 9 / 2;
}

@media screen and (min-width: 769px) {
	.l-footer__sns li:nth-child(2) {
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 2 / 1 / 3 / 2;
	}
}

.l-footer__sns li:nth-child(3) {
	-ms-grid-row: 9;
	-ms-grid-row-span: 4;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 9 / 1 / 13 / 2;
}

@media screen and (min-width: 769px) {
	.l-footer__sns li:nth-child(3) {
		-ms-grid-row: 3;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-area: 3 / 1 / 4 / 2;
	}
}

.l-footer__sns li:nth-child(4) {
	-ms-grid-row: 1;
	-ms-grid-row-span: 3;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-area: 1 / 2 / 4 / 3;
}

@media screen and (min-width: 769px) {
	.l-footer__sns li:nth-child(4) {
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-area: 1 / 2 / 2 / 3;
	}
}

.l-footer__sns li:nth-child(5) {
	-ms-grid-row: 4;
	-ms-grid-row-span: 3;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-area: 4 / 2 / 7 / 3;
}

@media screen and (min-width: 769px) {
	.l-footer__sns li:nth-child(5) {
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-area: 2 / 2 / 3 / 3;
	}
}

.l-footer__sns li:nth-child(6) {
	-ms-grid-row: 7;
	-ms-grid-row-span: 3;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-area: 7 / 2 / 10 / 3;
}

@media screen and (min-width: 769px) {
	.l-footer__sns li:nth-child(6) {
		-ms-grid-row: 3;
		-ms-grid-row-span: 1;
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-area: 3 / 2 / 4 / 3;
	}
}

.l-footer__sns li:nth-child(7) {
	-ms-grid-row: 10;
	-ms-grid-row-span: 3;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-area: 10 / 2 / 13 / 3;
}

@media screen and (min-width: 769px) {
	.l-footer__sns li:nth-child(7) {
		-ms-grid-row: 4;
		-ms-grid-row-span: 1;
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-area: 4 / 2 / 5 / 3;
	}
}

.l-footer__sns .-instagram::before {
	background: url(../../image/icon-instagram-white.svg) no-repeat;
	width: 18px;
	height: 18px;
	left: 0.8%;
}

.l-footer__sns .-youtube::before {
	background: url(../../image/icon-youtube-white.svg) no-repeat;
	width: 22.6128px;
	height: 15.9317px;
}

.l-footer__sns .-x::before {
	background: url(../../image/icon-x-white.svg) no-repeat;
	width: 15.1916px;
	height: 15.5254px;
	left: 2%;
}

.l-footer__sns .-note::before {
	background: url(../../image/icon-note-white.svg) no-repeat;
	width: 20.5px;
	height: 20.5px;
	left: 0.8%;
}

.l-footer__copyright {
	padding: 0 30px;
	font-family: "游ゴシック体, YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', 游ゴシック, 'Yu Gothic', sans-serif";
	text-align: center;
}

@media screen and (min-width: 769px) {
	.l-footer__copyright {
		padding: 0 9.4%;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		-webkit-box-pack: end;
		-webkit-justify-content: flex-end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		max-width: 1200px;
		margin: -18px auto 0;
	}
}

.l-footer__copyright a {
	color: #fff;
	font-size: 11px;
	display: block;
}

@media screen and (min-width: 769px) {
	.l-footer__copyright a {
		margin-left: 1rem;
	}
}

.l-footer__copyright small {
	color: #fff;
	font-size: 8px;
}

@media screen and (min-width: 769px) {
	.l-footer__copyright small {
		font-size: 10px;
	}
}

/*==============================================
    PAGE TOP
==============================================*/
#page__top {
	position: fixed;
	right: 15px;
	bottom: 20px;
	background: rgba(0, 0, 0, 0);
	border-radius: 50%;
	z-index: 1;
}

@media screen and (min-width: 769px) {
	#page__top {
		right: 25px;
		bottom: 15px;
	}
}

.pagetop-is-black {
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

.pagetop-is-black a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}

.pagetop-is-black a:before {
	content: "";
	position: absolute;
	width: 42px;
	height: 42px;
	background: url("./../../image/icon-pagetop-black.svg") no-repeat center;
	background-size: cover;
	right: 0;
	bottom: 0;
	margin: auto;
}

@media screen and (min-width: 769px) {
	.pagetop-is-black a:before {
		width: 76px;
		height: 76px;
	}
}

.pagetop-is-white {
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	opacity: 0;
}

.pagetop-is-white a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}

.pagetop-is-white a:before {
	content: "";
	position: absolute;
	width: 42px;
	height: 42px;
	background: url("./../../image/icon-pagetop.svg") no-repeat center;
	background-size: cover;
	right: 0;
	bottom: 0;
	margin: auto;
}

@media screen and (min-width: 769px) {
	.pagetop-is-white a:before {
		width: 76px;
		height: 76px;
	}
}

.t-loading-visual {
	z-index: 9999;
	position: fixed;
	height: 100vh;
	-webkit-transition: opacity .5s, visibility .5s;
	transition: opacity .5s, visibility .5s;
	overflow: hidden;
}

.t-loading-visual .t-loading-visual__canvas {
	position: relative;
	height: 100vh;
}

.t-loading-visual.is-loader-none .t-loading-visual__canvas {
	display: none;
}

.t-loading-visual.is-hidden {
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	-webkit-transition-duration: 1s;
	transition-duration: 1s;
}

.t-loading-visual.is-hidden--slow {
	-webkit-transition-duration: 1.8s;
	transition-duration: 1.8s;
}

/*==============================================

    COMPONENT

==============================================*/
/*==============================================
    COMPONENT TEXT
==============================================*/
.c-h1 {
	font-size: 1rem;
	line-height: 1.5;
}

@media screen and (min-width: 769px) {
	.c-h1 {
		font-size: 1rem;
		line-height: 1.5;
	}
}

.c-p {
	margin: 1em 0;
	font-size: 1rem;
	line-height: 1.5;
}

@media screen and (min-width: 769px) {
	.c-p {
		font-size: 1rem;
		line-height: 1.5;
	}
}

/*==============================================
    COMPONENT BUTTON
==============================================*/
/*==============================================

    UTILITY

==============================================*/
.u-hidden {
	display: none;
}

@media screen and (max-width: 768px) {
	.u-hidden-sp {
		display: none;
	}
}

@media screen and (min-width: 769px) {
	.u-hidden-pc {
		display: none;
	}
}

.u-left {
	text-align: left;
}

.u-center {
	text-align: center;
}

.u-right {
	text-align: right;
}

.u-red {
	color: red;
}

.u-bg-red {
	background-color: red;
}

.t-loading-visual {
	z-index: 9999;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transition-duration: 1.8s;
	transition-duration: 1.8s;
	background-color: #fff;
	opacity: 1;
	transition-duration: 1.8s;
	overflow: hidden;
}

.t-loading-visual__bg {
	background: url("../../image/bg-hero05.jpg") no-repeat center;
	background-size: cover;
	-webkit-transition-duration: 1.8s;
	transition-duration: 1.8s;
	opacity: 1;
	height: 100vh;
	-webkit-animation: zoomloading 6s both;
	animation: zoomloading 6s both;
}

.t-loading-visual.is-loader-none {
	opacity: 0;
	pointer-events: none;
	-webkit-transition-duration: 1.8s;
	transition-duration: 1.8s;
}

@-webkit-keyframes zoomloading {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	100% {
		-webkit-transform: scale(1.08);
		transform: scale(1.08);
	}
}

@keyframes zoomloading {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	100% {
		-webkit-transform: scale(1.08);
		transform: scale(1.08);
	}
}

.t-loading__title {
	position: absolute;
	max-width: 170px;
	height: 30vh;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 1;
}

@media screen and (min-width: 769px) {
	.t-loading__title {
		max-width: 260px;
		height: 30vh;
	}
}

.t-loading__border {
	display: none;
}

@media screen and (min-width: 769px) {
	.t-loading__border {
		display: inline-block;
		height: 100vh;
		width: 200px;
	}
}

.t-loading__border-area {
	position: relative;
}

@media screen and (min-width: 769px) {
	.t-loading__border-area {
		position: relative;
		top: 33%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
}

.t-loading__border-area:before {
	content: '';
	position: absolute;
	width: 1px;
	height: 360px;
	background-color: #fff;
	top: 20%;
	right: 0;
	-webkit-transition: all .4s;
	transition: all .4s;
	-webkit-animation: sdl 3s cubic-bezier(1, 0, 0, 1) infinite;
	animation: sdl 3s cubic-bezier(1, 0, 0, 1) infinite;
	display: none;
}

@media screen and (min-width: 769px) {
	.t-loading__border-area:before {
		display: block;
	}
}

.t-loading__border-area:after {
	content: '';
	position: absolute;
	width: 1px;
	height: 360px;
	background-color: #ccc;
	top: 20%;
	right: 0;
	opacity: .3;
	-webkit-transition: all .4s;
	transition: all .4s;
	display: none;
}

@media screen and (min-width: 769px) {
	.t-loading__border-area:after {
		display: block;
	}
}

.fadein {
	opacity: 0;
	-webkit-transition: all 1000ms;
	transition: all 1000ms;
}

.fadein.scrollin {
	opacity: 1;
	-webkit-transition-duration: 1.8s;
	transition-duration: 1.8s;
}

.rock {
	overflow: hidden;
}

body.recent {
	background: #F2F5F7;
}

@media screen and (min-width: 769px) {
	.t-header {
		min-width: 1280px;
		max-width: 1600px;
		margin: auto;
	}
}

.t-header__inner {
	width: 100%;
	margin: auto;
	padding: 30px 8%;
	border-bottom: 2px solid #231815;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}

@media screen and (min-width: 769px) {
	.t-header__inner {
		width: 94%;
		border-bottom: 3px solid #231815;
		padding: 60px 40px 40px;
	}
}

.t-header__ttl {
	width: 100%;
	margin: auto;
}

.t-header__ttl h1 {
	max-width: 920px;
	position: relative;
	margin: 0;
	width: 79.5%;
}

@media screen and (min-width: 769px) {
	.t-header__ttl h1 {
		width: 100%;
	}
}

.t-header__ttl span {
	font-size: 15px;
	font-family: "Plus Jakarta Sans, sans-serif";
	margin-top: 20px;
	display: block;
}

@media screen and (min-width: 769px) {
	.t-header__ttl span {
		position: absolute;
		bottom: 0;
		right: 0;
		font-size: 36px;
		margin-top: 0;
	}
}

.t-header__logo {
	width: 22.86%;
	text-align: right;
	position: absolute;
	right: 8%;
	bottom: 30px;
}

@media screen and (min-width: 769px) {
	.t-header__logo {
		width: 13%;
		right: 40px;
		bottom: 24px;
	}
}

@media screen and (min-width: 769px) {
	.t-container {
		min-width: 1280px;
		max-width: 1600px;
		margin: auto;
	}
}

.t-container__inner {
	width: 100%;
	margin: auto;
}

@media screen and (min-width: 769px) {
	.t-container__inner {
		width: 94%;
	}
}

.t-intro {
	padding: 30px 8%;
	font-size: 16px;
	line-height: 1.6;
}

@media screen and (min-width: 769px) {
	.t-intro {
		padding: 36px 40px;
		font-size: 20px;
		line-height: 1.76;
	}
}

.t-contents {
	border-top: 1px solid #231815;
	padding: 0 2.6%;
}

@media screen and (min-width: 769px) {
	.t-contents {
		padding: 0 40px;
	}
}

.t-content {
	border-left: 1px solid #231815;
	border-right: 1px solid #231815;
	border-bottom: 1px solid #231815;
	padding: 42px 20px;
}

@media screen and (min-width: 769px) {
	.t-content {
		padding: 50px 30px;
	}
}

@media screen and (min-width: 1024px) {
	.t-content {
		padding: 76px 40px;
	}
}

@media screen and (min-width: 769px) {
	.t-content__title {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-column-gap: 4%;
		-moz-column-gap: 4%;
		column-gap: 4%;
	}
}

.t-content__title h2 {
	font-size: 24px;
	font-family: "Noto Sans JP, sans-serif";
	font-weight: 400;
	margin-top: 30px;
}

@media screen and (min-width: 769px) {
	.t-content__title h2 {
		font-size: 32px;
		margin-top: 0.8rem;
	}
}

@media screen and (min-width: 1024px) {
	.t-content__title h2 {
		font-size: 36px;
	}
}

.t-content__title span {
	font-size: 60px;
	font-family: "Plus Jakarta Sans, sans-serif";
	line-height: 1;
	display: block;
}

@media screen and (min-width: 769px) {
	.t-content__title span {
		font-size: 100px;
	}
}

@media screen and (min-width: 1024px) {
	.t-content__title span {
		font-size: 120px;
	}
}

.t-content__inner {
	margin-top: 40px;
}

@media screen and (min-width: 769px) {
	.t-content__inner {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		-webkit-column-gap: 40px;
		-moz-column-gap: 40px;
		column-gap: 40px;
		margin-top: 70px;
	}
}

.t-content__inner h3 {
	font-size: 18px;
	font-family: "Noto Sans JP, sans-serif";
}

@media screen and (min-width: 769px) {
	.t-content__inner h3 {
		font-size: 20px;
		margin-top: -0.2em;
		line-height: 1.6;
	}
}

@media screen and (min-width: 1024px) {
	.t-content__inner h3 {
		font-size: 22px;
	}
}

.t-content__inner p {
	margin-top: 22px;
	font-size: 16px;
	line-height: 1.86;
	letter-spacing: 0;
}

@media screen and (min-width: 1024px) {
	.t-content__inner p {
		margin-top: 30px;
	}
}

@media screen and (min-width: 769px) {
	.t-content__article {
		width: 50%;
	}
}

.t-content__image {
	margin: 40px auto 26px;
}

@media screen and (min-width: 769px) {
	.t-content__image {
		width: 50%;
		margin-top: 0;
	}
}

.t-content__cta {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	column-gap: 20px;
	border-radius: 50px;
	border: solid 1px black;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	padding: 16px 42px;
	margin: 22px auto 0;
	font-family: "Noto Sans JP, sans-serif";
	font-size: 14px;
}

@media screen and (min-width: 769px) {
	.t-content__cta {
		margin: 58px 0 0;
		padding: 20px 60px;
		font-size: 20px;
	}
}

.t-content__cta img {
	width: 30px;
}

@media screen and (min-width: 769px) {
	.t-content__cta img {
		width: 38px;
	}
}

.t-content:last-of-type {
	padding: 40px 0 0;
	height: 0px;
	border-bottom: none;
}

@media screen and (min-width: 769px) {
	.t-content:last-of-type {
		padding: 54px 0 0;
	}
}
