/*
	Theme Name: diver_child
	Template: diver
	Description:  Diverの子テーマです。
	Theme URI: http://tan-taka.com/diver/
	Author: Takato Takagi
 */

/* カスタマイズする場合にはこれより下に追記してください  */

/****全体調整****/
.home #main-wrap #single-main.full, #main-wrap #page-main.full {
    max-width: 1890px !important;
}

.home #main-wrap {
    width: 100% !important; 
}
h2{
color: #4d4d4d !important;
}

:where(.content) a {
    color: #0400f9;
    text-decoration: underline;
}

li{
	  margin-bottom: 20px;
}

.top_img{
	text-align: center;
}

/****吹き出し用見出し****/
.content h2, h2 {
    position: relative;
    padding: 0.5em 1em;
    font-size: 1.4em;
    margin: 3em 0 1em;
    line-height: 1.5;
    /*font-weight: bold;*/
    /*text-shadow: 0 0 10px #996600;*/
}

.content h3, h3{
	margin: 3em 0 0.8em;
}
/****ここまで****/

/****やぎはし整体院で心掛けていること****/
.box71{
margin: 2em auto;
background-color: #fff;
padding: 0.1em 2em 2em !important;
position:relative;
box-shadow: 0px 1px 5px rgba(0,0,0,0.1);
}
.box71 .box-title {
background-color: #ffa500 !important;
font-size: 30px;
color: #4d4d4d !important;
padding:20px;
text-align: center;
position:absolute;
top:0;
left:0; 
width:100%;
font-weight: bold;
/*text-shadow: 0 0 10px #996600;*/
}

.box24 {
margin: 10px;
padding:2em;
border-top:solid 5px #e4cc8f;
background-color:#F9F4E8;
box-shadow:3px 1px 4px rgba(0, 0, 0, 0.2);
width: 100%;
/*background-image: url(https://yagihashiseitai2.com/wp-content/uploads/2023/08/1349909.png);
    backgorund-position: bottom;
    background-position: left top;
    background-size: contain;*/
}

/*.box24::after{
  content: "";
  position: absolute;
  z-index: 2;
  width: 100%;
  height:100%;
  top: 0;
  left: 0;
 background-color: white;
  opacity: 0.5;
}*/

.box-title2 {
font-size: 20px;
color: #4d4d4d;
font-weight: bold;
border-bottom: 2px solid #ffa93a;
margin-bottom: 20px;
}

/****ここまで****/

/****ヘッダー店舗レイアウト****/
.flex_box{
display:flex;
width: 100%;
display: block; 
text-align: end;
}

.flex_box img{
	width:90%;
	margin: 0 auto;
}
/****ここまで****/

/****一つでも当てはまる方はご相談ください****/
.box{
  border: 2px solid #ffa93a;
  border-radius: 5px;
width: 90%;
    margin: 0 auto;
	background-color: #ffffff;
}
.box h2{
  background: #ffa93a;
  color: #4d4d4d;
  text-align: center;
  margin: 0;
  position: relative;
border-radius: 0;
font-size: 24px;
display: block;
	border: none !important;
    box-shadow: none !important;
    font-weight: bold;
/*text-shadow: 0 0 10px #996600;*/
}
.box h2::after {
  position: absolute;
  content: '';
  top: 100%;
  left: calc( 50% - 14px );
  border: 14px solid transparent;
  border-top: 14px solid #ffa93a;
  width: 0;
  height: 0;
}

.box h2::before{
display: none;
}
.box .inner{
  padding: 1.5em .5em .5em;
}

.ul_design {
  padding: 0.5em 1em 0.5em 2.3em;
  position: relative;
}

.ul_design li {
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;
border-bottom: dotted 3px #d3d3d3;
}

.ul_design li:before {
  font-family: "fontAwesome";
  content: "\f00c";
  position: absolute;
  left : 1em; 
  color: #ffb03f;
}
/****ここまで****/


