@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;800&display=swap');
/* font-family: 'Shippori Mincho', serif; */
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@400;500&display=swap');
/* font-family: 'Zen Kaku Gothic Antique', sans-serif; */


/* reset-------------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-family: 'Shippori Mincho', serif;
	font-size: 62.5%;
	letter-spacing: 0.2rem;
	font-weight: 400;
	vertical-align: baseline;
	background: transparent;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
	overflow: visible
}
ul, dl {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	text-decoration: none;
	color :#000000;
	outline: none;
	cursor: pointer;
}
a:hover {
	opacity: 0.7;
}
a:focus {
	outline: none;
}
a[href^="tel:"] {
	color: #FFFFFF;
}
ins {
	text-decoration: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
input, select {
	vertical-align: middle;
}
p{
	font-size: 1.2rem;
	line-height: 2.4rem;
}
img{max-width: 100%;}
body{
	min-height: 100vh;
	/* mobile viewport bug fix */
	min-height: -webkit-fill-available;
}
html {
	height: -webkit-fill-available;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="reset"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="reset"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="reset"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}
.select_wrap{position: relative;}
select{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	outline: none;
	border-radius: 0;
	background: transparent;
	width: 100%;
	padding: 0.5rem;
	position: relative;
	z-index: 0;
}
.select_wrap::after {
	content: "▼";
	position: absolute;
	top: 1rem;
	right: 0.2rem;
	display: block;
	width: 2rem;
	height: 2rem;
	color: #BEBEB4;
	font-size: 1rem;
	z-index: 1;
	pointer-events: none;
}
button,
input[type="submit"],
input[type="reset"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: none;
	outline: none;
	background: transparent;
}
input[type="radio"] {
	display: none;
}


/*common*/
.sp_only{display: block;}
.pc_only{display: none!important;}
.tab_only{display: none!important;}
.normal{font-weight: 400!important;}
.bold{font-weight: 500!important;}
.bg_blue{
	background: #3e5a78;
}
.bg_darkblue{
	background: #193049;
}
.bg_darkblue *{
	color: #FFFFFF;
}
section{
	margin: 0 auto;
	padding: 3rem 1rem 15rem;
	/* max-width: 148rem; */
}
.section_head{
	margin: 0 5% 7rem;
}


main{padding-top: 16rem!important;}
main#top_page{padding-top: 0rem!important;}

p,a{font-size: 1.2rem;}
h2{
	font-size: 2.6rem;
	line-height: 2.6rem;
	letter-spacing: 0.5rem;
	margin: 0 0 3rem;
	/* font-weight: 500; */
}
#history .bgimg_on_inner h2{
	font-size: 2rem;
	line-height: 3rem;
}
h2 span{
	font-size: 1.2rem;
	display: block;
	/* margin: 1rem auto; */
}
#history .bgimg_on_inner{
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
}
#history .bgimg_on_inner>h2{
	text-align: right;
}
#history .bgimg_on_inner>div h2{
	padding-top: 3rem;
}

.list_dot{list-style-type: disc!important;}
.list_num{list-style-type: decimal;}
.list_style_none{ list-style-type: none!important;}

.w100{width: 100%;}
.ta_center{
	text-align: center;
}

.col2,
.col3{
	display: flex;
	flex-flow: row nowrap;
}
.col2>*{
	width: 50%;
}
.col3>*{
	width: calc(100% / 3);
}

.bgimg_on{
	margin: 0 auto;
	padding: 0;
	height: 100vh;
	min-height: 56rem;
	max-height: 120vw;
	max-width: unset;
	position: relative;
	overflow: hidden;
}
section.bgimg_on a{
	display: block;
	width: 100%;
	height: 100%;
}
.bgimg_on .bg_img{
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -1;
}
.bgimg_on_inner{
	padding: 1rem;
}
#history .bgimg_on_inner{
	width: calc(100% - 2rem);
}

.bgimg_on_inner h2,
#retouch h2{
	font-size: 1.4rem;
	line-height: 1.4rem;
	letter-spacing: 0;
}
.bgimg_on_inner p{
	font-size: 1.2rem;
	margin-bottom: 2rem;
}
.bgimg_on_inner p:last-child,
.bgimg_on_inner h2:last-child{
	margin-bottom: 0;
}

/* ヘッダー */
header.top_header h1,
header.header.active h1,
header.header h1{
	display: block;
	position: fixed;
	top: 1rem;
	left: 1rem;
	width: fit-content;
	height: 5rem;
	z-index: 10000;
}
header.header h1{
	/* display: none; */
}
header h1 img{
	display: block;
	width: auto;
	height: 100%;
	object-fit: contain;
}
header.blue h1 a>img:last-child{
	display: none;
}
header.blue h1 a>img:first-child{
	display: block;
}
.main_nav{
	display: none;
}
.navToggle{
	display: block;
	position: fixed;
	top: 2rem;
	right: 1rem;
	width: 2rem;
	height: 1.3rem;
	z-index: 10000;
}
.navToggle span{
	background: #FFFFFF;
	display: block;
	width: 100%;
	height: 0.1rem;
	position: absolute;
	left: 0;
	transition: all 300ms 0s ease;
	/* box-shadow: 0.1rem 0.1rem 0.3rem 0px #bbbbbb; */
}
header.blue .navToggle span{
	background: #193049;
}
header.blue.active .navToggle span{
	background: #FFFFFF;
}
.navToggle span:first-child{
	top: 0;
}
.navToggle span:nth-child(2){
	top: 0.6rem;
}
.navToggle span:last-child{
	bottom: 0;
}

/* active時 */
header.blue.active h1 a>img:first-child{
	display: none;
}
header.blue.active h1 a>img:last-child{
	display: block;
}
.main_nav.active{
	position: fixed;
	width: calc(100% - 4rem);
	height: calc(100% - 10rem);
	padding: 9rem 2rem 1rem;
	top: 0;
	left: 0;
	z-index: 9999;
	background: #193049;
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	align-items: flex-start;
}
.main_nav.active *{color: #FFFFFF;}
.main_nav.active .main_nav_link_wrap{
	width: fit-content;
	margin: auto;
}
.main_nav.active .link_wrap{
	height: 100%;
}
.main_nav.active li{
	padding: 0 0 0.5rem;
}
.main_nav.active li:last-child{
	padding: 0;
}
.main_nav.active li,
.main_nav.active li a{
	font-size: 1rem;
	line-height: 2rem;
	display: block;
	width: fit-content;
}
.main_nav.active li a{
	height: 100%;
}

.main_nav.active li span{
	display: inline-block;
	margin-left: 1rem;
	/* padding-left: 1rem; */
	font-size: 1rem;
	/* border-left: 0.2rem solid #FFFFFF; */
	position: relative;
}
.main_nav.active li span::before{
	content: "";
	display: inline-block;
	width: 0.1rem;
	height: 1rem;
	margin-right: 1rem;
	background: #FFFFFF;
}
.main_nav.active .sns_wrap{
	position: fixed;
	bottom: 0.5rem;
	right: 2rem;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-end;
	align-items: flex-end;
	width: 3rem;
}
.main_nav.active ul.header_top_link,
.main_nav.active ul.header_page_link,
.main_nav.active ul.company{
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	align-items: flex-start;
}
.main_nav.active ul.header_page_link{
	height: calc(100% / 15 * 8 - 1rem);
	border-bottom: 0.1rem solid #bbbbbb;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}
.main_nav.active ul.company{
	height: calc(100% / 14 * 6 - 1rem);
}
.main_nav.active ul.header_top_link{
	height: fit-content;
	padding-bottom: 1rem;
}
.navToggle.active span{
	background: #FFFFFF;
}
.navToggle.active span:first-child{
	top: 0.6rem;
	right: 0.75rem;
	transform: rotate(45deg);
}
.navToggle.active span:nth-child(2){
	opacity: 0;
}
.navToggle.active span:last-child{
	top: 0.6rem;
	right: 0.75rem;
	transform: rotate(-45deg);
}

.menu_yoyaku{
	/* display: none; */
	position: fixed;
	top: 5rem;
	right: 1rem;
	z-index: 10000;
}
.top_header .menu_yoyaku{
	display: block;
}
.menu_yoyaku li{
	margin-bottom: 1.5rem;
	/* height: 2.2rem; */
}
.menu_yoyaku li a{
	display: flex;
	justify-content: center;
	align-items: center;
	color: #FFFFFF;
	background: #F08267;
	text-align: center;
	font-size: 1.2rem;
	line-height: 1.2em;
	width: 6.5rem;
	height: 6.7rem;
	padding: 0.25rem 0.25rem 0.25rem 0.45rem;
	border-radius: 50%;
}
header.blue .menu_yoyaku li a{
	color: #193049;
}
header.blue.active li a{
	color: #FFFFFF;
}
.menu_yoyaku.active{
	padding: 0!important;
	display: block;
}
.menu_yoyaku.active li{
	width: fit-content;
	/* height: 2rem; */
	/* border: 0.1rem solid #bbbbbb; */
	padding: 0 1rem;
	margin: 0 0 1.5rem auto;
}
.menu_yoyaku.active li:last-child{
	margin: 0;
}
.menu_yoyaku.active li a{
	/* text-align: center; */
	/* line-height: 2rem; */
}


/* フッター */
footer{
	background: #193049;
	color: #FFFFFF;
	text-align: center;
}
footer *{
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	color: #FFFFFF;
}
footer>div{
	display: flex;
	flex-flow: column nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	align-items: center;
	width: calc(100% - 6rem);
	margin: 0 auto;
	padding: 10rem 3rem;
}
footer h1{
	display: block;
	width: fit-content;
	margin: 0 auto 3rem;
}
footer h1 img{
	width: 100%;
	max-width: 20rem;
	height: auto;
}
footer>div p{
	font-size: 1.2rem;
	margin-bottom: 2rem;
}
footer>div p:last-child{
	margin-bottom: 0;
}
footer ul{
	width: 50%;
	max-width: 20rem;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	margin: 5rem auto 0;
	height: 3rem;
}
footer ul img{
	height: 3rem;
	width: 3rem;
	object-fit: contain;
}

footer .copylignt{
	display: block;
	text-align: center;
	font-size: 1rem;
	padding-bottom: 3rem;
	letter-spacing: 0.1rem;
}


/* トップページ */
#top_page *{
	color: #FFFFFF;
}

/* トップMVスワイパー */
#top_mv_swiper{
	overflow: hidden;
}
#top_mv_swiper .swiper-wrapper{
	height: 125vw;
}
#top_mv_swiper .swiper-slide{
	width: 100vw;
	height: 100%;
}
#top_mv_swiper .swiper-slide .img_wrap{
	display: block;
	width: 100%;
	height: 100%;
}
#top_mv_swiper .swiper-slide img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#top_mv_swiper .swiper-pagination{
	bottom: 2%;
}
#top_mv_swiper .swiper-pagination-bullet{
	background-color: #FFFFFF;
	opacity: 0.2;
	transition: 1s;
}
#top_mv_swiper .swiper-pagination-bullet.swiper-pagination-bullet-active{
	background-color: #FFFFFF;
	opacity: 1;
}

/* #top_mv{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: fit-content;
	max-width: none;
	padding: 0;
}
#top_mv video{
	display: block;
	width: 100%;
	height: auto;
}
#top_mv .mv_bg{
	display: block;
	margin: 0 auto;
	width: 100%;
	height: 60vw;
	max-width: 150rem;
	max-height: 90rem;
	object-fit: cover;
}
#top_mv h1{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: fit-content;
	height: fit-content;
	text-align: center;
}
#top_mv h1 img.mv_logo{
	width: auto;
	height: auto;
	max-width: 70vw;
	max-height: 70vh;
	display: inline-block;
	opacity: 0;
} */
.mv_logo{
	animation-name: mv_logo_anime;
	animation-fill-mode:forwards;
	animation-duration: 3s;
	animation-iteration-count:1;
	animation-timing-function:ease;
	animation-delay: 1s;
	animation-direction:normal;
}
@keyframes mv_logo_anime{
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
header.top_header h1{
	opacity: 0;
}
header.top_header h1{
	animation-name: header_logo_anime;
	animation-fill-mode:forwards;
	animation-duration: 3s;
	animation-iteration-count:1;
	animation-timing-function:ease;
	animation-delay: 8s;
	animation-direction:normal;
}
@keyframes header_logo_anime{
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

#sound_switch{
	position: absolute;
	bottom: 2rem;
	right: 2rem;
	width: 2.5rem;
	height: 2.5rem;
	cursor: pointer;
}
#sound_switch img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#sound_switch .on{
	display: none;
}
#sound_switch .off{
	display: block;
}
#sound_switch.active .on{
	display: block;
}
#sound_switch.active .off{
	display: none;
}



#news{
	max-width: unset;
	padding: 3rem 1rem;
}
#news>*{
	color: #FFFFFF;
	width: calc(100% - 2rem);
}
#news h2{
	text-align: left;
	max-width: 45rem;
}
#news ul{
	width: fit-content;
	margin: 0 auto;
}
#news ul li{
	display: flex;
	flex-flow: column nowrap;
	padding-bottom: 1.5rem;
	font-size: 1.2rem;
}
#news ul li a,
#news ul li div{
	font-size: 1.2rem;
	width: 100%;
	/* width: calc(100% - 10rem); */
}
#news ul li span{
	display: block;
	/* width: 8rem; */
	width: 100%;
	font-size: 1.2rem;
	margin-bottom: 0.5rem;
}


#campaign{
	padding: 3rem 1rem;
	background-color: rgba(30, 54, 77, 1);
	color: #FFFFFF;
}
#campaign h2,
#campaign h2 span{
	/* color: #193049; */
	text-align: center;
}
#campaign .campaign_list{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around;
	/* max-width: 80rem; */
	margin: 0 auto;

	width: calc(100% - 7rem);
	max-width: 40rem;
}
#campaign .campaign_list a{
	display: block;
	width: 100%;
	margin-bottom: 2rem;
}
#campaign .campaign_list a img{
	display: block;
}


#concept,
#movieitem{
	width: 100%;
	/*max-width: 150rem;*/
	padding: 0;
}
#concept video,
#movieitem video{
	display: block;
	margin: 0 auto -0.1rem;
	width: 100%;
	height: auto;
}


#history .bgimg_on_inner{
	position: absolute;
	left: 0;
	bottom: 0;
}

/* #facility .bgimg_on_inner{
	position: absolute;
	left: 0;
	bottom: 0rem;
} */

#library{
	cursor: pointer;
}
#library:hover{
	opacity: 0.7;
}
/* #library .bgimg_on_inner{
	position: absolute;
	left: 0;
	bottom: 0rem;
} */
#library .library_link{
	display: none;
}
#library.active:hover{
	opacity: 1;
}
#library.active .library_link{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 100%;
	opacity: 1;
}
#library.active .library_link li{
	width: 100%;
	height: fit-content;
	padding: 0;
	margin-bottom: 3rem;
	text-align: center;
}
#library.active .library_link li:last-child{
	margin-bottom: 0;
}
#library.active .library_link li a{
	display: inline-block;
	width: 70%;
	height: 5rem;
	line-height: 5rem;
	padding: 10% 0;
	background: #000000cc;
	text-align: center;
}
#library.active .bgimg_on_inner{
	opacity: 0.1;
}

