﻿@charset "utf-8";
/*common
----------------------------------------------------*/
/* 設定 */
* { /*游ゴシック*/
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	/*font-feature-settings: 'palt';*/
}
.en {
	font-family: 'Lato', sans-serif;
}
html {
	font-size: 62.5%;
	margin: 0;
	padding: 0;
}
body {
    -ms-content-zooming: none;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    color: #1f1f1f;
    line-height: 1.6;
    font-family: 'Noto Sans JP', sans-serif;
    font-feature-settings: "palt";
	overflow-x: hidden;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
a {
	text-decoration: none;
}
ul, li {
	list-style: none;
}
/* float */
.fLeft {
	float: left !important;
}
.fRight {
	float: right !important;
}
/* clearfix */
.cf:after {
	content: "";
	display: block;
	clear: both;
}
/* align */
.cen {
	text-align: center !important;
}
.left {
	text-align: left !important;
}
.right {
	text-align: right !important;
}
/* text-indent */
.indent {
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}
/* font-size */
/* margin,padding */
/* -------------------------------------------------
layout
----------------------------------------------------*/
#main {
	overflow: hidden;
}
.container {
	width: 90%;
	max-width: 1200px;
	margin: auto;
}
/* ===== header ===== */
header {
	background: #000;
	border-bottom: 1px solid #FFF;
	-webkit-background-size: 4px 4px;
	padding: 6px 10px 6px 10px;
	height: 43px;
	overflow: hidden !important;
}

.h-menu {
	position: absolute;
	top: 9px;
	right: 9px;
	z-index: 9999;
	width: 40px;
	height: 40px;
}
@media screen and (min-width:768px) {
	.h-menu {
		top: 18px;
		right: 18px;
		width: 50px;
		height: 50px;
	}
}

#g-nav-wrap-sp {
	position: absolute;
	top: 0;
	right: -100%;
	z-index: 1000;
	width: 70%;
	height: 100vh;
	background: #fff;
	border: 9px solid #F1CD98;
}
@media screen and (min-width:600px) {
	#g-nav-wrap-sp {
		width: 60%;
	}
}
@media screen and (min-width:769px) {
	#g-nav-wrap-sp {
		width: 40%;
		border: 18px solid #F1CD98;
	}
}

.g-nav-sp-in {
	padding: 70px 0 0;
}
.g-nav-sp {
	border-top: 1px solid #F1CD98;
}
.g-nav-sp a {
	position: relative;
	display: block;
	padding: 20px 20px;
	font-size: 1.5rem;
	font-weight: bold;
	border-bottom: 1px solid #F1CD98;
}
@media screen and (min-width:600px) {
	.g-nav-sp a {
		font-size: 2.0rem;
	}
}
@media screen and (min-width:768px) {
	.g-nav-sp a {
		font-size: 2.6rem;
	}
}
.g-nav-sp a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 19px;
	height: 6px;
	background: url("../img/menu_arr.png") no-repeat 0 0 / 100%;
	transform: translateY(-50%);
}
@media screen and (min-width:600px) {
	.g-nav-sp a:before {
		width: 38px;
		height: 11px;
	}
}


/* ====================================
index.html
====================================== */

header h2 {
    padding: 1px 0 1px 0px !important;
}

.footer {
	/* padding: 10.667vw 0 5.867vw; */
	padding: 0 0 5.867vw;
	background: #ffffff;
}
.f-announce {
	margin-bottom: 7.467vw;
}
.f-announce img {
	width: 100%;
}
.f-sns-wrap {
	margin: 4.8vw auto 0;
}
.f-sns-wrap__head {
	width: 33.6%;
	margin: 0 auto;
}
.f-sns-btn {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	width: 85.334%;
	margin: 2.133vw auto 0;
}
.f-sns-btn__line {
	width: 26.667vw;
}
.f-sns-btn__tw {
	width: 26.667vw;
}
.f-sns-btn__ig {
	width: 32vw;
}
.btn-top {
	max-width: 90.667%;
	margin: auto;
}
@media screen and (min-width: 751px) {
	.footer {
		/* padding: 80px 0 44px; */
		padding: 0 0 44px;
	}
	.f-announce {
		margin-bottom: 56px;
	}
	.f-sns-wrap {
		margin: 36px auto 0;
	}
	.f-sns-wrap__head {
		width: 252px;
	}
	.f-sns-btn {
		width: 640px;
		margin: 16px auto 0;
	}
	.f-sns-btn__line {
		width: 200px;
	}
	.f-sns-btn__tw {
		width: 200px;
	}
	.f-sns-btn__ig {
		width: 240px;
	}
	.btn-top {
		max-width: 680px;
		width: 90.667%;;
	}
}


