@charset "UTF-8";

/*------------------------------------------------

 style.css

 Copyright (C) KAWARAMACHI DENTAL CLINIC

 individual layout
------------------------------------------------*/

/*------------------------------------------------------------------------------------------------

 デバイス別スタイル / スマートフォン（差分のみ）

------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 640px) {


/*================================================================================

home

================================================================================*/
/* h
================================================================================*/
.home h2 {
	margin: 0 0 40px;
	font-size: 3.0rem;
	line-height: 1.4;
}

/* mainVisual
================================================================================*/
.bl_MV {
	position: relative;
	margin-top: 0;
	padding-left: 0;
	padding-bottom: 30px;
}
.bl_MV_img  {
	flex: auto;
	margin-top: 0;
	margin-bottom: 30px;
}
.bl_MV_img img  {
	height: clamp(360px, 100vh - 380px, 100vh);
	border-radius: 0 0 0 40px;
}
.bl_MV_unit {
	position: relative;
	width: auto;
	margin: 20px auto 0;
	text-align: center;
}
.bl_MV_ttl {
	font-size: 3.6rem;
}
.bl_MV_cont {
	margin: 0 auto;
	padding: 0 20px 20px;
	border: 1px solid var(--color-txt-dark);
}
.bl_MV_cont_img {
	width: clamp(200px, 15vw, 240px);
	margin: -20px auto 10px;
	padding: 0 10px;
	background-color: #fff;
}
.bl_MV_desc {
	margin: 0 auto;
	padding: 0;
	border: none;
}
.bl_MV_cap {
	margin: 0 auto 10px;
	font-size: 2.0rem;
}
.bl_MV_year {
	margin-bottom: 4px;
	font-size: 1.6rem;
	text-align: center;
}
.bl_MV_num {
	font-size: 2.8rem;
	text-align: center;
}
.bl_MV_diamond {
	margin: 0 auto;
	font-size: 1.4rem;
}
.bl_MV_unit_img {
	top: -100px;
	left: 0;
	right: 0;
	width: 160px;
	margin: 0 auto;
}

/* mainImg
================================================================================*/
/* .mainImg {
	width: 100%;
	margin: 160px 0 0;
	padding: 0 10px 50px;
	background: url(/img/main_img_sp.jpg) no-repeat center bottom -70px;
	background-size: auto 300px;
	text-align: center;
} */
.mainImg {
	width: 100%;
	margin: 67px 0 0;
	padding: 20px 10px 40px;
	background: url(/img/main_img_sp.jpg) no-repeat right -70px bottom -50px;
	background-size: auto 400px;
	text-align: center;
}
.mainImg .container {
	width: 100%;
	padding: 20px 0 0;
	background-image: none;
}
.mainImg .mainCopy {
	margin: 0 0 10px;
	font-size: 1.8rem;
}
.mainImg .mainCopy span {
	font-size: 2.4rem;
}
.mainImg .mainSubTitle {
	margin: 0 0 5px;
	font-size: 1.6rem;
	letter-spacing: inherit;
}
.mainImg .mainTitle {
	font-size: 30px;
}
.mainImg .mainLead {
	width: 80%;
	margin: 0 auto 20px;
	font-size: 1.2rem;
	text-align: left;
}
.mainImg .mainTitle span {
	font-size: 16px;
}
.mainImg .mainPhoto {
	width: 134px;
	margin: 0 auto 20px;
}
.mainImg .mainPoint {
	width: 275px;
	margin: 0 auto 20px;
}
.mainImg .btn {
	position: relative;
	top: auto;
	left: auto;
}
.mainImg .btn a {
	display: block;
	width: 60%;
	height: 40px;
	padding: 0 10px 0 20px;
	margin: 0 auto;
	font-size: 1.8rem;
	line-height: 40px;
	letter-spacing: 0;
}

/* homeMoving
================================================================================*/
.moving .container {
	padding: 20px;
}
.moving h2 {
	margin: 0 auto 20px;
	font-size: 15px;
}
/* .moving h2:after {
	margin-right: 15%;
}
.moving h2::before {
	margin-left: 15%;
} */
.moving dt {
	font-size: 36px;
}
.moving dt span {
	font-size: 22px;
}
/* .moving dd {
	text-align: left;
} */
.movingDate {
	margin-bottom: 20px;
	line-height: 1;
}
.moving .bl_media_img {
	width: 80%;
	margin-inline: auto;
}
.movingIllust {
	position: absolute;
	top: -14px;
	left: -20px;
	width: 100px;
}

/* homeBijin
================================================================================*/
.bijin {
	padding: 40px 20px;
}
.bijinImg {
	width: 70%;
	height: auto;
	margin: 0 auto 20px;
}
.bijinTxt {
	flex: auto;
	width: 100%;
}
.bijinTxt h2 {
	margin-bottom: 20px;
	font-size: 2.0rem;
	text-align: center;
}
.bijinTxt h2 .f-l {
	font-size: 1.4rem;
}
.bijinTtl {
	margin-bottom: 30px;
	padding: 10px;
	font-size: 1.8rem;
}
.bijinTtl span {
	font-size: 1.4rem;
}
.bijin .taR {
	text-align: center;
}

/* homeFirstAnniv
================================================================================*/
.firstAnniv {
	padding: 40px 20px;
	overflow: visible;
}
.firstAnniv .container {
	flex-direction: column;
}
.firstAnnivIcon {
	width: 40%;
	max-width: 120px;
	margin: -50px auto 20px;
}
.firstAnnivBody {
	margin-bottom: 20px;
}
.firstAnniv h2,
.under .firstAnniv h2 {
	margin: 0 0 20px;
	font-size: 16px;
}
.firstAnniv h2:after,
.firstAnniv h2::before {
	width: 30px;
}
.under .firstAnniv h2:after {
	width: 30px;
	height: 1px;
	margin: 0 0 0 0.5em;
}
.firstAnnivTxt {
	font-size: 22px;
}
.firstAnnivTxt span {
	line-height: 1.2;
	font-size: 32px;
}
.firstBtn {
	align-self: center;
	padding-bottom: 0;
}

/* homeAbout
================================================================================*/
.homeAbout h1 {
	margin: 0 0 20px;
	font-size: 1.4rem;
	line-height: 1.6;
}
/* seo .homeAbout h2 {
	font-size: 3.0rem;
} */
.homeAbout .copy {
	margin: 0 0 30px;
	font-size: 2.0rem;
}
.homeAbout .staffImg {
	margin-bottom: 40px;
}

.homeConcept {
	margin-bottom: 50px;
	padding: 24px;
}
.home .homeConcept h2 {
	margin: 0 0 20px;
	font-size: 2.0rem;
}
.homeConcept .copy {
	font-size: 2.4rem;
}
.homeConcept .txt.taC {
	text-align: left !important;
}

/* feature
------------------------------------------------*/
.feature {
	width: 100%;
	margin: 0 auto 30px;
}
.feature section {
	width: 100%;
	margin: 0 0 20px;
	padding: 20px;
}
.feature .featureImg {
	width: 170px;
	margin: 0 0 -20px -80px;
}
.feature section:nth-of-type(even) .featureImg {
	margin: 0 -80px -20px 0;
}
/* seo .feature h3 {
	font-size: 2.0rem;
} */

/* staffPhoto
------------------------------------------------*/
.staffPhoto {
  grid-template-columns: repeat(1, 1fr);
}

/* orthodontic
================================================================================*/
/* seo .homeTreatmentBox h2 {
	margin: 0 0 30px;
	font-size: 2.4rem;
}
.homeTreatmentBox h2 span {
	font-size: 3.0rem;
} */



/* motto
------------------------------------------------*/
.homeTreatment .motto {
	flex-wrap: wrap;
	margin: 0;
}
.homeTreatment .motto h3 {
	font-size: 2.0rem;
	text-align: center;
}
.homeTreatment .motto .mottoText {
	flex: auto;
	width: 100%;
	padding: 0;
	margin: 0 0 30px;
}
.home .homeTreatment .h2 {
	margin: 0 0 30px;
	font-size: 2.4rem;
	text-align: center;
}
.homeTreatment .motto .mottoImg {
	width: 60%;
	margin: 0 auto;
}


/* treatmentList
------------------------------------------------*/
.treatmentList {
	--space-grid-lg: 10px;
	padding: 20px;
}
.treatmentListCon a {
	padding: 10px;
}
.treatmentListCon figure {
	width: 40px;
	margin-bottom: 10px;
}
.treatmentListCon h3 {
	margin-bottom: 10px;
	font-size: 2.0rem;
}
.homeChewing h3 {
	margin: 0 auto 10px;
}

/* 歯列矯正＆インプラント
================================================================================*/
.homeTreatmentBox .bl_mainArea {
	flex-direction: column;
	width: calc(100% + 40px );
	margin: -40px -20px 10px;
}
.homeTreatmentBox .bl_mainArea_img {
	flex: auto;
	width: 100%;
	height: auto;
	/* object-position: 50% 0; */
}
.homeTreatmentBox .bl_mainArea_body {
	width: 100%;
	min-width: auto;
	padding: 20px;
}
.homeTreatmentBox .bl_treatment_ttl {
	margin: -100px auto 50px;
	background-color: var(--color-treatment);
	color: #fff;
	font-size: 2.4rem;
}
.homeTreatmentBox .bl_mainArea_ttl {
	margin: 0 auto 30px;
	font-size: 3.0rem;
	text-align: center;
}
.homeTreatmentBox .bl_mainArea_subTtl {
	margin: 0 auto 14px;
	font-size: 1.6rem;
	text-align: center;
}

/* orthodonticType
------------------------------------------------*/
.orthodonticType {
	margin: 0;
	margin-bottom: 50px;
	padding: 20px;
}
.orthodonticTypeLead {
	margin-bottom: 20px;
	font-size: 2.0rem;
	line-height: 1.6;
}
.orthodonticTypeInner {
	flex-wrap: wrap;
}
.orthodonticTypeInner section {
	width: 100%;
	margin:0 0 20px;
	padding: 20px;
}
.orthodonticTypeInner section:last-of-type {
	margin-bottom: 0;
}
.orthodonticTypeInner .orthodonticTypeImg {
	width: 70%;
}

/* orthodonticAge
------------------------------------------------*/
.orthodonticAge section {
	flex-wrap: wrap;
	margin: 30px 0 0;
	padding: 20px;
}
.orthodonticAgeImg {
	width: 100%;
	margin: 0 0 20px;
}
.orthodonticAgeText {
	width: 100%;
}
.orthodonticAge h3 {
	color: #000;
	font-size: 2.0rem;
}
.orthodonticAgeLink {
	flex-wrap: wrap;
}
.orthodonticAgeLink span:last-of-type:not(:only-of-type) {
	margin: 10px 0 0;
}

/* invisalign
================================================================================*/
.homeInvisalign {
	margin-bottom: 40px;
	padding: 20px;
}
/* .homeInvisalign .bl_media {
	margin-bottom: 30px;
} */
.homeInvisalign .bl_media_img {
	width: 80%;
	margin: -30px auto 0;
}
.homeInvisalign .bl_media_body {
	margin-top: 0;
}
.homeInvisalign .bl_media_body_img {
	width: 200px;
	margin: 0 auto 20px;
}
.homeInvisalign .bl_media_ttl {
	margin-bottom: 20px;
	font-size: 3.0rem;
	text-align: center;
}
.homeInvisalign .bl_media_ttl .caption {
	font-size: 1.6rem;
}
.homeInvisalignBtn {
	text-align: center;
}

/* homeAwarded
------------------------------------------------*/
.awarded {
	width: calc(100% + 20px);
	margin: 0 -10px 50px;
	padding: 20px;
}
.awardedImg {
	width: 100%;
	height: auto;
	margin: 20px auto 0;
}
.awardedTxt {
	flex: auto;
	width: 100%;
}
.awardedTxt h3 {
	margin: 0 0 20px;
	font-size: 1.9rem;
}
.awardedTxt h3 .awardedNum {
	margin: 0 auto 16px;
	font-size: 1.6rem;
}

/* campaignBanner
------------------------------------------------*/
.home .wrap.campaignBox {
	padding: 20px;
}
.home .campaignBox .container {
	flex-direction: column;
}


/* bnrList
================================================================================*/
.bnrListWrap {
	padding: 40px 20px;
}
.bnrList {
	flex-wrap: wrap;
}
.bnrList section {
	width: 80%;
	margin: 0 auto 20px;
}
.bnrList section:last-child {
	margin-bottom: 0;
}
.bnrList h3 {
	padding: 10px 10px 10px 20px;
	background: url(/common_img_new/arrow.png) no-repeat 10px 16px;
	background-size: 5px auto;
	font-size: 1.6rem;
	text-align: center;
}