#plan,
#service,
#retouch,
#report,
#plan .bgimg_on,
#service .bgimg_on,
#retouch .bgimg_on,
#report .bgimg_on{
	max-width: unset;
	height: 50vw;
	min-height: 30rem;
}
#plan .bgimg_on_inner,
#service .bgimg_on_inner{
	position: absolute;
	bottom: 5rem;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
}
#service .bgimg_on_inner{
	position: absolute;
	bottom: 3rem;
	left: 0;
	right: 0;
	margin: auto;
	height: 9rem;
	text-align: center;
}
#service .bgimg_on_inner h2{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: fit-content;
	width: fit-content;
	margin: auto;
}
#service .letter0{
	letter-spacing: 0;
}
#plan h2{
	margin-bottom: 0;
}
#plan h2 span{
	font-size: 1.4rem;
}
#plan .bgimg_on_inner div{
	margin-top: 0.5rem;
	font-size: 1rem;
}
#plan .plan_dress_wrap h2,
#plan .plan_dress_wrap h2 span,
#plan .plan_dress_wrap div{
	/* color: #000000; */
}

#retouch{
	padding: 0;
	/* max-width: unset; */
	position: relative;
}
#retouch .bgimg_on_inner,
#report .bgimg_on_inner,
#library .bgimg_on_inner,
#photomovieitem .bgimg_on_inner,
#accessories .bgimg_on_inner,
#facility .bgimg_on_inner{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: fit-content;
	height: fit-content;
	pointer-events: none;
	text-align: center;
	z-index: 2;
}

.bgimg_on_inner h2{
	line-height: 1.2em;
}

#group{
	padding: 0;
	justify-content: space-around;
}
#group>a{
	display: block;
	width: calc(100% / 3 - 0.1rem);
	height: 50vw;
	min-height: 30rem;
	position: relative;
	border-right: 0.1rem solid #FFFFFF;
	/* background: #305477; */
	background: rgba(30, 54, 77, 1);
}
#group>a:last-child{
	border-right: none;
	width: calc(100% / 3);
}
#group>a img{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 60%;
	height: auto;
	object-fit: contain;
	padding-bottom: 2rem;
}


#covid h2{
	/* font-weight: 500; */
}
#covid h3{
	color: #193049;
	text-align: center;
	font-size: 1.8rem;
	line-height: 3rem;
	margin-bottom: 3rem;
}
#covid>div>div{
	margin: 2.5rem 0 0;
	padding: 2rem 3rem;
	border: 0.2rem solid #193049;
	border-radius: 1rem;
}
#covid ul.covid_icon{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around;
	align-items: flex-start;
	align-content: flex-start;
}
#covid ul.covid_icon li{
	margin: 0 0 2rem;
	width: 8.5rem;
	text-align: center;
}
#covid ul.covid_icon li img{
	width: 5rem;
	height: 5rem;
	object-fit: contain;
	margin-bottom: 0.5rem;
}
#covid ul.covid_icon li span{
	display: block;
	/* font-weight: 500; */
}
#covid>div>div>p{
	color: #193049;
	text-align: center;
	margin-bottom: 1.5rem;
	font-size: 1.2rem;
	/* font-weight: 500; */
}
#covid ul.list_dot{
	padding-left: 2rem;
	margin-bottom: 2rem;
}
#covid ul.list_dot li{
	/* font-weight: 500; */
}



/* トップ　プライス */
#price{
	background: #193049;
	padding-bottom: 5rem;
}
#price h2{
	text-align: center;
}
#price h2 span{
	color: #193049;
	background: #FFFFFF;
	border-radius: 5px;
	width: fit-content;
	margin: 2rem auto;
	padding: 0 1rem;
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
}
#price .price_list{
	display: flex;
	flex-flow: row wrap;
	width: 100%;
	margin: 0 auto;
}
#price .price_list *{
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
}
#price .price_list>li{
	border: 0.1rem solid #FFFFFF;
	border-radius: 1rem;
	margin: 1rem auto;
	padding: 1.5rem 1.5rem 3rem;
	width: calc(100% - 10rem);
	max-width: 40rem;
}
#price .price_plan_name{
	margin: 0 auto 2rem;
	width: 4rem;
	height: 4rem;
	letter-spacing: 0;
	line-height: 4rem;
	text-align: center;
	border-radius: 50%;
	background: #FFFFFF;
	color: #193049;
	font-size: 2rem;
}
#price .price_list>li p{
	color: #F08267;
	font-weight: bold;
	font-size: 3rem;
	text-align: center;
	letter-spacing: 0.5rem;
	margin-bottom: 2rem;
}
#price .price_list>li p span{
	display: block;
	color: #F08267;
	font-size: 1.6rem;
	text-align: center;
	margin-top: 1rem;
}
#price .price_list>li ul{
	border-top: 0.1rem solid #FFFFFF;
	padding-top: 1.5rem;
}
#price .price_list>li ul li{
	text-indent: -1.5em;
	margin: 0 auto;
	padding: 0.5rem 0 0.5rem 1em;
	width: 80%;
	max-width: 15rem;
	font-size: 1.4rem;
	white-space: nowrap;
}
#price .price_link{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	margin: 3rem auto;
	width: calc(100% - 4rem);
	max-width: 40rem;
}
#price .price_link>a{
	display: block;
	width: 40%;
}
#price .price_link>a:first-child{
	order: 2;
}
#price .price_link>p{
	order: 1;
	width: 100%;
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	font-weight: bold;
	font-size: 1.6rem;
	letter-spacing: 0.5rem;
	text-align: center;
}
#price .price_link>p::after{
	content: '▼';
	display: block;
	margin: 0.5rem auto;
}
#price .price_link>a:last-child{
	order: 3;
}
#price .price_link>a img{
	display: block;
}



/* トップ　プロセス */
#process{
	background-color: rgba(30, 54, 77, 1);
	padding: 5rem 1rem;
}
#process h2{
	text-align: center;
}
#process .process_flow{
	margin: 0 auto;
	width: calc(100% - 7rem);
	max-width: 35rem;
}
#process .flow_wrap{
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
}
#process .flow_number_wrap{
	position: relative;
	width: calc(100% - 17rem);
	max-width: 15rem;
}
#process .flow_number_wrap .flow_number{
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.8rem;
	width: fit-content;
	font-weight: bold;
}
#process .flow_number_wrap img{
	display: block;
	/* border: 0.1rem solid #FFFFFF;
	border-radius: 50%; */
}
#process .flow_text_wrap{
	width: 16rem;
}
#process .flow_text_wrap .flow_title{
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	color: #F08267;
	font-size: 1.3rem;
	margin-bottom: 0.5rem;
	font-weight: bold;
}
#process .flow_text_wrap .flow_text{
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	font-size: 1.1rem;
	line-height: 1.5em;
	letter-spacing: 0;
}
/* トップ　プロセス 矢印 */
#process .flow_arrow{
	position: relative;
	height: 7rem;
	padding: 0.5rem 0;
}
#process .flow_arrow.flow_arrow_long{
	height: 8rem;
}
#process .flow_arrow>span{
	position: absolute;
	display: block;
}
#process .flow_arrow>span:nth-child(1),
#process .flow_arrow>span:nth-child(2),
#process .flow_arrow>span:nth-child(3){
	border-left: 0.1rem solid #FFFFFF;
	width: 0;
}
#process .flow_arrow>span:nth-child(1){
	bottom: 1rem;
	left: 7.5rem;
	height: 5rem;
}
#process .flow_arrow.flow_arrow_long>span:nth-child(1){
	height: 6rem;
}
#process .flow_arrow>span:nth-child(2){
	transform: rotate(35deg);
	bottom: 0.9rem;
	left: 7.8rem;
	height: 1rem;
}
#process .flow_arrow>span:nth-child(3){
	transform: rotate(-35deg);
	bottom: 0.9rem;
	left: 7.2rem;
	height: 1rem;
}
#process .flow_arrow>span:nth-child(4){
	bottom: 0; top: 0;
	left: 4.5rem;
	margin: auto 0;
	width: 5.3rem;
	height: fit-content;
	padding: 0.2rem 0.5rem 0.2rem 0.7rem;
	background: #FFFFFF;
	color: rgba(30, 54, 77, 1);
	letter-spacing: 0.2rem;
	border-radius: 0.5rem;
	font-size: 1.3rem;
	font-weight: bold;
	text-align: center;
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

/* アクセサリー */
#accessories_wrap h3{
	font-size: 2.5rem;
	text-align: center;
	border-top: 0.1rem solid #000000;
	padding: 5rem 0;
}
#accessories_wrap h4{
	font-size: 2.2rem;
	margin-bottom: 2.5rem;
}
#accessories_wrap h4 span{
	display: block;
	font-size: 1.6rem;
}
#jewelry_wrap{
	padding-bottom: 5rem;
}
.accessories_item_list li>a>div,
.accessories_item_list li>div>div{
	padding: 2rem 0 6rem;
}

/* トップ　シネマティックムービー */
#movieitem{
	position: relative;
}
#movieitem a{
	display: block;
	text-align: center;
	position: absolute;
	top:0; left:0;
	margin: auto;
	width: 100%;
	height: 100%;
	z-index: 1;
}
#movieitem a .bgimg_on_inner{
	position: absolute;
	top:0; right:0; bottom:0; left:0;
	margin: auto;
	width: fit-content;
	height: fit-content;
}

/* 予約ページ */
#reserve_page{
	background: #F0F0EB;
}
#reserve_page h2{
	text-align: center;
}
.required_info{
	display: inline-block;
	font-size: 1.2rem;
	color: #000000;
}
.required_info span{
	display: inline-block;
	margin: 0 1rem;
	color: #ff7171;
	font-size: 1.2rem;
}
.reserve_flow,
.reserve_request,
.reserve_kiyaku_wrap,
.thanks_wrap{
	background: #FFFFFF;
	margin: 5rem auto;
	padding: 2rem 1rem 0;
	width: calc(100% - 6rem);
	max-width: 98rem;
}
.reserve_flow h3,
.reserve_request h3{
	font-size: 1.6rem;
	color: #345aa0;
	/* font-weight: 400; */
}
.reserve_flow h3{
	margin-bottom: 2rem;
}
.reserve_request h3{
	margin-bottom: 1rem;
	margin-left: 1rem;
}
.reserve_flow ol{
	margin: 0 1rem 0 5rem;
}
.reserve_request ul{
	margin: 0 1rem 0 3rem;
}
.reserve_flow li,
.reserve_request li{
	margin-bottom: 1rem;
	font-size: 1.2rem;
	line-height: 2.4rem;
	letter-spacing: 0.3rem;
}
.reserve_flow li:last-child{
	padding-bottom: 2rem;
}
.reserve_request li:last-child{
	padding-bottom: 3rem;
}
.reserve_flow p{
	font-size: 1.2rem;
	margin-bottom: 3rem;
	padding-left: 2.6rem;
}
.reserve_kiyaku_wrap{
	padding-bottom: 3rem;
	width: calc(100% - 2rem);
}
.reserve_kiyaku_wrap h3{
	margin: 0 0 1rem 1rem!important;
}
.reserve_kiyaku_wrap label{
	margin-left: 1rem!important;
}
.reserve_kiyaku_wrap>div{
	margin: 0 1rem 3rem 1rem;
}

.reserve_calendar_wrap{
	width: calc(100% - 10rem);
	min-width: 26rem;
	max-width: 48rem;
	margin: 0 auto;
}

.reserve_month{
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 1rem;
}
.reserve_month,
.reserve_month a{
	font-size: 1.6rem;
	/* font-weight: 500; */
}

table.reserve_calendar{
	margin: 0 auto;
	border: 0.2rem solid #000000;
	width: 100%;
}
table.reserve_calendar th,
table.reserve_calendar td{
	width: calc(100% / 7);
	border: 0.1rem solid #000000;
	background: #FFFFFF;
}
table.reserve_calendar th{
	text-align: center;
	padding: 1rem 0;
}
table.reserve_calendar td p{
	padding: 0.5rem 0.5rem 0;
	line-height: 1.2rem;
	font-size: 1.2rem;
}
table.reserve_calendar td div{
	text-align: center;
	color: #ff7171;
	padding: 0.5rem 0;
}
.reserve_calendar_remarks{
	text-align: center;
}

.reserve_calendar_remarks p,
.reserve_calendar_remarks span{
	font-size: 1rem;
}
.reserve_calendar_remarks span,
.reserve_flow li span{
	color: #ff7171;
}


/* 予約フォーム */
#reserve_form_wrap,
#reserve_days_wrap{
	margin: 0 auto;
	padding: 5rem 0;
	border-top: 0.2rem solid #FFFFFF;
	width: calc(100% - 4rem);
	max-width: 100rem;
}
#reserve_form_wrap h3,
#reserve_days_wrap h3{
	font-size: 1.6rem;
	color: #345aa0;
	/* font-weight: 400; */
	/* margin: 5rem 0 1rem; */
}
#reserve_form_wrap dl{
	margin-bottom: 1rem;
}
#reserve_form_wrap dt{
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: flex-start;
	white-space: nowrap;
	font-size: 1.6rem;
	line-height: 2.4rem;
	margin-bottom: 0.5rem;
}
#reserve_form_wrap dl:first-child dt:first-child{
	justify-content: space-between;
}
#reserve_form_wrap dt p{
	font-size: 1.2rem;
	margin-left: 1rem;
	white-space: normal;
	vertical-align: top;
}
#reserve_form_wrap dd *{
	font-size: 1.6rem;
	margin-bottom: 1.5rem;
}
#reserve_form_wrap dd{
	margin-bottom: 1.5rem;
	font-size: 1.6rem;
	display: flex;
	flex-flow: row wrap;
	width: 100%;
}
#reserve_form_wrap dd.column{
	flex-flow: column nowrap;
}
#reserve_form_wrap dd.note{
	font-size: 1.2rem;
	line-height: 2.4rem;
}

.pre_day_wrap{
	display: flex;
	flex-flow: row wrap;
}
.pre_day_wrap div{
	display: flex;
	flex-flow: column nowrap;
}
.pre_day_wrap div>*{
	margin-left: 2rem!important;
	font-size: 1.2rem;
}
.pre_day_wrap div p:first-child{
	width: 12rem;
}
.pre_day_wrap label{
	margin-top: 0.5rem!important;
	margin-bottom: 0.5rem!important;
}

