@media screen and (min-width:1921px) {
    header {
        left: 50%;
        transform: translateX(-50%)
    }
    .iBttl::before {
        width: 18px
    }
    .iBttl::before::before {
        width: 17px;
        height: calc(100% + 4px);
        top: -2px;
        right: -16px
    }
}

@media only screen and (width:1920px) {
    .hd-container {
        padding: 0 2px 0 7px
    }
    .hnav .iMail {
        padding-bottom: 7px
    }
    .ibtnContact {
        padding-top: 2px
    }
    .iAbout-bframe {
        margin-left: 2px
    }
    .iAbout-lsbbtn li a {
        padding-left: 23px
    }
    .iWaterproof-lsitem li:first-child {
        padding-left: 43px
    }
    .iWaterproof-bcnt .iH3-ttl {
        padding-bottom: 29px
    }
    .iWaterproof .iLsbbtn {
        margin-right: -1px
    }
    .iAdvantage-bsec:nth-child(2) .iAdvantage-bsec-cnt,
    .iAdvantage-bsec:nth-child(3) .iAdvantage-bsec-cnt {
        margin-top: 85px
    }
    .ft-container,
    .iAdvantage .iH3-ttl,
    .iAdvantage-bcol,
    .iAdvantage-btn,
    .iBanner-container,
    .iContact-container,
    .iMvs-container {
        position: relative;
        left: -1px
    }
    .iAdvantage {
        background-position: top center
    }
}

@media screen and (min-width:751px) and (max-width:1919px) {
     :root {
        --hhd: 105px
    }
    .hd-container {
        --wblogo: 13vw;
        padding: 0 .104vw 0 7px
    }
    .hnav-menu>ul {
        margin-right: .957vw
    }
    .hnav-menu>ul>li:not(:last-child) {
        margin-right: 1.489vw
    }
    .hnav-menu-link,
    .hnav-menu-linksub,
    .iLine-small,
    .iMail-txtsmall {
        font-size: .851vw
    }
    .hnav-hv::before {
        width: calc(100% + .319vw);
        left: -.16vw
    }
    .iBtel {
        margin-right: .851vw
    }
    .iBtel-nb {
        font-size: 1.702vw;
        padding-left: 1.968vw;
        background-size: 1.596vw auto
    }
    .iBtel-des {
        font-size: .851vw;
        padding-left: 0;
        text-align: center
    }
    .iBtel-des .ics-size,
    .iContact-cnt-btel .ides,
    .iContact-lsitem .iDes {
        font-size: .73vw
    }
    .iBttl {
        width: 8.191vw;
        height: 87px;
        padding: 15px 0;
        margin-right: 1.33vw
    }
    .iBttl-btxt,
    .iLine-txtbig {
        font-size: 1.064vw
    }
    .iBttl-nb {
        font-size: 1.489vw
    }
    .iMail {
        width: 16.223vw;
        height: 88px;
        margin-right: .532vw
    }
    .iLine::before,
    .iMail::before {
        height: calc(100% - 4px)
    }
    .iMail-col {
        padding-left: 2.713vw;
        background-size: 1.809vw auto
    }
    .iLine-txtsmall,
    .iMail-txtbig {
        font-size: .957vw
    }
    .iLine {
        width: 12.872vw;
        height: 88px
    }
    .iLine-col {
        padding-left: 3.138vw;
        background-size: 2.66vw auto;
        left: -.479vw
    }
    .iMvs {
        height: 32.361vw
    }
    .iMvs-container {
        width: 93.799vw;
        padding: 0 .782vw
    }
    .iMvs-lsimg {
        width: 52.006vw;
        right: -3.127vw
    }
    .iMvs-lsimg li:first-child {
        background-size: 57.009vw auto;
        background-position: top -.156vw left
    }
    .iMvs-cnt {
        padding-top: 3.022vw
    }
    .iMvs-ttlstyle {
        font-size: 1.876vw;
        padding-left: 10.631vw;
        margin-bottom: .886vw
    }
    .iMvs-ttlstyle-small {
        top: -.99vw;
        background-position: top 0 left -.104vw;
        width: 10.162vw;
        height: 3.804vw
    }
    .iMvs-ttlstyle-small>span {
        top: .625vw;
        left: 1.094vw
    }
    .iMvs-ttlbig {
        font-size: 2.814vw;
        padding-left: .365vw;
        margin-bottom: 2.397vw
    }
    .iMvs-lsdes {
        margin-left: .052vw;
        margin-bottom: 3.127vw
    }
    .iMvs-lsdes ul,
    .iMvs-lsdes ul li:not(:last-child) {
        margin-right: .521vw
    }
    .iMvs-lsdes ul li {
        min-width: 5.211vw;
        height: 2.084vw;
        font-size: 1.042vw;
        padding: .469vw .261vw
    }
    .iMvs-info-ttl,
    .iMvs-lsdes-txt {
        font-size: 1.668vw
    }
    .iMvs-lsdes-txt .ics-sz01 {
        font-size: 1.459vw;
        margin-right: -.677vw
    }
    .iMvs-lsdes-txt .ics-sz02 {
        font-size: 1.355vw;
        margin-left: -.625vw
    }
    .iMvs-lsdes-txt .ispace {
        margin-right: -1.355vw
    }
    .iMvs-info {
        width: 52.11vw;
        padding: 1.668vw 1.042vw 1.459vw 2.084vw;
        margin-left: 3px
    }
    .iMvs-info::before {
        clip-path: polygon(0 0, 50.13vw 0%, 100% 100%, 0% 100%)
    }
    .iMvs-info-bflex {
        margin-bottom: 1.303vw
    }
    .iMvs-info-img {
        width: 29.182vw;
        top: -2.71vw;
        right: .573vw
    }
    .iMvs-info-des {
        font-size: .469vw
    }
    .iContact-container {
        min-height: 26.042vw;
        padding: 0 .782vw
    }
    .iContact-bflex {
        --wcnt: 39.865vw
    }
    .iContact-bcol::before {
        width: 6.149vw;
        right: 3.387vw;
        background-size: 100% auto;
        background-position: top right
    }
    .iContact-bcol-btxt .ics-sz01 {
        font-size: 1.146vw;
        margin-left: -.365vw;
        margin-right: .834vw
    }
    .iContact-bcol-btxt .ics-sz01 .ispace {
        font-size: .938vw;
        margin-right: .104vw
    }
    .iContact-bcol-btxt .ics-sz02 {
        font-size: .834vw
    }
    .iContact-bcol-btxt .ics-sz02:not(:last-child) {
        margin-right: 1.199vw
    }
    .iContact-cnt {
        height: 26.042vw;
        padding: 60px 0 0 1.668vw
    }
    .iContact-cnt-ttl {
        font-size: 1.459vw
    }
    .iContact-cnt-des {
        font-size: 1.146vw;
        max-width: 26.055vw;
        padding: 11px 0;
        margin-left: .052vw
    }
    .iContact-cnt-btel {
        padding-left: .886vw
    }
    .iContact-cnt-btel .iphone {
        font-size: 2.501vw;
        padding-left: 2.97vw;
        background-size: 2.084vw auto;
        background-position: center left .625vw
    }
    .iContact-cnt .iBttl {
        width: 7.8vw;
        margin-right: 1.5vw
    }
    .iContact-lsitem {
        margin-left: 1.042vw;
        padding: 40px 0 40px 3.179vw;
        min-height: auto;
        height: fit-content
    }
    .iContact-lsitem>ul li {
        width: calc((100% - 5.159vw)/ 3);
        margin-right: 1.72vw
    }
    .iContact-lsitem .iTtl {
        font-size: 1.042vw;
        margin: 7px auto 1.719vw;
        background-size: calc(100% - .834vw) auto;
        background-position: bottom left .469vw;
        --btafter: 2.606vw
    }
    .iContact-lsitem .iTtl::before {
        height: 2.606vw
    }
    .iContact-lsitem .iImg {
        margin: 0 auto 25px
    }
    .iAdvantage::before {
        left: 50%;
        transform: translateX(-50%)
    }
    .iGuide::before {
        height: 27.097vw
    }
    .iGuide::after {
        bottom: -.417vw;
        right: -1.563vw;
        font-size: 12.507vw
    }
    .iGuide-container {
        width: calc(100% - 5.263vw);
        min-height: 130vh;
        --mtttl: 6.931vw
    }
    .iGuide-img {
        --mr: 7.295vw;
        margin-left: min((100vw - 100%) / -2, -5.732vw);
        margin-top: calc(0% - var(--mtttl));
        width: calc(100% - 56.279vw - var(--mr) + (100vw - 100%)/ 2);
        min-width: 31.787vw
    }
    .iGuide .iH4-ttl {
        margin: 0 auto 4.013vw
    }
    .iGuide .iH4-ttl span {
        padding-right: 1.563vw
    }
    .iGuide-lsfframe {
        margin-bottom: 1.563vw
    }
    .iGuide-lsfframe li {
        width: calc((100% - 2.084vw)/ 3);
        margin-right: 1.042vw;
        margin-bottom: 1.042vw;
        font-size: 1.042vw;
        padding: .886vw 0
    }
    .iGuide-txt {
        margin-right: -.782vw
    }
    .iGuide-cnt {
        margin-right: 7.295vw;
        margin-bottom: 2.71vw
    }
    .iGuide-lsitem li {
        width: calc((100% - 3.127vw)/ 3);
        margin-right: 1.563vw;
        min-height: 16.675vw
    }
    .iGuide-lsitem a {
        padding: 2.345vw
    }
    .iGuide-lsitem a::after {
        width: 11.829vw;
        height: 11.829vw
    }
    .iGuide-lsitem a>span {
        font-size: 1.459vw;
        background-size: 1.928vw auto;
        background-position: bottom 2.397vw center
    }
    .iContact {
        margin-bottom: 40px
    }
}

