@charset "utf-8";
/* ===================================================================
 File Name  : page.css
 Style Info : ページに関するスタイル指定
=================================================================== */

/*----------------------------------------------------
  トップページ index
--------------------------------------------------- */
#mainVisual {
  background: url("../img/index/mv_img.png") right top no-repeat;
  /*background-size: auto 500px;*/
  background-size: auto 430px;
}
.mv_inner {
  width: 100%;
  max-width: 1264px;
  /*height: 500px;*/
  height: 430px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  padding: 0 20px;
}
.mv_txt img {
 filter: drop-shadow(3px 3px 1px rgba(255, 255, 255, 0.7));
}
  @media screen and (max-width: 1180px) {
    .mv_txt img {
      width: 55vw;
    }
    .mv_txt{padding-bottom: 4vw;}
  }
  @media screen and (max-width: 999px) {
    #mainVisual {
      background: url("../img/index/mv_img_sp.png") right bottom no-repeat;
      background-size: 100% auto;
    }
    .mv_inner {
      width: 100%;
      max-width: 100%;
      /*height: 106.66vw;*/
      height: 120vw;
      display: block;
      padding: 10.66vw 5.33vw 0 5.33vw;
    }
    .mv_txt img {
      width: 100%;
      height: auto;
    }
  }

#index_appeal {
  padding: 45px 0 30px;
}
#index_appeal li {
  margin-bottom: 15px;
}
  @media screen and (max-width: 999px) {
    #index_appeal {
      padding: 5.33vw 0;
    }
    #index_appeal li {
      display: flex;
      justify-content: center;
      align-items: flex-end;
      width: 30.6%;
      margin-bottom: 2.66vw;
    }
  }

.ytb_box {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.ytb_box iframe {
  width: 100%;
  height: 100%;
  border-radius: 10px;
}
  @media screen and (max-width: 999px) {
    .ytb_box iframe {
      border-radius: 1.33vw;
    }
  }

/*ひらの歯科で治療を受けた患者様の声*/
#index_voice {
  padding: 100px 0 120px;
}
#index_voice h2 {
  font-size: 3rem;
  font-weight: 500;
}
.index_voice_lead {
  margin-bottom: 35px;
}
.index_voice_lead p {
  font-size: 1.6rem;
  margin-top: 5px;
}
.index_voice_movie p {
  margin-top: 20px;
  font-size: 1.6rem;
}
/*追加　サイズ調整*/
.index_voice_movie{
	width: 70%;
	margin:0 auto;
}
  @media screen and (max-width: 999px) {
    #index_voice {
      padding: 8vw 0 10.66vw;
    }
    #index_voice h2 {
      font-size: 5.06vw;
    }
    .index_voice_lead {
      margin-bottom: 5vw;
    }
    .index_voice_lead p {
      font-size: 2.66vw;
      margin-top: 1.33vw;
    }
    .index_voice_movie p {
      margin-top: 3.33vw;
      font-size: 2.66vw;
    }
    /*追加　サイズ調整*/
    .index_voice_movie{
	   width: 100%;
	   margin:0 auto;
	   }
  }

/*こんな入れ歯のお悩みありませんか？*/
#index_worries {
  padding-bottom: 150px;
}
.index_worries_lead_wrap {
  position: relative;
  padding: 15px 0 15px 100px;
  margin-bottom: 115px;
  min-height: 580px;
}
.index_worries_lead_wrap::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  width: 180px;
  height: 100%;
  background: #FFFAFA;
  border-radius: 10px 0 30px 0;
}
.index_worries_lead_wrap h2 {
  position: absolute;
  left: 25px;
  top: 25px;
  font-size: 3rem;
  font-weight: 500;
}
.index_worries_lead_wrap h2 span {
  display: inline-block;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.index_worries_lead {
  position: relative;
  z-index: 5;
}
.index_worries_lead01 {
  padding-left: 110px;
  margin-bottom: 25px;
  font-size: 2.2rem;
}
  @media screen and (max-width: 999px) {
    #index_worries {
      padding-bottom: 5.33vw;
    }
    .index_worries_lead_wrap {
      padding: 3.33vw 0 3.33vw 13.33vw;
      margin-left: -5.33vw;
      margin-right: -5.33vw;
      margin-bottom: 6.66vw;
      min-height: 87.46vw;
    }
    .index_worries_lead_wrap::before {
      width: 17vw;
      height: 100%;
      border-radius: 1.33vw 0 4vw 0;
    }
    .index_worries_lead_wrap h2 {
      left: 3.33vw;
      top: 3.33vw;
      font-size: 4.53vw;
    }
    .index_worries_lead01 {
      padding-left: 6.66vw;
      margin-bottom: 2.33vw;
      font-size: 2.93vw;
    }
  }

.index_worries_lead02 {
  max-width: 1044px;
  background: #fff;
  padding: 45px 20px 45px 110px;
  margin-bottom: 25px;
  font-size: 2.4rem;
  font-weight: 600;
  box-shadow: 1px 1px 10px rgba(0,0,0,0.25);
}
.index_worries_lead02 li {
  margin: 13px 0;
  padding-left: 30px;
  background: url("../img/common/ico/ico_check01.svg") 0 3px no-repeat;
  background-size: 24px auto;
}
  @media screen and (max-width: 999px) {
    .index_worries_lead02 {
      max-width: 100%;
      width: calc(100% - 5.33vw);
      padding: 3.33vw 3.33vw 3.33vw 2.66vw;
      margin-bottom: 4.66vw;
      font-size: 3.2vw;
      box-shadow: 1px 1px 1.8vw rgba(0,0,0,0.25);
    }
    .index_worries_lead02 li {
      margin: 1.66vw 0;
      padding-left: 5vw;
      background: url("../img/common/ico/ico_check01.svg") 0 0 no-repeat;
      background-size: 3.6vw auto;
    }
  }

