@charset "UTF-8";
/*------------------------------
PC用レイアウト（768px以上スクリーン）
------------------------------*/

/*----------
共通設定(PC)
-----------*/

/* 初期スタイル調整 */
* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* body全体の初期スタイル調整 */
body {
	font-size: 62.5%;
	line-height: 1.5;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
	color: #000;
	background-color: #fff;
	-webkit-text-size-adjust: 100%;
}

/*リンク文字の設定*/
a {
	text-decoration: underline;
}

a:link,
a:visited {
	color: #39f;
}

a:hover,
a:active {
	color: #f60;
}

p {
	margin: 0 !important;
	padding: 0 !important;
	font-feature-settings: "palt";
}

section {
	clear: both;
	/* 配置設定をクリアにしておくため（初期で設定している左右配置をクリアにする） */
	overflow: auto;
	/* 要素の内容が要素自体の領域を超えた場合「aute」 */
}

/* -------------------------------------
見出しタグ設定（PC)
--------------------------------------*/
h2 {
	margin: 0.5em 0 0.5em;
	font-size: 1.8em;
	font-weight: bold;
	text-align: center;
}


/*カラムが狭くなってもテーブルタグがはみ出ないようにする*/
table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
	word-break: break-all;
	word-wrap: break-word;
}

/* <section> 間の隙間（margin）をなくすため */
h2,
p {
	margin-top: 0;
	margin-bottom: 0;
}


/* 自動カーニング */
.selector {
	font-feature-settings: "palt";
}


/*--------------------------------------------------------
全体レイアウト/背景設定（PC）
--------------------------------------------------------*/

/*全体エリア(全体背景の設定はここ)*/
.main {
	background-color: #f3faf1;
}

/*記事(ボディ)エリアの行間*/
.atcl_inr p {
	line-height: 1.6em;
	margin-bottom: 1em;
}

/*記事(ボディ)エリアのフォントサイズ*/
.article {
	font-size: 1.7em;
}

/*カラム全体の幅を変更する*/
.header_inr,
.atcl_inr,
.CV_atcl_inr,
.top_image_in,
.top_fv_copy_inr {
	width: 950px;
	margin: 0 auto;
}
.atcl_inr {
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); /* X方向0px, Y方向4px, ぼかし8px, 黒30%透明 */
}


/*PC画面とスマホ画面の切り替え*/

.gamen_pc {
	display: block;
}

.gamen_rps {
	display: none;
}

/*-----------------------------------
上部固定ヘッダー設定
-----------------------------------*/

/*上部固定ヘッダー全体*/
.header {
	position: sticky;
	/* ポジションがピタッとくっつく設定 */
	position: -webkit-sticky;
	top: 0;
	z-index: 5000;
	background-color: #fff;
	border-bottom: 1px;
	overflow: auto;
}

/* ヘッダー内部をカラム幅にする */
.header_inr {
	max-width: 950px;
	margin: 0 auto;
	overflow: hidden;
}

/*ヘッダーロゴ*/
.header_logo {
	float: left;
	width: 30%;
	margin: 0.5em 0em 0em;
}

/*ヘッダー 電話ボタン*/
.header_tel {
	width: 25%;
	float: right;
	margin: 1.5em 0.5em 0em;
}

/*ヘッダー 問い合わせボタン*/
.header_mail {
	width: 25%;
	float: right;
	margin: 1.5em 0.3em 0em;
}

/*ヘッダー内の画像はエリア幅に合わせる*/
.header_logo img,
.header_tel img,
.header_mail img {
	width: 100%;
}

/*--------------------------------------------------------
ファーストビュー設定
--------------------------------------------------------*/
.top_fv_copy {
	background-color: #90ae4e;
}

.top_fv_copy_inr img {
	max-width: 800px;
	padding-top: 0.5em;
}


.top_image {
	background-color: #f3faf1;
	height: auto;
}

.top_image_in img {
	width: 100%;
}

