@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Anton&text=0123456789&display=swap');


/*!
Theme Name: Cocoon Child
Template:   cocoon-master
Version:    1.0.8
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

:root{

  --keyColor:#36a0da;
  --bgOrange:#ee6e00;
  --bgYellow:#ffc209;
}

body {
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, sans-serif !important;
    margin: 0;
    padding: 0;
    font-size: 1.0rem;
    color: #111;
    line-height: 1.8;
    font-weight:500;
}

blockquote cite{
 font-size:15px;
}

div.top{
 margin-bottom:1em;
}

ol, ul{
 list-style-position: inside;
 padding-left:0;
}

ol li::marker{
	font-weight:bold;
        color: var(--keyColor);
}

ul li::marker{
        color:#ccc;
}

img.logo{
	width:150px;
}

span.by{
    font-size: 12px;
	margin: 0 -5px 0 auto;
    font-weight: normal;
    line-height: 1.55;
    color: #656565 !important;
    text-align: center;
    display: flex;
	justify-content: flex-end;
    flex-direction: row;
    max-width:100%;
	align-items: center;
}

span.tosyo{
    font-size: 9px;
    margin: 0 0 0 10px;
    font-weight: normal;
    line-height: 1.55;
    color: #656565 !important;
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
    max-width:260px;
	align-items: center;
	letter-spacing: 0.046em;
}

div.gray-box{
 border:2px solid #ddd;
 padding:1.15em;
 margin-bottom:20px;
}

div.gray-box ul, div.gray-box dl{
 margin:auto;
}

div.gray-box ul, div.gray-box dl{
 margin:auto;
}

div.gray-box ul li{
 margin:0;
}

dl{
padding:0;
}

dl{
 margin-bottom:1.25em;
}

dl dt{
 border-left:5px solid var(--keyColor);
 padding-left:10px;
 line-height:1.25;
 margin-bottom:.5em;
}

.article dd{
 margin-left:15px;
}

dl dd{
  margin-left:1em;
  margin-bottom:1em;
 }

.fw-400 {
    font-weight: 500;
}

.cat-fv img{
 max-width:100% !important;
 width:100% !important;
}

.column-left .header_tel p{
 margin-bottom:0;
}

.column-left a.header_cta_tel{
 font-size:30px;
}

.entry-card-snippet, .related-entry-card-snippet {
    line-height: 1.6;
    margin-top:0.8em;
}

.kokuban {
    display: block;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    margin: 10px auto 20px;
    border:none;
}

.eye-catch{
 margin-left:auto;
 margin-right:auto;
}

.footer-bottom-logo{
 text-align:center;
}

blockquote{
     padding: 1em 2em;
}

blockquote p:last-child{
 margin-bottom:0;
}

.mb_10{
	margin-bottom:10px;
}

/*******************

Header

****************************************/


span.yellow {
    color: #fffc00;
}

#header_btn_wrap .inner__box .btn_wrap a.Hurf img {
    width: 60px;
}

.btn_wrap a.mail {
    padding: 0.6em 0.5em 0.6em 0.75em;
}

.btn_wrap a {
    display: block;
    position: relative;
}


.bottom_menu_contents .Hurf, #header_btn_wrap .Hurf {
    width: calc(98% / 2);
}

.mail {
    display: block;
    position: relative;
    text-align: center;
    color: rgb(255, 255, 255);
    height: 100%;
    font-size: 1.65rem;
    font-weight: 600;
    font-family: "Noto Sans JP", 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    padding: 0.4em 0.5em 0.4em 0.75em;
    background: linear-gradient(rgb(251, 101, 20) 0%, rgb(251, 101, 20) 50%, rgb(250, 62, 0) 51%, rgb(250, 62, 0) 100%);
    border-radius: 0.45em;
    overflow: hidden;
    line-height: 1.4;
}

header .mail {
    font-size: 12px;
    max-width:320px;
    margin-left:auto;
	background: #ff3039;
}

header .mail i{
	font-size: 17px;
}

header .mail span.big{
	font-size: 16px;
}

.btn_wrap a.Hurf span.min {
    font-size: 10px;
}
.btn_wrap a span.top {
    background: #fff;
    padding: 1px 5px;
    width: 100%;
    text-align: center;
    color: #101010;
    border-radius: 2px;
    font-size: 10px;
    margin-bottom: 0.5em;
    display:inline-block;
    width:100%;
}

.block{
 display:block;
}

.shiny-btn {
    position: relative;
}

.shiny-btn::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 60px;
    height: 200px;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

@keyframes shiny {
    0% { left: -20%; }
    10% { left: 120%; }
    100% { left: 120%; }
}

.shiny-btn02{
    position: relative;
}

.shiny-btn02::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 60px;
    height: 200px;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
    animation-name: shiny;
    animation-duration: 8s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

@keyframes shiny02 {
    0% { left: -20%; }
    10% { left: 120%; }
    100% { left: 120%; }
}

.maincolumn_banner{
   margin:0 auto 0 auto;
   text-align:center;
}

.cta-title {
    background: #0083c8;
    padding: 0.5em 0.5em 0.2em;
    text-align: center;
    color: #fff;
    font-size: 1.25rem;
    margin: auto;
}

.cta_wrapper{
 border:5px solid #0071bb;
 margin-bottom:1.5em;
}

.cta_wrapper_title{
 background:#0071bb;
 color:#fff;
 font-weight:600;
 line-height:1.2;
 font-size:1.8rem;
 text-align:center;
 padding:.5em .5em .2em .5em;
}

.cta_side_title{
 font-size:1.25rem;
 }

.cta_contents_box{
 background:#fff;
 padding:1.2em;
 position:relative;
 background:url(images/cta_back.png) repeat-x center bottom -15px;
 }

.cta_contents_box_side{
 background:#0071bb;
 padding:.25em;
 position:relative;
 }


.cta_contents_wrap{
      display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
justify-content:space-between;
 }

.cta_contents_item{
 width:calc(98%/2);
 position:relative;
 }

.cta_side_wrap{
      display: flex;
    flex-direction: row;
    flex-wrap:wrap;
justify-content:space-between;
 }

.cta_side_item{
 width:100% !important;
 position:relative;
 margin-bottom:.5em;
 }

.cta_side_item:last-child{
 margin-bottom:0;
}

.cta_top_text{
 font-weight:600;
 text-align:center;
 font-size:1.6rem;
 line-height:1.4;
 margin-bottom:1em;
  z-index:2;
 position:relative;
 }

.cta_top_text span{
 color:#eb0c21;
 }

.marker-P-yellow {
background: linear-gradient(transparent 60%, #ffffa8 0%);
}


.cta_contents_item a{
 display:block;
 padding: 1.45em 0.2em 1em 0.2em;
 color:#fff;
 text-align:center;
 border-radius:6px;
 font-size:0.95rem;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
justify-content:center;
 }

.Bnr .cta_contents_item a{
 display:block;
 padding:.75em .3em;
 color:#fff;
 text-align:center;
 }

.cta_side_item a{
 display:block;
 padding:.5em .8em .5em .8em;
 background:#fff;
 border-radius:0px;
 color:#fff;
 text-align:center;
     -webkit-transition: all .3s;
    transition: all .3s;
 border:0;
 border-radius:6px;
}

.cta_side_item a:hover{
 text-decoration:none;
}

.btn_icon{
  position:absolute;
  left:-15px;
  top:-15px;
  width:60px;
 }

.btn_icon_side{
  position:absolute;
  left:-25px;
  top:-35px;
  width:60px;
 }

.cta_contents_item a:hover, .cta_side_item a:hover{
	 background:#fff;
	}

.cta_contents_item p, .cta_side_item p{
 margin-bottom:.3em;
 margin-top:0;
 font-size:1.5rem;
 font-weight:bold;
 letter-spacing:-1px;
 }
.cta_side_item p{
	padding-left: 1em;
}
.cta-wrap .cta_contents_item p{
 font-size:1.2rem;
 padding-left: 0;
 }
.cta_contents_item p
.cta_side_item p{
 margin-bottom:7px;
 margin-top:0;
 }

.cta_contents_item p img, .cta_side_item p img{
	 max-width:280px;
	}

.cta_contents_item a span.text, .cta_side_item a span.text{
 background:#fff;
 text-align:center;
 padding:.5em;
 color:#1a1a1a;
 font-size:0.85rem;
 font-weight:500;
 border-radius:3px;
 }

.cta_side_item a.mail span{
 margin-top:.3em;
 display:inline-block;
}

.cta_side_item a.mail:after{
 font-family: "FontAwesome";
 content: '\f105';
 margin-left:.5em;
 position:absolute;
 font-size:1.75rem;
 right:.2em;
 top: 50%;
  transform: translateY(-50%);
}

.cta_contents_item a.mail, .cta_side_item a.mail{
  background:#de2304;
 text-decoration:none;
 border-bottom:5px solid #c21c00;
 max-width:100%;
 }

 .cta_contents_item a.mail .top{
	background: #fff;
	color:#c21c00;
	font-size: 0.8rem;
	padding: .45em;
	text-align: center;
	display: block;
	margin: 0 auto .5em;
	max-width: max-content;
 }

 .cta_contents_item a.mail.Center{
	width:100% !important;
	margin: 0 auto 1em;
	max-width:500px;
	padding: .5em .45em;
}
@media screen and (max-width: 768px) {
	.cta_contents_item a.mail.Center{
		margin-bottom: 0;
	}
}
.cta_side_item a.mail{
 border-radius:6px;
    padding: 1.5em 0.8em;
    border-bottom: 0;
 font-size:1rem;
 line-height:1.7;
 }

.cta_side_item a.mail p{
 margin-bottom:0;
}

.cta_contents_item a.mail img, .cta_side_item a.mail img{
 margin-right:.5em;
 max-width:45px;
 vertical-align:middle;
 position:absolute;
 left:.5em;
 top: 50%;
  transform: translateY(-50%);
 }

.cta_contents_item a.mail span.time{
 background:#fff;
 text-align:center;
 display:inline-block;
 color:#de2304;
 font-size:12px;
 padding:5px 2em;
 margin-top:5px;
}

.cta_contents_item a.mail:hover, .cta_side_item a.mail:hover{
	 background:#f52604;
	}

.br-sp02{
 display:none;
}


.cta_wrapper_title span {
    position: relative;
    display: block;
    padding: 0 45px;
}

.cta_wrapper_title span:before {
	    content: '';
	    position: absolute;
	    top: 50%;
	    display: inline-block;
	    width: 54px;
	    height: 2px;
	    background-color: #fff;
	    -webkit-transform: rotate(60deg);
	    transform: rotate(60deg);
	    left:25px;
}


.cta_wrapper_title span:after {
    content: '';
    position: absolute;
    top: 50%;
    right:25px;
    display: inline-block;
    width: 54px;
    height: 2px;
    background-color: #fff;
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg);
}


.cta_side_title span:before {
	    content: '';
	    position: absolute;
	    top: 50%;
	    display: inline-block;
	    width: 54px;
	    height: 2px;
	    background-color: #fff;
	    -webkit-transform: rotate(60deg);
	    transform: rotate(60deg);
	    left:15px;
}


.cta_side_title span:after {
    content: '';
    position: absolute;
    top: 50%;
    right:15px;
    display: inline-block;
    width: 54px;
    height: 2px;
    background-color: #fff;
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg);
}

.Bnr.priority{
 z-index:5555 !important;
}

span.text_red{
 background:#fe0000;
 padding:.2em .75em .2em .75em;
 color:#fff;
 font-size:0.8rem;
 margin-left:.3em;
text-align:center;
	    border-radius: 1.35em;
	line-height:1.0;
}

span.text_gray{
 background:#dddddd;
 padding:.2em .4em .2em .4em;
 color:#dddddd;
 font-size:0.8rem;
 margin-left:.3em;
text-align:center;
	    border-radius: .35em;
	line-height:1.0;
}

input[type='submit'], #bbp_reply_submit, .bp-login-widget-register-link a{
  background:#de2304;
  color:#fff;
  border:none;
   border-radius:8px;
 color:#fff;
 border-bottom:3px solid #c21c00;
 text-align:center;
     -webkit-transition: all .3s;
    transition: all .3s;
   padding:1em 1em 1em 1em;
  font-size:1.3rem;
  max-width:450px;
 }
.wpcf7 .wpcf7-submit:disabled{
	    background: #aaa;
		border-color:#999;
}
.online .form__check{
	margin:1em auto;
}

 .search-edit, input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], textarea, select{
	font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
 }

.online input[type="date"]{
	margin-bottom:.5em;
}

.online input[type="text"]#addr{
	margin-top:.5em;
}

.menu-prefectures select{
	margin-bottom:.5em;
}

textarea#textarea_min{
	max-height:200px;
}

input[type='submit']:hover, #bbp_reply_submit:hover{
	 opacity:0.8;
 }

.Contact-table-wrapper th, .Contact-table-wrapper td{
 padding:.7em;
 }

.Contact-table-wrapper th{
 background:#fff;
 border-left:none;
 text-align:left;
 }

.Contact-table-wrapper td{
 border-right:none;
 }

.mobile-footer-menu-buttons{
 display:none;
}

.sp-disp{
display:none !important;
}

table.comm_mb20 td p{
	margin-bottom:0;
}

#zip{
	margin-bottom:0 !important;
}

/**********************以下ヘッダー用********************************/

.header{
 padding:.2em 0 .25em 0;
 }

.header_wrapper {
    width: 100%;
    padding: 15px 2.5% 10px 2.5%;
    box-shadow: 0 3px 3px rgba(0,0,0,0.14);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.14);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.14);
    background: #fff;
    z-index: 999;
}

.header_contents_wrap {
    max-width: 1256px;
    margin: auto;
    padding:0 29px;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content:space-between;
    align-items:center;
}

.header_contents_wrap .header_contents:first-child{
	max-width:500px;
	width:100%;
}

.logo-font div.text{
	width:calc(100% - 140px);
}

.header_contents:nth-of-type(2) {
    margin-right:0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content:flex-end;
    align-items:center;
    width:60%;
}

.header_tel_title {
    background: #ccc;
    color:#1a1a1a;
    padding:3px;
    line-height:1.2;
    width: 100%;
    text-align: center;
    font-size:0.7rem;
    font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight:400;
}

.header_contents .btn_wrap{
 margin-left:2%;
 }

.header_tel {
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.3;
    text-align: center;
    margin-top:-3px;
}

.header_tel a {
    color: #000;
}

.header_tel div {
    font-weight: normal;
    font-size: 0.8rem;
}


.header_contact_btn:hover{
  text-decoration:none;
}

.header_contents h1 {
    font-size: 0.7rem;
    margin: 0 auto 0 auto;
    font-weight:normal;
    line-height:1.3;
}
.header_contents div.disp{
    font-size: 0.7rem;
    margin: -5px auto 0 auto;
    font-weight:normal;
    line-height:1.75;
}

.btn_mail .mail_btn_time {
    border-radius: 12px;
    color: #319400;
    text-align: center;
    background: #ffef19;
    line-height: 1.1;
    padding: 3px;
    max-width: 280px;
    display: block;
    font-size: 12px;
    margin: auto;
    font-weight: 600;
    margin-top: .56em;
}

.navi{
     position:relative;
     background:#fff;
     border-top:1px solid #ddd;
     z-index:999;
     border-bottom:3px solid var(--keyColor);
}

.navi-in a:hover{
 background:var(--keyColor);
 color:#fff;
 }



.navi a:hover{
 text-decoration:none;
 }

.navi-in > ul .sub-menu{
 background:#fff;
 border:none;
}

.navi-in > ul .sub-menu .item-label:after{
  display:none;
 }
.navi-in > ul.menu-top li:last-of-type a{
	background: var(--keyColor);
    color: #fff;
}
.navi-in > ul.menu-top li .sub-menu li:last-of-type a{
	background:#fff;
	color: #333;
}
.navi-in > ul.menu-top li .sub-menu li:last-of-type a:hover{
		background: var(--keyColor);
    color: #fff;
}
.navi a{
 color:#1a1a1a;
 }

.navi .item-label{
 position:relative;
 padding: 0 2em;
 }

.navi li:first-child .item-label{
 border-left:1px solid #ddd;
}

.navi-in > ul .sub-menu li:first-child .item-label{
 border-left:0;
}

.navi .item-label:after{
  width:1px;
  background:#ddd;
  height:100%;
  position:absolute;
  content:'';
 top: 50%;
  right: 0;
  transform: translateY(-50%);
 }

 .header_tel a:before{
	display:none;
 }

.content-in{
 background:#fff;
}

/**********************以下トップLP用********************************/

.comm_white_wrap h3{
margin-bottom:1em !important;
}

h3.related-entry-card-title::before{
   display:none;
 }

.btn_fixed img:hover{
opacity:0.78;
}

#why h3:before{
 display:none;
}

.mt_none{
margin-bottom:0 !important;
}

.align_left{
text-align:left !important;
}

b{
font-weight:bold;
}

a{
outline: none;
text-decoration:none;
border:none;
}

a:hover{
text-decoration:underline;
}

a:focus{
outline: none;
}

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


.text_min{
font-size:70% !important;
}

img{
vertical-align:bottom;
max-width:100%;
}

p{
margin:0 0 20px 0;
font-size:17px;
}

.wd100{
width:100%;
}

.wd20{
width:23%;
}

.wd_right{
text-align:right;
}

.valign_middle{
vertical-align:middle !important;
}

.comm_mb15{
margin-bottom:15px;
}

.text_red{
color:#e10900;
}

.text_yerrow{
color:#ffdf61;
}

.comm_mb50{
margin-bottom:50px;
}


.comm_main{
padding:2.5% 25px 2.5% 25px;
margin:auto;
}

.comm_contents{
max-width:1000px;
margin:auto;
}


.back_white{
background:#fff;
border-radius:6px;
padding:12px !important;
text-align:center;
}

.top h2{
font-size:2.15rem;
margin:1em auto 1em auto;
position:relative;
width:100%;
text-align:center;
letter-spacing:1px;
line-height:150%;
font-weight:600;
}

h2.bk-none{
 background:transparent !important;
 color:var(--keyColor) !important;
 margin-bottom:.5em !important;
 padding:0;
}

.tt_wrap{
border-top:2px solid #36b3e1;
border-bottom:2px solid #36b3e1;
padding:15px;
text-align:center;
position:relative;
}

.form_title{
 color:#fb6514;
 font-weight:900;
font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
 text-align:center;
 margin:0 auto .5em;
 font-size:30px;
}

/*.tt_wrap:before{
position:absolute;
left:0;
background:#36b3e1;
height:5px;
z-index:2;
bottom:-5px;
content:'';
width:30%;
}*/

.top h2 span{
margin:auto;
}

.top h2:before{
background:url(images/title_icon.png) no-repeat center center;
background-size:100px 100px;
content:'';
width:100px;
height:100px;
margin:0 auto 0px auto;
display:block;
}

