@charset "UTF-8";

input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: none;
}


.content {
	width:90%;
	max-width:820px;
	margin: 0 auto;
}

/* ttl,buttton */


/* .btn01 {
	display:block;
	box-sizing:border-box;
	width:100%;
	line-height:64px;
	max-width:450px;
	margin:0 auto;
	text-decoration:none;	
	text-align:center;
	font-size:90%;
	font-weight:bold;
	border:solid 1px;
	position:relative;
}

.btn01:hover {
	color:#fff;
}

.btn01::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #000;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.btn01:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
} */




/* top */

.top_menu {
    position: relative;
    width: 90%;
    padding: 35px 0;
    background-image: url(../img/top/map.svg);
    background-position: right 5vw top 2vw;
    background-repeat: no-repeat;
    background-size: 60vw;
    margin-bottom: 80px;
    background-color: rgb(66 189 216 / 20%);
    height: 60vw;
}

.top_search {
    position: absolute;
    left: 5vw;
    top: 5vw;
}

.top_search ul li {
    width: 20vw;
}

.top_search ul li a {
    display: block;
    width: 100%;
    padding: 60% 7.5% 7.5%;
    font-size: 180%;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
    background-color: #fff;
    background-position: center 15%;
    background-repeat: no-repeat;
    background-size: auto 55%;
}

.top_search ul li a span {
	display: block;
	font-size: 80%;
}

.top_search ul li:nth-of-type(1) a {
	background-image: url("../img/top/icon_topmenu01.svg");
} 
.top_search ul li:nth-of-type(2) a {
	background-image: url("../img/icon_topmenu02.png");
} 
.top_search ul li:nth-of-type(3) a {
	background-image: url("../img/icon_topmenu03.png");
} 
.top_search ul li:nth-of-type(4) a {
	background-image: url("../img/icon_topmenu04.png");
} 

.top_search p {
	padding-bottom: 7.5%;
}
.top_search p a {
	display: block;
	width: 65%;
	margin: 0 auto;
	font-size: 130%;
	font-weight: bold;
	color: #fff;
	background-color: #42bdd7;
	padding: 10px;
	text-align: center;
}

.map_pin li.common_pin {
    position: absolute;
    display: block;
    width: 5vw;
    transform: translate(-50%, -50%);
}

.map_pin li.pin01 {
    left: 78vw;
    top: 8vw;
}

.map_pin li.pin02 {
    left: 71vw;
    top: 24vw;
}

.map_pin li.pin03 {
    left: 71vw;
    top: 34vw;
}

.map_pin li.pin04 {
    left: 70vw;
    top: 42vw;
}

.map_pin li.pin05 {
    left: 62vw;
    top: 35vw;
}

.map_pin li.pin06 {
    left: 62vw;
    top: 44vw;
}

.map_pin li.pin07 {
    left: 56vw;
    top: 31vw;
}

.map_pin li.pin08 {
    left: 49vw;
    top: 42vw;
}

.map_pin li.pin09 {
    left: 41vw;
    top: 40vw;
}

.map_pin li.pin10 {
    left: 43vw;
    top: 49vw;
}

.map_pin li.pin11 {
    left: 30vw;
    top: 46vw;
}

.map_pin li.pin12 {
    left: 48vw;
    top: 28vw;
}

.common_pin img {
    cursor: pointer;
}

.common_pin ul {
    display:none;
}

.common_pin:hover {
    z-index: 10;
}

.common_pin:hover ul {
    display: flex;
    flex-flow: row wrap;
    position: absolute;
    top: 95%;
    width: 170px;
    transform: translateX(-50%);
    left: 50%;
    background-color: rgb(255 255 255 / 80%);
    padding: 5px;
    justify-content: space-around;
}

.common_pin ul li a {
    text-decoration: underline;
    color: #001dbb;
    font-size: 120%;
    line-height: 1.8;
}

.top_menu>p {
	position: absolute;
	bottom: -75px;
	right: -10%;
	padding: 25px 2040px 25px 40px;
	font-size: 260%;
	line-height: 50px;
	color: #fff;
	background-color: #42bdd7;
	margin-right: -2000px;
}

.search_modal {
	background-color:#fff;
	width: 95%;
	max-width: 600px;
	margin:0 auto;
	position: relative;
	text-align: center;
	font-weight: bold;
}

.search_modal>p:first-of-type {
	position: absolute;
	top: 10px;
	right: 10px;
	font-size: 200%;
	color: #42bdd7;
	cursor: pointer;
}

.search_modal>p:nth-of-type(2) {
	border-bottom: dotted 2px #42bdd7;
}

.search_modal>p:nth-of-type(2) span {
	display: inline-block;
	font-size: 180%;
	padding: 14px 0 14px 40px;
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 34px auto;
}	

