/*
Theme Name:     tanjifriend-child
Description:    
Author:         tanjifriend
Template:       habakiri
*/

/*フォント全体設定*/
body {
font-family: 'Noto Sans JP', sans-serif;
overflow-x: hidden;
}

_::-webkit-full-page-media, _:future *, :after, :before {
box-sizing: border-box;
}
/*---------------------------------------------
ヘッダーロゴ*/
.head_bg_top{
background: #9ac7d7;
width: 100%;
height: 5px;
}
.site-branding img:frist-child{
width:150px;
height:auto;
padding-top:50px;
}
@media only screen and (max-width: 767px) {
.head_bg_top{display: none;}
}

.img_logo_w{
width:150px;
vertical-align: unset;
margin: 0 25px 0 0;
}
.row-height_head .col-md-9 h1 {
margin:0;
font-size:12px!important;
}
.head_midashi{
padding: 0;
}
.head_midashi2,.head_midashi3{
display: inline-block;
}
.head_midashi3{
display:flex;
flex-direction:column;
gap:10px;
padding:25px 0;
}
.head_midashi h1{
font-size: 14px;
margin:0;
}
.head_yoyaku_otoiawase table tr td{
vertical-align: top;
}
.head_yoyaku_otoiawase h3{
font-size:30px;
font-family: 'Sawarabi Gothic', sans-serif;
font-weight: bold;
}
.head_yoyaku_otoiawase h3 span{
font-size: 26px;
font-weight: normal;
margin: 0px 10px;
}
.head_yoyaku_otoiawase table tr td img{
width:122px;
}
.head_yoyaku_otoiawase table tr td a{
text-decoration:none;
}
.head_yoyaku_otoiawase table tr td a:hover{
opacity:.7;
}
@media (min-width: 992px){
.header--center .site-branding {
text-align: left;
padding: 0;
}
}
.header {
z-index: 100000;
}
.head_yoyaku_otoiawase>a {
display: inline-block;
background: #fff;
color: #059349!important;
padding: 7px 27px;
font-size: 20px;
font-weight: 600;
border-radius: 50px;
text-decoration: none;
margin-top: 0;
font-feature-settings: "palt";
transition: .3s;
}
.head_yoyaku_otoiawase>a:hover{
opacity:.7;
}
@media (max-width: 1200px){
.head_yoyaku_otoiawase>a {
font-size: 16px;
}
}
@media (max-width: 992px){
.head_midashi3 {
padding: 25px 0 25px 20px;
}
}
@media (max-width: 576px){
.head_midashi3 {
padding: 4px 0 9px 30px;
gap:0;
}
.site-branding__heading {
text-align: left;
}
}

/*---------------------------------------------
Gナビ
-----------------------------------------------*/
nav.global-nav{
background-image: url("./img/gnav-bg.jpg");
background-repeat: repeat;
}
.responsive-nav .menu>.menu-item>a:hover{
box-shadow: 0px 2px 0px #029c58;
bottom: 0;
content: "";
display: block;
transition: all .3s ease;
-webkit-transition: all .3s ease;
width: 0;
}
.responsive-nav .menu>.menu-item>a:hover{
width: 100%;
}
/*---------------------------------------------
トップ画像
-----------------------------------------------*/

/*---------------------------------------------
医院名
-----------------------------------------------*/
.site-branding__heading {
font-size:36px;
font-weight:bold;
}
@media (min-width: 480px){
.site-branding__heading {
font-size: 36px;
}
}
.site-branding__heading a{
color:#059349!important;
text-decoration: none;
}
/*---------------------------------------------
セカンド大見出し
-----------------------------------------------*/
.page-header {
background-image: url("./img/midashi-bg-blue.jpg");
background-size: contain;
background-repeat: repeat;
color: #029c58!important;
padding:34px 0!important;
position:relative;
top: 23px;
}
/*.page-header:before {
content: '';
background: url(img/s_midashi.png) no-repeat center center;
background-size: contain;
position: absolute;
top: -15px;
left: 0;
right: 0;
width: 100%;
height: 152px;
}*/
.responsive-nav li ul {
opacity: 0;
visibility: hidden;
width: auto;
transition: visibility 0.1s ease-in, opacity 0.1s ease-in;
background:url(img/menu.png) no-repeat left center;
background-size:contain;
width:100%;
height:200px;
}



.responsive-nav > * > ul > li > ul {
position: absolute;
top: 25px;
left: 0;
width: 550px;
height: 400px;
padding: 15px;
}

.responsive-nav .sub-menu .menu-item {
text-align: left;
display: inline-block;
position: relative;
top: 60px;
width: 170px;
}

/*.sub-menu .responsive-nav:after{
content:'';
background:url(img/menu.png) no-repeat left center;
background-size:contain;
position:absolute;
top:0;
left:0;
width:100%;
height:200px;
}*/
.responsive-nav .menu-item {
text-align: left!important;
}
.responsive-nav a {
color: #fff!important;
font-size: 15px !important;
font-weight: 700;
letter-spacing: 0.1em;
}
.responsive-nav .sub-menu a {
background-color: unset!important;
color: white!important;
font-size: 15px!important;
}
.responsive-nav .sub-menu a:before {
font-family: "FontAwesome";
content: "\f04b";
font-weight: 900;
padding-right : 5px;/*文字との隙間*/
color: white;/*アイコンの色*/
display:inline;
}
.responsive-nav .sub-menu a:hover {
opacity: .7;
}
/*---------------------------------------------
midashi*/
.section_midashi_bg{
position:relative;
text-align:center;
color:#029c58;
margin: 100px 0;
font-size: 2.8rem;
letter-spacing: 2px;
}
.section_midashi_bg01{
margin-top:60px!important;
}
.section_midashi_bg01 span{
font-size: 4.8rem;
vertical-align: sub;
}
.section_midashi_bg01:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg01:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.section_midashi_bg02:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 40%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg02:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 40%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.section_midashi_bg03:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg03:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.section_midashi_bg04:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg04:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.section_midashi_bg05:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 40%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg05:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 40%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.sec-target .txt-set .title-line-green {
margin: 0 0 25px;
font-size: 20px;
text-align: left;
line-height: 1.8;
}
.title-line-green {
display: inline-block;
color: #8FB412;
font-size:26px;
text-align: center;
letter-spacing: 0.2em;
line-height: 2;
border-bottom: 3px solid #d7edcd;
}
/*枠*/
.waku02 {
margin: 2em auto;
padding: 1em;
width: 100%;
background-color: #eafff3;
color: #000;
box-shadow: 0 0 5px 1px #c0c0c0;
border-radius: 10px;
}
/*リスト*/
.defaultlist
,.defaultlist li{
padding:0px;
margin:0px;
}

.defaultlist li{
list-style-type:none !important;
list-style-image:none !important;
margin: 5px 0px 5px 0px !important;
}

.list10{
counter-reset:li;   
}

.list10 li{
position:relative;
display: block;
padding:10px 0px 10px 30px; 
margin-left:0px !important;
}

li.list10-count:after {
counter-increment: li;
content: counter(li) ".";
position: absolute;
display: block;
text-align: center;
font-style: italic;
left: 0px;
top: -7px;
font-size: 30px;
color: #58b179;
font-family: 'Goudy Bookletter 1911',Georgia,serif;
}
/*---------------------------------------------
section*/
section{
margin:100px 0;
}
/*---------------------------------------------
section01*/
section.section01{
width:900px;
margin:0 auto;
}
.section01 h3{
margin-top:0;
font-size: 20px;
color: #029c58;
}
.content_l_1,.content_r_2,.content_l_3,.top_text_bg{
position:relative;
}
.content_l_1,.content_r_2,.content_l_3{
text-align:center;
}
.top_content_bg{
margin:100px auto;
}
.top_content_bg .content_l_1 .bg01_{
background: url(img/top_1.png) no-repeat;
background-size: cover;
position: absolute;
top: -50px;
left: 0;
width: 110px;
height: 110px;
z-index: 100;
}
.top_content_bg .content_r_2 .bg02_{
background:url(img/top_2.png) no-repeat;
background-size: cover;
position: absolute;
top: -50px;
right: 0;
width: 110px;
height: 110px;
z-index: 100;
}
.top_content_bg .content_l_3 .bg03_{
background:url(img/top_3.png) no-repeat;
background-size: cover;
position: absolute;
top: -50px;
left: 0;
width: 110px;
height: 110px;
z-index: 100;
}
.top_content_bg .col-md-6{
padding-left: 30px;
padding-right: 30px;
}