/* ====================================
   common
====================================== */

button {
    margin: 0;
    padding: 0;
    border: 0;
	color: inherit;
    background: transparent;
}

.main {
	overflow: hidden;
}

#hakata {
	margin: 0 auto;
	width: 100%;
}
@media screen and (min-width: 751px) {
	#hakata {
		max-width: 750px;
	}
}

#hakata * {
	box-sizing: border-box;
}
#hakata hr {
	padding: 0;
	border: 0;
	margin: 0;
}

.g-pagetop {
	position: fixed;
	bottom: 86px;
	right: 4.5334vw;
	width: 15.7334vw;
	aspect-ratio: 1;
	z-index: var(--z-pagetop);
}
.g-pagetop.is-stopped {
	position: absolute;
	bottom: unset;
	top: 0;
	transform: translateY(-50%);
}
@media screen and (min-width: 750px) {
	.g-pagetop {
		bottom: 16px;
		right: 17px;
		width: 59px;
	}
}


/* ====================================
   college
====================================== */

:root {
	--radius-sm: .3125em;            
	--radius-md: .5em;            
	--radius-lg: 1em;

	--c-ffffff: 255 255 255;
	--c-000000: 0 0 0;
	--c-ec618a: 236, 97, 138;
	--c-f2ebe5: 242 235 229;
	--c-ffacbe: 255 172 190;
	--c-ffdac7: 255 218 199;
	--c-bc7ab6: 188 122 182;
	
	--font-regu: 400;
	--font-medi: 500;
	--font-bold: 700;


	--z-base: 0;
	--z-init: 1;
	--z-content: 2;
	--z-pagetop: 5;
	--z-nav: 10;
}

p, h1, h2, h3, h4, h5, h6 , dl, dt, dd {
	margin: 0;
	padding: 0;
}

fieldset {
	margin: unset;
	padding: unset;
	border: 0;
} 

.body.fixed {
    height: 100%;
    overflow: hidden;
}

.main {
	overflow-x: clip;
	overflow-y: initial;
}

.l-cosmetic {
	margin-inline: auto;
	max-width: 750px;
	width: 100%;
}

.sr-only {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	width: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
}

.l-nav {
	position: sticky;
    top: 0;
	padding: 2.9334vw 4vw 0 0;
	z-index: var(--z-nav);
	pointer-events: none;
}
.l-nav .p-nav-btn {
	--_border-radius: 100vmax;
	--_border-size: 0.4vw;

	position: relative;
	display: block;
	margin-inline: auto 0;
	padding: 2.6667vw 2.4vw;
	width: 10.667vw;
	aspect-ratio: 1;
	background-color: rgb(var(--c-ec618a));
	border-radius: var(--_border-radius);
	border: var(--_border-size) solid rgb(var(--c-ffffff));
	z-index: 2;
	pointer-events: all;
}
.l-nav .p-nav-btn__line {
	--_border-radius: 0.4vw;

	position: relative;
	display: block;
	width: 100%;
	height: 1.0667vw;
	background-color: rgb(var(--c-ffffff));
	border-radius: var(--_border-radius);
	transition: all 0.4s ease-out;
}
.l-nav .p-nav-btn__line::before, .l-nav .p-nav-btn__line::after {
	--_border-radius: 0.4vw;

	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 1.0667vw;
	background-color: rgb(var(--c-ffffff));
	border-radius: var(--_border-radius);
	transition: all 0.4s ease-out;
}
.l-nav .p-nav-btn__line::before {
	top: 1.7334vw;
}
.l-nav .p-nav-btn__line::after {
	top: -1.7334vw;
}
.l-nav .p-nav-btn[aria-expanded=true] .p-nav-btn__line {
	background: transparent;
}
.l-nav .p-nav-btn[aria-expanded=true] .p-nav-btn__line::before {
	top: 0;
	transform: rotate(45deg);
}
.l-nav .p-nav-btn[aria-expanded=true] .p-nav-btn__line::after {
	top: 0;
	transform: rotate(-45deg);
}
.l-nav .p-nav-menu {
	position: absolute;
	top: 0;
	width: 100%;
	padding-block: 10.6667vw 9.8667vw;
	max-height: 100dvh;
	transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
	overflow-y: auto;
	opacity: 0;
	visibility: hidden;
	background-color: rgb(var(--c-ffffff) / 1);
	z-index: var(--z-init);
	pointer-events: all;
	scrollbar-width: none;
}
.l-nav .p-nav-menu::-webkit-scrollbar {
	display: none;
}
.l-nav .p-nav-menu.show {
	opacity: 1;
	visibility: visible;
}
.l-nav .p-nav-menu__title {
	margin-inline: auto;
	width: 20%;
}
.l-nav .p-nav-menu-list {
	display: grid;
	gap: 4.2667vw;
}
.l-nav .p-nav-menu-list.menu__anchor {
	margin: 4.2667vw auto 0;
	width: 77.3334%;
}
.l-nav .p-nav-menu-list.menu__banner {
	margin: 3.6vw auto 0;
	width: 85.3334%;
}
.l-nav .p-nav-mask {
	position: fixed;
	inset: 0;
	background-color: rgb(var(--c-000000) / 0.5);
	transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
	opacity: 0;
	visibility: hidden;
	z-index: var(--z-base);
}
.l-nav .p-nav-mask.show {
	opacity: 1;
	visibility: visible;
}
@media screen and (min-width: 750px) {
	.l-nav {
		padding: 22px 30px 0 0;
	}
	.l-nav .p-nav-btn {
		--_border-size: 3px;
		padding: 20px 18px;
		width: 80px;
	}
	.l-nav .p-nav-btn__line {
		--_border-radius: 3px;
		height: 8px;
	}
	.l-nav .p-nav-btn__line::before, .l-nav .p-nav-btn__line::after {
		--_border-radius: 3px;
		height: 8px;
	}
	.l-nav .p-nav-btn__line::before {
		top: 13px;
	}
	.l-nav .p-nav-btn__line::after {
		top: -13px;
	}
	.l-nav .p-nav-menu {
		width: 750px;
		padding-block: 80px 74px;
	}
	.l-nav .p-nav-menu-list {
		gap: 32px;
	}
	.l-nav .p-nav-menu-list.menu__anchor {
		margin: 32px auto 0;
	}
	.l-nav .p-nav-menu-list.menu__banner {
		margin: 27px auto 0;
	}
}


