/* カスタム CSS をここに入力してください */

/*トップバナー インタビュー*/
.top-bnr-interview{
	margin:-40px 0 50px 0;
	width:100%;
}
@media screen and (max-width:769px){
.top-bnr-interview{
	margin:-20px 0 100px 0;
	
}
/*ヘッダー*/
body.home #header{
background-color:rgba(255,255,255,0.9);
}
#global_menu > ul > li > a {
    font-size: 16px;
}

/*ヘッダーメッセージ*/
.header_message{
text-align:center;	
}

/*ページヘッダー装飾*/
#page_header .title {
text-shadow:0 0 10px #fff;
}

/*トップページaccess*/
.index_access .desc_inner {
    padding: 0 50px;
}

/*タイトル装飾*/
.double{
	width:100%;
	text-align:center;
	color:#117971;
	margin-bottom:40px;
}
.double h2{
	position:relative;
	display:inline-block;
}
.double h2:before, .double h2:after{
	content:"";
	display:block;
	width:200px;
	height:4px;
	border-top:1px solid #52b991;
	border-bottom:1px solid #52b991;
	position:absolute;
	top:50%;
	margin-top:-2px;
}
.double h2:before{left:-224px;}
.double h2:after{right:-224px;}


h2.multi{
	padding:6px 0;
	border-bottom:8px solid #D7EAEE;
	position:relative;
}
h2.multi:before, h2.multi:after{
	content:"";
	display:block;
	height:8px;
	position:absolute;
	bottom:-8px;
}
h2.multi:before{
	width:20%;
	left:8%;
	background:rgba(17,121,113,0.7);
}
h2.multi:after{
	width:30%;
	left:12%;
	background:rgba(82,185,145,0.6);
}
.ttl_step{
	color:#52b991;
	padding-right:15px;
}
.step_txt{
	margin-top:30px;
	margin-bottom:15px;
}

.under_color01 {
  border-bottom: solid 3px #52b991;
  position: relative;
	font-size:24px;
	font-weight:bold;
	margin-bottom:20px;
	padding-bottom:5px;
}

.under_color01:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #117971;
  bottom: -3px;
  width: 20%;
}

/*費用の目安*/
.fee_main_ttl{
  position: relative;
  padding: 5px 5px 5px 42px;
  background: #49B991;
  font-size: 20px;
  color: white;
  margin-left: -33px;
  line-height: 1.3;
  z-index:-1;
	margin-bottom:30px;
	font-weight:bold;
}

.fee_main_ttl:before {
  position: absolute;
  content: '';
  left: -2px;
  top: -2px;
  border: none;
  border-left: solid 40px white;
  border-bottom: solid 79px transparent;
  z-index:-2
}

.fee_group{
	margin-bottom:90px;
}
.fee_txt{
	margin-left:20px;
}
.fee_price{
	color: #117971;/*文字色*/
  border: solid 2px #117971;/*線色*/
  padding: 0.5em;/*文字周りの余白*/
  border-radius: 0.5em;/*角丸*/
	width:300px;
	margin-bottom:40px;
	font-size:22px;
	text-align:center;
}

/*############# Tpress_08 #############*/
.Tpress_08 {
    border-collapse: collapse;
    text-align: center!important;
    line-height: 1.5;
}
 
.Tpress_08 thead th {
    padding: 10px;
    font-weight: bold;
    vertical-align: top;
    color: #117971;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
	  border-left: 1px solid #ccc;
    border-bottom: 3px solid #52b991 !important;
    background: #e9f2e8;
	text-align: center;
}
.Tpress_08 .row-2 .column-1,
.Tpress_08 .row-3 .column-1,
.Tpress_08 .row-4 .column-1,
.Tpress_08 .row-5 .column-1,
.Tpress_08 .row-6 .column-1{
    padding: 10px;
    vertical-align: middle;
    border-bottom: 1px solid #ccc;
		  border-left: 1px solid #ccc;
		text-align: center;
}
/* 内容部分のレイアウト */
.Tpress_08 .column-2,
.Tpress_08 .column-3{
    padding: 10px;
    vertical-align: middle;
    border: 1px solid #ccc;
		text-align: center;
}

/*############# Tpress_09 #############*/
.Tpress_09 {
    border-collapse: collapse;
    text-align: center!important;
    line-height: 1.5;
}
 
