@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');

/* Setting-basic
-----------------------------------------------------------*/
html {font-size: 62.5%;}
body {
	font-family: 'Noto Sans JP','ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif;
	color: #333;
	background: #fff;
	line-height:1.5;
	font-feature-settings: "palt";
	font-size: 1.5rem;
	-webkit-text-size-adjust:100%;
}
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, body { font-family: 'メイリオ',Meiryo,'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro',sans-serif; } /* IE11 */
}

.clearfix {
	clear: both;
}

/* Module
-----------------------------------------------------------*/
img {
	border: 0;
	vertical-align: middle;
}
img.ofi {
	width: 100%;
	height: 100%;
	object-fit: cover;
	-webkit-object-fit: cover;
	font-family: 'object-fit: cover;'
}
p {
	margin: 0 0 20px;
	line-height: 1.6;
}
h1,h2,h3,h4,h5,h6 {
	margin: 0 0 20px;
	line-height: 1.3;
	font-weight: bold;
}
h1 { font-size: 3.6rem;}
h2 { font-size: 3rem;}
h3 { font-size: 2.4rem;}
h4 { font-size: 2.1rem;}
h5 { font-size: 1.8rem;}
h6 { font-size: 1.6rem;}

ol,ul {
	list-style: none;
}
.liststyle_decimal {
	list-style: decimal;
	padding: 0 0 0 30px;
}
.liststyle_decimal li {
	margin-bottom: 5px;
}
.liststyle_disc {
	list-style: disc;
	padding: 0 0 0 20px;
}
.liststyle_disc li {
	margin-bottom: 5px;
}
.liststyle_dl1 {
	overflow: hidden;
	width: 100%;
}
.liststyle_dl1 dt {
	float: left;
	width: 120px;
	margin: 0 0 25px;
	font-weight: bold;
}
.liststyle_dl1 dd {
	float: left;
	width: calc(100% - 120px);
	margin: 0 0 25px;
}
.liststyle_dl2 dt {
	margin: 0 0 5px;
	font-weight: bold;
}
.liststyle_dl2 dd {
	margin: 0 0 15px;
	padding: 0 0 15px;
	border-bottom: 1px dotted #ccc;
}
.liststyle_dl2 dd:last-child {
	margin: 0;
	padding: 0;
	border-bottom: none;
}


