﻿@media screen and (min-width: 768px){ 
    #fot .fotBox {
        padding-top: 91px;
    }
    }
    #main .breadcrumb {
        box-sizing: border-box;
        color: #83838f;
        display: flex;
        flex-wrap: wrap;
        font-size: 1rem;
        margin: 10px auto;
        line-height: 1.5;
        max-width: 1200px;
    }
    #main{
        width: 100%;
        margin: auto;
        float: none;
    }	
    @media screen and (max-width: 767px){ 
    #main {
        box-sizing: border-box;
    }
    } 
    #main section{
        margin: 120px 0 60px;
    }
    #main section.sides{
        box-sizing: border-box;
        }
    @media screen and (max-width: 767px){
    #main section.sides{
           padding: 0 10px;
    }}
        @media screen and (max-width: 767px){ 
        #main section{
            margin: 60px 0 60px;
    }
    } 
        #main section:last-child{
            margin: 100px auto 0;
    }
    
    
    
    .title-area{
        overflow: hidden;
        display: flex;
        flex-direction: column;
        align-items: center;
        background-image: url(../img/2307/niwaki_back.jpg);
        background-position: center bottom;
        background-repeat: no-repeat;
        /* background-attachment: fixed; */
        background-size: cover;
        background-color: #464646;
        height: 360px;
        position: relative;
    }
    .title-area .logo{
        position: relative;
        background: #fff;
        top: 0;
        left: 0;
        z-index: 0;
        width: 600px;
        height: 250px;
        border-radius: 50%;
        transform: translate(0, -62%);
    }
    .title-area .logo img{
        position: absolute;
        margin: auto;
        display: block;
        bottom: 0px;
        width: 54%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    @media screen and (max-width: 767px){ 
    .title-area{
    background-image: url(../img/2307/niwaki_back_sp.jpg);
    }
    .title-area .logo {
        position: relative;
        background: #fff;
        top: 0;
        left: 0;
        z-index: 0;
        width: calc(100% + 20px);
        height: 45%;
        border-radius: 50%;
        transform: translate(0, -56%);
    }
    .title-area .logo img{
        max-width: 250px;
        width: 60%;
        position: absolute;
        margin: auto;
        display: block;
        bottom: 0%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    }
    .videos{
    position:relative;
    cursor:pointer;
    box-sizing: border-box;
    }
    .videos img{
    display: block;
    }
    .maindesign .videos--overmaker{
    top: 50%;
    left: 50%;
    position: absolute;
    transform: translate(-50%, -50%);
    width: 20%;
    height: auto;
    opacity:0.7;
    }
    
        #modalwindow{
            display:none;
            background:rgba(0,0,0,0.7);
            position:fixed;
            top:0;
            left:0;
            width:100%;
            height:100%;
            z-index: 10000;
        }
        #bamiri{
            width:80%;
            height:80%;
            position: relative;
            top: 50%;
            left: 50%;
            transform: translateY(-50%) translateX(-50%);
        }
    #bamiri video{
         position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: auto;
        width: auto;
        max-width: 100%;
        max-height: 100%;
        margin: auto;
    
    }	
    #bamiri .youtube{
         position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: auto;
        width: auto;
        max-width: 100%;
        max-height: 100%;
        margin: auto;
    
    }
        #subwindow{
            position:absolute;
            top:0;
            left:0;
            width:100%;
            height:100%;
            border:0;
        }
        .modal_close{
            position: absolute;
               top: -30px;
               right: -30px;
            cursor:pointer;
        }
    .youtube iframe{
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
    }
    
    #main .gototop {
        
        text-align: right;
        margin-top: 20px;
        margin-bottom: 20px;
    }
    
    .title{
        top: 50%;
        left: 50%;
        width: 100%;
        max-width: 1200px;
        text-align: center;
        position: absolute;
        font-size: 7em;
        line-height: 1.2;
        font-weight: bold;
        color: #fff;
        text-shadow: 1px 1px 5px #000;
        transform: translate(-50%, -50%);
    }
    @media screen and (max-width: 767px){  
    .title {
        font-size: 14vw;
        text-align: center;
        line-height: 1.2;
        display: block;
        }	
    }
        
    #main .category-name {
        text-align: center;
        font-weight: bold;
        font-size: 3rem;
        line-height: 1.2;
        margin: 50px 0 20px;
        position: relative;
        width: 100%;
    }  
    #main .category-name span{
        position: relative;
    }  
    
    #main .category-name.pickup span::before {
        content: '';
        position: absolute;
        transform: translate(-50%, -50%) rotate(45deg);
        border-top: 5px solid #000;
        top: 55%;
        left: -20px;
        width: 50px;
    }
    #main .category-name.pickup span::after {
        content: '';
        position: absolute;
        transform: translate(-50%, -50%) rotate(-45deg);
        border-top: 5px solid #000;
        top: 55%;
        right: -70px;
        width: 50px;
    }
    
    @media screen and (max-width: 767px){    
    #main .category-name {
        font-size: 1.5em;
        font-feature-settings: "palt" 1;
    } 
    #main .category-name.pickup span::before {
        content: '';
        position: absolute;
        transform: translate(-50%, -50%) rotate(70deg);
        border-top: 3px solid #000;
        top: 55%;
        left: -70px;
        width: 50px;
    }
    #main .category-name.pickup span::after {
        content: '';
        position: absolute;
        transform: translate(-50%, -50%) rotate(-70deg);
        border-top: 3px solid #000;
        top: 55%;
        right: -70px;
        width: 50px;
    }
    #main .category-name.pickup.no2 span::before {
        content: '';
        position: absolute;
        transform: translate(-50%, -50%) rotate(70deg);
        border-top: 3px solid #000;
        top: 55%;
        left: -20px;
        width: 50px;
    }
    #main .category-name.pickup.no2 span::after {
        content: '';
        position: absolute;
        transform: translate(-50%, -50%) rotate(-70deg);
        border-top: 3px solid #000;
        top: 55%;
        right: -70px;
        width: 50px;
    }
    
    }     
    #main .category-text {
        text-align: center;
    font-size: 1.25em;
        line-height: 1.2;
        margin: 10px 0;   
    }  
    #main .category-text.left {
        text-align: left;  
    }    
    #main .category-text.red {
       color: #f00;  
    } 
    @media screen and (max-width: 767px){    
    #main .category-text {
        font-size: 1em;
    }     
    }     
        
    #main .catch{
        margin: 0 0 0 0;
        background: #004897;
        padding: 20px 0;
        color: #fff;
    }
    #main .catch-02{
        margin: 0 0 60px 0;
    }
    #main .catch-box{
        display: flex;
        align-items: center;
        justify-content: center;
    }	
    
    #main .catch .catch-first{
        text-align: center;
        font-weight: bold;
        font-size: 3.5em;
        line-height: 1.2;
    }	
    #main .catch .catch-first-sub{
        text-align: center;
        font-size: 1.5em;
        line-height: 1.2;
        margin: 15px 0 0;
    }
    #main .catch-02 .catch-second{
        text-align: center;
        font-size: 6.5rem;
        font-weight: bold;
        position: relative;
    }	
    #main .catch-02 .catch-second::after{
        position: absolute;
        content: '';
        height: 20px;
        bottom: -7%;
        left: 50%;
        transform: translate(-50%,-50%);
        width: 100%;
        max-width: 1200px;
        background-color: #004897;
        background-image: repeating-linear-gradient(-45deg,#fff, #fff 7px,transparent 0, transparent 14px);
    }
    #main .catch-02 .catch-last{
        text-align: center;
        font-size: 2em;
        padding: 10px 0;
        width: 100%;
        max-width: 700px;
        margin: 30px auto;
        position: relative;
        border: 1px solid #000;
    }	
    #main .catch-02 .catch-last::after{
       content: '';
        height: 0;
        width: 0;
        transform: translate(-50%, -50%);
        left: 50%;
        bottom: -50px;
        position: absolute;
        border-right: 50px solid transparent;
        border-top: 30px solid #000;
        border-left: 50px solid transparent;
        border-top-color: #000;
    }
        @media screen and (max-width: 767px){ 
            #main .catch .catch-mark{
        width: 13%;
    }	
     #main .catch .catch-first{
        font-size: 1.5em;
         margin: 0 0 10px;
    }	
    #main .catch .catch-first-sub{
        font-size: 1em;
        font-feature-settings: "palt" 1;
    }
    #main .catch-02 .catch-second{
        font-size: 10vw;
        margin: 30px 0 0;
    }	
    #main .catch-02 .catch-second::after {
        height: 5px;
    }
    #main .catch-02 .catch-last{
        font-size: 1em;
    }   
    #main .catch-02 .catch-last::after {
        left: 50%;
        bottom: -65px;
        border-right: 35px solid transparent;
        border-top: 25px solid #000;
        border-left: 35px solid transparent;
    }    
        
        
        }
        
    #main .checkBox{
        max-width: 1200px;
        width: 100%;
        margin: auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }	    
    #main .checkBox .check-list{
        margin: 40px;
    }    
    #main .checkBox .check-list li{
        display: flex;
            align-items: baseline;
        /*cursor: pointer;*/
    }    
    #main .checkBox .check-list li p{
        font-size: 1.25em;
        /*cursor: pointer;*/
        text-indent: -20px;
    }    
    #main .checkBox div.cols img{
        width: 100%
    }
    @media screen and (max-width: 767px){
    #main .checkBox{
        flex-direction: column-reverse;
    }
    #main .checkBox div.cols{
        width: 100%
    }	
    #main .checkBox .check-list{
        margin: 20px 0px 20px 20px;
    }    
    #main .checkBox .check-list li p {
        font-size: 1em;
        font-feature-settings: "palt" 1;
    }
    }
        #main .headsup{
            max-width: 1200px;
        width: 100%;
        margin: auto;
        
        }
        #main .headsup-img{
            display: flex;
            flex-wrap: wrap;
        justify-content: space-between;
        margin: 20px 0;
            align-items: center;
        }
        #main .headsup-img img{
            display: block;
            max-width: 590px;
            width: 100%;
            margin: auto auto 20px;
        }
        @media screen and (max-width: 767px){
            
            
            
            
        }
        
         #main .basicexp{
            max-width: 1200px;
        width: 100%;
        margin: 30px auto auto;
        
        }
        #main .basicexp .ant-name{
           text-align: center;
        font-size: 1.25em;
        font-weight: bold;
        color: #fff;
        padding: 10px 0;
        margin: 10px 0;
        background: #004897;
        }
    #main .basicexp .text_block{
        margin: 0 0 30px;
    }	
        #main .basicexp .category-text{
        margin: 10px 0;
        }
        #main .basicexp .basicexp-block{
            display: flex;
            flex-wrap: wrap;
            margin: 20px 0;
        }
        #main .basicexp .basicexp-block li{
            width: calc(50% - 10px);
            margin: 0 20px 20px 0;
        }
        #main .basicexp .basicexp-block li:nth-child(2n){
            margin: 0 0 20px 0;
        }
        #main .basicexp .basicexp-block li div table{
        width: 100%;
        box-sizing: border-box;
        }
        #main .basicexp .basicexp-block li div table tr{
            height: 20px;
        }
        #main .basicexp .basicexp-block li div table th{
            width: 20%;
        border-bottom: 3px solid #fff;
        border-right: 3px solid #fff;
        padding: 10px;
        color: #fff;
        background: #004897;
        }
        #main .basicexp .basicexp-block li div table td{
             width: 80%;
        border-bottom: 3px solid #fff;
        padding: 10px;
        background: #e3e3e3;
        }
        #main .basicexp .basicexp-block li div table td img{
            display: block;
        margin: auto;
        }
            @media screen and (max-width: 767px){ 
      #main .basicexp .basicexp-block li{
            width: 100%;
            margin: 0 0 20px 0;
        }
                #main .basicexp .basicexp-block li div table th {
        width: 25%;
        padding: 10px 5px 10px 5px;
        color: #fff;
    }
        }  
        
    #main .service{
    max-width: 1200px;
        width: 100%;
        margin: auto;
        }
        
    #main .service-block{
    display: flex;
        flex-wrap: wrap;
        justify-content: center;
        }
        #main .service .service-block li{
            width: calc(50% - 10px);
            margin: 0 20px 20px 0;
        }
        #main .service .service-block li:nth-child(2n){
            margin: 0 0 20px 0;
        }
        #main .service .service-block li div img{
           width: 100%;
        }
        
    @media screen and (max-width: 767px){ 
      #main .service .service-block li{
            width: 100%;
            margin: 0 0 20px 0;
        }
        }  
        
        
     #main .flow{
    max-width: 1200px;
        width: 100%;
        margin: auto;
        }   
         #main .flow-block{
    display: flex;
        flex-wrap: wrap;
             margin: 40px 0;
        }
        #main .flow-block li{
            width: calc(25% - 0px);
    position: relative;
        }
         #main .flow-block li::after{
    content: '';
        height: 0;
        width: 0;
        transform: translate(-50%, -50%);
        top: 50%;
        right: -48px;
        position: absolute;
        border-top: 30px solid transparent;
        border-left: 20px solid #000;
        border-bottom: 30px solid transparent;
        }
        #main .flow-block li:last-child::after{
    content: none;
        }
        #main .flow-block li{
    height: 160px;
        padding: 20px;
            margin: 0 44px 0 0;
        width: 160px;
        box-sizing: border-box;
        border-radius: 10px;
        box-shadow: #000 1px 1px 5px;
        display: flex;
        align-items: center;
            flex-direction: column;
        }
        #main .flow-block li:last-child{
        margin: 0 0 0 0;
        }
        #main .flow-block li p{
    line-height: 1.2;
        font-size: 1.5em;
                margin: auto;
        }
        @media screen and (max-width: 767px){ 
      #main .flow-block li::after {
        content: '';
        height: 0;
        width: 0;
        transform: translate(-50%, -50%);
        left: 50%;
          top: auto;
        right: auto;
          bottom: -78px;
        position: absolute;
        border-top: 15px solid #000;
        border-left: 20px solid #0000;
        border-right: 20px solid transparent;
        border-bottom: 30px solid transparent;
    }
            #main .flow-block li {
        width: 100%;
        position: relative;
                height: auto;
        padding: 20px;
        margin: auto auto 30px;
        box-sizing: border-box;
        border-radius: 10px;
        display: flex;
        align-items: center;
    }
        } 
        
        
        
        
    #main .assurance{
    max-width: 1200px;
        width: 100%;
        margin: auto;
        }
        
    #main .assurance-block{
    display: flex;
        flex-wrap: wrap;
        justify-content: space-evenly;
        align-items: center;
        }
        #main .assurance .assurance-block li.b_left{
            width: calc(55% - 10px);
        }
         #main .assurance .assurance-block li.b_right{
           width: calc(30% - 10px);
        }
        #main .assurance .assurance-block li .assurance-list{
            list-style: disc;
            font-size: 2rem;
        }
        #main .assurance .assurance-block li .mark{
            width: 300px;
        height: 300px;
        background: #f00;
        color: #fff;
        border-radius: 50%;
        display: flex;
        align-items: center;
            margin: auto;
        }
        #main .assurance .assurance-block li .mark p{
            text-align: center;
        font-size: 3rem;
        margin: auto;
        line-height: 1;
        }
        #main .assurance .assurance-block li .mark p span{
            font-size: 3em;
        }
        
        
        @media screen and (max-width: 767px){
         #main .assurance .assurance-block li.b_left{
            width: 100%;
        margin: 0 0 20px;
             display: flex;
        flex-direction: column;
        align-items: center;
        }
            #main .assurance .assurance-block li.b_left .list{
           width: 100%;
        max-width: 270px;
        margin: 30px 0 0;
        }
         #main .assurance .assurance-block li.b_right{
          width: 100%;
        }
        #main .assurance .assurance-block li .assurance-list{
            list-style: disc;
        font-size: 1.25em;
        padding: 0 0 0 10%;
        margin: 0 0 20px;
        }
        #main .assurance .assurance-block li .mark{
            width: 240px;
        height: 240px;
        background: #f00;
        color: #fff;
        border-radius: 50%;
        display: flex;
        align-items: center;
            margin: auto;
        }
        #main .assurance .assurance-block li .mark p{
            text-align: center;
            font-size: 2rem;
        margin: auto;
        line-height: 1;
        }
        #main .assurance .assurance-block li .mark p span{
            font-size: 3em;
        }      
        }
        
    #main .estimate{
    max-width: 1200px;
        width: 100%;
        margin: auto;
        }  
        #main .estimate-catch{
    display: flex;
        align-items: center;
        flex-wrap: wrap;
        margin: 40px 0 40px;
        justify-content: center;
        } 
        #main .estimate-catch .category-name{
    margin: 0;
        } 
    #main .estimate-subtxt{
    text-align: center;
        font-size: 2em;
        font-weight: bold;
        color: #004897;
        line-height: 1.2;
    }
        
    #main .estimate-btn{
    max-width: 1000px;
        height: 100%;
        margin: 40px auto 100px;
        }
        #main .estimate-priceless{
    text-align: center;
        font-size: 6em;
        background: #f00;
        margin: 30px 0 0;
        width: 540px;
        display: flex;
        font-weight: bold;
        color: #fff;
        align-items: center;
        justify-content: center;
        }
    
        @media screen and (max-width: 767px){
            #main .estimate-subtxt {
        font-size: 1.5em;
    }
          #main .estimate-catch{
    justify-content: center;
        }   
          #main .estimate-catch .category-name {
        margin: 25px 0px;
    }  
           #main .estimate-priceless{
        text-align: center;
        font-size: 3em;
        background: #f00;
        width: 260px;
        margin: auto;
        font-weight: bold;
        color: #fff;
        } 
        }
        
        #main .option{
    max-width: 1200px;
        width: 100%;
            margin: 40px auto 100px auto;
        }
        
    #main .option-block{
    display: flex;
        flex-wrap: wrap;
        }
        #main .option .option-block li{
            width: calc(50% - 10px);
        margin: 0 20px 20px 0;
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        }
        #main .option .option-block li:nth-child(2n){
            margin: 0 0 20px 0;
        }
        #main .option .option-block li div{
            display: flex;
        flex-wrap: wrap;
        align-items: center;
        }
        #main .option .option-block li div.option-img{
        width: calc(50% - 10px);
            margin: 0 10px 0 0;
        }
        #main .option .option-block li div.option-txt{
        width: 50%;
        }
        
        #main .option .option-block li div.option-img img{
            width: 100%;
        }
        #main .option .option-block li div.option-txt p.option-name{
        font-size: 3rem;
        font-weight: bold;
        }
        #main .option .option-block li div.option-txt p{
            padding: 0 0 0 5px;
            line-height: 1.2;
        }
        #main .option .option-block li div.option-txt span.option-name{
        font-size: 3em;
        line-height: 1.2;
        font-weight: bold;
        }
        #main .option .option-block li div.option-txt span{
        font-size: 1em;
        line-height: 1.2;
        font-weight: normal;
        }
        
        @media screen and (max-width: 767px){
         #main .option .option-block li{
            width: 100%;
             margin: 0 0 20px 0;
        }   
            #main .option .option-block li div.option-img{
        overflow: hidden;
    }
        #main .option .option-block li div.option-img img {
        width: 100%;
        min-width: 200px;
    }
          #main .option .option-block li div.option-txt p.option-name {
        font-size: 7vw;
        line-height: 1.5;
        font-weight: bold;  
            }#main .option .option-block li div{
            align-items: flex-start;
        }}
        
        
        
        #main .other{
    max-width: 1200px;
        width: 100%;
        margin: 40px auto 100px auto;
        }
        
    #main .other-block{
    display: flex;
        flex-wrap: wrap;
        }
        #main .other .other-block li{
            width: calc(50% - 10px);
            margin: 0 20px 20px 0;
        }
        #main .other .other-block li:nth-child(2n){
            margin: 0 0 20px 0;
        }
        #main .other .other-block li img{
            width: 100%;
        }
        
        @media screen and (max-width: 767px){
         #main .other .other-block li{
            width: 100%;
             margin: 0 0 20px 0;
        }   
            
        }
    #main .dial{
        max-width: 1200px;
        width: 100%;
        margin: auto;
    }
            
      #main .dial-text-01 {
    text-align: center;
        font-size: 2em;
        font-weight: bold;
        padding: 5px;
        color: #f00;
        line-height: 1.2;
        margin: 15px 0;
    }
     #main .dial-text-02 {
    text-align: center;
        font-size: 1.25em;
        font-weight: bold;
        color: #fff;
        background: #004897;
        padding: 5px;
        border-radius: 10px;
         line-height: 1.2;
    }
     #main .dial-link {
    margin: 10px 0;
    }
    #main .dial-link a img{
    max-width: 1000px;
        display: block;
        margin: auto;
        width: 100%;
    }
        @media screen and (max-width: 767px){ 
      #main .dial-link a img{
        width: 100%;
    }  
        #main .dial-text-01 {
        font-size: 1.25em;
    }
        }   
        
        #main .mitsumoriBtn{
        background: #fff;
        border: 5px solid #EA6D0D;
        border-radius: 40px;
        font-weight: bold;
        width: auto;
        color: #EA6D0D;
        display: flex;
        cursor: pointer;
        text-decoration: none;
        box-sizing: border-box;
        align-items: center;
        justify-content: center;
        text-align: center;
        font-size: 1.5em;
        padding: 0.75em 2.85em;
        transition: 0.3s;
        }
        #main .mitsumoriBtn:hover{
        background: #EA6D0D;
        border: 5px solid #EA6D0D;
        color: #fff;
        }
    @media screen and (max-width: 767px){ 
    #main .mitsumoriBtn{
        margin: 20px 0;
        }
    }
    
    #head .head_est{
        width: 240px;
    }
    #head .head_est a{
        background: #EA6D0D;
        color: #fff;
        display: flex;
        text-decoration: none;
        padding: 10px;
        font-size: 1.25em;
        font-weight: bold;
        line-height: 1.5;
        width: 100%;
        border-radius: 54px;
        height: 100%;
        justify-content: center;
        align-items: center;
        box-sizing: border-box;
        box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    }
    @media screen and (max-width: 767px){
        #head .head_est {
        width: 150px;
    }
        #head .head_est a {
        background: #EA6D0D;
        color: #fff;
        display: flex;
        text-decoration: none;
        padding: 5px;
        font-size: 1em;
        font-weight: bold;
        line-height: 1.5;
        width: 100%;
        border-radius: 54px;
        height: 100%;
        justify-content: center;
        align-items: center;
        box-sizing: border-box;
        box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    }
    }
    #main section.campaign{
        margin: 40px 0 60px;
    }
    #main section.campaign .campaign_box{
        max-width: 1200px;
        width: 100%;
        margin: auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }
    #main section.campaign .campaign_box img{
    width: 100%;
        height: auto;
        border: 1px solid #333;
        box-sizing: border-box;
    }
    #main section.campaign .campaign_txt{
        font-size: 3em;
        font-weight: bold;
        margin: 0 0 45px;
        position: relative;
    }
    @media screen and (max-width: 767px){
    #main section.campaign .campaign_txt{
        font-size: 10vw;
    }
    }
    #main section.campaign .campaign_txt::after {
        content: '';
        height: 0;
        width: 0;
        transform: translate(-50%, -50%);
        left: 50%;
        bottom: -40px;
        position: absolute;
        border-right: 50px solid transparent;
        border-top: 30px solid #000;
        border-left: 50px solid transparent;
        border-top-color: #000;
    }
    
    #main .catch_cols{
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        margin: 20px 0;
    }
    #main .catch_cols p{
        width: 320px;
        text-align: center;
        background: #6dcd71;
        color: #fff;
        padding: 20px;
        border-radius: 5px;
        margin: 10px;
        font-size: 2em;
    }
    @media screen and (max-width: 767px){
    #main .catch_cols{
        flex-wrap: wrap;
    }	
        
    }
    #main .checks{
        margin: auto;
        max-width: 1200px;
    }
    
    #main .checks .checks_flexs{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    
    #main .checks .checks_flexs li{
        width: calc(50% - 20px);
        margin: 0 0 30px;
    }
    #main .checks .checks_flexs li div{
        
    }
    #main .checks .checks_flexs li p.c_title{
        font-size: 1.5em;
        font-weight: bold;
    }
    #main .checks .checks_flexs li p.c_weit{
        font-size: 1.25em;
        font-weight: bold;
    }
    
    #main .checks .checks_flexs li img{
        border: 1px solid #ccc;
        width: 100%;
        height: auto;
        max-width: 600px;
    }
    @media screen and (max-width: 767px){
    #main .checks .checks_flexs li{
        width: 100%;
        margin: 0 0 30px;
    }
    }
    
    
    section.block-main {
        margin: auto;
        max-width: 1200px;
        padding: 10px;
    }
    section.block-main h2.lv_h1 {
        text-align: center;
        margin: 40px 0 50px;
        font-size: 2em;
        font-weight: bold;
        font-feature-settings: "palt" 1;
    }
    section.block-main-txt {
        line-height: 1.2;
        margin: 10px 0 30px;
    }
    article.contents-block--sub .block-main .block-main-img {
        width: 100%;
        height: auto;
        max-width: 1200px;
    }
    @media screen and (max-width: 767px){
     .reform-nav{
            display: flex;
            flex-wrap: wrap;
        }
    .reform-nav li{
        overflow: hidden;
        position: relative;
        width: 100%;
        margin: 0 0 30px 0;
        border-radius: 5px;
        background: #000;
    }
    .reform-nav li a img{
        transition: all 0.3s ease 0s;
        display: block;
        width: 100%;
        height: auto;
        opacity: 0.8;
    }
    .reform-nav li a img::after{
        content:"";
    }
    .reform-nav li a img:hover {
        transform: scale(1.05, 1.05);
        opacity: .8;
    }
    .reform-nav li a span{
        position: absolute;
        left: 5%;
        font-size: 6vw;
        color: #fff;
        text-shadow: 1px 1px 5px rgb(0 0 0);
        font-weight: bold;
        top: 50%;
        transform: translateY(-50%);
    }
    .reform-nav li a .arrow{
        position: absolute;
        top: 50%;
        right: 0;
        transform: translate(0%,-50%);
        }
    .reform-nav li a .arrow svg{
        width: 10vw;
    }
    }
    
    @media screen and (min-width: 768px){
    .reform-nav{
            display: flex;
            flex-wrap: wrap;
        justify-content: center;
        }
    .reform-nav li{
        overflow: hidden;
        position: relative;
        width: calc(100% / 3 - 10px);
        margin: 0 15px 30px 0;
        border-radius: 5px;
        background: #000;
    }
    .reform-nav li:nth-child(3n){
        margin: 0 0 30px 0;
    }
    .reform-nav li a img{
        transition: all 0.3s ease 0s;
        display: block;
        width: 100%;
        height: auto;
        opacity: 0.8;
    }
    .reform-nav li a img::after{
        content:"";
    }
    .reform-nav li a img:hover {
        transform: scale(1.05, 1.05);
        opacity: .8;
    }
    .reform-nav li a span{
        position: absolute;
        left: 5%;
        font-size: 1.5em;
        color: #fff;
        text-shadow: 1px 1px 5px rgb(0 0 0);
        font-weight: bold;
        top: 50%;
        transform: translateY(-50%);
    }
    .reform-nav li a .arrow{
        position: absolute;
        top: 50%;
        right: 0;
        transform: translate(-50%,-50%);
    }
    }
    #main .flatbtn.reform_sub-btn {
        max-width: 300px;
        margin: 20px auto 40px;
        padding: 1.2rem 1.8rem;
        font-feature-settings: "palt" 1;
        box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    }
    #main .fs-medium {
        font-size: 1.0em;
        padding: 0.8rem 0.2rem;
    }
    #main .arrow-r,#main .arrow-d {
        position: relative;
    }
    #main .default-btn,#main .orange-btn,#main .red-btn,#main .blue-btn,#main .mustard-btn {
        color: #fff;
    }
    #main .default-btn {
        background: #979797;
    }
    #main .orange-btn {
        background: #EA6D0D;
    }
    .flatbtn {
        box-sizing: border-box;
        text-align: center;
        border-radius: 40px;
        color: #333;
        display: flex;
        opacity: 1.0;
        width: auto;
        height: 100%;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        text-decoration: none;
    }
    #main .arrow-r::after {
        content: "";
        position: absolute;
        right: 18px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        width: 8px;
        height: 8px;
        -webkit-transform: rotate( 45deg);
        transform: rotate( 45deg);
        top: 0;
        bottom: 0;
        margin: auto;
    }
    @media screen and (min-width: 768px){
        .flatbtn.pc-only{
            display: flex;
        }
        .flatbtn.sp-only{
            display: none;
        }
    }
    @media screen and (max-width: 767px){
        .flatbtn.pc-only{
            display: none;
        }
        .flatbtn.sp-only{
            display: flex;
        }
    }
    #main .price_img img{
        width: 100%;
            max-width:1200px;
    }
    #main .block-main-img.jukyuban{
        width: 100%;
        height: auto;
    }
    #main .price_list{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        border-bottom: 3px solid #3fb037;
        margin: 0 0 20px;
    }
    #main .list_block{
        width: calc(50% - 30px);
        margin: 0 0 20px;
    }
    #main .list_block:first-child{
    border-right: 3px solid #3fb037;
        padding-right: 30px;
    }
    #main .list_block:first-child.nocols{
        width: 100%;
        border: none;
        padding: 0;
    }
    #main .list_block img{
        width: 100%;
        height: auto;
    }
    #main .list_block ul{
    
    }
    #main .list_block ul li{
    
    }
    #main .list_block .list_block_title{
        font-size: 1.5em;
        font-weight: bold;
    }
    #main .list_block .list_block_title.mt40{
		margin-top: 40px
    }
    
    
    #main .list_block_table{
        width: 100%;
    }
    #main .list_block_table tr{
        border-bottom: 1px dotted #000;
    }
    #main .list_block_table tr.t_center{
        text-align: center;
    }
    #main .list_block_table td{
        padding: 10px 0;
        height: 40px;
    }
    #main .list_block_table.grid_m tr{
    border: none;
    }
    #main .list_block_table.grid_m td{
    border: 1px solid #000;
        padding: 10px;
    }
    #main .list_block_table td:nth-child(2n){
    width: 40%;
    }
    #main .list_block_table td p{
        
    }
    #main .list_block_table td p span{
        
    }
    #main .list_block_table td p.price{
        font-size: 2em;
        display: flex;
        align-items: baseline;
        justify-content: flex-start;
        position: relative
    }
    #main .list_block_table td p.price span{
        width: 40%;
        text-align: right;
        font-weight: bold;
    }
    #main .list_block_table td p.price span.font_small{
        font-size: 0.5em;
        margin: 0 10px;
        text-align: left;
        /* display: inline; */
        width: auto;
    }
    #main .list_block_table td p.price span.flat{
        position: absolute;
        top: 58%;
        left: -20%;
        font-size: 0.5em;
        transform: translate(-50%, -50%);
    }
    #main .list_block_table.grid_m td p.price{
        justify-content: flex-end;
    }
    #main .list_block_table.grid_m td p.price span{
        width: auto;
    }
    #main .list_block_table.grid_m td:nth-child(2n){
    width: auto;
    }
    @media screen and (max-width: 767px){
        #main .price_list{
        border-bottom: none;
    }
        #main .list_block {
        width: 100%;
        padding: 0 0 20px;
        border-bottom: 3px solid #3fb037;
    }
        #main .list_block:first-child.nocols{
        width: 100%;
        border-bottom: 3px solid #3fb037;
            padding: 0 0 20px;
    }
      #main .list_block:first-child {
        border-right: none;
        padding-right: 0;
    }  
        #main .list_block_table td:nth-child(2n){
    width: 66%;
    }
        #main .list_block_table td p.price span {
        width: auto; 
    }
        #main .list_block_table td p.price span.flat {
        position: absolute;
        top: 12px;
        left: 26px;
        font-size: 0.5em;
        transform: translate(-50%, -50%);
    }
        #main .list_block_table.grid_m td:nth-child(1){
    width: 28%;
    }
        #main .list_block_table.grid_m td:nth-child(2){
    width: 22%;
    }
        #main .list_block_table.grid_m td:nth-child(3){
    width: 50%;
    }
    }
    
    #main .copy{
        margin: auto;
        max-width: 700px;
    }
    #main .copy p{
        margin: 10px 0;
        font-size: 1.25em;
    }
    @media screen and (max-width: 767px){
        #main .copy p{
        font-size: 1em;
    }
    }
    
    #main .catch-03 {
        margin: 30px 0;
    }
    #main .arrow_text {
        font-weight: bold;
        text-align: center;
        font-size: 3.0rem;
    }
    #main .checks .arrow {
        margin: 10px auto 15px;
        width: 0;
        height: 0;
        border-left: 50px solid transparent;
        border-right: 50px solid transparent;
        border-top: 50px solid black;
    }
    #main .img_container > img {
        width: 100%;
        height: auto;
    }
    #main .img_container.campaign img {
        width: 100%;
        height: auto;
    border: 1px solid #333;
        box-sizing: border-box;
    }
    
    @media screen and (max-width:767px) {
        #main .arrow_text {
            font-size: 2.0rem;
        }
        #main .checks .arrow {
            border-left: 25px solid transparent;
            border-right: 25px solid transparent;
            border-top: 25px solid black;
        }
    }
/*241105*/
  
#main .list_block_title_second {
	font-size: 1em;
	font-weight: bold;
}

#main .list_block_inner {
	border-top: 3px solid #3fb037;
    margin: 20px 0;
	padding-top: 20px;
	
}