.modalttl_area {
	background-image: url("../img/icon_topmenu01.png");
}
.modalttl_condition {
	background-image: url("../img/icon_topmenu02.png");
}
.modalttl_commit {
	background-image: url("../img/icon_topmenu03.png");
}
.modalttl_menu {
	background-image: url("../img/icon_topmenu04.png");
}

.tab_group {
	text-align: center;
	padding-top: 4%;	
}
.tab {
	display: inline-block;
    padding:0 3px;
    list-style:none;
	cursor:pointer;
	font-size: 110%;
	color: #dadada;
}
.panel_group {
	margin-top: 4%;
	padding: 5%;
    background:#dadada;
}
.panel_group ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
    background:#dadada;
}

.panel_group ul li {
	width: 166px;
	margin: 6px;
	background-color: #fff;
	position: relative;
	box-shadow: 3px 3px #42bdd7;
}

.panel_group ul li input[type="checkbox"] {
	display:none;
}

.panel_group ul li label {
	display: block;
	width: 100%;
	height: 100%;
	font-size: 120%;
	color: #42bdd7;
	padding: 8% 0;	
	cursor:pointer;
	display: flex;
	justify-content: center;
	align-items: center;
}

.panel_group ul li label span {
	font-size: 60%;
}

.panel_group ul li label:after {
	content: "";
	width: 10%;
	height: 100%;
	background-image: none;
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: 0;
	right: 6%;
}

/* .panel_group ul li input[type="checkbox"]:checked + label {

} */

.panel_group ul li input[type="checkbox"]:checked + label:after {
	background-image: url("../img/btn_check.png");
}


.panel {
    display:none;
}
.tab.is_active {
	color: #42bdd7;
}
.panel.is_show {
    display:block;
}


.btn_search01 {
	width: 160px;
	margin: 0 auto;
	padding: 16px 0;
}

.btn_search01 input,
.btn_search01 a {
	display: inline-block;
	width: 100%;
	padding: 10% 0;
	text-align: center;
	color: #fff;
	background-color: #42bdd7;
	font-size: 120%;
}

.top_pickup {
	width: 95%;
	max-width: 820px;
	margin: 0 auto 10%;
}

.top_pickup h2 {
	margin-bottom: 15px;
}

.top_pickup>div {
	/* background: linear-gradient(to bottom, #ccc, #ccc 60%, #fff 60%, #fff); */
	background-color: #dadada;
	padding: 0 2000px;
	margin: 0 -2000px;
}

.slide_main {
	width: 87%;
	margin: 0 auto;
	padding: 3.2% 0;
}

.slide_cell {
	width: 33.3%;
}

.slide_cell_i {
	margin: 5px 6.5%;
	background-color: #fff;
	box-shadow: 5px 5px #bababa;
}

.slide_cell_i>p {
	position: relative;
	width: 100%;
	padding-bottom: 100%;
}

.slide_cell_i>p img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
}

.slide_cell_i div {
	width: 100%;
	background-color: #fff;
	padding: 10px;	
}

.slide_cell_i div p:first-of-type {
	display: inline-block;
	color: #fff;
	background-color: #42bdd7;
	font-size: 90%;
	/* font-weight: bold; */
	padding: 2px 5px;
	margin-bottom: 3px;
}

.slide_cell_i div h3 {
	font-weight: bold;
	margin-bottom: 3px;
	border-bottom: dotted 2px #42bdd7;
}

.slide_cell_i div p:last-of-type {
	font-size: 90%;
	height: 4.4em;
	background:#fff;
	position: relative;
	overflow: hidden;
}

.slide_cell_i div p:last-of-type::before,
.slide_cell_i div p:last-of-type::after {
  position: absolute;  
  background:#fff;
}
.slide_cell_i div p:last-of-type::before {
  content: "...";
  bottom: 0;
  right: 0;
}
.slide_cell_i div p:last-of-type::after {
  content: "";
  height: 100%;
  width: 100%;
}

.top_ttl {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	margin-bottom: 15px;
}

.top_ttl p {
	display: inline-block;
	padding: 3px;
	width: 6em;
	min-width: 6em;
	background-color: #dadada;
	margin-left: 7px;
	font-weight: bold;
}

.top_recommend {
	width: 95%;
	max-width: 820px;
	margin: 0 auto 6%;
}

.rec_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.rec_list li {
	width: 48%;
	padding-bottom: 4%;		
}

.rec_list li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 4% 2%;
	background-color: #dadada;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.rec_list li a p:nth-of-type(1) {
	width: 15%;
	padding-bottom: 15%;
	position: relative;	
}

.rec_list li a p:nth-of-type(1) img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
}

.rec_list li a p:nth-of-type(2) {
	flex: 1;
	font-size: 120%;
	font-weight: bold;
	margin: 0 7px;
}

