@charset "utf-8";
/*---------------------------------------------
	body
---------------------------------------------*/
html {
  scroll-behavior: smooth;
  font-size: 62.5%;
} /* 10px */
body {
  font-size: 1.6rem;
  color: #000;
  line-height: 1.9;
  text-align: left;
  -webkit-text-size-adjust: 100%;
  font-family: "Noto Sans JP";
} /* 16px */
p {
  font-size: 1.6rem;
} /* 16px */
img {
  width: 100%;
  height: auto;
}
.sp_br{
  display: none;
}

/*---------------------------------------------
 **  フォント
---------------------------------------------*/
.mincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝", Georgia, serif;
}

/*---------------------------------------------
	Anchor
---------------------------------------------*/
a {
  outline: none;
}
a:link {
  text-decoration: underline;
  color: #282424;
}
a:visited {
  text-decoration: underline;
  color: #282424;
}
a:hover {
  text-decoration: none;
  color: #635c5c;
}
a:active {
  text-decoration: none;
  color: #635c5c;
}
a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}



/*---------------------------------------------
	p
---------------------------------------------*/
p {
  margin-bottom: 1em;
}
p + a {
  margin-top: 1em !important ;
}
p + div {
  margin-top: 0 !important ;
}

/*---------------------------------------------
 ** padding
---------------------------------------------*/
.pLR_1em {
  padding-left: 1em;
  padding-right: 1em;
}

/*---------------------------------------------
 ** フォント
---------------------------------------------*/
.fwb {
  font-weight: bold;
}

/*---------------------------------------------
 ** ON OFF hover
---------------------------------------------*/
.hover {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.hover:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -ms-filter: "alpha( opacity=60 )";
}

/*---------------------------------------------
 **  ページトップ
---------------------------------------------*/
#pageTop {
  width:60px;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 999;
}
#pageTop a {
  display: block;
  padding: 5px 3px 30px 3px;
  border-radius: 30px;
  background-color: #02529c;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  background: url(../img/page_top.png) no-repeat;
  background-size: 100% auto;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
}
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}

/*---------------------------------------------
 **   text-align
---------------------------------------------*/
.tac {
  text-align: center;
}

/*---------------------------------------------
 **  position
---------------------------------------------*/
.por {
  position: relative;
}

/*---------------------------------------------
 ** display
---------------------------------------------*/
.db {
  display: block !important;
}

/*=================================================================================================================================*/
/**  共通部分	*/
/*=================================================================================================================================*/

/*---------------------------------------------
 ** 見出し
---------------------------------------------*/
/*---------------------------------------------
 ** h2
---------------------------------------------*/
h2 {
  font-size: 3.4rem;
  line-height: 1.5;
  margin-bottom: 1.8rem;
}

/*---------------------------------------------
 ** h3
---------------------------------------------*/
h3 {
  margin-bottom: 1.5rem;
}

/*---------------------------------------------
 ** コンテンツ全体
---------------------------------------------*/
#content {
  width: 100%;
}
#main {
  width: 100%;
  margin: 0 auto;
  padding: inherit;
}
/*---------------------------------------------
 ** セクション
---------------------------------------------*/
.section_block {
  margin-bottom: 50px;
}

/*---------------------------------------------
 ** ヘッダー記述
---------------------------------------------*/
#header {
  width: 100%;
  background:url(../img/main.png) no-repeat;
  background-size: auto 110%;
  margin-top:110px;
  position:relative;
}
#header::before{
  content:'';
  display: block;
  width:100%;
  height:48px;
  background:url(../img/navi_bg.png) repeat-x;
  position:absolute;
  top:0;
  z-index: 999;
}
.header_wrapper{
  background:url(../img/main_bg.png) no-repeat left;
  background-size:auto 110%;
  margin-left: 30%;
  text-align: center;
  overflow: hidden;
}
.header_inner{
  width:80%;
  max-width: 540px;
  padding:12% 0 5%;
  margin-left: 32%;
}
.header_inner h1{
  background:#EA7C00;
  padding:10px 0;
  font-size:2.0rem;
  text-align: center;
  border-radius: 30px;
  margin-bottom:10px;
}
.header_inner h2{
  text-align: left;
  font-size:4.5rem;
  letter-spacing: 0.15em;
  font-weight: bold;
  color:#4D3013;
  line-height: 1.4;
}
.header_inner h2 span{
  font-size:6.0rem;
}
.header_inner h2 span.orange{
  color:#EA5A00;
}
.header_inner p{
  font-size:2.0rem;
  text-align: left;
}

