@charset "UTF-8";
/*
Theme Name: OUSEIKAI - whitening LP
*/

/*-----------------------------------------
default
-----------------------------------------*/
*{ margin:0; padding:0; -webkit-font-smoothing: antialiased; }
@font-face{
	font-family:"Yu Gothic M";
	src:local("Yu Gothic Medium");
}
@font-face{
	font-family:"Yu Gothic M";
	src:local("Yu Gothic Bold");
	font-weight: bold;
}
html{
	/*-----------------------------------------
	ゴシック主体の場合
	-----------------------------------------*/
	font-family: "Noto Sans JP","Zen Kaku Gothic New","kozuka-gothic-pr6n", -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	/*-----------------------------------------
	明朝体主体の場合
	-----------------------------------------*/
	/*
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	*/
	color:#4D4C45;
	font-size:17px;
    background: #fff;
}
a{
	transition:0.1s linear all;	
	color:#623c3e;
	text-decoration:none;
}
a:hover{
	text-decoration:none;
    opacity: 0.8;	
}
li{
	list-style-type:none;	
}
p,th,td,li,dt,dd{
	line-height:1.8em;	
}
img{
	border:none !important;	
}

/* 文字サイズ */
.size10 {
    font-size: 10px;
}
.size12 {
    font-size: 12px;
}
.size14 {
    font-size: 14px;
}
.size16 {
    font-size: 16px;
}
.size17 {
    font-size: 17px;
}
.size18 {
    font-size: 18px;
}
.size20 {
    font-size: 20px;
}
.size21 {
    font-size: 21px;
}
.size22 {
    font-size: 22px;
}
.size24 {
    font-size: 24px;
}
.size27 {
    font-size: 27px;
}
.size28 {
    font-size: 28px;
}
.size30 {
    font-size: 30px;
}
.size31 {
    font-size: 31px;
}
.size32 {
    font-size: 32px;
}
.size37 {
    font-size: 37px;
}
.size42 {
    font-size: 42px;
}
.size41 {
    font-size: 41px;
}
.size47 {
    font-size: 47px;
}
.size65 {
    font-size: 65px;
}


/* 文字装飾 */
.mincho {
  font-family: "Shippori Mincho","Noto Serif JP", serif;
  font-weight: 200;
  font-style: normal;
}
.sawarabi {
    font-family: "Sawarabi Gothic", sans-serif;
    font-weight: 400;
  font-style: normal;
}
.caveat {
    font-family: "Caveat", cursive;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}

.thin{ font-weight:100; }
.light{ font-weight:300; }
.regular{ font-weight:400; }
.medium{ font-weight:500; }
.semibold{ font-weight:600; }
.bold{ font-weight:700; }
.bolder{ font-weight:900; }

.left{ text-align:left; }
.center{ text-align:center; }
.right{ text-align:right; }

