@charset "UTF-8";
/* CSS Document */

/*ぱんくず*/
.second {
	position: static;
}

.second .pancz {
	position: static;
	padding: 10px 3.73% 0;
}

/*mv*/
#mv .box {
	background-color: #eff8fc;
}

#mv .box > div:first-child {
	margin-bottom: 20px;
}

#mv .box > div:last-child {
	padding: 0 3.73%;
}

#mv > p.t04 {
	background-color: #eff8fc;
	padding: 10px 3.73% 15px;
	font-size:min(3.0vw,26px);
	line-height: 1.2em;
}

#mv > p.t04 span {
	display: inline-block;
	padding-left: 1em;
	position: relative;
}

#mv > p.t04 span::before {
	content: "※";
	position: absolute;
	left: 0;
	top: 0;
}

#mv > p.btn {
	padding: 35px 3.73%;
}

#mv > p.btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size:min(5.9vw,52px);
	color: #f17190;
	padding: 10px 0;
	border-radius: 15px;
	text-decoration: none;
	line-height: 1.3em;
	background-color: #fde4ea;
	position: relative;
}

#mv > p.btn a:hover {
	opacity: .8;
}

#mv > p.btn a::after {
	content: ">";
	font-size:min(5.5vw,48px);
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%) scale(0.6,1);
}

#mv > p.btn a > span {
	padding: 0 12vw;
	position: relative;
}

#mv > p.btn a > span::before {
	content: "";
	width: 8.5vw;
	height: 8.5vw;
	background-image: url("../../images/ico_women.webp");
	background-size: cover;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}


/*REASON*/
#reason_cont {
	padding: 40px 3.73% 60px;
}


/*nayami*/
#nayami .box01 {
	padding: 60px 3.73% 50px;
	position: relative;
}

#nayami .box01::after {
	content: "";
	width: 105px;
	height: 34px;
	background-image: url("../../images/sankaku01.webp");
	background-size: cover;
	position: absolute;
	left: 50%;
	bottom: -34px;
	transform: translateX(-50%);
}

#nayami .box01 h2 {
	font-size:min(6.5vw,60px);
	font-weight: 500;
}

#nayami .box01 h2 > span {
	display: block;
	padding-left: 18vw;
	position: relative;
}

#nayami .box01 h2 > span::before {
	content: "";
	width: 23vw;
	height: 23vw;
	background-image: url("../../../images/mens/images/ico01.webp");
	background-size: cover;
	position: absolute;
	left: 0;
	top: -10px;
}

#nayami .box01 h2 > span > span {
	font-size:min(8.8vw,92px);
}

#nayami .box01 ul {
	padding-top: 40px;
}

#nayami .box01 ul li {
	width: calc(100% - 7vw);
	padding-left: 7vw;
	margin-bottom: 20px;
	color: #161316;
	font-size:min(4.8vw,36px);
	font-weight: 500;
	position: relative;
}

#nayami .box01 ul li:before {
	content: "";
	width: 5vw;
	height: 5vw;
	background-image: url("../../images/ico_check.webp");
	background-size: cover;
	position: absolute;
	left: 0;
	top: 7px;
}

#nayami .box02 {
	padding: 80px 3.73% 85px;
}

#nayami .box02 p.t01 {
	font-size:min(7vw,68px);
	color: #161316;
	font-weight: 500;
	line-height: 1.5em;
	text-align: center;
}

#nayami .box02 p.t01 > span {
	background: linear-gradient(transparent 70%,#ffd900 0%);
}

#nayami .box02 p.t01 span.txt01 {
	font-size:min(13vw,116px);
	font-weight: 700;
}

#nayami .box02 p.t01 span.txt02 {
	font-size:min(8.6vw,90px);
}

#nayami .box02 p.t02 {
	font-size:min(6vw,54px);
	color: #37919b;
	font-weight: 500;
	line-height: 1.5em;
	padding: 30px 0 50px;
	text-align: center;
}