.index_worries_lead03 {
  padding-left: 110px;
  font-size: 2.2rem;
}
  @media screen and (max-width: 999px) {
    .index_worries_lead03 {
      padding-left: 6.66vw;
      font-size: 2.93vw;
    }
  }

.index_worries_box {
  margin-bottom: 35px;
}
.index_worries_box figure {
  width: 52%;
  max-width: 622px;
}
.index_worries_txt {
  width: 45%;
  max-width: 570px;
  padding-top: 20px;
}
.index_worries_txt p {
  font-size: min(1.85vw, 2.2rem);
  line-height: 1.8;
  margin-bottom: 30px;
}
  @media screen and (max-width: 999px) {
    .index_worries_box {
      margin-bottom: 0;
      padding-left: 3vw;
      padding-right: 3vw;
      padding-bottom: 2.66vw;
    }
    .index_worries_box figure {
      width: 100%;
      max-width: 100%;
    }
    .index_worries_box figure img {
      width: 100%;
      height: auto;
    }
    .index_worries_txt {
      text-align: left!important;
      width: 100%;
      max-width: 100%;
      padding-top: 6.66vw;
    }
    .index_worries_txt p {
      /*font-size: 2.93vw;*/
      font-size: 3.8vw;
      line-height: 1.8;
      margin-bottom: 5vw;
    }
  }

/*当院の5つの特徴*/
#index_feature {
  padding-bottom: 80px;
}
#index_feature h2 {
  text-align: center;
  margin-bottom: 70px;
}
#index_feature h2 small {
  display: block;
  font-size: 2.4rem;
  font-weight: 500;
}
#index_feature h2 b {
  font-size: 3rem;
}
.index_feature_box {
  position: relative;
  min-height: 500px;
  margin-bottom: 45px;
}
.index_feature_box figure {
  position: absolute;
  top: 0;
}
#index_feature01 figure {
  right: calc(50% - 810px);
}
#index_feature02 figure {
  left: calc(50% - 810px);
}
.index_feature_box figure img {
  /*width: 100%;*/
  width: auto;
  height: 500px;
  object-fit: cover;
}
.index_feature_txt {
  width: 100%;
}
.index_feature_txt_inner {
  width: 57.5%;
  max-width: 700px;
}
  @media screen and (max-width: 999px) {
    #index_feature {
      padding-bottom: 2.66vw;
    }
    #index_feature h2 {
      /*margin-bottom: 8vw;*/
      margin-bottom: 8vw;
    }
    #index_feature h2 small {
      /*font-size: 3.2vw;*/
      font-size: 4vw;
    }
    #index_feature h2 b {
      /*font-size: 5.06vw;*/
      font-size: 8vw;
    }
    .index_feature_box {
      min-height: auto;
      margin-bottom: 10.66vw;
    }
    .index_feature_box figure {
      position: static;
      padding: 0 5.33vw;
      margin-bottom: 5vw;
    }
    .index_feature_box figure img {
      height: auto;
    }
    .index_feature_txt_inner {
      width: 100%;
      max-width: 100%;
    }
  }

#index_feature h3 {
  line-height: 1.3;
  /*border-bottom: solid 3px #FFFAFA;*/
  border-bottom: solid 3px #ff8787;
  padding-bottom: 15px;
  margin-bottom: 25px;
}
#index_feature h3 span {
  display: inline-block;
  font-size: 2.4rem;
}
#index_feature h3 b {
  display: block;
  font-size: 2.4rem;
  margin-top: 12px;
  font-weight: 600;
}
.index_feature_txt dt {
  font-weight: 600;
}
.index_feature_txt dd span {
  text-decoration: underline;
}
.index_feature_txt dd p {
  margin-bottom: 20px;
}
.index_feature_txt dd p:last-child {
  margin-bottom: 0;
}
.index_feature_txt dd p small {
  font-size: 1.6rem;
}
#index_feature02 .index_feature_txt {
  padding-top: 50px;
}
  @media screen and (max-width: 999px) {
    #index_feature h3 {
      border-bottom: solid 2px #FFFAFA;
      padding-bottom: 1.66vw;
      margin-bottom: 3.33vw;
    }
    #index_feature h3 span {
      font-size: 3.73vw;
    }
    #index_feature h3 b {
      /*font-size: 3.46vw;*/
      font-size: 4vw;
      margin-top: 1.33vw;
    }
    .index_feature_txt dt {
      /*margin-bottom: 1.33vw;*/
      margin-bottom: 3vw;
    }
    .index_feature_txt dd span {
      text-decoration: underline;
    }
    .index_feature_txt dd p {
      /*font-size: 2.66vw;*/
      font-size: 4vw;
      margin-bottom: 4.26vw;
      
      line-height: 1.6;
    }
    .index_feature_txt dd p:last-child {
      margin-bottom: 0;
    }
    .index_feature_txt dd p small {
      font-size: 2.33vw;
    }
    #index_feature02 .index_feature_txt {
      padding-top: 0;
    }
  }