.l-hero {
	position: relative;
	margin-top: -13.6vw;
}
@media screen and (min-width: 750px) {
	.l-hero {
		margin-top: -102px;
	}
}


.l-action {
	position: relative;
	padding-block: 5.3334vw;
	background: url(../img/action_illust_01.webp), url(../img/action_illust_02.webp);
	background-repeat: no-repeat, no-repeat;
	background-size: contain, contain;
	background-position: left top 11.2vw, left bottom 9.3334vw;
}
.l-action::before, .l-action::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	height: 5.3334vw;
	background-repeat: no-repeat;
	background-size: contain;
}
.l-action::before {
	top: -2px;
	background-image: url(../img/wave_up.webp);
}
.l-action::after {
	bottom: -2px;
	background-image: url(../img/wave_down.webp);
}
.l-action .p-action__title {
	padding-top: 2.9334vw;
	margin-inline: auto;
	width: 46.1334%;
}
.l-action .p-action__text {
	padding-top: 4.9334vw;
	margin-inline: auto;
}
@media screen and (min-width: 750px) {
	.l-action {
		padding-block: 40px;
		background-position: left top 84px, left bottom 70px;
	}
	.l-action::before, .l-action::after {
		height: 40px;
	}
	.l-action .p-action__title {
		padding-top: 22px;
	}
	.l-action .p-action__text {
		padding-top: 37px;
	}
}


.l-contents {
	padding-block: 7.2vw 8vw;
	background-color: rgb(var(--c-f2ebe5));
}
.l-contents .p-contents__title {
	margin-inline: auto;
	width: 20%;
}
.l-contents .p-contents-list {
	display: grid;
	gap: 4.2667vw;
}
.l-contents .p-contents-list.menu__anchor {
	margin: 4.2667vw auto 0;
	width: 77.3334%;
}
.l-contents .p-contents-list.menu__banner {
	margin: 3.6vw auto 0;
	width: 85.3334%;
}
@media screen and (min-width: 750px) {
	.l-contents {
		padding-block: 54px 60px;
	}
	.l-contents .p-contents-list {
		gap: 32px;
	}
	.l-contents .p-contents-list.menu__anchor {
		margin: 32px auto 0;
	}
	.l-contents .p-contents-list.menu__banner {
		margin: 27px auto 0;
	}
}


