@charset "utf-8";

/*------------------------------------------------------------
	common
------------------------------------------------------------*/

.inner {
	width: 1100px;
	margin: 0 auto;
}

.inner_s {
	width: 1100px;
	margin: 0 auto;
}

.inner_l {
	margin: 0 auto;
}

.home-headline02 {
	margin-bottom: 40px;

	.headline {
		text-align: center;
		font-size: min(6.4vw, 3rem);
		color: #6B6A6E;
		letter-spacing: 2px;
		font-weight: 500;
	}
}

.home-headline02 span {
	text-align: center;
	display: block;
	font-size: 1.8rem;
	color: #957575;
	padding-bottom: 12px;
	font-weight: 500;
}

.home-menu-headline03 {
	display: flex;
	align-items: baseline;

	> span {
		color: #957575;
		font-weight: 400;
		font-size: min(4vw, 1.8rem);
		display: inline-block;
		padding-left: 15px;
	}

	.headline {
		font-size: min(9.6vw, 3.6rem);
		font-weight: 500;
	}
}

.home-strategies-headline04 {
    border-bottom: .5px solid #957575;
    margin-bottom: 24px;
    padding-bottom: 8px;

	.headline {
		font-size: min(5.60vw, 2.2rem);
		color: #6B6A6E;
		font-weight: 500;
	}

	> span {
		color: #957575;
		font-size: 1.3rem;
		display: block;
		padding-bottom: 5px;
		font-weight: 500;
	}
}

.flex50-100 {
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width: 100%;
}

.flex50-100 .item {
	width: 50%;
}


.btn1,
.btn2 {
	width: 330px;
	text-align: center;
	margin: 0 auto;
	display: block;
	padding: 17px;
	box-sizing: border-box;
	background: rgba(212, 201, 165, 1);
	background: linear-gradient(90deg, rgba(212, 201, 165, 1) 0%, rgba(255, 251, 238, 1) 100%);
	position: relative;
	transition: all 0.3s ease;
}

.btn1:hover {
	opacity: 0.8
}

.btn2:hover {
	opacity: 0.92
}

.btn1 span,
.btn2 span {
	color: transparent;
	background-repeat: no-repeat;
	position: absolute;
	top: 24px;
	right: 16px;
	animation: iconMove2 0.2s both;
}

.btn1 span {
	background-image: url("../img/home/arrow1_bk.svg");
}

.btn2 span {
	background-image: url("../img/home/arrow1_wh.svg");
}

.btn1:hover span,
.btn2:hover span {
	animation: iconMove 0.4s both;
}

.btn2 {
	color: #FFF !important;
	background: #2D2D2D;
}

@keyframes iconMove {
	0% {
		transform: translateX(0px);
	}

	100% {
		transform: translateX(3px);
	}
}

@keyframes iconMove2 {
	0% {
		transform: translateX(0px);
	}

	100% {
		transform: translateX(-3px);
	}
}

.pc {
	display: block
}

.sp {
	display: none
}

/*------------------------------------------------------------
	home
------------------------------------------------------------*/

/* MV --------------------------------------------------*/
#mv {}

#mv_slider {
	width: 100%;
	padding-bottom: 40px;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
	margin-bottom: 20px;
}

#mv .swiper-pagination {
	position: absolute;
	bottom: 0
}

#mv .swiper-pagination-bullet {
	background-color: #957575;
	height: 16px;
	width: 16px;
	border-radius: 0;
}

#mv picture img { width:100%; height:auto; }

/* MV1 */
#mv1 {
	position: relative;
}

#mv1_i1 {
	position: absolute;
	top: 9.8vw;
	box-sizing: border-box;
	left: 13.3vw;
	width: 39.8vw;
	height: 31.3vw;
	background: rgba(36, 4, 4, 0.74);
	color: #FFF;
	padding: 5.3vw 0 0 0;
	text-align: center
}
@media (max-width: 1180px) {
#mv1_i1 {
	top:115px;
	left: 156px;
	width: 470px;
	height: 366px;
	padding: 62px 0px 0 0px;
}
}

#mv1_i1 h2 {
	font-size: 3.33vw;
	font-family: 'Noto Serif JP', serif;
	font-weight: normal;
	line-height: 1;
	margin-bottom: 2vw;
	transform: scale(0.9, 1);
}
@media (max-width: 1180px) {
#mv1_i1 h2 {
	font-size: 39px;
	margin-bottom: 23.4px;
}
}

#mv1_i1 h2 span {
	font-size: 4.67vw;
	display: block;
	padding-top: 1.3vw;
}
@media (max-width: 1180px) {
#mv1_i1 h2 span {
	font-size: 54.6px;
	padding-top: 15.6px;
}
}

#mv1_i1 p {
	font-size: 2.73vw;
	color: #DEC0BF;
	font-family: 'Noto Serif JP', erif;
	font-weight: lighter;
	transform: scale(0.9, 1.1);
	margin-bottom: 2vw;
}
@media (max-width: 1180px) {
#mv1_i1 p {
	font-size: 32px;
	margin-bottom: 23.4px;
}
}

#mv1_i1 a {
	width: 31.5vw;
	/* height: 77px; */
	text-align: left;
	padding: 1.33vw 3.07vw 1.53vw;
	display: block;
	margin: 0 auto;
	border: 1px solid #FFF;
	box-sizing: border-box;
	font-size: 2.13vw;
	font-family: 'Noto Serif JP', serif;
	line-height: 1;
	color: #FFF;
	font-weight: 100;
	background-image: url("../img/home/mv_arrow.svg");
	background-repeat: no-repeat;
	background-position: center right 1.6vw;
}
@media (max-width: 1180px) {
#mv1_i1 a {
	width: 369px;
	height: 60px;
	padding:18.7px 0 0 35.88px;
	font-size: 25px;
	background-position: center right 18.7px;
}
}

/* MV2 */
#mv2 {
	position: relative;
	font-family: 'Noto Serif JP', serif;
}

#mv2 h2 {
	position: absolute;
	top: 7.33vw;
	left: 55.3vw;
	width: 33.3vw;
	height: 8.67vw;
	line-height: 1;
	font-weight: normal;
}
@media (max-width: 1180px) {
#mv2 h2 {
	top: 85.8px;
	left: 647px;
	width: 390px;
	height: 101px;
}
}

#mv2_i1 {
	font-size: 2.61vw;
	color: #DEC0BF;
	position: absolute;
	left: 2vw;
}
@media (max-width: 1180px) {
#mv2_i1 {
	font-size: 36.66px;
	left: 2.34vw;
}
}

#mv2_i2 {
	font-size: 5.33vw;
	color: #DEC0BF;
}
@media (max-width: 1180px) {
#mv2_i2 {
	font-size: 62.4px;
}
}

#mv2_i3 {
	font-size: 3vw;
	color: #FFF;
	position: absolute;
	left: 0;
	top: 6vw;
}
@media (max-width: 1180px) {
#mv2_i3 {
	font-size: 35.1px;
	top: 70.2px;
}
}

/* ゼロ */
#mv2_i4 {
	font-size: 1.67vw;
	color: #DEC0BF;
	position: absolute;
	top: 0.27vw;
	right: 5.06vw;
	width: 3.67vw;
	transform: scale(0.9, 1.1);
}
@media (max-width: 1180px) {
#mv2_i4 {
	font-size: 19.5px;
	top: 3.12px;
	right: 59.28px;
	width: 42.9px;
}
}

/* 0 */
#mv2_i5 {
	font-size: 8.67vw;
	color: #DEC0BF;
	position: absolute;
	top: 2vw;
	right: 4.67vw;
	width: 5vw;
}
@media (max-width: 1180px) {
#mv2_i5 {
	font-size: 101px;
	top: 23.4px;
	right: 54.6px;
	width: 58.5px;
}
}

#mv2_txt {
	position: absolute;
	width: 35.3vw;
	color: #FFF;
	top: 22vw;
	left: 44.67vw;
	font-size: 1.46vw;
	line-height: 210%;
	font-weight: normal
}
@media (max-width: 1180px) {
#mv2_txt {
	width: 413.4px;
	top: 257.4px;
	left: 522.6px;
	font-size: 17.16px;
}
}

#mv2_name {
	position: absolute;
	width: 17vw;
	color: #FFF;
	bottom: 1.33vw;
	left: 56.67vw;
	font-size: 2vw;
	font-weight: normal;
}
@media (max-width: 1180px) {
#mv2_name {
	width: 199px;
	bottom: 15.6px;
	left: 663px;
	font-size: 23.4px;
}
}

#mv2_name p {
	color: #FFF;
	font-size: 1.13vw;
}
@media (max-width: 1180px) {
#mv2_name p {
	font-size: 13.26px;
}
}

#mv2_name span {
	color: #FFF;
	font-size: 1.27vw;
	display: inline-block;
	margin-right: 1.33vw;
}
@media (max-width: 1180px) {
#mv2_name span {
	font-size: 14.82px;
	margin-right: 15.6px;
}
}