.index_feature_list {
  padding-top: 45px;
}
.index_feature_list_box {
  width: calc(33.33% - 14px);
  margin: 0 20px 45px 0;
}
.index_feature_list_box:nth-child(3n) {
  margin-right: 0;
}
  @media screen and (max-width: 999px) {
    .index_feature_list {
      padding-top: 0;
    }
    .index_feature_list_box {
      width: 100%;
      margin: 0 0 9.33vw 0;
    }
    .index_feature_list_box p {
      /*font-size: 2.66vw;*/
      font-size: 4vw;
    }
  }

#index_care {
  padding: 100px 0 70px;
  background: #FFFAFA;
}
#index_care h2 {
  text-align: center;
  margin-bottom: 45px;
}
#index_care h2 small {
  display: inline-block;
  font-size: 2.4rem;
  border-bottom: solid 3px #FFA0A0;
  line-height: 1.1;
  padding: 0 3px;
  margin-bottom: 5px;
}
#index_care h2 span {
  display: inline-block;
  font-size: 3rem;
}
.index_care_box {
  background: #fff;
  margin-bottom: 30px;
  padding: 40px 5.5%; 
  box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.25);
}
.index_care_box figure {
  width: 38.5%;
  max-width: 416px;
}
.index_care_txt {
  width: 59.5%;
  max-width: 640px;
}
.index_care_txt h3 {
  font-size: 2.4rem;
  margin-bottom: 15px;
  line-height: 1.3;
}
.index_care_txt h3 span {
  display: inline-block;
  border-bottom: solid 2px #FFA0A0;
  line-height: 1.2;
}
.index_care_txt h3 b {
  display: block;
  margin-top: 18px;
}
  @media screen and (max-width: 999px) {
    #index_care {
      padding: 12vw 0 8vw;
    }
    #index_care h2 {
      margin-bottom: 5.33vw;
    }
    #index_care h2 small {
      font-size: 3.2vw;
      border-bottom: solid 2px #FFA0A0;
      line-height: 1.1;
      padding: 0 0.66vw;
      margin-bottom: 0.66vw;
    }
    #index_care h2 span {
      font-size: 4.8vw;
    }
    .index_care_box {
      margin-bottom: 5.33vw;
      padding: 5.33vw; 
    }
    .index_care_box figure {
      width: 100%;
      max-width: 100%;
      margin-bottom: 5vw;
    }
    .index_care_box figure img {
      width: 100%;
      height: auto;
    }
    .index_care_txt {
      width: 100%;
      max-width: 100%;
    }
    .index_care_txt h3 {
      font-size: 3.73vw;
      margin-bottom: 2.66vw;
    }
    .index_care_txt h3 span {
      border-bottom: solid 1px #FFA0A0;
    }
    .index_care_txt h3 b {
      /*font-size: 3.46vw;*/
      font-size: 4.6vw;
      margin-top: 2.66vw;
    }
    .index_care_txt p {
      /*font-size: 2.66vw;*/
      font-size: 4vw;
      line-height: 1.8;
    }
  }

#index_greeting {
  padding: 100px 0;
  margin-bottom: 50px;
}
#index_greeting .inner{
	width: 856px;
}
#index_greeting h2 {
  font-size: 3rem;
  text-align: center;
  margin-bottom: 80px;
  font-weight: 500;
}
#index_greeting .ytb_box {
  max-width: 856px;
  margin: 0 auto;
}
  @media screen and (max-width: 999px) {
    #index_greeting {
      padding: 12vw 0;
      margin-bottom: 2.66vw;
    }
    #index_greeting .inner{
	width: 100%;
	}
    #index_greeting h2 {
      font-size: 4.8vw;
      margin-bottom: 6.66vw;
    }
    #index_greeting .ytb_box {
      max-width: 100%;
    }
  }
 /*挨拶　テキスト*/
#index_greeting{line-height: 1.6;}
#index_greeting .index_greeting_box{
	display: flex;
	justify-content: space-between;
	width: 100%;
}
#index_greeting .index_greeting_box2{
	width: 100%;
	}
#index_greeting .index_greeting_box .text-box{
	width: 68%;
	}
#index_greeting .index_greeting_box figure{
	width: 29%;
}
#index_greeting .p_r{text-align: right;}
@media screen and (max-width: 999px) {
	#index_greeting .index_greeting_box{
		flex-direction: column;
		}
	#index_greeting .index_greeting_box .text-box{
		width: 100%;
		}
	#index_greeting .index_greeting_box figure{
		width: 70%; 
		margin:0 auto; 
		padding-bottom: 2rem;
		}
	}
/*経歴・所属団体*/
#index_greeting .list{
	border:1px solid #ddd;
	padding:3rem 6rem;
}
#index_greeting .list h3{
	margin-bottom: 2rem;
}
#index_greeting .list ul{
	margin-left: 3rem;
}
#index_greeting .list ul li{
	list-style-type: disc;
	border-bottom: 1px solid #ddd;
	padding-bottom: 10px;
	margin-bottom: 15px;
}
@media screen and (max-width: 999px) {
	#index_greeting .list{
		padding:2rem 3rem;
		}
	}