.l-qa {
	padding-block: 7.4667vw 10.4vw;
	background: url(../img/qa_illust_01.webp);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top 6.1334vw;
}
.l-qa .p-qa__title {

}
.l-qa .p-qa-accordions {
	display: grid;
	gap: 3.7334vw;
	margin: 6.667vw auto 0;
	width: 77.6%;
}
.l-qa .p-qa-accordion .p-qa-accordion__head {
	font-size: 0;
}
.l-qa .p-qa-accordion .p-qa-accordion__head span {
	position: relative;
	display: block;
}
.l-qa .p-qa-accordion .p-qa-accordion__head span::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 4.811%;
	width: 2.9334vw;
	height: 2.5334vw;
	background-color: rgb(var(--c-ffffff));
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	transition: transform 0.3s ease-in-out;
}
.l-qa .p-qa-accordion .p-qa-accordion__head button[aria-expanded="true"] span::after {
	transform: translateY(-50%) rotate(180deg);
}
.l-qa .p-qa-accordion .p-qa-accordion__content {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.6s ease-in-out;
}
.l-qa .p-qa-accordion .p-qa-accordion__head:has(button[aria-expanded="true"]) + .p-qa-accordion__content {
	max-height: 2000px;
}
@media screen and (min-width: 750px) {
	.l-qa {
		padding-block: 56px 78px;
		background: url(../img/qa_illust_01.webp);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: left top 46px;
	}
	.l-qa .p-qa-accordions {
		gap: 28px;
		margin-top: 50px;
	}
	.l-qa .p-qa-accordion .p-qa-accordion__head span::after {
		width: 22px;
		height: 19px;
	}
}


.l-experience {
	padding-block: 13.3334vw 0;
	background-color: rgb(var(--c-ffacbe));
}
.l-experience .p-experience-list {
	display: grid;
	grid-template-columns: repeat(2, 48.4321%);
	justify-content: space-between;
	margin: 2.6667vw auto 0;
	width: 76.5334%;
}
.l-experience .p-experience-reserved {
	position: relative;
	margin-top: 8.2667vw;
	padding-block: 3.0667vw 8vw;
	background: url(../img/experience_reserved_illust_01.webp);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top 1.7334vw;
}
.l-experience .p-experience-non-reserved {
	position: relative;
	padding-block: 7.2vw 8vw;
	background: rgb(var(--c-ffdac7)) url(../img/experience_non_reserved_illust_01.webp);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top 4.5334vw;
}
.l-experience .p-experience-non-reserved .p-experience-non-reserved-accordion {
    position: relative;
}
.l-experience .p-experience-non-reserved .p-experience-non-reserved-accordion .p-experience-non-reserved-accordion__head {
    position: absolute;
	top: calc(100% - 12.8vw + 1px);
}
.l-experience .p-experience-non-reserved .p-experience-non-reserved-accordion__content {
	max-height: calc(73.3334vw + 20vw);
	padding-bottom: 20vw;
	overflow: hidden;
	transition: max-height 0.6s ease-in-out, padding-bottom 0.6s ease-in-out;
}
.l-experience .p-experience-non-reserved .p-experience-non-reserved-accordion__head:has(button[aria-expanded="true"]) + .p-experience-non-reserved-accordion__content {
	max-height: 10000px;
}
.l-experience .p-experience-non-reserved .p-experience-non-reserved-list {
	display: grid;
	gap: 8vw;
	margin-inline: auto;
	width: 86.8%;
}
@media screen and (min-width: 750px) {
	.l-experience {
		padding-block: 100px 0;
	}
	.l-experience .p-experience-list {
		grid-template-columns: repeat(2, 278px);
		margin-top: 20px;
		width: 574px;
	}
	.l-experience .p-experience-reserved {
		margin-top: 62px;
		padding-block: 23px 60px;
		background: url(../img/experience_reserved_illust_01.webp);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: left top 13px;
	}
	.l-experience .p-experience-non-reserved {
		padding-block: 54px 60px;
		background: rgb(var(--c-ffdac7)) url(../img/experience_non_reserved_illust_01.webp);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: left top 34px;
	}
	.l-experience .p-experience-non-reserved .p-experience-non-reserved-accordion .p-experience-non-reserved-accordion__head {
		top: calc(100% - 96px + 1px);
	}
	.l-experience .p-experience-non-reserved .p-experience-non-reserved-accordion__content {
		max-height: calc(550px + 150px);
		padding-bottom: 150px;
	}
	.l-experience .p-experience-non-reserved .p-experience-non-reserved-list {
		gap: 60px;
	}
}


