/*
Theme Name:gensen_tcd050-child
Template:gensen_tcd050
Version:1.8
*/
#cb_1.cb_content-category_list ul li .info {
    color: #000000;
    text-align: justify;

}
.cb_content-carousel .image .title {
    color: #ffffff!important;
    background: rgba(255, 120, 105, 0.5)!important;
    text-align: center;
}
.cb_content-carousel .image .title:hover{
        color: #ffffff!important;
}
.home-default #main_col {
    margin: 0px!important;
    padding-top: 80px!important;
    width: 100%;
    max-width: inherit;
}
ul.incho{
    list-style: none!important;
}
.innai{
    display: inline-block;
    width: 47%;
    text-align: center;
    padding: 10px;
}
.innai p{
    text-align: left;
}
.innai strong{
margin: 5px;
    font-weight: bold;
}

.miyazaki-banner{
    display: inline-block;
    text-align: left;
}
.miyazaki-banner img{
    width: 50%;
}
.warningred{
    border: solid 3px;
    padding: 10px;
    margin: 5px 0px;
    display: inline-block;
    color: #ff0000;
}
.t-pink{
    color: #fe3855;
}
.headline1 {
    position: relative;
    padding: 0 .5em .5em 1.7em;
    border-bottom: 1px solid #009ce5;
}
.headline1::after {
    position: absolute;
    top: .4em;
    left: .4em;
    z-index: 2;
    content: '';
    width: 12px;
    height: 12px;
    background-color: #009ce5;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.style4 {
    font-size: 22px!important;
    color: #009ce5;
}

.single .l-secondary { display: none; }
.single .l-primary { width: 100%; }

.label {
    color: white;
    background: #ff8c96;
    line-height: 1.4!important;
    border-radius: 5px;
    padding: 0.5em!important;
    margin-right: 5px;
}
.label:last-child{
     margin-right: 0px;   
}
#breadcrumb li.last {
    color: #ff9b4c!important;
}
.home-default #main_col {
    background: #fff9f4!important;
}
.cb_content-category_list ul li a {
    background-color: #FBE1DD!important;
}
.cb_content-category_list ul li h3 {
color:#ff9809;
}
.cb_content-category_list ul li a:hover {
    background: #fff1ef;
}
.pc-no{
        display: none!important;
    }
.tac{
    text-align: center;
}
.pc50{
        width: 50%;
    vertical-align: middle;
}
.pc80{
        width: 80%;
    vertical-align: middle;
}
/*---ビスタ シェイプ---*/
table.vista th{
    background: #c4a1d4;
    color: #fff;
}
table.vista th,table.vista td{
  border: 1px solid #000;
    vertical-align: middle;
}
@media only screen and (max-width: 1024px){
#copyright {
    background: rgba(255,219,173,1)!important;
    }
}
.cb_desc {
    color: #000!important;
}
#header_slider .item1 .caption .headline {
    text-shadow:#ff9809 1px 1px 10px,#ff9809 -1px 1px 10px,#ff9809 1px -1px 10px,#ff9809 -1px -1px 10px!important;
}

#header_slider .item1 .caption .catchphrase {
    text-shadow:#ff9809 1px 1px 10px,#ff9809 -1px 1px 10px,#ff9809 1px -1px 10px,#ff9809 -1px -1px 10px!important;
    font-weight: 600;
}