/* #mv3 */
#mv3 {
	position: relative;
	font-family: 'Noto Serif JP', serif;
}

#mv3_i1 {
	position: absolute;
	width: 34vw;
	top: 12.5vw;
	left: 13.47vw;
	border-top: 2px solid #957575;
	padding-top: 5.33vw;
}
@media (max-width: 1180px) {
#mv3_i1 {
	width: 398px;
	top: 146.64px;
	left: 157.56px;
	padding-top: 62.4px
}
}

#mv3 h2 {
	background: #D3968F;
	color: #FFF;
	font-size: 2.47vw;
	width: 30vw;
	height: 4.8vw;
	border-radius: 4.8vw;
	text-align: center;
	line-height: 1;
	box-sizing: border-box;
	font-weight: normal;
	padding-top: 1.33vw;
	margin: 0 auto;
}
@media (max-width: 1180px) {
#mv3 h2 {
	font-size: 28.86px;
	width: 351px;
	height: 56.16px;
	border-radius: 56.16px;
	padding-top: 15.6px;
}
}

#mv3 p {
	text-align: center;
	color: #6B6A6E;
	font-size: 2vw;
	line-height: 150%;
	font-weight: normal;
	padding: 3vw 0;
	border-bottom: 2px solid #957575
}
@media (max-width: 1180px) {
#mv3 p {
	font-size: 23.4px;
	padding: 35.1px 0;
}
}

#mv3 a {
	display: block;
	text-align: right;
	color: #957575;
	font-size: 1.6vw;
	line-height: 1;
	padding: 1.67vw 6.67vw 1.67vw 0;
	background-image: url("../img/home/mv_arrow2.svg");
	background-position: center right;
	background-repeat: no-repeat;
	font-weight: normal
}
@media (max-width: 1180px) {
#mv3 a {
	font-size: 18.72px;
	padding: 19.5px 78px 19.5px 0;
}
}

#mv3 h3 {
	position: absolute;
	width: 18.9vw;
	height: 18.9vw;
	background: #FFF;
	border-radius: 18.9vw;
	top: 4.67vw;
	left: 55.6vw;
	text-align: center;
	box-sizing: border-box;
	font-size: 1.67vw;
	font-weight: normal;
	padding-top: 4.67vw;
	letter-spacing: -1px;
	line-height: 180%;
}
@media (max-width: 1180px) {
#mv3 h3 {
	width: 221.52px;
	height: 221.52px;
	border-radius: 221.52px;
	top: 54.6px;
	left: 650.52px;
	font-size: 19.5px;
	padding-top: 54.6px;
}
}

#mv3 h3 span {
	color: #957575
}

/* 注目検索ワード --------------------------------------------------*/
#search_word {
	background: #F5EFE8;
	padding: 20px 0;
}

#search_word section {
	width: 850px;
	margin: 0 auto;
	flex-direction: row-reverse;
	position: relative;
	padding: 20px 0 10px 0;
}

#search_word p {
	color: #957575;
	font-size: 1.8rem;
	background-image: url("../img/home/icn_keyword.svg");
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 27px;
	width: 160px;
	margin: 0 auto 0 auto
}

#word_slider {
	overflow: hidden;
}

#word_slider .swiper-slide {
	width: auto !important;
	margin: 0 4px
}

#word_slider .swiper-wrapper {
	transition-timing-function: linear;
}

#word_slider a{
    display: inline-block;
    background: #FFF;
    text-align: center;
    border-radius: 100px;
    font-size: 1.4rem;
    padding: 5px 10px;
    border: 1px solid #6B6A6E;
    box-sizing: border-box;
    margin: 0 3px;
    width: 143px;
	font-weight: 400;
}
.ss{
letter-spacing: -2px;
}

/* バナー --------------------------------------------------*/
#bnr_box {
	background: #F5EFE8;
	padding-bottom: 10px;
	padding-top: 20px;
	text-align: center;
}

#bnr_box p {
	font-size: 2.4rem;
	letter-spacing: 1px;
	font-weight: bold;
	color: #212121;
	padding-bottom: 2rem;
	margin-bottom: 2rem;
	background-image: url("../img/home/bar.svg");
	background-repeat: no-repeat;
	background-position: center bottom;
}

#banner_slider {
	width: 920px;
	overflow: hidden;
	margin: 0 auto;
	position: relative;
	padding-bottom: 40px;
}

#banner_slider .swiper-wrapper {
	margin: 0 auto
}

#banner_slider .swiper-pagination {
	position: absolute;
	bottom: 20px
}

#banner_slider .swiper-pagination-bullet {
	background-color: #957575;
	height: 16px;
	width: 16px;
	border-radius: 0;
}

#bnr_box2 {
	background: #FFF;
	padding: 40px 0 55px 0;
	text-align: center;
}

#bnr_box2 ul {
	text-align: center;
}

#bnr_box2 li {
	display: inline-block;
	margin: 0 1.7rem;
}

#bnr_box2 li a {
	width: 243px;
	height: 150px;
	border: 1px solid #957575;
	text-align: center;
	display: inline-block;
	padding-top: 2rem;
	box-sizing: border-box
}



#top-bnr-ul { padding:80px 0; }
#top-bnr-ul ul { display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:center; width:650px; margin:0 auto; }
#top-bnr-ul li { width:300px; }
#top-bnr-ul li a { display:flex; justify-content:center; align-items:center; height:73px; background:url(/common/img/side_bg01.webp) center center/cover no-repeat; font-size:2rem; color:#fff; position:relative; }
#top-bnr-ul li a:before { content:""; position:absolute; top:3.2rem; right:2.4rem; width:1.4rem; height:1px; background:#fff; transform:rotate(40deg); }
#top-bnr-ul li a:after { content:""; position:absolute; bottom:3.2rem; right:2.4rem; width:1.4rem; height:1px; background:#fff; transform:rotate(-40deg); }
#top-bnr-ul li a:hover { opacity:0.7; }

@media (max-width: 896px) {
#top-bnr-ul { padding:40px 0 20px; }
#top-bnr-ul ul { flex-flow:column nowrap; width:auto; }
#top-bnr-ul li { width:80vw; margin:0 0 20px; }
#top-bnr-ul li a {}
#top-bnr-ul li a:before {}
#top-bnr-ul li a:after {}
}




.bnr {
	margin-bottom: 32px;
	display: block;
}

.bnr:hover,
#bnr_box .swiper-wrapper a:hover {
	opacity: 0.7
}

#bnr_box .swiper-wrapper {
	padding-bottom: 40px;
}

.swiper-pagination-bullet {
	background-color: #E0E0E0;
}

.swiper-pagination-bullet-active {
	background-color: #605211;
}

#reason {
	padding-bottom: 80px;
}

#reason .inner { padding:0 0 95px; }

@media (min-width:897px) {
#reason .inner { padding:40px 0 95px; }
}

#reason_block {
	overflow: hidden;
	box-sizing: border-box;
	padding-top: 3rem;
	margin-bottom: 4rem;
}

#reason_block .item:first-child {
	float: right;
	width: 50%;
}

#reason_block .item:last-child {
	float: left;
	width: 48%;
	margin-right: 2%;
	background: #F5EFE8;
	padding: 4px;
	box-sizing: border-box;
	position: relative
}

ul#reason_list {
	padding: 10px 20px;
	width: 100%;
	height: 372px;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-position: center middle;
	border: .5px solid #957575;

}

ul#reason_list li {
	border-bottom: .5px dotted #957575;
	font-size: min(4vw, 1.8rem);
	padding: 17px 0 17px 72px;
	text-align: left;
	font-weight: 500;

	.list-inner {
		padding-left: min(calc(4.26vw * 1.8), calc(20px * 1.8));
		position: relative;

		&::before {
			content: "";
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			left: 0;
			position: absolute;
			background: url("../common/img/icon11.webp") no-repeat center center / 100%;
			width: min(4.26vw, 20px);
			height: min(4.26vw, 20px);
			z-index: 1;
		}
	}
}

ul#reason_list li:last-child {
	border: none;
}

ul#reason_list li sub {
	font-size: 1rem;
}

ul#reason_list li p {
	font-size: 1.4rem;
	font-weight: normal;
}

.star1 {
	position: absolute;
	width: 12px;
	height: 12px;
	background: url("../img/home/star.svg");
	left: -3px;
	top: -3px;
	display: block
}

.star2 {
	position: absolute;
	width: 12px;
	height: 12px;
	background: url("../img/home/star.svg");
	right: 1px;
	top: -3px;
	display: block
}

.star3 {
	position: absolute;
	width: 12px;
	height: 12px;
	background: url("../img/home/star.svg");
	left: -3px;
	bottom: 1px;
	display: block
}

.star4 {
	position: absolute;
	width: 12px;
	height: 12px;
	background: url("../img/home/star.svg");
	right: 1px;
	bottom: 1px;
	display: block
}

.list_indent {
	padding: 35px 0 50px 0;
}

.list_indent li {
	padding-left: 3em;
	text-indent: -3em;
	font-size: 1.4rem;
	font-weight: normal;
}