.faq_h2:before{
background:url(images/faq_icon.svg) no-repeat center center;
background-size:150px 100px;
content:'';
width:150px;
height:100px;
}

.kaitori_h2:before{
background:url(images/merit_title_icon.png) no-repeat center center;
background-size:100px 95px;
content:'';
width:100px;
height:95px;
}

.form_wrap h2:before{
	display:none;
}

.title_count{
display:block;
vertical-align:top;
font-size:2.6rem;
padding-right:10px;
font-weight:600;
}

.title_count font{
color:#36b3e1;
}

.title_count:nth-of-type(2){
font-weight:bold;
color:#000;
text-align:center;
padding:0;
}

.top h3{
text-align:center;
font-size:2.0rem;
margin:0 auto 2.5em auto;
font-weight:600;
}

.top h3 span{
background:#fffaa6;
}

.top h3 font{
color:#f73939;
}

h4.sub:before{
	display:none;
}

.ask_main_wrap{
background:url(images/case_back.png) repeat-x center bottom;
padding:2.5em 2.5em 5em 2.5em;
}

.ask_wrap{
display: flex;
flex-direction: row;
flex-wrap: wrap;
width:100%;
margin-bottom:5.5em;
}

.ask_contents{
display:table;
width:48.5%;
float:left;
flex: auto;
margin-bottom:1.5em;
margin-right:3%;
}

.ask_contents:nth-of-type(even){
margin-right:0;
}

.ask_contents_box{
background:#36b3e1;
position:relative;
z-index:10;
color:#fff;
font-size:1.2rem;
font-weight:bold;
padding:12px;
display:table-cell;
width:15%;
text-align:center;
vertical-align:middle;
}

.ask_contents_box:after{
content:'';
width: 0;
height: 0;
border-style: solid;
border-width: 10px 0 10px 20px;
border-color: transparent transparent transparent #36b3e1;
position:absolute;
z-index:12;
right:-10px;
top: 50%;
  transform: translateY(-50%);
}

.ask_contents_box02{
display:table-cell;
width:70%;
vertical-align:middle;
padding:12px 12px 12px 20px;
background:#d0f2ff;
color:000;
font-size:1.4rem;
font-weight:600;
}


.nouhau_wrap{
border:1px solid #ffa729;
background:#fff;
padding:15px;
margin-bottom:2em;
}

.nouhau_wrap p{
margin-bottom:15px;
}

.nouhau_title_wrap{
display:block;
text-align:center;
margin:0;
}

.nouhau_title_icon{
display:table-cell;
background:#f73939;
text-align:center;
color:#fff;
padding:3px 15px 3px 15px;
font-size:1.4rem;
vertical-align:middle;
}

.nouhau_title{
color:#000;
font-weight:600;
font-size:1.4rem;
display:block;
}

.nouhau_contents_wrap{
display:table;
width:100%;
margin-bottom:1em;
}

.nouhau_contents{
width:30%;
display:table-cell;
}

.nouhau_contents img{
border:5px solid #fff;
box-shadow:1px 1px 3px 0px #a5a5a5;
}

.nouhau_contents:nth-of-type(2){
margin-right:0;
width:68%;
vertical-align:middle;
padding-left:3%;
}

.nouhau_contents p{
margin-bottom:10px;
}

.nouhau_contents strong{
font-weight:bold;
color:#f73939;
}

.nouhau_red{
font-weight:bold;
color:#f73939;
}

.step_wrap{
    display:table;
    width:100%;
}

.step_contents{
display:table-cell;
width:31.3%;
font-size:0.95rem;
}

.step_contents:nth-of-type(odd){
width:31.3%;
}

.step_contents:nth-of-type(even){
width:3%;
color:#c51d1d;
font-size:40px;
vertical-align:middle;
text-align:center;
}

.step_contents_image{
margin:0 auto 10px auto;
position:relative;
text-align:center;
max-width:480px;
}

.step_contents_image img{
border:6px solid #fff;
    box-shadow: 0 3px 3px rgba(0,0,0,0.3);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.3);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.3);
}

.step_contents_free{

}

.step_number{
position:absolute;
right:5%;
top:-13%;
font-size:60px;
font-weight:bold;
color:#c51d1d;
z-index:3;
font-family: 'Anton', sans-serif !important;
}

.step_title{
color:#c51d1d;
font-size:1.15rem;
text-align:center;
border-bottom:1px dashed #ccc;
padding-bottom:10px;
padding-top:10px;
background:#fff;
padding-right:5px;
}

.step_text{
padding:10px;
background:#fff;
}

.comm_contact_btn{
display:block;
background:#319400;
border-radius:12px;
color:#fff;
font-weight:500;
text-align:center;
font-size:1.9rem;
padding:12px 15px 12px 15px;
box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
border-bottom: solid 3px #216500;
text-decoration:none !important;
font-family: 'Noto Sans JP', sans-serif;
letter-spacing:1px;
line-height:1.4;
}

a.comm_contact_btn:hover{
background:#50be1a;
border-bottom: solid 3px #216500;
color:#fff;
}

a.header_contact_btn:hover{
 color:#fff;
 opacity:0.75;
}

.point_wrap{
background:url(images/home_back.jpg);
}

.keisen_wrap{
background:url(images/glaf_back.jpg);
}

.wood_wrap{
color:#000 !important;
padding:2.5em 1em 2.5em 1em;
}

.contact_wrap{
background:url(images/form_back.jpg);
color:#000 !important;
}

.blue_back{
background:#f7fdff;
}

.point_contents_wrap{
border-left:1px solid #ddd;
border-right:1px solid #ddd;
border-bottom:1px solid #ddd;
background:#fff;
padding:25px;
}

.mb_none{
margin-bottom:0 !important;
}

/**.comm_contact_btn:after{
font-family: "FontAwesome";
content: '\f18e';
margin-left:5px;
}**/

.page_fv_wrapper{
position:relative;
z-index:3;
}

.page_fv_bottom{
position:absolute;
z-index:15;
margin-top:-5px;
text-align:center;
left: 50%;
  transform:translateX(-50%);
width:100%;
max-width:1000px;
text-align:center;
}

.cv_area_image{
position:relative;
z-index:15;
text-align:center;
margin:-55px auto 0 auto;
max-width:1000px;
text-align:center;
}

.comm_cv_wrapper{
background:#36b3e1;
padding:2.5%;
position:relative;
z-index:10;
margin-bottom:3em;
}

.comm_cv_wrapper:after{
width: 0;
height: 0;
border-style: solid;
border-width: 60px 120px 0 120px;
border-color: #36b3e1 transparent transparent transparent;
content:'';
position:absolute;
bottom:-40px;
left: 50%;
  transform: translateX(-50%);
}

.pt_5{
padding-top:7em;
}

.tel_cv_wrap{
background:#fff;
padding:15px 15px 15px 15px;
box-shadow:7px 6px 0px -2px #1582aa;
position:relative;
z-index:20;
}

.tel_cv_contents:nth-of-type{
width:100%;
margin-top:20px;
}

.tel_top_wrapper{
  border:4px solid #c61d3e;
  display:table;
  width:100%;
}

.tel_top_contents{
display:table-cell;
width:45%;
padding:10px;
background:#c61d3e;
color:#fff;
}

.tel_top_contents span{
font-size:0.9rem;
line-height:1.5;
display:block;
text-align:center;
}

.tel_top_contents span {
  position: relative;
  display: block;
  padding: 0 45px;
}
.tel_top_contents span:before{
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 54px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg);
}

.tel_top_contents span:after{
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 54px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}

i.teltitle{
color:#ffed00;
padding:1px 10px 1px 10px;
border:1px solid #ffed00;
border-radius:2px;
font-style:normal;
width:100%;
display:inline-block;
margin-bottom:5px;
letter-spacing:1px;
}

.tel_top_contents span:before {
  left:12px;
}

.tel_top_contents span:after {
  right:12px;
}

.tel_top_contents a{
color:#c61d3e;
font-size:2.4rem;
font-weight:bold;
text-decoration:none;
display:block;
text-align:center;
line-height:1.1;
}

.tel_top_contents a:before{
content:'';
background:url(images/free-icon.svg) no-repeat;
background-size:35px 35px;
margin-right:5px;
width:35px;
height:35px;
display:inline-block;

}

.tel_top_contents_title{
border-radius:6px;
background:#000;
color:#fff;
text-align:center;
margin-bottom:10px;
}

.tel_top_contents:nth-of-type(2){
background:#fff;
width:75%;
color:#111;
text-align:center;
line-height:1.6;
vertical-align:middle;
}

.tel_top_contents p{
font-weight:normal;
text-align:center;
margin-bottom:5px;
font-size:0.8rem;
}

.tel_top_contents p span{
font-size:0.7rem;
margin-left:3px;
}

.text_min{
font-size:80%;
}

.comm_btn_wrapper{
max-width:570px;
position:relative;
z-index:2;
margin:20px auto 0 auto;
}

.comm_btn_icon{
background:#f23434;
position:absolute;
color:#fff;
text-align:center;
width:75px;
height:75px;
line-height:1.0;
top:-5px;
left:-80px;
border-radius:50%;
padding-top:17px;
font-size:1.4rem;
}

.free_icon{
background:#f23434;
color:#fff;
text-align:center;
width:45px;
height:45px;
line-height:1.0;
border-radius:50%;
padding-top:15px;
font-size:1.15rem;
display:inline-block;
margin-right:10px;
transform: rotate(-10deg);
}

.kaitori_merit_title{
background:#c04d99;
color:#fff;
text-align:center;
padding:5px 25px 5px 25px;
display:inline-block;
font-size:1.5rem;
font-weight:bold;
margin-bottom:25px;
box-shadow:3px 2px 0px 1px #f6e1ef;
letter-spacing:1px;
min-width:500px;
line-height:1.6;
}

.tsukai_title{
background:#3077b3;
color:#fff;
text-align:center;
padding:5px 25px 5px 25px;
display:inline-block;
font-size:1.5rem;
line-height:1.3;
font-weight:bold;
margin-bottom:25px;
box-shadow:3px 2px 0px 1px #5f96c4;
letter-spacing:1px;
min-width:500px;
}

.text_center{
text-align:center;
}

.kaitori_wrap{
border:1px solid #f6e1ef;
background:#fff;
padding:15px;
display:table;
width:100%;
margin-bottom:1em;
}

.kaitori_contents{
width:25%;
display:table-cell;
text-align:center;
}

.kaitori_contents:nth-of-type(2){
padding-left:3%;
width:72%;
vertical-align:middle;
text-align:left;
}

.kaitori_contents_title{
background:#f6e1ef;
padding:10px 10px 10px 20px;
font-size:1.4rem;
border-left:7px solid #bb7ea6;
margin-bottom:15px;
font-weight:600;
}

.tyukai_wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width:100%;
}

.flex-items{
flex: auto;
width:32%;
margin-right:2%;
float:left;
border:1px solid #e1f0fc;
padding:15px;
}

.flex-items:nth-of-type(3){
margin-right:0;
}

.tsyukai_title{
background:#e1f0fc;
padding:10px 10px 10px 20px;
border-left:7px solid #3077b3;
font-size:1.2rem;
line-height:140%;
margin-bottom:10px;
}

.text_black{
color:#000 !important;
}


.review_box{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width:100%;
}

.review_wrap{
background:#fff;
padding:15px;
    box-shadow: 0 3px 3px rgba(0,0,0,0.2);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
flex: auto;
margin-bottom:3em;
}

.review_wrap:nth-of-type(even){
margin-right:0;
}

.review_title{
display:table;
width:100%;
background:#c61d3e;
color:#fff;
margin-bottom:15px;
}

.review_title_contents{
text-align:center;
padding:10px;
display:table-cell;
}

.review_title_contents:nth-of-type(2){
background:#fabeca;
text-align:center;
width:30%;
color:#000;
font-size:90%;
}

.review_photo{
width:18%;
margin-right:2%;
float:left;
}

.review_text{
padding:15px;
border:5px solid #fafafa;
font-size:0.95rem;
}
.review_text p:last-child{
margin-bottom:0;
}


.review_photo img{
width:110px;
height:110px;
object-fit: cover;
overflow:hidden;
border-radius:50%;
border:3px solid #fff;
    box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
}

.faq_wrap{
border:1px solid #36b3e1;
background:#fff;
padding:25px;
margin-bottom:1em;
    box-shadow: 0 3px 3px rgba(0,0,0,0.3);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.3);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.3);
}

.faq_title_wrap{
display:table;
width:100%;
padding-bottom:10px;
border-bottom:1px solid #ddd;
margin-bottom:10px;
}

.faq_title_contents{
width:80px;
display:table-cell;
text-align:left;
}

.faq_title_contents:nth-of-type(2){
padding-left:10px;
color:#e25e42;
font-size:1.3rem;
width:92%;
vertical-align:middle;
line-height:150%;
}


#contact_wrapper table{
border-top:1px solid #f2f2f2;
margin-bottom:2em;
}

#contact_wrapper th, #contact_wrapper td{
border-bottom:1px solid #f2f2f2;
padding:15px;
}

#contact_wrapper th{
border-right:1px solid #f2f2f2;
width:30%;
text-align:center;
font-size:95%;
vertical-align:middle;
}

#about_wrapper table{
border-top:1px solid #f2f2f2;
margin-bottom:2em;
}

#about_wrapper th, #about_wrapper td{
border-bottom:1px solid #f2f2f2;
padding:15px;
}

#about_wrapper th{
border-right:1px solid #f2f2f2;
width:30%;
text-align:center;
font-size:95%;
vertical-align:middle;
}

.concept_contents{
text-align:left;
font-size:1.2rem;
margin:0 auto 50px auto;
width:90%;
}

.concept_contents_center{
text-align:center;
font-size:1.2rem;
margin:0 auto 50px auto;
width:100%;
}

.concept_image{
margin:auto;
display:table;
}

.concept_image img{
border:5px solid #fff;
box-sizing:border-box;
}

.concept_image_table{
display:table-cell;
width:49%;
}

.concept_image_table:nth-child(2){
width:2%;
text-align:center;
font-size:40px;
font-weight:bold;
vertical-align:middle;
}

.concept_image_table:nth-child(3){
text-align:right;
}

.comm_white_back{
background:#fff;
padding:5%;
color:#222;
}

.comm_table_wrap{
display:table;
margin:0 auto 5% auto;
}

.comm_table_cell{
display:table-cell;
padding:0 5% 0 0;
width:50%;
vertical-align:top;
font-size:1.2rem;
}

.comm_table_cell:nth-child(even){
display:table-cell;
padding:0;
text-align:left;
vertical-align:middle;
}

.comm_width_image{
margin:0 auto 3% auto;
}

.comm_hurf_image{
width:49%;
float:left;
margin:0 0 3% 0;
}

.comm_hurf_image:nth-child(even){
float:right;
}

.comm_hurf_image:nth-child(n+3){
margin:0;
}

.comm_mb30{
margin-bottom:4%;
text-align:center;
}

.comm_mb30_left{
margin-bottom:4%;
}

.cancel_link{
font-size:110%;
font-weight:bold;
text-align:center;
text-decoration:underline;
margin-bottom:30px;
word-break: break-all;
}

.cancel_link a{
color:#0033cc;
}

.cansel_text{
border:1px solid #ddd;
padding:12px;
text-align:center;
}

.kiyaku_text{
border:1px solid #ddd;
padding:3%;
}

.kiyaku_text a{
color:#0033cc;
}

.kiyaku_text p{
margin-bottom:10px;
}

.Bnr{
  position: relative;
  margin: 0 auto;
  width:100%;
  display: none;
  
}

.Bnr .Bnr__img{
  position: fixed;
  border-top:3px solid var(--keyColor);
  bottom:0;
 width:100%;
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
  z-index: 250;
  background-color:rgba(255,255,255,0.95);

}
.Bnr__img__inner{
  box-sizing:border-box;
  padding: 5px 10px 10px 10px;
  max-width:1000px;
  margin:auto;
}
.Bnr .Bnr__img__inner a.mail{
  height:100%;
      display: block;
 font-size:1.4rem;
 font-weight:bold;
 line-height:1.05;
 overflow: hidden;
 padding-bottom: 15px;
}

.Bnr .Bnr__img__inner a.mail.other{
	font-size: 1.2rem;
	padding: .75em .5em;
	line-height: 1.45;
}