/****レスポンシブデザイン（クラス名はPCと同じ）****/
@media (max-width: 781px){
 .flex_box{
display: block;
}

.box24 {
    margin: 10px auto;
    padding: 2em;
    border-top: solid 5px #e4cc8f;
    background-color: #F9F4E8;
    box-shadow: 3px 1px 4px rgba(0, 0, 0, 0.2);
    width: 100%;
}

.box71 {
    margin: 2em auto;
    background-color: #fff;
    padding: 20px 0px !important;
    position: relative;
    box-shadow: 0px 1px 5px rgba(0,0,0,0.1);
}
	
	.merchandise {
    display: block !important;
    white-space: normal !important;
}
	
	
}
/****ここまで****/

/****お悩み一覧****/
.worry-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 880px;
    margin: 0 auto;
}

.worry-item {
position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 260px;
    height: 290px;
    margin: 12px;
    width: 200px;
    height: 200px;
    line-height: 200px;
    background-color: #ffffff;
    border-radius: 50%;
    color: #4d4d4d;
    text-align: center;
    border: 3px solid #ffa500;
    flex-wrap: wrap;
}

.worry-item a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
	margin: 20px auto;
}
.worry-item::after {
    position: absolute;
    bottom: 30px;
    right: 0;
    left: 0;
    content: "\f061";
    font: 22px "fontAwesome";
    color: #ffa500;
    font-weight: bold;
    text-align: center;
    margin: auto;
}

.worry-item .txt {
    font: 26px "Kokoro";
    font-weight: 200;
    text-align: center;
    line-height: 1.6;
    letter-spacing: 0;
}
/****ここまで****/

.color_box{
	background-color: #FFFFEE
}

.triangle3{
    width: 0;
    height: 0;
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    border-top: 40px solid #FFFFEE;
    margin-bottom: 30px;
}

/****やぎはし整体院の技術****/
.box72{
margin: 1em auto !important;
background-color: #ffffee;
padding:2.5em 2em 2em;
position:relative;
border: 3px solid #ffa500;
}