.btn_box {
	text-align: center
}

#ttl_strategies {
	background: url("../img/home/bg_torikumi.webp") center center/100% auto no-repeat;
	color: #957575;
	text-align: center;
	font-size: min(5.86vw, 2.4rem);
	width: 100%;
	height: 93px;
	padding-top: 27px;
	margin-bottom: 30px;
	font-weight: 500;
}

#strategies .item {
	img {
		width: 100%;
		height: auto;
		display: block;
	}
}

#strategies .item:first-child {
	width: 450px;
}

#strategies .item:last-child {
	text-align: left;
	width: 450px;
}

#strategies p {
	padding-top: 20px;
	margin-bottom: 40px;
	font-weight: normal;
	min-height: 120px;
}

.btn_box2 {
	text-align: center;
}

#menulist {
	padding: 90px 0;
	position: relative;
	z-index: 1;
}

#bg_wrapper {
	position: relative;
	overflow: hidden;

	padding-top: 36px;
	padding-bottom: 36px
}

#bg_menu {
	background-image: url("../img/home/bg_menu.svg");
	background-repeat: no-repeat;
	background-position: top center;
	background-color: #F3F3F3;
	position: absolute;
	z-index: 0;
	height: 7000px;
	width: 100%;
	top: -30px;
}

.down {
	animation: move-y 1.5s alternate ease-in-out both;
}

.up {
	animation: move-y2 1.5s alternate ease-in-out both;
}

@keyframes move-y {
	from {
		transform: translateY(0);
	}

	to {
		transform: translateY(-30px);
	}
}

@keyframes move-y2 {
	from {
		transform: translateY(0);
	}

	to {
		transform: translateY(30px);
	}
}

.menu_group {
	background: #E0E0E0;
}

.menu_header {
	background-image: url("../img/home/img_menu1_pc.png");
	background-repeat: no-repeat;
	background-position: top right;
	background-size: auto 148px;
	box-sizing: border-box;
	height: 148px;
	background-color: #FFF;
	padding: 26px 0 0 21px;
}

#M_face .menu_header {
	background-image: url("../img/home/img_menu1_pc.png");
}

#M_bust .menu_header {
	background-image: url("../img/home/img_menu2_pc.png");
}

#M_body .menu_header {
	background-image: url("../img/home/img_menu3_pc.png");
}

#M_tatoo .menu_header {
	background-image: url("../img/home/img_menu4_pc.png");
}

.menu_header p {
	font-size: 1.8rem;
	padding-top: 10px;
	font-weight: 500;
}

.open_menu {
	background: #212121;
	background-image: url("../img/home/bg_menu_open.svg");
	background-repeat: no-repeat;
	background-size: cover;
	font-weight: 500;
	color: #FFF !important;
	text-align: center;
	display: block;
	height: 37px;
	line-height: 37px;
	font-size: min(4vw, 1.5rem);
	padding-top: 0;
	box-sizing: border-box;
	position: relative;
}

.open_menu span {
	color: transparent;
	background-repeat: no-repeat;
	animation: iconMove4 0.2s both;
	display: block;
	margin: 0 auto;
	width: 9px;
	height: 8px;
	position: absolute;
	left: 50%;
	bottom: 4px;
}

.open_menu span {
	background-image: url("../img/home/arrow2_pc.png");
}

.open_menu:hover span {
	animation: iconMove3 0.4s both;
}

@keyframes iconMove3 {
	from {
		transform: translateY(0);
	}

	to {
		transform: translateY(2px);
	}
}

@keyframes iconMove4 {
	from {
		transform: translateY(0);
	}

	to {
		transform: translateY(-2px);
	}
}

.menu_content {
	padding: 15px;
	display: none;
}

.menu_content h4 {
	background: rgb(33, 33, 33);
	background: linear-gradient(135deg, #212121 0%, #3d3d3d 100%);
	font-size: 1.7rem;
	padding: 15px;
	box-sizing: border-box;
	margin-bottom: 7px;
	border: 1px solid #FFF;
	color: #fff;
	font-weight: 500;
}

.menu_list {
	overflow: hidden;
}

.menu_list li {
	width: 261px;
	box-sizing: border-box;
	display: table;
	background: #FFF;
	margin-bottom: 7px;
	margin-right: 8px;
	float: left;
	transition: all 0.3s ease;
}

.menu_list li:nth-child(4n) {
	margin-right: 0px;
}

.menu_list li a {
	padding: 0px 0px 0px 30px;
	line-height: 1.4;
	height: 56px;
	display: table-cell;
	width: 100%;
	vertical-align: middle;
	box-sizing: border-box;
	background-image: url("../img/home/arrow3.svg");
	background-repeat: no-repeat;
	background-position: left 14px center;
	font-size: min(3.46vw, 1.4rem);
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-weight: 400;
}

.menu_list li:hover {
	background: #CFCFCF
}

.btn_box3 {
	padding: 60px 0 0 0
}

#purpose {
	padding: 80px 0;
	background: #F5EFE8
}

#nav_purpose {
	overflow: hidden
}

#nav_purpose li {
	float: left;
	width: 25%;
	display: table;
}

#nav_purpose a {
	display: table-cell;
	vertical-align: middle;
	width: 100%;
	height: 56px;
	text-align: center;
	font-size: min(3.46vw, 1.7rem);
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	background-color: #957575;
	color: #fff;
	font-weight: 500;
	background-image: url("../img/home/arrow5.svg");
	background-repeat: no-repeat;
	background-position: center bottom 5px;
}

.purpose_content {
	background-color: #FFF;
	display: none;
	padding-top: 10px
}

.purpose_content h3 {
	font-size: 1.8rem;
	border-bottom: 1px solid #957575;
	background-repeat: no-repeat;
	background-position: left 10px bottom 7px;
	padding: 32px 10px 30px 75px;
	padding-top: 20px;
	background-position: center left 5px;
	font-weight: 500;
}

#icn_c1_1 {
	background-image: url("../img/home/icn_c1_1.svg?v=1")
}

#icn_c2_1 {
	background-image: url("../img/home/icn_c2_1.svg?v=1")
}

#icn_c2_2 {
	background-image: url("../img/home/icn_c2_2.svg?v=1")
}

#icn_c2_3 {
	background-image: url("../img/home/icn_c2_3.svg?v=1")
}

#icn_c3_1 {
	background-image: url("../img/home/icn_c3_1.svg?v=1")
}

#icn_c3_2 {
	background-image: url("../img/home/icn_c3_2.svg?v=1")
}

#icn_c4_1 {
	background-image: url("../img/home/icn_c4_1.svg?v=1")
}

#icn_c4_2 {
	background-image: url("../img/home/icn_c4_2.svg?v=1")
}

#icn_c5_1 {
	background-image: url("../img/home/icn_c5_1.svg?v=1")
}

#icn_c5_2 {
	background-image: url("../img/home/icn_c5_2.svg?v=1")
}

#icn_c6_1 {
	background-image: url("../img/home/icn_c6_1.svg?v=1")
}

#icn_c7_1 {
	background-image: url("../img/home/icn_c7_1.svg?v=1")
}

#icn_c8_1 {
	background-image: url("../img/home/icn_c8_1.svg?v=1")
}

.purpose_content ul {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;

	&::before {
		content: "";
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 1px;
		background-color: #fff;
		z-index: 10;
	}

	 > li {
		border-bottom: .5px dashed #ccc;
	 }
}

.purpose_content li a {
	font-size: min(3.46vw, 1.5rem);
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-weight: 400;
	display: block;
	padding: 15px 0 15px min(6.4vw, 32px);
	color: #6B6A6E;
	position: relative;
	display: flex;
	height: 54px;
	align-items: center;
	box-sizing: border-box;

	&:hover {
		text-decoration: underline;
	}

	&:before {
		content: "";
		position: absolute;
		left: min(1.06vw, 12px);
		top: 50%;
		transform: translateY(-50%);
		background: url("../img/home/arrow1_br.svg") no-repeat center center / 100%;
		width: min(2.66vw, 8px);
		height: min(2.66vw, 8px);
		z-index: 1;
	}
}

#nav_purpose li a:hover {
	background-color: #F1EFE8;
	color: #6B6A6E;
	transition: all 0.3s ease;
}

#nav_purpose li a.active {
	background-color: #FFF;
	color: #957575
}

@media screen and (max-width: 896px) {
	.purpose_content ul {
		margin-top: 10px;
		grid-template-columns: repeat(2, 1fr);

		> li:nth-child(odd) {
			border-right: .5px dashed #ccc;

			a {
				padding: 0 min(2.66vw, 10px) 0 min(5.33vw, 22px);
			}
		}
	}
}

.defalutVisible {
	display: block;
}

.btn_box4 {
	text-align: center
}

#top-case {
	padding: 80px 0
}

.case_slider,
.faq_slider {
	width: 1100px;
	margin: 0 auto;
	box-sizing: border-box;
	margin-bottom: 40px;
}

