@charset "UTF-8";
/*子テーマ用「advanced.css」*/
/***************
 サイト基本設定
***************/
* * {
  font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}

body {
	background-color: #fff; /*サイトの背景色*/
	color: #333;
}
@media only screen and (min-width : 736px) {
	.col1 .keni-section_wrap {
    max-width: 1100px;
  }
}

a {
	color: #005A2F;
}

/***************
ヘッダー
***************/
.keni-header_wrap{
    background-image: none !important;
}

/*埋め込み要素のはみ出しを防止*/
img{
	vertical-align: middle;
}

.site-description {
    display: none;
}

/***************
 見出し
***************/
.keni-section h1 {
    background-image: none !important;/*下層ページヘッダー下ラインの消去*/
}

h2 {
	color: #005A2F;
	background: rgba(255, 255, 255, 0.00);
	font-size: 30px;
}
h2.features {
  color: #AD9646;
  background: #fff;
  font-size: 40px;
  text-align: center;
}
h2.features:before {
  content: url("https://sanwaplanning.jp/tatenoclassic/wp-content/uploads/sites/2/2021/04/features_icon.png"); /*画像のURL*/
  margin-right: 15px; /*画像右の余白*/
  vertical-align: middle;
}
h2.features:after {
  content: url("https://sanwaplanning.jp/tatenoclassic/wp-content/uploads/sites/2/2021/04/features_icon.png"); /*画像のURL*/
  margin-left: 15px; /*画像右の余白*/
  vertical-align: middle;
}
h2.white {
  color: #fff;
  font-size: 40px;
  text-align: center;
}
h2.cvoice {
  color: #fff;
}
@media only screen and (max-width : 736px) {
  h2, h2.features, h2.white, h2.cvoice {
    font-size: 20px !important;
  }
  h2.features:before {
  content: url("https://sanwaplanning.jp/tatenoclassic/wp-content/uploads/sites/2/2021/04/features_icon_sp.png"); /*画像のURL*/
  margin-right: 5px !important;
  vertical-align: middle;
	}
  h2.features:after {
  content: url("https://sanwaplanning.jp/tatenoclassic/wp-content/uploads/sites/2/2021/04/features_icon_sp.png"); /*画像のURL*/
  margin-left: 5px !important;
  vertical-align: middle;
	}
}

h3 {
  color: #00861a;
  font-size: 25px;
  border: none;
}

.wp-caption-text {
  font-size: 0.7em;
}

.hcopy {
  display        : inline-block;
  color          : #ffffff;            /* 文字の色 */
  font-size      : 25pt;               /* 文字のサイズ */
  letter-spacing : 4px;                /* 文字間 */
  text-shadow    : 
       2px  2px 1px #005a2f,
      -2px  2px 1px #005a2f,
       2px -2px 1px #005a2f,
      -2px -2px 1px #005a2f,
       2px  0px 1px #005a2f,
       0px  2px 1px #005a2f,
      -2px  0px 1px #005a2f,
       0px -2px 1px #005a2f;        /* 文字の影 */
}
@media only screen and (max-width : 736px) {
	.hcopy {
		display        : inline-block;
		color          : #ffffff;            /* 文字の色 */
		font-size      : 16pt;               /* 文字のサイズ */
		letter-spacing : 4px;                /* 文字間 */
		text-shadow    : 
			2px  2px 1px #005a2f,
			-2px  2px 1px #005a2f,
			2px -2px 1px #005a2f,
			-2px -2px 1px #005a2f,
			2px  0px 1px #005a2f,
			0px  2px 1px #005a2f,
			-2px  0px 1px #005a2f,
			0px -2px 1px #005a2f;        /* 文字の影 */
	}
}

.cta {
  color: #333;
  font-size: 22px;
}
@media only screen and (max-width : 736px) {
  .cta {
    color: #333;
    font-size: 19px;
  }
}

.ctas ul {
	margin: 0 0 0 1.5em;
}
.ctas ul li {
	margin-bottom: 0 !important;
}


/***************
 フローボックス
***************/
.flowblock {
  display: -webkit-flex;
  display: flex;
}
.bubble {
  margin: 1em 0;
  padding: 16px 10px;
  width: 15%;
  text-align: center;
  color: #fff;
  background: #005A2F;
}
.bubble:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #005A2F;
}
.description {
  margin: 1em -1px;
  padding: 16px 10px;
  width: 85%;
  font-size: 14px;
  border: 1px solid;
}
.attention {
  font-size: 0.8em
}
@media only screen and (max-width : 736px) {
  .bubble {
    width: 20%;
  }
  .description {
    width: 80%;
  }
}
@media screen and (max-width: 640px) {
  .bubble {
    width: 38%;
  }
  .description {
    width: 62%;
  }
}


