/**
 * https://itech-up.jp/
 *Ryutaro
 */

 body{
    font-family:"UD デジタル 教科書体 NK-R", "BIZ UDゴシック Regular", "Hiragino Kaku Gothic ProN", "ascii";
    margin: 0;
 }
 h1, h2, h3, h4{
    font-family:"UD デジタル 教科書体 NK-R", "BIZ UDゴシック Regular", "Hiragino Kaku Gothic ProN", "ascii";
    font-weight: 500;
 }
 h2{
    line-height: 46px;
 }
 h3{
    margin: 10px;
 }
 img {
    width: auto;
}
 .ip-header {
 padding: 20px;
}
 .ip_mv{
    width: 100%;
    background-image: url(images/mv-bg.jpg);
    background-position: right;
    background-repeat: no-repeat;
    background-size: contain;
    height: 650px;
 }
 .ip_mv-block01{
    max-width: 1000px;
    height: 650px;
    margin: 0 auto;
    padding-top: 60px;
 }
 .ip_mv-box01{
    width: 470px;
    height: 470px;
    border: 12px #92D050 solid;
    text-align: center;
    padding: 20px;
    background: #fff;
 }
  /**
point fonts
 */
 .fots_14{
    font-size: 14px;
 }
 .fots_20{
    font-size: 20px;
 }
 .fots_23{
    font-size: 23px;
 }
 .fots_24{
    font-size: 28px;
    font-weight: bold;
 }
 .fots_26{
    font-size: 26px;
 }
 .fots_28{
    font-size: 28px;
 }
 .fots_29{
    font-size: 29px;
 }
 .fots_30{
    font-size: 30px;
 }
 .fots_34{
    font-size: 34px;
 }
 .fots_36{
    font-size: 36px;
 }
.fots_38{
    font-size: 38px;
 }
 .fots_40{
    font-size: 40px;
 }
 .fots_43{
    font-size: 43px;
 }
 .fots_48{
    font-size: 48px;
 }
 .fots_54{
    font-size: 54px;
 }
 .fots_60{
    font-size: 54px;
 }
 
 /**
point color
 */
 .col_bl{
    color: #000;
 }
.col_g{
    color:#92D050;
 }
.col_o{
    color:#FFA000;
 }
.col_re{
    color: #F51919;
 }
.col_b{
    color: #2297D4;
 }
.col_ol{
    color: #EF5C2E;
 }
  /**
point color
 */
 .ip_sect01{
    margin: 80px auto;

 }
 .ip_sect01-block{
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
    border-bottom: 1px #ccc solid;
    padding-bottom:50px;
 }
 .ip_sect01-block h2{
    margin: 10px;
 }
 .ip_text-cet{
    text-align: center;
 }
 .ip_pctext-cet{
    text-align: center;
 }
 .ip_sect02-block{
    display: flex;
    margin-top: 60px;
 }
 .ip_sect02-box01{
    width: 40%;;
 }
 .ip_sect02-box01 img{
    width: 100%;
 }
 .ip_sect02-box02{
    padding: 20px;
    margin-left: 40px;
 }
 .ip_sect02-box02 p{
    margin-bottom: 50px;
 }
.bod_us{
    border-top: 1px #ccc solid;
    border-bottom: 1px #ccc solid ;
    padding: 20px 0;
    margin-bottom: 35px;
}
 