/* Hypertext Module
-----------------------------------------------------------*/
a:link,
a:visited {
	color: #333;
	text-decoration: none;
	-webkit-transition: all .2s ease-in-out;
	-ms-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
a:hover {
	color: #777;
}
a.linkstyle {
	color: #126EAE;
	text-decoration: underline;
}
a:hover.linkstyle {
	color: #e00a8c;
}
::selection {
	color: #91a50b;
	background: #f2ff8e;
}
.swap {
	-webkit-transition: all .2s ease-in-out;
	-ms-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.swap:hover {
	opacity: 0.7;
}


/* General Settings
-----------------------------------------------------------*/
/* Margin Control */
.mb00 { margin-bottom: 0!important;}
.mb05 { margin-bottom: 5px!important;}
.mb10 { margin-bottom: 10px!important;}
.mb15 { margin-bottom: 15px!important;}
.mb20 { margin-bottom: 20px!important;}
.mb25 { margin-bottom: 25px!important;}
.mb30 { margin-bottom: 30px!important;}
.mb40 { margin-bottom: 40px!important;}
.mb50 { margin-bottom: 50px!important;}
.mb60 { margin-bottom: 60px!important;}
.mb70 { margin-bottom: 70px!important;}
.mb80 { margin-bottom: 80px!important;}
.mb90 { margin-bottom: 90px!important;}
.mb100 { margin-bottom: 100px!important;}
.mb120 { margin-bottom: 120px!important;}
.mb130 { margin-bottom: 130px!important;}
.mb140 { margin-bottom: 140px !important;}
.mb150 { margin-bottom: 150px !important;}
.mb160 { margin-bottom: 160px !important;}
.mb170 { margin-bottom: 170px !important;}
.mb180 { margin-bottom: 180px !important;}
.mb190 { margin-bottom: 190px !important;}
.mb200 { margin-bottom: 200px !important;}
.mb210 { margin-bottom: 210px !important;}
.mb220 { margin-bottom: 220px !important;}
.mb230 { margin-bottom: 230px !important;}
.mb240 { margin-bottom: 240px !important;}
.mb250 { margin-bottom: 250px !important;}
.mb260 { margin-bottom: 260px !important;}
.mb270 { margin-bottom: 270px !important;}
.mb280 { margin-bottom: 280px !important;}
.mb290 { margin-bottom: 290px !important;}
.mb300 { margin-bottom: 300px !important;}

.mt00 { margin-top: 0 !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top: 10px !important;}
.mt20 { margin-top: 20px !important;}
.mt30 { margin-top: 30px !important;}
.mt40 { margin-top: 40px !important;}
.mt50 { margin-top: 50px !important;}
.mt60 { margin-top: 60px !important;}
.mt70 { margin-top: 70px !important;}
.mt80 { margin-top: 80px !important;}
.mt90 { margin-top: 90px !important;}
.mt100 { margin-top: 100px !important;}
.mt110 { margin-top: 110px !important;}
.mt120 { margin-top: 120px !important;}
.mt130 { margin-top: 130px !important;}
.mt140 { margin-top: 140px !important;}
.mt150 { margin-top: 150px !important;}
.mt160 { margin-top: 160px !important;}

/* width */
.width100 { width: 100%;}
.width90 { width: 90%;}
.width80 { width: 80%;}
.width70 { width: 70%;}
.width60 { width: 60%;}
.width50 { width: 50%;}
.width45 { width: 45%;}
.width40 { width: 40%;}
.width35 { width: 35%;}
.width30 { width: 30%;}
.width25 { width: 25%;}
.width20 { width: 20%;}
.width15 { width: 15%;}
.width10 { width: 10%;}
.width5 { width: 5%;}

/* font size */
.text75 { font-size: 75%;}
.text80 { font-size: 80%;}
.text85 { font-size: 85%;}
.text90 { font-size: 90%;}
.text100 { font-size: 100%;}
.text110 { font-size: 110%;}
.text120 { font-size: 120%;}
.text130 { font-size: 130%;}
.text140 { font-size: 140%;}
.text160 { font-size: 160%;}
.text180 { font-size: 180%;}
.text200 { font-size: 200%;}
.text220 { font-size: 220%;}
.text240 { font-size: 240%;}
.text260 { font-size: 260%;}

/* color */
.c_green_main { color: #195f55;}
.c_000 { color: #000;}
.c_333 { color: #333;}
.c_555 { color: #555;}
.c_888 { color: #888;}
.c_fff { color: #fff;}
.c_red { color: #f00;}
.c_blue { color: #126EAE;}
.c_green { color: #189249;}
.c_orange { color: #ee761b;}
.c_pink { color: #ff3366;}
.c_brown { color: #b99d59;}


/* font style */
.boldstyle { font-weight: bold;}
.normalstyle { font-weight: normal;}
.italicstyle { font-style: italic;}
.hiramaru{ font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";}

/* text-align */
.aligncenter { text-align: center;}
.alignleft { text-align: left;}
.alignright { text-align: right;}

/*光る動き*/
.reflection{
position:relative;
overflow:hidden;
}
 
.reflection:after {
content:"";
height:100%;
width:30px;
position:absolute;
top:-180px;
left:0;
background-color: #fff;
opacity:0;
-webkit-transform: rotate(45deg);
-webkit-animation: reflection 3s ease-in-out infinite;
}
 
@keyframes reflection {
0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

/* inview
-----------------------------------------------------------*/
.effect_fadein {
	opacity: 0;
	transition: 1s;
	-moz-transition: 1s;
	-webkit-transition: 1s;
	-o-transition: 1s;
	-ms-transition: 1s;
	transform: translate(0,30px); 
	-moz-transform: translate(0,30px);
	-webkit-transform: translate(0,30px); 
	-o-transform: translate(0,30px);
	-ms-transform: translate(0,30px);
}
.effect_def {
	opacity: 1.0;
	transform: translate(0,0); 
	-moz-transform: translate(0,0);
	-webkit-transform: translate(0,0); 
	-o-transform: translate(0,0);
	-ms-transform: translate(0,0);
}


/* effect
-----------------------------------------------------------*/
.img_effect {
	-webkit-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
.img_effect:hover {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}


/* Table Module
-----------------------------------------------------------*/
	/* 
table {
	width: 100%;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-collapse: collapse;
	border-spacing: 0;
	background: #fff;
}
td,th {
	padding: 12px 10px;
	line-height: 1.5;
	font-weight: normal;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
	word-wrap: break-word;
}
th {
	background: #f5f5f5;
	text-align: left;
}
td {
	background: #fffcec;
	/* text-align: right;
}
 */
 
.tbl_contact td {
	background: #fff;
	text-align: left;
}
.stem_cell_tb table {
	width: 100%;
	border-top: 1px solid #be9f5d;
	border-left: 1px solid #be9f5d;
	border-collapse: collapse;
	border-spacing: 0;
	background: #fff;
}
.stem_cell_tb table thead th {
	border: 1px solid #be9f5d;
	background: #d5c17b;
	color: #fff;
	text-align: center;	
}
.stem_cell_tb table tbody th {
	border: 1px solid #be9f5d;
	background: #eee9d4;
	text-align: center;	
}
.stem_cell_tb table tbody td {
	border: 1px solid #be9f5d;
	text-align: center;	
}
.stem_cell_tb table tfoot th {
	border: 1px solid #be9f5d;
	background: #fff;
	text-align: right;	
}
.stem_cell_price_tbl table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: none;
	background: #f3f2ed;	
}
.stem_cell_price_tbl th {
	border: none;
	text-align: left;
	background: #f3f2ed;	
}
.stem_cell_price_tbl td {
	border: none;
	text-align: right;
	background: #f3f2ed;	
}
.box_stem_cell_price_tbl {
	width: 100%;
	background: #f3f2ed;
	padding: 20px;		
}
.stem_cell_standard_tbl table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: 2px solid #b9a067;
	background: #fff;	
}
.stem_cell_standard_tbl th {
	padding-left: 30px;
	border: none;
	text-align: left;
	background: #fff;	
}
.stem_cell_standard_tbl td {
	padding-right: 20px;	
	border: none;
	text-align: right;
	background: #fff;	
}
.box_std_th {
	text-align: center;
	margin-left: 10px;
	background:#b9a067;
	padding: 70px 50px;
	color: #fff; 
	font-size: 120%;
}
.box_std_detail_th {
	text-align: center;
	margin-left: 40px;
	background:#fff;
	padding: 70px 0px;
	color: #b9a067; 
}

.wrap_1200 {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}
.wrap_1000 {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}
.wrap_800 {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}
.wrap_750 {
    width: 100%;
    max-width: 750px;
    margin: 0 auto;
}
.wrap_600 {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
}

/* Forms Module
-----------------------------------------------------------*/
.input_text,
textarea {
	margin-bottom: 5px;
	padding: 12px 15px;
	border: 1px solid #777;
	border-radius: 4px;
	background: #fffcec;
}
select {
	padding: 12px 40px 12px 15px;
	border: 1px solid #777;
	border-radius: 4px;
	background: #fffcec;
	cursor: s-resize;
}
select::-ms-expand {
	display: none;
}
.selectbox {
	margin-bottom: 5px;
	position: relative;
	display: inline-block;
}
.selectbox::before {
	content: '';
	position: absolute;
	z-index: 0;
	top: 0;
	right: 0;
	background: #eee;
	height: 100%;
	width: 30px;
	border: 1px solid #777;
	border-radius: 0 4px 4px 0;
    pointer-events: none;
}
.selectbox::after {
	content: '';
	position: absolute;
	z-index: 0;
	top: 0;
	bottom: 0;
	margin: auto 0;
	right: 9px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 6px 0 6px;
	border-color: #777 transparent transparent transparent; 
    pointer-events: none;
}
.need:before,
.any:before {
	margin: 0 7px 0 0;
	padding: 3px 4px;
	color: #fff;
	font-size: 11px;
	border-radius: 4px;
}
.need:before {
	content: "必須";
	background: #ff6969;
}
.any:before {
	content: "任意";
	background: #999;
}
.input_text:hover,
textarea:hover,
select:hover {
	opacity: 0.8;
	border-color: #464646
}
label:hover {
	cursor: pointer;
	opacity: 0.8;
}
::placeholder{
  color: #aaa;
}


/* sp_nav
-----------------------------------------------------------*/
.area_drawermenu {
	visibility: hidden;
	opacity: 0;
	-webkit-transition: all .2s ease-in-out;
	-ms-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	-webkit-transform: scale(.9);
	-ms-transform: scale(.9);
	-o-transform: scale(.9);
	transform: scale(.9);
	position: fixed;
	left: 0;
	top: 0;
	z-index: 190;
	background: rgba(255,255,255,0.95);
	width: 100%;
	height: 100%;
	overflow: auto;
}
.area_drawermenu.active {
	visibility: visible;
	opacity: 1;
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}
.area_drawermenu .inner {
	width: 100%;
	max-width: 640px;
	margin: 0 auto;
	padding: 80px 20px 40px;
}
.area_drawermenu .inner p {
	margin: 0;
	padding: 3px 10px;
	background: #195f55;
	color: #fff;
	font-size: 1.2rem;
}
.list_drawermenu {
	margin: 0 0 30px;
}
.list_drawermenu li {
	position: relative;
}
.list_drawermenu li::after {
	content: '';
	position: absolute;
	right: 10px;
	top: 50%;
	margin: -3px 0 0;
	width: 8px;
	height: 8px;
	border: 2px solid;
	border-color: #aaa #aaa transparent transparent;
	transform: rotate(45deg);
 }
.list_drawermenu li a {
	display: block;
	width: 100%;
	padding: 15px 0;
	border-bottom:  1px dotted #aaa;
}
.drawermenu_closebtn {
	display: inline-block;
	visibility: hidden;
	z-index: 1001;
	position: fixed;
	bottom: 10px;
	right: 10px;
	padding: 8px 0;
	font-size: 160%;
	-webkit-transition: ease-out .5s;
	-ms-transition: ease-out .5s;
	-o-transition: ease-out .5s;
	transition: ease-out .5s;
}
.drawermenu_closebtn.active {
	visibility: visible;
	bottom: 0;
}
.header_menubtn {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 200;
	width: 54px;
	height: 54px;
	text-align: center;
	cursor: pointer;
	background: rgb(25,95,85);
}
.header_menubtn p {
    font-size: 1rem;
    text-align: center;
    margin: 6px 0 0;
    font-family: 'Poppins', sans-serif;
    color: white;
	display: none;
}
.header_menubtn p.close {
	display: none;
}
.header_menubtn.active .menu_trigger + p.menu {
	display: none;
}
.header_menubtn.active .menu_trigger + p.menu + p.close {
	display: none;
	color: white;
}
.menu_trigger,
.menu_trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu_trigger {
	position: relative;
	width: 30px;
    height: 16px;
    top: 20px;
}
.menu_trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: white;
	border-radius: 5px;
}
.menu_trigger span:nth-of-type(1) {
	top: 0;
}
.menu_trigger span:nth-of-type(2) {
	top: 7px;
}
.menu_trigger span:nth-of-type(3) {
	bottom: 0;
}
.active .menu_trigger span:nth-of-type(1) {
	-webkit-transform: translateY(7px) rotate(-25deg);
	transform: translateY(7px) rotate(-25deg);
	background: white;
}
.active .menu_trigger span:nth-of-type(2) {
	opacity: 0;
}
.active .menu_trigger span:nth-of-type(3) {
	-webkit-transform: translateY(-7px) rotate(25deg);
	transform: translateY(-7px) rotate(25deg);
	background: white;
}


/* layout_common
-----------------------------------------------------------*/
.sp_only {
	display: none;
}
.cover {
	width: 100%;
	margin: 0 auto;
}
.wrap_1120 {
	width: 94%;
	max-width: 1120px;
	margin: 0 auto;
}
.wrap_1024 {
	width: 94%;
	max-width: 1024px;
	margin: 0 auto;
}
.wrap_960 {
	width: 94%;
	max-width: 960px;
	margin: 0 auto;
}
.wrap_800 {
	width: 94%;
	max-width: 800px;
	margin: 0 auto;
}
.wrap_750 {
	width: 94%;
	max-width: 750px;
	margin: 0 auto;
}

.area_header {
	position: relative;
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
}
.area_header .box_logo {
	width: 280px;
	padding: 10px 0;
}
.area_header > div.box_nav {
	position: absolute;
	top: 20px;
	right: 0;
}
.header_nav {
	align-items: center;
}
.header_nav .info_rev {
	font-size: 1.1rem;	
	display: block;
	color: #fff;
}
 

.header_nav .tel {
	padding-left: 28px;
	font-size: 1.8rem;
	font-weight: 500;
	background: url(../images/202301/icon_freedial_wh.svg) no-repeat 0 center;
	background-size: 22px 18px;
	color: white;
}
.header_nav .btn a {
	position: relative;
	display: inline-block;
	width: 140px;
	height: 40px;
	margin-left: 10px;
	padding: 8px 0 0;
	border-radius: 5px;
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	z-index: 1;
}
.header_nav .btn a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #c3c4c4;
	border-radius: 5px;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.header_nav .btn a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.header_nav .btn.gold a {
	background: #ba9d5a;
}
.header_nav .btn.green a {
	background: #00b900;
}
.header_nav .btn.white a {
	background: white;
	color: #b99d59;
}
.header_nav .btn a span.web {
	padding-left: 20px;
	background: url(../images/202301/icon_pc.svg) no-repeat left center;
	background-size: 18px 18px;
}
.header_nav .btn a span.line {
	padding-left: 20px;
	background: url(../images/202301/icon_line_wh.svg) no-repeat left center;
	background-size: 18px 18px;
}

.global {
	width: 100%;
	background: #c3c4c4;
	border-top:  1px solid #ddd;
	text-align: center;
}
.global li {
	position: relative;
	display: inline;
	margin: 0 0 0 -4px;
	z-index: 1;
}
.global li a {
	position: relative;
	display: inline-block;
	padding: 20px 20px;
	font-size: 1.4rem;
	letter-spacing: 2px;
	z-index: 1;
}
.global li a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: white;
	transform-origin: right top;
	transform: scale(0, 0);
	transition: transform .3s;
}
.global li a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.global_sub_btn a {
	cursor: pointer;
}
.global_sub_cont {
	display: none;
	position: absolute;
	left: 0;
	width: 270px;
}
.global_sub_nav {
	background-color: #e6e6e6;
}
.global_sub_nav li {
	display: block;
	margin: 0;
	text-align: left;
}
.global_sub_nav li a {
	display: block;
}

.area_contact {
	width: 100%;
	padding: 40px 0;
	background: white;
}
.box_contact {
/* 	border-left: 1px solid #ccc; */
}
.box_contact > div {
	width: 100%;
	padding: 0 5px;
/* 	border-right: 1px solid #ccc; */
	text-align: center;
}
.box_contact p.ttl {
	margin: 0 0 5px;
}
.box_contact p.time {
	margin: 0;
	font-size: 1rem;
}
.freedial_pc {
	padding-left: 40px;
	background: url(../images/202301/icon_freedial.svg) no-repeat left center;
	background-size: 30px 30px;
	font-size: 2.8rem;
	letter-spacing: 3px;
}
.freedial_sp {
	padding-left: 25px;
	background: url(../images/202301/icon_freedial_wh.svg) no-repeat left center;
	background-size: 20px 20px;
}

.area_footer {
	width: 100%;
	background: #e6e6e6;
}
.block_footer {
	padding: 60px 0 40px;
}
.block_footer > div.box_info {
	width: 34%;
	padding-right: 25px;
}
.block_footer .box_info img {
	width: 100%;
	max-width: 80px;
	margin: 0 0 20px;
}
.block_footer .box_info h2 {
	margin: 0 0 15px;
	font-size: 1.8rem;
}
.block_footer .box_info h2 span {
	font-size: 1.2rem;
	font-weight: 400;
}
.block_footer .box_info p {
	font-size: 1.4rem;
}
.block_footer > div.box_nav1 {
	width: 22%;
	padding-right: 25px;
}
.block_footer > div.box_nav2 {
	width: 44%;
}
.block_footer .box_nav1 p.ttl,
.block_footer .box_nav2 p.ttl {
	margin: 0 0 15px;
	padding: 0 0 5px;
	border-bottom: 1px solid #195f55;
	font-size: 1.4rem;
}
.list_footer_nav li a {
	display: block;
	margin: 0 0 14px;
	padding-left: 18px;
	background: url(../images/common/icon_arr04.svg) no-repeat 0 6px;
	background-size: 14px 8px;
	font-size: 1.2rem;
}
.list_footer_nav li a:hover {
	color: #195f55;
}
.copyright {
	width: 100%;
	height: 50px;
	margin: 0;
	padding: 16px 0;
	background: #333;
	color: #fff;
	font-size: 1.1rem;
	text-align: center;
}
.pagetop {
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 2;
}
.pagetop a {
	display: block;
	width: 50px;
	height: 50px;
	padding-top: 18px;
	text-align: center;
	color: #fff;
	background: rgba(0,0,0,0.7);
}
.pagetop a:hover {
	opacity: 0.5;
}

.btnarea1 {
	padding: 50px 0 0;
	text-align: center;
}
.btnarea2 {
	padding: 15px 0 0;
	text-align: center;
}
.btnarea3 {
	padding: 25px;
	text-align: center;
	background: white;
}
.btnarea3 p {
	font-size: 2.5rem;
	line-height: 1.25;
	margin-bottom: 15px;
}
.btn01 a {
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: 260px;
	padding: 10px;
	border-radius: 5px;
	color: #fff;
	font-size: 1.4rem;
	text-align: center;
	z-index: 1;
	overflow: hidden;
}
.btn01 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #c3c4c4;
	border-radius: 5px;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.btn01 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
	border-radius: 5px;
}
.btn01.black a {
	background: #333;
}
.btn01.gold a {
	background: #195f55;
}
.btn01.green a {
	background: #00b900;
}
.btn01.white a {
	background: white;
	color: black;
}
.btn01.white a span.arr {
	padding-left: 20px;
	background: url(../images/common/icon_arr01.svg) no-repeat left center;
	background-size: 14px 8px;
}
.btn01 a span.arr {
	padding-left: 20px;
	background: url(../images/common/icon_arr03.svg) no-repeat left center;
	background-size: 14px 8px;
}
.btn01 a span.web {
	padding-left: 25px;
	background: url(../images/common/icon_pc_wh.svg) no-repeat left center;
	background-size: 18px 15px;
}
.btn01 a span.line {
	padding-left: 25px;
	background: url(../images/common/icon_line_wh.svg) no-repeat left center;
	background-size: 18px 15px;
}
.btn02 a {
	display: inline-block;
	padding: 10px;
	background: #333;
	border-radius: 5px;
	color: #fff;
	font-size: 1.4rem;
}
.btn02 a:hover {
	background: #f4a9bb;
}

.fixnav_pc {
	position: fixed;
	top: 100px;
	right: 0;
}
.fixnav_pc .btn a {
	position: relative;
	display: block;
	width: 70px;
	height: 110px;
	margin: 0 0 5px;
	border-radius: 5px 0 0 5px;
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	line-height: 1.2;
	z-index: 1;
}
.fixnav_pc .btn a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #f4a9bb;
	border-radius: 5px 0 0 5px;
	transform-origin: right top;
	transform: scale(0, 0);
	transition: transform .3s;
}
.fixnav_pc .btn a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.fixnav_pc .btn.gold a {
	background: #ba9d5a;
}
.fixnav_pc .btn.green a {
	background: #00b900;
}
.fixnav_pc .btn a span.web {
	position: absolute;
	top: 20px;
	left: 17px;
	padding-top: 30px;
	background: url(../images/202301/icon_pc_wh.svg) no-repeat 2px 0;
	background-size: 30px 25px;
}
.fixnav_pc .btn a span.line {
	position: absolute;
	top: 20px;
	left: 17px;
	padding-top: 30px;
	background: url(../images/202301/icon_line_wh.svg) no-repeat 2px 0;
	background-size: 30px 25px;
}

.fixnav_sp {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 10;
}
.fixnav_sp > div {
	display: inline-block;
}
.fixnav_sp > div.tel {
	display: inline-block;
	width: 33%;
	background: #f26a3b url(../images/202301/icon_tel_wh.svg) no-repeat center 10px;
	background-size: 20px 17px;
	border-right: 1px solid #ffffff;
}
.fixnav_sp > div.web {
	display: inline-block;
	width: 33%;
	background: #195f55 url(../images/202301/icon_pc_wh.svg) no-repeat center 10px;
	background-size: 20px 17px;
	border-right: 1px solid #ffffff;
}
.fixnav_sp > div.line {
	display: inline-block;
	width: 34%;
	background: #00b900 url(../images/202301/icon_line_wh.svg) no-repeat center 10px;
	background-size: 20px 17px;
}
.fixnav_sp > div a {
	display: block;
	padding: 30px 0 8px;
	color: #fff;
	font-size: 1.2rem;
	text-align: center;
}


/* layout_index
-----------------------------------------------------------*/
.slider {
	opacity: 0;
	transition: opacity .3s linear;
}
.slider.slick-initialized {
	opacity: 1;
	width: 100%;
	margin:  0;
}
.slick-slide {
	position: relative;
}
.slick-slide:after{
	content:'';
	background-color: rgba(0,0,0,0.7);
	position:absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 1;
	transition: .3s opacity linear;
}
.slick-current:after {
	visibility: hidden;
}
.slider_arr {
	position: absolute;
	top: 50%;
	border: none;
	cursor: pointer;
	opacity: 0.8;
	z-index: 3;
}
.arr_prev {
	left: 11%;
	width: 40px;
	height: 40px;
	margin: -20px 0 0;
	background: url(../images/common/icon_prev.svg) no-repeat center center;
	background-size: 40px 40px;
}
.arr_next {
	right: 11%;
	width: 40px;
	height: 40px;
	margin: -20px 0 0;
	background: url(../images/common/icon_next.svg) no-repeat center center;
	background-size: 40px 40px;
}
.slider_arr:hover {
	opacity: 0.6;
}

.top_contents {
	width: 100%;
	padding: 80px 0;
}
.top_contents.bg_black {
	background: #195f55;
	_background: rgb(19,19,19);
	_background: -moz-linear-gradient(45deg, rgb(19,19,19) 0%, rgb(35,49,57) 100%);
	_background: -webkit-linear-gradient(45deg, rgb(19,19,19) 0%,rgb(35,49,57) 100%);
	_background: linear-gradient(45deg, rgb(19,19,19) 0%,rgb(35,49,57) 100%);
	_filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#131313', endColorstr='#233139',GradientType=1 );
}
.top_contents.bg_gray {
	background: url(../images/202301/back03.jpg) no-repeat;
	background-size: cover;
}
.top_contents.bg_gray2 {
	background: #e6e6e6;
}
.top_contents.bg_green{
	background: #195f55;
}
.top_contents.bg_blue{
	background: #a1c8ef;
}
.top_contents.bg_white {
	background: url(../images/202301/back02.svg) no-repeat;
	background-size: cover;
}
.top_contents.bg_gold {
	background: url(../images/202301/back02.svg) no-repeat;
	background-size: cover;
	background-color: #e3e0ca;
}
.top_contents.bg_pink {
	background: #f4d5da;
}
.top_contents.bg_brwn {
	background: #f7f3ea;
}
.contents_inner {
	margin: 0 0 60px;
}
.top_contents_ttl {
	margin: 0 0 50px;
	font-size: 4rem;
	font-weight: 900;
	text-align: center;
	color: #195f55;
}
.top_contents_ttl span {
	display: block;
	padding-top: 5px;
	color: #323232;
	font-size: 1.4rem;
	font-weight: 500;
}
.btn_top{
	margin-bottom: -40px;
}
.btn_top a {
	display: block;
	width: 100%;
	max-width: 750px;
	padding: 15px;
	text-align: center;
	color: #195f55;
	margin: 0 auto;
	margin-bottom: 0;
	background: #ffffff;
	border: solid 2px #195f55;
	font-size: 130%;
	font-weight: bold;
}
.btn_top a:hover {
	opacity: .85;
}
.btn_top a span {
	font-weight: bold;
	display: block;
	font-size: 1.8rem;
	margin-bottom: 10px;
}
.btn_top_box {
	background: white;
	padding: 10px;
	color: black;
	width: 90%;
	margin: 0 auto;
}
.btn_line{
	margin: 30px 0 30px;
}
.btn_line a{
	background: #229138;
	color: #ffffff;
	display: block;
	width: 100%;
	max-width: 750px;
	padding: 15px;
	text-align: center;
	margin: 0 auto;
	margin-bottom: 0px;
	font-size: 130%;
	font-weight: bold;
	border-radius: 10px;
}
.btn_line a:hover {
	opacity: .85;
}
.top_monitor {
	width: 100%;
	max-width: 750px;
	padding: 15px;
	text-align: center;
	color: white;
	margin: 0 auto;
	background: rgb(146,128,0); /* Old browsers */
	background: -moz-linear-gradient(top,  rgb(146,128,0) 1%, rgb(138,95,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgb(146,128,0) 1%,rgb(138,95,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgb(146,128,0) 1%,rgb(138,95,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#928000', endColorstr='#8a5f00',GradientType=0 ); /* IE6-9 */
}
.top_monitor span {
	font-weight: bold;
	display: block;
	font-size: 1.8rem;
	margin-bottom: 10px;
}

.top_monitor_bnr {
	width: 750px;
	margin: 0 auto;
}

.top_monitor_bnr a:hover {
	opacity: 0.7;
}

.top_contents_about {
	width: 100%;
	background: #f4d5da;
	background: #f7f3ea
}
.top_box_about > div {
	width: 50%;
}
.top_box_about > div.txtarea {
	padding: 80px;
	position: relative;
}
.top_box_about > div.txtarea .ttl {
	font-size: 2.4rem;
	letter-spacing: 3px;
}
.top_box_about > div.txtarea p {
	line-height: 2.1;
}
.top_box_about > div.txtarea .txtarea_content p {
	text-align: left;
	display: inline-block;
	margin-bottom: 0;
	line-height: 1.75;
}
.top_box_about > div.txtarea .txtarea_content .ttl {
	text-align: left;
}
.tab_caption {
	margin: 0 0 30px;
	padding: 10px 0;
	border-top: 1px solid #ba9d5a;
	border-bottom: 1px solid #ba9d5a;
	color: #ba9d5a;
	text-align: center;
}
.list_tab {
	width: 100%;
	margin: 0 0 40px;
}
.list_tab ul {
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content :flex-start;
	width: 100%;
}
.list_tab ul li {
	-webkit-transition: all .2s ease-in-out;
	-ms-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	width: 25%;
	padding: 8px 0;
	background: #333;
	border-right: 1px solid #777;
	color: #fff;
	font-size: 2rem;
	line-height: 1.4;
	text-align: center;
}
.list_tab li span {
	display: block;
	color: #ba9d5a;
	font-size: 1rem;
}
.list_tab li:last-child {
	border-right: none
}
.list_tab li:hover {
	background: #777;
	cursor: pointer;
}
.list_tab li.activetab:hover {
	cursor: default;
}
.list_tab li.activetab {
	position: relative;
	background: #f4a9bb;
}
.list_tab li.activetab::before {
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	left: 50%;
	bottom: -12px;
	margin-left: -12px;
	border-top: 12px solid #f4a9bb;
	border-right: 12px solid transparent;
	border-left: 12px solid transparent;
}
.box_menu > div {
	position: relative;
	background: #fff;
	box-shadow: 1px 1px 7px rgba(0,0,0,.1);
}
.box_menu > div > a {
	display: block;
	width: 100%;
	height: 100%;
}
.box_menu > div > a::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: '';
	background: rgba(186,157,90,0.2);
	transform-origin: right top;
	transform: scale(0, 0);
	transition: transform .3s;
}
.box_menu > div a:hover::after {
	transform-origin: left top;
	transform: scale(1, 1);
}
.box_menu > div a > div img {
	transition: .25s;
}
.box_menu > div a:hover > div img {
	transform: scale(1.05);
}
.box_menu > div a > div {
	overflow: hidden;
}
.box_menu .txtarea {
	padding: 15px 15px 25px 15px;
}
.box_menu .txtarea > .ttl + p {
	margin-bottom: 10px;
}
.box_menu .ttl {
	margin: 0 0 10px;
	color: #195f55;
	font-size: 1.8rem;
	font-weight: 500;
}
.box_menu .ttl span {
	font-size: 1.2rem;
}
.box_menu .txtarea .list_tag {
	position: absolute;
	left: 15px;
	bottom: 15px;
}
.box_menu .txtarea .list_tag li {
	display: inline-block;
	margin: 0 2px 2px 0;
	padding: 3px 5px;
	background: #ed7d9c;
	color: #fff;
	font-size: 1.2rem;
	line-height: 1;
}
.box_menu .btn{
	position: absolute;
	bottom:0;
	right: 0;
	text-align: right;
	padding: 10px;
	margin: 0;
}
.box_menu .btn::after{
	content: "▶︎";
	margin: 0 0 0 5px;
}
.box_case {
	margin-bottom: 20px;
}
.box_case > div {
	border-top: 10px solid #333333;
	border-bottom: 10px solid #333333;
}
.case_price,
.case_method {
	text-align: center;
	font-size: 2rem;
	justify-content: space-between;
	background: white;
	padding: 5px;
}
.case_age {
	padding: 5px;
	background: #333333;
	color: white;
	text-align: center;
	font-size: 2.2rem;
}
.case_price li,
.case_method li {
	width: 50%;
}
.case_price li:first-child,
.case_method li:first-child {
	border-right: 2px solid #333333;
}
.box_news {
	padding: 30px;
	background: #fff;
}
.list_news li {
	position: relative;
}
.list_news li a {
	display: table;
	width: 100%;
	margin: 0;
	padding: 25px 25px 25px 10px;
	border-bottom: 1px dotted #aaa;
}
.list_news li:last-child a {
	border-bottom: none;
}
.list_news li span {
	display: table-cell;
}
.list_news li span.date {
	width: 120px;
	color: #195f55;
}
.list_news li::after {
	content: '';
	position: absolute;
	right: 10px;
	top: 50%;
	margin: -3px 0 0;
	width: 8px;
	height: 8px;
	border: 2px solid;
	border-color: #aaa #aaa transparent transparent;
	transform: rotate(45deg);
 }
.list_news li a::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: '';
	background: rgba(186,157,90,0.2);
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .7s;
}
.list_news li a:hover::after {
	transform-origin: left top;
	transform: scale(1, 1);
}

.box_post > div {
	position: relative;
	background: #f5f5f5;
}
.box_post .label {
	display: block;
	margin: 0 0 10px;
}
.box_post .label a {
	display: inline-block;
	margin: 0 3px 1px 0;
	padding: 3px 10px;
	background: #195f55;
	color: #fff;
	font-size: 11px;
	text-align: center;
	line-height: 1;
}
.box_post .label a:hover {
	background: #ed7d9c;
}
.box_post .photoarea {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 200px;
	background: #ccc;
}
.box_post .photoarea img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	-webkit-object-fit: cover;
	font-family: 'object-fit: cover;'
}
.box_post .photoarea::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: '';
	background: rgba(244,169,187,0.4);
	transform-origin: right top;
	transform: scale(0, 0);
	transition: transform .3s;
}
.box_post .photoarea:hover::after {
	transform-origin: left top;
	transform: scale(1, 1);
}
.box_post .txtarea {
	padding: 15px;
}
.box_post .ttl {
	margin: 0 0 15px;
	font-size: 1.6rem;
	font-weight: 400;
}
.box_post a:hover .ttl {
	color: #ed7d9c;
}
.box_post .date {
	margin: 0 0 5px;
	color: #888;
	font-size: 1.1rem;
	text-align: right;
}
.box_sub_menu {
	border: 3px solid #f4a9bb; 
	padding: 20px;
}
.box_reason .txtarea {
	background: #323232;
	padding: 25px;
	color: white;
}
.box_reason .txtarea .title {
	font-size: 3rem;
	text-align: center;
	margin-bottom: 15px;
	line-height: 1.25;
}
.box_reason .txtarea .toggle_box{
	
}
.box_reason .txtarea .toggle_box .txtWrap h3 {
  position: relative;
  margin-bottom: 15px;
  padding: 15px 15px 15px 60px;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
}
.box_reason .txtarea .toggle_box.point1 .txtWrap h3 {
  background: url(../images/bg_point1_02.png) 50% 50% repeat;
}
.box_reason .txtarea .toggle_box.point2 .txtWrap h3 {
  background: url(../images/bg_point2_02.png) 50% 50% repeat;
}
.box_reason .txtarea .toggle_box.point3 .txtWrap h3 {
  background: url(../images/bg_point3_02.png) 50% 50% repeat;
}
.box_reason .txtarea .toggle_box.point4 .txtWrap h3 {
  background: url(../images/bg_point4_02.png) 50% 50% repeat;
}
.box_reason .txtarea .toggle_box .txtWrap h3:before {
  position: absolute;
  content: "";
  top: 50%;
  left: 10px;
  width: 36px;
  height: 34px;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
  background: url("../images/icon_point_arrow01@2x.png") top left no-repeat;
  background-size: 36px 34px;
}
.box_reason .txtarea .toggle_box .txtWrap h3:after {
  position: absolute;
  content: "＋";
  top: 10px;
  right: 10px;
  width: 40px;
  height: 20px;
	font-size: 22px;
	text-align: center;
}
.box_reason .txtarea .toggle_box .txtWrap h3.active:after {
  content: "ー";
}
.box_reason .txtarea .toggle_box .txtWrap .txt{
	display: none;
}



.box_reason_point {
	font-size: 4rem;
	line-height: 1;
	font-weight: bold;
	font-style: normal;
	font-family: 'Noto Sans JP','ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif;
}
.box_reason_point span{
	font-size: 130%;
}
.box_reason .btn01{
	text-align: center;
	padding-top: 25px;
}
.box_reason.col2 > div {
	width: 48%;
	margin: 0 0 4%;
}
.box_reason.col2 > div:last-child {
	margin-bottom: 0;
}
.box_reason.col2 > div:nth-child(even) {
	position: relative;
	top: 30px;
}
.box_reason.col2 > div:nth-child(even) .box_reason_point {
	text-align: right;
}
.bg_doctor{
	background: url("../images/202301/doctor.jpg") no-repeat center top;
	background-size: 100%;
}
.doctors_box {
	justify-content: space-between;
}
.doctors_box_img {
	width: 38%;
}
.doctors_box_text {
	width: 100%;
}
.position {
	margin-bottom: 10px;
	line-height: 1;
}
.doctor_name_wrap {
	margin-bottom: 25px;
}
.doctor_name_wrap + p {
	margin-bottom: 10px;
}
.doctor_name {
	font-size: 4rem;
	line-height: 1;
	margin-bottom: 0;
}
.doctor_name span {
	font-size: 1.5rem;
	margin-left: 10px;
}
.doctors_box_history {
	justify-content: space-between;
	font-size: 0;
	margin-bottom: 40px;
	margin-top: 730px;
	padding: 0 20px;
	display: flex;
	flex-wrap: wrap;
}
.doctors_box_history dt,
.doctors_box_history dd {
	display: inline-block;
	font-size: 1.5rem;
	margin-bottom: 5px;
}
.doctors_box_history dt {
	width: 65px;
	vertical-align: top;
}
.doctors_box_history dd {
	width: calc(100% - 65px);
}
.doctors_box_text .btn01 {
	justify-content: space-between;
}
.doctors_box_text .btn01 > a {
	width: 49%;
	max-width: initial;
}

.shaｍpooWrap {
  padding-top: 0;
	background: url("../images/202301/bg_shampoo.jpg") center bottom no-repeat #ffffff;
  background-size: 100%;
	margin-bottom: 10vw;
}
.shaｍpooWrap .ttl {
	margin: 0 auto;	
	background: #ffd600;
	text-align: center;
	padding: 10px 0;
} 
.shaｍpooWrap .ttl2 {
	margin: 0 auto;	
	background: rgba(255,255,255,0.8);
	text-align: center;
	padding-bottom: 40px;
} 
.shampoo_reason{
	margin: clamp(300px,70vw,580px) 0 0 0;
}
.shampoo_reason .shampoo_reason_title{
	background: #247279;
	color: #ffd600;
	text-align: center;
	padding: 5px;
	font-size: clamp(16px,5vw,28px);
}
.shampoo_reason dl{
	margin:5px 0 0 0;
	display: flex;
	justify-content: space-between;
	color: #ffffff;
}
.shampoo_reason dt{
	width: 70px;
	text-align: center;
	background: #247279;
	padding: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 7vw;
	font-size: clamp(14px,6vw,40px);
}
.shampoo_reason dd{
	width: calc(100% - 70px);
	text-align: left;
	background: #247279;
	padding: 10px;
	font-size:clamp(14px,4vw,22px);
	border-left: solid 2px #ffffff;
	display: flex;
	align-items: center;
}
.shaｍpoo_bg_Wrap {
  background: none;
  padding: 30px;
}
.shampoo_txt_box {
	display: table;
  table-layout: fixed;
  font-size: 140%;	
	margin: 20px auto 30px;
	border: 1px dotted #38608f;
	padding: 30px;
	background-color: rgba(255,255,255,0.7) ;
	text-align: left;
}
.shampoo_stepWrap {
  background: #fff;
}
.step_area {
    max-width: 960px;
    margin: 0 auto;
    padding: 10px 15px 30px;
    box-sizing: border-box;
}
.step_area .title{
	text-align: center;
	color: #195f55;
	font-size: clamp(16px,5vw,28px);
	font-weight: bold;
	margin-bottom:20px;
}
.shampooBox01 {
	display: block;
	margin-bottom: 20px;
} 
.shampooBox01 .tit {
  margin-bottom: 20px;
  padding: 10px;
  background-color: #195f55;
  color: #fff;
  text-align: center;
  font-size: 120%;
}
.shampooBox01 .txt {
  margin-bottom: 20px;
  text-align: left;
}
.step_area .photoarea {
    float: left;
    width: 25%;
    margin-right: 30px;
}
.step_area .textarea {
	text-align: left;
	font-size: 140%;
}
/*症例*/
.top_case_area{
	border-top:solid 2px #ffffff;
	padding: 50px 20px 0px 20px;
	margin: 30px 0 0 0;
	color: #ffffff;
}
.top_case_area .number{
	background: #ffffff;
	padding: 0 10px;
	color: #195f55;
	font-size: 2rem;
	font-weight: bold;
	display: inline-block;
	margin: 0 0 10px 0;
}
.top_case_area .name{
	margin: 0 0 10px 0;
	font-size: 1.4rem;
}
.top_case_area .ba{
	position: relative;
	margin: 0 0 10px 0;
}
.top_case_area .ba .topimage{
	position: absolute;
	top: -139px;
	right: 0;
	width: 170px;
	height: 139px;
}
.top_case_area .detail{
	margin-bottom: 5px;
}
.top_case_area .btn_red{
	background: #ff3c28;
	padding: 5px;
	text-align: center;
	font-size: 2rem;
}
.top_case_area .detail_box{
	display: none;
	padding: 10px 0;
}
.top_case_area .detail_box .image{
	margin: 0 0 10px 0;
}
.top_case_area .detail_box table {
  margin: 0 auto 30px;
  border-collapse: collapse;
	color: #000000;
}
.top_case_area .detail_box table th,
.top_case_area .detail_box table td {
  padding: 0.5em;
  border: solid 1px #000;
  background: #fff;
}
.top_case_area .detail_box table th {
  background: #e4e4e4;
  width: 30%;
	text-align: left;
	vertical-align: top;
	font-weight: normal;
}
.top_case_area .detail_box .titleBar {
  margin: 0 0 15px;
  padding: 0.25em 1em;
  background: #072b90;
  color: #fff;
  font-size: 2rem;
  text-align: center;
}
.top_case_area .detail_box .titleBar.yellow {
  background: #ffff64;
  color: #000;
}
.top_case_area .detail_box .balloon {
  margin: 0 0 10px;
  background: #fff;
  border-radius: 5px;
  padding: 2.5vw;
  text-align: left;
	 color: #000;
}
.top_case_area .interview .title{
	text-align: center;
	margin: 0 0 10px 0;
}
.top_case_area .interview .title img{
	width: 70%;
}
.top_voice_area .voice_box{
	display: flex;
	justify-content: space-between;
	margin: 0 0 20px 0;
}
.top_voice_area .voice_box.clinic{
	flex-direction: row-reverse;
}
.top_voice_area .voice_box dt{
	width:60px;
}
.top_voice_area .voice_box dd{
	width:calc(100% - 80px);
	background: #ffffff;
	border-radius:15px;
	padding: 20px;
	position: relative;
}
.top_voice_area .voice_box.clinic dd{
	color: #195f55;
	font-weight: bold;
}
.top_voice_area .voice_box dd::before{
	content: "";
	position: absolute;
	left: -6px;
	top: 0;
	background: url(../images/202301/img_ballon_l.png) no-repeat left top;
	background-size: 20px;
	width: 20px;
	height: 20px;
}
.top_voice_area .voice_box.clinic dd::before{
	right: -6px;
	left: auto;
	top: 0;
	background: url(../images/202301/img_ballon_r.png) no-repeat left top;
	background-size: 20px;
}













.top_voice_area .voice_user{}

/* layout_subpage
-----------------------------------------------------------*/
.sub_mainimg {
	width: 100%;
	height:100%;	
	padding: 40px 0;
	text-align: center;
	background: url(../images/common/sub_img_about.jpg?202105) no-repeat center center;
	background-size: cover;
}
.sub_mainimg .ttl {
	margin: 0;
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.2;
	text-align: center;
}
.sub_mainimg .ttl span {
	display: block;
	padding-top: 5px;
	color: #195f55;
	font-size: 1.4rem;
	font-weight: 500;
}
.sub_mainimg.page_about {
	/* background: url(../images/common/sub_img_about.jpg) no-repeat center center;
	background-size: cover; */
}

.topicpath {
	overflow: hidden;
	padding: 5px 0;
	border-bottom: 1px dotted #ccc;
}
.topicpath ul {
	margin: 0;
	padding: 3px 0 0;
	list-style: none;
}
.topicpath li {
	display: inline;
	font-size: 1.2rem;
}
.topicpath li a {
	padding-right: 8px;
	color: #195f55;
}
.topicpath li a:hover {
	color: #ed7d9c;
}
.topicpath li a:after {
	content: "\f0da";
	font-family:'Font Awesome 5 Free','FontAwesome';
	padding-left: 12px;
}
.sub_contents {
	width: 100%;
	padding: 40px 0 80px;
}
.sub_contents_block {
	margin: 0 0 80px;
}
.sub_contents_block .innner {
	margin: 0 0 50px;
}
.sub_contents_ttl1 {
	margin: 0 0 30px;
	padding: 25px 30px;
	background: #f4a9bb;
	color: #fff;
	font-size: 2.4rem;
	font-weight: 500;
	letter-spacing: 4px;
}
.sub_contents_ttl2 {
	margin: 0 0 30px;
	padding: 10px 30px;
	background: #195f55;
	color: #fff;
	font-size: 2.1rem;
	font-weight: 500;
	letter-spacing: 2px;
}
.sub_contents_ttl3 {
	margin: 0 0 30px;
	padding: 0 0 5px;
	border-bottom: 1px solid #bea05d;
	color: #bea05d;
	font-size: 1.8rem;
	font-weight: 500;
}
.sub_contents_ttl4 {
	margin: 0 0 15px;
	padding: 5px 20px;
	background: #f4a9bb;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
}
.sub_contents_ttl5 {
	margin: 0 0 15px;
	padding: 5px 20px;
	background: #ba9d5a;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
}

.sub_contents_box1 {
	width: 100%;
	padding: 50px;
	background: #f5f5f5;
}
.ttl_box {
	color: #ed7d9c;
	background: #eee9d4;
	padding: 10px 60px;
}
.ttl_h2 {
   position: relative;
}
.ttl_h2 .att_effect {
    position: absolute;
    text-align: right;
    margin: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 8px;
    color: #fff;
    font-size: 14px;
}
.tbl_line {
	margin-bottom: 25px;
	padding-bottom: 25px;
	border-bottom: 1px solid #d7d7d7;
}

/* layout_price */
.nav_menu_price {
	justify-content :flex-start;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	-webkit-box-pack: start;
	width: 100%;
	margin: 0 0 30px;
}
.nav_menu_price > div {
	width: 23.5%;
	margin: 0 2% 1% 0;
}
.nav_menu_price > div:nth-child(4n) {
	margin: 0 0 1% 0;
}
.nav_menu_price > div a {
	display: block;
	padding: 10px 0;
	background: #fff;
	border: 1px solid #b9b5aa;
	border-radius: 5px;
	color: #b9b5aa;
	font-size: 1.3rem;
	text-align: center;
}
.nav_menu_price > div a:hover {
	background: #333;
	border: 1px solid #333;
	color: #fff;
}
.block_pricelist {
	margin: 0 0 50px;
}

/* layout_clinic */
.box_dr {
	justify-content :space-between;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	width: 100%;
}
.box_dr .txtarea {
	width: 70%;
}
.box_dr .photoarea {
	width: 25%;
}
.box_dr .name {
	margin: 0 0 20px;
	padding: 0 0 10px;
	border-bottom: 1px solid #ccc;
	font-size: 2.4rem;
}
.box_dr .name span {
	margin: 0 0 0 20px;
	font-size: 1rem;
}
.list_profile {
	overflow: hidden;
	width: 100%;
}
.list_profile dt {
	float: left;
	width: 100px;
	color: #bea05d;
}
.list_profile dd {
	float: left;
	width: calc(100% - 125px);
	margin: 0 0 20px;
}
.list_motto {
	width: 100%;
}
.list_motto dt {
	color: #bea05d;
	font-weight: 500;
}
.list_motto dd {
	width: 100%;
	margin: 0 0 20px;
	padding: 0 0 20px;
	border-bottom: 1px dotted #ccc;
}

/* layout_menu */
.nav_menu {
	justify-content :space-between;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	width: 100%;
	padding: 40px 0 0;
}
.nav_menu > div {
	width: 24%;
}
.nav_menu > div a {
	display: block;
	padding: 10px 0;
	background: #fff;
	border: 1px solid #ed7d9c;
	border-radius: 5px;
	color: #ed7d9c;
	font-size: 1.3rem;
	text-align: center;
}
.nav_menu > div a:hover {
	background: #333;
	border: 1px solid #333;
	color: #fff;
}
.wrap_fixnav_menu {
	position: fixed;
	top: 0;
	width: 100%;
	padding: 10px 0;
	background: rgba(244,169,187,0.7);
	z-index: 99;
}
.fade {
	display: none;
}
.fixnav_menu {
	justify-content :space-between;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	width: 100%;
}
.fixnav_menu > div {
	width: 24%;
}
.fixnav_menu > div a {
	display: block;
	padding: 10px 0;
	background: #fff;
	border-radius: 5px;
	color: #ed7d9c;
	font-size: 1.3rem;
	text-align: center;
}
.fixnav_menu > div a:hover {
	background: #333;
	color: #fff;
}
#m01,
#m02,
#m03,
#m04 {
	margin-top: -65px;
	padding-top: 65px;
}

.box_menu1 {
	justify-content :space-between;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	width: 100%;
}
.box_menu1 .txtarea {
	width: 66%;
}
.box_menu1 .photoarea {
	width: 30%;
}
.box_menu2 {
	justify-content :space-between;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	width: 100%;
}
.box_menu2 .title_area {
	width: 20%;
	color: #ed7d9c;
	background: #eee9d4;
	padding: 10px;
	text-align: center;
}

.box_menu2 .txtarea {
	width: 78%;
}

.list_osusume {
	justify-content :space-between;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	width: 100%;
}
.list_osusume li {
	width: 49%;
	margin: 0 0 2%;
	padding: 15px 15px 15px 50px;
	background: #eee9d4 url(../images/common/icon_check.svg) no-repeat 15px 15px;
	background-size: 25px 25px;
}
.list_step {
	overflow: hidden;
	width: 100%;
}
.list_step dt {
	float: left;
	width: 100px;
	margin-right: 25px;
	padding: 3px 10px;
	background: #bea05d;
	color: #fff;
	font-size: 1.3rem;
}
.list_step dd {
	float: left;
	width: calc(100% - 125px);
	margin: 0 0 30px;
}
.list_step dd span {
	display: block;
	color: #bea05d;
	font-size: 1.6rem;
	font-weight: 500;
}
.list_point {
	overflow: hidden;
	width: 100%;
}
.list_point dt {
	float: left;
	width: 100px;
	margin-right: 25px;
	padding: 3px 10px;
	background: #7d7d7d;
	color: #fff;
	font-size: 1.3rem;
}
.list_point dd {
	float: left;
	width: calc(100% - 125px);
	margin: 0 0 30px;
	padding-bottom: 20px;
	border-bottom: dotted 1px #ccc
}
.list_qa dt {
	margin: 0 0 5px;
	padding: 0 0 5px 35px;
	background: url(../images/common/icon_qa_q.svg) no-repeat left 2px;
	background-size: 18px 18px;
	color: #bea05d;
}
.list_qa dd {
	margin: 0 0 20px;
	padding: 0 0 20px 35px;
	background: url(../images/common/icon_qa_a.svg) no-repeat left 2px;
	background-size: 18px 18px;
	border-bottom: 1px dotted #aaa;
}

/* layout_post */
.cover_post {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
}
.main {
	width: 72%;
}
.side {
	width: 24%;
}
.box_post2 .info {
	padding: 10px 30px;
	background: #f5f5f5;
	border-bottom: 1px solid #ddd;
}
.box_post2 .label {
	display: block;
	margin: 0 0 5px;
}
.box_post2 .label a {
	display: inline-block;
	margin: 0 3px 1px 0;
	padding: 3px 10px;
	background: #195f55;
	color: #fff;
	font-size: 1.1rem;
	text-align: center;
	line-height: 1;
}
.box_post2 .label a:hover {
	background: #ed7d9c;
}
.box_post2 .date {
	margin: 0;
	 color: #777;
	 font-size: 1.3rem;
}
.box_post2 .ttl {
	margin: 0;
	padding: 20px 30px;
	background: #195f55;
	color: #fff;
	font-size: 2.1rem;
	font-weight: 500;
	letter-spacing: 1px;
}
.entry-content {
	margin: 0 0 40px;
	padding: 30px;
	background: #f5f5f5;
}
.entry-content ul {
	margin-bottom: 27px;
	list-style: disc;
}
.entry-content ol {
	margin-bottom: 27px;
	list-style: decimal;
}
.entry-content li {
	margin: 0 0 5px 25px;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	margin-bottom: 20px;
}
.entry-content h1 {
	font-size: 200%;
}
.entry-content h2 {
	font-size: 180%;
}
.entry-content h3 {
	font-size: 160%;
}
.entry-content h4 {
	font-size: 150%;
}
.entry-content h5 {
	font-size: 140%;
}
.entry-content h6 {
	font-size: 120%;
}
.entry-content img {
	max-width: 100%;
}
.entry-content a {
	color: #4954eb;
	text-decoration: underline;
}
.entry-content a:hover {
	color: #189249;
}
.side_box {
	margin: 0 0 40px;
	font-size: 1.3rem;
}
.side_box p {
	margin: 0 0 5px;
	padding: 3px 15px;
	background: #333;
	color: #fff;
}
.side_box ul {
	width: 100%;
	margin: 0;
	list-style: none;
}
.side_box li {
	margin: 0;
	border-bottom: 1px dotted #ccc;
}
.side_box li a {
	display: inline-block;
	padding: 8px 5px 8px 12px;
	background: url(../images/common/icon_arr01.svg) no-repeat 0 13px;
	background-size: 8px 8px;
}
.side_box a:hover {
	color: #ed7d9c;
}
.paging{
	overflow: hidden;
	margin: 0 0 30px ;
	list-style-type: none;
	text-align: center;
}
.paging li {
	display: inline-block;
	margin-left: 5px;
}
.paging a,
.paging span{
	display: block;
	text-align: center;
	padding: 5px 15px;
	border: 1px solid #ed7d9c;
	border-radius: 5px;
	color: #ed7d9c;
	font-size: 1.4rem;
}
.paging a:hover{
	color: #fff;
	background: #333;
	border: 1px solid #333;
}

a.pages {
	display: inline-block;
	text-align: center;
	margin: 0 0 5px;
	padding: 5px 15px;
	border: 1px solid #126EAE;
	border-radius: 5px;
	color: #126EAE;
	font-size: 1.4rem;
}
span.pages {
	display: inline-block;
	text-align: center;
	margin: 0 0 5px;
	padding: 5px 15px;
	background: #126EAE;
	border: 1px solid #126EAE;
	border-radius: 5px;
	color: #fff;
	font-size: 1.4rem;
}
a.pages:hover{
	color: #fff;
	background: #189249;
	border: 1px solid #189249;
}

/* layout_contact */
.btnarea_contact {
	padding: 30px 0 0;
	text-align: center;
}
.btnarea_contact li {
	display: inline-block;
	margin: 0 3px;
}
.btnarea_contact .btnstyle01 {
	display: inline-block;
	padding: 12px 30px;
	color: #fff;
	border-radius: 5px;
	background: #333;
}
.btnarea_contact .btnstyle02 {
	display: inline-block;
	padding: 12px 30px;
	color: #fff;
	border-radius: 5px;
	background: #333;
}
#head_top {
	background: rgb(25,95,85);
	margin-top: -23px;
}
.txtbox li{
	font-size: 1.3rem;
	margin-bottom: 5px;
	display: inline-block;
	margin-right: 5px;
}
.txtbox li:last-child {
	margin-bottom: 0;
}
.txtarea_content {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	text-align: center;
	width: 70%;
}
.kansaibobank {
	width: 100%;
	display: block;
	max-width: 500px;
}
.top_box_about .img_box {
	height: 600px;
}
.top_box_about > div.txtarea .txtarea_content p.info_table_title,
.info_table_title {
	font-size: 1.3rem;
	text-align: left;
	display: block;
	margin-bottom: 5px;
	font-weight: bold;
}
.info_table {
	margin-bottom: 10px;
}
.info_table dl {
	display: table;
	margin-bottom: 0;
	background: white;
	width: 100%;
	border: 1px solid white;
	border-bottom: 0;
}
.info_table dl:last-child {
	border-bottom: 1px solid white;
}
.info_table dt,
.info_table dd {
	font-size: 1.2rem;
	display: table-cell;
	padding: 3px 5px;
	text-align: left;
	background: white;
}
.info_table dt {
	width: 20%;
	background: #f5f5f5;
}
.info_table dd {
	width: 80%;
}
.info_table_text {
	text-align: left;
	display: block;
	font-size: 1.2rem;
}
.box_menu .ttl a {
	color: #ba9d5a;
	text-decoration: underline;
	cursor: pointer;
}
.box_menu .ttl a:hover {
	color: black;
}
.txtbox li a {
	background: #ba9d5a;
	padding: 5px 8px;
	color: white;
	text-align: center;
	font-weight: bold;
	cursor: pointer;
	display: block;
	border-radius: 5px;
}
.txtbox li a:hover {
	background: black;
}
.txtarea_content_sensei {
	margin-bottom: 15px;
	position: relative;
}
.txtarea_content_sensei:before {
	content: "";
	display: inline-block;
	background: url(../images/index/sensei.png) no-repeat;
	background-size: contain;
	width: 100px;
	height: 130px;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 2;
}
.txtarea_content_sensei_text {
	width: calc(100% - 95px);
	padding: 15px;
	background: white;
	border-radius: 5px;
	position: relative;
}
.txtarea_content_sensei_text:before {
	content: "";
	position: absolute;
	top: 50px;
	left: 100%;
	margin-top: -11px;
	border: 11px solid transparent;
	border-left: 11px solid white;
}
.top_box_about > div.txtarea .txtarea_content_sensei h2 {
	font-size: 1.8rem;
	margin-bottom: 10px;
	letter-spacing: 0;
}
.top_box_about > div.txtarea .txtarea_content .txtarea_content_sensei p {
	font-size: 1.3rem;
	display: block;
	line-height: 1.5;
}
.top_main_content {
	background: #195f55;
	padding: 100px 0 120px;
}
.top_main_content_box01 {
	background: #e6e6e6;
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
	margin-bottom: 50px;
	justify-content: space-between;
}
.top_main_content_box01_img {
	width: 30%;
}
.top_main_content_box01_text {
	width: 70%;
	padding: 30px;
}
.top_main_content_box01_text01 {
	font-size: 3rem;
	text-align: center;
	color: #b5985a;
	margin-bottom: 20px;
	line-height: 1.25;
	font-weight: bold;
}
.top_main_content_box01_text02 {
	font-size: 1.5rem;
	margin-bottom: 0;
	line-height: 1.5;
}
.top_main_content_box02 {
	background: none;
	padding: 0 20px;
	box-shadow: none;
	max-width: 900px;
	width: 100%;
	margin: 0 auto;
	margin-bottom: 50px;
}
.top_main_content_box02:last-child {
	margin-bottom: 0;
}
.top_main_content_box02_wrap {
	justify-content: space-between;
}
.top_main_content_box02_img {
	width: 100%;
}
.top_main_content_box02_title {
	text-align: center;
	font-size: 4.5rem;
	color: #ffffff;
	margin: -10px 0 10px 0;
}
.top_main_content_box02_title span{
	border: solid 2px #ffffff;
	padding: 0px 5px 4px;
	margin: 0 5px 0 0;
	font-size: 2.6rem;
	vertical-align: 6px;
}
.top_main_content_box02_text {
	width: 100%;
	padding: 25px 50px;
	text-align: left;
}
.top_main_content_box02_text img {
	width: 226px;
	display: block;
	margin: 0 auto;
	margin-bottom: 20px;
}

.top_main_content_box02_text p {
	font-size: 1.5rem;
	color: white;
	line-height: 1.5;
	margin-bottom: 20px;
}
.top_main_content_box02_text a {
	display: block;
	background: white;
	padding: 10px;
	border-radius: 5px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto;
	width: 200px;
	font-size: 1.7rem;
}
.top_main_content_box02_text a:hover {
	background: #e7e7e7;
}
.top_main_content_box02_text a span:after {
	display: none;
}
.top_main_content_box02_text a span:before {
	content: "";
	display: inline-block;
	width: 12px;
	height: 12px;
	background: url(../images/common/icon_arr01.svg) no-repeat;
	background-size: contain;
	margin-left: 0px;
	margin-right: 5px;
	transition: .25s;
}
.top_main_content_box02_text a:hover span:after {
	opacity: .75;
}
.bg_black .top_contents_ttl,
.bg_green .top_contents_ttl{
	color: white;
}
.bg_black .top_contents_ttl span,
.bg_green .top_contents_ttl span{
	color: white;
}
.box_acsses_wrap {
	padding: 50px;
	background: white;
	border: 0;
	border-left: 40px solid #c21500;
	-o-border-image: -o-linear-gradient(bottom, #8a5f00 0%, #928000 100%);
	border-image: -webkit-gradient(linear, left bottom, left top, from(#8a5f00), to(#928000));
	border-image: linear-gradient(to top, #8a5f00 0%, #928000 100%);
	border-image-slice: 1;
	margin-bottom: 30px;
}
.box_acsses {
	font-size: 2rem;
	border: 0;
}
.box_acsses th,
.box_acsses td {
	display: block;
	text-align: left;
	background: none;
	border: 0;
}
.box_acsses th {
	font-weight: bold;
	border-bottom: 1px solid #ba9d5a;
}
.box_acsses td {
	border-bottom: 0;
}
.acsses_map iframe {
	width: 100%;
	height: 375px;
	border: 0;
}

/* layout_etc. */
.list_risk {
	overflow: hidden;
	width: 100%;
	font-size: 80%;
}
.list_risk dt {
	float: left;
	width: 180px;
	color: #195f55;
}
.list_risk dd {
	float: left;
	width: calc(100% - 200px);
	margin: 0 0 10px;
	padding: 0 0 10px;
	border-bottom: 1px dotted #ccc;
}
.list_risk dd:last-child {
	border-bottom: none;	
}
.box_risk {
	word-break: break-all;
	width: 100%;
	font-size: 80%;	
	border: 1px dotted #ccc;
	margin: 0 0 5px;
	padding: 8px;	
}

/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 1120px) {
.global li a {
	padding: 20px 10px;
}
.freedial_pc {
	padding-left: 30px;
	background: url(../images/common/icon_freedial.svg) no-repeat left center;
	background-size: 25px;
	font-size: 2.4rem;
	letter-spacing: 1px;
}
.top_box_about > div.txtarea {
	padding: 30px;
}
.top_box_about > div.txtarea .ttl {
	font-size: 2.1rem;
	letter-spacing: 2px;
}
.top_box_about > div.txtarea p {
	line-height: 1.8;
}
.top_box_about > div.txtarea p br {
	display: none;
}
.arr_prev {
	left: 0;
	width: 24px;
	height: 24px;
	margin: -12px 0 0;
	background: url(../images/common/icon_prev.svg) no-repeat center center;
	background-size: 24px 24px;
}
.arr_next {
	right: 0;
	width: 24px;
	height: 24px;
	margin: -12px 0 0;
	background: url(../images/common/icon_next.svg) no-repeat center center;
	background-size: 24px 24px;
}
.txtarea_content {
	position: static;
	width: 100%;
	transform: inherit;
}
.top_box_about > div.txtarea .txtarea_content p {
	font-size: 1.3rem;
	line-height: 1.5;
}
.top_box_about > div.txtarea .txtarea_content .ttl {
	font-size: 1.7rem;
	margin-bottom: 5px;
}
.top_box_about .img_box {
	height: auto;
}


}


@media screen and (max-width: 768px) {
.sp_only {
	display: block;
}
.pc_only {
	display: none;
}
.header_menubtn {
	display: block;
}
	.area_footer{
		margin-bottom: 50px;
	}
.area_header .box_nav,
.global,
.area_footer .box_nav1,
.area_footer .box_nav2 {
	display: none;
}
.area_header {
	position: fixed;
	top: 0;
	z-index: 99;
	background: rgb(25,95,85);
}
.area_header .box_logo {
	width: 200px;
	padding: 12px 0 12px 15px;
}
.area_header .box_logo img {
	vertical-align: bottom;
}
.box_contact {
	border-left: none;
}
.box_contact > div {
	width: 100%;
	margin: 0 0 20px;
	padding: 0;
	border-right: none;
}
.block_footer > div.box_info {
	width: 100%;
	padding: 0;
	text-align: center;
}
.copyright {
	height: 56px;
}
.pagetop {
	position: fixed;
	bottom: 0;
	right: 0;
}

/* layout_index */
.cover_slider {
	margin-top: 54px;
}
.top_contents {
	padding: 40px 0;
}
.top_contents_ttl {
	margin: 0 0 30px;
	font-size: 4rem;
}
.top_contents_ttl span {
	font-size: 1.2rem;
}
.top_box_about > div {
	width: 100%;
}
.top_box_about > div.txtarea {
	padding: 30px;
}
.list_tab ul li {
	padding: 10px 0;
	font-size: 1.6rem;
}
.box_menu .txtarea p {
	font-size: 1.3rem;
}
.box_news {
	padding: 20px;
	background: #fff;
}
.list_news li a {
	display: inline-block;
	width: 100%;
	margin: 0;
	padding: 15px 15px 15px 0;
	border-bottom: 1px dotted #aaa;
}
.list_news li span {
	display: block;
	font-size: 1.3rem;
}
.list_news li span.date {
	width: 100%;
}
.list_news li::after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
 }
.btn_line{
	margin: 30px 0 30px;
}
.top_monitor_bnr {
	width: 100%;
}
.shaｍpooWrap {
  padding: 0;
	background: url("../images/202301/bg_shampoo.jpg") center bottom 30% no-repeat #ffffff;
  background-size: 100%;
	margin-bottom: 10vw;
}
.shaｍpooWrap ttl {
	width: 100%;
}
.shampoo_bg_Wrap {
  padding: 30px 10px 30px 10px;
}
.step_area {
	width: 100%;
  padding: 10px 15px 10px;
}
.shampooBox01 .tit {
  margin-bottom: 20px;
}
.shampooBox01 .txt {
  margin-bottom: 20px;
}
.step_area .photoarea {
  width: 100%;
  margin: 0 0 10px 0;
}
.step_area .textarea {
  font-size: 100%;
}
.shampoo_reason dt{
	width: 12vw;
}
.shampoo_reason dd{
	width: calc(100% - 12vw);
}

/* layout_subpage */
.sub_mainimg {
	margin-top: 54px;
	padding: 30px 0;
}
.sub_mainimg .ttl {
	font-size: 3rem;
}
.sub_mainimg .ttl span {
	padding-top: 3px;
	font-size: 1.1rem;
}
sub_contents {
	padding: 30px 0 60px;
}
.sub_contents_block {
	margin: 0 0 60px;
}
.sub_contents_block .innner {
	margin: 0 0 40px;
}
.sub_contents_ttl1 {
	margin: 0 0 20px;
	padding: 10px 15px;
	font-size: 1.8rem;
	letter-spacing: 2px;
}
.sub_contents_ttl2 {
	margin: 0 0 20px;
	padding: 5px 15px;
	font-size: 1.6rem;
	letter-spacing: 1px;
}
.sub_contents_ttl3 {
	margin: 0 0 20px;
	font-size: 1.5rem;
}
.sub_contents_box1 {
	padding: 25px;
}
.ttl_h2 .att_effect {
    position: absolute;
    text-align: right;
    margin: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 8px;
    color: #fff;
    font-size: 10px;
}

/* layout_price */
#p_pickup01,
#p_pickup02,
#p_pickup03,
#p_face01,
#p_face02,
#p_face03,
#p_face04,
#p_face05,
#p_face06,
#p_face07,
#p_face08,
#p_skin01,
#p_skin02,
#p_skin03,
#p_skin04,
#p_skin05,
#p_body01,
#p_body02,
#p_body03 {
	margin-top: -60px;
	padding-top: 60px;
}
.nav_menu_price {
	justify-content :space-between;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	width: 100%;
	margin: 0 0 30px;
}
.nav_menu_price > div {
	width: 49%;
	margin: 0 0 1%;
}
.cover_tbl {
	overflow: auto;
	white-space: nowrap;
}

/* layout_clinic */
.box_dr > div.txtarea {
	width: 100%;
	order: 2;
}
.box_dr > div.photoarea {
	width: 100%;
	margin: 0 0 30px;
	text-align: center;
	order: 1;
}
.box_dr > div.photoarea img {
	width: 180px;
}
.box_dr .name {
	margin: 0 0 20px;
	padding: 0 0 10px;
	border-bottom: 1px solid #ccc;
	font-size: 2.4rem;
}
.box_dr .name span {
	display: block;
	margin: 5px 0 0;
}
.list_profile dt {
	float: none;
	width: 100%;
	margin: 0 0 5px;
}
.list_profile dd {
	float: none;
	width: 100%;
	margin: 0 0 20px;
}

/* layout_menu */
.nav_menu {
	padding: 30px 0 0;
}
.wrap_fixnav_menu {
	position: fixed;
	top: 54px;
}
#m01,
#m02,
#m03,
#m04 {
	margin-top: -120px;
	padding-top: 120px;
}
.box_menu1 .txtarea {
	width: 100%;
	order: 2;
}
.box_menu1 .photoarea {
	width: 100%;
	margin: 0 0 20px;
	order: 1;
}
.list_osusume li {
	width: 100%;
}
.list_step dt {
	float: none;
	width: 100px;
	margin: 0 0 10px;
}
.list_step dd {
	float: none;
	width: 100%;
	margin: 0 0 30px;
}
.list_step dd span {
	font-size: 1.5rem;
}
.list_point dt {
	float: none;
	width: 100px;
	margin: 0 0 10px;
	padding: 3px 10px;
}
.list_point dd {
	float: none;
	width: 100%;
	margin: 0 0 30px;
	padding-bottom: 20px;
	border-bottom: dotted 1px #ccc
}
.box_menu2 .title_area {
	width: 100%;

}
.box_menu2 .txtarea {
	width: 100%;
}
.ttl_box {
	padding: 10px 60px;
	color: #ed7d9c;
	background: #eee9d4;
	margin-bottom: 10px;
}
.wrap_1200,
.wrap_1000,
.wrap_800,
.wrap_600 {
    width: 100%;
    margin: 0 auto;
}

/* layout_post */
.main {
	width: 100%;
	margin: 0 0 40px;
}
.side {
	width: 100%;
}

/* layout_contact */
.tbl_contact th,
.tbl_contact td {
display: block;
width: 100%;
}

.txtarea_content {
	position: static;
	transform: inherit;
	width: 100%;
}

.top_box_about .img_box {
	height: 250px;
}
.top_main_content_box01 {
	margin-bottom: 30px;
}
.top_main_content {
	padding: 50px 0 70px;
}
.top_main_content_box02 {
	box-shadow: none;
	margin-bottom: 30px;
}
.top_main_content_box02_img {
	width: 45%;
}
.top_main_content_box02_text {
	width: 52%;
	padding: 10px 0;
}
.top_main_content_box02_text p {
	font-size: 1.3rem;
	margin-bottom: 15px;
}
.top_main_content_box02_text img {
	width: 150px;
	margin-bottom: 15px;
}
.top_main_content_box02_text a {
	padding: 5px 20px;
	font-size: 1.5rem;
}
.btnarea3 p {
	font-size: 2rem;
}
.box_reason_point {
	font-size: 2rem;
	margin-bottom: 10px;
}
.box_reason .txtarea .title {
	font-size: 2rem;
}
.box_reason .txtarea .title + p {
	font-size: 1.4rem;
}
.box_reason.col2 > div:nth-child(even) .box_reason_point {
	text-align: left;
}
.doctor_name {
	font-size: 3rem;
}
.doctor_name span {
	font-size: 1.2rem;
	margin-left: 5px;
}
.doctor_name_wrap {
	margin-bottom: 15px;
}
.doctor_name_wrap + p {
	margin-bottom: 5px;
}
.doctors_box_img {
	width: 37%;
	max-height: 300px;
}
.doctors_box_text {
	width: 100%;
}
.doctors_box_history {
	margin-bottom: 30px;
	margin-top: 90vw;
}
.box_acsses_wrap {
	padding: 20px;
	border-left: 10px solid #928000;
}
.box_acsses {
	font-size: 1.5rem;
}
.box_acsses th,
.box_acsses td {
	padding: 5px;
}

/* layout_etc. */
.list_risk dt {
	float: none;
	width: 100%;
	margin: 0 0 5px;
}
.list_risk dd {
	float: none;
	font-size: 100%;
	width: 100%;
	margin: 0 0 20px;
}
.box_risk p{
	font-size: 100%;	
}

}


@media screen and (max-width: 480px) {
.copyright {
	font-size: 0.9rem;
}
.col3.box_menu > div {
	width: 49%;
}
.col3.box_menu > div.last {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
.col3.box_menu > div.last a{
	width: 100%;
	display: flex;
	justify-content: space-between;
}
.col3.box_menu > div.last .photoarea{
	width: 30%;
}
.col3.box_menu > div.last .photoarea img{
	_aspect-ratio:1/1;
	object-fit: cover;
	height: 100%;
}
.col3.box_menu > div.last .txtarea{
	width:calc(70% - 10px);
}
.col3.box_post > div,
.col4.box_post > div {
	width: 49%;
}
.box_post .photoarea {
	height: 150px;
}
.col4.box_motto > div {
	width: 49%;
}
.top_box_about > div.txtarea .txtarea_content .ttl {
	font-size: 1.5rem;
}
.top_box_about > div.txtarea {
	padding: 20px;
}
.top_contents {
	padding: 30px 0;
}
.btn_top{
	margin-bottom: 10px;
}
.btn_top a {
	margin-bottom: 0;
}
.btn_top a span {
	font-size: 1.5rem;
}
.top_main_content_box01_img {
    width: 100%;
    height: 100vw;
}
.top_main_content_box01_text {
	width: 100%;
	padding: 20px;
}
.top_main_content_box01_text01 {
	font-size: 2rem;
	margin-bottom: 10px;
}
.top_main_content_box02_img {
	width: 100%;
	margin-bottom: 10px;
}
.top_main_content_box02_text {
	width: 100%;
	padding: 10px 0;
	order: 1;
}
.top_main_content_box02_text img {
	width: 130px;
	margin-bottom: 15px;
}
.top_main_content {
	padding: 30px 0 50px;
}
.top_contents_ttl {
	font-size: 3rem;
	margin: 0 0 20px;
}
.btnarea1 {
	padding: 30px 0 0;
}
.btnarea3 {
	padding: 20px;
}
.btnarea3 p {
	font-size: 1.5rem;
	margin-bottom: 10px;
}
.box_reason.col2 > div {
	width: 100%;
	margin: 0 0 8%;
}
.box_reason.col2 > div:nth-child(even) {
	top: 0;
}
.box_reason .txtarea {
	padding: 20px;
}
.doctors_box_img {
	width: 100%;
	max-height: initial;
	margin-bottom: 20px;
}
.doctors_box_text {
	width: 100%;
}
.box_acsses_wrap {
	padding: 10px;
	border-left: 5px solid #928000;
}
.acsses_map iframe {	
	height: 300px;
}
.area_contact {
	padding: 20px 0;
}
.box_contact > div {
	margin: 0;
}
.block_footer {
	padding: 30px 0 10px;
}


}


/* お問い合わせフォーム*/
#form{
	background: #d4e5cf;
	border-top:solid 5px #ffffff; 
	border-bottom:solid 5px #ffffff; 
}
.content_wrap {
    padding: 90px 0;
    position: relative;
    z-index: 2;
}
@media screen and (max-width: 768px){
	.content_wrap {
			padding: 40px 0;
	}
}
#form .inner{
	background: #ffffff;
	border-radius: 10px;
	padding: 30px;
	margin: 0 20px;
}
#form .title{
	text-align: center;
	padding: 0 0 20px;
	font-size: 38px;
	font-weight: bold;
	color: #00b565;
}
#form table{
	margin: 0;
	width: 100%;
	border:none;
}
#form table tr{
	border-bottom: solid 1px #cccccc;
}
#form table th{
	padding:15px 0;
	width: 250px;
	vertical-align: top;
	font-size: 18px;
	border: none;
}
#form table th .hissu{
	font-size: 14px;
	float: right;
	color: #ffffff;
	background: #df2626;
	padding: 3px 10px;
}
#form table th .nini{
	font-size: 14px;
	float: right;
	color: #ffffff;
	background: #195f55;
	padding: 3px 10px;
}
#form table td{
	padding:15px 0 15px 40px;
	vertical-align: top;
	border: none;
}
#form table td p{
	margin: 5px 0 0 0;
}
#form input[type="text"],
#form input[type="email"],
#form input[type="tel"],
#form textarea{
	background: #eeeeee;
	padding: 15px;
	border:none;
	width: 100%;
	font-size: 16px;
}
#form textarea{
	height: 200px;
}
#form p.error{
	color: #FF3682;
	font-size: 14px;
	font-weight: normal;
	margin: 5px 0 0 0;
	letter-spacing: 0.1rem;
}
#form p.error:empty{
	display: none;
}
#form .radio{
	margin: 0 30px 0 0;
	font-size:18px;
}
#form .radio input[type="radio"]{
	margin: 0 5px 0 0;
}
#form .btn{
	text-align: center;
	margin: 30px 0 0 0;
}
#form .btn_entry input,
#form .btn_entry button,
#form .btn_entry a{
	width: 300px;
}
#form .btn_confirm input,
#form .btn_confirm button,
#form .btn_confirm a{
	width: 250px;
	margin: 0 10px;
}
input.btn1,
button.btn1,
a.btn1{
	border: none;
	border-radius: 2px;
	background:#00b565;
	color: #FFFFFF;
	text-decoration: none;
	font-size: 22px;
	font-weight: bold;
	padding: 20px 0;
	display: inline-block;
}
input.btn1:hover,
button.btn1:hover,
a.btn1:hover{
	background:#008f50;
	background-size: 12px,auto;
	color: #FFFFFF;
	transition:all 0.5s ease 0s;;
}
input.btn2,
button.btn2,
a.btn2{
	border:none;
	border-radius:2px;
	background:#666666;
	color: #FFFFFF;
	text-decoration: none;
	font-size: 22px;
	font-weight: bold;
	padding: 20px 0;
	display: inline-block;
}
input.btn2:hover,
button.btn2:hover,
a.btn2:hover{
	background: #444444;
	background-size: 12px;
	color: #FFFFFF;
	transition: all .3s;
}
#form .thankyou{
	text-align: center;
}
#form .thankyou h3{
	text-align: center;
	color: #333333;
	font-size: 28px;
	margin: 0 0 20px 0;
}