@media screen and (min-width:751px) and (max-width:1700px) {
    .iAbout {
        width: calc(100% - 2.706vw);
        padding: 145px 0 140px 3.118vw
    }
    .iAbout::before {
        left: -1.118vw
    }
    .iAbout::after {
        right: .353vw;
        font-size: 14.118vw
    }
    .iAbout-container {
        max-width: 95.882vw;
        padding: 0 .882vw
    }
    .iAbout-cnt {
        margin: 0 auto 71px
    }
    .iAbout-img {
        --mr: clamp(30px, 7.656vw, 147px);
        margin-right: min((100vw - 100%) / -2, -130px);
        margin-top: -5px;
        width: calc(100% - 845px - var(--mr) + (100vw - 100%)/ 2);
        min-width: 610px
    }
    .iAbout-btxt {
        max-width: 845px
    }
    .iAbout-txt {
        font-size: 18px
    }
    .iAbout-frame {
        max-width: 50vw;
        min-height: 11.706vw;
        margin-right: 1.5vw;
        --wttl: 19.059vw
    }
    .iAbout-frame-ttl .ittl {
        font-size: 1.882vw;
        margin-left: 1.941vw
    }
    .iAbout-frame-lsitem {
        padding: 48px 1.5vw
    }
    .iAbout-frame-lsitem ul:not(:last-child) {
        margin-right: 2vw
    }
    .iAbout-frame-lsitem ul li {
        padding-left: .5vw;
        font-size: 1.389vw
    }
    .iAbout-frame-lsitem ul li::before {
        width: .294vw;
        height: .294vw;
        top: .7vw
    }
    .iAbout .iLsbbtn li:not(:last-child) {
        margin-right: 2.353vw
    }
    .iWaterproof-container {
        justify-content: space-between
    }
    .iWaterproof-lsitem {
        width: 40.412vw;
        margin-right: 50px
    }
    .iWaterproof-bcnt {
        width: 770px;
        padding-left: 0
    }
    .iWaterproof-bfdata {
        bottom: -4vw;
        right: 1.412vw;
        font-size: 14.118vw
    }
    .ft-bmenu-col {
        margin-right: auto!important
    }
    .ft-bmenu-col:last-child {
        margin-right: 0!important
    }
    .iGuide-container {
        min-height: 125vh
    }
}

@media screen and (min-width:751px) and (max-width:1600px) {
    .iBanner-bbig::after,
    .iBanner-bitem::after {
        background-size: calc(100% - 2.375vw) calc(100% - 2.375vw)
    }
    .iOnebox {
        margin-bottom: -7.563vw
    }
    .iBanner-container {
        max-width: 1630px;
        padding: 0 .938vw
    }
    .iBanner-bflex-ttl {
        font-size: 2.75vw
    }
    .iBanner-bflex-des {
        font-size: 1.5vw;
        padding: 6px 1.313vw 9px 1vw;
        margin-left: .125vw
    }
    .iBanner-bflex-lstxt {
        min-width: 16.75vw;
        min-height: 10vw;
        padding: 1.5vw 0 0 1.688vw
    }
    .iBanner-bflex-lstxt li {
        font-size: 1.5vw
    }
    .iBanner-bitem {
        width: 47.5vw;
        height: 22.5vw;
        padding: 2.375vw 2.938vw
    }
    .iBanner-bbig {
        width: 100%;
        min-height: 22.5vw;
        padding: 4.5vw 5vw
    }
    .iBanner-bbig::after {
        padding: .625vw;
        border: .625vw solid #55b6e8
    }
    .iBanner-bbig-des {
        font-size: 1.5vw;
        padding: 13px 1.563vw
    }
    .iBanner-bbig-ttl {
        font-size: 2.75vw;
        margin-left: -.125vw
    }
    .iBanner-bfitem {
        top: -40px;
        right: 2.125vw;
        width: 11.25vw;
        height: 11.25vw
    }
    .iBanner-bfitem .itext {
        font-size: 2.5vw
    }
    .iBanner-bfitem .inumber {
        font-size: 3.75vw;
        margin-right: .313vw
    }
    .iGuide-container {
        min-height: 120vh
    }
}

@media screen and (min-width:751px) and (max-width:1440px) {
     :root {
        --hhd: 100px
    }
    .hnav-menu>ul>li {
        height: calc(100% - 5px);
        margin-top: 10px
    }
    .iBttl,
    .iLine,
    .iMail {
        height: 80px
    }
    .iContact-cnt,
    .iContact-cnt-btel {
        padding-left: 0
    }
    .iAdvantage-binfo .itxt,
    .iContact-cnt-des {
        font-size: 18px
    }
    .iBtel-des .ics-size,
    .iContact-bcol-btxt .ics-sz02,
    .iContact-cnt-btel .ides {
        font-size: 12px
    }
    .iContact-cnt-btel .iphone {
        font-size: 36px;
        padding-left: 50px;
        background-size: 30px auto;
        background-position: center left 10px
    }
    .iContact-lsitem {
        margin-left: .2vw;
        padding: 40px 0 40px 2vw
    }
    .iContact-lsitem>ul li {
        width: calc((100% - 1vw)/ 3);
        margin-right: .5vw
    }
    .iContact-lsitem .iTtl {
        font-size: 1.2vw
    }
    .iContact-lsitem .iDes {
        font-size: 12px;
        letter-spacing: .01em
    }
    .iContact-bflex {
        --wcnt: 39vw
    }
    .iContact-bcol-btxt .ics-sz01 {
        font-size: 14px;
        margin-left: -5px;
        margin-right: 5px
    }
    .iContact-bcol-btxt .ics-sz01 .ispace {
        font-size: 12px;
        margin-right: -5px
    }
    .iContact-bcol-btxt .ics-sz02:not(:last-child) {
        margin-right: 5px
    }
    .iMvs-lsdes {
        margin-left: 0
    }
    .iAbout-cnt .iH3-ttl {
        font-size: 2.6vw
    }
    .iAbout .iLsbbtn a {
        min-width: 250px;
        min-height: 65px;
        font-size: 18px
    }
    .iWaterproof {
        width: calc(100% - 2.706vw);
        padding: 140px 0 0 3.118vw
    }
    .iWaterproof::before {
        left: 1.118vw
    }
    .iWaterproof-container {
        padding: 0 1.042vw 0 0;
        --wlsitem: 47.708vw
    }
    .iWaterproof-bfdata span:first-child {
        top: 35px
    }
    .iWaterproof-lsitem {
        margin-right: 3.472vw
    }
    .iWaterproof-lsitem li {
        width: calc(100% - .417vw);
        padding: 25px 2.986vw 25px 3.264vw
    }
    .iWaterproof-lsitem .ittl {
        font-size: 1.944vw
    }
    .iWaterproof-lsitem .ides {
        font-size: 1.389vw;
        margin-left: 3px
    }
    .iWaterproof-bcnt {
        width: 53.472vw;
        padding-right: 2.222vw
    }
    .iWaterproof-bcnt .iH3-ttl {
        font-size: 40px
    }
    .iWaterproof-btxt {
        margin-left: .694vw
    }
    .iWaterproof-txt {
        font-size: 1.25vw
    }
    .iAdvantage::before {
        font-size: max(16.667vw, 200px)
    }
    .iAdvantage-bsec-cnt {
        width: 56.944vw
    }
    .iAdvantage-bsec-cnt .arrow-left,
    .iAdvantage-bsec-cnt .arrow-right {
        top: 18px
    }
    .iAdvantage-bsec-img {
        width: 48.611vw
    }
    .iAdvantage-bttl {
        --wnb: 11.806vw
    }
    .iAdvantage-bttl-nb {
        font-size: 6.944vw;
        min-height: 11.806vw;
        padding-left: 0
    }
    .iAdvantage-bttl-ttl {
        padding-left: 3.333vw;
        font-size: 2.222vw
    }
    .iAdvantage-binfo {
        padding: 165px 2.083vw 0
    }
    .iGuide-container {
        width: calc(100% - 1.563vw);
        min-height: 110vh
    }
    .hbsub {
        width: 1200px
    }
    .ft-bmenu-menu li a,
    .hbsub-ttl {
        font-size: 16px
    }
    .hbsub-bls li a,
    .iBtel-des {
        font-size: 14px
    }
    .hbsub-bls li a::before {
        top: 10px
    }
    .ft-bmenu-menu li::before {
        top: 12px
    }
    .iMvs-itemlink {
        width: 150px;
        height: 150px
    }
    header .iLine {
        width: 11vw
    }
    header .iLine-col {
        padding-left: 2.7vw;
        left: -3px
    }
    header .iMail {
        width: 15vw;
        margin-right: .4vw
    }
    header .iMail-col {
        padding-left: 2.3vw
    }
    header .iBttl {
        width: 8vw
    }
    header .iBtel {
        margin-right: .5vw
    }
    .hnav-menu>ul>li:not(:last-child) {
        margin-top: 10px;
        margin-right: .8vw
    }
    .hnav-menu-link,
    .hnav-menu-linksub {
        font-size: 1.05vw
    }
    .hnav-menu-link::before,
    .hnav-menu-linksub::before {
        width: calc(100% + 1vw);
        height: calc(100% + 2px);
        left: -.5vw
    }
    .hnav-menu-link::before {
        width: calc(100% + 1vw);
        height: 100%;
        left: -.5vw
    }
    .iContact {
        margin-bottom: 40px
    }
}

