﻿@charset "utf-8";

/* page_name
-------------------------------------------------------------------*/

body.home .visual{
    position:relative;
    max-height:calc(100vh - 122px);
}
body.home .visual .lead_block{
    position:absolute;
    left:166px;
    bottom:0;
    z-index:10;
    padding:60px 60px 75px 0;
    background:#fff;
    text-align:left;
    width:794px;
    max-width: calc(55% - 166px);
}
body.home .visual .lead_block h1{
    margin-bottom:2em;
}
body.home .visual .lead_block h1 i{
    font-size:1.5rem;
    display:block;
    color:#0b5086;
    font-weight:bold;
    margin-bottom:1em;
    letter-spacing:0.03em;
}
body.home .visual .lead_block h1 strong{
    font-size:max(1.25vw,2.25rem);
    font-weight:500;
    letter-spacing:0.03em;
}
body.home .visual .lead_block p{
    line-height:2.5;
}
body.home .visual .scroll_link{
    position:absolute;
    left:0;
    bottom:0;
    margin:0 70px;
    display:block;
    overflow:hidden;
    transition:transform .2s;
    z-index:15;
}
body.home .visual .scroll_link:after{
    content:"";
    display:block;
    width:1px;
    height:78px;
    background:#0b5086;
    margin:10px auto 0;
    transition:transform .2s;
}
body.home .visual .scroll_link:hover{
    transform:translateY(-5px);
}
body.home .visual .scroll_link:hover:after{
    transform:translateY(-5px)
}
body.home .visual .slide_wrap{
    padding-left:166px;
    z-index:5;
    margin:0;
    min-height:560px;
    max-height:calc(100vh - 122px);
    overflow:hidden;

}
body.home .visual .slide_wrap img{
    max-width:100%;
    height:auto;
}
body.home .visual .slick-dots{
    position:absolute;
    bottom: 410px;
    left:78px;
    width:auto;
    display:flex;
    flex-direction:column;
}
body.home .slick-dots li{
    display:block;
    margin:5px 0;
    width:auto;
    height:auto;
}
body.home .slick-dots li button{
    width:3px;
    height:23px;
    padding: 0;
}
body.home .slick-dots li button:before{
    width:3px;
    height:23px;
    background:#a9a9a9;
    content:"";
    opacity:1;
    transition:background .2s;
}
body.home .slick-dots li.slick-active button:before,
body.home .slick-dots li button:hover:before{
    background:#0b5086;
}
body.home .visual .now-count,
body.home .visual .all-count{
    left:75px;
    position:absolute;
    bottom:380px;
    display:block;
}
body.home .visual .now-count{
    bottom:530px;
}
@media screen and (max-width:1600px) {
    body.home .visual .slide_wrap{
        padding-left:100px;
    }
    body.home .visual .lead_block{
        padding:60px 30px 60px 0;
        left:100px;
        max-width: calc(55% - 50px);
    }
    body.home .visual .lead_block h1 strong{
        font-size:min(2.25rem,2.55vw);
        letter-spacing:0.03em;
    }
    body.home .visual .now-count, body.home .visual .all-count{
        left:42px;
    }
    body.home .visual .slick-dots{
        left:45px;
    }
    body.home .visual .scroll_link{
        margin:0 42px;
    }
}
@media screen and (max-width:1200px) {
    body.home .visual .lead_block{
        padding:40px 30px 40px 0;
        max-width: calc(55% - 50px);
    }
}
@media screen and (max-width:767px) {
    body.home .visual{
        min-height:calc(100vh - 59px);
        max-height:initial;
    }
    body.home .visual .lead_block{
        position:relative;
        padding:0;
        background:none;
        width:100%;
        max-width:100%;
        margin-top:-40px;
        left:0;
        bottom:auto;
        top:auto;
    }
    body.home .visual .lead_block h1{
        margin-bottom:00.5em;
    }
    body.home .visual .lead_block h1 i{
        font-size:1.14rem;
        margin-bottom:0;
        background:#fff;
        width:fit-content;
        padding:20px 15px 20px 30px;
    }
    body.home .visual .lead_block h1 strong{
        font-size:min(4.55vw,7.25vw);
        padding:0 10px 0 30px;
        letter-spacing:0.1em;
        width:100%;
        display:block;
    }
    body.home .visual .lead_block p{
        padding:0 15px 0 30px;
        line-height:1.875;
        font-size:0.875rem;
    }
    body.home .visual .scroll_link{
        left:10px;
        margin:0;
        bottom:0;
        top:calc(100vh - 178px);
    }
    body.home .visual .scroll_link img{
        width:9px;
        height:auto;
    }
    body.home .visual .scroll_link:after{
        height:49px;
    }
    body.home .visual .slide_wrap{
        padding-left:0;
        min-height:0;
        max-height:calc(100vh - 59px);
    }
    body.home .visual .slick-dots{
        bottom: 15px;
        left:auto;
        width:auto;
        flex-direction:row;
        right:20px;
    }
    body.home .slick-dots li{
        display:inline-block;
        margin:0 4px;
    }
    body.home .slick-dots li button{
        width:17px;
        height:3px;
    }
    body.home .slick-dots li button:before{
        width:17px;
        height:3px;
        background:#fff;
        box-shadow:0 0 5px rgba(0,0,0,0.25);
    }
    body.home .slick-dots li.slick-active button:before,
    body.home .slick-dots li button:hover:before{
        background:#0b5086;
    }
    body.home .visual .now-count,
    body.home .visual .all-count{
        left:auto;
        bottom:7px;
        right:10px;
        color:#fff;
        text-shadow:0 0 5px rgba(0,0,0,1.0);
    }
    body.home .visual .now-count{
        right:100px;
    }
}
body.home section.feature{
    padding:100px 0 0;
}
body.home section.feature .lead_block{
    margin-bottom:55px;
    text-align:center;
}
body.home section.feature .lead_block .common_btn{
    margin-top:2em;
}
body.home section.feature ol{
    margin:0;
    padding:0;
    display:flex;
}
body.home section.feature ol li{
    margin:0;
    padding:0 15px 75px;
    position:relative;
    z-index:5;
    list-style:none;
    overflow:hidden;
    color:#fff;
    flex-grow:1;
}
body.home section.feature ol li:before{
    content:"";
    display:block;
    z-index:-1;
    position:absolute;
    top:95px;
    bottom:0;
    left:0;
    right:0;
    background:#0b5086;
}
body.home section.feature ol li:nth-child(2n):before{
    background:#256994;
}
body.home section.feature ol li > b{
    color:rgba(255,255,255,0.1);
    display:block;
    position:absolute;
    z-index:5;
    bottom: 0;
    right:0.5em;
    font-size:7.5rem;
    line-height:0.85;
    font-weight:400;
}
body.home section.feature ol li img{
    display:block;
    margin:5px auto 0;
    box-shadow:0 0 5px rgba(0,0,0,0.5);
    max-width: 100%;
}
body.home section.feature ol li h3{
    font-size:1.5rem;
    margin:2em 0;
}
body.home section.feature ol li p{
    max-width:475px;
    margin:0 auto;
    text-align:left;
    line-height:1.875;    
}
body.home section.feature .bg_wrap {
    background:#f3faff;
}
body.home section.feature .bg_wrap ul{
    padding-top:210px;
    padding-bottom:95px;
    display:flex;
    margin:0 auto;
    max-width:1000px;
    justify-content:space-between;
}
body.home section.feature .bg_wrap ul li{
    width:32%;
}
body.home section.feature .bg_wrap ul a{
    display:block;
    border:solid 1px #000;
    box-shadow:0 0 5px rgba(0,0,0,0.5);
    position:relative;
    text-align:center;
    text-decoration:none;
    margin-bottom:5px;
    background:#9d8a3c;
    color:#fff;
    transition:transform .4s,box-shadow .4s,background .4s,color .4s;
}
body.home section.feature .bg_wrap ul a:hover{
    background:#fff;
    color:#9d8a3c;
    transform:translateY(5px);
    box-shadow:0 0 0px rgba(0,0,0,0);    
}
body.home section.feature .bg_wrap ul a .box{
    border-bottom:solid 1px #000;
    padding-bottom:30px;
    font-size:1.75rem;
}
body.home section.feature .bg_wrap ul a .box i{
    display:block;
    font-size:0.714em;
}
body.home section.feature .bg_wrap ul a .box img{
    display:block;
    margin:0 auto -30%;
    transform:translateY(-35%);
}
body.home section.feature .bg_wrap ul a .in_btn{
    border:none;
    max-width:100%;
}
body.home section.feature .bg_wrap ul a:hover .in_btn{
    background:#9d8a3c;
}