/* --------------------------
CV設定
----------------------------*/
.sec_cv_area {
	background-color: #90ae4e;
	padding-bottom: 1em;

}

.cv_title {
	text-align: center;
	padding-top: 1em;
	padding-bottom: 0.5em;
}

.btn_area {
	display: flex;
	background-color: #fff;
	justify-content: center;
	padding: 1.5em 0em;

}

.btn_area img {
	width: 48%;
}

/* --------------------------
共有エリア設定
----------------------------*/
.tax_title,
.tax_title02 {
	text-align: center;
	padding-top: 1em;
	padding-bottom: 1em;
}

.tax_title img {
	width: 80%;
}
.tax_title02 img{
	width: 100%;

}

.tax_comment_text {
	max-width: 800px;
	margin: 0 auto;
	padding-left: 1em;
	padding-right: 1em;
}
/* --------------------------
悩みエリア設定
----------------------------*/

.sec_nayami {
	background: url(../images/haikei_tax_nayami.png) center no-repeat;

	margin: 0 auto;

}

.sales_triangle_tax {
	width: 0;
	height: 0;
	border-left: 100px solid transparent;
	/* 底辺の半分 */
	border-right: 100px solid transparent;
	/* 底辺の半分 */
	border-bottom: 30px solid #ff733e;
	/* 三角形の色 */
	transform: rotate(180deg);
	/* 90度回転して右向きに */
	margin: auto;
	padding-bottom: 1em;

}

/*-------
チェックリスト
--------*/
ul.checklist_tax {
	background: url(../images/haikei_tax_nayami_bullet.png);
	padding: 1em 1em 0em 2em;
	list-style: none;
	border: 1px solid #414141;
	max-width: 800px;
	margin: 0 auto;
	margin-bottom: 2em;
	margin-top: 1em;
}

.checklist_tax li {
	background-image: url(../images/icon-check03-red.png);
	background-repeat: no-repeat;
	background-size: 3.5%;
	padding-left: 1.8em;
	margin-bottom: 0.8em;
	/* margin-bottom: 0.8em;
	text-indent: -1.2em;
	margin-left: 1em; */
	font-weight: bold;
}

ul.checklist_tax list-chaild {
	margin-bottom: 0em;
}


/* --------------------------
解決エリア設定
----------------------------*/
.sec_kaiketu {
	background-color: #faf7f2;
}



.kaiketu_area {
	display: flex;
	gap: 30px;
	padding-left: 2em;
	padding-right: 2em;

}

.kaiketu_img img {
	max-width: 300px;
}

.kaiketu_text {
	padding-top: 1.5em;
}

.kaiketu_text p {
	font-size: 1.2em;
}

/* --------------------------
安心エリア設定
----------------------------*/
.sec_ansin {
	background-color: #faf7f2;
	padding-bottom: 2em;
}

.ansin_area01,
.ansin_area02 {
	display: flex;
	padding-top: 1.5em;
	padding-left: 1em;
	padding-right: 1em;
}

.ansin_area02 {
	flex-direction: row-reverse;

}

.ansin_img img {
	max-height: 300px;
}

.ansin_mds img {
	width: 80%;
}


.ansin_text {
	background-color: #fff;
	max-height: 300px;
	padding: 1em 0.5em;


}


/* --------------------------
評価エリア設定
----------------------------*/
.sec_hyouka {
	background-color: #fff;
padding-bottom: 2em;
}

.tax_hyouka_img_mds {
	text-align: center;
	padding-right: 3em;
	padding-top: 1em;
}

.tax_hyouka_img_mds img {
	max-width: 750px;
}

.hyouka_area01,
.hyouka_area02 {
	display: flex;
	justify-content: center;
	padding-left: 2em;
	padding-right: 2em;
	gap: 30px;
}

.hyouka_area02 {
	flex-direction: row-reverse;
}

.hyouka_mds01,
.hyouka_mds02 {
	font-size: 1.6em;
}

.hyouka_mds02 {
	color: #0a4028;
}