@media screen and (min-width:751px) and (max-width:1230px) {
    .hd-container {
        --wblogo: 160px;
        padding: 0 2px 7px
    }
    .hnav-menu>ul,
    .hnav-menu>ul>li:not(:last-child),
    .iBtel,
    header .iBtel {
        margin-right: 10px
    }
    .hnav-menu-link,
    .hnav-menu-linksub,
    .iBtel-des,
    .iLine-txtsmall,
    .iMail-txtbig {
        font-size: 12px
    }
    .hnav-hv::before {
        width: calc(100% + 10px);
        left: -5px
    }
    header .iLine {
        width: 160px
    }
    header .iLine-col {
        padding-left: 35px;
        left: -2px
    }
    header .iMail {
        width: 200px;
        margin-right: 5px
    }
    .iBttl,
    header .iBttl {
        width: 100px
    }
    .iBtel-nb {
        font-size: 20px;
        padding-left: 24px;
        background-size: 20px auto
    }
    .iBttl {
        height: 87px;
        padding: 15px 0;
        margin-right: 16px
    }
    .iMail,
    .iMvs-lsdes ul,
    .iMvs-lsdes ul li:not(:last-child) {
        margin-right: 5px
    }
    .iBttl-btxt,
    .iLine-txtbig,
    .iMail-txtsmall {
        font-size: 14px
    }
    .iBttl-nb,
    .iWaterproof-txt {
        font-size: 16px
    }
    .iMail {
        width: 200px;
        height: 88px
    }
    .iMail-col {
        padding-left: 30px;
        background-size: 22px auto
    }
    .iLine {
        width: 160px;
        height: 88px
    }
    .iLine-col {
        padding-left: 35px;
        background-size: 32px auto;
        left: -2px
    }
    .iLine-small {
        font-size: 13px
    }
    .iContact-container {
        min-height: 320px;
        padding: 0 10px
    }
    .iContact-bflex {
        --wcnt: 484px
    }
    .iContact-bcol::before {
        width: 80px;
        right: 20px
    }
    .iContact-cnt {
        height: 420px
    }
    .iContact-cnt-ttl,
    .iMvs-lsdes-txt {
        font-size: 20px
    }
    .iContact-cnt-des {
        max-width: 350px;
        padding: 11px 0;
        margin-left: 0
    }
    .iContact-cnt .iBttl {
        width: 110px;
        margin-right: 20px
    }
    .iContact-lsitem {
        margin-left: 0;
        padding: 40px 0 40px 25px
    }
    .iContact-lsitem>ul li {
        width: calc((100% - 15px)/ 3);
        margin-right: 5px
    }
    .iContact-lsitem .iTtl {
        font-size: 15px;
        margin: 7px auto 15px;
        background-size: calc(100% - 1px) auto;
        background-position: bottom left 0;
        --btafter: 31px
    }
    .iContact-lsitem .iTtl::before {
        height: 31px
    }
    .iContact-lsitem .iImg {
        margin: 0 auto 25px
    }
    .iMvs {
        height: 400px
    }
    .iMvs-container {
        width: 100%;
        padding: 0 15px;
        display: flex;
        align-items: center
    }
    .iMvs-lsimg {
        width: 680px;
        right: -40px
    }
    .iMvs-lsimg li:first-child {
        background-size: 705px auto;
        background-position: top -2px left
    }
    .iMvs-cnt {
        padding-top: 0
    }
    .iMvs-ttlstyle {
        font-size: 25px;
        padding-left: 130px;
        margin-bottom: 10px
    }
    .iMvs-ttlstyle-small {
        top: -12px;
        background-position: top 0 left -2px;
        width: 130px;
        height: 50px
    }
    .iMvs-ttlstyle-small>span {
        top: 8px;
        left: 10px
    }
    .iMvs-ttlbig {
        font-size: 34px;
        padding-left: 0;
        margin-bottom: 30px
    }
    .iMvs-lsdes {
        margin-bottom: 38px
    }
    .iMvs-lsdes ul li {
        min-width: 70px;
        height: auto;
        font-size: 14px;
        padding: 5px 0
    }
    .iMvs-lsdes-txt .ics-sz01 {
        font-size: 18px;
        margin-right: -5px
    }
    .iMvs-lsdes-txt .ics-sz02 {
        font-size: 18px;
        margin-left: -5px
    }
    .iMvs-lsdes-txt .ispace {
        margin-right: -12px
    }
    .iMvs-info {
        width: 700px;
        padding: 20px 20px 20px 25px;
        margin-left: 0
    }
    .iMvs-info::before {
        clip-path: polygon(0 0, 640px 0%, 100% 100%, 0% 100%)
    }
    .iMvs-info-bflex {
        margin-bottom: 15px
    }
    .iMvs-info-img {
        width: 380px;
        top: -35px;
        right: 20px
    }
    .iMvs-info-ttl {
        font-size: 22px
    }
    .iMvs-info-des {
        font-size: 6px
    }
    .iAbout {
        width: calc(100% - 33px);
        padding: 145px 0 140px 38px
    }
    .iAbout::before {
        left: -15px
    }
    .iAbout::after {
        right: 5px;
        font-size: 170px
    }
    .iAbout-container {
        max-width: 1160px;
        padding: 0 10px 0 0
    }
    .iAbout-cnt {
        margin: 0 auto 71px
    }
    .iAbout-cnt .iH3-ttl {
        font-size: 32px
    }
    .iAbout-img {
        --mr: clamp(30px, 7.656vw, 147px);
        margin-right: min((100vw - 100%) / -2, -130px);
        margin-top: -5px;
        width: calc(100% - 845px - var(--mr) + (100vw - 100%)/ 2);
        min-width: 610px
    }
    .iAbout-frame,
    .iAbout-frame-lsitem ul:not(:last-child) {
        margin-right: 20px
    }
    .iAbout-btxt {
        max-width: 845px
    }
    .iAbout-txt,
    .iBanner-bflex-lstxt li {
        font-size: 18px
    }
    .iAbout-frame {
        max-width: 610px;
        min-height: 150px;
        --wttl: 234px
    }
    .iAbout-frame-ttl .ittl {
        font-size: 24px;
        margin-left: 20px
    }
    .iAbout-frame-lsitem {
        padding: 48px 15px
    }
    .iAbout-frame-lsitem ul li {
        padding-left: 10px;
        font-size: 18px
    }
    .iAbout-frame-lsitem ul li::before {
        width: 5px;
        height: 5px;
        top: 8px
    }
    .iAbout .iLsbbtn li:not(:last-child) {
        margin-right: 25px
    }
    .iWaterproof {
        width: calc(100% - 33px);
        padding: 140px 0 0 38px
    }
    .iWaterproof::before {
        left: 15px
    }
    .iWaterproof-container {
        padding: 0 15px 0 0
    }
    .iWaterproof-bfdata {
        bottom: -50px;
        right: 18px;
        font-size: 172px
    }
    .iWaterproof-lsitem {
        width: 500px;
        margin-right: 30px
    }
    .iWaterproof-lsitem li {
        width: 100%;
        min-height: 125px;
        padding: 25px 35px
    }
    .iWaterproof-lsitem li::before {
        height: calc(100% - 20px)
    }
    .iWaterproof-lsitem .ittl {
        font-size: 24px
    }
    .iWaterproof-lsitem .ides {
        font-size: 18px;
        margin-left: 0
    }
    .iWaterproof-bcnt {
        width: 610px;
        padding-right: 10px
    }
    .iWaterproof-btxt {
        margin-left: 0;
        margin-bottom: 75px
    }
    .iOnebox {
        margin-bottom: -80px
    }
    .iBanner-container {
        padding: 0 10px
    }
    .iBanner-bflex-ttl {
        font-size: 34px
    }
    .iBanner-bflex-des {
        font-size: 20px;
        padding: 5px 15px;
        margin-left: 0
    }
    .iBanner-bflex-lstxt {
        min-width: 210px;
        min-height: 130px;
        padding: 18px 0 0 20px
    }
    .iBanner-bitem {
        width: 585px;
        height: 280px;
        padding: 30px 35px
    }
    .iBanner-bitem::after {
        background-size: calc(100% - 20px) calc(100% - 20px)
    }
    .iBanner-bbig {
        min-height: 285px;
        padding: 55px
    }
    .iBanner-bbig-des {
        font-size: 18px;
        padding: 15px
    }
    .iBanner-bbig-ttl {
        font-size: 34px;
        margin-left: 0
    }
    .iBanner-bfitem {
        right: 30px;
        width: 140px;
        height: 140px
    }
    .iBanner-bfitem .itext {
        font-size: 30px
    }
    .iBanner-bfitem .inumber {
        font-size: 46px;
        margin-right: 5px
    }
    .iAdvantage-bsec-cnt {
        width: 700px
    }
    .iAdvantage-bsec-img {
        width: 600px
    }
    .iAdvantage-bttl {
        --wnb: 145px
    }
    .iAdvantage-bttl-nb {
        font-size: 85px;
        min-height: 145px
    }
    .iAdvantage-bttl-ttl {
        padding-left: 40px;
        font-size: 26px
    }
    .iAdvantage-binfo {
        padding: 165px 25px 0
    }
    .iGuide-container {
        width: calc(100% - 15px);
        min-height: 850px;
        --mtttl: 85px
    }
    .iGuide-img {
        margin-left: -50px;
        margin-top: -85px;
        width: 440px;
        min-width: auto
    }
    .iGuide .iH4-ttl {
        margin: 0 auto 50px
    }
    .iGuide .iH4-ttl span {
        padding-right: 20px
    }
    .iGuide-lsfframe {
        margin-bottom: 20px
    }
    .iGuide-lsfframe li {
        width: calc((100% - 20px)/ 3);
        margin-right: 10px;
        margin-bottom: 10px;
        font-size: 14px;
        padding: 10px 0
    }
    .iGuide-txt {
        margin-right: -.782vw
    }
    .iGuide-cnt {
        margin-bottom: 2.71vw
    }
    .iGuide-lsitem li {
        width: calc((100% - 3.127vw)/ 3);
        margin-right: 1.563vw;
        min-height: 16.675vw
    }
    .iGuide-lsitem a {
        padding: 2.345vw
    }
    .iGuide-lsitem a::after {
        width: 11.829vw;
        height: 11.829vw
    }
    .iGuide-lsitem a>span {
        font-size: 1.459vw;
        background-size: 1.928vw auto;
        background-position: bottom 2.397vw center
    }
}