/*treatment*/
#treatment h2.h03 {
	position: relative;
}

#treatment h2.h03::before {
	content: "";
	width: 60px;
	height: 20px;
	background-image: url("../../images/sankaku02.webp");
	background-size: cover;
	position: absolute;
	left: 50%;
	top: -1px;
	transform: translateX(-50%);
}

#treatment .box01 {
	padding: 40px 3.73% 60px;
}

#treatment .box01 h3 {
	border: 2px solid #8dbac0;
	text-align: center;
	font-size:min(6.5vw,60px);
	color: #161316;
	font-weight: 700;
	padding: 15px 0;
}

#treatment .box01 h3 span {
	padding-left: 12vw;
	position: relative;
}

#treatment .box01 h3 span::before {
	content: "";
	width: 10vw;
	height: 10vw;
	background-image: url("../../images/ico_wakaba.webp");
	background-size: cover;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

#treatment .box01 dl {
	display: flex;
	justify-content: center;
	align-items: baseline;
	padding: 20px 0 25px;
}

#treatment .box01 dl dt {
	width: 100px;
	line-height: 1.5em;
	font-size:min(6vw,54px);
	color: #fff;
	font-weight: 500;
	text-align: center;
	background-color: #77b4bc;
	margin-right: 20px;
	position: relative;
	bottom: 5px;
}

#treatment .box01 dl dd {
	font-size:min(14.4vw,130px);
	color: #161316;
	font-weight: 700;
}

#treatment .box01 dl dd span.bl {
	position: relative;
}

#treatment .box01 dl dd span.bl::after {
	content: "";
	width: 100%;
	height: 15px;
	background: #ffd900;
	position: absolute;
	left: 0;
	bottom: 15px;
	z-index: -1;
}

#treatment .box01 dl dd span.txt01 {
	font-size:min(8.6vw,90px);
	font-weight: 500;
}

#treatment .box01 dl dd span.txt02 {
	font-size:min(4.9vw,42px);
	font-weight: 500;
}

#treatment .box01 p {
	text-align: center;
	font-size:min(6vw,54px);
	color: #161316;
}

#treatment .box02 {
	padding:60px 3.73% 80px;
}

#treatment .box02 > h3 {
	text-align: center;
	font-size:min(7vw,68px);
	color: #161316;
	font-weight: 700;
}

#treatment .box02 > h3 span {
	padding: 0 8vw;
	position: relative;
}

#treatment .box02 > h3 span::before {
	content: "";
	width: 6vw;
	height: 1px;
	border-bottom: 6px solid #000000;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

#treatment .box02 > h3 span::after {
	content: "";
	width: 6vw;
	height: 1px;
	border-bottom: 6px solid #000000;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

#treatment .box02 > ul {
	padding-top: 60px;
	padding-bottom: 45px;
}

#treatment .box02 > ul li {
	padding-bottom: 80px;
}

#treatment .box02 > ul li:last-child {
	padding-bottom: 0;
}

#treatment .box02 > ul li dl {
	width: calc(100% - 4px);
	border: 2px solid #77b4bc;
	margin-bottom: 20px;
}

#treatment .box02 > ul li dl dt {
	font-size:min(6.7vw,64px);
	color: #fff;
	line-height: 80px;
	font-weight: 500;
	padding-left: 12vw;
	background-color: #77b4bc;
	position: relative;
}

#treatment .box02 > ul li dl dt::before {
	content: "";
	width: 10vw;
	height: 10vw;
	background-image: url("../../images/ico_hair.webp");
	background-size: cover;
	position: absolute;
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
}

#treatment .box02 > ul li dl dd {
	padding: 20px 10px;
	font-size:min(9.6vw,100px);
	color: #161316;
	font-weight: 500;
	text-align: center;
}