.hyouka_img img {
	max-width: 350px;
}



/* --------------------------
料金エリア設定
----------------------------*/
.sec_price {
	background-color: #fff;
}

/*--------
テーブル全体の設定
---------*/
.price_table {
	text-align: center;
	padding: 2em 0;
}

table {
	max-width: 650px;
	width: 100%;
	margin: 1em auto;
	border-collapse: collapse;
	border-top: 1px solid #959595;
	border-left: 1px solid #959595;
}

th,
td {
	padding: 0.5em;
	border-right: 1px solid #959595;
	border-bottom: 1px solid #959595;
	background-color: #fff;
	text-align: center;
	vertical-align: middle;
}

th {
	background-color: #f0f0f0;
	font-weight: bold;
}


/*-------
チェックリスト
--------*/
ul.checklist_tax_price {
	background: url(../images/haikei_tax_nayami_bullet.png);
	margin: 0 auto;
	padding: 1em 1em 0em 1em;
	list-style: none;
	border: 3px solid #90ae4e;
	max-width: 600px;
}

.checklist_tax_price li {
	padding-left: 1.8em;
	margin-bottom: 0.8em;
	font-weight: bold;
}

ul.checklist_tax_price list-chaild {
	margin-bottom: 0em;
}


.price_img {
	display: flex;
	gap: 20px;
	padding: 1em 0.5em;
	justify-content:space-around;
}

.price_img img {
	width: 38%;
}

/* --------------------------
流れエリア設定
----------------------------*/

.sec_nagare{
	background-color: #fff;
}



.nagare_area {
	display: flex;
	justify-content: center;
	gap: 40px;
	padding-top: 3em;
}

.nagare_cntnr_text {
	max-width: 400px;
}

.nagare_mds {
	display: flex;
	align-items: center;
	padding-top: 1em;
}

.nagare_mds p {
	color: #96a947;
	font-size: 1.4em;
}

.tax_nagare_triangle {
	width: 0;
	height: 0;
	border-left: 70px solid transparent;
	/* 底辺の半分 */
	border-right: 70px solid transparent;
	/* 底辺の半分 */
	border-bottom: 10px solid #96a947;
	/* 三角形の色 */
	transform: rotate(180deg);
	/* 90度回転して右向きに */
	margin: auto;
	/* 中央揃え */
}

.border_Grn {
	max-width: 680px;
	height: 3px;
	background: #96a947;
	margin: 0 auto;
}



/* --------------------------
あいさつエリア設定
----------------------------*/

.sec_aisatu {
	background-color: #fff;
}

.aisatu_area{
	max-width: 850px;
	clear: both;
}

.tax_aisatu_img img{
width: 40%;
}






/* --------------------------
アクセスエリア設定
----------------------------*/
.sec_access{
	background-color: #fff;
}
.access_area {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
}



/* --------------------------
フォームエリア全体
----------------------------*/
.sec_form{
		background-color: #fff;

}
.form_area {
	max-width: 800px;
	margin: 0 auto;
	padding: 0 1em;
	/* 両脇に余白追加 */
}

/* --------------------------
  フォームボックス
  ----------------------------*/
.mailform {
	background-color: #fff;
	padding: 2em;
	margin: 1em auto;
	box-shadow: 0 0 5px #ccc;
	font-family: sans-serif;
	border-radius: 10px;
}

/* --------------------------
  フォーム要素
  ----------------------------*/
.form_block {
	margin-bottom: 1.5em;
}

label {
	font-weight: bold;
	display: block;
	margin-bottom: 0.5em;
}

.required {
	color: #f00;
	font-size: 0.9em;
}

/* --------------------------
共通入力スタイル
----------------------------*/
.input_style,
.input_style_long {
	width: 100%;
	padding: 1em;
	border: 1px solid #aaa;
	border-radius: 10px;
	font-size: 1em;
	background-color: #fffbf0;
	text-align: left;
	/* 入力内容を左寄せに */
	box-sizing: border-box;
}