.white{ color:white !important; }
.pink{ color: #C17678 !important; }
.gold{ color: #9B7C49 !important; }
.purple{ color: #623c3e !important; }
.black{ color: #4D4C45 !important; }

.bg_white {background: #fff;}
.bg_base {background: #F7F6F1;}
.bg_base_p {background: #F7F2F3;}
.bg_gray {background: #EDEDED;}
.bg_pink {background: #FAE0E0;}
.bg_pink2 {background: #D49B9C;}
.bg_gold {background: #7d8aff;}

/* scroll-effect */
.effect-fade{
	opacity:0;
	transform:translate(0,60px);
	transition:all 1000ms;
}
.effect-fade.effect-scroll {
	opacity:1;
	transform:translate(0, 0);
}
/* road-effect */
.road-effect-fade{
	opacity:0;
	transform:translate(0,60px);
	transition:all 1000ms;
}
.road-effect-fade.effect-road {
	opacity:1;
	transform:translate(0, 0);
}
.lefteffect{
	transform:translateX(-15%);
	opacity:0;
	transition:opacity 1000ms,transform 1000ms;
}
.righteffect{
	transform:translateX(15%);
	opacity:0;
	transition:opacity 1000ms,transform 1000ms;
}
.fadein{
	opacity:0;
	transform:translate(0, 0);
}
:root {
    --delay: 3;
}
.delay {
   transition-delay: calc(var(--delay) * 1s);
}



/*-----------------------------------------
header
-----------------------------------------*/
header {
    position: fixed;
    width: 100%;
    z-index: 999;
    background: radial-gradient(circle, #fff, #ECE9E6);
    padding: 12px 40px;
	box-sizing: border-box;
}
header .header_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
header .header_inner h1 {
    width: 100%;
    margin-bottom: 10px;
}
header .header_inner .logo {
    display: flex;
    align-items: center;
}
header .header_inner .logo span {
    background: #fff;
    border: 1px solid;
    padding: 4.5px 40px;
}
header .header_inner .header_contact {
	margin-right: 74px;
}
header .header_inner .header_contact a {
	background: #fff;
    padding: 11.5px 32px;
    color: #9b7c49;
	border: 1px solid ;
}
header .header_inner .header_contact a:hover {
	background: #9b7c49;
    color: #fff;
}
header .header_inner .nav_btn {

}
	.nav_btn{
    position: fixed;
    top: 15px;
    right: 40px;
    width: 50px;
    height: 50px;
        z-index: 999;
        background: #D49B9C;
    border-radius: 4px;
	}
	.menu__line {
		background: #fff;
		display: block;
		height: 3px;
		position: absolute;
        left: 14px;
		transition: transform .3s;
		width: 24px;
        border-radius: 2px;
	}
	.menu__line--top {
        top: 15px;
	}
	.menu__line--center {
		top: 24px;
	}
	.menu__line--bottom {
		top: 33px;
    }
	.menu__line.active {
    }
	.menu__line--top.active {
		top: 24px;
		transform: rotate(45deg);
	}
	.menu__line--center.active {
		transform: scaleX(0);
	}
	.menu__line--bottom.active {
		top: 24px;
		transform: rotate(135deg);
	}

	nav{
		width:280px;
        height: calc(100vh - 80px);
		position:fixed;
		top:80px;
		right: -280px;
		background-color:#f5f5f3;
		overflow:auto;
		transition: 0.2s linear all;
        opacity: 0;
		z-index: -1;
        padding: 16px 0 20px;
	}
	nav.active{
        opacity: 1;
		right: 0;
		z-index:9999;
		transition: 0.2s linear all;
	}
    nav ul {
        width: 240px;
        margin: 0 auto 14px;
        display: flex;
    flex-wrap: wrap;
    justify-content: center;
    }
	nav li{
		width:100%;
    display: flex;
    justify-content: center;
    align-items: center;
        margin-bottom: 6px;
        min-height: 42px;
        line-height: 1.4;
	}
	nav li a{
		display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        font-size: 12px;
        text-align: center;
        border-bottom: 1px solid #d8d5d6;
	}
	nav li a:hover{
		text-decoration:none;
		}
	nav li a img {
        max-width: 100%;
        height: auto;
}

/*-----------------------------------------
main
-----------------------------------------*/
#mainimg {
    padding-top: 80px;
    padding-bottom: 220px;
    background: url(bg_mainimg.webp) top center no-repeat;
    background-size: cover;
    position: relative;
}
#mainimg .section_inner {
    position: absolute;
    width: 1100px;
    max-width: 94%;
    margin: auto;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
}
#mainimg .section_inner img {
    position: absolute;
    margin: -78px -111px;
}
#mainimg .section_inner div {
    display: inline-block;
    background: #fff;
    padding: 4px 24px;
    position: relative;
    margin-bottom: 12px;
    box-shadow: -6px 6px rgba(24, 24, 24, 0.05);
}
#mainimg .section_inner div span {
    background: linear-gradient(to right, #603813, #B29F94);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
#mainimg .img {
    width: 77%;
    display: flex;
    flex-wrap: wrap;
    margin-left: 23%;
    border-bottom-left-radius: 42px;
    overflow: hidden;
    box-shadow: -18px 18px 25px rgba(216, 213, 214, 0.7);
}
#mainimg .img img {
    width: calc(100% / 3);
    height: auto;
}

/* time_campaign */
#time_campaign {
    position: relative;
    background: #F48A9B;
    height: 480px;
}
#time_campaign .section_inner {
    position: absolute;
    top: -147px;
    left: 0;
    right: 0;
    width: 800px;
    max-width: 94%;
    margin: auto;
    padding-bottom: 40px;
    border: 3px solid #FFAFBD;
    background: #fff;
    box-shadow: -18px 18px 25px rgba(20, 20, 20, 0.1);
}
#time_campaign .section_inner h2 {
    background: linear-gradient(to right, #FFAFBD, #FFC3A0);
    text-align: center;
    padding: 6px 13px 13px;
}
#time_campaign .section_inner h2 span.limit {
	display: inline-block;
    padding-bottom: 4px;
    margin-bottom: 10px;
    border-bottom: 2px solid #ce1417;
}
#time_campaign .section_inner h2 span.time {
    display: inline-flex;
    align-items: center;
    height: 40px;
    background: url(icon_time.svg) center left 40px no-repeat #fff;
    padding: 0 40px 0 68px;
    border-radius: 20px;
    margin-left: 12px;
}
#time_campaign .section_inner p {
    padding: 20px 40px 0;
}
#time_campaign .section_inner .time_campaign_box {
    display: flex;
    gap: 40px;
    padding: 20px 40px 0;
    justify-content: flex-start;
    align-items: flex-start;
}
#time_campaign .section_inner .time_campaign_box img {
}
#time_campaign .section_inner .time_campaign_box .text_right {
    width: calc(100% - 190px);
}
#time_campaign .section_inner .time_campaign_box .text_right .campaign_name {
    border-bottom: 1px solid #D49B9C;
    padding-bottom: 6px;
    margin-bottom: 28px;
}
#time_campaign .section_inner .time_campaign_box .text_right .campaign_price_original {
}
#time_campaign .section_inner .time_campaign_box .text_right .campaign_price_original span.regular {
    position: relative;
}
#time_campaign .section_inner .time_campaign_box .text_right .campaign_price_original span.regular:after {
    content: "";
    position: absolute;
    top: 12px;
    left: 0;
    width: 100%;
    height: 2px;
    background: #CE1417;
}
#time_campaign .section_inner .time_campaign_box .text_right .campaign_price_after {
}
#time_campaign .section_inner .time_campaign_box .text_right .campaign_price_after span {
    color: #CE1417;
}
#time_campaign .section_inner .time_campaign_box .text_right .campaign_price_after span:after {
}

