/*外部フォント  */
@import url('https://fonts.googleapis.com/css2?family=Sacramento&display=swap');

/* 自動<p>タグの非表示 */
p:empty {
    display: none;
}

/*h1  */
.top-h1 {
    background: #58B3AC!important;
    color: #fff;
}

/*幅調整*/
.col1 .keni-main .keni-section_wrap {
	max-width: 600px;
	overflow-x: hidden;
	padding: 0;
}
@media (max-width:768px) {
	.keni-main .keni-section_wrap {
		width:100%;
		margin:0 auto;
		padding: 0 5%;
	}
	}

.col1 .keni-main .keni-section_wrap {
	max-width: 600px;
	overflow-x: hidden;
	padding: 0;
}

@media (max-width:768px) {
	.keni-main .keni-section_wrap {
		width:100%;
		margin:0 auto;
		padding: 0 5%;
	}
	}

/*グロナビPC非表示  */
.keni-gnav_wrap {
display: none!important;
}

/*上部分の空白非表示  */
.keni-main_inner {
    padding: 0!important;
}

/*ヘッダーのタイトル部分非表示  */
.keni-header_inner {
	display: none!important;
}

/*幅調整  */
.section_inner{
width: 90%!important;
margin: 0 auto;
}

/*枠外背景BG  */
.keni-container, .keni-mv_wrap {
overflow: hidden!important;
background-image:url(http://facial.kenchostreet-seitai.com/wp-content/uploads/2024/08/BG-scaled.webp)!important;
background-attachment: fixed!important;
background-repeat: no-repeat!important;
background-size: cover!important;
}

/*hover時半透明化  */
a:hover {
opacity: 0.7;
}

a img:hover {
opacity: 0.8;}

/*位置調整  */
.center {
	text-align: center;
}

.pt_40 {
	padding-top: 40px!important;
}

.mt-20 {
	margin-top: -20px!important;
}

.mt-30 {
	margin-top: -30px!important;
}

/*見出しリセット  デフォルトのCSS消去*/
h2 {
	margin-top:0!important;
	margin-bottom:0!important;
	padding:0!important;
	background:none!important;
	border:none!important;
}

h3 {
	margin:0!important;
	padding:0!important;
	border-top: none!important;
	border-bottom: none!important;
}

ul {
	list-style: none;
}

/*SPのみ改行  */
.sp_br {
display: none;
}

/*pcのみ改行  */
.pc_br {
display: block;
}

@media screen and (max-width: 768px){
.sp_br {
display: block;
}

.pc_br {
display: none;
}
}

/*カラー  */
:root {
	--brown1: #7E6E55;
	--brown2: #9D917B;
	--brown3: ;
	--pailyellow: #FAF8EE;
	--beige: #E1CAA6;
	--pink: #DB7676;
	--zen:font-family: 'Zen Old Mincho', serif;
	--hiragino:font-family: 'ヒラギノ角ゴシック','Hiragino Sans', sans-serif;
}

/*---------------------------------------PC表示のCSS---------------------------------------  */

/*リボン見出し  */
.ribon_ttl {
	clip-path: polygon(100% 0, 95% 49%, 100% 100%, 0% 100%, 4% 48%, 0% 0%);
	background: var(--brown2);
	margin: 40px 0;
	text-align: center;
	font-size: 2.5rem;
	font-weight: bold;
	color: #fff;
}
.ribon_ttl p {
	margin-bottom: 0;
	padding: 10px 0!important;
}

/*コンタクト  */
.banner {
	margin-bottom: 20px;
}

/*見出しタイトル  */
.h2_ttl {
	font-size: 3rem !important;
	color: #333;
	padding: 0 0 0 5% !important;
	margin-top: 80px !important;
	letter-spacing: 4px;
	position:relative;
}

.h2_ttl::after {
	position: absolute;
	content: "";
	border-bottom: 1px dotted var(--brown2);
	width: 89%;
	height: 1px;
	bottom: 0px;
	left: 5%;
	top: 80px;
}

.h2_ttl_sub {
	font-size: 2rem!important;
	color: var(--brown1)!important;
	letter-spacing: 0;
}

/*trouble こんなお悩みありませんか？  */
.problem_list {
	margin: 3em 0 1.5em 4.5em;
	position:relative;
	z-index: 1 !important;
}

.problem_list::after {
    position: absolute;
    content: "";
    width: 60%;
    height: 120%;
    top: -20px;
    right: 0;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    background: var(--pailyellow);
    z-index: -1;
}

.problem_list li {
	position:relative;
	font-weight: bold;
	padding-left: 46px;
}

.problem_list li::before {
	position: absolute;
	content: "";
	background: url(http://facial.kenchostreet-seitai.com/wp-content/uploads/2024/08/check02.webp);
	background-size: cover;
	width: 29px;
	height: 25px;
	top: 5px;
	left: 0;
}

/*連射式　記事内容  */
.summary {
	text-align: center;
	margin: 30px 0 0 !important;
}

.summary p {
	margin-bottom: 0;
	line-height: 1.5;
}

.brown_box {
	border: 1px solid var(--beige);
	padding: 0px 20px 40px 20px;
	margin: 80px 80px 40px 80px;
	}

.brown_box p {
	margin-bottom: 0!important;
	text-align: center!important;
}

.un_brown_ttl {
	color: #333!important;
	font-weight: bold;
	text-align: center!important;
	position:relative;
	z-index: 1;
	content: "";
	top: -26px;
}

.un_brown_ttl::after {
	position: absolute;
	content: "";
	width: 80%;
	height: 18px;
	top: 16px;
	left: calc(50% - 40%);
	background: var(--beige)!important;
	z-index: -1;
}

.un_dot_ttl {
	text-align: center;
	font-weight: bold;
	position:relative;
	color: #333;
	z-index: 1;
	padding-top: 20px!important;
}

.un_dot_ttl::after {
	position: absolute;
	content: "";
	width: 50%;
	height: 1px;
	bottom: 0px;
	left: calc(50% - 25%);
	border-bottom: 1px dotted var(--beige);
	color: #333;
	z-index: -1;
	}

/*ビフォーアフター  */
.ba_flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 40px 5% 0 5%;
}

.ba_item_b,
.ba_item_a {
	position:relative;
	width: 48%;
	border: 1px solid var(--beige);
	padding: 2px;
	margin-bottom: 60px;
	
}

.ba_item_b::after,
.ba_item_a::after {
	position: absolute;
	font-weight: bold;
	font-size: 2rem;
	bottom: -50px;
	left: calc(50% - 40px);
    width: 90px;
}

.ba_item_b::after {
	content: "BEFORE";
}

.ba_item_a::after {
	content: "AFTER";
}

.ba_item_b::before,
.ba_item_a::before {
	position: absolute;
    content: "";
    left: calc(50% - 50px);
    width: 100px;
    height: 14px;
    background: var(--beige);
    bottom: -50px;
}

/* もっと見る ボタン */
.more_btn {
	text-align: center;
	margin: 40px 0 40px;
}

.more_btn img {
	width: 50%;
}

/*WHY？ シミって なぜできるの？ */
.shimi_illustration img {
	width: 70%;
}

/*effective テキスト部分  */
.effective_txt {
	text-align: center;
	font-weight: bold;
	padding-bottom: 20px;
	position:relative;
}

.effective_txt::after {
	position: absolute;
	content: "↓";
	width: 20px;
	height: 20px;
	bottom: 5px;
	left: calc(50% - 20px);
}

.effective_txt:last-child::after {
	content: none!important;
}

.effective_txt {
	padding-top: 0px;
	line-height: 1.6;
	margin-bottom: 0 !important;
}

.conventional_photo {
	text-align: center;
}
.conventional_photo img {
	width: 70%;
	margin: 40px 0 20px;
}

.un_brown_ttl_conventional {
	color: #333!important;
	font-weight: bold;
	text-align: center!important;
	position:relative;
	z-index: 1;
	content: "";
	top: 0px;
}

.un_brown_ttl_conventional::after {
	position: absolute;
	content: "";
	width: 40%;
	height: 18px;
	top: 16px;
	left: calc(50% - 20%);
	background: var(--beige)!important;
	z-index: -1;
}



/* 中央にドットのあしらい */
.center_dot_deco {
    width: 50%;
    height: 9rem;
    background-image: linear-gradient(to right, white 2px, transparent 2px), linear-gradient(to bottom, #000 2px, transparent 2px), linear-gradient(to left, white 2px, transparent 2px), linear-gradient(to top, white 2px, transparent 2px);
    background-size: 4px 1px, 1px 4px, 4px 1px, 1px 4px;
    background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
    background-position: left top, right 0px, 3px bottom, left 7px;
    margin-bottom: 1rem;
}

/*連射式フォトフェイシャル治療だと  */
.summary_left {
	text-align: left;
	margin-bottom: 100px;
}

.summary_left p {
	text-align: justify;
	margin-top: 40px;
}

.brown_box2 {
	border: 1px solid var(--beige);
	padding: 0px 20px 20px 20px;
	margin: 80px 80px 40px 80px;
	}


/*ポイント　  */
.point_list {
	margin: auto 5%;
}

.point_list li {
	margin-top: 40px;
}

.point_list li p {
	margin-bottom: 10px;
}

.un_brown_ttl_left {
	color: #333!important;
	font-weight: bold;
	text-align: left!important;
	margin-bottom: 10px !important;
	}

.un_brown_line {
	background: linear-gradient(transparent 50%, #E1CAA6 50%);
}

.point_photo {
	margin-top: 10px;
}

.point_photo img {
	width: 100%;
}

/* PLAN 料金表 */
.table_price {
	text-align: center;
	font-weight: bold;
}

.table_price th {
	background: var(--brown1);
	color: #fff;
}

.table_price td {
	vertical-align: middle;
}

.pink_font {
	color: var(--pink);
}
.plan_small {
	font-size: 1.2rem;
}
.kaisuu {
	padding: .5em 3em;
}

/*Q＆A  */
.qa_list {
	margin: 40px 0;
}
.qa {
    max-width: 90%;
    margin-bottom: 10px;
    border: none;
    background-color: #7E6E55;
	margin: 20px auto;
}

.qa summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: .1em 1em .1em 3em;
    color: #fff;
    font-weight: bold;
    cursor: pointer;
}

.qa summary::before,
.qa p::before {
    position: absolute;
    left: 1em;
    font-weight: bold;
    font-size: 1.3em;
	color: #fff;
}

.qa summary::before {
    color: #fff;
    content: "Q.";
}

.qa summary::after {
    margin-left: 10px;
    content: "＋";
    transition: transform .5s;
}

.qa[open] summary::after {
    transform: none;
	content: "−";
}

.qa p {
    position: relative;
    opacity: 0;
    margin: 0;
    padding: .8em 1em 1.5em 3em;
    color: #333;
    transition: transform .5s, opacity .5s;
    background: #FAF8EE;
}

.qa[open] p {
    transform: none;
    opacity: 1;
}

.qa p::before {
    color: #333;
    line-height: 1.2;
    content: "A.";
}

/*Q＆A　デフォルト三角削除*/
summary {
	display: block;
		list-style: none !important;
	transition: 0.2s !important;
}
summary::-webkit-details-marker {
	display: none !important;
}

/*FLOW  */
.flow {
	counter-reset:test;
}

.flow_list {
	margin: 0;
}

.flow_list li {
	position:relative;
	text-align: center;
	margin: 10%;
}

.flow_list li::before {
	position: absolute;
	content: "0" counter(test);
	counter-increment:test;
	font-size: 2.5em;
	color: var(--brown2);
	left: 0;
	z-index: 1;
	font-weight: bold;
}

.flow_list li::after {
	position: absolute;
content: "";
background: url(http://facial.kenchostreet-seitai.com/wp-content/uploads/2024/08/arrow-triangle.webp);
background-size: contain;
	background-repeat: no-repeat;
    width: 50px;
    height: 26px;
    bottom: -40px;
    left: calc(50% - 25px);
}

.flow_list li:last-child::after {
content: none!important;
}

.flow_list_box {
	clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%, 0 24%);
	background: var(--pailyellow);
	padding: 2em 4em 3em;
	box-shadow: 10px 10px 0px 0px var(--brown2);
}

.flow_list_box::before {
	color: var(--brown1);
	font-size: 3em;
	font-weight: bold;
}

.flow_list_box p {
	color: #333;
	font-size: 1.7em;
	font-weight: bold;
	margin-bottom: 0 !important;
}

.flow_deco {
	color: var(--brown1);
	font-size: 1.3em;
	font-family: 'Sacramento', cursive;
}

/*アクセス  */
.photo_img {
	margin-top: 40px;
}

.access {
	margin-top:60px;
	margin-bottom: 60px;
}

.access_title {
	font-family: "Kaisei Opti", serif;
	color:#ffffff!important;
	font-size:50px!important;
	text-align:center!important;
	font-weight:400;
	background:var(--brown1)!important;
	padding:23px 0!important;
}

.access_content {
	margin-top:20px;
	padding:20px 30px;	
}


.hospital_name {
	font-size:28px;
	font-weight:600;
	text-align:center;
	color: var(--brown1);
}

.table_access tbody th {
	border-top:1px solid #7E6E55!important;
	border-bottom:1px solid #7E6E55!important;
	border-right:none!important;
	border-left:none!important;
	background: #ffffff!important;
	color:var(--brown1)!important;
	font-size:18px!important;
	text-align: left!important;
	font-weight:600!important;
	width: 30%;
	padding:15px 10px!important;
}

.table_access tbody td {
	border-top:1px solid #7E6E55!important;
	border-bottom:1px solid #7E6E55!important;
	border-right:none!important;
	border-left:none!important;
	background: #ffffff!important;
	color:#4d4d4d!important;
	font-size:20px!important;
	text-align: left!important;
	font-weight:400!important;
	width: 70%;
	padding-top:10px!important;
	padding:15px 10px!important
}

.access_map {
	margin-top:20px;
}

.map_iframe {
	position: relative;
	width: 100%;
	padding: calc(348 / 534* 100%) 0 0;
}

.map_iframe iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*コピーライト  */
.keni-copyright {
        padding: 0;
        text-align: center;
    }



.footer-btn:hover {
-webkit-transform: none!important;
transform: scale(1.04);
transition-property: none!important;
transition-duration: none!important;
}

/*フッター固定部分ボタン*/
.u-mobile{
display: none;
}
.u-desktop{
display:block;
}
.footer-btn img {
margin: 1% !important;
}
/*フッターボタン*/
.footer-btn__flex{
display: flex;
width: 100%;
}
@media (max-width: 768px){
.footer-btn {
right: 0;
bottom: -3px;
width: 100%;
z-index: 100;
}
.u-mobile{
display: none;
}
.u-desktop{
display: none;
}

.footer-btn {
right: 0!important;
bottom: -3px!important;
width: 100%!important;
z-index: 100!important;
}
.footer-btn img {
margin: 0% !important;
}
	.keni-footer-panel li a {
    padding: 0px!important;
    }
	.keni-footer-panel ul {
    border-top: 0px!important;
}
	.keni-footer-panel li {
    border-right: 1px!important;
}
	.fn-footer-panel {
    background: transparent !important;
}
}

/*フッターボタン*/
.footer-btn {
    display: block;
    position: fixed;
    bottom: 6px;
    right: 10px;
    width: 400px;
    z-index: 1000;
    transition-duration: 0.6S;
}

.footer-btn a {
    line-height: 0em;
}
@media (max-width: 768px){
    .footer-btn img {
        display: none!important;
    }
}

/*---------------------------------------SP表示のCSS---------------------------------------  */
@media screen and (max-width: 768px) {
	/*リボン見出しSP  */
	.ribon_ttl {
    font-size: 2.2rem;
    }
	
	/*見出しタイトルSP  */
	.h2_ttl {
    font-size: 2.8rem !important;
    }
	.h2_ttl::after {
    width: 90%;
    }
	.h2_ttl_sub {
    font-size: 1.7rem !important;
	line-height: 1!important;
    }
	
	/*trouble こんなお悩みありませんか？  SP*/
	.problem_list {
    margin: 3em 0 1.5em 1.5em;
	}
	
	.problem_list li {
    padding-left: 40px;
	}
	
	.problem_list::after {
    height: 110%;
    }
	
	.brown_box {
    padding: 0px 20px 40px 20px;
    margin: 60px 10px 40px 10px;
}
	
	.brown_box2 {
    border: 1px solid var(--beige);
    padding: 0px 20px 20px 20px;
    margin: 80px 20px 40px 20px;
}
	
	/*ビフォーアフターSP  */
	.more_btn img {
    width: 70%;
}
	
	/*連射式　記事内容　SP  */
	.un_brown_ttl::after {
	position: absolute;
	content: "";
	width: 90%!important;
	height: 18px;
	top: 16px;
	left: calc(50% - 45%);
	background: var(--beige) !important;
	z-index: -1;
	}
	/*そんなあなたは連射式　SP*/
	.un_dot_ttl::after {
    width: 60%;
    left: calc(50% - 30%);
    }
	
	/*WHY？ シミって なぜできるの？ SP*/
	.shimi_illustration img {
    width: 90%;
}
	
	/* 記事内容 SP	 */
	.summary_left {
    margin-bottom: 50px;
}
	
/* 従来のシミ治療SP	 */
	.un_brown_ttl_conventional::after {
    width: 50%;
    left: calc(50% - 25%);
    }
	
	/* PLAN 料金表SP*/
.table_price {
	text-align: center;
	font-weight: bold;
}

.table_price th {
	background: var(--brown1);
	color: #fff;
}

.table_price td {
	vertical-align: middle;
	width: 10%;
}

.plan_small {
	font-size: 1.2rem;
}
.kaisuu {
	padding: .2em 1em;
}

	
/*FLOW SP 	 */
	.flow_list_box p {
    font-size: 1.5em;
    }
	
	.flow_list li::after {
    bottom: -30px;
    }
	
/*QandA SP	 */
	.qa summary {
    padding: .1em 1em .1em 2em;
    }
	.qa summary::before, .qa p::before {
    position: absolute;
    left: .3em;
    font-weight: bold;
    font-size: 1.3em;
    color: #fff;
}
	 .qa p::before {
        position: absolute;
        left: .3em;
        font-weight: bold;
        font-size: 1.3em;
        color: #333;
    }
	
/*アクセス SP*/	
#access {
	margin-top:20px;
}
	
.access_title {
	font-size:6.66vw!important;
	padding:15px 0!important;
}

.access_content {
	margin-top:0;
	padding:10px 5%;	
}

.hospital_name {
	font-size: 5.2vw;
	margin-top: 15px;
}

tbody th {
	font-size:4.0vw!important;
	padding:5px;
	width:25%
}

tbody td {
	font-size:4.0vw!important;
	padding:5px;
	width:75%;
}	
	
}/*mediaスクリーン　閉じタグ 	 */


/*2024-11修正*/
/*HPB注意書*/
.cp ul {
	margin-left:0;
}

.cp li {
	position:relative;
	padding-left:20px;
	list-style:none;
	line-height:24px;
	font-size:15px;
	text-align: justify;
}

.cp li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※";
	width: 25px;
	height: 20px;
}

@media (max-width: 768px) {
	.cp li {
		line-height:1.5;
		font-size:13px
	}
}