/* --------------------------
テキストエリア専用（ご相談内容）
----------------------------*/
.textarea_style {
	height: 200px;
	/* 高さ3倍に拡大 */
	resize: vertical;
}

/* --------------------------
送信ボタン
----------------------------*/
.submit_btn {
	display: block;
	width: 100%;
	background-color: #ff6666;
	color: #fff;
	padding: 1em;
	font-size: 1.2em;
	border: none;
	border-radius: 10px;
	cursor: pointer;
}

/* --------------------------
注意文
----------------------------*/
.caution {
	text-align: center;
	font-size: 0.8em;
	color: #f00;
}



/*--------------------------------------------------------
段落・リスト・テーブル設定
--------------------------------------------------------*/

/* フレックボックス */

/* 横並びにボックスが出現 */
.fb-container {}

.item {
	background: #0bd;
	color: #fff;
	margin: 10px;
	padding: 10px;
}

/* 横並びにボックスが出現 */
.fb-container-01 {
	display: flex;
}

.fb-container-02 {
	display: flex;
	/* flex-direction: row-reverse;　順番が逆になる */
	/* flex-wrap: wrap;　画面が小さくなるとボックスが折り返しされる */
	/* flex-wrap: wrap-reverse;　折り返しが頭からになる */

	/* 書き込みの略式 */
	flex-flow: row wrap;

	/*justify-content: flex-start;　ボックスの端が左に寄る */
	/* justify-content: flex-end;　ボックスの端が右に寄る */
	justify-content: center;
	/* ボックスが中央に合わせられる */
	/* justify-content: space-between; */
	/* 画面に均等に配置 */
	/* justify-content: space-around;　子要素のマージン含めて均等に配置 */

	/* ボックス同士の感覚を操作する */
	gap: 20px;
}

.fb-container-03 {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around;
}

.item-02 {
	flex-grow: 2;
	/* 子要素の伸びる比率を操作 */
}

.item-03 {
	flex-shrink: 2;
	/* 子要素の縮む比率を操作*/
}

.item-04 {
	flex-basis: 30%;
	/* 要素が30％分幅をとる */
}

.item-05 {
	/* 書き込みの略式 */
	flex: 2 0 30%;
}

/* ------------------「グレットレイアウトについて」--------------------- */

.fr-photo-garely {
	width: 1000px;
	display: grid;
	grid-template-rows: 50vw 30vw 50vw 30vw 30vw;
	/* 横の数 */
	grid-template-columns: 50% 50%;
	/* 縦の数 */

	/* デバイスの横幅に合わせてセルの高さを比率で決めるために、grid-template-rowsの値の単位をvw（viewportの横幅を基準にした単位）にしています */
}

.fr-photo-garely img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	/* 画像調整の引き伸ばしで崩れた画像を適正にする */
}

.photo-A {
	/* grid-row-start: 1;
    grid-row-end: 2;
    grid-column-start: 1;
    grid-column-end: 3; */

	/* 略式の書き方 */
	grid-row: 1/2;
	grid-column: 1/3;
}

.photo-B {
	grid-row-start: 2;
	grid-row-end: 4;
	grid-column-start: 1;
	grid-column-end: 2;
}

.photo-C {
	grid-row-start: 2;
	grid-row-end: 3;
	grid-column-start: 2;
	grid-column-end: 3;
}

.photo-D {
	grid-row-start: 3;
	grid-row-end: 4;
	grid-column-start: 2;
	grid-column-end: 3;
}

.photo-E {
	grid-row-start: 4;
	grid-row-end: 5;
	grid-column-start: 1;
	grid-column-end: 3;
}

.photo-F {
	grid-row-start: 5;
	grid-row-end: 6;
	grid-column-start: 1;
	grid-column-end: 2;
}

.photo-G {
	grid-row-start: 5;
	grid-row-end: 6;
	grid-column-start: 2;
	grid-column-end: 3;
}

