@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/*LINEフローティング*/
.follow-banner1 {
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: 20;
}

.follow-banner1 a {
  display: flex;
  align-items: center;
  gap: 0.5em;
  writing-mode: vertical-rl;
  color: #fff;
  background-color: #b29157;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 1.5em 1em;
  border-radius: 10px 0 0 10px;
  transition: opacity 0.25s;
}

.follow-banner1 a:hover {
  opacity: 0.7;
}

.follow-banner1 .swl-inline-icon::after {
  left: 50%;
  transform: translateX(-50%);
}

.c-pageTitle{
	color:#534747;
}

/* スマホでは非表示に */
@media screen and (max-width: 599px) {
  .follow-banner1 {
    display: none;
  }
}

/*LINEフローティング*/
.follow-banner2 {
	position: fixed;
	top: 50%!important;
  right: 0;
  transform: translateY(50%);
  z-index: 20;
}

.follow-banner2 a {
  display: flex;
  align-items: center;
  gap: 0.5em;
  writing-mode: vertical-rl;
  color: #fff;
  background-color: #90a3ab;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 1.5em 1em;
  border-radius: 10px 0 0 10px;
  transition: opacity 0.25s;
}

.follow-banner2 a:hover {
  opacity: 0.7;
}

.follow-banner2 .swl-inline-icon::after {
  left: 50%;
  transform: translateX(-50%);
}

.c-pageTitle{
	color:#534747;
}

/* スマホでは非表示に */
@media screen and (max-width: 599px) {
  .follow-banner2 {
    display: none;
  }
}

/*メインビジュアル文字とボタン下にずらす*/
@media screen and (max-width: 767px) {

  .p-mainVisual__inner {
    justify-content: flex-end !important;
    padding-bottom: 80px !important;
  }

}

/*スライダー文字上*/
img.wp-image-66 {
    margin-bottom: 300px;
}

/*TOPテキスト*/
h3.wp-block-heading.has-text-align-left.is-style-section_ttl.u-mb-ctrl.u-mb-10.has-black-color.has-text-color.has-link-color.wp-elements-cffe8dd2219dda142cfff245cb2b7cec , h3.wp-block-heading.has-text-align-left.is-style-section_ttl{
	margin:30px;
}
p.has-text-align-left.text_w.has-black-color.has-text-color.has-link-color.wp-elements-decf50d98af6679ec0e485f24c733a67 , p.text_w{
	line-height: 2.5;
	margin:30px;
}
@media screen and (min-width: 678px) {
	h3.wp-block-heading.has-text-align-left.is-style-section_ttl.u-mb-ctrl.u-mb-10.has-black-color.has-text-color.has-link-color.wp-elements-cffe8dd2219dda142cfff245cb2b7cec{
    margin: 90px;
}
	h3.wp-block-heading.has-text-align-left.is-style-section_ttl{
		margin: 60px;
	}
p.has-text-align-left.text_w.has-black-color.has-text-color.has-link-color.wp-elements-decf50d98af6679ec0e485f24c733a67{
    margin: 90px;
}
	p.text_w{
    margin: 60px;
}
}

/*コンテンツヘッダーカラー*/
.c-pageTitle{
	color: #443f3f;
}

.l-content {
    margin: 0 auto!important;
}
/*フッター前マージン削除*/
.w-beforeFooter {
    margin: 0 auto!important;
    overflow: hidden;
}

@media screen and (max-width: 767px) {
  .l-content {
    margin-top: 0 !important;
  }
}

/*お相手紹介*/
/* セクション自体は普通に中央幅の中に置く */
.myArea{
    position: relative;
}

/* 背景だけを疑似要素で画面いっぱいにする */
.myArea::before{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 100%;
    transform: translateX(-50%);
    background-color: #EFE6B9;
    z-index: -1;
}

/* コンテンツ幅を統一 */
.content_inner,
.myArea_profile{
    max-width: 1100px;
    margin: 0 auto;
    padding: 30px 15px;
}
/* CF7チェックボックスとラジオボタンを縦並びに */
span.wpcf7-list-item {
margin-top:5px;
display: block;
}

.wpcf7-spinner {
    display: none !important;
}

textarea.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
    width: 70%;
}

/*フォーム*/
.Table{
	width:100%;
}
.Table td,
.Table th{
 padding:30px;
}
.red_c{
	color:#d96762;
}
.blue_c{
	color:#7d9abd;
}

.form-btn {
  display: flex !important;
  justify-content: center;
  gap: 20px;
  margin-top: 40px;
}

.form-btn .btn-item {
  width: 200px;
}

.form-btn .btn-item input {
  width: 100% !important;
  display: block !important;
  padding: 15px 0;
  font-size: 16px;
}

@media only screen and (min-width:769px){
	.Table{
}
.Table td{
	width:60%;
	}
.Table th{
 width:40%;
}
}	
@media only screen and (max-width:768px){
	.Table th,
	.Table td{
		display: block;
		max-width: 100%;
		height: auto;
	}
}
/*smallテキスト*/
.smalltext{
	font-size:0.8em;
}

/*無料相談フォーム*/
.date-small {
    width: 150px;   /* 日付欄の幅 */
}

.time-small {
    width: 70px;    /* 時間欄の幅 */
}

/*送信ボタン幅*/
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    width: 20%;
}
@media only screen and (max-width:768px){
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    width: 50%;
	}
}
/*枠角丸*/
	.has-border{
	border-radius: 15px;
}

input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required {
    width: auto !important;
}

/*青い線削除*/
.wpcf7 form .wpcf7-response-output {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

/*メインビジュアルボタン位置*/

/* PC */
@media (min-width:768px){
.p-mainVisual .follow-banner{
transform: translateY(260px) !important;
}
}

/* スマホ */
@media (max-width:767px){
.p-mainVisual .follow-banner{
transform: translateY(240px) !important;
}
}

/*reCAPTCHA非表示*/
.grecaptcha-badge{
	visibility:hidden;
}

/*ネット予約電話予約フッタースマホ用*/
@media screen and (max-width: 959px) {
    body {
        padding-bottom: 60px; /* 固定メニューの高さに合わせて余白を設定 */
    }
    .p-fixBtnWrap {
        bottom: 5.5em; /* 上に戻るボタンの位置を上に */
    }
    #fixed-bottom-menu {
        display: block;
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        z-index: 99;
        /*background-color: #000;*/
        padding: .3em .3em;
    }
	
    #fixed-bottom-menu .swell-block-column {
        padding: .5em;
    }
    #fixed-bottom-menu .swell-block-button__link[data-has-icon] {
        padding: 1em 1em;
    }    
}
@media screen and (min-width: 960px) {
    #fixed-bottom-menu, #fixed-sidebar-menu {
        display: none; /* PCでは非表示にする */
    }
}