@charset "UTF-8";

#salonprogram main {
  background: #ECEADF;
}

/* ========================================
  @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px),print {
/* btn
-------------------------------------*/
#salonprogram .p-link {
	padding-block: 679px 0;
	position: relative;
	text-align: center;
	z-index: 10;
}

#salonprogram .p-link a {
	align-items: center;
	background: #EFA453;
	border: 4px solid #FFF;
	border-radius: 100px;
	box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.15);
	display: block;
	display: flex;
	gap: 0 19px;
	margin-inline: auto;
	padding-inline: 44px;
	position: relative;
	width: min(95%, 900px);
}

#salonprogram .p-link a::after {
	background: url(../images/common/btn_arrow.svg) no-repeat center center/contain;
	content: "";
	height: 29px;
	position: absolute;
	right: 54px;
	top: 50%;
	transform: translateY(-50%);
	width: 29px;
}

#salonprogram .p-link a p {
	color: #ffffff;
	font-size: 24px;
  font-size: clamp(1.25rem, 1.083rem + 0.35vw, 1.5rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.2;
}

#salonprogram .p-link a p span {
	color: #FFEA00;
	font-size: 28px;
  font-size: clamp(1.375rem, 1.125rem + 0.52vw, 1.75rem);
	font-weight: 600;
	line-height: 33px; /* 117.857% */
	letter-spacing: 0.1em;
}

#salonprogram .p-link .human {
  margin-bottom: -6px;
  position: relative;
  top: -6px;
}

.p-fv {
	position: absolute;
	text-align: center;
	top: 0;
}

.p-bg {
	background-color: #edebdf; /* 背景色を指定 */
	background-image: url(../images/salonprogram/good_bg.png); /* 画像を指定 */
	background-position: top right; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-bottom: -600px;
	padding-block: 121px 213px;
}

.p-good {
  margin-bottom: -14px;
}