@media screen and (min-width:751px) {
    #lightbox,
    #lightboxOverlay {
        min-width: var(--content-width)!important;
        width: 100%!important
    }
    .sp {
        display: none!important
    }
    a:hover {
        text-decoration: none
    }
    .hbsub-bls li a:hover::before,
    .to-top a:hover {
        background-color: var(--color-origen)
    }
    .ft-bmenu-menu li a:hover,
    .hbsub-bls li a:hover,
    a.ft-bmenu-ttl:hover {
        color: var(--color-origen)
    }
    .hnav-hv:hover .hnav-menu-linksub::before,
    .iWaterproof-lsitem li:hover {
        background-color: var(--color-secondary)
    }
    .hnav-hv:hover .hnav-menu-link::before {
        background-image: none
    }
    .hnav-hv:hover>.hnav-menu-linksub,
    .hnav-menu>ul>li>.hnav-menu-link:hover {
        color: var(--color-white)
    }
    .hnav-hv:hover .hbsub {
        visibility: inherit;
        opacity: 1
    }
    .hnav-menu>ul>li>.hnav-menu-link:hover::before {
        background-color: var(--color-secondary);
        background-image: none
    }
    .iAdvantage-binfo-cnt .arrow-left:hover,
    .iAdvantage-binfo-cnt .arrow-right:hover {
        opacity: .8
    }
    .iLsbbtn li a:hover,
    .iMail:hover::before {
        background-color: #ac4e00
    }
    .iBanner-bbig:hover,
    .iBanner-bitem:hover,
    .iMvs-itemlink:hover {
        transform: translateY(-10px)
    }
    .iGuide-lsitem a:hover:after {
        width: 100%;
        height: 100%;
        border-radius: 0
    }
    .iBanner-bitem:nth-child(2) .iBanner-bflex-des {
        margin-left: 0;
        padding-right: 10px
    }
    .iContact-lsitem>ul li {
        background-size: calc(100% - 20px) auto;
        background-position: bottom left 12px
    }
    .iContact-lsitem>ul li:first-child .iDes {
        margin-left: -12px;
        position: relative;
        left: 6px
    }
    .iContact-lsitem>ul li:nth-child(2) .iTtl {
        background-size: calc(100% - 25px) auto;
        background-position: bottom left 12px
    }
    .iContact-lsitem>ul li:nth-child(3) .iDes {
        margin-left: -10px;
        position: relative;
        left: 3px
    }
    .iFixed {
        display: none
    }
    .icsr {
        display: inline-block;
        margin-right: -10px
    }
}

