@charset "UTF-8";
/* CSS Document */
/*-------------------------------------------------------------------------------------
PC用レイアウト（768px以上スクリーン）
----------------------------------------------------------------------------------------*/
/*--------------------------------------------------
共通設定(PC)
-----------------------------------------------------*/
/*body全体の初期スタイル調整*/
body {
  font-size: 62.5%; /*emの計算をしやすくするための定番設定*/
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 600;
  color: #333333;
}
/*リンク文字の設定*/
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: 2.8em;
  font-weight: bold;
  text-align: center;
  font-weight: 800;
  color: #0ca26c;
  letter-spacing: 0em;
}
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-color: #fff;
  font-size: 1.6em; /*=16px*/
}
/*記事(ボディ)エリアの行間*/
.article p {
  line-height: 1.6;
}
/*カラム全体の幅を変更する*/
.top_image_in {
  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: 10px auto;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px 15px;
}
.btn {
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 15px;
}
/*ヘッダーのロゴ*/
.header_logo {
  width: 30%;
  float: left;
  margin: 0em;
}
/*ヘッダーの問い合わせボタン*/
.header_mail {
  width: 40%;
  margin: 0.8em 0em 0em;
}
/*ヘッダーの電話ボタン*/
.header_tel {
  width: 40%;
  margin: 0.8em 0em 0em;
}
/*ヘッダー内の画像が常に幅100%になるように*/
.header_logo img, .header_mail img, .header_tel img {
  width: 100%;
}
.arrow {
  /*  display: inline-block;
  padding: .75em 4em .75em 2em;
  color: #333;
  text-decoration: none;
  text-align: center;
  border: 2px solid #000;
  border-radius: 3em;*/
  position: relative;
  transition: all ease .3s;
}
.arrow::before {
  display: block;
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
  width: 5em;
  height: 5em;
  border-radius: 50%;
  content: "";
}
.arrow::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 1.0vw;
  transform: translateY(-50%) rotate(45deg);
  width: 4vw;
  height: 4vw;
  border-top: 4px solid #000;
  border-right: 4px solid #000;
  content: "";
  animation: move-arrow 1.0s linear infinite;
}
.arrow:hover {
  color: #fff;
  background: #000;
}
@keyframes move-arrow {
  0% {
    right: 3em;
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  100% {
    right: 1em;
    opacity: 0;
  }
}
/*--------------------------------------------------
ファーストビュー設定
-----------------------------------------------------*/
.top_image {
  background-image: url("../images/top_image_bg.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  height: auto;
}
.top_image_in img {
  width: 100%;
}
.top_image2 {
  background-image: url("../images2/top_image_bg.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  height: auto;
}
/*--------------------------------------------------
sectionの設定
-----------------------------------------------------*/
.section_01 {
  padding: 0.5em 0em;
  overflow: hidden;
  width: 950px;
  margin: 0 auto;
}
.section_cta {
  background-color: #fff;
  width: 950px;
  margin: 0 auto;
}
.section_02 {
  background-color: #fff;
  width: 950px;
  margin: 0 auto;
  padding: 100px 0;
}
.section_03 {
  background-color: #fff;
  width: 100%;
  margin: 0 auto;
}
.section_04 {
  background-color: #fff;
  width: 100%;
  margin: 0 auto;
}
.section_05 {
  background-color: #f1f9e9;
  width: 950px;
  margin: 100px auto 0;
  border-radius: 80px;
  padding: 1.5em 1em;
}
.section_06 {
  background-color: #fff;
  width: 950px;
  margin: 50px auto 150px;
}
.section_07 {
  background-color: #f1f9e9;
  width: 100%;
  margin: 0 auto;
}
.section_08 {
  background-color: #eee;
  width: 100%;
  margin: 0 auto;
  padding: 50px 0;
}
.section_09 {
  background-color: #f1f9e9;
  width: 100%;
  margin: 0 auto;
}
.section_10 {
  background-color: #fff;
  width: 100%;
  margin: 0 auto 50px;
}
/*--------------------------------------------------
チェックリスト設定
-----------------------------------------------------*/
ul.checklist {
  border: 1px solid #ccc;
  list-style: none;
  padding: 1em;
}
ul.checklist 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;
}
ul.checklist li:last-child {
  margin-bottom: 0em;
}
/*--------------------------------------------------
テーブル設定
-----------------------------------------------------*/
table {
  width: 100%;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  margin: 1em 0em;
}
th, td {
  padding: 0.5em;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
th {
  background-color: #f0f0f0;
  font-weight: bold;
  text-align: center;
}
td {
  background-color: #fff;
  text-align: left;
}
/*スマホでは行が列になるテーブルタグ*/
.table_style_01 {
  text-align: left;
  vertical-align: middle;
}
/*--------------------------------------------------
フォーム設定
-----------------------------------------------------*/
.mailform {
  background-color: #fff;
  margin-bottom: 1em;
  padding: 1em 0em 1.5em;
  box-shadow: 0px 0px 1px #000;
}
.input {
  padding: 0 2em;
}
.input_style {
  background-color: #FFFBF0;
  width: 100%;
  height: 60px;
  margin-bottom: 0.5em;
  text-align: center;
  font-size: 1.4em;
}
input[type="image"] {
  width: 100%;
}
.caution {
  text-align: center;
  font-size: 0.8em;
  color: #F00;
}
/*--------------------------------------------------
よくある質問
-----------------------------------------------------*/
.box_qa {
  background-color: #efefef;
  padding: 1em;
}
.box_qa_q {
  background-color: #fff;
  padding: 1em 2em 1em 3em;
  border-bottom: 1px solid #ccc;
  font-size: 1.2em;
  font-weight: bold;
  color: #D10003;
}
.box_qa_a {
  background-color: #fff;
  padding: 1em 2em 1em 3em;
}
.box_qa_q p, .box_qa_a p {
  text-indent: -2em;
}
/*--------------------------------------------------
CTAエリア
-----------------------------------------------------*/
.area_cta {
  background-color: #105FA3;
  padding: 1em 3em;
}
.area_cta_inr {
  background-color: #fff;
  padding: 1em 2em;
  overflow: auto;
}
.area_cta_inr_left {
  float: left;
  width: 48%;
}
.area_cta_inr_right {
  float: right;
  width: 48%;
}
/*--------------------------------------------------
フッター部分
-----------------------------------------------------*/
.footer {
  background-color: #0ca26c;
  padding: 2em 0em;
  text-align: center;
  font-size: 1.4em;
  color: #fff;
}
.footer a {
  color: #fff;
}
/*--------------------------------------------------
sec01追加
-----------------------------------------------------*/
.box-t2 {
  margin: 0 0 2em;
  background-image: -moz-linear-gradient(53deg, rgb(85, 204, 124) 0%, rgb(245, 249, 127) 100%);
  background-image: -webkit-linear-gradient(53deg, rgb(85, 204, 124) 0%, rgb(245, 249, 127) 100%);
  background-image: -ms-linear-gradient(53deg, rgb(85, 204, 124) 0%, rgb(245, 249, 127) 100%);
  border-radius: 20px;
  text-align: center;
  font-size: 20px;
  font-weight: 400;
  padding: 3.5vw;
}
.flex-box {
  margin: 20px auto 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px 10px;
  max-width: 950px;
  flex-wrap: wrap
}
.contents-box1 {
  width: 30%;
}
.contents-box1 video {
  width: 100%;
  height: auto;
}
.contents-box2 {
  max-width: 65%;
}
img.s1 {
  display: block;
  margin: 0 auto;
  width: 70%;
}
img.s2 {
  display: block;
  margin: 0 auto;
  width: 100%;
}
img.s3 {
  display: block;
  margin: 0 auto;
  width: 100%;
}
img.s5 {
  display: block;
  margin: 0 auto;
  width: 100%;
}
img.t1 {
  display: block;
  margin: 0 auto;
  width: 90%;
}
img.t1-title {
  display: block;
  margin: 0 auto;
}
@media only screen and (max-width : 768px) {
  .flex-box {
    margin: 20px auto 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px 10px;
    max-width: 950px;
    flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: column;
  }
  .contents-box1 {
    width: 100%;
  }
  .contents-box1 video {
    width: 80%;
    height: auto;
  }
  .contents-box2 {
    max-width: 85%;
  }
  img.s1 {
    display: block;
    margin: 0 auto;
    width: 85%;
  }
}
.box-t1 {
  margin: 0 0 2em;
  background: #fff;
  border: solid 8px #f56221;
  border-radius: 20px;
  text-align: center;
  font-size: 20px;
  font-weight: 400;
}
@media only screen and (max-width : 768px) {
  .box-t1 {
    font-size: 1.2em;
  }
  img.t1-title {
    display: block;
    margin: 0 auto;
    width: 90%;
  }
}
.box-t1 .box-title {
  font-size: 1.2em;
  background: #f56221;
  padding: 6px 0 15px;
  text-align: center;
  color: #FFF;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.box-t1 p {
  letter-spacing: 0.05em;
  padding: 15px 20px;
  margin: 0;
}
.header_inr2 {
  display: none
}
.section_01 h2 {
  position: relative;
}
.section_01 h2:before {
  position: absolute;
  top: -25px;
  left: 30px;
  content: url('../images/deco.png');
}
.sec01-title {
  position: relative;
  padding: 0 0 0 40px;
  font-size: 1.5em;
  margin-bottom: 20px;
}
.sec01-title2 {
  padding: 0 0 0 40px;
  font-size: 1.5em;
  margin-bottom: 20px;
}
.sec01-title:before {
  position: absolute;
  top: 0px;
  left: 0;
  content: url('../images/check1.png');
}
img.b-green {
  font-display: block;
  margin: 0 auto;
  width: 90%;
}
.mushi-box {
  margin: 0 auto 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px 10px;
  max-width: 950px;
}
.mushi-item {
  width: 10%;
}
.x4 {
  font-size: 200%;
}
/*--------------------------------------------------
form追加
-----------------------------------------------------*/
img.form {
  display: block;
  margin: 0 auto;
  width: 100%;
}
img.form-img1 {
  display: block;
  margin: 5% auto 2%;
  width: 90%;
}
img.form-img2 {
  display: block;
  margin: 0 auto;
  width: 95%;
}
img.btn {
  width: 350px;
}
.shiny-btn {
  display: block;
  position: relative;
  overflow: hidden;
  text-decoration: none;
}
.shiny-btn:hover {
  text-decoration: none;
  color: #fff;
}
.shiny-btn::after {
  content: '';
  position: absolute;
  top: -100px;
  left: -100px;
  width: 50px;
  height: 50px;
  background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
  animation-name: shiny;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}
@keyframes shiny {
  0% {
    transform: scale(0) rotate(25deg);
    opacity: 0;
  }
  50% {
    transform: scale(1) rotate(25deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(25deg);
    opacity: 0;
  }
}
.btn-box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px 10px;
  max-width: 900px;
  position: absolute;
  top: 436px;
  left: 50%;
  -webkit-transform: translatex(-50%);
  transform: translatex(-50%);
  width: 75%;
}
.btn-item {
  width: 49%;
}
.cta {
  position: relative;
}
/*--------------------------------------------------
sec02追加
-----------------------------------------------------*/
.sec02-box {
  width: 100%;
  border: 25px solid #0ca26c;
  border-radius: 25px;
}
.bg {
  background: #f1f9e9;
  padding-top: 1.5em;
}
.sec02-title {
  background: #0ca26c;
  font-size: 2.4em;
  text-align: center;
  color: #fff;
  padding-bottom: 20px;
}
.sec02-title.big {
  font-size: 1.5em !important;
  letter-spacing: -0.07em;
}
.sec02-box_inner {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec02-box_item1 {
  width: 100%;
}
.sec02-box_item2 {
  width: auto;
}
.sec02-textbox {
  background: #fff;
  border: 8px solid #eeeeee;
  padding: 2.0em;
  margin: 1.5em;
}
.sec02-textbox p {
  font-size: 1.85em;
  color: #757575;
}
img.sec2-img {
  display: block;
  margin: 0 auto;
  width: 95%;
}
.sec02-text {
  color: #757575;
  margin: 20px 0 30px;
}
.section_02 img.btn {
  width: 330px;
}
.section_02 .btn-box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px 10px;
  max-width: 900px;
  position: absolute;
  top: 412px;
  left: 50%;
  -webkit-transform: translatex(-50%);
  transform: translatex(-50%);
}
.btn-item {
  width: 49%;
}
.section_02 .cta {
  position: relative;
}
/*--------------------------------------------------
sec03追加
-----------------------------------------------------*/
.deco h2 {
  position: relative;
  max-width: 950px;
  margin: 100px auto 0;
}
.deco h2:before {
  position: absolute;
  top: -25px;
  left: 30px;
  content: url('../images/deco.png');
}
.sec03-box {
  display: block;
  margin: 0 auto;
  width: 85%;
  max-width: 800px;
  border-radius: 8px;
  background: #f1f9e9;
  padding: 1.5em;
  position: relative;
}
.sec03-title {
  position: relative;
  padding: 5PX 0 5PX 55px;
  font-size: 1.4em;
  margin-bottom: 20px;
  background: #fff;
  border-radius: 8px;
}
.sec03-title:before {
  position: absolute;
  top: 9px;
  left: 20px;
  content: url('../images/check2.png');
}
img.sec03-1 {
  position: absolute;
  bottom: 0px;
  left: 650px;
}
.bg-green {
  background: #0ca26c;
  width: 100%;
  text-align: center;
  padding-bottom: 1em;
}
.sec03-box2 {
  display: block;
  margin: 1.5em auto;
  max-width: 900px;
  border-radius: 8px;
  background: #fff;
  padding: 3% 4% 3% 300px;
  position: relative;
  text-align: left;
}
.sec03-title2 {
  position: relative;
  padding: 5PX 0 5PX 55px;
  font-size: 1.5em;
  margin-bottom: 20px;
  background: #fff;
  border-radius: 8px;
}
.sec03-title2:before {
  position: absolute;
  top: 7px;
  left: 8px;
  content: url('../images/check3.png');
}
img.sec03-2 {
  position: absolute;
  top: 37px;
  left: -10px;
}
img.sec03-3 {
  margin-top: -20px !important;
}
/*--------------------------------------------------
sec04追加
-----------------------------------------------------*/
.sec04-top {
  text-align: center;
  color: #fff;
  padding: 0.5em 1.0em;
  border-radius: 50px;
  background: #0ca26c;
  display: block;
  margin: 0 auto;
  max-width: 600px;
  font-size: 1.6em;
}
.section_04 {
  position: relative;
  padding: 50px;
}
.section_04::before {
  content: "";
  background: #0ca26c;
  width: 100%;
  height: 74px;
  position: absolute;
  top: -1px;
  clip-path: polygon(50% 100%, 100% 0%, 0% 0%);
  left: 0;
}
img.sec04-img {
  display: block;
  margin: 0 auto;
  max-width: 800px;
}
.sec04-box {
  margin: 30px auto 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px 20px;
  max-width: 950px;
  flex-wrap: wrap;
}
.sec04-item1 {
  width: 62%;
}
.sec04-item1 img {
  width: 100%;
}
.sec04-item2 {
  width: 30%;
  border-radius: 8px;
  border: 4px solid #f84d03;
  padding: 2.5%;
  text-align: left;
  font-weight: 600;
}
.sec04-title {
  font-size: 150%;
  color: #f84d03;
  display: block;
  margin: 0 auto;
  text-align: center;
}
/*--------------------------------------------------
sec05追加
-----------------------------------------------------*/
.sec05-top {
  text-align: center;
  color: #fff;
  padding: 0.1em 0.1em;
  border-radius: 50px;
  background: #0ca26c;
  display: block;
  margin: 0 auto 50px;
  max-width: 450px;
  font-size: 2.8em;
  position: relative;
}
.sec05-top:before {
  position: absolute;
  top: -50px;
  left: -20px;
  content: url('../images/deco.png');
}
.sec05-top .big {
  font-size: 1.2em;
}
.sec05-box {
  margin: 30px auto 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px 20px;
  max-width: 950px;
  flex-wrap: wrap;
}
.sec05-item {
  width: 48%;
}
/*--------------------------------------------------
sec06追加
-----------------------------------------------------*/
.section_06 h2 {
  margin: 100px 0 50px;
}
.sec06-box {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px 20px;
  max-width: 950px;
  flex-wrap: wrap;
  /*margin-bottom:150px;*/
}
.sec06-item {
  width: 48%;
}
img.dot-gr {
  display: block;
  margin: 0 auto;
  width: 50%;
  height: 150px;
  object-fit: cover;
}
/*--------------------------------------------------
sec07追加
-----------------------------------------------------*/
.section_07 h2 {
  display: block;
  margin: 0 auto;
  background-color: #0ca26c;
  color: #fff;
  padding: 0.5em;
}
.sec07-box {
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px 20px;
  max-width: 950px;
  flex-wrap: wrap;
  padding: 5% 0;
}
img.map {
  display: block;
  margin: 0 auto;
  width: 48%;
}
img.map2 {
  display: block;
  margin: 0 auto;
  width: 48%;
}
/*--------------------------------------------------
sec08追加
-----------------------------------------------------*/
.section_08 img.form {
  display: block;
  margin: 3% auto 3%;
  width: 100%;
  max-width: 900px;
}
.sec08-box {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px 20px;
  max-width: 950px;
  flex-wrap: wrap;
  /*margin-bottom:150px;*/
}
.sec08-item {
  width: 23%;
  background-color: #fff;
  border-radius: 8px;
  text-align: center;
  padding: 3% 1%;
}
img.icon {
  display: block;
  margin: 0 auto 20px;
  width: 50%;
}
.section_08 img.btn {
  width: 330px;
}
.section_08 .btn-box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px 10px;
  max-width: 900px;
  position: absolute;
  top: 410px;
  left: 50%;
  -webkit-transform: translatex(-50%);
  transform: translatex(-50%);
}
.section_08 .cta {
  position: relative;
}
/*--------------------------------------------------
sec09追加
-----------------------------------------------------*/
.section_09 h2 {
  display: block;
  margin: 0 auto;
  background-color: #0ca26c;
  color: #fff;
  padding: 0.5em;
}
.voice-wrap {
  display: block;
  margin: 0 auto;
  max-widrh: 950px;
  padding: 5%;
}
.voice {
  display: block;
  margin: 0 auto 5%;
  max-width: 800px;
  background-color: #fff;
  padding: 5%;
  color: #757575;
  border-radius: 8px;
  font-weight: 400;
}
.voice-box {
  margin: 0 auto 5%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px 10px;
  width: 100%;
  flex-wrap: wrap;
}
.voice-item1 {
  width: 15%;
}
.voice-item2 {
  width: 83%;
}
.voice-title {
  font-size: 1.5em;
  color: #0ca26c;
}
img.voice {
  width: 100%;
}
.voice-w {
  display: flex;
  margin-bottom: 5%;
}
.voice-w .voice {
  width: 50%;
  margin: 1%;
}
.voice-w .voice .voice-item1 {
  width: 50%;
}
.voice-w .voice .voice-item2 {
  width: 50%;
}
/*--------------------------------------------------
sec10追加
-----------------------------------------------------*/
.section_10 h2 {
  display: block;
  margin: 0 auto 50px;
  background-color: #0ca26c;
  color: #fff;
  padding: 0.5em;
}
.sec10-box {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px 10px;
  max-width: 950px;
  flex-wrap: wrap;
  /*margin-bottom:150px;*/
}
.sec10-item {
  width: 47%;
  background-color: #fff;
  border-radius: 8px;
  text-align: left;
  padding: 5% 1%;
  border: 5px solid #0ca26c;
  height: 320px;
}
.sec10-title1 {
  position: relative;
  padding: 5PX 0 5PX 70px;
  font-size: 1.0em;
  margin-bottom: 20px;
  background: #fff;
  border-radius: 8px;
  font-weight: 500;
  color: #0ca26c;
  height: 50px;
}
.sec10-title1:before {
  position: absolute;
  content: url('../images/qa-1.png');
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.sec10-title2 {
  position: relative;
  padding: 5PX 0 5PX 70px;
  font-size: 1.0em;
  margin-bottom: 20px;
  background: #fff;
  border-radius: 8px;
  font-weight: 400;
}
.sec10-title2:before {
  position: absolute;
  content: url('../images/qa-2.png');
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.section_10 hr {
  border: none;
  border-bottom: 4px solid #eeeeee;
  margin: 30px 0;
}
/*--------------------------------------------------
sec11追加
-----------------------------------------------------*/
.section_11 h2 {
  display: block;
  margin: 0 auto 3%;
  color: #333333 !important;
  padding: 0.5em;
}
.sec11-body {
  display: block;
  margin: 0 auto;
  max-width: 950px;
  border: 8px solid #eeeeee;
  padding: 3%;
  font-weight: 400;
  color: #757575;
}
.sec11-body2 {
  display: block;
  margin: auto;
  max-width: 950px;
  padding: 3%;
  font-weight: 400;
  color: #5d5d5d;
}
.sec11-body3 {
  display: block;
  margin: 2% auto;
  max-width: 950px;
  border: 8px solid #eeeeee;
  padding: 3%;
  font-weight: 400;
  color: #5d5d5d;
}
.sec11-title {
  border-bottom: 6px solid #f85805;
  padding: 1%;
}
.sec11-text {
  padding: 1%;
  margin-bottom: 2%;
}
.section_11 {
  margin-top: 5%;
  margin-bottom: 10%;
}
.section_11 a:link {
  color: #757575 !important;
}
.pagetop {
  height: 50px;
  width: 50px;
  position: fixed;
  right: 30px;
  bottom: 30px;
  background: #fff;
  border: solid 2px #000;
  border-radius: 50%;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 2;
  cursor: pointer;
}
.pagetop__arrow {
  display: block;
  height: 10px;
  width: 10px;
  border-top: 3px solid #000;
  border-right: 3px solid #000;
  transform: translateY(20%) rotate(-45deg);
}
.floating-banner {
  z-index: 99999;
  bottom: -50px;
  position: fixed;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  top: auto;
}
.banner {
  width: 720px; /* バナーの横幅 */
  padding: 15px 50px;
  /*background: linear-gradient(86.13deg, #7080F7 -3.42%, #3E9ED9 59.59%);/* バナーの背景色 */
  color: #333333; /* バナー内の文字色 */
  font-weight: 400;
  text-align: center;
  font-size: 1.8em;
  /*	background-color:rgba(255,255,255,0.8);*/
  background-color: #fff;
  border: 2px solid #757575;
  border-radius: 20px;
  margin: 0 auto 1%;
}
.banner-box {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px 10px;
  max-width: 950px;
}
img.banner-img {
  width: 100%;
  padding: 0 1%;
}
img.banner-img:hover {
  transform: scale(1.07);
  opacity: 0.9;
}
.floating-banner a {
  text-decoration: none; /* リンクに下線が入らないように */
}
.copy {
  margin: 0 auto 20px;
  line-height: 1.6;
}
.copy span {
  margin-right: 1%;
}
@media screen and (max-width: 768px) {
  .banner-box {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px 5px;
    width: 100%;
  }
  .floating-banner {
    z-index: 99999;
    bottom: 0;
    position: fixed;
    left: 0;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
    top: auto;
    width: 100vw;
  }
  .floating-banner {
    display: inline-block;
    bottom: 5vw;
  }
  .banner {
    width: 100vw;
    padding: 8px;
    margin: 0 auto 1%;
  }
  .sp {
    display: none;
  }
  .copy {
    font-size: 3vw;
    margin: 0 auto 6px;
  }
  .cta-banner {
    height: 28px;
    line-height: 28px;
    font-size: 15px;
  }
}
/*--------------------------------------------------
タブレット追加
-----------------------------------------------------*/
@media only screen and (max-width : 980px) {
  /*--------------------------------------------------
全体レイアウト／背景設定（PC）
-----------------------------------------------------*/
  /*カラム全体の幅を変更する*/
  .top_image_in {
    width: 100%;
    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 {
    width: 100%;
    margin: 10px auto;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px 15px;
  }
  .btn {
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 15px;
  }
  /*ヘッダーのロゴ*/
  .header_logo {
    width: 30%;
    float: left;
    margin: 0em;
    padding-left: 1%;
  }
  /*ヘッダーの問い合わせボタン*/
  .header_mail {
    width: 40%;
    margin: 0.8em 0em 0em;
  }
  /*ヘッダーの電話ボタン*/
  .header_tel {
    width: 40%;
    margin: 0.8em 0em 0em;
  }
  /*ヘッダー内の画像が常に幅100%になるように*/
  .header_logo img, .header_mail img, .header_tel img {
    width: 100%;
  }
  /*--------------------------------------------------
sectionの設定
-----------------------------------------------------*/
  .section_01 {
    padding: 0.5em 3em;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
  }
  .section_cta {
    background-color: #fff;
    width: 100%;
    margin: 0 auto;
  }
  .section_02 {
    background-color: #fff;
    width: 100%;
    margin: 0 auto;
    padding: 100px 0;
  }
  .section_03 {
    background-color: #fff;
    width: 100%;
    margin: 0 auto;
  }
  .section_04 {
    background-color: #fff;
    width: 100%;
    margin: 0 auto;
  }
  .section_05 {
    background-color: #f1f9e9;
    width: 100%;
    margin: 1% auto 0;
    border-radius: 80px;
    padding: 1.5em 1em;
  }
  .section_06 {
    background-color: #fff;
    width: 100%;
    margin: 0.5em auto 10.5%;
  }
  .section_07 {
    background-color: #f1f9e9;
    width: 100%;
    margin: 0 auto;
  }
  .section_08 {
    background-color: #eee;
    width: 100%;
    margin: 0 auto;
    padding: 0.5em 0 10%;
  }
  .section_09 {
    background-color: #f1f9e9;
    width: 100%;
    margin: 0 auto;
  }
  .section_10 {
    background-color: #fff;
    width: 100%;
    margin: 0 auto 0.5em;
  }
  /*--------------------------------------------------
sec01追加
-----------------------------------------------------*/
  .section_01 h2 {
    position: relative;
  }
  .section_01 h2:before {
    position: absolute;
    top: -17%;
    left: 12%;
    content: url('../images/deco.png');
  }
  .sec01-title {
    position: relative;
    padding: 0 0 0 40px;
    font-size: 1.5em;
    margin-bottom: 20px;
  }
  .sec01-title2 {
    padding: 0 0 0 40px;
    font-size: 1.5em;
    margin-bottom: 20px;
  }
  .sec01-title:before {
    position: absolute;
    top: 0px;
    left: 0;
    content: url('../images/check1.png');
  }
  img.b-green {
    font-display: block;
    margin: 0 auto;
    width: 90%;
  }
  .mushi-box {
    margin: 0 auto 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px 10px;
    width: 100%;
    flex-wrap: wrap;
  }
  .mushi-item {
    width: 15%;
  }
  /*--------------------------------------------------
form追加
-----------------------------------------------------*/
  img.btn {
    width: 100%;
  }
  .btn-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px 10px;
    width: 75%;
    position: absolute;
    top: 34%;
    left: 50%;
    -webkit-transform: translatex(-50%);
    transform: translatex(-50%);
  }
  /*--------------------------------------------------
sec02追加
-----------------------------------------------------*/
  img.sec02-img {
    width: 100%;
  }
  .sec02-box {
    width: 100%;
    border: 25px solid #0ca26c;
    border-radius: 25px;
  }
  .bg {
    background: #f1f9e9;
    padding-top: 1.5em;
  }
  .sec02-title {
    background: #0ca26c;
    font-size: 2.4em;
    text-align: center;
    color: #fff;
    padding-bottom: 20px;
  }
  .sec02-title.big {
    font-size: 1.5em !important;
    letter-spacing: -0.07em;
  }
  .sec02-box_inner {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .sec02-box_item1 {
    width: 100%;
  }
  .sec02-box_item2 {
    width: auto;
  }
  .sec02-textbox {
    background: #fff;
    border: 8px solid #eeeeee;
    padding: 2.0em;
    margin: 1.5em;
  }
  .sec02-textbox p {
    font-size: 1.5em;
    color: #757575;
  }
  img.sec2-img {
    display: block;
    margin: 0 auto;
    width: 95%;
  }
  .sec02-text {
    color: #757575;
    margin: 20px 0 30px;
  }
  .section_02 img.btn {
    width: 100%;
  }
  .section_02 .btn-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px 10px;
    width: 75%;
    position: absolute;
    top: 60%;
    left: 50%;
    -webkit-transform: translatex(-50%);
    transform: translatex(-50%);
  }
  .section_02 .cta {
    position: relative;
  }
  .section_02 img.form {
    display: block;
    margin: 0 auto;
    width: 100%;
  }
  /*--------------------------------------------------
sec03追加
-----------------------------------------------------*/
  .deco h2 {
    position: relative;
    max-width: 100%;
    margin: 1em auto 0;
  }
  .deco h2:before {
    position: absolute;
    top: -10%;
    left: 25%;
    content: url('../images/deco.png');
  }
  .sec03-box {
    display: block;
    margin: 0 auto;
    width: 85%;
    max-width: 800px;
    border-radius: 8px;
    background: #f1f9e9;
    padding: 1.5em;
    position: relative;
  }
  .sec03-title {
    position: relative;
    padding: 5PX 0 5PX 55px;
    font-size: 1.4em;
    margin-bottom: 20px;
    background: #fff;
    border-radius: 8px;
  }
  .sec03-title:before {
    position: absolute;
    top: 9px;
    left: 20px;
    content: url('../images/check2.png');
  }
  img.sec03-1 {
    position: absolute;
    bottom: -13%;
    left: 79%;
    width: 26%;
    padding-bottom: 3%;
  }
  .bg-green {
    background: #0ca26c;
    width: 100%;
    text-align: center;
    padding-bottom: 3%;
  }
  .sec03-box2 {
    display: block;
    margin: 1.5em auto;
    max-width: 96%;
    border-radius: 8px;
    background: #fff;
    padding: 3% 4% 3% 20%;
    position: relative;
    text-align: left;
  }
  .sec03-title2 {
    position: relative;
    padding: 5PX 0 5PX 55px;
    font-size: 1.5em;
    margin-bottom: 20px;
    background: #fff;
    border-radius: 8px;
  }
  .sec03-title2:before {
    position: absolute;
    top: 7px;
    left: 8px;
    content: url('../images/check3.png');
  }
  img.sec03-2 {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 24%;
  }
  img.sec03-3 {
    margin-top: -20px !important;
  }
  /*--------------------------------------------------
sec04追加
-----------------------------------------------------*/
  .sec04-top {
    text-align: center;
    color: #fff;
    padding: 0.5em 1.0em;
    border-radius: 50px;
    background: #0ca26c;
    display: block;
    margin: 0 auto;
    max-width: 600px;
    font-size: 1.6em;
  }
  .section_04 {
    position: relative;
    padding: 50px;
  }
  .section_04::before {
    content: "";
    background: #0ca26c;
    width: 100%;
    height: 70px;
    position: absolute;
    top: -1px;
    clip-path: polygon(50% 100%, 100% 0%, 0% 0%);
    left: 0;
  }
  img.sec04-img {
    display: block;
    margin: 0 auto;
    width: 100%;
  }
  /*--------------------------------------------------
sec05追加
-----------------------------------------------------*/
  .sec05-top {
    text-align: center;
    color: #fff;
    padding: 0.1em 0.1em;
    border-radius: 50px;
    background: #0ca26c;
    display: block;
    margin: 0 auto 50px;
    max-width: 450px;
    font-size: 2.8em;
    position: relative;
  }
  .sec05-top:before {
    position: absolute;
    top: -50px;
    left: -20px;
    content: url('../images/deco.png');
  }
  .sec05-top .big {
    font-size: 1.2em;
  }
  .sec05-box {
    margin: 30px auto 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px 20px;
    width: 100%;
    flex-wrap: wrap;
  }
  .sec05-item {
    width: 48%;
  }
  img.point {
    width: 100%;
  }
  /*--------------------------------------------------
sec06追加
-----------------------------------------------------*/
  .section_06 h2 {
    margin: 100px 0 50px;
  }
  .sec06-box {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px 20px;
    width: 100%;
    flex-wrap: wrap;
    /*margin-bottom:150px;*/
  }
  .sec06-item {
    width: 48%;
  }
  img.dot-gr {
    display: block;
    margin: 0 auto;
    width: 50%;
    height: 150px;
    object-fit: cover;
  }
  /*--------------------------------------------------
sec08追加
-----------------------------------------------------*/
  .section_08 img.form {
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 900px;
  }
  .sec08-box {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px 20px;
    width: 100%;
    flex-wrap: wrap;
    /*margin-bottom:150px;*/
  }
  .sec08-item {
    width: 35%;
    background-color: #fff;
    border-radius: 8px;
    text-align: center;
    padding: 3% 1%;
  }
  img.icon {
    display: block;
    margin: 0 auto 20px;
    width: 50%;
  }
  .section_08 img.btn {
    width: 100%;
  }
  .section_08 .btn-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px 10px;
    width: 75%;
    position: absolute;
    top: 60%;
    left: 50%;
    -webkit-transform: translatex(-50%);
    transform: translatex(-50%);
  }
  .section_08 .cta {
    position: relative;
  }
}