@charset "UTF-8";
/* CSS Document */
/*-------------------------------------------------------------------------------------
PC用レイアウト（768px以上スクリーン）
----------------------------------------------------------------------------------------*/
/*--------------------------------------------------
共通設定(PC)
-----------------------------------------------------*/
/*body全体の初期スタイル調整*/
body {
  font-size: 62.5%; /*emの計算をしやすくするための定番設定*/
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  font-weight: normal;
  color: #000;
}
/*リンク文字の設定*/
a {
  text-decoration: underline;
}
a:link, a:visited {
  color: #39f;
}
a:hover, a:active {
  color: #f60;
}
/*ブラウザのCSSをリセット*/
p {
  margin: 0 !important;
  padding: 0 !important;
}
/*セクションエリアの共通設定*/
section {
  clear: both;
  overflow: auto;
}
/*--------------------------------------------------
見出しタグ設定（PC）
-----------------------------------------------------*/
h2 {
  margin: 0.5em 0em;
  font-size: 2em;
  font-weight: bold;
  text-align: center;
}
h3 {
  margin: 0.5em 0em;
  padding: 0.3em 0.6em;
  font-size: 1.6em;
  font-weight: bold;
  border-left: 8px solid #10559A;
  border-bottom: 1px dotted #10559A;
}
h4 {
  margin: 0.5em 0em;
  padding: 0.3em 0.6em;
  font-size: 1.4em;
  border: 1px solid #ccc;
  font-weight: bold;
}
h5 {
  margin: 0.5em 0em;
  padding: 0.1em;
  font-size: 1.2em;
  font-weight: bold;
  border-bottom: 1px dotted #ccc;
}
/*--------------------------------------------------
全体レイアウト／背景設定（PC）
-----------------------------------------------------*/
/*全体エリア（全体背景を設定するにはここ）*/
.main {
  background-color: #fff;
}
/*記事(ボディ)エリア*/
.article {
  background-image: url("../images/main_bg.jpg");
  font-size: 1.6em; /*=16px*/
}
/*記事(ボディ)エリアの行間*/
.article p {
  line-height: 1.6;
}
.article {
  width: 100%;
}
/*カラム全体の幅を変更する*/
.top_image_in, .section_inr {
  width: 950px;
  margin: 0 auto; /*真ん中に要素を置きたいときに使う*/
}
/*--------------------------------------------------
上部固定ヘッダー設定
-----------------------------------------------------*/
/*上部固定ヘッダー全体*/
.header {
  position: sticky;
  position: -webkit-sticky;
  top: 0;
  z-index: 5000;
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  overflow: auto;
}
/*ヘッダー内部をカラム幅にする*/
.header_inr {
  max-width: 950px;
  margin: 0 auto;
  overflow: hidden;
}
/*ヘッダーのロゴ*/
.header_logo {
  width: 30%;
  float: left;
  margin: 0.4em 0;
}
/*ヘッダーのlineボタン*/
.header_line {
  width: 6%;
  float: right;
  margin: 0.25em 0em 0em 0.8em;
}
/*ヘッダーの問い合わせボタン*/
.header_mail {
  width: 25%;
  float: right;
  margin: 1em 1em 0em;
}
/*ヘッダーの電話ボタン*/
.header_tel {
  width: 30%;
  float: left;
  margin: 0.7em 0em 0em 5em;
}
/*ヘッダー内の画像が常に幅100%になるように*/
.header_logo img, .header_mail img, .header_tel img, .header_line img {
  width: 100%;
}
/*--------------------------------------------------
ファーストビュー設定
-----------------------------------------------------*/
.top_image {
  background-image: url("../images/fv_bg.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  height: auto;
}
.top_image_in img {
  width: 100%;
}
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc {
  display: block !important;
}
.sp {
  display: none !important;
}
/*--------------------------------------------------
sectionの設定
-----------------------------------------------------*/
.seciton_01 {
  background-image: url("../images/experience_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  padding: 1.5em 3em;
}
.experience_text {
  font-size: 2em;
  text-align: center;
  font-weight: bold;
  margin-bottom: 1em;
  color: #fff;
}
.section_02 {
  background-color: #125599 !important;
  padding: 1.5em 3em;
  margin-bottom: 1em;
}
.section_04 {
  padding: 1em 3em;
}
.reasons {
  display: grid;
  grid-template-columns: 50% 50%;
  padding: 1em 2em;
}
.reason_01, .reason_02, .reason_03, .reason_04, .reason_05, .reason_06 {
  margin: 1em;
  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}
.section_05 {
  padding: 1.5em 3em;
}
.case_title {
  margin-bottom: 2em;
}
.details_title {
  margin-top: 1em;
}
.case_details {
  background-image: url("../images/case_details_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  display: grid;
  grid-template-columns: 50% 50%;
}
.case_details_01, .case_details_02, .case_details_03, .case_details_04 {
  margin: 1em;
}
.case_details img {
  width: 100%
}
.section_07 {
  padding: 2em 3em;
  background-color: #125599;
  margin-bottom: 1em;
}
.price_info {
  margin-top: 1em;
  display: flex;
  justify-content: space-around;
  column-gap: 2em;
}
.section_08 {
  padding: 2em 3em;
  background-color: #fff;
}
.section_09 {
  padding: 1em 3em;
  background-color: #fff;
}
.qa__list {
  margin-top: 1em;
  padding: 0 3em;
}
.qaItem:not(:last-child) {
  margin-bottom: 20px;
}
.qaItem__q {
  padding: 20px 10px;
  padding-left: 20px;
  background-color: #eee;
  font-size: 18px;
  font-weight: bold;
  color: #125599;
  position: relative;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.qaItem__q::after {
  content: "";
  display: inline-block;
  background-image: url(../images/plus.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 26px;
  height: 26px;
  position: absolute;
  top: 50%;
  right: 30px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  /* map-get(マップ型変数, キー)で値を取得 */
}
.qaItem__q.is-active::after {
  background-image: url(../images/minus.svg);
}
.qaItem__q .q {
  font-size: 26px;
  font-weight: bold;
  color: #125599;
  margin-right: 10px;
  display: inline-block;
  line-height: 1;
}
.qaItem__a {
  padding: 20px;
  background-color: #FFFDE6;
  font-weight: 500;
  position: relative;
  cursor: pointer;
  display: none;
  margin: 0 auto;
}
.qaItem__a-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.qaItem__a .a {
  font-size: 26px;
  font-weight: bold;
  color: #E55A57;
  margin-right: 10px;
  display: inline-block;
  line-height: 1;
}

.section_10 {
  padding: 1em 3em;
  background-color: #125599;
}
.contact_title{
	color: #fff;
	font-size: 2em;
	font-weight: bold;
	text-align: center;
}
/*--------------------------------------------------
Flowエリア
-----------------------------------------------------*/
.section_06 {
  padding: 1em 3em 2em;
}
.flow_design09 {
  display: flex;
  justify-content: center;
  align-items: center;
}
.flow09 {
  padding-left: 0;
  border-bottom: solid 1px #04134B;
}
.flow09 > li {
  list-style-type: none;
  display: flex;
  padding: 20px 0;
  border-top: solid 1px #04134B;
}
.flow09 > li dl dt {
  font-size: 1.5em;
  line-height: 2;
  font-weight: bold;
  margin: 0px 0 10px;
  color: #04134B;
}
.flow09 > li .icon09 {
  line-height: 1;
  font-size: 2.2em;
  font-weight: bold;
  color: #E26B5D;
  text-align: center;
  width: 70px;
  position: relative;
  margin-top: 0;
}
.flow09 > li .icon09::before {
  content: 'STEP';
  font-size: 0.4em;
  display: block;
  margin-bottom: 3px;
  letter-spacing: 1px;
}
.flow09 > li .icon09::after {
  content: "";
  display: block;
  width: 1px;
  height: calc(100% - 50px);
  background-color: #858585;
  position: absolute;
  left: 0;
  right: 0;
  top: 60px;
  margin: auto;
}
.flow09 > li dl dd {
  margin: 0;
}
.flow09 > li dl {
  width: calc(100% - 70px);
  margin-top: 0.8em;
}
/*--------------------------------------------------
CTAエリア
-----------------------------------------------------*/
.section_03 {
  padding: 1.5em 3em;
}
.cta_box {
  position: relative;
}
.cta_tel {
  padding: 1em 3em 0;
}
.section_cta_inr {
  position: absolute;
  left: 0%;
  bottom: 10%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 auto;
}
.middle {
  width: 90%;
  margin-bottom: 1em;
}
.left {
  width: 41%;
}
.right {
  width: 41%;
}


/*--------------------------------------------------
thanks page
-----------------------------------------------------*/
.thanks{
	margin: 0;
background-image: url("../images/main_bg.jpg");
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;	
}

.inr{
	
	margin: 9.25em 15em;
	padding: 1em 5em 2em;
	background-color:rgba(255,255,255,);
	text-align: center;
	font-size: 18px;
	border-radius: 15px;
	
}


/*--------------------------------------------------
フッター部分
-----------------------------------------------------*/
.footer {
  background-color: #105FA3;
  padding: 2em 0em;
  text-align: center;
  font-size: 1.4em;
  color: #fff;
}
.footer a {
  color: #fff;
}