@charset "UTF-8";
/* CSS Document */
@media only screen and (max-width : 768px) {
  /*-------------------------------------------------------------------------------------
スマホ用レイアウト（768px以下スクリーン）
----------------------------------------------------------------------------------------*/
  /*--------------------------------------------------
共通設定(スマホ)
-----------------------------------------------------*/
  /*body全体の初期スタイル調整*/
  body {
    width: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
  }
  /*--------------------------------------------------
見出しタグ設定（スマホ）
-----------------------------------------------------*/
  h2 {
    margin: 0.5em 0em;
    font-size: 1.6em;
    font-weight: bold;
    text-align: center;
  }
  h3 {
    margin: 0.5em 0em;
    padding: 0.3em 0.6em;
    font-size: 1.4em;
    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.2em;
    border: 1px solid #ccc;
    font-weight: bold;
  }
  h5 {
    margin: 0.5em 0em;
    padding: 0.1em;
    font-size: 1em;
    font-weight: bold;
    border-bottom: 1px dotted #ccc;
  }
  /*--------------------------------------------------
全体レイアウト／背景設定（スマホ）
-----------------------------------------------------*/
  /*全体エリア（全体背景を設定するにはここ）*/
  .main {
    background-color: #f2f2f2;
  }
  /*記事(ボディ)エリア*/
  .article {
    background-color: #fff;
    border-left: none;
    border-right: none;
    font-size: 1.6em; /*=16px*/
  }
  /*記事(ボディ)エリアの行間*/
  .article p {
    line-height: 1.6;
  }
  /*カラム全体の幅を変更する*/
  .article, .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 {
    max-width: 100%;
    margin: 0 auto;
    overflow: hidden;
  }
  /*ヘッダーのロゴ*/
  .header_logo {
    width: 25%;
    float: left;
    margin: 0em;
  }
  /*ヘッダーの問い合わせボタン*/
  .header_mail {
    width: 30%;
    float: right;
    margin: 0.5em 0em 0em;
  }
  /*ヘッダーの電話ボタン*/
  .header_tel {
    width: 35%;
    float: right;
    margin: 0.7em 0.5em 0em;
  }
  /*--------------------------------------------------
ファーストビュー設定
-----------------------------------------------------*/
  .top_image {
    background-image: none;
  }
  .top_image_in img {
    width: 100%;
  }
  /*--------------------------------------------------
sectionの設定
-----------------------------------------------------*/
  .seciton_01 {
    padding: 0.5em 0.5em;
  }
  .section_02 {
    background-color: #FFFEF0;
    padding: 2% 1%;
  }
  /*--------------------------------------------------
チェックリスト設定
-----------------------------------------------------*/
  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: 7%;
    padding-left: 2em;
    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 tr, .table_style_01 th, .table_style_01 td {
    display: block;
  }
  .table_style_01 th, .table_style_01 td {
    width: 100%;
  }
  /*--------------------------------------------------
フォーム設定
-----------------------------------------------------*/
  .mailform {
    background-color: #fff;
    margin-bottom: 1em;
    padding: 1em 0em 1.5em;
    box-shadow: 0px 0px 1px #000;
  }
  .input {
    padding: 0 1em;
  }
  .input_style {
    background-color: #FFFBF0;
    width: 100%;
    height: 60px;
    margin-bottom: 0.5em;
    text-align: center;
    font-size: 1.2em;
  }
  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 1em 1em 1em;
    border-bottom: 1px solid #ccc;
    font-size: 1.2em;
    font-weight: bold;
    color: #D10003;
  }
  .box_qa_a {
    background-color: #fff;
    padding: 1em 1em 1em 1em;
  }
  .box_qa_q p, .box_qa_a p {
    text-indent: 0em;
  }
  /*--------------------------------------------------
CTAエリア
-----------------------------------------------------*/
  .area_cta {
    background-color: #105FA3;
    padding: 1em 1em;
  }
  .area_cta_inr {
    background-color: #fff;
    padding: 1em 1em;
    overflow: auto;
  }
  .area_cta_inr_left {
    float: none;
    width: 100%;
  }
  .area_cta_inr_right {
    float: none;
    width: 100%;
    margin-top: 1em;
  }
  /*--------------------------------------------------
フッター部分
-----------------------------------------------------*/
  .footer {
    background-color: #0ca26c;
    padding: 2em 0em;
    text-align: center;
    font-size: 1.2em;
    color: #fff;
  }
  .footer a {
    color: #fff;
  }
  .reverse {
    flex-direction: column-reverse !important
  }
  /*--------------------------------------------------
追加CSS設定
-----------------------------------------------------*/
  .article {
    background-color: #fff;
    border-left: none;
    border-right: none;
    font-size: 1.4em;
  }
  .section_01 {
    padding: 0.5% 3%;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
  }
  .sec01-title {
    position: relative;
    padding: 0 0 0 40px;
    font-size: 1.2em;
    margin-bottom: 20px;
  }
  .sec01-title2 {
    padding: 0 0 0 40px;
    font-size: 1.2em;
    margin-bottom: 20px;
  }
  h2 {
    margin: 0.5em 0em;
    font-size: 1.6em;
    font-weight: bold;
    text-align: center;
  }
  .section_01 h2:before {
    position: absolute;
    top: -21%;
    left: 16%;
    content: url(../images/deco-sp.png);
  }
  img.mushi {
    width: 100%;
  }
  .mushi-item {
    width: 15%;
  }
  .sec02-title {
    background: #0ca26c;
    font-size: 1.4em;
    text-align: center;
    color: #fff;
    padding-bottom: 20px;
  }
  .sec02-box {
    width: 100%;
    border: 3vw solid #0ca26c;
    border-radius: 25px;
  }
  .bg {
    background: #f1f9e9;
    padding-top: 1.5%;
  }
  .sec02-textbox {
    background: #fff;
    border: 8px solid #eeeeee;
    padding: 2.0%;
    margin: 1.5%;
  }
  .sec02-textbox p {
    font-size: 1.1em;
    color: #757575;
  }
  .section_02 .green {
    color: #0ca26c !important;
    font-size: 1.4em;
  }
  .sec03-box {
    display: block;
    margin: 0 auto;
    width: 97%;
    max-width: 800px;
    border-radius: 8px;
    background: #f1f9e9;
    padding: 6% 3%;
    position: relative;
  }
  .sec03-title {
    position: relative;
    padding: 5PX 0 5PX 55px;
    font-size: 1.1em;
    margin-bottom: 20px;
    background: #fff;
    border-radius: 8px;
  }
  img.sec03-1 {
    position: absolute;
    bottom: -11%;
    left: 74%;
    width: 26%;
    overflow: hidden;
  }
  .sec03-title:before {
    position: absolute;
    top: 9px;
    left: 14px;
    content: url(../images/check2.png);
  }
  .deco h2:before {
    position: absolute;
    top: -10%;
    left: 25%;
    content: url(../images/deco-sp.png);
  }
  .sec03-box2 {
    display: block;
    margin: 1.5em auto;
    max-width: 96%;
    border-radius: 8px;
    background: #fff;
    padding: 3% 4% 3% 4%;
    position: relative;
    text-align: left;
  }
  .sec03-title2 {
    position: relative;
    padding: 5PX 0 5PX 55px;
    font-size: 1.3em;
    margin-bottom: 20px;
    background: #fff;
    border-radius: 8px;
   
  }
  img.sec03-2 {
    position: absolute;
    top: 0%;
    left: -3%;
    width: 23%;
    overflow: hidden;
    margin: -26% 0;
  }
  .bg-green {
    background: #0ca26c;
    width: 100%;
    text-align: center;
    padding-bottom: 2%;
  }
  .section_04::before {
    content: "";
    background: #0ca26c;
    width: 100%;
    height: 50px;
    position: absolute;
    top: -1px;
    clip-path: polygon(50% 100%, 100% 0%, 0% 0%);
    left: 0;
  }
  .sec04-top {
    text-align: center;
    color: #fff;
    padding: 0.5em 1em;
    border-radius: 50px;
    background: #0ca26c;
    display: block;
    margin: 0 auto;
    max-width: 600px;
    font-size: 1.2em;
  }
  .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: 280px;
    font-size: 2.0em;
    position: relative;
  }
  .sec05-top:before {
    position: absolute;
    top: -45%;
    left: -6%;
    content: url(../images/deco-sp.png);
  }
  .sec05-item {
    width: 94%;
  }
  .section_06 h2 {
    margin: 10% 0 5%;
  }
  .sec06-item {
    width: 88%;
  }
  img.dot-gr {
    display: block;
    margin: 0 auto;
    width: 50%;
    height: 30px;
    object-fit: cover;
  }
  .sec08-item {
    width: 45%;
    background-color: #fff;
    border-radius: 8px;
    text-align: center;
    padding: 3% 1%;
  }
  .sec08-box {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px 15px;
    width: 100%;
    flex-wrap: wrap;
    margin-bottom: 1.5%;
  }
  .sec10-item {
    width: 90%;
    background-color: #fff;
    border-radius: 8px;
    text-align: left;
    padding: 5% 1%;
    border: 5px solid #0ca26c;
    height: 50%;
  }
  .sec10-title1:before {
    position: absolute;
    content: url(../images/qa-1-sp.png);
    top: 50%;
    left: 2%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .sec10-title1 {
    position: relative;
    padding: 0PX 4% 0PX 15%;
    font-size: 1.2em;
    margin-bottom: 19px;
    background: #fff;
    border-radius: 8px;
    font-weight: 500;
    color: #0ca26c;
    height: auto;
  }
  .sec10-title2:before {
    position: absolute;
    content: url(../images/qa-2-sp.png);
    top: 50%;
    left: 2%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .sec10-title2 {
    position: relative;
    padding: 0PX 4% 0PX 15%;
    font-size: 1.2em;
    margin-bottom: 20px;
    background: #fff;
    border-radius: 8px;
    font-weight: 400;
  }
  .sec10-box {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px 10px;
    max-width: 950px;
    flex-wrap: wrap;
    margin-bottom: 6.5%;
  }
  img.form {
    display: block;
    margin: 0 auto;
    width: 100%;
    padding-right: 0px;
  }
.btn-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px 10px;
    width: 73%;
    position: absolute;
    top: 31%;
    left: 50%;
    -webkit-transform: translatex(-50%);
    transform: translatex(-50%);
    flex-wrap: wrap;
}
  .section_02 .btn-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px 10px;
    width: 75%;
    position: absolute;
    top: 45%;
    left: 50%;
    -webkit-transform: translatex(-50%);
    transform: translatex(-50%);
  }
  .section_08 img.form {
    display: block;
    margin: 0 auto;
    width: 90%;
    padding-right: 0px;
    max-width: 800px;
  }
  .section_08 .btn-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px 10px;
    width: 68%;
    position: absolute;
    top: 44%;
    left: 50%;
    -webkit-transform: translatex(-50%);
    transform: translatex(-50%);
  }
  .section_08 .big {
    font-size: 1.1em !important;
  }
  .section_10 hr {
    border: none;
    border-bottom: 4px solid #eeeeee;
    margin: 20px 0;
  }
  .header_inr {
    max-width: 100%;
    margin: 0 auto;
    overflow: hidden;
	  display: none
  }
	 .header_inr2 {
    max-width: 100%;
    margin: 0 auto;
    overflow: hidden;
		    display: flex!important;
    justify-content: space-between!important;
    align-items: center;
		 padding:2%;
  }
  .header-box {
    display: flex;
    gap: 1%;
    width: 35%;
  }
		 .header-box3 {
    display: flex;
    width: 40%;
  }
	 .header-box2 {
    display: flex;
    gap: 5%;
    width: 30%;
  }
	img.h-0 {
    display: block;
    margin: 0 auto;
    width: 75%;
  }
  img.h-1 {
    display: block;
    margin: 0 auto;
    width: 100%;
  }
  img.h2 {
    display: block;
    margin: 0 auto;
    width: 100%;
  }
  img.h-3 {
    display: block;
    margin: 0 auto;
    width: 92%;
  }
  .voice-item1 {
    width: 30%;
  }
  .voice-item2 {
    width: 65%;
  }
  .voice-title {
    font-size: 1.2em;
    color: #0ca26c;
  }
  img.map2 {
    display: block;
    margin: 0 auto;
    width: 90%;
  }
	.section_04 {
    position: relative;
    padding: 7% 4% 2%;
}
}
@media only screen and (max-width: 350px) {
  .section_01 h2:before {
    display: none;
    position: absolute;
    top: -21%;
    left: 10%;
    content: url(../images/deco-sp.png);
  }
}