.l-popup {
	position: relative;
	padding-block: 19.0667vw 0;
	background: rgb(var(--c-ffacbe)) url(../img/popup_illust_01.webp);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top 26.6667vw;
}
.l-popup::before {
	content: "";
	position: absolute;
	top: -2px;
	left: 0;
	right: 0;
	height: 5.3334vw;
	background-image: url(../img/wave_middle.webp);
	background-repeat: no-repeat;
	background-size: contain;
}
.l-popup .p-popup-list {
	padding-top: 13.8667vw;
	background: url(../img/popup_dot.webp);
	background-repeat: no-repeat;
	background-size: contain;
}
.l-popup .p-popup-list li {
	padding-bottom: 13.8667vw;
	background: url(../img/popup_dot.webp);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center bottom;
}
.l-popup .p-popup-list .p-popup-article .p-popup-article__btn {
	margin-inline: auto;
	width: 77.6%;
}
@media screen and (min-width: 750px) {
	.l-popup {
		padding-block: 143px 0;
		background: rgb(var(--c-ffacbe)) url(../img/popup_illust_01.webp);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: left top 200px;
	}
	.l-popup::before {
		height: 40px;
	}
	.l-popup .p-popup-list {
		padding-top: 104px;
	}
	.l-popup .p-popup-list li {
		padding-bottom: 104px;
	}
}


.l-trend {
	position: relative;
	padding-block: 17.3334vw 0;
	background: rgb(var(--c-f2ebe5)) url(../img/trend_curve.webp);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top;
}
.l-trend::before {
	content: "";
	position: absolute;
	top: 30.9334vw;
	left: 0;
	right: 0;
	height: 17.3334vw;
	background-image: url(../img/trend_illust_01.webp);
	background-repeat: no-repeat;
	background-size: contain;
}
.l-trend .p-trend-used .p-trend-used-slide {
	padding-block: 4vw 14.9334vw;
	overflow: hidden;
}
@media screen and (min-width: 750px) {
	.l-trend {
		padding-block: 130px 0;
		background: rgb(var(--c-f2ebe5)) url(../img/trend_curve.webp);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: left top;
	}
	.l-trend::before {
		content: "";
		position: absolute;
		top: 232px;
		left: 0;
		right: 0;
		height: 130px;
		background-image: url(../img/trend_illust_01.webp);
		background-repeat: no-repeat;
		background-size: contain;
	}
	.l-trend .p-trend-used .p-trend-used-slide {
		padding-block: 30px 112px;
	}
}

.l-new {
	position: relative;
	padding-block: 19.0667vw 0;
	background: rgb(var(--c-ffdac7)) url(../img/new_illust_01.webp);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top 20.2667vw;
}
.l-new::before {
	content: "";
	position: absolute;
	top: -2px;
	left: 0;
	right: 0;
	height: 5.3334vw;
	background-image: url(../img/wave_end.webp);
	background-repeat: no-repeat;
	background-size: contain;
}
.l-new .p-new-list {
	margin: 4.5334vw auto 0;
	padding-block: 22.2667vw 14.8vw;
	width: 99.6%;
	background: url(../img/new_list_background.webp);
	background-repeat: no-repeat;
	background-size: 100% 100%;
}
.l-new .p-new-list .p-new-article {
	position: relative;
	margin-inline: auto;
	width: 99.8662%;
}
.l-new .p-new-list .p-new-article:nth-child(2) {
	margin-top: 6.26667vw;
	padding-top: 8.8vw;
}
.l-new .p-new-list .p-new-article:nth-child(3) {
	margin-top: 7.3334vw; 
	padding-top: 8.8vw;
}
.l-new .p-new-list .p-new-article:nth-child(4) {
	margin-top: 7.8667vw;
	padding-top: 8.9334vw;
}
.l-new .p-new-list .p-new-article .p-new-item {
	display: grid;
	grid-template-columns: repeat(2, minmax(50%, 1fr));
}
.l-new .p-new-list .p-new-article .p-new-article__btn {
	margin-inline: auto;
	width: 78.0161%;
}
.l-new .p-new-list .p-new-article + .p-new-article::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 2.6667vw;
	background-image: url(../img/new_article_dot.webp);
	background-repeat: no-repeat;
	background-size: contain;
}
.l-new .p-new-list .p-new-staff {
	margin: 11.6vw auto 0;
	width: 81.7695%;
}
@media screen and (min-width: 750px) {
	.l-new {
		padding-block: 143px 0;
		background: rgb(var(--c-ffdac7)) url(../img/new_illust_01.webp);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: left top 152px;
	}
	.l-new::before {
		height: 40px;
	}
	.l-new .p-new-list {
		margin: 34px auto 0;
		padding-block: 167px 111px;
	}
	.l-new .p-new-list .p-new-article:nth-child(2) {
		margin-top: 47px;
		padding-top: 66px;
	}
	.l-new .p-new-list .p-new-article:nth-child(3) {
		margin-top: 55px; 
		padding-top: 66px;
	}
	.l-new .p-new-list .p-new-article:nth-child(4) {
		margin-top: 59px;
		padding-top: 67px;
	}
	.l-new .p-new-list .p-new-article + .p-new-article::before {
		height: 20px;
	}
	.l-new .p-new-list .p-new-staff {
		margin: 87px auto 0;
	}
}


