body,html{
    margin: 0;
    padding: 0;
	background: transparent;
	background-color: transparent !important;
}

section{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;

    padding-top: 80px;
    padding-bottom: 104px;
}

.section_bg_green{
    background: #F5F8EC;
}

.fv_sectionbox {
    padding-bottom: 33px;
}

@media screen and (max-width:880px) {
    section{
        padding-top: 48px;
        padding-bottom: 64px;
    }
    .fv_sectionbox{
        padding-bottom: 44px;
    }
}

h2,h3,h4,
p,
span{
    font-family: 'Noto Sans JP', sans-serif;    
    font-style: normal;
    margin: 0;
}

img{
    display: block;
    width: 100%;
    height: auto;
}

.whorgbtn{
    display: flex;
    height: 66px;
    padding-bottom: 3px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex: 1 0 0;

    border-radius: 33px;
    border: 1px solid #FF8000;
    background: #FFF;
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.20);

    color: #FF8000;
    text-align: center;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: 134%; /* 29.48px */
    letter-spacing: 0.66px;

    text-decoration: none;
}
.orgwhbtn{
    border-radius: 33px;
    background: #FF8000;
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.20);

    display: flex;
    height: 66px;
    padding-bottom: 3.087px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    flex: 1 0 0;
    text-decoration: none;

    color: #FFF;
    text-align: center;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: 134%; /* 29.48px */
    letter-spacing: 0.66px;
}

.whorgbtn:hover,
.orgwhbtn:hover{
    transition: all .3s;
    opacity: .5;
}

/* header navigation */
header{
    display: flex;
    justify-content: center;
}
header .sf_globalnav{
    display: flex;
    width: 95%;
    max-width: 1280px;
    justify-content: space-between;
    position: fixed;
    height: 74px;
    align-items: center;
    z-index: 999;
}
header .sf_globalnav .sf_global_logo{
    
}
header .sf_globalnav .sf_global_logo a{
    max-width: 178px;
    display: flex;
    justify-content: center;
    align-items: center;
}
header .sf_globalnav .sf_global_logo a img{
    
}
header .sf_globalnav .sf_global_menus{
	display: flex;
    gap: 40px;
    align-items: center;
    max-width: 575px;
    width: 100%;
}
header .sf_globalnav .sf_global_menus ul{
    list-style: none;
    display: flex;
    flex-direction: row;
    padding: 0;
    margin: 0;
    gap: 32px;
    width: -webkit-fill-available;
    max-width: 239px;
    justify-content: flex-end;
}
header .sf_globalnav .sf_global_menus ul li{

}
header .sf_globalnav .sf_global_menus ul li a{
    text-decoration: none;
    color: #3E4042;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 14px */
    letter-spacing: 0.42px;
}
header .sf_globalnav .sf_global_menus ul li a:hover{
    transition: all .3s;
    opacity: .5;
}
header .sf_globalnav .sf_global_menus .nav_btn{
    display: flex;
    gap: 8px;
    width: 100%;
}
header .sf_globalnav .sf_global_menus .nav_btn a{
    height: 34px;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 12px */
    letter-spacing: 0.36px;
    box-shadow: none;
	padding-bottom: unset;
}
header .sf_globalnav .sf_global_menus .nav_btn .orgwhbtn{
	max-width: 127px;
}
header .sf_globalnav .sf_global_menus .nav_btn .whorgbtn{
	max-width: 160px;
}

header .bg_nav{
    width: 100%;
    position: fixed;
    height: 74px;
    opacity: 1;
    background-color: #fff;
    z-index: 998;
}

@media screen and (max-width:880px) {
    header .sf_globalnav {
        height: 48px;
        gap: 10px;
    }
    header .bg_nav {
        height: 48px;
    }
	
	header .sf_globalnav .sf_global_menus {
		gap: 20px;
	}

    header .sf_globalnav .sf_global_logo a {
        max-width: 110px;
        min-width: 110px;
    }

    header .sf_globalnav .sf_global_menus .nav_btn {
        justify-content: end;
    }
    header .sf_globalnav .sf_global_menus ul {
        display: none;
    }
    header .sf_globalnav .sf_global_menus .nav_btn a {
        max-width: 160px;
        height: 28px;
    }
}
@media screen and (max-width:600px) {
    header .sf_globalnav .sf_global_menus .nav_btn a {
        font-size: 10px;
        line-height: 100%; /* 10px */
        letter-spacing: 0.3px;
    }
    header .sf_globalnav .sf_global_menus .nav_btn .whorgbtn{
        display: none;
    }
    header .sf_globalnav .sf_global_menus .nav_btn .orgwhbtn{
        max-width: 100px;
    }
    header .sf_globalnav .sf_global_menus {
        gap: 12px;
    }
}