/* about */
#about {
    background: linear-gradient(0deg, #FFFDF8, #FFFAFA);
    padding: 100px 0 90px;
    position: relative;
    margin-bottom: 125px;
    border-bottom: 20px solid #FCF8E8;
}
#about:before {
    content: "";
    display: block;
    width: 100%;
  height: 125px;
  background: #FFFDF8;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
    position: absolute;
    bottom: -125px;
    z-index: 1;
}
#about:after {
    content: "";
    display: block;
    width: 100%;
  height: 125px;
  background: #FCF8E8;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
    position: absolute;
    bottom: -145px;
}
#about .section_inner {
    width: 1000px;
    max-width: 94%;
    margin: auto;
}
#about .section_inner h3 {
    background: url("icon_h2.svg") top center no-repeat;
    padding-top: 124px;
    margin-bottom: 40px;
}
#about .section_inner .nayami {
    margin-bottom: 120px;
}
#about .section_inner .nayami h2 {
    margin-bottom: 170px;
}
#about .section_inner .nayami h2:before {
    content: "";
    display: inline-block;
    background: url("icon_nayami.svg") bottom left no-repeat;
    width: 52px;
    height: 52px;
    vertical-align: middle;
}
#about .section_inner .nayami h2 span.bg {
    background: linear-gradient(0deg, rgba(212,155,156,0.4) 50%, transparent 50%);
}
#about .section_inner .nayami .nayami_check {
    background: #fff;
    position: relative;
    padding: 90px 110px 70px;
    box-sizing: border-box;
}
#about .section_inner .nayami .nayami_check:before {
    content: "";
    display: block;
    border: 1px solid #9B7C49;
    position: absolute;
    width: 100%;
    height: 100%;
    top: -10px;
    left: -10px;
}
#about .section_inner .nayami .nayami_check img {
    position: absolute;
    top: -150px;
    left: 0;
    right: 0;
    margin: auto;
}
#about .section_inner .nayami .nayami_check ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 40px;
}
#about .section_inner .nayami .nayami_check ul li {
    width: calc(50% - 20px);
    padding-left: 32px;
    padding-bottom: 4px;
    box-sizing: border-box;
    border-bottom: 1px solid #9b7c49;
    background: url("icon_arrow_pink.svg") center left no-repeat;
}

/* beaute */
#beaute {
    padding: 130px 0 150px;
}
#beaute .section_inner {
    width: 1100px;
    max-width: 94%;
    margin: auto;
    padding: 100px 0;
    background: linear-gradient(0deg,#FCF8E8 ,#FFFBFD);
}
#beaute .section_inner h2 {
    background: url("icon_h3.svg") top center no-repeat;
    padding-top: 55px;
    margin-bottom: 70px;
}
#beaute .section_inner .bg_white {
    display: flex;
    gap: 40px;
    margin-bottom: 60px;
    align-items: center;
}
#beaute .section_inner .img_R {
    flex-direction: row-reverse;
    margin-left: 130px;
    box-shadow: -18px 18px 25px rgba(20,20,20,0.1);
    padding: 20px 42px 20px 60px;
}
#beaute .section_inner .img_L {
    margin-right: 130px;
    box-shadow: 18px 18px 25px rgba(20,20,20,0.1);
    padding: 20px 60px 20px 42px;
}
#beaute .section_inner .bg_white div {
    width: calc(100% - 350px);
}
#beaute .section_inner .bg_white div h3 {
    line-height: 1.6;
    margin-bottom: 16px;
    border-bottom: 1px solid #D8D5D6;
}
#beaute .section_inner .supplement {
    width: 800px;
    margin: 70px auto 0;
    padding: 60px 80px;
    background: #fff;
    box-sizing: border-box;
    border-radius: 8px;
    box-shadow: 0 18px 25px rgba(20,20,20,0.1);
}
#beaute .section_inner .supplement h3 {
    border-bottom: 1px solid #d8d5d6;
    margin-bottom: 16px;
    padding-bottom: 13px;
}
#beaute .section_inner .supplement p {
    margin-bottom: 40px;
    line-height: 2.0;
}
#beaute .section_inner .supplement p .marker_y {
    background: linear-gradient(0deg, #fbff0b 50%, transparent 50%);
}
#beaute .section_inner .comparison {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
    justify-content: center;
}
#beaute .section_inner .comparison dl {
    width: 350px;
    max-width: calc(50% - 12px);
    border: 1px solid #9B7C49;
    box-sizing: border-box;
}
#beaute .section_inner .comparison dl dt {
    padding: 18px;
}
#beaute .section_inner .comparison dl dd {
    padding: 16px;
}