.ip_sect03{
    margin: 0 auto;
    text-align: center;
}
.ip_sect03_movie {
    position: relative;
    width: 90%;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin: 0 auto;
}
.ip_sect03-block div{
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ip_sect03-block05{
    margin: 80px auto;
}
.ip_sect03-block05 a:hover{
    opacity: 0.75;
}
.ip_sect03-block05 img{
    max-width: 611px;

}
.ip_sect03-block05 p{
    font-size: 16px;
    line-height: 30px;
    color: #191919;
}

.ip_sect05{
    margin: 80px auto;
}
.ip_sect05 p{
    margin-bottom: 0;
}
.ip_sect05 h2{
    margin: 10px;
}
.ip_sect06{
    width: 100%;
}
.ip_sect06-block{
    max-width: 1000px;
    margin: 0 auto;
}
.ip_sect06-box{
    background: #F6F6F6;
    padding:54px 22px;
    display: flex;
}
.ip_sect06-box_img{
    max-width: 42%;
}
.ip_sect06-box_img img{
    width: 100%;
}
.ip_sect06-box_text{
    width: auto;
    margin-left: 30px;
}
.p_lih28{
    line-height: 28px;
}
.p_lih36{
    line-height: 36px;
}
.bg_w{
    background: #fff;
}

.ip_sect07{
    background:#F4FFE9 ;
    padding: 80px 10px;
}
.ip_sect07-block{
    max-width: 1000px;
    margin: 0 auto;
}
.ip_sect07-box{
    display: flex;
    align-items: center;
}
.ip_sect07-box div{
    flex: 1;
}
.ip_sect07-box_text{
    padding: 10px 30px;
}
.ip_sect07-box_text ul{
    list-style: none;
    padding-left: 20px;
}
.ip_sect07-box_text ul li{
    font-size: 18px;
    line-height: 42px;
    font-feature-settings: "palt";
}
.ip_sect07-box_text ul li:before {
    content: '';/*何も入れない*/
    display: inline-block;
    width: 20px;/*画像の幅*/
    height: 20px;/*画像の高さ*/
    background-image: url(images/Icon-worries.png);
    background-size: contain;
    margin-right: 6px;
}
.ip_sect07-box_img img{
    width: 100%;
}
.ip_sect08-block{
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
}
.ip_sect08{
    padding: 40px 10px;
}
.bg_g{
    background: #F4FFE9;
    width: fit-content;
    margin: 0 auto;
    padding: 6px 30px;
}
.ip_sect09-block{
    border: 1px #92D050 solid;
    border-radius: 10px;
    max-width: 1000px;
    margin: 0 auto;
    padding: 60px 10px;
    text-align: center;
}
.ip_sect09-block img{
    width: 70%;
}
.ip_sect10{
    background:#F4FFE9 ;
    padding: 40px 10px;
    margin: 60px 0 80px;
}
.bg_g-w{
    max-width: 320px;
    padding: 10px;
    border: 1px #92D050 solid;
    background: #fff;
    margin: 0 auto;
    margin-bottom: 50px;
}
.ip_sect10-block{
    max-width: 1000px;
    margin: 0 auto;
}
.ip_sect10-box01{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, auto));
    gap: 20px;
    margin-bottom: 60px;
}

.ip_sect10-box01_text{
    border: 1px #92D050 solid;
    background: #fff;
    width: 332px;
    height: 296px;

}
.ip_sect10-box01_text h2{
    background: #92D050;
    color: #fff;
    text-align: center;
    margin: 0 0 30px;
    padding: 10px;
}
.ip_sect10-box01_text ul{
    list-style: none;
}
.ip_sect10-box01_text ul li{
    font-size: 18px;
    line-height: 30px;
}
.ip_sect10-box02{
    text-align: center;
}
.ip_sect10-box02 img{
    width: 60%;
}
.ip_sect11-block{
    max-width: 1000px;
    margin: 0 auto;
}
.ip_sect11-box01{
    margin: 0 auto;
    text-align: center;
    padding: 60px 10px 80px;
}
.ip_sect11-box02{
    display: flex;
    margin-bottom: 40px;
}
.ip_sect11-box_img{
    width: 40%;

}
.ip_sect11-box_img img{
    width: 100%;
}
.ip_sect11-box_text{
    width: 80%;
    padding: 6px 30px;
}
.ip_sect11-box_text img{
    max-width: 192px;
}
.ip_sect11-box_text p{
    line-height: 30px;
    width: 80%;
}
.ip_sect11-box03{
    text-align: center;
}
.ip_sect11-box03 img{
    width: 80%;
}
.ip_sect11-box04{
    text-align: center;
    margin: 30px 0 60px;
}
.ip_sect11-box04 h2{
    max-width: 400px;
    margin: 0 auto;
    margin-bottom: 60px;
}
.ip_sect11-box04 h3{
    line-height: 50px;
}
.ip_sect12{
    width: 100%;
    background-image: url(images/last-contact.jpg);
    background-position: right;
    background-repeat: no-repeat;
    background-size: cover;
    height: 640px;
}
.ip_sect12-block{
    max-width: 1000px;
    height: 640px;
    margin: 0 auto;
    display: flex;
    justify-content:center;
    align-items: center;
}
.ip_contact{
    width: 450px;
    height: 450px;
    border: 12px #92D050 solid;
    text-align: center;
    padding: 20px;
    background: #fff;
    transition: 1.0s ;
}
.ip_contact:hover{
    border: 12px #c6d050 solid;
    background: #dffbc2;
}
.ip_contact a{
    text-decoration: none;
    color: #000;
    transition: 1.0s ;
}
.ip_contact a:hover{
    opacity: 0.8;
    color: #f80b0b;
}
.ip_sect12 .ip_contact img{
    width: 94%;
    margin-top: 20px;
}
.yokobo::before {
        content: '';/*何も入れない*/
        display: inline-block;
        width: 30px;/*画像の幅*/
        height: 40px;/*画像の高さ*/
        background-image: url(images/line-13.png);
        background-size: contain;
        vertical-align: sub;
        margin-right: 14px;
}
.yokobo::after {
    content: '';/*何も入れない*/
    display: inline-block;
    width: 30px;/*画像の幅*/
    height: 40px;/*画像の高さ*/
    background-image: url(images/line-14.png);
    background-size: contain;
    vertical-align: sub;
    margin-left: 14px;
}
.ip_sect13-block{
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
}