.form_send_wrap{
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-around;
	width: 100%;
	max-width: 100rem;
	margin: 7rem 0;
}
.form_send_wrap li{
	width: 45%;
	min-width: 12.5rem;
	max-width: 40rem;
	text-align: center;
	font-size: 1.2rem;
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
}
.form_send_wrap li p{
	font-size: 1rem;
}
.form_send_wrap li button{
	display: block;
	width: 100%;
	line-height: 2rem;
	padding: 3rem 0;
	background: #BEBEB4;
	color: #FFFFFF;
	border-radius: 1rem;
	font-size: 2rem;
	cursor: pointer;
}
.form_send_wrap li button:hover{
	opacity: 0.7;
}
.form_send_wrap li button span{
	display: block;
	color: #000000;
	font-size: 1.2rem;
	margin-bottom: 1rem;
}

/* formタグ */
.error{
	padding: 2rem;
	color: #FF0000;
	border: 0.2rem solid #FF0000;
	background: #FFFFFF;
	margin-bottom: 2rem;
}
.error *{
	font-size: 1.4rem;
}
input[type='text'],
input[type='email'],
input[type='tel'],
select,
textarea{
	width: calc(100% - 1rem);
	padding: 1rem 0.5rem;
	background: #FFFFFF;
	border: none;
}
select{
	width: 100%;
}
input[type='checkbox']{
	display: none;
}
input[type=checkbox] + label,
input[type=radio] + label {
	position: relative;
	display: inline-block;
	padding: 0 0 0 2.5rem;
	margin: 0 1.5rem 0 0;
	vertical-align: middle;
	width: fit-content;
	transition: 0.4s;
	cursor: pointer;
	font-size: 1.2rem!important;
}
input[type=checkbox] + label:after,
input[type=radio] + label:after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	border: 1px solid #d1d0ce;
	background: #fff;
	content: '';
	margin-top: -8px;
	width: 17px;
	height: 17px;
}
input[type=radio] + label:after {
	border-radius: 50%;
}
input[type=checkbox] + label:before,
input[type=radio] + label:before {
	left: 0;
	top: 0;
	width: 17px;
	height: 11px;
	transform: rotate(-45deg);
	position: absolute;
	display: block;
	border-bottom: 2px solid #00973F;
	border-left: 2px solid #00973F;
	content: '';
	opacity: 0;
	z-index: 2;
}
input[type=checkbox]:checked + label:before,
input[type=radio]:checked + label:before {
	opacity: 1;
}
input[type=radio]:disabled + label{
	color: #35353530;
	text-decoration: line-through;
}

/* 送信後ページ */
.thanks_wrap{
	margin: 3rem auto;
	padding: 5rem 1rem;
	width: calc(100% - 2rem);
}
.qr_wrap{
	text-align: center;
	margin: 5rem auto;
	position: relative;
}
.qr_wrap::before{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-left: 2rem solid transparent;
	border-right: 2rem solid transparent;
	border-top: 2rem solid #000000;
	margin: 0 auto 1.5rem;
}
.thanks_wrap span.sp_only{
	display: inline-block;
	font-size: 1.2rem;
}
.line_wrap{
	width: 10rem;
	height: 4rem;
	margin: 5rem auto;
	overflow: hidden;
}
.line_wrap iframe{
	width: fit-content!important;
	height: 4rem!important;
}
.line_wrap iframe body{
	margin: 0 auto;
}


/* PLAN プラン */
#plan_page{
	margin: 0 auto;
	padding: 2rem 1rem 0;
	max-width: 100rem;
}
#plan_detail_wrap{
	padding-bottom: 0;
}
#plan_detail_wrap h2{
	position: relative;
	width: fit-content;
}
#plan_detail_wrap h2 img{
	display: block;
	position: absolute;
	right: -6rem;
	top: 0; bottom: 0;
	margin: auto;
	width: 5rem;
	height: auto;
}
#plan_detail_wrap ul.list_dot{
	padding-left: 2rem;
}
#plan_detail_wrap ul.list_dot .list_style_none{
	margin-left: -2rem;
}

.plan_detail{
	border-top: 0.2rem solid #dddddd;
	border-bottom: 0.2rem solid #dddddd;
	padding: 5rem 0;
}
.plan_name{
	/* display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center; */
}
.plan_name h3{
	font-size: 1.2rem;
	line-height: 2rem;
	/* font-weight: 500; */
}
.location_plan_name h3{
	color: #027a55;
}
.plan_name h3 span{
	width: fit-content;
	background: #193049;
	color: #FFFFFF;
	padding: 0.5rem 1rem;
	font-size: 1.4rem;
	line-height: 2rem;
	font-weight: bold;
	border-radius: 0.5rem;
	margin-right: 1rem;
	margin-bottom: 1rem;
	display: block;
	white-space: nowrap;
}
.location_plan_name h3 span{
	background: #027a55;
	color: #FFFFFF;
	border: 0.1rem solid #027a55;
}
.location_plan_name h3 p{
	display: inline-block;
	font-size: 1.4rem;
}
.plan_name h3 div{
	display: inline-block;
	font-size: 1.4rem;
	line-height: 2rem;
	color: #000000;
}
.plan_name img{
	display: block;
	width: 3rem;
	height: 3rem;
	object-fit: contain;
}

.price_plan_wrap{
	margin: 0 2rem;
	padding: 3rem 0;
}
.price_plan_wrap>p{
	margin-bottom: 2rem;
	font-size: 1.4rem;
}
.price_plan_wrap>p span{
	font-size: 1.6rem;
}
.location_plan_wrap>p{
	font-size: 1.2rem;
}
.price_plan{
	margin-bottom: 2rem;
}
.price_plan dl{
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin-bottom: 2rem;
	width: 100%;
}
.price_plan dl dt{
	display: block;
	width: 3rem;
	height: 3rem;
	font-size: 1.4rem;
	line-height: 3rem;
	background: #193049;
	color: #FFFFFF;
	border-radius: 50%;
	text-align: center;
	letter-spacing: 0;
}
.location_plan_wrap .price_plan dl dt {
	background: #027a55;
}
.price_plan dl dd{
	padding-left: 1rem;
	width: calc(100% - 4rem);
}
.price_plan dl dd .price{
	color: #FF8B64;
	font-size: 1.4rem;
}
.price_plan dl dd .price span{
	font-size: 1.2rem;
}
.price_plan_wrap li{
	font-size: 1.2rem;
}
.price_plan .line{
	display: none;
}

.plan_set{
	border-top: 0.2rem dashed #dddddd;
	margin: 0;
	padding: 3rem 0 5rem;
}
.plan_set h4{
	color: #FF8B64;
	font-size: 1.6rem;
	margin-bottom: 2rem;
}
.plan_set ul li{
	font-size: 1.4rem;
	margin-bottom: 2rem;
}
.plan_set ul:last-child li:last-child{
	margin-bottom: 0rem;
}
.plan_set ul li span{
	display: block;
	font-size: 1.2rem;
	padding-left: 1.2rem;
	text-indent: -1.2em;
}


.option_plan li,
.no_plan li{
	line-height: 2rem;
	font-size: 1.2rem;
	margin-bottom: 0.5rem;
}
.option_plan li{
	margin-bottom: 2rem;
}
.option_plan li ul{
	margin: 0.5rem 0rem 2rem 2rem;
}
.option_plan li ul li{
	margin-bottom: 0.5rem;
}

.no_plan{
	border-bottom: 0.2rem dashed #dddddd;
	margin: 0 2rem;
	padding: 0 0 3rem;
}
.no_plan h4{
	color: #000000;
	margin-bottom: 1rem;
	font-size: 1.2rem;
}
.no_plan li a{
	font-size: inherit;
}

.option_plan{
	margin: 0 2rem;
	padding: 3rem 0;
}
.option_plan h4{
	color: #FF8B64;
	margin-bottom: 1rem;
	font-size: 1.4rem;
}




/* カタログ */
#plan_catalog{
	padding-top: 1rem;
}
#plan_catalog>p:first-child{
	border: 0.1rem solid #000000;
	width: fit-content;
	padding: 0 0.5rem;
}
#plan_catalog>p:nth-child(3),
#plan_catalog>p:last-child{
	text-align: center;
	margin: 5rem auto 3rem;
	font-size: 1.2rem;
}
#plan_catalog>p:nth-child(3) span{
	display: block;
	margin: 3rem auto 0;
	font-size: 1rem;
	line-height: 2rem;
}
#plan_catalog h2{
	margin-top: 5rem;
	text-align: center;
}
#plan_catalog p.plan_note{
	border: 0.1rem solid #000000;
	width: fit-content;
	padding: 0 0.5rem;
	margin: 0 auto 3rem;
	font-size: 1.2rem;
	text-align: center;
}
#plan_catalog ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: stretch;
	align-content: stretch;
}
#plan_catalog ul li{
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	align-items: stretch;
	align-content: stretch;
	width: calc(50% - 2.5rem);
	max-width: 42rem;
	margin: 0 0 4rem;
}
#plan_catalog ul li img{
	width: 100%;
	/* 画像の縦横比７：６（縦：横） */
	aspect-ratio: 6 / 7;
	object-fit: cover;
	margin-bottom: 0.5rem;
}
.catalog_pager,
.pager{
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-around;
	margin: 5rem auto;
	max-width: 50rem;
}
.catalog_pager a,
.pager a{
	font-size: 3rem;
}

/* モーダル */
/* モーダル本体 */
.modal{
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 10000;
}
.modal-bg{
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background: rgba(0, 0, 0, 0.8);
	z-index: 500;
}
.modal_content_wrap{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	padding: 3rem 2rem;
	background-color: #ffffff;
	/* border-radius: 1rem; */
	margin-top: auto;
	width: calc(100% - 20%);
	/* max-width: 86rem; */
	height: fit-content;
	max-height: calc(100vh - 10rem);
	overflow-y: auto;
	z-index: 501;
}
.modal_content{
	margin: auto;
	/* padding-right: 2rem; */
	/* height: 100%; */
	/* overflow: auto; */
	width: 100%;
}
.modal_content h3{
	font-size: 3rem;
	margin-bottom: 1rem;
}
.modal_content h4{
	font-size: 1.7rem;
	margin: 0 auto 2rem;
	padding: 1rem;
	background-color: #343a40;
	color: #fff;
}
.modal_content p{
	text-align: left;
	line-height: 2rem;
	margin: 0 auto 5rem;
	max-width: 60rem;
}
.modal_content p.dress_code{
	margin: 6rem auto 1rem;
}
.modal_content ul li{
	font-size: 1.4rem;
	line-height: 3rem;
}
.close_btn{
	position: fixed;
	top: 1rem;
	right: 1rem;
	color: #FFFFFF;
	display: block;
	height: 4rem;
	width: 4rem;
	line-height: 4rem;
	font-size: 4rem;
	text-align: center;
	/* font-weight: bold; */
	z-index: 10000;
}
.close_btn::before,
.close_btn::after{
	content: '';
	display: block;
	width: 3rem;
	height: 0.1rem;
	background: #dddddd;
	position: absolute;
	top: 50%;
	left: 0;
}
.close_btn::before{
	transform: rotate(-45deg);
}
.close_btn::after{
	transform: rotate(45deg);
}
/* モーダルウィンドウ表示中に記事本体を固定 */
body.fixed {
	position: fixed;
	top: 0;
	left: 0;
}

/* モーダル内スリック */
.modal-slick{
	width: 100%;
	max-width: 60rem;
	/* 画像の縦横比７：６（縦：横） */
	aspect-ratio: 6 / 7;
	margin: 0 auto;
}
.modal-slick .slick-list {
	/* padding: 0 30% 0 1%!important; */
}
.modal-slick li a{
	text-align: center;
}
.modal-slick li img{
	width: 100%;
	/* 画像の縦横比７：６（縦：横） */
	aspect-ratio: 6 / 7;
	object-fit: contain;
	margin: 0 auto;
}
.modal-slick .prev-arrow,
.modal-slick .next-arrow{
	display: block;
	width: 3rem;
	height: 3rem;
	text-align: center;
	position: absolute;
	font-size: 2rem;
	z-index: 1;
	transform: scale(1, 1.5);
}
.modal-slick .prev-arrow{
	left: 0;
	bottom: -3rem;
	cursor: pointer;
}
.modal-slick .next-arrow{
	right: 0;
	bottom: -3rem;
	cursor: pointer;
}
.modal-slick .prev-arrow::after,
.modal-slick .next-arrow::after{
	content: '';
	display: block;
	width: 0.9rem;
	height: 0.9rem;
	border-right: 0.1rem solid #000000;
	border-bottom: 0.1rem solid #000000;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
.modal-slick .prev-arrow::after{
	transform: rotate(135deg);
}
.modal-slick .next-arrow::after{
	transform: rotate(-45deg);

}


.slick-dotted.slick-slider{
	margin-bottom: 0;
}
.slick-dots{
	display: flex!important;
	flex-flow: row nowrap;
	justify-content: center;
	bottom: -2.8rem!important;
}


/* PrivacyPolicy　company faq */
#policy_page h2,
#company_page h2{
	max-width: 80rem;
	margin-right: auto;
	margin-left: auto;
}
#policy_wrap,
#company_wrap,
#page section:first-child{
	max-width: 100rem;
	padding: 0rem 3rem 15rem;
}
#policy_wrap>div,
#company_wrap>div{
	background: #FFFFFF;
	padding: 0rem 3rem;
}
#policy_wrap>div p,
#policy_wrap>div span{
	display: block;
	font-size: 1.2rem;
	letter-spacing: 0.3rem;
}
#policy_wrap>div p{
	margin-bottom: 5rem;
}


.company_list *{
	font-size: 1rem;
}
.company_list{
	padding: 5rem 0;
	max-width: 80rem;
	margin: 0 auto;
}
.company_list:last-child{
	border-top: 0.1rem solid #000000;
}
.company_list.lobjet_wrap{
	border-top: 0.3rem solid #F0F0EB;
	border-bottom: 0.3rem solid #F0F0EB;
}
.company_list.lobjet_wrap dt{
	border-bottom: 0.1rem solid #000000;
}
.company_list dt{
	padding-bottom: 2rem;
}
.company_list dd{
	padding-top: 2rem;
}
.company_list dd>p{
	padding-bottom: 1rem;
}
.company_list dt img{
	display: block;
	height: auto;
	width: 60%;
}
.company_list.lobjet_wrap dt img{
	width: 50%;
}
.company_list dd li{
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
}
.company_list.lobjet_wrap dd li{
	border-bottom: 0.1rem solid #000000;
	padding: 2rem 0;
}
.company_list.lobjet_wrap dd li:first-child{
	padding: 0 0 2rem;
}
.company_list.lobjet_wrap dd li:last-child{
	border: none;
}
.company_list dd li>div{flex:1;}
.company_list dd li>a{
	display: block;
	width: 2rem;
	margin-left: 1rem;
	height: fit-content;
}
.company_list dd li>a>img{
	display: inline-block;
	width: 100%;
	height: auto;
}


