@charset "UTF-8";
/*----------------------------------------

	index CSS

	- common
	- map
	- cafe
	- shop
	- resto
	- service

-----------------------------------------*/

/*----------------------------------------
	common
-----------------------------------------*/
#header .h_box01 #lang {
	--lang-color: #fff;
}
#headtitle.tit_bg .headtitle_bg {
	background-image: url(../img/i_titbg01s.jpg);
	color: #fff;
}
/* pc  768 - # */
@media print, screen and (min-width:768px) {
	#headtitle.tit_bg .headtitle_bg {
		background-image: url(../img/i_titbg01.jpg);
	}
}
@media screen and (min-width:768px) and (-webkit-min-device-pixel-ratio: 2),
	   screen and (min-width:768px) and (-o-min-device-pixel-ratio: 2/1),
	   screen and (min-width:768px) and (min-resolution: 2dppx){
	#headtitle.tit_bg .headtitle_bg {
		background-image: url(../img/i_titbg01@2x.jpg);
	}
}

/*----------------------------------------
	map
-----------------------------------------*/
#s_map {
	margin: 0 auto 86px;
	padding: 30px 0 0;
}
#s_map>p {
	margin: 0 0 24px;
	line-height: 1.8;
	letter-spacing: 0.25rem;
}
html[lang="en"] #s_map>p {
    padding: 0 5.3%;
}
#s_map>.box01>.box01_01 {
	margin: 0 5.3% 20px;
}
#s_map>.box01>.box01_01>.map {
	position: relative;
}
#s_map>.box01>.box01_01>.map>#mapImg {
	background: url(../img/i_map_p01.png) 0 0 no-repeat;
	background-size: 100% auto;
}
#s_map>.box01>.box01_01>.map>#mapImg>img {
	opacity: 0;
}