.l-float {
	padding-block: 9.6vw;
	background-color: rgb(var(--c-ffdac7));
}
.l-float .p-float__banner {
	position: fixed;
	bottom: 0;
	background-color: rgb(var(--c-ffffff));
	z-index: var(--z-content);
	opacity: 0;
  	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}
.l-float .p-float__banner.is-active {
	opacity: 1;
	visibility: visible;
}
.l-float .p-float__banner.is-stop {
	opacity: 1;
	visibility: visible;
	position: relative;
}
@media screen and (min-width: 750px) {
	.l-float {
		padding-block: 72px;
	}
}

.announce {
	margin: 0 auto;
	width: 89.0667%;
}
.announce__note {
	font-size: 2.9334vw;
	line-height: 1.8182;
	font-weight: var(--font-medi);
}
.announce__text {
	font-size: 2.9334vw;
	line-height: 1.8182;
	font-weight: var(--font-medi);
}
.announce__text:not(:first-child) {
	margin-top: 1lh;
}
@media screen and (min-width: 750px) {
	.announce__note {
		font-size: 22px;
	}
	.announce__text {
		font-size: 22px;
	}
}


.others {
	margin: 11.7334vw auto 0;
	width: 85.8667%;
}
.others-list {
	display: grid;
	row-gap: 6.667vw;
	text-align: center;
}
@media screen and (min-width: 750px) {
	.others {
		margin: 88px auto 0;
	}
	.others-list {
		row-gap: 50px;
	}
}


.l-instagram {
	padding-block: 13.8667vw;
}
.l-instagram .p-instagram__title {
	margin: 0 auto;
}
.l-instagram .p-instagram-list {
	margin: 7.6vw auto 0;
	display: grid;
	width: 86.4%;
}
.l-instagram .p-instagram-list li + li {
	padding-top: 8.8vw;
	background-image: url(../img/instagram_account_dot.webp);
	background-repeat: no-repeat;
	background-size: contain;
}
@media screen and (min-width: 750px) {
	.l-instagram {
		padding-block: 104px;
	}
	.l-instagram .p-instagram__title {
		margin: 0 auto;
	}
	.l-instagram .p-instagram-list {
		margin: 57px auto 0;
	}
	.l-instagram .p-instagram-list li + li {
		padding-top: 66px;
	}
}


.hash {
	position: relative;
}


.search-group {
	position: relative;
	padding-block: 7.4667vw 6.4vw;
	margin: 0 auto;
	width: 86.6667%;
	transform: translateY(1px);
	background-color: #ffffff;
}
.search-block {
	display: grid;
	row-gap: 4vw;
}
@media screen and (min-width: 750px) {
	.search-group {
		padding-block: 56px 48px;
	}
	.search-block {
		row-gap: 30px;
	}
}

/* 選択項目用 */
.select-price {
	margin-top: 4vw;
}
.select-date .checkbox-group,
.select-price .checkbox-group,
.select-category .checkbox-group {
	padding-inline: 4.6667vw;
}
.select-date .checkbox-group,
.select-price .checkbox-group,
.select-category .checkbox-group {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4vw;
}
.select-category .checkbox-group {
	grid-template-columns: repeat(2, minmax(25%, 1fr));
}
.select-date .checkbox-group div:not([class]),
.select-price .checkbox-group div:not([class]),
.select-category .checkbox-group div:not([class]) {
	display: grid;
	grid-template-columns: 16.6667% 1fr;
	align-items: center;
	column-gap: 5.556%;
	cursor: pointer;
}
.select-category .checkbox-group div:not([class]):last-child label {
	white-space: nowrap;
}
.select-date .checkbox-group input[type="checkbox"][id^="d-"],
.select-price .checkbox-group input[type="checkbox"][id^="p-"],
.select-category .checkbox-group input[type="checkbox"][id^="c-"] {
	--_border-size: 0.2667vw;
	width: 6.4vw;
	height: 6.4vw;
	border: var(--_border-size) solid #707070;
	border-radius: 0;
	background-color: rgb(var(--c-ffffff));
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	transition: background-image 0.2s;
	cursor: inherit;
	appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}