.Bnr .Bnr__img__inner a.mail p{
	margin: 0;
}
.Bnr .Bnr__img p.close{
  position: absolute;
  right: 20px;
  top:10px;
}
.Bnr .Bnr__img p.close a{
  display: block;
  width: 20px;
  height: 25px;
  text-align: center;
}
.Bnr .Bnr__img p.close a span{
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.Bnr .Bnr__img p.close a i{
  font-size: 22px;
  z-index: 888;
  color: #fff;
}

.Bnr .Cta--wrap .tel-wrap{
 padding:.2em;
 display: flex;
 flex-direction: column;
 justify-content: center;
 height: 100%;
	border-width:3px;
 box-shadow: 6px 3px 10px 0px rgba(0, 0, 0, 0.23);
}


.Bnr .Cta--wrap .tel-wrap span.top{
	font-size:15px;
	display:block;
	text-align:center;
	color:#000;
}

.Cta--wrap .tel-wrap a.footer-tel span.time{
 font-size:12px;
 font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.bottom_menu_contents_wrap.Cta--wrap{
	flex-wrap:nowrap;
column-gap: 10px;
}

.mt_none{
margin-bottom:0;
}

.about_staff_wrap{
font-size:1.4rem;
text-align:center;
font-weight:bold;
margin-bottom:1em;
}

.about_staff_image{max-width: 650px;margin:0 auto 15px auto;text-align:center;}

.about_staff_image img{
border:5px solid #fff;
    box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
}

.balloon {
  position: relative;
  display: inline-block;
  margin:0 auto 15px auto;
  padding: 7px 10px;
  min-width: 260px;
  max-width: 650px;
  width: 100%;
  background: #e0edff;
  border-radius: 15px;
}

.balloon:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #e0edff;
}

.difference_wrap{
width:100%;
display:table;
margin:0 auto 3em auto;
}

.difference_contents{
width:49%;
display:table-cell;
vertical-align:top;
}

.difference_contents:nth-of-type(2){
width:2%;
}

.difference_flow_title{
background:#3077b2;
text-align:center;
font-size:1.25rem;
font-weight:bold;
padding:15px;
margin-bottom:15px;
color:#fff;
}


.difference_contents img{
border:1px solid #eee;
margin-bottom:25px;
min-height:295px;
}

.difference_title{
background:#36b3e1;
box-shadow: 3px 2px 0px 1px #a0d2e4;
}

.difference_flow_wrap ul{
margin:0 auto 0 auto;
list-style:none;
padding:0;
border:none;
}

.difference_flow_wrap li{
display:table;
width:100%;
margin-bottom:1em;
padding:0;
}

.difference_flow_wrap li i{
font-size:50px;
color:#ccc;
line-height:1.0;
}

.difference_flow_wrap p{
margin-bottom:10px;
}

.difference_flow{
background:#ffbc00;
width:30px;
height:30px;
line-height:30px;
color:#111;
text-align:center;
border-radius:50%;
display:block;
}

.difference_flow_wrap_item{
width:30px;
display:table-cell;
}

.difference_flow_wrap_item:nth-of-type(2){
padding-left:10px;
width:97%;
font-size:1.25rem;
}

.icon_red{
background:#f42a35;
color:#fff;
}

.flow_text_red{
color:#f42a35;
}

.Bnr__img a .toptext{
	border:3px solid #de2304;
	border-radius: 3.6em;
	padding: 2px .5em;
	text-align: center;
	background: #fff;
	color:#de2304;
	font-weight: 600;
	font-size: 1.0rem;
	display: block;
	margin:0px auto 5px;
	max-width: 60%;
}

.flow_kaitori_merit{
display:inline-block;
background:#ff680a;
color:#fff;
font-size:1.3rem;
text-align:center;
padding:.5em;
}

.comm_mb50{
margin-bottom:50px !important;
}

.back_orange{
background:#c61d3e;
color:#fff;
}

.anton{
font-family: 'Anton', sans-serif;
}

.btn_tel{
font-size:1.35rem !important;
font-weight:400;
line-height:1.5;
letter-spacing:1px;
padding-top:10px;
}

.cta_tel{
letter-spacing:2px;
margin-bottom:3px;
font-weight:normal !important;
}

.header_cta_tel, a.header-tel{
letter-spacing:2px;
margin-bottom:3px;
font-family: 'Anton', sans-serif;
font-weight:normal;
}

.mail_btn_time{
border-radius:12px;
color:#319400;
text-align:center;
background:#ffef19;
line-height:1.0;
padding:3px;
max-width:300px;
display:block;
font-size:0.95rem;
margin:auto;
font-weight:600;
margin-top:.3em;
}

.txt_center{
text-align:center;
}

.txt_red, p.error_messe{
color:#fe0000;
}

p.error_messe{
margin-bottom:10px;
}

p.error_messe:last-child{
margin-bottom:2.5em;
}

.form_wrap p b{
font-size:1.15rem;
}

.blue_frame{
border:3px solid #36b3e1;
padding:25px;
background:#fff;
margin:0 auto 0 auto;
}

.blue_frame p:last-child{
margin-bottom:0;
}

.reason_title{
background:#36b3e1;
padding:10px 25px 0px 0px;
position:relative;
color:#fff;
font-size:2.0rem;
z-index:1;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}

.reason_title_icon{
width:200px;
background:#007eac;
padding:5px;
text-align:center;
position:relative;
left:-10px;
top:-15px;
z-index:2;
}

.reason_title p{
margin-left:.25em;
margin-bottom:0;
line-height:70px;
font-size:2.0rem;
}

.reason_title_icon img{
position:relative;
z-index:3;
}

.reason_title_icon:before{
content:'';
width: 0;
height: 0;
border-style: solid;
border-width: 0px 10px 5px 0;
border-color: transparent #00506d transparent transparent;
position:absolute;
left:0px;
bottom:-5px;
}

.reason_text{
 border:3px solid #36b3e1;
 background:#fff;
 padding:15px;
 margin-bottom:4em;
}

.reason_text_bottom{
 margin-bottom:0;
 }

.reason_text .tablebox{
 display:table;
 width:100%;
}

.reason_text .tablebox .table_item{
  width:37%;
  padding-right:3%;
  text-align:center;
  display:table-cell;
 }

.reason_text .tablebox .table_item:nth-of-type(2){
 text-align:left;
 padding:0;
 width:60%;
 vertical-align:middle;
 }

.reason_text .tablebox .table_item p:last-child{
margin-bottom:0;
}

.reason_text .tablebox .table_item p b{
background:#fffbc3;
font-weight:600;
}

.Trust_title_wrap{
     display: flex;
    flex-direction: row;
    flex-wrap:nowrap;
   justify-content:left;
   margin-bottom:1.5em;
}

.Trust_title_Item:first-child{
 width:60px;
 height:60px;
 border:2px solid #36b3e1;
 background:#f9f9f9;
 color:#bbb;
 font-size:40px;
 padding:10px;
 line-height:40px;
 margin-right:.3em;
}

.Trust_title_Item:first-child span{
 color:#36b3e1;
}

.Trust_title_Item:nth-of-type(2){
font-size:1.7rem;
font-weight:bold;
line-height:1.4;
}

.Trust_title_Item:nth-of-type(2) span{
 color:#f25f21;
 position:relative;
z-index:2;
}

.Trust_contents{
 border:1px solid #36b3e1;
 background:#fff;
 padding:15px;
 margin-bottom:3em;
}

.Trust_contents p{
margin-bottom:0;
}

.flex_wrapper{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
}

.flex_Item{
 width:calc(94%/4);
}

.flex_wrapper .three{
 width:calc(96%/3);
 margin-top:2em;
}

.flex_wrapper .three:nth-of-type(-n+3){
	margin-top:0;
}
@media screen and (max-width: 767px) {
	.Bnr__img a .toptext{
		max-width: 99%;
		font-size: 9px;
		padding:1px 5px;
		margin-top: 3px;
		margin-bottom: 3px;
	}
	.Bnr .Bnr__img__inner a.mail.other{
	font-size: 0.75rem;
	border-bottom: 0;
	padding: 0.8em 0.3em;
	}
	.Bnr .Bnr__img__inner a.mail.other{
		padding:1.2em .5em;
	}
.flex_wrapper .three{
 width:100%;
 margin-top:1em;
}

.flex_wrapper .three:nth-of-type(-n+3){
	margin-top:1em;
}
}

.staff_image{
margin-bottom:1em;
text-align:center;
}

.staff_image img{
border:5px solid #fff;
    box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
}

.staff_name{
font-size:1.1rem;
font-weight:600;
margin-bottom:.5em;
}

.staff_name span{
display:block;
font-size:0.9rem;
font-weight:normal;
}

.review_top_wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content:left;
    width:99%;
    margin:0 auto 1em auto;
}

.review_top_item{
}

.review_top_item_title{
border:5px solid #36b3e1;
padding:15px;
font-size:1.4rem;
font-weight:bold;
line-height:1.4;
border-radius:8px;
}

.review_top_image{
width:110px;
margin-left:.5em;
}

.review_top_image img{
border:3px solid #ddd;
min-width:110px;
}

.review_name{
font-size:0.8rem;
margin-left:.5em;
display:block;
line-height:1.3;
text-align:center;
margin-top:.2em;
}

.trast_contents_wrap{
display:table;
width:100%;
margin-bottom:3em;
}

.trast_contents_item{
display:table-cell;
width:35%;
padding-right:3%;
text-align:center;
}

.trast_contents_item:nth-of-type(2){
width:62%;
vertical-align:middle;
text-align:left;
}

.trast_contents_item img{
border:5px solid #fff;
    box-shadow: 0 3px 3px rgba(0,0,0,0.14);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.14);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.14);
}

.s_flex_wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 0 auto;
}

.s_flex_Item {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 2.5em;
}

.staff_image {
    margin-bottom: 1em;
    text-align: center;
    width: 25%;
}

.staff_text_wrap {
    width: 72%;
    margin-left: 3%;
}

.history {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 10px 5px 10px 5px;
    font-size: 0.85rem;
    margin-bottom: 1em;
}

.history p{
    font-size: 0.85rem;
}

.admin-panel{
display:none;
}

.mb30{
 margin-bottom:4em;
 }

.footer{
 margin-top:0;
 padding-bottom:148px;
}

.footer__top{
	background:var(--keyColor);
	padding: .75em;
}

.footer__top .Inner{
	max-width: 1000px;
	margin: auto;
	display: flex;
	justify-content: center;
	font-size: 12px;
	align-items: center;
	color: #fff;
}

.footer__top .Inner .Image{
	width:60px;
	margin-right:10px;
}

section.cta .footer__top, section + .footer__top{
	margin: 5vh auto;
}

.cta-wrap + .footer__top{
	margin-bottom: 0;
}

.tri_none:after{
 display:none !important;
 }

.navi-in > ul .sub-menu a:hover{
 color:#fff;
}

.sab-edit-settings, .author-info{
 display:none !important;
}

	.bottom_menu_contents_wrap {
	    width: 100%;
	    margin: 0;
	    display:table;
	}

	.bottom_menu_contents {
	    display: table-cell;
	    width: 49%;
	    padding-right:5px;
	   vertical-align:top;
	   padding-top: 0;
	}

	.bottom_menu_contents:nth-of-type(2){
	padding-right:0;
	padding-left:0;
	}

	.header_contents .btn_mail .icon{
	     top: -10px;
	     left: -23px;
	}

	.about_staff_wrap{
	font-size:1.0rem;
	text-align:center;
	font-weight:bold;
	margin-bottom:1em;
	}

	.cv_area_image, .page_fv_bottom{
	margin-top:0;
	}

	.difference_wrap{
	width:100%;
	display:block;
	margin:0 auto 3em auto;
	}


	.difference_flow_wrap{
	display:block;
	width:100%;
	}

	.point_contents_wrap{
	padding:15px;
	margin-top:2em;
	}

	.difference_flow_wrap_item:nth-of-type(2){
	font-size:1.1rem;
	}

	.difference_flow_wrap li{
	margin-bottom:15px;
	}

	.flow_kaitori_merit{
	font-size:1.1rem;
	}

	.tel_top_contents span{
	padding:0 25px;
	}

	.tel_top_contents span:before{
	 left:-10px;
	}

	.tel_top_contents span:after{
	 right:-10px;
	}

	.fixed_box_title{
	color: #1a1a1a;
	text-align:center;
	padding:2px 10px 2px 10px;
	margin-bottom:4px;
	font-size:1.1rem;
	letter-spacing:1px;
	/* background:rgba(0,0,0,0.25); */
	display:block;
	font-weight:bold;
	}

	.tel_btn{
	position:relative;
	}

	.tel_btn .p01 {
	    position: absolute;
	    opacity: 1;
	    bottom: -5px;
	    right: -12px;
	    animation-name: ani1;
	    animation-duration: 1s;
	    animation-iteration-count: infinite;
	    animation-timing-function: steps(1, end);
	    max-width:30px;

	}
	.tel_btn .p02 {
	    position: absolute;
	    opacity: 0;
	    bottom: -5px;
	    right: -30px;
	    animation-name: ani2;
	    animation-duration: 1s;
	    animation-iteration-count: infinite;
	    animation-timing-function: steps(1, end);
	    max-width:51px;
	}
	@keyframes ani1 {
	    0% {
	        opacity: 0;
	    }
	    50% {
	        opacity: 1;
	    }
	    100% {
	        opacity: 0;
	    }
	}
	@keyframes ani2 {
	    0% {
	        opacity: 1;
	    }
	    50% {
	        opacity: 0;
	    }
	    100% {
	        opacity: 1;
	    }
	}

.profile{
     display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
    align-items: flex-start;
    padding:15px;
    border:1px solid #ddd;
    margin-bottom:.5em;
}

.profile .profile__imgArea{
  width:60px;
 }

.profile .profile__contents{
 width:calc(100% - 75px);
}

.profile .profile__contents .profilename{
 font-size: 18px;
 margin-bottom:10px;
}

.profile .profile__contents .profile__description{
  font-size:14px;
}

/************* お客様の声  *******************/

.review_box{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width:100%;
}

.review_wrap{
background:#fff;
padding:15px;
    box-shadow: 0 3px 3px rgba(0,0,0,0.2);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
margin-bottom:3em;
width:100%;
}

.review_wrap:nth-of-type(even){
margin-right:0;
}

.review_title{
display:table;
width:100%;
background:#c61d3e;
color:#fff;
margin-bottom:15px;
}

.review_title_contents{
text-align:left;
padding:10px;
display:table-cell;
font-size:1.05rem;
font-weight:500;
line-height:1.5;
}

.review_title_contents:nth-of-type(2){
background:#fabeca;
text-align:center;
width:30%;
color:#000;
font-size:0.9rem;
vertical-align:middle;
}

.review_photo{
width:125px;
}

.review_contents_wrap{
    display: flex;
    flex-direction: row;
    flex-wrap:nowrap;
    justify-content:left;
}

.review_text{
    display: flex;
    flex-direction: row;
    flex-wrap:nowrap;
    justify-content:left;
padding:0px;
border:none;
width:87%;
}
.review_text p:last-child{
margin-bottom:0;
}

.review_text div:nth-of-type(2){
width:85%;
}

.review_image_photo{
margin-right:2em;
width:245px;
}

.review_photo img.name{
width:105px;
height:105px;
object-fit: cover;
overflow:hidden;
border-radius:50%;
border:3px solid #fff;
    box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
}

.review_image_photo img{
border:3px solid #fff;
    box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.15);
}

.Flex_wrap{
     display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
justify-content:flex-start;
    align-items: center;
}

a.links{
 border-radius:1.4em;
 padding:.75em 1em;
 text-align:center;
 display:block;
 max-width:500px;
 margin:0 auto 0 auto;
 font-size:1.2rem;
 color:#fff;
 background:#c61d3e;
}

a.red-btn{
 background:#de2304;
 margin-top:.5em;
 color:#fff;
 border-radius:0.45em;
}


a.links:hover{
 text-decoration:none;
 background:#f52604; 
}


@media screen and (min-width: 769px) {

	.sp{
		display: none;
	}

	.flow_wrapper_sp{
	display:none;
	}

	.flow_contents:nth-child(even){
	width:2%;
	vertical-align:middle;
	text-align:center;
	font-size:36px;
	background:none;
	}

	.sp_image{
	display:none;
	}

	.align_center{
	text-align:center;
	}

	.br-sp02{
	display:none;
	}

	.drawer-menu_wrap{
	display:none;
	}

	.pc_image{
	display:block;
	}
	.new__sp__tel div{
		display: none !important;
	}
}