/* homeCase
================================================================================*/
.homeCase .inPageLink li {
	width: 49%;
	margin: 5px 0;
}
.homeCase .inPageLink li:nth-of-type(4n+3):last-of-type {
	margin-right: calc( 24% + 4% / 3 );
}
.homeCase .inPageLink  li .malocclusionImg img {
	width: 90%;
}
.homeCase .inPageLink  li span {
	font-size: 1.2rem;
}
.homeCase .inPageLink li.btn a {
	background: url(/common_img_new/bg_black.jpg) repeat;
	background-size: 100px auto;
	line-height: 1;
}

/* consult
================================================================================*/
.consultWrap {
	padding: 40px 20px 210px;
	background: var(--color-accent) url(/common_img_new/consult_bg.jpg) no-repeat center bottom;
	background-size: auto 200px;
}
.consultTtl {
	margin: 0 0 30px;
	font-size: 2.4rem;
}
.consultTtl span {
	font-size: 2.0rem;
}
.consultInner {
	width: 100%;
}
.consultInner dt {
	margin: 0 0 10px;
}
.consultInner dt span {
	font-size: 1.8rem;
}
.consultInner .btn a {
	display: inline-block;
	width: 90%;
	font-size: 1.8rem;
}

/* instagram
================================================================================*/
.home .instagram h2 {
	margin-bottom: 20px;
	font-size: 2.4rem;
}
.home .instagram .moreCatch {
	font-size: 1.6rem;
}
.instagram {
	--space-grid-lg: 10px;
	--space-grid: 10px;
}

/* moreBlog
================================================================================*/
.home .moreBlog h2 {
	font-size: 2.4rem;
}
.home .moreBlog h2 .moreCatch {
	font-size: 2.0rem;
}
.moreBlog .moreList {
	margin: -30px 0 30px;
}
.moreBlog .moreList li {
	width: 49%;
	margin: 30px 0 0;
}



/* time table
================================================================================*/
.accessWrap,
.timeWrap {
	padding: 40px 20px 0;
}
.time h2,
.access h2 {
	margin: 0 0 30px;
	font-size: 2.4rem;
}
.time .lead,
.access .lead {
	font-size: 1.4rem;
}
.timeTable th,
.timeTable td {
	padding: 5px;
	text-align: center;
}
.calendar {
	padding: 30px;
}
.calendar .calendarInfo .closedDay {
	display: block;
}
.calendarInner {
	flex-wrap: wrap;
}
.calendarInner > div {
	width: 100%;
	margin: 0 0 20px;
}
.calendarInner > div:last-of-type {
	margin: 0;
}
.calendar table {
	width: 80%;
	border-spacing: 2px;
}
.calendar table th,
.calendar table td {
	padding: 4px;
	text-align: center;
}

/* access
------------------------------------------------*/
.map {
	width: calc( 100% + 40px );
	height: 300px;
	margin: 0 -20px;
}
.addressOutline {
	flex-wrap: wrap;
}
.addressOutline dt {
	width: 100%;
	margin: 0;
	padding: 20px 10px 10px;
	border-bottom: none;
}
.addressOutline span {
	margin: 0 0 20px;
	padding: 0;
	border: none;
}
.addressOutline span:last-child {
	margin: 0;
}

/* lineLink
------------------------------------------------*/
.lineLink {
	width: 100%;
}
.lineLink a {
	font-size: 1.6rem;
}

/* instagramLink
------------------------------------------------*/
.instagramLink {
	width: 100%;
}
.instagramLink a {
	font-size: 1.6rem;
}


/*================================================================================

under_page common

================================================================================*/
/* main
================================================================================*/
.under #main {
	margin-top: 67px;
}

/* title
================================================================================*/
.wrap.title {
	height: 181px;
}
.title .titleText {
	top: 70px;
	font-size: 3.0rem;
}
.title .titleText span {
	margin: 10px 0 0;
	font-size: 1.0rem;
}

/* topicPath
================================================================================*/
.topicPath {
	width: 100%;
	padding: 0 10px;
}
.topicPath ul {
	width: 100%;
	font-size: 1.2rem;
}
.topicPath li:first-of-type:before {
	margin: -0.6em 0 0 0;
	font-size: 1.4rem;
}

/* h
================================================================================*/
.under h2 {
	margin: 0 0 40px;
	padding: 0;
	font-size: 2.4rem;
}
.under h2:after {
	width: 30px;
	height: 2px;
	margin: 20px auto 0;
}

/*================================================================================

form

================================================================================*/
/*  error
================================================================================*/
.errorList {
	width: 100%;
	margin: 0 0 40px;
	padding: 30px;
}
.inputArea em {
	font-size: 1.2rem;
}

/* inputArea
================================================================================*/
.inputArea {
	padding: 0;
	border-bottom: 1px solid #eee;
}
.inputArea dt {
	width: 100%;
	margin: 0;
	padding: 20px 10px;
	border-top: 1px solid #eee;
	color: #000;
}
.inputArea dt span {
	position: absolute;
	top: 20px;
	right: 10px;
}
.inputArea dd {
	width: 100%;
	margin: 0;
	padding: 0 10px 20px;
	border-top: none;
}
.btnArea {
	flex-wrap: wrap-reverse;
}
.btnArea form {
	width: 100%;
}

/*================================================================================

form / consult

================================================================================*/
/* title
================================================================================*/
.consult .title {
	/* background: url(/common_img_new/consult_bg.png) no-repeat;
	background-position: right -10px bottom -20px;
	background-size: 240px auto; */
}

/* lead
================================================================================*/
.consult .consultLeadWrap {
	padding: 60px 20px;
	background: #f7f7f7 url(/consult/img/consult_dr.png) no-repeat left 10px bottom -60px;
	background-size: 100px auto;
}
.consult .consultLeadWrap .container {
	padding: 0;
}
.consult .lead dt {
	font-size: 1.8rem;
}

/* input
================================================================================*/
/* 無料初診相談の流れ
------------------------------------------------*/
.consult .step li {
	width: 100%;
	margin: 0 0 60px;
	padding: 0;
}
.consult .stepHeader {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 20px;
}
.consult .stepNum {
	padding: 10px 10px 8px;
}
.consult .stepNum span {
	font-size: 2.4rem;
}
.consult .stepHeader h3 {
	font-size: 2.0rem;
}
.consult .option {
	padding: 30px;
}

/* 無料初診相談のお申し込み NEW
------------------------------------------------*/
.form .methodNew {
	margin: -20px 0 0;
}
.form .methodNew section {
	flex-direction: column;
	align-items: center;
	gap: 20px;
	width: 100%;
	margin: 20px 0 0;
}
/* .form .methodNew figure {
	width: 40px;
} */
.form .methodNew h3 {
	font-size: 2.0rem;
	text-align: center;
}
.form .methodNew .methodForm {
	margin-bottom: 2%;
	border: 3px solid var(--color-accent);
}
.form .methodNew .methodForm h3 {
	margin-bottom: 30px;
	font-size: 1.8rem;
}
.form .methodNew .methodFormLink {
	margin: 0 0 30px;
}
.form .methodNew .methodFormLink .btn a {
	width: 100%;
	max-width: none;
	height: auto;
	padding: 18px 10px 18px 20px;
	font-size: 2.4rem;
	line-height: 1.6;
}
.form .methodNew .note {
	text-align: center;
}
.form .methodNew section.methodLine p {
	text-align: center;
}
.form .methodNew section.methodLine div div {
	text-align: center;
}
.form .methodNew .methodTelNum {
	text-align: center;
}


/* 無料初診相談のお申し込み
------------------------------------------------*/
.form .method {
	flex-wrap: wrap;
	margin: -20px 0 30px;
}
.form .method section {
	width: 100%;
	margin: 20px 0 0;
	padding: 100px 20px 30px;
	border: 1px solid #eee;
	border-radius: 10px;
}
.form .method .methodTel {
	background: #fff url("/consult/img/consult_tel_bg.jpg") no-repeat center top 10px;
	background-size: 80px auto;
}
.form .method .methodForm {
	margin-top: 20px;
	background: #fff url("/consult/img/consult_form_bg.jpg") no-repeat center top 20px;
	background-size: 60px auto;
}
.form .method section.methodLine {
	flex-wrap: wrap;
	width: 100%;
	margin: 20px 0 0;
	padding: 30px;
	background: #fff;
}
.form .method section.methodLine .lineLogo {
	width: 100%;
	margin: 0 0 30px;
	text-align: center;
}
.form .method section.methodLine .lineLogo img {
	width: 40px;
}
.form .method section.methodLine p {
	text-align: center;
}
.form .method section.methodLine div div {
	text-align: center;
}
.form .method h3 {
	font-size: 2.0rem;
	text-align: center;
}
.form .methodTelNum {
	text-align: center;
}
.form .method .note {
	text-align: center;
}
.form .method .methodForm {
	font-size: 2.4rem;
	text-align: center;
}

/* 「無料初診相談」お申し込みフォーム
------------------------------------------------*/
.form input#post {
	width: 200px;
}
.form input.ageArea {
	width: 80px;
}
.consult .consultDate .consultDateBox {
	margin: 0 0 14px;
	padding: 0 0 14px;
}
.consult .consultDate .consultDateBox:first-of-type {
	padding: 14px 0;
}
.consult .consultDate select {
		padding: 5px;
}
.consult .calendarTitle {
	margin: 30px 0 10px;
}
.calendar .consultBR {
	display: block;
}
/* confirm
================================================================================*/
/* lead
------------------------------------------------*/
.consult .consultLeadWrap.confirm {
	padding: 60px 20px;
	background-image: none;
}
.confirm .inputArea dt {
	padding: 20px 10px 10px;
}
.confirm .inputArea dd {
	padding: 0 20px 20px;
}


/*================================================================================

concept

================================================================================*/
/* title
================================================================================*/
.concept .title {
	height: auto;
	padding: 30px 20px;
}
.concept .title .titleText {
	margin: 0 auto 30px;
	font-size: 2.4rem;
}
.concept .title .container {
	width: auto;
	padding: 0;
}
.concept .titleImg {
  width: 100vw;
  max-width: 100vw;
  height: auto;
  margin-left: calc(50% - 50vw);
	margin-bottom: 30px;
	border-radius: 0;
}
.concept .titleImg img {
	border-radius: 0 !important;
}
.concept .title .container p {
	font-size: 1.6rem;
	text-align: left;
}

/* h
================================================================================*/
.concept .home_h span {
	font-size: 1.2rem;
}

/* conceptMessage
================================================================================*/
.conceptMessage .bl_media_img {
	width: 100%;
}

/* conceptHistory
================================================================================*/
.conceptHistory h3 {
	font-size: 2.0rem;
}
.historyItem {
	margin-bottom: 2px;
}
.historyList dt {
  flex-basis: 100px;
	margin-right: 2px;
  padding: 10px 8px;
}
.historyList dd {
  padding: 10px;
}

/* concept
================================================================================*/
.concept .conceptTtl .container {
	width: auto;
	padding: 30px;
}
.concept .conceptTtl .container dt {
	margin: 0 0 30px;
	font-size: 2.4rem;
}
.concept .conceptTtl .container dd {
	font-size: 1.6rem;
	text-align: left;
}

.conceptList .container {
	margin: 0 auto 30px;
	padding: 40px 0;
}
.conceptList .container:last-of-type {
	margin-bottom: 0;
}
.conceptInner {
	width: 100%;
	padding: 0 20px;
}
.conceptList h3 {
	margin: 0 0 50px;
	font-size: 2.4rem;
}
.conceptList h3:before {
	bottom: -20px;
}
.conceptList h3:after {
	bottom: -40px;
}
.conceptInner div {
	margin: 0;
}

/* 初診で大切にしていること
================================================================================*/
.conceptFirst .bl_beginner_ttl {
	margin-bottom: 0;
	padding-bottom: 0;
	font-size: 2.0rem;
}
.conceptFirst .bl_beginner_body {
	border-top: none;
}
.conceptFirst .bl_beginnerType,
.conceptFirst .bl_beginnerType:last-of-type {
	width: 100%;
	padding: 20px;
}
.conceptFirst .bl_beginnerType:first-of-type {
	margin-bottom: 20px;
}
.conceptFirst .bl_beginnerType_ttl {
	margin-bottom: 10px;
	padding-left: 0;
}

/* linkArea
================================================================================*/
.linkArea {
	padding: 30px;
}
.linkArea p {
	width: 100%;
	margin: -10px 0 0;
	text-align: center;
}
.linkArea span {
	display: block;
	width: 80%;
	margin: 10px auto 0;
}
.linkArea span a {
	display: block;
}