/*「後悔しない入れ歯」をつくっていただきたい*/
#index_advice {
  margin-bottom: 120px;
}
#index_advice h2 {
  text-align: center;
  font-size: 3rem;
}
#index_advice h2 span {
  position: relative;
  min-width: 748px;
  display: inline-block;
  border-radius: 20px 20px 0 0;
  box-shadow: 1px 1px 10px rgba(0,0,0,0.25);
  padding: 30px 20px 15px 20px;
}
#index_advice h2 span::before {
  position: absolute;
  left: 0;
  bottom: -20px;
  content: "";
  width: 100%;
  height: 40px;
  background: #fff;
  z-index: 5;
}
.index_advice_box {
  position: relative;
  max-width: 1015px;
  margin: 0 auto;
  box-shadow: 1px 1px 10px rgba(0,0,0,0.25);
  padding: 90px 5.5% 60px;
}
.index_advice_box figure {
  position: absolute;
  right: 40px;
  top: 160px;
}
.index_advice01 {
  position: relative;
  z-index: 5;
  padding-right: 300px;
}
.index_advice02 {
  position: relative;
  z-index: 5;
}
.index_advice_box p {
  margin-bottom: 30px;
}
.index_advice_box p span {
  text-decoration: underline;
}
  @media screen and (max-width: 999px) {
    #index_advice {
      margin-bottom: 12vw;
    }
    #index_advice h2 {
      font-size: 4.8vw;
      line-height: 1.2;
    }
    #index_advice h2 span {
      min-width: 65.86vw;
      border-radius: 2.66vw 2.66vw 0 0;
      box-shadow: 1px 1px 1.8vw rgba(0,0,0,0.25);
      padding: 4.26vw 2.66vw 2vw 2.66vw;
    }
    #index_advice h2 span::before {
      position: absolute;
      left: 0;
      bottom: -3vw;
      height: 6vw;
    }
    .index_advice_box {
      max-width: 100%;
      margin: 0 auto;
      box-shadow: 1px 1px 10px rgba(0,0,0,0.25);
      padding: 6.66vw 5.33vw 2vw 5.33vw;
    }
    .index_advice_box figure {
      position: absolute;
      right: 2.33vw;
      top: 22vw;
      width: 32vw;
      
      
      right: -10vw;
      top: -16vw;
      width: 32vw;
      z-index: 5;
    }
    .index_advice_box figure img {
      width: 100%;
      height: auto;
    }
    .index_advice01 {
      padding-right: 0;
    }
    .index_advice_box p {
      /*font-size: 2.66vw;*/
      font-size: 3.8vw;
      margin-bottom: 4vw;
    }
  }

#index_counseling {
  padding-bottom: 0px;
}
#index_counseling h2 {
  text-align: center;
  margin-bottom: 60px;
}
#index_counseling h2 span {
  /*display: block;
  font-size: 3rem;*/
}
.index_counseling_box {
  max-width: 720px;
  margin: 0 auto;
}
.index_counseling_box p {
  margin-bottom: 15px;
}
.index_counseling_box dl {
  max-width: 600px;
  margin: 0 auto;
  border: solid 1px #ccc;
  padding: 30px 20px 45px;
}
.index_counseling_box dt {
  text-align: center;
  margin-bottom: 30px;
}
.index_counseling_box dd li {
  position: relative;
  font-size: 2rem;
  margin-bottom: 3px;
  padding-left: 25px;
}
.index_counseling_box dd li::before {
  position: absolute;
  left: 0;
  top: 5px;
  content: "";
  width: 18px;
  height: 18px;
  border: solid 1px #000;
  border-radius: 50%;
}
  @media screen and (max-width: 999px) {
    #index_counseling {
      padding-bottom: 0vw;
    }
    #index_counseling h2 {
      margin-bottom: 4.4vw;
    }
    #index_counseling h2 small img {
      width: 19.2vw;
      height: auto;
    }
    #index_counseling h2 span {
      font-size: 4.8vw;
    }
    .index_counseling_box {
      max-width: 80vw;
    }
    .index_counseling_box p {
      font-size: 2.66vw;
      margin-bottom: 1vw;
    }
    .index_counseling_box dl {
      max-width: 100%;
      padding: 4vw 4vw 5.33vw;
    }
    .index_counseling_box dt {
      font-size: 2.66vw;
      margin-bottom: 4.4vw;
    }
    .index_counseling_box dd li {
      position: relative;
      font-size: 2.66vw;
      margin-bottom: 1.33vw;
      padding-left: 3.33vw;
    }
    .index_counseling_box dd li::before {
      top: 0.5vw;
      width: 2.66vw;
      height: 2.66vw;
    }
  }
  
 /*デザイン変更*/