/**スマホ用**/
@media screen and (max-width: 768px) {


	.Bnr .Cta--wrap .tel-wrap span.top{
		font-size:12px;
        margin-left: -20px;
	}
	
	main.main, .content{
		margin-top:0;
	}
	
	.entry-title{
		margin-top:.5em;
	}
	
	.Block-border p{
		font-size:0.9rem;
	}
	
	.Block-border p br{
		display:none;
	}
	
	.Block-border .Title{
		font-size:1.05rem !important;
	}

	.Flex_wrap{
	    flex-wrap:wrap;
	}

	h2.bk-none{
	 font-size:1.65rem;
	}

	.form_title{
	 font-size:24px;
	 line-height:1.4;
	}

	
	.Cta--wrap{
		padding:0 .5em;
	}

	.Bnr .Cta--wrap{
		padding:0;
	}

	.Bnr .Bnr__img__inner a.mail{
	 font-size:0.75rem;
	 border-bottom:0;
	 padding-bottom: .3em;
	}

	.Bnr .bottom_menu_contents a.mail{
		padding:.75em .2em 1em;
	}

	.header{
	 padding:.75em 1em .5em 1em;
	 }

	.ask_main_wrap{
	padding:2.5em 1em 2.5em 1em;
	}

	.br-sp02{
	display:block;
	}

	.header_contents{
	text-align:center;
	margin-bottom:5px;
	}

	.header_area{
	font-size:0.85rem;
	display:none;
	}

	.header_contents, .header_contents:nth-of-type(2), .header_contents:nth-of-type(3), .header_contents:nth-of-type(4){
	 display:block;
	width:100%;
	padding:0;
	}

	.header_contents:nth-of-type(2){
	 text-align:center;
	display:none;
	}

	.header_contents:nth-of-type(2), .header_contents:nth-of-type(3){
	display:none;
	}

	.kaitori_merit_title, .tsukai_title{
	min-width:100%;
	}

	.header_contents:nth-of-type(3){
	text-align:center;
	margin-bottom:15px;
	}

	.header_contact_btn{
	padding:8px;
	font-size:1.3rem;
	}

	.pc_image{
	display:none;
	}

	.tel_cv_contents{
	width:100%;
	margin:0px auto 0 auto;
	text-align:center;
	}

	.tel_top_contents, .tel_top_contents:nth-of-type(2){
	display:block;
	width:100%;
	}

	.tel_top_contents a{
	font-size:1.8rem;
	}
	.tel_top_contents a:before{
	width:25px;
	height:25px;
	background-size: 25px 25px;
	}

	.comm_btn_icon{
	display:none;
	}

	.comm_contact_btn{
	padding:10px;
	font-size:1.2rem;
	line-height: 1.1;
	}

	.pt_5{
	padding-top:3em;
	}

	.top h2{
	font-weight:bold;
	}

	.top h2:before{
	    background-size: 60px 60px;
	    width: 60px;
	    height: 60px;
	}


	.faq_h2:before{
	background-size:110px 60px;
	width:110px;
	height:60px;
	}

	.kaitori_h2:before{
	background-size:60px 60px;
	width:60px;
	height:60px;
	}
	.title_count{
        font-size:1.4rem;
	line-height:150%;
	padding-right:0;
	}

	.title_count:first-child{
	 font-size:24px;
	}

	.ask_contents{
	float:none;
	width:100%;
	margin-right:0;
	}

	.top h3{
	font-size:1.4rem;
	}

	.nouhau_title_icon{
	 display:block;
	width:100%;
	font-size:1.3rem;
	}

	.nouhau_title{
	padding-left:0;
	font-size:1.3rem;
	line-height:150%;
	 display:block;
	text-align:center;
	margin-top:15px;
	}

	.nouhau_title_wrap{
	 display:block;
	width:100%;
	}

	.nouhau_contents{
	display:block;
	width:95%;
	margin:0 auto 15px auto;
	}

	.nouhau_contents:nth-of-type(2){
	margin:auto;
	width:100%;
	padding-left:0;
	}

	.nouhau_wrap{
	margin:0 auto 30px auto;
	width:95%;
	}

	.step_contents_image{
	text-align:center;
	}

	.step_wrap{
	width:100%;
	display:block;
	}

	.step_contents:nth-of-type(odd){
	width:100%;
	display:block;
	}
	.step_contents:nth-of-type(even){
	display:block;
	text-align:center;
	margin:0 auto 15px auto;
-moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
	}

	.kaitori_contents{
	display:block;
	text-align:center;
	width:100%;
	}

	.kaitori_contents:nth-of-type(2){
	display:block;
	width:100%;
	padding-left:0;
	}

	.kaitori_contents_title{
	font-size:1.25rem;
	line-height:150%;
	}

	.flex-items{
	display:block;
	width:100%;
	margin-right:0;
	margin-bottom:25px;
	}

	.tsyukai_title{
	font-size:1.25rem;
	line-height:150%;
	}

	.review_wrap{
	display:block;
	width:100%;
	margin-right:0;
	}

	.review_photo img{
	width:90px;
	height:80px;
	}

	.faq_wrap{
	padding:15px;
	}

	.faq_title_contents{
	width:20%;
	}

	#contact_wrapper th, #contact_wrapper td{
	display:block;
	width:100%;
	}
	
	#contact_wrapper td{
	padding:15px 0 15px 0;
	}

	#contact_wrapper th{
	border-right:0;
	}

	.form_wrap{
	padding:15px;
	}

	input[type=submit] {
	    font-size: 1.2rem;
	width:100%;
	}

	.comm_cv_wrapper:after {
	    width: 0;
	    height: 0;
	    border-style: solid;
	    border-width: 30px 40px 0 40px;
	    border-color: #36b3e1 transparent transparent transparent;
	    content: '';
	    position: absolute;
	    bottom: -20px;
	    left: 50%;
	    transform: translateX(-50%);
	    -webkit- transform: translateX(-50%);
	}

	.page_fv_wrapper{
	margin-top:0;
	}

	.tel_top_wrapper{
	margin:0 auto 0 auto;
	}

	.review_title_contents{
	line-height:140%;
	}

	.review_title_contents:nth-of-type(2){
	font-size:80%;
	vertical-align:middle;
	}

	.comm_white_wrap{
	padding:0 2.5% 3% 2.5%;
	}

	.comm_white_wrap h3{
	 margin-bottom:1em;
	}

	.Bnr .Bnr__img p.close{
	  position: absolute;
	  right:3px;
	  top:0px;
	}

	.Bnr__img__inner{
	text-align:center;
	}

	.bottom_menu_contents_wrap {
	    width: 100%;
	    margin: 0;
	    display:table;
	}

	.bottom_menu_contents {
	    display: table-cell;
	    width: 49%;
	    padding-right:0;
	   vertical-align:top;
	}

	.bottom_menu_contents:nth-of-type(2){
	padding-right:0;
	padding-left:0 !important;
	}

	.bottom_menu_contents a {
	    display: block;
	    width:100%;
	}

	.btn_mail{
	position:relative;
	display: block;
	width:100%;
	    background: #17cc0e;
	    background: -moz-linear-gradient(top, #17cc0e 5%, #00a508 100%);
	    background: -webkit-linear-gradient(top, #17cc0e 5%,#00a508 100%);
	    background: linear-gradient(to bottom, #17cc0e 5%,#00a508 100%);
	    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#17cc0e', endColorstr='#00a508',GradientType=0 );
	    box-shadow: 0px 2px 9px -3px rgb(0 0 0 / 95%);
	    border-bottom: solid 3px #216500;
	    font-family: 'Noto Sans JP', sans-serif;
	border-radius: 5px;
	padding:.45em .3em;
	    box-shadow: 0px 2px 9px -3px rgb(0 0 0 / 95%);
	    border-bottom: solid 3px #216500;
	text-align: center;
	line-height:1.3;
	color: #fff;
	text-decoration: none;
	}

	.bottom_menu_contents a {
	    font-size: 1.0rem;
	    padding: 5px;
	}

	.about_staff_wrap{
	font-size:1.0rem;
	text-align:center;
	font-weight:bold;
	margin-bottom:1em;
	}

	.cv_area_image, .page_fv_bottom{
	margin-top:0;
	}

	.nouhau_contents_wrap{
	margin-bottom:0;
	}

	.difference_wrap{
	width:100%;
	display:block;
	margin:0 auto 3em auto;
	}

	.difference_contents{
	width:100%;
	display:block;
	margin-bottom:25px;
	}

	.difference_contents:nth-of-type(2){
	display:none;
	}

	.difference_contents:nth-of-type(3){
	margin-bottom:0;
	}

	.difference_flow_wrap{
	display:block;
	width:100%;
	}

	.point_contents_wrap{
	padding:15px;
	margin-top:2em;
	}

	.difference_flow_wrap_item:nth-of-type(2){
	font-size:1.1rem;
	}

	.difference_flow_wrap li{
	margin-bottom:15px;
	}

	.difference_contents img{
	min-height:auto;
	}

	.comm_mb50{
	 margin-bottom:1.5em !important;
	}

	.flow_kaitori_merit{
	font-size:1.1rem;
	}

	.tel_top_contents span{
	padding:0 25px;
	}

	.tel_top_contents span:before{
	 left:-10px;
	}

	.tel_top_contents span:after{
	 right:-10px;
	}

	.fixed_box_title{
	text-align:center;
	padding:2px 10px 2px 10px;
	margin-bottom:4px;
	font-size:0.8rem;
	letter-spacing:1px;
	display:inline-block;
	font-weight:bold;
	}

	.tel_btn{
	position:relative;
	}

	.tel_btn .p01 {
	    position: absolute;
	    opacity: 1;
	    bottom: -5px;
	    right: -12px;
	    animation-name: ani1;
	    animation-duration: 1s;
	    animation-iteration-count: infinite;
	    animation-timing-function: steps(1, end);
	    max-width:30px;

	}
	.tel_btn .p02 {
	    position: absolute;
	    opacity: 0;
	    bottom: -5px;
	    right: -30px;
	    animation-name: ani2;
	    animation-duration: 1s;
	    animation-iteration-count: infinite;
	    animation-timing-function: steps(1, end);
	    max-width:51px;
	}
	@keyframes ani1 {
	    0% {
	        opacity: 0;
	    }
	    50% {
	        opacity: 1;
	    }
	    100% {
	        opacity: 0;
	    }
	}
	@keyframes ani2 {
	    0% {
	        opacity: 1;
	    }
	    50% {
	        opacity: 0;
	    }
	    100% {
	        opacity: 1;
	    }
	}

	.sp_logo{
	max-width:220px;
	}

	.icon-mail:before {
	    font-size: 1.7rem;
	}

	.mail_btn_time{
	font-size:0.8rem;
	padding:2px;
	display:inline-block;
	min-width:150px;
	margin-top:0;
	}

	.btn_tel {
	    font-size: 1.1rem !important;
	}

	.Trust_title_Item:first-child{
	padding: 5px;
	    width: 50px;
	    height: 50px;
	font-size: 30px;
	}

	.Trust_title_Item:nth-of-type(2) {
	    font-size: 1.4rem;
	    padding-top:0;
	    line-height:1.4;
	}

	.Trust_title_Item:nth-of-type(2) span::after {
	display:none;
	}

	.Trust_contents{
	padding:15px;
	}

	.mbnone{
	 margin-bottom:1.5em;
	}

	.reason_text .tablebox{
	display:block;
	}

	.reason_text .tablebox .table_item {
	    width: 90%;
	    padding-right:0%;
	    margin:0 auto 1em auto;
	    display:block;
	}

	.reason_text .tablebox .table_item:nth-of-type(2){
	    width: 100%;
	}

	.reason_title{
	font-size:1.4rem;
	padding-right:10px;
	}

	.reason_title p{
	line-height:1.3;
	font-size:1.2rem;
	}

	.reason_title_icon{
	width:110px;
	}

	.reason_title_icon img{
	min-width:100px;
	margin-top:5px;
	}

	.header_contents:first-child {
	    padding-right: 0%;
	    width: 100%;
	    margin-bottom:0;
	}

	footer{
	margin-bottom:90px;
	}

	.flex_Item{
	 width:90%;
	 margin:0 auto 1em auto;
	}

	.tel_top_contents span{
	font-size:0.9rem;
	}

	.point_wrap{
	padding:2.5em 0;
	}

	.keisen_wrap{
	padding:2.5em 0;
	margin-top:0em;
	}

	.wood_wrap{
	padding:2.5em 1em 2.5em 1em;
	}

	.contact_wrap{
	padding:2.5em 1em 2.5em 1em;
	}

	.blue_back{
	padding:2.5em 1em 2.5em 1em;
	margin-top:-3em;
	}

	.reason_title p{
	margin-left:0;
	}

	.reason_title{
	padding: 10px 5px 5px 0px;
	}

	.br-sp{
	display:none;
	}

	.blue_frame{
	padding:15px;
	}

	.review_top_item_title{
	font-size:1.0rem;
	border:3px solid #36b3e1;
	}

	.review_top_image{
	margin-left:.3em;
	width:90px;
	}

	.review_top_image img{
	border:2px solid #ddd;
	margin-top:1em;
	width:90px;
	min-width:90px;
	margin-top:0;
	}

	.review_name{
	font-size:0.75rem;
	}

	.trast_contents_wrap{
	display:block;
	width:100%;
	margin-bottom:3em;
	}

	.trast_contents_item{
	display:block;
	width:100%;
	padding-right:0%;
	text-align:center;
	}

	.trast_contents_item img{
	margin-bottom:1em;
	}

	.trast_contents_item:nth-of-type(2){
	width:100%;
	vertical-align:middle;
	text-align:left;
	}

	#about_wrapper th, #about_wrapper td{
	border-bottom:1px solid #f2f2f2;
	padding:10px 5px 10px 5px;
	font-size:0.8rem;
	}

	#about_wrapper th{
	border-right:1px solid #f2f2f2;
	width:30%;
	text-align:center;
	font-size:0.8rem;
	vertical-align:middle;
	}

	.s_flex_wrapper {
	    flex-wrap: wrap;
	}

	.s_flex_Item {
	    width: 90%;
	    margin: 0 auto 1em auto;
	}

	.staff_image {
	    margin-bottom: 1em;
	    text-align: center;
	    width: 100%;
	}

	.staff_text_wrap {
	    width: 100%;
	    margin-left: 0%;
	}
	.s_flex_Item p {
	    margin-bottom: 0;
	}


	.footer {
	    padding-bottom:38px;
	}

	/************* お客様の声  *******************/

	.review_wrap {
	    display: block;
	    width: 100%;
	    margin-right: 0;
	}

	.review_title_contents {
	    line-height: 140%;
	    text-align: left;
	}

	.review_title_contents:nth-of-type(2) {
	    font-size: 80%;
	    vertical-align: middle;
	}

	.review_contents_wrap {
	    display: flex;
	    flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: center;
	}

	.review_photo {
	    width: 100%;
	    margin: 0 auto 0 auto;
	    text-align: left;
	}

	.review_photo img.name {
	    width: 90px;
	    height: 90px;
	}

	.review_text {
	    padding:0px;
	    border:none;
	    width: 100%;
	    display: flex;
	    flex-direction: row;
	    flex-wrap: wrap;
	}

	.review_image_photo {
	    width: 260px;
	    margin: auto;
	}

	.review_text div:nth-of-type(2) {
	    width: 100%;
	    margin-top: 1em;
	}

	a.links{
	 font-size:1.05rem;
	}


}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1240px以下*/
@media screen and (max-width: 1240px){
  /*必要ならばここにコードを書く*/

	.cta_contents_item p{
	 margin-bottom:.3em;
	 margin-top:0;
	 font-size:1.4rem;
	 font-weight:bold;
	 letter-spacing:-1px;
	 }

}

/*1030px以下*/
@media screen and (max-width: 1030px){
  /*必要ならばここにコードを書く*/

	.cta_contents_wrap{
	    flex-wrap:wrap;
	 }

	.cta_contents_item{
	 width:100%;
	 margin-bottom:1em;
	 }

	 .Bnr .cta_contents_item{
		width: 49%;
	 }

	.cta_contents_item:last-child{
	 margin-bottom:0;
	}


	.cta_contents_item p img{
	 max-width:70%;
	 }

	.cta_contents_item p{
	 margin-bottom:.3em;
	 margin-top:0;
	 font-size:1.4rem;
	 line-height:1.2;
	 font-weight:bold;
	 }

	.cta_contents_item a.mail img{
	 max-width:30px;
	 }

}

/*768px以下*/
@media screen and (max-width: 768px){

  /*必要ならばここにコードを書く*/

	.no-mobile-sidebar .sidebar{
	 display:block;
	}

	.tel_btn{
	position:relative;
	}

	.tel_btn .p01 {
	    position: absolute;
	    opacity: 1;
	    bottom: -5px;
	    right: -12px;
	    animation-name: ani1;
	    animation-duration: 1s;
	    animation-iteration-count: infinite;
	    animation-timing-function: steps(1, end);
	    max-width:30px;

	}
	.tel_btn .p02 {
	    position: absolute;
	    opacity: 0;
	    bottom: -5px;
	    right: -30px;
	    animation-name: ani2;
	    animation-duration: 1s;
	    animation-iteration-count: infinite;
	    animation-timing-function: steps(1, end);
	    max-width:51px;
	}
	@keyframes ani1 {
	    0% {
	        opacity: 0;
	    }
	    50% {
	        opacity: 1;
	    }
	    100% {
	        opacity: 0;
	    }
	}
	@keyframes ani2 {
	    0% {
	        opacity: 1;
	    }
	    50% {
	        opacity: 0;
	    }
	    100% {
	        opacity: 1;
	    }
	}

	.sp-disp{
	display:block !important;
	}

	.cta-title{
		font-size: 0.9rem;
	}

	.cta_wrapper_title{
	 font-size:1.4rem;
	 line-height:1.3;
	}

	.cta_top_text{
	 font-size:1.3rem;
	 font-weight:bold;
	 text-align:center;
	}

	.cta_contents_item p img{
	 max-width:400px;
	 }

	.cta_contents_item p{
	 margin-bottom:.3em;
	 margin-top:0;
	 font-size:1.45rem;
	 font-weight:bold;
	 }

	.cta_contents_wrap{
	    flex-wrap:wrap;
	 }

	.cta_contents_item{
	 width:100%;
	 margin-bottom:1em;
	 }

	.cta_contents_item:last-child{
	 margin-bottom:0;
	}

	.br-sp{
	 display:none;
	}


	.br-sp02{
	 display:block;
	}

	.cta_wrapper_title span {
	    padding: 0 20px;
	}

	.cta_wrapper_title span:before{
	 left:5px;
	}

	.cta_wrapper_title span:after{
	 right:5px;
	}

	.btn_icon{
	  position:absolute;
	  left:-20px;
	  top:-20px;
	  width:45px;
	 }

	.Contact-table-wrapper th, .Contact-table-wrapper td{
	 display:block;
	 width:100%;
	}

	.Contact-table-wrapper th{
	 border-bottom:0;
	 border-top:0;
	}

	.Bnr{
	  position: relative;
	  margin: 0 auto;
	  width:100%;
	  display: none;
	}

	.Bnr .Bnr__img{
	  position: fixed;
	  bottom:0;
	 width:100%;
	  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
	}

	.Bnr__img__inner{
	  text-align:center;
	  box-sizing:border-box;
	  padding: 5px 5px 13px 5px;
	  max-width:1100px;
	  margin:auto;
	}
	.Bnr .Bnr__img__inner a{
	  display: block;
	}
	.Bnr .Bnr__img p.close{
	  position: absolute;
	  right: 20px;
	  top:-10px;
	}
	.Bnr .Bnr__img p.close a{
	  display: block;
	  width: 20px;
	  height: 25px;
	  text-align: center;
	}
	.Bnr .Bnr__img p.close a span{
	  display: block;
	  width: 1px;
	  height: 1px;
	  overflow: hidden;
	}
	.Bnr .Bnr__img p.close a i{
	  font-size: 22px;
	  z-index: 888;
	  color: #fff;
	}

	.mt_none{
	margin-bottom:0;
	}

	.Bnr .Bnr__img p.close{
	  position: absolute;
	  right:3px;
	  top:-5px;
	}

	.bottom_menu_contents_wrap {
	    width: 100%;
	    margin: 0;
	    display:table;
	}

	.bottom_menu_contents {
	    display: table-cell;
	    width: 50%;
	    padding-right:5px;
	   vertical-align:top;
	   padding-top: 0;
	}

	.bottom_menu_contents:nth-of-type(2){
	padding-right:0;
	padding-left:5px;
	}


	.btn_mail{
	background:#319400 !important;
	    border-bottom: solid 3px #216500 !important;
	}

	.bottom_menu_contents a {
	    font-size: 0.95rem;
	    padding: 5px;
	}

	.tel_btn{
	position:relative;
	}

	.navi{
	 display:none;
	}

	.drawer-menu_wrap{
	background:rgba(255,255,255,0.85);
	border:none;
	position: fixed;
	right:0;
	width:55px;
	height:55px;
	 z-index: 9999999;
	}

	.drawer-menu_wrap input[type="checkbox"]{
	 display:none;
	 border:none;
	 box-shadow:none;
	}

	.drawer-menu {
	    box-sizing: border-box;
	    position: fixed;
	    top: 0;
	    right: 0;
	    width:100%;
	    height: 100%;
	    padding:30px 0;
	    background: #fff;
	    -webkit-transition-property: all;
	    transition-property: all;
	    -webkit-transition-duration: .5s;
	    transition-duration: .5s;
	    -webkit-transition-delay: 0s;
	    transition-delay: 0s;
	    -webkit-transform-origin: right center;
	    -ms-transform-origin: right center;
	    transform-origin: right center;
	    -webkit-transform: perspective(500px) rotateY(-90deg);
	    transform: perspective(500px) rotateY(-90deg);
	    opacity: 0;
	    overflow-y:auto;
	}

	.drawer-menu ul{
	 border:none;
	 margin:0;
	 padding:0;
	}

	.drawer-menu li {
	    text-align: center;
	    display:block;
	    width:100%;
	}

	.drawer-menu li a {
	    display: block;
	    font-size: 14px;
	    background:#007fc5;
	    color: #fff;
	    -webkit-transition: all .8s;
	    transition: all .8s;
	    padding:10px;
	}

	.li_global_navi > li > a, .li_global_navi > li > a:hover{
	    padding:10px;
	    font-size: 14px;
	}

	.drawer-menu li a:hover {
	    color: #fff;
	    background: #005cab;
	    font-size: 14px;
	}

	/* checkbox */
	.check {
	    display: none;
	}

	ul.check{
	 border:none;
	 padding:0;
	}

	ol.check, ul.check{
	 display:block;
	 padding-left:16px;
	 margin:auto;
	}

	/* menu button - label tag */
	.menu-btn {
	    position: absolute;
	    display: block;
	    top: 8px;
	    right: 8px;
	    display: block;
	    width: 35px;
	    height: 40px;
	    font-size: 10px;
	    text-align: center;
	    cursor: pointer;
	 z-index: 1000000001;
	}

	.bar {
	    position: absolute;
	    top: 0;
	    left: 0;
	    display: block;
	    width: 35px;
	    height: 1px;
	    background: #454545;
	    -webkit-transition: all .5s;
	    transition: all .5s;
	    -webkit-transform-origin: left top;
	    -ms-transform-origin: left top;
	    transform-origin: left top;
	}

	.bar.middle {
	    top: 10px;
	    opacity: 1;
	}

	.bar.bottom {
	    top: 20px;
	    -webkit-transform-origin: left bottom;
	    -ms-transform-origin: left bottom;
	    transform-origin: left bottom;
	}



	.menu-btn__text {
	    position: absolute;
	    bottom: -8px;
	    left: 0;
	    right: 0;
	    margin: auto;
	    color: #111;
	    -webkit-transition: all .5s;
	    transition: all .5s;
	    display: block;
	    visibility: visible;
	    opacity: 1;
	}

	.menu-btn:hover .bar {
	    background: #ccc;
	}

	.menu-btn:hover .menu-btn__text {
	    color: #ccc;
	}

	.close-menu {
	    position: fixed;
	    top: 0;
	    right: 300px;
	    width: 100%;
	    height: 100vh;
	    background: rgba(0,0,0,0);
	    cursor: url(images/cross.svg),auto;
	    -webkit-transition-property: all;
	    transition-property: all;
	    -webkit-transition-duration: .3s;
	    transition-duration: .3s;
	    -webkit-transition-delay: 0s;
	    transition-delay: 0s;
	    visibility: hidden;
	    opacity: 0;
	}

	/* checked */
	.check:checked ~ .drawer-menu {
	    -webkit-transition-delay: .3s;
	    transition-delay: .3s;
	    -webkit-transform: none;
	    -ms-transform: none;
	    transform: none;
	    opacity: 1;
	    z-index: 9999;
	}

	.check:checked ~ .contents {
	    -webkit-transition-delay: 0s;
	    transition-delay: 0s;
	    -webkit-transform: translateX(-300px);
	    -ms-transform: translateX(-300px);
	    transform: translateX(-300px);
	}

	.check:checked ~ .menu-btn .menu-btn__text {
	    visibility: hidden;
	    opacity: 0;
	}

	.check:checked ~ .menu-btn .bar.top {
	    width: 56px;
	    -webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	    transform: rotate(45deg);
	}

	.check:checked ~ .menu-btn .bar.middle {
	    opacity: 0;
	}

	.check:checked ~ .menu-btn .bar.bottom {
	    width: 56px;
	    top: 40px;
	    -webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	    transform: rotate(-45deg);
	}

	.check:checked ~ .close-menu {
	    -webkit-transition-duration: 1s;
	    transition-duration: 1s;
	    -webkit-transition-delay: .3s;
	    transition-delay: .3s;
	    background: rgba(0,0,0,.5);
	    visibility: visible;
	    opacity: 1;
	    z-index: 40;
	}

	.drawer-menu li{
	    border-bottom: 1px solid #6ba3c1;
	}

	#fade-in li ul{
	    visibility: visible;
	    opacity:1;
	}

	#fade-in li ul li{
	    visibility: visible;
	    opacity:1;
		}

	.dropmenu li ul{
	position:relative;
	top:0;
	left:0;
	    transform: translateX(0%);
	}

	.sub-menu{
	width:100%;
	    opacity:1;
	}


	#fade-in li:hover ul li a{
	font-size:14px;
	    color:#1a1a1a !important;
	}

	
	.dropmenu li ul li{
	width:100%;
	float:none;
	border:0;
	margin:0;
	}

	.sub-menu a{
	    border-top: 1px solid #6ba3c1;
	    padding:10px !important;
	    color:#fff !important;
	}

	.drawer-menu li a{
	 position:relative;
	}

	.drawer-menu li a:after{
	  right:5px;
          font-family: "FontAwesome";
	content: '\f105';
	  position:absolute;
	  top: 50%;
	  transform: translateY(-50%);
	}

	.dropmenu li ul li a{
	    color:#fff !important;
	}

	.drawer_logo{
	 max-width:120px;
	 margin:0 auto 1em auto;
	 text-align:center;
	}

}