/*================================================================================

info

================================================================================*/
/* title
================================================================================*/
/* .info .title {
	background-position: left calc( 50% + 150px ) bottom -30px;
	background-size: 100px auto;
} */

/* 診療科目
================================================================================*/
.departmentList {
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto 40px;
}
.departmentList li {
	width: 80%;
	margin: 0 auto 10px;
	font-size: 1.6rem;
	line-height: 40px;
	border-radius: 20px;
}
.clinicPhoto {
	flex-wrap: wrap;
	width: 100%;
	margin: -10px auto 0;
}
.clinicPhoto li {
	width: 100%;
	margin: 10px 0 0;
	padding: 0;
}
.clinicPhotoMain {
	width: 100%;
	margin: 0 auto 10px;
}
.clinicPhotoMain img {
	width: 100%;
}

/* access
================================================================================*/
#infoAccess .mapBox {
	width: 100%;
	margin: 0 0 60px;
}
#infoAccess .map {
	width: 100%;
	height: 400px;
	margin: 0 auto 30px;
}

.accessDetail {
	flex-wrap: wrap;
	margin: 0 0 60px;
	padding: 0 40px;
	background: #fff;
}
.accessDetail li {
	width: 100%;
	margin: 0;
	padding: 40px 0;
	border-right: none;
	border-bottom: 1px solid #eee;
}
.accessDetail li:last-of-type {
	border-bottom: none;
}
.accessKinki {
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto;
	padding: 0 0 120px;
	background: url(/common_img_new/eguchi_welcome.png) no-repeat center bottom -20px;
	background-size: 140px auto;
}
.accessKinki h3 {
	width: 100%;
	margin: 0 auto 30px;
	padding: 10px 20px;
	border: 2px solid var(--color-accent);
	background: var(--color-accent);
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.6;
	text-align: center;
	border-radius: 10px;
}
.accessKinki h3:after {
	display: none;
}
.accessKinki h3:after {
	display: inline;
	border: solid transparent;
	content:'';
	height:0;
	width:0;
	pointer-events:none;
	position:absolute;
	border-color: rgba(255, 186, 0, 0);
	border-top-width:12px;
	border-bottom-width:12px;
	border-left-width:10px;
	border-right-width:10px;
	margin-left: -10px;
	border-top-color:#FFBA00;
	top:100%;
	left:50%;
	margin-top: 1px;
}
.accessKinki dl {
	width: 100%;
}
.accessKinki dt {
	width: 32%;
}
.accessKinki dd {
	width: 68%;
}
.jpOnly {
	padding: 20px 10px;
}

/* ドクターのご紹介
================================================================================*/
.doctorListOutline {
	flex-wrap: wrap;
	margin: -20px 0 0;
}
.doctorListOutline li {
	width: 100%;
	margin: 20px 0 0;
}
.doctorListOutline .doctorBox {
	align-items: flex-start;
	padding: 20px;
}
.doctorListOutline .doctorPhoto {
	width: 40%;
}
.doctorListOutline dl {
	width: 54%;
}
.doctorListOutline .doctorName {
	font-size: 2.0rem;
	line-height: 1.4;
}
.doctorListOutline .kana {
	display: block;
	margin: 0;
	font-size: 1.4rem;
}
.doctorListOutline .btnBlock a {
	font-size: 1.4rem;
}


/*================================================================================

infoUnder

================================================================================*/
/* title
================================================================================*/
.infoUnder .wrap.title {
	/*  height: 200px; */
}
.infoUnder .title .titleText {
	/* top: 70px; */
	font-size: 1.8rem;
}
.infoUnder .title .titleText span {
	font-size: 3.0rem;
}

/* outline
================================================================================*/
.infoUnder .outline {
	width: 100%;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}
.infoUnder .outlineImg {
	width: 100%;
	margin: 0;
}
.infoUnder .outlineBody {
	flex: none;
	width: 100%;
	margin: 40px 0 0;
}
.under .outlineTtl {
	margin: 0 0 20px;
	padding: 0;
	font-size: 2.4rem;
}


/* col2
================================================================================*/
.infoUnder .bl_col2 .bl_card_ttl {
	margin-bottom: 20px;
}
.infoUnder .bl_col2 .bl_card_ttl:after {
	/* margin: 10px auto 0; */
}

/* infoLink
================================================================================*/
.infoLink .bl_col3 .bl_col_item {
	margin-top: 10px;
}

/*================================================================================

treatment-coordinator

================================================================================*/
/* main
================================================================================*/
.tc h2 {
	line-height: 1.6;
}
.tcRoleImg {
	width: 90%;
	margin: 0 auto 40px;
}


/*================================================================================

hygiene-management

================================================================================*/
/* main
================================================================================*/
.hm .bl_media:not(:last-of-type) {
	margin-bottom: 60px;
}
.hm h2 {
	margin-bottom: 20px;
	text-align: center;
	line-height: 1.6;
}
.hm h2::after {
	width: 30px;
	margin: 14px auto 0;
}
.hm .bl_media__rev h2::after {
	margin: 14px auto 0;
}
.hm .bl_media h2 {
	margin-top: 0;
}



/*================================================================================

doctor

================================================================================*/
/* title
================================================================================*/
.doctor .title {
	/* background: url(/common_img_new/dr_eguchi.png) no-repeat, url(/common_img_new/dr_oota.png) no-repeat;
	background-position: left calc( 50% + 155px ) bottom -60px, left calc( 50% - 155px ) bottom -60px;
	background-size: 110px auto, 97px auto; */
}

/* drOutline
================================================================================*/
.drOutline .container {
	flex-wrap: wrap;
	width: 100%;
	padding: 40px;
	background: url(/common_img_new/bg_gray.jpg) repeat;
}
.drOutline .drOutlineImg {
	width: 100%;
	margin: 0 0 30px;
}
.drOutline .drOutlineText {
	width: 100%;
	padding: 0;
	border: none;
}
.doctor .drOutline h2 {
	font-size: 3.0rem;
}
.drOutline .position {
	font-size: 1.6rem;
}

/* inner
================================================================================*/
.doctor h3 {
	margin: 0 0 60px;
	font-size: 2.4rem;
	line-height: 1.6;
}
.doctor .profileImg {
	float: right;
	width: 160px;
	margin: 0 0 2px 20px;
	padding: 5px;
}
.fromAnother {
	margin: 30px 0 0;
}
.drOota .fromAnother,
.drEguchi .fromAnother {
	padding: 30px ;
	background-image: none;
}
.drPhotoLage {
	margin-top: 30px;
	padding: 5px;
}


/*================================================================================

type

================================================================================*/
/* title
================================================================================*/
.type .title {
	background-position: left calc( 50% - 130px ) bottom -50px;
	background-size: 100px auto;
}

/* h
================================================================================*/
.type h2 {
	margin: 0 0 40px;
}
.type h2 span {
	font-size: 1.8rem;
}
.type h2 .inconspicuous {
	margin: 0 0 10px;
	padding: 5px 10px;
	background: var(--color-accent);
	color: #fff;
	font-size: 1.4rem;
}

/* inPageLink
================================================================================*/
.inPageLink {
	flex-wrap: wrap;
	margin: -5px auto 0;
	padding: 0;
}
.inPageLink  li {
	width: 80%;
	margin: 5px 0 0;
}
.inPageLink  li a {
	display: block;
}

/* typeInner
================================================================================*/
.typeInner {
	flex-wrap: wrap;
}
.typeImg {
	width: 80%;
	margin: 0 auto 30px;
}
.typeText {
	width: 100%;
}
.typeText .costBase table th,
.typeText .costBase table td {
	font-size: 1.4rem;
}
.typeText h3 {		margin: 0 0 20px;
	font-size: 1.8rem;
}
.typeText ul {
	margin: 0;
}

/* typeOption
================================================================================*/
.typeOption {
	flex-wrap: wrap;
	width: 100%;
	margin: -20px 0 0;
}
.typeOption li {
	width: 100%;
	margin: 20px 0 0;
	padding: 40px;
	background: #fff;
}


/*================================================================================

flow

================================================================================*/
/* title
================================================================================*/
.flow .title {
	background-position: left calc( 50% - 160px ) bottom -40px;
	background-size: 100px auto;
}

/* step
================================================================================*/
.flow .step > section {
	margin: 0 0 60px;
	padding: 30px;
}
.stepInner {
	flex-wrap: wrap;
}
.stepText {
	flex: auto;
	margin: 0 0 20px;
}
.stepImg {
	width: 100%;
	margin: 0 auto;
}
.flow .step h3 {
	margin: 0 0 30px;
	padding: 5px 0 0 40px;
	color: #000;
	font-size: 1.8rem;
}
.flow .step h3:before {
	width: 30px;
	font-size: 1.6rem;
	line-height: 30px;
}
.flow .stepPeriod {
	padding: 0 0 0 32px;
	color: var(--color-primary);
	font-size: 1.4rem;
}
.flow .stepPeriod:before {
	top: -2px;
	font-size: 2.0rem;
}


/*================================================================================

cost

================================================================================*/
/* title
================================================================================*/
.cost .title {
	background-position: left calc( 50% + 150px ) bottom -30px;
	background-size: 100px auto;
}

/* 成人矯正
================================================================================*/
.costBase {
	margin: 0 0 30px;
	padding: 5px;
}
.costBase table {
	margin: 0 0 5px;
}
.cost .costBase table caption {
	padding: 0 5px 5px;
	font-size: 1.2rem;
}
.costBase table th,
.costBase table td {
	padding: 10px;
	font-size: 1.4rem;
}
/* .costBase table td:last-of-type {
	border-bottom: 1px solid #ddd;
} */
.costBase table th ul {
	font-size: 1.2rem;
}
.costBase table td .typeCost {
	display: block;
	float: none;
	margin: 0;
	padding: 0 5px;
	text-align: left;
}
.costBase table td .typeCost span {
	font-size: 1.2rem;
}
.costDetail {
	margin: 0 0 20px;
	padding: 20px;
}
.costDetail h4 {
	font-size: 1.4rem;
}
.costBase table .invisalignTd {
	padding-bottom: 10px;
	border-bottom: none;
}
.costBase s {
	display: block;
	margin: 0;
	font-size: 1.2rem;
}

/* 小児矯正
================================================================================*/
.cost #kidsCost .costBase table td {
	white-space: nowrap;
}
.cost #kidsCost .costBase table td .typeCost {
	margin: 0 0 10px;
}

/* お支払いについて
================================================================================*/
.payment {
	flex-wrap: wrap;
	margin: -10px 0 30px;
}
.payment li {
	width: 100%;
	margin: 10px 0 0;
}
.payment h3 {
	margin: 0 0 20px;
	font-size: 1.8rem;
}
.payment h3:only-child {
	margin: 0;
}
.payment h3 span {
	display: inline-block;
	margin: 0 0 0 10px;
	font-size: 1.4rem;
}
/* .deduction {
	padding: 20px;
} */

/* 医療費控除について
================================================================================*/
.deduction > section {
	margin: 40px 0 0;
	padding: 20px;
}
.deduction > section h3 {
	margin: 0 0 20px;
	font-size: 2.0rem;
	line-height: 1.4;
}
.deduction > section h4 {
	margin: 0 auto 20px;
	font-size: 1.8rem;
}
.deductionCaseInfo table {
	margin-bottom: 20px;
	border: none;
	border-bottom: 1px solid var(--color-primary);
	width: 100%;
}
.deductionCaseInfo tr {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}
.deductionCaseInfo th,
.deductionCaseInfo td {
	display: block;
	width: 50%;
}
.deductionCaseInfo th {
	border-bottom: none;
}
.deductionCaseInfo td {
	border-left: none;
	border-bottom: none;
}
.deductionCaseInfo figure {
	height: 120px;
	margin: 0 0 10px;
}

.deductionFormula {
	margin: 0 0 20px;
	padding: 10px;
	font-size: 1.4rem;
}
.deductionFormulaTtl {
	padding: 0 0 10px 14px;
	font-size: 1.6rem;
}
.deductionFormulaTtl:before {
	width: 4px;
	height: 20px;
}

.deductionFormula .subtotal {
	font-size: 2.0rem;
}
.deductionFormula .total {
	display: block;
	width: 80%;
	margin: 4px auto 0;
	font-size: 2.0rem;
}

/*================================================================================

retention

================================================================================*/
/* retainerInner
================================================================================*/
.retainerImg {
	width: 80%;
	margin: 0 auto 30px;
}

