#SubImg {
    height: 40vh !important;
    width: 100%;
    background: url(../imgs/main_bg.jpg);
    background-size: cover;
    background-position: 50% 50% !important;

}

.subc {
    margin-bottom: 50px;
    font-size: 85%;
}

.bghk {
    background-image: url(../imgs/RE_bg_gr.svg);
    height: 200px;
    background-repeat: repeat-x;
}





.buttonmt {
    padding-top: 10px !important;
}

.navbar-nav>li>a {
    padding-top: 18px;
}

.navbar-nav>li>span {
    padding-top: 0px;
    display: block;
}

.linetop {
    margin-top: 15px !important;
    height: 40px;
}




.bgmainsub {
    background-image: url(../imgs/sub1.svg);
    height: 30vh;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 70% 70%;



}

.subhe {
    color: #fff;
    font-family: "A-OTF ゴシックMB101 Pro";
    text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.5);
}

.menullst li {
    float: left !important;
    width: 50px;
    height: 30px;
}


@media screen and (max-width:991px) {
    #MainImg {
        height: 360px !important;
        width: 100%;
        background: url(../imgs/main_bg.jpg);
        background-size: cover;
        max-height: 800px;

    }

    .headermenu {
        height: 46px !important;
        background-color: #000;
    }

    .mainmargin {
        padding-top: 90px !important;
    }

    .mainscroll {
        margin-top: -19vh;
        margin-left: -5px;
    }

    .menulogom {
        padding-top: 10px !important;
    }

    .ecm {
        margin-bottom: 30px;
    }

    .ecc {
        text-align: center;
    }

}

@media screen and (max-width:767px) {
    .scm {
        margin-bottom: 30px;
    }

    .mainmargin {
        padding-top: 110px !important;
    }

    .mainscroll {
        margin-top: -19vh;
        margin-left: -10px !important;
    }

    .menulogom {
        padding-top: 10px !important;
    }

    .spl {
        padding-left: 0px;
    }


}

.mainmargin {
    padding-top: 220px;
}

.mainscroll {
    margin-top: -19vh;
    margin-left: -5px;
}

.menulogom {
    padding-top: 20px;
}

.dn {
    display: none;
    ;
}

.container {
    max-width: 1200px !important;
}

.headermenu {
    height: 70px;
    background-color: #000;
}



#pagetop {
    width: 50px;
    height: 50px;
    position: fixed;
    right: 20px;
    bottom: 70px;
    background: #000;
    opacity: 0.6;
    border-radius: 50%;
}

#pagetop a {
    position: relative;
    display: block;
    width: 50px;
    height: 50px;
    text-decoration: none;
    text-align: center;
}

#pagetop a::before {
    font-family: "Font Awesome 5 Free";
    content: '\f106';
    font-weight: 900;
    font-size: 25px;
    color: #fff;
    position: absolute;
    width: 25px;

    top: 10px;
    bottom: 10px;
    right: 0;
    left: 0;
    margin: auto;
}


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