/************************************
** フォーム
************************************/

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

.placeholder {
    color: #aaa;
    margin-bottom: .35em;
    line-height: 1.4;
    font-size: 16px;
    font-weight:normal;
}

#zip{
	width:50%;
    margin-bottom:.75em;
}

input[type="checkbox"]{
	width:16px;
	height:16px;
	display:inline-block;
	vertical-align:middle;
	margin-right:5px;
	margin-top:-1px;
}

/************************************
** ＣＴＡ
************************************/

	.column-wrap .btn_mail{
	position:relative;
	display: block;
	width:100%;
	    background: #17cc0e;
	    background: -moz-linear-gradient(top, #17cc0e 5%, #00a508 100%);
	    background: -webkit-linear-gradient(top, #17cc0e 5%,#00a508 100%);
	    background: linear-gradient(to bottom, #17cc0e 5%,#00a508 100%);
	    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#17cc0e', endColorstr='#00a508',GradientType=0 );
	    box-shadow: 0px 2px 9px -3px rgb(0 0 0 / 95%);
	    border-bottom: solid 3px #216500;
	    font-family: 'Noto Sans JP', sans-serif;
	border-radius: 5px;
	padding:.45em .3em;
	    box-shadow: 0px 2px 9px -3px rgb(0 0 0 / 95%);
	    border-bottom: solid 3px #216500;
	text-align: center;
	line-height:1.3;
	color: #fff;
	text-decoration: none;
	font-size:1.25rem;
	}




div.cta{
 text-align:center;
}

.cta-wrap{
 position:relative;
 padding:1em .9em 0;
 margin-bottom:.9em;
border: solid 3px #0083c8;
}

.cta-wrap:after{
 content:'';
 background:#f4f3f3;
 width:100%;
 height:100%;
 position:absolute;
 top:0;
 left:0;
 z-index:-1;
}



p.insert-btn-lead {
    font-size: 18px;
    text-align: center;
    margin-bottom: .5em;
    line-height: 1.5;
	font-weight:bold;
}

p.insert-btn-lead-sub {
    font-size: 16px;
    font-weight:600;
    text-align: center;
    margin-bottom:1em;
    line-height: 1.5;
    position:relative;
    display:inline-block;
    background:linear-gradient(transparent 60%, #ff6 60%);
}

p.insert-btn-lead-sub::before{
   content:"";
   display:inline-block;
   width:1px;
   height:20px;
   background-color:#393939;
   position:absolute;
   top:0px;
   left:-15px;
   transform: rotate(-40deg);
}
p.insert-btn-lead-sub::after{
   content:"";
   display:inline-block;
   width:1px;
   height:20px;
   background-color:#393939;
   position:absolute;
   top:0px;
   right:-15px;
   transform: rotate(40deg);
}

.insert-btn {
    max-width: 320px;
    margin: auto;
    display: block;
    position: relative;
    border-radius: 114px;
    background: #00b900;
    color: #fff;
    box-shadow: 0 3px 6px rgb(51 51 51 / 29%);
    text-align: center;
    box-sizing: border-box;
    font-size: 19px;
    font-weight: bold;
    padding: 1em 0 1em;
    line-height: 1.4;
    text-decoration: none;
    transition: box-shadow .3s;
}

.insert-btn::after {
    transition: right .3s;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    font-size: 2.4rem;
    font-family: "FontAwesome";
    content: '\f105';
    font-weight: bold;
}

.insert-btn__underline {
    position: relative;
    display: inline-block;
    pointer-events: none;
}

.insert-btn__underline::before {
    content: '';
    width: 100%;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: -1px;
    background: #fff;
}

.insert-btn:hover{
 color:#fff;
 opacity:0.75;
 text-decoration:none;
}

.Cta--wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
	align-items:center;
}

.Cta--wrap.Center{
	justify-content: center;
}

.Cta--wrap .Hurf{
 width:calc(98% / 2);
 margin-bottom:1em;
}

.Cta--wrap .tel-wrap {
    background: #fff;
    position: relative;
    border: 2px solid #ccc;
    padding: 0.6em;
    text-align: center;
}

.Cta--wrap .tel-wrap a.footer-tel, .Cta--wrap .tel-wrap a.footer-tel {
    font-size: 34px;
    font-weight: normal;
    font-family: 'Anton', sans-serif;
    text-align: center;
    position: relative;
    line-height: 1.25;
    padding-left: 0px;
    padding-top: 0;
    letter-spacing: 0.02em;
    margin: 0 auto 0 auto;
    color: #b00808;
    display: inline-block;
}

.Cta--wrap .tel-wrap a.footer-tel span.time {
    margin-top: 0.5em;
}

.Cta--wrap .tel-wrap a.footer-tel span.time{
    font-size: 14px;
    color: #4d4d4d;
    margin-top: 3px;
}

a.indexcta-tel span.time{
    font-size: 14px;
    color: #4d4d4d;
	display: block;
    margin-top: 3px;
	font-weight: normal;
	font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}


.Cta--wrap .tel-wrap a:hover{
 text-decoration:none;
}

.sect-text, .sect-text p{
  font-size: 1.15rem;
}

.sect-text{
  margin-top:2em;
}
.sectTit {
  position: relative;
  text-align: center;
  font-weight: bold;
  line-height: 1.3;
  display: flex;
  justify-content: center;
}
 
.sectTit:before,
.sectTit:after {
  position: relative;
  display: inline-block;
  content: "";
  background: #faa94d;
  width: 2px;
  height: 2em;
  margin: 0 1em;
  margin-top: -.2em;
  vertical-align: middle;
}
 
.sectTit:before {
  transform: rotate(-35deg);
}
 
.sectTit:after {
  transform: rotate(35deg);
}
.sect-text > p{
	margin-bottom: .5em;
}
@media screen and (max-width: 767px) {
	
	.sectTit.small{
		font-size:11px;
	}
	
	.sectTit + p{
		margin-bottom:.5em;
	}

	.header_contents_wrap{
	 padding-left:.0;
	 padding-right:.9em;
	}

	.logo-font{
		justify-content: flex-start !important;
		align-items: center;
	}
	
	footer .logo-font{
		justify-content:center !important;
	}

	.sp_image{
	 display:block;
	}

	.sectTit{
	 font-size:12px;
	}

	.cta-wrap p.Center{
	 font-size:0.8rem;
	}

	.cta-wrap:after{
	 content:'';
	 background:#f2f2f2;
	 width:100vw;
	 height:100%;
	 position:absolute;
	 top:0;
	 left:calc(50% - 50vw);
	 z-index:-1;
	}

	.cta-wrap{
	 position:relative;
	 padding-top:1em;
	 padding-bottom:1em;
	 padding-left:0;
	 padding-right:0;
	}
		
	.sect-text {
    margin-top:1em;
    }

	.Cta--wrap .Hurf{
	 width:100%;
	}

	.Cta--wrap .Hurf:first-child{
	 margin-bottom:1em;
	}

	.Cta--wrap .Hurf:last-child{
	 margin-bottom:0;
	}

	.Cta--wrap .tel-wrap a.footer-tel{
	 font-size:29px;
	}

	.Cta--wrap .tel-wrap a.footer-tel:before{
	 left:5px;
	     width:35px;
	}

	.Cta--wrap .tel-wrap a.footer-tel span.time{
	 font-size:12px;
	}

	.Bnr .tel-wrap a.tel:before{
	 width:20px;
	    left:5px;
	    top: 6px;
	}

	.Bnr .tel-wrap a.tel{
		font-family: 'Anton', sans-serif;
	    font-size: 21.5px !important;
	    padding-left: 0px;
		padding-right:0;
	    padding-bottom: 0;
	    padding-top: 0;
		font-weight: normal;
	}

	.sect-text, .sect-text p{
	 font-size:1.0rem;
	}

	.Bnr .tel-wrap a.tel span.time{
		font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
		font-weight: normal;
	 margin-left:auto;
	 font-size: 10px;
	 margin-top:0;
	 margin-right: auto;
	 text-align: center;
	}

}
/************************************
** 罫線枠
************************************/

.Block-border{
	border:2px solid #777;
	margin:2em auto;
}

.Block-border .Title{
	background:#999;
	color:#fff;
	padding:.5em;
	text-align:center;
	font-size:1.25rem;
}

.Block-border .Text{
	padding:.5em;
	background:#fff;
}

.Block-border p{
 margin-bottom:.5em;
}

.Block-border p:last-child{
 margin-bottom:0;
}

/*******************************

サンクスページ

*********************************************/

p.Center, .Center{
 text-align:center;
 }

ul.disc{
border:none;
padding:0;
 }

.bg--gray{
 padding:1em;
 background:#fafaf9;
 margin:0 auto 1em auto;
}

.bg--gray ul.disc{
 color:#1a1a1a;
 list-style:disc;
 margin:auto;
 font-size: 0.955rem;
 margin-left: 1em;
}

.bg--gray ul.disc li{
 font-weight:500;
}

.bg--gray ul.disc li:not(:last-child){
 margin-bottom:.5em;
}

.tel--wrap{
 border:1px solid #ccc;
}

.tel--wrap p{
 margin:0;
}

.tel--wrap .header_tel_title{
 border-radius:0;
}

.tel--wrap .header_cta_tel{
 font-size:40px;
}

.tel--wrap .header_tel{
 padding:.2em 1em .355em;
}

.tel--wrap  p.min{
 font-weight:300;
 margin-top:.5em;
 font-size:12px;
 margin-bottom:0;
}

.tel--wrap .time{
 font-size:14px;
}

/**************
 SP
**************************/

@media screen and (max-width: 767px) {

	.search-box{
	 margin-bottom:1.5em;
	}

	aside{
	 margin-top:1.5em
	}

	.bg--gray ul.disc{
	 padding-left:1em;
	}

	.tel--wrap .header_cta_tel{
	 font-size:28px;
	}

.tel--wrap .time{
 font-size:12px;
}

.tel--wrap .header_tel{
	 padding-left:.5em;
	 padding-right:.5em;
	}


}

p.tel{
 font-size:32px;
 font-weight:normal;
 font-family: 'Anton', sans-serif !important;
 color:#b00808;
 letter-spacing:.012em;
 margin-bottom:0;
 line-height:1.255;
}

p.tel img{
 width:50px;
 margin-right:5px;
 vertical-align:middle;
}

p.tel a:hover{
 text-decoration:underline;
}

/************************************
** 著者ページ
************************************/

.pr-wrap{
   display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content:space-between;
}

.pr-wrap h2:before, .pr-wrap h3:before{
  display: none;
}

.pr-wrap .photo{
  max-width:150px;
  min-width:80px;
 }

.pr-wrap .photo img{
  padding:4px;
  border:1px solid #ddd;
 }

.pr-wrap .text{
  padding-left:1em;
 }

/**************
 SP
**************************/

@media screen and (max-width: 767px) {

.pr-wrap{
    flex-wrap: wrap;
}

.pr-wrap .photo{
  width:100%;
  margin:0 autop;
  text-align:center;
 }

.pr-wrap .text{
  width:100%;
  margin:1em auto 0 auto;
  padding:0;
 }
	
}


/************************************
** 目次
************************************/

.toc{
 background:#f9f9f9;
 width:100%;
 padding-top:30px;
}

.toc .toc-list ol {
    padding-left: 0;
    margin: 0 0 0 .5em;
}

.toc.tnt-number-detail ol li{
  counter-increment: x;
  counter-reset:inherit;
}

.toc.tnt-number-detail ol > li:before {
    margin-right: 6px;
    content: ""counter(x)".";
    font-weight:bold;
    color: #004694;
}

ol.toc-list li > ol li{
 counter-increment: y !important;
}

ol.toc-list li ol > li:before{
content: counter(x)"-"counter(y) !important;
 display:inline !important;
   color:#004694;
  margin-right:5px;
}

ol.toc-list li ol > li > ol > li{
 counter-increment: z !important;
}

ol.toc-list li ol > li > ol > li:before{
content: counter(x)"-"counter(y)"-"counter(z) !important;
 display:inline !important;
   color:#004694;
  margin-right:5px;
 font-size:0.975rem;
}

.article ol li a:first-child{
  font-weight:bold;
 font-size:1.125rem;
}


.toc .toc-list ol li a{
 font-weight:500;
 font-size:1.1rem;
}

.toc .toc-list ol li ol li{
 list-style:none;
 font-weight:normal;
 font-size:1.1rem;
}

.toc .toc-list ol li ol{
    counter-reset: inherit;
}

.toc.tnt-number-detail ol li ol li:before{
 display:none;
}

.article ol.toc-list li ol{
    list-style:none;
    margin-left: 2.5em;
    font-weight:bold;
}

/*.article ol.toc-list li ol li a:before{
  content:'●';
  margin-right:5px;
  font-size:0.65rem;
  vertical-align:middle;
  color:#004694;
}*/

.article ol li a{
 color:#004694;
}

.article ol.toc-list li ol a{
    font-weight:500;
}

.toc-center{
 margin: 1em 0;
}

.toc .toc-list ol li ol li a{
 font-size:0.95rem;
}

.article ol.toc-list li ol li ol{
 margin-left:1em;
 margin-top:.5em;
 margin-bottom:.5em;
}

.article ol.toc-list li ol li ol a{
 font-weight:500;
}

.article ol.toc-list li ol li ol a:before{
  display:none;
}

@media screen and (max-width: 767px) {
	.toc{
		padding:.5em;
	}
	
	.article ol li a:first-child{
		font-size:0.9rem;
	}

	.toc .toc-list ol li a{
		font-size:0.8rem;
	}
	
	.article ol.toc-list li ol{
		margin-left:.5em;
        letter-spacing:-1px;
	}
	
	.toc.tnt-number-detail ol{
		line-height:1.8;
	}
	
	.toc.tnt-number-detail ol{
		margin-top:0;
	}
	
	.article ol.toc-list li ol li ol{
	 margin-top: 0;
	}

	.toc .toc-list ol li ol li{
		line-height: 1.2;
		margin: 0;
	}
	
}


/*******************

SNSボタン

****************************************/

.sns__container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:flex-end;
    margin:.5em 0 0em auto;
   max-width:500px;
}

.sns__container a {
    text-decoration: none;
    width: 40px;
    text-align: center;
    color: #fff;
    display:inline-block;
    padding:0;
    margin:0 .5%;
    font-size: 2rem;
    max-width:calc(94% / 6);
}

.sns__container a img{
 vertical-align:top;
}

.sns__container a:hover {
    opacity: 0.6;
}


.sns__container_title{
 padding-bottom:.3em;
 border-bottom:3px solid #ddd;
 margin-bottom:1em;
 font-weight:bold;
 font-size:1.2rem;
}

#copy-page {
  display:block;
  width: 100%;
  padding: 8px 0;
  font-size: 1rem;
  max-width:640px;
  margin:auto;
  text-align: center;
  color: #1a1a1a;
  border-radius: 6px;
  background: #ddd;
  outline: none;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  border:none;
}
 
#copy-page:hover {
  cursor: pointer;
  opacity: .7;
}

footer.article-footer{
 margin-bottom:0;
}

#pager-post-navi{
 display:none;
}

/**************
 SP
**************************/

@media screen and (max-width: 767px) {
			

.sns__container {
	 margin-top:0;
         max-width:95%;
	}

.sns__container a {
    width: 30px;
	}

 .sns__container{
	 margin-top:0;
	 margin-bottom:0;
	}

}


/*******************

ロゴフォント

****************************************/
.logo-font{
display:flex;
justify-content:center;
    -webkit-text-fill-color: inherit !important;
background: transparent !important;
align-items: center;
}

.logo-font span.by img{
	width:105px !important;
}