.Tpress_09 .row-1 .column-1,
.Tpress_09 .row-2 .column-2,
.Tpress_09 .row-2 .column-3,
.Tpress_09 .row-4 .column-1,
.Tpress_09 .row-4 .column-2,
.Tpress_09 .row-4 .column-3{
    padding: 10px;
    font-weight: bold;
    vertical-align: middle;
    color: #117971;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
	  border-left: 1px solid #ccc;
    border-bottom: 3px solid #52b991 !important;
    background: #e9f2e8;
	text-align: center;
}
.Tpress_09 .row-1 .column-2{
    padding: 10px;
    font-weight: bold;
    vertical-align: middle;
    color: #117971;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
	  border-left: 1px solid #ccc;
    background: #e9f2e8;
	text-align: center;	
}
 
.Tpress_09 .row-2 .column-1,
.Tpress_09 .row-3 .column-1,
.Tpress_09 .row-4 .column-1,
.Tpress_09 .row-5 .column-1,
.Tpress_09 .row-6 .column-1{
    padding: 10px;
    vertical-align: middle;
    border-bottom: 1px solid #ccc;
		 border-left: 1px solid #ccc;
		text-align: center;
}
 
/* 内容部分のレイアウト */
.Tpress_09 .column-2,
.Tpress_09 .column-3{
    padding: 10px;
    vertical-align: middle;
    border: 1px solid #ccc;
		text-align: center;
}
.Tpress_09 .row-3 .column-3{
		text-align: left;
}

/*相談のご予約*/
.inq-block{
	margin-left:20px;
	margin-bottom:120px;
}
.inq-ttl{
	color:#117971;
	font-size:20px;
	font-weight:bold;
	padding: 1rem 2rem;
  border-left: 5px dotted #52b991;
  background: #e9f2e8;
	letter-spacing:2px;
	margin-bottom:30px;
}
.inq-txt{
	margin-bottom:20px;
	line-height:1.5em;
}
.tel-number{
	font-size:48px;
	font-weight:bold;
	letter-spacing:3px;
	color:#52b991;
	vertical-align:middle;
}
.tel-time{
	font-size:16px;
	font-weight:bold;
	letter-spacing:2px;
	margin-top:20px;
}
.fa-phone{
	vertical-align:middle;
	padding-right:7px;
}
@media only screen and (max-width: 768px) {
.tel-number{
	font-size:36px;
}
.tel-time{
	font-size:12px;
	}
}