.case_slider .swiper-wrapper,
.faq_slider .swiper-wrapper {
	box-sizing: border-box;
	padding: 5px
}

.case_slider .swiper-slide,
.faq_slider .swiper-slide {
	text-align: center;
	width: 33.3%;
}

.case_slider .swiper-slide a {
	display: block;
	box-sizing: border-box;
	padding: 33px 44px;
	border: .5px solid #957575;
	margin: 0 10px 0 0;
}

.case_slider p {
	font-size: min(4.26vw, 1.7rem);
	margin-bottom: 20px;
	color: #6B6A6E;
	font-weight: 500;
}

.swiper-wrap {
	position: relative
}

.swiper-button-prev,
.swiper-button-next {
	position: absolute;
	top: 50%;
	width: calc(var(--swiper-navigation-size) / 44 * 27);
	height: var(--swiper-navigation-size);
	margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--swiper-navigation-color, var(--swiper-theme-color));
	height: 58px;
	width: 58px;
	background-size: 58px 58px;
	margin-top: -29px;
}

.swiper-button-next {
	background-image: url("../img/home/btn_prev.svg");
	transform: scale(-1, 1);
	/* 左右反転 */
}

.swiper-button-prev {
	background-image: url("../img/home/btn_prev.svg");
}

.swiper-button-prev:after,
.swiper-button-next:after {
	visibility: hidden
}

.case_info a:hover {
	box-shadow: 1px 3px 8px rgba(170, 170, 170, 0.7);
	transition: all 0.4s ease;
	transform: translateY(-4px);
}

/*case_adjust*/
.case_info a .top-case-p {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.case_info a .top-case-p span:nth-of-type(1):after {
	display: block;
	content: "Before";
	color: #707070;
}

.case_info a .top-case-p span:nth-of-type(2) {
	width: 10px;
}

.case_info a .top-case-p span:nth-of-type(3):after {
	display: block;
	content: "After";
	color: #957575;
}

.case_info a .top-case-p span:nth-of-type(1) img,
.case_info a .top-case-p span:nth-of-type(3) img {
	width: 100px;
	height: 100px;
	object-fit: cover;
}

.case_swiper {
	width: 97.5%;
	overflow: hidden;
}

#top-faq {
	padding: 80px 0
}

#top-faq.home-headline02 {
	margin-bottom: 40px;
}

.img_wide {
	height: 425px;
	background-image: url("../img/home/img_case.png");
	background-size: cover;
	background-position: center;
}

.faq_info {
	border: 1px solid #A68C8C;
	margin: 0 10px 0 0;
	background: #F6F3F3;
	padding-bottom: 30px;
}

.faq_info p {
	display:flex;
	align-items:center;
	font-size: min(4vw, 1.5rem);
	font-weight: 500;
	margin-bottom: 20px;
	color: #957575;
	background-image: url("../img/home/faq_border.svg");
	background-repeat: no-repeat;
	background-position: center bottom;
	padding: 20px;
	/*adjust*/
	min-height: 103px;
	/*adjust*/
}

.faq_info p span {
	margin:0 10px 0 0;
	font-size: 2.6rem;
}

.btn_faq {
	width: 278px;
	text-align: center;
	margin: 0 auto;
	border: 3px solid #F0E7E7;
	display: block;
	font-size: 1.6rem;
	color: #957575 !important;
	padding: 10px;
	box-sizing: border-box;
	background: #FFF;
	position: relative;
	transition: all 0.3s ease;
	font-weight: normal
}

.btn_faq span {
	color: transparent;
	background-image: url("../img/home/arrow1_br.svg");
	background-repeat: no-repeat;
	position: absolute;
	top: 16px;
	right: 13px;
	animation: iconMove2 0.2s both;
}

.btn_faq:hover span {
	animation: iconMove 0.4s both;
}

.faq_info:hover {
	box-shadow: 1px 3px 8px rgba(170, 170, 170, 0.7);
	transition: all 0.3s ease;
	transform: translateY(-4px);
}

#greeting {
	background: url("../img/home/bg_greeting.png");
	background-repeat: no-repeat;
	background-color: #FFFDF6;
	background-position: center bottom;
	background-size: cover;
	padding: 85px 0 80px;
}

#greeting_box {
	display:flex;
	flex-flow:row-reverse wrap;
	align-items:flex-start;
	width:100%;
	box-sizing: border-box;
	margin:0 auto 70px;
}

@media (min-width: 897px) {
#greeting_box { padding:40px 0 0; }
}


@media (max-width: 1180px) {
#greeting_box {
	width:1180px;
}
}
@media (min-width: 1500px) {
#greeting_box {
	width:1500px;
}
}
@media (max-width: 896px) {
#greeting_box {
	display:block;
}
}

#greeting_box .item1 {
	width: 37.5%;
	box-sizing: border-box;
	margin:0 0 0 12.5%;
}
@media (max-width: 1380px) {
#greeting_box .item1 {
	width: 42.5%;
	margin:0;
}
}

.item1_container {
}

#doctor_img {
	width: 50%;
	position:relative;
}
#doctor_img img {
	width:100%;
	height:auto;
	margin: 50px 0;
}

@media screen and (max-width: 896px) {
	#doctor_img img {
		margin: 0 0 56px 56px;
	}
}

#doctor_name {
	width: 422px;
	height: 88px;
	background-color: rgba(255, 255, 255, 0.9);
	position: absolute;
	left: 110px;
	bottom: 50px;
	padding: 0 15px;
	box-sizing: border-box;
}

#doctor_name span {
	color: #957575;
	font-size: 1.6rem;
	font-weight: bold;
	display: block;
	padding-top: 10px;
	letter-spacing: 2px;
	box-sizing: border-box;
}

#doctor_name div {
	font-size: 2rem;
	border-bottom: .5px solid #957575;
	letter-spacing: 2px;
	padding-bottom: 3px;
	box-sizing: border-box;
	position: absolute;
	width: 400px;
	right: 10px;
	bottom: 13px;
	font-weight: 500;
}

#doctor_copy {
	position: absolute;
	top: 35%;
	left: 55px;
	color: #212121;
	font-weight: 500;
}

@media (max-width: 1380px) {
#doctor_copy {
	top: 50%;
}
}

#doctor_copy div {
	font-size: 3rem;

}

#doctor_copy strong {
	display: block;
	font-size: 3rem;

}

#greeting_box .item1 h3 {
	font-size: min(5.33vw, 2.4rem);
	margin-bottom: 40px;
	color: #6B6A6E;
	font-weight: 500;
}

#greeting_box .item1 h4 {
	font-size: min(5.33vw, 2.2rem);
	margin-bottom: 24px;
	padding-bottom: 8px;
	border-bottom: .5px solid #957575;
	display: block;
	font-weight: 500;
	color: #957575
}

#greeting_box p {
	font-size: 1.5rem;
	font-weight: normal;
	padding-bottom: 20px;
}

#greeting_box .item1 p {
	padding-bottom: 40px;
}

#greeting_box p:last-child {
	padding-bottom: 0px;
}

#information {
	padding: 80px 0
}

#news_block {
	background: #F7F7F7;
	padding: 30px 0 40px 0;
	margin-bottom: 50px;
}

#news_block_inner {
	height: 180px;
	overflow-y: auto;
	overflow-x: none;
	margin: 0 40px;
}

#news_block ul {
	width: 900px;
	margin: 0 auto;
}

#news_block ul li {
	border-bottom: 1px solid #D7C3BC;
}

#news_block ul li:last-child {
	border-bottom: none
}

#news_block ul a {
	display: block;
	overflow: hidden;
	padding: 20px 0;
}

.news_date {
	width: 100px;
	display: inline-block;
	font-weight: normal;
	font-family: "Zen Kaku Gothic New";
	letter-spacing: 1px;
}

.news_icon {
	color: #FFF;
	background: #D3968F;
	font-size: 1.1rem;
	width: 80px;
	text-align: center;
	padding: 2px 0;
	display: inline-block;
	font-weight: normal;
}

#news_block div {
	float: left;
	width: 210px
}

#news_block h3 {
	float: right;
	width: 690px;
	font-weight: 400;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

#news_block ul li:hover p {
	color: #605211
}

#news_block ::-webkit-scrollbar {
	width: 5px;
	height: 5px;
	background: #FFF;
}

#news_block ::-webkit-scrollbar-thumb {
	background: #D3968F;
	border-radius: 5px;
}

#access {
	background: #F6F6F6;
	padding: 80px 0;
}

#googlemap {
	margin-bottom: 80px;
}

#access_block {
	background: #FFF;
	padding: 40px 50px;
	margin-bottom: 30px;
}

#access_block h3 {
	color: #957575;
	font-size: 2rem;
	margin-bottom: 20px;
}

#access_block p {
	margin-bottom: 30px;
	font-weight: normal;
}

#access_block hr {
	border-width: 1px 0 0 0;
	border-style: solid;
	border-color: #E0E0E0;
	margin-bottom: 40px;
}