.logo-font a{
font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
background: #005cab;
background: -moz-linear-gradient(-45deg,  #005cab 0%, #36a0da 50%);
background: -webkit-linear-gradient(-45deg,  #005cab 0%,#36a0da 50%);
background: linear-gradient(135deg,  #005cab 0%,#36a0da 50%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005cab', endColorstr='#36a0da',GradientType=1 );
font-weight:900;
font-size:32px;
margin-bottom:0;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
line-height: 1.12;
}

span.by img{
 width:110px;
 vertical-align:middle;
 display:inline-block;
 margin-left:0;
}

span.tosyo img{
	width:53px;
	vertical-align:middle;
	display:inline-block;
	margin-right:10px;
	margin-left: 5px;
	height: auto;
   }

@media screen and (min-width: 768px) and (max-width: 945px){

 .logo-font a{
   font-size:26px;
  }

  .logo-font span.by img{
	 width:60px;
	}

	header .mail{
	font-size:1.0rem;
	}

}

/**************
 SP
**************************/

@media screen and (max-width: 767px) {

 .logo-font a{
	 font-size:19px;
	}

.logo-font span.by img{
    width: 80px !important;
}

	span.by{
		font-size:10px;
	}

  .entry-title{
	 padding-top:0;
	 padding-left:0;
	 padding-right:0;
	}

 .header_contents div.disp{
	 display:block;
	 margin-top: 5px !important;
	}
	span.tosyo{
		margin-left:0;
	}
	span.tosyo img{
		width:40px;
	}
	span.by{
		font-size: 9px;
		margin: 0;
	}

}

/*******************

ナビゲーション

****************************************/

.navi-in > ul{
  border:none;
 }

.navi-in > ul li{
   width: calc(100% / 6);
 }

/*******************

カテゴリー表示

****************************************/

.eye-catch .cat-label {
    background:var(--keyColor);
    color:#fff;
    padding: 2px 8px;
    opacity: 1;
    border:0;
    top:0;
    left:0;
    font-weight:500;
}

/*******************

見出し

****************************************/

.article h2, .sidebar h3{
    background:var(--keyColor);
    color:#fff;
 }

.top h2:before{
 display:none
}

.article h3 {
    border-left:none;
    border-right:none;
    border-top:none;
    border-bottom: 4px solid var(--keyColor);
    padding: 0 5px 12px;
    font-size:20px;
}

.sidebar h3:before{
  display:none;
}

.sidebar h3{
	font-size:17px;
}

.article h4 {
    border-top:none;
    border-bottom:none;
    padding:0 0 0 25px;
    font-size: 18px;
    position:relative;
}

.article h4:after{
content:'■';
color: var(--keyColor);
position:absolute;
left:0;
top:0;
}

.widget_categories ul{
 border:none;
 }

/**************

見出しナンバリング

**************************/

body {
 counter-reset: cnt;
}

h2:not([class]) {
  counter-reset: counter-h3;
}
h3:not([class]) {
counter-increment: counter-h3;
  counter-reset:counter-h4;
}

h4:not([class]) {
counter-increment: counter-h4;
  counter-reset:counter-h5;
}

h2:not([class])::before {
  counter-increment: cnt;
  content: "" counter(cnt) " ";
  
}

.side-widget-inner h2:not([class])::before, .side-widget-inner h3::before, .page h2:not([class])::before, .page h3:not([class])::before{
	display:none !important;
}

h3:not([class])::before {
  counter-increment: cnt2;
      content: "" counter(cnt) "-" counter(counter-h3) " ";
}

h4:not([class])::before {
  counter-increment: cnt2;
      content: "" counter(cnt) "-" counter(counter-h3) "-"counter(counter-h4);
  margin-right:10px;
}

/*******************

パンくずリスト

****************************************/

.breadcrumbs-wrap{
  background:#ededed;
  font-size:12px;
 }

.breadcrumbs-wrap .breadcrumbs{
  padding:5px 0;
  max-width:1256px;
  margin:auto;
 }

/**************
 SP
**************************/

@media screen and (max-width: 767px) {

 .breadcrumbs-wrap .breadcrumbs{
  padding:5px 16px;
 }

}

/*******************

監修者

****************************************/

.supervision-head-title{
 background: var(--keyColor);
 padding:8px 5px;
 color:#fff;
 text-align:center;
 display:block;
 line-height:1.0;
 font-size:1.1rem;
 max-width: 150px;
 }

.supervision-wrap{
  border:1px solid #ccc;
  padding:1em;
  margin:0 auto .9em;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:space-between;
 }

.supervision-wrap .img{
  width:80px;
 }

.supervision-wrap .img img{
  border-radius:50%;
  overflow:hidden;
 }

.supervision-wrap .text{
  width:calc(99% - 90px);
 }

.supervision-wrap .text .head{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:flex-start;
 }

.supervision-wrap .text .head p.name{
 font-weight:bold;
 font-size:1.1rem;
 margin-right:1em;
 margin-bottom:.3em;
 }

.supervision-wrap .text{
 font-size:0.9rem;
 }

/**************
 SP
**************************/

@media screen and (max-width: 767px) {

 .supervision-wrap .text .head p.name, .supervision-head-title{
 font-size:1.0rem;
 }

 .supervision-wrap .text{
  width:calc(99% - 70px);
 }

.supervision-wrap .img{
  width:60px;
 }

.supervision-wrap .text{
 font-size:0.8rem;
 }

 .supervision-wrap{
  padding:.55em;
 }

}

/*******************

目次へ戻る

****************************************/

.fixed-toc{
 position:fixed;
 right:1em;
 bottom:150px;
 width:80px;
 height:80px;
 z-index:5;
 opacity:0.9;
 }

.fixed-toc img{
 display:block;
 width:80px;
 height:80px;
}

/**************
 SP
**************************/

@media screen and (max-width: 767px) {

.fixed-toc{
 display:fixed;
 right:5px;
 bottom:150px;
 width:50px;
 height:50px;
 }

.entry-content{
	 margin-bottom:1em;
	}

}

/*******************************

関連記事

*********************************************/

.related-list{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:flex-start;
}

.related-list a.a-wrap{
 width:calc(96% / 3);
 margin-right:2%;
 padding:0;
}

.related-list a.a-wrap:nth-of-type(3n){
 margin-right:0;
}

.related-entry-card-thumb{
 width:100%;
 margin-left:auto;
 margin-right:auto;
 margin-bottom:.5em;
}

.related-entry-card-content{
  margin-left:auto;
 margin-right:auto;
}

/**************
 SP
**************************/

@media screen and (max-width: 767px) {

.related-list a.a-wrap{
 width:100%;
 margin-right:0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:flex-start;
    align-items:center;
}

.related-entry-card-thumb{
 width:40%;
 margin-right:10px;
 margin-bottom:0;
}

.related-entry-card-content{
 width:100%;
 padding-bottom:0;
}

}

/********************** テキスト装飾 ********************************/

.red{
 color:#fe0000 !important;
}

.gray{
 color:#dddddd !important;
}

.marker-halfYellow {
    font-weight: 700;
    background: linear-gradient(transparent 60%,#fff8ad 60%);
}

/********************** 引用 ********************************/

.su-quote-style-default {
    position: relative;
    margin-bottom: 3em;
    padding:1em;
    font-style: normal !important;
    border:2px solid #ddd;
    background:#fafaf9;
    font-weight:500 !important;
}

.su-quote-style-default:before{
  top:5px !important;
  left:5px !important;
	content: '“' !important;
        font-weight:900;
  font-size:60px;
  background:none !important;
  line-height:1.0;
  color:#ccc;
 }

.su-quote-style-default:after {
    right:10px !important;
    bottom:10px !important;
	content: '”' !important;
        font-weight:900;
  font-size:60px;
  background:none !important;
  line-height:1.0;
  color:#ccc;
}

/************************************

** 共有持分サイドバナートップ

************************************/

.mb-btn-top{
 border-top-left-radius:.4em;
 border-top-right-radius:.4em;
 background:url(images/blue-bg.jpg)no-repeat center center;
 background-size:cover;
 padding:.25em .5em;
 font-size:28px;
 font-weight:700;
 text-align:center;
 margin-top:1em;
text-shadow: 
    white 1px 1px 10px, white -1px 1px 10px,
    white 1px -1px 10px, white -1px -1px 10px;
}

.mb-btn-top .fukidashi{
 background: var(--bgYellow);
 padding:.3em;
 border-radius:1.6em;
 text-align:center;
 color:#fff;
 font-size:20px;
 display:block;
 margin-bottom:0;
 text-shadow:none;
 line-height:1.1;
 
}

.mb-btn-box{
 background:#f1faff;
 padding:.5em;
}

ul.btn-wrap{
 border:none;
 padding:0;
 }

.mb-btn-box ul.btn-wrap{
 margin:0 0 .5em;
 padding:0;
 list-style:none;
 width:100%;
}

.mb-btn-box ul.btn-wrap li.parent a{
 display:block;
 border:4px solid #dedcdc;
 padding:1em .5em 1em 80px;
 border-radius:.25em;
 font-size:18px;
 font-weight:700;
 box-shadow: 0px 0px 12px -7px #777777;
 background:#fff;
 color:#1a1a1a;
 text-decoration:none;
 line-height:1.4;
 position:relative;
}

.mb-btn-box ul.btn-wrap li.parent a:hover{
 opacity:0.8;
}

.mb-btn-box ul.btn-wrap li.parent a span{
 color: var(--keyColor);
}

.mb-btn-box ul.btn-wrap li.pt-01 a:before{
 content:'';
 background:url(images/icon-home.png)no-repeat left top;
 background-size:cover;
 width:60px;
 height:60px;
 position:absolute;
 left:5px;
top: 50%;
  transform: translateY(-50%);
}

.mb-btn-box ul.btn-wrap li.pt-02 a:before{
 content:'';
 background:url(images/icon-jissseki.png)no-repeat left top;
 background-size:cover;
 width:60px;
 height:60px;
 position:absolute;
 left:5px;
top: 50%;
  transform: translateY(-50%);
}

.mb-btn-box ul.sub-btn{
  margin:0 0 .5em;
 padding:0;
 list-style:none;
 width:100%;
 }

.mb-btn-box ul.sub-btn li:not(:last-child){
 margin-bottom:.3em;
 }

.mb-btn-box ul.sub-btn li a{
 border:1px solid #ccc;
 display:block;
 padding:.5em;
 border-radius:.25em;
 font-size:17px;
 background:#fff;
 position:relative;
}

.mb-btn-box ul.sub-btn li a:after, .mb-btn-box ul.btn-wrap li.parent a:after{
  color: var(--keyColor);
	font-family: "FontAwesome";
	content: '\f054';
	font-size:0.9rem;
	position:absolute;
	right:5px;
	top: 50%;
	  transform: translateY(-50%);
 }

/************************************

** 共有持分サイドバナー

************************************/


.mb_banner{
  background: var(--keyColor);
  padding:.55em;
  font-weight:bold;
  font-size:1.5rem;
  text-align:center;
  color:#fff;
  margin-top:1em;
 }

.mb_banner-wrap{
  border:5px solid var(--keyColor);
  padding:0 .5em .5em;
  border-top:0;
  margin-bottom:1em;
}

.mb_banner-wrap .banner-top{
 font-weight:900;
 font-size:36px;
 max-width:100%;
 text-align:left;
 margin:0 auto .25em;
 line-height:1.35;
 color:#fe0000;
 padding:1em .3em;
 background:url(images/mb_op.jpg)no-repeat center top;
 background-size:cover;
text-shadow: 
    white 2px 0px 2px, white -2px 0px 2px,
    white 0px -2px 2px, white -2px 0px 2px,
    white 2px 2px 2px, white -2px 2px 2px,
    white 2px -2px 2px, white -2px -2px 2px,
    white 1px 2px 2px, white -1px 2px 2px,
    white 1px -2px 2px, white -1px -2px 2px,
    white 2px 1px 2px, white -2px 1px 2px,
    white 2px -1px 2px, white -2px -1px 2px,
    white 1px 1px 2px, white -1px 1px 2px,
    white 1px -1px 2px, white -1px -1px 2px;
 }

.mb_banner-wrap .banner-top span{
 display:block;
 font-size:22px;
 color:#1a1a1a;
 }

.mb_banner-wrap .flex{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
    margin:0 auto .5em;
 }

.bg--yellow{
  background: var(--bgOrange);
  padding:.5em;
  text-align:center;
  color:#fff;
  font-size:19px;
  width:calc(98% / 2);
  border-radius:.2em;
  line-height:1.25;
  font-weight:bold;
 }

.bg--yellow span.big{
  font-size:24px;
  display:block;
  color: #fffd01;
 }

.bg--yellow font.small{
  font-size:14px;
 }

.mb_banner-wrap p.bg-gray{
 padding:.3em;
 line-height:1.2;
 text-align:center;
 background:#f1faff;
 font-size:0.9rem;
 margin-bottom:.3em;
}

.mb_banner-wrap .bottom-text{
  font-weight:900;
 font-size:22px;
 background:#fffcd8;
 padding:.5em;
 border-radius:.25em;
 line-height:1.2;
 text-align:center;
 color:#fe0000;
 position:relative;
 }

.mb_banner-wrap .bottom-text:before{
content:'';
width: 0;
height: 0;
border-style: solid;
border-width: 15px 15px 0 15px;
border-color: #fffcd8 transparent transparent transparent;
position:absolute;
bottom:-15px;
  left: 50%;
  transform:translateX(-50%);
}

.mb_banner-wrap .cta_side_item a{
 margin-top:10px;
}

.mb_banner-wrap .cta_side_item a.tel{
 margin-top:20px;
}

.mb_banner-wrap .cta_side_item{
 margin-bottom:0;
}

/**************
 SP
**************************/

@media screen and (max-width: 767px) {

 .bg--yellow{
  width:100%;
 }

 .bg--yellow:first-child{
 margin-bottom:.5em;
 }

}

/************************************
** チェックボックス
************************************/

ul.check{
 list-style:none;
}

ul.check li:before{
 	font-family: "FontAwesome";
	content: '\f058';
	color: var(--keyColor);
	margin-right:3px;
	font-size:1.25rem;
}

/************************************
** チェックボックス
************************************/
.box-gray{
 padding:1.15em;
 background:#e8e6e6;
 margin:0 auto 1.15em;
}

.box-borderblue{
 padding:1em;
 background:#fff;
 border: 1px dashed var(--keyColor);
 margin:0 auto 1.15em;
}

.box-borderblue dl, 
.box-borderblue dl dd:last-child{
	margin-bottom:0;
}

.box-borderblue ol{
	margin:auto;
}

.box-bluebg{
 padding:1.15em;
 background:#d2e9f7;
 margin:0 auto 1.15em;
}

.box-bluebg p:last-child{
	margin-bottom:0;
}


/************************************
** ＣＴＡ記事下
************************************/

.post-cta-top{
    background: var(--keyColor);
    padding:1em 1em .5em;
    color:#fff;
    font-size:1.55rem;
}

table tr:nth-of-type(2n+1) {
    background-color: #fff;
}

.post-cta-top .wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:center;
    align-items:center;
    width:100%;
}

.post-cta-top .wrap .Left{
 padding-right:.55em;
 border-right:2px solid #fff;
 font-weight:bold;
}

.post-cta-top .wrap .Right{
 font-weight:700;
 padding-left:.55em;
 line-height:1.45;
}

.post-cta-top .wrap .whiteicon{
 background:#fff;
 padding:.5em .5em;
 line-height:1.0;
 color: var(--keyColor);
 display:inline-block;
 font-size:1.15rem;
 margin-right:.5em;
}

.post-cta-bottom{
    background: var(--keyColor);
    color: #fff;
    padding:.5em 1em 1em;
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content:space-between;
}

.post-cta-bottom .item{
 width:calc(98% / 2) !important;
 margin:0;
}
.post-cta-bottom .item p.tel{
	padding-left:0;
}
.post-cta-bottom .item a.mail:after{
	right:.5em;
}

.post-cta-bottom .item a{
 padding-top:.5em;
 padding-bottom:.5em;
 position: relative;
}

.post-cta-bottom .item a{
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content:center;
}

.post-cta-bottom a.mail p{
 margin-bottom:.25em;
 font-size: 1.25rem;
}

.post-cta-bottom span.blue{
 color: var(--keyColor);
 display:block;
 margin-bottom:0;
 font-size:12px;
 padding:0;
}

.cta_side_item a.mail:after{
    top: 25%;
    transform: translateY(-25%);
}

.cta_side_item a.mail img, .cta_side_wrap a.mail:after{
	top: 50%;
    transform: translateY(-50%);
}


.post-cta-bottom .cta_side_item a.mail img{
  top: 15%;
    transform: translateY(-15%);
 }

/**************
 SP
**************************/

@media screen and (max-width: 767px) {

.post-cta-top{
 padding-top:1em;
}

.post-cta-bottom .item a {
    padding-top: 1.25em;
    padding-bottom: 1.25em;
}

.post-cta-top .wrap{
	    justify-content:center;
	}

.post-cta-bottom .item{
 width:calc(100% / 1) !important;
 margin:.5em auto;
}

.post-cta-top, .post-cta-bottom{
  padding:0 .9em .9em;
 }

.post-cta-top{
	 font-size:1.25rem;
	 padding-bottom:0;
	 padding-top:1em;
	}

 .post-cta-top .wrap .Right{
	 padding:0;
	 margin-top:.5em;
	 width:100%;
	  text-align: center;
	font-size: 1.4rem;
	}

.post-cta-top .wrap .Left{
	 width:100%;
	 padding:0;
	 border-right:none;
	 border-bottom:2px solid #fff;
	 padding-bottom:.5em;
	  text-align: center;
	font-size: 1.4rem;
	}

.post-cta-bottom .item:nth-of-type(2) a{
     padding-top: .5em;
    padding-bottom: .5em;
}

}

/**************

新規CTA

**************************/

.cta-top{
 background:#fff;
 margin:0 auto;
}

section.cta{
 margin-top:0;
 margin-bottom:0;
}

section.cta .comm_contents{
 max-width:1000px;
}

section.cta a:hover{
 opacity:0.75;
 text-decoration:none;
}

span.yellow {
    color: #fffc00;
}

.Cta--blue-top {
    background: #2540a7;
    padding: 0.75em 0.55em;
    position: relative;
    color: #fff;
    font-size: 1.6rem;
    line-height: 1.5;
    font-weight: 600;
    margin-bottom: 1.5em;
}

.Flex {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
	align-items:center;
}

.Flex .Hurf {
    width: calc(98% / 2);
    position: relative;
}

.Flex__space{
    justify-content: space-between;
}

.Cta--blue-top .Flex .Item:first-child {
    width: 30%;
    padding-right: 0.5em;
    border-right: 2px solid #fff;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.Cta--blue-top .Flex .Item:nth-of-type(2) {
    width: 70%;
    padding-left: 0.5em;
    text-align: center;
    font-size:1.45rem;
}

.Cta--blue-top:after {
    content: '';
    position: absolute;
    bottom: -25px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 25px 0 25px;
    border-color: #253fa7 transparent transparent transparent;
}

.Cta--blue-top .Flex .Wh-icon {
    background: #fff;
    padding: 0.5em;
    font-weight: bold;
    text-align: center;
    line-height: 1.0;
    color: #2540a7;
    margin-right: 10px;
}

.Cta--blue-top span.Seconds {
    font-size: 45px;
    font-family: 'Inter', sans-serif;
}

section.cta .Inner {
    background: #fff;
    padding: 0;
}

.cta .tel-top {
    margin-top: 0em;
    margin-bottom: 0em;
    font-size: 1.05rem;
    text-align: center;
}

.cta .mail {
    display: block;
    position: relative;
    text-align: center;
    color: rgb(255, 255, 255);
    height: 100%;
    font-size: 1.65rem;
    font-weight: 600;
    font-family: "Noto Sans JP", 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    padding: 0.4em 0.5em 0.4em 0.75em;
    background: linear-gradient(rgb(251, 101, 20) 0%, rgb(251, 101, 20) 50%, rgb(250, 62, 0) 51%, rgb(250, 62, 0) 100%);
    border-radius: 0.45em;
    overflow: hidden;
    line-height: 1.4;
}

.cta .mail.mail-min:before {
    content: '';
    background: url(../../images/mail_logo.svg)no-repeat;
    background-size: contain;
    margin-right: 0.5em;
    width: 45px;
    height: 45px;
    display: inline-block;
    position: absolute;
    left: 0.5em;
    top: 50%;
  transform: translateY(-50%);
}


.cta .mail:after {
    font-family: "FontAwesome";
    content: '\f105';
    position: absolute;
    right: 0.35em;
    font-size: 40px;
    top: 50%;
    transform: translateY(-50%);
    font-weight: 400;
}

.cta .mail span.top {
    margin-bottom: 0.5em;
    font-size: 15px;
    display: inline-block;
    line-height: 1;
    letter-spacing: 1px;
    font-weight: 600;
    color: rgb(251, 101, 20);
    font-family: 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    background: rgb(255, 255, 255);
    padding: 3px 5px;
}

.Cta--blue-top .Flex .Wh-icon {
    background: #fff;
    padding: 0.5em;
    font-weight: bold;
    text-align: center;
    line-height: 1.0;
    color: #2540a7;
    margin-right: 10px;
}

.Cta--blue-top span.Seconds {
    font-size: 50px;
    font-family: 'Anton', sans-serif;
    font-weight:normal;
    letter-spacing:1px;
}


.shiny-btn {
    position: relative;
}

.cta .tel-wrap {
    background: #fff;
    position: relative;
    border: none;
    border-top: 1px solid #1a1a1a;
    padding: 0.6em 0;
    text-align: center;
    margin-top: .5em;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.cta .tel-wrap .Img {
    width: 120px;
    margin-right:5px;
	display:none;
}

.cta .tel-wrap a.tel {
    font-size: 54px;
    font-weight: normal;
    font-family: 'Anton', sans-serif;
    text-align: center;
    position: relative;
    line-height: 1.25;
    padding-top: 0;
    letter-spacing: 0.08em;
    margin: 0;
    color: #b00808;
    display: inline-block;
    padding-left: 50px;
}

.cta .tel-wrap span.time {
    color: #1a1a1a;
    text-align: left;
    padding-left: 0;
    font-size: 0.9rem;
    display:block;
}

.cta .tel-wrap span.time br{
	display: none;
}

.cta .tel-wrap a.tel:before {
    content: '';
    background: url(images/free-icon.svg)no-repeat left top;
    position: absolute;
    left: 0px;
    top: 12px;
    background-size: contain;
    width: 45px;
    height: 50px;
    margin-right: 5px;
	display:none;
}

.cta .tel-wrap a.tel:hover{
 text-decoration:none;
 opacity:0.75;
}

.line a:hover{
 opacity:0.75;
}

.cta .tel-wrap a.tel{
	padding-left:0;
}

/**************

sp

**************************/

@media screen and (max-width: 767px){
	
			img.logo{
			max-width:120px;
		}
		
		span.tosyo img{
		width: 38px;
		margin-left: 10px;	
		}
		
	 .logo-font a{
		 font-size:18px;
		     line-height: 1.0;
		}

	section.cta {
	    margin-bottom:1em;
	    margin-top:0;
	    padding-left:0;
	    padding-right:0;
	    background: #fff;
	}

	.Flex .Hurf {
	    width: calc(100% / 1);
	}

	.Flex .Hurf:first-child{
	 margin-bottom:1em;
	}

	section.cta .Inner{
	 padding-left:0;
	 padding-right:0;
	}

	.cta .tel-top {
	    font-size: 0.9rem;
	}

	.cta .tel-wrap{
	 margin-top:0;
	}

	.Cta--blue-top {
	    font-size: 1.0rem;
	}

	.Cta--blue-top .Flex .Item:first-child {
	    line-height: 1.2;
	    width:100%;
	}

	.Cta--blue-top .Flex .Item:first-child {
	    padding: 0 0 0.22em 0;
	    border-bottom: 1px solid #fff;
	    margin-bottom: 0.35em;
	    border-right: none;
	}

	.Cta--blue-top .Flex .Item:nth-of-type(2) {
	    padding-left: 0;
	    width:100%;
	    font-size:1.35rem;
	}

	.Cta--blue-top:after{
	 bottom:-15px;
	}

	.cta .tel-wrap span.time {
	    padding: 0;
	    display: block;
	    text-align: center;
	    font-size: 0.85rem;
	}

	.cta .tel-wrap .Img {
	    display: none;
	}

	.cta .tel-wrap a.tel {
	    margin-left: auto;
	    margin-right: auto;
	    padding-left: 0px;
	    font-size: 34px;
	    text-align: center;
	    display: block;
	}

	.cta .tel-wrap a.tel:before {
	    width: 35px;
	    height: 40px;
	    left: 0;
	    top: 5px;
	}

	.cta .mail{
	 font-size:1.3rem;
	}

	.cta .mail.mail-min:before{
 	 width:30px;
 	 height:30px;
		}

}

/*******************

よくある質問

****************************************/

.faq_qstCont_ttl {
    border-bottom:3px solid var(--keyColor);
    margin: 10px 0 0;
    color: #0e3f81;
    font-size: 120%;
}


.faq_qstCont_ttl {
    border-bottom:3px solid var(--keyColor);
    margin: 10px 0 0;
    color: #0e3f81;
    font-size: 120%;
    font-weight:bold;
    color:var(--keyColor);
    line-height:1.55;
}

.faq_qstCont_ttl .icoQ, .faq_ans_ttl .icoA {
    background: none;
    display: block;
    padding: 10px 0px 10px 30px;
    position: relative;
    margin: 30px 0px 0px 0px;
}

.faq_ans_ttl .icoA{
 margin-top:10px;
}

.faq_qstCont_ttl .icoQ::before {
    content: "Q.";
    position: absolute;
    font-size: 130%;
    color: var(--keyColor);
    left: 0px;
    top: 5px;
    margin-right:5px;
}

.faq_ans_ttl .icoA::before {
    content: "A.";
    position: absolute;
    font-size: 130%;
    color: #af3030;
    left: 0px;
    top: 5px;
    margin-right:5px;
}

.faq_ans_ttl {
    border-bottom: #af3030 3px solid;
    margin:0 0 0;
    color: #af3030;
    font-size: 120%;
    font-weight:bold;
}

.faq_ans_col {
    background-color: rgb(255, 242, 242);
    padding:1em;
    margin-bottom: 40px;
    border: none;
}

.faq_qstCont_col {
    font-weight: 300;
    background-color: rgb(241, 246, 255);
    padding: 0px 40px 0px 60px;
    line-height: 25px;
    margin: 0px;
}

/*******************

各ページ下よくある質問

****************************************/

.accordion {
margin: 3em auto;
max-width: 100%;
}
input[type="checkbox"].toggle {
display: none;
}
.option {
position: relative;
margin-bottom: 1em;
}
.accordion .title, .content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.accordion .title {
padding:0 .5em .5em 25px;
border-bottom:1px solid #ccc;
display: block;
position:relative;
font-weight:600;
}

.accordion .title .ico:before{
  content:'Q';
  color: var(--keyColor);
  font-size:20px;
  font-weight:bold;
  position:absolute;
  left:0;
  top:0;
}

.accordion .title::after,
.accordion .title::before {
content: "";
position: absolute;
right: 1.25em;
top: .5em;
width: 2px;
height: 0.75em;
background-color: #999;
transition: all 0.3s;
}
.accordion .title::after {
transform: rotate(90deg);
}
.accordion .content {
max-height: 0;
overflow: hidden;
margin-top:.25em;
}
.accordion .content .anther {
padding:1em 1em 1em 25px;
position:relative;
}

.accordion .content .anther:before{
  content:'A';
  color: var(--bgOrange);
  font-size:20px;
  font-weight:bold;
  position:absolute;
  left:0;
  top:.75em;
 }

.toggle:checked + .title + .content {
max-height: 500px;
transition: all 1.5s;
margin-top:.25em;
}
.toggle:checked + .title::before {
transform: rotate(90deg) !important;
}

/**************

sp

**************************/

@media screen and (max-width: 767px){

.accordion .title .ico:before{
   top:-.2em;
 }

.accordion .content .anther:before{
	 top:.5em;
	}

 .accordion {
	margin:20px auto;
	}

}

p.reference, p.reference a{
  color:#999;
}

cite {
		font-style: normal;
	}

/************* 電話アニメーション *****************/

.tel-icon{
	display: inline-block;
	background: url(images/phone-icon03.png) left 0px top 5px no-repeat;
	background-size: contain;
	height: 30px;
	margin: auto 8px auto auto;
	width: 30px;
	position: relative;
}

.sidebar .tel-icon, .post-cta-bottom .tel-icon{
	display: inline-block;
	background: url(images/phone-icon03.png) left 0px top 0 no-repeat;
	background-size: contain;
	height: 30px;
	margin: auto 8px auto auto;
	width: 30px;
	position: relative;
}

.header_tel .tel-icon{
	background: url(images/phone-icon03.png) left 0px top 0 no-repeat;
    background-size: contain;
	width:25px;
	height:25px;
}

.header_tel .signal-icon{
	top:12px;
	left: 15px;
}

.tel-wrap .tel-icon{
	height: 35px;
	width: 30px;
}

.signal-icon{
	position: absolute;
	top: 14px;
	left: 18px;
	color: #b00808;
	transform: rotate(45deg);
}

.signal-icon:before,
.signal-icon:after{
	content: '';
	position: absolute;
	border: 3px solid transparent;
	border-top: solid 3px currentColor;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
	animation-name: callSupportSignal;
	animation-duration: 1.4s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}


.signal-icon:first-of-type:before{
	width: 11px;
	height: 11px;
	animation-delay: -1.16s;
}
.signal-icon:first-of-type:after{
	width: 24px;
	height: 24px;
	animation-delay: -1.08s;
}


.tel-wrap .signal-icon{
   top:20px;
   left:17px;
}

.tel-wrap .signal-icon:first-of-type:before{
	width: 20px;
	height: 20px;
	animation-delay: -1.16s;
}
.tel-wrap .signal-icon:first-of-type:after{
	width: 34px;
	height: 34px;
	animation-delay: -1.08s;
}

@keyframes callSupportSignal {
  8%, 64% { opacity: 1; }
  78% { opacity: 0; }
}

@media screen and (max-width: 767px) {

	.tel-icon{
	 margin-right:8px;
	 background: url(images/phone-icon03.png) left 0px top 0 no-repeat;
	 background-size: contain;
	}

	.tel-icon{
		height: 20px;
		width: 20px;
	}

	.tel-wrap .tel-icon{
		height: 22px;
		width: 22px;
	}

	.cta .tel-icon{
		background: url(images/phone-icon03.png) left 0px top 0 no-repeat;
		background-size: contain;
	}

	.Bnr .tel-wrap .signal-icon{
		left:17px;
		top:19px;
	}
	
	.tel-wrap .signal-icon:first-of-type:before{
		width: 20px;
		height: 11px;
	}

	.Bnr .tel-wrap .signal-icon:first-of-type:before {
		width: 15px;
		height: 11px;
	}

	.Bnr .tel-wrap .signal-icon:first-of-type:after {
		width: 21px;
		height: 23px;
	}

	.Bnr .tel-wrap .tel-icon{
		margin-right:3px;
	}
	
	.tel-wrap .signal-icon:first-of-type:after{
		width: 24px;
		height: 22px;
	}
	
	.tel-wrap .signal-icon{
	top:19px;
	left:20px;
	}

	.cta .tel-wrap .signal-icon{
		top: 17px;
		left:20px;
	}

	.signal-icon:before,
	.signal-icon:after{
		transform: translate(-90%, -50%);
	}

	.signal-icon:first-of-type:before{
	 width:18px;
	}

}

/*******************

メディア掲載

****************************************/

dl.media{
	padding:.5em 0;
	border-top:1px solid #ddd;
	margin:auto;
	display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content:flex-start;
	align-items:center;
}

dl.media dt{
	width:15%;
	padding:.5em;
	margin:0;
    display: flex;
    flex-direction: column;
	justify-content:center;
    flex-wrap: wrap;
	border-right:1px solid #ddd;
}

dl.media dt img{
	max-width:100%;
}

dl.media dd{
	width:75%;
	padding:.5em;
	font-size:0.9rem;
	margin:0;
	display: flex;
    flex-direction: column;
	justify-content:center;
    flex-wrap: wrap;
}

dl.media dd a{
	text-decoration:underline;
}

dl.media dd p{
	margin-bottom:5px;
}

dl.media:last-child{
	border-bottom:1px solid #ddd;
}

dl.media p:last-child{
	margin-bottom:0;
}

dl.media:last-of-type{
	border-bottom:1px solid #ddd;
}
@media screen and (max-width: 767px) {
dl.media dt{
	width:25%;
}
}
/**************スタッフ紹介*******************/

.icon {
    background: #eae8e0;
    padding: 5px;
    line-height: 1.0;
    text-align: center;
    font-size: 0.9rem;
    border-radius: 3px;
    display: inline-block;
    margin-bottom: 5px;
}

.icon br{
	display:none;
}

.icon-price {
    font-size: 1.1rem;
    margin-right: 5px;
    margin-bottom: 10px;
}
.Staff_name {
    font-weight: 600;
    font-size: 1.4rem;
    margin-bottom: 1em;
}

.Staff_name span {
    display: inline-block;
    vertical-align: bottom;
    margin-left: 0.5em;
    font-weight: normal;
    font-size: 0.9rem;
}

.flex_wrapper .three p{
	font-size:0.9rem;
}

/**************
 お客様の声
**************************/

.wood_wrap{
background: #fffbf0;
padding:5% 2.5% 5% 2.5%;
color:#000 !important;
}

.wood_wrap h2{
 margin-bottom:0;
}

.wood_wrap h2.review .title_count{
 background:transparent;
}

.Flex-wrap{
display:flex;
width:100%;
    flex-direction: row;
    flex-wrap: wrap;
justify-content: flex-start;
max-width:1000px;
margin:0 auto 0 auto;
}

.Flex-wrap .Fourth.review{
  position:relative;
  display:flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: space-between;
  padding:.75em;
  background:#fff;
 height:auto;
 border:1px solid #eee;
 }

.Flex-wrap .Fourth.review p.Center{
 margin-bottom:.5em;
 }

.Flex-wrap .Fourth.review{
 text-align:left;
 }

.Flex-wrap .Fourth.review img{
 border:1px solid #ddd;
 }

.Flex-wrap .Fourth.review div:nth-of-type(1){
	min-height:200px;
}

.Flex-wrap .Fourth.review div.auto:nth-of-type(1){
	min-height:auto;
}

.Flex-wrap .Fourth p.mod-title{
 font-size:1.0rem;
 margin-bottom:5px;
 line-height:1.5;
 font-weight:900;
 min-height:72px;
color:#424242;
}


.Flex-wrap .Fourth p.name{
 font-size:0.9rem;
 font-weight:500 !important;
 margin-bottom:0;
}

.Flex-wrap .Fourth p.name span{
 display:inline-block;
 font-size:0.8rem;
 margin-left:1em;
 font-weight:300 !important;
}
.Flex-wrap.inherit{
    align-items: inherit !important;
}

.Flex-wrap .Fourth{
 width:calc(97% / 3);
 margin-top:1em;
 margin-right:1%;
}

.Flex-wrap .Fourth.review:nth-of-type(-n+3){
	margin-top:0;
}

.Flex-wrap .Fourth:nth-of-type(3n){
 margin-right:0;
}

.Flex-wrap.wrap{
    flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top:0;
  margin-bottom:0;
  border:0;
  padding:0;
}

.Flex-wrap .Fourth a img {
    border: 1px solid #ddd;
    height: 300px;
    width: 100%;
    object-fit: cover;
}

.cat-title{
	font-weight:bold;
	font-size:1.3rem;
	margin-bottom:5px;
	text-align:center;
}

@media screen and (max-width: 767px) {

	.Flex-wrap .Fourth p.mod-title{
	 min-height:auto;
	 }

	.Flex-wrap .Fourth{
	 width:calc(100% / 1);
	 margin-bottom:1em;
	}
	.Flex-wrap .Fourth a img{
		height:auto;
	 }
	
	table th, table td p, dl.media dd p{
		font-size:0.8rem;
	}
	
	table td iframe{
		max-height:250px;
	}

	.Flex-wrap .Fourth.review div:nth-of-type(1){
	min-height:auto;
   }
	
 }

 /**************
監修者ページ
**************************/

.supervision__wrap{
    padding: 40px;
    border-radius: 10px;
    background-color: #fafafa;
    border: 1px solid #f2f2f2;
	display:flex;
	flex-wrap: wrap;
}

.supervision__wrap .icon{
    background: #777;
    border-radius: 4px;
    color: #fff;
    font-size: 12px;
    padding: 0 8px;
    line-height: 1.6;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    margin-right: auto;
    margin-bottom: 4px;
}

.supervision__wrap .images img{
	border-radius:50%;
    width:120px;
	height:120px;
	min-width:120px;
	min-height:120px;
}

article.entry-card h2.entry-card-title{
 background:transparent;
 color:#000;
 font-size: 18px;
 margin: 0 0 5px 0;
 line-height: 1.2;
 font-weight: bold;
 padding:0;
}

.supervision__wrap .text h3:first-of-type{
	margin-top: 0;
	font-size: 1.65rem;
}

.supervision__wrap .text p{
	font-size: 0.975rem;
}

.supervision__wrap .text h3:first-child span{
	display: inline-block;
	margin-right:5px;
}

.supervision__wrap .text{
	padding-left:15px;
	width:calc(100% - 130px);
}

.supervision__wrap .name{
	 font-size:1.3rem;
	 font-weight: bold;
}

.supervision__wrap .position{
	border-radius:12px;
	background: #252525;
	color: #fff;
	text-align: center;
	padding:10px;
	display: inline-block;
	margin-bottom: 5px;
}

.supervision__wrap h3::before{
	display:none;
}

@media screen and (max-width: 767px) {

	.supervision__wrap{
		padding:1em;
	}
	.supervision__wrap .images img {
		border-radius: 50%;
		width: 60px;
		height: 60px;
		min-width: 60px;
		min-height: 60px;
	}

	.supervision__wrap .text {
		width: calc(100% - 70px);
	}

	.supervision__wrap .text h3:first-child{
		font-size: 1.2rem;
	}

	article.entry-card h2.entry-card-title{
		font-size: 16px;
	}

}

.cta .Hurf.none, .bottom_menu_contents.none{
	display:none;
}

.cta .Hurf.full, .cta-wrap .cta_contents_item.full{
	width:100%;
	margin-left:auto;
	margin-right:auto;
	max-width:600px;
}

.bottom_menu_contents.full, .cta_side_item.full{
	margin-left:auto;
	margin-right:auto;
}



.cta_contents_item_border.none, .cta-wrap .Hurf.none{
	display:none;
}

/**********記事下ＣＴＡ************/

.cta__wrap{
	margin:0 auto 2em;
}

.cta__wrap h2::before{
	display:none;
}

.cta__wrap th, .cta__wrap td{
	padding:.5em;
	font-size:0.95rem;
}

.cta__wrap td p{
	margin-bottom:0;
}

.cta__wrap th{
	text-align:left;
}

.cta__wrap input, .cta__wrap select, .cta__wrap textarea{
	font-size:0.95rem;
	padding:.7em;
}

.cta__wrap textarea{
	min-height:80px !important;
	height:80px;
}
.cta__wrap .wpcf7{
    padding: 1em;
    border: 5px solid var(--keyColor);
}
.cta__wrap td br{
	display:none;
}

.cta__wrap .wpcf7-not-valid-tip{
	font-size:0.8rem;
}

.cta__wrap #zip{
	margin-bottom:.5em;
}

.cta__wrap center{
	font-size:0.9rem;
	margin:.5em auto;
}

.cta__wrap input[type='submit']{
	padding:1em;
	font-size:1.0rem;
}

.wpcf7-spinner{
	display:none !important;
}

.side__cta__wrap th, .side__cta__wrap td{
	padding:.3em 0;
	border:none;
}

.side__cta__wrap td{
	padding:.15em 0;
}

.side__cta__wrap textarea{
    min-height: 100px !important;
	height: 80px;
	font-size:0.9rem;
}

.side__cta__wrap input, .side__cta__wrap select{
	font-size:0.9rem;
	padding:.3em;
	border-radius:0;
}

.side__cta__wrap select{
	margin-bottom:.5em;
}

.side__cta__wrap center{
	font-size:0.8rem;
	margin:0 auto 5px;
}

.side__cta__wrap table{
	margin-bottom:0;
}

.side__cta__wrap p{
	margin:0;
}

.side__cta__wrap input[type='submit']{
	padding:.75em;
	font-size:0.95rem;
	border-radius:0.26em;
}

.side__cta__wrap #zip{
	margin-bottom:10px;
}

.side__cta__wrap .wpcf7-not-valid-tip{
	font-size:0.8rem;
}

.side__cta__wrap td br{
	display:none;
}

.side__cta__wrap .wpcf7 form .wpcf7-response-output{
	margin-top:2px auto 0;
	font-size:0.7rem;
}

.sidebar-scroll .toc-widget-box{
	max-height:265px;
	overflow-y:auto;
}

.side__cta__wrap .wpcf7{
	padding:.5em;
	border:3px solid var(--keyColor);
}

#toc-2 .sidebar h3{
	margin-bottom:0 !important;
}

@media screen and (max-width: 767px) {
	.cta__wrap th{
		font-size:1.0rem;
	}
	.cta__wrap td{
		padding:.75em;
	}
	.cta__wrap th, .cta__wrap td{
		display:block;
		width:100%;
	}
	.toc .toc-list ol li ol li a, ol.toc-list li ol > li > ol > li:before{
		font-size: 0.7rem !important;
	}
	.bottom_menu_contents.full{
		width:75%;
		padding: 0;
	}
	.bottom_menu_contents.full a{
		padding-bottom: .5em !important;
	}
}

.footer__links__wrap{
	background: #006196;
	padding: 0.75em;
}

.footer__links__wrap .title{
	font-weight:bold;
	text-align:center;
	margin-bottom:.25em;
	color:#fff;
}

.footer__links__wrap .Inner {
    max-width: 1000px;
    margin: auto;
    display: flex;
    justify-content: center;
    font-size: 16px;
    align-items: center;
    color: #fff;
}

.footer__links__wrap .Inner a{
	color: #fff;
	text-decoration:underline;
}

.footer__links__wrap .Inner a:hover{
		text-decoration:none;
}

.footer__links__wrap .Inner a:first-child::before{
		content:'|';
	display:inline-block;
	padding:0 10px;
}

.footer__links__wrap .Inner a::after{
	content:'|';
	display:inline-block;
	padding:0 10px;
}

@media screen and (max-width: 767px) {
	.footer__links__wrap .Inner{
		flex-direction:column;
		flex-wrap:wrap;
	}
	
	.footer__links__wrap .Inner a::before{
		    content: '|';
    display: inline-block;
    padding: 0 10px;
	}
	
}

table.company th{
	border:none;
	border-bottom:1px solid #262626;
	padding:.75em;
	font-size:0.9rem;
	width:20%;
}

table.company td{
	border:none;
	border-bottom:1px solid #262626;
	padding:.75em;
}

.profile__flex{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.profile__flex .item{
	width:35%;
}

.profile__flex .text{
	width:62%;
}

@media screen and (max-width: 767px) {
	table.company th{
		width:30%;
	}
	.profile__flex .item{
	width:100%;
	margin:0 auto 1em;
}

.profile__flex .text{
	width:100%;
}
}

/************* テーブル横スクロール *************/

.scroll-hint:after {
    content: "";
    width: 34px;
    height: 14px;
    display: block;
    position: absolute;
    top: 10px;
    left: 50%;
    margin-left:-10px;
    background: url(images/arrow-scroll.svg)no-repeat;
    opacity: 1;
    transition-delay: 2.4s;
}

.scroll-hint:before {
	content: "";
    display: block;
    width: 40px;
    height:20px;
}

.table-container {
  position: relative;
  overflow-x: scroll;
  white-space: nowrap;
}

.table {
  width: 100%;
  border-collapse: collapse;
  white-space: nowrap;
	min-width:1200px;
}

.scroll-hint {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 10px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  display: none;
  animation: scroll-hint-animation 2s infinite ease;
}

.toc-checkbox{
	display:none !important;
}

@keyframes scroll-hint-animation {
  0% {
    transform: translate(-50%, -50%);
  }
  50% {
    transform: translate(-40%, -50%);
  }
  100% {
    transform: translate(-50%, -50%);
  }
}

.scroll-hint--show {
  display: block;
}

.table.center td{
	text-align:center
}

.line__banner{
	margin:5vh auto;
	text-align:center;
}

.line__banner img{
	margin:auto;
}

.fukidashi__wrap{
	border:7px solid var(--keyColor);
padding: .3em;
    position: relative;
    max-width: 550px;
    margin: auto;
}

.fukidashi__wrap p{
	font-size: 1.0rem;
	text-align: center;
	margin:0;
}

.fukidashi__wrap .Inner{
	display: flex;
	column-gap: 10px;
	align-items: center;
	justify-content: center;
}

.fukidashi__wrap .Inner picture{
	width: 100px;
	height: 100px;
	background: url(images/operator.png)no-repeat center top;
	background-size: contain;
}

.fukidashi__wrap:hover .Inner picture{
	width: 100px;
	height: 100px;
	background: url(images/operator_hover.png)no-repeat center top;
	background-size: contain;
}

.balloon-left {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 1.5em 0 1.5em 15px;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	width: 80%;
	color: #555;
	font-size: 18px;
	background: #e0edff;
	border: 3px solid #000;
  }
  
  .balloon-left:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -33px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-right: 15px solid #000;
	z-index: 3;
  }
  
  .balloon-left p {
	margin: 0;
	padding: 0;
	font-size: 18px;
  }

  @media screen and (max-width: 767px) {

	.balloon-left{
		margin-top: 0;
		margin-bottom: 0;
	}
	.balloon-left p {
		margin: 0;
		padding: 0;
		font-size: 16px;
	  }
	  .balloon-left:before{
		top:25%;
	  }
  }

  .btn-sink{
	display:block;
	margin: 0;
	padding:12px 12px;
	width: 60%;
	border-radius:5px;
	background: #de2304;
	text-align:center;
	box-shadow:0 4px 0 #dcdcdc;
	font-size: 24px;
	text-decoration: none;
	color: #fff;
	font-weight:bold;
  }
  
  .fukidashi__wrap:hover .btn-sink{
	box-shadow:none;
	position:relative;
	top:4px;
	color:#fff;
	text-decoration: none;
	background: #ff2600;
  }

  .updown {
	animation: yureru-updown 4s infinite;
	width: 30px;
	display: inline-block;
	margin-left: 10px;
	vertical-align: middle;
	background: url(images/headset.png)no-repeat;
	background-size: contain;
	height: 25px;
}
@keyframes yureru-updown {
	0% {
		transform: translate(0px, 2px);
	}
	5% {
		transform: translate(0px, -2px);
	}
	10% {
		transform: translate(0px, 2px);
	}
	15% {
		transform: translate(0px, -2px);
	}
	20% {
		transform: translate(0px, 2px);
	}
	25% {
		transform: translate(0px, -2px);
	}
	30% {
		transform: translate(0px, 0px);
	}
}


  @media screen and (max-width: 767px) {

	.updown{
		width: 28px;
		height: 18px;
	}

	.btn-sink{
		width:75%;
		font-size: 0.85rem;
	}

	.fukidashi__wrap{
		padding: .3em;
		margin-bottom:.5em;
	}
	.fukidashi__wrap p{
		font-size: 0.9rem;
		margin-bottom: 0;
	}
	  .fukidashi__wrap .Inner picture{
		  width:80px;
		  height:80px;
	  }
  }

.drawer__cta__title {
    position: relative;
    padding: 1rem 14px;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
}

.drawer__cta__title::before,
.drawer__cta__title::after {
    position: absolute;
    top: 30px;
    height: 1.8rem;
    content: '';
}

.drawer__cta__title::before {
    border-left: solid 1px;
    left: 80px;
    transform: rotate(-30deg);
}

.drawer__cta__title::after {
    border-right: solid 1px;
    right: 80px;
    transform: rotate(30deg);
}
  @media screen and (max-width: 767px) {
    .bottom_menu_contents a.mail, .bottom_menu_contents a.footer-tel{
        font-size: 0.75rem;
        border-bottom: 0;
        padding: 0.8em 0.3em;
    }
	.bottom_menu_contents a.footer-tel{
		        font-size: 21.5px;
        line-height: 1.0;
        padding-left: 20px;
	}
}

.drawer-menu .tel_btn {
    width: 100%;
    background: #fff;
    position: relative;
    border: 2px solid #ccc;
    padding: .25em;
    line-height: 1.25;
    text-align: center;
	margin:0 auto .5em;
}
.drawer-menu .tel_btn a{
    text-align: center;
	font-size: 21.5px !important;
    line-height: 1.0;
    color: #b00808;
	padding-left:0;
}
.drawer-menu .bottom_menu_contents{
	margin:0 auto 1em;
	display:block;
	width:80%;
}
.drawer-menu .bottom_menu_contents a.mail{
    background: rgb(222, 35, 4);
}

a.indexcta-tel{
 line-height: 1.2;
 height:auto;
 text-align:center;
 color:#b00808;
 font-weight:bold;
 font-family: 'Anton', sans-serif;
 font-weight:normal;
 letter-spacing:1px;
 font-size:35px;
 display:block;
 position: relative;
}

.sidebar-scroll .wpcf7 form.invalid .wpcf7-response-output{
	font-size: 0.8rem;
	margin-top: 5px;
}

.selectform .stepform__title, .selectform div.contact{
	display:none !important;
}

  .notice-area-wrap.media{
	padding:5px 0 0;
	background: #f9e85a !important;
  }

  .notice-area-wrap.media #notice-area {
    background-color: #f9e85a;
}