@media only screen and (max-width: 768px) {
	#form .title{
			padding: 10.6vw 0;
			font-size: 5.3vw
	}
	#form .inner{
		padding: 20px;
		margin: 0;
	}
	#form .title{
		padding: 50px 0 20px;
		font-size: 5.8vw;
	}
	#form .title.top{
		padding: 20px 0 20px 0;
	}
	#form table th{
		display: block;
		padding:0 0 5px 0;
		width: 100%;
		font-size: 18px;
		margin: 10px 0 0 0;
	}
	#form table th .hissu{
		font-size: 14px;
		float: right;
		color: #ffffff;
		background: #ff5c5c;
		padding: 3px 10px;
	}
	#form table th .nini{
		font-size: 14px;
		float: right;
		color: #ffffff;
		background: #195f55;
		padding: 3px 10px;
	}
	#form table td{
		display: block;
		width: 100%;
		padding: 0;
		margin-bottom: 20px;
	}
	#form table th .hissu,
	#form table th .nini{
		font-size: 13px;
		padding: 5px 10px;
		float: none;
		margin: 0 0 0 10px;
	}
	#form .btn{
		margin: 20px 0 0 0;
	}
	#form .btn_entry input,
	#form .btn_entry button{
		width: 100%;
	}
	#form .btn_confirm input,
	#form .btn_confirm button{
		width: 100%;
		margin: 0 0 20px 0;
	}
	#form input.btn1{
		font-size: 16px;
		padding: 10px 0;
	}
	#form button.btn2{
		font-size: 16px;
		padding: 10px 0;
	}
	input[type="text"],
	input[type="mail"],
	input[type="tel"],
	textarea{
		font-size: 16px;
	}
	#form .thankyou h3{
		font-size: 22px;
	}
}

.price_box{
	border:solid 2px #195f55;
	padding: 20px;
	color: #195f55;
	margin: 0px 45px 50px 45px;
	background: #ffffff;
}
.price_box p{
	margin: 0;
}
.price_box a:link{ color: #195f55; text-decoration: underline}
.price_box a:visited{ color: #195f55; text-decoration: underline}
.price_box a:hover{ color: #195f55; text-decoration: none}
@media only screen and (max-width: 768px) {
	.price_box{
		margin: 0px 20px 50px 20px;
		padding: 10px;
		font-size: 11px;
	}
}