@media screen and (min-width:1px) and (max-width:750px) {
    .hbsub,
    .hnav {
        left: 0;
        top: 0
    }
    .hbsub-bls li:not(:last-child),
    .hbsub-bls ul:not(:last-child) li:last-child {
        border-bottom: 1px solid var(--color-white)
    }
    .iMvs-lsdes-txt,
    .iMvs-ttlbig,
    .iMvs-ttlstyle {
        text-shadow: 0 10px 30px #2e96cb
    }
    .hnav-menu>ul>li,
    .iContact-lsitem .iTtl {
        border-bottom: 1px solid var(--color-secondary)
    }
    .iGuide .iH4-ttl span,
    .inner {
        padding-right: 15px
    }
    #wrapper {
        min-width: unset!important
    }
    .pc {
        display: none!important
    }
    .hnav,
    .hnav-menu {
        display: flex
    }
    .inner {
        width: 100%;
        padding-left: 15px
    }
    #menu-toggle {
        display: block
    }
     :root {
        --hhd: 60px
    }
    .open-nav {
        overflow: hidden
    }
    .open-nav .hnav {
        transform: translateX(0)
    }
    .hnav {
        flex-direction: column;
        position: fixed;
        z-index: 30;
        background-color: var(--color-white);
        width: 100%;
        height: 100vh;
        transform: translateX(-100%);
        justify-content: flex-start;
        padding-top: var(--hhd);
        transition: .3s;
        overflow-y: auto;
        overflow-x: hidden;
        padding-bottom: 150px
    }
    .hbsub,
    .hd-blogo,
    .iAdvantage-bsec-img,
    .iBttl,
    .iMvs-info-img {
        position: relative
    }
    .hnav-menu,
    .hnav-menu>ul {
        width: 100%;
        flex-direction: column
    }
    .hnav-menu>ul {
        margin: 0 auto 30px;
        padding: 0;
        border-top: 1px solid var(--color-secondary)
    }
    .hbsub,
    .hnav .ibtnContact {
        flex-direction: column;
        width: 100%
    }
    .hnav-menu>ul>li {
        margin: 0;
        padding: 0;
        height: auto
    }
    .hnav-menu>ul>li:not(:last-child),
    .iContact-bcol-btxt .ics-sz02:not(:last-child),
    .iContact-lsitem>ul li:last-child,
    .iContact-lsitem>ul li:nth-child(2n+2),
    .iFixed-bflex a:last-child,
    .iGuide-lsfframe li:nth-child(2n+2) {
        margin-right: 0
    }
    .hnav-menu-link,
    .hnav-menu-linksub {
        font-size: 15px;
        padding: 15px;
        display: block;
        height: fit-content
    }
    .hnav-hv .hnav-menu-linksub {
        display: block;
        position: relative
    }
    .hnav-hv .hnav-menu-linksub::before {
        position: absolute;
        content: "";
        width: 30px;
        height: 100%;
        top: 0;
        right: 15px;
        left: auto;
        background-image: url(../images/linksub-arr-hv.png);
        background-repeat: no-repeat;
        background-size: 11px auto;
        background-position: center;
        transform: rotate(0);
        transition: .3s
    }
    .hnav-hv .hnav-menu-linksub.open::before {
        transform: rotate(180deg)
    }
    .hnav .ibtnContact {
        max-width: 250px;
        display: none
    }
    .hnav .iBttl {
        width: 100%
    }
    .hnav .iMail {
        width: 100%;
        margin: 0 5px 0 16px;
        height: 60px
    }
    .hnav .iLine {
        width: 100%;
        height: 60px
    }
    .hnav .iContact,
    .hnav .iContact .ibtnContact {
        display: flex
    }
    .ft-bmenu,
    .hbsub,
    .hbsub-img,
    .hbsub-ttl,
    .iContact .ibtnContact {
        display: none
    }
    .hnav .iContact-cnt .iBttl {
        max-width: 64px;
        height: 60px;
        margin: 0 auto
    }
    .hbsub {
        transform: none;
        min-height: auto;
        visibility: inherit;
        opacity: 1;
        background-color: var(--color-secondary);
        transition: none
    }
    .hd-blogo::before,
    .iAbout-frame-lsitem ul li::before,
    .iFixed {
        background-color: var(--color-white)
    }
    .hbsub::before {
        content: none
    }
    .hbsub-bls {
        width: 100%;
        flex-direction: column;
        padding: 0
    }
    .hbsub-bls li,
    .hbsub-bls ul:not(:last-child) {
        margin: 0
    }
    .hbsub-bls li:not(:last-child) {
        margin: 0
    }
    .hbsub-bls li a {
        width: 100%;
        display: flex;
        font-size: 14px;
        margin: 0;
        padding: 15px 35px
    }
    .hbsub-bls li a::before {
        top: 23px;
        left: 15px
    }
    .hd-container {
        --wblogo: 220px
    }
    .hd-blogo {
        z-index: 40
    }
    .hd-blogo::before {
        position: absolute;
        content: "";
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 200vw;
        height: 100%;
        z-index: -1
    }
    .iMvs {
        height: auto;
        margin: 0 auto 50px
    }
    .iMvs-container {
        padding: 30px 15px 5px;
        display: flex;
        justify-content: center
    }
    .iMvs-lsimg {
        width: 750px;
        left: 0;
        height: 48vw;
        top: auto;
        bottom: 0;
        clip-path: polygon(0 0, 100% 70px, 100% 100%, 0% 100%)
    }
    .iMvs-lsimg li:first-child {
        background-image: url(../images/imvs-img-sp.png);
        background-size: contain;
        background-position: bottom left
    }
    .iMvs-cnt {
        padding-top: 0
    }
    .iMvs-ttlstyle {
        font-size: 14px;
        padding: 50px 0 0;
        margin: 0 auto 5px
    }
    .iMvs-ttlstyle-small {
        top: 0;
        width: 100px;
        height: 40px;
        left: 50%;
        transform: translateX(-50%)
    }
    .iMvs-ttlstyle-small>span {
        top: 9px;
        left: 18px
    }
    .iMvs-ttlbig {
        font-size: max(6.8vw, 14px);
        text-align: center;
        padding: 0;
        margin: 0 auto 15px
    }
    .iAbout .iLsbbtn,
    .iMvs-lsdes {
        width: 100%;
        flex-direction: column;
        margin: 0 auto 15px
    }
    .iMvs-lsdes ul {
        width: 100%;
        max-width: 345px;
        margin: 0 auto 15px
    }
    .iMvs-lsdes ul li {
        width: calc((100% - 15px)/ 3);
        min-width: auto;
        height: fit-content;
        font-size: 12px;
        padding: 5px
    }
    .iAdvantage .iLsbbtn li a,
    .iLsbbtn li a {
        min-width: 230px
    }
    .iMvs-lsdes ul li:not(:last-child) {
        margin-right: 5px
    }
    .iMvs-lsdes-txt {
        font-size: 18px;
        text-align: center
    }
    .iGuide-txt,
    .iMvs-lsdes-txt .ics-sz01 {
        font-size: 14px;
        margin-right: 0
    }
    .iBanner-bbig-ttl,
    .iMvs-lsdes-txt .ics-sz02 {
        font-size: 14px;
        margin-left: 0
    }
    .iMvs-lsdes-txt .ispace {
        margin-right: -15px
    }
    .iMvs-info {
        width: 100%;
        max-width: 400px;
        padding: 15px;
        margin: 0 auto
    }
    .iMvs-info::before {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 30px));
        height: calc(100% + 5px)
    }
    .iMvs-info-bflex {
        flex-direction: column;
        margin-bottom: 15px
    }
    .iMvs-info-img {
        top: 0;
        right: 0;
        width: 100%;
        max-width: 250px;
        margin: 0 auto
    }
    .iMvs-info-ttl {
        font-size: 16px;
        margin: 0 auto 15px;
        text-align: center;
        line-height: 1.5em
    }
    .iMvs-info-ttl .ispace {
        display: inline-block;
        letter-spacing: .15em;
        font-size: 26px
    }
    .iMvs-info-des {
        font-size: 7px;
        text-align: center;
        letter-spacing: -.01em;
        text-shadow: 2px 2px 2px #000
    }
    .iContact {
        width: 100%;
        max-width: 1920px;
        margin: 0 auto 20px
    }
    .iContact-container {
        width: 100%;
        max-width: 1856px;
        margin: 0 auto;
        padding: 0 10px;
        min-height: 500px
    }
    .iContact-bflex {
        width: 100%;
        flex-direction: column
    }
    .iContact-bcol {
        width: 100%;
        max-width: 290px;
        margin: 0 auto 15px
    }
    .iContact-bcol::before {
        width: 60px;
        height: 130px;
        top: -40px;
        right: 0;
        background-size: 100% auto;
        background-position: top right
    }
    .iContact-bcol-btxt {
        width: 100%;
        flex-wrap: wrap;
        margin: 0 auto 15px;
        justify-content: center;
        align-items: center
    }
    .iContact-bcol-btxt .ics-sz01 {
        font-size: 14px;
        margin-right: 0;
        text-align: center
    }
    .iAbout-txt,
    .iBanner-bfitem .itext,
    .iBanner-bflex-lstxt li,
    .iBtel-des,
    .iContact-bcol-btxt .ics-sz01 .ispace,
    .iFixed .iBttl-nb,
    .iWaterproof-txt {
        font-size: 14px
    }
    .iContact-bcol-btxt .ics-sz02 {
        font-size: 14px;
        letter-spacing: .01em;
        text-align: center
    }
    .iContact-cnt {
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        padding: 0
    }
    .iContact-cnt-ttl {
        font-size: 13px;
        margin-bottom: 10px;
        letter-spacing: .07em
    }
    .iContact-cnt-des {
        max-width: 230px;
        font-size: 14px;
        padding: 10px 0;
        margin-left: 0;
        margin-bottom: 15px
    }
    .iContact-cnt-btel {
        padding-left: 0
    }
    .iContact-cnt-btel .ides {
        font-size: 12px;
        padding-top: 0
    }
    .iContact-cnt-btel .iphone {
        font-size: 26px;
        padding-left: 45px;
        padding-top: 5px;
        background-size: 30px auto;
        background-position: center left 10px
    }
    .iContact-cnt .iBttl {
        width: 100%;
        margin: 0 auto 15px;
        height: 80px
    }
    .iContact-cnt .iMail-col {
        top: 0
    }
    .iContact-lsitem {
        width: 100%;
        height: auto;
        margin: 0 auto 30px;
        padding: 30px 0 0;
        justify-content: center
    }
    .iContact-lsitem::before {
        width: calc(100% + 30px);
        left: -15px;
        clip-path: none
    }
    .iContact-lsitem>ul {
        width: 100%;
        max-width: 445px;
        display: flex;
        flex-wrap: wrap
    }
    .iContact-lsitem>ul li {
        width: calc((100% - 5px)/ 2);
        display: flex;
        flex-direction: column;
        margin-right: 5px;
        margin-bottom: 30px
    }
    .iContact-lsitem .iTtl {
        font-size: 14px;
        margin: 0 auto 20px;
        padding-bottom: 10px;
        letter-spacing: .01em;
        background-image: none
    }
    .iBtel,
    .iContact-lsitem .iImg {
        margin: 0 auto 15px
    }
    .iContact-lsitem .iDes {
        font-size: 10px;
        letter-spacing: -.05em
    }
    .ibtnContact {
        flex-direction: column;
        width: 100%;
        max-width: 250px;
        margin: 0 auto 30px
    }
    .iBttl,
    .iMail {
        margin: 0 auto 15px
    }
    .iBttl {
        width: 100%;
        padding: 15px 0;
        height: auto
    }
    .iLine,
    .iMail {
        width: 100%;
        height: 80px
    }
    .iBttl-btxt,
    .iFixed .iBttl-btxt,
    .iFixed .iLine .iLine-small,
    .iMail-txtsmall {
        font-size: 9px
    }
    .iBttl-nb {
        font-size: 15px
    }
    .iMail::before {
        position: absolute;
        content: "";
        width: 100%;
        height: calc(100% - 4px);
        background-color: var(--color-origen);
        top: 0;
        border-radius: 10px;
        transition: .3s
    }
    .iFixed .iMail-col,
    .iMail-col {
        padding-left: 20px;
        background-size: 17px auto
    }
    .iBanner-bbig::after,
    .iBanner-bitem::after {
        background-size: calc(100% - 15px) calc(100% - 15px);
        padding: 5px
    }
    .iMail-txtbig {
        font-size: 7px
    }
    .iLine-col {
        padding-left: 25px;
        background-size: 26px auto;
        background-position: center left;
        left: -2px
    }
    .iLine-txtbig {
        font-size: 10px
    }
    .iLine-small,
    .iLine-txtsmall {
        font-size: 8px
    }
    .iH3-ttl,
    .txt-cl {
        font-size: 16px
    }
    .iOnebox {
        height: auto;
        padding-top: 30px;
        margin-bottom: 0
    }
    .iH3-ttl {
        letter-spacing: .01em;
        padding-bottom: 15px;
        text-align: center;
        width: fit-content;
        margin: 0 auto 30px
    }
    .iLsbbtn li a {
        min-height: 50px;
        font-size: 14px;
        padding: 15px;
        background-size: 8px auto;
        background-position: center right 10px
    }
    .iLsbbtn li a::before {
        width: 15px
    }
    .iAbout {
        width: calc(100% - 15px);
        padding: 15px 0 50px;
        margin: 0 0 50px auto
    }
    .iAbout-cnt,
    .iAbout-img {
        width: 100%;
        margin: 0 auto 15px
    }
    .iAbout::before {
        top: 15px;
        left: -15px
    }
    .iAbout::after {
        bottom: 0;
        right: 15px;
        font-size: 60px
    }
    .iAbout-container {
        padding: 0 15px;
        display: flex;
        flex-direction: column
    }
    .iAbout-cnt .iH3-ttl {
        font-size: 16px;
        letter-spacing: .01em;
        text-align: left
    }
    .iAbout-img {
        display: block;
        float: none;
        min-width: auto
    }
    .iAbout-btxt {
        max-width: 100%;
        display: flex;
        flex-direction: column;
        margin: 0 auto 30px
    }
    .iAbout-frame-lsitem ul li:not(:last-child),
    .iAbout-txt:not(:last-child) {
        margin-bottom: 15px
    }
    .iAbout-bframe {
        flex-direction: column;
        max-width: 400px;
        margin: 0 auto
    }
    .iAbout-frame {
        max-width: 100%;
        min-height: auto;
        padding: 15px 0;
        flex-direction: column;
        margin: 0 auto 30px
    }
    .iAbout-frame-ttl {
        width: calc(100% - 30px);
        border-right: none;
        border-bottom: 2px solid rgba(255, 255, 255, .5);
        margin: 0 auto 15px
    }
    .iAbout-frame-ttl .ittl {
        width: 100%;
        font-size: 20px;
        margin: 0 auto 15px;
        text-align: center
    }
    .iAbout-frame-lsitem {
        width: 100%;
        padding: 0 15px;
        justify-content: space-evenly
    }
    .iAdvantage-binfo-cnt .slick-list,
    .iWaterproof {
        width: calc(100% - 15px)
    }
    .iAbout-frame-lsitem ul:not(:last-child) {
        margin-right: 0;
        margin-bottom: 15px
    }
    .iAbout-frame-lsitem ul li {
        font-size: 14px;
        padding-left: 15px
    }
    .iAbout-frame-lsitem ul li::before {
        position: absolute;
        content: "";
        width: 5px;
        height: 5px;
        top: 7px;
        left: 0;
        border-radius: 100%
    }
    .iAbout .iLsbbtn li,
    .iWaterproof .iLsbbtn li {
        margin: 0 auto
    }
    .iAbout .iLsbbtn li:not(:last-child) {
        margin-right: auto;
        margin-bottom: 15px
    }
    .iWaterproof {
        padding: 15px 0 100px;
        border-left: none;
        margin: 0 auto 100px 0
    }
    .iWaterproof::before {
        top: 15px;
        left: 15px
    }
    .iWaterproof-bfdata {
        bottom: -10px;
        right: 15px;
        font-size: 60px
    }
    .iWaterproof-bfdata span:first-child {
        right: -4px;
        top: 10px
    }
    .iWaterproof-bfdata span:last-child {
        right: -10px;
        top: 0
    }
    .iWaterproof-container {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        flex-direction: column
    }
    .iWaterproof-lsitem {
        width: 100%;
        margin: 0 auto 50px
    }
    .iWaterproof-lsitem li {
        width: calc(100% - 5px);
        min-height: auto;
        padding: 25px 0 25px 15px
    }
    .iWaterproof-lsitem li::before {
        width: 3px;
        height: calc(100% - 20px);
        top: 10px;
        left: 6px
    }
    .iWaterproof-lsitem li:not(:last-child) {
        margin-bottom: 30px
    }
    .iWaterproof-lsitem .ittl {
        font-size: 20px;
        margin-bottom: 10px
    }
    .iWaterproof-lsitem .ides {
        font-size: 14px;
        letter-spacing: .08em;
        margin-left: 0
    }
    .iWaterproof-bcnt {
        width: 100%;
        padding: 0
    }
    .iAdvantage .iH3-ttl,
    .iAdvantage-bsec:not(:last-child),
    .iGuide .iH4-ttl,
    .iWaterproof-btxt {
        margin: 0 auto 30px
    }
    .iBanner-bflex-lstxt li:not(:last-child),
    .iWaterproof-txt:not(:last-child) {
        margin-bottom: 10px
    }
    .iWaterproof .iLsbbtn {
        flex-direction: column;
        justify-content: center
    }
    .iBanner-bflex,
    .iGuide-lsitem ul {
        flex-direction: column
    }
    .iBanner {
        margin: -50px auto 50px
    }
    .iBanner-bflex {
        margin: 0 auto 25px
    }
    .iBanner-bflex-ttl {
        font-size: 20px;
        margin-bottom: 15px
    }
    .iBanner-bflex-des {
        font-size: 16px;
        padding: 5px 20px 5px 15px;
        margin-left: 0
    }
    .iBanner-bflex-lstxt {
        min-width: 180px;
        min-height: auto;
        padding: 15px
    }
    .iBanner-bitem {
        width: 100%;
        height: auto;
        min-height: 220px;
        padding: 25px
    }
    .iBanner-bitem:not(:last-child) {
        margin-bottom: 50px
    }
    .iBanner-bitem::after {
        border-radius: 20px;
        border: 5px solid #eef8fe
    }
    .iBanner-bitem>a {
        height: calc(100% + 25px)
    }
    .iBanner-bbig {
        width: 100%;
        min-height: auto;
        padding: 25px 15px
    }
    .iBanner-bbig::before {
        background-position: center right -100px;
        border-radius: 30px
    }
    .iBanner-bbig::after {
        border: 5px solid #55b6e8;
        border-radius: 25px
    }
    .iBanner-bbig-des {
        font-size: 13px;
        margin-bottom: 15px;
        padding: 10px 15px
    }
    .iBanner-bfitem {
        top: -25px;
        right: 25px;
        width: 70px;
        height: 70px
    }
    .iBanner-bfitem .inumber {
        font-size: 26px
    }
    .iAdvantage {
        background-size: auto 100%;
        padding: 50px 0 30px;
        margin-bottom: 45px
    }
    .iAdvantage::before {
        font-size: 50px;
        top: 30px;
        left: 50%;
        transform: translateX(-50%)
    }
    .iAdvantage-bcol {
        max-width: 700px;
        margin: 0 auto 30px
    }
    .iAdvantage-bsec,
    .iAdvantage-bsec.iwrap {
        flex-direction: column-reverse
    }
    .iAdvantage-bsec-cnt {
        width: 100%;
        margin: 0
    }
    .iAdvantage-bsec-img {
        width: 100%;
        margin: 0 auto -50px;
        text-align: center
    }
    .iAdvantage-bttl {
        width: 100%;
        margin: 0 auto;
        --wnb: 40px
    }
    .iAdvantage-bttl-nb {
        font-size: 24px;
        min-height: 60px;
        padding: 0;
        width: var(--wnb)
    }
    .iAdvantage-bttl-ttl {
        width: calc(100% - var(--wnb));
        font-size: 12px;
        padding-left: 15px
    }
    .iAdvantage-binfo {
        width: 100%;
        min-height: auto;
        padding: 15px
    }
    .iAdvantage-binfo-cnt .arrow-left,
    .iAdvantage-binfo-cnt .arrow-right {
        width: 10px;
        height: 15px;
        top: 50%;
        transform: translateY(-50%)
    }
    .iAdvantage-binfo .itxt {
        font-size: 14px;
        margin: 0 5px
    }
    .iH4-ttl {
        font-size: 20px
    }
    .iGuide {
        margin: 0 auto;
        padding-bottom: 50px
    }
    .iGuide::before {
        height: 520px;
        width: 200vw
    }
    .iGuide::after {
        bottom: 830px;
        right: 50%;
        transform: translateX(50%);
        font-size: 80px
    }
    .iGuide-container {
        width: 100%;
        margin: 0 auto;
        min-height: auto;
        padding: 0 15px
    }
    .iGuide-img {
        width: 100%;
        max-width: 200px;
        margin: 0 auto 30px;
        text-align: center;
        float: none;
        min-width: auto
    }
    .iGuide .iH4-ttl::before {
        top: 12px
    }
    .iGuide-lsfframe {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        margin: 0 auto 15px
    }
    .iGuide-lsfframe li {
        width: calc((100% - 10px)/ 2);
        margin-right: 10px;
        margin-bottom: 10px;
        font-size: 14px;
        padding: 15px 0;
        text-align: center;
        min-height: 51px
    }
    .iGuide-lsfframe li:nth-child(3n+3) {
        margin-right: 10px
    }
    .iGuide-cnt {
        margin: 0 auto 45px
    }
    .iGuide-lsitem {
        flex-wrap: nowrap;
        flex-direction: column;
        width: 100%;
        max-width: 250px;
        margin: 0 auto
    }
    .iGuide-lsitem li {
        width: 100%;
        margin: 0 auto 15px;
        min-height: auto
    }
    .iGuide-lsitem a {
        min-height: 250px;
        padding: 15px
    }
    .iGuide-lsitem a::after {
        width: 140px;
        height: 140px
    }
    .iGuide-lsitem a>span {
        font-size: 18px;
        background-size: 30px auto;
        background-position: bottom 0 center;
        padding-bottom: 25px
    }
    footer {
        margin: 0 auto 70px;
        padding-top: 50px
    }
    footer::after {
        height: 250px
    }
    footer::before {
        background-size: 750px auto
    }
    .ft-btop {
        flex-direction: column;
        padding: 15px
    }
    .ft-btop-logo {
        width: 220px;
        text-decoration: none;
        margin: 0 auto 15px
    }
    .ft-btop-des {
        font-size: 12px;
        padding-top: 0;
        text-align: center
    }
    .ft-bmap {
        width: 100%;
        height: 300px;
        margin-bottom: 30px
    }
    address {
        font-size: 12px!important;
        padding: 15px 0;
        line-height: 1.4em
    }
    .to-top {
        right: 15px;
        bottom: 80px
    }
    .to-top>a {
        width: 40px;
        height: 40px
    }
    .to-top>a:before {
        left: 15px;
        top: 17px;
        width: 10px;
        height: 10px
    }
    .iFixed {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 70px;
        z-index: 20;
        padding: 5px;
        transform: translateY(70px);
        transition: .3s
    }
    .iFixed.fixed {
        transform: translateY(0)
    }
    .iFixed .ibtnContact {
        width: 100%;
        max-width: 100%;
        margin: 0;
        --wiBttl: 80px;
        flex-direction: row
    }
    .iFixed .iBttl {
        height: 100%;
        margin: 0 15px 0 0;
        width: 70px;
        padding: 5px 0
    }
    .iFixed .iBttl::before {
        right: -11px
    }
    .iFixed-bflex {
        width: calc(100% - var(--wiBttl));
        display: flex;
        height: 100%
    }
    .iFixed-bflex a {
        /*width: calc((100% - 5px)/ 2);*/
		width: calc((100% - 5px)/ 1);
        margin-right: 5px;
        height: 100%;
        margin-bottom: 0
    }
    .iFixed .iMail-col .iMail-txtsmall {
        font-size: 9px;
        margin: 0;
        line-height: 1.2em
    }
    .iFixed .iMail-col .iMail-txtbig {
        font-size: 7px;
        line-height: 1.2em
    }
    .iFixed .iLine .iLine-txtsmall,
    .iFixed .iLine-col .iLine-txtbig {
        font-size: 10px;
        line-height: 1.2em
    }
    .iFixed .iLine-col {
        padding-left: 25px;
        background-size: 26px auto;
        background-position: center left;
        left: 0
    }
    .iFixed .iLine-col .iLine-txtbig {
        margin-bottom: 3px
    }
    .iFixed .iContact-cnt {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: row;
        padding: 0
    }
    .iMvs-itemlink {
        width: 80px;
        height: 80px;
        top: 200px;
        right: 0
    }
    .sp475 {
        display: inherit
    }
    .hnav .iContact .ibtnContact {
        flex-direction: row;
        width: 100%;
        max-width: 445px
    }
}