.drawer-menu .tel_btn .time{
	font-size:10px;
}

.footer-bottom-content.flex{
    display: flex;
    column-gap: 5%;
    min-width: 50%;
    justify-content: flex-end;
    width: 100%;
    max-width: 1000px;
    margin: auto;
    float: none;
}

.footer-bottom-content.flex ul{
	display:flex;
	flex-direction:column;
	gap:2%;
	list-style:none;
	text-align:left;
	margin-bottom:0;
}


.footer-bottom-content.flex ul .sub-menu{
	margin-left:.5em;
	font-size:0.9rem;
	margin-top:0;
	margin-bottom:0;
}

.footer-bottom-content.flex ul .sub-menu li:before{
	content:'└';
	display:inline-block;
	margin-right:5px;
}
.copyright{
	font-size:0.75rem;
	text-align:right;
	padding-bottom:.5em;
}

.footer-bottom-logo{
	position:relative
}

.footer-bottom-content.flex ul a, .footer-bottom-content.flex ul .sub-menu a{
	color:#101010 !important;
	text-decoration:none !important;
	border:none !important;
}

@media screen and (max-width: 767px) {
	.footer-bottom-content.flex{
		justify-content:center;
	}
	.copyright{
		text-align:center;
	}
}

/*******************cta追加**********************/
.Cta--wrap .tel-wrap a.footer-tel span.time{
 font-size:12px;
 font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.Cta--wrap .tel-wrap a.footer-tel{
	text-decoration:none;
}

.Cta--wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
	align-items:center;
}