body.home section.greeting{
    padding:90px 0 300px;
    position:relative;
    z-index:5;
    width:100%;
    overflow:hidden;
}
body.home section.greeting:after{
    content:"";
    display:block;
    background:#f8f8f8;
    position:absolute;
    z-index:-4;
    left:34.5%;
    right:0;
    top:255px;
    bottom:0;
}
body.home section.greeting .left_img{
    position:absolute;
    right:55%;
    top:180px;
    z-index:1;
}
body.home section.greeting .center_area{
    margin-left:50%;
}
body.home section.greeting .center_area h3{
    color:#0b5086;
    font-size:2rem;
    letter-spacing:0.1em;
    margin:1em 0;
    text-indent:-0.5em;
}
body.home section.greeting .center_area .texts {
    margin-bottom:2em;
}
body.home section.greeting .center_area .texts p{
    line-height:3.125;
    letter-spacing:0.03em;
    text-shadow:0 0 1px rgba(255,255,255,1),0 0 1px rgba(255,255,255,1),0 0 2px rgba(255,255,255,1),0 0 3px rgba(255,255,255,0.8);
}
body.home section.greeting .right_img{
    position:absolute;
    right:0;
    bottom:110px;
    z-index:-1;
}
@media screen and (max-width:1600px) {
    body.home section.greeting{
        padding-bottom:380px;
    }
    body.home section.greeting .left_img{
        max-width:50%;
        height:auto;
    }
    body.home section.greeting .center_area{
        padding-left:0;
    }
}
@media screen and (max-width:1200px) {
    body.home section.greeting{
        padding-bottom:320px;
    }
    body.home section.greeting .right_img{
        bottom:auto;
        top:60%;
        right:55%;
        max-width:25%;
    }
}
@media screen and (max-width:767px) {
    body.home section.feature{
        padding:45px 0 0;
    }
    body.home section.feature .lead_block{
        margin-bottom:35px;
    }
    body.home section.feature .lead_block h2 img{
        width:40px;
    }
    body.home section.feature .lead_block p{
        text-align:left;
    }
    body.home section.feature ol{
        display:block;
    }
    body.home section.feature ol li{
        padding:0 15px 35px;
    }
    body.home section.feature ol li + li{
        margin-top:40px;
    }
    body.home section.feature ol li > b{
        font-size:70px;
        right:15px;
    }
    body.home section.feature ol li:before{
        top:52px;
    }
    body.home section.feature ol li img{
        max-width:240px;
    }
    body.home section.feature ol li h3{
        margin:1.5em 0 1em;
    }
    body.home section.feature ol li p{
        max-width:100%;
    }
    body.home section.feature .bg_wrap ul{
        padding-top:85px;
        padding-bottom:55px;
        display:block;
        max-width:100%;
    }
    body.home section.feature .bg_wrap ul li{
        width:100%;
    }
    body.home section.feature .bg_wrap ul li + li{
        margin-top:70px;
    }
    body.home section.feature .bg_wrap ul a .box {
        display:flex;
        align-items:center;
        height:95px;
        padding:20px;
        font-size:min(5.75vw,1.4285rem);
        letter-spacing:0.03em;
    }
    body.home section.feature .bg_wrap ul a .box h2{
        flex-grow:1;
        line-height:1.2;
    }
    body.home section.feature .bg_wrap ul a .box i{
        display:inline-block;
        vertical-align:middle;
        font-size:0.8em;
    }
    body.home section.feature .bg_wrap ul a .box img{
        width:70px;
        height:150px;
        margin:0 10px -15px 0;
        transform:translateY(-35px);
    }
    body.home section.greeting{
        padding:0 0 60px;
    }
    body.home section.greeting:after{
        left:0;
        right:0;
        top:48.5%;
    }
    body.home section.greeting .left_img{
        position:static;
        right:0;
        top:0;
        max-width:100%;
    }
    body.home section.greeting .center_area{
        margin:30px 15px 0;
        padding: 0;
    }
    body.home section.greeting .center_area h3{
        font-size:2rem;
        letter-spacing:0.03em;
        margin:0.5em 0;
    }
    body.home section.greeting .center_area .texts {
        margin-bottom:2em;
    }
    body.home section.greeting .center_area .texts p{
        line-height:1.875;
    }
    body.home section.greeting .right_img{
        right:0;
        bottom:auto;
        max-width:159px;
        top:22%;
        z-index:1;
    }
    body.home section.greeting .common_btn{
        margin:30px auto 0;
    }
}
body.home section.purpose{
    position:relative;
    z-index:5;
}
body.home section.purpose:before{
    content:"";
    width:100%;
    position:absolute;
    top:0;
    height:405px;
    display:block;
    z-index:-1;
    background:url(../img/top/purpose_bg.jpg) no-repeat top center / cover;    
}
body.home section.purpose h2{
    color:#fff;
    font-size:2rem;
    letter-spacing:0.1em;
    text-shadow:0 0 3px rgba(0,0,0,1),0 0 5px rgba(0,0,0,1);
    padding:140px 0 210px;
}
body.home section.purpose .bg_box{
    background: rgb(12,81,135);
    padding-bottom:95px;
    background: -moz-linear-gradient(90deg, rgba(12,81,135,1) 0%, rgba(37,105,148,1) 100%);
    background: -webkit-linear-gradient(90deg, rgba(12,81,135,1) 0%, rgba(37,105,148,1) 100%);
    background: linear-gradient(90deg, rgba(12,81,135,1) 0%, rgba(37,105,148,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0c5187",endColorstr="#256994",GradientType=1);
}
body.home section.purpose .sitewrap{
    overflow:visible;
}
body.home section.purpose ul{
    display:flex;
    flex-wrap:wrap;
    background:#fff;
    transform:translateY(-65px);
    box-shadow:0 0 5px rgba(0,0,0,0.5);
    padding:0;
}
body.home section.purpose ul li{
    width:25%;
}
body.home section.purpose ul li a{
    display:block;
    height:100%;
    padding:30px 25px;
    background:rgba(255,255,255,0);
    text-decoration:none;
    transition:color .4s,background .4s;
}
body.home section.purpose ul li a:hover{
    color:rgb(11 80 134);
    background:rgba(11,80,134,0.125);
    text-decoration:none;
}
body.home section.purpose ul li:nth-child(2),
body.home section.purpose ul li:nth-child(4),
body.home section.purpose ul li:nth-child(5),
body.home section.purpose ul li:nth-child(7){
    background:#f4fafe;
}
body.home section.purpose figure{
    text-align:center;    
}
body.home section.purpose figcaption{
    color:#0b5086;
    font-size:1.25rem;
    margin:1em -0.5em;
}
body.home section.purpose .text{
    font-size:0.875rem;
}
body.home section.purpose ul li a:hover .text{
    text-decoration:underline;
}
body.home section.purpose .banners{
    padding:90px 0;
}
body.home section.purpose .flex-just{
    display:flex;
    justify-content:space-between;
    max-width:1000px;
    margin:0 auto;
}
body.home section.purpose .flex-just a{
    display:flex;
    width:48%;
    border:solid 1px #9d8a3c;
    color:#9d8a3c;
    align-items:center;
    height:100%;
    background:#f8f8f8;
    box-shadow:0 0 5px rgba(0,0,0,0.5);
    position:relative;
    text-decoration:none;
    transition:box-shadow .4s,background .4s,color .4s,transform .4s;
}
body.home section.purpose .flex-just a:hover{
    box-shadow:0 0 0px rgba(0,0,0,0);
    transform:translateY(5px);
    background: #b8a456;
    color:#fff;
}
body.home section.purpose .flex-just a:before,
body.home section.purpose .flex-just a:after{
    content:"";
    display:block;
    position:absolute;
    right:0;
    bottom:0;
}
body.home section.purpose .flex-just a:before{
    z-index:1;
    width:40px;
    height:40px;
    background:#9d8a3c;
}
body.home section.purpose .flex-just a:after{
    width:12px;
    height:12px;
    border-top:solid 2px #fff;
    border-right:solid 2px #fff;
    z-index:2;
    transform:rotate(45deg);
    margin:12px 14px;
    border-radius:3px;
}
body.home section.purpose .flex-just p{
    padding:0 40px;
}
body.home section.purpose .flex-just p span{
    font-size:1.5rem;
    display:block;
}
body.home section.purpose .flex-just p i{
    display:block;
    color:#cacaca;
    letter-spacing:0.2em;
}
@media screen and (max-width:1200px) {
    body.home section.purpose .sitewrap{
        padding-left:2%;
        padding-right:2%;
    }
}
@media screen and (max-width:767px) {
    body.home section.purpose:before{
        height: 203px;
        background:url(../img/top/purpose_bg.jpg) no-repeat top center / cover;
    }
    body.home section.purpose .bg_box{
        padding-bottom:20px;
    }
    body.home section.purpose h2{
        padding: 50px 0 90px;
        font-size: 1.57rem;
    }
    body.home section.purpose .sitewrap{
        overflow:visible;
        padding-left:15px;
        padding-right:15px;
    }
    body.home section.purpose ul{
        display:block;
        transform:translateY(-40px);
        background:none;
    }
    body.home section.purpose ul li{
        width:100%;
        margin-bottom:15px;
        background:#fff;
    }
    body.home section.purpose ul li a{
        padding:25px 15px 25px 115px;
        position:relative;
    }
    body.home section.purpose figure{
        text-align:left;
    }
    body.home section.purpose figure img{
        position:absolute;
        left:10px;
        width:90px;
        height:auto;
        top:0;
        bottom:0;
        margin:auto;
    }
    body.home section.purpose figcaption{
        font-size:1.14rem;
        margin:0 0 0.5em;
    }
    body.home section.purpose .text{
        font-size:0.875rem;
    }
    body.home section.purpose ul li a:hover .text{
        text-decoration:underline;
    }
    body.home section.purpose .banners{
        padding:45px 0;
    }
    body.home section.purpose .flex-just{
        display:block;
        padding:0;
    }
    body.home section.purpose .flex-just a{
        width:100%;
    }
    body.home section.purpose .flex-just a + a{
        margin-top:30px;
    }
    body.home section.purpose .flex-just a:before{
        width:29px;
        height:29px;
    }
    body.home section.purpose .flex-just a:after{
        width:8px;
        height:8px;
        margin:9px 10px;
        border-radius:1px;
    }
    body.home section.purpose .flex-just img{
        width:123px;
    }
    body.home section.purpose .flex-just p{
        padding:0 20px;
    }
    body.home section.purpose .flex-just p span{
        font-size:1.285rem;
        margin-bottom:0.25em;
    }
}
body.home section.news {
    background:#f3faff;
    padding:80px 0;
}
body.home section.news .left_area{
    width:240px;
    float:left;
}
body.home section.news .right_area{
    width:850px;
    float:right;
    min-height:125px;
}
body.home section.column {
    padding:80px 0 90px;
    position:relative;
    z-index:5;
}
body.home section.column:after{
    content:"";
    display:block;
    position:absolute;
    z-index:-2;
    top:320px;
    width:1800px;
    right:0;
    bottom:0;    
    background: rgb(12,81,135);
    padding-bottom:95px;
    background: -moz-linear-gradient(90deg, rgba(12,81,135,1) 0%, rgba(37,105,148,1) 100%);
    background: -webkit-linear-gradient(90deg, rgba(12,81,135,1) 0%, rgba(37,105,148,1) 100%);
    background: linear-gradient(90deg, rgba(12,81,135,1) 0%, rgba(37,105,148,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0c5187",endColorstr="#256994",GradientType=1);
}
body.home section.column:before{
    content:"";
    display:block;
    position:absolute;
    z-index:-1;
    top:320px;
    width:245px;
    left:0;
    bottom:0;  
    z-index:-1;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 50%, rgba(248,248,248,1) 50%);
    background: -webkit-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 50%, rgba(248,248,248,1) 50%);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 50%, rgba(248,248,248,1) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f8f8f8",GradientType=1);
}
body.home section.column .no_data{
    min-height:124px;
}
.topics_style {
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    width:100%;
}
.topics_style .bottom_area{
    order:5;
    width:100%;
}
.topics_style div.top_area{
    margin-left:auto;
    width:240px;
}
.topics_style .slide_wrap{
    padding-bottom:50px;
}
.topics_style .slide_wrap a{
    display:block;
    max-width:286px;
    margin:auto;
    background:#fff;
    transition:transform .4s, color .4s;
}
.topics_style .slide_wrap a:hover{
    transform:translateY(-5px);
    color:#0b5086;
    text-decoration:none;
}
.topics_style .slide_wrap .texts{
    padding:20px 20px 60px;
    position:relative;
}
.topics_style .slide_wrap .texts:before,
.topics_style .slide_wrap .texts:after{
    content:"";
    display:block;
    position:absolute;
    right:0;
    bottom:0;
}
.topics_style .slide_wrap .texts:before{
    z-index:1;
    width:40px;
    height:40px;
    background:#0b5086;
}
.topics_style .slide_wrap .texts:after{
    width:12px;
    height:12px;
    border-top:solid 2px #fff;
    border-right:solid 2px #fff;
    z-index:2;
    transform:rotate(45deg);
    margin:12px 14px;
    border-radius:3px;
}
.topics_style .slide_wrap .texts time{
    color:#cacaca;
    font-size:0.875rem;
    display:block;
    margin-bottom:1em;
    transition:color .4s;
}
.topics_style .slide_wrap a:hover .texts time{
    color:#282828
}
.topics_style .slide_wrap .texts p{
    line-height:1.625;
}
.topics_style .no_data{
    margin-bottom:80px;
}
body.home .topics_style .slick-dots{
    bottom:0;
}
body.home .topics_style .slick-dots li{
    display:inline-block;
    margin:0 5px;
}
body.home .topics_style .slick-dots li button,
body.home .topics_style .slick-dots li button:before{
    width:23px;
    height:3px;
}
body.home .topics_style .slick-dots li.slick-active button:before,
body.home .topics_style .slick-dots li button:hover:before{
    background:#fff;
}
.topics_style .flex-box{
    display:flex;
    flex-wrap:wrap;
    width: 100%;
}
.topics_style .flex-box .slide_child{
    width:32%;
    margin-right:2%;
}
.topics_style .flex-box .slide_child:nth-child(3n){
    margin-right:0;
}
.topics_style .flex-box .slide_child:nth-child(n+4){
    margin-top:4%;
}
.topics_style .flex-box .slide_child a{
    max-width: 100%;
    box-shadow:0 0 10px rgba(0,0,0,0.1);
}
body.home section.faq{
    background:#f8f8f8;
    padding:80px 0 85px;
}
body.home section.faq h2{
    text-align:center;
}
body.home section.faq .common_btn{
    margin:50px auto 0;
}
@media screen and (max-width:767px) {
    body.home section.news {
        padding:35px 0 40px;
    }
    body.home section.news .left_area{
        width:100%;
        float:none;
    }
    body.home section.news .left_area{
    }
    body.home section.news .right_area{
        width:100%;
        float:none;
        margin-bottom:35px;
        min-height:0;
    }
    body.home section.column {
        padding:50px 0 40px;
    }
    body.home section.column:after{
        top:220px;
        width:100%;
    }
    body.home section.column:before{
        display:none;
    }
    body.home section.column .no_data{
        min-height:0;
        text-align:center;
    }
    .topics_style {
        display:block;
        padding: 0;
    }
    .topics_style .h_style00 {
        padding:0 15px;
    }
    .topics_style div.top_area{
        margin:0 auto;
        width:285px;
    }
    .topics_style .slide_wrap a{
        max-width:268px;
        margin:0 10px;
        background:#fff;
        transition:transform .4s, color .4s;
    }
    .topics_style .slide_wrap .texts{
        padding:20px 15px 50px;
    }
    .topics_style .slide_wrap .texts:before{
        width:37px;
        height:37px;
    }
    .topics_style .slide_wrap .texts:after{
        width:9px;
        height:9px;
        border-radius:2px;
    }
    body.home .topics_style .slick-dots li button:before{
        background:#a9a9a9;
    }
    body.home .topics_style .slick-dots li.slick-active button:before,
    body.home .topics_style .slick-dots li button:hover:before{
        background:#fff;
    }
    body.home section.faq{
        padding:50px 0 55px;
    }
    body.home section.faq h2{
        text-align:center;
    }
    body.home section.faq .common_btn{
        margin:50px auto 0;
    }
    .topics_style .flex-box{
        margin-bottom:50px;
        padding:0 15px;
    }
    .topics_style .flex-box .slide_child,
    .topics_style .flex-box .slide_child:nth-child(3n){
        width:49%;
        margin-right:2%;
    }
    .topics_style .flex-box .slide_child:nth-child(2n){
        margin-right:0;
    }
    .topics_style .flex-box .slide_child:nth-child(n+3){
        margin-top:4%;
    }
    .topics_style .flex-box .slide_child a{
        margin:0;
    }
}

body:not(.home) .visual{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    height:320px;
    color:#fff;    background:url(../img/about/bg_main.jpg) no-repeat center / cover;
}
body:not(.home) .visual .mincho{
    font-size:2.5rem;
    letter-spacing:0.03em;
    margin-bottom:0.5em;
    font-weight:500;
}
body:not(.home) .visual p{
    font-size:1.125rem;
    letter-spacing:0.2em;
}
@media screen and (max-width:767px) {
    body:not(.home) .visual{
        height:220px;
    }
    body:not(.home) .visual h1{
        font-size:2.25rem;
    }
}

body.about #page_content{
    position:relative;
    z-index:5;    
}
body.about #page_content:before{
    content:"";
    display:block;
    position:absolute;
    width:720px;
    height:660px;
    top:0;
    right:0;
    background:#f8f8f8;
    z-index:-1;
}
body.about .sect01{
    position:relative;
    z-index: 3;
    padding-bottom:200px;
}
body.about .sect01 h2{
    text-align:left;
}
body.about .sect01 .sitewrap > *{
    padding-right:205px;
}
body.about #page_content .sect01 h2,
body.about #page_content .sect01 h3{
    text-align:left;
}
body.about .sect01 .right_img{
    position:absolute;
    top:0;
    z-index:-1;
    left:calc(50% + 400px);
}
body.about .sect01 .left_img{
    position:absolute;
    z-index:-1;
    right:calc(50% + 600px);
    bottom:50px;
}
body.about .sect02 .sitewrap,
body.about .sect03{
    position:relative;
    z-index:3;
    padding-bottom:80px;
    margin-bottom:120px;
}
body.about .sect02 .sitewrap:before,
body.about .sect03:before{
    content:"";
    display:block;
    position:absolute;
    width:100%;
    top:1.75em;
    bottom:0;
    right:0;
    background:#f8f8f8;
    z-index:-1;
}
body.about .sect02 h3{
    text-align:center;
}
body.about .sect03{
    margin:0;
}
body.about .sect03 .sitewrap{
    padding-bottom:90px;
}
body.about .sect03:before{
    background:#f3faff;
    top:375px;
}
body.about .sect03 .profiles{
    display:flex;
    align-items:center;
    margin-bottom:65px; 
}
body.about .sect03 .profiles .right_area {
    font-size:1.52rem;
    letter-spacing:0.1em;
    margin: auto;
    display:flex;
    flex-direction:column;
    justify-content: flex-start;
    align-items: flex-start;
}
body.about .sect03 .profiles .right_area dt{
    color:#0b5086;
}
body.about .sect03 .profiles .right_area dd{
    font-size:2em;
    font-weight:500;
}
body.about .sect04{
    padding:100px 0;
}
body.about .sect05{
    padding:100px 0;
    background:#f3faff;
}
body.about .sect05 .maps + .maps{
    margin-top:120px;
}
body.about .sect05 .maps p{
    color:#0b5086;
}
@media screen and (max-width:1600px) {
    body.about .sect01{
        display:flex;
        align-items:flex-start;
        flex-wrap:wrap;
    }
    body.about .sect01 .right_img{
        position:static;
        margin:0;
        transform:none;
    }
    body.about .sect01 .sitewrap{
        width:auto;
        max-width:calc(100% - 600px);
        min-width:0;
    }
    body.about .sect01 .left_img{
        left:auto;
        right:50px;
        bottom:auto;
        top:660px;
    }
    body.about .sect01 .sitewrap > *{
        padding-right:0;
    }
}
@media screen and (max-width:1200px) {
    body.about .sect01 .sitewrap{
        max-width:55%;
    }
    body.about .sect01 .right_img{
        width:40%;
    }
    body.about .sect01 .left_img{
        width:30%;
        top:50vw;
        right:0:
    }
}
@media screen and (max-width:767px) {
    body.about .sect01{
        justify-content:center;
        align-items:flex-end;
        padding-bottom:50px;
    }
    body.about .sect01 .sitewrap{
        max-width:100%;
        padding-bottom:30px;
    }
    body.about .sect01 .right_img{
        width:45%;
        margin-right:5%;
    }
    body.about .sect01 .left_img{
        position:static;
        width:35%;
    }
    body.about .sect02 .sitewrap{
        margin-bottom:50px;
        padding-bottom:50px;
        
    }
    body.about .sect03:before{
        top:calc(66vw + 155px);
    }
    body.about .sect03 .profiles{
        margin-bottom:40px; 
        display:block;
    }
    body.about .sect03 .profiles img{
        width:100%;
    }
    body.about .sect03 .profiles .right_area {
        width:auto;
        margin-top:10px;
        font-size:1.25rem;
        align-items: center;
    }
    body.about .sect03 .profiles .right_area dd{
        font-size:1.75em;
    }
    body.about .sect03 .sitewrap{
        padding-bottom:0;
    }
    body.about .sect04,
    body.about .sect05{
        padding:50px 0;
    }
    body.about .sect05 .maps + .maps{
        margin-top:40px;
    }
}