/* ---グリットレイアウトの単位--- */

.gr_container {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px;
}

.gr-item {
	background-color: darkturquoise;
	color: #fff;
}

.gr_container01 {
	display: grid;
	grid-template-columns: 1fr 2fr 1fr;
	grid-template-rows: 1fr 5fr;
	gap: 10px;
}

/* ー「auto-fill」ーー */
.gr_container02 {
	display: grid;
	grid-template-columns: repeat(auto-fill, 120px);
	gap: 10px;
}

/* 表示領域の大きさに合わせて空のグリッド(＝目に見えないグリッド)が自動的に作られる */

/* ーーーーー「auto-fit」ーーーーーー */
.gr_container03 {
	display: grid;
	grid-template-columns: repeat(auto-fit, 120px);
	gap: 10px;
}

/* 表示領域の大きさに合わせて余った部分は余白として扱う */



/* .container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: minmax(100px, auto);
  }
  行のトラックの最小サイズを 100px に指定して、最大サイズに auto を指定することでコンテンツに合わせて行の高さ(rows)を拡大 */

/* ーーーーー組み合わせーーーーーー */
.gr_container04 {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 10px;
	/* 120px以下では縦並び。120p以上になると幅に合わせて拡大。要素が一つ入る余白が生まれたら「空のグリット」が入る */
}

/* grid-template-columns: repeat(auto-fit, minmax(120,1fr));
要素が一つ入る余白が生まれたら自動的に要素が引き伸ばされて余白がなくなるバージョン */









/*-----------------
Youtube埋め込み調整
------------------*/

.youtube_size {
	width: 640px;
	height: 440px;
}

/*--------------------
画像化したサブヘッドを横に広げる
--------------------*/
h2.subhead {
	margin: 0em -2em;
}



/*------------------
よくある質問(文章ver.)
--------------------*/
.box_qa {
	background-color: #efefef;
	padding: 1em;
}

.box_qa_q {
	background-color: #fff;
	padding: 1em 2em;
	border-bottom: 1px solid #ccc;
	font-size: 1.2em;
	font-weight: bold;
	color: #CD3B3E;
}

.box_qa_a {
	background-color: #fff;
	padding: 1em 2em;
	line-height: 1.8;
}

.box_qa_q p,
.box_qa_a p {
	text-indent: -1.5em;
	/* Q&A欄の「Q」と「A」が文章に被っているのを訂正する */
}

.box_qa_a p {
	text-indent: 0em;
	margin-left: 0em;
}

/*------------------
よくある質問(事例2)
--------------------*/
/* よくある質問(文章ver.)のスタイル */
.box_qa {
	background-color: #efefef;
	padding: 1em;
}

.box_qa dt {
	background-color: #fff;
	padding: 1em 2em;
	border-bottom: 1px solid #ccc;
	font-size: 1.2em;
	font-weight: bold;
	color: #CD3B3E;
}

.box_qa dd {
	background-color: #fff;
	padding: 1em 2em;
	line-height: 1.8;
}

.box_qa dt,
.box_qa dd {
	text-indent: -1.5em;
	/* 質問と答えが被っているのを訂正する */
}

.box_qa dd {
	text-indent: 0em;
	margin-left: 0em;
}


/*------------
よくある質問(アコーディオンver.)
-------------*/
.faq {
	max-width: 800px;
	margin: 0 auto;
}

.faq dl,
.faq dt,
.faq dd {
	margin: 0;
	padding: 0;
}

.faq dl+dl {
	margin-top: 1rem;
}

.faq dt,
.faq dd {
	padding: 10px;
}

.faq dl {
	position: relative;
	overflow: hidden;
}

.faq dl>input {
	display: none;
}

.faq dt {
	position: relative;
	z-index: 1;
	padding-right: 40px;
	padding-left: 2.5em;
	cursor: pointer;
	background: #e6f3ff;
	transition: .4;
}

