@charset "UTF-8";
/* CSS Document */
/*-------------------------------------------------------------------------------------
PC用レイアウト（768px以上スクリーン）
----------------------------------------------------------------------------------------*/
/*--------------------------------------------------
共通設定(PC)
-----------------------------------------------------*/
/*body全体の初期スタイル調整*/
body {
  font-size: 62.5%; /*emの計算をしやすくするための定番設定*/
font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "Yu Mincho", "MS PMincho", "MS 明朝", "serif";
  font-weight: Extra Light;
  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;
}

/*チェックマークの共通設定*/
.check:before {
	position: relative;
  top: 5px;
	content: url('../images/check.png');
}

li::marker {
  display: none;
}


/*--------------------------------------------------
見出しタグ設定（PC）
-----------------------------------------------------*/
h2 {
  margin: 0.5em 0;
  font-size: 2em;
  color: #000;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.15em;
}

h3{
  margin: 0.5em 0;
  font-size: 2em;
  color: #262626;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.08em;
}

/*--------------------------------------------------
全体レイアウト／背景設定（PC）
-----------------------------------------------------*/
/*全体エリア（全体背景を設定するにはここ）*/
.main {
	overflow:hidden;
}
/*記事(ボディ)エリア*/
.article {
  font-size: 2em; /*=22px*/
  letter-spacing: -0.01em;
}
/*記事(ボディ)エリアの行間*/
.article p {
  line-height: 1.8;
  letter-spacing: -0.01em;
    font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS PGothic", "MS ゴシック", sans-serif;
}

.article{
	width: 100%;
}

/*カラム全体の幅を変更する*/
.top_image_in,.section_inr,.section_inr02,.section_inr03,.section_inr04,.section_inr05 {
  max-width: 950px; /* 2507_調整*/
  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: 2em auto;
  overflow: hidden;
}
/*ヘッダーのロゴ*/
.header_logo {
  width: 30%;
  float: left;
  margin-top: 2em;
}

/*ヘッダーの電話ボタン*/
.header_tel {
  width: 25%;
  float: right;
  margin: 1em 0em 0.5em;
}
/*ヘッダー内の画像が常に幅100%になるように*/
.header_logo img, .header_mail img, .header_tel img {
  width: 100%;
}




/*--------------------------------------------------
ファーストビュー設定
-----------------------------------------------------*/
.top_image{
margin: 0em;
padding: 0em;
  background-image: url(../images/top_bg_04.jpg);
	background-position: center;
  background-size:contain;
  background-repeat: no-repeat;
}


.top_image_in {
  text-align: left;
  font-size: 1.5em;
  letter-spacing: -0.1em;
  text-align: center;
}


.top_image_title{
	padding-left: 0.5em;
	color: #000e44;
  font-size: 2em;
  font-weight: bold;
  text-shadow: 2px 2px 10px #fff ,
-2px 2px 10px #fff,
2px -2px 10px #fff,
-2px -2px 10px #fff


}

.targetcopy{
  padding-top: 1em;
color: #000e44;
}

.maincopy01{
	font-size: 1.5em;
	line-height: 1.0;
}

.maincopy02{
	padding-left: 0.2em;
	font-size: 1.4em;
}

.subcopy{
margin-top: 0.5em;
color: #ffff;
text-shadow:none;
font-weight: normal;
}

.subcopy_box{
background-color: #000e44;
padding: 0.3em;
margin-right: 0.2em;
}

.top_image_img{
  margin: 1em 0.5em 1em;
	text-align: center;
}

.top_image_img img{
  width: 650px;
}


.top_image_img02{
	margin-top: 1.5em;
	text-align: center;
}

.top_image_img02 img{
  width: 750px;
}

.service_copy{
	text-align: center;
  font-size: 2.5em;
  letter-spacing: 0.1em;
	text-shadow: 2px 2px 10px #fff ,
-2px 2px 10px #fff,
2px -2px 10px #fff,
-2px -2px 10px #fff;
	background-image: url(../images/top_bg02.jpg);
	background-position: center;
	background-size:cover;
}

.service_copy01 {
  position: relative;
	margin: 3em 0.2em 0;
  padding: 1em 2em;
	font-size: 1.2em;
	font-weight: bold;
  text-align: center;
}