.title-line1{
 color: #E14137; /* 文字色 */
 padding: 22px 10px 10px 40px!important; /* 余白 */
 position: relative;
    background: url(/wp-content/themes/gensen_tcd050-child/img/denkyu.png) no-repeat left;
    background-size:36px 36px;
}
.title-line1:after{
 background: repeating-linear-gradient(-45deg, #E14137, #E14137 5px, #fcf0f1 0, #fcf0f1 10px); /* ストライプ */
 content: '';
 height: 5px; /* ストライプの高さ */
 position: absolute;
 bottom: 0;
 left: 0;
 right: 0;
 z-index: 1;
}
.orange{
    color:#ff9b4c;
}
.title-line2 {
     position: relative;
     color: white;
     padding:0.5em 0.5em 0.5em 1.4em!important;
     background-color: #ff9b4c;
}
 
.title-line2::after {
     position: absolute;
     top: 50%;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 18px;
     height:4px;
     background-color:white;
}
.title-line3{
 border-bottom: 1px solid #ED8E8E; /* 下線 */
 color: #ED8E8E; /* 文字色 */
 padding: 10px 10px 10px 50px!important; /* 上・右・下・左の余白 */
 position: relative;
}
.title-line3:before{
 background-image:linear-gradient(180deg, #ED8E8E 0%, #ED8E8E 55%, #ED8E8E 100%); /* 円のグラデーション */
 border-radius: 50%;
 content: '';
 display: block;
 position: absolute;
 top: 5px;
 left: 5px;
 width: 30px; /* 円の幅 */
 height: 30px; /* 円の高さ */
}
.title-line3:after{
 background-color: #fff; /* 白抜き円 */
 border-radius: 50%;
 content: '';
 display: block;
 position: absolute;
 top: 10px;
 left: 10px;
 width: 20px; /* 白抜き円の幅 */
 height: 20px; /* 白抜き円の高さ */
}
.title-line{
     position: relative;
     padding:0.5em 0.5em 0.5em 1.8em!important;
     border: 1px solid #ff9b4c;
     border-radius: 5px;
    font-size: 1.5rem!important;
    font-family: "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif!important;
        font-weight: 300!important;
    margin-bottom: 20px!important;
}
 
.title-line::after {
     position: absolute;
     top: 50%;
     left:0.7em;
     transform:translateY(-50%);
     content: '';
     width: 8px;
     height:8px;
     border: solid 3px #ff9b4c;
     border-radius:100%;
}

table.company {
margin: 0 auto;
border-collapse: separate;
border-spacing: 0px 15px;
}

table.company th,
table.company td {
padding: 10px;
    border: none!important;
}

table.company th {
background: #fbe1dd;
vertical-align: middle;
text-align: left;
width: 40%;
overflow: visible;
position: relative;
color: #000;
letter-spacing: 2px;
font-weight: bold;
}

table.company th:after {
left: 100%;
top: 50%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
border-color: rgba(136, 183, 213, 0);
border-left-color: #fbe1dd;
border-width: 10px;
margin-top: -10px;
}
/* firefox */
@-moz-document url-prefix() {
table.company th::after {
float: right;
padding: 0;
left: 30px;
top: 10px;
content: " ";
height: 0;
width: 0;
position: relative;
pointer-events: none;
border: 10px solid transparent;
border-left: #fbe1dd 10px solid;
margin-top: -10px;
}
}

table.company td {
background: #fff;
width: 60%;
padding-left: 20px;
}


table.price-table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  table-layout: fixed;
}
.pc{
    color: #000!important;
    background: #FBE1DD!important;
    font-weight: 300!important;
}
table.price-table th{
    background: #fff;
    vertical-align: middle;
    font-weight: bold;
    color: #FF9807;
}
table.price-table tr {
  background-color: #fff;
  border: 1px solid #000;
  padding: .35em;
}
table.price-table th,
table.price-table td {
  padding: 1em 10px 1em 1em;
  border: 1px solid #000;
  vertical-align: middle;
}
table.price-table th {
}
table.price-table thead tr{
  background-color: #eee;
}
table.price-table .txt{
   text-align: left;
    border: none!important;
}
table.price-table .price{
   text-align: right;
}
.tac{
    text-align: center;
}
.tal{
    text-align: left;
}
.onayami{
  display: inline-block;
  width: 80px;
  height: 80px;
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  border: 1px solid #fe9b4c;
  margin: 0 5px;
}

@media screen and (max-width: 600px) {
table.price-table {
    border: 0;
    width:100%
  }
    table.price-table .last{
        border-bottom: solid 1px #bbb;
    }
        table.price-table .price-last{
        border-bottom: none!important;
    }
            table.price-table .none{
        padding: 0px!important;
    }
table.price-table th{
    background-color: #fff!important;
    display: block;
    color: #ff9b4c;
    font-weight: bold;
border: none!important;
  }
.sp-no{
        display: none!important;
    }
.pc-no {
    display: block!important;
}
table.price-table thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
table.price-table .txt{
background: #FBE1DD;
    }
table.price-table tr {
    display: block;
    border: 1px solid #bbb;
    border-bottom: none;
  }
  
table.price-table td {
    border: none!important;
border-bottom: 1px solid #bbb!important;
    display: block;
    text-align: right!important;
    position: relative;
    padding: .625em .625em .625em 4em!important;
    border-right: none!important;
}
  
table.price-table td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
  }
  
table.price-table td:last-child {
    border-bottom: 0!important;
  }
    table.vista th, table.vista td, table.vista tdtbody{
        display: block;
    }
    table.vista thead{
        display: none;
    } 
    table.vista tr{
       padding: 5px;
    } 
table.vista td,table.vista th{
 border-bottom: none;
}
    table.vista td,table.vista th{
          text-align: right;  
    }
    table.vista td:last-child{
 border-bottom: 1px solid #000;
}
table.vista th::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
    }
    table.vista td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
    background: #c4a0d4;
    width: 80px;
    text-align: center;
    color: #fff;
    border-radius: 5px;
    }
table.clinic td{
    display: block;
    text-align:left!important;
    position: relative;
    padding: .625em!important;
    border-right: none!important;
 }
    table.clinic .yoyaku{
    border-top: none!important;
    }
table.clinic tr:last-child {
border-bottom: 1px solid #bbb!important;
}

.innai{
   width: auto;
}
.onayami {
    width: 70px;
    height: 70px;
}
}
.far{
    background: url(/wp-content/themes/gensen_tcd050-child/img/denkyu.png) no-repeat;
}

dl{
     margin:80px;
     line-height:1.8em;
     overflow: hidden;
     _zoom: 1;
}

dl.qa dd,
dl.qa dt{
     text-indent: -2.6em;   
     padding: 0 20px 0px 50px;
        text-align: justify;
}

dl.qa dt{
     margin:20px 20px 0 0;
}