.box72 .box-title {
background-image: repeating-linear-gradient(-45deg,#F6EEEC 0, #F6EEEC 3px,#fafafa 3px,#fafafa 6px);/*ストライプ*/
border-left: 2px dotted rgba(0,0,0,.1);
border-right: 2px dotted rgba(0,0,0,.1);
transform: rotate(-2deg);
font-size: 1em;
padding: 10px 20px;
line-height: 1;
position:absolute;	
top: -15px; 
left: 20px; 
}

.box72 p{
	text-align: center;
}
/****ここまで****/
/****吹き出し****/
.heading {
align-items: center;
    display: flex;
    justify-content: center;
    font-size: 50px !important;
    background-color: #ffab3d00 !important;
    color: #4d4d4d !important;
    margin-bottom: -26px !important;
    max-width: 1890px !important;
	border: none !important;
    box-shadow: none !important;
      text-shadow: none !important;
}

.heading::before,
.heading::after {
background-color: #4d4d4d !important;
    border-radius: 5px !important;
    content: "" !important;
    height: 5px !important;
    width: 40px !important;
    border: none !important;
    position: initial !important;
}

.heading::before {
  margin-right: 10px; /* 文字との余白 */
  transform: rotate(60deg); /* 傾ける */
}

.heading::after {
  margin-left: 10px; /* 文字との余白 */
  transform: rotate(-60deg); /* 傾ける */
}

.heading_no1{
	margin-left: 10px;
	font-size:63px;
	color:#DD0000;
}

.heading_no1p{
	text-align: center;
font-size: 30px;
    color: #4d4d4d;
    font-weight: bold;
    font-family: "kokoro";
}
/****ここまで****/
/****カラムレイアウト****/
.column_width{
	max-width: 1890px !important;
    width: 90%;
}
/****ここまで****/
/****レスポンシブ用****/
.pc { display: block !important; }
.sp { display: none !important; }
/****ここまで****/

/****心がけていること-Reason-****/
.Reason_h2 {
position: relative !important;
    padding: 1rem 2rem !important;
    border: solid 2px #ffa500 !important;
    background-color: #ffffff !important;
    color: #996600 !important;
    border-radius: 0 !important;
	display: block !important;
}
.Reason_h2:after {
	/*position: absolute;
	content: "Excellent Point";
	top: -10px;
	left: 15px;
	background: #fff;
	font-size: 0.75rem;
	color: #27acd9;
	padding: 0 10px;*/
	display:none;
}
.Reason_h2:before {
	/*position: absolute;
	content: "Excellent Point";
	top: -10px;
	left: 15px;
	background: #fff;
	font-size: 0.75rem;
	color: #27acd9;
	padding: 0 10px;*/
		display:none;
}

.Reason_h2 span {
	position: absolute;
	content: "Excellent Point";
	top: -10px;
	left: 15px;
	background: #fff;
	font-size: 0.75rem;
	color: #996600;
	padding: 0 10px;
}

.box24 div{
	    background: rgba(255,255,255,0.7);
    padding: 20px;
	text-align: justify;
}
/****ここまで****/
/****YouTubeフル画面サイズ調整****/
.movie_box{
	width: 60%;
    margin: 0 auto;
}

.bo2 {
    width: 90%;
    margin: 0 auto;
}
/****ここまで****/
/****ヘッダー店舗電話番号レイアウト****/
.button_tel {
    border: none;
    background: no-repeat;
    text-align: center;
    margin: 10px 5px;
	width: auto;
}

.button_tel a {
    padding: 0.8em 1.8em;
    font-size: .9em;
    display: inline-block;
    position: relative;
    background-color: #ffa93a;
    border-style: solid;
    border-width: 0px;
    color: #000000;
    font-weight: bold;
    text-decoration: none !important;
    letter-spacing: .1em;
    border-radius: 3px;
	width: 100%;
}

.button_tel2 {
    border: none;
    background: no-repeat;
    text-align: center;
    margin: 10px 5px;
}

.button_tel2 a {
    padding: 0.8em 1.8em;
    font-size: .9em;
    display: inline-block;
    position: relative;
    background-color: #669900;
    border-style: solid;
    border-width: 0px;
    color: #fff;
    font-weight: bold;
    text-decoration: none !important;
    letter-spacing: .1em;
    border-radius: 3px;
		width: 100%;
}

.button_tel3 {
    border: none;
    background: no-repeat;
    text-align: center;
    margin: 10px 5px;
}

.button_tel3 a {
    padding: 0.8em 1.8em;
    font-size: .9em;
    display: inline-block;
    position: relative;
    background-color: #0099FF;
    border-style: solid;
    border-width: 0px;
    color: #fff;
    font-weight: bold;
    text-decoration: none !important;
    letter-spacing: .1em;
    border-radius: 3px;
		width: 100%;
}

.button_tel4 {
    border: none;
    background: no-repeat;
    text-align: center;
    margin: 10px 5px;
}

.button_tel4 a {
    padding: 0.8em 1.8em;
    font-size: .9em;
    display: inline-block;
    position: relative;
    background-color: #ffb6c1;
    border-style: solid;
    border-width: 0px;
    color: #000000;
    font-weight: bold;
    text-decoration: none !important;
    letter-spacing: .1em;
    border-radius: 3px;
		width: 100%;
}

.button_tel5 {
    border: none;
    background: no-repeat;
    text-align: center;
    margin: 10px 5px;
}

.button_tel5 a {
    padding: 0.8em 1.8em;
    font-size: .9em;
    display: inline-block;
    position: relative;
    background-color: #9370DB;
    border-style: solid;
    border-width: 0px;
    color: #ffffff;
    font-weight: bold;
    text-decoration: none !important;
    letter-spacing: .1em;
    border-radius: 3px;
		width: 100%;
}
/****ここまで****/

/****レスポンシブレイアウト（クラス名はPCと同じ）****/
@media (max-width: 781px){
.sp { display: block !important; }
.pc { display: none !important; }
	
.worry-item .txt {
    font: 15px "Kokoro";
    font-weight: 200;
    text-align: center;
    line-height: 1.5;
    letter-spacing: 0;
    margin-bottom: -3px;
}
	
	.worry-item a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    z-index: 1;
    margin: 20px auto;
}
	
	.worry-item {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 260px;
    height: 290px;
    margin: 6px;
    width: 100px;
    height: 100px;
    line-height: 200px;
    background-color: #ffffff;
    border-radius: 50%;
    color: #4d4d4d;
    text-align: center;
    border: 3px solid #ffa500;
    flex-wrap: wrap;
}
	
	.worry-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 867px;
    margin: 0 auto;
}
	
	.worry-item::after {
    position: absolute;
    bottom: 5px;
    right: 0;
    left: 0;
    content: "\f061";
    font: 16px  "fontAwesome";
    color: #ffa500;
    font-weight: bold;
    text-align: center;
    margin: auto;
}
	.heading {
    align-items: center;
    display: flex;
    justify-content: center;
    font-size: 23px !important;
    background-color: #ffab3d00 !important;
    color: #4d4d4d !important;
    margin-bottom: -8px !important;
    max-width: 1890px !important;
		text-align:center !important;
		padding: 0.3em 1em !important;
		border: none;
    box-shadow: none;
    text-shadow: none !important;
}
	
	.heading_no1p {
    text-align: center;
    font-size: 25px;
    color: #4d4d4d;
    font-weight: bold;
    font-family: "kokoro";
    margin-top: 14px;
}
	
	.heading_no1 {
    margin-left: 10px;
    font-size: 40px;
    color: #DD0000;
		margin-top: 15px;
		display: block;
}
	.box h3 {
    background: #ffa93a;
    color: #FFF;
    text-align: center;
    margin: 0;
    position: relative;
    border-radius: 0;
    font-size: 20px !important;
    display: block;
}
	
	.flex_box2 {
    display: block;
    list-style: none;
    flex-wrap: wrap;
}

	.flex_box2 li {
    width: 100%;
}
	
	.movie_box{
	width: 100%;
    margin: 0 auto;
}
	
	.wpcf7_th {
    text-align: left;
    width: 100% !important;
    vertical-align: top;
    font-weight: bold;
}
	.inner{
		display: flex !important;
    flex-direction: column !important;
	}
	
}
/****ここまで****/