/* ContactForm7 template02 */
.form__wrap {
  width: 100%;
  max-width: 900px;/*フォームの最大幅*/
  margin-right: auto;
  margin-left: auto;
}
.wpcf7 .template02 {
  color: #666;
  font-size: 16px;
}
.wpcf7 .template02 a {
  margin: 0;
  padding: 0;
  text-decoration: underline;
  color: inherit;
  transition: opacity .25s;
}
.wpcf7 .template02 a:hover {
  opacity: .5;
  transition: opacity .25s;
}
.wpcf7 .template02 div.form__row {
  display: flex;
  margin: 0;
  padding: 0;
  border-top: 1px solid #e9f2e8;
}
.wpcf7 .template02 div.form__row.row-privacy,
.wpcf7 .template02 div.form__row.row-submit {
  display: block;
  border-top: 0;
  margin-top: 1em;
  text-align: center;
}
.wpcf7 .template02 p.form__label,
.wpcf7 .template02 p.form__body {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
.wpcf7 .template02 p.form__label {
  width: 36%;
  padding: 1.5em 1em;
}
.wpcf7 .template02 p.form__body {
  width: 64%;
  padding: 1.5em 1em;
}
.wpcf7 .template02 div.form__row.row-privacy .form__body,
.wpcf7 .template02 div.form__row.row-submit .form__body {
  width: 100%;
}
.wpcf7 .template02 p.form__label label {
  position: relative;
  margin: 0;
  padding: 0;
  padding-left: 44px; 
  box-sizing: border-box;
}
.wpcf7 .template02 p.form__label label::after {
  content: "任意";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  margin: 0;
  padding: 0 5px;
  border-radius: 2px;
  background-color: #f1f1f1;
  color: #929292;
  font-size: 11px;
  text-align: center;
  box-sizing: border-box;
}
.wpcf7 .template02 p.form__label.is-required label {
  position: relative;
}
.wpcf7 .template02 p.form__label.is-required label::after {
  content: "必須";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  padding: 0 5px;
  background-color: #117971;
  color: #fff;
  font-size: 11px;
  text-align: center;
}
/* テキストフィールド */
.wpcf7 .template02 input[type=text],
.wpcf7 .template02 input[type=tel],
.wpcf7 .template02 input[type=email],
.wpcf7 .template02 textarea {
  width: 100%;
  margin: 0;
  padding: .5em 1em;
  border: 1px solid #c4bbb8;
  border-radius: 4px;
  box-shadow: none;
  background-color: #fefefe;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-size: 16px;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
/* テキストフィールド placeholder */
.wpcf7 .template01 input[type=text]::placeholder,
.wpcf7 .template01 input[type=tel]::placeholder,
.wpcf7 .template01 input[type=email]::placeholder,
.wpcf7 .template01 input[type=url]::placeholder,
.wpcf7 .template01 input[type=date]::placeholder,
.wpcf7 .template01 input[type=number]::placeholder,
.wpcf7 .template01 textarea::placeholder {
  color: #ccc;
}
.wpcf7 .template01 input[type=text]:-ms-input-placeholder,
.wpcf7 .template01 input[type=tel]:-ms-input-placeholder,
.wpcf7 .template01 input[type=email]:-ms-input-placeholder,
.wpcf7 .template01 input[type=url]:-ms-input-placeholder,
.wpcf7 .template01 input[type=date]:-ms-input-placeholder,
.wpcf7 .template01 input[type=number]:-ms-input-placeholder,
.wpcf7 .template01 textarea:-ms-input-placeholder {
  color: #ccc;
}
.wpcf7 .template01 input[type=text]::-ms-input-placeholder,
.wpcf7 .template01 input[type=tel]::-ms-input-placeholder,
.wpcf7 .template01 input[type=email]::-ms-input-placeholder,
.wpcf7 .template01 input[type=url]::-ms-input-placeholder,
.wpcf7 .template01 input[type=date]::-ms-input-placeholder,
.wpcf7 .template01 input[type=number]::-ms-input-placeholder,
.wpcf7 .template01 textarea::-ms-input-placeholder {
  color: #ccc;
}
/* テキストフィールド フォーカス時 */
.wpcf7 .template01 input[type=text]:focus,
.wpcf7 .template01 input[type=tel]:focus,
.wpcf7 .template01 input[type=email]:focus,
.wpcf7 .template01 input[type=url]:focus,
.wpcf7 .template01 input[type=date]:focus,
.wpcf7 .template01 input[type=number]:focus,
.wpcf7 .template01 textarea:focus {
  outline: 0;
  border: 1px #117971 solid;
  box-shadow: 0 0 2px 2px rgba(133, 112, 92, 0.5);
}
/* チェックボックス */
.wpcf7 .template02 input[type=checkbox] {
  display: none;
}
.wpcf7 .template02 input[type=checkbox] + span {
  cursor: pointer;
  position: relative;
  margin: 0;
  padding: 0 1em 0 1.8em;
  font-size: inherit;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
.wpcf7 .template02 input[type=checkbox] + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1.24em;
  height: 1.24em;
  border: 1px solid #c4bbb8;
  border-radius: 4px;
  background-color: #fefefe;
  box-sizing: border-box;
}
.wpcf7 .template02 input[type=checkbox] + span::after {
  content: "";
  opacity: 0;
  display: block;
  position: absolute;
  top: 0.15em;
  left: 0.44em;
  width: 0.4em;
  height: .8em;
  border-bottom: 3px solid #000;
  border-right: 3px solid #000;
  box-sizing: border-box;
  transform: rotate(40deg);
  transition: opacity .25s ease;
}
.wpcf7 .template02 input[type=checkbox]:checked + span {
  color: #117971;
  transition: all .25s ease;
}
.wpcf7 .template02 input[type=checkbox]:checked + span::before {
  opacity: 1;
  border: 1px solid #117971;
  box-shadow: 0 0 2px 2px rgba(133, 112, 92, 0.5);
  background-color: #117971;
  transition: opacity .25s ease;
}
.wpcf7 .template02 input[type=checkbox]:checked + span::after {
  opacity: 1;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  transition: opacity .25s ease;
}
/* ラジオボタン */
.wpcf7 .template02 input[type=radio] {
  display: none;
}
.wpcf7 .template02 input[type=radio] + span {
  cursor: pointer;
  position: relative;
  margin: 0;
  padding: 0 1em 0 1.8em;
  font-size: inherit;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
.wpcf7 .template02 input[type=radio] + span::before {
  content: "";
  /*display: block;*/
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  border: 1px solid #c4bbb8;
  border-radius: 50%;
  background-color: #fefefe;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
.wpcf7 .template02 input[type=radio] + span::after {
  content: "";
  display: block;
  opacity: 0;
  position: absolute;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
.wpcf7 .template02 input[type=radio]:checked + span {
  color: #117971;
}
.wpcf7 .template02 input[type=radio]:checked + span::before {
  box-shadow: 0 0 2px 2px rgba(133, 112, 92, 0.5);
}
.wpcf7 .template02 input[type=radio]:checked + span::after {
  opacity: 1;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  background-color: #117971;
  border-radius: 50%;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
/* セレクト */
.wpcf7 .template02 span.select-wrap {
  position: relative;
  width: 250px;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
.wpcf7 .template02 select {
  cursor: pointer;
  width: 250px;
  max-width: 100%;
  margin: 0;
  padding: .5em 3.5em .5em 1em;
  border: 1px solid #e9f2e8;
  border-radius: 4px;
  box-shadow: none;
  background-color: #fefefe;
  background-image: linear-gradient(90deg, #e9f2e8, #e9f2e8);
  background-position: 100% 0;
  background-size: 2em 3.5em;
  background-repeat: no-repeat;
  color: inherit;
  font-size: inherit;
  line-height: 1;
  box-sizing: border-box;
  transition: border-color 0.2s ease, outline 0.2s ease;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.wpcf7 .template02 select::-ms-expand {
  display: none;
}
.wpcf7 .template02 span.select-wrap::after {
  content: "";
  pointer-events: none;
  position: absolute;
  display: block;
  width: .6em;
  height: .6em;
  top: 50%;
  right: .8em;
  margin-top: -3px;
  border-bottom: 1px solid #117971;
  border-right: 1px solid #117971;
  transform: rotate(45deg) translateY(-50%);
  transform-origin: 50% 0;
  box-sizing: border-box;
}
.wpcf7 .template02 select:focus {
  outline: 0;
  border: 1px #117971 solid;
  box-shadow: 0 0 2px 2px rgba(133, 112, 92, 0.5);
}
.wpcf7 .template02 span.select-wrap:focus-within::after {
  border-bottom: 1px solid #117971;
  border-right: 1px solid #117971;
}
/* 送信ボタン */
.wpcf7 .template02 .submit-btn {
  position: relative;
  width: 320px;
  height: 65px;
  max-width: 100%;
  margin: 0;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
}
.wpcf7 .template02 input[type="submit"] {
  cursor: pointer;
  width: 320px;
  max-width: 100%;
  padding: 18px;
  box-shadow: none;
  border: 1px #117971 solid;
  border-radius: 8px;
  background-color: #117971;
  color: #fff;
  font-size: 18px;
  text-align: center;
  box-sizing: border-box;
  transition: all .25s;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.wpcf7 .template02 input[type="submit"]:disabled {
  cursor: not-allowed;
  box-shadow: none!important;
  border: 1px solid #f8f8f8!important;
  background-color: #f8f8f8!important;
  color: #929292!important;
}
.wpcf7 .template02 input[type="submit"]:hover {
  box-shadow: 0 0 2px 2px rgba(133, 112, 92, 0.5);
  background-color: #fff;
  color: #117971;
  transition: all .25s;
}
.wpcf7 .template02 input[type="submit"]:focus {
  outline: 0;
  border: 1px #117971 solid;
  box-shadow: 0 0 2px 2px rgba(133, 112, 92, 0.5);
}

.wpcf7 input, .wpcf7 textarea2 {
	width:50%!important;
}
.wpcf7 .wpcf7-submit {
	background-color: #52b991!important;
}
/*.wpcf7 .wpcf7-list-item {
    display: inline-block!important;
*/


.wpcf7 .template02 input[type=text], .wpcf7 .template02 input[type=tel], .wpcf7 .template02 input[type=email], .wpcf7 .template02 textarea {

}
.wpcf7 .template02 span.select-wrap::after {
	top: 80%;
}


@media only screen and (max-width: 768px) {
  .wpcf7 .template02 div.form__row {
    display: block;
  }
  .wpcf7 .template02 p.form__label {
    width: 100%;
    padding: 1.5em 1em 0;
  }
  .wpcf7 .template02 p.form__body {
    width: 100%;
    padding: 1em 1em 1.5em;
  }

.wpcf7 input, .wpcf7 textarea2 {
	width:100%!important;
}
	.wpcf7 .template02 select{
	width:100%;
}
.wpcf7 input, .wpcf7 textarea {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 17px!important;
    border: 1px solid #ccc;
    line-height: 1.2;
	margin-bottom:8px;
}
}

/* reCAPTCHA v3　表示位置 */
.grecaptcha-badge{
    margin-bottom: 60px;
}

/*FAQ*/
.post_content a {
    color: #117971!important;
}
.ewd-ufaq-faq-div {
    margin-bottom:60px!important;
}
.ewd-ufaq-faq-title-text {
    width: 90%!important;
}