body.service .visual{
    background-image:url(../img/service/bg_main.jpg);
}
@media screen and (max-width:767px) {
    body.service #page_content h2 img{
        width: 86px;
    }
}

body.corporation-individual .visual{
    background-image:url(../img/service/bg_main.jpg);
}
body.tax-accountant_cpa .visual{
    background-image:url(../img/service/bg_main.jpg);
}
body.lawyer .visual{
    background-image:url(../img/service/bg_main.jpg);
}

body.corporation-individual #pan li:nth-child(2),
body.tax-accountant_cpa #pan li:nth-child(2),
body.lawyer #pan li:nth-child(2){
    display:none;
}


/**/

body.flow .visual{
    background-image:url(../img/flow/bg_main.jpg);
}

/**/

body.feature .visual{
    background-image:url(../img/feature/bg_main.jpg);
}
body.feature #page_content{
    position:relative;
    z-index:4;
}
body.feature #page_content:before{
    content: "";
    display: block;
    position: absolute;
    height: 640px;
    top: 250px;
    right: 0;
    left:30%;
    background: #f3faff;
    z-index: -1;
}
body.feature #page_content .flex-box{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
}
body.feature #page_content .sect01 .flex-box{
    margin-top:150px;
}
body.feature #page_content .sect01 .flex-box h3{
    width:32%;
    text-align:left;
    line-height:1.875;
}
body.feature #page_content .sect01 .flex-box .texts{
    width:63%;
    text-align:left;
}