/* ボタン */
.btn_base {
  border: 3px solid #96cbb9;
  width: 90%;
  max-width: 400px;
  text-align: center;
  color: #fff !important;
  display: inline-block;
  padding: 20px 16px 18px;
  font-size: 20px;
  font-weight: bold;
  text-decoration: none !important;
  box-shadow: 2px 2px rgba(0, 0, 0, 0.342);

  position: relative;
  -moz-border-radius:8px; -webkit-border-radius:8px; border-radius:8px;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#96cbb9+0,6dc4a4+100 */
background: #96cbb9; /* Old browsers */
background: -moz-linear-gradient(top, #96cbb9 0%, #6dc4a4 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #96cbb9 0%,#6dc4a4 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #96cbb9 0%,#6dc4a4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#96cbb9', endColorstr='#6dc4a4',GradientType=0 ); /* IE6-9 */
}
.btn_base:hover {
  background: #fff;
  color: #96cbb9 !important;
}
.icon_tri:after {
  position: absolute;
  bottom: 6px;
  right: 0;
  margin: 0 auto;
  left: 0;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 9px 0px 9px;
  border-color: #FFF transparent transparent transparent;
}

.header_bt {
  width: 90%;
  margin: 0 auto;
  display: block;
}

.for_medical{
  width:30%;
  max-width:118px;
  display: block;
  position:absolute;
  top:153px;
  right:0;
}
.for_medical_sp{
  display: none;
}

#about, #area, #service, #list, #for_medical, #howto, #contact{
  margin-top:-100px;
  padding-top:100px;
  display: block;
}

section{
  width:100%;
  padding:5% 0;
}

.w850{
  width:90%;
  max-width:850px;
  margin:0 auto 8%;
  text-align: center;
}
.w850 p{
  text-align: left;
}
.bg_yellow02{
  background:#FEF9EC;
}
.bg_yellow03{
  background:#fdedd5;
}
.bg_blue01{
  background:url(../img/for_medi_img01.jpg) no-repeat right top #AFD7E3;
  background-size:40% auto;
}
.bg_blue02{
  background:#F5FAFF;
}
.bg_blue03{
  background:#F5FAFF;
}
.bg_blue04{
  background:#EDF6FF;
}

.bg_yellow01{
  width:100%;
  background:url(../img/img01_01.jpg) no-repeat left -15% top 55%;
  background-size:55% auto;
  background-color:#FDF4DE;
}
.bg_yellow01 div{
  width:40%;
  margin-left:55%;
}
.bg_yellow01 div h3{
  font-size:3.0rem;
  background:url(../img/icon_home.png) no-repeat top center;
  padding-top:80px;
  margin-bottom:10px;
  color:#4C3013;
  font-weight: bold;
}

.about h3, .area h3, .target h3,
.service h3, .hearing h3{
  width:90%;
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  background:url(../img/line_orange.png) repeat-x bottom 0 left 0;
  padding-bottom:50px;
  line-height: 1.6;
  margin:0 auto 30px;
}
.about h3 span{
  font-size:2.4rem;
  display: block;
}
.about img{
  max-width:755px;
  margin:30px auto;
}

.sanda_can01 .w1200{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  display: flex;
  justify-content: space-between;
}

.sanda_can02 .w1200{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  display: flex;
  justify-content: space-between;
  flex-flow: row-reverse;
}
.sanda_can01,.sanda_can02,.sanda_can03{
  position:relative;
  z-index: 0;
}

.sanda_can01::after, .sanda_can03::after{
  content:'';
  width:42%;
  height:345px;
  position:absolute;
  right:0;
  top:12%;
  background:#ffe9d2;
  border-radius:20px 0 0 20px;
  z-index:-2;
}