.section_main {
    width: 95%;
    max-width: 1440px;
    justify-items: center;
    gap: 72px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.section_main .section_main_title h2 {
    color: #313131;
    text-align: center;
    font-feature-settings: 'palt' on;

    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 54px */
    letter-spacing: 1.08px;
}
.section_main .section_main_title h2 .sp_br{
    display: none;
}
.section_main .section_main_title_v2{
    display: flex;
}
.section_main .section_main_title_v2 div{
    display: flex;
    justify-content: center;
    max-width: 326px;
    align-items: center;
}
.section_main .section_main_title_v2 h2{
    color: #131313;
    text-align: center;
    font-feature-settings: 'palt' on;

    font-size: 44px;
    font-weight: 700;
    line-height: 140%; /* 61.6px */
    letter-spacing: 1.32px;
}

@media screen and (max-width:880px) {
    .section_main {
        width: 91.47%;
        /* gap: 32px; */
        gap: 48px;
    }
    .section_main .section_main_title h2 {
        font-size: 28px;
        line-height: 140%; /* 39.2px */
        letter-spacing: 0.84px;
    }
    .section_main .section_main_title .main_title_h2_custom{
        font-size: 24px;
        line-height: 150%; /* 36px */
        letter-spacing: 0.72px;
    }
    
    .section_main .section_main_title h2 .sp_br{
        display: block;
    }
    .section_main .section_main_title_v2 {
        flex-direction: column;
        align-items: center;
    }

    .section_main .section_main_title_v2 div {
        max-width: 216px;
    }
    .section_main .section_main_title_v2 h2 {
        font-size: 28px;
        line-height: 140%; /* 39.2px */
        letter-spacing: 0.84px;
    }
}

/* firstview */
.section_main_fv {
    width: 95%;
    max-width: 1330px;
    justify-items: center;
    gap: 20px;
    display: flex;
/*     align-items: center; */
    justify-content: center;
}
.fv_leftsection{
    display: flex;
	width: 63.404%;
    flex-direction: column;
    align-items: center;
}
.fv_leftsection h1{
    color: #131313;
    text-align: center;
    font-feature-settings: 'palt' on;

    font-size: 36px;
    font-weight: 700;
    line-height: 140%; /* 50.4px */
    letter-spacing: 1.08px;
    margin: 0;
}
.fv_leftsection .txth1fv{
    display: flex;
}
.fv_leftsection .sp_circlebox{
    display: none;
}

.fv_leftsection h1 .fv_br_sp{
    display: none;
}
.fv_leftsection h1 .fvgrboxtxt{
    color: #FFF;
    text-align: center;
    font-feature-settings: 'palt' on;

    font-size: 38px;
    font-weight: 700;
    line-height: 140%; /* 53.2px */
    letter-spacing: 1.14px;

    
    border-radius: 3px;
    background: #15A310;
    padding: 1px 14px 2px 14px;
	margin-right: 3px;
}
.fv_leftsection h1 .fvblacklgrtxt{
    color: #131313;
    text-align: center;
    font-feature-settings: 'palt' on;

    font-size: 66px;
    font-weight: 700;
    line-height: 140%; /* 92.4px */
    letter-spacing: 1.98px;
}
.fv_leftsection .fv_imgbox{
    margin-top: 33px;
    margin-bottom: 36px;
}
.fv_leftsection .fv_imgbox img{

}
.fv_leftsection p{
    color: #131313;
    text-align: center;
    font-feature-settings: 'palt' on;
    font-size: 30px;
    font-weight: 700;
    line-height: 150%; /* 45px */
    letter-spacing: 0.9px;
	max-width: 675px;

    padding: 15px 30px;
    border: 1px solid #131313;
}
.fv_leftsection p .fv_span_orange{
    color: #FF8000;
    font-feature-settings: 'palt' on;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 0.9px;
}
.fv_leftsection p .fv_span_sm{
    color: #131313;
    font-feature-settings: 'palt' on;
    font-size: 26px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 0.78px;
}
.fv_rightsection{
    display: flex;
/*     width: 30.702%; */
/*     min-height: 784px; */
/* 	width: 30.702%; */
	max-width: 420px;
}
.fv_rightsection .fv_formarea{
    display: flex;
    border-radius: 8px;
    background: rgba(147, 205, 28, 0.20);   
    padding: 24px;
	padding-bottom: 0px;
    flex-direction: column;
    gap: 16px;
	width: 100%;
}
.fv_rightsection .fv_formarea .formtitle{

}
.fv_rightsection .fv_formarea .formtitle p{
    color: #131313;
    text-align: center;
    font-feature-settings: 'palt' on;
    font-size: 24px;
    font-weight: 700;
    line-height: 130%; /* 31.2px */
    letter-spacing: 0.72px;
}
.fv_rightsection .fv_formarea .formbody{

}
.fv_rightsection .fv_formarea .formbody form{
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.fv_rightsection .fv_formarea .formbody form > div{
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.fv_rightsection .fv_formarea .formbody form > div > label{
    color: #131313;
    font-feature-settings: 'palt' on;
    font-size: 12px;
    font-weight: 400;
    line-height: 100%; /* 12px */
    letter-spacing: 0.36px;
    gap: 5px;
    display: flex;
    align-items: center;
}

.fv_rightsection .fv_formarea .formbody form > div > .required::before{
    content: "必須";
    color: #FD3F4A;
    font-feature-settings: 'palt' on;
    font-size: 10px;
    font-weight: 400;
    line-height: 100%; /* 10px */
    letter-spacing: 0.3px;
    border-radius: 2px;
    border: 1px solid #FD3F4A;
    display: flex;
    height: 14px;
    padding: 0px 3px;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
.fv_rightsection .fv_formarea .formbody form > div > .n_required::before{
    content: "任意";
    color: rgba(112, 112, 112, 1);
    font-feature-settings: 'palt' on;
    font-size: 10px;
    font-weight: 400;
    line-height: 100%; /* 10px */
    letter-spacing: 0.3px;
    border-radius: 2px;
    border: 1px solid #707070;
    display: flex;
    height: 14px;
    padding: 0px 3px;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
.fv_rightsection .fv_formarea .formbody form > div > input[type="text"],
.fv_rightsection .fv_formarea .formbody form > div > input[type="email"],
.fv_rightsection .fv_formarea .formbody form > div > input[type="tel"]{
    border-radius: 3px;
    border: 1px solid #E6E6E6;
    background: #FFF;

    display: flex;
    height: 40px;
    padding: 0px 10px;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
}
.fv_rightsection .fv_formarea .formbody form > div > select{
    border-radius: 3px;
    border: 1px solid #E6E6E6;
    background: #FFF;

    display: flex;
    height: 40px;
    padding: 0px 10px;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
    padding-top: 10px;
}
.fv_rightsection .fv_formarea .formbody form > div > textarea{
    border-radius: 3px;
    border: 1px solid #E6E6E6;
    background: #FFF;

    display: flex;
    height: 70px;
    padding: 8px 10px;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
    resize: none;
}
.fv_rightsection .fv_formarea .formbody form > .chkboxdiv{

}
.fv_rightsection .fv_formarea .formbody form > .chkboxdiv p{
    color: #131313;
    font-feature-settings: 'palt' on;
    font-size: 12px;
    font-weight: 400;
    line-height: 100%; /* 12px */
    letter-spacing: 0.36px;
}
.fv_rightsection .fv_formarea .formbody form > .chkboxdiv2{
    
}
.fv_rightsection .fv_formarea .formbody form > .chkboxdiv2 label{
    color: #131313;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 0.36px;
    align-self: center;
}
.fv_rightsection .fv_formarea .formbody form > .chkboxdiv2 input{
    color: #131313;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%; /* 12px */
    letter-spacing: 0.36px;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}
.fv_rightsection .fv_formarea .formbody form > .chkboxdiv2 a{
    color: #131313;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%; /* 12px */
    letter-spacing: 0.36px;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}


.fv_rightsection .fv_formarea .formbody form > .btndiv{
    display: flex;
    justify-content: center;
    align-items: center;
}
.fv_rightsection .fv_formarea .formbody form > .btndiv button{
    border-radius: 30px;
    background: #FF8000;
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.20);
    display: flex;
    max-width: 250px;
    width: 100%;

    height: 50px;
    justify-content: center;
    align-items: center;
    gap: 7.574px;
    border-style: none;

    color: #FFF;
    text-align: center;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 16px */
    letter-spacing: 0.48px;

    cursor: pointer;
}
.fv_rightsection .fv_formarea .formbody form > .btndiv button:hover{
    opacity: .5;
    transition: all .3s;
}

.sp_fv_buttonbox{
    display: none;
}

.fv_rightsection .fv_formarea .f_lp_formbody form div p .wpcf7-form-control-wrap textarea  {
	height: 70px;
}
.fv_rightsection .fv_formarea .f_lp_formbody form .btndiv p{
	margin-top: 0;
}

@media screen and (max-width:1380px) {
    .fv_leftsection h1 .fv_br_sp{
        display: block;
    }
    .fv_leftsection h1 {
        line-height: 183%;
    }
}
@media screen and (max-width:1180px) {
	.fv_rightsection .fv_formarea .formtitle p {
		font-size: 20px;
	}
}
@media screen and (max-width:1060px) {
    .fv_leftsection h1 .fvblacklgrtxt {
        font-size: 50px;
    }
}

@media screen and (max-width:880px) {
    .section_main_fv {
        flex-direction: column;
        width: 92%;
        gap: 32px;
        margin-top: 23px; 
		align-items: center;
    }
    .fv_leftsection {
        width: 100%;
    }
    .fv_leftsection .txth1fv{
        width: 100%;
        position: relative;
        max-width: 600px;
    }
    .fv_leftsection .txth1fv .sp_circlebox {
        display: flex;
        position: absolute;
        right: 0;
        top: 0;
        height: 100%;
    }
    .fv_leftsection .fv_imgbox {
        margin-top: 20px;
        margin-bottom: 32px;
        max-width: 600px;
    }
    .fv_rightsection{
        width: 100%;
        display: none;
    }
    .sp_fv_buttonbox{
        display: flex;
        flex-direction: column;
		width: 89.856%;
        gap: 16px;
    }
    .sp_fv_buttonbox a{
        height: 60px;
        flex: unset;
    }
    .fv_leftsection h1{
        width: 100%;
        text-align: left;

        font-size: 27px;
        line-height: 200%; /* 25.2px */
        letter-spacing: 0.54px;
    }
    .fv_leftsection h1 .fvgrboxtxt {
        font-size: 27px;
        line-height: 140%; /* 26.6px */
        letter-spacing: 0.57px;

        border-radius: 3px;
        background: #15A310;
        padding: 1px 14px 2px 14px;
        gap: 10px;
    }
    .fv_leftsection h1 .fvblacklgrtxt {
        font-size: 40px;
        line-height: 140%; /* 37.8px */
        letter-spacing: 0.81px;
    }

    .fv_leftsection p {
        padding: 8px 10px;
    }
}
@media screen and (max-width:550px) {
    .fv_leftsection .txth1fv{
        max-width: 400px;
    }
    .fv_leftsection h1{
        width: 100%;
        text-align: left;

        font-size: 18px;
        line-height: 200%; /* 25.2px */
        letter-spacing: 0.54px;
    }
    .fv_leftsection h1 .fvgrboxtxt {
        font-size: 19px;
        line-height: 140%; /* 26.6px */
        letter-spacing: 0.57px;

        border-radius: 3px;
        background: #15A310;
        padding: 1px 10px 2px 10px;
		margin-right: 3px;
    }
    .fv_leftsection h1 .fvblacklgrtxt {
		font-size: 25px;
        line-height: 140%;
        letter-spacing: 0.75px;
    }

    .fv_leftsection p {
        font-size: 15px;
        line-height: 150%; /* 22.5px */
        letter-spacing: 0.45px;

        padding: 0;
        padding-top: 8px;
        width: 100%;
        padding-bottom: 8px;
    }
    .fv_leftsection p .fv_span_orange {
        font-size: 15px;
        line-height: 150%;
        letter-spacing: 0.45px;
    }
    .fv_leftsection p .fv_span_sm {
        font-size: 14px;
        line-height: 150%;
        letter-spacing: 0.42px;
    }
}


.section_main .second_cols{
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 1200px;
    gap: 10px;
}
.section_main .second_cols .second_cols_item{
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 390px;
    align-items: center;
    gap: 24px;
}
.section_main .second_cols .second_cols_item > div{
    display: flex;
    width: 100%;
    max-width: 300px;
}
.section_main .second_cols .second_cols_item > div img{    
}
.section_main .second_cols .second_cols_item > p{
    color: #313131;
    font-feature-settings: 'palt' on;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 0.6px;

    text-align: center;
}
.section_main .second_cols .second_cols_item > p span{
    font-weight: 400;
}

@media screen and (max-width:880px) {
    .section_main .second_cols {
        flex-direction: column;
        gap: 40px;
        align-items: center;
    }
	.section_main .second_cols .second_cols_item > div {
        max-width: 58.309%;
	}
}

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

.section_subtxt{
    align-items: center;
    gap: 32px;
    display: flex;
    flex-direction: column;
    width: 100%;
}
.section_subtxt svg{
    display: block;
    width: 100%;
    height: auto;
    max-width: 450px;
}
.section_subtxt h2{
    color: #313131;
    text-align: center;
    font-feature-settings: 'palt' on;

    font-size: 44px;
    font-weight: 700;
    line-height: 80%; /* 35.2px */
    letter-spacing: 1.32px;
}
.section_subtxt h2 .green_txt{
    color: #15A310;
    font-feature-settings: 'palt' on;

    font-size: 44px;
    font-weight: 700;
    line-height: 80%;
    letter-spacing: 1.32px;
}
.section_subtxt h2 .green_txt .green_num{
    color: #15A310;
    font-feature-settings: 'palt' on;
    font-size: 80px;

    font-weight: 700;
    line-height: 80%;
    letter-spacing: 2.4px;
}

.section_subtxt h2 .pc_h2br{

}
.section_subtxt h2 .sp_h2br{
    display: none;
}

@media screen and (max-width:1000px) {
    .section_subtxt h2 .pc_h2br{
        display: none;
        line-height: 0;
        height: 0;
    }
    .section_subtxt h2 .sp_h2br{
        display: block;
    }
    .section_subtxt h2 {
        line-height: 130%;
    }
}
@media screen and (max-width:880px) {
    .section_subtxt h2{
        font-size: 24px;
        letter-spacing: 0.72px;
    }
    .section_subtxt h2 .green_txt{
        font-size: 24px;
        letter-spacing: 0.72px;
        line-height: 130%;
    }
    .section_subtxt h2 .green_txt .green_num{
        font-size: 34px;
        letter-spacing: 1.02px;
        line-height: 130%;
    }
}

.section_main .second_cols_whver{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    justify-content: space-between;
    width: 100%;
    max-width: 1200px;
    gap: 24px;
}
.section_main .second_cols_whver .second_cols_item_wh{
    display: flex;
    flex-direction: column;
    gap: 24px;
    border-radius: 8px;
    background: #FFF;
    padding: 24px 20px;
    /* max-width: 344px; */
}
.section_main .second_cols_whver .second_cols_item_wh .imgbox{
    display: flex;
    justify-content: center;
}
.section_main .second_cols_whver .second_cols_item_wh .imgbox img{
    max-width: 340px;
}
.section_main .second_cols_whver .second_cols_item_wh .txtbox{
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.section_main .second_cols_whver .second_cols_item_wh .txtbox h4{
    color: #131313;
    text-align: center;

    font-size: 20px;
    font-weight: 700;
    line-height: 150%; /* 36px */
}
.section_main .second_cols_whver .second_cols_item_wh .txtbox h4 span{
    color: #15A310;

    font-size: 22px;
    font-weight: 700;
    line-height: 150%;
}
.section_main .second_cols_whver .second_cols_item_wh .txtbox p{
    color: #131313;
    text-align: justify;

    font-size: 16px;
    font-weight: 400;
    line-height: 180%; /* 28.8px */
    letter-spacing: 0.48px;
    min-height: 116px;
    font-feature-settings: 'palt' on;
}

@media screen and (max-width:1200px) {
    .section_main .second_cols_whver .second_cols_item_wh .txtbox h4{
        font-size: 16px;
    }
    .section_main .second_cols_whver .second_cols_item_wh .txtbox h4 span{
        font-size: 17px;
    }   
}

@media screen and (max-width:880px) {
    .section_main .second_cols_whver {
        grid-template-columns: repeat(1, 1fr);
    }
    .section_main .second_cols_whver .second_cols_item_wh .txtbox h4{
        font-size: 18px;
    }
    .section_main .second_cols_whver .second_cols_item_wh .txtbox h4 span{
        font-size: 20px;
    }  
}

/* 比較して分かるセーフ君 */
.table_imgbox{
    display: flex;
    justify-content: center;
}
.table_imgbox img{
    max-width: 1200px;
}

.video_ctabox{
    display: flex;
    max-width: 1200px;
    width: 100%;
    gap: 40px;
}
.video_ctabox .video_divbox{
    display: flex;
    width: 100%;
    max-width: 600px;
    align-items: center;
}
.video_ctabox .video_divbox img{
    
}
.video_ctabox .video_divbox iframe{
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1000 / 562;
}
.video_ctabox .video_divbox:hover{
    transition: all .3s;
    opacity: .5;
    cursor: pointer;
}

.video_ctabox .txt_divbox{
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.video_ctabox .txt_divbox h2{
    color: #131313;
    font-feature-settings: 'palt' on;
    font-size: 36px;

    font-weight: 700;
    line-height: 150%; /* 54px */
    letter-spacing: 1.08px;
}
.video_ctabox .txt_divbox h2 span{
    color: #15A310;
    font-feature-settings: 'palt' on;
    font-size: 36px;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 1.08px;
}
.video_ctabox .txt_divbox ul{
    margin: 0;
    padding-left: 22px;
}
.video_ctabox .txt_divbox ul li{
    color: #131313;
    font-feature-settings: 'palt' on;

    font-size: 16px;
    font-weight: 400;
    line-height: 180%; /* 28.8px */
    letter-spacing: 0.48px;
}

@media screen and (max-width:880px) {
    .video_ctabox {
        flex-direction: column;
        gap: 32px;
    }
    .video_ctabox .video_divbox {
        align-self: center;
    }
    .video_ctabox .txt_divbox h2 {
        text-align: center;
        font-size: 26px;
        line-height: 150%; /* 39px */
        letter-spacing: 0.78px;
    }
    .video_ctabox .txt_divbox h2 span {
        font-size: 26px;
        line-height: 150%;
        letter-spacing: 0.78px;
    }
    .video_ctabox .txt_divbox ul li {
        font-size: 14px;
        line-height: 180%; /* 25.2px */
        letter-spacing: 0.42px;
    }
}

/* 便利な4つの機能 */
.fourth_features{
    display: grid;
    grid-template-columns: repeat(2,1fr);
    width: 100%;
    max-width: 1200px;
    gap: 32px;
}
.fourth_features .fourth_features_itm{
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    background: #F5F8EC;
    padding-left: 32px;
    padding-right: 32px;
    padding-bottom: 24px;
    gap: 32px;
    overflow: hidden;
}
.fourth_features .fourth_features_itm .title_itm{
    border-bottom: 1px solid #15A310;
}
.fourth_features .fourth_features_itm .title_itm h3{
    color: #15A310;
    margin: 0;
    font-feature-settings: 'palt' on;
    font-size: 30px;
    font-weight: 700;
    line-height: 130%; /* 39px */
    letter-spacing: 0.9px;
    padding-top: 32px;
    padding-bottom: 32px;
}
.fourth_features .fourth_features_itm .title_itm h3 br{
    display: none;
}
.fourth_features .fourth_features_itm .mid_cols_itm{
    display: flex;
    gap: 32px;
    z-index: 1;
}
.fourth_features .fourth_features_itm .mid_cols_itm .imgbox{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 160px;
}
.fourth_features .fourth_features_itm .mid_cols_itm .imgbox img{

}
.fourth_features .fourth_features_itm .mid_cols_itm .txtbox{
    width: 100%;
}
.fourth_features .fourth_features_itm .mid_cols_itm .txtbox p{
    color: #131313;
    /* text-align: justify; */
    font-feature-settings: 'palt' on;

    font-size: 18px;
    font-weight: 400;
    line-height: 180%; /* 32.4px */
    letter-spacing: 0.54px;
}
.fourth_features .fourth_features_itm .bg_num{
    color: #ECF3DA;
    text-align: right;

    font-family: Roboto;
    font-size: 140px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -3px;

    position: absolute;
    bottom: -32px;
    right: 10px;
}
@media screen and (max-width:1050px) {
    .fourth_features .fourth_features_itm .title_itm h3{
        font-size: 24px;
        line-height: 130%; /* 31.2px */
        letter-spacing: 0.72px;
    }
}

@media screen and (max-width:880px) {
    .fourth_features{
        grid-template-columns: repeat(1,1fr);
        gap: 32px;
    }
    .fourth_features .fourth_features_itm {
        padding-left: 24px;
        padding-right: 24px;
    }
    .fourth_features .fourth_features_itm .mid_cols_itm {
        flex-direction: column;
    }
    .fourth_features .fourth_features_itm .mid_cols_itm .imgbox {
        align-self: center;
    }
    .fourth_features .fourth_features_itm .title_itm h3{
        text-align: center;
    }
    
}
@media screen and (max-width:600px) {
    .fourth_features .fourth_features_itm .title_itm h3 br{
        display: block;
    }
}

.utilimgs{
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.utilimgs .table_imgbox_capt{

}
.utilimgs .table_imgbox_capt p{
    color: #131313;
    text-align: center;
    font-feature-settings: 'palt' on;
    font-size: 16px;
    font-weight: 400;
    line-height: 180%; /* 28.8px */
    letter-spacing: 0.48px;
}
.util_cols{
    max-width: 1248px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}
.util_cols .util_imt{
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-left: 24px;
    padding-right: 24px;
    border-right: 1px dashed rgba(0, 0, 0, 0.20);
}
.util_cols .util_imt .numspanbox{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}  
.util_cols .util_imt .numspanbox .spgr{
    color: #15A310;
    text-align: center;

    font-size: 12px;
    font-weight: 700;
    line-height: 110%; /* 13.2px */
}
.util_cols .util_imt .numspanbox .numgr{
    color: #FFF;
    text-align: center;
    font-family: Roboto;
    font-size: 22px;

    font-weight: 400;
    line-height: 110%; /* 24.2px */
    letter-spacing: -0.66px;

    display: flex;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    background: #15A310;
    justify-content: center;
    align-items: center;
}
.util_cols .util_imt p{
    color: #131313;
    text-align: justify;
    font-feature-settings: 'palt' on;

    font-size: 16px;
    font-weight: 400;
    line-height: 180%; /* 28.8px */
    letter-spacing: 0.48px;
}
.util_cols .util_imt p span{
    color: #131313;
    font-feature-settings: 'palt' on;

    font-size: 16px;
    font-weight: 700;
    line-height: 180%;
    letter-spacing: 0.48px;
}

.util_cols .util_imt:last-child{
    border-right: none;
}

@media screen and (max-width:880px) {
    .util_cols{
        grid-template-columns: repeat(1, 1fr);
        gap: 24px;
    }
    .util_cols .util_imt {
        padding-bottom: 24px;
        border-bottom: 1px dashed rgba(0, 0, 0, 0.20);
        border-right: none;
        padding-left: 0;
        padding-right: 0;
    }
    .util_cols .util_imt:last-child{
        border-bottom: none;
    }
    .utilimgs .table_imgbox_capt p {
        text-align: unset;
    }
}
@media screen and (max-width:600px) {
    .utilimgs .table_imgbox_capt p {
        font-size: 12px;
        line-height: 180%; /* 21.6px */
        letter-spacing: 0.36px;
    }
}

/* lp cta */
.safekun_lp_cta_green{
    display: flex;
    max-width: 1200px;
    border-radius: 8px;
    background: linear-gradient(110deg, #9EC23F 13.57%, #15A310 86.44%);
    padding-top: 56px;
    width: 100%;
    padding-bottom: 56px;
    justify-content: center;
}
.safekun_lp_cta_green .safekun_lp_cta_green_main{
    display: flex;
    gap: 32px;
    width: 95%;
    justify-content: center;
}
.safekun_lp_cta_green .ctaimg{
    max-width: 410px;
}
.safekun_lp_cta_green .ctatxt{

}
.safekun_lp_cta_green .ctatxt h3{
    color: #FFF;
    font-feature-settings: 'palt' on;

    font-size: 34px;
    font-weight: 700;
    line-height: 130%; /* 44.2px */
    letter-spacing: 1.02px;
}
.safekun_lp_cta_green .ctatxt h3 .sp_br_cta{
    display: none;
}

.safekun_lp_cta_green .ctatxt p{
    color: #FFF;
    font-feature-settings: 'palt' on;
    font-size: 16px;
    font-weight: 400;
    line-height: 150%; /* 24px */
    letter-spacing: 0.48px;
    margin-top: 24px;
    margin-bottom: 32px;
}
.safekun_lp_cta_green .ctatxt div{
    display: flex;
    gap: 16px;
    flex-direction: row;
}
.safekun_lp_cta_green .ctatxt div a{
    
}

@media screen and (max-width:880px) {
    .safekun_lp_cta_green .safekun_lp_cta_green_main {
        flex-direction: column;
        align-items: center;
    }
	
	.safekun_lp_cta_green .ctatxt {
		display: flex;
		flex-direction: column;
		width: 92.988%;
	}

    .safekun_lp_cta_green .ctatxt h3 {
        text-align: center;

        font-size: 20px;
        line-height: 140%; /* 28px */
        letter-spacing: 0.6px;
    }
    .safekun_lp_cta_green .ctatxt h3 .sp_br_cta{
        display: block;
    }
    .safekun_lp_cta_green .ctatxt h3 .sp_ctatxt_lgr{
        font-size: 28px;
        font-weight: 700;
        line-height: 140%;
        letter-spacing: 0.84px;
    }
    .safekun_lp_cta_green {
        padding-top: 32px;
        padding-bottom: 32px;
    }
}
@media screen and (max-width:600px) {
    .safekun_lp_cta_green .ctatxt div {
        flex-direction: column
    }
    .safekun_lp_cta_green .ctatxt div a {
        height: 60px;
        flex: unset;
    }
    .safekun_lp_cta_green .ctatxt p {
        margin-top: 16px;
        margin-bottom: 24px;
        font-size: 14px;
        line-height: 180%; /* 25.2px */
        letter-spacing: 0.42px;
    }
}


/* 導入事例のご紹介 */
.cases_top_whbox{
    padding: 32px 40px;
    border-radius: 8px;
    background: #FFF;
    display: flex;
    flex-direction: column;
    max-width: 1120px;
    gap: 40px;
}
.cases_top_whbox .leftp{
    display: flex;
    gap: 16px;
    width: 100%;
    position: relative;
    margin-top: 20px;
}
.cases_top_whbox .leftp .leftpimgbox{
    max-width: 71px;
}
.cases_top_whbox .leftp .leftpimgbox img{
    
}
.cases_top_whbox .leftp .leftptxtcapt{
    display: flex;
    /* flex-direction: column; */
    gap: 16px;
    position: absolute;
    right: 0;
    border-radius: 5px;
    background: #F3F3F3;
    padding: 12px 24px;
    top: -20px;
}
.cases_top_whbox .leftp .leftptxtcapt p{
    color: #131313;
    font-size: 14px;

    font-weight: 700;
    line-height: 130%; /* 18.2px */
    display: flex;
    gap: 5px;
}
.cases_top_whbox .leftp .leftptxtcapt p span{
    border: 1px solid #131313;
    display: flex;
    width: 58px;
    height: 19px;
    justify-content: center;
    align-items: center;
    
    color: #131313;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    line-height: 130%; /* 15.6px */
}
.cases_top_whbox .rightp{
    display: flex;
    flex-direction: column;
    gap: 32px;
    width: 100%;
}
.cases_top_whbox .leftp .righttxttop{
    display: flex;
    gap: 16px;
    align-items: end;
}
.cases_top_whbox .leftp .righttxttop .svg_imgbox{
    height: 100%;
    display: table;
}
.cases_top_whbox .leftp .righttxttop .svg_imgbox svg{
    display: block;
    width: auto;
    height: 100%;
}
.cases_top_whbox .leftp .righttxttop .svg_imgbox .svg_imgbox_pc{
    display: block;
}
.cases_top_whbox .leftp .righttxttop .svg_imgbox .svg_imgbox_sp{
    display: none;
}

.cases_top_whbox .leftp .righttxttop .righttxttop_txts{
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.cases_top_whbox .leftp .righttxttop h3{
    color: #131313;
    text-align: justify;
    font-size: 18px;
    font-weight: 700;
    line-height: 103%; /* 18.54px */
}
.cases_top_whbox .leftp .righttxttop p{
    color: #131313;
    text-align: justify;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 180%; /* 28.8px */
}
.cases_top_whbox .rightp .righttxtbot{
    padding: 24px;
    border: 1px solid #15A310;
    position: relative;
    margin-top: 16px;
}
.cases_top_whbox .rightp .righttxtbot .green_ribbon{
    position: absolute;
    left: -1px;
    padding-right: 10px;
    padding-bottom: 10px;
    color: #15A310;
    text-align: justify;
    font-size: 20px;
    font-weight: 700;
    line-height: 103%; /* 20.6px */
    top: -16px;
    background: #fff;
}
.cases_top_whbox .rightp .righttxtbot p{
    color: #131313;
    text-align: justify;
    font-size: 16px;
    font-weight: 400;
    line-height: 180%; /* 28.8px */
}
.cases_top_whbox .rightp .righttxtbot p span{
    box-shadow: inset 0px -9px 0px rgba(242, 255, 0, 1);
}

.locomibtn{
    display: flex;
    align-self: center;
}
.locomibtn a{
    text-decoration: none;   
    cursor: pointer;
    display: flex;
	align-items: center;
}
.locomibtn a span{
    color: #FF8000;
    text-align: center;
    font-size: 18px;
    line-height: 134%; /* 24.12px */
    letter-spacing: 0.54px;
}
.locomibtn a:hover{
    opacity: .5;
    transition: all .3s;
}

@media screen and (max-width:880px) {
    .cases_top_whbox {
        padding: 24px 20px;
        border-radius: 8px;
        gap: 24px;
    }
    .cases_top_whbox .leftp {
        max-width: unset;
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-areas:
            "caption caption"
            "img text";
        gap: inherit;
    }
    .leftptxtcapt {
        grid-area: caption;
    }
    
    .leftpimgbox {
        grid-area: img;
    }

    .cases_top_whbox .leftp .leftptxtcapt {
        position: relative;
        grid-area: caption;
        flex-direction: column;
        top: 0;
        padding: 12px 10px;
    }

    .cases_top_whbox .leftp .leftpimgbox {
        max-width: 40px;
    }
    .cases_top_whbox .leftp {
        column-gap: 0;
        margin-top: 0;
    }

    .cases_top_whbox .leftp .righttxttop h3 {
        font-size: 16px;
        line-height: 103%; /* 16.48px */
    }
    .cases_top_whbox .leftp .righttxttop p {
        font-size: 14px;
        line-height: 180%; /* 25.2px */
    }
    
    .cases_top_whbox .rightp .righttxtbot p {
        font-size: 14px;
        line-height: 180%; /* 25.2px */
    }
    .cases_top_whbox .rightp .righttxtbot {
        padding: 20px 16px;
    }
}
@media screen and (max-width:500px) {
    .locomibtn a span {
        font-size: 15px;
        line-height: 134%; /* 20.1px */
        letter-spacing: 0.45px;
    }

    .cases_top_whbox .leftp .leftptxtcapt p {
        font-size: 12px;
        line-height: 130%; /* 15.6px */
    }
    .cases_top_whbox .leftp .leftptxtcapt p span {
        min-width: 54px;
        max-width: 54px;

        font-size: 11px;
        line-height: 130%; /* 14.3px */
    }
}
@media screen and (max-width:400px) {
    .cases_top_whbox .leftp .righttxttop .svg_imgbox .svg_imgbox_pc{
        display: none;
    }
    .cases_top_whbox .leftp .righttxttop .svg_imgbox .svg_imgbox_sp{
        display: block;
    }
}


.cases_cols{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    max-width: 1200px;
    gap: 30px;
    margin-top: 50px;
}
.cases_cols .cases_itm{
    background: #FFF;
    padding: 64px 24px 24px 24px;
    position: relative;
}
.cases_cols .cases_itm .imgbox{
    display: flex;
    justify-content: center;
    position: absolute;
    left: 0;
    top: -50px;
    width: 100%;
}
.cases_cols .cases_itm .imgbox img{
    max-width: 100px;
}
.cases_cols .cases_itm .txtbox{
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.cases_cols .cases_itm .txtbox h3{
    color: #131313;
    text-align: justify;
    font-feature-settings: 'palt' on;
    font-size: 20px;
    font-weight: 700;
    line-height: 150%; /* 30px */
    letter-spacing: 0.6px;
}
.cases_cols .cases_itm .txtbox p{
    color: #131313;
    text-align: justify;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 16px;
    line-height: 180%; /* 28.8px */
    letter-spacing: 0.48px;
}

.cases_cols .cases_itm .txtbox > span{
    color: #131313;
    text-align: center;
    font-feature-settings: 'palt' on;
    font-size: 18px;
    font-weight: 700;
    line-height: 100%; /* 18px */
    letter-spacing: 0.54px;
}
.cases_cols .cases_itm .txtbox h3 span{
    color: #15A310;
    font-feature-settings: 'palt' on;
    font-size: 20px;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 0.6px;
}

@media screen and (max-width:880px) {
    .cases_cols{
        grid-template-columns: repeat(1,1fr);
        gap: 56px;
        margin-top: 50px;
    }
}

/* footer */
footer{
    background: #F5F8EC;
    height: 60px;
}
footer .footer_main{
    display: flex;
    margin: 0 auto;
    justify-content: center;
    max-width: 1280px;
    justify-content: space-between;
    width: 95%;
}
footer .footer_left{
    
}
footer .footer_left span{
    color: #131313;
    font-feature-settings: 'palt' on;
    font-size: 12px;
    font-weight: 400;
    line-height: 100%; /* 12px */
    letter-spacing: 0.36px;
}
footer .footer_right{
    
}
footer .footer_right a{
    text-decoration: none;
    color: #131313;
    font-feature-settings: 'palt' on;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%; /* 15.6px */
    letter-spacing: 0.36px;
}

@media screen and (max-width:880px) {
    footer {
        height: unset;
    }
    
    footer .footer_main {
        flex-direction: column-reverse;
        align-items: center;
        gap: 24px;
        padding-bottom: 24px;
    }
}

.modal-video-movie-wrap {
    width: 90%;
    margin: 0 auto;
}
.modal-video-close-btn {
    right: -4px;
}


/* nav  */
nav .mininav{
    display: none;
}
nav .mininav .hbgbtn .line{
    width: 24px;
    height: 2px;
    background: #131313;
    display: block;
    margin: 8px auto;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

#hbgbtn-1.is-active .line:nth-child(1){
    -webkit-transform: translateY(9px) rotate(45deg);
    -ms-transform: translateY(9px) rotate(45deg);
    -o-transform: translateY(9px) rotate(45deg);
    transform: translateY(9px) rotate(45deg);
}
  
#hbgbtn-1.is-active .line:nth-child(2){
    -webkit-transform: translateY(-1px) rotate(-45deg);
    -ms-transform: translateY(-1px) rotate(-45deg);
    -o-transform: translateY(-1px) rotate(-45deg);
    transform: translateY(-1px) rotate(-45deg);
}
#hbgbtn-1.is-active .line:nth-child(3) {
    opacity: 0;
    transform: translateY(-9px);
}

.slidenav{
    width: 100%;
    position: fixed;
    left: 0;
    /* top: 70px; */
    top: -10px;
    background-color: #FFF;
    /* background-color: pink; */
    /* visibility: hidden; */
    /* opacity: 1; */
    transition: 0.3s;
    transform: translateY(-100%);
    /* z-index: 10; */
    z-index: 1;
    height: 100vh;
}

.slidenav.is-active{
    display: block;
    overflow-y: auto;
    transform: translateY(0);
    transition: 0.3s;
    position: fixed;
    z-index: 5;
    top: 0px;
}


.slidenav .slide-list{
    height: calc( 100vh - 75px );
    position: relative;
    top: 75px;
    overflow: scroll;
    border-top: 1px solid rgba(19, 19, 19, 0.10);
}

.slidenav .slide-list .slidegrp{

}
.slidenav .slide-list .slidegrp ul{
    list-style: none;
    padding: 0;
    margin: 0;

    display: flex;
    flex-direction: column;
}
.slidenav .slide-list .slidegrp ul li{
    border-bottom: 1px solid rgba(19, 19, 19, 0.10);
    background: #FFF;
    padding-left: 16px;
    padding-right: 16px;
}
.slidenav .slide-list .slidegrp ul li a{
    text-decoration: none;
    display: flex;
    padding-top: 24px;
    padding-bottom: 24px;

    color: #131313;
    font-family: "Noto Sans JP";
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%; /* 21.6px */
}
.slidenav .slide-list .botbtn{
    display: flex;
    flex-direction: column;
    padding: 32px 16px;
    gap: 16px;
}
.slidenav .slide-list .botbtn .whorgbtn{
    flex: unset;
    height: 60px;
    max-width: 310px;
    align-self: center;
    width: 100%;
}
.slidenav .slide-list .botbtn .orgwhbtn{
    flex: unset;
    height: 60px;
    max-width: 310px;
    align-self: center;
    width: 100%;
}

@media screen and (max-width: 880px) {
    .slidenav .slide-list {
        height: calc(100vh - 49px);
        position: relative;
        top: 49px;
        overflow: scroll;
    }
}
@media screen and (max-width: 880px) {
    nav .mininav{
        display: flex;
    }
}