#faq_wrap h3{
	font-size: 1.6rem;
	color: #193049;
	/* font-weight: 500; */
	margin: 5rem 0 1rem;
}
.faq_toggle{
	margin: 0 auto 1rem;
}
.faq_toggle dt,
.faq_toggle dd p{
	font-size: 1.4rem;
}
.faq_toggle dt{
	background: #193049;
	color: #FFFFFF;
	padding: 1rem 1rem;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	cursor: pointer;
}
.faq_toggle dt::before{
	content: '';
	display: inline-block;
	width: 0.8rem;
	height: 0.8rem;
	border-bottom: 0.2rem solid #FFFFFF;
	border-left: 0.2rem solid #FFFFFF;
	transform: rotate(-45deg);
	margin-right: 2rem;
	margin-left: 1rem;
	margin-top: -0.5rem;
}
.faq_toggle dd{
	height: 0;
	overflow: hidden;
}
.faq_toggle.active dd{
	height: fit-content;
}
.faq_toggle dd p{
	padding: 1rem;
}
.faq_toggle dd p:first-child{
	padding-top: 2rem;
}
.faq_toggle dd p:last-child{
	padding-bottom: 3rem;
}



/* エラー画面 */
.error_wrap{
	text-align: center!important;
}
.error_wrap h2{
	margin: 0 auto 5rem!important;
}
.btn_to_top{
	display: block;
	width: 25rem;
	background: #3C505F;
	color: #FFFFFF;
	margin: 0 auto;
	padding: 1rem 0;
	border-radius: 1rem;
}
.caution{
	color: #FF0000;
	border: 0.1rem solid #FF0000;
	background: #FFFFFF;
	padding: 2rem;
	margin: 3rem 0;
}


/* 施設のご紹介 */
#facility_wrap{
	max-width: unset!important;
	padding: 0rem 0 15rem!important;
}
#facility_wrap .section_head{
	padding-bottom: 5rem;
	border-bottom: 0.1rem solid #000000;
}
#facility_wrap ul{
	width: 100%;
	margin: 7rem auto 1rem;
}
#facility_wrap ul li{
	width: 100%;
	text-align: center;
	margin-bottom: 8rem;
}
#facility_wrap ul li a p:first-child{
	letter-spacing: 1rem;
	font-size: 1.8rem;
	margin-bottom: 2rem;
}
#facility_wrap ul li:first-child a p:first-child{
	letter-spacing: 2rem;
}
#facility_wrap ul img{
	width: 100%;
	/* 画像の縦横比 2：3（縦：横） */
	aspect-ratio: 3 / 2;
	object-fit: cover;
	margin: 0 auto 2rem;
}
#facility_wrap ul li a{
	display: block;
	/* width: fit-content; */
	height: fit-content;
}
#facility_wrap ul li a p:nth-child(3){
	font-size: 1.2rem;
}
.facility_modal .modal_content_wrap,
.accessories_modal .modal_content_wrap{
	background: #BEBEBE;
	aspect-ratio: unset;
	overflow: unset;
}
.facility_modal .modal-slick,
.accessories_modal .modal-slick{
	max-width: unset;
	aspect-ratio: unset;
	/*height: calc(100vh - 10rem);*/
}
.accessories_modal .modal-slick{
	max-width: 60rem;
}
.facility_modal .slick-track,
.accessories_modal .slick-track{
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	max-height: calc(100vh - 20rem);
}
.facility_modal .modal_content ul li,
.accessories_modal .modal_content ul li{
	/*height: calc(100vh - 10rem);*/
	height: fit-content;
}
.facility_modal .modal-slick li img,
.accessories_modal .modal-slick li img{
	max-width: unset;
	width: 100%;
	/* 画像の縦横比 2：3（縦：横） */
	/*aspect-ratio: 3 / 2;*/
	aspect-ratio: unset;
	height: 100%;
	max-height: calc(100vh - 20rem);
	object-fit: contain;
	margin: 0 auto;
}
.accessories_modal .modal-slick li img{
	max-height: calc(100vh - 25rem);
}
.accessories_modal .slick-dots{
	bottom: 0!important;
}


/* サンプル写真 */
#library_wrap{
	max-width: unset!important;
	padding: 0rem 0 15rem!important;
}
.library_photo_wrap img{
	width: 100%;
	height: auto;
	display: block;
	margin-bottom: 1rem;
}


/* service 共通 */
.service_page{margin-bottom: -0.1rem;}
#service_wrap{
	max-width: 80rem!important;
	padding: 0rem 1rem 15rem!important;
}
.service_page .photo_wrap img{
	display: block;
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	margin-bottom: 1rem;
}

.service_option{
	margin-top: 5rem;
}
.service_option h4,
.service_option h3{
	margin-bottom: 2rem;
	font-size: 2.4rem;
}
.service_option h4 span,
.service_option h3 span{
	display: inline-block;
	font-size: 1.2rem;
	margin-left: 1rem;
}
.service_option ul li{
	font-size: 1.2rem;
	margin-bottom: 2rem;
}

/* service costume - hair and makeup */

/* service costume - service ordersuit */
.costume_wrap p:nth-child(2){
	text-align: center;
	font-size: 1rem;
	margin-bottom: 3rem;
}
.catalog_link_wrap{
	margin: 5rem auto 0;
	text-align: center;
}
.catalog_link_wrap>p{
	font-size: 1.2rem;
}
.catalog_link_wrap>p::after{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-top: 2rem solid #FFFFFF;
	border-right: 2rem solid transparent;
	border-left: 2rem solid transparent;
	margin: 2rem auto 3rem;
}
.catalog_link_wrap ul{
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	width: 100%;
	max-width: 60rem;
	margin: 0 auto;
}
.catalog_link_wrap ul li{
	width: 45%;
	/* aspect-ratio: 1 / 1; */
	position: relative;
}
.catalog_link_wrap ul li::before{
	content:"";
	display: block;
	padding-top: 100%;
}
.catalog_link_wrap ul li a{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: #FFFFFF;
}
.catalog_link_wrap ul li a img{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.2;
}
.catalog_link_wrap ul li a p{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto!important;
	width: fit-content;
	height: fit-content;
	color: #193049;
	/* font-weight: 500; */
	font-size: 1.6rem;
}

/* service hair and makeup */
#hairmake_catalog{
	margin-top: 8rem;
	padding-top: 8rem;
	border-top: 0.1rem solid #FFFFFF;
}
#hairmake_catalog h2{
	margin: 0;
	letter-spacing: 0.2rem;
}
#hairmake_catalog .hairmake_img_wrap{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
	align-content: center;
	margin-top: 5rem;
}
#hairmake_catalog .hairmake_img_wrap img{
	width: calc(50% - 1rem);
	margin-bottom: 2rem;
}

/* service ordersuit */
.ordersuit_top_ime_wrap{
	width: 100%;
	height: fit-content;
	margin: 4rem auto 0;
}
.ordersuit_wrap .price_wrap,
.ordersuit_wrap .option_wrap{
	padding: 4rem 0 0;
}
.ordersuit_wrap .price_wrap,
.ordersuit_wrap .option_order{
	/* padding-right: 2rem;
	padding-left: 2rem;
	width: calc(100% - 4rem); */
	margin: 0 auto;
}
.ordersuit_wrap .set_order{
	margin-bottom: 3rem;
}
.ordersuit_wrap .set_order h3{
	font-size: 1.3rem;
}

.ordersuit_wrap .set_order table,
.ordersuit_wrap .option_order table{
	width: 100%;
	margin-top: 2rem;
	margin-bottom: 1rem;
}
.ordersuit_wrap .set_order tr{
	width: 100%;
}
.ordersuit_wrap .set_order th{
	width: 10rem;
}
.ordersuit_wrap .set_order td{
	width: calc(100% - 10rem);
	line-height: 1.8em;
}
.ordersuit_wrap .set_order th,
.ordersuit_wrap .option_order th{
	text-align: left;
}
.ordersuit_wrap .set_order th,
.ordersuit_wrap .set_order td,
.ordersuit_wrap .option_order th,
.ordersuit_wrap .option_order td{
	padding-bottom: 1rem;
}
.ordersuit_wrap .set_order tr:nth-child(2n) th,
.ordersuit_wrap .set_order tr:nth-child(2n) td{
	padding-bottom: 3rem;
}
.ordersuit_wrap .set_order th,
.ordersuit_wrap .special_order h3>span:first-child{
	font-size: 1.8rem;
	text-decoration: underline;
}
.ordersuit_wrap .special_order h3>span:first-child{
	text-decoration: none;
	border-bottom: 0.1rem solid #FFFFFF;
}
.ordersuit_wrap .option_order th{
	font-size: 1.3rem;
	width: 9.5rem;
}
.ordersuit_wrap .set_order td,
.ordersuit_wrap .option_order td{
	font-size: 1.2rem;
}
.ordersuit_wrap .set_order p span{
	font-size: 1.2rem;
}
.ordersuit_wrap .option_order td{
	text-align: left;
}
.ordersuit_wrap .special_order{
	position: relative;
	margin-bottom: 2rem;
}
.ordersuit_wrap .special_order>div{
	position: absolute;
	top:0; right:0; bottom:0; left:0;
	margin: auto;
	width: calc(100% - 4rem);
	max-width: 50rem;
	height: fit-content;
	white-space: nowrap;
	text-align: center;
}
.ordersuit_wrap .special_order h3{
	font-size: 1.2rem;
	margin-bottom: 0.5rem;
}
.ordersuit_wrap .special_order h3>span:first-child{
	display: block;
}
.ordersuit_wrap .special_order h3 span:last-child{
	font-size: 1.2rem;
}
.ordersuit_wrap .special_order h3 span:last-child span{
	font-size: 1.2rem;
}
.ordersuit_wrap .special_order>div p{
	font-size: 1rem;
	line-height: 1.2em;
	white-space: normal;
	text-align: left;
}
.ordersuit_wrap .option_order{
	margin-bottom: 5rem;
}
.ordersuit_wrap .option_order h3{
	font-size: 2.4rem;
}


/* service PHOTO/MOVIE ITEM */
.service_photo,
.service_movie{
	margin: 0;
	padding: 5rem 0;
	/* border-top: 0.1rem solid #000000; */
}
.service_movie{
	padding-bottom: 0;
}
.service_photo h3,
.service_movie h3{
	font-size: 2rem;
	text-align: center;
	margin-bottom: 3rem;
}
.service_photo h3 span,
.service_movie h3 span{
	display: block;
	text-align: center;
}
.service_photo p:nth-child(2),
.service_movie p:nth-child(2){
	text-align: center;
	font-size: 1rem;
	margin-bottom: 3rem;
}
.service_movie .movie_wrap,
#report_wrap .movie_wrap{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.service_movie .movie_wrap{
	margin-bottom: 3rem;
}
.service_movie .movie_wrap iframe,
#report_wrap .movie_wrap iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}


.photo_item_wrap h4{
	font-size: 1.4rem;
	font-weight: bold;
	margin: 1rem 0;
}
.photo_item_wrap p{
	font-size: 1.2rem;
}
.photo_item_wrap img{
	display: block;
}
.photo_item_wrap .photo_original,
.photo_item_wrap .photo_item_list_wrap li{
	margin-bottom: 4rem;
}

.photo_item_note{
	margin: 2rem 0 5rem;
	line-height: 2rem;
	padding: 0 1rem;
	width: fit-content;
	position: relative;
	font-size: 1.2rem;
}
.photo_item_note span{
	display: inline-block;
	width: 2rem;
	height: 2rem;
	line-height: 2rem;
	text-align: center;
	background: #000000;
	color: #FFFFFF;
	border-radius: 50%;
}
.photo_item_note::before,
.photo_item_note::after{
	content: '';
	position: absolute;
	top: 0; bottom: 0;
	margin: auto 0;
	display: block;
	width: 0.5rem;
	height: calc(100% + 1rem);
	border-top: 0.1rem solid #000000;
	border-bottom: 0.1rem solid #000000;
	font-size: 1.4rem;
}
.photo_item_note::before{
	left: 0;
	border-left: 0.1rem solid #000000;
}
.photo_item_note::after{
	right: 0;
	border-right: 0.1rem solid #000000;
}

.photo_original_img a{
	display: flex;
	flex-flow: row nowrap;
}
.photo_original_img a img{
	width: 50%;
	height: 40vw;
	max-height: 30rem;
	object-fit: cover;
}

.option_photo_album_wrap{
	margin: 8rem 0;
	padding: 5rem 0;
	border-top: 0.1rem dashed #000000;
	border-bottom: 0.1rem dashed #000000;
}

.photo_item_premium_value{
	margin: 3rem auto;
	text-align: center;
	font-size: 1.4rem;
}
.photo_item_premium_value>div{
	border-bottom: 0.1rem solid #000000;
	width: fit-content;
	margin: 0 auto 0.5rem;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 2.4rem;
}
.photo_item_premium_value>div>span{
	display: inline-block;
	width: 2rem;
	height: 2rem;
	line-height: 2rem;
	background: #000000;
	color: #FFFFFF;
	font-weight: bold;
	font-size: 1.6rem;
}
.photo_item_premium_value>span{
	font-size: 1.2rem;
}


/* service retouch */
.retouch_photo{
	margin: 7rem auto 0;
	max-width: 50rem;
}
.retouch_photo p{
	text-align: center;
	font-size: 1.2rem;
	margin-bottom: 5rem;
}
.twentytwenty-container{
	width: 100%;
	height: fit-content;
	/* max-width: 40rem; */
	margin: 0 auto 2rem;
}
.twentytwenty-container img{
	width: 100%;
	height: auto;
}



/* ACCESS */
#access_wrap{
	padding-bottom: 5rem!important;
}
#access_wrap .section_header img{
	display: block;
	margin: 5rem 0;
	width: 30%;
	height: auto;
}
#access_wrap p{
	line-height: 3rem;
	font-size: 1.2rem;
}
.access_detail{
	margin: 0 0 10rem;
}
.access_detail>div{
	margin-bottom: 7rem;
}
.access_detail>div p{
	margin-bottom: 2rem;
}
.map_wrap iframe{
	width: calc(100% - 6rem);
	margin: 0 3rem;
	aspect-ratio: 1 / 1;
	filter:grayscale(100%);
	-webkit-filter:grayscale(100%)
}



/* レポート */
#report_wrap .section_header p{
	font-size: 1rem;
	margin-bottom: 5rem;
}
#report_wrap article{
	margin-bottom: 8rem;
	padding-bottom: 3rem;
	border-bottom: 0.1rem solid #dddddd;
}
#report_wrap article:last-child{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
#report_wrap article>*{
	display: block;
	margin-bottom: 3rem;
}
#report_wrap .pager{
	margin: 10rem auto 0;
}


/* CAMPAIGN キャンペーン */
#campaign_page h2{
	max-width: 52rem;
	margin-left: auto;
	margin-right: auto;
}
#campaign_page .campaign_wrap{
	margin: 0 auto;
	padding: 5rem 1rem;
	max-width: 50rem;
	border-top: 0.1rem solid #000000;
}
#campaign_page .campaign_wrap *{
	font-family: 'Zen Kaku Gothic Antique', sans-serif!important;
	font-size: 1.4rem;
}
.campaign_name{
	text-align: center;
	margin-bottom: 3rem;
}
.campaign_name *{
	font-weight: 500;
}
.campaign_name h3{
	/* color: #FFFFFF; */
	width: fit-content;
	margin: 0 auto 0.5rem;
	/* padding: 1rem; */
	padding: 1rem 4rem;
	border-radius: 0.5rem;
	font-size: 1.6rem!important;
}
.campaign_name h3 .text-big{
	font-size: 2rem!important;
}