.top_text_bg_01,.top_text_bg_02,.top_text_bg_03{
margin-top: 30px;
}
/*
.top_text_bg:before{
content: '';
background: url(img/top_content_text_bg.png) no-repeat;
background-size: contain;
position: absolute;
top: 100%;
left: 0;
right: 0;
width: 90%;
height: 100%;
z-index: 100;
margin: 0 auto;
}*/
/*---------------------------------------------
section02*/
section.section02{
width: 805px;
margin: 60px auto 0;
}
.bg_line{}
.bg_line ul{
flex-wrap: wrap;
display: flex;
padding: 0;
margin-bottom: 75px; 
}
.bg_line ul li{
background: url("./img/top-menu-btn.png") no-repeat;
background-size: cover;
padding: 5px;
margin: 10px;
font-size: 1.4rem;
width: 141px;
height: 141px;
text-align: center;
-webkit-box-align: center;
-moz-box-align: center;
-o-box-align: center;
-ms-box-align: center;
box-align: center;
color: white;
}
.bg_line ul li:hover{
opacity:0.7;
}
.bg_line ul li a{
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
color: white;
width: 100%;
height: 100%;
text-decoration: none;
font-weight: 900;
font-size: 15px;
letter-spacing: 1px;
}
/*---------------------------------------------
section03*/
section.section03{
width:845px;
margin:0 auto;
}
/*画像拡大*/
.scales_box {
vertical-align: middle;
}
.scales_box ul{
text-align: center;
margin:0;
}
.scales_box ul li{
width: 155px;
display: inline-block;
margin: 0 37px;
vertical-align: middle;
position: relative;
overflow: hidden;
}
.scales_box ul li a p{
width: 215px;
border:2px solid #fff;
color:white;
font-size:2.4rem;
font-weight: bold;
margin: 0;
padding: 30px 0;
position: absolute;
top: 50%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
.scales_box ul li a p span{
font-size: 1.4rem;
}
/*.scales_box ul li a img{
-moz-transition: -moz-transform 0.5s;
-webkit-transition: -webkit-transform 0.5s;
-o-transition: -o-transform 0.5s;
-ms-transition: -ms-transform 0.5s; 
transition-duration: 0.5s; 
}
.scales_box ul li a:hover .scale_img {
-webkit-transform: scale(1.2,1.2);
-moz-transform: scale(1.2,1.2);
-o-transform: scale(1.2,1.2);
-ms-transform: scale(1.2,1.2);
transform: scale(1.2,1.2);
cursor: pointer;
}
.scales_box ul li a img:hover {
-webkit-transform: scale(1.2,1.2);
-moz-transform: scale(1.2,1.2);
-o-transform: scale(1.2,1.2);
-ms-transform: scale(1.2,1.2);
transform: scale(1.2,1.2);
cursor: pointer;
}*/
/*---------------------------------------------
section04*/
section.section04{
background: url(img/staff_bg.png);
background-size: contain;
padding: 50px;
}
.section04_h3{
font-size: 16px;
font-weight: bold;
}
.section04_img_text{
margin: 10px 0 0 0;
color: #8c8c8c;
font-weight: bold;
}
/*---------------------------------------------
section05*/
section.section05{
width:800px;
margin:0 auto;
}
.kuchikomi{
width: 100%;
height: auto;
border: 2px solid #029c58;
position:relative;
padding: 30px;
}
.kuchikomi .row{
padding: 0 0 20px;
}
.kuchikomi:before{
content:'';
background: url(img/kuchikomi_bg_top.png) no-repeat right center;
background-size: contain;
width: 100%;
height: 50px;
position: absolute;
top: -50px;
right: 5%;
}
.kuchikomi:after{
content:'';
background: url(img/kuchikomi_bg_bottom.png) no-repeat left center;
background-size: contain;
width: 100%;
height: 50px;
position: absolute;
bottom: 0;
left: 0;
}
.kuchikomi .col-md-4 img{
width: 90%;
height: auto;
text-align:center;
}
.tel_section05{
border:1px solid #029c58;
position:relative;
text-align:center;
margin:0;
padding:0;
}
/*.tel_section05:before{
content: '';
background: url(img/tel.png) no-repeat left;
background-size: contain;
position: absolute;
width: 5%;
height: 32px;
top: 16px;
left: 18%;
}*/
.tel_section05 p{
color: #029c58;
font-size: 1.8rem;
font-weight: bold;
letter-spacing: .3rem;
margin: 0;
}
.tel_section05 p img{
vertical-align: text-top;
}
.tel_section05 p:first-child{
font-size: 3rem;
font-weight: bold;
letter-spacing: .4rem;
text-indent: 1rem;
margin: 0;
padding: 0;
}
.yoyaku_section05{
text-align:center;
}
.yoyaku_section05 a:hover{
opacity:.7;
}
.yoyaku_section05 a img{
width:250px;
}
/*---------------------------------------------
section06*/
section.section06 {
width: 950px;
margin: 0 auto;
padding: 0 0 100px;
}
.section06_bg{
position:relative;
text-align: center;
}
.section06_bg:before {
content: '';
background: url(img/top_text_bg_.png) no-repeat;
background-size: contain;
position: absolute;
bottom: -70%;
left: 0;
right: 0;
width: 100%;
height: 80px;
z-index: 100;
margin: 0 auto;
}
.section06 h3{
margin: 0 0 10px;
font-size: 1.8rem;
font-weight: bold;
}
.section06 h3{
margin: 0 0 10px;
font-size: 1.8rem;
font-weight: bold;
}
/*---------------------------------------------
section ブログ*/
section.blog{
margin: 0 0 80px;
}
@media only screen and (min-width: 767px) {
section.blog{
margin: 0 0 50px;
}
}
.inner dl dt{
font-size: 18px;
}
.inner dl dd{
border-bottom: 1px solid #029c58;
margin-bottom: 20px;
font-size: 15px;
}
.inner dl dd a{
text-decoration: none;
}
.sub-page-contents > .container-fluid{
width: 920px;
margin: 0 auto;
}
aside#sub{
display: none;
}
@media only screen and (max-width: 480px) { 
.sub-page-contents > .container-fluid {
width: 100%;
margin: 0 auto;
}
}
/*section_footer*/
.section_footer{
background:#d7edcd;
}
.section_footer_width{
width:1025px;
margin:0 auto;
}
.information_{
width:950px;
margin:68px auto 0;
background:white;
border-radius: 10px;
}
.clinic_information{
background: url(img/clinic_information_bg.png) no-repeat center center;
background-size: cover;
position: relative;
left 0;
right: 0;
width: 100%;
height: 98px;
margin: 0 auto;
}
.clinic_information_{
background: url(img/clinic_information_bg.png) no-repeat center center;
background-size: cover;
position: relative;
left: -5%;
right: 0;
width: 110%;
height: 98px;
margin: 0 auto;
}
.information_bg{
position:relative;
padding: 50px 50px 0;
}
.information_bg_{
position: relative;
padding: 81px 65px 95px;
margin: 0 auto;
width: 720px;
background-image: url("./img/blog-list-bg.jpg");
background-size: contain;
margin-bottom: 60px;
}
.information_bg_::before , .information_bg_::after {
content: '';
height: 15px;
width: 100%;
background-image: url("./img/blog-list-border.jpg");
background-size: contain;
position: absolute;
margin: auto;
left: 0;
}
.information_bg_::before {top: 0;}
.information_bg_::after {bottom: 0;}
/*メールフォーム*/
.formbox {
/*width: 1024px;*/
margin: 0px auto;
padding: 0px 0px 30px;
}
.formtxt {
margin:;
}
.formheight {
min-height: 450px;
}
.inqury_table, .inqury_table th, .inqury_table td {
border: 0px;
border-spacing: 0;
}
.inqury_table th, .inqury_table td {
border-bottom: solid 1px #FFFFFF;
}
.inqury_table tbody th {
/*background: #5DC4F0;*/
font-weight: bold;
font-size: 1em;
text-align: left;
padding: 0 15px;
}
.inqury_table tbody th span {
display: inline;
margin-left: 5px;
margin: 0 4px 0 6px;
padding: 1px 4px;
color: #ffffff;
font-size: 11px;
font-weight: lighter;
background: #ff6666;
}
.inqury_table tbody tr td {
/*background: #DCF2FC;*/
text-align: left;
font-size: 1em;
padding: 10px 15px;
}
input[type="radio"], input[type="checkbox"] {
margin-right: 7px;
}
.inqury_table .examc .wpcf7-list-item {
display: block;
padding-bottom: 5px;
}
/*.inqury_table ul li {
display: inline;
list-style: none;
padding-right: 20px;
}*/
.txtc {
text-align: center;
margin-top: 10px;
}
/*.txtc input {
font-size: 17px;
padding: 5px;
color: #fff;
padding: 10px 10px;
cursor: pointer;
width: 400px;
background: linear-gradient(#ff8d89, #fa605c);
border: 1px solid #fa605c;
text-align: center;
}*/
.formprivacy {
margin-bottom: 15px;
}
.inqury_table {
margin-top: 1rem;
}
.inqury_table dl {
display: table;
width: 100%;
margin-bottom: 0;
}
.inqury_table dt, .inqury_table dd {
padding: 10px 15px;
border-bottom: #fff solid 1px;
}
.inqury_table dt {
display: table-cell;
font-weight: bold;
width: 25%;
background: #d7edcd;
vertical-align: middle;
}
.inqury_table dd {
display: table-cell;
width: 75%;
background: #e5f9dc;
}
.inqury_table .needed {
display: inline;
margin-left: 5px;
margin: 0 4px 0 6px;
padding: 1px 4px;
color: #ffffff;
font-size: 11px;
font-weight: lighter;
background: #ff6666;
}
.radiobox_ span.wpcf7-list-item {
display: block;
margin: 0 0 0 1em;
}
.red_{
color:red;
}
.sp_hide_s{
display:block;
}
.sp_hide_sp{
display:none;
}
@media screen and (max-width: 480px) {
.sp_hide_s{
display:none;
}
.sp_hide_sp{
display:block;
}
.radiobox_ span.wpcf7-list-item {
display: inline-block;
margin: 0 0 0 1em;
}
}
/*---------------------------------------------
フッター
-----------------------------------------------*/
.footer {
background-color: #e0f5e4!important;
}
.footer_logo{
text-align:center;
margin: 0 0 60px;
}
.footer_logo img{
width:204px;
}
.parking{
margin:15px 0;
}
.footer_h3_bg h3{
text-indent: 3.5rem;
font-weight: bold;
font-size: 1.6rem;
letter-spacing: .2rem;
margin: 0 0 10px;
position:relative;
}
.footer_h3_bg h3:before{
content:'';
background: url(img/footer_s.png) no-repeat left;
background-size: contain;
position: absolute;
width:10%;
height: 40px;
top: -10px;
left: 0;
}
.row-height {
width:1025px;
margin:0 auto;
display: flex;
flex-wrap: wrap;
}
.row-height .col-md-6 {
padding-left: 25px;
padding-right: 25px;
}
.footer_table_accses{
width:100%;
}
.footer_table_accses tr th,.footer_table_accses tr td{
font-size: 1.5rem;
letter-spacing: .3rem;
font-weight: bold;
}
.tel_{
border:1px solid #029c58;
position:relative;
text-align:center;
margin: 40px 0;
padding: 10px 0;
}
.tel_:before{
content: '';
background: url(img/tel.png) no-repeat left;
background-size: contain;
position: absolute;
width: 5%;
height: 32px;
top: 16px;
left: 18%;
}
.tel_ p{
color: #029c58;
font-size: 1.8rem;
font-weight: bold;
letter-spacing: .3rem;
margin: 0;
}
.tel_ p:first-child{
font-size: 3rem;
font-weight: bold;
letter-spacing: .4rem;
text-indent: 1rem;
margin: 0;
padding: 0;
}
.footer_table{
border-collapse: collapse;
background:white;
width:100%;
}
@media only screen and (max-width: 767px) {
.footer_table {
width: 360px;
margin: 0 auto;
}
}
.footer_table td,.footer_table th{
border: 2px solid #059349;
text-align: center;
color: #059349;
padding: 10px 0;
font-size: 15px;
letter-spacing: .2rem;
}
.footer_table td{
border: 2px solid #059349;
text-align: center;
color: #059349;
padding: 10px 0;
width: 50px;
font-size: 15px;
font-weight: 700;
font-feature-settings: "palt" 1;
}
.contact_us .contact_otoiawase,.contact_us .contact_yoyaku{
text-align:center;
}
.footer_menu_bg{
background: url(img/footer_menu_bg.png) no-repeat center center;
background-size: cover;
width: 100%;
height: auto;
margin-top: 50px;
}
.footermenu{
padding:0;
}
.footermenu .col-md-6{
padding-left: 15px;
padding-right: 15px;
}
.footermenu .col-md-6:first-child{
padding-left: 35px;
padding-right: 15px;
}
.footermenu .col-md-6:last-child{
padding-left: 0;
padding-right: 15px;
}
.footermenu h3{
font-size:2.2rem;
font-weight: bold;
}
#menu-footer_menu01,#menu-footer_menu02{
list-style:none;
padding:0;
}
#menu-footer_menu01 li,#menu-footer_menu02 li{
font-size:1.4rem;
text-align:left;
margin: 2px 0;
}
.footer-widget-area a {
color: #565656!important;
font-weight: bold;
text-decoration: none;
}
#menu-footer_menu01 li:before {
font-family: "FontAwesome";
content: "\f105";
font-weight: 900;
padding-right : 5px;/*文字との隙間*/
color: #777;/*アイコンの色*/
}
#menu-footer_menu02 li:before {
font-family: "FontAwesome";
content: "\f105";
font-weight: 900;
padding-right : 5px;/*文字との隙間*/
color: #777;/*アイコンの色*/
}
.parking_sp_,.news_blog_sp{
display:none;
}
.parking_sp{
display:block;
}
.copyright {
background-image: url("./img/copyright-bg.jpg");
background-size: contain;
background-repeat: repeat;
color: white;
font-size: 12px;
padding: 5px 0;
}
.copyright_{
text-align: center;
margin: 0 auto;
font-size: 11px;
font-weight: 500;
}
.copyright_ a{
color:white;
text-decoration: none;
}
@media (max-width: 576px) {
#footer{
margin-top:50px;
}
}
/*---------------------------------------------
セカンドページ
-----------------------------------------------*/
.top_content_bg_s{
margin:150px auto;
}
.top_text_bg_s,.top_text_bg_s_{
position: relative;
}
.top_text_bg_s:before{
content: '';
background: url(img/s_content_bg1.png) no-repeat;
background-size: contain;
position: absolute;
bottom: -60px;
left: 0;
right: 0;
width: 100%;
height: 100px;
z-index: 100;
margin: 0 auto;
}
.top_text_bg_s_:before{
content: '';
background: url(img/s_content_bg2.png) no-repeat;
background-size: contain;
position: absolute;
bottom: -60px;
left: 0;
right: 0;
width: 100%;
height: 100px;
z-index: 100;
margin: 0 auto;
}
/*---------------------------------------------
リストボックス*/
.list_box{
list-style: none;
padding: 0;
}
.list_box li{
margin: 0 0 60px 0;
}
.list_box li dl{}
.list_box li dl dt{
background: url(img/s_midashi.png) no-repeat center center;
background-size: contain;
padding: 43px 10px;
border: 1px solid #ebf6ee;
position: relative;
border-radius: 5px 5px 0 0;
font-size: 1.7rem;
text-align: center;
}
.list_box li dl dt:before{
content: '';
background: #58b97d21;
position: absolute;
top: 0;
left: 0;
right: 0;
width: 100%;
height: 100%;
}
.list_box li dl dd{
border: 1px solid #ebf6ee;
padding: 55px 30px;
border-radius: 0 0 5px 5px;
font-size: 1.6rem;
}
/*---------------------------------------------
ボタン*/
.a_btn a {
width: 230px;
height: 50px;
}
.a_btn a {
display: inline-block;
width: 230px;
height: 50px;
text-align: center;
text-decoration: none;
line-height: 50px;
outline: none;
}
.a_btn a::before,
.a_btn a::after {
position: absolute;
z-index: -1;
display: block;
content: '';
}
.a_btn a,
.a_btn a::before,
.a_btn a::after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
-webkit-transition: all .3s;
transition: all .3s;
}
.a_btn a {
position: relative;
z-index: 2;
background-color: #41b892;
border: 2px solid #41b892;
color: #fff;
line-height: 50px;
text-decoration: none;
font-size:1.2rem;
}
.a_btn a:hover {
background-color: #fff;
border-color: #41b892;
color: #41b892;
}
.a_btn a::before,
.a_btn a::after {
left: 0;
width: 100%;
height: 50%;
background-color: #41b892;
}
.a_btn a::before {
top: 0;
}
.a_btn a::after {
bottom: 0;
}
.a_btn a:hover::before,
.a_btn a:hover::after {
height: 0;
background-color: #41b892;
}
/*---------------------------------------------
見出しスタイル*/
.midashi02 h3 {
position: relative;
padding-bottom: .5em;
border-bottom: 4px solid #ccc;
}
.midashi02 h3::after {
position: absolute;
bottom: -4px;
left: 0;
z-index: 2;
content: '';
width: 20%;
height: 4px;
background-color: #3498db;
}
/*---------------------------------------------
見出しスタイル*/
.midashi03 h3{
position: relative!important;
background: #eafff3!important;
box-shadow: 0px 0px 0px 5px #eafff3!important;
border: solid 2px white!important;
padding: 0.2em 0.5em!important;
}