.index_counseling_cta{}
.index_counseling_cta p.fc01{
	font-size: 45px;
	color: #000;
}
.index_counseling_cta .fc01 span.color_pink{
	color: #ff8787;
}
.index_counseling_cta p.p01{
	text-align: center;
}
.index_counseling_cta p.p01 span{
	font-weight: 700;
	text-decoration: underline;
}
.index_counseling_cta .img2_box{
	text-align: center;
}
@media screen and (max-width: 999px) {
	#index_counseling h2,
	#index_counseling h2 span,
	.index_counseling_cta p.fc01,
	.index_counseling_cta h2 span {
      font-size: 7vw;
    }
    .index_counseling_cta p.p01{
	    font-size: 3.2vw;
	    }
}
/*----------------------------------------------------
  お問い合わせありがとうございます thanks
--------------------------------------------------- */
#thanks p{text-align: center;}
#thanks .btn_toppage{}
#thanks .btn_toppage p{}
#thanks .btn_toppage p a{
	text-decoration: none;
	color: #fff;
	font-size: 2rem;
	font-weight: 500;
	background-color: #ff8787;
	padding:1rem 4rem;
	border-radius: 3rem;
}
#thanks .btn_toppage p a:hover{filter: brightness(1.1);}
/*----------------------------------------------------
  よくあるご質問 faq
--------------------------------------------------- */
/*上部目次*/
#faq .list{}
#faq .list h3{
	color: #ff8787;
	font-size: 2.4rem;
	text-align: center;
	font-weight: 300;
	margin-bottom: 3rem;
}
#faq .list ul{}
#faq .list ul li{
	margin:1rem 0;
	background-color: #fffafa;
	background-image:url('../img/others/icon_triangle.svg');
	background-repeat: no-repeat;
	background-position: right 20px center;

	}
#faq .list ul li a{
	display: block;
	text-decoration: none;
	color: #000;
	border-radius: 10px 0 0 10px;
	padding:1.2rem 2rem 1.2rem 1rem;
	}
@media screen and (max-width: 999px) {
	#faq .list ul li a{width: 90%;}
	
}

#faq .list ul li a:hover{font-weight: 600;}

/*faq*/
#faq .faq_q{
	display: flex;
	border-bottom: 1rem solid #ff8787;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
}
#faq .faq_q p{
	font-size: 3rem;
	line-height: 1.2;
	font-weight: 300;
	vertical-align: middle;
}
@media screen and (max-width: 999px) {
	#faq .faq_q p{
		font-size: 2rem;
	}
  }
#faq .faq_q p.icom{
	color: #ff8787;
	font-size: 3rem;
	font-weight: 700;
	padding-right: 1rem;
}
#faq .faq_a{
	border:1px solid #cccccc;
	padding:3rem 4rem;
}
@media screen and (max-width: 999px) {
	#faq .faq_a{padding:2rem 2rem;}
}
#faq .faq_a p{}

/*飛んだ先の調整*/
#faq .qa_box::before {
  content:'';
  display: block;
  padding-top: 25rem;
  margin-top: -25rem;
}
@media screen and (max-width: 999px) {
	#faq .qa_box::before {
		content:'';
		display: block;
		padding-top: 15rem;
		margin-top: -15rem;
		}
}

/*上部へボタン*/
.btn_faq_top{
	text-align: right;
	margin-bottom: 3rem;
}
.btn_faq_top a{}
.btn_faq_top a:hover{}

/*----------------------------------------------------
  当院の入れ歯の治療例 examples
--------------------------------------------------- */
#examples{}
/*名前*/
#examples .ttl_line_bottom{
	border-bottom: 1rem solid #ff8787;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
}
#examples .ttl_line_bottom p{
	font-size: 3rem;
	line-height: 1.2;
	font-weight: 300;
	vertical-align: middle;
}
@media screen and (max-width: 999px) {
	#examples .ttl_line_bottom p{
		font-size: 2rem;
	}
  }
/*ピンクラインbox*/
.box_line_p{
	border:1px solid #ffa0a0;
	padding:3rem 6rem;
	margin-bottom: 2rem;
}
@media screen and (max-width: 999px) {
	.box_line_p{padding:1rem 3rem;}
  }
.box_line_p h3{
	color: #ffa0a0;
	font-size: 2rem;
	font-weight: 600;
	margin-bottom: 2rem;
}
@media screen and (max-width: 999px) {
	.box_line_p h3{
		margin-bottom: 1rem;
		font-size: 1.6rem;
		}
  }
.box_line_p ul{margin-left: 2rem;}
.box_line_p ul li{list-style-type: disc;}

.box_line_p p.p1{font-size: 2.2rem;}
 @media screen and (max-width: 999px) {
	 .box_line_p p.p1{font-size: 1.4rem;}
	 }
.box_line_p p.p1 span{color: #ffa0a0;}

/*ビフォーアフター*/
.box_ba{
	display: flex;
	justify-content: space-between;
	background-image:url('../img/examples/arrow.png');
	background-repeat: no-repeat;
	background-position: center center;
}
 @media screen and (max-width: 999px) {
	 .box_ba{
	 flex-direction: column;
	 background-image:url('../img/examples/arrow_sp.png');
	background-repeat: no-repeat;
	background-position: center center;}
  }
.box_ba div{width: 48rem;}
 @media screen and (max-width: 999px) {
	 .box_ba div{width: 100%;}
 }
  @media screen and (max-width: 999px) {
	  .box_ba div.before{margin-bottom: 4rem;}
	  }
.box_ba div h4{
	width: 100%;
	font-size: 2rem;
	text-align: center;
	background-color: #ccc;
	padding:1rem 0;
	margin-bottom: 0;
}
  @media screen and (max-width: 999px) {
	  .box_ba div h4{font-size: 1.4rem;}
	  }
.box_ba div.before h4{}
.box_ba div.after h4{
	color: #fff;
	background-color: #ffa0a0;
}
.box_ba div .image{}
.box_ba div .image img{}

/*----------------------------------------------------
  入れ歯治療の流れ flow　アクセス access
--------------------------------------------------- */
#flow{}
#flow .ttl_line_bottom,
#access .ttl_line_bottom{
	border-bottom: 1rem solid #ff8787;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
}
#flow .ttl_line_bottom p,
#access .ttl_line_bottom p{
	font-size: 2.8rem;
	line-height: 1.2;
	font-weight: 300;
	vertical-align: middle;
}