/***************
 価格表テーブル
***************/
.tbl-r05 td:first-child {
  background: #fbf5f5;
}
/**.tbl-r05 tr.thead**/
tbody th.price {
  background: #005A2F !important;
  color: #fff;
}
@media screen and (max-width: 640px) {
  .tbl-r05 {
    width: 100%;
  }
  .tbl-r05 .thead {
    display: none;
  }
  .tbl-r05 tr {
    width: 100%;
  }
  .tbl-r05 td:first-child {
    background: #005A2F;
    color: #fff;
    font-weight: bold;
    text-align: center;
  }
  .tbl-r05 td {
    display: block;
    text-align: right;
    width: 100%;
  }
  .tbl-r05 td:before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    margin-right: 10px;
  }
}


/***************
アコーディオンボックス
***************/
.vobox,
.acbox,
.svbox {
  width: auto;
  font-size: 0px; /* ラベルと開く部分を分離する時は数値を入れる */
  margin: 0; /* ボックス全体の位置調整 */
}

.vobox label {
  width: auto;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  background: #fff; /* ラベルの背景色 */
  position: relative;
  display: block;
  padding: 8px 10px;
  cursor: pointer;
  color: #005E32;
  border-bottom: 1px solid #fff;
}
.acbox label {
  width: auto;
  font-size: 16px;
  font-weight: bold;
  text-align: left;
  background: #005A2F; /* ラベルの背景色 */
  position: relative;
  display: block;
  padding: 8px 10px;
  cursor: pointer;
  color: #fff;
  border-bottom: 1px solid #fff;
}
.svbox label {
  width: auto;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  background: #005A2F; /* ラベルの背景色 */
  position: relative;
  display: block;
  padding: 8px 10px;
  cursor: pointer;
  color: #fff;
  border-bottom: 1px solid #fff;
}


.vobox label:hover {
  color: #00861a; /* ラベルにマウスを乗せた時の背景色 */
}
.acbox label:hover {
  background: #00861a; /* ラベルにマウスを乗せた時の背景色 */
}
.svbox label:hover {
  background: #00861a; /* ラベルにマウスを乗せた時の背景色 */
}

.vobox input,
.acbox input,
.svbox input {
  display: none;
}

.vobox label:before {
  color: #005E32;
  content: '\f103';
  font-family: "Font Awesome 5 Free";
  top: 50%;
  margin-top: -16px;
}
.acbox label:before {
  color: #fff;
  content: '\f059';
  font-family: "Font Awesome 5 Free";
  top: 50%;
  margin-top: -16px;
}
.svbox label:before {
  color: #fff;
  content: '\f103';
  font-family: "Font Awesome 5 Free";
  top: 50%;
  margin-top: -16px;
}

.vobox input:checked ~ label::before {
  color: #00861a;
  content: '\f102'; /* ラベルをクリックした後のアイコン */
  font-family: "Font Awesome 5 Free";
}
.acbox input:checked ~ label::before {
  content: '\f0ab'; /* ラベルをクリックした後のアイコン */
  font-family: "Font Awesome 5 Free";
}
.svbox input:checked ~ label::before {
  content: '\f102'; /* ラベルをクリックした後のアイコン */
  font-family: "Font Awesome 5 Free";
}

.vobox div,
.acbox div,
.svbox div {
  height: 0px;
  overflow: hidden;
  opacity: 0;
  transition: 0.15s; /* 開閉スピードの設定 */
}

.vobox input:checked ~ div {
  height: auto;
  padding: 10px; /* 開いた部分の枠内の余白 */
  border-radius: 0px;
  background: #005E32; /* 開いた部分の背景色 */
  opacity: 1;
}
.acbox input:checked ~ div {
  height: auto;
  padding: 10px; /* 開いた部分の枠内の余白 */
  border-radius: 0px;
  background: #F3F4F5; /* 開いた部分の背景色 */
  opacity: 1;
}
.svbox input:checked ~ div {
  height: auto;
  padding: 10px; /* 開いた部分の枠内の余白 */
  border-radius: 0px;
  background: #eee; /* 開いた部分の背景色 */
  opacity: 1;
}

.vobox input:checked ~ label {
  color: #00861a; /* クリック後のラベルの背景色 */
}
.acbox input:checked ~ label {
  background: #00861a; /* クリック後のラベルの背景色 */
}
.svbox input:checked ~ label {
  background: #00861a; /* クリック後のラベルの背景色 */
}