/* afterCare
================================================================================*/
.afterCare {
	padding: 40px 20px;
}
.afterCare .afterCareInner {
	width: 100%;
	margin: 0;
	padding: 30px 30px 240px 30px;
	border: 1px solid #fff;
	background: rgba(255, 255, 255, .8) url(/common_img_new/eguchi_welcome.png) no-repeat center bottom;
	background-size: 180px auto;
}
.afterCarePoint {
	padding: 20px;
}


/*================================================================================

privacy

================================================================================*/
/* h
================================================================================*/
.privacy h2 {
	margin: 0 0 30px;
	font-size: 1.8rem;
}
/* section
================================================================================*/
.privacy .container section {
	margin: 0 0 40px;
}


/*================================================================================

invisalign

================================================================================*/
/* title
================================================================================*/
.invisalign .title {
	height: auto;
	padding: 30px 20px 30px;
}
.invisalign .title .copy {
	font-size: 1.8rem;
}
.invisalign .title .titleText {
	margin: 0 auto;
	font-size: 3.0rem;
}
.invisalign .title .note {
	font-size: 1.4rem;
}

/* outline
================================================================================*/
.invisalign .outline .container {
	/* padding: 30px; */
}
.invisalign .outline .container dd {
	margin-bottom: 30px;
	font-size: 1.6rem;
	line-height: 1.8;
}

/* invisaMovie
------------------------------------------------*/
.invisaMovieListTtlSub {
	margin-bottom: 20px;
	font-size: 1.6rem;
}
.invisaMovieListTtl {
	font-size: 1.4rem;
}
.invisaMovieListTtl span {
	margin-bottom: 10px;
	padding: 6px 10px;
	font-size: 1.4rem;
}
.invisaMovieList ul li {
	width: 100%;
	margin: 0 0 20px;
	padding: 20px 20px 16px;
}
.invisaMovieList ul li:last-of-type {
	margin-bottom: 0;
}
.invisaMovieTtl {
	margin-top: 6px;
	font-size: 1.4rem;
}
/* h
================================================================================*/
.invisalign h2 {
	margin: 0 0 40px;
	font-size: 2.4rem;
}

/* invisalignTarget
================================================================================*/
.invisalignTarget ul {
	margin: -20px 0 0;
}
.invisalignTarget li {
	margin: 20px 0 0;
	padding: 10px;
}
.invisalignTarget li img {
	margin: 0 auto 10px;
}


/* invisalignFeature
================================================================================*/
.invisalignFeature ul {
	margin: 0 -20px 40px;
	padding: 60px 20px 20px;
	background: #f7f7f7 url(/common_img_new/invisalign_logo.png) no-repeat center 30px;
	background-size: 140px auto;
}
.invisalignFeature li {
	width: 100%;
	margin: 20px 0 0;
	padding: 30px;
}
.invisalignFeature li h3 {
	margin: -30px 0 30px;
	padding: 50px 0 0;
	font-size: 2.2rem;
}
.invisalignFeature li h3:before {
	width: 50px;
	height: 50px;
	padding: 12px 0 0;
	font-size: 2.0rem;
}
.invisalignNote {
	padding: 40px;
}
.invisalignFeature .invisalignNote h3 {
	margin: -50px 0 30px;
	font-size: 1.8rem;
}
.invisalignNote dt {
	margin: 0 0 20px;
	font-size: 1.8rem;
}

/* invisalignPlan
================================================================================*/
.invisalignPlan {
	margin: 0 auto 40px;
}
.invisalignPlan ul {
	margin: -10px 0 30px;
}
.invisalignPlan li {
	width: 100%;
	margin: 10px 0 0;
	padding: 30px;
}
.invisalignPlan li:nth-last-of-type(-n+2) {
	flex-wrap: wrap;
	width: 100%;
	margin: 10px 0 0;
}
/* .invisalignPlan li img {
	height: 80px;
	margin: 0 auto 30px;
} */
.invisalignPlan li:nth-last-of-type(-n+2) figure {
	width: 200px;
	margin: 0 auto 20px;
}
.invisalignPlan li:nth-last-of-type(-n+2) dl {
	flex: auto;
	width: 100%;
}
.invisalignPlan li:nth-last-of-type(-n+2) dt img {
	display: block;
	height: 30px;
	margin: 0 auto 20px;
}
.invisalignPlan h3 {
	font-size: 1.8rem;
}

/* invisalignAssist
------------------------------------------------*/
.invisalignAssist  {
	padding: 20px 10px 10px;
}
.invisalignAssist h3 {
	margin: 0 auto 20px;
	font-size: 1.8rem;
}
.invisalignAssist h3:after {
	margin: 10px auto 0;
}
.invisalignAssist ul {
	margin: -10px 0 0;
}
.invisalignAssist li {
	width: 100%;
	margin: 10px 0 0;
	padding: 30px;
}
.invisalignAssist h4 {
	font-size: 1.6rem;
}

/* invisalignCost
================================================================================*/
.invisalignCost .costBase table caption {
	margin: 0 0 5px;
	font-size: 1.2rem;
}
.invisalignCost .costBase table td {
	white-space: nowrap;
}
.invisalignCost .costBase table tr:last-of-type td {
	background-image: none;
}

/* invisalignFlow
================================================================================*/
.invisalignFlow .lead {
	font-size: 1.8rem;
}
.invisalignFlowStep {
	margin: 0;
	padding:0;
	border: none;
	background: none;
}
.invisalignFlowStep section:not(:last-of-type):before {
	display: none;
}
.invisalignFlowStep section label {
	display: block;
	position: relative;
	padding: 10px 30px 10px 46px;
	border: 1px solid #ccc;
	background: #fff;
	font-size: 1.6rem;
	border-radius: 4px;
	cursor: pointer;
}
.invisalignFlowStep section label:before {
	top: 8px;
	left: 10px;
	width: 26px;
	line-height: 26px;
	text-align: center;
	background: var(--color-invisalign-light);
	color: #fff;
	font-size: 12px;
	border-radius: 3px;
}
.invisalignFlowStep section label:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	margin: 0;
	width: 14px;
	height: 14px;
	margin-top: -10px;
	color: var(--color-invisalign-light);
	font-family: 'Material Icons';
	font-size: 2.0rem;
	line-height: 1;
	white-space: nowrap;
	content: "keyboard_arrow_down";
}
.invisalignFlowStep section input {
	display: none;
}
.invisalignFlowStep section .stepInner {
	overflow: hidden;
	height: 0;
	margin: 0;
	padding: 0 10px;
	background: inherit;
	opacity: 0;
	transition: .4s;
}
.invisalignFlowStep section input:checked + label:after {
	content: "keyboard_arrow_up";
}
.invisalignFlowStep section input:checked + label + .stepInner {
	height: auto;
	padding: 10px;
	margin: 0 0 30px;
	background: inherit;
	opacity: 1;
}
.invisalignFlowStep section:last-of-type .stepInner {
	margin: 0;
}
.invisalignFlowStep .stepImg {
	width: 100%;
	margin: 0 auto;
}


/* invisalignRecommend
================================================================================*/
.invisalignRecommend h2 {
	margin: 0 0 30px;
	font-size: 2.4rem;
	font-weight: 400;
}
.invisalignRecommend h2 .subTitle {
	display: block;
	padding: 5px 10px;
	font-size: 1.8rem;
}
.invisalignRecommendInner {
	flex-flow: column-reverse;
	width: 100%;
	margin: 0 0 40px;
	padding: 0;
}
.recommendText {
	width: auto;
	margin: 0;
}
.recommendImg {
	width: 60%;
	margin: 0 auto 20px !important;
}
.invisalignRecommendInner ul {
	list-style: none;
	margin: 0 0 30px;
}
.invisalignRecommendInner li {
	padding: 0 0 0 20px;
	font-size: 1.6rem;
}
.invisalignDeclaration {
	padding: 20px;
}
.invisalignDeclaration h3 {
	margin: 0 0 30px;
	padding: 0;
	font-size: 2.4rem;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0;
}
.invisalignDeclaration h3 .subTitle {
	font-size: 1.6rem;
}
.invisalignDeclaration .invisalignDeclarationText {
	padding: 0 .5em 1.4em 1em;
	background-image: linear-gradient( rgba(184,169,146,.3) .1em, transparent .1em );
	background-size: auto 2.5em;
	line-height: 2.5em;
}

/* consultBox
------------------------------------------------*/
.consultBox dt {
	font-size: 2.4rem;
}
.consultBox dd .please {
	font-size: 1.6rem;
}
.consultBox .btn a {
	display: inline-block;
	width: 100%;
	height: 60px;
	padding: 0 10px 0 20px;
	font-size: 1.8rem;
	line-height: 60px;
}

/* invisalignKawaramachi
================================================================================*/
.invisalignKawaramachi h2 {
	margin: 0 0 40px;
	font-size: 2.4rem;
	line-height: 1.5;
}
.invisalignKawaramachi section {
	flex-flow: column;
	margin: 0 0 30px;
	padding: 30px;
	border: 1px solid #eee;
	background: #fff;
	border-radius: 10px;
}
.invisalignKawaramachi section .welcomeText {
	width: auto;
	margin: 0 0 30px;
}
.invisalignKawaramachi section h3 {
	margin: 0 0 30px;
	padding: 0 0 0 30px;
	font-size: 2.0rem;
}
.invisalignKawaramachi .welcomeImg {
	width: 100%;
}


/*================================================================================

invisalign interview

================================================================================*/
/* title
================================================================================*/
.interview .title {
	height: auto;
	/* margin-top: 40px; */
	padding: 30px 20px;
}
.interview .title .copy {
	font-size: 1.8rem;
}
.interview .title .titleText {
	margin: 0 auto 30px;
	font-size: 2.4rem;
}
.interview .subjectLink {
	width: 100%;
}

/* wrap
================================================================================*/
.interview .subject {
	overflow: hidden;
	margin: 0;
	padding: 0 20px 40px;
}

/* h
================================================================================*/
.interview h3 {
	margin: 0 0 60px;
	font-size: 2.0rem;
	text-align: left;
}

/* section
================================================================================*/
.interview .container .inner {
	margin-top: 60px;
	padding-bottom: 60px;
}

/* subjectTitle
================================================================================*/
.interview .subjectTitle {
	margin-left: -20px;
	margin-right: -20px;
	margin-bottom: 60px;
}
.interview .subjectTitle .subjectTitleInner {
	width: auto;
}
.interview #subject01 .subjectTitle .subjectTitleInner {
	min-height: auto;
	padding: 40px 20px 200px;
	background: url(/invisalign/interview/img/subject01_bg.png) 10px bottom no-repeat;
	background-size: auto 240px;
}
.interview #subject02 .subjectTitle .subjectTitleInner {
	min-height: auto;
	padding: 40px 20px 200px;
	background: url(/invisalign/interview/img/subject02_bg.png) right 10px bottom no-repeat;
	background-size: auto 260px;
}
.interview .subjectTitle h2 {
	margin: 0 0 20px;
	padding: 0 0 30px;
	font-size: 2.0rem;
	text-align: center;
}
.interview .subjectTitle h2 .subTitle {
	margin: 0 0 30px;
	padding: 10px;
	font-size: 1.6rem;
}
.interview .subjectTitle h2 .strong {
	font-size: 2.8rem;
}
.interview .subjectTitle p {
	font-size: 1.8rem;
}
.interview #subject02 .subjectTitle p {
	text-align: left;
}
.interview .subjectTitle p span {
	display: block;
	margin: 0;
	font-size: 1.4rem;
}

/* floatR
================================================================================*/
.interview .inner .floatR {
	float: none;
	width: 60%;
	margin: 0 auto 30px;
}

/* profile
================================================================================*/
.interview .container#profile {
	width: 100%;
}
.profileContent {
	flex-wrap: wrap;
}
.profileContent div {
	width: 150px;
	margin: 0 auto 20px;
}
.profileContent dl {
	width: 100%;
}
.profileContent dt {
	margin: 0 0 20px;
	color: var(--color-invisalign);
	font-size: 2.4rem;
}
.profileContent dt span {
	display: inline-block;
	margin: 0 0 0 10px;
	font-size: 1.6rem;
}




/*================================================================================

invisalignFirst

================================================================================*/
/* title
================================================================================*/
.invisalignFirst .title {
	height: auto;
	padding: 30px 20px;
}
.invisalignFirst .mainImg {
	margin: 0;
	padding: 0;
	background: var(--color-invisalign-first);
	text-align: center;
}
.invisalignFirst .title .copy {
	margin: 0 0 20px;
	color: var(--color-invisalign-first-accent);
	font-size: 2.4rem;
}
.invisalignFirst .title .titleText {
	margin: 0 auto 40px;
	font-size: 3.0rem;
}
.invisalignFirst .title .note {
	font-size: 1.4rem;
}
.invisalignFirst .title .container {
	width: auto;
	font-size: 1.6rem;
}
.invisalignFirst .title .taR {
	text-align: center;
}