.service_copy02{
margin-bottom: 1em;
}

.service_logo{
  text-align: center;
}

.service_logo img{
  width: 500px;
}

.benefit_copy{
  display: inline-block;
  margin-top: 1em;
  padding: 0.5em;
  color: #000e44;
  font-weight: bold;
  font-size:0.8em;
  background-color: #fff;
  border:1px solid  #000e44;
  font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS PGothic", "MS ゴシック", sans-serif;
}


/*2.ふわっと文字が浮かぶアニメーション*/


.fuwa-line1 {
  animation-name: fadeInUpLoop1;
  opacity: 0;
  animation-delay: 1s;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

.fuwa-line2 {
  opacity: 0;
  animation-name: fadeInUpLoop2;
  animation-delay: 1.5s;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

@keyframes fadeInUpLoop1 {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  50% {
    opacity: 0.5;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInUpLoop2 {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  50% {
    opacity: 0.5;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}


/* ------------------------------
   スライダー
------------------------------ */

.loopSliderWrap {
    top: 0;
    left: 0;
    height: 230px;
    overflow: hidden;
    position: absolute;
}
.loopSlider {
    margin: 2em auto 0;
    width: 100%;
    height: 260px;
    text-align: left;
    position: relative;
    overflow: hidden;
}
.loopSlider ul {
    margin: 0;
    padding: 0;
    height: 230px;
    float: left;
    overflow: hidden;
}
.loopSlider ul li {
    margin: 0;
    padding: 0;
    width: 300px;
    height: 230px;
    float: left;
    display: inline;
    overflow: hidden;
}
.loopSlider ul li img {
    width: 100%;
}




/*--------------------------------------------------
section01
-----------------------------------------------------*/

.section_01 {
  margin-top: 6em;
  background-image: url(../images/section_bg.jpg);
	background-position: center;
  background-size:cover;
  background-repeat: repeat-y;
}

.section_inr{
  background-color: #fffffc;
 text-align: center;
}

.seciton01_title{
  text-align: center;
}

.seciton01_title img{
  width: 40%;
  margin-bottom: 1em;
}

.seciton01_title p{
  font-size: 1em;
}

.seciton01_case01{
  margin: 2em 1em 6em;
  padding: 0.5em 0 1em;
  color: #333333;
  background-color: #fff;
  border-radius: 3px;
  box-shadow: 0px 5px 15px 0px rgba(241, 241, 241);
}

.case01_title{
  background-color: #000e36;
  margin: 1em 4em;
  color: #fff;
  letter-spacing: 0.12em;
}


.case02_title{
  background-color: #000e36;
  margin: 3em 4em 1em;
  padding: 1em;
  color: #fff;
  font-size: 1.3em;
  letter-spacing: 0.12em;
}

.how{
font-size: 2em;
}

.bill{
padding-bottom: 0.5em;
}

.case01_img{
  text-align: center;
}

.case01_img img{
  width: 80%;
}

.case01_text{
  margin: 1em 4em;
}

.area_img_inr{
margin: 1em 0 4em;
}

.area_img{
  text-align: center;
}

.area_img img{
width: 90%;
}

.seciton01_beforeafter{
  margin-bottom: 100px;
}

.seciton01_beforeafter img{
  width: 85%;
}

.img_beforeafter{

}

/* 続きを見る　アコーディオン */

.readmore {
    position: relative;
    margin: 3em auto;
    display: block;
    color: #666;
    border: none;
    outline: 0;
    cursor: pointer;
    background: none;
    letter-spacing: 0.1em;
}

.readmore .open {
  display: block;
  border: #000e36 2px solid;
  background-color: #000e36;
  color: #fff;
  font-weight: bold;
  padding: 5px 10px;
}
.readmore.on-click .open {
  display: none;
}
.readmore .close {
  display: none;
  border: #000e36 2px solid;
  background-color: #fff;
  color: #000e36;
  font-weight: bold;
  padding: 5px 10px;
}
.readmore.on-click .close {
  display: block;
}

/* 3.写真のスライダー②(カクカク)*/
.scroll-step-wrapper {
  width: 100%;
  overflow: hidden;
  background: #fff;
  padding: 1em 0;
}

.scroll-step-track {
  display: flex;
  width: max-content;
  /* animation: scrollStepAnim 12s steps(5) infinite; */
}

.scroll-step-track img {
  width: 250px;
  height: auto;
  flex-shrink: 0;
}

.section01_member_item + .section01_member_item {
  margin-left: 15px;
}

/* @keyframes scrollStepAnim {
  0% { transform: translateX(0); }
  100% { transform: translateX(-1080px); }  200*5 + 16*5
}
*/

.section01_member li {
  list-style:none;
  padding-left: 0;
  max-width: 350px;
}

.section01_member_name {
  text-align: center;
  margin-top: 15px;
  font-size: 20px;
  font-weight: bold;
}

.section01_member_post {
  background-color: #000e36;
  color: #fff;
  padding:3px;
  font-size: 16px;
}

.section01_member_text {
  font-size: 16px;

}


/*--------------------------------------------------
補強パート：実績
-----------------------------------------------------*/


.section_achievements {
  padding-top: 60px;
  padding-bottom: 60px;
  padding-left: 15px;
  padding-right: 15px;
}


.section_achievements_part {
  padding-top: 60px;
  padding-bottom: 60px;
}



.section_achievements_title {
  font-size: 1.8em;
}

.section_achievements_imgs {
  display: grid;
  gap:14px;
  grid-template-columns: repeat(2,1fr);
  width: 100%;
  margin-bottom: 10px;
}

.section_achievements_imgs._single {
  display: grid;
  gap:14px;
  grid-template-columns: repeat(1,1fr);
  width: 100%;

}

.section_achievements_img {
  width: 100%;
  margin-inline-start: 0px!important;
  margin-inline-end: 0px!important;
  margin-block-start: 0em!important;
  margin-block-end: 0dvi!important;
}

.section_achievements_img img {
  width: 100%;
}

.section_achievements {
  text-align: left;
}


.section_achievements + .section_achievements {
  margin-top: 30px!important;

}






/*--------------------------------------------------
ドローン調査
-----------------------------------------------------*/
.section_drone {
  margin-top: 60px;
  margin-bottom: 60px;
}

.section_drone_title {
  text-align: center;
  position: relative;
}

.section_drone_title::before  {
  position: absolute;
  content:"";
  display: inline-block;
  bottom: -25px;
  left: 50%;
  transform: translate(-50%,0%);
  border: 11px solid transparent;
  border-top: 12px solid #000e36;

}

.section_drone_title_back {
  background-color: #000e36;
  color: #fff;
  padding:3px;
}

.section_drone_wrap {
  display: flex;
  flex-direction: column;
  margin-top: 40px;
}

.section_drone_img {
  width: 50%;
  margin: auto;
}

.section_drone_img video {
  width: 100%;
}

.section_drone_text {
  width: 100%;
  text-align: center;
}

.section_drone_attention {
  font-size: 12px;
  text-align: center;
}

.pc_br {
  display: block;
}

.sp_br {
  display: none;
}


/*--------------------------------------------------
安心の特許書
-----------------------------------------------------*/

.patent-book-section_inr{
  background-color: #fefff4;
  margin: 6em 0;
  padding: 3em 0;
}

.patent-book {
  padding-top: 60px;
}

.patent-book_title {

}

.patent-book_text {
  text-align: center;
}

.patent-book_img {
  text-align: center;
  width: 40%;
  margin: auto;
  margin-top: 20px;
}

.patent-book_img img {
  width: 60%;
}






/*--------------------------------------------------
section02
-----------------------------------------------------*/
.section_02{
  margin-top: 0em;
  background-color: #fff;
	background-position: center;
  background-size:cover;
  background-repeat: repeat-y;
}

.section_inr02{
  background-image: url(../images/section_bg02.jpg);
  background-position: center;
  background-size:cover;
  background-repeat: repeat-y;
 text-align: center;
}

.section02_contents{
margin-top: 1em;
padding-top: 3em;
text-shadow: 2px 2px 10px #fff ,
-2px 2px 10px #fff,
2px -2px 10px #fff,
-2px -2px 10px #fff
}


.checkbox{
padding: 0.5em 0 1em;
display: flex;
justify-content:center;
}

.checkbox_inr {
margin: 0;
font-family:"小塚ゴシック Pr6N","ヒラギノ角ゴ StdN","ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS PGothic", "MS ゴシック", "sans-serif";
padding: 1em 2em 0.5em;
}


.checkbox_inr_text {
background: url("../images/check02.png") no-repeat;
background-position: left 50%;
color: #383838;
padding-left: 1.4em;
margin-bottom: 1em;
font-size: 1.2em;
font-weight: normal;
text-align: left;
}

.section02_contents02{
  padding-bottom: 3em;
}

.section02_contents02 img{
  padding-bottom: 3em;
}

.nauyami_img{
text-align: center;
}

.nauyami_img img{
	width: auto;
}

.section02_arw{
	text-align: center;
	position: relative;
	top:-50px;
}

.section02_arw img{
	width: auto;
}

.section02_font{
	text-align: center;
	padding-bottom: 2em;
}

.section02_font img{
	width: 50%;
}

.section02_contents03{
	text-align: center;
}

.section02_contents03 img{
	width: 80%;
}


/*--------------------------------------------------
section03
-----------------------------------------------------*/
.section_03 {
  margin-top: 6em;
  margin-bottom: 3em;
  background-image: url(../images/section_bg.jpg);
	background-position: center;
  background-size:cover;
  background-repeat: repeat-y;
}

.section_inr03{
  background-color: #f8f8f8;
  margin-top: 3em;
  padding-top: 3em;
  padding-bottom: 2em;
 text-align: center;
}

.reason_contents{
  margin:5em 3em;
  padding-top: 2em;
  background-color: #fff;
}

.reason_alhabet{
  color: #e3e3e3;
  font-size: 2em;
  letter-spacing: 0.1em;
}

.reason_subtitle{
  display: inline-block;
  padding: 0.1em 0.3em;
  -webkit-transform: skew(-5deg);
  color: #fff;
  background-color:#262626;
  font-size: 1.2em;
}

.reason_title{
  font-size: 2.5em;
  letter-spacing: 0.04em;
  font-weight: bold;
}

.reason_img{
  text-align: center;
  margin: 0.5em 2em;
}

.reason_img img{
  width: 100%;
}

.reason_text{
  padding-bottom: 3em;
  margin: 1em 2em;
}


/*--------------------------------------------------
section04
-----------------------------------------------------*/
.section_04 {
  margin-top: 6em;
}

.section_inr04{
  background-color: #fffef9;
  margin-top: 3em;
  margin-bottom: 1em;
  padding-top: 3em;
 text-align: center;
}

.jirei_contents{
  background-color: #fff;
  border-radius: 3px;
  box-shadow: 0px 5px 15px 0px rgba(241, 241, 241);
  margin: 1em 3em 8em;
  padding: 1em;
}

.jirei_contents p{
}

.jirei_question{
margin-top:1em;

}

.jirei_question .sub{
  display: inline-block;
padding: 0.5em 1.1em;
  border-radius: 50%;
  background-color: #02186d;
  text-align:center;
  color: #fff;
  font-weight: bold;
  font-size:0.8em;
  line-height: 1.5em;
}



.jirei_question .title{
  position: relative;
  padding: 1em 2em;
  text-align: center;
  margin: 0.5em 2em;
  color: #000;
  font-size: 1.3em;
  font-weight: bold;
  letter-spacing: 0.08em;
  background: url("../images/q.png") no-repeat;
}

.jirei_question .title:before,
.jirei_question .title:after {
  position: absolute;
  content: '';
}

.jirei_question .title:after {
  top: -0.5em;
  left: -0.5em;
  width: 50px;
  height: 50px;
  border-top: 1px solid #838383;
  border-left: 1px solid #838383;
}

.jirei_question .title:before {
  right: 0;
  bottom: 0;
  width: 50px;
  height: 50px;
  border-right: 1px solid #838383;
  border-bottom: 1px solid #838383;
}

.jirei_img{
  margin:1em 0;
  text-align: center;
}

.jirei_img img{
  width: 80%;
}

.jirei_img02{
  margin:1em 0;
  text-align: center;
}

.jirei_img02 img{
  width: 90%;
}



.jirei_arw{
  text-align: center;
  margin: 1em 0;
}

.jirei_arw img{
  width: auto;
  height: 100px;
}

.jirei_answer{

}

.jirei_answer .title{
	position: relative;
	padding: 1em 2em;
	text-align: center;
	margin: 0.5em 2em;
	font-size: 1.5em;
	font-weight: bold;
  color: #02186d;
	letter-spacing: 0.08em;
	background: url("../images/a.png") no-repeat;
}

.jirei_answer .title:before,
.jirei_answer .title:after {
  position: absolute;
  content: '';
}

.jirei_answer .title:after {
  top: -0.5em;
  left: -0.5em;
  width: 30px;
  height: 30px;
  border-top: 1px solid #838383;
  border-left: 1px solid #838383;
}

.jirei_answer .title:before {
  right: 0;
  bottom: 0;
  width: 30px;
  height: 30px;
  border-right: 1px solid #838383;
  border-bottom: 1px solid #838383;
}


/*--------------------------------------------------
section05
-----------------------------------------------------*/
.step_contents {
  padding: 1em 4em;
  text-align: left;
  margin-bottom: 10em;
}

/*ステップフローのCSS*/
ul.stepflow {
  border: none;
  margin: 1em 0.5em;
  padding: 0;
  list-style: none;
}
ul.stepflow > li:before, ol.stepflow > li:before {
  background-color: #cccccc !important;
}
.stepflow li {
  position: relative;
  padding: 0 0 1.5em 1.8em;
}
.stepflow > li:before {
  content: "";
  width: 3px;
  background: #cccccc;
  display: block;
  position: absolute;
  top: 28px;
  bottom: 0;
  left: 5px;
}
.stepflow-white {
  content: '';
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: solid 3px #232F3E;
}
.stepflow-black {
  content: '';
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: solid 3px #232F3E;
  background-color: #232F3E;
}
.stepflow_label {
  padding: 3px 0px 8px 0px;
  margin-bottom: 8px;
  color: #000;
  font-size: 1em;
  font-weight: bold;
  letter-spacing: 0.08em;
}
.stepflow_title {
  color: #000;
  font-size: 1.5em;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 15px;
}
.stepflow_content {
display: inline-block;
margin: 0.5em 0.7em 0.5em 0.5em;
padding: 0.5em 0.7em;
color: #fff;
background-color: #02186d;
}

/*2507_ステップcss更新*/

.n-flow {
  width: 100%;
  margin-top:60px;
  margin-bottom:160px;
}


.n-flow_list {
  width: 95%;
  margin: auto;
  display: grid;
  gap:30px 40px;
  grid-template-columns: repeat(3,1fr);
  padding-inline-start: 0px;
}

.n-flow_list li {
  text-decoration: none;
  margin-left: 0px;
}

.n-flow_item {
  position: relative;
}

.n-flow_item:not(:last-child)::before  {
  position: absolute;
  content:"";
  display: inline-block;
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 2px #333;
  border-right: solid 2px #333;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}


.n-flow_img {
  width: 75%;
  margin: auto;
}

.n-flow_img img {
  width: 100%;
}

.n-flow_num {
  background-color: #000e36;
  color: #fff;
  padding:0px 10px!important;
  display: inline-block;
  font-size: 14px;
}

.n-flow_heading {
  font-size: 1em;
}

.n-flow_category {
  display: flex;
  flex-direction: column;
}

.n-flow_category_item {
  color: #000e36;
  font-size: 14px;
  text-decoration: none;
  margin-left: 0px;
  text-align: center;

}





/*ステップフローのCSSここまで*/

.step_img {
  margin: 0.5em auto 0;
  text-align: left;
  border-bottom:1px solid #cccccc;
  padding-bottom: 5em;
}

.step_img img{
  width: 80%;
}


/*よくある質問 のCSS*/
.qa_content{
margin:3em 5em 8em;

}

.qa_q{
  display: block;
  padding-left: 2.5em;
  padding-bottom: 0.5em;
  color: #000;
  font-size: 1.5em;
  font-weight: bold;
  text-align: left;
background: url("../images/q2.png") no-repeat;
border-bottom: 5px solid #02186d;
}

.qa_a{
  padding-top: 1em;
  padding-left: 3em;
  padding-bottom: 0.5em;
  color: #000;
  font-size: 1.2em;
  text-align: left;
background: url("../images/a2.png") no-repeat;
background-position: left 50%;
}

/*よくある質問 のCSSここまで*/

.faq_section {
  padding-top: 80px;
  padding-bottom: 60px;
  background-color: #e7ebf5;
}

/* FAQアコーディオン */

.faq_list {
  margin-top: 40px;
}

.faq-item {
  margin-bottom: 1em;
  margin: 0 5em 1em;
  border: 1px solid #ccc;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.faq-question {
  background: #fff;
  width: 100%;
  padding: 1em;
  border: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1rem;
  font-weight: bold;
  cursor: pointer;
  outline: none;
  border-radius: 10px;
}

.faq-q-text {
  color: #333;
  text-align: left;
  padding-left:1em!important;
  text-indent:-1em;
}

.faq-toggle-icon {
  font-size: 1.5rem;
  color: #000e36;
  transition: transform 0.3s ease;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  background: #f6fafd;
  transition: max-height 0.4s ease;
  padding: 0.1em 1em;
}

.faq-answer p {
  margin: 1em 0;
  color: #000e36;
  text-align: left;
  font-size: 1rem;
  padding-left:1em!important;
  text-indent:-1em;
}

.faq-item.active .faq-answer {
  max-height: 200px;
}

.faq-item.active .faq-toggle-icon {
  transform: rotate(45deg); /*＋を×風に*/
  position: relative;
}

.faq-item.active .faq-toggle-icon::before  {
  position: absolute;
  content:"";
  transform: rotate(90deg);
  display: inline-block;
  top: 44%;
  left: 2%;
  z-index: 1;
  width: 13px;
  height: 3px;
  background-color: #000e36;
}

.faq_a_red {
  color:#c00009;
  font-weight: bold;
  font-size: 0.9rem;
}



/*--------------------------------------------------
CTAエリア
-----------------------------------------------------*/
.area_cta_inr {
  max-width: 950px;
  margin: 0 auto;
  padding: 0.5em 4em;
  overflow: auto;
  text-align: center;
  color: #fff;
  background-color: #e7ebf5;

}


.area_cta_01{
  padding: 0 0.5em;
}

.cta_01_text{
  padding-top: 1em;
font-family:"ヒラギノ角ゴ StdN","ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS PGothic", "MS ゴシック", sans-serif;
color: #262626;
text-align: center;
letter-spacing: -0.01em;
text-shadow: 2px 2px 10px #fff ,
-2px 2px 10px #fff,
2px -2px 10px #fff,
-2px -2px 10px #fff
}

.cta_01_img{
	display: none;
}

.cta_01_img img{
width: 100%;
}

.cta_01_text_title{
  font-size: 22px;
}

.cta_01_text_title02{
  font-size: 35px;
}

.cta_01_text_text{
	font-size:18px;
  margin-top: 1em;
}

.cta_01_img02{
  margin-top: 0.5em;
}

.cta_01_img02 img{
  margin-top: 5em;
  width: 50%;
}


.cta_arw{
	position: relative;
  top: -5px;
  text-align: center;
}

.cta_arw img{
  width: 70px;
}

.area_cta_02{
	margin: 1em 0.5em;
  padding: 2em 0.1em;
  text-align: center;
 background-color: #fff;
}

.area_cta_02 p{
  color: #000;
  font-size: 0.5em;
  font-family:"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS PGothic", "MS ゴシック", sans-serif;
}


.cta_mail{
  text-align: center;
}

.cta_mail img{
    width: 550px;
    padding-bottom: 0.5em;
}


.cta_tel{
  margin-top: 1.5em;
  text-align:

}

.cta_tel img{
  width: 375px;
  padding-bottom: 0.5em;
}


.cta_p{
  font-size: 0.8em;
  color: #000;
    font-family:"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS PGothic", "MS ゴシック", sans-serif;
}

.cta_bottom_text {
  display: none;
  font-weight: bold;
  color: #000e36;
  margin-top: 20px;
  font-size: 22px;
}

.cta_bottom_img{
  text-align: center;
  margin: 0 auto;
}


.cta_bottom_img img{
  width: 80%;
}

/*--------------------------------------------------
特典エリア
-----------------------------------------------------*/
.tokuten-inr{
  max-width: 1200px;
  margin: 5em auto 0;
  padding: 0.5em 4em;
  overflow: auto;
  text-align: center;
  color: #fff;

}

.tokuten_contents_inr{
  display: flex;
  background-color: #fffbe8;
}

.tokuten_contents{

}

.tokuten_subtitle{
  display: inline-block;
  padding: 0.1em 0.3em;
  -webkit-transform: skew(-5deg);
  color: #fff;
  background-color:#c00009;
  font-size: 1em;
}

.tokuten_title{
  font-size: 1.3em;
  letter-spacing: 0.04em;
  font-weight: bold;
  color: #051b5e;
      font-family:"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS PGothic", "MS ゴシック", sans-serif;
}

.tokuten_img{
  text-align: center;
  margin: 0.5em 2em;
}

.tokuten_img img{
  width: 40%;
}

.tokuten_con_img{
  text-align: center;
  margin: 0.5em 2em;
}

.tokuten_con_img img{
  width: 100%;
}

.tokuten_contents02_title{
  color: #0d2e99;
  font-weight: bold;
  font-size: 2em;
    font-family:"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS PGothic", "MS ゴシック", sans-serif;
}

.tokuten_contents02_case01{
  margin-top: 2em;
}

.causion01_img{
  margin: 4em 0 5em;
  text-align: center;
}

.causion01_img img{
  margin: 0 auto;
  width: 80%;
}

/*--------------------------------------------------
テーブル設定
-----------------------------------------------------*/
.table_containr{
  text-align: center;
  margin:0 auto;
}

.table_inr{
  margin: 0.5em 1em 1em 1em;

}

table {
  width: 80%;
  table-layout: fixed;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  margin: 1em auto;
  font-family:"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo", "MS PGothic", "MS ゴシック", sans-serif;
}
th, td {
  padding: 0.5em;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
th {
  background-color: #f6fafd;
  font-weight: bold;
  text-align: center;
}
td {
  background-color: #fff;
  text-align: left;
}
/*スマホでは行が列になるテーブルタグ*/
.table_style_01 {
  text-align: left;
  vertical-align: middle;
}


/*テーブル02*/
table-tokuten {
  width: 100%;
  table-layout: fixed;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  margin: 1em auto;
}
.table-tokuten th, .table-tokuten td{
  padding: 0.5em;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.table-tokuten th{
  background-color: #0d2e99;
  font-weight: bold;
  text-align: center;
   width: 30%
}
.table-tokuten td {
  background-color: #fff;
  color: #000;
  text-align: left;
  width: 70%;
}



/*--------------------------------------------------
プライバシーポリシー
-----------------------------------------------------*/
.privacy_contents{
  margin: 0 2em;
}


/*--------------------------------------------------
サンクスページ
-----------------------------------------------------*/
.thanks_inr{
margin: 0 0em 5em;
text-align: center;
}


.thanks_title {
	margin: 3em 0.2em 0;
  padding: 1em 2em;
	font-size: 1.4em;
  color:#0a1b6b;
	font-weight: bold;
  text-align: center;
}



.thanks_contents{
  background-image: url(../images/thanks_bg.jpg);
	background-position: center;
  background-size:contain;
  background-repeat: repeat;
  margin-top: 8em;
  text-align: center;
  padding-bottom: 2em;
}

.title_contents{
  margin: 2em 0 1em;
  padding: 0.5em 1em;
  background-color: #fff;
  display: inline-block;
  color: #000e44;
  font-size: 1.3em;
  font-weight: bold;
}

.thanks_contents p{
    font-size: 0.8em;
}

.youtube_contents{
		position: relative;
		width: 100%;
		max-width: 750px; /* PCでは最大560px */
		margin: 0 auto; /* 中央配置 */
		aspect-ratio: 16 / 9; /* 16:9 の比率を維持 */
}

.youtube_contents iframe {
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
}



.img_contents{
padding-bottom: 1em;
text-align: center;
}

.img_contents img{
  max-height: 0 auto;
  width: 100%;
  max-width: 950px;
  transition: opacity 0.3s;
}

.img_contents img:hover {
      opacity: 0.5;
  }

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