body.feature #page_content .sect01 .attent_style{
    background:#ffff;
    padding:40px 35px 50px;
    margin:100px 0 90px;
    position:relative;
    box-shadow:0px -1px 10px rgba(0,0,0,0.1);
    border-bottom:solid 3px #0b5086;    
}
body.feature #page_content .sect01 .attent_style:before{
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 23px 48.5px 0 48.5px;
    border-color: #0b5186 transparent transparent transparent;
    content:"";
    display:block;
    position:absolute;
    bottom:-23px;
    left:0;
    right:0;
    margin:auto;
    z-index:5;
}
body.feature #page_content .sect01 .attent_style h3{
    font-size:1.5rem;
	font-family:  'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium" ,"游ゴシック体", "Yu Gothic", YuGothic , sans-serif;
    position:relative;
    padding-left:50px;
    width:fit-content;
    margin:0 auto 1.5em;
}
body.feature #page_content .sect01 .attent_style h3:before{
    content:"";
    display:block;
    width:38px;
    height:30px;
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    margin:auto;
    background:url(../img/feature/ico_attent.png) no-repeat top center / contain;
}
body.feature #page_content .sect01 .attent_style ul{
    display:flex;
    flex-wrap:wrap;
    font-size:1.125rem;
    margin:0 auto;
}
body.feature #page_content .sect01 .attent_style ul li{
    width:49%;
    padding-left:40px;
    position:relative;
}
body.feature #page_content .sect01 .attent_style ul li:nth-child(2n){
    margin-left:2%;
}
body.feature #page_content .sect01 .attent_style ul li:nth-child(n+3){
    margin-top:2%;
}
body.feature #page_content .sect01 .attent_style ul li:before{
    content:"";
    display:block;
    width:29px;
    height:29px;
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    margin:auto;
    background:url(../img/feature/ico_check.png) no-repeat top center / contain;
}
body.feature #page_content .sect02{
    color:#fff;
    margin:100px 0;
    padding:100px 0 120px;
    position:relative;
    z-index:5;
	background: rgb(11,80,134);
	background: -moz-linear-gradient(90deg, rgba(11,80,134,1) 31%, rgba(37,105,148,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(11,80,134,1) 31%, rgba(37,105,148,1) 100%);
	background: linear-gradient(90deg, rgba(11,80,134,1) 31%, rgba(37,105,148,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0b5086",endColorstr="#256994",GradientType=1);
}
body.feature #page_content .sect02:before,
body.feature #page_content .sect02:after{
    content:"";
    display:block;
    width:360px;
    height:275px;
    position:absolute;
    left:0;
    bottom:0;
    background:url(../img/feature/ico_q_left.png) no-repeat top center / contain;
    z-index:-2;
}
body.feature #page_content .sect02:after{
    left:auto;
    right:0;
    top:0;
    bottom:auto;
    width:400px;
    height:365px;
    background-image:url(../img/feature/ico_q_right.png);
}
body.feature #page_content .sect02 ol{
    margin:0;
    padding:0;
}
body.feature #page_content .sect02 li{
    margin:0;
    padding:25px 25px 25px 110px;
    background:#fff;
    position:relative;
    color:#282828;
    font-size:1.125rem;
    list-style:none;
}
body.feature #page_content .sect02 li:nth-child(n+2){
    margin-top:25px;
}
body.feature #page_content .sect02 li strong{
    display:flex;
    background:#9d8a3c;
    position:absolute;
    top:0;
    left:0;
    bottom:0;
    font-size:2.5rem;
    width:80px;
    text-align:center;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-weight:500;
	font-family: "Noto Serif JP", "游明朝体", "Yu Mincho",serif;
}
body.feature #page_content .sect03 .sitewrap{
    overflow:visible;
}
body.feature #page_content .sect03 h2{
    line-height:1.875;
    margin-bottom:2.25em;
}
body.feature #page_content .sect03 .flex-box {
    position:relative;
    margin-bottom:185px;
}
body.feature #page_content .sect03 .flex-box .in_box{
}
body.feature #page_content .sect03 .flex-box img{
    margin-left:-100px;
    margin-right:75px;
}
body.feature #page_content .sect03 .flex-box h3{
    text-align:left;
    font-size:1.5rem;
    color:#282828;
    position:relative;
    padding:10px 0 10px 110px;
    margin-bottom:25px;
    background:url(../img/feature/ico_p1.png) no-repeat top left / 89px 80px; 
}
body.feature #page_content .sect03 .flex-box h3 i{
	font-family:  'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium" ,"游ゴシック体", "Yu Gothic", YuGothic , sans-serif;
    display:block;
    font-size:0.875rem;
    margin-bottom:0.5em;
    color:#9d8a3c;    
}
body.feature #page_content .sect03 .flex-box.box02 h3{
    background-image:url(../img/feature/ico_p2.png);
}
body.feature #page_content .sect03 .flex-box.box03 h3{
    background-image:url(../img/feature/ico_p3.png);
}