@media screen and (min-width:375px) and (max-width:750px) {
    .iMvs-ttlstyle {
        font-size: 14px;
        padding: 0 0 0 80px;
        margin: 0 auto 15px
    }
    .iMvs-ttlstyle-small {
        left: -10px;
        transform: none;
        width: 90px;
        height: 36px;
        background-position: top 0 left;
        top: -25px
    }
    .iMvs-small>span {
        top: 8px;
        left: 15px
    }
    .iMvs-ttlbig {
        letter-spacing: .01em
    }
    .iMvs-lsdes-txt {
        font-size: 18px
    }
    .ft-btop-des,
    .iContact-cnt-bcol-btxt .ics-sz02,
    .iContact-cnt-btel .ides,
    .iMvs-lsdes-txt .ics-sz01 {
        font-size: 14px
    }
    .iContact-cnt-bcol,
    .iMvs-info-img {
        max-width: 350px
    }
    .iMail-txtbig,
    .iMvs-info-des {
        font-size: 8px
    }
    .iMvs-itemlink {
        width: 90px;
        height: 90px;
        top: 165px
    }
    .iMvs-lsdes {
        margin: 0 auto 30px
    }
    .iContact-bcol {
        max-width: 345px
    }
    .iContact-bcol::before,
    .iContact-cnt-bcol::before {
        top: -20px
    }
    .iBanner-bbig-ttl,
    .iContact-cnt-ttl,
    .iContact-lsitem .iTtl {
        font-size: 16px
    }
    .iContact-lsitem .iDes {
        font-size: 11px;
        letter-spacing: .01em
    }
    .iContact-cnt-des {
        max-width: 280px;
        font-size: 16px
    }
    .iContact-cnt-btel .iphone {
        font-size: 32px;
        padding-left: 50px;
        padding-top: 3px;
        background-size: 30px auto;
        background-position: center left 10px
    }
    .iAbout-cnt .iH3-ttl,
    .iH3-ttl {
        font-size: 20px
    }
    .iBanner-bflex-ttl {
        font-size: 26px
    }
    .iBanner-bflex-des {
        font-size: 18px;
        padding: 5px 20px 5px 15px;
        margin-left: 0
    }
    .iBanner-bbig {
        padding: 25px
    }
    .iBanner-bbig-des {
        font-size: max(3.2vw, 15px)
    }
    .iAdvantage-bttl {
        font-size: 28px;
        --wnb: 50px
    }
    .iAdvantage-bttl-ttl {
        font-size: max(2.667vw, 16px)
    }
    .iAdvantage-bttl-nb {
        min-height: 60px
    }
    .iFixed .iLine-col {
        padding-left: 30px;
        background-size: 30px auto;
        left: -3px
    }
    .iFixed .iLine-col .iLine-txtbig,
    .iFixed .iLine-col .iLine-txtsmall,
    .iLine-txtbig {
        font-size: 12px
    }
    .iFixed .iLine-col .iLine-small,
    .iMail-txtsmall {
        font-size: 11px
    }
    .iFixed .iMail-col {
        padding-left: 21px;
        background-size: 18px auto
    }
    .iFixed .iMail-col .iMail-txtsmall {
        font-size: 12px;
        margin-bottom: 3px
    }
    .iFixed .iMail-col .iMail-txtbig {
        font-size: 9px;
        line-height: 1.2em
    }
    .iFixed .iBttl-btxt {
        font-size: 9px
    }
    .iGuide-lsitem {
        max-width: 100%
    }
    .iGuide-lsitem ul {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center
    }
    .iGuide-lsitem a {
        min-height: 200px
    }
    .iGuide-lsitem a>span {
        font-size: 13px
    }
    .iGuide-lsitem li {
        width: calc(50% - 10px);
        margin: 5px!important
    }
    .iGuide-lsitem li:last-child {
        width: 100%
    }
    .iGuide-lsitem li:not(:first-child) a>span {
        font-size: 15px
    }
    .iGuide-container {
        display: flex;
        flex-direction: column
    }
    .iGuide-container .iH4-ttl {
        order: 1;
        z-index: 1;
        text-align: left;
        margin: 0
    }
    .iGuide-container .iH4-ttl:before {
        z-index: -1
    }
    .iGuide-container .iGuide-img {
        order: 2;
        float: left;
        margin: 0
    }
    .iGuide-container .iGuide-cnt {
        order: 3;
        margin-top: 20px
    }
    .iGuide-container .iGuide-cnt .iGuide-lsfframe {
        width: calc(100% - 240px);
        float: left;
        position: absolute;
        right: 15px;
        top: 30px;
        flex-direction: column
    }
    .iGuide-container .iGuide-cnt .iGuide-lsfframe li {
        width: 100%;
        margin: 0 auto 10px;
        font-size: 12px;
        padding: 10px 5px
    }
    .iGuide-container .iGuide-cnt .iGuide-lsfframe li:last-child {
        margin-bottom: 0
    }
    .iGuide-container .iGuide-lsitem {
        order: 4
    }
    .iGuide::after {
        bottom: 450px
    }
    .iLine-txtsmall {
        font-size: 10px
    }
    .iAbout .iLsbbtn {
        flex-direction: row
    }
    .iAbout .iLsbbtn li a {
        min-width: 150px
    }
}

