/*
Theme Name: tanaka-cl
Author: tanaka-cl
Author URI: https://www.tanaka-cl.or.jp/
Description: tanaka-cl
Version: 2026.1
*/

/*-------------------------------
 
reset CSS
 
-------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: none;
font-style: normal;
text-align: left;
zoom: 1;
}
html, body, table {
-webkit-text-size-adjust: 100%;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
article {
overflow: hidden;
}
table {
border-collapse: collapse;
font-family: inherit;
}
h1, h2, h3, h4, h5, h6 {
font-size: 100%;
font-weight: normal;
line-height: 1.5;
}
input, textarea, select {
font-family: inherit;
font-size: 16px;
}
input[type="button"], input[type="text"], input[type="submit"] {
-webkit-appearance: none;
border-radius: 0;
}
textarea {
resize: vertical;
-webkit-appearance: none;
border-radius: 0;
}
th, td {
border-collapse: collapse;
}
ul, ol {
list-style-type: none;
}
img {
vertical-align: text-bottom;
vertical-align: -webkit-baseline-middle;
max-width: 100%;
height: auto;
width :auto;
}
div {
box-sizing: border-box;	
}
a {
color: #000;
text-decoration: none;
}
a:hover {
opacity: 0.8;
}
address a {
color: #fff;
}
body {
color: #000;
display: initial;
font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
line-height: 1.8em;
}
figcaption {
line-height: 1.5em;
}

/*-------------------------------
 
header
 
-------------------------------*/
header {
	background: rgba(255, 255, 255, 1);
	display: table;
	position: fixed;
	top : 0;
	transition: all 0.3s;
	width: 100%;
	z-index: 1000;
}
header .pc {
	border-bottom: 2px solid #b8a36e;
	vertical-align: middle;
}
a {
	color: #4a4a4a;
    display: block;
}
a:hover {
	color: #694d30;
}
strong {
	font-weight: bold;
}
header .logo {
	float: left;
	max-width: 340px;
	width: 25%;
}
header a {
	box-sizing: border-box;
	display: block;
	font-weight: bold;
	padding: .5em 1em;
}
header .header-nav-box a:hover {
	background: #eceae3;
}
.header_inner {
	margin: auto;
	max-width: 1380px;
	padding: 10px 1em 0 1em;
}
.header-innerL {
	float: left;
	max-width: 310px;
	width: 25%;
}
.header-innerR {
	float: right;
	text-align: right;
	width: 75%;
}
.header-nav-box {
	display: flow-root;
	margin-top: .5em;
	width: 100%;
}
.header-nav-box nav ul {
	margin: auto;
	width: 90%;
}
.header-nav-box nav ul.parent {
	display: flex;
	float: right;
	width: fit-content;
}
.header-nav-box nav ul ul {
	background: #fff;
	border-bottom: 2px solid #b8a36e;
	box-sizing: border-box;
	display: none;
	padding: 0 2em;
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
}
.header-nav-box nav ul ul a {
	padding: 1em .5em .8em 2em;
	width: 100%;
}
.header-nav-box nav ul li:hover ul {
	display: flex;
	margin: auto;
	width: 100%;
}
.header-nav-box nav ul ul ul {
	border-bottom: none;
	padding: 0;
}
.header-nav-box nav ul li:hover ul ul {
	display: block;
}
.header-nav-box nav ul ul li {
	box-sizing: border-box;
	position: relative;
}
.header-nav-box nav ul.nav-anti-aging li {
	min-width: 12%;
}
.header-nav-box nav ul.nav-symptoms-diseases {
	justify-content: flex-end;
}
.header-nav-box nav ul.nav-symptoms-diseases li {
	min-width: inherit;
}
.header-nav-box nav ul ul li::before {
	background: url(img/common/icon-arrow01.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: .5em;
	margin-left: .5em;
	position: absolute;
    top: 1.3em;
    left: 0;
	width: 1.2em;
	height: 1.2em;
}
.header-nav-box nav ul ul li:hover::before {
	opacity: 1;
	z-index: 1;
}
.header-nav-box nav ul ul ul {
	position: relative;
}
.header-nav-box nav ul ul ul a {
	padding: .5em .5em .5em 2em;
	width: 100%;
}
.header-nav-box nav ul li:hover ul ul {
	display: block;
	position: relative;
	top: 0;
}
.header-nav-box nav ul ul li li {
	font-size: .9em;
	line-height: 1.5em;
}
.header-nav-box nav ul ul li li::before {
	background: no-repeat;
	content: "・";
	margin-right: 0;
	padding-left: 0;
	top: .5em;
	left: .25em;
}
.header-nav-box nav ul ul li li li {
	font-size: 1em;
}
.snipet {
	background: #694d30;
    border-radius: 30px;
    box-sizing: border-box;
    color: #fff;
    display: inline-block;
    font-family: sans-serif;
    font-size: .8em;
    line-height: 1em;
    padding: .5em 3em;
}
.header-access {
	margin-top: 1em;
	text-align: right;
}
.header-access p {
	display: inline;
}
.header-access .map {
	font-size: .9em;
	margin-right: 2.5em;
}
.header-access .map::before {
	background: url(img/common/icon-map.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: 1.5em;
	position: relative;
	top: 6px;
	width: 1.2em;
	height: 1.5em;
}
.header-access .tel {
	color: #463320;
	font-size: 1.5em;
}
.header-access .tel::before {
	content: "TEL.";
	display: inline-block;
	font-size: .8em;
	margin-right: 1em;
}
.side-btn-box {
	position: fixed;
    top: 430px;
    right: 20px;
    width: 120px;
}
.side-btn-box a {
	padding: 0;
}
.side-btn-box a:first-of-type {
	margin-bottom: 2em;
}
.side-btn-box a:nth-of-type(2), .side-btn-box a:nth-of-type(3) {
	color: #fff;
	filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.3));
	font-size: .9em;
	margin: auto;
    text-align: center;
}
.side-btn-box a:nth-of-type(2) {
	margin-bottom: 1em;
}
.side-btn-box a:nth-of-type(2) img, .side-btn-box a:nth-of-type(3) img {
	display: block;
	margin: auto;
	width: 60%;
}
.side-btn-box a:hover {
	opacity: .9;
}

/*-------------------------------
 
footer
 
-------------------------------*/
footer {
	font-size: .9em;
}
.footer-nav-box {
	background: #f5f2f0;
}
.footer-nav-box p {
	margin-bottom: 1.2em;
	padding-bottom: .8em;
	position: relative;
}
.footer-nav-box p::after {
	background: #8c6740;
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	width: 50px;
	height: 1px;
}
.footer-nav-box a {
	color: #4d4d4d;
	font-family: sans-serif;
}
.footer-nav-box a:hover {
	opacity: 1;
	text-decoration: underline;
}
.footer-nav-box ul {
	line-height: 1.5em;
	padding-left: 1.2em;
}
.footer-nav-box ul li {
	list-style-type: disc;
}
.footer-nav-box ul li::marker {
	font-size: .4em;
}
.footer-nav-box ul a {
	font-size: .9em;
	width: fit-content;
}
.nav-box-inner01, .nav-box-inner02 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
}
.nav-box-inner01 {
	padding: 4.5em 0 2em 0;
}
.nav-box-inner02 {
	padding: 2em 0 4.5em 0;
}
.nav-box-inner01 div, .nav-box-inner02 div {
	border-left: 1px solid #ccc;
	padding: 0 1.5em;
}
.footer-address {
	line-height: 1.8em;
	margin: 4em auto 3em auto;
	padding: 1.5em 0;
}
.footer-address a {
	margin: auto;
	max-width: 310px;
	width: 30%;
}
.footer-address address {
	font-family: sans-serif;
	margin-top: 1.5em;
}
.credit {
	background: #f5f2f0;
	color: #666;
	font-size: .8em;
	padding: .5em 0;
	text-align: center;
}
.top-btn {
	position: fixed;
	right: 0;
	bottom: 0;
	width: 50px;
	height: 50px;
	z-index: 1000;
}
.top-btn img {
	width: 100%;
}
.cta-btn {
	display: none;
}