body.feature #page_content .sect03 .flex-box.box02 img{
    order:2;
    margin-left:75px;
    margin-right:-100px;   
}

body.feature #page_content .sect03 .flex-box:before{
    content:"";
    display: block;
    position: absolute;
    height: 370px;
    top: 60px;
    right: 66%;
    width:830px;
    background: #f3faff;
    z-index: -1;
}
body.feature #page_content .sect03 .flex-box.box02:before{
    right:auto;
    left: 66%;
    width:830px;
}
body.feature #page_content .sect03 .service_link {
    position:relative;
    z-index:5;
    margin-bottom:140px;
}
body.feature #page_content .sect03 .service_link:before{
    content:"";
    display:block;
    background:#f8f8f8;
    position:absolute;
    top:1em;
    left:-100px;
    right:-100px;
    bottom:0;
    z-index:-1;
}
body.feature #page_content .sect03 .service_link h3{
    font-size:1.5rem;  
	font-family:  'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium" ,"游ゴシック体", "Yu Gothic", YuGothic , sans-serif;
}

body #page_content .service_link ul {
    display:flex;
    padding:120px 0 90px;
}
body #page_content .service_link ul li{
    width:49%;
}
body #page_content .service_link ul li:nth-child(2n){
    margin-left:2%;
}
body #page_content .service_link ul a{
    display:block;
    border:solid 1px #000;
    box-shadow:0 0 5px rgba(0,0,0,0.5);
    position:relative;
    text-align:center;
    text-decoration:none;
    margin-bottom:5px;
    background:#9d8a3c;
    color:#fff;
    transition:transform .4s,box-shadow .4s,background .4s,color .4s;
}
body #page_content .service_link ul a:hover{
    background:#fff;
    color:#9d8a3c;
    transform:translateY(5px);
    box-shadow:0 0 0px rgba(0,0,0,0);    
}
body #page_content .service_link ul a .box{
    border-bottom:solid 1px #000;
    padding-bottom:30px;
    font-size:1.75rem;
    position:relative;
}
body #page_content .service_link ul a .box {
    display:flex;
    align-items:center;
    justify-content:center;
    height:80px;
    padding:0;
}
body #page_content .service_link ul a h4{
    padding-left:90px;
    position:relative;
    margin:0;
    font-family:"Noto Serif JP", "游明朝体", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Times New Roman", "HG明朝B", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