/* office */
#office {
    padding: 150px 0 150px;
    background: linear-gradient(0deg,#FCF8E8 ,#FFFBFD);
}
#office .section_inner {
    width: 1100px;
    max-width: 94%;
    margin: auto;
}
#office .section_inner h2 {
    background: url("icon_h3.svg") top center no-repeat;
    padding-top: 55px;
    margin-bottom: 70px;
}
#office .section_inner > .img_L {
    display: flex;
    align-items: center;
    gap: 60px;
    margin-bottom: 100px;
}
#office .section_inner .firstvisit {
    padding: 50px 60px;
    margin-bottom: 100px;
}
#office .section_inner .firstvisit h3 {
    padding: 21px;
    margin-bottom: 40px;
}
#office .section_inner .firstvisit p {
    max-width: 770px;
    margin: auto;
}
#office .section_inner .step_box {
    background: #fff;
    position: relative;
    padding: 50px 60px;
    box-sizing: border-box;
}
#office .section_inner .step_box:before {
    content: "";
    display: block;
    border: 1px solid #9B7C49;
    position: absolute;
    width: 100%;
    height: 100%;
    top: -10px;
    left: -10px;
}
#office .section_inner .step_box h3 {
    padding: 21px;
    margin-bottom: 40px;
}
#office .section_inner .step_box ul {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: center;
}
#office .section_inner .step_box ul li {
    width: calc(25% - 30px);
    position: relative;
    padding: 40px 0;
    text-align: center;
}
#office .section_inner .step_box ul li:after {
    content: "";
    display: block;
    width: 28px;
    height: 16px;
    background: url("icon_arrow_step.svg") top left no-repeat;
    position: absolute;
    top: 110px;
    right: -20px;
}
#office .section_inner .step_box ul li:nth-child(5):after,
#office .section_inner .step_box ul li:nth-child(6):after,
#office .section_inner .step_box ul li:nth-child(7):after{
    right: auto;
    left: -20px;
}
#office .section_inner .step_box ul li .num {
    position: absolute;
    top: 0;
    left: 10px;
    font-family: "Crimson Text", serif;
    font-weight: 600;
    font-size: 52px;
    color: #9B7C49;
}
#office .section_inner .step_box ul li .num .step{
    font-family: "Caveat", cursive;
    font-weight: 400;
    font-size: 20px;
    color: #999999;
}
#office .section_inner .step_box ul li img{
    margin-bottom: 24px;
}
#office .section_inner .step_box ul li h4{
    font-family: "Shippori Mincho","Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 600;
    color: #C17678;
    border-bottom: 1px dotted #d8d5d6;
    padding-bottom: 16px;
    margin-bottom: 12px;
}
#office .section_inner .step_box ul li p{
    text-align: left;
}