#access_block h4 {
	background-position: left center;
	background-repeat: no-repeat;
	padding-left: 23px;
	margin-bottom: 10px;
}

.icn_train {
	background-image: url("../img/home/icn_train.svg")
}

.icn_taxi {
	background-image: url("../img/home/icn_taxi.svg")
}

.icn_car {
	background-image: url("../img/home/icn_car.svg")
}

#home #gFooter {
	margin-top: 0 !important;
}

.btn {
	background: url("../img/home/btn_bg.svg") no-repeat center center / contain;
	width: 258px;
	height: 43px;
	line-height: 43px;
	text-align: center;
	font-size: min(4.26vw, 1.6rem);
	color: #957575 !important;
	display: inline-block;
	font-weight: 500;

	&:hover {
		opacity: .7;
	}
}

.btn3 {
	background: url("../img/home/btn_bg2.svg") no-repeat center center / contain;
	background-size: 100% 100%;
    width: 240px;
    height: 39px;
    line-height: 39px;
    padding-left: 3rem;
    font-size: min(4vw, 1.5rem);
    font-weight: 500;
    text-align: left;
    color: #FFF !important;
    display: inline-block;

	&:hover {
		opacity: .7;
	}
}

@media all and (max-width: 896px) {

/*------------------------------------------------------------
	common
------------------------------------------------------------*/
	.inner,
	.inner_s,
	.inner_l {
		width: 100%;
		margin: 0 auto;
	}

	.flex50-100 {
		display: block;
	}

	.flex50-100 .item {
		width: 100% !important;
	}

	.pc {
		display: none
	}

	.sp {
		display: block
	}

	.home-headline02 {
		margin: 20px 20px 40px;

	}

	#menulist {
		.home-headline02 {
			margin: 16px 20px 48px;
		}
	}

	#information.home-headline02 {
		margin-bottom: 60px;
	}

	.home-headline02 span {
		font-size: 1.3rem;
		padding-bottom: 3px;
	}

	/* MV --------------------------------------------------*/

	#mv_slider {
		width: 100%;
		height: auto;
		margin: 0 auto;
		overflow: hidden;

	}

	#mv_slider .swiper-pagination {}

	/* MV1 */
	#mv1_i1 {
		position: absolute;
		box-sizing: border-box;
		top: 26vw;
		left: 0px;
		width: 68vw;
		height: 52vw;
		background: rgba(36, 4, 4, 0.74);
		color: #FFF;
		padding: 8vw 0px 0 0px;
		text-align: center
	}

	#mv1_i1 h2 {
		font-size: 6vw;
		font-family: 'Noto Serif JP', serif;
		font-weight: normal;
		line-height: 1;
		margin-bottom: 3vw;
		transform: scale(0.9, 1);
	}

	#mv1_i1 h2 span {
		font-size: 7vw;
		display: block;
		padding-top: 1.8vw
	}

	#mv1_i1 p {
		font-size: 5vw;
		color: #DEC0BF;
		font-family: 'Noto Serif JP', serif;
		font-weight: lighter;
		transform: scale(0.9, 1.1);
		margin-bottom: 3vw;
	}

	#mv1_i1 a {
		width: 57vw;
		height: 10vw;
		text-align: center;
		padding: 3vw 5vw;
		display: block;
		margin: 0 auto;
		border: 1px solid #FFF;
		box-sizing: border-box;
		font-size: 3.5vw;
		font-family: 'Noto Serif JP', serif;
		background-position: center right 3vw;
		background-size: auto 4vw;
	}

	/* MV2 */
	#mv2 h2 {
		position: absolute;
		top: 18vw;
		left: 20vw;
		width: 68vw;
		height: 35vw;
	}

	#mv2_i1 {
		font-size: 5vw;
		left: 14vw;

	}

	#mv2_i2 {
		font-size: 10vw;
		display: inline-block;
		margin-left: 1vw;
		margin-right: 1vw
	}

	#mv2_i3 {
		font-size: 5vw;
		left: 14vw;
		top: 13vw;
	}

	/* ゼロ */
	#mv2_i4 {
		font-size: 3vw;
		top: 1vw;
		right: 7vw;
		text-align: right;
		width: 14vw;
		transform: scale(0.9, 1.1);
	}

	/* 0 */
	#mv2_i5 {
		font-size: 17vw;
		color: #DEC0BF;
		position: absolute;
		top: 3vw;
		right: 6vw;
		width: 12vw;
		text-align: right;
	}

	#mv2_txt {
		position: absolute;
		width: 70vw;
		top: 53vw;
		left: 15vw;
		font-size: 3.3vw;
		line-height: 190%;
		font-weight: normal;
		transform: scale(0.9, 1);
	}

	#mv2_txt span {
		font-size: 1.7vw
	}

	#mv2_name {
		position: absolute;
		width: 50vw;
		color: #FFF;
		bottom: 5vw;
		left: 29vw;
		font-size: 4vw;
		font-weight: normal;
	}

	#mv2_name p {
		color: #FFF;
		font-size: 2.2vw;
	}

	#mv2_name span {
		color: #FFF;
		font-size: 3vw;
		display: inline-block;
		margin-right: 1vw
	}

	/* #mv3 */
	#mv3 {
		padding: 0 0 0 0;
	}

	#mv3_i1 {
		position: absolute;
		width: 80vw;
		top: 12vw;
		left: 10vw;
		border-top: 2px solid #957575;
		padding-top: 8vw;

	}

	#mv3 h2 {
		background: #D3968F;
		color: #FFF;
		font-size: 3.5vw;
		width: 60%;
		height: auto;
		border-radius: 72px;
		text-align: center;
		line-height: 1;
		box-sizing: border-box;
		font-weight: normal;
		padding: 2vw;
		margin: 0 auto;
	}

	#mv3 p {
		text-align: center;
		color: #6B6A6E;
		font-size: 5vw;
		line-height: 180%;
		font-weight: normal;
		padding: 6vw 0;
		border-bottom: 2px solid #957575
	}

	#mv3 a {
		display: block;
		text-align: right;
		color: #957575;
		font-size: 3.5vw;
		line-height: 1;
		padding: 5vw 11vw 5vw 0;
		background-image: url("../img/home/mv_arrow2.svg");
		background-position: center right;
		background-repeat: no-repeat;
		background-size: 5vw auto;
		font-weight: normal
	}

	#mv3 h3 {
		position: absolute;
		width: 35vw;
		height: 35vw;
		background: rgba(255, 255, 255, 0.8);
		border-radius: 20vw;
		top: 74vw;
		left: 8vw;
		text-align: center;
		box-sizing: border-box;
		font-size: 3vw;
		font-weight: normal;
		padding-top: 9.5vw;
		letter-spacing: -1px;
		line-height: 180%;
	}

	#mv3 h3 span {
		color: #957575
	}

	#search_word section {
		width: 100%;
		padding: 20px 0 10px 0;
	}

	#search_word p {
		font-size: 1.8rem;
		float: none;
		padding-top: 0px;
		text-align: center;
		margin-bottom: 20px;
	}

	/* バナー --------------------------------------------------*/
	#bnr_box {
		padding-bottom: 10px
	}

	#banner_slider {
		width: 100% !important;
		margin: 0 auto !important;
		padding-bottom: 40px;

	}

	#banner_slider .swiper-pagination {
		bottom: 20px
	}

	#banner_slider .swiper-pagination-bullet {
		height: 16px;
		width: 16px;
	}

	#bnr_box .swiper-wrapper {
		padding-bottom: 40px;
	}

	#banner_slider img {
		width: 100%;
		height: auto
	}

	#bnr_box2 {
		background: #FFF;
		padding: 30px 0 35px 0;

	}

	#bnr_box2 li {}

	#bnr_box2 li {
		display: inline-block;
		margin: 0 1.2rem;

		box-sizing: border-box;
	}

	#bnr_box2 li a {
		width: 160px;
		height: 150px;
		border: 1px solid #957575;
		text-align: center;
		display: inline-block;
		padding-top: 2rem;
		box-sizing: border-box
	}

	#reason {
		padding-bottom: 20px;
		padding: 1px 20px 40px 20px !important;
	}

	#reason .inner {
		box-sizing: border-box;


	}

	ul#reason_list {
		padding: 20px 20px;
		width: 100%;
		height: auto;
		margin-bottom: 0px;
		background-size: cover;
	}

	ul#reason_list li {
		padding: 17px 0;
	}

	ul#reason_list li sub {
		font-size: 0.8rem;
	}

	ul#reason_list li p {
		font-size: 1.2rem;
	}

	#reason_block {}

	#reason_block .item {
		float: none;
		width: 100% !important;
	}

	#reason_block .item:first-child {
		margin-bottom: 40px;
	}

	.list_indent {
		padding: 35px 0 20px 0;
	}

	.list_indent li {
		font-size: 1.3rem;
	}

	#ttl_strategies {
		background-image: url("../img/home/bg_torikumi.svg");
		background-size: auto 100%;
		width: 100%;
		height: auto;
		padding-top: 24px;
		padding-bottom: 24px;
		margin-bottom: 40px;
		background-position: center
	}

	#strategies .item {
		margin-bottom: 96px;
	}

	#strategies h2 {
		font-size: 1.8rem;
		margin-bottom: 20px;
		padding-bottom: 5px;
	}

	#strategies h2 span {
		font-size: 1.0rem;
		padding-bottom: 5px;
	}

	#strategies .item img,
	#strategies .item picture {
		width: 100%;
		height: auto;
	}

	#strategies p {
		padding-top: 20px;
		margin-bottom: 30px;
		min-height: inherit;
	}

	.btn_box2 {
		text-align: center;
	}

	#menulist {
		padding: 0 0 56px;
	}

	.menu_header {
		background-repeat: no-repeat;
		background-position: bottom right;
		background-size: auto 180px;
		box-sizing: border-box;
		height: 180px;
		background-color: #FFF;
		padding: 76px 0 0 21px;
	}

	#M_face .menu_header {
		background-image: url("../img/home/img_menu1_sp.png");
	}

	#M_bust .menu_header {
		background-image: url("../img/home/img_menu2_sp.png");
	}

	#M_body .menu_header {
		background-image: url("../img/home/img_menu3_sp.png");
	}

	#M_tatoo .menu_header {
		background-image: url("../img/home/img_menu4_sp.png");
	}

	.menu_header p {
		font-size: 1.6rem;
		padding-top: 0px;
	}

	.open_menu {
		height: 44px;
		font-size: 1.5rem;
		padding-top: 3px;
	}

	.open_menu span {
		bottom: 6px;
	}

	.menu_list ul {
		display: flex;
	}

	.menu_list li {
		width: 49% !important;
		display: block;
		margin-bottom: 7px;
		margin-right: 0px;
		float: left;
	}

	.menu_list li:nth-child(2n) {
		float: right;
	}

	.menu_list li a {
		padding: 0px 8px 0px 22px;
		line-height: 1.4;
		vertical-align: middle;
		background-position: left 10px center;
	}

	.btn_box3 {
		padding: 60px 0 0 0
	}

	#purpose {
		padding: 32px 10px 64px;
	}

	#purpose .home-headline02 {
		margin-bottom: 40px;
	}

	.purpose_content h3 {
		font-size: 1.8rem;
		border-bottom: 1px solid #957575;
		background-repeat: no-repeat;
		padding: 40px 10px 40px 75px;


	}

	#top-case {
		padding: 24px 10px 64px;
	}

	#top-case .home-headline02 {
		margin-bottom: 40px
	}

	.case_slider,
	.faq_slider {
		width: 100% !important;
		margin-bottom: 30px;
	}

	#top-case .sp {
		margin-bottom: 50px;
		height: 840px;
		overflow: hidden;
	}


	.sp .faq_info,
	.sp .case_info {
		display: block;
		width: 100% !important;
		height: auto;
		margin: 0 0 16px 0;
		box-sizing: border-box;
	}

	.sp .case_info a {
		padding: 33px 44px;
		min-height: 250px !important;
		display: block;
		box-sizing: border-box;
		text-align: center;
		border: .5px solid #A68C8C;

	}

	.sp .case_info p {
		font-size: 1.7rem;
		margin-bottom: 20px;
		font-weight: 500;
	}

	#top-case .swiper-button-prev,
	#top-case .swiper-button-next,
	#top-faq .swiper-button-prev,
	#top-faq .swiper-button-next {
		display: none
	}

	.img_wide {
		height: 180px;
		background-image: url("../img/home/img_case_sp.png");
	}

	#top-faq {
		padding: 40px 10px 64px;
	}

	#top-faq .sp {
		height: 700px;
		overflow: hidden;
	}

	#top-faq .sp .swiper-slide {
		height: auto;
	}

	#greeting {
		background: url("../img/home/bg_greeting.png");
		background-color: #FFFDF6;
		background-position: center bottom;
		padding: 24px 0 40px;
	}

	#greeting_box {
		width:auto;
		margin-bottom: 40px;
	}

	#greeting_box .item1 {
		width: auto;
		padding: 0 20px;
	}

	.item1_container {
		width: 100%;
	}

	.img_doctor {

	}

	#doctor_img {
		width: 100%;
		height: auto;
		position: relative;
		overflow: hidden;
	}

	#doctor_name {
		width: 80%;
		height: 68px;
		background-color: rgba(255, 255, 255, 0.9);
		position: absolute;
		left:auto;
		right: 0;
		bottom: 0;
		padding: 0 15px;
		box-sizing: border-box;
	}

	#doctor_name span {
		color: #957575;
		font-size: 1.2rem;
		font-weight: bold;
		display: block;
		padding-top: 10px;
		letter-spacing: 2px;
		box-sizing: border-box;
	}

	#doctor_name div {
		font-size: 1.4rem;
		border-bottom: .5px solid #957575;
		letter-spacing: 2px;
		padding-bottom: 3px;
		box-sizing: border-box;
		position: absolute;
		width: 93%;
		right: 3%;
		bottom: 10px;
		font-weight: 500;
	}

	#doctor_copy {
		position: absolute;
		top: 29%;
		left: 9%;
		line-height: 1.8;
	}

	#doctor_copy div {
		font-size: 1.7rem;
		font-weight: 500;
	}

	#doctor_copy strong {
		font-size: 1.7rem;
		font-weight: 600;
	}

	#greeting_box .item1 h3 {
		margin-bottom: 48px;
		padding-top: 48px;
		line-height: 1.8;

	}

	#greeting_box .item1 h4 {
		font-size: 1.8rem;
		margin-bottom: 15px;
		padding-bottom: 3px;
	}

	#greeting_box p {
		font-size: 1.4rem;
		padding-bottom: 60px !important;
	}

	#greeting_box p:last-child {
		padding-bottom: 0px;
	}

	#information {
		padding: 32px 0 56px;
	}

	#news_block {
		padding: 20px 0 30px 0;
		margin-bottom: 56px;
	}

	#news_block_inner {
		height: 330px;
		overflow-y: auto;
		overflow-x: none;
		margin: 0 30px;
	}

	#news_block ul {
		width: 100%;
		margin: 0 auto;
	}

	#news_block ul a {
		display: block;
		overflow: hidden;
		padding: 20px 8px 20px 0;
	}

	#news_block div {
		float: none;
		width: 100%;
		padding-bottom: 5px;
	}

	#news_block h3 {
		float: none;
		width: 100%;
		font-size: 1.4rem;
	}

	#googlemap {
		margin-bottom: 60px;
	}

	#googlemap iframe {
		height: 350px
	}

	#access_block {
		padding: 20px;
		margin: 0 10px 30px 10px
	}

	#access_block h3 {
		color: #957575;
		font-size: 1.8rem;
		margin-bottom: 20px;
	}

	#access_block p {
		margin-bottom: 20px;
		font-weight: normal;
	}

	#access_block hr {
		margin-bottom: 30px;
	}

	#access_block h4 {
		background-position: left center;
		background-repeat: no-repeat;
		padding-left: 23px;
		margin-bottom: 10px;
	}
}