body #page_content .service_link ul a h4:before{
    display:none;
}
body #page_content .service_link ul a .box i{
    display:inline-block;
    font-size:0.714em;
}
body #page_content .service_link ul a .box img{
    display:block;
    position:absolute;
    left:0;
    bottom:-23px;
}
body #page_content .service_link ul a .in_btn{
    border:none;
    max-width:100%;
}
body #page_content .service_link ul a:hover .in_btn{
    background:#9d8a3c;
}
@media screen and (max-width:1200px) {
    body.feature #page_content .sect01 .flex-box h3{
        width:40%;
    }
    body.feature #page_content .sect01 .flex-box .texts{
        width:58%;
    }
    body.feature #page_content .sect01 .attent_style{
        margin:100px 2% 90px;
    }
    body.feature #page_content .sect01 .attent_style ul li:before{
        top:0;
        bottom:auto;
    }
    body.feature #page_content .sect02 ol{
        margin:0 2%;
    }
    body.feature #page_content .sect03 .flex-box img{
        margin-left:-100px;
        margin-right:50px;
    }
    body.feature #page_content .sect03 .flex-box.box02 img{
        margin-left:50px;
        margin-right:-100px;   
    }
}
@media screen and (max-width:767px) {
    body.feature #page_content:before{
        height: 480px;
        top: 175px;
        right: 0;
        left:30px;
    }
    body.feature #page_content .flex-box{
        display:block;
    }
    body.feature #page_content .sect01 .flex-box{
        margin-top:75px;
    }
    body.feature #page_content .sect01 .flex-box h3{
        width:100%;
        text-align:center;
    }
    body.feature #page_content .sect01 .flex-box .texts{
        width:100%;
    }
    body.feature #page_content .sect01 .attent_style{
        padding:20px 15px 30px;
        margin:50px 15px 40px;
    }
    body.feature #page_content .sect01 .attent_style h3{
        font-size:1.275rem;
        padding-left:40px;
        text-align:left;
    }
    body.feature #page_content .sect01 .attent_style h3:before{
        width:27px;
        height:21px;
    }
    body.feature #page_content .sect01 .attent_style ul{
        display:flex;
        flex-wrap:wrap;
        font-size:1.125rem;
        margin:0 auto;
    }
    body.feature #page_content .sect01 .attent_style ul li{
        width:100%;
        padding-left:30px;
        font-size:1rem;
    }
    body.feature #page_content .sect01 .attent_style ul li:nth-child(2n){
        margin-left:0;
    }
    body.feature #page_content .sect01 .attent_style ul li:nth-child(n+2){
        margin-top:15px;
    }
    body.feature #page_content .sect01 .attent_style ul li:before{
        width:20px;
        height:20px;
    }
    body.feature #page_content .sect02{
        margin:75px 0;
        padding:50px 0 60px;
    }
    body.feature #page_content .sect02:before{
        width:270px;
        height:206px;
    }
    body.feature #page_content .sect02:after{
        width:300px;
        height:273px;
    }
    body.feature #page_content .sect02 ol{
        margin:0 15px;
    }
    body.feature #page_content .sect02 li{
        padding:10px 10px 10px 75px;
        font-size:1rem;
    }
    body.feature #page_content .sect02 li:nth-child(n+2){
        margin-top:15px;
    }
    body.feature #page_content .sect02 li strong{
        width:60px;
        font-size:1.75rem;
    }
    body.feature #page_content .sect03 h2{
        font-size:min(5.25vw,1.5rem);
    }
    body.feature #page_content .sect03 .flex-box {
        margin-bottom:50px;
    }
    body.feature #page_content .sect03 .flex-box img{
        margin:0 0 15px 15px;
        max-width:100%;
        height:auto;
    }
    body.feature #page_content .sect03 .flex-box h3{
        padding:0 0 10px 70px;
        margin-bottom:15px;
        background-size:58px auto; 
    }
    body.feature #page_content .sect03 .flex-box h3 i{
        margin-bottom:0.25em;
    }
    body.feature #page_content .sect03 .flex-box.box02 img{
        margin:0 15px 15px -15px;  
    }
    body.feature #page_content .sect03 .flex-box:before{
        height: 370px;
        right: 20%;
        width:100%;
    }
    body.feature #page_content .sect03 .flex-box.box02:before{
        left: 20%;
    }
    body.feature #page_content .sect03 .service_link {
        margin-bottom:75px;
    }
    body.feature #page_content .sect03 .service_link:before{
        top:2.25em;
        left:0;
        right:0;
    }
    body #page_content .service_link ul {
        display:block;
        padding: 30px 0 45px;
    }
    body #page_content .service_link ul li{
        width:100%;
    }
    body #page_content .service_link ul li:nth-child(2n){
        margin:60px 0 0;
    }
    body #page_content .service_link ul a .box{
        border-bottom:solid 1px #000;
        padding-bottom:30px;
        font-size:1.75rem;
        position:relative;
    }
    body #page_content .service_link ul a .box {
        height:80px;
        padding:0 0 0 90px;
        position:relative;
        justify-content:flex-start;
    }
    body #page_content .service_link ul a h4{
        padding-left: 0;
        position:static;
        margin:0;
    }
    body #page_content .service_link ul a h4:after{
        content:"";
    }
    body #page_content .service_link ul a .box i{
        display:block;
        font-size:0.714em;
    }
    body #page_content .service_link ul a .box img{
        width: 57px;
        bottom: 0;
        left:15px;
    }
    body #page_content .service_link ul a .in_btn{
        min-height: 57px;
    }
    body #page_content .service_link ul a:hover .in_btn{
        background:#9d8a3c;
    }
     body #page_content .service_link ul a[href$="/lawyer/"] .box {
         justify-content:center;
         padding:0;
    }
}