.faq dd {
	position: absolute;
	visibility: hidden;
	transform: translateY(-100%);
	transition: .4s;
	background: #f0f8ff;
	border-top: none;
	padding-left: 2.5em;

}

.faq dl>input:checked+label+dd {
	position: relative;
	visibility: visible;
	transform: translateY(0);
}

.faq dt::before {
	content: '';
	position: absolute;
	width: 20px;
	height: 3px;
	top: 50%;
	right: 10px;
	background: #333;
	transform: translateY(-50%);
}

.faq dt::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	width: 20px;
	height: 3px;
	background: #333;
	transition: .4s;
	transform: translateY(-50%) rotate(90deg);
}

.faq dl>input:checked+label>dt::after {
	transform: translateY(-50%) rotate(180deg);
}

.faq dt span,
.faq dd span {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #459be6;
	color: #fff;
	top: 50%;
	left: .5em;
	width: 1.5em;
	height: 1.5em;
	transform: translateY(-50%);
}


.faq dd span {
	top: 10px;
	transform: translateY(0);
	background-color: #e60000;
}

/*------------
問い合わせエリア
-------------*/

.box_entry {
	background-color: #125fa3;
	padding: 1em 3em;
}

.entry_inr {
	background-color: #fff;
	padding: 1em 2em;
	overflow: auto;
}

.entry_tel {
	width: 48%;
	float: left;
	margin-top: 0.5em;
}

.entry_mail {
	width: 48%;
	float: right;
	margin-top: 0.5em;
}



/*==================================================
スライダーのためのCSS※JQueryを使用
===================================*/
.slider {
	width: 94%;
	/* 横幅94%で左右に余白を持たせて中央寄せ */
	margin: 0 auto;
}

.slider img {
	width: 60vw;
	/* スライダー内の画像を60vwにしてレスポンシブ化 */
	height: auto;
}

.slider .slick-slide {
	transform: scale(0.8);
	/* 左右の画像のサイズを80%に */
	transition: all 0.5s;
	/* 拡大や透過のアニメーションを0.5秒で行う */
	opacity: 0.5;
	/* 透過50% */
}

.slider .slick-slide.slick-center {
	transform: scale(1);
	/* 中央の画像のサイズだけ等倍に */
	opacity: 1;
	/* 透過なし */
}

/* 矢印の設定 */

/* 戻る、次へ矢印の位置 */
.slick-prev,
.slick-next {
	position: absolute;
	/* 絶対配置にする */
	top: 50%;
	/* 矢印の垂直位置を中央に */
	cursor: pointer;
	/* マウスカーソルを指マークに */
	outline: none;
	/* クリックをしたら出てくる枠線を消す */
	border-top: 2px solid #666;
	/* 矢印の色 */
	border-right: 2px solid #666;
	/* 矢印の色 */
	height: 15px;
	width: 15px;
}

.slick-prev {
	left: -2%;
	/* 戻る矢印の位置 */
	transform: rotate(-135deg);
}

.slick-next {
	right: -2%;
	/* 次へ矢印の位置 */
	transform: rotate(45deg);
}

/* ドットナビゲーションの設定 */

.slick-dots {
	text-align: center;
	margin: 20px 0 0 0;
}

.slick-dots li {
	display: inline-block;
	margin: 0 5px;
}

.slick-dots button {
	color: transparent;
	outline: none;
	width: 8px;
	/* ドットボタンのサイズ */
	height: 8px;
	/* ドットボタンのサイズ */
	display: block;
	border-radius: 50%;
	background: #ccc;
	/* ドットボタンの色 */
}

.slick-dots .slick-active button {
	background: #333;
	/* ドットボタンの現在地表示の色 */
}




/*---------
フッター部分
-------*/

.footer {
	background: #90ae4e;
	padding: 2em 0 0.5em;
	text-align: center;
	font-size: 1.4em;
	color: #fff;
}

.footer a {
	color: #fff;
}

/*スマホ用下部固定メニュー*/
.fix_menu_smartphone {
	display: none;
}