@media screen and (min-width:425px) and (max-width:750px) {
    .iContact-lsitem .iTtl,
    .iFixed .iBttl-nb,
    header .iBttl-nb {
        font-size: 18px
    }
    .iContact-lsitem .iDes,
    .iFixed .iBttl-btxt,
    header .iBttl-btxt {
        font-size: 12px
    }
    .iContact-bcol::before {
        top: -22px
    }
    .iFixed .iBttl {
        width: 100px
    }
    .iFixed .iMail-col .iMail-txtbig {
        font-size: 10px;
        line-height: 1.2em
    }
    .hnav .iContact-cnt .iBttl {
        max-width: 94px;
        height: 60px;
        margin: 0 auto
    }
    .iLine-col {
        padding-left: 28px;
        left: -4px
    }
    .iAbout .iLsbbtn li a {
        min-width: 180px
    }
}

@media screen and (min-width:475px) and (max-width:750px) {
    .iMvs-ttlstyle {
        font-size: 18px;
        padding: 0 0 0 90px
    }
    .iMvs-ttlstyle-small {
        left: -15px;
        width: 100px;
        height: 40px;
        top: -20px
    }
    .iMvs-ttlstyle-small>span {
        top: 7px;
        left: 12px
    }
    .iMvs-itemlink {
        width: 100px;
        height: 100px;
        top: 185px;
        right: calc(50% - 230px)
    }
    .iContact-lsitem>ul li {
        width: calc((100% - 15px)/ 2);
        margin-right: 15px
    }
    .iBttl-nb,
    .iContact-cnt-ttl,
    .iContact-lsitem .iTtl {
        font-size: 20px
    }
    .iContact-lsitem .iDes {
        font-size: 14px
    }
    .iContact-bcol {
        max-width: 445px
    }
    .iContact-bcol::before {
        top: 0;
        width: 74px;
        height: 180px
    }
    .iContact-bcol-btxt {
        width: 100%;
        max-width: 445px;
        flex-direction: row;
        align-items: center;
        justify-content: center
    }
    .iContact-bcol-btxt .ics-sz01 {
        font-size: 11px;
        margin-right: 5px
    }
    .iContact-bcol-btxt .ics-sz01 .ispace {
        font-size: 11px;
        margin-right: -2px
    }
    .iContact-bcol-btxt .ics-sz02 {
        font-size: 11px
    }
    .iContact-bcol-btxt .ics-sz02:not(:last-child) {
        margin-right: 5px
    }
    .iContact-cnt .iBttl {
        margin: 0 15px 0 0
    }
    .iContact-cnt-des {
        max-width: 360px;
        font-size: 18px
    }
    .iContact-cnt-btel .iphone {
        font-size: 34px;
        padding-top: 0
    }
    .iContact-cnt-cnt .iBttl {
        width: 90px;
        margin: 0 20px 0 0;
        height: 80px
    }
    .ibtnContact {
        flex-direction: row;
        max-width: 100%;
        justify-content: center
    }
    .iBttl-btxt,
    .iLine-small,
    .iLine-txtbig,
    .iLine-txtsmall,
    .iMail-txtsmall {
        font-size: 12px
    }
    .iMail {
        width: 190px;
        height: 80px;
        margin: 0 5px 0 0
    }
    .iMail-col {
        padding-left: 30px;
        background-size: 24px auto
    }
    .iMail-txtbig {
        font-size: 10px
    }
    .iLine {
        width: 140px;
        height: 80px
    }
    .iLine-col {
        padding-left: 30px;
        background-size: 26px auto;
        left: 0
    }
    .iContact-cnt .iBttl {
        width: 130px
    }
    .sp475 {
        display: none
    }
}