/* home */
#home {
    padding: 150px 0 150px;
    background: linear-gradient(0deg,#F7F2F3 ,#FBFBFF);
}
#home .section_inner {
    width: 1100px;
    max-width: 94%;
    margin: auto;
}
#home .section_inner h2 {
    background: url("icon_h3.svg") top center no-repeat;
    padding-top: 55px;
    margin-bottom: 70px;
}
#home .section_inner h3 {
    background: url("icon_h3.svg") top center no-repeat;
    padding-top: 55px;
    margin-bottom: 70px;
}
#home .section_inner > .img_L {
    display: flex;
    align-items: center;
    gap: 60px;
    margin-bottom: 100px;
}
#home .section_inner .beaute {
    padding: 100px 0 40px;
    margin-bottom: 100px;
}
#home .section_inner .bg_white > div {
    display: flex;
    gap: 40px;
    margin-bottom: 60px;
    align-items: center;
}
#home .section_inner .bg_white .img_R {
    flex-direction: row-reverse;
    margin-left: 130px;
    box-shadow: -18px 18px 25px rgba(20, 20, 20, 0.1);
    padding: 60px 42px 60px 60px;
    background: #F7F6F1;
}
#home .section_inner .bg_white .img_L {
    margin-right: 130px;
    box-shadow: 18px 18px 25px rgba(20,20,20,0.1);
    padding: 60px 60px 60px 42px;
    background: #F7F6F1;
}
#home .section_inner .bg_white div div {
    width: calc(100% - 350px);
}
#home .section_inner .bg_white div div ul li {
    list-style-type: disc;
    margin-left: 1.6em;
}
#home .section_inner .bg_white div div ul li::marker {
    font-size: 14px;
}
#home .section_inner .bg_white div h4 {
    line-height: 1.6;
    margin-bottom: 16px;
    border-bottom: 1px solid #D8D5D6;
}
#home .section_inner .step_box {
    background: #fff;
    position: relative;
    padding: 50px 60px;
    box-sizing: border-box;
}
#home .section_inner .step_box:before {
    content: "";
    display: block;
    border: 1px solid #9B7C49;
    position: absolute;
    width: 100%;
    height: 100%;
    top: -10px;
    left: -10px;
}
#home .section_inner .step_box h3 {
    padding: 21px;
    margin-bottom: 40px;
    background: #F7F6F1;
}
#home .section_inner .step_box ul {
    display: flex;
    flex-wrap: wrap;
    gap: 60px;
    justify-content: center;
}
#home .section_inner .step_box ul li {
    width: calc(25% - 30px);
    position: relative;
    padding: 40px 0;
    text-align: center;
}
#home .section_inner .step_box ul li:after {
    content: "";
    display: block;
    width: 28px;
    height: 16px;
    background: url("icon_arrow_step.svg") top left no-repeat;
    position: absolute;
    top: 110px;
    right: -40px;
}
#home .section_inner .step_box ul li:nth-child(5):after,
#home .section_inner .step_box ul li:nth-child(6):after,
#home .section_inner .step_box ul li:nth-child(4):after{
    right: auto;
    left: -40px;
}
#home .section_inner .step_box ul li:nth-child(3){
    margin-right: 100px;
}
#home .section_inner .step_box ul li:nth-child(4){
    margin-left: 100px;
}
#home .section_inner .step_box ul li .num {
    position: absolute;
    top: 0;
    left: 10px;
    font-family: "Crimson Text", serif;
    font-weight: 600;
    font-size: 52px;
    color: #623c3e;
}
#home .section_inner .step_box ul li .num .step{
    font-family: "Caveat", cursive;
    font-weight: 400;
    font-size: 20px;
    color: #999999;
}
#home .section_inner .step_box ul li img{
    margin-bottom: 24px;
}
#home .section_inner .step_box ul li h4{
    font-family: "Shippori Mincho","Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 600;
    color: #9B7C49;
    border-bottom: 1px dotted #d8d5d6;
    padding-bottom: 16px;
    margin-bottom: 12px;
}
#home .section_inner .step_box ul li p{
    text-align: left;
}

/* price */
#price {
    padding: 150px 0 170px;
}
#price .section_inner {
    width: 1000px;
    max-width: 94%;
    margin: auto;
}
#price .section_inner h2 {
    margin-bottom: 70px;
    background: linear-gradient(0deg, #fff 50%, #d8d5d6 50%, #d8d5d6 51%, #fff 52%);
}
#price .section_inner h2 span {
    padding: 0 64px;
    background: #fff;
}
#price .section_inner .price_box {
    padding: 10px 15px 20px;
    margin-bottom: 24px;
    border-bottom: 1px solid #9B7C49;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: space-between;
    align-items: center;
    min-height: 100px;
}
#price .section_inner .price_box .time_campaign {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#price .section_inner .price_box .time_campaign .bg_pink {
	display: flex;
    align-items: center;
    padding: 8px 20px 8px 48px;
    border-radius: 25px;
    background-image: url("icon_time.svg");
    background-position:  center left 20px;
    background-repeat: no-repeat;
}
#price .section_inner .price_box .time_campaign .bg_pink span {
	line-height: 1.2;
}
#price .section_inner .mb70 {
    margin-bottom: 70px;
}
#price .section_inner .plan {
    margin-bottom: 24px;
    padding: 32px 40px;
    border: 1px solid #9B7C49;
    border-radius: 16px;
}
#price .section_inner .plan .plan_name {
    display: flex;
    align-items: center;
    gap: 26px;
    font-size: 16px;
    font-weight: 600;
}
#price .section_inner .plan .plan_name .bg_pink2 {
    padding: 9px 24px;
}
#price .section_inner .plan .plan_name .icon01 {
    background: url(bg_plan_target.webp) bottom center no-repeat, url(icon_plan_01.svg) top right no-repeat;
    background-size: 100%, auto;
    padding: 10px;
}
#price .section_inner .plan .plan_name .icon02 {
    background: url(bg_plan_target.webp) bottom center no-repeat, url(icon_plan_02.svg) center right 20px no-repeat;
    background-size: 100%, auto;
    padding: 10px 40px 10px 10px;
}
#price .section_inner .plan .plan_name .icon03 {
    background: url(bg_plan_target.webp) bottom center no-repeat, url(icon_plan_03.svg) center right no-repeat;
    background-size: 100%, auto;
    padding: 10px 20px 10px 10px ;
}
#price .section_inner .plan .plan_price {
    display: flex;
    justify-content: space-between;
    margin-top: 24px;
}
#price .section_inner .plan .plan_menu {
    margin-top: 20px;
    padding-top: 24px;
    border-top: 1px solid #9B7C49;
    line-height: 1.4;
}