.rec_list li a p:nth-of-type(3) {
	width: 21%;
	font-size: 90%;
	color: #fff;
	background-color: #42bdd7;
	padding: 3px;
	margin-right: -5%;
	margin-bottom: 7px;
	align-self: flex-end;
	text-align: center;
}

.top_reccomend,
.top_article {
	width: 95%;
	max-width: 820px;
	margin: 0 auto 2%;
}

.art_list {
	border-top: dotted 2px #42bdd7;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 8%;
}

.art_list dt {
	width: 31%;
	text-align: right;
	padding: 3% 8% 3% 0;
	border-bottom: dotted 2px #42bdd7;
}

.art_list dd {
	width: 69%;
	padding: 3% 0;
	border-bottom: dotted 2px #42bdd7;
	font-size: 110%;
}

.art_list dd p:first-of-type {	
	color: #42bdd7;
}



/* second common */

/* contact */


/* term */

.term {
	width: 90%;
	max-width: 820px;
	margin: 0 auto;
	padding:6.6% 0 10%;
}

.term h1 {
	margin-bottom: 25px;
}

.term p,
.term dl dd {
	margin-bottom: 20px;
}

/* privacy */

.privacy {
	width: 90%;
	max-width: 820px;
	margin: 0 auto;
	padding:6.6% 0 10%;
}

.privacy h1 {
	margin-bottom: 25px;
}

.privacy p:first-of-type,
.privacy dl dd {
	margin-bottom: 20px;
}

.privacy dl dd dl dd:last-child {
	margin-bottom: 0;
}

/* concept */

.concept {
	width: 90%;
	max-width: 720px;
	margin: 0 auto;
	padding:6.6% 0 10%;
}

.concept h1 {
	text-align: left !important;
	margin-bottom: 25px;
}

.concept p {
	margin-bottom: 20px;
}

/* clinic list*/


.search_box table {
	margin-bottom: 4%;
	width: 100%;
}

.search_box table th {
	width: 20%;
	vertical-align: middle;
	background-color: #42bdd7;
	border-bottom: dotted 2px #fff;
	padding: 15px 5px;
	color: #fff;
}

.search_box table th span {
	display: inline-block;
}

.search_box table td {
	width: 80%;
	vertical-align: top;
	background-color: #dadada;
	border-bottom: dotted 2px #fff;
	padding: 12px;
}

.search_box table tr:last-of-type th,
.search_box table tr:last-of-type td {
	border-bottom: none;
}

.search_box table td ul li {
	display:inline-block;
	margin:3px 10px 3px 0;
}

.search_box table input[type="checkbox"] {
	vertical-align:middle;
	margin-right:3px;
}

.clinic_list>li.spl {
	background-color: #d9f2f7;
	border: 1px solid #dadada;
}

li.spl div.c_list_ttl {
	background-color: #42bdd7
}

li div.c_list_ttl ul li {
	display: inline-block;
	background-color: #fff;
	font-size: 80%;
	margin: 0 5px 5px 0;
	padding: 0 3px;
}

li.spl div.c_list_ttl h2 {
	color: #fff;
}

li div.c_list_info>div:first-of-type div {
	width: 100%;
}

li div.c_list_info>div:first-of-type div:nth-of-type(2) {
	margin: 15px 0 0;
}

li div.c_list_info>div:first-of-type div p {
	margin-bottom: 5px;
	padding: 0 5px;
	background-color: #42bdd7;
	color: #fff;
}

li div.c_list_info>div:last-of-type>p {	
	font-weight: bold;
	margin-bottom: 10px;
}

li div.c_list_info>div:last-of-type table:nth-of-type(1) {
	width: 100%;
	margin-bottom: 10px;
}

li div.c_list_info>div:last-of-type table:nth-of-type(1) th {
	width: 8em;
	padding: 5px 1em;
	text-align:center;
	background-color: #42bdd7;
	color: #fff;
	font-weight: bold;
	border-bottom: dotted 2px #fff;
}

li div.c_list_info>div:last-of-type table:nth-of-type(1) td {
	padding: 5px 10px;
	border-bottom: dotted 2px #42bdd7;
}

li div.c_list_info>div:last-of-type table:nth-of-type(2) {
	width: 100%;
	border-collapse: separate;
	padding: 2%;
	background-color: #fff;
}

li div.c_list_info>div:last-of-type table:nth-of-type(2) th {
	width: 50%;
	padding: 10px 10px 10px 0;
	border-bottom: dotted 2px #42bdd7;
	text-align: left;
}

li div.c_list_info>div:last-of-type table:nth-of-type(2) td {
	padding: 10px 0;
	text-align: right;
	border-bottom: dotted 2px #42bdd7;
}


li div.c_list_info>div:last-of-type table tr:last-child th,
li div.c_list_info>div:last-of-type table tr:last-child td {
	border-bottom: none;
}