/* h
================================================================================*/
.invisalignFirst h2 {
	margin: 0 0 40px;
	font-size: 2.4rem;
}
.invisalignFirst h2 span {
	font-size: 1.6rem;
}

/* invisalignReassurance
================================================================================*/
.invisalignFirst .invisalignReassurance ul {
	margin: -20px 0 0;
	padding: 0;
}
.invisalignFirst .invisalignReassurance li {
	width: 100%;
	margin: 20px 0 0;
	padding: 0 30px 30px;
}
.invisalignFirst .invisalignReassurance li h3 {
	margin: 0 0 20px;
	padding: 0 0 10px;
	font-size: 1.8rem;
}

.invisalignFirst .invisalignReassurance li .reassuranceImg {
	width: calc( 100% + 60px );
	margin: 0 -30px 20px;
}

/* invisalignFeature
================================================================================*/
.invisalignFirstFeature ul {
	margin: -40px 0 60px;
}
.invisalignFirstFeature li {
	width: 100%;
	margin: 40px 0 0;
	padding: 0;
}
.invisalignFirstFeature li dl {
	padding: 30px;
}
.invisalignFirstFeature li dt {
	margin: -40px 0 30px;
	padding: 10px 0;
	font-size: 1.8rem;
}
.invisalignFirstFeature li dd {
	margin: 0;
}
.invisalignFirstFeature li .featureImg {
	margin: 0 0 30px;
}
.invisalignFirstFeature .invisalignNote {
	padding-top: 30px;
	padding-bottom: 30px;
}
.invisalignFirstFeature h3.invisalignNoteTitle {
	font-size: 1.6rem;
}
.invisalignNote dt {
	font-size: 1.6rem;
}
.invisalignFirstFeature .invisalignNote dd {
	font-size: 1.2rem;
}

/* invisalignFirstPeriod
================================================================================*/
.invisalignFirstFlow {
	flex-wrap: wrap;
	margin: -40px 0 0;
}
.invisalignFirstFlow li {
	width: 100%;
	margin: 40px 0 0;
	padding: 20px;
}
.invisalignFirstFlow li.period1:after {
	display: block;
	position: absolute;
	top: auto;
	bottom: -35px;
	right: auto;
	left: calc( 50% - 1.5rem );
	font-size: 3.0rem;
	content: "keyboard_arrow_down";
}
.invisalignFirstFlow li h3 {
	font-size: 1.8rem;
}
.invisalignFirstFlow li .periodImg {
	width: 70%;
	margin: 0 auto 30px;
}
.invisalignFirstFlow li .periodChoice {
	font-size: 1.6rem;
}
.invisalignFirstFlow li .periodChoice span {
	font-size: 1.4rem;
}

/* invisalignFirstCost
================================================================================*/
.invisalignFirstCost table {
	margin: 0 0 40px;
}
.invisalignFirstCost table th {
	padding: 20px 20px 90px;
	background: url(/kids/img/flow01.png) no-repeat center bottom 10px;
	background-size: 80px auto;
	font-size: 1.8rem;
}
.invisalignFirstCost table.kidsSecond th {
	padding: 20px 20px 100px;
	background-size: 130px auto;
}
.invisalignFirstCost table th span {
	font-size: 1.6rem;
}
.invisalignFirstCost table th .costNote {
	font-size: 1.2rem;
}
.invisalignFirstCost table td {
	padding: 20px;
	font-size: 1.4rem;
}
.invisalignFirstCost table td .typeCost {
	display: block;
	float: none;
	margin: 0 0 10px;
	padding: 0 5px;
	text-align: left;
}


/*================================================================================

faq

================================================================================*/
/* section
================================================================================*/
.faq section label:after {
	right: 0;
}
.faq section label h3:before {
	left: 0;
}
.faq section div {
	padding: 0 20px;
}
.faq section input:checked + label + div {
	padding: 10px 20px;
}


/*================================================================================

error

================================================================================*/
/* title
================================================================================*/
.error404 .title .titleText {
	top: 50px;
}
/* container
================================================================================*/
.error404 .container {
	text-align: left;
}
.error404 .container p:last-of-type {
	text-align: center;
}



/*================================================================================

kidsNew

================================================================================*/
/* title
================================================================================*/
.kidsNew .title {
	height: 281px;
	background: #d9f1db url(/kids/img/title_bg.png) no-repeat;
	background-position: center bottom;
	background-size: 160px auto;
}
.kidsNew .title .titleText {
	top: 50px;
}
.kidsNew .title p {
	position: absolute;
	top: 110px;
	left: 0;
	right: 0;
	margin: 0 20px;
}

/* content
================================================================================*/
.kidsNew .container .lead {
	width: auto;
}


/* kidsPoint
================================================================================*/
.kidsPoint dl dd ul {
	flex-wrap: wrap;
}
.kidsPoint dl dd ul li {
	width: 100%;
	margin: 0 0 20px;
	padding: 40px 20px 20px;
	font-size: 2.0rem;
}
.kidsPoint dl dd ul li:last-of-type {
	margin: 0;
}
.kidsPoint dl dd ul li:before {
	width: 50px;
	height: 50px;
	padding: 14px 0 0;
	font-size: 2.0rem;
}
.kidsPointPhoto {
	justify-content: space-between;
}
.kidsPointPhoto img {
	display: block;
	width: 48%;
	margin: 0;
}


/* kidsFlow
================================================================================*/
.kidsFlow > section {
	margin: 40px 0 0;
	padding: 20px;
}
.kidsFlow > section h3 {
	font-size: 2.0rem;
}
.kidsFlow .flowAge span {
	font-size: 1.6rem;
}
.kidsFlow > section > section {
	margin: 30px 0 0;
	padding: 20px;
}
.kidsFlow > section h4 {
	font-size: 1.6rem;
}
.kidsFlow > section table thead {
	display: none;
}
.kidsFlow > section table td {
	width: 100%;
	display: block;
	border-top: none;
	border-right: none;
	}
.kidsFlow > section table tr:last-of-type td:last-of-type {
	border-bottom: none;
}
.kidsFlow > section table tr td:first-of-type {
	background: #f7f7f7;
}
.kidsCase ul {
	flex-wrap: wrap;
}
.kidsCase ul li {
	width: 100%;
	margin: 0 0 30px;
}
.kidsCase ul li:last-of-type {
	margin: 0;
}
.kidsCase ul li h5 {
	font-size: 1.6rem;
	text-align: center;
}
.kidsCase ul li .kidsTypeImg {
	text-align: center;
}
.kidsCase .taR {
	text-align: center;
}

/* kidsMerit
================================================================================*/
.kidsMerit ul {
	flex-wrap: wrap;
}
.kidsMerit ul li {
	width: 100%;
	margin: 0 0 30px;
	padding: 20px 20px 90px;
}
.kidsMerit ul li:last-of-type {
	margin: 0;
}

/* kidsCost
================================================================================*/
.kidsNew .kidsCost .taR {
	text-align: center;
}
.kidsNew .el_h3 {
	margin-bottom: 30px;
	font-size: 2.0rem;
}

/* underFaq
================================================================================*/
.underFaq section {
	width: auto;
}
.underFaq section label:after {
	top: 24px;
	right: 0;
}
.underFaq section label h3:before {
	left: 0;
}
.underFaq section div {
	margin: 0;
}
.underFaq section input:checked + label + div {
	margin: 20px 0;
}

/* consultLink
================================================================================*/
/* seo .under .cousultWrap h2 {
	margin: 0 0 20px;
} */

/* invisalignFirstBnr
================================================================================*/
.kidsNew .invisalignFirstBnr a {
	width: 100%;
	height: auto;
	margin: 30px 0 0;
	padding: 74% 20px 20px;
	background: var(--color-invisalign-first) url(/invisalign-first/img/bnr_back.jpg) no-repeat left top;
	background-size: 100% auto;
}
.kidsNew .invisalignFirstBnr a:hover,
.kidsNew .invisalignFirstBnr a:active {
	background: url(/invisalign-first/img/bnr_back.jpg) no-repeat left top;
	background-size: 100% auto;
	background-color: rgba( 197, 168, 48, .8);
}


/*================================================================================

over40New

================================================================================*/
/* title
================================================================================*/
.over40New .wrap.title {
	height: 220px;
}
.under40New .wrap.title {
	height: 200px;
}
.over40New .title .titleText {
	/* top: 70px; */
	font-size: 1.8rem;
}
.over40New .title .titleText span {
	font-size: 3.0rem;
}
.over40New .title p {
	top: 140px;
	line-height: 1.4;
}

/* over40MainImg
================================================================================*/
.over40MainImg {
	margin: 0 0 30px;
}

/* over40Point
================================================================================*/
.over40Point {
	width: auto;
	margin: 30px auto 0;
	padding: 30px;
}
.over40Point h3 {
	margin: 0 0 30px;
	font-size: 1.8rem;
	line-height: 1.4;
}
.over40PointImg {
	width: 80%;
	margin: 0 auto;
}

/* over40Invisalign
================================================================================*/
.over40Point.over40Invisalign {
	padding-bottom: 140px;
	background: var(--color-primary-light-more) url(/over40/img/invisalign.png) no-repeat;
	background-position: center bottom -40px;
	background-size: 140px auto;
}
.over40InvisalignText {
	padding: 0;
}

/* totalSupport
================================================================================*/
.totalSupport {
	width: auto;
	padding: 30px;
	border: 1px solid var(--color-primary);
	background: #fff;
	border-radius: 10px;
}
.totalSupport ul li {
	font-size: 1.6rem;
}
.totalSupport p {
	font-size: 1.6rem;
}


/*================================================================================

case

================================================================================*/
/* inPageLink
================================================================================*/
.case .inPageLink {
	margin: -5px auto 0;
}
.case .inPageLink  li {
	width: 80%;
	margin: 5px auto 0;
}
.case .inPageLink li:nth-of-type(4n+3):last-of-type {
	margin-right: auto;
}


/*================================================================================

case orthodontics

================================================================================*/
/* title
================================================================================*/
.title .titleText .orthodonticsTaxS {
	display: block;
	margin-bottom: 14px;
	font-size: 2.0rem;
	letter-spacing: 0.1rem;
}
.caseOrthodonticsCat .title .titleText {
	font-size: 1.8rem;
}
.caseOrthodonticsCat .title .titleText span {
	font-size: 3.0rem;
}

/* inPageLink
================================================================================*/
.caseOrthodontics .inPageLinkGr4 {
	grid-gap: 5px;
	grid-template-columns: repeat(2, calc(100% / 2 - 5px * 1/2));
	margin: 0;
	padding: 0;
}
.caseOrthodontics .inPageLinkGr4 li span {
	font-size: 1.2rem;
}
.caseOrthodontics .inPageLinkGr4 li.btn a {
	padding: 0 5px;
	background: url(/common_img_new/bg_black.jpg) repeat;
	background-size: 100px auto;
}

/* caseOrthodonticsList
================================================================================*/
.caseOrthodonticsList {
	list-style: none;
	display: grid;
	flex-wrap: wrap;
	grid-gap: 20px;
	grid-template-columns: repeat(1, 100%);
	margin: 0 auto 60px;
	padding: 0;
}
.caseOrthodonticsList > li > a {
	padding: 20px 10px;
}
.caseOrthodonticsList > li > a figure {
	overflow: hidden;
	width: 80%;
	margin: 0 auto 14px;
}
.caseOrthodonticsNum span {
	font-size: 1.4rem;
}
.caseOrthodonticsType {
	margin-bottom: 0;
}
.caseOrthodonticsType span {
	display: inline-block;
	margin: 0 4px 4px 0;
	padding: 4px;
	font-size: 1.2rem;
}
.caseOrthodonticsType span:last-of-type {
	margin-right: 0;
}
.caseOrthodonticsTtl {
	margin-bottom: 6px;
	font-size: 1.6rem;
}
.caseOrthodonticsTag {
	font-size: 1.2rem;
}

/*================================================================================

case single

================================================================================*/
	/* title
================================================================================*/
.caseOrthodontics.single .title .titleText {
	font-size: 1.8rem;
}
.caseOrthodontics.single .title .titleText span {
	font-size: 3.0rem;
}

/* h
================================================================================*/
.caseSingle h1 {
	margin: 0 0 40px;
	font-size: 2.4rem;
}

