@charset "utf-8";
@import 'https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;600&display=swap';
@import 'https://fonts.googleapis.com/css2?family=Playball&display=swap';

/*-- Template by Luca --*/
/*-- https://as.lclla.com/ --*/
/*-- Temp name レテの河岸 --*/
* {
	margin: 0;
	padding: 0;
	font-weight: 400;
	word-break: break-all;
	box-sizing: border-box;
}

*:focus {
	outline: none;
}

ul, ol {
	list-style: none;
}

:root {
	--base-color: #fcfbfb;
	--base-2-color: #f5f4f4;
	--main-color: #2c2c2c;
	--point-color: #831413;
	--sub-color: #a5a5a5;
	--sub-2-color: rgba(0, 0, 0, 0.05);
	--black: #000;
	--white: #fff;
	--shadow: 0.5px 0 0 var(--white), 0.5px 0.5px 0 var(--white), 0 0.5px 0 var(--white), -0.5px 0.5px 0 var(--white), -0.5px 0 0 var(--white), -0.5px -0.5px 0 var(--white), 0 -0.5px 0 var(--white), 0.5px -0.5px 0 var(--white);
}

html {
	font-size: 62.5%;
	scrollbar-width: thin;
	scrollbar-color: var(--black) rgba(0, 0, 0, 0.5);
}

body {
	font: 1.4rem/1.9 'Noto Sans JP', "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	color: var(--main-color);
	background: var(--base-color);
	height: 100vh;
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	letter-spacing: 2px;
}

