@charset "UTF-8";

.contentpage .m_img {
	background-image: url(../images/m_img.jpg);
}

/*共通
---------------------------------------------------------*/

.flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: row;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
}




/*歯を長く保つことを重視した治療
------------------------------------------*/
.box01 .img_l {
  margin-bottom: 55px;
}

/* 微調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1104px) {
.box01 .img_l {
  margin-bottom: 20px;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.box01 .img_l {
  margin-bottom: 20px;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.box01 .img_l {
  margin-bottom: 5%;
}
}



/*虫歯について
------------------------------------------*/
.box02 .med_style1 dd span {
  letter-spacing: .07em;
}

.box02 .flex {
  justify-content: space-between;
  margin: 45px auto 50px;
}

.box02 .flex > div {
  width: 32.5%;
  max-width: 350px;
  padding: 20px 25px 25px;
  box-sizing: border-box;
  background: #f2f2f2;
}

.box02 .flex > div dt {
  font-weight: bold;
  color: #fff;
  text-align: center;
  font-size: 125%;
  letter-spacing: .1em;
  padding: 6px;
  border-radius: 20px;
  margin-bottom: 15px;
}

.box02 .flex > div dd {
  line-height: 186%;
  font-size: 94%;
  letter-spacing: .1em;
}

.box02 .flx_l dt {
  background: #b1cc5e;
}

.box02 .flx_c dt {
  background: #f8b55f;
}

.box02 .flx_r dt {
  background: #edafbe;
}


.box03 {
  position: relative;
}

.box03 .med_flow_box {
  background: rgb(255,224,224); /* Old browsers */
  background: -moz-linear-gradient(top, rgba(255,224,224,1) 0%, rgba(255,245,244,1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(255,224,224,1) 0%,rgba(255,245,244,1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(255,224,224,1) 0%,rgba(255,245,244,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffe0e0', endColorstr='#fff5f4',GradientType=0 ); /* IE6-9 */
}

.box03 .flow_lead dt {
  color: #ff6666;
}

.box03 .flow_lead dd {
  color: rgba(255,102,102,0.4);
}

.box03 .flow_inbox dt {
  color: rgba(255,102,102,0.8);
}

.box02 .btn_link a {
  background: url(../images/arrow.svg)no-repeat;
  background-position: right 54px bottom 24px;
  background-size: 54px 13px;
  background-color: #6cd9d0;
  display: block;
  color: #fff;
  text-align: center;
  font-weight: bold;
  letter-spacing: .2em;
  font-size: 104%;
  max-width: 750px;
  width: 100%;
  margin: 50px auto 0;
  vertical-align: middle;
  padding: 28px 3% 28px;
  padding-right: 90px;
  box-sizing: border-box;
  border-radius: 40px;
}

.box02 .btn_link a span {
  font-size: 233%;
  display: inline;
  font-style: italic;
  letter-spacing: .2em;
  vertical-align: top;
  margin-left: 5px;
}


/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.box02 .flex {
  margin: 30px auto 40px;
}

.box02 .flex > div {
  padding: 20px 8px;
}

.box02 .flex > div dt {
  margin-bottom: 10px;
}

.box02 .flex > div dd {
  line-height: 1.8em;
}

.box02 .btn_link a {
  margin: 20px auto 0px;
  padding: 20px 3%;
  padding-right: 90px;
}

.box02 .btn_link a span {
  font-size: 200%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.box02 .flex {
  display: block;
  margin: 40px auto 40px;
}

.box02 .flex > div {
  width: 100%;
  max-width: 100%;
  padding: 20px 4%;
}

.box02 .flex > div dt {
  margin-bottom: 5px;
}

.box02 .flex > div dd {
  line-height: 1.6em;
}

.box02 .flex .flx_c {
  margin: 10px auto;
}

.box02 .btn_link a {
  margin: 20px auto 0;
  font-size: 105%;
  line-height: 1.6em;
  letter-spacing: .05em;
  padding: 10px 2% 15px;
  background-position: right 30px bottom 15px;

}

.box02 .btn_link a span {
  display: block;
  font-size: 180%;
  margin-top: 5px;
  padding-right: 40px;
}
}