/* casePhoto
================================================================================*/
.casePhoto {
	width: auto;
	margin: -20px auto 20px;
}
.casePhoto div {
	width: 45%;
	padding: 2px;
}
.casePhoto div:nth-of-type(2n+3):after {
	top: calc( 50% - 4px );
	right: -20px;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 8px solid var(--color-accent);
}
.casePhoto div:nth-of-type(1),
.casePhoto div:nth-of-type(2) {
	font-size: 1.6rem;
}

/* caseInfo
================================================================================*/
.caseInfo {
	margin: 40px 0 0;
	padding: 20px;
	box-shadow: none;
}
.caseInfo .infoText {
	margin: 0 0 30px;
}
.caseInfo .infoText dt {
	width: 100%;
	padding: 10px 0 5px;
	border-top: 1px dashed #ddd;
	color: var(--color-primary);
}
.caseInfo .infoText dd {
	width: 100%;
	padding: 0 0 10px 10px;
	border-top: none;
}
.caseInfo .infoText dt:last-of-type {
	border-bottom: none;
}
.caseInfo .infoText dd:last-of-type {
	border-bottom: 1px dashed #ddd;
}
.caseInfo .drComment {
	margin: 30px 0 0;
	padding: 30px;
}
.caseInfo .btn a {
	line-height: 30px;
}

/*================================================================================

info2020

================================================================================*/
/* title
================================================================================*/
.info2020 .title .titleText {
	top: 40px;
	line-height: 1.4;
}
.info2020 .title .titleText span {
	margin: 0 0 10px;
	font-size: 1.6rem;
}

/* h
================================================================================*/
.info2020 h2 {
	font-size: 2.0rem;
}

/* section
================================================================================*/
.info2020 .lead  p {
	font-size: 1.6rem;
}

/* support
================================================================================*/
.info2020 .support section {
	margin: 40px 0 0;
}
.info2020 .support h2 {
	margin: 0 0 60px;
	font-size:2.0rem;
	line-height: 1.8;
	}
.info2020 .support h3 {
	margin: 0 0 40px;
	font-size: 2.0rem;
}
.info2020 .support h3:before {
	margin-right: 20px;
	margin-left: 20px;
}
.info2020 .support h3:after {
	margin-right: 20px;
	margin-left: 20px;
}









/* seo追加部分
================================================================================*/
/*================================================================================

home

================================================================================*/
/* h
================================================================================*/
.home .h2 {
	margin: 0 0 40px;
	font-size: 3.0rem;
	line-height: 1.4;
}
.home .home_h {
	margin: 0 0 30px;
	font-size: 2.4rem;
}

/* homeAbout
================================================================================*/
.homeAbout .h2 {
	font-size: 3.0rem;
}

/* feature
------------------------------------------------*/
.feature .h3 {
	font-size: 2.0rem;
}

/* orthodontic
================================================================================*/
.homeTreatmentBox .h2 {
	margin: 0 0 30px;
	font-size: 2.4rem;
}
.homeTreatmentBox .h2 span {
	font-size: 3.0rem;
}

/* orthodonticType
------------------------------------------------*/
.orthodonticTypeInner .h3 {
	font-size: 2.0rem;
}
.orthodonticTypeInner .h3 span {
	font-size: 1.4rem;
}







/* moreBlog
================================================================================*/
.home .moreBlog .moreCatch {
	font-size: 2.0rem;
}


/*================================================================================

under_page common

================================================================================*/
/* h
================================================================================*/
.under .h2 {
	margin: 0 0 40px;
	padding: 0;
	font-size: 2.4rem;
}
.under .h2:after {
	width: 30px;
	height: 2px;
	margin: 20px auto 0;
}


/*================================================================================

kidsNew

================================================================================*/
/* consultLink
================================================================================*/
.under .cousultTtl {
	margin: 0 0 20px;
}




/*================================================================================

lineStart

================================================================================*/
/* title
================================================================================*/
.lineStart .title {
	background-position: left calc( 50% - 10px ) bottom 40px;
	background-size: 30px auto;
}

/* lineLead
================================================================================*/
.wrap.lineLead {
	padding-bottom: 200px;
}
.under .lineLead h2 {
	margin: 0 0 30px;
	font-size: 2.8rem;
	line-height: 1.4;
}
.under .lineLead h2 span {
	margin: 0 0 10px;
	font-size: 2.0rem;
}
.under .lineLead h2:before {
	width: 50px;
	height: 50px;
	margin: 0 auto 20px;
	background-size: 50px auto;
}

/* lineFrend
================================================================================*/
.wrap.lineFriend {
	margin: -300px 0 0;
	padding: 100px 0 50px;
}
.iphoneImg {
	margin: 0 0 80px;
}
.iphoneImg img {
	margin: 0 10px;
}
.lineFriend dt {
	margin: 0 auto 10px;
}
.lineFriend .lineID {
	font-size: 1.6rem;
}

/* lineMerit
================================================================================*/
.lineMerit ul {
	margin: -30px 0 0;
}
.lineMerit ul li {
	width: 100%;
	margin: 30px 0 0;
	font-size: 2.4rem;
}
.lineMerit ul li:before {
		padding: 8px 0 0;
	font-size: 2.4rem;
}
.lineMerit ul li dt {
	margin: 0 0 10px;
}


/*================================================================================

campaign

================================================================================*/
/* title
================================================================================*/
.campaign .title .titleText {
	top: 70px;
	font-size: 1.8rem;
}
.campaign .title .titleText span {
	font-size: 3.0rem;
}
.campaign .title p {
	top: 120px;
	line-height: 1.4;
}

/* content
================================================================================*/
.campaignBox .container {
	flex-direction: column;
	width: 100%;
}
.campaignBanner {
	width: 80%;
	max-width: 300px;
	margin: 0 auto 30px;
}
.campaignDay .campaignBanner a {
	background-size: auto 58%;
}
.campaignDay .campaignBannerTtl {
	line-height: 1.4;
}
.campaignText {
	width: 100%;
}
.campaignText h2 {
	margin: 0 0 20px;
	padding: 0;
	text-align: center;
	line-height: 1.4;
}
.campaignText h2:before {
	display: none;
}
.campaignText h2:after {
	display: block;
}
.campaignSubject {
	font-size: 1.6rem;
	text-align: center;
}

.campaignSub .whiteBox {
	margin-top: 20px;
	padding: 30px;
}
.campaignSub .campaignText h2 {
	margin-bottom: 20px;
	padding-left: 0;
	text-align: center;
}
.campaignSub .campaignText h2::after {
	margin: 20px 0 0;
}
.campaignSub .campaignSubject {
	margin-right: auto;
	margin-left: auto;
	font-size: 1.6rem;
}
.campaignSub .campaignImg {
	align-self: center;
	width: 120px;
	margin: 20px 0 0;
}

/*================================================================================

campaign / family

================================================================================*/
/* content
================================================================================*/
.campaignHeader {
	width: 100%;
	margin-top: 50px;
	padding: 40px 20px 20px;
}
.campaignHeaderTtl {
	margin-bottom: 20px;
	font-size: 3.0rem;
}
.campaignHeaderTtl::after {
	width: 30px;
	margin: 10px auto 0;
}
.campaignHeaderSubject {
	font-size: 1.8rem;
}
.campaignHeaderPoint {
	font-size: 2.0rem;
}
.campaignHeaderPoint span {
	font-size: 3.0rem;
}
.family .campaignHeaderImg {
	top: -60px;
	right: auto;
	left: 50%;
	transform: translateX(-50%);
	width: 140px;
}

.campaigDetail > dt {
	width: 100%;
	padding: 10px 0;
}
.campaigDetail > dd {
	flex: auto;
	width: 100%;
	padding: 20px 10px;
	border-top: 1px dashed #eee;
}
.campaigDetail:last-of-type {
	margin-bottom: 30px;
}
.campaigDetail:last-of-type > dt {
	border-bottom: none;
}


/*================================================================================

campaign / friend

================================================================================*/
/* content
================================================================================*/
.friend .campaignHeader .flexbox > div {
	width: 100%;
	margin-bottom: 20px;
}
.friend .campaignHeader .flexbox > div:last-of-type {
	margin-bottom: 0;
}
.friend .campaignHeaderImg {
	top: -80px;
	right: auto;
	left: 50%;
	transform: translateX(-50%);
	width: 80px;
}

/*================================================================================

campaign / day

================================================================================*/
/* content
================================================================================*/
.day .campaignHeaderImg {
	top: -80px;
	right: auto;
	left: 50%;
	transform: translateX(-50%);
	width: 80px;
}


/*================================================================================

treatment / 各診療

================================================================================*/
/* mainArea
================================================================================*/
.treatment .bl_mainArea {
	flex-direction: column;
	margin-top: -40px;
}
.treatment .bl_mainArea_img {
	flex: auto;
}
.treatment .bl_mainArea_img img {
	width: 100%;
	height: clamp(320px, 100vh - 400px, 100vh);
	/* object-position: 50% 0; */
}
.treatment #main >.bl_mainArea > .bl_mainArea_body {
	width: 100%;
	min-width: auto;
	padding: 4%;
}
.bl_treatment_ttl {
	margin: -100px auto 50px;
	background-color: var(--color-treatment);
	color: #fff;
	font-size: 2.4rem;
}
.bl_mainArea_ttl {
	margin: 0 auto 30px;
	font-size: 3.0rem;
	text-align: center;
}
.bl_mainArea_subTtl {
	margin: 0 auto 14px;
	font-size: 1.6rem;
	text-align: center;
}

/* h
================================================================================*/
.treatment h2 {
	margin-bottom: 40px;
	font-size: 2.4rem;
}
.treatment .el_h3 {
	margin-bottom: 30px;
	font-size: 2.0rem;
}

.treatment .el_lead {
	margin-bottom: 30px;
	text-align: left;
}

/* 概要
================================================================================*/
.bl_treatmentAbout .bl_media {
	gap: 30px;
}
.bl_treatmentAbout .bl_media_copy {
	font-size: 2.4rem;
	text-align: center;
}

/* より詳しい内容
------------------------------------------------*/
.bl_treatmentDetail .bl_media {
	flex-direction: column-reverse;
}
.bl_treatmentAbout .bl_treatmentDetail .bl_media_copy {
	margin-bottom: 30px;
}

/* 4つの項目
================================================================================*/
.bl_treatmentPoint.bl_col4 .bl_col_item {
	padding: 10px;
	font-size: 1.6rem;
}

/* 進行と治療
================================================================================*/
.bl_treatmentProgress .bl_col_item {
	padding: 24px;
}
.bl_treatmentProgress .bl_card_ttl {
	font-size: 1.8rem;
	text-align: center;
}
.bl_treatmentProgress .bl_card_num {
	display: block;
	width: 40px;
	margin: -32px auto 16px;
	font-size: 1.8rem;
}
.bl_treatmentProgress .bl_card_txt {
	margin-bottom: 20px;
}

/* 治療の特徴
================================================================================*/
.bl_treatmentFeatureList.bl_col3 .bl_col_item:nth-of-type(-n+3) {
	margin-top: 40px;
}
.bl_treatmentFeatureList.bl_col3 .bl_col_item:first-of-type {
	margin-top: 0;
}
.bl_treatmentFeatureList section:not(:only-child) {
	margin-bottom: 40px;
}
.bl_treatmentFeatureList .bl_media_img {
	width: 100%;
	max-width: 400px;
}
.bl_treatmentFeatureList .bl_treatmentFeature_ttl {
	font-size: 1.8rem;
}
.bl_treatmentFeatureList .bl_treatmentFeature_ttl::after,
.bl_treatmentFeatureList .bl_media__rev .bl_treatmentFeature_ttl::after {
	width: 100%;
	margin: 10px 0 0;
}
.bl_treatmentFeatureList .bl_treatmentFeature_num {
	margin-bottom: 10px;
}
/* .bl_treatmentFeatureList2.bl_col3 {
	flex-direction: row;
}
.bl_treatmentFeatureList2.bl_col3 .bl_col_item {
	width: 48%;
	margin-top: 4%;
}
.bl_treatmentFeatureList2	.bl_col3 .bl_col_item:nth-of-type(-n+3) {
	margin-top: 4%;
}
.bl_treatmentFeatureList2	.bl_col3 .bl_col_item:first-of-type {
	margin-top: 0;
} */
.bl_treatmentFeatureList2 .bl_card_img {
	display: none;
}
.bl_treatmentFeatureList2 .bl_treatmentFeature_ttl {
	font-size: 1.8rem;
}

.bl_treatmentFeatureMore {
	padding: 30px;
}
.bl_treatmentFeatureMore .bl_media_ttl {
	font-size: 1.8rem;
}