.select-date .checkbox-group input[type="checkbox"][id^="d-"]:focus-visible,
.select-price .checkbox-group input[type="checkbox"][id^="p-"]:focus-visible,
.select-category .checkbox-group input[type="checkbox"][id^="c-"]:focus-visible {
  outline: 2px solid blue;
  outline-offset: 2px;
}
.select-date .checkbox-group input[type="checkbox"][id^="d-"]:checked,
.select-price .checkbox-group input[type="checkbox"][id^="p-"]:checked,
.select-category .checkbox-group input[type="checkbox"][id^="c-"]:checked {
	background-image: url('../img/select_check.svg');
}
.select-date .checkbox-group label[for^="d-"] {
	font-size: 4.2667vw;
	line-height: 1.5;
	font-weight: var(--font-medi);
	cursor: inherit;
}
.select-price .checkbox-group label[for^="p-"] {
	font-size: 4vw;
	line-height: 1.5;
	font-weight: var(--font-medi);
	cursor: inherit;
}
.select-category .checkbox-group label[for^="c-"] {
	font-size: 4vw;
	line-height: 1.5;
	font-weight: var(--font-medi);
	cursor: inherit;
}
@media screen and (min-width: 750px) {
	.select-price {
		margin-top: 30px;
	}
	.select-date .checkbox-group,
	.select-price .checkbox-group,
	.select-category .checkbox-group {
		padding-inline: 35px;
		gap: 30px;
	}
	.select-date .checkbox-group input[type="checkbox"][id^="d-"],
	.select-price .checkbox-group input[type="checkbox"][id^="p-"],
	.select-category .checkbox-group input[type="checkbox"][id^="c-"] {
		--_border-size: 1px;
		width: 48px;
		height: 48px;
	}
	.select-date .checkbox-group label[for^="d-"],
	.select-price .checkbox-group label[for^="p-"],
	.select-category .checkbox-group label[for^="c-"] {
		font-size: 32px;
	}
}


/* 検索ボタン用 */
.search-btns {
	display: grid;
	row-gap: 4vw;
	margin: 7.4667vw auto 0;
	padding-inline: 4.6667vw;
}
.search-btns__note {
	margin: 0 auto;
	width: 95.3334%;
	font-size: 2.9333vw;
	line-height: 1.8182;
	font-weight: var(--font-medi);
}
.search-for {
	margin: 0 auto;
	width: 100%;
}
.search-clear {
	margin: 0 auto;
	width: 50.3449%;
}
.search-unnecessary {
	margin: 4.8vw auto 0;
	width: 78.9334%;
}
.search-results {
	margin: 1em 0 0;
}
.search-articles {
	padding-top: 2.9334%;
}
.search-articles .notfound {
	margin-bottom: 1em;
	font-size: 2.9333vw;
	line-height: 1.8182;
	font-weight: var(--font-medi);
	text-align: center;
}
@media screen and (min-width: 750px) {
	.search-btns {
		row-gap: 30px;
		margin: 56px auto 0;
		padding-inline: 35px;
	}
	.search-btns__note {
		font-size: 22px;
	}
	.search-unnecessary {
		margin: 36px auto;
	}
	.search-articles {
		padding-top: 22px;
	}
	.search-articles .notfound {
		font-size: 22px;
	}
}


/* 検索結果用 */
.o-article {
	margin-inline: auto;
	padding: 5.6vw 4.5334vw 5.3334vw;
	width: 86.6667%;
	background-color: rgb(var(--c-ffffff));
}
.o-article:not(:first-child) {
	margin-top: 8vw;
}
.o-article .o-inner {
	display: grid;
	grid-template-columns: 38.488% 1fr;
	gap: 5.4983%;
}
.o-images {
	margin: 0;
}
.o-images img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
.o-title {
	font-size: 3.7334vw;
	font-weight: var(--font-bold);
	color: #555555;
}
.o-status {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.6vw;
	margin-top: 2.1334vw;
}
.o-status:empty {
	display: none;
}
.o-price {
	display: inline-block;
}
.o-price.o-price__free {
	width: 13.2vw;
}
.o-price.o-price__paid {
	width: 13.2vw;
}
.o-category {
	display: inline-block;
}
.o-category.o-category__make {
	width: 23.8667vw;
}
.o-category.o-category__hair {
	width: 23.8667vw;
}
.o-category.o-category__skin {
	width: 19.0667vw;
}
.o-period {
	display: grid;
	grid-template-columns: auto 1fr;
	margin-top: 2.6667vw;
	font-size: 3.2vw;
	font-weight: var(--font-bold);
	color: #555555;
}
.o-period dt,
.o-period dd {
	font-weight: inherit;
}
.o-period + .o-place {
	margin-top: unset;
}
.o-place {
	display: grid;
	grid-template-columns: auto 1fr;
	margin-top: 2.1334vw;
	font-size: 3.2vw;
	font-weight: var(--font-bold);
	color: #555555;
}
.o-place dt,
.o-place dd {
	font-weight: inherit;
}
.o-btn {
	margin-top: 2.1334vw;
}
.o-btn a {
	width: 100%;
}
@media screen and (min-width: 750px) {
	.o-article {
		padding: 42px 34px 40px;
	}
	.o-article:not(:first-child) {
		margin-top: 60px;
	}
	.o-title {
		font-size: 32px;
	}
	.o-status {
		gap: 12px;
		margin-top: 16px;
	}
	.o-price.o-price__free {
		width: 99px;
	}
	.o-price.o-price__paid {
		width: 99px;
	}
	.o-category.o-category__make {
		width: 179px;
	}
	.o-category.o-category__hair {
		width: 179px;
	}
	.o-category.o-category__skin {
		width: 147px;
	}
	.o-period {
		margin-top: 20px;
		font-size: 26px;
	}
	.o-place {
		margin-top: 16px;
		font-size: 26px;
	}
	.o-btn {
		margin-top: 16px;
	}
}