.midashi03 h3:after {
position: absolute;
content: '';
left: -7px;
top: -7px;
border-width: 0 0 15px 15px;
border-style: solid;
border-color: #fff #fff #7ceab7;
box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
.midashi05{
padding-left: 15px;
border-left: 8px solid #d7edcd;
color: #444;
font-size: 16px;
font-weight: normal;
padding: 3px 10px;
margin: 0 0 10px;
}
/*---------------------------------------------
枠スタイル*/
.wk{
border: 1px solid #d7edcd;
border-radius: 5px;
}
.wk dt{
background:#d7edcd;
padding: 10px;
}
.wk dd{
padding: 20px 15px;
}
/*リストスタイル*/
ul.cp_list {
padding: 0.5em;
list-style-type: none;
}
ul.cp_list li {
position: relative;
padding: 0.5em 1em 0.5em 2.3em;
margin-bottom:5px;
border-bottom: 1px solid rgb(65, 184, 146);
width: 65%;
}
ul.cp_list li:after,
ul.cp_list li:before{
content:'';
position: absolute;
border-radius: 50%;
}
ul.cp_list li:before {
top: 50%;
left: 0.2em;
width: 17px;
height: 17px;
background: rgb(88, 177, 121);
transform: translateY(-50%);
}
ul.cp_list li:after {
top: 1.1em;
left: 0.7em;
width: 14px;
height: 14px;
background: rgba(88, 177, 121, 0.43);
}
/*リストスタイル幅77%*/
ul.cp_list77 {
padding: 0.5em;
list-style-type: none;
}
ul.cp_list77 li {
position: relative;
padding: 0.5em 1em 0.5em 2.3em;
margin-bottom:5px;
border-bottom: 1px solid rgb(65, 184, 146);
width: 95%;
}
ul.cp_list77 li:after,
ul.cp_list77 li:before{
content:'';
position: absolute;
border-radius: 50%;
}
ul.cp_list77 li:before {
top: 50%;
left: 0.2em;
width: 17px;
height: 17px;
background: rgb(88, 177, 121);
transform: translateY(-50%);
}
ul.cp_list77 li:after {
top: 1.1em;
left: 0.7em;
width: 14px;
height: 14px;
background: rgba(88, 177, 121, 0.43);
}
/*リストスタイル幅95%*/
ul.cp_list95 {
padding: 0.5em;
list-style-type: none;
}
ul.cp_list95 li {
position: relative;
padding: 0.5em 1em 0.5em 2.3em;
margin-bottom:5px;
border-bottom: 1px solid rgb(65, 184, 146);
width: 95%;
}
ul.cp_list95 li:after,
ul.cp_list95 li:before{
content:'';
position: absolute;
border-radius: 50%;
}
ul.cp_list95 li:before {
top: 50%;
left: 0.2em;
width: 17px;
height: 17px;
background: rgb(88, 177, 121);
transform: translateY(-50%);
}
ul.cp_list95 li:after {
top: 1.1em;
left: 0.7em;
width: 14px;
height: 14px;
background: rgba(88, 177, 121, 0.43);
}
/*枠*/
.flame28 {
position: relative;
margin: 2em auto;
width:90%;
padding: 25px 10px 7px;
border: 2px solid #59b079;
}
.flame28 .flame28-title {
position: absolute;
display: inline-block;
top: -2px;
left: -2px;
font-size:14px;
padding: 0 9px;
height: 25px;
line-height: 25px;
vertical-align: middle;
background: #59b079;
color: #ffffff;
font-weight: bold;
}
.flame28 p {
padding: 15px 20px;
margin: 0;
}
/*ul li*/
ul{
padding:0;
list-style:none;
}
/*---------------------------------------------
テーブル*/
section .table_ { width: 100%; }
section .table_ th, section .table_ td  { padding: 10px; border: 1px solid #ddd; }
section .table_ th  { background: #f4f4f4; }
.table_ th, .table_ td  { width: 20%; text-align: left; }
@media only screen and (max-width: 480px) { 
.table_ { margin: 0 -10px; }
.table_ tr {
display:block;
margin-bottom: 10px;
}
.table_ th {
display:block;
width: 100%;
}
.table_ td {
display: block;
width: 100%;
margin-left: 0;
border: none;
list-style: none;
margin: 0 auto;
}
}
.table_img_w_30 tr th{
width:30%;
text-align:center;
}
.table_img_w_30_l tr th{
width:30%;
}
/*テーブル*/
section .table_c { width: 100%; }
section .table_c th, section .table_c td  { padding: 10px; border: 1px solid #139045; }
section .table_c th  { background: #d7edcd; }
.table_c th, .table_c td  { width: 20%;}
.table_c th {text-align:center;}
@media only screen and (max-width: 480px) { 
.table_c { margin: 0 -10px; }
.table_c tr {
display:block;
margin-bottom: 10px;
}
.table_c th {
display:block;
width: 100%;
}
.table_c td {
display: block;
width: 100%;
margin-left: 0;
border: none;
list-style: none;
margin: 0 auto;
}
}
.table_img_w_30 tr th{
width:30%;
text-align:center;
}
.table_img_w_30_l tr th{
width:30%;
}
/*table_shika一般歯科*/
.table_shika tr th img{
width:200px;
height:auto;
}
/*table_shisyu 歯周病*/
.table_shisyu tr th{
border-left:1px solid #ddd;
border-right:1px solid #ddd;
border-bottom:1px solid #ddd;
}
.table_shisyu tr td{
border-bottom:1px solid #ddd;
border-left:1px solid #ddd;
border-right:1px solid #ddd;
}
.table_shisyu tr td img{
width:140px;
}
/*table_gishi 義歯・入れば*/
.table_gishi tr th{
width:33%;
}
.table_gishi tr th img{
width:190px;
}
/*table_setubi 設備*/
.setubi .col-md-6 p{
width:335px;
}
@media only screen and (max-width: 480px) {
.setubi .col-md-6 p{
width:100%;
}
}
.setubi_h5 h5{
margin-top:0;
}
/*医院案内マージン カラー*/
.annai{
margin:100px 0 10px;
}
.color039c57{
color:#039c57;
}
/*画像角丸*/
.img_radius{
border-radius: 15px;
}
.img_radius5{
border-radius: 5px;
}
/*---------------------------------------------
マージン*/
.mg0{
margin:0;
}
.mb50{
margin:50px 0;
}
.mb100{
margin:100px 0;
}
/*sp Gメニュー*/
.sp_g_nav{
display: none;
}
/*---------------------------------------------
sp調整
-----------------------------------------------*/
@media only screen and (max-width: 996px) {
.site-branding {
padding: 0;
}
.head_midashi {
padding: 0;
}
.header__content .header__col {
display: contents;
float: none;
padding-left: 0;
padding-right: 0;
vertical-align: middle;
}
/*.head_yoyaku_otoiawase table tr td img {
width: 80%;
}*/
.head_yoyaku_otoiawase h3 {
font-size: 30px;
font-family: 'Sawarabi Gothic', sans-serif;
font-weight: bold;
margin: 0;
}
.sp_g_nav{
display: block;
}
div#sp-icon {
width: 70px;
height: 70px;
position: absolute;
right: -40px;
top: 0px;
z-index: 999;
color: #0f9d5b;
}
.site-branding__heading {
font-size: 22px;
}
.img_logo_w {
width: 130px;
vertical-align: unset;
margin: 0 25px 0 0;
}
section.section01,section.section02,section.section03,section.section05,section.section06{
width:100%;
padding: 0 50px;
}
section.section04 {
width: 100%;
padding: 50px;
}
.section_midashi_bg {
position: relative;
text-align: center;
color: #029c58;
margin: 100px 0;
font-size: 2rem;
letter-spacing: 2px;
}
.section_midashi_bg01:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg01:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.section_midashi_bg02:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg02:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.section_midashi_bg03:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 20%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg03:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 20%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.section_midashi_bg04:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg04:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.section_midashi_bg05:before{
content: '';
background: url(img/bg_line_l.png) no-repeat left center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.section_midashi_bg05:after{
content: '';
background: url(img/bg_line_r.png) no-repeat right center;
background-size: contain;
width: 30%;
height: 100%;
position: absolute;
top: 0;
right: 0;
}
.information_ {
width: 100%;
margin: 0 auto;
background: white;
border-radius: 10px;
}
.information_bg_ {
position: relative;
padding: 50px;
margin: 0 auto;
width: 100%;
background: #eee;
margin-bottom: 60px;
}
.bg_line ul {
flex-wrap: wrap;
padding: 0;
/* display: block; */
margin: 0 auto 46px;
text-align: center;
width: 700px;
}
.bg_line ul li {
/*background: url(img/top_medical_care_subjects.png) no-repeat;*/
background-size: cover;
padding: 10px;
margin: 10px;
font-size: 1.6rem;
width: 155px;
height: 155px;
text-align: center;
color: white;
display: inline-flex;
}
.section06_bg:before {
content: '';
background: url(img/top_text_bg_.png) no-repeat center;
background-size: contain;
position: absolute;
bottom: -40%;
left: 0;
right: 0;
width: 100%;
height: 80px;
z-index: 100;
margin: 0 auto;
}
.scales_box ul li {
width: 150px;
display: inline-block;
margin: 0 10px;
vertical-align: middle;
position: relative;
overflow: hidden;
}
.scales_box ul li a p {
width: 140px;
border: 1px solid #fff;
color: white;
font-size: 2rem;
font-weight: bold;
margin: 0;
padding: 12px 0;
position: absolute;
top: 50%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
/*フッター*/
.container {
width: 100%;
}
.row-height {
width: 100%!important;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
}
.row-height .col-md-6 {
padding-left: 15px;
padding-right: 15px;
width: 50%;
}
.footer_table th {
border: 1px solid #029c58;
text-align: center;
color: #029c58;
padding: 10px 0;
font-size: 1.2rem;
letter-spacing: 1px;
}
.footer_table td {
border: 1px solid #029c58;
text-align: center;
color: #029c58;
padding: 0 5px;
font-size: 1.2rem;
letter-spacing: .2rem;
font-weight: bold;
width: auto;
}
.tel_:before {
content: '';
background: url(img/tel.png) no-repeat left;
background-size: contain;
position: absolute;
width: 5%;
height: 38px;
top: 10px;
left: 13%;
}
.tel_ p:first-child {
font-size: 2.6rem;
font-weight: bold;
letter-spacing: .4rem;
text-indent: 1rem;
margin: 0;
padding: 0;
}
.tel_ p {
color: #029c58;
font-size: 1.4rem;
font-weight: bold;
letter-spacing: .3rem;
margin: 0;
}
}
@media only screen and (max-width: 767px) {
.bg_line ul {
width: 366px;
}
}
/*spカラム*/
.sp_row,.sp_reverse{
display:block;
}
.sp_row_,.sp_reverse_,.sp_consultation_{
display:none;
}
@media only screen and (max-width: 991px) {
.head_yoyaku_otoiawase{
display: none;
}
}
@media only screen and (max-width: 767px) {
.bg_line ul li {
background-size: cover;
padding: 5px;
margin: 5px;
font-size: 15px;
width: 112px;
height: 112px;
text-align: center;
color: white;
display: inline-flex;
}
.sp_row,.sp_consultation{
display:none;
}
.sp_row_,.sp_consultation_{
display:block;
}
.top_content_bg .content_l_1 .bg01_ {
background: url(img/top_1.png) no-repeat center;
background-size: cover;
position: absolute;
top: -50px;
left: 10%;
width: 110px;
height: 110px;
z-index: 100;
}
.top_content_bg .content_r_2 .bg02_ {
background: url(img/top_2.png) no-repeat;
background-size: cover;
position: absolute;
top: -50px;
right: 10%;
width: 110px;
height: 110px;
z-index: 100;
}
.section01 h3 {
margin-top: 15px;
font-size: 20px;
color: #029c58;
}
/*フッター*/
.footer_table_accses tr th, .footer_table_accses tr td {
font-size: 1.4rem;
letter-spacing: .3rem;
font-weight: bold;
display: block;
}
.row-height .col-md-6 {
padding-left: 15px;
padding-right: 15px;
}
.row-height .col-sm-6 {
padding-left: 15px;
padding-right: 15px;
width: 50%;
}
.site-branding,.head_midashi {
padding: 0;
}
.header--fixed {
box-shadow: none;
}
}
@media only screen and (min-width: 767px) {
.row-height .col-md-6 {
padding-left: 25px;
padding-right: 25px;
width:50%;
}
}
@media only screen and (max-width: 700px) {
.scales_box ul li {
width: 230px;
display: block;
margin: 20px auto;
vertical-align: middle;
position: relative;
overflow: hidden;
}
.scales_box ul li a p {
width: 215px;
border: 2px solid #fff;
color: white;
font-size: 2rem;
font-weight: bold;
margin: 0;
padding: 35px 0;
position: absolute;
top: 50%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
}
@media only screen and (max-width: 600px) {
.row-height .col-md-6 {
padding-left: 15px;
padding-right: 15px;
width: 100%;
}
.row-height .col-sm-6 {
padding-left: 15px;
padding-right: 15px;
width: 50%!important;
}
.contact_otoiawase{
width:100%!important;
}
}
.sp_iframe_,.sp_f_ {
display:none;
}
@media only screen and (max-width: 480px) {
/*section.section02,.section_midashi_bg02{
display:none;
}*/
.site-branding__heading {
font-size: 20px;
font-weight: normal;
}
.head_midashi {
padding: 5px 0;
text-align: center;
}
.head_midashi h1 {
font-size: 10px;
margin: 3px 0px;
text-align: left;
}
.head_midashi2 {
display: inline-block;
margin-right: 0;
margin-left: 7px;
}
div#sp-icon {
width: 70px;
height: 70px;
position: absolute;
right: -15px;
top: 0px;
z-index: 999;
color: #0f9d5b;
}
.site-branding__heading {
font-size: 20px;
font-weight: 700;
}
.container {
margin:0;
padding:0;
width: 100%;
}
section {
margin: 0;
}
section.section01, section.section02, section.section03, section.section05, section.section06 {
width: 100%;
padding: 0;
}
section.section06 {
width: 90%;
padding: 0;
}
.section_midashi_bg01:after {
content: '';
background: none;
}
.section_midashi_bg01:before {
content: '';
background:none;
}
.section_midashi_bg02:after {
content: '';
background: none;
}
.section_midashi_bg02:before {
content: '';
background:none;
}
.section_midashi_bg03:after {
content: '';
background: none;
}
.section_midashi_bg03:before {
content: '';
background:none;
}
.section_midashi_bg04:after {
content: '';
background: none;
}
.section_midashi_bg04:before {
content: '';
background:none;
}
.section_midashi_bg05:after {
content: '';
background: none;
}
.section_midashi_bg05:before {
content: '';
background:none;
}
.top_illustration_ {
position: relative;
top: -8px;
}
.kuchikomi {
width: 100%;
height: auto;
border: none;
position: relative;
padding: 10px 5px 30px 5px;
}
.tel_section05 p img {
vertical-align: text-bottom;
width: 15px;
}
.sub-page-contents {
padding-top: 40px;
margin: 0 15px;
}
.top_content_bg .content_l_1 .bg01_ {
background: url(img/top_1.png) no-repeat;
background-size: cover;
position: absolute;
top: -60px;
left: 0;
right: 0;
width: 85px;
height: 85px;
z-index: 100;
margin: 0 auto;
} 
.top_content_bg .content_r_2 .bg02_{
background: url(img/top_2.png) no-repeat;
background-size: cover;
position: absolute;
top: -60px;
left: 0;
right: 0;
width: 85px;
height: 85px;
z-index: 100;
margin: 0 auto;
} 
.top_content_bg .content_l_3 .bg03_ {
background: url(img/top_3.png) no-repeat;
background-size: cover;
position: absolute;
top: -60px;
left: 0;
right: 0;
width: 85px;
height: 85px;
z-index: 100;
margin: 0 auto;
} 
.tel_section05 p {
color: #029c58;
font-size: 1.4rem;
font-weight: bold;
letter-spacing: .3rem;
margin: 0;
}
.tel_section05 p:first-child {
font-size: 2rem;
font-weight: bold;
letter-spacing: .4rem;
text-indent: 1rem;
margin: 0;
padding: 0;
}
.kuchikomi:after {
content: '';
background: url(img/kuchikomi_bg_bottom.png) no-repeat left center;
background-size: contain;
width: 100%;
height: 35px;
position: absolute;
bottom: 0;
left: 0;
}
.yoyaku_section05 a img{
width:60%;
margin: 20px 0 0;
}
.content_l_1 img, .content_r_2 img, .content_l_3 img{
width:100%;
}
.top_text_bg:before{
display:none;
}
.section01 h3 {
margin-top: 15px;
font-size: 20px;
color: #029c58;
}
.scales_box ul li {
width: 155px;
height: 155px;
display: inline-block;
margin: 0 auto;
vertical-align: middle;
position: relative;
overflow: hidden;
}
.scales_box ul li:first-child {display: block;}
.scales_box ul li:nth-child(2) {margin-right: 15px;}
.information_ {
width: 100%;
margin: 40px auto 0;
background: white;
border-radius: 10px;
}
.information_bg {
position: relative;
padding: 10px;
}
.clinic_information {
background: url(img/aergawg.png) no-repeat center center;
background-size: contain;
position: relative;
left: 0;
right: 0;
width: 100%;
height: 70px;
margin-right: -19px;
text-align: center;

}
.section_midashi_bg01 {
margin-top: 0px!important;
}
.top_content_bg_s {
margin: 77px auto;
}
/*フッター*/
.footer_logo img {
width: 150px;
}
.footer_logo {
text-align: center;
margin: 30px 0 30px;
}
.sp_iframe,.sp_f {
display:none;
}
.sp_iframe_,.sp_f_ {
display:block;
}
.contact_us{
display:none;
}
#execphp-2,#execphp-3{
padding:0;
width:100%;
}
.clinic_information_ {
background: url(img/irasuto_sp.png) no-repeat center;
background-size: contain;
position: relative;
bottom: -3px;
left: 0;
right: 0;
width: 100%;
height: 65px;
margin: 0 auto;
}
.parking {
margin: 30px 30px;
}
.footer_table_accses tr th{
display:none;
}
.footer_table_accses tr td{
text-align: center;
font-weight: bold;
font-size: 14px;
letter-spacing: 1px;
}
section.section04 {
background: url(img/staff_bg.png)no-repeat;
padding: 50px 20px;
}
.section_midashi_bg {
position: relative;
text-align: center;
color: #029c58;
margin: 90px 0 50px;
}
.information_bg_ {
position: relative;
padding: 30px 10px;
background: #eee;
margin-bottom: 30px;
width: 100%;
}
.inner{
text-align: left;
padding: 0 10px;
}    
.inner dl dd{
border-bottom: 1px solid #029c58;
}
.inner dl dd a{
text-decoration: none;
}
.parking_sp,.sp_reverse{
display:none;
}
.parking_sp_,.news_blog_sp,.sp_reverse_{
display:block;
text-align: center;
}
.section06_bg:before{
display:none;
}
.news_blog_sp a{
border: 1px solid #434343;
display: inline-block;
font-weight: bold;
padding: 0px 40px;
text-decoration: none;
}
.news_blog_sp a.news_sp{
color:#f4788f!important;
}
.news_blog_sp a.blog_sp{
color:#4cb39e!important;
}
.tel_ {
border: 1px solid #029c58;
position: relative;
text-align: center;
margin: 40px 20px;
padding: 5px 0;
}
.tel_ p:first-child {
font-size: 2.8rem;
font-weight: bold;
letter-spacing: .4rem;
text-indent: 1rem;
margin: 0;
padding: 0;
}
.tel_:before {
content: '';
background: url(img/tel.png) no-repeat left;
background-size: contain;
position: absolute;
width: 5%;
height: 32px;
top: 8px;
left: 8%;
}
.tel_ p {
color: #029c58;
font-size: 1.6rem;
font-weight: bold;
letter-spacing: .3rem;
margin: 0;
text-align: center!important;
}
.footermenu h3 {
font-size: 1.4rem;
text-align: left;
}
.footer-widget-area{
color: #555;
padding:0;
}
.footer_menu_bg {
background: url(img/footer_menu_bg.png) center center;
background-size: 100%;
width: 100%;
height: auto;
margin-top: 50px;
}
.copyright {
background-color: #96df75;
color: white;
font-size: 12px;
padding: 5px 0;
margin-bottom: 82px;
}
.sp_f_ p{
margin: 0 20px 0 20px;
font-size: 1.2rem;
}
.footer_h3_bg h3:before {
content: '';
background: url(img/footer_s.png) no-repeat center;
background-size: contain;
position: absolute;
width: 50%;
height: 40px;
top: -10px;
left: 0;
right: 0;
}
.footer_h3_bg h3 {
text-indent: 3.5rem;
font-weight: bold;
font-size: 1.6rem;
letter-spacing: .2rem;
margin: 0 0 10px;
position: relative;
text-align: center;
}
.footermenu {
padding: 35px 0 0;
}
.footermenu .col-md-6:last-child {
padding-left: 10px;
padding-right: 15px;
}
.footermenu .col-md-6:first-child {
padding-left: 50px;
padding-right: 15px;
}
}
/*sp固定予約ボタン*/
@media screen and (min-width:481px){
.footer_area{
display: none;
}	
}
@media screen and (max-width:480px){
.img_logo_w {
width: 80px;
vertical-align: unset;
margin: 0;
}
.footer_area {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
background-color: #64bf0a;
z-index: 10000;
}
.footer_area .footer_area_inner {
position: relative;
width: 50%;
margin: 0px auto;
padding: 0;
margin-right: 0px;
display: table-cell;
}
.footer_area .footer_area_inner .footer_area_inner_btn {
width: 85%;
padding: 11px 0;
font-size: 20px;
font-weight: bold;
margin-left: 15px;
line-height: 1.3;

}
.inquiry_btn:link, .inquiry_btn:visited {
color: #FFFFFF !important;
}
.midashi05 {
padding-left: 15px;
border-left: 8px solid #d7edcd;
color: #444;
font-size: 14px;
font-weight: normal;
padding: 3px 10px;
margin: 10px 0 10px;
}
.title-line-green {
display: inline-block;
color: #8FB412;
font-size: 15px;
text-align: center;
letter-spacing: 0.2em;
line-height: 2;
border-bottom: 3px solid #d7edcd;
}
ul.cp_list li {
position: relative;
padding: 0.5em 1em 0.5em 2.3em;
margin-bottom: 5px;
border-bottom: 1px solid rgb(65, 184, 146);
width: 100%;
}
ul.cp_list77 li {
position: relative;
padding: 0.5em 1em 0.5em 2.3em;
margin-bottom: 5px;
border-bottom: 1px solid rgb(65, 184, 146);
width: 100%;
}
ul.cp_list95 li {
position: relative;
padding: 0.5em 1em 0.5em 2.3em;
margin-bottom: 5px;
border-bottom: 1px solid rgb(65, 184, 146);
width: 100%;
}
.row .col-md-4{
text-align:center;
}
h2 {
font-size: 18px;
}
.annai {
margin: 0;
}
.annai .col-md-4 {
margin-bottom: 20px;
}
.a_btn{
text-align: center;
margin: 10px 0;
}
.list_box li dl dt {
background: none;
padding: 15px 10px;
border: 1px solid #ebf6ee;
position: relative;
border-radius: 5px 5px 0 0;
font-size: 12px;
text-align: center;
}
#main {
margin-bottom: 0;
}
.list_box li dl dd {
border: 1px solid #ebf6ee;
padding: 15px 5px;
border-radius: 0 0 5px 5px;
font-size: 1.2rem;
}
ul.cp_list li:after {
display: none;
}
ul.cp_list77 li:after {
display: none;
}
ul.cp_list95 li:after {
display: none;
}
.inqury_table dd {
display: block;
width: 100%;
background: #e5f9dc;
}
.inqury_table dt {
display: block;
font-weight: bold;
width: 100%;
background: #d7edcd;
vertical-align: middle;
}
.inqury_table dl {
display: block;
width: 100%;
margin-bottom: 0;
}
input,textarea{
width: 100%;
}
.global-nav{
padding-bottom: 30px;
}
.off-canvas-nav--dark > * > ul {
border-bottom: 1px solid #ffffff;
}
}

@media only screen and (max-width: 320px) {
.site-branding__heading {
font-size: 16px;
}
.img_logo_w {
width: 80px;
vertical-align: unset;
margin: 0;
}
.scales_box ul li a p {
width: 90%;
border: 2px solid #fff;
color: white;
font-size: 2rem;
font-weight: bold;
margin: 0;
padding: 30px 0;
position: absolute;
top: 50%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
.clinic_information {
background: url(img/aergawg.png) no-repeat center center;
background-size: contain;
position: relative;
bottom: -7px;
left: 0;
right: 0;
width: 100%;
height: 70px;
margin-right: -19px;
text-align: center;
}
.tel_ p:first-child {
font-size: 2.6rem;
font-weight: bold;
letter-spacing: .4rem;
text-indent: 1rem;
margin: 0;
padding: 0;
}
.tel_ p {
color: #029c58;
font-size: 1.4rem;
font-weight: bold;
letter-spacing: .3rem;
margin: 0;
text-align: center!important;
}
}
/*スマホボタン*/
#responsive-btn {
display: block;
position: absolute;
top: 0;
bottom: 0;
right: 7px;
margin: auto;
transition: all .1s;
border-width: 1px;
border-style: unset;
height: 40px;
width: 40px;
font-size: 25px;
line-height: 18px;
padding: 0;
}
#responsive-btn:hover {
background-color: #ffffff!important;
}
#responsive-btn {
background-color: transparent;
border-color: #eee;
color: #039c57!important;
}
.off-canvas-nav--dark a {
color: #fff;
padding: 10px 20px;
font-weight: bold;
}
.off-canvas-nav--dark .current-menu-item > a, .off-canvas-nav--dark .current_page_ancestor > a, .off-canvas-nav--dark .current-page-ancestor > a, .off-canvas-nav--dark .current_page_item > a, .off-canvas-nav--dark .current_page_parent > a {
background-color: #d7edcd;
color: #049d59;
}
.off-canvas-nav--dark ul ul {
border-top: 1px solid #fdfdfd;
border-left: 1px solid #ffffff;
margin-bottom: -1px;
margin-left: 3em;
opacity: 1;
visibility: visible;
}
.off-canvas-nav--dark ul ul li {
border-left: 1px solid #ffffff;
}
.off-canvas-nav--dark li {
border-top: 1px solid #ffffff;
border-bottom: 1px solid #ffffff;
}

/* おさふね追加設定 */

.clearfix::after {
content: "";
display: block;
clear: both;
}

h3.top-center-blue {
text-align: center;
color: #fff;
font-size: 28px;
font-weight: 700;
line-height: 1;
padding: 13px 0;
background-image: url("./img/midashi-bg-blue.jpg");
background-repeat: repeat;
letter-spacing: 0.1em;
filter: drop-shadow(0px 3px 4px rgba(0,0,0,0.14));
}
h3.top-center-blue.first {margin-top: 0;}

h3.top-center-blue span {position: relative;}
h3.top-center-blue span.left-tooth::before , h3.top-center-blue span.right-tooth::after {
content: '';
background-image: url(./img/midashi-tooth.png);
margin: auto;
width: 90px;
height: 88px;
background-repeat: no-repeat;
background-size: contain;
position: absolute;
top: 0;
bottom: 0;
}
h3.top-center-blue span.left-tooth::before {left: -4em}
h3.top-center-blue span.right-tooth::after {right: -4em}
@media only screen and (max-width: 767px) {
h3.top-center-blue span.left-tooth::before {left: -2.5em}
h3.top-center-blue.first {margin-top: 0;}
}


section.tsuyomi-sec {margin-top: 65px; margin-bottom: 0;}
section.tsuyomi-sec.first {margin-top: 90px;}
section.tsuyomi-sec .right-box , section.tsuyomi-sec .left-box {
width: 59%;
position: relative;
background-size: 100%;
background-repeat: repeat;
padding-top: 70px;
padding-bottom: 55px
}
section.tsuyomi-sec .right-box {
float: right;
background-image: url(./img/right-box-bg.jpg);
padding-left: 172px;
}
section.tsuyomi-sec .left-box {
float: left;
background-image: url(./img/left-box-bg.jpg);
padding-right: 172px;
}
section.tsuyomi-sec .right-box img.left-img , section.tsuyomi-sec .left-box .right-img {
width: 475px;
position: absolute;
margin: auto;
top: -43px;
border-radius: 16px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
section.tsuyomi-sec .right-box .left-img  {left: -370px;}
section.tsuyomi-sec .left-box .right-img {right: -370px;}
.tsuyomi-01 h3 , .tsuyomi-02 h3 , .tsuyomi-03 h3 {
color: #059349;
font-weight: 900;
font-size: 23px;
position: absolute;
margin: auto;
top: -0.8em;
max-width: 100%;
}
.tsuyomi-01 h3 , .tsuyomi-03 h3 {left: 172px}
.tsuyomi-02 h3 {right: 172px}
.tsuyomi-01 h3 span , .tsuyomi-02 h3 span , .tsuyomi-03 h3 span {position: relative}
.tsuyomi-01 h3 span::before , .tsuyomi-02 h3 span::before , .tsuyomi-03 h3 span::before {
content: '';
background-repeat: no-repeat;
background-size: contain;
margin: auto;
position: absolute;
top: 0;
bottom: 0;
}
/* .tsuyomi-01 h3 span::before {
background-image: url("./img/tsuyomi01.png");
width: 18px;
height: 55px;
left: -38px;
}
.tsuyomi-02 h3 span::before {
background-image: url("./img/tsuyomi02.png");
width: 39px;
height: 55px;
right: -153px;
}
.tsuyomi-03 h3 span::before {
background-image: url("./img/tsuyomi03.png");
width: 36px;
height: 56px;
left: -49px;
} */
.tsuyomi-01 p , .tsuyomi-02 p , .tsuyomi-03 p {
font-size: 15px;
font-weight: 500;
letter-spacing: 0.1em;
color: #454545;
line-height: 2.1em;
max-width: 410px;
}
.tsuyomi-02 p {float: right;}
.tsuyomi-03 p {position: relative;}
.tsuyomi-03 p::after {
content: '';
background-image: url("./img/tsuyomi03-tooth.png");
background-size: contain;
background-repeat: no-repeat;
width: 151px;
height: 88px;
position: absolute;
margin: auto;
right: 0;
bottom: -85px;
}
.topmovielis{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:10px;
}
.topmovielis li{
min-height:115px;
}
.topmovielis li img{
width:100%;
height:100%;
object-fit:cover;
}
.tsuyomi-btn{
display: block;
background: #8bd0e2;
color: #fff !important;
padding: 6px 10px;
border-radius: 40px;
font-size: 15px;
font-weight: 600;
text-decoration: none !important;
transition: 0.3s;
max-width: 220px;
text-align: center;
margin:auto;
}
.tsuyomi-btn:hover {
opacity: 0.85;
}
@media only screen and (max-width: 999px) {
section.tsuyomi-sec .right-box, section.tsuyomi-sec .left-box {
width: 100%;
padding: 243px 15px 40px 15px;
float: none;
margin-top: 74px;
}
section.tsuyomi-sec .right-box img.left-img, section.tsuyomi-sec .left-box img.right-img,.topmovielis.right-img {
width: 345px;
top: -116px;
left: 0 !important;
right: 0 !important;
}
.topmovielis.right-img{
top: -116px!important;
}
.tsuyomi-01 h3, .tsuyomi-02 h3, .tsuyomi-03 h3 {
top: 153px;
left: 15px !important;
width: calc(100% - 15px) !important;
}
.tsuyomi-01 h3 span , .tsuyomi-02 h3 span , .tsuyomi-03 h3 span {display: block;}
.tsuyomi-02 p {float: none;}
.tsuyomi-01 h3 span::before , .tsuyomi-03 h3 span::before {
left: 20px;
top: -170px;
}
.tsuyomi-02 h3 {
right: auto;
}
.tsuyomi-02 h3 span::before {
right: 15px;
top: -140px;
}
.tsuyomi-03 p::after {
right: auto;
left: 0;
}
section.tsuyomi-sec.first {
margin-top: 69px;
}
.tsuyomi-01 p, .tsuyomi-02 p, .tsuyomi-03 p {max-width: 100%;}
}
@media only screen and (max-width: 767px) {
.topmovielis.right-img{
width:100%!important;
}
}

section.aisatsu-sec {
padding: 65px 0;
position: relative;
background-image: url("./img/aisatsu-sec-bg.jpg");
background-size: 100% 100%;
margin-top: 125px;
margin-bottom: 240px;
}
section.aisatsu-sec h3 {
display: inline;
width: 225px;
text-align: center;
font-size: 28px;
font-weight: 700;
letter-spacing: 0.1em;
color: #059349;
line-height: 1;
padding: 15px 0;
background-image: url(./img/aisatsu-midashi-bg.jpg);
background-repeat: repeat;
background-size: contain;
filter: drop-shadow(2px 3px 3px rgba(0,0,0,0.14));
position: absolute;
margin: auto;
left: 0;
right: 0;
top: -1em;
}
.aisatsu-box {
background-color: #fff;
padding: 48px 80px 38px 0;
width: 66.25%;
float: left;
}
.aisatsu-box h4 {
color: #059349;
font-weight: 900;
font-size: 23px;
margin-bottom: 26px;
margin-top: 0;
width: 573px;
float: right;
}
.aisatsu-box p {
width: 573px;
font-size: 15px;
color: #454545;
font-weight: 500;
margin-bottom: 0;
letter-spacing: 1px;
float: right;
}
.aisatsu-photo {
width: 33.75%;
float: right;
position: relative;
}
.aisatsu-photo img.face {
margin: 35px 0 38px 35px;
}
.aisatsu-photo img.name.pc {
height: 108px;
max-width: 1179px;
margin-top: -23px;
margin-left: -66px;
}
.aisatsu-photo img.name.sp {
height: 79px;
max-width: 1285px;
/*margin-left: -50vw;*/
margin-bottom: -13px;
display: none;
}
@media only screen and (max-width: 1012px) {
.aisatsu-photo {
width: 100%;
float: none;
text-align: center;
}
.aisatsu-photo img.face {margin: 0;}
.aisatsu-box {
padding: 35px 18px 39px;
width: 95%;
float: none;
margin: 0 auto;
}
.aisatsu-box p {width: 100%;}
.aisatsu-box h4 {
width: 100%;
float: none;
}
section.aisatsu-sec {
margin-top: 77px;
}
.aisatsu-photo img.name.pc {display: none;}
.aisatsu-photo img.name.sp {display: inline;}
.sp-name-box {
position: relative;
left: 50%;
margin-left: -643px;
}
}
@media only screen and (max-width: 767px) {
}


section.two-point {
display: -webkit-box; /*Android4.3*/
display: -moz-box;    /*Firefox21*/
display: -ms-flexbox; /*IE10*/
display: -webkit-flex; /*PC-Safari,iOS8.4*/
display: flex
}
.point01 , .point02 {
width: 50%;
position: relative;
padding-top: 173px;
padding-bottom: 33px;
}
.point01 {
background-color: #e5f5e4;
padding-right: 59px;
}
.point02 {
background-color: #ecfdff;
padding-left: 59px;
}
.point-box {
position: relative;
width: 440px;
}
.point01 .point-box {float: right;}
.point-box h5 {
text-align: center;
color: #059349;
font-weight: 900;
font-size: 23px;
margin-top: 0;
margin-bottom: 33px;
}
.point-box span {
font-size: 15px;
color: #059349;
font-weight: 500;
text-align: center;
display: block;
padding-top: 35px;
margin-top: 0;
margin-bottom: 15px;
line-height: 1.4;
}
.point-box p {
letter-spacing: 1px;
font-weight: 500;
margin-bottom: 0;
}
.point-box p strong {font-weight: 900;}
.point-box.first::before , .point-box.second::before {
content: '';
background-size: contain;
background-repeat: no-repeat;
width: 390px;
height: 265px;
position: absolute;
margin: auto;
left: 0;
right: 0;
top: -265px;
}
.point-box.first::before {background-image: url("./img/point01_1102.jpg");}
.point-box.second::before {background-image: url("./img/point02_1102.jpg");}
.more-link {
text-align: center;
margin-top: 28px;
margin-bottom: 0;
}
.more-link a.more img , a.more img {
width: 180px;
height: 60px;
filter: drop-shadow(2px 3px 3px rgba(0,0,0,0.14));
}
@media only screen and (max-width: 1012px) {
section.two-point {display: block;}
.point01, .point02 {
width: 100%;
padding-top: 132px;
padding-bottom: 33px;
padding-left: 15px !important;
padding-right: 15px !important;
}
.point02 {margin-top: 130px;}
.point-box {
width: 100%;
float: none !important;
}
.point-box.first::before , .point-box.second::before {
width: 345px;
height: 234px;
top: -237px;
}
}
@media only screen and (max-width: 767px) {
}


.top-separate {
width: 100%;
height: 240px;
background-image: url(./img/separate-bg_1102.jpg);
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
margin-bottom: 97px;
}
@media only screen and (max-width: 767px) {
.top-separate {
height: 135px;
margin-bottom: 50px;
}
}


.blog-tooth {
content: '';
width: 100%;
height: 71px;
background-image: url("./img/blog-tooth.png");
background-size: contain;
background-repeat: no-repeat;
background-position: bottom right;
position: absolute;
bottom: 0;
right: 0;
z-index: 10;
}
@media only screen and (max-width: 767px) {
.blog-tooth {
width: 77px;
height: 67px;
background-image: url(./img/blog-tooth_sp.png);
bottom: -38px;
right: 10px;
}
}

iframe.footer-gmap {
width: 100%;
height: 235px;
margin-top: 75px;
margin-bottom: -6px;
}
@media only screen and (min-width: 767px) {
iframe.footer-gmap {margin-top: 50px}
}
.footer-widget-area {
padding: 60px 0;
}
.footer-info {
width: 100%;
margin: 0 auto;
padding: 33px 13px 18px;
background-image: url("./img/footer-info-bg.jpg");
background-size: contain;
position: relative;
}
.footer-info::before {
content: '';
background-image: url("./img/info-clover.png");
background-size: contain;
background-repeat: no-repeat;
width: 65px;
height: 50px;
position: absolute;
margin: auto;
left: 6px;
top: -13px;
}
.footer-info h3 {
color: #059349;
font-size: 20px;
font-weight: 900;
text-align: center;
line-height: 1;
margin-top: 0;
margin-bottom: 13px;
}
.footer-info p.access {
text-align: center;
color: #454545;
font-size: 15px;
font-weight: 500;
margin-bottom: 10px;
}
.footer-yoyaku {
background: #fff;
padding: 41px 0 20px;
text-align: center;
position: relative;
}
.footer-yoyaku::before {
content: '';
background-image: url("./img/footer-parking.jpg");
background-size: contain;
background-repeat: no-repeat;
width: 362px;
height: 45px;
position: absolute;
margin: auto;
left: 0;
right: 0;
top: -22px;
}
.footer-yoyaku img {
width: 122px;
height: 65px;
}
p.footer-tel {
font-size:20px;
font-weight: 900;
color: #ef5b41;
letter-spacing: 1px;
margin: auto;
line-height: 1;
text-align:center;
}
p.footer-tel span {
color: #fff;
font-weight: 900;
font-size: 13px;
line-height: 13px;
background-color: #059349;
letter-spacing: 0.1em;
padding: 3px 4px 5px 5px;
display: inline-block;
vertical-align: bottom;
}
p.footer-tel-time {
font-size: 15px;
font-weight: 700;
color: #059349;
margin: 0;
line-height: 1;
}
h3.footer-schedule {
text-align: center;
color: #fff;
font-size: 15px;
font-weight: 700;
line-height: 1;
letter-spacing: 0.1em;
background-image: url("./img/footer-schedule-bg.jpg");
background-size: contain;
background-repeat: repeat;
padding: 10px 0;
margin-top: 100px;
}
h3.footer-schedule span {position: relative;}
h3.footer-schedule span::before , h3.footer-schedule span::after {
content: '';
background-size: contain;
background-repeat: no-repeat;
width: 69px;
height: 31px;
position: absolute;
margin: auto;
top: 0;
bottom: 0;
}
h3.footer-schedule span::before {
background-image: url("./img/schedule-tooth-left.png");
left: -75px;
}
h3.footer-schedule span::after {
background-image: url("./img/schedule-tooth-right.png");
right: -75px;
}
@media only screen and (max-width: 767px) {
.footer-info {width: 100%;}
h3.footer-schedule {margin-top: 28px;}
.footer-info::before {left: 15px;}
}


@media (min-width: 1200px) {
footer .container {
width: 1062px;
}
}

.footer-menu-block {
background-color: #b8ecc5;
text-align: center;
padding: 44px 0;
}
.footer-menu-block h5 {
font-size: 15px;
font-weight: 900;
color: #42a763;
margin-top: 0;
}
.footer-menu-block h5.courses {margin-top: 24px;}
.footer-menu-block ul {
max-width: 800px;
margin: 0 auto;
}
.footer-menu-block ul:last-child {margin-bottom: 0;}
.footer-menu-block ul li {
display: inline-block;
margin: 0 1.5em 0 0;
}
.footer-menu-block ul li:last-child {margin-right: 0;}
.footer-menu-block ul li a {
color: #454545;
font-size: 15px;
text-decoration: none;
position: relative;
}
.footer-menu-block ul li a::before {
content: "›";
font-size: 15px;
line-height: 15px;
height: 15px;
position: absolute;
margin: auto;
top: 0;
bottom: 0;
left: -0.7em;
}
@media only screen and (max-width: 799px) {
.footer-menu-block ul {max-width: 90%; padding-left: 21px;}
}

.header--center .global-nav .menu {position: relative;}
.header--center .global-nav .menu::before {
content: '';
background-image: url("./img/gnav-tooth.png");
background-size: contain;
background-repeat: no-repeat;
width: 69px;
height: 72px;
position: absolute;
margin: auto;
top: 0;
bottom: 0;
left: -51px;
}

.head_yoyaku_otoiawase {
background-image: url(./img/header-yoyaku-bg.jpg);
background-size: contain;
background-repeat: repeat;
width: 100%;
max-width: 550px;
    margin: auto;
height: 70px;
filter: drop-shadow(2px 3px 3px rgba(0,0,0,0.14));
border-radius: 0 0 10px 10px;
display: flex;
align-items: center;
justify-content: center;
gap: 12px;
}
.head_yoyaku_otoiawase table {
width: 100%;
}
a.header-tel {
font-size: 31px;
color: #059349 !important;
font-weight: 900;
line-height: 1;
}
a.header-tel span {
color: #fff;
line-height: 1;
display: inline-block;
background-color: #059349;
font-size: 18px;
padding: 3px 4px 5px 5px;
vertical-align: middle;
margin-top: -6px;
margin-right: 9px;
}
@media only screen and (max-width: 992px) {
.head_yoyaku_otoiawase{display:none;}
}

@media only screen and (max-width: 767px) {
.sp-hidden {display: none;}
}

p.schedule-point {
text-align:right;
color: #454545;
font-size: 14px;
}
p.schedule-point.first {margin-bottom: 0;}
@media only screen and (max-width: 767px) {
p.schedule-point {
width: 360px;
margin-left: auto;
margin-right: auto;
}
}

/*レスポンシブメニュー設定*/
.responsive-nav-wrapper #responsive-btn::after {
content: "MENU";
color: #039c57!important;
font-size: 12px;
font-weight: 500;
position: absolute;
margin: auto;
line-height: 1;
height: 1em;
/*width: 100%;
left: 0;*/
right: 0.2em;
top: -2px;
text-align: center;
}
.responsive-nav-wrapper #responsive-btn:before {
position: absolute;
left: 0;
right: 0;
bottom: 5px;
}

/*メインビジュアルスライダー設定*/
/* .mainV-pc , .mainV-sp {position: relative;}
.mainV-pc::before , .mainV-sp::before {
content: '';
background-image: url("./img/mainV-copy_02.png");
background-repeat: no-repeat;
background-size: contain;
position: absolute;
margin: auto;
z-index: 99;
}
.mainV-pc::before {
width: 390px;
height: 178px;
top: 45px;
left: 17%;
}
.mainV-sp::before {
width: 307px;
height: 140px;
top: 12px;
left: 15px;
} */


.mainV-sp {display: none;}
@media only screen and (max-width: 767px) {
.mainV-pc {display: none;}
.mainV-sp {display: block;}
}


.page-header__title {
color: #fff;
font-weight: 900;
}


/*グループサイト用*/
.home section.corp-section,
.home section.history-section,
.home section.clinic-section,
.home section.implant-section,
.home section.recruit-section{
margin:auto;
}
.corp-section.first{
margin-top:100px!important;
}
.corp-section {
background: linear-gradient(180deg, #e5f5e4, #ecfdff);
padding: 80px 20px 40px;
}

.corp-block {
max-width: 1200px;
margin: 0 auto 80px;
display: flex;
align-items: center;
gap: 40px;
}

.corp-block.last{margin-bottom:0;}

.corp-block.reverse {
flex-direction: row-reverse;
}

.corp-image {
flex: 1;
max-width: 450px;
}

.corp-image img {
width: 100%;
height: auto;
border-radius: 16px;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.corp-text {
flex: 1;
background: #fff;
padding: 40px;
border-radius: 20px;
box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.corp-text h2 {
font-size: 28px;
color: #2b6f7a;
margin-bottom: 10px;
position: relative;
}

.corp-text h2::after {
content: "";
width: 60px;
height: 4px;
background: #8bd0e2;
display: block;
margin-top: 10px;
}

.corp-text h3 {
font-size: 18px;
color: #444;
margin: 20px 0 10px;
}

.corp-text p {
font-size: 16px;
line-height: 1.9;
color: #555;
}

/* ---------- responsive ---------- */
@media (max-width: 768px) {
.corp-section {
padding: 30px 15px;
}

.corp-block,
.corp-block.reverse {
flex-direction: column;
gap: 20px;
margin: 0 auto 30px;
}

.corp-text {
padding: 25px;
}

.corp-text h2 {
font-size: 22px;
}
}
@media (max-width: 576px) {
.corp-section.first {
margin-top: 30px !important;
}
}

.history-section {
background: linear-gradient(180deg, #ecfdff, #e5f5e4);
padding: 40px 20px;
}

.history-title {
text-align: center;
font-size: 32px;
margin-bottom: 40px;
color: #2b6f7a;
}

.history-title.tops{
margin: 60px auto 110px;
}

.history-table-wrap {
max-width: 1000px;
margin: 0 auto;
background: #fff;
border-radius: 10px;
box-shadow: 0 10px 30px rgba(0,0,0,0.08);
overflow: hidden;
}

.history-table {
width: 100%;
border-collapse: collapse;
}

.history-table th {
background: #8bd0e2;
color: #fff;
padding: 18px;
font-size: 16px;
text-align: left;
}

.history-table td {
padding: 20px;
vertical-align: top;
border-bottom: 1px solid #eee;
font-size: 15px;
line-height: 1.8;
color: #555;
}

.history-table td:first-child {
width: 220px;
font-weight: 600;
color: #2b6f7a;
white-space: nowrap;
}

.history-table tr:last-child th,
.history-table tr:last-child td{
border-bottom: none;
}

.history-table strong {
color: #2b6f7a;
}

.history-table tr.highlight td {
background: #f4fcff;
}

/* ---------- responsive ---------- */
@media (max-width: 768px) {
.history-title {
font-size: 24px;
}

.history-title.tops{
margin: 30px auto 50px;
}

.history-table th,
.history-table td {
padding: 15px;
}

.history-table td:first-child {
width: auto;
white-space: normal;
font-size: 14px;
}
}


.clinic-section {
background: linear-gradient(180deg, #e5f5e4, #ecfdff);
padding: 40px 20px;
}

.clinic-inner {
max-width: 1200px;
margin: 0 auto;
}

.clinic-title {
text-align: center;
font-size: 32px;
color: #2b6f7a;
margin-bottom: 20px;
}

.clinic-title span {
font-size: 18px;
display: block;
margin-top: 8px;
}

.clinic-lead {
text-align: center;
max-width: 900px;
margin: 0 auto 60px;
line-height: 1.9;
color: #555;
}

.clinic-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
gap: 30px;
}

.clinic-card {
background: #fff;
border-radius: 20px;
padding: 30px;
box-shadow: 0 10px 30px rgba(0,0,0,0.08);
display: flex;
flex-direction: column;
}

.clinic-card h3 {
font-size: 22px;
color: #2b6f7a;
margin-bottom: 8px;
}

.clinic-catch {
color: #4fa7bd;
font-weight: 600;
margin-bottom: 15px;
}

.clinic-it{
display:flex;
gap:10px;
}

.clinic-it .txt{
flex:2;
}

.clinic-it .img{
flex:1;
max-height:113px;
}

.clinic-it .img img{
width:100%;
height:100%;
object-fit:cover;
}

.clinic-info {
margin: 15px 0;
font-weight: 600;
color: #555;
}

.clinic-card .director {
background: #f4fcff;
padding: 15px;
border-radius: 12px;
margin: 15px 0 25px;
font-size: 14px;
}

.clinic-btn {
margin-top: auto;
text-align: center;
background: #8bd0e2;
color: #fff!important;
padding: 14px 20px;
border-radius: 30px;
font-weight: 600;
text-decoration: none!important;
transition: 0.3s;
}

.clinic-btn:hover {
opacity: 0.85;
}
.clinic-title span .br{display:none;}
/* ---------- responsive ---------- */
@media (max-width: 768px) {
.history-table thead th, .history-table tbody td{
display:block;
width:100%!important;
}
.clinic-title {
font-size: 24px;
margin-top:0;
}

.clinic-lead {
font-size: 15px;
}
.clinic-grid {
grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
}
.clinic-it{
flex-direction:column;
}
.clinic-card {
padding: 30px 20px;
}
.clinic-title span .br{display:block;}
}


.implant-section {
background: linear-gradient(180deg, #ecfdff, #e5f5e4);
padding: 40px 20px;
}

.implant-inner {
max-width: 1000px;
margin: 0 auto;
}

.implant-title {
text-align: center;
font-size: 36px;
color: #2b6f7a;
margin-bottom: 10px;
}

.implant-sub {
text-align: center;
font-size: 18px;
color: #4fa7bd;
margin-bottom: 60px;
font-weight: 600;
}

.implant-block-wp{
display:flex;
gap:20px;
}

.implant-block {
flex:1;
background: #fff;
border-radius: 20px;
padding: 35px;
box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.implant-block h3 {
font-size: 22px;
color: #2b6f7a;
margin-bottom: 15px;
position: relative;
}

.implant-block h3::after {
content: "";
width: 60px;
height: 4px;
background: #8bd0e2;
display: block;
margin-top: 10px;
}

.implant-block p {
line-height: 1.9;
color: #555;
}

/* 価格 */
.implant-price {
background: #8bd0e2;
color: #fff;
text-align: center;
padding: 40px 20px;
border-radius: 25px;
margin: 60px 0;
}

.price-head {
font-size: 18px;
margin-bottom: 0;
font-weight: 600;
}

.price-main {
font-size: 22px;
font-weight: 700;
}

.price-main span {
font-size: 52px;
margin-right: 5px;
}

.price-note {
font-size: 14px;
margin-top: 10px;
}

/* CTA */
.implant-cta {
text-align: center;
margin-top: 60px;
}

.implant-btn {
display: inline-block;
background: #8bd0e2;
color: #fff!important;
padding: 18px 50px;
border-radius: 40px;
font-size: 18px;
font-weight: 600;
text-decoration: none!important;
transition: 0.3s;
}

.implant-btn:hover {
opacity: 0.85;
}

/* ---------- responsive ---------- */
@media (max-width: 768px) {

.implant-title {
font-size: 26px;
}

.implant-sub {
font-size: 16px;
}

.implant-block-wp{
flex-direction: column;
}

.implant-block {
padding: 25px;
}

.implant-price{
margin:30px 0;
}

.price-main span {
font-size: 40px;
}
}


.recruit-section {
background: linear-gradient(180deg, #e5f5e4, #ecfdff);
padding: 90px 20px;
}

.recruit-inner {
max-width: 1200px;
margin: 0 auto;
}

/* ヒーロー */
.recruit-hero {
display: flex;
gap: 40px;
align-items: center;
margin-bottom: 80px;
}

.recruit-hero-text {
flex: 1;
}

.recruit-hero-text h2 {
font-size: 36px;
color: #2b6f7a;
margin-bottom: 10px;
}

.recruit-lead {
font-size: 18px;
margin-bottom: 20px;
color: #4fa7bd;
}

.recruit-hero-text p {
line-height: 1.9;
color: #555;
}

.recruit-hero-image {
flex: 1;
}

.recruit-hero-image img {
width: 100%;
border-radius: 20px;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

/* サブタイトル */
.recruit-subtitle {
text-align: center;
font-size: 28px;
color: #2b6f7a;
margin-bottom: 50px;
}

/* ポイント */
.recruit-points {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 30px;
}

.recruit-card {
background: #fff;
border-radius: 20px;
padding: 25px;
text-align: center;
box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.recruit-card img {
width: 100%;
height: 180px;
object-fit: cover;
border-radius: 15px;
margin-bottom: 15px;
}

.recruit-card h4 {
font-size: 18px;
color: #2b6f7a;
margin-bottom: 10px;
}

.recruit-card p {
font-size: 15px;
line-height: 1.8;
color: #555;
}

/* CTA */
.recruit-cta {
text-align: center;
margin-top: 80px;
}

.recruit-cta p {
margin-bottom: 20px;
font-size: 16px;
}

.recruit-btn {
display: inline-block;
background: #8bd0e2;
color: #fff!important;
padding: 18px 50px;
border-radius: 40px;
font-size: 18px;
font-weight: 600;
text-decoration: none!important;
transition: 0.3s;
}

.recruit-btn:hover {
opacity: 0.85;
}

/* ---------- responsive ---------- */
@media (max-width: 768px) {
.recruit-section {
padding: 30px 20px;
}
.home .recruit-section {
padding-top: 0;
}
.recruit-hero {
flex-direction: column;
}

.recruit-hero-text h2 {
font-size: 26px;
}

.recruit-subtitle {
font-size: 22px;
}

.recruit-cta {
margin-top: 30px;
}
.recruit-hero {
margin-bottom: 30px;
}
.recruit-subtitle {
margin-bottom: 30px;
}
}


.recruit-about {

}

.section-head {
text-align: center;
margin-bottom: 60px;
}

.section-head h2 {
font-size: 36px;
font-weight: 700;
color: #2f5d50;
}

.section-head p {
margin-top: 10px;
color: #666;
}

.env-holiday {
background-image: url("./img/env-holiday.jpg");
}

.env-life {
background-image: url("./img/env-lifey.jpg");
}

.env-support {
background-image: url("./img/env-support.jpg");
}

.env-education {
background-image: url("./img/env-education.jpg");
}


.about-block {
max-width: 1100px;
margin: 0 auto 80px;
display: flex;
align-items: center;
gap: 50px;
}

.about-block.reverse {
flex-direction: row-reverse;
}

.about-img {
width: 45%;
}

.about-img img {
width: 100%;
border-radius: 20px;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.about-text {
width: 55%;
}

.about-text h3 {
font-size: 26px;
margin-bottom: 20px;
color: #2f5d50;
}

.about-text p {
margin-bottom: 15px;
line-height: 1.9;
color: #444;
}

.about-text .highlight {
font-weight: 600;
color: #1f7a66;
background: #e9f6f3;
padding: 15px 20px;
border-radius: 10px;
}

/* レスポンシブ */
@media (max-width: 768px) {
.about-block,
.about-block.reverse {
flex-direction: column;
gap: 20px;
}
.about-block{
	margin-bottom: 30px;
}

.about-img,
.about-text {
width: 100%;
}

.section-head h2 {
font-size: 28px;
}

.about-text h3 {
font-size: 22px;
}
}




.work-environment {

}

.env-head {
text-align: center;
margin-bottom: 60px;
}

.env-head h2 {
font-size: 36px;
font-weight: 700;
color: #2f5d50;
}

.env-head p {
margin-top: 10px;
color: #666;
}

/* 横並びレイアウト */
.env-row {
max-width: 1100px;
margin: 0 auto 80px;
display: flex;
align-items: center;
gap: 60px;
}

/* テキスト */
.env-text {
width: 55%;
}

.env-text h3 {
font-size: 26px;
margin-bottom: 20px;
color: #2f5d50;
}

.env-text p {
margin-bottom: 15px;
line-height: 1.9;
color: #444;
}

/* 画像 */
.env-image {
width: 45%;
}

.env-image img {
width: 100%;
border-radius: 20px;
box-shadow: 0 15px 35px rgba(0,0,0,0.12);
}

/* レスポンシブ */
@media (max-width: 768px) {
.env-row {
flex-direction: column;
gap: 30px;
}

.env-text,
.env-image {
width: 100%;
}

.env-head h2 {
font-size: 28px;
}

.env-text h3 {
font-size: 22px;
}
.env-head {
    margin-bottom: 0px;
}
.env-row{
	margin-bottom: 30px;
}
}



.group-clinics {
padding: 50px 20px;
background: #f7faf9;
}

.section-head {
text-align: center;
margin-bottom: 70px;
}

.section-head h2 {
font-size: 36px;
color: #2f5d50;
}

.section-head p {
margin-top: 10px;
color: #666;
}

.clinic-card {
max-width: 1100px;
margin: 0 auto 30px;
display: flex;
align-items: center;
gap: 60px;
}

.clinic-card.last{margin-bottom:0;}

.home .clinic-card {
gap: 0;
}

.clinic-card.last{
margin-bottom:0;
}

.clinic-card.reverse {
flex-direction: row-reverse;
}

.clinic-img {
width: 45%;
}

.clinic-img img {
width: 100%;
border-radius: 22px;
box-shadow: 0 15px 35px rgba(0,0,0,0.12);
}

.clinic-text {
width: 55%;
}

.clinic-text h3 {
font-size: 26px;
color: #2f5d50;
}

.clinic-area {
display: inline-block;
margin: 8px 0 20px;
padding: 4px 14px;
font-size: 14px;
background: #e6f3ef;
color: #1f7a66;
border-radius: 20px;
}

.clinic-text p {
margin-bottom: 15px;
line-height: 1.9;
color: #444;
}

.clinic-point {
font-weight: 600;
color: #1f7a66;
}

/* レスポンシブ */
@media (max-width: 768px) {
.clinic-card,
.clinic-card.reverse {
flex-direction: column;
gap: 30px;
}

.clinic-img,
.clinic-text {
width: 100%;
}

.section-head h2 {
font-size: 28px;
}

.clinic-text h3 {
font-size: 22px;
}
}
@media (max-width: 576px) {
	.group-clinics {
    padding: 20px 20px;
}
}

.recruit-jobs {
padding: 0 20px;
background: #ffffff;
}

.section-head {
text-align: center;
margin-bottom: 70px;
}

.section-head h2 {
font-size: 36px;
color: #2f5d50;
}

.section-head p {
margin-top: 10px;
color: #666;
}

/* カード */
.job-list {
max-width: 1100px;
margin: 0 auto;
}

.job-card {
display: flex;
align-items:center;
gap: 40px;
padding: 40px;
margin-bottom: 50px;
border-radius: 24px;
background: #f7faf9;
}

.job-card.highlight {
background: linear-gradient(135deg, #e6f3ef, #f7faf9);
}

.job-icon {
width: 200px;
flex-shrink: 0;
}

.job-icon img {
width: 100%;
}

.job-text h3 {
font-size: 26px;
color: #2f5d50;
}

.job-text h3 span {
font-size: 14px;
margin-left: 10px;
color: #666;
}

.job-text h4 {
margin: 10px 0 20px;
font-size: 18px;
color: #1f7a66;
}

.job-text p {
margin-bottom: 15px;
line-height: 1.9;
color: #444;
}

.job-point {
font-weight: 600;
color: #1f7a66;
}

/* レスポンシブ */
@media (max-width: 768px) {
.job-card {
flex-direction: column;
padding: 30px 20px;
}

.job-icon {
width: 160px;
}

.section-head h2 {
font-size: 28px;
}

.job-text h3 {
font-size: 22px;
}
}
@media (max-width: 576px) {
	.section-head {
    margin-bottom: 20px;
}
}


.training {
background: #f6fbf9;
padding: 50px 20px;
}

.training-inner {
max-width: 1100px;
margin: 0 auto;
}

.section-title {
text-align: center;
font-size: 32px;
font-weight: 700;
margin-bottom: 60px;
color: #2f4f4f;
position: relative;
}

.section-title::after {
content: "";
display: block;
width: 80px;
height: 4px;
background: #7fc7b2;
margin: 20px auto 0;
border-radius: 2px;
}

.training-list {
display: flex;
flex-direction: column;
gap: 40px;
}

.training-item {
display: flex;
gap: 32px;
background: #fff;
border-radius: 16px;
padding: 40px;
box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}

.training-icon {
flex-shrink: 0;
width: 80px;
height: 80px;
background: #fff;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
}

.training-icon img {
width: 100%;
height: auto;
box-shadow: 0 10px 30px rgba(0,0,0,0.05);
border-radius: 50%;
}

.training-content h3 {
font-size: 22px;
margin-bottom: 16px;
color: #2a6f63;
}

.training-content p {
font-size: 15px;
line-height: 1.9;
color: #555;
margin-bottom: 12px;
}

/* responsive */
@media (max-width: 768px) {
.training {
padding: 60px 16px;
}

.section-title {
font-size: 26px;
margin-bottom: 40px;
}

.training-item {
flex-direction: column;
padding: 28px 24px;
gap: 12px;
}

.training-icon {
margin-bottom: 16px;
margin: auto;
}

.training-content h3 {
font-size: 20px;
}
}



.recruit-table-section {

}

.recruit-table-section .inner {
max-width: 1000px;
margin: 0 auto;
}

.section-title {
text-align: center;
font-size: 32px;
font-weight: 700;
margin-bottom: 10px;
}

.leads {
text-align: center;
margin-bottom: 50px;
color: #666;
}

/* ===== table ===== */

.table-wrap {
overflow-x: auto;
}

.recruit-table {
width: 100%;
border-collapse: collapse;
background: #fff;
overflow: hidden;
}

.recruit-table th,
.recruit-table td {
padding: 24px 28px;
text-align: left;
vertical-align: top;
font-size: 15px;
line-height: 1.9;
}

.recruit-table th {
width: 220px;
background: #e6f4ef;
font-weight: 700;
color: #2a6f63;
white-space: nowrap;
}

.recruit-table tr:not(:last-child) {
border-bottom: 1px solid #e5e5e5;
}

.recruit-table td strong {
color: #2a6f63;
}

/* ===== responsive ===== */

@media (max-width: 768px) {

.recruit-table,
.recruit-table tbody,
.recruit-table tr,
.recruit-table th,
.recruit-table td {
display: block;
width: 100%;
}

.recruit-table tr {
border-bottom: 1px solid #ddd;
padding: 18px 0;
}

.recruit-table th {
background: none;
padding: 0 0 6px;
font-size: 14px;
color: #2a6f63;
}

.recruit-table td {
padding: 0 0 10px;
}
}




table.ri th,table.ri td{
display:block;
padding:15px 5px!important;
}
table.ri th,.list10-count strong{
color: #58b179;
font-size:120%;
}
.list10-count{
padding: 15px 0px 15px 30px;
}


/* ===== section ===== */

.entry-section {
background: linear-gradient(180deg, #f6fbf9 0%, #ffffff 100%);
padding: 50px 20px;
}

.entry-section .inner {
max-width: 900px;
margin: 0 auto;
}

/* ===== title ===== */

.section-title {
text-align: center;
font-size: 34px;
font-weight: 700;
margin-bottom: 60px;
}

/* ===== card ===== */

.entry-card {
background: #ffffff;
padding: 45px;
border-radius: 16px;
box-shadow: 0 15px 35px rgba(0,0,0,0.06);
line-height: 2;
margin-bottom: 70px;
}

.entry-card .lead {
font-size: 22px;
font-weight: 700;
margin-bottom: 20px;
color: #2a6f63;
}

.entry-card .highlight {
margin-top: 20px;
font-weight: 600;
}

/* ===== method ===== */

.entry-method {
text-align: center;
}

.method-title {
font-size: 26px;
font-weight: 700;
margin-bottom: 25px;
}

.method-text {
margin-bottom: 18px;
line-height: 1.9;
}

.method-text.strong {
font-weight: 600;
margin-top: 25px;
}

/* ===== CTA ===== */

.cta-buttons {
margin-top: 45px;
display: flex;
justify-content: center;
gap: 25px;
flex-wrap: wrap;
}

.cta-buttons a {
text-decoration: none;
font-weight: 700;
padding: 18px 40px;
border-radius: 50px;
transition: 0.3s;
display: inline-block;
}

/* メインボタン */

.btn-entry {
background: #2a6f63;
color: #fff!important;
font-size: 18px;
box-shadow: 0 10px 25px rgba(42,111,99,0.3);
}

.btn-entry:hover {
transform: translateY(-3px);
opacity: 0.9;
}

/* 電話ボタン */

.btn-phone {
border: 2px solid #2a6f63;
color: #2a6f63;
background: #fff;
}

.btn-phone:hover {
background: #2a6f63;
color: #fff;
}

/* ===== responsive ===== */

@media (max-width: 768px) {

.entry-card {
padding: 30px 22px;
}

.cta-buttons {
flex-direction: column;
}

.cta-buttons a {
width: 100%;
}

.btn-entry {
font-size: 16px;
}
.entry-section{
	padding: 30px 0;
}
}


/* =====================
全体
===================== */

.feature-section {
padding: 20px 20px 0;
background: #f7fbfa;
}

.feature-section .inner {
max-width: 1100px;
margin: 0 auto;
display:grid;
grid-template-columns:repeat(1,1fr);
gap:25px;
}
@media (max-width: 576px) {
.feature-section{
background:none;
padding: 50px 0;
}
.feature-block {
margin-bottom: 10px;
}
}

/* =====================
ブロック
===================== */

.feature-block {
display: flex;
align-items: center;
flex-direction: column-reverse;
gap: 60px;
margin-bottom: 70px;
position: relative;
}

/* 交互レイアウト用 */
.feature-block.reverse {
flex-direction: row-reverse;
}


/* =====================
画像
===================== */

.feature-img {
flex: 1;
position: absolute;
top:-34px;
right:0;
}

.feature-img img {
width: 100%;
max-width: 300px;
border-radius: 18px;
display: block;
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
position: relative;
z-index: 1;
}


/* =====================
テキスト
===================== */

.feature-content {
width: 100%;
flex: 1;
position: relative;
background: #fff;
padding: 50px;
border-radius: 18px;
box-shadow: 0 20px 40px rgba(0,0,0,0.06);
}

/* 番号（大きく背景に） */

.feature-number {
position: absolute;
top: -65px;
left: -10px;
font-size: 110px;
font-weight: 900;
color: #d7edcd;
z-index: 0;
line-height: 1;
}

/* タイトル */

.feature-title {
position: relative;
font-size: 23px;
font-weight: 700;
margin-bottom: 15px;
z-index: 1;
}

.feature-lead {
font-weight: 600;
color: #059349;
margin-bottom: 20px;
}

.feature-content p {
line-height: 1.9;
margin-bottom: 15px;
position: relative;
z-index: 1;
}


/* =====================
レスポンシブ
===================== */

@media (max-width: 768px) {

.feature-block {
flex-direction: column;
gap: 25px;
margin-bottom: 10px;
}

.feature-block.reverse {
flex-direction: column;
}

.feature-content {
padding: 30px 22px;
}

.feature-number {
font-size: 70px;
top: -15px;
}
}


.director-section {
background: #ffffff;
padding: 0 20px;
}

.director-section .inner {
max-width: 1100px;
margin: 0 auto;
}

.section-title {
text-align: center;
font-size: 36px;
font-weight: 700;
margin-bottom: 70px;
}

/* =====================
メインブロック
===================== */

.director-block {
display: flex;
gap: 60px;
align-items: center;
margin-bottom: 30px;
}

/* 画像 */

.director-image {
flex: 1;
}

.director-image img {
width: 100%;
border-radius: 20px;
box-shadow: 0 25px 50px rgba(0,0,0,0.15);
}

/* テキスト */

.director-content {
flex: 1;
background: #f7fbfa;
padding: 50px;
border-radius: 20px;
}

.director-role {
display: inline-block;
background: #d7edcd;
color: #059349;
padding: 6px 16px;
border-radius: 20px;
font-weight: 700;
margin-bottom: 15px;
}

.director-name {
font-size: 30px;
font-weight: 700;
margin-bottom: 5px;
}

.director-name span {
font-size: 16px;
font-weight: 400;
margin-left: 10px;
}

.director-affiliation {
font-size: 14px;
color: #666;
margin-bottom: 20px;
}

.director-catch {
font-size: 22px;
font-weight: 700;
color: #059349;
margin-bottom: 20px;
}

.director-content p {
line-height: 1.9;
margin-bottom: 15px;
}

.director-content>p:last-child{
margin-bottom: 0;
}

/* =====================
ストーリー
===================== */

.director-story {
background: #f7fbfa;
padding: 60px;
border-radius: 20px;
}

.director-story h3 {
font-size: 24px;
font-weight: 700;
margin-bottom: 20px;
color: #059349;
}

.director-story p {
line-height: 1.9;
margin-bottom: 20px;
}

/* =====================
レスポンシブ
===================== */

@media (max-width: 768px) {
.director-section{
margin-bottom: 50px;
}
.director-block {
flex-direction: column;
gap:20px;
}

.director-story {
padding: 35px 22px;
}

.section-title {
font-size: 28px;
}

.director-name {
font-size: 24px;
}
.director-section{
padding: 0;
}
.director-content {
padding: 30px 20px;
}
}


.page-template-tanjiman .footer-gmap{
margin-top:0;
}
.tanjiman-lp{
font-family: 'Kosugi Maru', sans-serif;
overflow:hidden;
line-height:1.8;
}
.tanjiman-lp .block{
padding:80px 20px;
text-align:center;
}
.tanjiman-lp .skills.block{
padding:80px 20px 120px;
}
.tanjiman-lp .block h2{
font-size:32px;
margin-bottom:30px;
}
.tanjiman-lp .hero{
background: radial-gradient(circle,#fff200,#ff8c00);
padding:100px 20px;
position:relative;
text-align:center;
}
.tanjiman-lp .hero h1{
font-size:48px;
font-weight:bold;
}
.tanjiman-lp .hero span{
color:#e60023;
}
.tanjiman-lp .hero img{
max-width:420px;
width: 100%;
margin-top:30px;
}
.tanjiman-lp .hero-inner .catch{
font-size:2rem;
}
.tanjiman-lp .dark{
background:#111;
color:#fff;
}
.tanjiman-lp .card-grid{
display:flex;
flex-direction: column;
gap:30px;
max-width:900px;
margin:auto;
}
.tanjiman-lp .card{
background:#fff;
color:#000;
padding:30px;
border-radius:20px;
box-shadow:0 10px 20px rgba(0,0,0,.3);
}
.tanjiman-lp .card img{
width:350px;
margin-bottom:15px;
}
.tanjiman-lp .weak{
margin-top:10px;
font-weight:bold;
color:#e60023;
}
.tanjiman-lp .skill-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
}
.tanjiman-lp .skill{
background:#ffe45e;
padding:30px 10px;
border-radius:20px;
font-weight:bold;
font-feature-settings: "palt";
}
.tanjiman-lp .skill h3{
font-size:20px;
}
.tanjiman-lp .cta{
background:#ff3b3b;
color:#fff;
padding:100px 20px;
text-align:center;
}
.tanjiman-lp .btn{
display:inline-block;
background:#fff;
color:#ff3b3b;
padding:18px 40px;
font-size:20px;
font-weight:bold;
border-radius:50px;
text-decoration:none;
margin-top:20px;
transition:.3s;
}
.tanjiman-lp .btn:hover{
transform:scale(1.1);
}
@media(max-width:768px){
.tanjiman-lp .hero h1{font-size:34px;}
.tanjiman-lp .card-grid,
.tanjiman-lp .skill-grid{
grid-template-columns:1fr;
}
}

.tanjiman-gear,
.tanjiman-movie{
padding:100px 20px;
text-align:center;
position:relative;
overflow:hidden;
}
.tanjiman-gear{
background:url(img/speed-line.png) center/cover no-repeat;
padding:60px 20px 100px;
}
.gear-main-title{
font-size:34px;
font-weight:900;
margin-bottom:70px;
}
.gear-main-title span{
font-size:18px;
display:block;
margin-top:10px;
}
.gear-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
max-width:1100px;
margin:auto;
}
.gear-card{
background:#fff;
padding:30px 10px;
border-radius:20px;
box-shadow:0 10px 25px rgba(0,0,0,.12);
transition:.35s;
font-feature-settings: "palt";
}
.gear-img img{
width:100px;
margin-bottom:15px;
}
.gear-card h3{
font-size:20px;
font-weight:600;
margin-bottom:10px;
color:#ff3b3b;
}
.tanjiman-movie{
background:#111;
color:#fff;
}
/* .tanjiman-gear .movie-frame{
max-width:900px;
margin:40px auto;
aspect-ratio:16/9;
} */
.movie-frame{
max-width:1100px;
margin:auto;
}
.movie-frame ul{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
}
.tanjiman-gear .movie-btn{
display:inline-block;
background:#ff3b3b;
padding:18px 40px;
border-radius:50px;
font-weight:bold;
margin-top:30px;
transition:.3s;
}
.movie-btn{
display: inline-block;
margin: 30px 0;
padding: 18px 48px;
background: #fff;
color: #000;
text-decoration: none!important;
border-radius: 40px;
font-weight: 900;
font-size: 18px;
transition: .3s;
}
.movie-btn:hover{
transform:scale(1.1);
color:initial;
}
.movie-btn br{display: none;}
@media(max-width:768px){
.gear-grid{
grid-template-columns: repeat(2, 1fr);
}
}
@media(max-width:576px){
.gear-grid{
grid-template-columns: repeat(1, 1fr);
}
.gear-weapon{
flex-direction:column;
}
}

.tanjiman-activity{
padding:120px 20px;
background:
radial-gradient(circle at center,#fffae6,#ffe08a);
text-align:center;
}
.activity-title{
font-size:34px;
font-weight:900;
margin-bottom:15px;
}
.activity-title span{
display:block;
font-size:16px;
margin-top:8px;
}
.activity-lead{
margin-bottom:60px;
font-weight:bold;
}
.mission-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
max-width:1100px;
margin:auto;
}
.mission-card{
background:#fff;
border-radius:20px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,.15);
transition:.35s;
}
.mission-card img{
width:100%;
height:200px;
object-fit:cover;
}
.mission-text{
padding:18px;
font-weight:bold;
}
.next-text{
margin-top:50px;
font-size:18px;
font-weight:900;
color:#ff3b3b;
}
.tanjiman-message{
background:#111;
padding:120px 20px;
color:#fff;
}
.speech-wrap{
display:flex;
align-items:center;
justify-content:center;
gap:50px;
max-width:1100px;
margin:auto;
}
.message-img{
width:320px;
animation:float 3s infinite ease-in-out;
}
.speech{
background:#fff;
color:#222;
padding:40px;
border-radius:30px;
position:relative;
max-width:600px;
line-height:1.9;
}
.speech h3{margin-top:0;}
.speech:after{
content:"";
position:absolute;
left:-20px;
top:60px;
border:20px solid transparent;
border-right-color:#fff;
}
.speech h3 br{display: none;}
.hero-sign{
display:block;
margin-top:20px;
font-weight:bold;
color:#ff3b3b;
font-size:18px;
}
@media(max-width:768px){
.mission-grid{
grid-template-columns:1fr;
}
.speech-wrap{
flex-direction:column;
}
}
.tanjiman-base{
padding:100px 20px;
background:
linear-gradient(135deg,#fff8dc,#ffeaa7);
text-align:center;
font-family: "Noto Sans JP", sans-serif;
}
.base-inner{
max-width:1100px;
margin:auto;
}
.base-title{
font-size:34px;
font-weight:900;
margin-bottom:25px;
}
.base-lead{
line-height:1.9;
margin-bottom:60px;
font-weight:600;
}
.base-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:28px;
margin-bottom:60px;
}
.base-card{
display:block;
padding:35px 20px;
border-radius:22px;
background:#fff;
text-decoration:none!important;
color:#222!important;
box-shadow:0 8px 20px rgba(0,0,0,.12);
transition:.25s;
}
.base-card:hover{
transform:translateY(-6px);
box-shadow:0 15px 30px rgba(0,0,0,.2);
}
.base-name{
display:block;
font-weight:900;
font-size:18px;
margin-bottom:6px;
}
.base-area{
font-size:14px;
color:#666;
}
.base-message{
position:relative;
background:#fff;
padding:35px 30px;
border-radius:30px;
max-width:820px;
margin:auto;
line-height:1.9;
font-weight:600;
}
.base-message:after{
content:"";
position:absolute;
bottom:-20px;
left:50%;
transform:translateX(-50%);
border:20px solid transparent;
border-top-color:#fff;
}
@media(max-width:768px){
.base-grid{
grid-template-columns:1fr;
}
.base-title{
font-size:26px;
}
}

.tanjiman-ambition{
font-family:"Noto Sans JP",sans-serif;
}
.ambition-hero{
padding:120px 20px;
text-align:center;
color:#fff;
background:
linear-gradient(135deg,#ff3b3b,#ff7a00);
}
.ambition-title{
font-size:36px;
font-weight:900;
margin-bottom:15px;
}
.ambition-copy{
font-size:20px;
font-weight:700;
margin-bottom:35px;
}
.ambition-text{
max-width:780px;
margin:auto;
line-height:2;
font-weight:600;
}
.event-area{
padding:110px 20px;
background:#fff8dc;
text-align:center;
font-size: 15px;
}
.event-title{
font-size:30px;
font-weight:900;
margin-bottom:10px;
}
.event-lead{
font-size:18px;
font-weight:bold;
margin-bottom:50px;
}
.event-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:25px;
max-width:900px;
margin:0 auto 60px;
}
.event-card{
background:#fff;
padding:30px;
border-radius:20px;
box-shadow:0 10px 25px rgba(0,0,0,.12);
font-weight:800;
font-size:20px;
}
.event-card span{
display:block;
margin-top:8px;
font-weight:normal;
font-size:15px;
}
.event-cta{
max-width:760px;
margin:auto;
}
.event-btn{
display:inline-block;
margin:30px 0;
padding:18px 48px;
background:#ff3b3b;
color:#fff!important;
text-decoration:none!important;
border-radius:40px;
font-weight:900;
font-size:18px;
transition:.3s;
}
.event-btn:hover{
transform:scale(1.1);
}
.event-last{
margin-top:30px;
font-weight:bold;
}
@media(max-width:768px){
.event-grid{
grid-template-columns:1fr;
}
.ambition-title{
font-size:26px;
}
.movie-frame ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 576px) {
.tanjiman-lp .mission.block{
padding: 30px 0;
}
.tanjiman-lp .enemy.block{
padding: 30px 10px;
}
.tanjiman-lp .skills.block{
padding: 20px 20px 30px;
}
.tanjiman-lp .cta{
padding: 30px 20px 40px;
}
.tanjiman-lp .btn {
width: 100%;
font-size: 15px;
}
.tanjiman-gear{
padding: 30px 20px 40px;
}
.tanjiman-movie{
padding: 30px 20px;
}
.movie-btn{
font-size: 14px;
font-feature-settings: 'palt';
margin: 10px 0;
padding: 7px 40px
}
.movie-btn br{display: block;}
.movie-frame ul {
grid-template-columns: repeat(1, 1fr);
}
.tanjiman-activity {
padding: 20px 20px;
}
.tanjiman-message {
padding: 30px 20px;
}
.speech-wrap{
gap:20px;
}
.speech {
padding: 20px;
}
.speech h3 br{display: block;}
.tanjiman-base {
padding: 30px 20px;
}
.base-lead {
margin-bottom: 30px;
}
.base-card {
padding: 15px 10px;
}
.base-grid,.event-grid{
gap:8px;
}
.base-message {
padding: 30px 10px;
}
.ambition-hero {
padding: 20px 20px;
}
.event-area {
padding: 20px 20px;
}
.event-card {
padding: 20px 10px;
}
.event-btn {
margin: 10px 0;
padding: 13px 18px;
}
.event-last {
margin-top: 10px;
}
}


.txt_dz01{
background:#fff;
text-align:center;
box-shadow:0 8px 20px rgba(0,0,0,.12);
border-radius:20px;
padding:50px;
line-height: 2;
margin:0;
}

/* ======================
笑生会イズム セクション
====================== */

.sho-ism {
background: #f7fbfa;
padding: 40px 20px;
border-radius:20px;
}

.sho-ism .inner {
max-width: 1100px;
margin: 0 auto;
}

/* タイトル */
.ism-title {
text-align: center;
font-size: 34px;
font-weight: 700;
margin-bottom: 70px;
line-height: 1.6;
color: #333;
}

.ism-title span {
color: #059349;
font-size: 40px;
}

/* カード */
.ism-card {
display: flex;
gap: 30px;
align-items: center;
margin-bottom: 40px;
background: #fff;
padding: 50px;
border-radius: 20px;
box-shadow: 0 10px 30px rgba(0,0,0,0.05);
transition: .3s;
}

/* 画像 */
.ism-img {
width: 45%;
overflow: hidden;
border-radius: 18px;
}

.ism-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

/* テキスト */
.ism-text {
width: 55%;
}

.ism-text h3 {
font-size: 24px;
color: #059349;
margin-bottom: 20px;
font-weight: 700;
}

.ism-text p {
line-height: 1.9;
font-size: 16px;
color: #444;
}

/* 画像左右反転 */
.ism-card.reverse {
flex-direction: row-reverse;
}

/* ======================
SP
====================== */

@media (max-width: 768px) {

.sho-ism {
padding: 20px 0;
margin-top: 30px;
}

.ism-title {
font-size: 24px;
}

.ism-title span {
font-size: 28px;
}

.ism-card {
flex-direction: column;
gap: 25px;
padding: 25px;
margin-bottom: 50px;
}

.ism-img,
.ism-text {
width: 100%;
}

.ism-text h3 {
font-size: 20px;
}

.ism-text p {
font-size: 14px;
}
.txt_dz01 {
padding: 30px 20px;
}
.ism-card.reverse {
flex-direction: column;
}
}


.footer-info-wrap{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:28px;
}
@media (max-width: 992px) {
.footer-info-wrap{
grid-template-columns:repeat(2,1fr);
}
}
@media (max-width: 576px) {
.footer-info-wrap{
grid-template-columns:repeat(1,1fr);
padding: 0 20px;
}
 .section-title{
	margin-bottom: 30px;
}
}

.wpcf7-form #submitbtn{
background: #5ac082;
color: #fff;
padding: 7px 27px;
font-weight: 600;
border-radius: 50px;
border: none;
}