@keyframes emoi {
    0% {
        opacity: 0;
    }

    20% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes bemoi {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.anim {
    animation: 5s emoi;
}


body {

    animation: 2s bemoi;
}




.main_logo {
    max-height: 100px;
    margin-top: 10px;
}


.menu_bar {
    background-color: #222;
    height: 60px;
    font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
    font-weight: 500;
    font-size: 90%;
    color: #333;
}

.menu_bar_content {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 60px;

}

.menu_bar_content li {
    list-style: none;
    color: #eee;
    text-align: center;
}

.menu_bar_content li>a {
    color: #eee;

}

.gtop {
    height: 30px;
}

.liner {
    width: 0.5px;
    height: 30px;
    background-color: #eee;
}

.main_com {
    font-size: 60%;
    padding-top: 45px;
}

.telicon {
    height: 20px;
}

.tel_con {
    font-size: 175%;
    color: #f00;
    font-weight:500;

}

.tel_hd {
    font-size: 80%;

}

rt {
    font-size: 20%;
    color: #000;
}

.tomail {
    width: 100px;
    background-color: red;
    padding: 10px 0;
}

.main_right {
    float: right;
}

.mr_content {
    float: left;
}

.telnum_box {
    padding-top: 35px;
    padding-right: 20px;

}

.navbar-default {
    background: rgba(255, 255, 255, 1);
}

@media screen and (max-width:767px) {
    .htheader {
        max-height: 60px !important;
    }

    .main_logo {
        height: 50px;
        margin-top: 0px;
    }

    .logo_md {
        margin-top: 5px !important;
    }

    #MainImg {
        margin-top: 60px;
    }
}




@media screen and (min-width:1200px) {
    .bgmain {
        background-image: url(../image/main_top_5500.png);
        height: 570px;
        max-width: 1200px;
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: contain;


    }

    #MainImg {
        height: 570px !important;
        width: 100%;
        background: url(../image/main_bg.jpg);
        background-size: cover;
        background-position: 50% 63% !important;
        margin-top: 180px;

    }

}

@media screen and (min-width:991px) and (max-width:1199px) {
    .bgmain {
        background-image: url(../image/main_top_5500.png);
        height: 500px;

        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: contain;

    }

    #MainImg {
        height: 500px !important;
        width: 100%;
        background: url(../image/main_bg.jpg);
        background-size: cover;
        background-position: 50% 70% !important;
        margin-top: 180px;

    }
    .main_logo {
        margin-top: 0px;
    }

}

@media screen and (min-width:768px) and (max-width:990px) {
    .bgmain {
        background-image: url(../image/main_top_5500.png);
        height: 354px;

        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: contain;

    }

    #MainImg {
        height: 360px !important;
        width: 100%;
        background: url(../image/main_bg.jpg);
        background-size: cover;
        background-position: 50% 70% !important;
        margin-top: 180px;

    }
    .main_logo {
        margin-top: 0px;
    }

}



@media screen and (max-width:767px) {
    .bgmain {
        background-image: url(../image/main_top_sm_5500.png);
        height: calc(552px - (767px - 100vw) / 2) !important;

        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: contain;
        width: 100%;
    }

    #MainImg {
        height: calc(552px - (767px - 100vw) / 2) !important;
        width: 100%;
        background: url(../image/main_bg.jpg);
        background-size: cover;
        background-position: 50% 50% !important;
        margin-top: 180px;

    }


}







@media screen and (max-width:767px) {


    #MainImg {
        margin-top: 60px;
    }
}


.footer_banner {
    margin: 30px 0;
}

#footerline {
    height: 3px;
    width: 100%;
    background-color: #f00;
}

.footerlogo {
    width: 100%;
}
.footer_com {
    font-size: 60%;
    padding-top: 38px;
}
@media screen and (max-width:991px) {
    .footerlogo {
        width: 100%;
    }

    .footer_left {
        margin-top: 0px;
    }

}



.footer_right {
    text-align: right;
    font-size: 80%;
    padding-top: 20px;
}

.footer_left {
    padding-top: 5px;
}

@media screen and (min-width:992px) and (max-width:1199px) {
    .logo_md {
        padding-top: 15px;
    }
}

@media screen and (min-width:768px) and (max-width:991px) {
    .logo_md {
        padding-top: 15px;
    }
}

@media screen and (max-width:767px) {
    .footer_right {
        text-align: center;
    }

    .footerlogo {
        width: 100%;
    }

}

.bt01 {
    width: 150px;
}

.bt02 {
    width: 162px;
}

.liner_h {
    height: 1px;
    width: 60%;
    background-color: rgba(255, 255, 255, 0.5);
    padding: 0 !important;
    margin-right: auto;
    margin-left: auto;
}