/* 追記
================================================================================*/
.bl_treatmentMore {
	padding: 30px;
}
.bl_treatmentMore .bl_media_ttl {
	font-size: 1.6rem;
}
.bl_treatmentMore .bl_media_ttl span {
	font-size: 1.8rem;
}

.bl_treatmentMore__border {
	border: 1px solid var(--color-treatment);
	/* background-color: #fff; */
}

/* 治療の流れ
================================================================================*/
.bl_treatmentFlow {
	flex-direction: column;
	gap: 0;
	margin-bottom: 40px;
}
.bl_treatmentFlow_header {
	width: 100%;
	text-align: center;
}
.bl_treatmentFlow_header h2 {
	text-align: center;
}
.implant .bl_treatmentFlow .el_caption {
	text-align: center;
}
.bl_treatmentFlow_img {
	display: none;
}
.bl_treatmentFlow_body {
	flex: none;
	width: 100%;
	padding: 10px;
}
.bl_treatmentFlowList > li:not(:last-of-type)::before {
	left: 20px;
}
.bl_treatmentFlowList_num {
	width: 40px;
	height: 40px;
	font-size: 1.8rem;
	line-height: 40px;
}
.bl_treatmentFlowList_body {
	margin-top: 4px;
}
.bl_treatmentFlowList_ttl {
	font-size: 1.8rem;
}

.bl_treatmentFlow_note {
	padding: 20px;
}

/* 治療の費用
================================================================================*/
.bl_treatmentCost {
	width: 100%;
	padding: 30px;
}
.bl_treatmentCost_ttl {
	font-size: 1.8rem;
}
.bl_treatmentCost_price {
	font-size: 2.8rem;
}
.bl_treatmentCost_unit {
	font-size: 1.6rem;
}
.bl_treatmentCost_txt {
	font-size: 1.2rem;
}
#implantCost .bl_media_img {
	width: 200px;
}

.bl_treatmentCostDetail .el_h4 {
	font-size: 2.0rem;
}
.bl_treatmentCostDetail .el_h4 span {
	width: 20px;
	height: 20px;
	margin-right: 10px;
	font-size: 1.6rem;
	line-height: 20px;
}

.bl_treatmentCostDetail .bl_tableSeparate th,
.bl_treatmentCostDetail .bl_tableSeparate td {
	display: table-cell;
	width: auto;
	padding: 6px 12px;
}
.bl_treatmentCostDetail .bl_tableSeparate tbody th {
	border-bottom: 1px solid var(--color-treatment);
	font-size: 1.4rem;
}
.bl_treatmentCostDetail .bl_tableSeparate tbody th span {
	display: block;
	font-size: 1.2rem;
}
.bl_treatmentCostDetail .bl_tableSeparate tbody td {
	font-size: 1.6rem;
}

/* よくあるご質問
================================================================================*/
.bl_faq label {
	padding: 20px 30px 20px 0;
	font-size: 1.4rem;
}
.bl_faqQ {
	padding: 0 0 0 40px;
	font-size: 1.6rem;
}
.bl_faqQ::before {
	top: 1px;
}
.bl_faqA {
	padding: 0 10px;
}
.bl_faq input:checked + label + .bl_faqA {
	padding: 10px;
}

/*================================================================================

implant

================================================================================*/

/* インプラント治療とは
================================================================================*/
/* インプラントのメリット・デメリット
------------------------------------------------*/
#implantMerit .bl_col {
	width: 100%;
	margin-right: 0;
	margin-left: 0;
}
#implantMerit .bl_col3 .bl_col_item {
	width: 100%;
	margin-top: 40px;
}
#implantMerit .bl_col3 .bl_col_item:first-of-type {
	margin-top: 0;
}

/* お口の状態に合わせたインプラント治療
------------------------------------------------*/
#implantType .bl_col {
	width: 100%;
	margin-right: 0;
	margin-left: 0;
}
#implantType .bl_col3 .bl_col_item {
	max-width: 300px;
	margin-right: auto;
	margin-left: auto;
}
#implantType .el_h4 {
	margin-bottom: 20px;
	font-size: 2.0rem;
}
#implantType .bl_card_img {
	margin: 0 auto 10px;
}


/* 河原町歯科・矯正歯科クリニックのインプラント治療
================================================================================*/
#ourImplantFeature h2 {
	margin-right: -10px;
	margin-left: -10px;
	line-height: 1.6;
}

/* 無料初診相談のご紹介
================================================================================*/
.bl_implantConsult .bl_media {
	display: flex;
	flex-direction: column-reverse;
	margin: 0 auto 0;
	gap: 20px;
}
.bl_implantConsult .bl_media_img {
	width: 240px;
}
.bl_implantConsult .bl_media_body {
	margin-top: 0;
}
.bl_implantConsult .bl_media_cap {
	margin: 0 auto 20px;
	border-bottom: 1px solid currentColor;
}
.implant .bl_implantConsult h2 {
	font-size: 3.0rem;
	text-align: center
}
.implant .bl_implantConsult h2 .bl_media_subTtl {
	margin-bottom: 10px;
	font-size: 1.8rem;
}

/* 無料初診相談の内容
------------------------------------------------*/
.bl_implantConsultFlow .bl_col3 .bl_col_item {
	width: 100%;
	padding: 14px;
}
.bl_implantConsultFlow .bl_col_item .el_h4 {
	padding-left: 30px;
	font-size: 1.6rem;
}
.bl_implantConsultFlow .bl_col_item .el_h4 span {
	margin-bottom: 6px;
	font-size: 1.2rem;
}
.bl_implantConsultFlow .bl_col_item .el_h4::before {
	width: 20px;
	height: 20px;
	padding-top: 0;
	font-size: 2.0rem;
}
.bl_implantConsultFlow_note {
	text-align: left;
}

/* トリートメントコーディネーター
------------------------------------------------*/
.bl_implantConsultTC .bl_media_ttl {
	font-size: 2.4rem;
	text-align: center;
}
.bl_implantConsultTC .bl_media_cap {
	margin: 0 auto 4px;
	text-align: center;
}
.bl_implantConsultTC .bl_media_img {
	width: 100%;
	margin-left: 0;
}
.bl_implantConsultTC .btn a {
	width: 94%;
	height: auto;
	padding: 20px 10px 20px 20px;
	font-size: 1.8rem;
	line-height: 1.6;
}


/* 定期メンテナンス・保証期間
================================================================================*/
#implantMainte .el_h4 {
	font-size: 1.6rem;
}
.bl_implantMainteDetail {
	padding: 20px;
}
.bl_implantMainteDetail .bl_col2 .bl_col_item {
	width: 100%;
}

.bl_implantMainteDetail table th,
.bl_implantMainteDetail table td {
	vertical-align: middle;
}
.bl_implantMainteDetail table td {
	line-height: 1.4;
	white-space: nowrap;
}
.bl_implantMainteDetail table td span {
	display: block;
	font-size: 1.2rem;
}

/*================================================================================

caries

================================================================================*/
/* 進行と治療
================================================================================*/
.periodontal .bl_treatmentProgress .bl_card_num {
	width: 40px;
}

/*================================================================================

whitening

================================================================================*/
/* 治療の費用
================================================================================*/
.whitening .bl_treatmentCost_txt {
	text-align: left;
}

/*================================================================================

denture

================================================================================*/
/* 入れ歯・ブリッジの比較
================================================================================*/
.bl_tableSticy {
	overflow: scroll;
}
.bl_tableSticy table {
	width: auto;
}
.bl_tableSticy th:first-child {
	/* 横スクロール時に固定する */
	z-index: 2;
	position: sticky;
	left: 0;
}
.bl_tableSticy thead th {
	font-size: 1.6rem;
}
.bl_tableSticy thead th img {
	width: 60px;
}
.bl_tableSticy tbody th {
	white-space: nowrap;
	padding: 8px;
}
.bl_tableSticy td {
	/* width: 240px; */
	padding: 8px;
}



/*================================================================================

orthodontics

================================================================================*/
/* 歯列矯正の開始時期
================================================================================*/
.orthodonticsStart .bl_media_img {
	display: none;
}

/* 不正咬合の種類
================================================================================*/
.malocclusionType {
	margin-bottom: 60px;
}
.malocclusionType .bl_media {
	flex-wrap: wrap;
	margin: 0 0 20px;
}
.malocclusionType .bl_media_img {
	width: auto;
	margin: 0 auto;
	text-align: center;
}
.malocclusionType .bl_media_img img {
	width: 80%;
}
.malocclusionType .bl_media .bl_media_body {
	width: auto;
}
.malocclusionType .btn {
	text-align: center;
}

/* 症例
------------------------------------------------*/
.malocclusionListBase {
	padding: 14px;
}
.malocclusionListBase h3 {
	margin: 0 auto 20px;
	padding: 6px 16px;
	font-size: 1.6rem;
}

.malocclusionList {
	grid-template-columns: repeat(2, calc(100% / 2 - 10px * 1/2));
}
.malocclusionList > li:not(:nth-of-type(-n+2)) {
	display: none;
}
.malocclusionList > li > a {
	padding: 10px;
}
.malocclusionListBase .el_h4 {
	font-size: 1.6rem;
}



/* 矯正装置の種類
================================================================================*/
/* メリット・デメリット
------------------------------------------------*/
.orthodonticsType .bl_media_img {
	width: 80%;
	margin: 0 auto;
}


/* 歯列矯正の費用
================================================================================*/
.bl_costTable {
	margin-bottom: 30px;
	padding: 0;
	background-image: none;
}
.bl_treatmentCostDetail .bl_tableCollapse th,
.bl_treatmentCostDetail .bl_tableCollapse td {
	padding: 10px;
	font-size: 1.4rem;
}
.bl_treatmentCostDetail .bl_tableCollapse tbody td {
	padding: 10px;
}
.bl_treatmentCostDetail .bl_tableCollapse th ul {
	font-size: 1.2rem;
}
.bl_treatmentCostDetail .bl_tableCollapse .typeCost {
	display: block;
	float: none;
	margin: 0;
	padding: 0 5px;
	text-align: left;
}
.bl_treatmentCostDetail .bl_tableCollapse .typeCost span {
	font-size: 1.2rem;
}
.bl_treatmentCostDetail .bl_costPoint {
	margin: 0 0 20px;
	padding: 20px;
}
.bl_treatmentCostDetail .bl_costPoint h4 {
	font-size: 1.4rem;
}
.bl_treatmentCostDetail .bl_tableCollapse .invisalignTd {
	padding-bottom: 10px;
	border-bottom: none;
}
.bl_treatmentCostDetail .bl_tableCollapse s {
	display: block;
	margin: 0;
	font-size: 1.2rem;
}

.bl_infoCost dt {
	font-size: 2.0rem;
}
.bl_infoCost dt span {
	font-size: 2.4rem;
}


/*================================================================================

treatment index

================================================================================*/
.treatmentIndex .homeTreatmentBox .bl_mainArea {
	align-items: center;
	margin-bottom: 10px;
}
.treatmentIndex .homeTreatmentBox .bl_mainArea_body {
	padding: 20px;
}
.treatmentIndex .homeTreatmentBox .btn {
	margin: 0 0 40px;
	text-align: center;
}





/*================================================================================

3D

================================================================================*/
/* main img
================================================================================*/
.digitalAbout h2 {
	line-height: 1.6;
}
.digitalMainImg {
	width: 100%;
	margin: 0 auto 30px;
}

/* col2
================================================================================*/
.digital .bl_col2 .bl_card_img {
	margin-bottom: 20px;
}
.digital .bl_col2 .bl_card_ttl {
	margin-bottom: 20px;
	font-size: 1.8rem;
}

.digitalMerit .bl_col_item {
	padding: 20px;
}
.digitalMerit .bl_col2 .bl_card_img {
	margin-bottom: 6px;
}
.digitalMerit .bl_col2 .bl_card_img span {
	font-size: 3.0rem;
}

.digitalFacilities .bl_col_item {
	padding: 20px;
}

/* digitalAbout
------------------------------------------------*/
.digitalAboutOuter {
	padding: 20px;
}
.digitalAboutImg {
	width: 100%;
	height: auto;
	margin: 20px auto 0;
}
.digitalAboutTxt {
	-webkit-box-flex: 1;
	-ms-flex: auto;
	flex: auto;
	width: 100%;
}
.digitalAboutOuter h3 {
	text-align: center;
}
.digitalAboutOuter h3 span {
	font-size: 2rem;
	line-height: 2;
}
.digitalAboutLink {
	text-align: center;
}