.sanda_can02::after{
  content:'';
  width:42%;
  height:345px;
  position:absolute;
  left:0;
  top:12%;
  background:#ffe9d2;
  border-radius:0 20px 20px 0;
  z-index:-2;
}

.about.w1200{
  width:90%;
  max-width:1200px;
  margin:0 auto 30px;
  display: flex;
  justify-content: space-between;
  z-index:-1;
}
.about .w1200 div{
  width:50%;
  padding-top:4%;
}
.about .w1200 img{
  width:40%;
  height:100%;
}

.about h4{
  font-size:3.0rem;
  font-weight: bold;
  margin-bottom:30px;
  line-height: 1.6;
}
.about h4 span{
  display: block;
  color:#EA5B00;
  font-size:4.0rem;
}

.area{
  text-align: center;
}
.area img{
  max-width: 1200px;
  margin:30px auto;
}
.area p{
  font-weight: bold;
  font-size:1.8rem;
}

.target div, .service div{
  width:88%;
  max-width: calc(1200px - 6%);
  border:5px solid #EA5B00;
  padding:2% 3%;
  margin:0 auto;
}
.target h4{
  color: #EA5900;
  font-size:2.0rem;
  font-weight: bold;
  margin-bottom:10px;
  text-align: center;
}

.service ul li{
  display: inline-block;
  margin:0 3% 1% 0;
}
.service ul li::before{
  content:'●';
  color:#EA5B00;
  padding-right:10px;
}
.service p{
  text-align: center;
}

.hearing .w1200{
  width:90%;
  max-width:1200px;
  margin:0 auto;
  display: flex;
  justify-content: space-between;
}
.hearing .w1200 p{
  width:55%;
}

.hearing .w1200 img{
  width:45%;
  height:100%;
  max-width:386px;
  border-radius: 20px;
  box-shadow: 15px 15px #ffe9d2;
}

.contact{
  width:90%;
  max-width:900px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin:0 auto;
}

.contact .btn{
  width:35%;
  color:#fff;
  font-weight: bold;
  font-size:2.7rem;
  text-align: center;
  padding:3% 5%;
  background:#EA5B00;
  border:2px solid #4E3014;
  border-radius: 45px;
  height:2rem;
  line-height: 0.7;
  margin-top:30px;
}
.contact .con_info{
  width:45%;
}

.contact .con_info p:nth-child(1){
  font-size:4.5rem;
  font-weight: bold;
  background:url(../img/icon_tel.png) no-repeat top left;
  padding-left:60px;
  line-height: 1.0;
  margin-bottom:15px;
}

.contact .con_info p:nth-child(2){
  padding:7px 0 10px;
  text-align: center;
  background:#FFC199;
  text-align: center;
  border-radius: 20px;
  margin-bottom:10px;
  line-height: 1.0;
}
.contact .con_info p:nth-child(3){
  text-align: center;
  font-size:90%;
}

.bg_blue01 div .read{
  width: 45%;
  max-width:700px;
  margin:0 auto;
  padding-right: 30%;
}

.bg_blue01 h2{
  font-weight: bold;
  text-align: center;
}
.bg_blue01 h2 span{
  background:url(../img/icon_doctor.png) no-repeat top left;
  background-size:55px auto;
  display: inline-block;
  padding:5px 0 10px 70px;
}

.entry h3{
  width:90%;
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  background:url(../img/line_blue.png) repeat-x bottom 0 left 0;
  padding-bottom:50px;
  line-height: 1.6;
  margin:0 auto 30px;
}
.howto h3{
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  padding-bottom:50px;
  line-height: 1.6;
  margin:0 auto 0;
}

.entry div{
  width:88%;
  max-width: calc(1200px - 6%);
  border:5px solid #CCE6FF;
  padding:2% 3%;
  margin:0 auto;
}

.entry ul li{
  display: inline-block;
  margin:0 3% 1% 0;
}
.entry ul li::before{
  content:'●';
  color:#2B579A;
  padding-right:10px;
}
.entry p{
  width:90%;
  text-align: center;
  margin:60px auto 20px;
}
p.service_p{
  margin-top:10px!important;
}