#campaign_00 .campaign_name h3{ background: #B9CB01; padding: 1rem 4rem;}
#campaign_01 .campaign_name h3{ background: #FBD23E;}
#campaign_02 .campaign_name h3{ background: #ef8259;}
#campaign_03 .campaign_name h3{ background: #9bcb6c;}
#campaign_04 .campaign_name h3{ background: #f3a69e;}
#campaign_05 .campaign_name h3{ background: #7ac283;}
#campaign_06 .campaign_name h3{ background: #f2a251;}
#campaign_07 .campaign_name h3{ background: #fbc3cd;}
#campaign_08 .campaign_name h3{ background: #c8e6d7;}
#campaign_09 .campaign_name h3{ background: #fce17d;}
#campaign_10 .campaign_name h3{ background: #f09b6e;}
#campaign_11 .campaign_name h3{ background: #cade43;}
#campaign_12 .campaign_name h3{ background: #f4c3a5;}

.campaign_detail_wrap>dl{
	margin-bottom: 3rem;
}
.campaign_detail_wrap>dl:last-child{
	margin-bottom: 0rem;
}
.campaign_detail_wrap>dl>dt{
	font-weight: 500;
	margin-bottom: 1rem;
}

.campaign_period dd{
	display: flex;
	flex-flow: row wrap;
	align-items: baseline;
	padding-left: 2rem;
}
.campaign_period dd span{
	font-size: 2.2rem!important;
	font-weight: 500;
	letter-spacing: 0.2em;
}
.campaign_period dd span span{
	display: block;
	font-size: 1.4rem!important;
	letter-spacing: 0.02rem;
}
.campaign_period dd span.date_note{
	font-size: 1.2rem!important;
	font-weight: 400;
	margin-left: 0.5rem;
	letter-spacing: 0.02rem;
}
.campaign_period dd span.campaign_period_note{
	font-size: 1rem;
	margin-left: 0;
}
.campaign_img_wrap{
	text-align: center;
}
.pc_campaign_img_wrap{
	display: none;
}
.campaign_img_wrap img{
	width: 60%;
	max-width: 40rem;
}
.campaign_detail_text_wrap{
	padding-left: 2rem;
}
.campaign_detail_text_wrap .text_l{
	font-size: 2rem!important;
	line-height: 1.5em;
	margin-top: 2rem;
	margin-bottom: 1.5rem;
	font-weight: 500;
}
.campaign_detail_text_wrap .text_l br{
	display: none;
}
.campaign_detail_text_wrap .text_l br.br_sp{
	display: block;
}

.campaign_detail_text_wrap .text_m{
	font-size: 1.4rem!important;
	line-height: 1.5em;
	/* margin-bottom: 0.5rem; */
	font-weight: 500;
}
.campaign_detail_text_wrap .text_s{
	font-size: 1.2rem!important;
	line-height: 1.5em;
}

.campaign_plan_list>li{
	/* border-bottom: 0.1rem dashed #000000; */
	/* padding: 3rem 0; */
	padding: 0.5rem 0;
}
.campaign_plan_list>li:first-child{
	/* padding-top: 2rem; */
}
.campaign_plan_list>li:last-child{
	border-bottom: none;
}

.campaign_plan_list .price,
.campaign_plan_list .benefits{
	color: #FF8B64;
}
.benefits span{
	font-size: 2rem !important;
	font-weight: bold;
}
.campaign_plan_list .del{
	text-decoration : line-through;
	color: #193049;
}
.campaign_plan_list dt{
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
}
.campaign_plan_list dt span{
	display: block;
	width: 3rem;
	height: 3rem;
	line-height: 3rem;
	background: #193049;
	color: #FFFFFF;
	border-radius: 50%;
	text-align: center;
	letter-spacing: 0;
	margin-right: 0.5rem;
}

.campaign_none_price_wrap dd{
	/* padding-left: 3.5rem; */
}

.campaign_arrow,
.campaign_plus{
	width: fit-content;
	margin: 0.5rem auto;
}
.campaign_plus{
	margin: 1rem auto 1rem 14rem;
}
.campaign_arrow span,
.campaign_plus span{
	display: inline-block;
	vertical-align: middle;
	position: relative;
	width: 0.1rem;
	height: 4rem;
	background: #000000;
}
.campaign_arrow span::before{
	content: '';
	width: 2rem;
	height: 2rem;
	border: 0.1rem solid #000000;
	border-top: 0;
	border-right: 0;
	transform: rotate(-45deg);
	transform-origin: bottom left;
	position: absolute;
	left: 50%;
	bottom: 0;
	box-sizing: border-box;
}
.campaign_plus span:before{
	content: '';
	display: block;
	width: 4rem;
	height: 0.1rem;
	border-top: 0.1rem solid #000000;
	position: absolute;
	left: -2rem;
	bottom: 2rem;
}

.campaign_arrow{
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	margin: 2rem 0;
	padding-left: 7rem;
}
.campaign_arrow img{
	display: block;
	width: 15rem;
	margin-left: 2rem;
}
.campaign_arrow + .campaign_price_wrap dl{
	justify-content: flex-start;
	margin-left: 3.5rem;
}
#campaign_page .campaign_wrap .right_arrow{
	font-family: '游明朝', 'Yu Mincho', 'Hiragino Mincho Pro', serif !important;
	font-size: 1.5rem;
}

.campaign_price_wrap dl,
.campaign_benefits_wrap dl{
	display: flex;
	flex-flow: row nowrap;
	/* justify-content: center; */
	align-items: center;
}
.campaign_benefits_wrap dl{
	align-items: flex-end;
}
.campaign_benefits_wrap dt{
	align-self: center;
	margin-right: 1rem;
}
.campaign_benefits_wrap dt.benefits2{
	margin-right: 2rem;
}
.campaign_price_wrap dt span,
.campaign_benefits_wrap dt span{
	display: block;
	width: 4rem;
	height: 4rem;
	line-height: 4rem;
	background: #FFFFFF;
	color: #193049;
	border-radius: 50%;
	text-align: center;
	letter-spacing: 0;
	margin-right: 0.5rem;
	border: 0.1rem solid #193049;
}
.campaign_price_wrap dd .price{
	font-size: 2rem!important;
	white-space: nowrap;
}
.campaign_price_wrap dd .price span{
	font-size: 1.2rem!important;
}
/* .campaign_benefits_wrap dd:last-child{
	width: 24%;
	padding-left: 5%;
	height: 15rem;
} */
.campaign_benefits_wrap dd:last-child img{
	display: block;
	height: 100%;
	width: 100%;
	transform: rotate(10deg);
	object-fit: contain;
	object-position: bottom;
}
.campaign_benefits_wrap dl p{
	text-align: center;
}

#campaign_basic h3{
	margin-bottom: 4rem;
	font-weight: 500;
}
#campaign_basic ul li{
	line-height: 1.5em;
	margin-bottom: 1.5em;
	padding-left: 1.5em;
	text-indent: -1.5em;
}
#campaign_basic .campaign_basic_set_other li,
#campaign_basic .campaign_not_basic ul li{
	margin-bottom: 0;
}
#campaign_basic>ul,
#campaign_basic .campaign_basic_set>div{
	margin-top: 3rem;
}
#campaign_basic .campaign_basic_set ul,
#campaign_basic .campaign_basic_set>div{
	margin-top: 2rem;
}
#campaign_basic .campaign_basic_set_other{
	margin-top: 4rem;
}

#campaign_basic .campaign_basic_set>div{
	text-align: center;
	font-size: 4rem!important;
	font-family: 'Shippori Mincho', serif!important;
}

.campaign_target dd{
	padding-left: 2rem;
}

#campaign_basic .campaign_not_basic{
	margin-top: 7rem;
}


#campaign_page #campaign_00>*{
	width: 90%;
	max-width: 35rem;
	margin-left: auto;
	margin-right: auto;
}
#campaign_page #campaign_00 .campaign_price_wrap dd .price span{
	display: inline-block;
}
#campaign_page #campaign_00 a{
	display: block;
	margin: 3rem auto 0;
}
#campaign_page #campaign_00 .campaign_none_price_wrap dd{
	/* text-align: center; */
	/* padding-left: 0rem; */
	padding-left: 4rem;
}
#campaign_page #campaign_00 .campaign_none_price_wrap dd ul{
	margin-top: 1rem;
}
#campaign_page #campaign_00 .campaign_none_price_wrap dd ul li{
	font-size: 1rem;
}
#campaign_page #campaign_00 .campaign_plan_list>li:first-child{
	padding-top: 0;
}
#campaign_page #campaign_00 .campaign_none_price_wrap dt{
	font-weight: bold;
	font-size: 1.8rem;
	padding: 2rem 0 1rem;
}
br.campaign_pc{
	display: none;
}

#campaign_page #campaign_00 .campaign_plan_list .del,
#campaign_page #campaign_00 .campaign_plan_list .price,
#campaign_page #campaign_00 .campaign_plan_list .price>*{
	font-size: 1.5rem!important;
}
#campaign_page #campaign_00 .campaign_price_wrap dd .price{
	/* font-size: 6rem!important; */
	font-size: 2rem!important;
	font-weight: bold;
}
#campaign_page #campaign_00 .campaign_arrow{
	margin: 3rem auto;
	padding-left: 4rem;
}
.cam07_img_wrap>div{
	text-align: left;
}
.cam07_img_wrap>div>img{
	width: 185px;
}
.cam07_img_wrap>p{
	width: 185px;
	margin: 0 0 1.5rem;
	font-size: 3rem !important;
	font-family: 'Zen Kaku Gothic Antique', sans-serif !important;
	font-weight: 500;
	text-align: center;
}
@media screen and (min-width: 768px) {
	#campaign_page #campaign_00>*{
		max-width: unset;
		width: 100%;
	}
	#campaign_page #campaign_00 .campaign_none_price_wrap dt{
		font-size: 2.2rem;
		padding: 0;
	}
	#campaign_page #campaign_00 .campaign_none_price_wrap dd{
		text-align: left;
		padding-left: 3rem;
	}
	.campaign_plan_detail{
		padding-left: 0 !important;
		padding-top: 0 !important;
	}
	#campaign_page #campaign_00 .campaign_plan_list .del,
	#campaign_page #campaign_00 .campaign_plan_list .price,
	#campaign_page #campaign_00 .campaign_plan_list .price>*{
		/* font-size: 2.4rem!important; */
		font-size: 1.2rem!important;
		white-space: nowrap;
	}
	#campaign_page #campaign_00 .campaign_arrow{
		padding-left: 0;
	}
	#campaign_page #campaign_00 .campaign_price_wrap dd .price span{
		display: block;
	}
	.cam07_img_wrap>div>img{
		width: auto;
		height: 200px;
	}
	.cam07_img_wrap>p{
		width: auto;
	}
}
@media screen and (min-width: 1024px) {
	#campaign_page #campaign_00 .campaign_plan_list .del,
	#campaign_page #campaign_00 .campaign_plan_list .price,
	#campaign_page #campaign_00 .campaign_plan_list .price>*{
		font-size: 2rem!important;
	}
}



@media screen and (min-width: 375px) {
	/* common */
	p,a{font-size: 1.6rem;}

	/* ヘッダー */
	.navToggle{
		right: 2rem;
	}
	.main_nav.active {
		width: calc(100% - 4rem);
		height: calc(100% - 13rem);
		padding: 11rem 2rem 2rem;
	}
	.main_nav.active li,
	.main_nav.active li a{
		font-size: 1.2rem;
		display: block;
		width: fit-content;
	}
	.main_nav.active ul.header_top_link,
	.main_nav.active ul.header_page_link,
	.main_nav.active ul.company{
		margin-left: 2rem;
	}
	.main_nav.active ul.header_page_link{
		padding-bottom: 2rem;
		margin-bottom: 2rem;
	}
	.main_nav.active ul.header_top_link{
		padding-bottom: 1rem;
		margin-bottom: 0rem;
	}
	.main_nav.active .sns_wrap{
		right: 2rem;
		bottom: 2.5rem;
	}

	/* ヘッダー */
	header.top_header h1,
	header.header.active h1,
	header.header h1{
		top: 2rem;
		left: 2rem;
		height: 8rem;
	}

	
	/* フッター */
	footer .copylignt{
		font-size: 1.2rem;
	}

	/* トップページ */
	.bgimg_on_inner h2,
	#retouch h2{
		/* font-size: 1.2rem; */
		font-size: 1.5rem;
		/* line-height: 1.4rem; */
		line-height: 1.7rem;
		letter-spacing: 0.5rem;
	}
	#history .bgimg_on_inner h2{
		font-size: 1.6rem;
		line-height: 3rem;
	}
	#service .letter0 {
		font-size: 1.4rem;
	}

	#campaign .campaign_list a{
		/* width: 40%; */
		/* margin-bottom: 0; */
		/* width: 45rem; */
	}

	

	.plan_name h3 span{
		margin-bottom: 0;
		display: inline-block;
	}
	.location_plan_name h3 span{
		/* display: block; */
		margin-right: 0;
	}


	#covid ul.covid_icon li{
		/* width: 30%; */
	}

	.company_list *{
		font-size: 1.2rem;
	}
	.thanks_wrap span.sp_only{
	font-size: 1.6rem;
	}

	
	
	#facility_wrap .section_head{
		border-bottom: none;
	}
	#facility_wrap ul li a p:nth-child(3){
		font-size: 1.4rem;
	}


	/* service */
	/* costume */
	/* PHOTO/MOVIE ITEM */
	#service_wrap{
		padding: 0rem 3rem 15rem!important;
	}

	/* レポート */
	#report_wrap .section_header p{
		font-size: 1.2rem;
	}

	/* 予約 */
	.reserve_calendar_remarks p,
	.reserve_calendar_remarks span{
		font-size: 1.2rem;
	}

	.plan_set{
		margin: 0 2rem;
	}
}


