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

@media screen and (max-width:736px) {
	html, body {
		min-width: 0;
		width: 100%;
		height: 100%;
		-webkit-text-size-adjust : 100%;
	}
	
	body.page-template-page-stain {
	    overflow-x: hidden !important; 
	    width: 100%;
	}

	img {
		max-width: 100% !important;
		height: auto;
	}

	.is-sp {
		display: inherit;
	}
	
	.is-pc {
		display: none;
	}
	
	a[href^="tel:"] {
		pointer-events: auto;
	}
	
	input[type="submit"] {
	  appearance: none;
	  -webkit-appearance: none;
	}
	
	.accordion__title {
	    position: relative;
	}
	.accordion__title::before {
	    content: '';
	    display: inline-block;
	    width: 20px;
	    height: 2px;
	    background-color: #fff;
	    position: absolute;
	    right: 10px;
	    top: 50%;
	    transform: translateY(-50%);
	    transition: opacity 1s;
	}
	.accordion__title::after {
	    content: '';
	    display: inline-block;
	    width: 20px;
	    height: 2px;
	    background-color: #fff;
	    position: absolute;
	    right: 10px;
	    top: 50%;
	    transform: translateY(-50%) rotate(90deg);
	    transition: transform 1s;
	}
	.accordion__title.show::before {
	    opacity: 0;
	}
	.accordion__title.show::after {
	    transform: translateY(-50%) rotate(180deg);
	}
	.accordion__content {
	    display: none;
		padding-bottom: 1rem;
	}
	
	.navigation__dropdown p a {
		font-size: 1.4rem !important;
		padding: 0.5rem 2rem !important;
		border-bottom: none !important;
		
	}

	/*-----------------------------

	header

	------------------------------*/
	header {
		padding: 2rem;
	}
	
	header h1 {width: 20rem;}
	header .hd-contact,
	header .hd-info{display: none;}
	
	
	h2.ttl {
		font-size: 2.2rem;
		margin-bottom: 1rem;
	}

	h2.ttl span {
		font-size: 1.3rem;
	}
	
	h3.sub-ttl {
		font-size: 1.6rem;
		padding: 0 2rem;
	}
	
	.policy-inner p {
		font-size: 1.3rem;
		line-height: 1.8;
	}

	ul.btn-center {
		display: inherit;
	}
	ul.btn-center li {margin: 0;}
	ul.btn-center li + li {margin-top: 2rem;}
	
	.btn,
	.btn01 {width: 94%; text-align: center;}
	.btn_nat {margin-left: auto !important;}
	#pan {margin-bottom: 2rem;}
	#main-contents {margin-bottom: 5rem;}
	
	p.txt {
		font-size: 1.3rem;
		line-height: 2;
	}
	

	.js-scrollable {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		width: 100%;
		margin-bottom: 2rem;
	}
	
	table.price-table01,
    table.price-table02,
    table.stain-table,
    table.table-common {
        width: auto !important;
        min-width: 900px; 
        border-collapse: collapse;
        table-layout: auto;
        text-align: center;
    }
    
    table.esthetic-table {
        width: auto !important;
        min-width: 100%; 
        border-collapse: collapse;
        table-layout: auto;
        text-align: center;
    }


	
	
	table {
		width: max-content !important;
		table-layout: fixed;
	    border-collapse: collapse;
	}
	
	table th,
	table td {
		width: auto !important;
		font-size: 1.2rem !important;
		padding: 1rem 2rem !important;
	}
	
	table.stain-table th.top {
		font-size: 1.2rem !important;
	}
	
	table.ordermade-sp_table {
		width: 100% !important;
		min-width: 100%;
	}
	
	
	/*-----------------------------

	top

	------------------------------*/
	#main-fv {
		/*background: url("../img/page/top/main-fv_sp.webp") no-repeat;
		background-size: cover;
		padding: 8rem 3rem 5rem;
		min-height: 60vh; 
		text-align: left;
		margin-bottom: 5rem;*/
	}
	
	#main-fv .pc{
		display: none;
	}
	
	#main-fv .sp{
		display: block;
	}
	
	ul#reason-list{
		display: block;
	}
	
	ul#reason-list li{
		width: 100%;
	}
	
	ul#reason-list li h3{
		font-size: 1.8rem;
	}
	
	ul#reason-list li p{
		font-size: 1.4rem;
		padding-bottom: 25px;
	}
	
	#readtxt{
		font-size: 10px;
	}

	#main-fv h2 {font-size: 2rem;}
	#main-fv p {font-size: 1.6rem;}

	
	.about-area {
		padding: 0 2rem;
		margin-bottom: 5rem;
	}
	.about-area h2.about-ttl {
		font-size: 1.8rem;
		line-height: 2;
		letter-spacing: 0.1rem;
		text-align: center;
		margin-bottom: 3rem;
	}
	
	.dot {
		display: inline-flex; 
		gap: 0.3rem; 
		padding-top: 1.5rem; 
	}
	
	.about-area p {
		font-size: 1.4rem;
		letter-spacing: 0;
	}

	.top-menu {padding: 5rem 0;}

	.eclat-area {
		background: url("../img/page/top/eclat_sp.webp") no-repeat;
		background-size: cover;
		padding: 5rem 2rem;
		margin-bottom: 5rem;
	}

	.eclat-area h2 {
		font-size: 2rem;
		letter-spacing: 0.1rem;
		margin-bottom: 1rem;
	}

	.eclat-area p {
		font-size: 1.4rem;
		line-height: 2;
		margin-bottom: 4rem;
	}
	
	.top-news {
		padding: 5rem 2rem;
		margin-bottom: 5rem;
	}

	.top-news ul {margin-bottom: 5rem;}
	.top-news ul li a {
		display: block;
		padding: 2rem 0;
	}

	.top-news ul li dl {flex-wrap: wrap;}
	.top-news ul li dl,
	.top-news ul li dl dd{
		align-items: center;
	}

	.top-news ul li dl dt {
		width: 100%;
		max-width: 100%;
		font-size: 1.6rem;
		margin-bottom: 0.5rem;
	}
	
	.top-news ul li dl dt .cat {
		font-size: 1.2rem;
		padding: 0.1rem 1.5rem;
		text-align: center;
		margin-left: 2rem;
	}
	
	.top-news ul li dl dd {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
	}

	.top-news ul li dl dd h3 {
		width: 100%;
		max-width: 100%;
		font-size: 1.3rem;
		line-height: 1.8;
		padding-left: 0;
	}

	

	/*-----------------------------

	page-ttl

	------------------------------*/
	#page-ttl {
		padding: 5rem 0;
		margin-bottom: 1rem;
	}

	#page-ttl h2 {font-size: 2rem;}
	#page-ttl h2 span {font-size: 1.4rem;}

	
	
	
	
	
	/*-----------------------------

	news/single

	------------------------------*/
	ul.news-cat {
		flex-wrap: wrap;
		justify-content: space-between;
		margin-bottom: 4rem;
	}
	ul.news-cat li {width: 48%;}
	ul.news-cat li:first-child {width: 100%; margin-bottom: 1rem;}
	ul.news-cat li + li {margin-left: 0;}
	ul.news-cat li a {
		width: 100%;
		height: auto;
		line-height: 1.8;
		padding: 1rem 0;
		font-size: 1.4rem;
	}

	ul.news-article {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 2rem 0;
		margin-bottom: 5rem;
	}
	ul.news-article li .article-inner .article-thumbnail {
		width: 50%;
	}
	ul.news-article li .article-inner .article-info {
		width: 50%;
	}
	
	ul.news-article li .article-inner .article-thumbnail img {
		width: 100%;
		height: 100px;
		object-fit: cover;
	}

	ul.news-article li .article-inner .article-info p {
		font-size: 1.1rem;
	}
	
	ul.news-article li .article-inner .article-info h2 {
		font-size: 1.3rem;
	}
	
	.wp-pagenav {margin-bottom: 10rem;}

	
	/*------single-------*/
	.news-single {
		padding: 5rem 0;
		flex-wrap: wrap;
	}

	.single-contents {
		width: 100%;
		margin-bottom: 2rem;
		padding: 3rem;
	}

	.article-side {width: 100%; margin-top: 4rem;}
	
	.single-contents .top-ttl {font-size: 2rem;}
	.single-contents p.article-day {font-size: 1.2rem;}
	.single-contents .main-thumbnail {margin-bottom: 5rem;}
	.article-area h3 {font-size: 1.8rem; }
	.article-area h4 {
		font-size: 1.6rem;
		padding: 1rem;
	}
	.article-area p {font-size: 1.3rem;}

	.article-area ul li,
	.article-area ol li {
		font-size: 1.3rem;
	}

	
	
	
	/*-----------------------------

	massage

	------------------------------*/
	.clinic .massage-area {padding: 0;}
	.massage-area {
		flex-wrap: wrap;
		padding: 0 1rem;
		margin-bottom: 5rem;
	}
	
	.massage-thumbnail {
		width: 60%;
		margin: 0 auto 3rem;;
	}
	
	.massage-info {padding-left: 0}
	.massage-info p {
		font-size: 1.3rem;
		line-height: 2;
	}
	
	.massage-info p + p {
		margin-top: 2rem;
	}

	.massage-info h3 {
		font-size: 2rem;
		padding-top: 2rem;
		text-align: center;
	}


	h2.clinic-ttl {font-size: 1.6rem;}
	.history-area {margin-bottom: 5rem}
	.history-area ol{
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 2rem 0;
	}

	.history-area ol li dl {}
	.history-area ol li dl dt {
		width: 20%;
		height: 30px;
		line-height: 30px;
		text-align: center;
		font-size: 1.1rem;
		margin-right: 2rem;

	}
	.history-area ol li dl dd {
		width: 80%;
		font-size: 1.2rem;
		padding-top: 0.5rem;
	}

	.clinic-img {margin-bottom: 3rem;}
	.clinic-info ul {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 2rem 0;
		margin-bottom: 8rem;
	}
	.clinic-info ul li p {font-size: 1.3rem;}
	.clinic-info ul li span {font-size: 1.7rem;}
	.clinic-info ul li .line {
		text-align: center;
		padding-top: 1rem;
	}

	.clinic-info ul li .clinic-table {margin-top: 3rem;}
	.clinic-access {margin-bottom: 5rem;}
	.clinic-access ol {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 2rem 0;
	}

	.clinic-access ol li .access-txt {
		min-height: auto;
		padding: 2rem 2rem;
	}
	
	
	/*-----------------------------

	menu

	------------------------------*/
	ul.menu-list {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 8rem 0;
		padding-top: 7rem;
		margin-bottom: 5rem;
	}
	
	
	ul.menu-list li {position: relative;}
	ul.menu-list li .menu-img,
	ul.menu-list li:nth-child(even) .menu-img{
		width: 10rem;
		position: absolute;
		top: -8rem;
		left: 0rem;
		right: 0;
		margin: 0 auto;
	}
	
	ul.menu-list li .menu-img img {width: 100%;}
	ul.menu-list li h2 {
		font-size: 1.6rem;
		height: 80px;
		line-height: 70px;
		border: 8px solid #DCEEF2;
		margin-bottom: 2rem;
	}
	.top-menu ul.menu-list li h2 {border: 8px solid #DCEEF2;}
	ul.menu-list li .menu-cat {
		flex-wrap: wrap;
	}

	ul.menu-list li .menu-cat .cat {
		width: 48%;
		margin-bottom: 1rem;
	}

	ul.menu-list li .menu-cat .cat a {
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.2rem;
		height: auto;
		line-height: 2;
		padding: 1rem;
	}
	
	

	/*-----------------------------

	esthetic

	------------------------------*/

	p.esthetic-txt span {
		color: #D49D91;
	}

	ul.esthetic-top {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 0;
		margin: 0 0 5rem;
	}

	ul.esthetic-top li {
		background: none !important;
		border-bottom: 2px dotted #CCC ;
		padding: 2rem;
	}
	
	ul.list-ttl {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 4rem 0;
	}
	ul.list-ttl li dl + dl {margin-top: 1rem;}
	ul.list-ttl li h3 {
		font-size: 1.6rem;
		height: auto;
		line-height: 1.8;
		padding: 1rem;
		margin-bottom: 2rem;
	}
	
	.esthetic-img {padding: 2rem;}
	ul.list-ttl_2 {
		flex-wrap: wrap;
	}
	ul.list-ttl_2 li + li {margin-top: 4rem;}
	ul.list-ttl_2 li {width: 100%;}
	ul.list-ttl_2 li .esthetic-img01 {margin-bottom: 2rem;}

	
	/*-----------------------------

	esthetic

	------------------------------*/
	p.esthetic-txt {
		font-size: 1.4rem;
	}
	
	ul.esthetic-top li p {font-size: 1.3rem;}
	
	.esthetic-ttl {
		padding: 5rem 0;
	}

	.esthetic-ttl h2 {
		font-size: 2rem;
	}
	
	dl.check-list dt {
		width: 5%;
	}

	dl.check-list dt img {
		width:90%;
	}
	
	dl.check-list dd {
		width: 94%;
		font-size: 1.6rem;
	}
	dl.check-list dd p {font-size: 1.2rem !important;}
	
	
	/*-----------------------------

	first

	------------------------------*/

	.age-troubles {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 4rem 0;
		margin: 0 0 10rem;	
	}

	.age-troubles .age-img {
		width: 30%;
		padding: 1rem 0;
	}

	.age-troubles ul {
		width: 70%;
		padding-left: 2rem;
	}

	.age-troubles ul.list-ttl {
		display: block;
	}
	.age-troubles ul.list-ttl li + li {margin-top: 1rem;}
	.age-troubles ul dl dd {
		font-size: 1.2rem;
		padding: 0 0 1rem 0.5rem;
	}

	
	
	/*-----------------------------

	stain

	------------------------------*/
	.stain-area {}
	.stain-area h2 {
		font-size: 1.6rem;
		margin-bottom: 3rem;
	}
	
	.stain-area h2 span {
		display: block;
		font-size: 1.2rem;
		padding: 0;
	}

	.stain-inner {
		flex-wrap: wrap;
		margin-bottom: 3rem;
		flex-direction: column-reverse;
	}
	
	.stain-inner .stain-txt {
		width: 100%;
		max-width: 100%;
		padding-right: 0;
		margin-bottom: 2rem;

	}
	
	.stain-inner .stain-img {
		width: 80%;
		max-width: 80%;
		margin: 0 auto 2rem;
	}
	
	ul.prp-doctor li dl {display: flex;}
	ul.prp-doctor li dl dt,
	ul.prp-doctor li dl dd,
	ul.prp-doctor li p {font-size: 1.2rem !important;}
	
	ul.prp-doctor li dl dt {width: 40rem;}
	ul.prp-doctor li dl dd {width: 60rem;}
	
	.stain-inner .stain-txt p {
		font-size: 1.3rem;
		line-height: 2;
	}
	
	
	.recommendation-area {
		padding: 7rem 2rem 3rem;
	}
	
	.recommendation-area .recommendation {
		width: 100%;
		height: 40px;
		line-height: 40px;
		font-size: 1.3rem;
	}

	.recommendation-area ul {}
	.recommendation-area ul li {
		color: #fff;
		background: #D49D91;
		border-radius: 5px;
		font-size: 1.2rem;
		padding: 0.5rem 1.5rem;
	}
	

	ul.stain-list {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 5rem 0;
		margin: 0 0 5rem;
	}
	
	ul.stain-list li {
		flex: 1 1 calc(50% - 10px);
		display: flex;
		flex-direction: column;
	}

	ul.stain-list li h3 {
		font-size: 1.6rem;
	}

	ul.stain-list li .stain-list-img img {
		width: 100%;
		height: 240px;
		object-fit: cover;
	}
	
	
	 .price-area-list {
		gap: 1rem;
		width: max-content;
		flex-wrap: nowrap;
		align-items: flex-start;
	 }

	 .price-area-list li {
		min-width: 220px;
		flex-shrink: 0;
	 }

	
	.price-area-list li dl dt {
		font-size: 1.2rem;
		height: 40px;
		line-height: 40px;
	}

	.price-area-list li dl dd {
		font-size: 1.4rem;
		padding: 1.5rem 1rem;
	}
	
	.price-area-list li dl:first-of-type dd {
	    min-height: auto;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	}
	
	.price-area-list li dl:last-of-type dd {
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    height: auto;
	    border-bottom: none;
	}

	.page-template-page-price .price-area p {
		font-size: 1.2rem;
		margin-bottom: 3rem;
	}
	
	/*-----------------------------

	price

	------------------------------*/
	p.price-txt {
		font-size: 1.3rem;
		text-align: center;
	}

	ul.price-menu {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 2rem;
		margin-bottom: 5rem;
	}

	ul.price-menu li a {
		font-size: 1.1rem;
		height: auto;
		padding: 1rem 0;
		line-height: 2;
		border-radius: 5px;
	}
    
	table.price-table01 th:first-child {font-size: 1.4rem;}
	.price-area span.lato {font-size: 1.4rem;}
	
	.price-area h3 {
		font-size: 1.6rem;
		border-left: 3px solid #4F85AB;	
	}
	
	
	/*-----------------------------

	ordermade

	------------------------------*/

	.ordermade-menu ul {
		padding-top: 5rem;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 2rem;
		margin: 0 0 5rem;	
	}
	.ordermade-menu ul li {}
	.ordermade-menu ul li {
	}

	
	
	/*-----------------------------

	artmake

	------------------------------*/
	.main-img {
		margin-bottom: 3rem;
	}
	ul.artmake-top {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 0;
		margin: 5rem 0;
	}
	
	ul.artmake-top li {
		background: none !important;
		border-bottom: 2px dotted #CCC ;
		padding: 2rem 2rem !important;
	}
	
	ul.esthetic-top li h3 {
		font-size: 1.6rem;
		margin-bottom: 1rem;
	}

	/*-----------------------------

	PRP

	------------------------------*/
	.prp-graph {
		flex-wrap: wrap;
		margin: 5rem 0;
	}
	
	.graph-left {padding: 0 4rem;margin-bottom: 3rem;}
	.graph-right {padding: 0;}

	.stain-inner .prp-txt {
		width: 100% !important;
		max-width: 100% !important;
		padding-right: 0 !important;

	}
	.stain-inner .prp-img {
		width: 100% !important;
		max-width: 100% !important;
	}
	
	.price-area h2 {
		font-size: 1.6rem;	
	}

	.flow-area {
		border: 5px solid #DCEEF2;
		margin-bottom: 4rem;
	}
	.flow-area .flow-inner {align-items: center; flex-wrap: wrap;}
	.flow-area ol {
		width: 100%;
		max-width: 100%;
		padding: 2rem 3rem;
	}

	.flow-area .flow-img {
		width: 100%;
		max-width: 100%;
	}

	.flow-area ol li dl dt {
		font-size: 1.6rem;
	}
	.flow-area ol li dl dt span {
		font-size: 3rem !important;
	}
	.flow-area ol li dl dd {
		font-size: 1.3rem;
		line-height: 1.8;
	}
	
	
	

	/*-----------------------------
	
	404
	
	------------------------------*/
	
	.error-area {
		padding: 5rem 0;
	}
	
	
	
	
	
	/*-----------------------------

	footer

	------------------------------*/
	.contact-info {
		text-align: center;
		position: relative;
		margin-bottom: 5rem;
	}
	
	.contact-info .scroll_wrap {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
	}
	.contact-info .scroll_wrap ul li {padding: 1rem;}
	.contact-info .scroll_wrap ul li:nth-child(even) {
		margin-top: 5rem;
	}


	.contact-info .inner {
		padding: 0 2rem;
		box-sizing: border-box;
		max-width: 100rem;
		width: 100%;
		margin: 0 auto;
		position: relative;
		z-index: 10;
		background-color: rgba(255,255,255,0.9);
	}

	.contact-info h2 {
		font-size: 1.8rem;
	}

	.contact-info ul {flex-wrap: wrap; margin-bottom: 1rem;}
	.contact-info ul.info-list li {width: 48%; margin-bottom: 1rem;}
	.contact-info ul.info-list li span {display: block; padding-bottom: 0.5rem;}
	.contact-info ul.info-list li a {
		width: 100%;
		min-height: 55px;
		padding: 1rem 0 0.8rem;
		font-size: 1.2rem;
	}


	.contact-info ul.info-list li.tel a{padding-top: 1.5rem;}
	.contact-info ul.info-list li.tel span {padding-bottom: 0;}
	.contact-info p {
		text-align: left;
		font-size: 1.2rem;
		margin-bottom: 1rem;
	}
	.contact-info dl {text-align: left;}
	.contact-info dl + dl {margin-top: 2rem;}
	.contact-info dl dt {
		color: #7DB2C1;
		font-size: 1.5rem;
		margin-bottom: 0.5rem;
	}
	.contact-info dl dd {
		font-size: 1.3rem;
	}

	.map iframe {
		width: 100%;
		height: 340px;
		vertical-align: bottom;
	}

	footer {
		padding: 5rem 0 0;
	}
	footer .footer-logo {
		text-align: center;
	}
	footer .footer-logo,
	footer ul.footer-nav{
		flex-wrap: wrap;
		margin-bottom: 2rem;
	}
	footer ul.footer-nav li {
		width: 100%;
	}
	footer ul.footer-nav li + li {margin-left: 0;}
	footer ul.footer-nav li a {
		font-size: 1.4rem;
		padding: 1rem 0;
		display: block;
		border-bottom: 1px solid #fff;
	}
	footer .footer-info {flex-wrap: wrap;}
	footer .footer-menu {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
		margin-bottom: 3rem;
	}

	footer .footer-menu ul:nth-child(-n+3) {
		margin-bottom: 1rem;
	}
	
	footer .footer-menu ul {
		width: 100%;
		margin-right: 0;
	}
	footer .footer-menu ul li .top {
		font-size: 1.4rem;
		font-weight: bold;
	}
	
	footer .footer-menu ul li .top span {
		font-size: 1.6rem;
		padding-right: 0.5rem;
	}

	footer .footer-menu ul li ul.child {
		width: 100%;
		padding: 0 1rem;
		margin-left: 0.8rem;
		border-left: 1px solid #CCCCCC;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	footer .footer-menu ul li ul.child li {width: 48%;}
	footer .footer-menu ul li ul.child li a {font-size: 1.1rem;}
	footer .footer-menu ul li ul.child li + li {margin-top: 0.5rem;}
	footer .footer-address {
		width: 100%;
		max-width: 100%;
		padding: 2rem;
		height: auto;
	}
	table.consultation {width: 100% !important;}
	table.consultation th,
	table.consultation td {
		font-size: 1.1rem !important;
		padding: 0 !important;
	}
	
	table.consultation td {
		height: 4em;
		font-size: 1.2rem;
		border-top: 1px solid #707070;
	}

	table.consultation tbody tr:first-child th {
		font-size: 1.2rem;
		font-weight: normal;
		white-space: nowrap;
		width: 8%;
	}

	table.consultation tbody tr:first-child th:first-child {
		font-weight: bold;
		font-size: 1.2rem;
		width: 15%;
		padding-left: 1em;
	}

	table.consultation tbody tr:last-child th {
		font-size: 0;
		padding: 0.5em;
	}

	footer .footer-address .time {flex-wrap: wrap;}
	footer .footer-address dl {
		width: 100%;
		margin-bottom: 0;
		border-bottom: 1px solid #ccc;
		padding: 0.4rem 0;
	}

	footer .footer-address dl dt {
		width: 50%;
		max-width: 50%;
	}

	footer .footer-address dl dd {
		width: 100%;
		max-width: 100%;
	}

	footer .footer-address ul {
		width: 100%;
		margin-left: auto;
		padding-top: 1rem;
		margin-bottom: 1rem;
	}
	
	footer .footer-address ul li {font-size: 1.2rem;}
	footer .footer-address dl dt,
	footer .footer-address dl dd {font-size: 1.4rem;}
	footer .footer-address p {
		font-size: 1.3rem;
	}

	footer .footer-policy {
		margin: 1rem 0 4rem;
	}

	footer .footer-policy li + li {margin-left: 2rem;}
	footer .copyright {
		font-size: 1rem;
		padding: 1rem 0;
	}

	.side-btn {
		width: 20%;
		position: fixed;
		bottom: 1rem;
		right: 1rem;
		z-index: 100;
	}

	.wp-pagenavi .page, .wp-pagenavi .current {
	    width: 2.5rem;
	    height: 2.5rem;
	    border-radius: 50%;
	    font-size: 1.2rem;
	    font-weight: 700;
	    line-height: 2.5 !important;
	}

	.scrollable_sp {overflow-x: hidden !important;}
	.scrollable_sp .scroll-hint-icon-wrap {display: none !important;}
	table.esthetic-table_sp th,
	table.esthetic-table_sp td {
		width: 100% !important;
		display: block;
	}
	
	.price-area {
	    margin-bottom: 5rem;
	}
	
	.char::before{
		width: 5px;
		height: 5px;
 		top: -5px;
		left: 5px;
	}
	
	#about-cont,
	.def-list-cont,
	ul.list-ttl.def-list li dl.w100{
		display: block;
	}
	
	#about-cont #img{
		min-width: 100%;
		margin-right: 0px;
		margin-bottom: 20px;
	}
	
	ul.list-ttl.def-list li dl.w100 dt{
		width: 100%;
		margin-left: 0px;
		margin-top: 20px;
	}
	
	#about-cont,
	ul.list-ttl.def-list{
		margin-bottom: 7rem;
	}
	
	ul.list-ttl.def-list li dl,
	.esthetic-img.esthetics,
	ul.age-list.list-ttl{
		width: 100%;
	}
	
	ul.list-ttl.def-list li dl + dl{
		margin-top: 30px;
	}
	
	h3.age-ttl{
		font-size: 17px;
	}
	#age-box{
		padding: 30px 0px 25px;
		display: block;
	}
	
	p.txt.border-txt{
		text-align: left;
	}
	
	ul.age-list.list-ttl{
		margin-left: 0px;
	}
	
	p.txt.txt75{
		padding-left: 0px;
		padding-right: 0px;
	}
	.accordion-header,
	.accordion-content{
		font-size: 1.4rem;
	}
	.ordermade-menu ul li{
		padding: 10px 0px 25px;
	}


}