#ToForm {
    background-color: #f00;
    position: fixed;
    bottom: 10%;
    right: 0;
    width: 40px;
    height: 250px;
    padding-top: 5px;
    padding-left: 8px;
}

#ToForm img {
    width: 25px;
    height: 230px;
}

.nav>li>a:hover {
    background-color: transparent;
}

.container {
    max-width: 1150px;
}

.top_s1 {
    margin-top: 50px;
    margin-bottom: 50px;
}

.waribiki {
    padding-top: 30px;
}

.top_s2 {
    background-color: #fff3e5;
    padding-bottom: 45px;
}

.s2_header {
    text-align: center;
    margin-top: -10px;
    text-shadow: 2px 2px 0px #fff, -2px -2px 0px #fff;
    color: #000;
}

.top_s2_bf {
    height: 115px;
    width: 100%;
    background-image: url(../image/curve_bg.png);
    background-position: 50% 100%;
    background-size: contain;
    background-repeat: no-repeat;
}

.s2_header span {
    color: #f00;
}

.s2_c>div {
    padding: 15px;
}


.top_s3 {
    margin-top: 60px;
}




.s3_contents>div:first-child {
    border: 6px solid #fff3e5;
    min-height: 200px;
}

@media screen and (min-width:1200px) {
    .s3_contents>div:first-child {
        min-height: 250px;
        padding: 15px;
    }

}

.s3_hr {
    height: 2px;
    width: 40px;
    background-color: #ff9700;
    margin-right: auto;
    margin-left: auto;
    margin-top: 25px;
    margin-bottom: 25px;
}


@media screen and (min-width:768px) and (max-width:991px) {
    .s3_contents>div:first-child {
        min-height: 150px;
    }

    .s3_com {
        font-size: 60%;
    }

    .s3_hr {
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .s3_h2 {
        font-size: 130% !important;
    }

    .s4_header>h3 {
        font-size: 120%;
    }

}


@media screen and (min-width:992px) and (max-width:1199px) {

    .s3_com {
        font-size: 90%;
    }

    .s3_hr {
        margin-top: 15px;
        margin-bottom: 15px;
    }



}


@media screen and (max-width:767px) {
    .s3_contents>div:first-child {
        height: auto;
        margin-bottom: 30px;
        padding-bottom: 15px;
    }

    .credit_box {
        margin-bottom: 20px;
    }

    .s2_header {
        font-size: 120%;
    }

    .subheader {
        padding-right: 30px;
        padding-left: 30px;
    }


}

.top_s3 .s3_contents {
    margin-top: 30px;
}

.s3_h2 {
    position: relative;
    text-align: center;
    font-size: 160%;
}


.h2_small {
    font-size: 70%;
    padding-right: 15px;
}

.h2_red {
    color: #f00;
}

.top_s4 {
    background-color: #fff3e5;
    padding-top: 20px;
    padding-bottom: 20px;
    margin-top: 30px;
    margin-bottom: 30px;
}

.credit_box {
    background-color: #02a9e7;
}

.emoney_box {
    background-color: #e73a3b;
}

.s4_header {
    text-align: center;
    color: #fff !important;
    padding-bottom: 15px;
}

.s4_header>h3 {
    color: #fff !important;
}

.s4_header {
    padding-top: 10px;
}

.s4_header>div {
    font-size: 80%;
    padding-bottom: 15px;
}

.s4_content {
    background-color: #fff;
}

.credit_box, .emoney_box {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
}



#subheader {
    background-color: #fff4e6;
    height: 190px;
    width: 100%;
    margin-top: 180px;
}

#subheader {
    padding-top: 40px;

}

#subheader h2 {
    color: #ff9800 !important;
    position: relative;
    z-index: 1000;
    width: auto;
    font-family: "BIZ UDPGothic";
}

.subtitle {
    position: relative;
}

.subtitle_c {
    background-color: #fff4e6;
    padding-right: 30px;
}