.c_list_info span.blue {
	color: #42bdd7;
}

.c_list_info span.ml {
	margin-left: 9em;
}

li ul.c_list_commit {
	padding: 10px 3.3% 5px;
	background-color: #dadada
}

li.spl ul.c_list_commit {
	background-color: #42bdd7
}

li ul.c_list_commit li {
	display: inline-block;
	background-color: #fff;
	font-size: 80%;
	margin: 0 5px 5px 0;
	padding: 0 3px;
}

/* clinic detail*/

.c_detail_info01>div:last-of-type table {
	width: 100%;
	font-size: 110%;
}

.c_detail_info01>div:last-of-type table th {
	width: 8em;
	padding: 5px 1em;
	background-color: #42bdd7;
	color: #fff;
	font-weight: bold;
	border-bottom: dotted 2px #fff;
}

.c_detail_info01>div:last-of-type table td {
	padding: 5px 10px;
	border-bottom: dotted 2px #42bdd7;
}

.c_detail_info01>div:last-of-type table tr:last-child th,
.c_detail_info01>div:last-of-type table tr:last-child td {
	border-bottom: none;
}

.c_detail_info02 h2 {
	margin-bottom: 2%;
}

/* recommend,article */

.category {
	background-color: #42bdd7;
	margin-bottom: 5%;
	padding: 1.5% 7.5%;	
	color: #fff;
}

.category li {
	display: inline-block;
	line-height: 1.1;
	-webkit-transform: skewX(150deg);
	-moz-transform: skewX(150deg);
	transform: skewX(150deg);
	padding-right: 10px;
	border-right: 1px solid #000;
	margin: 8px 10px 8px 0;	
}

.category li:last-child {
	border-right: none;
}

.category li a {
	display:block;
	transform: skewX(-150deg);
}

.page_nav {
	text-align: center;
}

.page_nav ul li {
	display: inline-block;
	margin: 0 2px;
}

.page_nav ul li.atv {
	color: #42bdd7;
}

.recommend01,
.recommend02,
.article01,
.article02 {
	width: 95%;
	max-width: 820px;
	margin: 0 auto;
	padding: 5% 0 10%;
}

.recommend01 h1 {
	margin-bottom: 25px;
}

.recommend_list {
	background-color: #dadada;
	padding: 5% 2000px 0;
	margin: 0 -2000px 5%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.recommend_list li {
	width: 28.7%;
	box-shadow: 5px 5px #42bdd7;
	margin-bottom: 5%;
}

.recommend_list li a {
	display: block;
	width: 100%;
	height: 100%;
	background-color: #fff;
}

.recommend_list li a>p {
	position: relative;
	width: 100%;
	padding-bottom: 100%;
}

.recommend_list li a>p img {
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;
	margin: auto;
}

.recommend_list li div {
	padding: 10% 7%;
}

.recommend_list li div p:first-of-type {
	display: inline-block;
	border: solid 1px;
	padding: 2px 5px;
	margin-bottom: 5px;
	font-size: 90%;
}


.recommend_list li div h2 {
	color: #42bdd7;
	font-weight: bold;
	margin-bottom: 5px;
	font-size: 110%;
}

.recommend_list li div p:last-of-type {
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.recommend02 div:nth-of-type(1) {
	padding: 2.5%;
	background-color: #dadada;
	margin-bottom: 5%;
}

.recommend02 div:nth-of-type(1) p {
	display: inline-block;
	font-size: 120%;
	color: #fff;
	background-color: #42bdd7;
	padding: 5px 4%;
	margin-left: -4%;
	margin-bottom: 5px;
}

.recommend02 div:nth-of-type(1) h1 {
	font-size: 150%;
	font-weight: bold;	
}

.recommend02 div:nth-of-type(2) {
	font-size: 120%;
}

.recommend02 div:nth-of-type(2) img {
	width: 50%;
	margin-top: 3%;
}

.recommend02>p,
.article02>p {
	font-size: 120%;
	text-align: center;
	margin-top: 8%;
}

.recommend02>p a,
.article02>p a {
	color: #42bdd7;
}

.article01 h1 {
	margin-bottom: 25px;
}

.article02 div:nth-of-type(1) {
	padding-bottom: 5%;
	text-align: center;
	border-bottom: dotted 2px #42bdd7;
}

.article02 div:nth-of-type(1) h1 {
	font-size: 180%;
	font-weight: bold;
	color: #42bdd7;	
}

.article02 ul li {
	padding: 5% 0;
	border-bottom: dotted 2px #42bdd7;
}

.article02 ul li h2 {
	font-size: 180%;
	font-weight: bold;
	color: #42bdd7;
	margin-bottom: 5%;		
}

.article02 ul li p {
	margin-bottom: 5%;		
	font-size: 120%;
}

.article02 ul li img {
	width: 50%;
}