#flow .ttl_line_bottom p span,
#access .ttl_line_bottom p span{
	color: #ff8787;
	font-weight: 600;
	margin-right: 2rem;
	}
@media screen and (max-width: 999px) {
	#flow .ttl_line_bottom p,
	#access .ttl_line_bottom p{font-size: 2rem;}
	#flow .ttl_line_bottom p span,
	#access .ttl_line_bottom p span{margin-right: 2rem;}
  }

#flow .flex_box,
#access .flex_box{
	display: flex;
	justify-content: space-between;
}
#flow .flex_box .image,
#access .flex_box .image{width: 32rem;}
#flow .flex_box .text_box,
#access .flex_box .text_box{
	width: 66rem;
}
@media screen and (max-width: 999px) {
	#flow .flex_box,
	#access .flex_box{flex-direction: column-reverse;}
	#flow .flex_box .image,
	#access .flex_box .image{width: 100%; margin-bottom: 2rem;}
	#flow .flex_box .text_box,
	#access .flex_box .text_box{width: 100%;}
	}

#flow .flex_box .text_box p{}
#flow .flex_box .text_box p.under_p,
#access .flex_box .text_box p.under_p{
	border-bottom: 1px solid #ff8787;
	padding-bottom: 1rem;
}
#flow .flex_box .text_box p.under_p span,
#access .flex_box .text_box p.under_p span{
	color: #ff8787;
	font-size: 3rem;
	font-weight: 600;
}
@media screen and (max-width: 999px) {
	#flow .flex_box .text_box p.under_p span,
	#access .flex_box .text_box p.under_p span{font-size: 2rem;}
	}
/*診察時間*/
#flow .table_hours_line,
#access .table_hours_line{
	width: 100%;
	border:1px solid #ff8787;
	border-radius: 0.6rem;
	padding:1rem 2rem;
}
#flow .table_hours,
#access .table_hours{
	color: #ff8787;
}
#flow .table_hours tr.pink,
#access .table_hours tr.pink{
	border-bottom: 1px solid #ff8787;
}
#flow .table_hours th,
#flow .table_hours td,
#access .table_hours th,
#access .table_hours td{
	padding:0.5rem 1rem;
}
 @media screen and (max-width: 999px) {
	 #flow .table_hours th,
	 #flow .table_hours td,
	 #access .table_hours th,
	 #access .table_hours td{padding:0.3rem 0.5rem;}
	 }
#flow .table_hours th{}
#flow .table_hours td{}

/*リスト*/
.box_line{
	border:1px solid #cccccc;
	padding:2rem 4rem;
	margin-bottom: 3rem;
}
 @media screen and (max-width: 999px) {
	 .box_line{padding:2rem 2rem;}
	 }
.box_line ul{}
.box_line ul li{
	list-style-type: none; 
	margin-bottom: 0.5rem; 
	text-indent: -1em;
   padding-left: 1em;
}

/*下矢印*/
#flow .arrow_bottom{
	text-align: center;
	margin-bottom: 2rem;
	}
#flow .arrow_bottom img{}


/*アクセス*/
#access{}
#access .h3pink{color: #ff8787; font-weight: 600; font-size: 2rem;}
@media screen and (max-width: 999px) {
	#access .h3pink{font-size: 1.4rem;}
}
#access .line_pink_dotted{
	border:none;
	border-bottom: 1px dotted #ff8787;
	
}
/*ul li*/
#access .ul_dotto{
	margin-left: 2rem;
}
#access .ul_dotto li{
	list-style-type: disc;
	margin-bottom: 1rem;
}
/*map*/
#access .map{
	width: 100%;
	height: 60rem;
}
#access .map iframe{
	width: 100%;
	height: 60rem;
}
 @media screen and (max-width: 999px) {
	 #access .map{height: 30rem;}
	 #access .map iframe{height: 30rem;}
	 }
#access .p_c{text-align: center;}
#access .p_cb{
	text-align: center;
	font-size: 3rem;
}
#access .p_cb span{color: #ff8787;}

/*バス*/
#access .h4_pink{color: #ff8787;}
#access .text_flex{display: flex; vertical-align: middle; align-items: center;}
#access .text_flex p{}
#access .text_flex p.p01{
	color: #ff8787;
	border:1px solid #ff8787;
	padding:1rem 3rem;
	margin-right: 2rem;
}

 @media screen and (max-width: 999px) {
	 #access .text_flex{flex-direction: column;}
	 #access .text_flex p.p01{margin-bottom: 1rem; width: 100%;}
	 }