.subline {
    height: 1px;
    width: 95%;
    background-color: #ff9800 !important;
    position: relative;
    content: " ";
    bottom: 30px;
    overflow: hidden;
    z-index: 800;
}

@media screen and (max-width:767px) {
    #subheader {
        height: 82px;
        margin-top: 55px;
        padding-top: 15px;
    }

    .subtitle div {
        font-size: 80%;
    }

    .subtitle_c {
        font-size: 70%;
    }

    .subtitle h2 {
        margin-top: 0px;
    }

    .subline {
        bottom: 27px;
    }

}

.shaken_list p {
    background-color: #ff9800;
    color: #fff;
    padding: 8px;
    font-weight: 600;
    font-size: 70%;
    margin-right: 0;
    margin-left: 0;
    margin-top: 3px;
    text-align: center;
}

.sub_ch {
    text-align: center;
    margin-top: 15px;
    margin-bottom: 30px;
}

.shaken_hd1 {
    font-size: 50%;
    font-family: "BIZ UDPGothic";
}

.shaken_hd2 {
    font-size: 150%;
    font-family: "BIZ UDPGothic";
    color: #f00;
}

.sub_shaken_com {
    background-color: #fff4e6;
    padding-top: 30px;
    padding-bottom: 30px;
    font-size: 90%;
}

.sha_img {
    margin-top: 15px;
}

.shaken_kou {
    margin-bottom: 50px;
    margin-top: 30px;
}

.shaken_kou h3 {
    font-size: 110%;
    border-bottom: 1px solid #ff9800;
    padding-bottom: 5px;
}

.company_prof {
    margin-top: 60px;
}

.company_prof .container, reserve_content .container, .price_content .container, .hosei .container, .flow_ch .container, .mw950 .container , .insp_content .container {
    max-width: 950px !important;
}

.complogo {}

.company_logo {
    margin-top: 20px;
}

.company_prof h3, .reserve_content h3, .price_content h3 {
    font-size: 110%;
    border-bottom: 1px solid #ff9800;
    padding-bottom: 5px;
}

.company_access {
    margin-bottom: 60px;
}

.companytable th, .reservetable th {
    background: #ff9800;
    color: #fff;
    border: 2px solid #ff9800;
}

.companytable td {
    background: #fff;
    color: #000;
    border: 2px solid #ff9800 !important;
}

.reservetable td {

    color: #000;
    border: 2px solid #ff9800 !important;
}


.companytable th, .reservetable th {
    margin-bottom: 300px;
}

.companytable, .reservetable {
    border-collapse: separate;
    border-spacing: 0 10px;
}

.reservetable {
    padding-top: 15px;
    background-color: #fff4e6;
}


.price_content {
    margin-top: 30px;
}

.bg_y {
    background-color: #fff4e6;
    padding-top: 30px;
    padding-bottom: 30px;
}

.bg_cw {
    background-color: #fff;
    border-radius: 10px;
    padding-top: 15px;
    border: 4px solid #fff4e6;
    
}

.sp_img {
    margin-bottom: 10px;
}

.sprice {
    border-collapse: separate;
    border-spacing: 0 6px;
    font-size: 90%;
    text-align: center;
}


.sp_y th {
    background: #ff9800;
    border: 2px solid #ff9800;
}

.sp_y td {
    background: #fff;
    border: 2px solid #ff9800;
    border-top: 2px solid #ff9800 !important;
}



.sp_r th {
    background: #f00;
    border: 2px solid #f00;
}

.sp_r td {

    border: 2px solid #f00;
    border-top: 2px solid #f00 !important;
    color: #f00;
    font-weight: 600;
}

.sp_b th {
    background: #0079ff;
    border: 2px solid 0079ff;
}

.sp_b td {

    border: 2px solid #0079ff;
    border-top: 2px solid #0079ff !important;
    font-weight: 600;
}


.row {
  display: flex;
  flex-wrap: wrap;
}



.sprice th {
    color: #fff;
}