#treatment .box02 > ul li dl dd span.txt01 {
	display: block;
	font-size:min(5.7vw,50px);
	background-color: #c4dde3;
	line-height: 1.5em;
}

#treatment .box02 > ul li dl dd span.txt02 {
	font-size:min(6.5vw,60px);
}

#treatment .box02 > ul li dl dd span.txt03 {
	font-size:min(4.6vw,34px);
	font-weight: 400;
}

#treatment .box02 > ul li p {
	font-size:min(4.8vw,36px);
	color: #161316;
}

#treatment .box02 > ul li p span {
	font-weight: 500;
}

#treatment .box02 > ul li p.t01 {
	padding-bottom: 20px;
}

#treatment .box02 > ul li p.t02 {
	text-align: right;
}

#treatment .box02 .box {
	margin: 80px 0 0;
	background-color: #fff;
	padding: 40px 10px 35px;
}

#treatment .box02 .box h3 {
	text-align: center;
	font-size:min(7.2vw,72px);
	color: #161316;
	font-weight: 700;
}

#treatment .box02 .box h3 span {
	padding: 0 5vw;
	position: relative;
}

#treatment .box02 .box h3 span::before {
	content: "";
	width: 3vw;
	height: 1px;
	border-bottom: 6px solid #000000;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

#treatment .box02 .box h3 span::after {
	content: "";
	width: 3vw;
	height: 1px;
	border-bottom: 6px solid #000000;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

#treatment .box02 .box .t01 {
	text-align: center;
	padding: 35px 0 60px;
	font-size:min(6vw,54px);
	color: #37919b;
	font-weight: 500;
}

#treatment .box02 .box ul {
	padding-bottom: 60px;
}

#treatment .box02 .box ul li {
	text-align: center;
	padding-bottom: 40px;
}

#treatment .box02 .box ul li:last-child {
	padding-bottom: 0;
}

#treatment .box02 .box ul li p {
	line-height: 1em;
	padding-bottom: 20px;
	font-size:min(6vw,54px);
	font-weight: 700;
}


/*無理のない薄毛治療を*/
#usuge {
	padding: 60px 3.73% 80px;
}

#usuge h2 {
	text-align: center;
	font-size:min(7vw,68px);
	font-weight: 500;
	line-height: 1.3em;
	position: relative;
}

#usuge h2 span {
	display: inline-block;
	background-color: #fff;
	padding: 0 10px;
}

#usuge h2::before {
	content: "";
	width: 100%;
	height: 1px;
	border-bottom: 4px solid #8dbac0;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: -1;
}

#usuge .box {
	padding: 40px 0 0;
}

#usuge .box > p {
	padding-bottom: 30px;
}

#usuge .box div {
	text-align: center;
}

#usuge .box div p {
	padding-top: 10px;
	font-size:min(3.5vw,28px);
}

#usuge .box div p span {
	font-size:min(4.5vw,32px);
}


/*case*/
#case {
	padding: 60px 3.73% 80px;
}

#case ul.case_i {
	padding: 40px 0 30px;
	display: flex;
	justify-content: space-between;
}

#case ul.case_t {
	padding-bottom: 50px;
}

#case ul.case_t li {
	font-size:min(3.5vw,28px);
	line-height: 1.8em;
}


/*about*/
#about {
	padding: 60px 3.73% 80px;
}

#about .box01 {
	padding: 60px 0 80px;
}

#about .box01 .box {
	padding-bottom: 40px;
}

#about .box01 .box div {
	text-align: center;
	padding-bottom: 30px;
}

#about .box02 {
	padding: 0 0 60px;
}

#about .box02 .box {
	padding: 35px 0 0;
}

#about .box02 .box div {
	text-align: center;
	padding-top: 30px;
}

#about .box03 .box {
	padding: 35px 0 0;
}

#about .box03 .box div {
	text-align: center;
	padding-top: 30px;
}


/*共通部分変更点*/
.reserve {
	background-color: #eef4fb!important;
}