#gMap {
	padding: 81px 0 40px;
	background-image: -moz-linear-gradient(-90deg, #FBFBFB 0%, #E1E1E1 100%);
	background-image: -webkit-linear-gradient(-90deg, #FBFBFB 0%, #E1E1E1 100%);
	background-image: -ms-linear-gradient(-90deg, #FBFBFB 0%, #E1E1E1 100%);
}

#gMap .fBox {
	width: 1106px;
	margin: 0 auto;
}

#gMap .fLink {
	width: 417px;
	margin: 0 auto 80px;
}

#gMap .fLink a {
	padding: 18px 0 21px;
	display: block;
	text-align: center;
	color: #fff;
	position: relative;
	font-size: 1.5rem;
	font-weight: normal;
	background: url("../img/icon35.webp") no-repeat right 15px center #9E8181;
	background-size: 9px auto;
}

#gMap .fLink a:hover {
	opacity: 0.7;
}

#gMap .fLink a:before,
#gMap .fLink a:after {
	position: absolute;
	left: 0;
	top: 7px;
	right: 0;
	height: 1px;
	background-color: #fff;
	content: "";
}

#gMap .fLink a:after {
	top: auto;
	bottom: 6px;
}

#gMap .fLink a>span {
	margin-top: 9px;
	display: block;
	letter-spacing: 0.02em;
}

#gMap .fLink a span span {
	padding: 0 27px;
	min-height: 28px;
	display: inline-block;
	background: url("../img/icon34.webp") no-repeat left top 3px;
	background-size: 18px auto;
}

#gMap .access__subheading {
	text-align: center;
	color: #957575;
	font-weight: bold;
	font-size: 1.8rem;
	margin-bottom: 22px;
}

#gMap .access__heading {
	margin-bottom: 85px;

	.headline {
		color: #6B6A6E;
		text-align: center;
		font-size: min(6.4vw, 3rem);
		font-weight: 500;
		letter-spacing: 0.1em;
	}
}