.price_att {
    font-size: 70%;
    margin-top: 20px;
}

.h3_hd {
    margin-bottom: 20px;
}

.seibi_bg {
    background-color: #ff4c00;
    padding-top: 10px;
    padding-bottom: 10px;
}

.h67 {
    padding: 8px;
}

.h67 img {
    max-width: 90%;
}

.xsh {
    margin-top: 10px;
    margin-bottom: 20px;
}

.flow_hd1, .flow_hd2 {
    font-family: "BIZ UDPGothic";
}

.flow_hd1 {
    background: linear-gradient(transparent 70%, #ffff00 70%);
    font-size: 90%;
}

.flow_hd2 {
    font-size: 30%;
}

.flow_ch {
    line-height: 70%;
}

.bg_flow {
    background-color: #fff4e6;
}

.stepicon {
    width: 80px;
    height: 28px;
}

.flow_box {
    background-color: #fff;
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 15px;
    text-align: left;
}

.flow_box h3 {
    text-align: left;
    margin-top: 10px;
    font-size: 110%;

}

.flow_content {
    text-align: left;
    margin-top: 10px;
    margin-bottom: 15px;
}

.flow_title {
    padding-left: 10px;
    color: #ff4c00;
}

@media screen and (min-width:768px) and (max-width:991px) {
    .flow_content {
        font-size: 75%;
    }

    .flow_box h3 {
        margin-top: 5px;
        font-size: 100%;
    }

    .stepicon {
        width: 68px;
        height: 23px;
    }

}

@media screen and (max-width:767px) {
    .flow_content {
        font-size: 75%;
    }

    .flow_box {
        width: 90%;
        margin-right: auto;
        margin-left: auto;
    }

    .stepicon {
        width: 68px;
        height: 23px;
    }

    .mtxs {
        margin-top: 8px !important;
    }

    .mtxs2 {
        margin-top: 15px;
    }

}

.flow_att {
    font-size: 65%;
    text-align: right;
    margin-top: -10px;
    margin-bottom: 20px;
 

}

.arrowunder {
    width: 60px;
    margin-right: auto;
    margin-left: auto;
}

.flow_content h4 {
    margin-top: 30px;
}

.shaken_c{
    margin-bottom: 40px;
}

.shaken_cn div {
    margin-top: 15px;
    margin-bottom: 15px;
}

.insp_content h3 {
    border-top: solid 2px #858585;/*上線*/
    border-bottom: solid 2px #858585;/*下線*/
    font-size: 100%;
    padding-top: 8px;
    padding-bottom: 5px;

}

.ired {
    color:#ff0045;   
}

.iblue {
    color:#006dff;   
}

.iyel {
    color:#ff9800;   
}

.ired_li div ,.iblue_li div ,.iyel_li div {
    margin-top: 5px;
    margin-bottom: 5px;
    font-size: 90%;
    position: relative;
    display: block;
    padding-left: 15px;

}

.ired_li div::before {
    position: absolute;

    top: calc(50% - 5px);
    width: 8px;
    height: 8px;
    left: 0px;
    content: '';
    border-radius: 50%;
    background: #ff0045;
}

.iblue_li div::before {
    position: absolute;

    top: calc(50% - 5px);
    width: 8px;
    height: 8px;
    left: 0px;
    content: '';
    border-radius: 50%;
    background: #006dff;
}

.iyel_li div::before {
    position: absolute;

    top: calc(50% - 5px);
    width: 8px;
    height: 8px;
    left: 0px;
    content: '';
    border-radius: 50%;
    background: #ff9800;
}


.form-width { 
    width:70%; 
    max-width: 600px;
}
.wpcf7 input[type="text"] {
  width: 70%;
  max-width: 100%;
  box-sizing: border-box;
}

#topto img {
width: 50px;
height: 50px;

}

.ifs_flow {
    display: none;
}

#topto{
    position: fixed;
right: 60px;
bottom: 80px;
}