@media screen and (min-width:525px) and (max-width:750px) {
    .iGuide-lsitem li,
    .iGuide-lsitem li:last-child {
        width: calc(33.3333333333% - 10px)
    }
    .hnav .iMail {
        margin: 0 10px 0 23px
    }
    .iContact-cnt .iBttl {
        width: 220px
    }
    .iGuide-lsitem {
        max-width: 100%
    }
    .iGuide-lsitem ul {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center
    }
    .iGuide-lsitem a {
        min-height: 200px
    }
    .iGuide-lsitem a>span {
        font-size: 13px
    }
    .iGuide-lsitem li {
        margin: 5px!important
    }
    .iGuide-lsitem li:not(:first-child) a>span {
        font-size: 15px
    }
    .udr-tbl-point .bg {
        position: sticky
    }
    .txt.mb70 {
        margin-bottom: 30px!important
    }
    .iGuide-container .iGuide-img {
        max-width: 250px
    }
    .iGuide-container .iGuide-cnt {
        order: 3;
        margin-top: 20px
    }
    .iGuide-container .iGuide-cnt .iGuide-lsfframe {
        width: calc(100% - 300px)
    }
    .iGuide-container .iGuide-cnt .iGuide-lsfframe li {
        width: 100%;
        margin: 0 auto 10px;
        font-size: 14px;
        padding: 10px
    }
    .iGuide-container .iGuide-cnt .iGuide-lsfframe li:last-child {
        margin-bottom: 0
    }
    .iGuide::after {
        bottom: 240px
    }
}

@media screen and (min-width:639px) and (max-width:750px) {
    .iGuide-container .iGuide-img {
        max-width: 300px
    }
    .iGuide-container .iGuide-cnt {
        order: 3;
        margin-top: 20px
    }
    .iGuide-container .iGuide-cnt .iGuide-lsfframe {
        width: calc(100% - 350px)
    }
    .iGuide-container .iGuide-cnt .iGuide-lsfframe li {
        width: 100%;
        margin: 0 auto 10px;
        font-size: 14px;
        padding: 10px
    }
    .iGuide-container .iGuide-cnt .iGuide-lsfframe li:last-child {
        margin-bottom: 0
    }
}