dl.qa dd:first-letter,
dl.qa dt:first-letter{
     font-size: 1.7em;
     font-weight: bold;
     margin-right:10px;
     padding:5px;
     font-family: 'Nunito', sans-serif;
}


dl.qa dd{
     margin: 20px 0 -1px 0;
     padding-bottom:15px;
     border-bottom: 1px #777 solid;
}


dl.qa dt:first-letter{
     color: #004e87;
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
dl.qa dd:first-letter{
     color: #ED8E8E;
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
.box27 {
    position: relative;
    margin: 3em 0;
    border: solid 2px #ff9b4c;
text-align: center;
}
.box27 .box-title {
position: absolute;
    display: inline-block;
    top: -36px;
    left: -3px;
    padding: 5px 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #ff9b4c;
    color: #ffffff;
    border-radius: 5px 5px 0 0;
}
.box27 p {
    margin: 0; 
    padding: 0;
}
.cosme-box-big{
    text-align: center;
}
.cosme-box-big p{
    color: #777;
    font-size: 12px;
}
.cosme-box{
        border: 1px solid #777;
    padding: 10px;
    display: inline-block;
    width: 45%;
    text-align: center;
    vertical-align: top;
    height: 480px;
}
.cosme-box img {
    width: 150px;
    height: 150px!important;
    /* object-fit: cover; */
    border: 1px solid #777;
    object-fit: scale-down;
}
.cosme-box .title{
    color: #ff8c96;
    border-bottom: 1px solid #ff8c96;
    display: inline-block;
}
.cosme-box .price{
    font-weight: bold;
}
.cosme-box .txt{
    padding: 10px;
    text-align:left;
    background: #FBF0F2;
color: #000!important;
}
.cosme-box .kuwashiku{
   color: #ff8c96;
    display: inline-block;
}
@media screen and (max-width: 991px){
#cb_1 .cb_headline , #cb_1 .cb_desc ,
#cb_2 .cb_headline , #cb_2 .cb_desc{
    text-align: center;
}
}
@media screen and (max-width: 600px) {
.cosme-box{
        width: auto;
    margin: 10px 0px;
        height: auto;
}
.cosme-box img {
    width: 250px;
    height: 250px!important;
}
.cosme-box .price {
    font-size: 20px;
}
.cosme-box .kuwashiku {
    margin: 20px 0 10px 0;
}
#header_slider .item1 .caption .catchphrase {
    font-size: 18px;
    text-align: center;
}
}

/*-お問い合わせフォーム--/

/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
@media(max-width:500px){
.inquiry th,.inquiry td {
 display:block!important;
 width:100%!important;
 border-top:none!important;
 -webkit-box-sizing:border-box!important;
 -moz-box-sizing:border-box!important;
 box-sizing:border-box!important;
}
.inquiry tr:first-child th{
 border-top:1px solid #bbb!important;
}
    .inquiry .time{
    margin-top: 10px;
    width: 100%;
    }
/* 必須・任意のサイズ調整 */	
.inquiry .haveto,.inquiry .any {	
font-size:10px;
}
.pc50,.pc80{
        width: auto;
}
}
/*見出し欄*/
.inquiry th{
 text-align:left;
 font-size:14px;
 color:#444;
 padding-right:5px;
 width:30%;
 background:#f7f7f7;
 border:solid 1px #d7d7d7;
vertical-align: middle;
}
/*通常欄*/
.inquiry td{
 font-size:13px;
 border:solid 1px #d7d7d7;	
}
/*横の行とテーブル全体*/
.entry-content .inquiry tr,.entry-content table{
 border:solid 1px #d7d7d7;	
}
/*必須の調整*/
.haveto{
 font-size:7px;
 padding:5px;
 background:#ff9393;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*任意の調整*/
.any{
 font-size:7px;
 padding:5px;
 background:#93c9ff;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item{
 display:block;
}
/*送信ボタンのデザイン変更*/
.formbtn {
display: inline-block;
    padding: 10px!important;
    background: #f15801;
    color: #fff;
    font-size: 15px;
    border-radius: 2px;
    width: auto!important;
    border: 1px solid #f15801!important;
}
/*送信ボタンマウスホバー時*/
.formbtn:hover{
 background:#fff;
 color:#f15801;
}
#formbtn {
display: inline-block;
    padding: 10px!important;
    background: #f15801;
    color: #fff;
    font-size: 15px;
    border-radius: 2px;
    width: auto!important;
    height: auto;
    border: 1px solid #f15801!important;
    line-height: 1.2;
    margin-left: 20px;
}
/*送信ボタンマウスホバー時*/
#formbtn:hover{
 background:#fff;
 color:#f15801;
}
.old{
        width: 30%!important;
    margin-right: 10px;
}
.wpcf7-custom-item-error{
display: contents;
}
.contact-btn{
    text-align: center;
    padding: 10px;
}
/*20250716トップバナー*/
.top-banner.two-box {
  display: flex;
  flex-wrap: wrap;
  max-width: 1050px;
  margin: 0 auto;
  margin-bottom: 4rem;
}

.banner-box {
  flex: 40%;
  text-align: center;
}

.banner-box img {
   object-fit: cover;
   height: 247px;
   width: auto;
}