.ip_sect13-box02{
    margin: 70px 10px 80px;
}
.ip_sect13-box02 a{
    width: 414px;
    height: 108px;
    display:block;
    margin: 0 auto;
    background: #ebffe6;

}
.ip_sect13-box02 a img:hover{
    opacity:0.5;
	transition:0.3s;
}
.ip_company{
    background: #FCFCFC;
    padding: 60px 10px;
}
.ip_company-block{
    max-width: 680px;
    margin: 0 auto;
}
.ip_company-block h2{
    line-height:22px ;
}
.ip_company-block dl{
    display: flex;
    border-bottom: 1px #D5D5D5 solid;
    padding: 10px 20px 18px;
    line-height: 30px;
}
.ip_company-block dt{
    width: 30%;
}
.line_f-link{
    display: flex;
    justify-content: center;
    align-items: center;
    background: #92D050;
    position: fixed;
    bottom: 100px;
    right: 30px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    text-align: center;
    transition:0.3s;
    padding: 10px;
    box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.3);
}
.line_f-link h3{
    margin: 17px 0 20px;
}
.line_f-link:hover{
    background:#b1e37c ;
    width: 130px;
    height: 130px;

}

.line_f-link a{
    text-decoration: none;
}
.line_f-link h3{
    color: #fff;
    margin: 0;
}
.line_f-link p{
    font-size: 13px;
    color: #000;
    margin: 10px 0 0 0;

}

footer{
    background-color: #92D050;
    color: #fff;
    text-align: center;
    padding: 10px;
}

.sp_ip_mv, .pc_hidden ,.sp_text,.ip_sptext-cet{
    display: none;
}


@media screen and (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */


}