body.price .visual{
    background-image:url(../img/price/bg_main.jpg);
}
body.price .small_caption{
    margin-top:40px;
    font-size:0.875rem;
}
body.price .small_caption .text_indent2{
    text-indent:-2.75em;
    margin-left:2.75em;
}
body.price .small_caption li + li{
    margin-top:1em;
}


body.news .visual,
body.archive .visual,
body.single .visual{
    background-image:url(../img/news/bg_main.jpg);
}
body.single .vk_posts {
    margin-bottom:70px;    
}
body.single .vk_posts .vk_post{
    position:relative;
    border-bottom:solid 1px #e5e5e5;
    align-items:center;
    width:100%;
    z-index:5;
    transition:background .4s;
}
body.single .vk_posts .vk_post a{
    display:flex;
    width:100%;
    padding:10px 30px 10px 140px;
    align-items:center;
    min-height:88px;
    transition:color .4s;
}
body.single .vk_posts .vk_post a:after{
    content:"";
    display:block;
    border-top:solid 2px #0b5086;
    border-right:solid 2px #0b5086;
    width:9px;
    height:9px;
    position:absolute;
    right:10px;
    transform:rotate(45deg);
    transition:right .4s;
}
body.single .vk_posts .vk_post .published{
    position:absolute;
    z-index:-1;
    top:0;
    bottom:0;
    margin:auto;
    display:flex;
    align-items:center;
    transition:color .4s,transform .4s;
}
body.single .vk_posts .vk_post:hover{
    background:#f4fafe;
} 
body.single .vk_posts .vk_post:hover a,
body.single .vk_posts .vk_post:hover .published{
    color:#0b5086;
    text-decoration:none;
}
body.single .vk_posts .vk_post:hover .published{
}

@media screen and (max-width:767px) {
    body.single .vk_posts .vk_post .published{
        font-size:0.875rem;
    }
    body.single .vk_posts .vk_post a{
        display:flex;
        width:100%;
        padding-left:80px;
        padding-right:30px;
        align-items:center;
        min-height:70px;
        transition:color .4s;
    }
    body.single .vk_posts .vk_post a:after{
        right: 10px;
        width: 9px;
        height: 9px;
        border-radius: 2px;
    }
}