/*----------------------------------------------------
  入れ歯の種類・料金 fee_kinds
--------------------------------------------------- */
/*リストボタン*/
#fee_kinds .fee_kinds{
	border: 1px solid #b3b3b3;
	padding:6rem 11rem;
}
@media screen and (max-width: 999px) {
	.fee_kinds{padding:3rem 4rem;}
	#fee_kinds .fee_kinds{padding:2rem 4rem;}
}
#fee_kinds .fee_kinds h3{
	color: #ff8787;
    font-size: 2.4rem;
    text-align: center;
    font-weight: 300;
    margin-bottom: 3rem;
}
#fee_kinds .fee_kinds ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#fee_kinds .fee_kinds ul li{
	width: 31rem;
	background-color: #fffafa;
	margin-bottom: 1rem;
	

    background-color: #fffafa;
    background-image: url(../img/others/icon_triangle.svg);
    background-repeat: no-repeat;
    background-position: right 20px center;
}
#fee_kinds .fee_kinds ul li a{
	display: block;
    text-decoration: none;
    color: #000;
    border-radius: 10px 0 0 10px;
    padding: 1.2rem 2rem 1.2rem 1rem;
}
#fee_kinds .fee_kinds ul li a:hover{font-weight: 600;}
/*料金見出し*/
#fee_kinds .ttl_line_bottom{
	border-bottom: 1rem solid #ff8787;
	padding-bottom: 1rem;
	margin-bottom: 4rem;
}
#fee_kinds .ttl_line_bottom p{
	font-size: 3rem;
	line-height: 1.2;
	font-weight: 300;
	vertical-align: middle;
}
@media screen and (max-width: 999px) {
	#fee_kinds .ttl_line_bottom p{
		font-size: 2rem;
	}
  }
 /*ピンクラインボックス*/ 
 #fee_kinds .box_line_pink{
	 border:1px solid #ff8787;
	 padding:4rem 6rem;
	 margin-bottom: 3rem;
 } 

 #fee_kinds .box_line_pink h3{
	 color: #ff8787;
	 font-size: 2rem;
	 margin-bottom: 2rem;
 }
 #fee_kinds .box_line_pink h3 p{}  
  @media screen and (max-width: 999px) {
	  #fee_kinds .box_line_pink{ padding:2rem 3rem;}
	  #fee_kinds .box_line_pink h3{ font-size: 1.6rem;}
	 }
 #fee_kinds .box_line_pink h3 span{
	 color: #000;
	 font-size: 1.4rem;
	 font-weight: 300;
 }
 /*料金*/
#fee_kinds .fee_box{
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #ff8787;
	padding-bottom: 1rem;
	
	background-image: url('../img/others/line_pink.svg');
	background-repeat: no-repeat;
	background-position: center center;
}

#fee_kinds .fee_box p{
	width: 49%;
}
#fee_kinds .fee_box p.p01{
	text-align: center;
	font-size: 2.4rem;
}
#fee_kinds .fee_box p.p02{
	text-align: right;
	font-size: 2.6rem;
	font-weight: 600;
}
#fee_kinds .fee_box p.p02 span{
	font-size: 60%;
}
@media screen and (max-width: 999px) {
	#fee_kinds .fee_box{flex-direction: column; background: none;}
	#fee_kinds .fee_box p{width: 100%;}
	#fee_kinds .fee_box p.p01{text-align: left; font-size: 2rem;}
	#fee_kinds .fee_box p.p02{font-size: 2rem;}
}
/*flex 画像あり*/
#fee_kinds .flex_box{
	display: flex;
	justify-content: space-between;
}
#fee_kinds .flex_box p{width: 67.6rem;}
#fee_kinds .flex_box img{}
@media screen and (max-width: 999px) {
	#fee_kinds .flex_box{flex-direction: column;}
	#fee_kinds .flex_box p{width: 100%;}
	}
	
/*----------------------------------------------------
  お問い合わせ
--------------------------------------------------- */
.contact{}
.contact .p_c30{
	text-align: center;
	font-size: 3rem;
}

/*フォーム*/

#contact_form {
  width: 80rem;
  margin: 0 auto;
}
@media screen and (max-width:999px){
	#contact_form {
		width: 100%;
		margin: 0 auto;
		}
}

#contact_form form {}
.form {}
#contact_form .form .flex_box01{
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 2rem;
}
#contact_form .form .item1{
	width: 38%;
}
#contact_form .form .item2{
	width: 60%;
}
#contact_form .form .flex_box02{
	display: flex;
	justify-content: space-between;
}
 @media screen and (max-width: 999px) {
	 #contact_form .form .flex_box01{
		 flex-direction: column;
		 width: 100%;
		 margin-bottom: 2rem;
		 }
	#contact_form .form .item1{
		width: 100%;
		margin-bottom: 2rem;
		}
	#contact_form .form .item2{
		width:100%;
		justify-content: flex-start;
		}
	#contact_form .form .flex_box02{
		width:100%;
		justify-content: flex-start;
	}
	#contact_form .form .item2 input{
		width: 100%;
	}
  }
#contact_form .form .flex_box02 p{
	font-size: 2rem;
}
#contact_form .form .flex_box02 .hiss{
	color: #fff;
	font-size: 1.8rem;
	padding:2px 7px;
	background-color: #ff8787;
	}
#contact_form .form .flex_box02 .nini{
	color: #fff;
	font-size: 1.8rem;
	padding:2px 7px;
	background-color: #cccccc;
	}
 @media screen and (max-width: 999px) {
	 #contact_form .form .flex_box02 .hiss,
	 #contact_form .form .flex_box02 .nini{
		 margin-left: 1rem;
	 }
}