.bg_blue03 div{
  width:100%;
  background:#E0F0FF;
  text-align: center;
}
.bg_blue03 div ul{
  width:100%;
  max-width:1200px;
  background:#E0F0FF;
  padding:2% 0;
  text-align: center;
  display: flex;
  margin:0 auto;
}
.bg_blue03 div ul li{
  width:33.3%;
  border-right:3px solid #fff;
}
.bg_blue03 div ul li:last-child{
  border-right:0;
}
.bg_blue03 div ul li h4{
  width:90%;
  font-size:1.8rem;
  margin:10px auto 0px;
  font-weight: bold;
}

.bg_blue03 div ul li:nth-child(1) h5{
  width:90%;
  font-size:3.0rem;
  text-align: center;
  margin:0 auto;
}
.bg_blue03 div ul li:nth-child(1) h5 span{
  display: inline-block;
  font-weight: bold;
  background:url(../img/icon_fax_b.png) no-repeat top 10px left;
  padding:0 0 5px 50px;
}
.bg_blue03 div ul li:nth-child(1) p a{
  display: inline-block;
  margin:10px auto;
  padding:2% 5%;
  color:#fff;
  background:#2B579A;
  text-decoration: none;
  border-radius: 25px;
}
.bg_blue03 div ul li:nth-child(1) p a:hover{
  text-decoration: none;
}

.bg_blue03 div ul li:nth-child(2) h5{
  width:90%;
  font-size:3.0rem;
  text-align: center;
  font-weight: bold;
  margin:0 auto;
}
.bg_blue03 div ul li:nth-child(2) h5 span{
  display: inline-block;
  font-weight: bold;
  background:url(../img/icon_tel_b.png) no-repeat top 10px left;
  padding:5px 0 5px 50px;
}
.bg_blue03 div ul li:nth-child(2) p{
  width:90%;
  margin:0 auto;
  font-size:80%;
}

.bg_blue03 div ul li:nth-child(3) h5{
  width:90%;
  font-size:1.8rem;
  font-weight: bold;
  text-align: center;
  margin:40px auto 0;
}
.bg_blue03 div ul li:nth-child(3) h5 span{
  display: inline-block;
  background:url(../img/icon_mail_b.png) no-repeat top 10px left;
  padding:5px 0 5px 50px;
}
.bg_blue03 div ul li:nth-child(3) h5 span a{
  text-decoration: none;
}
.bg_blue03 p{
  width:90%;
  max-width:1200px;
  margin:10px auto 30px;
  text-align: center;
}

.flow h3{
  width:90%;
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  background:url(../img/line_blue.png) repeat-x bottom 0 left 0;
  padding-bottom:50px;
  line-height: 1.6;
  margin:0 auto 30px;
}

.flow .flow_block{
  width:84%;
  max-width:700px;
  margin:0 auto;
}
.flow .flow_block .blue{
  padding:3% 8%;
  background:#E0F0FF;
}
.flow .flow_block .green{
  width:70%;
  max-width:700px;
  padding:5% 5% 4%;
  background:#C9E6A5;
  margin-right:0;
}

.flow .flow_block .green div{
  background:url(../img/icon_staff.png) no-repeat top 20px left;
  padding:0 0 0 120px;
}
.flow .flow_block .green div h4{
  font-size:2.0rem;
  margin-bottom:10px;
  font-weight: bold;
}

.flow .flow_block > div{
  position:relative;
  margin:0 auto 100px;
}
.flow .flow_block > div::after{
  content: ' ';
  position: absolute;
  bottom: -60px;
  left: 0;
  right:0;
  width: 0;
  height: 0;
  border: none;
  border-top: 35px solid #2B579A;
  border-right: 40px solid transparent;
  border-left: 40px solid transparent;
  margin:0 auto;
}
.flow .flow_block > div:last-child::after{
  border: none;
}