@media screen and (min-width: 450px) {
	.sp_only{display: none!important;}
	.tab_only{display: block!important;}
	.pc_only{display: none!important;}
	#covid ul.covid_icon li{
		width: 30%;
	}

	/* レポート */
	#report_wrap .section_header p{
		font-size: 1.4rem;
	}

	/* service ordersuit */
	.ordersuit_wrap .set_order h3{
		font-size: 1.6rem;
	}
	.ordersuit_wrap .set_order th{
		font-size: 2.2rem;
		width: 12rem;
	}
	.ordersuit_wrap .set_order td{
		width: calc(100% - 12rem);
	}
	.ordersuit_wrap .set_order td{
		font-size: 1.4rem;
	}
	.ordersuit_wrap .special_order h3{
		font-size: 1.4rem;
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: flex-end;
		margin-bottom: 1rem;
	}
	.ordersuit_wrap .special_order h3 span:first-child{
		font-size: 3.8vw;
	}
	.ordersuit_wrap .special_order h3 span:last-child{
		font-size: 2.4vw;
	}
	.ordersuit_wrap .special_order h3 span:last-child span{
		font-size: 2vw;
	}
	.ordersuit_wrap .special_order>div{
		
	}
	.ordersuit_wrap .special_order>div p{
		font-size: 1.2rem;
		line-height: 1.5em;
	}
	.ordersuit_wrap .option_order th{
		font-size: 1.4rem;
	}

	/* トップ　プロセス */
	#process .flow_number_wrap{
		width: calc(100% - 19rem);
	}
	#process .flow_number_wrap .flow_number{
		font-size: 2rem;
	}
	#process .flow_text_wrap{
		width: 18rem;
	}
	#process .flow_text_wrap .flow_title{
		font-size: 1.4rem;
		margin-bottom: 0.5rem;
	}
	#process .flow_text_wrap .flow_text{
		font-size: 1.2rem;
	}
}



@media screen and (min-width: 768px) {
	/* common */
	.sp_only{display: none!important;}
	.tab_only{display: none!important;}
	.pc_only{display: block!important;}
	p,a{font-size: 1.6rem;}

	section{padding: 10rem 1rem;}
	main{padding-top: 18rem!important;}
	main#top_page{padding-top: 0rem!important;}
	
	h2{
		font-size: 3rem;
		line-height: 3rem;
		margin-bottom: 5rem;
	}
	#history .bgimg_on_inner h2{
		font-size: 2.6rem;
		line-height: 5rem;
	}
	h2 span{
		font-size: 1.8rem;
	}


	#campaign{
		padding: 5rem 1rem;
	}
	#campaign .campaign_list{
		width: calc(100% - 2rem);
		max-width: 80rem;
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: center;
	}
	#campaign .campaign_list a{
		/* width: 30rem; */
		/* width: 100%; */
		width: calc(50% - 1.5rem);
		margin-bottom: 0;
	}


	#history .bgimg_on_inner{
		flex-flow: row-reverse nowrap;
	}
	#history .bgimg_on_inner>h2{
		padding-top: 3rem;
	}
	#history .bgimg_on_inner>div h2{
		padding-top: 0;
	}


	/* ヘッダー */
	header.top_header h1,
	header.header.active h1,
	header.header h1{
		display: block;
		top: 5rem;
		left: 5rem;
	}
	.navToggle{
		top: 5rem;
		right: 5rem;
	}
	.menu_yoyaku{
		top: 9rem;
		right: 5rem;
	}
	.menu_yoyaku li a{
		font-size: 1.4rem;
	}

	.main_nav.active{
		justify-content: center;
	}
	.main_nav.active .link_wrap{
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: stretch;
		width: 100%;
		max-width: 100rem;
		margin: 0 auto;
		height: fit-content;
	}
	.main_nav.active .main_nav_link_wrap{
		width: 100%;
		max-width: 100rem;
	}
	.main_nav.active ul.header_page_link,
	.main_nav.active ul.company{
		padding: 0;
		margin: 0;
		/* height: 38rem; */
		justify-content: flex-start;
	}
	.main_nav.active ul.header_page_link{
		border-bottom: none;
		border-right: 0.1rem solid #bbbbbb;
		width: calc(45% - 0.1rem);
	}
	.main_nav.active ul.header_top_link{
		margin: 0;
		padding-bottom: 3rem;
	}
	.main_nav.active ul.company{
		width: 50%;
	}
	.main_nav.active ul.header_page_link li,
	.main_nav.active ul.company li{
		line-height: 2rem;
		padding-bottom: 3rem;
	}
	.main_nav.active ul.header_page_link li:last-child,
	.main_nav.active ul.company li:last-child{
		padding-bottom: 0;
	}
	.main_nav.active li,
	.main_nav.active li a{
		font-size: 1.2rem;
		line-height: 2rem;
	}
	.main_nav.active li span{
		font-size: 1rem;
		margin-left: 2rem;
	}
	.main_nav.active li span::before{
		height: 1.5rem;
		margin-right: 2rem;
	}
	.main_nav.active .sns_wrap{
		bottom: calc(50% - 25rem);
		/* left: calc(50% + 3rem); */
		right: 0;
		flex-flow: row nowrap;
		justify-content: flex-start;
		width: 50%;
		/* max-width: 15rem; */
		max-width: 50rem;
	}
	.main_nav.active .sns_wrap li{
		padding: 0 3rem 0 0;
	}
	.main_nav.active .sns_wrap li:first-child{
		order: 1;
	}
	.main_nav.active .sns_wrap li:nth-child(2){
		order: 2;
	}
	.main_nav.active .sns_wrap li:last-child{
		order: 0;
	}
	.main_nav.active .sns_wrap img{
		height: 3rem;
		width: auto;
	}
	.menu_yoyaku{
		display: block;
	}
	.menu_yoyaku.active li{
		/* height: 2.2rem; */
	}
	.menu_yoyaku.active li a{
		/* font-size: 1.6rem!important; */
		/* line-height: 2.2rem!important; */
	}



	/* フッター */
	footer>div{
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: center;
		max-width: 70rem;
	}
	footer>div>div{
		text-align: left;
		border-right: 0.1rem solid #FFFFFF;
		width: 50%;
	}
	footer ul{
		margin: 0;
	}
	footer h1{
		margin-left: 0;
	}

	/* トップページ */
	/* トップMVスワイパー */
	#top_mv_swiper{
		overflow: hidden;
	}
	#top_mv_swiper .swiper-wrapper{
		height: 60vw;
	}
	#top_mv_swiper .swiper-pagination{
		bottom: 3%;
	}
	/* #sound_switch{
		bottom: 3rem;
		right: 5rem;
	} */

	.bgimg_on_inner h2,
	#retouch h2{
		font-size: 3rem;
		line-height: 3rem;
	}
	.bgimg_on_inner{
		padding: 3rem;
	}
	#history .bgimg_on_inner{
		width: calc(100% - 6rem);
	}

	#news{
		padding: 5rem 1rem;
	}
	#news h2,
	#news ul{
		max-width: 85rem;
		text-align: left;
	}
	#news ul{
		margin: 0 auto;
	}
	#news h2{
		margin-bottom: 2rem;
	}
	#news ul li{
		flex-flow: row nowrap;
		padding-bottom: 1rem;
	}
	#news ul li,
	#news ul li span,
	#news ul li a,
	#news ul li div{
		font-size: 1.6rem;
	}
	#news ul li span{
		width: 13rem;
		margin-bottom: 0;
	}
	#news ul li a,
	#news ul li div{
		width: calc(100% - 13rem);
	}

	#plan h2{
		margin-bottom: 0;
	}
	#plan h2 span{
		font-size: 2.2rem;
		margin: 0;
	}
	#plan .bgimg_on_inner div{
		font-size: 1.4rem;
	}


	
	#service .letter0 {
		font-size: 2rem;
	}

	#covid>div{
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		max-width: 100rem;
		margin: 7.5rem auto 0;
	}
	#covid>div>div{
		padding: 2.5rem 4rem;
		margin: 0;
	}
	#covid>div>div:first-child{
		max-width: 30rem;
		margin-right: 1rem;
	}
	#covid>div>div:last-child{
		max-width: 48rem;
	}
	#covid>div>div:first-child ul{
		height: calc(100% - 6rem);
		align-content: space-between;
	}
	
	#covid ul.covid_icon li{
		width: 8.5rem;
	}
	#covid>div>div>p{
		text-align: left;
		margin-bottom: 0.5rem;
	}
	

	/* 予約 */
	.pre_day_wrap div>*{
		margin-right: 3rem!important;
		font-size: 1.6rem;
	}
	.reserve_flow,
	.reserve_request{
		margin: 7rem auto;
	}
	.reserve_flow{
		display: flex;
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items: flex-start;
		padding: 3rem 3rem 0;
		width: calc(100% - 12rem);
		max-width: 94rem;
	}
	.reserve_request{
		padding: 3rem 5rem 0;
		width: calc(100% - 16rem);
		max-width: 90rem;
	}
	.reserve_flow h3{
		white-space: nowrap;
	}
	.reserve_month,
	.reserve_month a{
		font-size: 2rem;
	}
	table.reserve_calendar td div{
		padding: 1rem 0;
		font-size: 1.6rem;
	}
	#reserve_form_wrap dd{
		flex-flow: row nowrap;
	}
	#reserve_form_wrap dd .w100{
		width: unset;
		margin-right: 2rem;
	}
	input[type=checkbox] + label,
	input[type=radio] + label{
		font-size: 1.6rem!important;
	}
	.modal_content{
		width: calc(100% - 10rem);
	}
	.modal_content p.dress_code{
		margin:1rem auto 2rem;
	}
	/* モーダル内スリック */
	.modal-slick .prev-arrow,
	.modal-slick .next-arrow{
		width: 5rem;
		line-height: 5rem;
		top: calc(50% - 2.5rem);
		transform: scale(1, 3.5);
	}
	.modal-slick .prev-arrow{
		left: -5rem;
	}
	.modal-slick .next-arrow{
		right: -5rem;
	}
	.slick-dotted.slick-slider{
		margin-bottom: 0!important;
	}
	.slick-dots{
		justify-content: flex-end;
	}

	
	.thanks_wrap span.pc_only{
		display: inline-block!important;
		font-size: 1.6rem;
	}

	/* PLAN */
	.plan_detail{
		padding: 7rem 0;
	}
	.plan_detail *{
		font-family: 'Zen Kaku Gothic Antique', sans-serif;
	}
	.location_plan_name h3{
		margin-bottom: 4rem;
	}
	.location_plan_name h3 span{
		display: inline-block;
	}
	.plan_name img{
		width: 5rem;
		height: 5rem;
	}
	.detail_flex{
		margin: 5rem 0 0;
	}
	.plan_set{
		margin: 0;
	}
	.plan_set_list{
		display: flex;
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items: flex-start;
		width: 100%;
	}
	.plan_set_list ul{
		width: fit-content;
		padding-right: 3rem;
	}

	.no_plan {
		margin: 0;
		padding: 0 0 3rem 2rem;
	}
	
	#plan_detail_wrap h2 img{
		right: -7.5rem;
		width: 6rem;
	}
	#plan_detail_wrap ul.list_dot{
	}
	.price_plan{
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: stretch;
		margin-bottom: 9rem;
	}
	.location_plan_wrap .price_plan{
		margin-bottom: 2rem;
	}
	.location_plan_wrap>p{
		margin-bottom: 5rem;
	}
	.price_plan dl{
		width: fit-content;
		padding: 2rem 0.5rem 0;
	}
	.price_plan .line{
		display: block;
		width: 0.1rem;
		background: #dddddd;
	}
	.price_plan_wrap{
		margin: 0;
		padding: 0 0 0 0;
	}
	.price_plan dl:last-child::after{
		display: none;
	}
	.option_plan{
		margin-left: 0;
		padding-left: 2rem;
	}
	#plan_catalog>p:nth-child(3),
	#plan_catalog>p:last-child{
		font-size: 1.6rem;
	}
	#plan_catalog>p:nth-child(3) span{
		font-size: 1.2rem;
	}

	/* PrivacyPolicy　company */
	#policy_wrap h2{
		margin: 0 0 5rem;
	}
	#policy_wrap>div{
		padding: 7rem 5rem 2rem;
	}
	#policy_wrap>div p,
	#policy_wrap>div span{
		font-size: 1.4rem;
	}
	#policy_wrap>div span{
		/* font-weight: 500; */
	}

	.company_list{
		display: flex;
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items: flex-start;
		border-top: 0.2rem solid #F0F0EB;
		padding: 5rem 0 2rem;
	}
	.company_list.lobjet_wrap{
		border-top: 0.1rem solid #000000;
		border-bottom: 0.1rem solid #000000;
	}
	.company_list.lobjet_wrap dt{
		border: none;
	}
	.company_list:last-child{
		border: none;
	}
	.company_list dt{
		padding-left: 5rem;
		width: calc(40% - 5rem);
	}
	.company_list dd{
		width: calc(60% - 5rem);
		padding-top: 0;
	}
	.company_list.lobjet_wrap dd li{
		padding: 3rem 0;
	}

	/* 施設のご紹介 */
	#facility_wrap ul{
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
		align-items: flex-start;
		align-content: flex-start;
	}
	#facility_wrap ul li{
		width: calc(50% - 1rem);
	}

	/* service */
	/* service hair and makeup */
	#hairmake_catalog{
		margin-top: 8rem;
		padding-top: 3rem;
	}
	#hairmake_catalog .hairmake_img_wrap{
		margin-top: 3rem;
	}
	#hairmake_catalog .hairmake_img_wrap img{
		width: calc(100% / 3 - 1rem);
		margin-bottom: 1.5rem;
	}
	/* service costume - service ordersuit */
	.costume_wrap p:nth-child(2),
	.ordersuit_wrap p:nth-child(2){
		font-size: 1.4rem;
	}

	/* service ordersuit */
	.ordersuit_wrap .price_wrap,
	.ordersuit_wrap .option_wrap{
		padding: 5rem 2rem 2rem;
		max-width: 60rem!important;
		margin: 0 auto;
	}
	.ordersuit_wrap .price_wrap{
	}
	.ordersuit_wrap .price_wrap .special_order{
	}
	.ordersuit_wrap .price_wrap .set_order{
		margin-bottom: 0;
	}
	.ordersuit_wrap .set_order table{
		margin-bottom: 3rem;
	}
	.ordersuit_wrap .option_wrap{
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	.ordersuit_wrap .option_wrap img{
		width: 50%;
	}
	.ordersuit_wrap .option_wrap .option_order{
		width: fit-content;
		margin: 0 0 1rem;
		padding: 0;
		white-space: nowrap;
	}
	.ordersuit_wrap .option_order table{
		margin-bottom: 2.5rem;
	}
	.ordersuit_wrap .special_order h3{
		margin-bottom: 2rem;
	}
	.ordersuit_wrap .special_order h3 span:first-child{
		font-size: 3rem;
	}
	.ordersuit_wrap .set_order p,
	.ordersuit_wrap .special_order h3 span:last-child{
		font-size: 2rem;
	}
	.ordersuit_wrap .set_order p span,
	.ordersuit_wrap .special_order h3 span:last-child span{
		font-size: 1.4rem;
	}
	.ordersuit_wrap .special_order>div p{
		line-height: 1.8em;
		font-size: 1.4rem;
	}


	/* PHOTO/MOVIE ITEM */
	.service_photo h3,
	.service_movie h3{
		font-size: 2.8rem;
		margin-bottom: 7rem;
	}
	.service_photo p:nth-child(2),
	.service_movie p:nth-child(2){
		font-size: 1.4rem;
	}
	.service_option ul li{
		font-size: 1.4rem;
	}

	
	.photo_item_wrap h4{
		font-size: 1.6rem;
		margin: 1.5rem 0 1rem;
	}
	.photo_item_wrap p{
		font-size: 1.4rem;
	}
	.photo_item_wrap .photo_original{
		margin-bottom: 7rem;
	}
	.photo_item_wrap .photo_item_list_wrap{
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
	}
	.photo_item_wrap .photo_item_list_wrap.space-around{
		justify-content: space-around;
	}
	.photo_item_wrap .photo_item_list_wrap li{
		width: calc(50% - 1.5rem);
	}

	.photo_item_note{
		font-size: 1.4rem;
	}
	.photo_item_note.center{
		margin-left: auto;
		margin-right: auto;
	}
	.photo_item_note::before,
	.photo_item_note::after{
		font-size: 1.6rem;
	}

	.photo_item_premium_value>div{
		font-size: 2.4rem;
		line-height: 3rem;
	}
	.photo_item_premium_value>div>span{
		font-size: 2.4rem;
		width: 2.6rem;
		height: 2.6rem;
		line-height: 2.6rem;
	}


	
	/* service retouch */
	.retouch_photo{
		margin: 10rem auto 0;
	}
	.retouch_photo p{
		font-size: 1.6rem;
	}


	/* ACCESS */
	#access_wrap{
		padding-top: 15rem!important;
		padding-bottom: 10rem!important;
	}
	#access_wrap .section_header img{
		display: none;
	}
	#access_wrap p{
		font-size: 1.4rem;
	}
	.access_detail{
		margin: 0 0 10rem;
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	.access_detail>div{
		margin-bottom: 0;
		width: calc(50% - 1rem);
		padding: 0;
	}
	.access_detail>div:first-child{
		padding-right: 0.9rem;
		border-right: 0.1rem solid #FFFFFF;
	}
	.access_detail>div:last-child{
		padding-left: 1rem;
		width: fit-content;
	}
	.access_detail>div p:last-child{
		margin-bottom: 0;
	}
	.map_wrap iframe{
		width: 100%;
		margin: 0;
		aspect-ratio: 3 / 2;
	}


	/* レポート */
	#report_wrap article>*{
		margin-bottom: 5rem;
	}


	/* CAMPAIGN キャンペーン */
	#campaign_page section{
		padding-left: 2rem;
		padding-right: 2rem;
	}
	#campaign_page h2{
		max-width: 84rem;
	}
	#campaign_page .campaign_wrap *{
		/* font-size: 1.6rem; */
	}
	#campaign_page .campaign_wrap{
		/* max-width: 80rem; */
		/* padding: 7rem 2rem; */
		max-width: 70rem;
		padding: 7rem 0rem;
	}
	.campaign_name{
		margin-bottom: 5rem;
	}
	.campaign_name h3{
		font-size: 1.8rem!important;
	}
	.campaign_name h3 .text-big{
		font-size: 2.4rem!important;
	}
	.campaign_detail_wrap>dl{
		display: flex;
		flex-flow: row nowrap;
		margin-bottom: 5rem;
	}
	.campaign_detail_wrap>dl>dt{
		white-space: nowrap;
		/* width: 20rem; */
		margin-bottom: 0;
		width: 18rem;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	.campaign_detail_wrap>dl>dd{
		width: calc(100% - 20rem);
	}
	.pc_campaign_img_wrap{
		width: 100%;
		display: flex;
		position: relative;
	}
	.pc_campaign_img_wrap img{
		width: 21rem;
		top: -4.5rem;
		right: 0;
		position: absolute;
	}
	.campaign_img_wrap img{
		display: none;
	}
	.campaign_plan_list>li{
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: center;
		border: none;
	}
	.campaign_plan_list>li:first-child{
		padding-top: 0;
	}
	.campaign_period{
		align-items: center;
	}
	.campaign_period dd{
		font-size: 3rem!important;
		padding-left: 0;
	}
	.campaign_period dd.campaign_period02{
		display: flex;
		flex-direction: column;
	}
	.campaign_benefits_wrap{
		/* width: calc(100% - 30rem); */
		max-width: 25rem;
	}
	.campaign_benefits_wrap dd{
		
	}
	.campaign_detail_text_wrap{
		padding-left: 0;
	}
	.campaign_detail_text_wrap .text_l{
		font-size: 2.1rem!important;
		margin-top: 0;
	}
	.campaign_detail_text_wrap .text_l br{
		display: block;
	}
	.campaign_detail_text_wrap .text_m{
		font-size: 1.6rem!important;
	}


	.campaign_none_price_wrap dd{
		padding-top: 1rem;
	}
	.campaign_none_price_wrap dd .price{
		font-size: 1.6rem!important;
	}
	.campaign_none_price_wrap ul{
		margin-top: 1em;
	}
	.campaign_none_price_wrap ul li{
		line-height: 1.8em;
	}
	br.campaign_pc{
		display: block;
	}
	.campaign_arrow{
		margin: 0;
		padding-left: 0;
	}
	.campaign_plus{
		margin: auto 0;
	}
	.campaign_arrow span,
	.campaign_plus span{
		display: inline-block;
		vertical-align: middle;
		position: relative;
		width: 4rem;
		height: 0.1rem;
		background: #000000;
	}
	.campaign_arrow span::before{
		border-right: 0.1rem solid #000000;
		border-left: 0;
		right: -0.6rem;
		left: auto;
		bottom: -1.4rem;
	}
	.campaign_plus span:before{
		width: 0.1rem;
		height: 4rem;
		border-top: none;
		border-left: 0.1rem solid #000000;
		left: 2rem;
		bottom: -2rem;
	}

	.campaign_arrow{
		flex-flow: column nowrap;
	}
	.campaign_arrow img{
		width: 10rem;
		margin-left: 0;
		margin-bottom: 2rem;
		margin-top: -10rem;
	}
	.campaign_arrow + .campaign_price_wrap dl{
		justify-content: center;
		margin-left: 0;
	}

	.campaign_price_wrap dl{
		flex-flow: row wrap;
	}
	.campaign_price_wrap dt{
		width: 90%;
	}
	.campaign_price_wrap dt span,
	.campaign_benefits_wrap dt span{
		margin: 0 auto;
		width: 4.7rem;
		height: 5rem;
		line-height: 5rem;
		letter-spacing: 0.3rem;
		padding-left: 0.3rem;
	}
	.campaign_price_wrap dd .price{
		font-size: 2.2rem!important;
		margin-top: 0.5rem;
	}
	.campaign_price_wrap dd .price span{
		display: block;
	}

	.campaign_benefits_wrap dl{
		flex-flow: column nowrap;
		justify-content: space-between;
		position: relative;
	}
	.campaign_benefits_wrap dt.benefits2{
		margin: 0 auto 0 0;;
	}
	.campaign_benefits_wrap dt,
	.campaign_benefits_wrap dd{
		min-width: 20rem;
		/* width: 17rem;
		margin: 0 auto 0 0; */
	}
	.campaign_benefits_wrap .benefits{
		margin-top: 0.5rem;
		text-align: center;
		/* font-weight: 500; */
		font-size: 1.6rem!important;
	}
	/* .campaign_benefits_wrap dd:last-child{
		width: calc(100% - 10rem);
		height: calc(100% + 4rem);
		padding: 0;
		position: absolute;
		bottom: -2rem;
		right: -1rem;
		z-index: -1;
	} */
	.campaign_benefits_wrap dd:last-child img{
		object-position: center right;
	}


	#campaign_basic ul li:last-child{
		margin-bottom: 0;
	}
	.campaign_basic_set{
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: center;
	}
	#campaign_basic .campaign_basic_set ul,
	#campaign_basic .campaign_basic_set>div{
		margin-top: 0;
	}
	.campaign_basic_set>ul{
		width: 40%;
	}
	#campaign_basic .campaign_basic_set_other{
		display: flex;
		flex-flow: row wrap;
		white-space: nowrap;
		max-width: 55rem;
	}
	#campaign_basic .campaign_basic_set_other li{
		margin-right: 5rem;
		margin-bottom: 1.5rem;
	}
	#campaign_basic .campaign_not_basic {
		margin-top: 2.5rem;
	}
	#campaign_basic .campaign_not_basic ul li{
		margin-top: 0.5rem;
	}
	.campaign_target dd{
		padding: 0;
	}
	.cam07_img_wrap{
		display:flex;
	}
	.cam07_img_wrap>div>img{
		height: 200px;
	}
	.cam07_img_wrap>p{
		margin: auto 2rem;
		font-size: 3rem !important;
		font-family: 'Zen Kaku Gothic Antique', sans-serif !important;
		font-weight: 500;
	}

	/* トップ　プライス */
	#price{
		padding-bottom: 10rem;
	}
	#price .price_list{
		flex-flow: row nowrap;
		max-width: 110rem;
	}
	#price .price_list>li{
		margin: 0 auto;
		padding: 2rem 2rem 3rem;
		width: calc(100% / 3 - 5rem);
		max-width: 25rem;
	}
	#price .price_plan_name{
		width: 6rem;
		height: 6rem;
		line-height: 6rem;
		margin-bottom: 3rem;
		font-size: 2.6rem;
	}
	#price .price_list>li ul{
		padding-top: 3rem;
	}
	#price .price_link{
		align-items: center;
		margin: 5rem auto 0;
		max-width: 50rem;
	}
	#price .price_link>a{
		width: 20%;
	}
	#price .price_link>a:first-child{
		order: 1;
	}
	#price .price_link>p{
		order: 2;
		width: fit-content;
		font-size: 1.6rem;
	}
	#price .price_link>p::before{
		content: '◀︎';
		display: inline-block;
		margin: 0 1rem 0 0;
	}
	#price .price_link>p::after{
		content: '▶︎';
		display: inline-block;
		margin: 0 0 0 1rem;
	}
	#price .price_link>a:last-child{
		order: 3;
	}


	/* トップ　プロセス */
	#process{
		padding: 10rem 1rem;
	}
	#process .process_flow{
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		max-width: 110rem;
	}
	#process .flow_wrap{
		flex-flow: column nowrap;
		justify-content: flex-start;
		align-items: center;
		width: 20%;
	}
	#process .flow_number_wrap{
		width: 100%;
		/* min-width: 14rem; */
		max-width: 21rem;
	}
	#process .flow_number_wrap .flow_number{
		font-size: 2.2rem;
	}
	#process .flow_text_wrap{
		width: fit-content;
		text-align: center;
		margin-top: 1.5rem;
	}
	#process .flow_text_wrap .flow_title{
		font-size: 1.6vw;
	}
	#process .flow_text_wrap .flow_text{
		font-size: 1.3vw;
		/* white-space: nowrap; */
	}
	/* トップ　プロセス 矢印 */
	#process .flow_arrow{
		height: 0;
		padding: 9.8vw 0rem 0;
		margin: 0;
		width: 3.5%;
	}
	#process .flow_arrow.flow_arrow_long{
		height: 0;
		width: 10%;
		max-width: 7rem;
	}
	#process .flow_arrow>span:nth-child(1),
	#process .flow_arrow>span:nth-child(2),
	#process .flow_arrow>span:nth-child(3){
		border-left: unset;
		border-bottom: 0.1rem solid #FFFFFF;
		width: 0;
		height: 0;
	}
	#process .flow_arrow>span:nth-child(1){
		position: relative;
		bottom: unset; left: unset;
		height: 0;
		width: 100%;
	}
	#process .flow_arrow.flow_arrow_long>span:nth-child(1){
		height: 0;
		width: 100%;
	}
	#process .flow_arrow>span:nth-child(2){
		top: 9.5vw;
		right: 0;
		bottom: auto;
		left: auto;
		height: 0;
		width: 1rem;
	}
	#process .flow_arrow>span:nth-child(3){
		top: 10.2vw;
		right: 0;
		bottom: auto;
		left: auto;
		height: 0;
		width: 1rem;
	}
	#process .flow_arrow>span:nth-child(4){
		bottom: 0; top: 0; left: 0; right: 0;
		margin: 5vw auto 0;
		width: 4.5rem;
		padding: 0.2rem 0.5rem 0.2rem 0.7rem;
		letter-spacing: 0.2rem;
	}

	

	/* 予約 */
	.reserve_calendar_remarks p,
	.reserve_calendar_remarks span{
		font-size: 1.6rem;
	}

	/* アクセサリー */
	#accessories_wrap h3{
		text-align: left;
		border-top: none;
		padding: 2rem 0 7rem;
	}
	#accessories_wrap h4{
		font-size: 2.4rem;
	}
	#jewelry_wrap{
		padding: 0 0 8rem;
	}
	#hairaccessory_wrap{
		border-top: 0.1rem solid #000000;
		padding: 8rem 0;
	}
	.accessories_item_list li{
		margin-bottom: 1rem;
	}
	.accessories_item_list li>a,
	.accessories_item_list li>div{
		display: flex;
		flex-flow: row nowrap;
		align-items: center;
	}
	.accessories_item_list li img{
		display: block;
		width: 50%;
		height: 100%;
		object-fit: cover;
	}
	.accessories_item_list li>a>div,
	.accessories_item_list li>div>div{
		width: calc(50% - 8rem);
		padding: 0 4rem;
	}

}