/*-------------------------------
 
common
 
-------------------------------*/
.wrap { margin: auto; max-width: 1200px; width: 90%;}
.page-wrapper { margin: 4em auto 8em auto;}
.mt1em { margin-top: 1em!important;}
.mt2em { margin-top: 2em!important;}
.mt3em { margin-top: 3em!important;}
.mt4em { margin-top: 4em!important;}
.mt5em { margin-top: 5em!important;}
.mt6em { margin-top: 6em!important;}
.mb1em { margin-bottom: 1em!important;}
.mb2em { margin-bottom: 2em!important;}
.mb3em { margin-bottom: 3em!important;}
.mb4em { margin-bottom: 4em!important;}
.mb5em { margin-bottom: 5em!important;}
.mb6em { margin-bottom: 6em!important;}
.pl1em { padding-left: 1em!important;}
.pl2em { padding-left: 2em!important;}
.pl3em { padding-left: 3em!important;}
.pl4em { padding-left: 4em!important;}
.pl5em { padding-left: 5em!important;}
.mt30 { margin-top: 30px;}
.alignL { text-align: left;}
.alignC { text-align: center;}
.alignR { text-align: right;}
.pc { display: block;}
.sp { display: none;}
.floatL { float: left;}
.floatR { float: right;}
.breadcrumb { font-size: .8em; line-height: 1em; padding: 1em 0;}
.breadcrumb p { margin: auto; max-width: 1200px; text-align: right; width: 90%;}
.breadcrumb a { display: inline;}
.sub-main-box {
	background: url(img/common/bg01.png) no-repeat;
	background-size: cover;
	margin: auto;
	padding-top: 230px;
	width: 100%;
	height: 420px;
}
.sub-main-box h1, .sub-main-box .submain-title {
	color: #fff;
	font-size: 2.5em;
	line-height: 1.5em;
	margin-left: 1em;
}
.sub-main-box h1 span, .sub-main-box .submain-title span {
	color: #c7b299;
	display: block;
	font-size: .6em;
	margin-top: .2em;
	margin-left: .5em;
}
.title-style01 {
	border-top: 1px solid #c3b8ac;
	border-bottom: 1px solid #c3b8ac;
	color: #694d30;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-size: 1.8em;
	font-weight: bold;
	margin-top: 4em;
	margin-bottom: .8em;
	padding: .8em 0;
	text-align: center;
}
.title-style01:first-of-type {
	margin-top: 0!important;
}
.title-style02 {
	background: #fff;
	border-radius: 10px;
	color: #694d30;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-size: 1.8em;
	font-weight: bold;
	margin-bottom: 2em;
	padding: .8em 0;
	text-align: center;
}
.title-style01 span, .title-style02 span {
	color: #333;
	display: block;
	font-size: .6em;
	margin-bottom: 1em;
	text-align: center;
}
.title-style02-1 {
	background: #694d30;
	border-radius: 10px;
	color: #fff;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-size: 1.8em;
	font-weight: bold;
	margin-bottom: 2em;
	padding: .8em 0;
	text-align: center;
}
.title-style02-1 span {
	display: block;
	font-size: .6em;
	margin-bottom: 1em;
	text-align: center;
}
.title-style03 {
	border-bottom: 1px dashed #694d30;
	color: #333;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.5em;
	margin-top: 2em;
	margin-bottom: .8em;
	padding-bottom: .5em;
	position: relative;
}
.bg-style01 .title-style03, .bg-style03 .title-style03, .bg-style03 .q-font-style01 {
	margin-top: 0;
}
.title-style04 {
	color: #694d30;
	font-size: 1.3em;
	font-weight: bold;
	margin-bottom: 1em;
}
.title-style05 {
	background: #eceae3;
	border-radius: 10px;
	box-sizing: border-box;
	color: #333;
	font-size: 1.8em;
	font-weight: bold;
	padding: 1em 1.5em;
}
.title-style05 span:first-of-type {
	font-size: .7em;
	margin-right: 1.5em;
}
.title-style05 span:last-of-type {
	font-size: .5em;
	margin-left: 1.5em;
}
.title-style06 {
	color: #333;
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: .6em;
}
.title-style07 {
	border-bottom: 1px solid #c3b8ac;
	color: #694d30;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.3em;
	margin-top: 2em;
	margin-bottom: .8em;
	padding-bottom: .5em;
	position: relative;
}
.bg-style02 .title-style07 {
	margin-top: 0;
}
.title-style08 {
	border-top: 1px solid #ccc;
	font-size: 2em;
	line-height: 1.5em;
	padding-top: 2em;
	position: relative;
}
.title-style08 span:first-of-type {
	display: block;
	font-size: .6em;
}
.title-style08 span:last-of-type {
	font-size: .4em;
	margin-left: 1em;
}
.title-style08::before {
	background: #ae9b3d;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 50px;
	height: 3px;
}
.title-style09 {
	font-size: 1.5em;
	margin: 1.5em auto .5em auto;
}
.title-style09::before {
	color: #333;
	content: "●";
	margin-right: .25em;
}
.copy-style01 {
	color: #b8a36e;
	font-size: 1.5em;
}
.copy-style02 {
	color: #694d30;
	font-size: 1.5em;
	line-height: 1.8em;
	margin-bottom: 1em;
}
.font-style01 {
	font-size: 1.5em;
}
.font-style02 {
	background: #f7f7f3;
	padding: 1em 1.5em;
}
.q-font-style01 {
	border-bottom: 1px dashed #694d30;
	color: #333;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.5em;
	margin-top: 2em;
	margin-bottom: .8em;
	padding-bottom: .5em;
	position: relative;
}
.q-font-style01::before {
	content: "Q.";
	margin-right: .25em;
}
.a-font-style01, .a-font-style02-1, .a-font-style02-2 {
	font-size: 1.2em;
	margin-bottom: 1em;
}
.a-font-style01::before, .a-font-style02-1::before, .a-font-style02-2::before {
	margin-right: .25em;
}
.a-font-style01::before {
	content: "A.";
}
.a-font-style02-1::before {
	content: "A.1-";
}
.a-font-style02-2::before {
	content: "A.2-";
}
.bg-style01 {
	background: #f7f7f3;
	border-radius: 10px;
	box-sizing: border-box;
	display: flow-root;
	padding: 4em 2em;
}
.bg-style02 {
	background: #eceae3;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 3em;
}
.bg-style03 {
	background: #fff;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 3em;
}
.bg-style04 {
	background: #f5f5f5;
	box-sizing: border-box;
	padding: 1.5em 2em;
}
figure.bg-style03 {
	padding: 0;
}
.bg-style01 .bg-style03 {
	padding: 1.8em 1.2em;
}
.bg-style01 .list-style01 {
	margin-bottom: 0;
}
.bg-style03 .txt-box-style03 {
	margin-top: 1.2em;
	margin-bottom: 1.2em;
}
.border-box01 {
	border: 1px solid #694d30;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 1.2em;
}
.border-box02 {
	border: 1px solid #694d30;
	border-radius: 10px;
	box-sizing: border-box;
	margin-bottom: 2em;
	padding: 2em 1.5em;
	width: 100%;
}
.border-box02 a {
	width: fit-content;
}
.txt-box01 {
	background: #fff;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 1em;
}
.video-box iframe {
	display: block;
	margin: auto;
	max-width: 720px;
	width: 80%;
}
.table-style01 {
	border: 1px solid #c3b8ac;
	width: 100%;
}
.bg-style01 .table-style01, .table-width01 {
	margin: auto;
	width: 85%;
}
.alignC th, .alignC td {
	text-align: center;
}
.table-style01 th, .table-style01 td, .table-style02 th, .table-style02 td, .table-style03 th, .table-style03 td, .time-table-style01 th, .time-table-style01 td {
	border-bottom: 1px solid #c3b8ac;
	border-left: 1px solid #c3b8ac;
	padding: .8em;
	vertical-align: top;
}
.table-style01 th {
	background: #a59483;
	color: #fff;
	padding: 1.2em;
	width: 18%;
}
.table-style01 td {
	background: #fff;
	color: #333;
	padding: 1.2em;
}
.table-style01 dl {
	display: grid;
    grid-template-columns: 1fr 8fr;
    grid-gap: 0 2em;
    width: fit-content;
}
.time-table-style01 th {
	background: #a59483;
	color: #fff;
}
.table-style02 {
	border: 1px solid #b3b3b3;
	color: #333;
	padding: 1.2em;
}
.table-width01 {
	width: 80%;
}
.th-style01 {
	background: #a59483!important;
}
.th-style02 {
	background: #c7b299!important;
}
.th-style03 {
	background: #958675!important;
}
.tr-style04-1 th, .tr-style04-1 td, .th-style04-1, .td-style04-1 {
	background: #f1eeeb!important;
	color: #333!important;
	vertical-align: middle!important;
}
.tr-style04-2 th, .tr-style04-2 td, .th-style04-2, .td-style04-2 {
	background: #f8f7f5!important;
	color: #333!important;
	vertical-align: middle!important;
}
.tr-style04-3 th, .tr-style04-3 td {
	background: #a59483;
	color: #fff;
}
.th-style05 {
	background: #fff;
	color: #333;
}
.tr-style06-1 th, .tr-style06-1 td {
	background: #cce3f2;
	color: #333;
}
.tr-style06-2 th, .tr-style06-2 td {
	background: #fde9d2;
	color: #333;
}
.td-style01 td:first-of-type {
	width: 15%;
}
.th-width01 th {
	width: auto!important;
}
.time-table-style01 {
	border: 1px solid #c3b8ac;
	width: 100%;
}
.time-table-style01 th, .time-table-style01 td {
	text-align: center;
}
.shapes01 {
	color: #a59483;
	font-size: 1.2em;
}
.table-style04 {
	width: 100%;
}
.table-style04 th, .table-style04 td {
	padding: 1em;
	vertical-align: top;
}
.table-style04 td {
	width: 80%;
}
.btn-style01 {
	float: right;
	font-size: 1.1em;
	margin: 1em .5em 0 0;
	padding-left: 2.5em;
	position: relative;
	transition: 0.5s;
}
.btn-style01::before {
	background: url(img/common/icon-arrow01.svg) no-repeat;
	content: "";
	display: inline-block;
	position: absolute;
	transition: 0.5s;
    top: -.2em;
    left: 0;
	width: 2em;
	height: 2em;
}
.btn-style01-1 {
	font-size: 1.1em;
	margin: 1.8em .5em 0 0;
	padding-left: 2.5em;
	position: relative;
	transition: 0.5s;
	width: fit-content;
}
.btn-style01-1::before {
	background: url(img/common/icon-arrow01.svg) no-repeat;
	content: "";
	display: inline-block;
	position: absolute;
	transition: 0.5s;
    top: -.2em;
    left: 0;
	width: 2em;
	height: 2em;
}
.btn-style02 {
	background: #fff;
	border-radius: 50px;
	float: none;
	font-size: 1.1em;
	margin: 1em .5em 0 0;
	min-width: 30%;
	padding: 1.5em 1.2em 1.5em 4.2em;
	position: relative;
	transition: 0.5s;
	width: fit-content;
}
.btn-style02::before {
	background: url(img/common/icon-arrow01.svg) no-repeat;
	content: "";
	display: inline-block;
	position: absolute;
	transition: 0.5s;
    top: 1.3em;
    left: 1.5em;
	width: 2em;
	height: 2em;
}
.btn-style02:hover {
	padding: 1.5em .2em 1.5em 5.2em;
	transition: 0.5s;
}
.btn-style02:hover::before {
	left: 2.5em;
	transition: 0.5s;
}
.btn-style02-1 {
	background: #fff;
	border-radius: 50px;
	float: none;
	font-size: 1.1em;
	margin: 1em .5em 0 0;
	padding: 1.5em 1.2em 1.5em 4.2em;
	position: relative;
	transition: 0.5s;
	width: 50%;
}
.btn-style02-1::before {
	background: url(img/common/icon-arrow01.svg) no-repeat;
	content: "";
	display: inline-block;
	position: absolute;
	transition: 0.5s;
    top: 1.3em;
    left: 1.5em;
	width: 2em;
	height: 2em;
}
.btn-style02-1:hover {
	padding: 1.5em .2em 1.5em 5.2em;
	transition: 0.5s;
}
.btn-style02-1:hover::before {
	left: 2.5em;
	transition: 0.5s;
}
.hr-style01 {
	border-top: 1px dashed #ccc;
	width: 90%;
}
.btn-style03 {
	background: #694d30;
	border-radius: 10px;
	box-sizing: border-box;
	color: #fff;
	display: table;
	font-size: .9em;
	line-height: 1.5em;
	padding: .6em;
	text-align: center;
	width: 100%;
}
.btn-style03 span {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.btn-style03:hover {
	background: #8c6b4c;
	color: #eceae3;
	opacity: 1;
}
.btn-style04 {
	background: #694d30;
	border-radius: 60px;
	box-sizing: border-box;
	color: #fff;
	display: table;
	font-size: 1.1em;
	line-height: 1.5em;
	padding: 1em 1.5em;
	text-align: center;
	width: 100%;
}
.btn-style04:hover {
	background: #8c6b4c;
	color: #eceae3;
	opacity: 1;
}
.btn-style04 span {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.btn-style05 {
	background: #eceae3;
	border-radius: 60px;
	box-sizing: border-box;
	color: #333;
	display: table;
	font-size: 1.1em;
	line-height: 1.5em;
	padding: 1em;
	text-align: center;
	width: 100%;
}
.btn-style05 span {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.btn-style05:hover {
	background: #8c6b4c;
	color: #eceae3;
	opacity: 1;
}
.btn-style06 {
	background: #694d30;
	border-radius: 50px;
	color: #fff;
	float: none;
	font-size: 1.1em;
	margin: 1em .5em 0 0;
	min-width: 30%;
	padding: 1.5em 1.2em 1.5em 4.2em;
	position: relative;
	transition: 0.5s;
	width: fit-content;
}
.btn-style06::before {
	background: url(img/common/icon-arrow02.svg) no-repeat;
	content: "";
	display: inline-block;
	position: absolute;
	transition: 0.5s;
    top: 1.3em;
    left: 1.5em;
	width: 2em;
	height: 2em;
}
.btn-style06:hover {
	color: #fff;
	padding: 1.5em .2em 1.5em 5.2em;
	transition: 0.5s;
}
.btn-style06:hover::before {
	left: 2.5em;
	transition: 0.5s;
}
.link-style01 {
	color: #000;
	display: inline;
	text-decoration: underline;
}
.btn-box-wrapper01 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: .8em 1em;
	margin-top: 6em;
}
.cta-btn-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: .8em 3em;
	margin: auto;
	width: fit-content;
}
.cta-btn01, .cta-btn02 {
	border-radius: 30px;
	box-sizing: border-box;
	color: #fff;
	display: table;
	font-size: 1.5em;
	margin: auto;
	padding: .5em 2em;
}
.cta-btn01 span, .cta-btn02 span {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.cta-btn01:hover, .cta-btn02:hover {
	color: #fff;
}
.cta-btn01 {
	background: #ee8213;
	position: relative;
}
.cta-btn01 span::before {
	background: url(img/common/icon-tel-wh.svg) no-repeat;
	content: "";	
	display: inline-block;
	margin-right: .5em;
	position: relative;
	top: 4px;
	width: 1.2em;
	height: 1.2em;
}
.cta-btn02 {
	background: #29abe2;
	position: relative;
}
.cta-btn02 span::before {
	background: url(img/common/icon-mail-wh.svg) no-repeat;
	content: "";	
	display: inline-block;
	margin-right: .5em;
	position: relative;
	top: 4px;
	width: 1.3em;
	height: .8em;
}
.cta-box01 {
	background: #694d30;
	border-radius: 10px;
	margin: auto;
	padding: 10px;
	width: 80%;
}
.cta-box01-inner {
	border: 1px solid #fff;
	border-radius: 5px;
	box-sizing: border-box;
	padding: 1em 1em 1.5em 1em;
}
.cta-box01 p {
	color: #fff;
	font-size: 1.5em;
	margin-bottom: .8em;
	text-align: center;
}
.cta-box01 .cta-btn01 {
	border: 1px solid #fff;
	filter: drop-shadow(10px 10px 7px rgba(0, 0, 0, 0.1));
	webkit-transform: translateZ(0);
  	transform: translateZ(0);
}
.img-box-style01 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 5em 4em;
	margin-top: 4em;
}
.img-box-style01 figcaption {
	border-bottom: 1px dashed #8c6740;
	color: #333;
	font-size: 1.5em;
	margin-bottom: .5em;
	padding: 1em 0 .5em 0;
	text-align: left;
}
.img-box-style02 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 4em;
}
.img-box-style03 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 4em;
}
.img-box-style03-1 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 0 3em;
}
.img-box-style03-1 .img-style01 {
	margin: 0!important;
	width: 100%!important;
}
.img-box-style02 figcaption, .img-box-style03 figcaption {
	color: #333;
	font-size: 1.5em;
	margin-bottom: .5em;
	padding: .6em 0 .5em 0;
	text-align: center;
}
.img-box-style01 .btn-style01 {
	float: left;
	margin-top: .5em;
}
.txt-box-style01 {
	display: grid;
	grid-template-columns: 2fr 1fr;
	grid-gap: 4em;
	margin-top: 4em;
	margin-bottom: 4em;
}
.txt-box-style02 {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	grid-gap: 2em;
	margin-top: 4em;
	margin-bottom: 4em;
}
.txt-box-style03 {
	display: grid;
	grid-template-columns: 1.5fr 1fr;
	grid-gap: 2em;
	margin-top: 4em;
	margin-bottom: 4em;
}
.txt-box-style04 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 2em;
}
.txt-box-style05 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 1.5em 2em;
}
.txt-box-style06 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 1.5em 2em;
}
.txt-box-style05 .bg-style01 {
	filter: drop-shadow(10px 10px 7px rgba(0, 0, 0, 0.1));
	padding: 2em 2em 3em 2em;
	position: relative;
	webkit-transform: translateZ(0);
  	transform: translateZ(0);
}
.drop-shadow01 {
	filter: drop-shadow(10px 10px 7px rgba(0, 0, 0, 0.1));
	webkit-transform: translateZ(0);
  	transform: translateZ(0);
}
.img-box-style01 img, .img-box-style02 img, .txt-box-style01 img, .txt-box-style02 img, .txt-box-style03 img, .txt-box-style04 img {
	border-radius: 10px;
}
.img-style01 {
	border-radius: 10px;
	display: block;
}
.figure-width01 {
	display: block;
	margin: auto;
	width: 80%;
}
.bg-style01 .img-style01, .bg-style02 .img-style01 {
	margin: 4em auto 0 auto;
	width: 85%;
}
.img-style02 {
	border-radius: 10px;
	display: block;
}
.list-style01 {
	list-style: disc;
	margin-bottom: 2em;
	padding-left: 1em;
}
.list-style02 {
	list-style: disc;
	line-height: 3em;
	margin-bottom: 4em;
	padding-left: 1em;
}
.list-style03 {
	list-style: disc;
	padding-left: 1.3em;
}
.list-style04 {
	list-style: decimal;
	margin-bottom: 2em;
	padding-left: 1em;
}
.access-list-style {
	margin: 3em auto 6em auto;
	padding-left: 3em;
	position: relative;
	text-indent: -2.5em;
}
.access-list-style li {
	line-height: 1.2em;
	margin: 1.5em 0;
	position: relative;
}
.access-list-style li:first-of-type::before {
	background: url(img/access/icon-map.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: 8px;
	position: relative;
	top: 8px;
	width: 2em;
	height: 2em;
}
.access-list-style li:nth-of-type(2)::before {
	background: url(img/access/icon-tel.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: 8px;
	position: relative;
	top: 8px;
	width: 2em;
	height: 2em;
}
.access-list-style li:nth-of-type(3)::before {
	background: url(img/access/icon-train.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: 8px;
	position: relative;
	top: 10px;
	width: 2em;
	height: 2em;
}
.access-list-style li:nth-of-type(4)::before {
	background: url(img/access/icon-bus.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: 8px;
	position: relative;
	top: 10px;
	width: 2em;
	height: 2em;
}
.access-list-style li:nth-of-type(5)::before {
	background: url(img/access/icon-taxi.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: 8px;
	position: relative;
	top: 10px;
	width: 2em;
	height: 2em;
}
.access-list-style li:nth-of-type(6)::before {
	background: url(img/access/icon-car.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: 8px;
	position: relative;
	top: 12px;
	width: 2em;
	height: 2em;
}
.access-list-style li p {
	line-height: 1.8em;
	text-indent: 0;
}
.link-list-style {
	margin-top: 3em;
	padding-left: 1.5em;
    text-indent: -1.2em;
}
.link-list-style li {
	line-height: 1.5em;
	margin: 2em auto;
	position: relative;
}
.link-list-style li:before {
	background: url(img/links/icon-link.svg) no-repeat;
	content: "";
	display: inline-block;
	margin-right: .25em;
	position: relative;
	top: 3px;
	width: 1em;
	height: 1em;
}
.link-list-style li a {
	display: inline;
}
.iframe-style01 {
	border: 1px solid #b3b3b3;
	border-radius: 10px;
}
.red {
	color: #c1272d;
	font-weight: bold;
}
.brown {
	color: #8c6740;
}
.light-brown {
	color: #a59483;
}
.number01, .number02, .number03 {
	margin: 3em auto 0 auto;
	padding-left: 1.8em;
	text-indent: -1.8em;
}
.number01::before {
	content: "1.";
	margin-right: 1em;
}
.number02::before {
	content: "2.";
	margin-right: 1em;
}
.number03::before {
	content: "3.";
	margin-right: 1em;
}
.credit-logo {
	display: block;
	width: 50%;
}
.icon-style01 {
	display: block;
	margin-bottom: 1.5em;
	max-width: 100px;
	width: 25%;
}
.arrow01 {
	position: relative;
}
.arrow01::after {
	background: url(img/ultrasound/arrow01.svg) no-repeat;
	content: "";
	display: block;
	margin: 1em auto;
	width: 145px;
	height: 50px;
}
.arrow02 {
	position: relative;
}
.arrow02::after {
	background: url(img/common/arrow02.svg) no-repeat;
	content: "";
	display: block;
	margin: 1em auto;
	position: absolute;
	top: 32%;
    right: -2.5em;
	width: 28px;
	height: 24px;
}
.required {
	background: #ae9b3d;
	color: #fff;
	display: inline-block;
	font-size: .7em;
	font-weight: bold;
	line-height: 1.8em;
	margin-left: 1.5em;
	padding: .1em 1em 0em 1em;
	position: relative;
	top: -2px;
	width: fit-content;
}
.btn-submit {
	background: #8c6740;
	border-radius: 4px;
	color: #fff;
	font-weight: bold;
	letter-spacing: .1em;
	margin: 3em auto 0 auto;
	padding: .6em;
	text-align: center;
	width: 20%;
}
#closed, #general, #gastroscopy, #colonoscopy, #ultrasound, #anti-aging-dock, #anti-aging-price {
	margin-top: -30px;
	padding-top: 80px;
}

/*-------------------------------
 
top
 
-------------------------------*/
.main-box {
    background-position: center;
    margin: 100px auto 0 auto;
    position: relative;
    text-align: center;
}
.top-calendar-box {
	background: #fff;
    border-radius: 10px;
    font-size: .8em;
    line-height: 2em;
    padding: 1.2em;
    position: absolute;
    bottom: -50px;
    right: 150px;
}
.top-calendar-box table {
	font-family: sans-serif;
    width: 100%;
}
.top-calendar-box table tr {
    border-top: 1px solid #8c6740;
}
.top-calendar-box table th, .top-calendar-box table td {
    border-right: 1px solid #8c6740;
    text-align: center;
}
.top-calendar-box table td span {
    color: #8c6740;
}
.top-calendar-box table tr:first-of-type th:last-of-type, .top-calendar-box table td:last-of-type {
    border-right: none;
}
.top-calendar-box div:first-of-type p {
    display: inline-block;
}
.btn-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 0 1.5em;
    padding: 1em 0 0 0 !important;
}
.top-calendar-box .btn-style03-1 {
    padding: 2em .6em;
}
.xo-event-calendar table {
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}
.xo-event-calendar table.xo-month .month-week {
	font-size: 1em!important;
}
.xo-event-calendar table.xo-month .month-dayname td div,
.xo-event-calendar table.xo-month .month-event-title {
	text-align: center!important;
}
.xo-event-calendar table.xo-month .month-event-title {
	font-size: 1em!important;
	padding: .5em!important;
}
.top-title-style01 {
	color: #463320;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-size: 2.5em;
	line-height: 1em;
	position: relative;
	text-align: center;
}
.top-title-style01 span {
	color: #8c6740;
	display: block;
	font-size: .6em;
	margin-bottom: .25em;
	text-align: center;
}
.bg-style01 .top-title-style01 {
	margin-bottom: 1.5em;
}
.section01, .section02, .section03-inner, .section04, .section05, .section06, .section07-inner {
	margin: auto;
	max-width: 1200px;
    width: 90%;
}
.section01 {
	grid-gap: 1em;
	margin: 100px auto 0 auto;
}
.section01-inner .news-btn-style01 {
	border: 1px solid #ccc;
	border-radius: 10px;
	display: flex;
	margin-bottom: 1em;
	padding: .8em 2em;
}
.section01-inner .news-btn-style01:hover {
	background: #efefef;
	opacity: 1;
}
.section01-inner .others-category, .section01-inner .important-category {
	display: block;
	font-size: .8em;
	margin-right: 2em;
	min-width: 50px;
	padding: 0 2em;
	text-align: center;
}
.section01-inner .others-category {
	background: #f7f7f3;
	border: 1px solid #8c6740;
	color: #8c6740;
}
.section01-inner .important-category {
	background: #cd5257;
	border: 1px solid #cd5257;
	color: #fff;
}
.section01-inner .date {
	color: #8c6740;
	font-family: sans-serif;
	font-size: .8em;
	margin-right: 2em;
}
.section02 {
	margin: 6em auto 0 auto;
	padding: 6em 0;
	position: relative;
	text-align: center;
}
.section02::before {
	color: #eceae3;
    content: "Tanaka Gastrointestinal Clinic";
    font-size: 5em;
    line-height: 1.2em;
    position: absolute;
    top: -1em;
    left: 0;
    right: 0;
    z-index: -1;
}
.section02-inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 2em;
	margin-top: 3em;
}
.section02-inner .bg-style01 {
	filter: drop-shadow(10px 10px 7px rgba(0, 0, 0, 0.1));
	position: relative;
	webkit-transform: translateZ(0);
  	transform: translateZ(0);
}
.section02-inner .bg-style01 h3 {
	color: #8c6740;
	display: table-cell;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-size: 1.5em;
	height: 3em;
	margin-bottom: .5em;
	position: relative;
	vertical-align: bottom;
	padding-bottom: .5em;
}
.section02-inner .bg-style01 .inner {
	border-top: 1px solid #ccc;
	display: grid;
	grid-template-columns: 1fr 1.5fr;
	grid-gap: 1em;
	padding-top: 1em;
	position: relative;
}
.section02-inner .bg-style01:first-of-type .inner::before {
	background: url(img/top/01.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: 10px;
    right: 0;
    width: 100px;
    height: 80px;
    z-index: -1;
}
.section02-inner .bg-style01:nth-of-type(2) .inner::before {
	background: url(img/top/02.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: -88px;
    right: 0;
    width: 120px;
    height: 80px;
    z-index: -1;
}
.section02-inner .bg-style01:nth-of-type(3) .inner::before {
	background: url(img/top/03.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: -88px;
    right: 0;
    bottom: 10px;
    width: 126px;
    height: 80px;
    z-index: -1;
}
.section02-inner .bg-style01:nth-of-type(4) .inner::before {
	background: url(img/top/04.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: -88px;
    right: 0;
    width: 126px;
    height: 80px;
    z-index: -1;
}
.section02-inner .bg-style01:nth-of-type(5) .inner::before {
	background: url(img/top/05.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: -88px;
    right: 0;
    width: 120px;
    height: 80px;
    z-index: -1;
}
.section02-inner .bg-style01:nth-of-type(6) .inner::before {
	background: url(img/top/06.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: -88px;
    right: 0;
    width: 126px;
    height: 80px;
    z-index: -1;
}
.section02-inner .bg-style01:nth-of-type(7) .inner::before {
	background: url(img/top/07.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: -88px;
    right: 0;
    width: 110px;
    height: 80px;
    z-index: -1;
}
.section02-inner .bg-style01:nth-of-type(8) .inner::before {
	background: url(img/top/08.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: -88px;
    right: 0;
    width: 126px;
    height: 80px;
    z-index: -1;
}
.section02-inner .bg-style01:nth-of-type(9) .inner::before {
	background: url(img/top/09.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: -88px;
    right: 0;
    width: 126px;
    height: 80px;
    z-index: -1;
}
.section02-inner .bg-style01:nth-of-type(10) .inner::before {
	background: url(img/top/10.svg) no-repeat;
    content: "";
    display: block;
    font-size: 200px;
    position: absolute;
    top: -88px;
    right: 0;
    width: 110px;
    height: 80px;
    z-index: -1;
}
.section02 .bg-style01 p {
	display: block;
}
.section02 .bg-style01 .btn-style01 {
	display: inline-block;
	float: none;
}
.section03 {
	background: #f5f2f0;
	padding: 6em 0;
}
.section03 .btn-style02 {
	display: block;
	margin: 3em 0 0 0;
	width: fit-content;
}
.section03-inner {
	background: url(img/top/11_message.webp) no-repeat;
	background-position: top right;
	background-size: 50%;
	margin-top: 4em;
}
.section03-1-inner {
	overflow: hidden;
}
.section03-inner h3 {
	color: #8c6740;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-size: 1.8em;
	margin-bottom: .8em;
}
.section03-inner h3:nth-of-type(2) {
	border-top: 1px dashed #ccc;
	margin-top: 2em;
	padding-top: .6em;
}
.section03-1-inner div {
	border-top: 1px dashed #ccc;
	border-bottom: 1px dashed #ccc;
	float: left;
	margin-top: 2em;
    padding-top: .8em;
    padding-bottom: 3em;
	width: 60%;
}
.section03-2-inner {
	clear: both;
	float: none;
	margin-top: .6em;
}
.section04 {
	padding: 6em 0;
}
.section04-inner, .section05-inner {
    margin-top: 4em;
    overflow: hidden;
}
.section04-inner h3, .section05-inner h3 {
	color: #8c6740;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-size: 1.8em;
	margin-bottom: .8em;
	position: relative;
}
.section04-1-inner, .section05-1-inner {
	margin-bottom: 2em;
	overflow: hidden;
}
.section04-1-inner .bg-style02, .section05-1-inner .bg-style02 {
	margin-top: 6em;
	margin-bottom: 4em;
	padding: 3em 2em 0 2em;
	position: relative;
}
.section05-1-inner:nth-of-type(3) .bg-style01 {
	padding: 3em 2em 8em 2em;
}
.section04-1-inner h3::before, .section05-1-inner h3::before {
	content: "";
    display: block;
    width: 70px;
    height: 70px;
    position: absolute;
    top: -30%;
    left: 0;
}
.section04-1-inner:first-of-type h3, .section04-1-inner:nth-of-type(3) h3, .section05-1-inner:first-of-type h3, .section05-1-inner:nth-of-type(3) h3 {
	padding-left: 90px;
	position: absolute;
	top: -2.5em;
	left: 0;
}
.section04-1-inner:nth-of-type(2) h3, .section05-1-inner:nth-of-type(2) h3, .section05-1-inner:nth-of-type(4) h3 {
	position: absolute;
	top: -2.5em;
	left: 58%;
}
.section04-1-inner:nth-of-type(2) h3::before, .section05-1-inner:nth-of-type(2) h3::before, .section05-1-inner:nth-of-type(4) h3::before {
	left: -90px;
}
.section04-1-inner:first-of-type h3::before {
	background: url(img/top/icon-gastroscopy.svg) no-repeat;
}
.section04-1-inner:nth-of-type(2) h3::before {
	background: url(img/top/icon-colonoscopy.svg) no-repeat;
}
.section04-1-inner:nth-of-type(3) h3::before {
	background: url(img/top/icon-ultrasound.svg) no-repeat;
}
.section05-1-inner:first-of-type h3::before {
	background: url(img/top/icon-ibd.svg) no-repeat;
}
.section05-1-inner:nth-of-type(2) h3::before {
	background: url(img/top/icon-anti-aging.svg) no-repeat;
}
.section05-1-inner:nth-of-type(3) h3::before {
	background: url(img/top/icon-pylori.svg) no-repeat;
}
.section05-1-inner:nth-of-type(4) h3::before {
	background: url(img/top/icon-liver-specialist.svg) no-repeat;
}
.section04-1-inner img, .section05-1-inner img {
	border-radius: 10px;
	filter: drop-shadow(2px 2px 6px #888);
	position: relative;
	top: -7em;
	webkit-transform: translateZ(0);
  	transform: translateZ(0);
}
.section04-1-1-inner, .section05-1-1-inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 0 3em;
	margin-bottom: -4em;
	padding: 0 0 2em 0;
}
.section05 {
	padding-top: 6em;
}
.section06 {
	padding: 4em 0;
}
.section06-inner {
	display: grid;
    grid-template-columns: 1fr 1fr;
    margin-top: 3em;
    margin-bottom: 5em;
}
.section06-inner div {
	min-height: 380px;
	padding: 0 2em;
}
.section06-inner div:first-of-type {
	border-right: 1px dashed #ccc;
}
.section06-inner h3 {
	color: #8c6740;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-size: 1.5em;
	margin-bottom: 1em;
	text-align: center;
}
.cpt-btn-style01 {
	border: 1px solid #ccc;
    border-radius: 10px;
    color: #4a4a4a;
    margin-bottom: 1em;
    padding: .8em 2em;
}
.cpt-btn-style01:hover {
	background: #efefef;
}
.cpt-btn-style01 .date {
	color: #8c6740;
	font-size: .8em;
}
.section07 {
	background: #eceae3;
	color: #4a4a4a;
	padding: 4em 0 6em 0;
	position: relative;
}
.section07::before {
	background: url(img/top/Tanaka-Gastrointestinal-Clinic.svg) no-repeat;
	content: "";
	display: block;
	font-size: 5em;
    line-height: 1.2em;
    position: absolute;
    top: .5em;
    right: 1em;
    width: 50%;
    height: 50%;
    z-index: 0;
}
.section07 .top-title-style01 span {
	margin-top: .25em;
	margin-bottom: 0;
}
.section07-inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 0 4em;
	margin-top: 3em;
    margin-bottom: 5em;
    position: relative;
    z-index: 1;
}
.section07-inner h3 {
	border-bottom: 1px solid #b3b3b3;
	color: #4a4a4a;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-size: 1.5em;
	margin-bottom: 1.5em;
	padding-bottom: .5em;
	padding-left: 1.5em;
	position: relative;
}
.section07-inner div:first-of-type h3::before {
	background: url(img/common/icon-map.svg) no-repeat;
	content: "";
	display: block;
	position: absolute;
	top: .1em;
	left: 0;
	width: 1em;
	height: 1.2em;
}
.section07-inner div:nth-of-type(2) h3::before {
	background: url(img/common/icon-clock.svg) no-repeat;
	content: "";
	display: block;
	position: absolute;
	top: .2em;
	left: 0;
	width: 1.2em;
	height: 1.2em;
}
.section07-inner div:first-of-type p {
	display: inline-block;
}
.section07-inner div:first-of-type .btn-style01 {
	float: right;
	margin-top: 0;
}
.section07-inner div iframe {
	border-radius: 10px;
	margin-top: 3em;
}
.section07-inner div:nth-of-type(2) div:first-of-type {
	background: #fff;
	border-radius: 10px;
	padding: 1.2em;
}
.section07-inner table {
	font-family: sans-serif;
	width: 100%;
}
.section07-inner table tr {
	border-top: 1px solid #8c6740;
}
.section07-inner table th, .section07-inner table td {
	border-right: 1px solid #8c6740;
	padding: .8em;
	text-align: center;
}
.section07-inner table td span {
	color: #8c6740;
}
.section07-inner table tr:first-of-type th:last-of-type, .section07-inner table td:last-of-type {
	border-right: none;
}
.section07-inner .btn-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 0 1.5em;
	padding: 1em 0 0 0!important;
}
.section07-inner .btn-style03-1 {
	margin: 1.2em auto 3em auto;
	padding: 1.2em .6em;
	width: calc(100% - 2.4em);
}

/*-------------------------------
 
archive
 
-------------------------------*/
.category_box {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 1em;
	margin: 3em auto 6em auto;
	padding: 0 .5em;
}
.category_box a {
	outline: 1px solid #694d30;
	border-radius: 8px;
	box-sizing: border-box;
	font-size: 1.1em;
	padding: .5em 1em;
	text-align: center;
}
.category_box a:hover, .archive_box_wrapper .post_box:hover {
	background: #f5f2f0;
	opacity: 1;
}
.archive_box_wrapper .post_box {
    border-bottom: 1px dashed #694d30;
    box-sizing: border-box;
    display: block;
    padding: 1.5em 1em;
    width: 100%;
}
.archive_box_wrapper .post_box .date {
	font-size: .9em;
	margin-right: 2em;
}
.archive_box_wrapper .category, .single_box_wrapper .category {
	border: 1px solid #333;
	display: inline-block;
	font-size: .9em;
	padding: .1em 2em 0 2em;
	text-align: center;
	width: 150px;
}
.archive_box_wrapper .important-category, .single_box_wrapper .important-category {
	background: #cd5257;
	border: 1px solid #cd5257;
	color: #fff;
}
.archive_box_wrapper .title {
	font-size: 1.2em;
	margin: 1em auto 1.5em auto;
}
.archive_box_wrapper.cpt_box_wrapper a {
	display: grid;
	grid-template-columns: 2fr 1fr;
	grid-gap: 0 4em;
}
.archive_box_wrapper.cpt_box_wrapper .archive_img {
	aspect-ratio: 3 / 2;
	overflow: hidden;
}
.archive_box_wrapper.cpt_box_wrapper a .archive_img img {
	transition: .5s;
}
.archive_box_wrapper.cpt_box_wrapper a:hover .archive_img img {
	transform: scale(1.1);
	transition: .5s;
}
.wp-pagenavi {
	display: flex;
	font-size: .9em;
	grid-gap: 0 .5em;
	margin: 6em auto 8em auto;
	padding: 3em 1em 0 1em;
	text-align: center;
	width: fit-content;
}
.wp-pagenavi a, .wp-pagenavi span {
	border: none!important;
	display: initial;
	margin: 0!important;
}
.wp-pagenavi span.current, .wp-pagenavi a.page {
	border-radius: 50%;
	box-sizing: border-box;
	color: #fff;
	display: block;
	margin: 0 .5em;
	padding: .8em 1.2em 1em 1.2em;
	text-align: center;
	width: 50px;
	height: 50px;
}
.wp-pagenavi span.current {
	background: #694d30;
}
.wp-pagenavi a.page {
	background: #b3b3b3;
}
.wp-pagenavi a.page:hover {
	background: #694d30;
	opacity: 1;
}
.next-previous-navi {
	border-top: 1px solid #c3b8ac;
	margin: 6em auto 8em auto;
	padding: 3em 1em 0 1em;
	position: relative;
	text-align: center;
}
.next-previous-navi a {
	display: inline;	
}
.next-previous-navi .next, .next-previous-navi .previous {
	display: block!important;
	padding: 0;
	position: absolute;
	top: 3em;
}
.next-previous-navi .next {
	left: 1em;
}
.next-previous-navi .previous {
	right: 1em;
}
.wp-pagenavi .next a, .wp-pagenavi .previous a {
	padding: 0;
}

/*-------------------------------
 
single
 
-------------------------------*/
.single_box_wrapper .category {
	display: inline-block;
	margin-right: 2em;
}
.single_box {
	margin-top: 2em;
}
.single_box h2 {
	border-bottom: 1px dashed #694d30;
	color: #333;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.2em;
	margin-top: 2em;
	margin-bottom: .8em;
	padding-bottom: .5em;
	position: relative;
}
.single_box h3 {
	font-size: 1.2em;
	margin-top: 2em;
	margin-bottom: .8em;
}
.single_box h3::before {
	color: #333;
	content: "●";
	margin-right: .25em;
}

/*-------------------------------
 
contact
 
-------------------------------*/
.wpcf7 input[type="text"], .wpcf7 input[type="tel"], .wpcf7 input[type="email"], .wpcf7 textarea {
	background: #f2f2f2;
	border: none;
	box-sizing: border-box;
	width: 100%;
}

/*-------------------------------
 
responsive
 
-------------------------------*/
@media screen and (max-width: 1024px) {
header { border-top: 1px solid #b8a36e; border-bottom: 1px solid #b8a36e; height: 50px; padding: 1em 0;}
header .pc { display: none;}
.sp { display: block; margin: auto; overflow: hidden; width: 95%;}
.sp .logo { display: block; width: 50%;}
.sp .nav-box-mb img { box-sizing: border-box; display: block; margin: auto;}
.mb_btn { background: #b8a36e; border-radius: 8px; cursor: pointer; display: block; padding: 6px; position: fixed; top: 20px; right: 16px; width: 40px; height: 40px;}
.mb_btn span { background: #fff; border-radius: 4px; display: block; font-weight: bold; position: relative; right: -2px; transition: all .6s; width: 24px; height: 2px;}
.mb_btn span:first-child { top: 5px;}
.mb_btn span:nth-child(2) { top: 11px;}
.mb_btn span:nth-child(3) { top: 17px;}
.mb_btn.active span:first-child { top: 7px; transform: translateY(6px) rotate(-45deg);}
.mb_btn.active span:nth-child(2) { opacity: 0;}
.mb_btn.active span:nth-child(3) { top: 16px; transform: translateY(-6px) rotate(45deg);}
.mb_btn.active + .mb_menu ul.parent { right: 0; transition: all .6s;}
.mb_menu ul.parent { background: rgba(255, 255, 255, 1); position: fixed; top: calc(51px + 2em); right: -100%; transition: all .6s; width: 100%;}
.mb_menu ul.parent li { background: #fff; border-bottom: 1px solid #b8a36e; box-sizing: border-box; color: #8c6740; display: block; font-weight: bold; height: initial; padding: .5em 1em; position: relative; width: 100%;}
.mb_menu ul.parent li:first-of-type { border-top: 1px solid #b8a36e;}
.mb_menu ul.parent li .arrow { display: block; position: absolute; top: 1em; width: 100%;}
.mb_menu ul.parent li .arrow::after { border: 0; border-bottom: solid 2px #b8a36e; border-right: solid 2px #b8a36e; content: ''; transform: rotate(45deg); transition: .6s; margin: auto; position: absolute; top: .3em; right: 46px; bottom: 0; width: 6px; height: 6px;}
.mb_menu ul.parent li.open .arrow::after { transform: rotate(-135deg); transition: .6s;}
.mb_menu .nav-parent a { padding: 0 1em 0 .25em; width: 80%;} .mb_menu li a:hover { background: #f5f4f0; opacity: 1;}
.nav-child { display: none; opacity: 0; visibility: hidden;} .mb_menu ul.parent .nav-child li { padding: 0; position: relative;}
.mb_menu ul.parent .nav-child li a { line-height: 1.5em; padding: .5em 1em .5em 1.5em; width: 100%;}
.mb_menu ul.parent .nav-child li a::before { background: url(img/common/icon-arrow01.svg) no-repeat; content: ""; display: inline-block; margin-right: .25em; margin-left: .25em;	position: absolute; top: 30%; left: 0; width: 1em; height: 1em;}
.mb_menu .open .nav-child { display: block; height: initial; opacity: 1; padding: .5em 0 0 0; position: initial; visibility: visible;}
.mb_menu ul.parent .nav-child li:last-of-type { border-bottom: none;}
.sub-main-box { height: 280px; margin-top: 50px; padding-top: 100px;}
.side-btn-box { width: 100px;} .side-btn-box a:first-of-type { margin-bottom: 2em;} .side-btn-box a:nth-of-type(2) { margin-bottom: 1em;}
/* common */
.bg-style01 { padding: 2em;}
.table-wrapper01 { overflow-x: scroll; width: 100%;} .table-wrapper01::before { content: "→横にスクロールできます。";} .table-wrapper01 table { width: 1000px;}
/* top */
.main-box { margin: 70px auto 0 auto;} .top-calendar-box { margin: 1em auto 0 auto; position: relative; bottom: initial; right: initial; width: 100%;}
.top-title-style01 { font-size: 1.5em;}
.section02 { margin: 3em auto 0 auto; padding: 1em 0 2em 0;}
.section02::before { font-size: 1.5em;}
.section02-inner { grid-template-columns: 1fr; margin-top: 2em;}
.section03, .section04 { padding: 3em 0;} .section04-inner, .section05-inner { margin-top: 3em;}
.section03-inner { background-size: 100%; padding-top: 100%;} .section03-1-inner div { width: 100%;}
.section04-1-1-inner, .section05-1-1-inner { grid-template-columns: 1fr;} .section04-1-inner img, .section05-1-inner img { margin-bottom: 2em; top: initial;}
.section05-1-inner:nth-of-type(2) h3, .section05-1-inner:nth-of-type(4) h3 { left: initial; right: 0;}
.section06-inner, .section07-inner { grid-template-columns: 1fr; grid-gap: 3em;} .section06-inner div:first-of-type { border-right: none;}
}

@media screen and (max-width: 768px) {
.order-box { display: flex; flex-wrap: wrap;} .order01, .order02, .order03 { width: 100%;} .order01 { order: 1;} .order02 { order: 2;} .order03 { order: 3;}
.order01 .title-style01:first-of-type { margin-top: 0!important;} .order01 .title-style01, .order01 .bg-style02 { margin-top: 3em!important;} .order01 .bg-style02:first-of-type, .txt-box-style04 div .title-style03, .order01 .copy-style02.mt5em { margin-top: 0!important;}
header { height: 30px;} .sp .logo { padding: 0; width: 70%;} .mb_btn { top: 16px;} .mb_menu ul.parent { top: calc(47px + 1em);}
.footer-address { margin: 0 auto; padding: 3em 0;} .footer-address a { width: 60%;} .credit { padding-bottom: 100px;}
.sub-main-box { height: 180px; padding-top: 70px;} .sub-main-box h1, .sub-main-box .submain-title, .title-style01, .title-style02, .title-style05 { font-size: 1.3em;} .title-style05 { padding: .5em .8em;}
.title-style03, .title-style04, .font-style01 { font-size: 1.2em;} .title-style06, .title-style07, .title-style08, .title-style09 { font-size: 1.1em;}
.sub-main-box h1, .sub-main-box .submain-title { margin-left: 0;} .title-style01, .title-style02 { margin-bottom: 1em; padding: .5em;}
.nav-box-inner01, .nav-box-inner02 { grid-template-columns: 1fr; grid-gap: 2em;} .copy-style01, .copy-style02 { font-size: 1.2em;}
.bg-style01 { padding: 2em 1.5em;}
.img-box-style01 figcaption, .img-box-style02 figcaption, .img-box-style03 figcaption { font-size: 1em;}
.txt-box-style01, .txt-box-style02, .txt-box-style03, .txt-box-style04, .txt-box-style05, .txt-box-style06, .img-box-style01, .img-box-style02, .img-box-style03, .img-box-style03-1 { grid-template-columns: 1fr; grid-gap: 2em;}
.txt-box-style01, .txt-box-style02, .txt-box-style03 { grid-gap: 2em; margin-top: 2em; margin-bottom: 2em;} .img-box-style01 img, .img-box-style02 img, .img-box-style03 img { margin: auto;}
.btn-box-wrapper01 { display: block; width: 100%;} .border-box02, .btn-box-wrapper01 { margin-top: 3em!important;} .border-box02 { padding: 1em;}
.btn-box-wrapper01 .btn-style04, .btn-box-wrapper01 .btn-style05 { margin-bottom: 1em;} .btn-box-wrapper01 .btn-style04:last-of-type { margin-bottom: 0;}
.bg-style01 .img-style01, .txt-box-style02 .bg-style02, .txt-box-style03 .bg-style02, .bg-style02 .img-style01, .figure-width01, .video-box iframe { width: 100%;} .bg-style02, .bg-style03 { padding: 1em;}
.bg-style02.mt5em, .bg-style03.mt5em .title-style03.mt5em, .title-style03.mt5em, .title-style05.mt5em { margin-top: 4em!important;}
.btn-style02 { padding: 1em 1.2em 1em 3.8em;} .btn-style02:hover { padding: 1em .7em 1em 4.3em;} .btn-style02::before { top: .8em; left: 1em;} .btn-style02:hover::before { left: 1.5em;}
.btn-style02-1 { width: fit-content;} .btn-style04 { font-size: 1em;}
.table-style01 th, .table-style01 td { font-size: .9em; padding: .5em .2em;} .table-style01 dl { grid-template-columns: 1fr 3fr; grid-gap: 0 1em;}
.td-style01 td:first-of-type { width: 20%;} .table-width01 { width: 100%;}
.time-table-style01 th, .time-table-style01 td { font-size: .9em; padding: .25em;}
.float-btn-box { position: fixed; bottom: 0;} .cta-btn { display: flex;}
.side-btn-box { display: none;}
.top-btn { position: absolute; top: -100%; right: 0; width: 50px; z-index: 1000;}
/* top */
.top-calendar-box table th, .top-calendar-box table td { padding: 0;} .top-calendar-box .btn-wrapper { font-size: .6em; grid-gap: .5em;}
.section01-inner .news-btn-style01 { display: block;} .section01-inner .others-category, .section01-inner .important-category { margin-bottom: .5em; width: fit-content;}
.section02-inner .bg-style01 .inner { grid-template-columns: 1fr;} .section02-inner .bg-style01 h3 { font-size: 1.2em;}
.section03-inner h3, .section04-inner h3, .section05-inner h3 { font-size: 1.2em;}
.section02-inner .bg-style01:first-of-type .inner::before, .section02-inner .bg-style01:nth-of-type(2) .inner::before, .section02-inner .bg-style01:nth-of-type(3) .inner::before, .section02-inner .bg-style01:nth-of-type(4) .inner::before, .section02-inner .bg-style01:nth-of-type(5) .inner::before, .section02-inner .bg-style01:nth-of-type(6) .inner::before, .section02-inner .bg-style01:nth-of-type(7) .inner::before, .section02-inner .bg-style01:nth-of-type(8) .inner::before, .section02-inner .bg-style01:nth-of-type(9) .inner::before, .section02-inner .bg-style01:nth-of-type(10) .inner::before { top: -70px;}
.section02-inner .bg-style01:first-of-type .inner::before, .section02-inner .bg-style01:nth-of-type(10) .inner::before { width: 80px; height: 60px;}
.section02-inner .bg-style01:nth-of-type(2) .inner::before, .section02-inner .bg-style01:nth-of-type(3) .inner::before, .section02-inner .bg-style01:nth-of-type(4) .inner::before, .section02-inner .bg-style01:nth-of-type(5) .inner::before, .section02-inner .bg-style01:nth-of-type(6) .inner::before, .section02-inner .bg-style01:nth-of-type(7) .inner::before, .section02-inner .bg-style01:nth-of-type(8) .inner::before, .section02-inner .bg-style01:nth-of-type(9) .inner::before { width: 100px; height: 60px;}
.section04-1-inner:first-of-type h3, .section04-1-inner:nth-of-type(3) h3, .section05-1-inner:first-of-type h3, .section05-1-inner:nth-of-type(3) h3 { padding-left: 60px; top: -3em;}
.section04-1-inner:nth-of-type(2) h3, .section05-1-inner:nth-of-type(2) h3, .section05-1-inner:nth-of-type(4) h3 { top: -3em;}
.section04-1-inner:nth-of-type(2) h3 { left: initial; right: 0;}
.section04-1-inner:nth-of-type(2) h3, .section05-1-inner:nth-of-type(2) h3, .section05-1-inner:nth-of-type(4) h3 { padding-left: 60px;}
.section04-1-inner:nth-of-type(2) h3::before, .section05-1-inner:nth-of-type(2) h3::before, .section05-1-inner:nth-of-type(4) h3::before { left: 0;}
.section04-1-inner h3::before, .section05-1-inner h3::before { width: 50px; height: 50px; top: -26%;}
.section04-1-inner .bg-style02, .section05-1-inner .bg-style02 { margin-top: 4.6em; padding: 2em 1em 0 1em;}
.section06-inner div { padding: 0;}
.section07::before { font-size: 2em; top: 1em; right: 5%; width: 90%;}
.section07-inner table th, .section07-inner table td { padding: 0;} .section07-inner div:nth-of-type(2) div:first-of-type { grid-template-columns: 1fr; grid-gap: 1em;}
.section07-inner div:first-of-type .btn-style01 { margin-top: 1em;}
/* access */
.access-list-style { line-height: 2.5em; padding-left: 2.2em; text-indent: -2em;}
.access-list-style li:first-of-type::before, .access-list-style li:nth-of-type(2)::before, .access-list-style li:nth-of-type(3)::before,
.access-list-style li:nth-of-type(4)::before, .access-list-style li:nth-of-type(5)::before, .access-list-style li:nth-of-type(6)::before { top: 8px; width: 1.5em; height: 1.5em;}
/* flow-of-consultation */
.icon-style01 { max-width: 80px;} .credit-logo { width: 100%;}
/* ultrasound */ 
.arrow01::after { width: 80px; height: 30px;}
/* antiaging-guide */
.cta-btn-wrapper { grid-template-columns: 1fr;} .cta-btn01, .cta-btn02 { box-sizing: border-box; font-size: 1em; padding: .5em; width: 100%;}
.title-style02-1 { font-size: 1.2em;}
/* h-pylori-clinic */
.arrow02::after { margin: 0 auto; top: initial; bottom: -1.8em; left: 0; right: 0; transform: rotate(90deg);}
/* reservation-calendar */
.cta-box01 { width: 100%;}
/* faq */
.q-font-style01 { font-size: 1.2em;} .a-font-style01, .a-font-style02-1, .a-font-style02-2 { font-size: 1.1em;}
/* links */
.link-list-style li { margin: 1em 0;}
/* archive */
.archive_box_wrapper.cpt_box_wrapper a { grid-template-columns: 1fr; grid-gap: 2em;}
.archive_box_wrapper.cpt_box_wrapper .archive_img { order: 1;} .archive_box_wrapper.cpt_box_wrapper .txt { order: 2;}
.category_box { grid-template-columns: 1fr 1fr;} .category_box a { font-size: .9em;}
/* single */
.single_box h2 { font-size: 1.2em;}
.next-previous-navi { padding: 3em 0;} .next-previous-navi a { display: block; margin: auto; text-align: center; width: fit-content;}
.next-previous-navi .next, .next-previous-navi .previous { position: relative;}
.next-previous-navi .next { margin-bottom: 1em; top: initial; left: 0;} .next-previous-navi .previous { margin-top: 1em; top: initial; right: 0;}
}