/* slider用 */
.slider {
opacity: 0;
transition: opacity .3s linear;
}
.slider.slick-initialized{
	opacity: 1;
}
.slick-list {
	overflow: visible;
}
.slick-dots {
	margin-top: 6.4vw;
	font-size: 0;
	transform: translateY(50%);
}
.slick-dots li {
	margin: 0 1.0667vw;
	width: 3.7334vw;
	height: 3.7334vw;
}
.slick-dots li button {
	width: 3.7334vw;
	height: 3.7334vw;
	background-color: rgb(var(--c-ffffff));
}
.slick-dots li.slick-active button {
	background-color: rgb(var(--c-bc7ab6));
}
.slider-arrow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: absolute;
	bottom: 14.9334vw;
	left: 50%;
	transform: translate(-50%, 50%);
	width: 43.2%;
	pointer-events: none;
}
.slider-arrow .prev-arrow,
.slider-arrow .next-arrow {
	width: 8.642%;
	pointer-events: all;
}
.slider-arrow .next-arrow {
	transform: rotate(180deg);
}
.slider-item {
	position: relative;
	margin-right: 4.2667vw;
	width: 80.4vw;
}
.slider-item .tag {
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(-20.5608%, -20.5608%);
	width: 17.7447%;
}
@media screen and (min-width: 750px) {
	.slider-item {
		margin-right: 32px;
		width: 603px;
	}
	.slider-item .tag {
		transform: translate(-22px, -22px);
	}
	.slick-dots {
		margin-top: 48px;
	}
	.slick-dots li {
		margin: 0 8px;
		width: 28px;
		height: 28px;
	}
	.slick-dots li button {
		width: 28px;
		height: 28px;
	}
	.slider-arrow {
		bottom: 112px;
	}
}


/* modal用 */
.modal-overlay {
	display: none;
	justify-content: center;
	align-items: center;
	position: fixed;
	inset: 0;
	background-color: rgba(0 0 0 / 0.7);
	z-index: 1000;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.4s ease-in, visibility 0s 0.4s ease-in;
}
.modal-overlay[aria-hidden="false"] {
	display: flex;
	opacity: 1;
	visibility: visible;
	transition: opacity 0.4s ease, visibility 0s 0s;
}
.modal-content {
	position: relative;
	margin: auto;
	max-width: 750px;
	height: calc(100% - 21.3334vw);
	overflow-y: auto;
	opacity: 0;
	transition: opacity 0.4s ease-out;
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.modal-content::-webkit-scrollbar{
	display:none;
}
.modal-overlay[aria-hidden="false"] .modal-content {
	opacity: 1;
}
.modal-articles {
	background-color: #FFFAF0;
}
.modal-content .modal-persona {
	
}
.modal-content .modal-persona .modal-persona__btn {
	margin: -24.5334vw auto 0;
	width: 74.4%;
}
.modal-content .modal-topics {
	margin-top: 4.4vw;
}
.modal-content .modal-topics .modal-topics__btn {
	margin: -27.6vw auto 6.6667vw; 
	width: 74.6667%;
}
.modal-content .modal-spoint .modal-spoint-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.modal-content .modal-spoint .modal-spoint__btn {
	position: relative;
	margin: 0 auto -20.2667vw; 
	width: 74.4%;
	z-index: 1;
}
@media screen and (min-width: 750px) {
	.modal-content {
		height: calc(100% - 160px);
	}
	.modal-content .modal-persona .modal-persona__btn {
		margin: -184px auto 0;
	}
	.modal-content .modal-topics {
		margin-top: 33px;
	}
	.modal-content .modal-topics .modal-topics__btn {
		margin: -207px auto 50px;
	}
	.modal-content .modal-spoint .modal-spoint__btn {
		margin: 0 auto -152px;
	}
}