@media screen and (min-width: 1024px) {
	/* ヘッダー */
	.main_nav.active .link_wrap{width: fit-content;}
	.main_nav.active .main_nav_link_wrap{
		width: fit-content;
	}
	.main_nav.active ul.header_page_link,
	.main_nav.active ul.company{
		/* height: 44rem; */
	}
	.main_nav.active ul.header_page_link{
		width: fit-content;
		padding-right: 5rem;
	}
	.main_nav.active ul.company{
		width: calc(50% - 10rem);
		width: fit-content;
		padding-left: 5rem;
	}
	.main_nav.active ul.header_top_link{
		width: 100%;
		max-width: 100rem;
		margin: 0 auto;
	}
	.main_nav.active ul.header_page_link li,
	.main_nav.active ul.company li{
		line-height: 2rem;
		padding-bottom: 4rem;
	}
	.main_nav.active ul.header_page_link li:last-child,
	.main_nav.active ul.company li:last-child{
		padding-bottom: 0;
	}
	.main_nav.active li,
	.main_nav.active li a{
		font-size: 1.7rem;
		line-height: 1.2rem;
	}
	.main_nav.active li span{
		font-size: 1.2rem;
		margin-left: 2.5rem;
	}
	.main_nav.active li span::before{
		margin-right: 2.5rem;
	}
	.main_nav.active .sns_wrap{
		bottom: calc(50% - 28rem);
		left: calc(50% + 10rem);
	}
	.main_nav.active .sns_wrap li{
		padding: 0 5rem 0 0;
	}
	.main_nav.active .sns_wrap img{
		height: 3rem;
		width: 3rem;
		object-fit: contain;
	}


	/* トップページ */
	.bgimg_on_inner h2,
	#retouch h2{
		font-size: 4rem;
		line-height: 4rem;
	}
	h2 span.h2_small{
		font-size: 2.4rem;
	}
	#plan h2 span{
		font-size: 1.6rem;
	}
	#history .bgimg_on_inner h2{
		font-size: 3rem;
	}
	#plan .bgimg_on_inner div{
		font-size: 1.8rem;
		margin-top: 1rem;
	}
	#service .bgimg_on_inner{
		bottom: 8rem;
	}
	#service .letter0{
		font-size: 3rem;
	}

	/* ACCESS */
	#access_wrap p{
		font-size: 1.6rem;
	}
	.access_detail>div{
		margin-bottom: 0;
		width: calc(50% - 5rem);
		padding: 0;
	}
	.access_detail>div:first-child{
		padding-right: 5rem;
	}
	.access_detail>div:last-child{
		/* padding-left: 4.9rem; */
	}

	/* service ordersuit */


	/* レポート */
	#report_wrap .section_header p{
		font-size: 1.6rem;
	}


	.form_send_wrap li p,
	.form_send_wrap li a span{
		font-size: 1.4rem;
	}

	/* CAMPAIGN キャンペーン */
	#campaign_page .campaign_wrap{
		max-width: 80rem;
		padding: 7rem 6rem;
	}
	.campaign_detail_wrap>dl>dt{
		/* width: 22rem; */
		font-size: 1.6rem!important;
		width: 20rem;
	}
	.pc_campaign_img_wrap img{
		width: 25rem;
		top: -10rem;
		right: -4rem;
		position: absolute;
	}
	.campaign_detail_wrap>dl>dd{
		width: calc(100% - 17rem);
	}
	.campaign_arrow span{
		width: 7rem;
	}
	.campaign_price_wrap dt span,
	.campaign_benefits_wrap dt span{
		width: 5.7rem;
		height: 6rem;
		line-height: 6rem;
	}

	.campaign_arrow img{
		width: 12rem;
		margin-bottom: 2rem;
	}
	
	.campaign_benefits_wrap .benefits{
		font-weight: 400;
	}
	.campaign_benefits_wrap dd:last-child{
		right: -7rem;
	}
	.campaign_benefits_wrap dd:last-child img{
		object-position: center;
	}
	.cam07_img_wrap>div>img{
		height: 250px;
	}
	.cam07_img_wrap>p{
		margin: auto 2rem;
		font-size: 3rem !important;
		font-family: 'Zen Kaku Gothic Antique', sans-serif !important;
		font-weight: 500;
	}

	/* トップ　プロセス */
	#process .flow_number_wrap .flow_number{
		font-size: 2.4rem;
	}
	/* トップ　プロセス 矢印 */
	#process .flow_arrow {
		padding-top: 10.5rem;
	}
	#process .flow_arrow>span:nth-child(2){
		top: 10.2rem;
	}
	#process .flow_arrow>span:nth-child(3){
		top: 10.8rem;
	}
	#process .flow_arrow>span:nth-child(4){
		margin-top: 5rem;	
	}
	#process .flow_text_wrap .flow_title{
		font-size: 1.6rem;
	}
	#process .flow_text_wrap .flow_text{
		font-size: 1.4rem;
	}
}