.p-good .p-good__ttl {
	font-size: 33px;
  font-size: clamp(1.5rem, 1.125rem + 0.78vw, 2.063rem);
	font-weight: 600;
	letter-spacing: 0.051030303em;
	line-height: 1;
	margin-bottom: 82px;
	margin-inline: auto;
	padding-inline: 73px;
  padding-inline: clamp(3.5rem, 2.792rem + 1.48vw, 4.563rem);
	position: relative;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.p-good .p-good__ttl:before {
	background: url(../images/salonprogram/good_line.svg) no-repeat center center/contain;
	bottom: -16px;
	content: "";
	height: 74px;
	left: 0;
	position: absolute;
	width: 48px;
}

.p-good .p-good__ttl::after {
	background: url(../images/salonprogram/good_line.svg) no-repeat center center/contain;
	bottom: -16px;
	content: "";
	height: 74px;
	position: absolute;
	right: 0;
	transform: scale(-1, 1);
	width: 48px;
}

.p-good .p-good__ttl .box {
	background: #FFF;
	border: 2px solid #231815;
	color: #D8780C;
	font-size: 48px;
  font-size: clamp(2.5rem, 2.167rem + 0.69vw, 3rem);
	font-weight: 600;
	letter-spacing: -0.12em;
	line-height: 1;
	margin-inline: 0 20px;
	padding-block: 4px;
	padding-inline: 16px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-good .p-good__contents {
	display: grid;
	gap: 0 53px;
	grid-template-columns: 741px minmax(0, 1fr);
	margin-bottom: -50px;
	margin-inline: auto;
	width: min(95%, 1435px);
}

.p-good .p-good__contents-right {
	color: #21130B;
	position: relative;
	top: 10px;
}

.p-good .p-good__contents-right p {
	font-size: 22px;
  font-size: clamp(1rem, 0.75rem + 0.52vw, 1.375rem);
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.8181818182;
	margin-bottom: 37px;
}

.p-good .p-good__contents-right p span {
	font-size: 30px;
  font-size: clamp(1.25rem, 0.833rem + 0.87vw, 1.875rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.2666666667;
}

.p-good .p-good__contents-right p.center {
	margin-bottom: 68px;
}

.p-good__arrow {
	left: -189px;
	position: relative;
	text-align: center;
}

.p-recom .l-inner.l-recom {
	margin-inline: auto;
	width: min(95%, 1720px);
}

.p-recom .p-recom__ttl {
	text-align: center;
  margin-bottom: -6px;
}

.p-recom .p-recom__box {
	border: 3px solid #67665F;
	border-left: none;
	box-shadow: 0 40px 80px 0 rgba(135, 135, 135, 0.25);
	display: grid;
	grid-template-columns: 106px minmax(0, 1fr);
	position: relative;
}

.p-recom .p-recom__box-bg {
	background: #67665F;
}

.p-recom .p-recom__box-right {
	background: #ffffff;
	border: 20px solid #EFA453;
	padding-block: 79px 105px;
}

.p-recom .p-recom__box-num {
	margin-bottom: -77px;
	margin-inline: auto;
	text-align: right;
	width: min(95%, 1433px);
}

.p-recom .p-recom__box-ttl {
	color: #D8780C;
	font-size: 28px;
  font-size: clamp(1.125rem, 0.708rem + 0.87vw, 1.75rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.6428571429;
	text-align: center;
	margin-bottom: 8px;
}

.p-recom .p-recom__line {
	margin-bottom: 89px;
	margin-inline: auto;
	width: min(95%, 1500px);
}

.p-recom .p-recom__line img {
	height: auto;
	width: 100%;
}

.p-recom .p-recom__contents {
	display: grid;
	gap: 0 0px;
	grid-template-columns: minmax(0, 1fr) 715px;
	margin-bottom: 40px;
	margin-inline: auto;
	width: min(95%, 1331px);
}

.p-recom .p-recom__contents-ttl {
	font-size: 28px;
  font-size: clamp(1rem, 0.5rem + 1.04vw, 1.75rem);
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1;
	text-decoration: underline;
	text-decoration-thickness: 12px;
	-webkit-text-decoration-color: #FDD4A8;
	margin-bottom: 28px;
	text-decoration-color: #FDD4A8;
	text-underline-offset: -6px;
}

.p-recom .p-recom__contents-en {
	color: #D8780C;
	font-size: 70px;
  font-size: clamp(2rem, 0.417rem + 3.3vw, 4.375rem);
	font-weight: 600;
	line-height: 1.2285714286;
	margin-bottom: 13px;
	letter-spacing: 0.05em;
}

.p-recom .p-recom__contents-ttl02 {
	font-size: 18px;
  font-size: clamp(0.813rem, 0.604rem + 0.43vw, 1.125rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-bottom: 25px;
}

.p-recom .p-recom__txt {
	font-size: 16px;
  font-size: clamp(0.75rem, 0.583rem + 0.35vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	width: 557px;
}

.p-recom .p-recom__box-items {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-inline: auto;
	width: min(95%, 1331px);
}

.p-bg02 {
	background: #F8EECB;
	height: 517px;
	margin-inline: auto;
	width: min(100%, 1920px);
}

.p-bg03 {
	background: url(../images/salonprogram/reason_bg.jpg) repeat top center/contain;
	margin-bottom: -482px;
	margin-inline: auto;
	max-width: 1920px;
	padding-block: 147px 480px;
	width: 100%;
}

.p-reason {
	color: #21130B;
	margin-bottom: -200px;
}

.p-reason .l-inner.l-reason {
	background: #ffffff;
	margin-inline: auto;
	padding-block: 0 337px;
	width: min(95%, 1720px);
}

.p-reason .p-reason__ttl {
	margin-bottom: 25px;
	position: relative;
	text-align: center;
	top: -24px;
}

.p-reason .p-reason__ttl02 {
	background: #FFF;
	border: 2px solid #231815;
	color: #D8780C;
	font-size: 48px;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 87px;
	margin-inline: auto;
	padding-block: 10px;
	padding-inline: 16px;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.p-reason .p-reason__items {
	display: grid;
	gap: 0 38px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 1400px);
}

.p-reason .p-reason__item .img {
	margin-bottom: 40px;
}

.p-reason .p-reason__item h4 {
	font-size: 24px;
  font-size: clamp(0.938rem, 0.563rem + 0.78vw, 1.5rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.3333333333;
	margin-bottom: 19px;
	text-align: center;
}

.p-reason .p-reason__item p {
	font-size: 16px;
  font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
}

.p-service {
	background: #ECEADF;
	border: 1px solid #231815;
	margin-bottom: 125px;
	margin-inline: auto;
	padding-block: 0 119px;
	width: min(95%, 1500px);
}

.p-service .l-inner.l-service {
	position: relative;
	top: -40px;
}

.p-service .p-service__en {
	text-align: center;
	margin-bottom: -6px;
}

.p-service .p-service__ttl {
	font-size: 24px;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 2.5;
	margin-bottom: 44px;
	text-align: center;
}

.p-service .p-service__contents {
	background: url(../images/salonprogram/service_bg.png) no-repeat top center/contain;
	margin-inline: auto;
	padding-block: 100px 86px;
	width: 100%;
	margin-bottom: 74px;
}

.p-service .p-service__contents-time {
	color: #ffffff;
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-bottom: -119px;
	text-align: center;
}

.p-service .p-service__contents-time span {
	font-size: 100px;
	font-weight: 600;
	line-height: 1.12;
}

.p-service .p-service__human {
	margin-inline: auto;
	position: relative;
	right: -63px;
	width: min(95%, 684px);
}

.p-service .p-service__contents-btn {
	background: #FFF;
	border-radius: 110px;
	margin-bottom: 30px;
	margin-inline: auto;
	padding-block: 42px 25px;
	width: min(95%, 684px);
}

.p-service .p-service__contents-btn p.top {
	border: 1px solid #21130B;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.5555555556;
	margin-bottom: -58px;
	margin-inline: auto;
	padding: 4px 41px;
	position: relative;
	right: -47px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-service .p-service__contents-btn p.bottom {
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1;
	text-align: center;
}

.p-service .p-service__contents-btn p.bottom span {
	color: #D8780C;
	font-size: 100px;
	font-weight: 600;
	line-height: 1.12;
}

.p-service .p-service__contents-txt {
	font-size: 20px;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.6;
	text-align: center;
}

.p-service .p-service__contents-txt span {
	display: block;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.6;
}

.p-flow__contents {
	background: #FFF;
	margin-inline: auto;
	padding-block: 81px 96px;
	width: min(95%, 1200px);
}

.p-flow__contents .p-flow__en {
	font-size: 46px;
	font-weight: 400;
	letter-spacing: 0.09em;
	line-height: 2.4347826087;
	margin-bottom: 0;
	text-align: center;
	text-align: center;
}

.p-flow__contents .p-flow__ttl {
	font-size: 24px;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 2.525;
	margin-bottom: 60px;
	text-align: center;
}

.p-flow__contents .p-flow__items {
	display: grid;
	gap: 60px 55px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 1040px);
}

.p-flow__contents .p-flow__item {
	background: #FFF5EA;
	border: 1px solid #21130B;
	border-radius: 10px;
	padding-block: 30px 22px;
	position: relative;
}

.p-flow__contents .p-flow__item::after {
	background: url(../images/salonprogram/flow_arrow.svg) no-repeat center center/contain;
	content: "";
	height: 27px;
	position: absolute;
	right: -48px;
	top: 50%;
	transform: translateY(-50%);
	width: 33px;
}

.p-flow__contents .p-flow__item:nth-child(3)::after,
.p-flow__contents .p-flow__item:last-child::after {
	content: none;
}

.p-flow__contents .p-flow__item .num {
	left: -24px;
	position: absolute;
	top: -40px;
}

.p-flow__contents .p-flow__item .icon {
	margin-bottom: 31px;
	text-align: center;
}

.p-flow__contents .p-flow__item h4 {
	font-size: 20px;
  font-size: clamp(0.875rem, 0.625rem + 0.52vw, 1.25rem);
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
}

.p-flow__contents .p-flow__item p {
	font-size: 16px;
  font-size: clamp(0.688rem, 0.479rem + 0.43vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin-block: 7px 0;
	text-align: center;
}

.p-hair {
	color: #21130B;
}

.p-hair .l-inner.l-hair {
	margin-inline: auto;
	width: min(95%, 1240px);
}

.p-hair .p-hair__txt {
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 2.5;
	margin-bottom: 25px;
	text-align: center;
}

.p-hair .p-hair__txt02 {
	color: #D8780C;
	font-size: 36px;
  font-size: clamp(1.75rem, 1.417rem + 0.69vw, 2.25rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.9444444444;
	margin-bottom: -115px;
	text-align: center;
}

.p-hair .p-hair__txt02 span.box {
	background: #FFF;
	border: 1px solid #21130B;
	font-size: 51px;
  font-size: clamp(1.875rem, 1rem + 1.82vw, 3.188rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.3725490196;
	margin-inline: auto;
	margin-inline: 0 16px;
	padding: 5px 10px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-hair .p-hair__human {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	width: min(100%,1150px);
	margin-inline: auto;
}

.p-bg04 {
  background: #F9F9F7;
}

.p-message {
	background: url(../images/salonprogram/message_bg.jpg) no-repeat top center/cover;
	color: #21130B;
	margin-inline: auto;
	max-width: 1920px;
	width: 100%;
  margin-bottom: -265px;
  position: relative;
}

.p-message .l-inner.l-message {
	padding-block: 190px 265px;
}

.p-message .p-message__en {
	margin-bottom: -76px;
	margin-inline: auto;
	position: relative;
	width: min(95%, 1398px);
  z-index: 1;
}

.p-message .p-message__contents {
	align-items: center;
	display: grid;
	grid-template-columns: 583px 897px;
	margin-bottom: 22px;
	justify-content: center;
}

.p-message .p-message__contents-left {
  position: relative;
  left: 74px;
}

.p-message .p-message__contents-left h3 {
	margin-bottom: 38px;
	position: relative;
	white-space: nowrap;
	z-index: 1;
}

.p-message .p-message__contents-left h3 span {
	background: #ffffff;
	color: #D8780C;
	display: block;
	font-size: 28px;
  font-size: clamp(1.25rem, 0.917rem + 0.69vw, 1.75rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 2.5;
	padding-inline: 29px 0px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-message .p-message__contents-left h3 span.bottom {
	margin-block: 2px 0;
}

.p-message .p-message__contents-left .txt {
	margin-inline: auto;
	width: min(100%, 478px);
	position: relative;
	left: -26px;
}

.p-message .p-message__contents-left .txt p {
  font-size: 16px;
  font-size: clamp(0.75rem, 0.583rem + 0.35vw, 1rem);
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-bottom: 32px;
}

.p-message .p-message__contents-left .txt p.bottom {
	margin-bottom: 0;
}

.p-message .p-message__contents-right {
	left: 54px;
	position: relative;
}

.p-message .p-messsage__icon {
	left: -235px;
	margin-bottom: -14px;
	position: relative;
	text-align: center;
}

.p-message .p-message__txt {
	color: #D8780C;
	font-size: 30px;
  font-size: clamp(1.375rem, 1.042rem + 0.69vw, 1.875rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.5333333333;
	margin-bottom: 88px;
	text-align: center;
}

.p-message .p-message__contents02 {
	display: grid;
	gap: 0 57px;
	grid-template-columns: 400px minmax(0, 1fr);
	margin-bottom: 121px;
	margin-inline: auto;
	width: min(95%, 1216px);
}

.p-message .p-message__contents02-right p {
	font-size: 16px;
  font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	margin-bottom: 27px;
}

.p-message .p-message__contents02-right p span {
	background: #FFF;
	color: #D8780C;
	font-size: 28px;
  font-size: clamp(1.25rem, 0.917rem + 0.69vw, 1.75rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.1428571429;
	padding: 17px 8px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-message .p-message__contents02-right p.bottom {
	margin-bottom: 0;
}

.p-message .p-message__box {
	margin-inline: auto;
	position: relative;
	width: min(95%, 800px);
}

.p-message .p-message__box-img01 {
	left: -385px;
	position: absolute;
	top: 169px;
}

.p-message .p-message__box-img02 {
	position: absolute;
	right: -317px;
	top: 35px;
}

.p-message .p-message__box-txt {
	font-size: 38px;
  font-size: clamp(1.75rem, 1.333rem + 0.87vw, 2.375rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.6842105263;
	margin-bottom: 11px;
	text-align: center;
}

.p-message .p-message__box-line {
	margin-bottom: 34px;
	text-align: center;
}

.p-message .p-message__txt-wrap {
	background: url(../images/salonprogram/message_arrow.png) no-repeat top center/contain;
	margin-bottom: 38px;
	margin-inline: auto;
	margin-inline: auto;
	padding-block: 72px 45px;
	width: -moz-fit-content;
	width: fit-content;
	width: 100%;
}

.p-message .p-message__txt-wrap p {
	font-size: 33px;
  font-size: clamp(1.5rem, 1.125rem + 0.78vw, 2.063rem);
	font-weight: 600;
	letter-spacing: 0.051030303em;
	line-height: 2.5;
	text-align: center;
}

.p-message .p-message__txt-wrap p span {
	background: #FFF;
	border: 2px solid #231815;
	color: #D8780C;
	font-size: 48px;
  font-size: clamp(2.375rem, 1.958rem + 0.87vw, 3rem);
	font-weight: 600;
	letter-spacing: -0.12em;
	line-height: 1;
	margin-inline: 10px;
	padding: 8px 12px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-message .p-message__box-txt02 {
	font-size: 40px;
  font-size: clamp(2.125rem, 1.875rem + 0.52vw, 2.5rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-bottom: 14px;
	margin-inline: auto;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.p-message .p-message__line {
	background: #21130B;
	height: 1px;
	margin-bottom: 2px;
	margin-inline: auto;
	width: 528px;
  width: clamp(29.063rem, 26.438rem + 5.47vw, 33rem);
}

.p-message .p-message__line.bottom {
	margin-bottom: 21px;
}

.p-message .p-message__box-txt03 {
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	margin-bottom: -320px;
	text-align: center;
}

.p-message .p-message__box-human {
	margin-inline: auto;
	text-align: right;
	width: min(98%, 1324px);
}

#salonprogram .form-Box .form-box-inner {
  position: relative;
  z-index: 1;
}

#salonprogram .form-Box {
  padding-block: 0 160px;  
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1919px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1919px) {
.p-fv__img img {
	height: auto;
	width: 100%;
}
}


/* ========================================
@media screen and (min-width:768px) and ( max-width:1800px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1800px) {
#salonprogram .p-link {
	padding-block: 37.722vw 0;
	position: relative;
	text-align: center;
	z-index: 10;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1600px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1600px) {
.p-recom .p-recom__box-item img {
  width: 90%;
  height: auto;        
}

.p-recom .p-recom__box-item:nth-child(2) img {
  width: 3.938vw;
}

.p-recom .p-recom__box-item:nth-child(3) {
  text-align: right;
}

.p-recom .p-recom__contents {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 35.6vw;
	margin-bottom: 2.5vw;
	margin-inline: auto;
	width: min(95%, 1331px);
}

#salonprogram iframe[src*="youtube.com"] {
  max-width: 100%;
  height: 25.25vw;
  margin: 0;
}

.p-recom .p-recom__box-bg img {
  width: 100%;
  height: auto;        
}

.p-recom .p-recom__box-num {
	margin-bottom: -4.812vw;
	margin-inline: auto;
	text-align: right;
	width: min(95%, 1433px);
}

.p-recom .p-recom__box-num img {
  width: 7.625vw;
  height: auto;
}

.p-recom .p-recom__box-right {
	background: #ffffff;
	border: 20px solid #EFA453;
	padding-block: 4.938vw 6.563vw;
}

.p-recom .p-recom__box {
	border: 3px solid #67665F;
	border-left: none;
	box-shadow: 0 40px 80px 0 rgba(135, 135, 135, 0.25);
	display: grid;
	grid-template-columns: 6.6vw minmax(0, 1fr);
	position: relative;
}

.p-recom .p-recom__txt {
	width: 41.813vw;
}

.p-message .p-message__en {
	margin-bottom: -4.75vw;
	margin-inline: auto;
	position: relative;
	width: min(95%, 1398px);
  z-index: 1;
}

.p-message .p-message__en img {
  width: 50.125vw;
  height: auto;
}

.p-message .p-message__contents {
	align-items: center;
	display: grid;
	grid-template-columns: 36.438vw 56.063vw;
	margin-bottom: 1.375vw;
	justify-content: center;
}

.p-message .p-message__contents-left {
  position: relative;
  left: 4.625vw;
}

.p-message .p-message__contents-right img {
  width: 100%;
  height: auto;        
}

.p-message .p-message__contents-right {
	left: 3.375vw;
	position: relative;
}

.p-message .p-message__contents-right {
	left: 3.375vw;
	position: relative;
}

.p-message .p-message__contents-left .txt {
	margin-inline: 0;
	width: min(100%, 29.8vw);
	position: relative;
	left: 0vw;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1500px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1500px) {
#salonprogram .p-link {
	padding-block: 34.722vw 0;
	position: relative;
	text-align: center;
	z-index: 10;
}

.p-good .p-good__contents {
	display: grid;
	gap: 0 3.533vw;
	grid-template-columns: 46.4vw minmax(0, 1fr);
	margin-bottom: -3.333vw;
	margin-inline: auto;
	width: min(95%, 1435px);
}

.p-good .p-good__contents-left img {
  width: 100%;
  height: auto;        
}

.p-reason .p-reason__item .img img {
  width: 100%;
  height: auto;        
}

.p-message .p-message__box-img01 {
	left: -19.667vw;
	position: absolute;
	top: 11.267vw;
}

.p-message .p-message__box-img01 img {
  width: 29vw;
  height: auto;
}

.p-message .p-message__box-img02 {
	position: absolute;
	right: -19.133vw;
	top: 2.333vw;
}

.p-message .p-message__box-img02 img {
  width: 25.467vw;
  height: auto;
}

.p-good__arrow {
	left: -12.6vw;
	position: relative;
	text-align: center;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1400px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1400px) {
.p-service .p-service__contents {
	background: url(../images/salonprogram/service_bg.png) no-repeat top center/contain;
	margin-inline: auto;
	padding-block: 7.143vw 6.143vw;
	width: 100%;
	margin-bottom: 5.286vw;
}

.p-service .p-service__contents-time {
	color: #ffffff;
	font-size: 2vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-bottom: -8.5vw;
	text-align: center;
}

.p-service .p-service__contents-time span {
	font-size: 7.143vw;
	font-weight: 600;
	line-height: 1.12;
}

.p-service .p-service__human {
	margin-inline: auto;
	position: relative;
	right: -4.5vw;
	width: min(95%, 48.8vw);
}

.p-service .p-service__human img {
  width: 8.143vw;
  height: auto;
}

.p-service .p-service__contents-btn {
	background: #FFF;
	border-radius: 7.857vw;
	margin-bottom: 2.143vw;
	margin-inline: auto;
	padding-block: 3vw 1.786vw;
	width: min(95%, 48.8vw);
}

.p-service .p-service__contents-btn p.top {
	border: 1px solid #21130B;
	font-size: 1.286vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.5555555556;
	margin-bottom: -4.143vw;
	margin-inline: auto;
	padding: 0.286vw 2.929vw;
	position: relative;
	right: -3.357vw;
	width: -moz-fit-content;
	width: fit-content;
}

.p-service .p-service__contents-btn p.bottom {
	font-size: 2vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1;
	text-align: center;
}

.p-service .p-service__contents-btn p.bottom span {
	color: #D8780C;
	font-size: 7.143vw;
	font-weight: 600;
	line-height: 1.12;
}

.p-service .p-service__contents-txt {
	font-size: 1.429vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.6;
	text-align: center;
}

.p-service .p-service__contents-txt span {
	display: block;
	font-size: 1.429vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.6;
}

.p-message .p-message__box-human img {
  width: 22.286vw;
  height: auto;
}

.p-message .p-message__box-txt03 {
	margin-bottom: -16.857vw;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1300px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1300px) {
.p-recom .p-recom__ttl img {
  width: 75%;
  height: auto;        
}

.p-flow__contents .p-flow__item .icon img {
  width: 50%;
}

.p-message .p-message__contents02 {
	display: grid;
	gap: 0 4.385vw;
	grid-template-columns: 28.5vw minmax(0, 1fr);
	margin-bottom: 9.308vw;
	margin-inline: auto;
	width: min(95%, 1216px);
}

.p-message .p-message__contents02-left img {
  width: 100%;
  height: auto;        
}


}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1200px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1200px) {
.p-message .p-message__box-img01 {
	left: -14.667vw;
	position: absolute;
	top: 11.267vw;
}

.p-message .p-message__box-img01 img {
  width: 24vw;
  height: auto;
}

.p-message .p-message__box-img02 {
	position: absolute;
	right: -14.133vw;
	top: 2.333vw;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1050px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1050px) {

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1100px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1100px) {
#salonprogram .p-link {
	padding-block: 29.722vw 0;
	position: relative;
	text-align: center;
	z-index: 10;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1000px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1000px) {
.p-reason .p-reason__ttl img {
  width: 70%;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:900px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:900px) {
.p-message .p-message__box-img01 {
	left: -3.667vw;
	position: absolute;
	top: 16.267vw;
}

.p-message .p-message__box-img02 {
	position: absolute;
	right: -3.133vw;
	top: 15.333vw;
}

#salonprogram .p-link {
	padding-block: 25.722vw 0;
	position: relative;
	text-align: center;
	z-index: 10;
}

.p-message .p-message__contents-right {
	left: 3.375vw;
	position: relative;
	top: -7vw;
}

.p-message .p-message__en {
	margin-bottom: 1.25vw;
}

}
/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
/* btn
-------------------------------------*/
#salonprogram .p-link {
	padding-block: 0px 0;
	position: relative;
	text-align: center;
	z-index: 10;
}

#salonprogram .p-link a {
	background: #EFA453;
	border: 4px solid #FFF;
	border-radius: 24.155vw;
	display: flex;
	gap: 0 0.623vw;
	height: 25.155vw;
	margin-inline: auto;
	padding-inline: 4.246vw;
	padding-block: 2.657vw 2.899vw;
	position: relative;
	width: min(95%, 89.9vw);
}

#salonprogram .p-link a::after {
	background: url(../images/common/btn_arrow.svg) no-repeat center center/contain;
	content: "";
	height: 4.831vw;
	position: absolute;
	right: 4.246vw;
	top: 50%;
	transform: translateY(-50%);
	width: 4.831vw;
}

#salonprogram .p-link a .human {
  position: relative;
  top: -2vw;
}

#salonprogram .p-link a .human img {
	height: auto;
	width: 17.667vw;
}

#salonprogram .p-link a p {
	color: #ffffff;
	font-size: 3.865vw;
  font-weight: 600;
  line-height: 0.5;
  letter-spacing: 0.193vw;
}

#salonprogram .p-link a p span {
	color: #FFEA00;
	display: block;
	font-size: 4.831vw;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.242vw;
}

.p-fv {
	margin-block: -13.285vw -12.797vw;
	position: static;
	text-align: center;
}

.p-bg {
	background-color: #F9F9F7; /* 背景色を指定 */
	background-image: url(../images/salonprogram/good_bg_sp.png); /* 画像を指定 */
	background-position: top right; /* 画像の位置を指定 */
	background-repeat: no-repeat; /* 画像を繰り返さない */
	background-size: auto; /* 画像のサイズ調整（必要に応じて変更） */
	margin-bottom: -184.928vw;
	padding-block: 14.295vw 99.034vw;
}

.p-good .p-good__ttl {
	font-size: 4.348vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-bottom: 5.314vw;
	margin-inline: auto;
	padding-inline: 13.459vw;
	position: relative;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.p-good .p-good__ttl:before {
	background: url(../images/salonprogram/good_line.svg) no-repeat center center/contain;
	bottom: 0;
	content: "";
	height: 17.874vw;
	left: 0;
	position: absolute;
	width: 11.594vw;
}

.p-good .p-good__ttl::after {
	background: url(../images/salonprogram/good_line.svg) no-repeat center center/contain;
	bottom: 0;
	content: "";
	height: 17.874vw;
	position: absolute;
	right: 0;
	transform: scale(-1, 1);
	width: 11.594vw;
}

.p-good .p-good__ttl .box {
	background: #FFF;
	border: 2px solid #231815;
	display: block;
	font-size: 6.763vw;
	font-weight: 600;
	letter-spacing: -0.12em;
	line-height: 1;
	margin-block: 0 2.174vw;
	margin-inline: 0;
	padding-block: 1.966vw;
	padding-inline: 3.865vw;
	width: -moz-fit-content;
	width: fit-content;
	color: #D8780C;
}

.p-good .p-good__contents {
	display: grid;
	gap: 11.077vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 0vw;
	margin-inline: auto;
	width: min(95%, 92.9951690821vw);
}

.p-good .p-good__contents-right {
	color: #21130B;
	padding-inline: 4vw 0;
}

.p-good .p-good__contents-right p {
	font-size: 3.865vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 2;
	margin-bottom: 7.797vw;
}

.p-good .p-good__contents-right p span {
	font-size: 5.797vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.3333333333;
}

.p-good .p-good__contents-right p.center {
	margin-bottom: 5.072vw;
}

.p-good .p-good__contents-right p.bottom {
  margin-bottom: 0;
}

.p-good__arrow {
	position: static;
	text-align: center;
}

.p-good__arrow img {
	height: auto;
	transform: scale(-1, 1);
	width: 23.531vw;
}

.p-recom .l-inner.l-recom {
	margin: 0;
	width: min(95%, 95.1690821256vw);
}

.p-recom .p-recom__ttl {
	text-align: center;
}

.p-recom .p-recom__ttl img {
	height: auto;
	width: 88.889vw;
}

.p-recom .p-recom__box {
	border: 3px solid #67665F;
	border-left: none;
	box-shadow: 0 40px 80px 0 rgba(135, 135, 135, 0.25);
	display: grid;
	grid-template-columns: 21px minmax(0, 1fr);
	position: relative;
}

.p-recom .p-recom__box-bg {
	background: #67665F;
}

.p-recom .p-recom__box-right {
	background: #ffffff;
	border: 7px solid #EFA453;
	padding-block: 3.589vw 0vw;
}

.p-recom .p-recom__box-num {
	margin-inline: auto;
	text-align: right;
	width: min(95%, 80.05314vw);
	margin-bottom: 3vw;
}

.p-recom .p-recom__box-num img {
	height: auto;
	width: 13.768vw;
}

.p-recom .p-recom__box-ttl {
	color: #D8780C;
	font-size: 3.865vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.625;
	margin-bottom: 8.522vw;
	text-align: center;
}

.p-recom .p-recom__contents {
	display: grid;
	gap: 6.763vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: -0.377vw;
}

.p-recom .p-recom__contents-ttl {
	margin-bottom: 4.106vw;
	text-align: center;	
}

.p-recom .p-recom__contents-ttl span {
  font-size: 3.623vw;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
  text-decoration: underline;
	text-decoration-thickness: 1.691vw;
	-webkit-text-decoration-color: #FDD4A8;
  text-decoration-color: #FDD4A8;
	text-underline-offset: -0.725vw;
  display: block;
}

.p-recom .p-recom__contents-en {
	color: #D8780C;
	font-size: 9.662vw;
	font-weight: 600;
	line-height: 1.125;
	margin-bottom: 1.966vw;
	text-align: center;
	letter-spacing: 0.03em;
}

.p-recom .p-recom__contents-ttl02 {
	font-size: 3.382vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-bottom: 8.246vw;
	text-align: center;
}

.p-recom .p-recom__txt {
	font-size: 3.865vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	margin-inline: auto;
	width: min(95%, 73.4299516908vw);
}

.p-recom .p-recom__contents-right {
	margin-inline: auto;
	width: min(95%, 76.5700483092vw);
}

.p-recom .p-recom__contents-right iframe {
	height: 43.237vw;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-recom .p-recom__box-items {
	display: grid;
	gap: 2.415vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 76.5700483092vw);
}

.p-recom .p-recom__box-item {
	text-align: center;
}

.p-recom .p-recom__box-item:nth-child(2) img {
	height: auto;
	width: 8.213vw;
}

.p-bg02 {
	background: #F8EECB;
	height: 99.034vw;
	width: 100%;
}

.p-bg03 {
	background: url(../images/salonprogram/reason_bg.jpg) repeat top center/contain;
	margin-inline: auto;
	padding-block: 22.783vw 300.913vw;
	width: 100%;
}

.p-reason {
	color: #21130B;
	margin-bottom: -16.493vw;
}

.p-reason .l-inner.l-reason {
	background: #ffffff;
	margin-inline: auto;
	padding-block: 0 33.092vw;
	width: min(95%, 86.9vw);
}

.p-reason .p-reason__ttl {
	margin-bottom: -2.754vw;
	position: relative;
	text-align: center;
	top: -9.662vw;
}

.p-reason .p-reason__ttl img {
  width: 73vw;
}

.p-reason .p-reason__ttl02 {
	background: #FFF;
	border: 1px solid #231815;
	color: #D8780C;
	font-size: 5.314vw;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 10.145vw;
	margin-inline: auto;
	margin-inline: auto;
	padding-block: 1.932vw;
	padding-inline: 3.865vw;
	text-align: center;
	width: min(95%, 73.4299516908vw);
	width: -moz-fit-content;
	width: fit-content;
}

.p-reason .p-reason__items {
	display: grid;
	gap: 8.213vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 75.845410628vw);
}

.p-reason .p-reason__item .img {
	margin-bottom: 4.831vw;
}

.p-reason .p-reason__item h4 {
	font-size: 3.865vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin-bottom: 4.831vw;
	text-align: center;
}

.p-reason .p-reason__item p {
	font-size: 3.382vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
}

.p-service {
	background: #ECEADF;
	border: 1px solid #231815;
	margin-bottom: 12.077vw;
	margin-inline: auto;
	padding-block: 0 6.077vw;
	width: min(95%, 91.7vw);
}

.p-service .l-inner.l-service {
	position: relative;
	top: -6.662vw;
}

.p-service .p-service__en {
	text-align: center;
	margin-bottom: 2vw;
}

.p-service .p-service__en img {
	height: auto;
	width: 38.889vw;
}

.p-service .p-service__ttl {
	font-size: 3.382vw;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.4285714286;
	margin-bottom: 7.246vw;
	text-align: center;
}

.p-service .p-service__contents {
	background: url(../images/salonprogram/service_bg_sp.jpg) no-repeat top center/contain;
	margin-inline: auto;
	padding-block: 11.667vw 16.251vw;
	width: min(95%, 84.5410628019vw);
	margin-bottom: 12vw;
}

.p-service .p-service__contents-time {
	color: #ffffff;
	font-size: 5.314vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.2727272727;
	margin-bottom: -13.077vw;
	position: relative;
	text-align: center;
}

.p-service .p-service__contents-time::after {
	background: url(../images/salonprogram/service_icon01_sp.png) no-repeat center center/contain;
	content: "";
	height: 11.353vw;
	position: absolute;
	top: 0;
	width: 9.903vw;
}

.p-service .p-service__contents-time span {
	font-size: 15.7vw;
	font-weight: 600;
	line-height: 1;
}

.p-service .p-service__human {
	left: 50%;
	position: relative;
	text-align: center;
	top: -18.155vw;
	transform: translateX(-50%);
}

.p-service .p-service__human img {
	height: auto;
	width: 13.043vw;
}

.p-service .p-service__contents-btn {
	background: #FFF;
	border-radius: 4.831vw;
	margin-bottom: -13.493vw;
	margin-inline: auto;
	padding-block: 2.865vw 2.415vw;
	width: 64.251vw;
}

.p-service .p-service__contents-btn p {
	text-align: center;
}

.p-service .p-service__contents-btn p.top {
	font-size: 3.382vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2;
	margin-bottom: -0.792vw;
	margin-inline: auto;
	padding: 0.966vw 0;
	position: static;
	width: 53.14vw;
}

.p-service .p-service__contents-btn p.bottom {
	font-size: 3.865vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.75;
	text-align: center;
}

.p-service .p-service__contents-btn p.bottom span {
	color: #D8780C;
	font-size: 15.7vw;
	font-weight: 600;
	line-height: 1;
}

.p-service .p-service__contents-icon {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-inline: auto;
	width: min(95%, 74.3961352657vw);
  margin-bottom: -7vw;
}

.p-service .p-service__contents-icon img.top {
	height: auto;
	width: 8.696vw;
}

.p-service .p-service__contents-icon img.bottom {
	height: auto;
	width: 21.498vw;
}

.p-service .p-service__contents-txt {
	font-size: 3.865vw;
	font-weight: 400;
	letter-spacing: 0.0833333333em;
	line-height: 1;
	margin-inline: auto;
	text-align: center;
}

.p-service .p-service__contents-txt span {
	display: block;
	font-size: 3.865vw;
	font-weight: 600;
	letter-spacing: 0.0833333333em;
	line-height: 2.0833333333;
  margin-bottom: 1vw;
}


.p-flow__contents {
	background: #ffffff;
	margin-inline: auto;
	padding-block: 12.077vw 7.246vw;
	width: min(95%, 84.5410628019vw);
}

.p-flow__contents .p-flow__en {
	font-size: 6.763vw;
	font-weight: 400;
	letter-spacing: 0.09em;
	line-height: 2.5;
	margin-bottom: -3vw;
	text-align: center;
}

.p-flow__contents .p-flow__ttl {
	font-size: 3.382vw;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 4.2857142857;
	margin-bottom: 8.493vw;
	text-align: center;
}

.p-flow__contents .p-flow__items {
	display: grid;
	gap: 21.256vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 74.8792270531vw);
}

.p-flow__contents .p-flow__item {
	background: #FFF5EA;
	border: 1px solid #21130B;
	border-radius: 2.415vw;
	padding-block: 12.802vw 8.213vw;
	position: relative;
}

.p-flow__contents .p-flow__item::after {
	background: url(../images/salonprogram/flow_arrow_sp.svg) no-repeat center center/contain;
	bottom: -10.459vw;
	content: "";
	height: 6.246vw;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 12.493vw;
}

.p-flow__contents .p-flow__item:last-child::after {
  content: none;
}

.p-flow__contents .p-flow__item .num {
	left: 50%;
	margin-bottom: -19.155vw;
	position: relative;
	text-align: center;
	top: -20.155vw;
	transform: translateX(-50%);
}

.p-flow__contents .p-flow__item .wrap {
	align-items: center;
	display: grid;
	gap: 0 6.831vw;
	grid-template-columns: 80px minmax(0, 1fr);
	margin-inline: auto;
	width: 62.802vw;
}

.p-flow__contents .p-flow__item .icon {
	margin-bottom: 0;
}

.p-flow__contents .p-flow__item h4 {
	font-size: 4.348vw;
	font-weight: 600;
	line-height: 1.4444444444;
	text-align: left;
}

.p-flow__contents .p-flow__item p {
	font-size: 3.865vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin-block: 3vw -3vw;
	margin-inline: auto;
	width: 60.802vw;
}

.p-hair {
	color: #21130B;
	margin-bottom: -152.174vw;
}

.p-hair .l-inner.l-hair {
	margin-inline: auto;
	width: min(95%, 90.3381642512vw);
}

.p-hair .p-hair__txt {
	font-size: 4.831vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.5;
	margin-bottom: 3.623vw;
	text-align: center;
}

.p-hair .p-hair__txt02 {
	color: #D8780C;
	font-size: 6.28vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.1538461538;
	margin-bottom: 5.831vw;
	text-align: center;
}

.p-hair .p-hair__txt02 span.box {
	background: #FFF;
	border: 1px solid #21130B;
	font-size: 8.696vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 2.2;
	margin-inline: auto;
	margin-inline: 0 -0.135vw;
	padding: 1.208vw 2.415vw;
	width: -moz-fit-content;
	width: fit-content;
}

.p-hair .p-hair__human {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	margin-inline: auto;
	width: min(95%, 68.463768vw);
}

.p-hair .p-hair__human img {
	height: auto;
	width: 32.367vw;
}

.p-bg04 {
  background: #F9F9F7;
}

#salonprogram .p-faq {
  position: relative;
  top: -150vw;
  margin-bottom: -130vw;
}

.p-message {
	background: url(../images/salonprogram/message_bg_sp.jpg) no-repeat top center/cover;
	color: #21130B;
	margin-inline: auto;
	width: 100%;
  margin-bottom: -61vw;
  position: relative;
  z-index: 1;
}

.p-message .l-inner.l-message {
	padding-block: 18.077vw 60.386vw;
}

.p-message .p-message__en {
	margin-bottom: -7.797vw;
	margin-inline: auto;
	position: relative;
	width: 100%;
	left: 7vw;
}

.p-message .p-message__en img {
	height: auto;
	width: 84.058vw;
}

.p-message .p-message__contents {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 86.9vw);
	margin-bottom: -2vw;
}

.p-message .p-message__contents-left {
	order: 2;
}

.p-message .p-message__contents-left h3 {
	margin-bottom: 9.662vw;
	position: relative;
	left: -2vw;
	white-space: nowrap;
}

.p-message .p-message__contents-left h3 span {
	background: #ffffff;
	color: #D8780C;
	display: block;
	font-size: 3.865vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 2.5;
	padding-inline: 6.932vw 4vw;
	width: -moz-fit-content;
	width: fit-content;
}

.p-message .p-message__contents-left h3 span.bottom {
	margin-block: 1vw 0;
}

.p-message .p-message__contents-left .txt {
	margin-inline: auto;
	width: min(95%, 76.5700483092vw);
}

.p-message .p-message__contents-left .txt p {
  font-size: 3.865vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-bottom: 7.797vw;
}

.p-message .p-message__contents-left .txt.bottom {
	margin-bottom: 0;
}

.p-message .p-message__contents-right {
	order: 1;
	position: static;
	margin-bottom: -5vw;
}

.p-message .p-messsage__icon {
	margin-bottom: 1.865vw;
	position: static;
	text-align: center;
}

.p-message .p-messsage__icon img {
	transform: rotate(45deg);
	width: 11vw;
}

.p-message .p-message__txt {
	color: #D8780C;
	font-size: 4.831vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.5;
	margin-bottom: 7.246vw;
	text-align: center;
}

.p-message .p-message__contents02 {
	display: grid;
	gap: 6.039vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 41.647vw;
	margin-inline: auto;
	width: min(95%, 86.9vw);
}

.p-message .p-message__contents02-right {
  width: min(95%,75.2vw);
}

.p-message .p-message__contents02-right p {
	font-size: 3.382vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2.1428571429;
	margin-bottom: 4.797vw;
}

.p-message .p-message__contents02-right p span {
	background: #FFF;
	color: #D8780C;
	font-size: 3.865vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.6;
	margin-block: 1.932vw 0;
	padding: 1vw 5.899vw;
	width: -moz-fit-content;
	width: fit-content;
	position: relative;
	left: -2vw;
}

.p-message .p-message__contents02-right p.bottom {
	margin-bottom: 0;
}

.p-message .p-message__box {
	margin-inline: auto;
	position: relative;
	width: 100%;
}

.p-message .p-message__box-img01 {
	left: 2vw;
	position: absolute;
	top: -38.647vw;
}

.p-message .p-message__box-img01 img {
	height: auto;
	width: 47.478vw;
}

.p-message .p-message__box-img02 {
	position: absolute;
	right: 4vw;
	top: -36.478vw;
}

.p-message .p-message__box-img02 img {
	height: auto;
	width: 42.208vw;
}

.p-message .p-message__box-txt {
	font-size: 5.314vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.8181818182;
	margin-bottom: 3vw;
	text-align: center;
}

.p-message .p-message__box-line {
	margin-bottom: 8.662vw;
	text-align: center;
}

.p-message .p-message__box-line img {
	height: auto;
	width: 83.333vw;
}

.p-message .p-message__txt-wrap {
	background: url(../images/salonprogram/message_arrow_sp.png) no-repeat top center/contain;
	margin-bottom: 4.729vw;
	margin-inline: auto;
	padding-block: 2.072vw 16.493vw;
	width: -moz-fit-content;
	width: fit-content;
	width: 100.483vw;
}

.p-message .p-message__txt-wrap p {
	font-size: 5.314vw;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 2.5;
	text-align: center;
}

.p-message .p-message__txt-wrap p span {
	background: #FFF;
	border: 2px solid #231815;
	color: #D8780C;
	font-size: 6.763vw;
	font-weight: 600;
	line-height: 1;
	margin-inline: 0 1.932vw;
	padding: 1.932vw 2.899vw;
	width: -moz-fit-content;
	width: fit-content;
}

.p-message .p-message__box-txt02 {
	font-size: 5.797vw;
	font-weight: 600;
	line-height: 0.05;
	margin-bottom: 4.932vw;
	margin-inline: auto;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.p-message .p-message__line {
	background: #21130B;
	height: 0.242vw;
	margin-bottom: 0.483vw;
	margin-inline: auto;
	width: 85.507vw;
}

.p-message .p-message__line.bottom {
	margin-bottom: 3.623vw;
}

.p-message .p-message__box-txt03 {
	font-size: 3.382vw;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 2.2857142857;
	margin-bottom: 3.623vw;
	text-align: center;
}

.p-message .p-message__box-human {
	text-align: center;
}

.p-message .p-message__box-human img {
	height: auto;
	width: 31.643vw;
}

#salonprogram .sp-page-top {
	padding-block: 61vw 7.246vw;
}

#salonprogram .form-Box {
	background: #F9F9F7;
	margin-bottom: -35vw;
	padding-block: 0 0vw;
}
}