@media all and (max-width: 896px) {
	#gMap {
		padding: 42px 15px 8px;
	}

	#gMap .fBox {
		width: auto;
	}

	#gMap .fLink {
		width: auto;
		max-width: 342px;
		margin: 0 auto 50px;
	}

	#gMap .fLink a {
		padding: 15px 5px 12px;
		font-size: 1.4rem;
		background-position: right 12px center;
		background-size: 6px auto;
	}

	#gMap .fLink a>span {
		margin-top: 5px;
		font-size: 1.5rem;
	}

	#gMap .fLink a span span {
		padding: 0 20px;
		min-height: 28px;
		background-size: 15px auto;
	}

	#gMap .access__subheading {
		margin-bottom: 5px;
		font-size: 1.3rem;
	}

	#gMap .access__heading {
		margin-bottom: 48px;
	}
}

strong {
	font-weight: 600;
}





#top-mv-new { margin:0 0 12.8vw; padding:10vw 0 0; position:relative; }
#top-mv-txt { display:none; position:absolute; top:0; left:0; width:100%; height:90vh; z-index:5; }
#top-mv-txt p { display:flex; justify-content:center; align-items:center; width:100%; height:100%; font-size:6.67vw; color:#B59A7E; text-shadow:0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff,0 0 20px #fff; letter-spacing:0.58vw; font-weight: 500; }
#top-mv-txt-p span { animation:showText 0.1s backwards; display:inline-block; }
#top-mv-txt-p > span { overflow:hidden; }
#top-mv-txt-p > span > span { animation:showTextFromBottom 0.1s backwards; }
#top-mv-txt mark { display:inline-block; background:none; }

@media screen and (max-width:896px){
@keyframes showTextFromBottom {
  0% { opacity:0; }
100% { opacity:1; }
}
}
@media screen and (min-width:897px){
@keyframes showTextFromBottom {
  0% { opacity:0; }
100% { opacity:1; }
}
}



@media screen and (max-width:896px){
#top-mv-txt { -ms-writing-mode:tb-rl; writing-mode:vertical-rl; }
#top-mv-txt-p > span:nth-of-type(1) span { display:inline-block; margin:1vw 0 0 6vw; padding:0 0 0; transform:rotate(-90deg); }
#top-mv-txt-p > span:nth-of-type(9) span { display:inline-block; margin:-2vw 6vw 2vw 0; padding:2vw 0 0 0; transform:rotate(90deg); }
}

@media screen and (min-width:897px){
#top-mv-new { margin:0 0 80px; padding:0; }
#top-mv-txt { z-index:999999; }
#top-mv-txt p { text-align:center; margin:0 auto; font-size:36px; letter-spacing:8px; }
#top-mv-txt mark { margin:0 16px; }
}



#top-mv-bar { position:fixed; display:none; top:0; left:0; width:100%; height:100%; z-index:1; }
#top-mv-bg { position:fixed; display:none; z-index:2; }
#top-map { display:block; padding:0 4.58vw 1.03vw; position:relative; z-index:1; }
#top-map img { width:100%; height:auto; }
#splash { position:fixed; display:block; top:0; left:0; width:100%; height:100%; background:rgba(255,255,255,1); z-index:999999; }
#splash-box { display:none; position:absolute; z-index:4; }
#splash-box2 { display:none; position:absolute; z-index:3; }

@media screen and (max-width:896px){
#top-mv-bg { top:0; left:0; width:100%; height:100vh; background:url(/img/home/bg_30000.webp) center top/100% no-repeat; }
#splash-box { top:50vw; right:0; width:100%; height:100vh; background:url(/img/home/top_mv_doctor.webp) center top/100% auto no-repeat; }
#splash-box2 { top:80vw; left:9.74vw; width:51.79vw; height:37.43vw; background:url(/img/home/top_mv_txt.webp) center center/100% auto no-repeat; }
}
@media screen and (min-width:897px){
#top-mv-bar { background:url(/img/home/bg_splash.webp) center center/cover no-repeat; }
#top-mv-bg { left:50%; width:115.2vh; height:100vh; background:url(/img/home/bg_30000_pc.webp) center center/auto 100% no-repeat; margin:0 0 0 -50.6vh; z-index:999996; }
#top-map { width:1000px; margin:0 auto; padding:40px 0 0; }
#top-map img {}
#splash { z-index:999997; }
#splash-box { top:auto; bottom:0; right:auto; left:50%; width:63.33vh; height:84.4vh; background:url(/img/home/top_mv_doctor_pc.webp) center center/100% auto no-repeat; margin:0 0 0 5.4vh; z-index:999998; }
#splash-box2 { top:auto; bottom:17.2vh; left:50%; width:46vh; height:31.46vh; overflow:hidden; background:url(/img/home/top_mv_txt_pc.webp) center center/100% auto no-repeat; margin:0 0 0 -38.33vh; z-index:999997; }
}