/* cansel */
#cansel {
    padding: 150px 0 170px;
    background: #FFFDF8;
}
#cansel .section_inner {
    width: 1000px;
    max-width: 94%;
    margin: auto;
}
#cansel .section_inner h2 {
    margin-bottom: 70px;
    background: linear-gradient(0deg, #FFFDF8 50%, #d8d5d6 50%, #d8d5d6 53%, #FFFDF8 53%);
}
#cansel .section_inner h2 span {
    padding: 0 64px;
    background: #FFFDF8;
}
#cansel .section_inner p {
    width: 840px;
    max-width: 100%;
    margin: auto;
}
#cansel .section_inner dl {
    width: 550px;
    max-width: 100%;
    margin: 16px auto;
    border-bottom: 1px solid #d8d5d6;
    font-size: 18px;
    display: flex;
    justify-content: space-between;
}
#cansel .section_inner dl:nth-of-type(1) {
    margin-top: 42px;
}
#cansel .section_inner dl:nth-of-type(3) {
    margin-bottom: 42px;
}
#cansel .section_inner dl dt {
}
#cansel .section_inner dl dt::before {
    content: "● ";
    color: #D49B9C;
}
#cansel .section_inner dl dd {
}

/* qa */
#qa {
    padding: 150px 0 170px;
    background: #fcf6f7;
}
#qa .section_inner {
    width: 1000px;
    max-width: 94%;
    margin: auto;
}
#qa .section_inner h2 {
    margin-bottom: 42px;
    background: linear-gradient(0deg, #fcf6f7 50%, #d8d5d6 50%, #d8d5d6 51%, #fcf6f7 52%);
}
#qa .section_inner h2 span {
    padding: 0 64px;
    background: #fcf6f7;
}
#qa .section_inner dl {
    width: 800px;
    max-width: 100%;
    margin: 0 auto 32px;
    position: relative;
    border-radius: 8px;
    overflow: hidden;
}
#qa .section_inner dl:last-child {
    margin-bottom: 0;
}
#qa .section_inner dl:before {
    content: "";
    position: absolute;
    top: 35px;
    right: 20px;
    width: 15px;
    height: 1px;
    background: #4d4c45;
    display: block;
    z-index: 1;
}
#qa .section_inner dl:after {
    content: "";
    position: absolute;
    top: 35px;
    right: 20px;
    width: 15px;
    height: 1px;
    background: #4d4c45;
    display: block;
    transform: rotate(90deg);
    transition:0.1s linear all;	
    z-index: 1;
}
#qa .section_inner dl.open:after {
    transform: rotate(0deg);
}
#qa .section_inner dl dt {
    position: relative;
    background: #F0E8E8;
    padding: 20px 60px 20px 96px;
}
#qa .section_inner dl dt:before {
    content: "Q.";
    font-size: 30px;
    color: #9B7C49;
    margin-right: 24px;
    font-family: "Shippori Mincho", "Noto Serif JP", serif;
    position: absolute;
    left: 40px;
}
#qa .section_inner dl dd {
    display: none;
    position: relative;
    background: #fff;
    padding: 20px 40px 20px 96px;
}
#qa .section_inner dl dd:before {
    content: "A.";
    font-size: 30px;
    color: #C17678;
    margin-right: 24px;
    font-family: "Shippori Mincho", "Noto Serif JP", serif;
    position: absolute;
    left: 40px;
}

/* introduction */
#introduction {
    padding: 150px 0;
    background: #fff;
}
#introduction .section_inner {
    width: 1000px;
    max-width: 94%;
    margin: auto;
}
#introduction .section_inner h2 {
    position: relative;
    margin-bottom: 70px;
    background: linear-gradient(0deg, #fff 50%, #d8d5d6 50%, #d8d5d6 51%, #fff 52%);
}
#introduction .section_inner h2 span {
    padding: 0 64px;
    background: #fff;
}
#introduction .section_inner p {
	margin-bottom: 70px;
}
#introduction .section_inner .introduction_box {
    display: flex;
    flex-wrap: wrap;
    gap: 0 40px;
    margin-bottom: 96px;
}
#introduction .section_inner .introduction_box:last-child {
    margin-bottom: 0;
}
#introduction .section_inner .introduction_box h3 {
    width: 100%;
    padding: 24px 24px;
    margin-bottom: 25px;
}
#introduction .section_inner .introduction_box img {
}
#introduction .section_inner .introduction_box .text_right {
    width: calc(100% - 493px);
}
#introduction .section_inner .introduction_box .text_right .address,
#introduction .section_inner .introduction_box .text_right .hours,
#introduction .section_inner .introduction_box .text_right .tel {
    line-height: 1.8;
    border-bottom: 2px dotted #d8d5d6;
    padding-bottom: 5px;
    margin-bottom: 16px;
}
#introduction .section_inner .introduction_box .text_right .btn {
}
#introduction .section_inner .introduction_box .text_right .btn a {
    display: block;
    border: 1px solid #9B7C49;
    width: 335px;
	max-width: 100%;
    padding: 20px 40px;
    box-sizing: border-box;
    text-align: center;
    color: #9B7C49;
    font-family: "Shippori Mincho", "Noto Serif JP", serif;
    background: url(icon_arrow_gold.svg) center right 24px no-repeat;
}
#introduction .section_inner .introduction_box .text_right .btn a:hover {
    background-position: center right 19px;
}