.vobox-under {
  font-size: 16px; /* 開いた部分の文字サイズ */
  color: #fff; /* 開いた部分の文字色 */
}
.acbox-under {
  font-size: 16px; /* 開いた部分の文字サイズ */
  color: #333; /* 開いた部分の文字色 */
}
.svbox-under {
  font-size: 16px; /* 開いた部分の文字サイズ */
  color: #333; /* 開いた部分の文字色 */
}

.vobox-under .left{
	margin: 0 1em 1em 0;
}

@media screen and (max-width: 640px) {
	.vobox-under .left{
	margin: 0 0 1em 0;
	}
}

.vobox dt,
.svbox dt {
	padding-bottom: 0.5em;
}

.vobox dd,
.svbox dd {
	padding-bottom: 2em;
}
.vobox dd:last-child,
.svbox dd:last-child {
	padding-bottom: 0;
}

dt.question {
	color: #005E32;
}

/***************
  ContactForm7 テーブル
***************/
  /*テーブルを親要素の幅いっぱいに伸ばす*/
  .table-res-form {
    width: 100%;
    border: none;
  }
  /*奇数行だけ背景色つける*/
  .table-res-form tr:nth-child(2n+1) {
    background: #eee;
  }
  /*thとtd内の余白指定*/
  .table-res-form th, .table-res-form td {
    padding: 1em;
    border: none;
  }
  /*th（項目欄）は30%幅、テキストを右寄せ*/
  .table-res-form th {
    width: 30%;
    text-align: left;
  }
  /*「必須」部分のスタイリング*/
  .required {
    font-size: 0.8em;
    color: #FFF;
    display: inline-block;
    padding: 2px 6px;
    margin-left: 5px;
    background: red;
    border-radius: 3px;
  }
  /*ここから768px以下の指定*/
  @media only screen and (max-width: 768px) { /*thとtdをブロック化して幅100％にして、縦積み*/
    .table-res-form th, .table-res-form td {
      width: 100% !important;
      display: block !important;
      text-align: left;
    }
    /*th（項目名）欄の不要な余白削除・テキスト左寄せ*/
    .table-res-form th {
      padding-bottom: 0;
      text-align: left;
    }
    /*不要な最終行の左のthを非表示にする*/
    .table-res-form .empty {
      display: none;
    }
  }
  /*ここまで768px以下の指定---終わり*/
  /*ここから入力欄のスタイル指定*/
  /*各入力フォームスタイリング*/
  .table-res-form input[type="text"], input[type="email"], input[type="tel"], input[type="url"], textarea {
    border: 1px #AF9747 solid;
    padding: 0.5em;
    border-radius: 5px;
    margin-bottom: 0.5em;
    width: 100%;
  }
  /*入力欄にフォーカスしたら変化*/
  .table-res-form input[type="text"]:focus, textarea:focus {
    background: #EEFFFF;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
  }
  /*送信ボタンスタイリング*/
  input[type="submit"] {
    border: 1px solid #AF9747;
    padding: 0.5em 4em;
    border-radius: 5px;
    background: #AF9747;
    color: #fff;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
    font-weight: bold;
  }
  /*送信ボタン・マウスオーバー時スタイリング*/
  input[type="submit"]:hover {
    border: 1px solid #B1A473;
    background: #B1A473;
    box-shadow: none;
  }
  /*確認メッセージ非表示*/
.wpcf7-mail-sent-ok,
.wpcf7 form.sent .wpcf7-response-output {
    display: none !important;
  }
  /*--------------------------
  ContactForm7 送信完了画面用
  --------------------------*/
  .sent .form-wrapper {
    display: none;
  }
  .complete-display {
    display: none;
  }
  .sent .complete-display {
    display: block;
  }
  /*--------------------------
  チェックマーク
  --------------------------*/
  .check-list li {
    list-style-type: none;
    margin-bottom: 1em;
    padding-left: 32px;
    background: url("http://atconsulting.co.jp/wp-content/uploads/2017/07/icon-check-list.png") left 3px no-repeat;
  }
  /*Retina（高解像度）ディスプレイ用*/
  @media screen and (-webkit-min-device-pixel-ratio:2), (min-resolution: 2dppx) {
    .check-list li {
      background: url("http://atconsulting.co.jp/wp-content/uploads/2017/07/8d772e9a560aa2766a984f4929da68cc.png") left 3px no-repeat;
      -webkit-background-size: 24px 24px;
      background-size: 24px 24px;
    }
  }


page-top {
    display: none;
}