.test-box { width:100%; overflow:hidden; padding:20.51vw 0 12.82vw; position:relative; }
.bira:after { content:""; position:absolute; top:0; left:0; width:100%; height:100%; background:#F5EFE8; transform:translateX(-100%); z-index:-2; }
.bira:before { content:""; position:absolute; top:0; right:0; width:0; height:0; border-style:solid; border-color:transparent #fff transparent transparent; border-width:0 100vw 15.35vw 0; z-index:-1; }
.mori:after { content:""; position:absolute; bottom:0; left:0; width:0; height:0; border-style:solid; border-color:transparent transparent transparent #8B787D; border-width:8.52vw 0 0 50vw; transform:translateY(200%); z-index:0; }
.mori:before { content:""; position:absolute; bottom:0; right:0; width:0; height:0; border-style:solid; border-color:transparent transparent #8B787D transparent; border-width:0 0 8.52vw 50vw; transform:translateY(200%); z-index:0; }
.kawaru:after { content:""; position:absolute; top:0; left:0; width:100%; height:100%; background:#F5EFE8; transform:translateX(-100%); z-index:-2; }
.kawaru:before { content:""; position:absolute; top:0; right:0; width:0; height:0; border-style:solid; border-color:transparent #fff transparent transparent; border-width:0 100vw 15.35vw 0; z-index:-1; }

@media screen and (min-width:897px){
.test-box { margin:-50px 0 0; padding:140px 0 60px; }
.bira:after {}
.bira::before { border-width:0 100vw 120px 0; }
.mori:after { border-width:120px 0 0 50vw; }
.mori:before { border-width:0 0 120px 50vw; }
.kawaru:after {}
.kawaru:before { border-width:0 100vw 120px 0; }
}

.bira:after {
  animation-name:test_box_slide;
  animation-duration:0.5s;
  animation-delay:8.5s;
  animation-fill-mode:forwards;
  transform:translateX(-100%);
}
.mori-off:before {
  animation-name:test_box_slide_y;
  animation-duration:0.3s;
  animation-delay:0.4s !important;
  animation-fill-mode:forwards;
  transform:translateY(200%);
}
.mori-off:after {
  animation-name:test_box_slide_y;
  animation-duration:0.3s;
  animation-delay:0.4s !important;
  animation-fill-mode:forwards;
  transform:translateY(200%);
}
.mori:before {
  animation-name:test_box_slide_y;
  animation-duration:0.3s;
  animation-delay:8.9s;
  animation-fill-mode:forwards;
  transform:translateY(200%);
}
.mori:after {
  animation-name:test_box_slide_y;
  animation-duration:0.3s;
  animation-delay:8.9s;
  animation-fill-mode:forwards;
  transform:translateY(200%);
}
.kawaru:after {
  animation-name:test_box_slide;
  animation-duration:0.5s;
  animation-delay:0.4s !important;
  animation-fill-mode:forwards;
  transform:translateX(-100%);
}

@keyframes test_box_slide {
0%   { transform: translate(-100%,0) }
100% { transform: translate(0,0) }
}
@keyframes test_box_slide_y {
0%   { transform: translate(0,100%) }
100% { transform: translate(0,0) }
}




.yoko {
  animation-name:test_box_slide;
  animation-duration:0.3s;
  animation-delay:8.9s;
  animation-fill-mode:forwards;
  transform:translateX(-200%);
}

@media screen and (max-width:896px){
#top-ieba { position:absolute; top:0; left:0; line-height:1; margin:5.13vw 0 0; font-size:15.38vw; color:#fff; font-weight:400; transform:translateX(-200%); z-index:0; }
}

@media screen and (min-width:897px){
#top-ieba { position:absolute; top:0; left:50%; line-height:1; margin:20px 0 0 -550px; font-size:108px; color:#fff; font-weight:300; transform:translateX(-200%); z-index:0; }
}



@media screen and (max-width:896px){
#top-point-wrap {padding: 0 4.58vw;}
.top-point-box { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:100%; height:30.77vw; background:#fff url(img/home/ico_top_mv.webp) center center/15.89vw auto no-repeat; border:1px #D3968F solid; margin:0 auto 6.15vw; position:relative; }
.top-point-box:before { content:""; position:absolute; top:0; left:0; width:0; height:0; border-style:solid; border-color:#f4f4f4 transparent transparent transparent; border-width:17.43vw 17.43vw 0 0; }
.top-point-box:after { content:""; position:absolute; bottom:0; right:0; width:0; height:0; border-style:solid; border-color:transparent transparent #f4f4f4 transparent; border-width:0 0 17.43vw 17.43vw; }
.top-point-box dt { line-height:1.4; padding:0; font-size:4.1vw; color:#D3968F; font-weight:600; text-align: center; }
.top-point-box dt strong { display:inline-block; margin:0 1.56vw 0 0; font-size:6.92vw; font-weight:500; }
.top-point-box dt span { position:absolute; top:-7.17vw; left:1.03vw; line-height:1; font-size:17.94vw; font-weight:500; }
.top-point-box dd { font-size:3.59vw; color:#8B787D; font-weight:500; }
.top-point-box dt sup { font-size:60%; }
#top-point-kikan { position:absolute; bottom:-82vw; left:0; }
}

@media screen and (min-width:897px){
#top-point-wrap { display:flex; flex-flow:row nowrap; justify-content:space-between; width:1100px; margin:0 auto; }
.top-point-box { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:342px; height:167px; background:#fff url(img/home/ico_top_mv.webp) center center/62px auto no-repeat; border:1px #D3968F solid; margin:0 auto; position:relative; }
.top-point-box:before { content:""; position:absolute; top:0; left:0; width:0; height:0; border-style:solid; border-color:#f4f4f4 transparent transparent transparent; border-width:68px 68px 0 0; }
.top-point-box:after { content:""; position:absolute; bottom:0; right:0; width:0; height:0; border-style:solid; border-color:transparent transparent #f4f4f4 transparent; border-width:0 0 68px 68px; }
.top-point-box dt { line-height:1.4; text-align:center; padding:0 0 8px; font-size:20px; color:#D3968F; font-weight: 500; }
.top-point-box dt strong { display:inline-block; margin:0 10px 0 0; font-size:40px; font-weight: 600; }
.top-point-box dt span { position:absolute; top:-45px; left:-20px; line-height:1; font-size:80px; font-weight:400; }
.top-point-box dd { font-size:14px; color:#8B787D; font-weight: 400; }
.top-point-box dt sup { font-size:60%; }
#top-point-kikan { position:absolute; bottom:-52px; left:0; color:#fff; }
}




.fade-up { opacity:0; animation-name:fadeinup; animation-timing-function:ease-out; animation-fill-mode: forwards; }

@keyframes fadeinup {
  0% { opacity:0; transform:translateY(20px); }
  100% { opacity:1; transform: translateY(0); }
}

@media screen and (min-width:897px){
.fade-up01 { animation-duration:0.8s; animation-delay:9.5s; }
.fade-up02 { animation-duration:0.8s; animation-delay:9.7s; }
.fade-up03 { animation-duration:0.8s; animation-delay:9.9s; }
}




.cf:before, .cf:after { content:""; display:table; }
.cf:after { clear:both; }
.cf { *zoom: 1; }

.dn-pc { display:none !important; }
.dn-pc2 { display:none !important; }
.dn-sp { display:block !important; }
.dn-sp2 { display:inline-block !important; }

@media screen and (max-width:896px){
.dn-pc { display:block !important; }
.dn-pc2 { display:inline-block !important; }
.dn-sp { display:none !important; }
.dn-sp2 { display:none !important; }
}




#slider2 li a::before { border:none !important; }




#skip-mv { position:absolute; position:fixed; bottom:4.1vw; right:4.1vw; background:#D889A1; padding:3vw; width: 100%; letter-spacing: .1vw; max-width: min(30vw, 120px); color: #fff; text-align: center; transition: ease .3s; font-weight: 600; z-index:999999; }
#skip-mv:hover { opacity:0.7; cursor:pointer; }
.sugu:after { animation-delay:1s !important; }
.sugu .yoko { animation-delay:1s !important; }
.sugu .mori:before { animation-delay:1s !important; }
.sugu .mori:after { animation-delay:1s !important; }
.kata { animation:scrollseal 0s 1s both !important; }

@media screen and (min-width:897px){
#skip-mv { bottom:30px; right:30px; padding:12px 30px; max-width: 140px; letter-spacing: 1px; }
.sugu .fade-up01 { animation-delay:1s !important; }
.sugu .fade-up02 { animation-delay:1s !important; }
.sugu .fade-up03 { animation-delay:1s !important; }
}



@keyframes scrollseal {
  from { overflow: hidden; }
  to { overflow: visible; }
  }

body { animation:scrollseal 0s 10s both; }


@media screen and (max-width:896px){
.fade { opacity:0; }
.fade_in { -webkit-animation:fadeIn 1.5s forwards !important; animation:fadeIn 1.5s forwards !important; }

@-webkit-keyframes fadeIn {
  0% { opacity:0; }
  100% { opacity:1; }
}
@keyframes fadeIn {
  0% { opacity:0; }
  100% { opacity:1; }
}
}
@media screen and (min-width:897px){
#strategies { padding:0 50px; }
}





.menu_group { cursor:pointer; }




@media screen and (max-width:896px){
#top-bottom-bnr { width:64vw; margin:0 auto 8vw; }
.slide-bottom-bnr {}
#top-bottom-bnr .swiper-wrapper {}
#top-bottom-bnr .swiper-slide { margin:0; }
#top-bottom-bnr .swiper-slide a { display:block; }
#top-bottom-bnr .swiper-slide a img { width:100%; height:auto; }
#top-bottom-bnr .swiper-button-prev { left:-14vw; width:10.7vw; height:10.7vw; background-size:100% auto; }
#top-bottom-bnr .swiper-button-next { right:-14vw; width:10.7vw; height:10.7vw; background-size:100% auto; }
}

@media screen and (min-width:897px){
#top-bottom-bnr { width:840px; margin:0 auto 60px; }
.slide-bottom-bnr {}
#top-bottom-bnr .swiper-wrapper {}
#top-bottom-bnr .swiper-slide { width:270px !important; margin:0 10px 0 0; }
#top-bottom-bnr .swiper-slide a { display:block; }
#top-bottom-bnr .swiper-slide a img { width:100%; height:auto; }
#top-bottom-bnr .swiper-slide a:hover { opacity:0.7; transition:1s ease; }
#top-bottom-bnr .swiper-button-prev { left:-80px; width:58px; height:58px; background-size:100% auto; }
#top-bottom-bnr .swiper-button-next { right:-80px; width:58px; height:58px; background-size:100% auto; }
}




@media screen and (max-width:896px){
#top-f-sns { margin:0 0 12.8vw; }
#top-f-sns ul { display:flex; flex-flow:row nowrap; justify-content:space-between; width:55vw; margin:0 auto; }
#top-f-sns li { width:12.82vw; }
#top-f-sns li a { display:flex; justify-content:center; align-items:center; height:12.82vw; border-radius:50%; text-align:center; margin:0 auto; }
#top-f-sns li:nth-child(1) a { background:#fff; }
#top-f-sns li:nth-child(2) a { background:#fff; }
#top-f-sns li:nth-child(3) a { background:#fff; }
#top-f-sns li a img { width:7.69vw; height:auto; }
}
@media screen and (min-width:897px){
#top-f-sns { margin:0 0 40px; }
#top-f-sns ul { display:flex; flex-flow:row nowrap; justify-content:space-between; width:210px; margin:0 auto; }
#top-f-sns li { width:60px; }
#top-f-sns li a { display:flex; justify-content:center; align-items:center; height:60px; border-radius:50%; text-align:center; margin:0 auto; }
#top-f-sns li a:hover { opacity:0.7; transition:1s ease; }
#top-f-sns li:nth-child(1) a { background:#fff; }
#top-f-sns li:nth-child(2) a { background:#fff; }
#top-f-sns li:nth-child(3) a { background:#fff; }
#top-f-sns li a img { width:30px; height:auto; }
}


.home-banner-section {
	background-image: url(../img/home/bg_menu.svg);
    background-repeat: no-repeat;
    background-position: top center;
    background-color: #F3F3F3;
	margin: 0 auto;
	padding: min(10.66vw, 80px) min(5.33vw, 20px);
}

.home-banner-list {
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;

	.list {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: min(2.13vw, 10px);

		a {
			display: block;
			width: 100%;

			img {
				width: 100%;
				height: auto;
				display: block;
			}
		}
	}
}

@media screen and (min-width: 768px) {
	.home-banner-list {
		a {
			transition: ease .3s;

			&:hover {
				opacity: .7;
				transition: ease .3s;
			}
		}
	}
}

@media screen and (max-width: 767px) {
	.home-banner-list {

		.list {
			grid-template-columns: repeat(1, 1fr);
		}

		a {
			transition: ease .3s;

			&:active {
				opacity: .7;
				transition: ease .3s;
			}

		}
	}
}
