@charset "UTF-8";
/*共通*/
section{padding-top: 120px; margin-top: -120px;}
#clinicpage h1,#cliniclist h1{margin:30px 0 10px 0; font-family: "shippori-mincho", serif; font-weight: 500; font-style: normal; font-size:21px; font-size:2.1rem; line-height:1.4;}
h2{margin:30px 0 10px 0; font-family: "shippori-mincho", serif; font-weight: 500; font-style: normal; font-size:19px; font-size:1.9rem; line-height:1.4; color: #00153b;}
h3{line-height:1.4;}
.kcontents h1.h2title{background: #b59323; position:relative; margin:0; margin-bottom: 10px; font-size:25px; font-size:2.5rem; padding: 10px 0 10px 0; color: #fff;}
.kcontents h2.h3title,.kcontents h3.h3title{background: #b59323; position:relative; margin:0;font-size:18px; font-size:1.8rem; line-height: 1.5; padding: 10px 0 10px 0; color: #fff;}
h3.h4title{position:relative; margin:0; font-size:25px; font-size:2.5rem; padding: 10px 0 10px 0; color: #00153b; border-bottom:1px solid #00153b; background :#fff;}
@media screen and (min-width: 740px){
#clinicpage h1,#cliniclist h1{font-size:25px; font-size:2.5rem;}
h2,h3{font-size:22px; font-size:2.2rem;}
.kcontents h2.h3title,.kcontents h3.h3title{font-size:22px; font-size:2.2rem;}
}

.kcontents{background:#fff;}
.whitebox{background: #fff; max-width:982px; margin:0 auto; padding:10px 20px 60px; margin-top: 20px;}
.whitebox{color: #00153b; }
.whitebox p{font-family: 'Noto Sans JP', sans-serif; }

.shop{margin:0 auto; padding:0 0 20px 0; }
#shinjuku.shop{ border-bottom:1px solid #00153b;}
.shop.last{border:none;}

.shop .clinicname{font-family: "shippori-mincho", serif; font-weight: 500; font-style: normal; font-size:18px; font-size:1.8rem;}
.shop .clinicinfo{margin-top:16px;}
.shop .clinicinfo ul li{margin-bottom:12px; text-align:left; line-height:1.4;}
.shop .clinicinfo ul li span{display:block; flex:1; padding:6px 8px;  line-height:1;}
.shop .clinicinfo ul li .title{flex:initial; display:block; background:#f0f0f0; margin-bottom:4px; text-align: left; width:100%;}
.shop .clinicinfo ul li a{color:#00153b; text-decoration:underline;}
.shop .clinicbox .freedial{display:flex; gap:4px; align-items:center;}
.shop .clinicbox .freedial:before{content:""; display:block; width:22px; height:12px; background:url("../lib/freedial.gif") 0 0 no-repeat; background-size:cover;}
.shop .clinicbox .map{display:flex; margin-top:6px; gap:4px; align-items:center;}
.shop .clinicbox .map .addr{}
.shop .clinicbox .map .icon img{display:block; width:60px; height:auto;}
.shop .map .icon{margin:0 0 0 auto;}
.shop .clinicinfo .pc2{display:block;}
.shop .clinicbox .image img{object-fit:cover; aspect-ratio:167 / 94; overflow:hidden;}

table.timebox{max-width: 982px; border-collapse: collapse; border-spacing: 0; width:100%; margin: 40px auto 20px auto; text-align: center; }
table.timebox tr th{background: #5182a5; font-weight: normal; width: calc(100% / 8); padding: 2% 0; font-size: 17px; font-size: 1.7rem; letter-spacing: 0; color:#fff;}
table.timebox tr td{padding: 0 0 3% 0; background: #5182a5; color: #fff;}

@media screen and (min-width: 600px){
.shop{padding-bottom:60px; margin:20px auto 20px;}
.shop .clinicbox{display:flex; gap:16px; margin-top:16px; justify-content:center;}
#clinicpage .shop .clinicbox{display:block;}
.shop .clinicbox .image{width:60%;}
.shop .clinicinfo{margin-top:0;}
.shop .clinicinfo ul li span{display:block; padding:4px 0; line-height:1.4; display:flex; align-items:start;}
.shop .clinicinfo ul li .title{margin:0; display:flex; align-items: center; justify-content: center;}
#clinicpage .shop .clinicinfo ul li .title{justify-content:start; padding-left:16px;}
.shop .clinicinfo .pc2{display:none;}
}
@media screen and (min-width: 740px){
.shop .clinicbox{max-width:1100px; margin:16px auto 0 auto;}
.shop .clinicbox .image{}
.shop .clinicinfo{width:45%;}
}

@media screen and (min-width: 740px){
}


.imgbox{max-width: 500px;  margin: 20px auto; border: 1px solid #ccc; padding: 4px;}
.look{margin: 20px 0;}
a.lbtn{background: #3a8e72; display: block; width: 90%; max-width: 500px; margin: 0 auto; padding: 12px 30px; font-size: 15px; font-size:1.5rem; border-radius: 40px; position: relative; text-align:center; line-height:1.4;}
a.lbtn:after{content: "→"; color: #fff; position: absolute; top:31%; right: 20px;}
a.lbtn span{font-size:.8em; display:block;}
@media screen and (min-width: 740px){
.look{margin:16px 0;}
#clinicpage a.lbtn{margin:0 auto; padding:20px 30px; font-size:22px; font-size:2.2rem; text-align:center;}
#clinicpage a.lbtn span{font-size:1em; display:inline-block;}
}

/*クリニック一覧*/
#cliniclist{position:relative; background:#00153b;}
#cliniclist .whitebox{padding:10px 20px 40px; max-width:initial;}
.clinicinfo .timebox{margin-top:10px;}



/*クリニック個別*/
#clinicpage .whitebox{max-width:800px;}
#clinicpage .shop{margin-bottom:0; padding-top:0; padding-bottom:0; border:none;}
#clinicpage .wbox{width:982px; margin:0 auto;}
#clinicpage{position:relative; background:#00153b; padding-bottom:10px;}
#clinicpage .mainimage{display:none;}
#clinicpage .text2{line-height:1.4;}
.slide,.slide2 {opacity: 0; transition: .4s;}
.slide2 .slick-next:before{display:none!important;}
.slide.slick-initialized,.slide2.slick-initialized {opacity: 1;}
#clinicpage .slide{width:100%; margin:20px auto 0 auto; margin-bottom: 35px; max-width: 800px;}
#clinicpage .slide .slick-prev, #clinicpage .slide .slick-next{width:25px; height:25px; z-index:9;}
#clinicpage .slide .slick-prev{left:2vw;}
#clinicpage .slide .slick-next{right:2vw;}
#clinicpage .slide .slick-prev:before,#clinicpage .slide .slick-next:before{display:none;}
#clinicpage .slide .slick-dots li{width:10px; height:10px;}

#clinicpage .openinfo{margin-top:10px;}
#clinicpage .openinfo ul{text-align:right; font-size:13px; font-size:1.3rem;}
#clinicpage .openinfo ul li:before{content:"※";}


@media only screen and (min-width:740px) {
#clinicpage .mainimage{width:calc(100% / 1.333); display:block;}
#clinicpage .slidebox{display:flex; gap:8px; margin-top:20px;}
#clinicpage .slide{margin-top:0; opacity:1; flex:1;}
#clinicpage .slide{display:flex; gap:8px; flex-flow: column;}
#clinicpage .shop .clinicinfo{width:100%;}
}

#clinicpage .features{padding:20px; background :#eee; text-align:left;}
#clinicpage .features h2{margin-top:0;}
#clinicpage .features ul{display:flex; flex-wrap:wrap; gap:0 16px;}
#clinicpage .features li{display:flex; gap:4px; align-items:center;}
#clinicpage .features li.f01:before{content:""; display:block; width:16px; height:16px; background:url("../lib/icon-01.png") 0 0 no-repeat; background-size:cover;}
#clinicpage .features li.f02:before{content:""; display:block; width:16px; height:16px; background:url("../lib/icon-02.png") 0 0 no-repeat; background-size:cover;}
#clinicpage .features li.f03:before{content:""; display:block; width:16px; height:16px; background:url("../lib/icon-03.png") 0 0 no-repeat; background-size:cover;}
#clinicpage .features li.f04:before{content:""; display:block; width:16px; height:16px; background:url("../lib/icon-04.png") 0 0 no-repeat; background-size:cover;}
#clinicpage .features li.f05:before{content:""; display:block; width:16px; height:16px; background:url("../lib/icon-05.png") 0 0 no-repeat; background-size:cover;}
#clinicpage .features li.f06:before{content:""; display:block; width:16px; height:16px; background:url("../lib/icon-06.png") 0 0 no-repeat; background-size:cover;}
#clinicpage .features li.f07:before{content:""; display:block; width:16px; height:16px; background:url("../lib/icon-07.png") 0 0 no-repeat; background-size:cover;}
#clinicpage .features li.fnight:before{content:""; display:block; width:16px; height:16px; background:url("../lib/icon-night.png") 0 0 no-repeat; background-size:cover;}

#clinicpage .shop .clinicinfo{margin:0;}

#clinicpage .mapbox{margin:0 auto; margin-top:0px; text-align:center;}
#clinicpage .mapbox{width: 100%; aspect-ratio: 16 / 12;}
#clinicpage .mapbox iframe{width: 100%; height: 100%;}
@media only screen and (min-width:740px) {
#clinicpage .mapbox{width: 100%; aspect-ratio: 16 / 7; margin-bottom:20px;}
}

.accordion .accordion_container{margin:20px 0;}
.accordion .accordion_title{background-color: #eee; color: #00153b; font-size: 18px; font-size: 1.8rem; padding: 20px 10px; text-align: left; position: relative; z-index: +1; cursor: pointer; transition-duration: 0.2s;}
.accordion .accordion_title:hover{opacity: 0.8;}
.accordion .icon_wrap{display: flex; justify-content: center; align-items: center; position: absolute; top: 50%; right: 2px; width: 40px; height: 40px; margin-top: -20px; box-sizing: border-box; -webkit-transform: rotate(45deg); transform: rotate(45deg); transform-origin: center center; transition-duration: 0.2s;}
.accordion .icon{display: block; width: 25px; height: 18px; -webkit-transform: rotate(45deg); transform: rotate(45deg); transform-origin: center center; transition-duration: 0.2s; position: relative;}
.accordion .accordion_title.open .icon_wrap{-webkit-transform: rotate(-135deg); transform: rotate(-135deg);}
.accordion .icon:before{content: ''; width:15px; height:15px; border: 0; border-top: solid 2px #00153b; border-right: solid 2px #00153b; transform: rotate(45deg); position: absolute; top: 0; left: 0; bottom: 0; margin: auto;}

.accordion .tit_root{display:inline-block; background:#00153b; color:#fff; font-weight:700; padding:8px 20px;}
.accordion .slide2{max-width:550px; margin:0 auto;}


.accordion .accordion_inner{opacity:0; padding: 20px 0; max-height : 0;  -webkit-transition: all 1s ease;  -moz-transition: all 1s ease;  transition: all 1s ease;}
.accordion .accordion_inner.is-open03{opacity:1; max-height : 3000px;  -webkit-transition: all 1.5s ease;  -moz-transition: all 1.5s ease; transition: all 1.5s ease;}
.accordion .ac_inner_wraper{height: auto; margin:0 auto 30px; width:95%;}
.accordion .ac_inner_wraper ul li{margin-bottom: 10px; text-align: left; line-height: 1.5; font-size: 14px; font-size: 1.4rem;}
.accordion .ac_inner_wraper ul li .imgbox{margin-bottom: 5px;}
.accordion .closeArea{width: 160px; margin: 0 auto;}
.accordion .closeArea .close_box a.close_btn{display: flex; font-family: 'Noto Sans JP', sans-serif; justify-content: center; align-items: center;
background: #00153b; color: #fff; width: 100%; margin-top: 30px; padding: 10px 0;  font-size: 18px; font-weight: bold; position: relative; text-decoration: none; line-height: 1.3; cursor: pointer; transition-duration: 0.2s;}
@media screen and (min-width: 740px) {
.accordion .accordion_container{max-width: 800px; margin: 0 auto;}
.accordion .ac_inner_wraper ul li{text-align:center;}
}

.director{margin-top:40px;}
.director p{text-align: left; margin-bottom: 20px;}
.director.drimg-shinjyuku img{max-width:500px;}
.director span{font-size: 1.4em;}
.director h5{font-size: 1.2em; font-weight: 600; font-family: 'Noto Sans JP', sans-serif; text-align: left;}
.director img.doctorname{display:inline-block; height:20px; width:auto;}
.director .directorinfo{max-width:450px;}
@media screen and (min-width: 740px) {
.director{padding: 20px 0;}
}


.casebox{max-width: 800px; width: 100%; margin: 0 auto 0 auto; padding-bottom: 50px; font-family: 'Noto Sans JP', sans-serif; border-bottom: 1px solid #ccc;}
.casebox.last{border-bottom: none;}
.casebox .ctitle{font-weight: 600; text-align: left; border-left: #00153b 3px solid ; padding-left: 10px; font-size: 15px; font-size: 1.5rem;}
.casebox .ctitle a{color: #00153b; text-decoration: underline;}
.casebox ul{max-width: 600px; display: flex; flex-wrap: wrap; margin: 5% auto ; gap: 5px; }
.casebox ul li{width: calc(33.3% - 5px);}
.casebox ul li .photo{margin-top: 5px;}
.casebox .chiryo01{background: #00153b; color: #fff; border-radius: 3px;}
.casebox .chiryo02{background: #00153b; color: #fff; border-radius: 3px;}
.casebox .chiryo03{background: #00153b; font-weight: 600; color: #ec0; border-radius: 3px;}
.casebox .subtitle{margin-top: 10px; font-weight: 600; text-align: left; color:#00153b; font-family: 'Noto Sans JP', sans-serif; font-size: 14px;}
.casebox p{text-align: left;  font-size: 1.3rem; }
.casebox p.ibikilabo{font-size:11px; color:#333; max-width: 600px; margin:0 auto 30px;}

.slick-prev:before,.slick-prev:after{display:none;}
.casebox .slide2{margin:5%; box-sizing: border-box;}
.casebox .slide2 .slick-prev, .casebox .slide2 .slick-next{width:25px; height:25px; z-index:9;}
.casebox .slide2 .slick-prev{left:-8%;}
.casebox .slide2 .slick-next{right:-8%;}
.casebox .slide2 .slick-prev:before,.casebox .slide2 .slick-next:before{display:none;}
.casebox .slide2 .slick-dots li{width:10px; height:10px;}
.score{display:flex; gap:20px;}
.score .scoreimg{width:50%; background:#191c21;}
.score .scoresound{flex:1; display: flex;flex-direction: column;}
.score .scoretitle{margin:10px auto; font-size:1.7rem;}
.score .scoresound p{margin:0 0 20px 0; font-size:1.4rem;}
.score .casesound{margin-top: auto;}
.score .casesound audio{margin-top:5px; width:100%;}

@media screen and (min-width: 460px){
.score .scoretitle{margin:10px auto; font-size:1.9rem;}
.score .scoresound p{margin:0 0 20px 0; font-size:1.6rem;}
}
@media screen and (min-width: 500px){
.score .scoretitle{margin:10px auto; font-size:1.9rem;}
.score .scoresound p{margin:0 0 20px 0; font-size:1.6rem;}
}

@media screen and (min-width: 500px){
.casebox .ctitle{ font-size: 18px; font-size: 1.8rem;}
.casebox .subtitle{font-size: 16px;}
.casebox p{text-align: left;  font-size: 16px; }

.score .scoreimg{width:55%;}
.score .scoretitle{margin:20px auto; font-size:2.3rem;}
.score .scoresound p{margin:0 0 30px 0; font-size:1.7rem;}
.score .casesound audio{margin-top:10px; width:100%;}
}
@media screen and (min-width: 660px){
.casebox .slide2{margin:5% auto;}
}

.about p{text-align:left; margini-bottom:16px;}
@media screen and (min-width: 740px){
.about a.lbtn{text-align:left;}
}

#price table.price thead td{color: #fff;}
#price .txt02{text-align: left; margin: 25px auto 25px auto;}
#hoken .txt02{text-align: left; margin: 0 auto;}
#hoken p a{color:#b59323; text-decoration:underline;}
#price .txt02.center{text-align: center;}
#price table.price02{margin:20px auto 0 auto; width:100%; max-width:800px; border-collapse: collapse; border:1px solid #00153b; }
#price table.price,#price table.pickup{width:100%; max-width:800px;}
#price table th.hyotitle,#price table.pickup th.hyotitle,#price table.price th.hyotitle,#price table.price02 tbody th{width: 160px;}
#price table.price02 th,#price table.price02 td{border:1px solid #00153b;}
#price table.price02 tbody th{background:#5182a5; font-weight:500; padding:4px 0; font-size:15px;}
#price table.price02 tbody td{font-size: 16px; background:#f0f0f0; text-align:center; color:#00153b; padding:4px;}
#price table.price02 td.none{background-image: linear-gradient(to left top, transparent calc(50% - 0.5px), #00153b 50%, #00153b calc(50% + 0.5px), transparent calc(50% + 1px))}
#price table.price{margin:10px auto; border-collapse: collapse; border:1px solid #00153b;}
#price .notes{width:100%;}
@media screen and (min-width: 740px){
#price table.price02 th.hyotitle,#price table th.hyotitle,#price table.pickup th.hyotitle,#price table.price th.hyotitle,#price table.price02 tbody th{width:260px;}
}

#payment .payment{padding:20px; text-align:left;}
#payment .payment li{margin-bottom:20px;}
#payment .payment li .icon-list{font-size:17px; font-size:1.7rem; font-family: 'Noto Sans JP', sans-serif; margin-bottom: 5px;}
#payment .payment li .icon-list:before{color: #101f39;}
#payment .payment li p{margin:0; margin-bottom:12px; padding-left:15px;}
#payment .payment .card{margin-top:8px; width:300px; padding-left:15px;}
#payment .payment .code{margin-top:8px; width:200px; padding-left:15px;}
h4{padding-top: 20px;}
.pricelist{margin-bottom: 30px;}
@media only screen and (min-width:740px) {
#payment .payment{max-width:800px; margin:0 auto;}
#payment .payment li.hf{display:inline-block; width:60%; margin-right:1%; vertical-align:top;}
#payment .payment li.hfcode{display:inline-block; width:38%; margin-right:1%; vertical-align:top;}
#payment .payment .card{margin-top:8px; width:400px; padding-left:15px;}
#payment .payment .code{margin-top:8px; width:250px; padding-left:15px;}
#payment p em{font-size:17px; font-size:1.7rem;}
}

#faq .faqbox{position:relative; margin:10px 0; padding-bottom:10px; border-bottom:1px dotted #00153b;}
#faq label{display:flex; gap:8px; font-family: "shippori-mincho", serif; font-weight: 500; font-style: normal; align-items:center;}
#faq .question{font-family: "shippori-mincho", serif; font-weight: 500; font-style: normal; font-size:2rem; color:#fff; background:#00153b; border-radius:50px; width:30px; height:30px; display:flex; align-items:center; justify-content:center; line-height:1;}
#faq .answer{font-family: "shippori-mincho", serif; font-weight: 500; font-style: normal; font-size:2rem; color:#fff; background:#b59323; border-radius:50px; width:30px; height:30px; display:flex; align-items:center; justify-content:center; line-height:1;}
#faq .accordion-hidden { display: none;}
#faq .accordion-open::before,
#faq .accordion-open::after { content: ''; width: 20px; height: 1.5px; background: #00153b; position: absolute; top:16px; right: 5%; transform: translateY(-50%);}
#faq .accordion-open::after { transform: translateY(-50%) rotate(90deg); transition: .5s;}
#faq .accordion-hidden:checked+.accordion-open:after { transform: translateY(-50%) rotate(0);}
#faq .accordion-inner { display: block; height: 0; overflow: hidden; padding: 0; opacity: 0; transition: 0.5s; /* 表示速度の設定 */ cursor: pointer;}
#faq .accordion-hidden:checked+.accordion-open+.accordion-inner { height: auto; opacity: 1; padding: 10px;}
#faq .accordion-box {display:flex; text-align:left; gap:16px; align-items:start; background: #eee; height: 0; overflow: hidden;  opacity: 0; transition: 1s;}
#faq .accordion-hidden:checked+.accordion-open+.accordion-box { height: auto; opacity: 1; margin-top:20px; padding:20px;}
#faq .answerbox{flex:1; font-size:1.4rem;}

#column p{text-align:left;}

/*map*/
#clinicmap{margin-bottom:16px;}
#clinicmap .clinic_by_area_flex_cont .map_wrap,
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap {
  padding: 0 25px;
}
@media only screen and (max-width: 1024px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap,
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap {
    padding: 0;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap {
}
@media only screen and (max-width: 1024px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap {
    width: 100%;
    max-width: 1200px;
    margin: auto;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map {
  position: relative;
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_img img {
  width: 100%;
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 480px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    height: auto;
    margin: 0 -5px;
    max-width: 300px;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item {
  position: absolute;
}
@media only screen and (min-width: 768px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap{max-width: 1000px; margin: 0 auto;}
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map{max-width: 400px; margin: 0 auto;}
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item:hover {
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
    -webkit-transform-origin: center;
            transform-origin: center;
  }
}
@media only screen and (max-width: 480px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item {
    position: static;
    width: 50%;
    padding: 0 5px;
  }
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item:nth-child(n+3) {
    margin-top: 10px;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item a {
  display: block;
  border: solid 2px #6d83b1;
  height: 30px;
  font-weight: bold;
  color: #6d83b1;
  background-color: #fff;
  min-width: 70px;
  border-radius: 5px;
  text-align: center;
  padding: 2px;
}
@media only screen and (max-width: 480px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item a {
    height: 40px;
    padding: 8px 2px;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.hokkaido {
  top: 10%;
  right: 10%;
}
@media only screen and (max-width: 1200px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.hokkaido {
    right: 6%;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.tohoku {
  top: 37%;
  right: 12%;
}
@media only screen and (max-width: 1200px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.tohoku {
    right: 8%;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.kanto {
  top: 60%;
  right: 11%;
}
@media only screen and (max-width: 1200px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.kanto {
    right: 7%;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.chubu {
  top: 72%;
  right: 21%;
}
@media only screen and (max-width: 1200px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.chubu {
    right: 17%;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.kansai {
  top: 67%;
  right: 40%;
}
@media only screen and (max-width: 1200px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.kansai {
    right: 36%;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.chugoku {
  top: 57%;
  right: 56%;
}
@media only screen and (max-width: 1200px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.chugoku {
    right: 52%;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.shikoku {
  top: 79%;
  right: 58.5%;
}
@media only screen and (max-width: 1200px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.shikoku {
    right: 54.5%;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.kyushu {
  top: 76%;
  right: 83%;
}
@media only screen and (max-width: 1200px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.kyushu {
    right: 79%;
  }
}
#clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.okinawa {
  top: 93%;
  right: 73%;
}
@media only screen and (max-width: 1200px) {
  #clinicmap .clinic_by_area_flex_cont .map_wrap .map .map_area_list .map_area_item.okinawa {
    right: 69%;
  }
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap {
  width: 65%;
  padding-top: 30px;
}
@media only screen and (max-width: 1024px) {
  #clinicmap .clinic_by_area_flex_cont .cost_assist_wrap {
    width: 100%;
    max-width: 768px;
    padding-top: 0;
    margin: 30px auto 0;
  }
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist {
  border: solid 2px #db7c7c;
  border-radius: 10px;
  position: relative;
  z-index: 0;
  padding: 20px 20px 10px;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_title_wrap {
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  padding: 0 10px;
  z-index: 1;
  background-color: #fff;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_title_wrap .cost_assist_title {
  color: #db7c7c;
  font-weight: bold;
  font-size: 20px;
  position: relative;
  padding-left: 40px;
  white-space: nowrap;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_title_wrap .cost_assist_title:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  background-image: url("../media/images/clinic/clinic_info_03.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

#clinicmap .infobox ul.banner li{border-radius: 10px; padding: 10px; position: relative; font-weight: 600; color: #fff; text-align: center; margin-bottom: 10px;}
#clinicmap .infobox ul.banner.openinfo{display: flex; gap: 10px;}
#clinicmap .infobox ul.banner.openinfo li{background:#db7c7c; width: 100%;}
#clinicmap .infobox ul.banner.partnerinfo li{background:#6d83b1; }
#clinicmap .infobox ul.banner.iteninfo li{background:#7cb16d; }

#clinicmap .infobox h4.infotitle.green
{  color: #7cb16d;
  font-weight: bold;
  font-size: 20px;
  position: relative;
  white-space: nowrap;
}
#clinicmap .infobox h4.infotitle.pink
{  color: #db7c7c;
  font-weight: bold;
  font-size: 20px;
  position: relative;
  white-space: nowrap;
}
#clinicmap .infobox h4.infotitle.blue
{  color: #6d83b1;
  font-weight: bold;
  font-size: 20px;
  position: relative;
  white-space: nowrap;
}

#clinicmap .infobox h4.infotitle{text-align: center; width: 100%;
  display: flex; gap: 10px; margin-bottom: 5px;
  align-items: center;/* 縦位置の調整 */
}

#clinicmap .infobox h4.infotitle.green::before,
#clinicmap .infobox h4.infotitle.green::after {
  content: '';
  flex-grow: 1;/* 余白を分け与える */
  height: 2px;
  background: #7cb16d;
}
#clinicmap .infobox h4.infotitle.pink::before,
#clinicmap .infobox h4.infotitle.pink::after {
  content: '';
  flex-grow: 1;/* 余白を分け与える */
  height: 2px;
  background: #db7c7c;
}
#clinicmap .infobox h4.infotitle.blue::before,
#clinicmap .infobox h4.infotitle.blue::after {
  content: '';
  flex-grow: 1;/* 余白を分け与える */
  height: 2px;
  background: #6d83b1;
}

@media only screen and (min-width: 768px) {
#clinicmap .infobox .sp{display: none;}
#clinicmap .infobox{display: flex; gap: 10px;}
#clinicmap .infobox .pink, #clinicmap .infobox .blue{width: 100%; text-align: center; vertical-align: top;
}
#clinicmap .infobox h4.infotitle.blue{margin-top: 0;}
}

#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item + .cost_assist_item {
  border-top: dashed 1px #909090;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item.open .cost_assist_item_title:after {
  -webkit-transform: rotate(90deg) translate(0, -50%);
          transform: rotate(90deg) translate(0, -50%);
  -webkit-transform-origin: center;
          transform-origin: center;
  right: 15px;
  top: calc(50% - 8px);
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item.open .cost_assist_item_content {
  display: block;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_title {
  cursor: pointer;
  padding: 20px 0 15px;
  position: relative;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_title:before, #clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_title:after {
  -webkit-transform-origin: center;
          transform-origin: center;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_title:before {
  content: "";
  position: absolute;
  background-color: #db7c7c;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  right: 0px;
  width: 16px;
  height: 2px;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_title:after {
  content: "";
  position: absolute;
  background-color: #db7c7c;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  right: 7px;
  width: 2px;
  height: 16px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_title p {
  font-weight: bold;
  font-size: 18px;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content {
  display: none;
  padding-top: 5px;
  padding-bottom: 15px;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .cost_assist_content_section + .cost_assist_content_section {
  margin-top: 30px;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .content_section_head {
  background-color: #eecece;
  padding: 4px 5px 2px;
  display: inline-block;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .content_section_head_text {
  font-weight: bold;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .content_section_assist_name {
  margin-top: 10px;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .content_section_assist_name_text {
  font-weight: bold;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .content_section_assist_target {
  margin-top: 10px;
  background-color: #e6e6e6;
  padding: 15px;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .assist_target_annotation {
  position: relative;
  padding-left: 1.2em;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .assist_target_annotation:before {
  content: "・";
  position: absolute;
  left: 0;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .content_section_annotation {
  margin-top: 10px;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .content_section_annotation .annotation_item {
  color: #db7c7c;
  position: relative;
  padding-left: 1.2rem;
}
#clinicmap .clinic_by_area_flex_cont .cost_assist_wrap .cost_assist .cost_assist_item .cost_assist_item_content .content_section_annotation .annotation_item:before {
  content: "※";
  position: absolute;
  left: 0;
}
#clinicmap .clinic_by_area_flex_cont .btn-online {
  max-width: 420px;
  margin-right: auto;
  margin-left: auto;
}
#clinicmap ul{list-style: none;}

#c_info{border: 1px solid #b59323; margin: 5% auto; max-width: 800px;}
#c_info h3{margin: 0; background: #b59323; color: #fff;}
#c_info ul{padding: 5px 10px 10px 10px; text-align: left;}
#c_info ul li{padding-bottom: 3px; border-bottom:1px dotted #b59323; padding: 5px 0;}
#c_info ul li:last-child{padding-bottom: 0; border: none;}
#c_info ul li .date{width: 80px; margin-right: 10px; display: inline-block; vertical-align: top;}
#c_info ul li .txt{width: calc(100% - 90px); display: inline-block; line-height: 1.4;}
#c_info ul li a{color: #00153b;}
#c_info ul li a:hover{text-decoration: underline;}

.areaicon{position: relative; font-weight: 600; font-size: 20px; max-width: 1100px; margin: 0 auto; background: #f0f0f0; padding: 3px}
.areaicon::before{margin-right: 5px; display: inline-block;  content: ""; background-image: url("../lib/areaicon.png"); background-size: cover; width: 15px; height: 20px;}