.flow .flow_block .blue h4{
  font-size:3.0rem;
  font-weight:bold;
}
.flow .flow_block .blue h4 span{
  display: block;
  color:#2B579A;
  font-size:4.0rem;
}
.flow .flow_block p a{
  display: inline-block;
  margin:10px auto;
  padding:2% 5%;
  color:#fff;
  background:#2B579A;
  text-decoration: none;
  border-radius: 25px;
}
.flow .flow_block p a:hover{
  text-decoration: none;
}

.merit h3{
  width:90%;
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  background:url(../img/line_blue.png) repeat-x bottom 0 left 0;
  padding-bottom:50px;
  line-height: 1.6;
  margin:0 auto 30px;
}

.merit div{
  width:88%;
  max-width: calc(1200px - 6%);
  padding:2% 3%;
  margin:0 auto;
  padding:5px 0 15px 0;
}

.merit li{
  list-style: none;
  font-size:18px;
  margin-bottom:15px;
}
.merit li span:nth-child(1){
  font-size:4.0rem;
  font-weight: bold;
  display: inline-block;
  border-right:2px solid #2B5799;
  color:#2B5799;
  padding:5px 40px 15px 0;
  margin-right:30px;
  line-height:1.0;
}

.network{
  text-align: center;
}

.network h3{
  width:90%;
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  background:url(../img/line_blue.png) repeat-x bottom 0 left 0;
  padding-bottom:50px;
  line-height: 1.6;
  margin:0 auto 30px;
}


.network h4{
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  border-bottom:#CCE6FF 5px solid;
  display: inline-block;
  padding-bottom:10px;
  line-height: 1.6;
  margin:0 auto 30px;
  text-align: center;
}

.network div{
  width:88%;
  max-width: calc(1200px - 6%);
  padding:2% 3%;
  margin:0 auto 30px;
  padding:5px 0 30px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content:flex-start;
}
.network div.b_border{
  border-bottom:1px solid #D0E8FF;
}


.network dl{
  width:30%;
  margin-right:5%;
  margin-bottom:40px;
  text-decoration: none;
  font-size:1.4rem;
  line-height:1.6;
}

.network dl:nth-child(3n){
  margin-right:0;
}
.network dl dt{
  margin-bottom:10px;
}
.network a:link{
  text-decoration: none!important;
}

.message h3{
  width:90%;
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  background:url(../img/line_blue.png) repeat-x bottom 0 left 0;
  padding-bottom:50px;
  line-height: 1.6;
  margin:0 auto 30px;
}

.message p{
  width:88%;
  max-width: calc(1200px - 6%);
  padding:2% 3%;
  margin:0 auto;
  padding:5px 0 15px 0;
}
.message p.t_center{
  text-align: center;
}

.box_cont{
  padding-top:80px;
}

.box_cont h3{
  width:90%;
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  padding-bottom:10px;
  line-height: 1.6;
  margin:0 auto 30px;
}
.box_cont p{
  width:90%;
  text-align: center;
  margin:0 auto;
}

#completion{
  width:90%;
  margin:80px auto;
  max-width:1200px;
  text-align: center;
}
#completion h3{
  width:90%;
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  padding-bottom:10px;
  line-height: 1.6;
  margin:0 auto 30px;
}


/* フッター */
footer{
  background:#FEF9EC;
}

.footer_inner{
  width:88%;
  max-width: calc(1200px - 6%);
  padding:2% 3%;
  margin:0 auto;
  padding:5px 0 15px 0;
}

.footer_inner .logo{
  width:40%;
  max-width:374px;
  margin:60px auto 40px;
  border-bottom:1px solid #FBE6AE;
  padding-bottom:50px;
  padding:0 30% 50px;
  margin-bottom:40px;
}
.footer_inner .contact{
  max-width:400px;
  margin:30px auto;
}
.footer_inner .contact .con_info{
  width:100%;
}


/* コピーライト */
#copyright {
  font-size: 0.8em;
  width: 100%;
  text-align: center;
  letter-spacing: 3px;
  background:#F3EEEA;
  padding: 15px 0 18px;
}


.nairan_ad{
  font-size: 90% !important;
  margin: -1.5em 0 0 0 !important;
}


.contact-ttl{
      font-weight: bold;
    text-align: center;
    margin: -21px 0 30px;
    font-size: 20px;
}