.Cta--wrap.Center{
	justify-content: center;
}

.Cta--wrap .Hurf{
 width:calc(98% / 2);
 margin-bottom:1em;
}

.Cta--wrap .tel-wrap {
    background: #fff;
    position: relative;
    border: 2px solid #ccc;
    padding: 0.6em;
    text-align: center;
}

.Cta--wrap .tel-wrap a.footer-tel {
    font-size: 34px;
    font-weight: normal;
    font-family: 'Anton', sans-serif;
    text-align: center;
    position: relative;
    line-height: 1.25;
    padding-left: 0px;
    padding-top: 0;
    letter-spacing: 0.02em;
    margin: 0 auto 0 auto;
    color: #b00808;
    display: inline-block;
}

.Cta--wrap .tel-wrap a.footer-tel span.time {
    margin-top: 0.5em;
}

.Cta--wrap .tel-wrap a.footer-tel span.time{
    font-size: 14px;
    color: #4d4d4d;
    margin-top: 3px;
}

.Cta--wrap .tel-wrap a:hover{
 text-decoration:none;
}
.sp_mb{
	margin-bottom:0 !important;
}
.Cta--wrap .shadow{
	    box-shadow: 6px 3px 10px 0px rgba(0, 0, 0, 0.4);
}

@media screen and (max-width: 768px) {

	.Bnr .Cta--wrap .tel-wrap span.top{
		font-size:12px;

	}
	.Cta--wrap .Hurf{
	 width:100%;
	}

	.Cta--wrap .Hurf:first-child{
	 margin-bottom:1em;
	}

	.Cta--wrap .Hurf:last-child{
	 margin-bottom:0;
	}

	.Cta--wrap .tel-wrap a.footer-tel{
	 font-size:21px;
	 padding: 0 0 0 30px;
	}

	.Cta--wrap .tel-wrap a.footer-tel:before{
	 left:5px;
	     width:35px;
	}

	.Cta--wrap .tel-wrap a.footer-tel span.time{
	 font-size:9px;
	         margin-left: -12px;
        margin-top: -1px;
	}
	.sp_mb{
		margin-bottom:1em !important;
		margin-top:1em;
	}
	.Cta--wrap .mail p{
		font-size:1.05rem;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	    .Cta--wrap .tel-wrap a.footer-tel {
        font-size: 29px;
        display: flex
;
        flex-direction: column;
    }
}

footer .column_link{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	gap:1.35vw;
	padding:0 1em;
}
footer .column_link a{
	text-decoration:underline;
	font-size:1.0rem;

}

footer .column_link_title{
	font-weight:bold;
	font-size:1.05rem;
	margin-bottom:.5em;
	margin-top:1em;
	border-left:8px solid var(--keyColor);
	padding-left:15px;
}
.cta_contents_item a.mail > div{
	font-size:1.1rem;
}
@media screen and (max-width: 768px) {
	
	footer .column_link{
		flex-direction:column;
	}
	.cta_contents_item a.mail > div{
	font-size:0.77rem;
}
	.fixed_box_title.pc_image{
		display:none;
	}
}

.widget-entry-cards figure{
	display:none;
}
.widget-entry-card-content{
	margin-left:0;
}
.new-entry-card-date{
	display:inline !important;
}
.widget-entry-card-update-date{
	display:none  !important;
}
.new-entry-card-title{
	font-size:15px;
}
.new-entry-card-post-date{
	color:#666 !important;
}
.widget-entry-cards .a-wrap{
	margin-bottom:0;
}


.popularpost li{
	margin-bottom:3%;
	align-items:center;
}

.popularpost li{
	display:flex;
	position:relative;
    padding: 1.5%;
	column-gap:1.5%;
}

.popularpost li:hover{
	text-decoration:underline;
}

.popularpost li a.wpp-post-title{
	color:#000;
	font-weight:bold;
}


.wpp-views{
	display:none !important;
}

.wpp-list .thumb span a{
	color:#fff;
	
}

.popularpost li:hover {
    background-color: #f5f8fa;
    transition: all 0.3s ease-in-out;
    color: #333;
}
.popularpost .thumb picture a{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.popularpost .thumb picture{
	position:raltive;
}
.wpp-list .thumb{
	min-width:320px;
	height:180px;
}

.wpp-list .cat-label{
	top: 2em;
    left: 2em;
}

.wpp-list{
	margin-bottom:0;
}

.wpp-list .thumb picture a{
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
}

@media screen and (max-width: 768px) {
	.wpp-list .thumb{
	min-width:127px;
	height:72px;
}
.wpp-list .cat-label{
		    top: 1.2em;
    left: 0.8em;
	}
}

@media screen and (min-width: 681px){
	.pc_none{
		display:none;
	}
}

.new-entry-card-post-date{
	display:none;
}
.widget-entry-cards .a-wrap{
	margin-bottom:.75em;
}

/*********pdfダウンロード************/

.pdf__wrap{
	display:flex;
	flex-wrap:wrap;
	column-gap:2%;
	justify-content:center;
	margin-bottom:2em;
}

.pdf__wrap .Item{
	width:calc(98% / 2);
	text-align:center;
}
@media screen and (max-width: 768px) {
.pdf__wrap .Item{
	width:calc(100% / 1);
}
	.pdf__wrap .Item:first-of-type{
		margin-bottom:1em;
	}
}
@media screen and (min-width: 769px) {
	.sp-tel-g4{
		display:none;
	}
}