/*================================================================================

dio

================================================================================*/
/* mainArea
================================================================================*/
.dio .bl_mainArea_outer {
	border-bottom: 1px solid #eee;
	background: var(--color-dio-accent);
}
.dio .bl_mainArea {
	display: flex;
	/* flex-direction: column; */
	margin-block: 0;
}
.dio .bl_mainArea_img img {
	flex: auto;
	width: 100%;
	height: clamp(320px, 100vh - 300px, 100vh);
}
.dio .bl_mainArea_body {
	position: absolute;
	top: 30%;
	left: 50%;
	transform: translate(-50% , -50%);
	padding: 2%;
}

/* .dio .bl_mainArea_body {
	position: relative;
	top: auto;
	left: auto;
	transform: translateY(0);
	padding: 20px 5px;
} */
.bl_mainArea .el_dio_logo {
	width: min(80%, 260px);
	margin: 0 auto 30px;
	filter: drop-shadow(0 0 10px #fff);
}
.dio .bl_mainArea_ttl {
	margin: 0 auto;
	padding: 10px 0;
	color: #fff;
	font-size: 3.0rem;
	text-align: center;
	line-height: 1.4;
}
.dio .bl_mainArea_subTtl {
	font-size: 2.0rem;
}
.dio .bl_mainArea_body .bl_mainArea_ttl {
	display: none;
}
.dio .bl_mainArea_outer > .bl_mainArea_ttl {
	display: block;
}

/* subMainArea
================================================================================*/
.dio .subMainArea {
	display: flex;
	flex-direction: column;
}
.dio .subMainArea_img {
	flex: auto;
}
.dio .bl_subMainArea_img img {
	/* height: 400px; */
	width: 420px;
}
.dio .bl_subMainArea_body {
	top: auto;
	bottom: 20px;
	right: 50%;
	transform: translate(50%, 0);
	margin: 0 auto;
	width: clamp(280px, 100% - 40px, 300px);
	padding: 20px;
	/* border: 4px double var(--color-treatment); */
	background-color: rgba(255, 255, 255, 0.95);
}
.dio .bl_subMainArea_ttl {
	font-size: 2.4rem;
}
.dio .bl_subMainArea_ttl::before {
	margin-right: 6px;
	font-size: 2.4rem;
}
.dio .bl_subMainArea_body .bl_subMainArea_txt {
	margin-left: calc(2.6rem + 6px);
	font-size: 1.4rem;
}
.dio .bl_subMainArea_body .bl_subMainArea_txt:first-of-type {
	margin-bottom: 20px;
}

/* DIOとは
================================================================================*/
.bl_treatmentAbout .el_dio_aligner {
	width: 200px;
	margin: 0 auto 30px;
}
.bl_treatmentAbout .el_dio_logo {
	width: 200px;
	margin: 0 auto 20px;
}

/* 河原町歯科・矯正歯科クリニックが「DIOマウスピース矯正」を導入する理由
================================================================================*/
.bl_dioReason_header .bl_media {
	display: flex;
	flex-direction: column-reverse;
	margin: 0 auto 0;
	gap: 20px;
}
.bl_dioReason_header .bl_media_img {
	width: 200px;
}
.bl_dioReason_header .bl_media_body {
	margin-top: 0;
}
.bl_dioReason_header .bl_media_cap {
	margin: 0 auto 10px;
	/* border-bottom: 1px solid currentColor; */
}
.bl_dioReason_header h2 {
	margin: 0 -20px 20px;
	font-size: 2.4rem;
	text-align: center
}
.bl_dioReason_header .bl_media_autor {
	margin-bottom: 30px;
	text-align: center;
}
.bl_dioReason_list section {
	margin-bottom: 20px;
	padding: 20px;
}
.bl_dioReason_list section h3 {
	padding-left: 40px;
}
.bl_dioReason_list h3::before {
	content: counter(reasonNum);
	top: -2px;
	width: 30px;
	height: 30px;
	margin: 0;
	padding: 2px 0 0;
	font-size: 2.0rem;
}

.bl_dioReason_lead.bl_media {
	padding: 30px;
}
.bl_dioReason_lead .bl_media_img {
	width: 180px;
	margin: 0 auto;
}
.bl_dioReason_bottom {
	padding: 30px;
}

/* 「DIOマウスピース矯正」の特徴
================================================================================*/
.bl_dioFeature .bl_media {
	flex-direction: column-reverse;
}
.bl_dioFeature .bl_treatmentFeatureList .bl_treatmentFeature_num {
	margin-inline: auto;
}
.bl_dioFeature .bl_treatmentFeatureList .bl_treatmentFeature_ttl {
	font-size: 2.4rem;
	text-align: center;
}
.bl_dioFeature .bl_col3 .bl_col_item {
	width: 100%;
	margin: 5% 0 0;
}
.bl_dioFeature .bl_treatmentFeatureList2 .bl_treatmentFeature_ttl {
	font-size: 2.0rem;
}

/* 3つのコース
================================================================================*/
.bl_dioCourse {
	gap: 30px;
}
.bl_dioCourse_header .bl_dioCourse_img {
	width: 200px;
	margin: 0 auto;
}
.bl_dioCourse_body .bl_dioCourse_item {
	margin-bottom: 10px;
	padding: 20px;
}
.bl_dioCourse_body .bl_dioCourse_ttl {
	padding: 10px;
	font-size: 2.0rem;
}

/* 「DIOマウスピース矯正」の費用と流れ
================================================================================*/
.bl_dioPriceFlow .bl_col2 .bl_col_item {
	width: 100%;
	padding: 40px 0 0;
}
.bl_dioPriceFlow .bl_col2 .bl_col_item:first-of-type {
	padding: 0 0 40px;
	border-right: none;
	border-bottom: 1px solid #aaa;
}
.bl_dioPriceFlow .bl_col2 .bl_col_item:nth-of-type(-n+2) {
	margin-top: 0;
}

/* マウスピース矯正を検討されている方へ
================================================================================*/
.bl_dioMessage_lead.bl_media {
	flex-direction: column-reverse;
}
.bl_dioMessage_lead .bl_media_img {
  max-width: 240px;
}
.dio .bl_dioMessage_lead h2 {
	margin-inline: -20px;
	text-align: center;
}
.bl_dioMessage_lead  .bl_media_txt {
	text-align: center;
}

.dio .bl_dioMessage .el_h3 {
	padding-left: calc(2.0rem + 6px);
	font-size: 2.0rem;
}
.dio .bl_dioMessage .el_h3::before {
	top: 0;
	margin-right: 6px;
	font-size: 2.0rem;
}

/* セミナー・講演実績
================================================================================*/
.bl_dioSeminar {
	position: relative;
	background: url(/dio/img/seminar_bg_sp.jpg) no-repeat right -220px top;
	background-size: cover;
}
.bl_dioSeminar .inner {
	width: 70%;
	margin: 0 auto 30px 0;
}

.bl_dioSeminar_list {
	padding: 20px;
}


/* DIO概要ボックス
================================================================================*/
.bl_dioBox {
	padding: 30px;
}
.bl_dioBox .el_dio_logo {
	width: 200px;
	margin: 0 auto 20px;
}
.treatment .bl_dioBox h2,
.home .bl_dioBox h2 {
	font-size: 3.0rem;
}
.bl_dioBox .bl_media {
	gap: 20px;
	margin-inline: -20px;
	padding: 20px;
}
.bl_dioBox .bl_media_copy {
	font-size: 2.4rem;
	text-align: center;
}
.bl_dioBox .bl_media_img {
	width: 300px;
	margin: 0 -60px 0 0;
}

.bl_dioBox .bl_subMainArea_body {
	text-align: center;
}


/* マウスピース矯正ボックス
================================================================================*/
.bl_mouthpieceBox {
	width: calc(100% + 20px);
	margin: 0 -10px 50px;
	padding: 20px;
}
.home .bl_mouthpieceBox {
	width: 100%;
	margin: 0 0 50px;
}
.bl_mouthpieceBox h2 {
	margin: 0 0 20px;
	font-size: 1.9rem;
	text-align: center;
}
.bl_mouthpieceBox h2 .bl_mouthpieceBox_num {
	margin: 0 auto 16px;
	font-size: 1.6rem;
}
.bl_mouthpieceBox_img {
	width: 100%;
	height: auto;
	margin: 20px auto 0;
}
.bl_mouthpieceBox_txt {
	flex: auto;
	width: 100%;
}



/*================================================================================

保険医療機関における書面掲示

================================================================================*/
/* tit;e
================================================================================*/
.infoUnder.medicalNotice .title .titleText {
	top: 40px;
}
/* h
================================================================================*/
.medicalNotice h2 span {
	display: inline-block;
	margin-left: 0;
}





/*================================================================================

ドクターレポート / CTA

================================================================================*/
/* セミナー・講演実績
================================================================================*/
.bl_CtaSeminar {
	position: relative;
	background: url(/dio/img/seminar_bg_sp.jpg) no-repeat right -220px top;
	background-size: cover;
}
.bl_CtaSeminar .inner {
	width: 70%;
	margin: 0 auto 30px 0;
}

.bl_CtaSeminar_list {
	padding: 20px;
}


/*================================================================================

ティースジュエリー

================================================================================*/
/* ティースジュエリー完成まで
================================================================================*/
.teethJewelry .bl_treatmentFlowList_ttl {
	font-size: 2.0rem;
}

.teethJewelry .bl_treatmentCostDetail .bl_tableSeparate tbody th {
	font-size: 1.8rem;
}
.teethJewelry .bl_treatmentCostDetail .bl_tableSeparate tbody td {
	font-size: 2.0rem;
}










/*================================================================================

スタッフ募集

================================================================================*/
/* 見出し
================================================================================*/
.recruit.under .outlineTtl {
	margin-bottom: 30px;
	font-size: 2.4rem;
}
.recruit .el_h3 {
	margin-bottom: 30px;
	font-size: 2.0rem;
}

/* 職種リンク
================================================================================*/
.bl_recruitLink.bl_col3 .bl_col_item {
	margin-top: 10px;
}
.bl_recruitLink.bl_col3 .bl_col_item:first-of-type {
	margin-top: 0;
}

/* 概要
================================================================================*/
.recruit .inner {
	margin-bottom: 10px;
}

/* 募集要項
================================================================================*/
.bl_guideline {
	margin: 0 0 30px;
}
.bl_guideline dt {
	width: 100%;
	padding: 10px 0 5px;
	border-top: 1px solid var(--color-gray-light);
	border-bottom: 1px dashed var(--color-gray-light);
	color: var(--color-primary);
}
.bl_guideline dd {
	width: 100%;
	padding: 14px 0 30px 10px;
	border-top: none;
}
.bl_guideline dt:last-of-type {
	border-bottom: 1px dashed var(--color-gray-light);
}
.bl_guideline dd:last-of-type {
	border-bottom: 1px solid var(--color-gray-light);
}

/* トップページ リクルートバナー
================================================================================*/
.recruitBnr {
	flex-direction: column;
	width: 100%;
	margin-bottom: 30px;
}
.recruitBnrBody {
	flex: none;
	width: 100%;
	margin: 0 0 0px;
	padding: 20px;
	text-align: center;
}
.recruitBnrTtl {
	margin: 0 auto 14px;
	font-size: 2.0rem;
	line-height: 2.3;
}
.recruitBnrTtl span:not(.strongFull) {
	padding: 8px 10px 6px;
}
.recruitBnrImg {
	flex: none;
	width: 100%;
	min-width: auto;
}
.recruitBnrImg img {
	object-fit: cover;
	position: relative;
}
.recruitBnrBody p {
	margin-bottom: 0;
}
.recruitBnrBody ul {
	display: inline-block;
	text-align: center;
}
.recruitBnrBody li {
	text-align: left;
}

/* サイトトップ用
------------------------------------------------*/
.home_recruit_ttl {
	margin: 0 0 20px !important;
	font-size: 2.4rem !important;
}
.home_recruit_ttl span {
	margin: 0 auto 10px;
	padding: 8px 10px 6px;
	font-size: 1.8rem;
}


/* ハンバーガーメニュー リクルートバナー
================================================================================*/
.drawer_nav_wrapper .recruitBnrBody {
	margin-bottom: 0;
}
.drawer_nav_wrapper .recruitBnrTtl {
	font-size: 1.8rem;
	line-height: 1.6;
}



}/*---- デバイス別スタイル / スマートフォン ----*/



/* iPhone5サイズの分岐
================================================================================*/
@media only screen and (max-width: 360px) {


/* feature
------------------------------------------------*/
#feature li .featureImg {
	display: none;
}


}/*---- iPhone5サイズの分岐 ----*/