#s_map>.box01>.box01_01>.map>ul>li {
	position: absolute;
}
#s_map>.box01>.box01_01>.map>ul>li:before,
#s_map>.box01>.box01_01>.map>ul>li:after {
	content: '';
	position: absolute;
}
#s_map>.box01>.box01_01>.map>ul>li>a,
#s_map>.box01>.box01_01>.map>ul>li>p {
	position: absolute;
	display: block;
	padding: 4px 6px;
	color: #fff;
	line-height: 1.2;
	white-space: nowrap;
	background-color: #000c30;
}
#s_map>.box01>.box01_01>.map>ul>li.mapScroll>a,
#s_map>.box01>.box01_01>.map>ul>li.mapScroll>a {
	padding-right: 18px;
	cursor: pointer;
}
#s_map>.box01>.box01_01>.map>ul>li.mapScroll>a>span:before,
#s_map>.box01>.box01_01>.map>ul>li.mapScroll>a>span:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	-webkit-transform-origin: center center;
	    -ms-transform-origin: center center;
	        transform-origin: center center;
}
#s_map>.box01>.box01_01>.map>ul>li.mapScroll>a>span:before {
	right: 7px;
	width: 4px;
	height: 4px;
	margin: -3px 0 0;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: translate(0,-50%) rotate(135deg);
	    -ms-transform: translate(0,-50%) rotate(135deg);
	        transform: translate(0,-50%) rotate(135deg);
}
#s_map>.box01>.box01_01>.map>ul>li.mapScroll>a>span:after {
	right: 6px;
	width: 7px;
	height: 7px;
	border-bottom: 1px solid #fff;
	-webkit-transform: translate(0,-50%);
	    -ms-transform: translate(0,-50%);
	        transform: translate(0,-50%);
}
#s_map>.box01>.box01_01>.map>ul>li>a[target="_blank"]>span:beforep {
	content: none;
}
#s_map>.box01>.box01_01>.map>ul>li>a[target="_blank"]>span:afterp {
	right: 8px;
	width: 14px;
	height: 14px;
	border: none;
	background: url(/asset/img/cmn/c_link01.png) center top no-repeat;
	background-size: 13px 13px;
	-webkit-transform: translate(0,-50%) rotate(0);
	    -ms-transform: translate(0,-50%) rotate(0);
	        transform: translate(0,-50%) rotate(0);
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(1) {
	bottom: 80%;
	right: 63%;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(1)>a {
	right: 26px;
	bottom: -10px;
	-webkit-transform: translate(0,-50%);
	    -ms-transform: translate(0,-50%);
	        transform: translate(0,-50%);
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(1):after {
	bottom: 10px;
	right: 0;
	width: 26px;
	border-bottom: 1px solid #000c30;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(2) {
	bottom: 75%;
	left: 64%;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(2)>a {
	left: 22px;
	bottom: -10px;
	-webkit-transform: translate(0,-50%);
	    -ms-transform: translate(0,-50%);
	        transform: translate(0,-50%);
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(2):after {
	bottom: 10px;
	left: 0;
	width: 22px;
	border-bottom: 1px solid #000c30;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(3) {
	bottom: 46%;
	right: 82%;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(3)>p {
	bottom: 0;
	left: -50%;
	-webkit-transform: translate(-50%,0);
	    -ms-transform: translate(-50%,0);
	        transform: translate(-50%,0);
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(4) {
	bottom: 34%;
	left: 54%;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(4)>a {
	left: 22px;
	bottom: -10px;
	-webkit-transform: translate(0,-50%);
	    -ms-transform: translate(0,-50%);
	        transform: translate(0,-50%);
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(4):after {
	bottom: 10px;
	left: 0;
	width: 22px;
	border-bottom: 1px solid #000c30;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(5) {
	bottom: 30%;
	right: 66%;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(5)>a {
	right: 16px;
	bottom: -10px;
	-webkit-transform: translate(0,-50%);
	    -ms-transform: translate(0,-50%);
	        transform: translate(0,-50%);
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(5):after {
	bottom: 10px;
	right: 0;
	width: 16px;
	border-bottom: 1px solid #000c30;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(6) {
	bottom: 2%;
	right: 49%;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(6)>a {
	bottom: 0;
	left: -50%;
	-webkit-transform: translate(-50%,0);
	    -ms-transform: translate(-50%,0);
	        transform: translate(-50%,0);
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(7) {
	bottom: 60%;
	left: 71%;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(7)>a {
	left: 26px;
	bottom: 6px;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(7):after {
	bottom: 16px;
	left: 0;
	width: 26px;
	border-bottom: 1px solid #000c30;
}
#s_map>.box01>.box01_01>.map>ul>li:nth-child(7):before {
	left: 0;
	bottom: 0;
	height: 16px;
	border-left: 1px solid #000c30;
}
html[lang="en"] #s_map>.box01>.box01_01>.map>ul>li:nth-child(7)>a {
	left: 8px;
}
html[lang="en"] #s_map>.box01>.box01_01>.map>ul>li:nth-child(7):after {
	width: 8px;
}

#s_map>.box01>.box01_01>p{
	padding-top: 10px;
}

#s_map>.box01>.box01_02>div+div {
	margin-top: 16px;
}
#s_map>.box01>.box01_02 .stit01 {
	margin: 0 0 10px;
	padding: 6px 5.3%;
	background-color: #ebebeb;
}
#s_map>.box01>.box01_02 .stit02 {
	padding: 6px 5.3%;
}
#s_map>.box01>.box01_02 .b01l,
#s_map>.box01>.box01_02 .b01r {
	margin: 15px 5.3%;
}
#s_map>.box01>.box01_02 .b01l {
	padding: 5px 0 15px;
}
#s_map>.box01>.box01_02 .b01l>ul,
#s_map>.box01>.box01_02 .b01r>ul {
	padding: 0;
}
#s_map>.box01>.box01_02 .b01l {
	border: 1px solid #ebebeb;
}
#s_map>.box01>.box01_02 ul {
	padding: 0 5.3%;
}
#s_map>.box01>.box01_02 ul+.stit01 {
	margin-top: 14px;
}
#s_map>.box01>.box01_02 ul>li {
	margin: 6px 0 0;
	line-height: 1.5;
}
#s_map>.box01>.box01_02 ul>li>dl {
	display: table;
}
#s_map>.box01>.box01_02 ul>li>dl>dt,
#s_map>.box01>.box01_02 ul>li>dl>dd {
	display: table-cell;
	vertical-align: top;
}
#s_map>.box01>.box01_02 ul>li>dl>dt {
	text-align: right;
	width: 7.8rem;
	padding-right: 1.8rem;
}
#s_map>.box01>.box01_02 ul>li>dl>dd>p+p {
	margin: 4px 0 0;
}
#s_map>.box01>.box01_02 ul>li>dl>dd>p>a {
	cursor: pointer;
}
/* pc  768 - # */
@media print, screen and (min-width:768px) {
	#s_map {
		max-width: 1120px;
		margin: 64px auto 130px;
		padding: 30px 0 0;
	}
	#s_map>p {
		margin: 0 0 48px;
		line-height: 2;
		letter-spacing: 0.35rem;
	}
	#s_map>.box01 {
		display: table;
		table-layout: fixed;
		width: 100%;
	}
	#s_map>.box01>div {
		display: table-cell;
		vertical-align: top;
		width: 50%;
	}
	#s_map>.box01>.box01_01 {
		padding: 0 25px 0 0;
	}
	#s_map>.box01>.box01_01>.map>#mapImg>img {
		opacity: 1;
	}
	#s_map>.box01>.box01_01>.map>ul>li.mapScroll>a {
		padding: 4px 6px;
		cursor: default;
	}
	#s_map>.box01>.box01_01>.map>ul>li.mapScroll>a>span:before,
	#s_map>.box01>.box01_01>.map>ul>li.mapScroll>a>span:after {
		content: none;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(1) {
		right: 64%;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(1)>a {
		right: 30px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(1):after {
		bottom: 12px;
		width: 30px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(2) {
		bottom: 75%;
		left: 64%;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(2)>a {
		left: 34px;
		bottom: -10px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(2):after {
		bottom: 12px;
		width: 34px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(3) {
		bottom: 52%;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(4) {
		bottom: 35%;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(4)>a {
		left: 26px;
		bottom: -10px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(4):after {
		bottom: 12px;
		width: 26px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(5) {
		bottom: 32%;
		right: 68%;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(5)>a {
		right: 20px;
		bottom: -12px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(5):after {
		width: 20px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(6) {
		bottom: 5%;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(7)>a {
		left: 60px;
		bottom: 22px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(7):after {
		bottom: 32px;
		width: 60px;
	}
	#s_map>.box01>.box01_01>.map>ul>li:nth-child(7):before {
		height: 32px;
	}
	html[lang="en"] #s_map>.box01>.box01_01>.map>ul>li:nth-child(7)>a {
		left: 60px;
	}
	html[lang="en"] #s_map>.box01>.box01_01>.map>ul>li:nth-child(7):after {
		width: 60px;
	}
	#s_map>.box01>.box01_01>p{
		padding-top: 20px;
	}
	#s_map>.box01>.box01_02 .stit02 {
		padding: 0 22px;
	}
	#s_map>.box01>.box01_02>.b01 {
		width: 100%;
		margin-bottom: 4px;
	}
	#s_map>.box01>.box01_02>.b01 .stit01 {
		margin-bottom: 20px;
	}
	#s_map>.box01>.box01_02>.b01>div{
		display: inline-block;
		vertical-align: top;
		width: 50%;
		margin: 0;
	}
	#s_map>.box01>.box01_02>.b01>.b01l {
		padding: 12px 0 16px;
	}
	#s_map>.box01>.box01_02>.b01>.b01r ul>li:first-child {
		margin-top: 0;
	}
	#s_map>.box01>.box01_02>.b02,
	#s_map>.box01>.box01_02>.b03 {
		display: inline-block;
		vertical-align: top;
		width: 50%;
	}
	#s_map>.box01>.box01_02>.b03 {
		padding-left: 4px;
	}
	#s_map>.box01>.box01_02 ul+.stit01 {
		margin-top: 20px;
		margin-bottom: 18px;
	}
	#s_map>.box01>.box01_02 .b03 {
		padding-left: 4px;
	}
	#s_map>.box01>.box01_02>.b01>div>ul,
	#s_map>.box01>.box01_02 ul {
		padding: 0 0 0 20px;
	}
	#s_map>.box01>.box01_02 ul>li {
		margin: 15px 0 0;
		line-height: 1.5;
	}
	#s_map>.box01>.box01_02 ul>li>dl>dt {
		width: 4rem;
		padding-right: 8px;
	}
	html[lang="zh-CN"] #s_map>.box01>.box01_02 ul>li>dl>dt,
	html[lang="zh-TW"] #s_map>.box01>.box01_02 ul>li>dl>dt,
	html[lang="ko"] #s_map>.box01>.box01_02 ul>li>dl>dt {
		white-space: nowrap;
	}
	#s_map>.box01>.box01_02 ul>li>dl>dd>p+p {
		margin: 4px 0 0;
	}
}