body.single .entry-header{
    display:flex;
    flex-direction:column-reverse;
    margin-bottom:30px;
    padding-bottom:30px;
    border-bottom:solid 1px #e5e5e5;
}
body.single .entry-header .entry-title{
    font-size:1.75rem;
    margin-top:0.5em;
    color:#0b5086;
    font-weight:500;
	font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Times New Roman", "HG明朝B", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
body.single .article_end{
   margin:70px 0 170px;
}
@media screen and (max-width:767px) {
    body.single .article_end{
       margin:40px 0 100px;
    }
}
body.column .visual,
body.post-type-column .visual{
    background-image:url(../img/column/bg_main.jpg);
}

body.inquiry .visual,
body.check .visual,
body.error .visual,
body.thanks .visual{
    background-image:url(../img/inquiry/bg_main.jpg);
}
.mw_wp_form {
    margin-top:2em;
}
.mw_wp_form p strong{
    font-size:1.125rem;
}
.mw_wp_form .text-danger{
    display:inline-block;
    margin:0 1em;
    font-size:0.75rem;
    background:#c50c0c;
    color:#fff;
    width:3em;
    text-align:center;
    vertical-align:middle;
}
.mw_wp_form{
}
.mw_wp_form form{
}
.mw_wp_form input[type="text"],
.mw_wp_form input[type="search"],
.mw_wp_form input[type="email"],
.mw_wp_form input[type="tel"],
.mw_wp_form input[type="number"],
.mw_wp_form input[type="password"],
.mw_wp_form textarea{
	appearance:none;
	-webkit-appearance:none;
	display:block;
	vertical-align:middle;
	border:solid 1px #fff;
	border-radius:0px;
	font-size:1rem;
	padding:0 1em;
	height:3em;
	line-height:3em;
	background:#fff;
    width:100%;
    border:solid 1px #d2d2d2;
    border-radius:5px;
    margin:0.5em 0 2em;
}
.mw_wp_form input::placeholder,
.mw_wp_form textarea::placeholder{
	color:#ccc;
}
.mw_wp_form .error{
    display:block;
    margin:-2em 0 3em;
}
.mw_wp_form textarea{
	height:8em;
	padding:0.5em 1em;
	margin-bottom:3em;
	line-height:1.875;
}
.mw_wp_form label{
	cursor:pointer;
}
.mw_wp_form input[type="radio"],
.mw_wp_form input[type="checkbox"]{
	display:none;
}
.mw_wp_form input[type="radio"] + span,
.mw_wp_form input[type="checkbox"] + span{
	display:inline-block;
	padding:0.25em 0.25em 0.25em 2em;
	position:relative;
}
.mw_wp_form input[type="radio"] + span:before,
.mw_wp_form input[type="checkbox"] + span:before,
.mw_wp_form input[type="radio"] + span:after,
.mw_wp_form input[type="checkbox"] + span:after{
	content:"";
	display:inline-block;
	width:1.25rem;
	height:1.25rem;
	border:solid 2px #ececec;
	position:absolute;
	left:0;
	top:0.5em;
    margin:auto;
	transition:opacity .2s;
}
.mw_wp_form input[type="checkbox"] + span:after{
	border:none;
	width:0.75rem;
	height:0.5rem;
	border-top:solid 3px #0085ce;
	border-right:solid 3px #0085ce;
	transform:rotate(135deg);
	top:0.75em;
	left:0.25em;
	opacity:0;
}
.mw_wp_form input[type="radio"] + span:before{
	border-radius:50%;
	width:18px;
	height:18px;
	top:7px;
}
.mw_wp_form input[type="radio"] + span:after{
	border-radius:50%;
	width:10px;
	height:10px;
	border:none;
	background:#333;
	top:12px;
	left:5px;
	opacity:0;
}
.mw_wp_form input[type="radio"]:checked + span:after,
.mw_wp_form input[type="checkbox"]:checked + span:after{
	opacity:1;
}
.mw_wp_form select{
	display:inline-block;
	vertical-align:middle;
	border:solid 1px #d2d2d2;
	border-radius:5px;
	font-size:1rem;
	color:#282828;
	padding:0 2.5em 0 1em;
	height:3em;
	line-height:3em;
	cursor:pointer;
    margin-bottom:0.5em;
}
.mw_wp_form input[name="tel"]{
    width:fit-content;
}
.mw_wp_form input + em{
    display:block;
    font-size:0.875rem;
}
.mw_wp_form input:not([type="hidden"]) + em{
    margin:-1.5em 0 2.5em;
}

.mw_wp_form .form_els{
	display:flex;
	flex-wrap:wrap;
}
.mw_wp_form .form_els.inlines{
	display:block;
	padding-bottom: 0.25em;
}
.mw_wp_form .form_els > *{
	margin-right:0.5em;
}
.mw_wp_form .mwform-checkbox-field{
    display:block;
    margin:4em 0;
    text-align:center;
}
.mw_wp_form .mwform-checkbox-field span{
    font-weight:600;
}
.mw_wp_form .send_area li:empty{
    display:none;
}
.mw_wp_form .send_area{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:row-reverse;
    margin:70px auto;
}
.mw_wp_form .send_area li{
    position:relative;
    background:#fff;
    z-index:5;
    width:302px;
	transition:background .4s,color .4s,transform .4s;
}
.mw_wp_form .send_area li:after{
	content: "";
	width: 32px;
	height: 2px;
	background:#282828;
	display: inline-block;
	position: absolute;
	margin:auto;
	top:0;
	bottom:0;
	left:0;
	margin:auto;
	transition:background .4s,width .4s;
}
.mw_wp_form input[type="submit"]{
	display:flex;
	max-width:302px;
	width:100%;
	border:solid 1px #282828;
	color:#282828;
	font-size:1rem;
	padding:10px;
	min-height:4em;
	align-items:center;
	justify-content:center;
	position:relative;
	text-decoration:none;
	margin:0;
	background:transparent;
	cursor:pointer;
	transition:background .4s,color .4s,transform .4s;
}
.mw_wp_form .send_area li:hover{
	background:#282828;
	color:#fff;
	opacity:1;
	transform:translateY(2px);
}
.mw_wp_form li:hover input[type="submit"]{
	color:#fff;
}
.mw_wp_form .send_area li:hover:after{
    background:#fff;
}
.mw_wp_form .send_area li + li{
    margin-right:20px;
}

body.check .mw_wp_form p:nth-of-type(n+2) strong,
body.check .mw_wp_form p:nth-of-type(n+2) i{
    margin-top:1.5em;
    display:inline-block;
}
@media screen and (max-width:767px) {
    .mw_wp_form .send_area{
        flex-direction:column;
        margin:40px auto;
    }
    .mw_wp_form .send_area li,
    .mw_wp_form .send_area li + li{
        margin:20px 0 0;
    }
    #page_content .edit_wrap .mw_wp_form p {
        font-size:0.875rem;
    }
    #page_content .edit_wrap .mw_wp_form p {
        text-align:left !important;
    }
    #page_content .edit_wrap .mw_wp_form p strong{
        display:inline-block;
    }
    .mw_wp_form .text-danger{
        margin:0 0.5em;
    }
}

ul.page-numbers{
    text-align:center;
    margin:0 auto 140px;
    display:flex;
    gap:0.5em;
}
ul.page-numbers li{
}
ul.page-numbers li > *{
    border:solid 1px #e5e5e5;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:5px;
    height:100%;
    padding:0.5em 1em;
    min-width:3em;
    font-size:1rem;
    transition:color .4s,background .4s;
}
ul.page-numbers li > .current,
ul.page-numbers li > a:hover{
    background:#0b5086;
    color:#fff;
    text-decoration:none;
}

body.privacy .visual{
    background-image:url(../img/privacy/bg_main.jpg);
}
body.faq .visual{
    background-image:url(../img/faq/bg_main.jpg);
}
body.voice .visual{
    background-image:url(../img/voice/bg_main.jpg);
}