/* 蝶の画像 */
.sub_title::before {
	-webkit-mask-image: url(http://haru-tuki-q--p.capoo.jp/fleur-arcenciel/imege/Lovepik_com-380342027-two-butterflies-and-moon-silhouettes-black-and-white-painting-butterfly-linen.png);
	mask-image: url(http://haru-tuki-q--p.capoo.jp/fleur-arcenciel/imege/Lovepik_com-380342027-two-butterflies-and-moon-silhouettes-black-and-white-painting-butterfly-linen.png);
}

/* 写真画像-1 */
.head_inner:nth-of-type(1) {
	background: url(https://haru-tuki-q--p.capoo.jp/fleur-arcenciel/imege/E32F7D8F-5392-454A-85B8-55F9B5666820.jpg) no-repeat center/cover;
}

/* 写真画像-2 */
.head_inner:nth-of-type(3) {
	background: url(https://haru-tuki-q--p.capoo.jp/fleur-arcenciel/imege/2B353D42-083C-4BB5-86B9-BDEF0E6FFAB8.jpg) no-repeat center/cover;
}

::-webkit-scrollbar {
	width: 6px;
}

::-webkit-scrollbar-track {
	background-color: rgba(0, 0, 0, 0.25);
	border: none;
}

::-webkit-scrollbar-thumb {
	background: var(--black);
	box-shadow: none;
	border-radius: 5px;
}

a {
	color: currentColor;
	text-decoration: none;
}

a:hover {
	color: #fff;
	text-shadow: 0 0 5px var(--main-color);
	text-decoration: none;
	transition: .5s;
}

b, strong, .bold {
	font-weight: bold;
}

strong {
	background: repeating-linear-gradient(-45deg, transparent 0 3px, #cacaca 3px 6px);
	background-repeat: no-repeat;
	background-size: 100% 7px;
	background-position: bottom;
}

em {
	font-style: normal;
	background: #f0d3d3;
	padding: 0 2px;
}


img {
	vertical-align: bottom;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
	max-width: 100%;
	height: auto;
}

.new::after {
	content: "New";
	color: #eda261;
	margin: 0 7px;
}

.color {
	background: var(--sub-2-color);
}

.ruled {
	letter-spacing: 0;
	padding: 0 7px;
}

.ribbon {
	display: table;
	position: relative;
	padding: 0 4px 0 6px;
	margin: 5px 0;
	color: var(--base-color);
	background: var(--sub-color);
}

.ribbon::after {
	content: "";
	width: 12px;
	height: 100%;
	right: -12px;
	top: 0;
	position: absolute;
	background: linear-gradient(to bottom right, var(--sub-color) 50%, transparent 50%) top left/ 100% 50% no-repeat, linear-gradient(to top right, var(--sub-color) 50%, transparent 50%) bottom left / 100% 50% no-repeat;
}

.arrow::before {
	content: "";
	color: var(--sub-color);
	margin: 0 8px 1px 0;
	width: 5px;
	height: 5px;
	vertical-align: inherit;
	border-right: 2px solid;
	border-top: 2px solid;
	display: inline-block;
	transform: rotate(45deg);

}

.border {
	background: linear-gradient(transparent 60%, #f6ded7 60%);
}

.box {
	background: var(--sub-2-color);
	display: block;
	padding: 15px;
	outline: solid 1px var(--white);
	outline-offset: -7px;
}

/* フォントスタイル指定 */
h1, h2, .scroll_link, .sub_title {
	font-family: 'Playball', serif;
}

h3, h4, .head_inner:nth-of-type(3)>ul::before, .notice_title, .menu a, .nav_btn, .link_list dt, form p, summary, .new::after, .img_container_inner>.list_block::before, form input[type="submit"].btn, input[type="reset"].btn, .name_change input[type="submit"], .name_change input[type="reset"], .footer {
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-weight: 500;
}

/* フォントサイズ */

h1 {
	font-size: clamp(1.5rem, 3.125vw, 1.9rem);
	padding: 18px;
	animation: fade 4.5s ease;
}

h1 a {
	color: var(--white);
	letter-spacing: 5px;
	font-weight: 300;
}

.rl {
	writing-mode: vertical-rl;
}

h2 {
	padding: 60px 0;
	color: currentColor;
	font-size: clamp(1.8rem, 3.125vw, 2.2rem);
	text-transform: capitalize;
	position: relative;
	line-height: 1.4;
	opacity: .8;
	text-shadow: var(--shadow);
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
}

h2::before {
	content: "";
	position: absolute;
	width: 2px;
	height: 60px;
	left: calc(50% - 2px);
	top: calc(50% - 29px);
	border-radius: 2px;
	background: var(--sub-color);
	transform: rotate(40deg);
	z-index: -1;
}

h2.active {
	filter: blur(0px);
	transform: scale(1);
	visibility: visible;
	transition: all .7s ease-in-out;
}

h2:not(.active) {
	visibility: hidden;
	filter: blur(9px);
	transform: scale(0.8);
}

h3, h4 {
	font-size: clamp(1.3rem, 3.125vw, 1.5rem);
}

h3 {
	display: table;
	line-height: 1;
	text-transform: capitalize;
	margin-bottom: 20px;
	background: linear-gradient(rgba(0, 0, 0, 0.00) 50%, #ddd 40%);
}

h4 {
	position: relative;
	line-height: 1.7;
	margin-bottom: 20px;
}

h4::before, h4::after {
	content: "";
	position: absolute;
}

h4::before {
	top: 2px;
	left: -3px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 20px 0 0;
	border-color: #ddd transparent transparent transparent;
	z-index: -1;
}

h4::after {
	width: 1px;
	height: inherit;
	left: 9px;
	top: -2px;
	bottom: -4px;
	background: #ddd;
	transform: rotate(45deg);
	z-index: -1;
}

h4::first-letter {
	color: var(--point-color);
	text-shadow: var(--shadow);
}

.nav {
	position: fixed;
	background: var(--base-color);
	bottom: 0;
	width: 100%;
	height: 80px;
	z-index: 2;
}

.menu {
	display: flex;
	width: 100%;
	height: 80px;
	align-items: center;
	justify-content: space-around;
}

.menu_list {
	position: relative;
	flex: 1;
	width: 100%;
	height: 100%;

}

.menu_list a {
	height: 100%;
	width: 100%;
	text-transform: uppercase;
	display: flex;
	justify-content: center;
	align-items: center;
}

.menu_list a:hover, .nav_btn:hover {
	color: var(--white);
	text-shadow: 0 0 5px var(--main-color);
	transition: .3s;
}

.nav_btn {
	visibility: visible;
	opacity: 1;
}

.nav_btn {
	font-size: 1.4rem;
	text-transform: uppercase;
	cursor: pointer;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.sub_menu {
	visibility: hidden;
	opacity: 0;
	line-height: 2.5;
	position: absolute;
	left: 0;
	bottom: 68px;
	background: var(--base-color);
	padding: 20px 0;
	width: 100%;
	box-shadow: 0px -7px 20px -4px rgba(0, 0, 0, 0.25);
	transition: all .4s;
	z-index: 2;
}

.nav_btn:hover>.sub_menu {
	visibility: visible;
	opacity: 1;
}

.sub_menu a {
	text-transform: none;
}

.menu_list>.sub_menu li {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.menu_list>.sub_menu li a:hover {
	background: var(--sub-color);
	color: var(--white);
}

.menu_list:hover .sub_menu {
	visibility: visible;
	opacity: 1;
	transform: translateY(-10px);
}

.sub_title {
	font-size: 1.6rem;
	letter-spacing: 3px;
	text-transform: capitalize;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 80px;
	position: fixed;
	width: 100%;
	top: -100px;
	z-index: 3;
}

.sub_title::before {
	content: "";
	display: block;
	top: calc(100% - 25%);
	height: inherit;
	width: 130px;
	position: absolute;
	background: linear-gradient(180deg, var(--point-color) 0 50%, var(--white) 50% 100%);
	background: -webkit-linear-gradient(270deg, var(--point-color) 0 50%, var(--white) 50% 100%);
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	mask-repeat: no-repeat;
	mask-size: contain;
	mask-position: center;
	opacity: 1;
	animation: scale 4s ease;
}

header {
	height: 100%;
	position: relative;
	top: 80px;
}

.head_outer {
	display: flex;
	justify-content: space-between;
	height: calc(100% - 160px);
	width: 100%;
	gap: 120px;
	position: fixed;
}

.head_inner {
	display: flex;
	justify-content: center;
	width: 100%;
	position: relative;
}

.head_inner:nth-of-type(1), .head_inner:nth-of-type(3) {
	flex: 3 3 25%;
	overflow: hidden;
}

.head_inner:nth-of-type(2) {
	align-items: center;
	position: absolute;
	background: var(--main-color);
	height: 95%;
	top: 50%;
	transform: translate(-50%, -50%);
	left: 50%;
	width: 35%;
	outline: solid 1px rgba(255, 255, 255, 0.4);
	outline-offset: -10px;
	z-index: 2;
}

.head_inner:nth-of-type(3) {
	justify-content: right;
	align-items: end;
}

.head_inner>span {
	content: "";
	display: block;
	position: absolute;
	background-color: var(--main-color);
	width: 100%;
	height: 100%;
}

.head_inner:nth-of-type(3)>ul {
	margin-right: 15px;
	max-width: 290px;
	text-align: center;
}

.head_inner:nth-of-type(3)>ul::before {
	content: attr(data-txt);
	font-size: 1em;
	display: table;
	margin: 7px auto;
	padding: 0 8px;
	color: var(--white);
	background: var(--main-color);
}

.head_inner:nth-of-type(3)>ul li {
	display: inline-block;
}

.head_inner:nth-of-type(3)>ul li:not(:last-child)::after {
	display: none;
}

.head_inner:nth-of-type(3)>ul a {
	padding: 3px;
	background: rgba(0, 0, 0, 0.5);
	color: var(--white);
}

.head_inner:nth-of-type(1)>span {
	animation: slide_1 2.5s ease forwards;

}

.head_inner:nth-of-type(3)>span {
	animation: slide_2 2.5s ease forwards;
}

.scroll_link {
	position: absolute;
	height: 90px;
	bottom: 10px;
	white-space: nowrap;
	animation: fade 4.5s ease;
}

.scroll_link {
	color: var(--white);
	text-transform: capitalize;
}

.scroll_link::after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: .5px;
	height: 50px;
	animation: move 2s ease-in-out infinite;
	background: var(--white);
}

.notice {
	position: relative;
	bottom: 0;
	left: 0;
	width: min(100%, 500px);
	margin: 0 auto 20px;
	padding: 28px 13px 15px;
	background: inherit;
	border: 1px solid var(--sub-color);
}

.notice_inner {
	display: grid;
	grid-template-columns: auto 1fr;
	padding-right: 5px;
	height: 53px;
	width: 100%;
	overflow-y: scroll;
	scrollbar-width: thin;
	scrollbar-color: var(--sub-color) transparent;
}

.notice_inner dt {
	display: flex;
}

.notice_inner dt>span {
	padding: 0 0 0 12px;
	display: block;
	height: fit-content;
	background: linear-gradient(180deg, var(--point-color) 0%, var(--point-color) 50%, #ddd 50%, #ddd 100%);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: 5px 90%;
}

.notice_inner dt::after {
	content: "";
	position: relative;
	left: 0;
	top: 1.4rem;
	height: 1px;
	width: 25px;
	background: var(--sub-color);
	margin: 0 7px;
}

.notice_inner dd:not(:last-of-type) {
	margin-bottom: 10px;
}

.notice_inner dd>p {
	display: table;
	padding: 0 5px;
}

.notice_title {
	font-size: 1rem;
	position: absolute;
	top: 5px;
	left: -15px;
	padding: 0 5px;
	color: var(--base-color);
	background: var(--main-color);
	display: table;
	text-transform: capitalize;
}

main {
	width: 100vw;
	position: relative;
	background: var(--base-color);
	padding: 0 0 90px;
	text-align: center;
	box-shadow: 0px -3px 20px rgba(250, 249, 247, 0.5);
	z-index: 1;
}

main a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-decoration-skip-ink: none;
	text-decoration-color: var(--sub-color);
	text-underline-offset: 3px;
}

main a:hover {
	text-decoration: none;
}

.content {
	margin: 0 auto;
	padding: 0 15px;
	text-align: left;
	width: min(100%, 700px);
}

.inner {
	display: flex;
	align-items: center;
	flex-direction: column;
	position: relative;
	text-align: left;
	margin: 30px calc(50% - 50vw);
}


.inner::after {
	content: "";
	position: absolute;
	top: 30px;
	height: 100%;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	background: var(--base-2-color);
	z-index: -2;
}


.inner>.content>img {
	width: 160px;
	height: 160px;
	clip-path: polygon(50% 0%, 83% 12%, 100% 43%, 94% 78%, 68% 100%, 32% 100%, 6% 78%, 0% 43%, 17% 12%);
	object-fit: cover;
	object-position: center;
	transition: transform 0.5s ease;
	backface-visibility: hidden;
}

.inner>.content>img:hover img {
	transform: translateY(0);
}

.inner>.content:first-of-type {
	position: relative;
	margin: -30px auto 40px;
	filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.2));
	width: fit-content;
}

.inner>.content:first-of-type::after {
	content: "";
	position: absolute;
	margin: 0 auto;
	top: 10px;
	left: 10px;
	right: 10px;
	bottom: 10px;
	width: 140px;
	height: 140px;
	clip-path: polygon(50% 0%, 83% 12%, 100% 43%, 94% 78%, 68% 100%, 32% 100%, 6% 78%, 0% 43%, 17% 12%);
	background: rgba(255, 255, 255, 0.5);
	mix-blend-mode: overlay;
	filter: contrast(.6);
	z-index: 1;
}

summary {
	text-transform: uppercase;
	margin: 15px 0;
	color: var(--point-color);
	text-align: center;
	cursor: pointer;
}

details {
	font-size: 1em;
	opacity: .8;
	margin: 0 auto;
	padding: 0 5px;
}

/* リスト　アバウトリスト */
.link_list {
	display: grid;
	grid-template-columns: auto 1fr;
	margin-bottom: 20px;
	line-height: 1.5;
}

.link_list dt {
	position: relative;
	text-transform: capitalize;
	height: fit-content;
}

.link_list dt::first-letter {
	color: var(--point-color);
	text-shadow: var(--shadow);

}

.link_list dt::before {
	content: "";
	position: absolute;
	top: 2px;
	left: -3px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 20px 0 0;
	border-color: #ddd transparent transparent transparent;
	z-index: -1;
}

.link_list dd {
	padding: 0 0 15px 25px;
}

/* リスト　横書き */
.list_inline {
	list-style: none;
	line-height: 2.2;
	margin-bottom: 20px;
}

.list_inline li {
	display: inline;
}

.list_inline li:not(:last-child)::after {
	content: "---";
	letter-spacing: -2px;
	opacity: .5;
	padding: 0 4px 0 6px;
	position: relative;
	top: -1px;
}

.toplist {
	list-style: disc;
	padding-left: 1.5rem;
	margin: 0 0 10px 5px;
	margin-bottom: 20px;
}

.toplist li {
	margin-bottom: 10px;
}

/* シンプルページのリスト　センター寄せ */
.content>.list_inline:first-child {
	text-align: center;
	margin-bottom: 30px;
}

section>.content>.list_inline:first-child li {
	display: inline-block;
}

/* リスト　バナーリンク */
.list_img {
	margin-bottom: 20px;
}

.list_img li {
	display: inline-block;
	margin: 4px 2px;
}

.list_img a {
	border-bottom: none;
}

/* リスト　縦並び */
.list_block {
	margin-bottom: 20px;
}

.list_block dt {
	display: table;
}

.list_block dd {
	padding: 12px 12px 15px 15px;
}

.list_block dd:last-of-type {
	padding-bottom: initial;
}

.list_block dd>span {
	opacity: .8;
	font-size: .9em;
}

/* グリッドリスト */
.list {
	display: grid;
	grid-template-columns: auto 1fr;
	margin-bottom: 20px;
}

.list dt {
	background: var(--sub-color);
	color: var(--base-color);
	text-align: center;
	padding: 0 6px;
	margin-bottom: 10px;
}

.list dd {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

.list dd::before {
	content: "";
	flex-grow: 1;
	border-top: 1px solid;
	opacity: .2;
	margin: 0 15px;
}

.list dd a {
	text-decoration: initial;
}

/* 画像コンテナー */
.img_container {
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	gap: 40px 0;
	margin-bottom: 20px;
}

.img_container_inner:nth-of-type(even) {
	width: calc(100% - 115px);
}

.img_container_inner>img {
	width: 100px;
	height: 100px;
	object-fit: cover;
	object-position: center;
	outline: solid 1px var(--sub-color);
	outline-offset: 0px;
	border: 4px solid var(--base-color);

}

.img_container_inner:nth-of-type(even) .synopsis {
	font-size: .9em;
	background: var(--sub-2-color);
	display: block;
	padding: 15px;
	outline: solid 1px var(--white);
	outline-offset: -7px;
}

.img_container_inner:nth-of-type(odd) {
	position: relative;
	width: auto;
	display: flex;
	margin-right: 13px;
	padding: initial;
}

.img_container_inner:nth-of-type(odd)::before, .img_container_inner:nth-of-type(odd)::after,
.bg::before,
.bg::after {
	content: "";
	display: block;
	position: absolute;
	border: 30px solid transparent;
	z-index: 1;
}

.img_container_inner:nth-of-type(odd)::before {
	border-top: 35px solid var(--base-2-color);
	top: -42px;
	right: -42px;
	box-shadow: 0 -6px 6px -8px var(--black);
	transform: rotate(-135deg);
}

.img_container_inner:nth-of-type(odd)::after {
	border-bottom: 35px solid var(--base-2-color);
	bottom: -42px;
	left: -42px;
	box-shadow: 0 6px 6px -8px var(--black);
	transform: rotate(-135deg);
}

.bg:nth-of-type(odd)::before {
	border-top: 35px solid var(--base-color);
}

.bg:nth-of-type(odd)::after {
	border-bottom: 35px solid var(--base-color);
}

/* 画像コンテナー内のリンクリスト　レイアウト */
.img_container_inner>.list_block {
	list-style: none;
	text-align: center;
	margin-bottom: 8px;
}

.img_container_inner>.list_block::before {
	content: attr(data-text);
	opacity: .6;
	line-height: 1;
	margin-bottom: 6px;
	font-size: 1em;
	display: block;
}

.img_container_inner:nth-of-type(even)>span>ul {
	margin-bottom: 10px;
}

/* 名前変換 + フォーム */
.name_change {
	text-align: center;
	margin: 0 auto;
}

.name_change input[type] {
	width: 140px;
	transition: .4s;
}

.name_change input[type="submit"], .name_change input[type="reset"] {
	width: 70px;
}

.name_change input[type="submit"]:hover, .name_change input[type="reset"]:hover {
	background: var(--sub-color);
	color: var(--white);
	transition: .4s;
	cursor: pointer;
}

.name_change input[type]:focus, input[type]:focus, textarea:focus, select:focus {
	background: var(--base-color);
	box-shadow: inset 0 0 1px var(--main-color);
	color: var(--main-color);
}

input::placeholder, textarea::placeholder {
	color: var(--sub-color);

}

input:focus::placeholder, textarea:focus::placeholder {
	color: transparent;
	transition: .4s;
}

form {
	margin: 0 auto;
	width: min(100%, 550px);
}

form p {
	margin-bottom: 10px;
}

input[type], textarea, button, select {
	font-family: inherit;
	font-size: inherit;
	height: initial;
	line-height: 1.7;
	letter-spacing: 1.5px;
	margin-bottom: 15px;
	color: var(--main-color);
	padding: 5px 6px;
	appearance: none;
	border: none;
	border-radius: 0;
	font-weight: normal;
	box-shadow: inset 0 0 1px rgba(223, 223, 223, 0.4);
	background: var(--sub-2-color);
	-webkit-transition: all .5s;
	transition: all .5s;
}

input[type].mail {
	width: 100%;
}

.comment {
	height: 85px;
	width: 100%;
	vertical-align: bottom;
}

form input[type="submit"].btn, input[type="reset"].btn {
	text-transform: capitalize;
	cursor: pointer;
}

.btn {
	width: 49%;
	text-transform: capitalize;
}

.btn:hover {
	background: var(--sub-color);
	color: var(--white);
	transition: .4s;
}

select {
	width: 100%;
	height: 33px;
	-webkit-appearance: menulist;
	padding: 0 6px;
	cursor: pointer;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: inherit;
}

option {
	background: var(--sub-2-color);
	color: var(--main-color);
}

option[selected][disabled] {
	display: none;
	color: var(--main-color);
	background: var(--sub-2-color);
	box-shadow: inset 0 0 1px var(--main-color);
}

.footer {
	text-align: center;
	padding-top: 50px;
}

.footer li {

	opacity: .7;
}

.footer a {
	padding: 0 5px;
}

.none {
	display: none;
}

@keyframes slide_1 {
	0% {
		top: 0%;
		opacity: 1;
	}

	60% {
		opacity: .8;
	}

	100% {
		opacity: 0;
		top: 100%;
	}
}

@keyframes slide_2 {
	0% {
		top: 0;
		opacity: 1;
	}

	40% {
		opacity: .9;
	}

	100% {
		opacity: 0;
		top: -100%;
	}
}

@keyframes fade {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

@keyframes scale {
	0% {
		opacity: 0;
		transform: scale(0.7, 0.7);
	}

	100% {
		opacity: 1;
		transform: scale(1, 1);
	}
}

@keyframes move {
	0% {
		transform: scale(1, 0);
		transform-origin: 0 0;
	}

	50% {
		transform: scale(1, 1);
		transform-origin: 0 0;
	}

	50.1% {
		transform: scale(1, 1);
		transform-origin: 0 100%;
	}

	100% {
		transform: scale(1, 0);
		transform-origin: 0 100%;
	}
}

@media screen and (max-width:912px) {
	body, .menu_list, .nav_btn {
		font-size: 1.5rem;
	}

	.rl {
		writing-mode: horizontal-tb;
	}

	.sub_title {
		height: initial;
		color: var(--white);
		position: absolute;
		transform: translate(-50%, -38%);
		left: 50%;
		top: 10%;
		z-index: 3;
	}

	.sub_title::before {
		background: var(--white);
		margin-top: 10px;
		height: 40px;
		width: 100%;
	}

	header {
		position: relative;
		top: 0;
	}

	.head_outer {
		padding: 0 10px;
		flex-direction: column;
		width: 100%;
		height: 93vh;
		gap: 20px;
	}

	.head_inner:nth-of-type(1), .head_inner:nth-of-type(3) {
		flex-basis: 50%;
	}

	.head_inner:nth-of-type(2) {
		width: 70%;
		background: var(--main-color);
		box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.7);
		height: 25%;
		outline-offset: -7px;
	}

	.head_inner:nth-of-type(3) {
		justify-content: center;
		align-items: center;
	}

	.head_inner:nth-of-type(3)>ul {
		margin: 30px 0 0;
	}

	.scroll_link {
		height: 40px;
		z-index: 2;
	}

	.scroll_link::after {
		content: "";
		height: 40px;
		z-index: 2;
	}

	.menu_trigger {
		position: fixed;
		width: 35px;
		height: 35px;
		right: 15px;
		bottom: 15px;
		cursor: pointer;
		z-index: 300;
	}

	.menu_trigger::before {
		content: "MENU";
		visibility: visible;
		opacity: 1;
		position: absolute;
		font-size: 1rem;
		white-space: nowrap;
		display: block;
		top: -22px;
		left: -1px;
		text-shadow: var(--shadow);
		transition: all 0.5s;
	}

	.open .menu_trigger::before {
		content: "CLOSE";
		color: var(--white);
		left: -2px;
		text-shadow: none;
		transition: all 0.5s;
	}

	.menu_trigger span {
		position: relative;
		display: block;
		right: 3px;
		top: 0px;
		height: 2px;
		border-radius: 2px;
		margin-bottom: 8px;
	}

	.menu_trigger span {
		position: absolute;
		width: 35px;
		height: 1px;
		border-radius: 2px;
		right: 0;
		background-color: var(--black);
		box-shadow: var(--shadow);
		transition: all 0.4s;
	}

	.menu_trigger span:nth-child(1) {
		width: 35px;
	}

	.menu_trigger span:nth-child(2) {
		top: 8px;
		width: 23px;
	}

	.open .menu_trigger>span {
		background: #fff;
		box-shadow: none;
	}

	.open .menu_trigger span:nth-child(1) {
		transform: rotate(45deg);
		top: 10px;
	}

	.open .menu_trigger span:nth-child(2) {
		transform: rotate(-45deg);
		top: 10px;
		width: 35px;
	}

	.nav {
		position: fixed;
		right: -100%;
		top: 0;
		width: 70%;
		height: 100%;
		display: flex;
		align-items: center;
		background-color: #2c2c2c;
		transition: all 0.5s;
		z-index: 200;
		overflow-y: auto;
		overflow-x: hidden;
	}

	.open .nav {
		right: 0;
		box-shadow: -1px 0px 8px rgba(0, 0, 0, 0.4);
	}

	.menu {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
		height: 80%;
		padding: 30px 15px 30px 40px;
	}

	.menu_list {
		font-size: 1.5rem;
		flex: initial;
		flex-direction: column;
		justify-content: initial;
		height: fit-content;
		width: 100%;
		padding-bottom: 15px;
	}

	.menu_list>.sub_menu li {
		padding: 0;
		margin-bottom: 10px;
	}

	.menu_list a {
		color: var(--white);
		justify-content: start;
		width: 100%;
		padding: 0 15px 0 0;
	}

	.nav_btn {
		color: var(--white);
		pointer-events: none;
		position: relative;
		align-items: center;
		justify-content: start;
		padding-bottom: 15px;
		height: initial;
	}

	.sub_menu {
		visibility: initial;
		opacity: 1;
		background: none;
		bottom: initial;
		margin: 0 0 0 15px;
		padding: 0;
		position: relative;
		box-shadow: initial;
		line-height: 1.9;
		border-left: 1px solid rgba(255, 255, 255, 0.4);
		z-index: auto;
	}

	.sub_menu li a {
		padding-left: 15px;
	}

	.menu_list:hover .sub_menu {
		transition: initial;
		visibility: visible;
		opacity: 1;
		transform: initial;
	}

	.menu_list>.sub_menu li a:hover {
		background: var(--sub-color);
		color: var(--white);
	}

	.overlay {
		position: fixed;
		left: 0;
		top: 0;
		width: 100vw;
		height: 100vh;
		z-index: 5;
		background: var(--black);
		backdrop-filter: blar(10px);
		opacity: 0;
		visibility: hidden;
		transition: all 0.5s;
		cursor: pointer;
		z-index: 100;
	}

	.open .overlay {
		opacity: 0.4;
		visibility: visible;
	}

	main {
		padding-bottom: 10px;
	}

	.inner {
		align-items: center;
	}

	.inner>.content>img {
		width: 160px;
		height: 160px;
		position: relative;
	}

	.footer {
		padding: 70px 0 0;
	}
}

@media screen and (max-width: 650px) {
	*:not(b, strong, .bold) {
		font-weight: 300 !important;
	}

	body, .menu_list, .nav_btn {
		font-size: 1.2rem;
	}

	h2 {
		padding: 50px 0;
	}

	.sub_title {
		font-size: inherit;
	}

	.sub_title::before {
		height: 30px;
		width: 100%;
	}

	.notice_inner dt::after {
		top: 1.2rem;
	}

	.head_inner:nth-of-type(2) {
		width: min(87%, 400px)
	}

	.head_inner:nth-of-type(1)>span, .head_inner:nth-of-type(3)>span {
		display: none;
	}

	.menu {
		padding: 20px 0 30px 20px;
	}

	.menu_list {
		padding: 0 0 15px 0px;
	}

	.inner>.content>img {
		width: 130px;
		height: 130px;
	}

	.inner>.content:first-of-type::after {
		content: "";
		top: 7px;
		left: 7px;
		right: 7px;
		bottom: 7px;
		width: 116px;
		height: 116px;
	}

	.img_container_inner>img {
		width: 80px;
		height: 80px;
		border-width: 3px;
	}

	.img_container_inner:nth-of-type(even) {
		width: calc(100% - 95px);
	}
}

@media (orientation: landscape) and (max-width: 926px) {
	body {
		font-size: 1.3rem;
	}

	.sub_title::before {
		display: none;
	}

	.head_outer {
		flex-direction: row;
		padding: 0;
	}

	.head_inner:nth-of-type(2) {
		height: 190px;
		width: 350px;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	.head_inner:nth-of-type(3) {
		justify-content: end;
		align-items: baseline;
	}

	.head_inner:nth-of-type(3)>ul {
		max-width: 200px;
		text-align: right;
		margin-right: 10px;
	}

	.head_inner:nth-of-type(3)>ul li {
		display: block;
	}

	.menu {
		display: block;
		padding: 10px 40px;
		height: 100%;
	}

	.inner>.content>img {
		width: 130px;
		height: 130px;
	}

	.inner>.content:first-of-type::after {
		content: "";
		top: 7px;
		left: 7px;
		right: 7px;
		bottom: 7px;
		width: 116px;
		height: 116px;
	}

	/* safari */
	.footer, .menu {
		padding-bottom: calc(env(safe-area-inset-bottom) + .1rem);
	}

	.head_inner:nth-of-type(3)>ul {
		padding-right: calc(env(safe-area-inset-right) + .1rem);
	}

	.menu_trigger {
		margin-right: calc(env(safe-area-inset-right) + .1rem);
	}
}