@media screen and (max-width: 580px) {
    .ip_mv, .sp_hidden,.pc_text,.ip_pctext-cet{
        display: none;
    }
    .pc_hidden,.sp_text,.ip_sptext-cet{
        display: block;
    }
    .line_f-link{
        width: 100px;
        height: 100px;
        bottom: 10px;
        right: 10px;
    }
    .line_f-link h3 {
        margin: 17px 0 11px;
    }
    .line_f-link:hover{
        bottom: 10px;
        right: 10px;
    }
    .ip_sect01-block {
        width: 80%;
        
    }
    .ip_sptext-cet p{
    text-align: center;
    margin: 0;
    }
    .ip_sect04-block img{
        width: 80%;
        margin: 0 auto;
    }
    .ip_sect11-box01 img{
        width: 100%;

    }
    .ip_sect13-box02 a {
        width: 90%;
        height: 0px;
    }
    .ip_sect13-box02 img{
        width: 100%;
    }
    .ip_sect03-block05 img {
        width: 90%;
    }
    .sp_ip_mv{
        display: block;
        width: 100%;
    }
    .sp_ip_mv img{
        width: 100%;
    }
    .ip_sect02-block{
        flex-flow: column;
    }
    .ip_sect02-box01 {
        width: 100%;
    }
    .ip_sect02-box02 {
        padding: 10px;
        margin-left: 0;
        width: 90%;
    }
    .ip_sect03-block{
        flex-flow: column;
    }
    .ip_sect03-block04 {
        width: 90%;
    }
    .ip_sect03-block05 p{
        font-size: 15px;
        padding: 0 10px;
    }
    .ip_sect03-block04 .time-container{
        flex-wrap: wrap;
        padding: 10px 6px;
    }
    .ip_sect03-block04 .time-container p:nth-child(1){
        width: 100%;
        margin-top: 0;
    }
    .ip_sect03-block04 .time-container p:nth-child(2){
        padding-right: 16px;
    }
    .ip_sect03-block04 .time-container p:nth-child(2), .ip_sect03-block04 .time-container p:nth-child(3), .ip_sect03-block04 .time-container p:nth-child(4), .ip_sect03-block04 .time-container p:nth-child(5){
        font-size: 26px;
        margin: 0;
    }
    .ip_sect06-box{
        flex-flow: column;
        padding: 50px 20px 20px;
    }
    .ip_sect06-box_text{
        margin-left: 0;
    }
    .ip_sect06-box_img {
        max-width: 100%;
    }
    .ip_sect07{
        padding: 30px 10px;
    }
    .ip_sect07-box{
        flex-flow: column;
    }
    .ip_sect07-box_text {
        padding: 10px;
    }
    .ip_sect07-box_text ul {
        padding-left: 6px;
    }
    .ip_sect09-block{
        margin-left: 5px;
        margin-right: 6px;
    }
    .ip_sect09-block img {
        width: 100%;
    }
    .ip_sect10{
        margin: 60px 0 50px; 
    }
    .ip_sect10-box01_text{
        width: 100%;
        height: auto;
        padding-bottom: 20px;
    }
    .ip_sect10-box01{
        padding: 0;
    }
    .ip_sect10-box02 img {
        width: 90%;
    }
    .ip_sect11-block h2{
        margin: 0;
    }
    .ip_sect11-box01{
        padding: 30px 10px 50px;
    }
    .ip_sect11-box02 {
        flex-flow: column;
    }
    .ip_sect11-box_img {
        width: 100%;
        margin-bottom: 30px;
    }
    .ip_sect11-box03 img {
        width: 90%;
    }
    .ip_sect11-box04 h2{
        margin-bottom: 30px;
    }
    .ip_sect11-box04 h3 {
        line-height: 40px;
        font-size: 26px;
    }
    .ip_sect11-box04 p{
        font-size: 14px;
        line-height: 27px;
        padding: 0 10px;
    }
    .ip_sect12 .fots_54 {
        font-size: 38px;
    }
    .ip_company-block dl{
        flex-flow: column;
    }
    .ip_company-block dl dd{
        margin-left: 0;
    }
    .ip_contact{
        height: 400px;
        margin-left: 6px;
        margin-right: 6px;
    }
    .ip_sect13-box01{
        margin-left: 6px;
        margin-right: 6px; 
    }
    .ip_sect04 {
        width: 100%;
        padding: 60px 0 80px;
    }





     /**
point fonts
 */
 p{
    font-size: 15px;
 }
 .fots_14{
    font-size: 14px;
 }
 .fots_20{
    font-size: 15px;
 }
 .fots_23{
    font-size: 16px;
    line-height: 30px;
 }
 .fots_24{
    font-size: 14px;
 }
 .fots_26{
    font-size: 16px;
 }
 .fots_28{
    font-size: 18px;
 }
 .fots_29{
    font-size: 19px;
 }
 .fots_30{
    font-size: 20px;
 }
 .fots_34{
    font-size: 24px;
 }
 .fots_36{
    font-size: 26px;
 }
.fots_38{
    font-size: 24px;
 }
 .fots_40{
    font-size: 30px;
 }
 .fots_43{
    font-size: 28px;
 }
 .fots_48{
    font-size: 38px;
 }
 .fots_54{
    font-size: 44px;
 }
 .fots_60{
    font-size: 54px;
 }
}