@charset "UTF-8";
html {font-size: 62.5%; }
html body {
    color: #333;
    font-family: 'Noto Serif JP', YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    font-size: 1.6rem;
    margin: 0 auto;
    -webkit-text-size-adjust: 100%; }
* html body {overflow: hidden; }
/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%; }
a img {border: none; }
a {
  color:#038478;
  text-decoration: none;}
a:hover {
  color:#038478;
  text-decoration: underline; }
a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )"; }
p {line-height: 1.6; }
img{vertical-align: bottom;}
/* -----------------------------------------
 layout
-------------------------------------------- */
header{
    background: url("../images/mv_bg_sp.jpg") no-repeat 50% 0% /100% auto;
}
body.page-template-page-lp_form header{background:none;}
.headarea{
    margin: 0 auto;
    padding:10px;
    display: flex;
    height: 22vh;
}
.headarea .logo{
    padding: 0;
    margin: 0;
    line-height: 1;
}
.headarea .logo img{max-width:150px;}
/* ------------------------contents */
#contents {
    margin: 0 auto;
}
/* -----------------------------------
common
--------------------------------------*/
br.sp{ display:block;}
br.pc{display:none;}
strong{
    background:linear-gradient(transparent 0%, #F2DC7E 100%);
    font-weight: bold;
    color:333;
    text-shadow: 1px 1px 2px #fff;
}
b{
    font-weight:bold;
    color:#FD8500;
}
/* ---------------------------------------
nav
-----------------------------------------*/
.nav{
  display: none;
}
nav.gnav{
  display: flex;
  margin-top: 10px;
  justify-content: center;
}
.hamburger {
    display : block;
    position: fixed;
    z-index : 3;
    right : 13px;
    top   :4px;
    width : 42px;
    height: 42px;
    cursor: pointer;
    text-align: center;
}
.hamburger span {
    display : block;
    position: absolute;
    width   : 40px;
    height  : 3px ;
    left    : 6px;
    background : #666;
    font-weight: bold;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {top: 10px;}
.hamburger span:nth-child(2) {top: 24px;}
.hamburger span:nth-child(3) {top: 38px;}
.hamburger.active span:nth-child(1) {
    top : 16px;
    left: 6px;
    background :#666;
    -webkit-transform: rotate(-45deg);
    -moz-transform   : rotate(-45deg);
    transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
    top: 16px;
    background :#666;
    -webkit-transform: rotate(45deg);
    -moz-transform   : rotate(45deg);
    transform        : rotate(45deg);
}
nav.globalMenuSp {
    position: fixed;
    z-index : 2;
    top  : 0;
    left : 0;
    color: #333;
    background: rgba(255,255,255,0.85);
    text-align: center;
    width: 100%;
    height: 0;
    overflow: hidden;
    background-size: cover;
    opacity: 0;
    transition: opacity .6s ease, visibility .6s ease;
}
nav.globalMenuSp ul {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    margin-top: 50px;
    display: block;
}
nav.globalMenuSp ul li {
    border-bottom: 1px dotted #666;
    list-style-type: none;
    padding: 0;
    width: 100%;
    transition: .4s all;
}
nav.globalMenuSp ul li:last-child {padding-bottom: 0;}
nav.globalMenuSp ul li:hover{background-color:rgba(28,28,28,1.00)}

nav.globalMenuSp ul li a {
    display: block;
    color: #333;
    padding: 1em 0;
    text-decoration :none;
}
nav.globalMenuSp ul li a:hover {
    color:#EFEFEF;
}
nav.globalMenuSp ul li:last-child a{
    background-color:rgba(51,51,51,1.00);
    color:#fff;
}
nav.globalMenuSp ul li:last-child a::after{
    font-family: "Font Awesome 5 Free";
    content: '\f1d8';
    padding-left:10px;
}
nav.globalMenuSp.active {
    opacity: 100;
    height: 100vh;
    overflow: scroll;
}
/* ---------------------------------------
main visual
-----------------------------------------*/
.mv{
    background-color: #02472B;
    color:#fff;
    padding:40px 12% 4%;
}
.mv h2{
    margin:0 0 30px;
    text-align: center;
}
.mv h2 img{
    width:100%;
}
.mv div{
    margin-bottom:30px;
    text-align: center;
}
.mv div img{
    width:100%;
}
.mv h3{
    border-top:1px solid #F4E589;
    border-bottom:1px solid #F4E589;
    margin:0;
    text-align: center;
    font-weight: normal;
    font-size:2.2rem;
    padding:20px 0;
}
.mv p.memo{
    text-align: right;
    font-size:1rem;
    color:#F4E589;
    margin-bottom:0;
}

/* ---------------------------------------
section
-----------------------------------------*/
section{
    padding:4%;
    box-sizing: border-box;
}
section#problem{background-color:#E8EFE9;}
section#choice{background-color: #F9F2E5;}
section#feature{background-color: #EDEDED;}
section#case{background-color: #E8EFE9;}
/* ---------------------------------------
titile
-----------------------------------------*/
.ttl_main{
    text-align: center;
    font-size:2.4rem;
    margin:40px auto;
    padding:10px 0 0 10px;
}
.ttl_main span{
    font-weight: normal;
    font-size:80%;
    display: block;
    z-index: 2;
    position: relative;
}
.ttl_main b{
    position: relative;
    z-index: 1;
    color:#333;
}
.ttl_main b::before{
    content:"";
    background:url("../images/ttl_bg.png") no-repeat 0% 0% ;
    background-size: 53px auto;
    width:58px;
    height: 53px;
    display: inline-block;
    position: absolute;
    top:-5px;
    left:-21px;
    z-index: -1;
}
.ttl_second{
    font-size: 2.2rem;
    text-align: center;
}
.ttl_second span{
    font-size:80%;
}
.ttl_third{
    text-align: center;
}
/* ---------------------------------------
btn
-----------------------------------------*/
.btn_area{
    text-align: center;
}
.btn_area h3{
    font-size:2.4rem;
    line-height: 1.2;
}
.btn_area h3 span{
    font-size:78%;
    font-weight: normal;
}
.btn_area .btn_type{
    border:1px solid #006837;
    padding:20px
}
.btn_area .btn_type p{
    margin: 0;
    padding: 0;
    color:#02472B;
}
.btn_type ul.list_btn{
    margin:0;
    padding:0;
    list-style: none;
}
.btn_type ul.list_btn li{
    margin-bottom:0;
}
.btn_type ul.list_btn li p{
    margin:0;
    padding:0;
}
.btn_type ul.list_btn li a{
    color:#fff;
}
.btn_type ul.list_btn a[href*="tel:"] {
    color:#02472B;
    text-decoration: underline;
}
.btn_type ul.list_btn li:first-of-type a::before{
    content:"";
    background: url("../images/icon_tel_gr.png") no-repeat left center;
    background-size: 25px;
    width:25px;
    height: 25px;
    display: inline-block;
    margin-right:5px;
}
.btn_type ul.list_btn li{
    margin-bottom:10px;
}
.btn_type ul.list_btn li:last-of-type{
    margin-bottom:0;
}
.btn_type ul.list_btn li:first-of-type a{
    font-size:3rem;
    font-weight: bold;
}
.btn_type ul.list_btn li a:hover{
    opacity: 0.8;
    text-decoration: none;
}
.btn_type ul.list_btn li p{
    color:#333;
    font-size:80%;
}
.btn_type ul.list_btn .mail a{
    color:#fff;
    display: block;
    padding:20px;
    position: relative;
}
.btn_type ul.list_btn .mail a{background-color: #02472B;}
.btn_type ul.list_btn .mail a::before{
    content:"";
    background: url("../images/icon_mail_w.png") no-repeat left top;
    background-size: 29px;
    width:29px;
    height: 23px;
    display: inline-block;
    position: absolute;
    top:30%;
    left:43px;
}.btn_type ul.list_btn .mail a span{
    margin-left: 3rem;
}
/* ---------------------------------------
worries
-----------------------------------------*/
ul.list_worries{
    margin:0;
    list-style: none;
    border:5px solid #E5D9AA;
    padding: 15px;
    box-sizing: border-box;
}
ul.list_worries li::before{
    content:"";
    background: url("../images/icon_check_gr.png") no-repeat left top;
    background-size: 20px;
    width:20px;
    height: 17px;
    display:inline-block; 
    margin-right:5px;
}
ul.list_worries li{
    margin-bottom:15px;
    padding-left:1em;
    text-indent: -1em;
}
ul.list_worries li:last-of-type{
    margin-bottom:0;
}
ul.list_possible{
    margin:30px 0;
    padding:0;
    list-style: none;
    display:flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap:0;
}
ul.list_possible li{
    width:25%;
}
ul.list_possible li img{
    width:100%;
}
ul.list_possible li:last-of-type{
    margin-top: 15px;
    text-align: center;
    font-size:2rem;
    font-weight: bold;
    width:100%;
}
ul.list_possible li:last-of-type span{
    display: block;
    font-weight: normal;
    font-size:60%;
}
/* ---------------------------------------
problem
-----------------------------------------*/
ul.list_problem_img{
    margin:0;
    padding:0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
ul.list_problem_img li{
    text-align: center;
    width:33%;
}
ul.list_problem_img li img{width:100%;}
.problem_txt{
    text-align: center;
    font-size:1.9rem;
}
ul.list_problem{
    margin:0 0 60px;
    list-style: none;
    border:5px solid #FBB03B;
    padding:15px;
    background-color: #fff;
}
ul.list_problem li{
    padding-left:1em;
    text-indent: -1em;
    margin-bottom:15px;
}
ul.list_problem li:last-of-type{
    margin-bottom:0;
}
ul.list_problem li::before{
    content:"";
    display: inline-block;
    background: url("../images/icon_check_or.png") no-repeat;
    background-size: 20px;
    width:20px;
    height: 17px;
    margin-right:5px;
}
/* ---------------------------------------

-----------------------------------------*/
.lead_txt{}
.img_mtg {
    text-align: center;
}
.img_mtg img{max-width:227px;}
.scroll{
    overflow: auto;
    margin-bottom:60px;
}
.scroll p{}
table.table_comparison{
    border-top:1px solid #02472B;
    border-left:1px solid #02472B;
    width:100%;
}
table.table_comparison th,
table.table_comparison td{
    border-bottom:1px solid #02472B;
    border-right:1px solid #02472B;
    padding:8px;
    white-space: nowrap;
}
table.table_comparison th{
    position: sticky;
    left:0;
}
table.table_comparison td{
    text-align: center;
}
table.table_comparison td span{}
table.table_comparison .st_gr{
    background-color:#02472B;
    color:#fff;
}
table.table_comparison .gy{
    background-color: #CCCCCC;
    color:#333;
}
table.table_comparison .lt_gr{
    background-color:#C0D2CD;
    color:#02472B;
    font-weight: normal;
}
table.table_comparison .ok{
    background: url("../images/icon_ok.png") no-repeat 50% 50%;
    background-size: 40px auto;
    text-shadow: 1px 1px 2px #fff;
}
table.table_comparison .out{
    background: url("../images/icon_non.png") no-repeat 50% 50%;
    background-size: 40px auto;
    text-shadow: 1px 1px 2px #fff;
}
table.table_comparison .triangle{
    background: url("../images/icon_triangle.png") no-repeat 50% 50%;
    background-size: 55px auto;
    text-shadow: 1px 1px 2px #fff;
}
/* ---------------------------------------
choice
-----------------------------------------*/
.vs{
    text-align: center;
    margin-bottom:30px;
}
.vs span{
    display:block;
}
.vs .general{
    background-color: #1A1A1A;
    color:#fff;
    padding:30px;
}
.vs .vsmark{
    font-weight: bold;
    padding:10px;
    font-size:1.8rem;
}
.vs .newtype{
    background-color: #02472B;
    font-weight: bold;
    color:#fff;
    font-size:1.8rem;
    padding:10px;
}
.vs .newtype span{
    font-weight:normal;
    font-size:70%;
}
.about_image{
    margin:30px auto;
    text-align: center;
}
.ttl_merit{
    text-align: center;
}
.about_image img{
    max-width:1023px;
    width:100%;
}
ul.list_merit{
    margin:0 0 60px;
    padding:0;
    list-style: none;
    display: flex;
    justify-content: center;
    gap:0 20px;
}
ul.list_merit li{}
ul.list_merit li img{width:100%;}
ul.list_about{
    margin:0;
    padding:0;
    list-style: none;
}
ul.list_about li{
    border:1px solid #E5D9AA;
    background:#fff url("../images/list_merit_bg.png") no-repeat right bottom;
    background-size: 60px;
    padding: 15px;
    margin-bottom: 20px;
}
ul.list_about li:last-of-type{
    margin-bottom:0;
}
ul.list_about li h4{
    color:#02472B;
    margin:0 0 12px;
    padding:0;
}
ul.list_about li p{
    margin:0;
    padding:0;
}
p.memo{
    lihe-height:1.2;
    font-size:90%;
    color:#666;
    margin-bottom:60px;
}
.list_recommend{}
.newtype_area{
    margin-bottom:30px;
}
.newtype_area h4{
    background-color: #02472B;
    color:#fff;
    border-radius: 3px 3px 0 0;
    text-align: center;
    margin:0;
    padding:10px;
    font-weight: normal;
}
.newtype_area h4 span{}
.newtype_area ul{
    margin:0;
    padding:15px;
    list-style: none;
    background-color: #fff;
    background:#fff url("../images/recommend_type_a.png") no-repeat 98% 100%;
    background-size:100px;
}
.newtype_area ul li{
    font-weight: bold;
    margin-bottom:8px;
}
.newtype_area ul li::before{
    content:"";
    background: url("../images/icon_check_gr.png") no-repeat left 50%;
    background-size: 20px;
    width:20px;
    height: 17px;
    display:inline-block; 
    margin-right:5px;
}
.general_area{}
.general_area h4{
    background-color: #1A1A1A;
    color:#fff;
    border-radius: 3px 3px 0 0;
    text-align: center;
    margin:0;
    padding:25px;
    font-weight: normal;
}
.general_area ul{
    margin:0 0 60px;
    padding:15px;
    list-style: none;
    background-color: #fff;
    background:#fff url("../images/recommend_type_b.png") no-repeat 98% 100%;
    background-size:100px;
}
.general_area ul li{
    font-weight: bold;
    margin-bottom:8px;
}
.general_area ul li::before{
    content:"";
    background: url("../images/icon_check_ye.png") no-repeat left 50%;
    background-size: 20px;
    width:20px;
    height: 17px;
    display:inline-block; 
    margin-right:5px;
}
/* ---------------------------------------
cause
-----------------------------------------*/
ul.list_cause{
    margin:0 0 60px;
    padding:0;
    list-style: none;
}
ul.list_cause li{
    border:4px solid #E5D9AA;
    padding:15px;
    margin-bottom:20px;
}
ul.list_cause li > div{
    margin: 0 auto;
    text-align: center;
}
ul.list_cause li img{max-width:118px;}
ul.list_cause li h4{
    color:#02472B;
    text-align:center;
    padding:0;
    font-size:2rem;
    margin:15px;
}
ul.list_cause li p{
    margin:0;
    padding:0;
}
.ttl_more{
    text-align: center;
    font-size:2.4rem;
}
.map_image{
    text-align:center;
    margin:30px auto;
    width:80%;
}
.map_image img{width:100%;}
.more_text h4{
    color:#02472B;
    margin-bottom:10px;
    font-size:1.8rem;
}
.more_text > p{
    margin-top:0;
}
/* ---------------------------------------
feature
-----------------------------------------*/
ul.list_feature{
    margin:0 0 60px;
    padding:0;
    list-style: none;
}
ul.list_feature li{
    border:4px double #E5D9AA;
    background-color: #fff;
    padding:15px;
    margin-bottom:20px;
}
ul.list_feature li div{
    text-align: center;
    margin-bottom: 20px;
}
ul.list_feature li div img{
    max-width:100%;
}
ul.list_feature li h4{
    text-align:center;
    margin:0 0 10px;
    font-size:1.8rem;
}
ul.list_feature li p{
    margin:0;
}
/* ---------------------------------------
flow
-----------------------------------------*/
.flow{
    position: relative;
}
.flow .comment{
    position: absolute;
    right:-5px;
    top:-40px;
}
.flow .comment img{
    max-width:118px;
}
.ttl_newtype{
    background-color: #02472B;
    color:#fff;
    padding:10px 10px 0;
    margin: 0;
    text-align:center;
}
.ttl_newtype span{
    font-weight: normal;
    font-siz:80%;
}
ul.list_flow_new{
    margin:0 0 60px;
    padding:10px;
    list-style: none;
    background-color: #02472B;
    display:flex;
    flex-wrap: wrap;
    gap:0 14px;
}
ul.list_flow_new li{
    background-color: #E5D9AA;
    text-align:center;
    padding:6px;
    width:27%;
    position: relative;
}
ul.list_flow_new li:nth-child(-n+6){
    margin-bottom:10px;
}
ul.list_flow_new li::after{
    content:"";
    background: url("../images/flow_arrow.png") no-repeat left 50%;
    background-size: 9px;
    width:9px;
    height: 28px;
    display:block;
    position: absolute;
    right:-10px;
    top:40%;
}
ul.list_flow_new li:nth-child(3)::after,
ul.list_flow_new li:nth-child(6)::after,
ul.list_flow_new li:last-of-type::after{
    background: none;
}
ul.list_flow_new li h4{
    font-size: 1.8rem;
    margin: 0;
    padding: 0;
    line-height: 1;
}
ul.list_flow_new li:nth-child(1) h4,
ul.list_flow_new li:nth-child(2) h4,
ul.list_flow_new li:nth-child(3) h4,
ul.list_flow_new li:nth-child(6) h4,
ul.list_flow_new li:nth-child(7) h4,
ul.list_flow_new li:nth-child(8) h4{
    padding:5px 0 10px;
}
ul.list_flow_new li:nth-child(4) h4{
    padding:3px 0 8px;
}
ul.list_flow_new li:nth-child(5) h4{
    font-size: 1.6rem;
    letter-spacing: -4px;
    padding:3px 0 8px;
}
ul.list_flow_new li img{width:60%;}
.ttl_type{
    background-color: #333;
    color:#fff;
    padding:10px 10px 0;
    margin: 0;
    text-align:center;
}
ul.list_flow{
    margin:0 0 60px;
    padding:10px;
    list-style: none;
    background-color: #333333;
    display:flex;
    flex-wrap: wrap;
    gap:0 14px;
}
ul.list_flow li{
    background-color: #FFF;
    text-align:center;
    padding:6px;
    margin-bottom:10px;
    width:27%;
    position: relative;
}
ul.list_flow li::after{
    content:"";
    background: url("../images/flow_arrow.png") no-repeat left 50%;
    background-size: 9px;
    width:9px;
    height: 28px;
    display:block;
    position: absolute;
    right:-10px;
    top:40%;
}
ul.list_flow li:nth-child(3)::after,
ul.list_flow li:last-child::after{
    background: none;
}
ul.list_flow li h4{
    font-size: 1.8rem;
    margin: 0;
    padding: 10px 0;
    line-height: 1;
    color:#333;
}
ul.list_flow li img{width:60%;}

/* ---------------------------------------
case
-----------------------------------------*/
ul.list_case{
    margin:0;
    padding:0;
    list-style: none;
}
ul.list_case li{
    margin-bottom:40px;
}
ul.list_case li .case_image_sp{
    text-align:center;
}
ul.list_case li .case_image_sp img{max-width:266px;}
ul.list_case li .case_image_pc{display:none;}
ul.list_case li h3{
    border:1px solid #02472B;
    font-size:1.8rem;
    color:#02472B;
}
ul.list_case li h3 span{
    display:block;
}
ul.list_case li h3 .number{
    background-color:#02472B;
    color:#fff;
    font-weight: normal;
    padding:5px 10px;
}
ul.list_case li h3 .ttl{
    padding:10px;
}
ul.list_case li h3 .name{
    font-weight: normal;
    font-size:90%;
    padding: 0 10px 10px;
}

/* ---------------------------------------
faq
-----------------------------------------*/

input[type="checkbox"] {
    transform: scale(1.3);
    margin: 0 6px 0 0;
}
.acd-check{
    display: none;
}
.acd-label{
    border-radius: 3px;
    box-sizing: border-box;
    display: block;
    margin-top: 10px;
    padding: 10px 10px 10px 50px;
    position: relative;
    background-color: #fff;
    border:1px solid rgba(2,71,43,0.4);
    color:#02472B;
}
.acd-label span{
    font-weight: bold;
}
.acd-label:before{
    box-sizing: border-box;
    content: '\f0fe';
    display: flex;
    align-items: center;
    font-family: "Font Awesome 5 Free";
    padding: 0 12px;
    position: absolute;
    left: 0;
    top: 31%;
    font-size:2rem;
}
.acd-label:before{color:#054C48;}
.acd_txt{
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
    overflow: hidden;
    background-color: #f5f5f5;
}
.acd-check:checked + .acd-label:before{
    content: '\f146';
}
.acd-check:checked + .acd-label + .acd_txt{
    height: auto;
    opacity: 1;
    visibility: visible;
    padding:15px;
}
.acd-check:checked + .acd-label + .acd_txt > p{
    margin-top:0;
}

/* ---------------------------------------
contact
-----------------------------------------*/
table.form_style{
    width:100%;
    margin-bottom:30px;
}
table.form_style02{
    width:100%;
}
table.form_style tr,
table.form_style02 tr{
    display: block;
}
table.form_style th,
table.form_style02 th{
    font-weight: normal;
    background-color: #EEEDED;
    padding: 10px 0;
    white-space: nowrap;
    position: relative;
    display:block;
}
table.form_style th::before,
table.form_style02 th::before{
    content:"必須";
    display: inline-block;
    background-color:#C1272D;
    color:#fff;
    border-radius: 2px;
    font-size: 90%;
    padding: 0 3px;
    margin:0 20px;
    position: absolute;
    top:27%;
    left:0;
}
table.form_style th.non::before{
    content:"";
    background: none;
}
table.form_style td,
table.form_style02 td{
    padding:20px 0;
    margin: 0 auto;
    display: block;
    text-align: center;
}
table.form_style tr:last-child th,
table.form_style tr:last-child td{
    border-bottom:0;
}
table.form_style td.check label{
    display: block;
    margin-bottom:8px;
    text-align:left;
}
table.form_style td .error{
    color:rgba(248,1,5,1.00);
    display: inline-block;
    text-align: left;
}
table.form_style input[type="text"],
table.form_style input[type="email"],
table.form_style input[type="tel"],
table.form_style textarea,
table.form_style select{
    border:1px solid #ccc;
    padding:6px 10px;
    font-size: 1.6rem;
    width:100%;
    box-sizing: border-box;
}
input[type="checkbox"]{
    transform: scale(1.3);
	margin: 0 6px 0 0;
}
table.form_style .phone input[type="text"]{
    width:25%;
}
table.form_style td .memo{
    font-size:80%;
    text-align: left;
}
.btn_submit{
    margin: 0 auto 40px;
    display: flex;
    justify-content: center;
}
.btn_submit .btn-submit{
    border: 3px solid #02472B;
    border-radius: 3px;
    background-color: #02472B;
    color:#fff;
    font-size: 1.8rem;
    margin: 0 auto;
    padding:15px 20px;
    text-align: center;
    width:65%;
}
.btn_submit .btn-submit:hover{
    background-color:rgba(61,149,144,0.2);
    color:#054C48;
    border:3px solid #054C48;
}
.btn_submit .formback{
    border: 3px solid #ccc;
    background-color: #efefef;
    color:#333;
    border-radius: 3px;
    font-size: 1.8rem;
    margin: 0 auto;
    padding:15px 20px;
    text-align: center;
    width:30%;
}
.btn_submit .formback:hover{
    background-color: #fff;
}
.policy{
    height: 200px;
    overflow: scroll;
    border: 1px solid #CCC;
    padding: 0 10px 10px;
    margin-bottom: 30px;
}
.policy h3{
    font-size:1.8rem;
}
.mw_wp_form_preview .policy{display:none;}

/* ---------------------------------------
footer
-----------------------------------------*/
footer{
    background:#01211C;
    color:#fff;
    padding:4% 4% 80px;
}
footer a{
    color:#fff;
}

.footer_area{
    color:#fff;
}
.footer_area h2{
    text-align: center;
    font-weight: normal;
}
table.footer_table{
    width:100%;
}
table.footer_table th,
table.footer_table td{
    padding:5px;
    line-height: 1.8;
}
table.footer_table th{
    text-align: left;
    font-weight: normal;
    white-space: nowrap;
}
.copyright{
    text-align:center;
    font-size:1.4rem;
    padding:10px 0;
}
/*table.footer_table td span{
    display: inline-block;
    border:1px solid #fff;
    padding:1px 2px;
    font-size:90%;
    margin-right:8px;
    line-height: 1;
}*/
.footer_area .btn_area{
    display:none;
}
/* ---------------------------------------
inquiry
-----------------------------------------*/
#inquiry{
    color:#fff;
    text-align: center;
    padding:0;
    position: fixed;
    width:100%;
    bottom:0;
    box-sizing: border-box;
    z-index: 1000;
}
ul.list_inquiry_sp{
    border-top:1px solid #fff;
    display: flex;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0;
}
ul.list_inquiry_sp li{
    width:50%;
    height:72px;
}
ul.list_inquiry_sp li:first-of-type a{
    border-right:1px solid #fff;
    background-color:#02472B;
    display:block;
    font-size:2.4rem;  
}
ul.list_inquiry_sp li:last-of-type a{
    background-color:#1A9764;
    display:flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    box-sizing: border-box;
}
ul.list_inquiry_sp li a{
    padding:10px;
    font-size: 1.85rem;
    font-weight: bold;
    color:#fff;
}
ul.list_inquiry_sp li a:hover{
    text-decoration:none;
}
ul.list_inquiry_sp li a span{
    display: block;
    font-size:2rem;
}
ul.list_inquiry_sp li a span.sub{
    font-size: 1.4rem;
    font-weight: normal;
}
.list_inquiry_pc{
    display:none;
}

/* ---------------------------------------

-----------------------------------------*/
/* ---------------------------------------
single
-----------------------------------------*/


/* =====================================================================
768px以上 tablet
======================================================================== */
@media screen and (min-width: 768px){
    /* --------------------------------- common -- */
    br.sp{display:none;}
    br.pc{display:block;}
    /*------------------------------------ nav --*/ 
    nav ul#menu-global{
        list-style: none;
        margin: 13px 0;
        padding: 0;
        display: flex; 
        flex-wrap:wrap;
        justify-content: center;
        align-items: center;
        font-size: 1.6rem;
    }
    nav ul#menu-global li{
        text-align: center;
        position: relative;
        list-style: none;
    }
    nav ul#menu-global li:before {
      position: absolute;
      top: 50%;
      content: "｜";
      display: block;
      transform: translate(-50%, -50%);
    }
    nav ul#menu-global li a{
        color: #333;
        padding-left: 24px;
        padding-right: 24px;
        text-decoration: none;
        color: inherit;
        display:block;
    }
    nav ul#menu-global li a:hover{
        text-decoration: none;
        color:#FBB03B;
    }

    /*------------------------------------------------ mv --*/
    .mv h2 img{max-width:400px;}
    .mv div img{max-width:400px;}
    /*-------------------------------------------- btn --*/
    .btn_type ul.list_btn{
        display:flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        margin-top:15px;
    }
    .btn_type ul.list_btn li{
        margin-bottom: 0;
        width:42%;
    }
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
    .btn_type ul.list_btn .mail a span{
        margin-left:4rem;
    }
    /*------------------------------------------- worries --*/
    ul.list_worries{
        display: flex;
        flex-wrap: wrap;
        justify-content:space-between;
        padding:50px 6%;
        font-size:2rem;
    }
    ul.list_worries li:nth-child(even){
        width:46%;
    }
    ul.list_worries li{
        margin-bottom:30px;
        width:47%;
    }
    ul.list_possible{
        flex-wrap: wrap;
        justify-content: center;
        gap:0;
    }
    ul.list_possible li img{
        max-width:122px;
        width:100%;
    }
    ul.list_possible li {
        width:auto;
    }
    ul.list_possible li:last-of-type{
        width:100%;
    }
    /*-------------------------------------------- problem --*/
    ul.list_problem_img{}
    ul.list_problem_img li img{max-width:263px;}
    
    /*--------------------------------------------  --*/
    .scroll p{
        display:none;
    }
    /*-------------------------------------------- choice --*/
    .vs{
        display:flex;
        justify-content: center;
        align-items: center;
    }
    .vs .general{
        padding:20px 30px;
    }
    .vs .newtype{
        padding:9px 30px;
    }
    ul.list_merit li img{
        max-width:170px;
    }
    /*-------------------------------------------- cause --*/
    ul.list_cause{
        display:flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    ul.list_cause li{
        box-sizing: border-box;
        width:49%;
    }
    ul.list_cause li:last-of-type{
        width:100%;
    }
    .map_image img{
        max-width:385px;
    }
    /*-------------------------------------------- flow --*/
    ul.list_flow_new{
        justify-content: center;
        gap:0 23px;
        padding-bottom: 20px;
    }
    ul.list_flow_new li{
        box-sizing: border-box;
        width:22%;
        margin-bottom:0;
    }
    ul.list_flow_new li:nth-child(odd)::after{
        display: none;
    }
    ul.list_flow_new li:nth-child(1),
    ul.list_flow_new li:nth-child(2),
    ul.list_flow_new li:nth-child(3),
    ul.list_flow_new li:nth-child(4){
        margin-bottom:15px;
    }
    ul.list_flow_new li:nth-child(1) h4, ul.list_flow_new li:nth-child(2) h4, ul.list_flow_new li:nth-child(3) h4, ul.list_flow_new li:nth-child(6) h4, ul.list_flow_new li:nth-child(7) h4, ul.list_flow_new li:nth-child(8) h4{
        padding:11px 0 18px;
    }
    ul.list_flow_new li img{
        vertical-align: bottom;
        width:80%;
    }
    ul.list_flow{
        gap:0 25px;
        justify-content: center;
    }
    ul.list_flow li{
        box-sizing: border-box;
        width:24%;
        margin-bottom: 20px;
    }
    ul.list_flow li:nth-child(odd)::after{
        display:none;
    }
    ul.list_flow li img{width:80%;}
    /*-------------------------------------------- case --*/
    ul.list_case li h3{
        display:flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }
    ul.list_case li h3 .number{
        box-sizing: border-box;
        width:100%;
    }
    ul.list_case li h3 .name{
        padding:0 10px;
    }
    /*-------------------------------------------- footer --*/
    
    /*--------------------------------------------  --*/
    
}
/* ======================================================================
980px以上用（PC用）
====================
======================================================================== */
@media screen and (min-width: 980px){
    html body{
        font-size:1.8rem;
    }
    br.tb{display: none;}
    /*----------------------------------------------- area --*/
    section#page,
    section#worries,
    section#difference,
    section#cause,
    section#flow,
    section#faq,
    section#contact{
        margin:0 auto;
        padding: 4% 0;
        width:1200px;
    }
    .chapter{
        margin:0 auto;
        width:1200px;}
    /*--------------------------------------------------  --*/
    header {
        margin: 0 auto;
        padding: 60px 0 0;
    }
    header{
        background: url("../images/mv_bg_pc.jpg") no-repeat top center ;
        background-size: cover;
        padding:0;
    }
    .headarea{
        padding:10px 6%;
        height:auto;
    }
    .hamburger{
        right:100px;
    }
    .mv{
        background-color: transparent;
        box-sizing: border-box;
        margin:0 auto;
        padding: 0 0 30px;
        width:30%;
    }
    /*-------------------------------------------------- title --*/
    .ttl_main{
        font-size:3.4rem;
        margin-bottom:80px;
    }
    .ttl_main b::before{
        background-size: 80px auto;
        width:80px;
        height: 80px;
        top:-20px;
        left:-20px;
    }
    .ttl_second{
        font-size:3.2rem;
    }
    /*-------------------------------------------------- worries --*/
    #worries .ttl_main b::before{
        background-size: 100px;
        width: 100px;
        height: 100px;
        top: -45px;
        left: -22px;
    }
    ul.list_possible{
        justify-content: center;
    }
    ul.list_possible li{
        width:auto;
    }
    ul.list_possible li:last-of-type{
        font-size:2.4rem;
    }
    /*-------------------------------------------------- btn --*/
    .btn_area{
        margin-top:100px;
    }
    .btn_area .btn_type{
        box-sizing: border-box;
        margin: 0 auto;
        width:900px;
    }
    .btn_area h3{
        font-size:3.2rem;
    }
    .btn_area .btn_type p{
        font-size:2rem;
        padding-bottom:10px;
    }
    .btn_type ul.list_btn{
        margin-top:0;
        gap:30px;
    }
    .btn_type ul.list_btn li{
        width:auto;
    }
    .btn_type ul.list_btn li:first-of-type a{
        text-decoration:none;
        font-size:4.2rem;
    }
    .btn_type ul.list_btn .mail a::before{
        top:28px;
        left:25px;
    }
    .btn_type ul.list_btn li.mail a{
        font-size:2rem;
        width:280px;
        padding:24px 40px;
    }
    /*-------------------------------------------------- problem --*/
    ul.list_problem_img {
        margin: 60px 0;
        gap:0 20px;
    }
    ul.list_problem_img li{
        width:auto;
    }
    .problem_txt{
        font-size:2.8rem;
    }
    ul.list_problem{
        padding:30px 30px 30px 60px;
        box-sizing: border-box;
        display:flex;
        flex-wrap: wrap;
        margin:0 auto;
        width:950px;
        font-size:2rem;
        gap:0 30px;
    }
    ul.list_problem li:nth-child(odd){
       width:46%;
    }
    ul.list_problem li:nth-child(1),
    ul.list_problem li:nth-child(3){
        margin-bottom:25px;
    }
        
    /*-------------------------------------------------- difference --*/
    .lead_txt{
        display:flex;
        justify-content: space-between;
        gap:0 30px;
        margin-bottom:60px;
        align-items: center;
    }
    .img_mtg{
        text-align: justify;
        widyh:230px;
    }
    table.table_comparison{
        margin:0 auto;
        width:1000px;
        font-size:2rem;
    }
    table.table_comparison th,
    table.table_comparison td{
        padding-top:35px;
        padding-bottom:36px;
    }
    table.table_comparison .st_gr{
        font-size:3.4rem;
    }
    table.table_comparison .gy{
        font-size:2.4rem;
    }
    table.table_comparison .ok{
        background-size:80px auto;
    }
    table.table_comparison .out{
        background-size:70px auto;
    }
    table.table_comparison .triangle{
        background-size:95px auto;
    }
    /*-------------------------------------------------- choice --*/
    .vs .general{}
    .vs .vsmark{
        padding:10px 25px;
    }
    .vs .newtype{
        font-size:2.3rem;
        font-weight: normal;
        padding:9px 40px;
        line-height: 1.2;
    }
    .ttl_merit{
        font-size:2.6rem;
    }
    .about_newtype{
        margin: 60px auto;
    }
    ul.list_about{
        display:flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    ul.list_about li{
        box-sizing: border-box;
        padding:30px;
        width:588px;
    }
    ul.list_about li:nth-child(3){
        margin-bottom:0;
    }
    ul.list_about li h4{
        font-size:2.2rem;
    }
    p.memo{
        font-size:1.4rem;
    }
    .list_recommend{
        display:flex;
        justify-content: space-between;
    }
    .list_recommend div{
        width:48%;
        display: flex;
        flex-direction: column;
    }
    .flow .comment_s img{
        max-width:100px;
    }
    .newtype_area{
        margin-bottom:0;
    }
    .newtype_area ul li,
    .general_area ul li{
        font-size:2rem;
    }
    .general_area ul{
        flex-grow:1;
        margin:0;
    }
    .general_area ul,
    .newtype_area ul{
        box-sizing: border-box;
        background-position: 93% 82%;
        background-size: 120px;
        padding:30px 30px 30px 60px;
    }
    
    /*-------------------------------------------------- cause --*/
    ul.list_cause{
        margin-top:80px;
    }
    ul.list_cause li{
        box-sizing:border-box;
        padding:20px;
    }
    ul.list_cause li h4{
        font-size:2.4rem;
    }
    ul.list_cause li:first-child,
    ul.list_cause li:nth-child(2),
    ul.list_cause li:nth-child(3){
        width:383px;
    }
    ul.list_cause li:last-of-type{
        width:49%;
    }
    .ttl_more{
        font-size:3.2rem;
    }
    .more_area{
        display:flex;
        justify-content: space-between;
        gap:0 30px;
        align-items: center;
    }
    .more_text h4{
        font-size:2.4rem;
    }
    .more_text > p{
        margin-bottom: 40px;
    }
    /*-------------------------------------------------- feature --*/
    ul.list_feature{
        display:flex;
        justify-content: space-between;
    }
    ul.list_feature li{
        width:32%;
        box-sizing: border-box;
        padding:30px 30px 60px;
    }
    ul.list_feature li h4{
        font-size:2.4rem;
    }
    /*-------------------------------------------------- flow --*/
    .ttl_newtype,
    .ttl_type{
        display:inline-block;
        padding:10px 30px 0;
        font-size:2rem;
    }
    .flow .comment{
        top:-26px;
        right:0;
        z-index: 1;
    }
    ul.list_flow_new{
        flex-wrap:nowrap;
        gap:0 10px;
        padding:16px;
        margin-bottom:40px;
    }
    ul.list_flow_new li{
        flex-grow:1;
        width:auto;
        margin-bottom: 0;
    }
    ul.list_flow_new li:nth-child(-n+6){
        margin-bottom:0;
    }
    ul.list_flow_new li::after{
        display:none;
    }
    ul.list_flow{
        flex-wrap:nowrap;
        gap:0 10px;
        padding:16px;
    }
    ul.list_flow li{
        width:auto;
        margin-bottom:0;
        flex-grow:1;
    }
    ul.list_flow li::after{
        display:none;
    }
    ul.list_flow_new li img,
    ul.list_flow li img{
        max-width:98px;
    }
    /*-------------------------------------------------- case --*/
    ul.list_case li{
        display:flex;
        justify-content: space-between;
        gap:0 30px;
        flex-direction: row-reverse;
    }
    ul.list_case li .case_image_sp{display:none;}
    ul.list_case li .case_image_pc{
        display:block;
        width:266px;
    }
    ul.list_case li .case_image_pc img{
        max-width:266px;
    }
    ul.list_case li h3{
        margin-top:0;
        align-items: stretch;
        justify-content: flex-start;
    }
    ul.list_case li h3 .number{
        width:auto;
        padding:8px 10px;
    }
    ul.list_case li h3 .ttl{
        padding:8px 10px;
        font-size:2rem;
    }
    ul.list_case li h3 .name{
        padding:10px 20px;
        margin-left:auto;
        font-weight: bold;
    }
    /*-------------------------------------------------- faq --*/ 
    .acd-check:checked + .acd-label + .acd_txt{
        padding:25px;
    }
    /*-------------------------------------------------- contact --*/
    table.form_style,
    table.form_style02{
        width:800px;
        margin:0 auto;
    }
    table.form_style tr{
        display: table-row;
    }
    table.form_style th,
    table.form_style td{
        display: table-cell;
    }
    table.form_style th{
        background-color: transparent;
        text-align:left;
        padding:0 25px 25px 0;
        vertical-align: top;
    }
    table.form_style th::before,
    table.form_style02 th::before{
        position: static;
        margin: 0 10px 0 0;
    }
    table.form_style th.non::before{
        width:30px;
    }
    table.form_style td{
        padding:0 0 25px;
    }
    .policy{
        width:800px;
        margin:0 auto 30px;
    }
    .btn_submit{
        width:800px;
    }
    /*-------------------------------------------------- footer --*/
    footer{
        padding-bottom:0;
    }
    table.footer_table{
        width:630px;
        margin: 0 auto;
    }
    table.footer_table{
        margin-bottom:30px;
    }
    .footer_area .btn_area{
        display:block;
        width:1000px;
        margin: 0 auto;
    }
    .footer_area .btn_area .btn_type p{
        color:#fff;
    }
    .footer_area .btn_area .btn_type{
        border-top:1px solid #fff;
        border-bottom:none;
        border-left:none;
        border-right:none;
    }
    .btn_type ul.list_btn li:first-of-type{
        width:auto;
    }
    .footer_area .btn_type ul.list_btn a[href*="tel:"]{
        color:#fff;
    }
    .footer_area .btn_type ul.list_btn li:first-of-type a::before{
        background:url("../images/icon_tel_wt.png") no-repeat;
        background-size: 25px;
        width: 25px;
        height: 25px;
        display: inline-block;
        margin-right: 5px;
    }
    /*--------------------------------------------------  --*/
    #inquiry{
        bottom:55px;
        right:30px;
        text-align: end;
    }
    ul.list_inquiry_sp{display:none;}
    .list_inquiry_pc{display:block;}
    .list_inquiry_pc a {
        background-color:#1A9764;
        box-shadow: #fff 1px 1px 3px;
        color: #fff;
        font-weight: bold;
        padding: 20px 50px;
        border-radius: 50px;
    }
    .list_inquiry_pc a:hover{
        text-decoration: none;
        opacity: 0.8;
    }
    /*--------------------------------------------------  --*/
}