/*----------------------------------------
	clinic
-----------------------------------------*/
#s_clinic {
	margin-bottom: 130px;
}
#s_clinic .title03 {
	margin-bottom: 22px;
}
/* pc  768 - # */
@media print, screen and (min-width:768px) {
	#s_service .title03 {
		margin-bottom: 38px;
	}
}

/*----------------------------------------
	service
-----------------------------------------*/
#s_service .title03 {
	margin-bottom: 22px;
}
/* pc  768 - # */
@media print, screen and (min-width:768px) {
	#s_service .title03 {
		margin-bottom: 38px;
	}
}

/*----------------------------------------
	guide
-----------------------------------------*/
.c-guide {}
.c-guide > li {
	padding: 16px 5.3%;
	background-color: #f6f6f6;
	border-top: 2px solid #fff;
}
.c-guide > li>dl>dt {
	margin: 0 0 8px;
	letter-spacing: 0.3rem;
}
.c-guide > li>dl>dd>p,
.c-guide > li>dl>dd>div {
	line-height: 1.7;
}
.c-guide > li>dl>dd ul {
	display: inline;
}
.c-guide > li>dl>dd ul>li {
	display: inline;
}
.c-guide > li>dl>dd ul>li>span {
	padding-right: 1em;
}
.c-guide > li>dl>dd>div {
	margin-top: 6px;
}
.c-guide > li>dl>dd>.c_btn01s {
	margin-top: 10px;
	margin-bottom: 4px;
}
/* pc  768 - # */
@media print, screen and (min-width:768px) {
	.c-guide {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
	}
	.c-guide > li {
		padding: 36px 40px;
		border-left: 2px solid #fff;
		letter-spacing: 0.1rem;
	}
	.c-guide > li>dl>dt {
		margin: 0 -1em 10px 0;
		letter-spacing: 0.35rem;
	}
	.c-guide > li>dl>dd>p,
	.c-guide > li>dl>dd>div{
		line-height: 1.8;
	}
	.c-guide > li>dl>dd>p:first-child {
		margin-top: 10px;
	}
	.c-guide > li>dl>dd ul,
	.c-guide > li>dl>dd ul>li {
		display: block;
	}
	.c-guide > li>dl>dd ul>li>span {
		display: inline-block;
		vertical-align: top;
		padding: 0;
	}
	.c-guide > li>dl>dd ul.w3>li>span { width: 3em; }
	.c-guide > li>dl>dd ul.w4>li>span { width: 4em; }
	.c-guide > li>dl>dd ul.w5>li>span { width: 5em; }
	.c-guide > li>dl>dd ul.w6>li>span { width: 6em; }
	.c-guide > li>dl>dd ul.w7>li>span { width: 7em; }
	.c-guide > li>dl>dd>.c_btn01s {
		width: 160px;
		margin: 22px 0 4px;
		font-size: 1.2rem;
	}
	.c-guide > li>dl>dd>.c_btn01s>a {
		padding: 15px 20px;
	}
}