/* ------------------------------プレースホルダーの色・サイズ指定------------------------------　*/
input::-webkit-input-placeholder {color:#999; font-size:16px; opacity: 1; }
input:-moz-placeholder {color:#999; font-size:16px; opacity: 1; }
textarea::-webkit-input-placeholder {color:#999; font-size:16px; opacity: 1; }
textarea:-moz-placeholder {color:#999; font-size:16px; opacity: 1; }

/* ------------------------------コンタクトフォーム７------------------------------　*/
div.wpcf7 { display:block; width:100%; margin:0 auto!important; box-shadow:none; background:transparent; }
div.wpcf7 p { padding:0; margin:0; line-height:2; }
div.wpcf7 input, .wpcf7 textarea , .wpcf7 select { width:100%; border:2px solid #ddd; padding: 10px 15px; font-size:1.6rem; border-radius:0; outline: none; }
div.wpcf7 textarea { height:215px; }
.wpcf7 input:focus, .wpcf7 textarea:focus { border:1px solid #009de1; }
.wpcf7-captchac { border:1px solid #999; }
@media screen and (max-width:999px){
    div.wpcf7,
    div.wpcf7 input, .wpcf7 textarea , .wpcf7 select {
      width:100%;
      width:auto;
      border:1px solid #cccccc;
      padding: 3px 10px;
    }
}

input,
textarea {
  transition: all .3s;
  -webkit-transition: all .3s;
  -ms-transition:none;
  border-radius: 0;
  line-height: 1.6;
}
input:focus,
textarea:focus {
  box-shadow: 0 0 7px #52a8ec;
}

input[type=radio] { display:none; }
.wpcf7-list-item-label { position:relative; padding:0 0 0 45px; top:0px; cursor: pointer; }
.wpcf7-list-item-label:hover:after { border-color:#FB8B42; }
.wpcf7-list-item-label:after,  .wpcf7-list-item-label:before{position:absolute; content:""; display:block; top:50%; }
.wpcf7-list-item-label:after { left:0px; margin-top:-20px; width:36px; height:36px; border:2px solid #B3B3B3; border-radius:0; background: #fff; }
.wpcf7-list-item-label:before { left:18px; margin-top:-7px; width:5px; height:9px; border-right:3px solid #FB8B42; border-bottom:3px solid #FB8B42; transform:rotate(45deg); opacity:0; z-index: 2; }
input[type=radio]:checked + .wpcf7-list-item-label:before {opacity:1; }
  @media screen and (max-width:999px){
    
    .wpcf7-list-item-label { padding:0 0 0 45px; margin-top: 10px; font-size: 1.3rem; }
    .wpcf7-list-item-label:after {
      width: 26px;
      height: 26px;
      margin-top: -12px;
    }
    .wpcf7-list-item-label:before {
      left: 10px;
      margin-top: -5px;
    }
    .wpcf7-list-item-label {
      padding-left: 32px;
    }
  }


/* ------------------------------エラー個所をわかりやすく表示------------------------------　*/
/*.wpcf7 .wpcf7-not-valid { background:#ffb6c1; }
.wpcf7 span.wpcf7-not-valid-tip { font-size:80%; }
.wpcf7 .wpcf7-response-output {margin:10px 0 0; padding:8px 35px 8px 14px; text-shadow:0 1px 0 rgba(255, 255, 255, 0.5);
-webkit-border-radius: 4px; -moz-border-radius:4px; border-radius:4px; }
.wpcf7 .wpcf7-validation-errors { color:#FB8B42; background-color:#F2DEDE; border:1px solid #EED3D7;}
.wpcf7 .wpcf7-mail-sent-ok { color:#3A87AD; background-color:#D9EDF7; border:1px solid #BCE8F1;}*/

/* ------------------------------送信ボタン------------------------------　*/
#contact_form input[type="submit"] { 
  background: #ff8787;
  color: #fff;
  border: none;
  font-size: 2rem;
  padding: 15px;
  border-radius: 28px;
  font-weight: 500;
}
#contact_form input[type="submit"]:hover {
  opacity: 0.7;
}
  @media screen and (max-width:999px){
    #contact_form input[type="submit"] { 
      font-size: 1.4rem;
      padding: 15pex;;
      border-radius: 18px;
    }
  }
/* ------------------------------LINEセクション------------------------------　*/
#index_line{
	padding: 3rem;
    background-color: #FFFAFA;
}
#index_line .inner{
	width: 660px;
	margin:0 3;
}
#index_line h2{
	font-size: 3.4rem;
    font-weight: 400;
    letter-spacing: 1rem;
    margin-bottom: 1rem;
}
#index_line h2.h2_pb{
	font-size: 3.6rem;
	font-weight: bold;
}
 @media screen and (max-width:999px){
	 #index_line h2{font-size: 2rem;}
	 #index_line h2.h2_pb{
	font-size: 5.75vw;
	letter-spacing:0.4rem;
	}
}
#index_line h2 span{
	background: linear-gradient(transparent 50%, #ffe2e2 50%);
}
#index_line p{
	line-height: 2.4;
	margin-bottom: 2em;
}
#index_line p.p_last{
	margin-bottom: 4em;
}
#index_line p b{}

#index_line .line_btn{
	text-align: center;
}
#index_line .line_btn a{
	text-decoration: none;
	color: #fff;
	font-size: 1.2em;
	font-weight: bold;
	background-color: #00b900;
	padding: 20px 100px;
	border-radius: 30px;
}
#index_line .line_btn a:hover{
	background-color: #00a000;
}
 @media screen and (max-width:999px){
	 #index_line .line_btn a{
		 font-size: 1.6rem;
		 padding: 2rem 6rem;
	}
}

/*----------------------------------------------------
  ページ名 slug
--------------------------------------------------- */
  @media screen and (max-width: 999px) {
  }