/*フローcss*/
.flow > li {
  position: relative;
	list-style: none;
}
.flow > ul {
  list-style: none;
}
.flow > li:not(:last-child) {
  margin-bottom: 40px;
}
.flow > li:not(:first-child)::before {
  content: "";
  display: block;
  position: absolute;
  top: -36px;
	left: calc(10% + 30px - 2px);
  z-index: 10;
	width: 0;
    height: 0;
    margin: 2px;
    text-align: center;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid #FFA500;
}
.flow > li dl {
  width: 100%;
  padding: 20px 30px;
  /*display: -webkit-box;
  display: -ms-flexbox;
  display: flex;*/
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 2px solid #ffa500;
  border-radius: 10px;
  position: relative;
}
.flow > li:not(:last-child) dl::before,
.flow > li:not(:last-child) dl::after {
  content: "";
  border: solid transparent;
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.flow > li:not(:last-child) dl::before {
  border-width: 22px;
  border-top-color: rgb(107,144,219);
}
.flow > li:not(:last-child) dl::after {
  border-width: 20px;
  border-top-color: #fff;
}
.flow > li dl dt {
  font-size: 20px;
  font-weight: 600;
  color: #996600;
  -ms-flex-preferred-size: 20%;
  flex-basis: 20%;
  margin-right: 2vw;
  text-align: center;
}
.flow > li dl dt .icon {
  font-size: 16px;
  color: #000;
  background: #ffa500;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6b90db', endColorstr='#66d5e9',GradientType=1 );
  padding: 5px 10px;
  margin-bottom: 10px;
  display: block;
  border-radius: 20px;
  position: relative;
  z-index: 100;
}
.flow > li dl dd {
  color: #4d4d4d;
}
/****ここまで****/

/****テーブルレイアウト****/
.inner {
    display: table;
    width: 100%;
    box-sizing: border-box;
    /* border: 1px solid #ccc; */
    border-top: none;
    border-bottom: dotted 1px;
    padding: 30px 0;
}

.wpcf7_th, .wpcf7_td {
    display: table-cell;
    padding: 10px;
    /* background: #fff; */
}

.wpcf7_th {
    text-align: left;
    width: 30%;
    vertical-align: top;
    font-weight: bold;
}
/****店舗案内用テーブル ここまで****/

/****ウィジェットレイアウト****/
.widgettitle{
	background-color: #ffffff !important;
	color: #4d4d4d !important;
	border-top: solid 1px #FFA93A !important;
	border-bottom: solid 1px #FFA93A !important;
}
.widget.widget_block .wp-block-group h3:first-child, .widgettitle{
	background: #FFFFFF !important;
	 margin-bottom: 30px !important;
   margin-top: 30px !important;
	color: #4d4d4d !important;
	    border-top: 2px solid #ffa93a !important;
	    border-bottom: 2px solid #ffa93a !important;
		font-size:1.2em !important;
}
.widget.widget_block .wp-block-group h2:first-child{
	background: #ffa93a !important;
	padding: 20px 15px !important;
	font-size:1.4em !important;
}
/****ここまで****/

/****お問合せ関連****/
.wpcf7-form-control.wpcf7-submit {
    display: block;
    margin: 30px auto;
    padding: 1em 4em;
    background-color: #ffa93a;
}

input[type=text], input[type=password], input[type=email], input[type=search], input[type=url], input[type=tel], input[type=number], input[type=date], textarea{
	font: 99% arial,helvetica,clean,sans-serif;
    /* min-height: 50px; */
    padding: 10px;
    border: solid 1px #d3d3d3;
    border-radius: 5px;
	    background-color: #ffffff;
}

.merchandise{
	display: flex;
	white-space: nowrap;
}

span.wpcf7-list-item {
    display: block;
}

.grecaptcha-badge { visibility: hidden; }
.privacy{ 
	font-size: 13px;
  text-align: center;
}
/****ここまで****/

.single-post-date.published {
    color: #333333;
}

.sc_frame_wrap .sc_frame_title {
    padding: .25em 1em .2em;
    font-size: .9em;
    position: relative;
    font-weight: 500;
    color: #333333;
    background: #ccc;
    top: 1px;
}

button, input[type=submit], input[type=reset], input[type=button] {
    display: inline-block;
    padding: 15px 40px;
    border-radius: 25px;
    text-decoration: none;
    line-height: normal;
    cursor: pointer;
    margin-top: 20px;
    background-color: #ffa93a;
    color: #4d4d4d;
    border: solid 1px #ffa93a;
}



@media screen and (max-width: 970px) {
  .header-tel-group {
    display: flex
		!important;
    flex-direction: row;
    align-items: center;
    padding-top: 10px;
    gap: 10px;
	  flex-wrap: nowrap;
  }
	
	  .header-tel-group > div {
    max-width: none;
    flex: 1 1 33.33%; /* 幅均等に */
  }


  .header-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
  }

  #logo {
    order: 2; /* ロゴを中央に */
    margin: 10px auto;
  }

  .drawer-nav-btn-wrap {
    order: 1;
  }
	.drawer-nav-btn {
top:29%;
	}

  .header-tel-group {
    order: 3;
  }
}	
  .header-tel-group {
    display: flex!important;
  }
	
.header-tel-group > div {
  flex: 1;
  max-width: 240px; /* PC時の最大幅 */
  min-width: 0;
}	
.header-tel-group a {
font-size:0.75rem;}

/* --- 電話番号ボタンのレスポンシブ調整 --- */
/* 初期状態では非表示にする */
@media screen and (max-width: 781px){
	.header-tel-group {
  display: none!important;
}
		.drawer-nav-btn {
top:50%;
	}
}