/*-----------------------------------------
footer
-----------------------------------------*/
.pagetop{
	position:fixed;
	bottom:30px;
	right:30px;
	z-index:999;
}

footer {
    background: radial-gradient(circle, #fff, #ECE9E6);
    padding: 50px 0 10px;
}
footer .footer_logo img {
    width: 205px;
    height: 55px;
}
footer .copyright {
    margin-top: 23px;
}

.sp{ display:none; }
.sponly {display: none;}
@media screen and (max-width: 1400px) { /* タブレット横 */
}
@media screen and (max-width: 1194px) { /* iPad Pro */
}
@media screen and (max-width: 1024px) { /* タブレット横 */
}
@media screen and (max-width: 896px) { /* iPhone XS MAX 横表示 */
	.sp{ display:inline-block; }
	.pc{ display:none; }
    img{ max-width: 100%; height: auto;}
    
    .size21 {
        font-size: 18px;
    }
    .size27 {
        font-size: 24px;
    }
    .size41 {
        font-size: 36px;
    }
    
    header {
        padding: 12px;
    }
    .nav_btn {
        right: 12px;
    }
    
    #mainimg .img img {
        width: 50%;
    }
    #mainimg .section_inner div {
        background: rgba(255, 255, 255, 0.75);
    }
    
    #about {
        padding: 60px 0 50px;
    }
    #about:before {
        height: 80px;
        bottom: -80px;
    }#about:after {
        height: 80px;
        bottom: -100px;
    }
    #beaute {
        padding: 70px 0 80px;
    }
    #beaute .section_inner {
        padding: 60px 0;
    }
    #office,#home,#price,#cansel,#qa,#introduction {
        padding: 80px 0;
    }
    #home .section_inner .beaute {
        padding: 60px 0 40px;
    }
    
    #time_campaign {
        height: auto;
    }
    #time_campaign .section_inner {
        position: relative;
        margin-bottom: -100px;
        padding-bottom: 24px;
    }
	#time_campaign .section_inner p {
        padding: 20px 24px 0;
	}
    #time_campaign .section_inner .time_campaign_box {
        gap: 24px;
        padding: 24px 24px 0;
    }
    #time_campaign .section_inner h2 span {
        margin-top: 12px;
    }
    
    #beaute .section_inner .bg_white {
        
    }
    #beaute .section_inner .img_R,
    #home .section_inner .bg_white .img_R{
        margin-left: 90px;
        padding: 20px 20px 20px 40px;
    }
    #beaute .section_inner .img_L,
    #home .section_inner .bg_white .img_L{
        margin-right: 90px;
        padding: 20px 40px 20px 20px;
    }
    #beaute .section_inner .supplement {
        max-width: 94%;
        padding: 60px 40px;
    }
    
    #office .section_inner > .img_L,
    #home .section_inner > .img_L{
        flex-wrap: wrap;
    }
    #office .section_inner > .img_L img,
    #home .section_inner > .img_L img,
    #office .section_inner > .img_L p,
    #home .section_inner > .img_L p{
        margin: auto;
    }
    #office .section_inner .firstvisit {
        padding: 24px;
    }
    #home .section_inner .step_box ul {
        gap: 40px;
    }
    #office .section_inner .step_box ul li,
    #home .section_inner .step_box ul li{
        width: calc(50% - 20px);
    }
    #office .section_inner .step_box ul li:after,
    #home .section_inner .step_box ul li:after{
        right: -10px;
    }
    #office .section_inner .step_box ul li:nth-child(5):after,
    #office .section_inner .step_box ul li:nth-child(6):after,
    #home .section_inner .step_box ul li:nth-child(4):after,
    #home .section_inner .step_box ul li:nth-child(5):after {
        right: -10px;
        left: auto;
    }
    #home .section_inner .step_box ul li:nth-child(6):after {
        display: none;
    }
    #home .section_inner .step_box ul li:nth-child(3) {
        margin-right: 0;
    }
    #home .section_inner .step_box ul li:nth-child(4) {
        margin-left: 0;
    }
    #price .section_inner .price_box .size16 {
        width: 100%;
        text-align: right;
    }
    #price .section_inner .price_box .time_campaign {
        flex-wrap: wrap;
        gap: 12px;
    }
    
    #introduction .section_inner .introduction_box img {
        margin: auto;
    }
    #introduction .section_inner .introduction_box .text_right {
        width: 100%;
        margin-top: 25px;
    }
    #introduction .section_inner .introduction_box .text_right .btn a {
        margin: auto;
    }
    
}
@media screen and (max-width: 640px) {
    .size16,.size17 {
        font-size: 14px;
    }
    .size21 {
        font-size: 16px;
    }
    .size22 {
        font-size: 18px;
    }
    .size24,
    .size27 {
        font-size: 20px;
    }
    .size31,
    .size32 {
        font-size: 24px;
    }
    .size37,
    .size41 {
        font-size: 28px;
    }
    .size42 {
        font-size: 32px;
    }
    #cansel .section_inner dl {
        font-size: 16px;
    }
    
    
    header .header_inner .logo span {
        padding: 4.5px 24px;
    }
	header .header_inner .header_contact a {
		padding: 8.5px 24px;
	}
    
    #about .section_inner .nayami .nayami_check {
        padding: 90px 40px 30px;
    }
    #beaute .section_inner .img_R, #home .section_inner .bg_white .img_R,
    #beaute .section_inner .img_L, #home .section_inner .bg_white .img_L{
        flex-wrap: wrap;
    }
    #beaute .section_inner .img_R img, #home .section_inner .bg_white .img_R img,
    #beaute .section_inner .img_L img, #home .section_inner .bg_white .img_L img {
        margin: auto;
    }
    #beaute .section_inner .bg_white div,
    #home .section_inner .bg_white div div{
        width: 100%;
    }
    #beaute .section_inner .supplement p {
        text-align: left;
    }
    #beaute .section_inner .comparison dl {
        width: 100%;
        max-width: 100%;
    }
    
}
@media screen and (max-width: 480px) {
.sponly {display: inline-block;}
    .size31, .size32 {
        font-size: 22px;
    }

    header .header_inner .logo span {
        font-size: 10px;
        padding: 4.5px 8px;
    }
	header .header_inner .header_contact a {
		font-size: 12px;
		padding: 4.5px 8px;
	}
	#mainimg .section_inner div {
		padding: 4px 16px;
	}
	#mainimg .section_inner .size27 {
		font-size: 3.6vw;
	}
	#mainimg .section_inner .size41 {
		font-size: 5.2vw;
	}
    #time_campaign .section_inner .time_campaign_box {
        flex-wrap: wrap;
    }
    #time_campaign .section_inner .time_campaign_box img {
        margin: auto
    }
    #time_campaign .section_inner .time_campaign_box .text_right {
        width: 100%;
    }
	#time_campaign .section_inner .time_campaign_box .text_right .campaign_price_original {
		font-size: 12px;
	}
	#time_campaign .section_inner .time_campaign_box .text_right .campaign_price_original span.regular:after {
        top: 8px;
    }
    #about .section_inner .nayami .nayami_check ul {
        gap: 12px;
    }
    #about .section_inner .nayami .nayami_check ul li {
        width: 100%;
    }
    #beaute .section_inner .img_R, #home .section_inner .bg_white .img_R {
        margin-left: 0;
    }
    #beaute .section_inner .img_L, #home .section_inner .bg_white .img_L {
        margin-right: 0;
    }
    #beaute .section_inner .supplement {
        padding: 60px 24px;
    }
    #office .section_inner .step_box,
    #home .section_inner .step_box{
        padding: 34px 24px;
    }
    #office .section_inner .step_box ul,
    #home .section_inner .step_box ul{
        gap: 24px 40px;
    }
    #office .section_inner .step_box ul li,
    #home .section_inner .step_box ul li{
        width: 100%;
    }
    #office .section_inner .step_box ul li .num,
    #home .section_inner .step_box ul li .num{
        font-size: 42px
    }
    #office .section_inner .step_box ul li:after, #home .section_inner .step_box ul li:after,
    #office .section_inner .step_box ul li:nth-child(5):after, #office .section_inner .step_box ul li:nth-child(6):after, #home .section_inner .step_box ul li:nth-child(4):after, #home .section_inner .step_box ul li:nth-child(5):after {
        right: 0;
        left: 0;
        margin: auto;
        bottom: 0;
        top: auto;
        transform: rotate(90deg);
    }
    #office .section_inner .step_box ul li:nth-child(7):after {
        display: none;
    }
    #price .section_inner .plan {
        padding: 24px;
    }
    #price .section_inner .price_box .time_campaign .bg_pink {
        width: 100%;
        padding: 8px 20px 8px 48px;
        margin-top: 12px;
		flex-wrap: wrap;
    }
    #price .section_inner .plan .plan_name,
    #price .section_inner .plan .plan_price{
        flex-wrap: wrap;
        gap: 12px 26px;
    }
    #cansel .section_inner h2 span,
    #qa .section_inner h2 span {
        padding: 0 24px;
    }
    #cansel .section_inner p{
        text-align: left;
    }
    #qa .section_inner dl {
        margin-bottom: 24px;
    }
    #qa .section_inner dl dt,#qa .section_inner dl dd {
        padding: 20px 40px 20px 64px;
    }
    #qa .section_inner dl dt:before,#qa .section_inner dl dd:before {
        left: 20px;
    }
    #introduction .section_inner .introduction_box .text_right {
        font-size: 14px;
    }
    #introduction .section_inner .introduction_box .text_right .tel {
        font-size: 16px;;
    }
    
}
@media screen and (max-width: 375px) {
}