@media screen and (min-width: 1440px) {
	.form_send_wrap li a{
		font-size: 2.4rem;
	}

}





/* twentytwenty */
.twentytwenty_img_wrap *,
.twentytwenty_img_wrap *:before,
.twentytwenty_img_wrap *:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.twentytwenty_img_wrap * { font-size: 100%; }
.twentytwenty_img_wrap img,
.twentytwenty_img_wrap object,
.twentytwenty_img_wrap embed {
	max-width: 100%;
	height: auto;
}
.twentytwenty_img_wrap object,
.twentytwenty_img_wrap embed { height: 100%; }
.twentytwenty_img_wrap img { -ms-interpolation-mode: bicubic; }
.twentytwenty_img_wrap #map_canvas img,
.twentytwenty_img_wrap #map_canvas embed,
.twentytwenty_img_wrap #map_canvas object,
.twentytwenty_img_wrap .map_canvas img,
.twentytwenty_img_wrap .map_canvas embed,
.twentytwenty_img_wrap .map_canvas object { max-width: none !important; }
.twentytwenty_img_wrap .left { float: left !important; }
.twentytwenty_img_wrap .right { float: right !important; }
.twentytwenty_img_wrap .text-left { text-align: left !important; }
.twentytwenty_img_wrap .text-right { text-align: right !important; }
.twentytwenty_img_wrap .text-center { text-align: center !important; }
.twentytwenty_img_wrap .text-justify { text-align: justify !important; }
.twentytwenty_img_wrap .hide { display: none; }
.twentytwenty_img_wrap .antialiased { -webkit-font-smoothing: antialiased; }
.twentytwenty_img_wrap img {
	display: inline-block;
	vertical-align: middle;
}
.twentytwenty_img_wrap textarea {
	height: auto;
	min-height: 50px;
}
.twentytwenty_img_wrap select { width: 100%; }
	/* Grid HTML Classes */
.twentytwenty_img_wrap .row {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	margin-bottom: 0;
	max-width: 62.5em;
	*zoom: 1;
}
.twentytwenty_img_wrap .row:before, .row:after {
	content: " ";
	display: table;
}
.twentytwenty_img_wrap .row:after {
	clear: both;
}
.twentytwenty_img_wrap .row.collapse .column,
.twentytwenty_img_wrap .row.collapse .columns {
	position: relative;
	padding-left: 0;
	padding-right: 0;
	float: left;
}
.twentytwenty_img_wrap .row .row {
	width: auto;
	margin-left: -0.9375em;
	margin-right: -0.9375em;
	margin-top: 0;
	margin-bottom: 0;
	max-width: none;
	*zoom: 1;
}
.twentytwenty_img_wrap .row .row:before, .row .row:after {
		content: " ";
		display: table;
	}
.twentytwenty_img_wrap .row .row:after {
		clear: both;
	}
.twentytwenty_img_wrap .row .row.collapse {
	width: auto;
	margin: 0;
	max-width: none;
	*zoom: 1;
}
.twentytwenty_img_wrap .row .row.collapse:before, .row .row.collapse:after {
	content: " ";
	display: table;
}
.twentytwenty_img_wrap .row .row.collapse:after {
	clear: both;
}
.twentytwenty_img_wrap .column,
.twentytwenty_img_wrap .columns {
	position: relative;
	padding-left: 0.9375em;
	padding-right: 0.9375em;
	width: 100%;
	float: left;
}

@media only screen {
	.twentytwenty_img_wrap .column,
	.twentytwenty_img_wrap .columns {
		position: relative;
		padding-left: 0.9375em;
		padding-right: 0.9375em;
		float: left;
	}
	.twentytwenty_img_wrap .small-1 {
		position: relative;
		width: 8.33333%;
	}
	.twentytwenty_img_wrap .small-2 {
		position: relative;
		width: 16.66667%;
	}
	.twentytwenty_img_wrap .small-3 {
		position: relative;
		width: 25%;
	}
	.twentytwenty_img_wrap .small-4 {
		position: relative;
		width: 33.33333%;
	}
	.twentytwenty_img_wrap .small-5 {
		position: relative;
		width: 41.66667%;
	}
	.twentytwenty_img_wrap .small-6 {
		position: relative;
		width: 50%;
	}
	.twentytwenty_img_wrap .small-7 {
		position: relative;
		width: 58.33333%;
	}
	.twentytwenty_img_wrap .small-8 {
		position: relative;
		width: 66.66667%;
	}
	.twentytwenty_img_wrap .small-9 {
		position: relative;
		width: 75%;
	}
	.twentytwenty_img_wrap .small-10 {
		position: relative;
		width: 83.33333%;
	}
	.twentytwenty_img_wrap .small-11 {
		position: relative;
		width: 91.66667%;
	}
	.twentytwenty_img_wrap .small-12 {
		position: relative;
		width: 100%;
	}
	.twentytwenty_img_wrap .small-offset-0 {
		position: relative;
		margin-left: 0%;
	}
	.twentytwenty_img_wrap .small-offset-1 {
		position: relative;
		margin-left: 8.33333%;
	}
	.twentytwenty_img_wrap .small-offset-2 {
		position: relative;
		margin-left: 16.66667%;
	}
	.twentytwenty_img_wrap .small-offset-3 {
		position: relative;
		margin-left: 25%;
	}
	.twentytwenty_img_wrap .small-offset-4 {
		position: relative;
		margin-left: 33.33333%;
	}
	.twentytwenty_img_wrap .small-offset-5 {
		position: relative;
		margin-left: 41.66667%;
	}
	.twentytwenty_img_wrap .small-offset-6 {
		position: relative;
		margin-left: 50%;
	}
	.twentytwenty_img_wrap .small-offset-7 {
		position: relative;
		margin-left: 58.33333%;
	}
	.twentytwenty_img_wrap .small-offset-8 {
		position: relative;
		margin-left: 66.66667%;
	}
	.twentytwenty_img_wrap .small-offset-9 {
		position: relative;
		margin-left: 75%;
	}
	.twentytwenty_img_wrap .small-offset-10 {
		position: relative;
		margin-left: 83.33333%;
	}
	[class*="column"] + [class*="column"]:last-child {
		float: right;
	}
	[class*="column"] + [class*="column"].end {
		float: left;
	}
	.twentytwenty_img_wrap .column.small-centered,
	.twentytwenty_img_wrap .columns.small-centered {
		position: relative;
		margin-left: auto;
		margin-right: auto;
		float: none !important;
	}
}
/* Styles for screens that are atleast 768px; */
@media only screen and (min-width: 768px) {
	.twentytwenty_img_wrap .large-1 {
		position: relative;
		width: 8.33333%;
	}
	.twentytwenty_img_wrap .large-2 {
		position: relative;
		width: 16.66667%;
	}
	.twentytwenty_img_wrap .large-3 {
		position: relative;
		width: 25%;
	}
	.twentytwenty_img_wrap .large-4 {
		position: relative;
		width: 33.33333%;
	}
	.twentytwenty_img_wrap .large-5 {
		position: relative;
		width: 41.66667%;
	}
	.twentytwenty_img_wrap .large-6 {
		position: relative;
		width: 50%;
	}
	.twentytwenty_img_wrap .large-7 {
		position: relative;
		width: 58.33333%;
	}
	.twentytwenty_img_wrap .large-8 {
		position: relative;
		width: 66.66667%;
	}
	.twentytwenty_img_wrap .large-9 {
		position: relative;
		width: 75%;
	}
	.twentytwenty_img_wrap .large-10 {
		position: relative;
		width: 83.33333%;
	}
	.twentytwenty_img_wrap .large-11 {
		position: relative;
		width: 91.66667%;
	}
	.twentytwenty_img_wrap .large-12 {
		position: relative;
		width: 100%;
	}
	.twentytwenty_img_wrap .row .large-offset-0 {
		position: relative;
		margin-left: 0%;
	}
	.twentytwenty_img_wrap .row .large-offset-1 {
		position: relative;
		margin-left: 8.33333%;
	}
	.twentytwenty_img_wrap .row .large-offset-2 {
		position: relative;
		margin-left: 16.66667%;
	}
	.twentytwenty_img_wrap .row .large-offset-3 {
		position: relative;
		margin-left: 25%;
	}
	.twentytwenty_img_wrap .row .large-offset-4 {
		position: relative;
		margin-left: 33.33333%;
	}
	.twentytwenty_img_wrap .row .large-offset-5 {
		position: relative;
		margin-left: 41.66667%;
	}
	.twentytwenty_img_wrap .row .large-offset-6 {
		position: relative;
		margin-left: 50%;
	}
	.twentytwenty_img_wrap .row .large-offset-7 {
		position: relative;
		margin-left: 58.33333%;
	}
	.twentytwenty_img_wrap .row .large-offset-8 {
		position: relative;
		margin-left: 66.66667%;
	}
	.twentytwenty_img_wrap .row .large-offset-9 {
		position: relative;
		margin-left: 75%;
	}
	.twentytwenty_img_wrap .row .large-offset-10 {
		position: relative;
		margin-left: 83.33333%;
	}
	.twentytwenty_img_wrap .row .large-offset-11 {
		position: relative;
		margin-left: 91.66667%;
	}
	.twentytwenty_img_wrap .push-1 {
		position: relative;
		left: 8.33333%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-1 {
		position: relative;
		right: 8.33333%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-2 {
		position: relative;
		left: 16.66667%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-2 {
		position: relative;
		right: 16.66667%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-3 {
		position: relative;
		left: 25%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-3 {
		position: relative;
		right: 25%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-4 {
		position: relative;
		left: 33.33333%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-4 {
		position: relative;
		right: 33.33333%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-5 {
		position: relative;
		left: 41.66667%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-5 {
		position: relative;
		right: 41.66667%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-6 {
		position: relative;
		left: 50%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-6 {
		position: relative;
		right: 50%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-7 {
		position: relative;
		left: 58.33333%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-7 {
		position: relative;
		right: 58.33333%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-8 {
		position: relative;
		left: 66.66667%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-8 {
		position: relative;
		right: 66.66667%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-9 {
		position: relative;
		left: 75%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-9 {
		position: relative;
		right: 75%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-10 {
		position: relative;
		left: 83.33333%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-10 {
		position: relative;
		right: 83.33333%;
		left: auto;
	}
	.twentytwenty_img_wrap .push-11 {
		position: relative;
		left: 91.66667%;
		right: auto;
	}
	.twentytwenty_img_wrap .pull-11 {
		position: relative;
		right: 91.66667%;
		left: auto;
	}
	.twentytwenty_img_wrap .column.large-centered,
	.twentytwenty_img_wrap .columns.large-centered {
		position: relative;
		margin-left: auto;
		margin-right: auto;
		float: none !important;
	}
	.twentytwenty_img_wrap .column.large-uncentered,
	.twentytwenty_img_wrap .columns.large-uncentered {
		margin-left: 0;
		margin-right: 0;
		float: left !important;
	}
	.twentytwenty_img_wrap .column.large-uncentered.opposite,
	.twentytwenty_img_wrap .columns.large-uncentered.opposite {
		float: right !important;
	}
}







@media only screen and (max-width: 374px) {
	/* トップ　プロセス */
	#process .flow_number_wrap {
    width: calc(100% - 16rem);
	}
	#process .flow_text_wrap{
		width: 15rem;
	}
	#process .flow_text_wrap .flow_title{
		font-size: 1.2rem;
		margin-bottom: 0;
	}
	#process .flow_text_wrap .flow_text{
		font-size: 1rem;
	}
	/* トップ　プロセス 矢印 */
	#process .flow_arrow>span:nth-child(1){
    left: calc((100% - 16rem) / 2);
	}
	#process .flow_arrow>span:nth-child(2){
    left: calc(((100% - 16rem) / 2) + 0.3rem);
	}
	#process .flow_arrow>span:nth-child(3){
    left: calc(((100% - 16rem) / 2) - 0.3rem);
	}
	#process .flow_arrow>span:nth-child(4){
    left: calc(((100% - 16rem) / 2) - 3rem);
	}

}