@charset "UTF-8";
/* controller */
.controller .lb_area .pd-contents h1{
    font-size: 31px;
    color: #222;
    margin: 1.5em auto;
    padding: 0;
}
.controller .lb_area .pd-contents.cont_main p{
    max-width: 730px;
    margin: 0 auto 4em;
} 
.controller .lb_area .pd-contents h2 {
    color: #004098;
    font-weight: 600;
    font-size: 37px;
    margin-bottom: 0.2em;
    position: relative;
}
.pd-contents h2.new::before {
    content: "NEW";
    font-size: 10px;
    text-align: center;
    padding: 0;
    color: #c00;
    border: 1px solid #c00;
    border-radius: 5%;
    padding: 10px 0 0 1px;
    width: 40px;
    height: 38px;
    position: absolute;
    left: -50px;
    bottom: 13px;
    z-index: 2;
    opacity: 1;
}
.controller .lb_area .pd-contents small{
    display: block;
    margin-bottom: 0.8em;
}
.controller .lb_area .pd-contents p.large{
    font-size: 28px;
}
.controller #cont_products .box-flex{
    align-items: flex-start;
    cursor: pointer;
    flex-wrap: wrap;
    position: relative;
}
.controller #cont_products .box-flex:hover{
    opacity: 0.8;
}
.controller #cont_products .box-flex img{
    width: 400px;
}
.controller #cont_products .box-flex.soft_w {
    margin-bottom: 5em;
}
.controller #cont_products .box-flex.soft_w img{
    margin-top: 1.5em;
}
.controller #cont_products .box-flex p{
    max-width: 565px;
}


@media screen and (max-width: 768px) {
    .controller #cont_products .box-flex.soft_w img{
        margin-top: 0;
    }
}

/* vt */

.controller .lb_area #cont_main.pd-contents h1 {
    color: #004098;
    font-size: 42px;
    margin: 0;
    padding-top: 1em;
    position: relative;
}
.controller .lb_area #cont_main.pd-contents h1.new::before {
    content: "NEW";
    font-size: 10px;
    text-align: center;
    padding: 0;
    color: #c00;
    border: 1px solid #c00;
    border-radius: 5%;
    padding: 10px 0 0 1px;
    width: 40px;
    height: 38px;
    position: absolute;
    left: -50px;
    z-index: 2;
    opacity: 1;
}

.controller #cont_main .box-flex{
    align-items: flex-start;
    position: relative;
}
.controller #cont_main .box-flex.main_upper{
    height: 259px;
}
.controller #cont_main .box-flex.main_upper img.abs_img{
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
}
.controller .lb_area #cont_main.pd-contents small,  .lb02 small {
    display: block;
    margin-bottom: 2.4em;
}
.controller #cont_main .box-flex img{
    width: 400px;
}
.controller #cont_main .box-flex.main_under{
    margin-top: -1.5em;
    padding-bottom: 3em;
}
.controller #cont_main .box-flex.main_under p{
    max-width: 527px;
}
.controller #cont_main .box-flex.main_under img{
    width: 462px;
}
.controller div.bk_area td, .controller div.bk_area th {
    min-width: 285px; position: relative;
}
.controller div.bk_area th.new::before{
    content: "NEW";
    font-size: 0.6em;
    text-align: center;
    padding: 5px 0 0 0px;
    color: #c00;
    border: 1px solid #c00;
    border-radius: 5%;
    /* background: #c00; */
    width: 30px;
    height: 27px;
    position: absolute;
    top: 0;
    left: 1px;
    z-index: 2;
    opacity: 1;
}
.controller div.bk_area ul.box-flex.feature  {
    align-items: flex-start;
}
.controller .box-flex.feature img {
    width: 238px;
}
.controller div.bk_area .pd-contents .box-flex.feature h3 {
    margin: 0 0 0.5em;
}
.controller div.bk_area .pd-contents .box-flex.feature p {
    max-width: 670px;
}
.controller div.bk_area ul.box-flex.feature li {
    width: auto;
}

@media screen and (max-width: 768px) {
    .controller #cont_main .box-flex.main_upper, 
    .controller #cont_main .box-flex.main_under {
        height: auto;
        flex-wrap: wrap;
    }
    .controller #cont_main .box-flex.main_under{
        flex-direction: column-reverse;
    }
    .controller #cont_main .box-flex.main_under p{
        margin-top: 1em;
    }
    .controller #cont_main .box-flex.main_upper img.abs_img{
        position: relative;
    }
    .controller #cont_main .box-flex img, 
    .controller #cont_main .box-flex.main_under img, 
    .controller .box-flex.feature img {
        width: 100%;
    }
    .controller div.bk_area td, .controller div.bk_area th {
        min-width: auto;
    }
}

/* mimo */
.controller.mimo #cont_main.mimo_main .box-flex.main_under p {
    max-width: 640px;
}
.controller.mimo #cont_main.mimo_main .box-flex.main_under {
    margin-top: 0;
}
.controller.mimo #cont_main.mimo_main .box-flex.main_upper img{
    width: 460px;
    margin-top: -5em;
}
.controller.mimo #cont_main.mimo_main .box-flex.main_under img{
    width: 400px;
}
.controller.mimo div.bk_area table td img{
    height: 86px;
    width: auto;
    margin: 0.5em auto;
}
.controller.mimo .box-flex.feature img {
    width: 300px;
}

@media screen and (max-width: 768px) {
    .controller.mimo #cont_main.mimo_main .box-flex.main_upper img, 
    .controller.mimo #cont_main.mimo_main .box-flex.main_under img {
        width: 100%;
        margin-top: 0.2em;
    }

    .controller.mimo .box-flex.feature img {
        width: 90%;
        display: block;
        margin: 0 auto;
    }
    .controller.mimo div.bk_area table td img {
        width: 100%;
        height: auto;
        padding: 0 5%;
    }
    .controller.mimo #cont_main .box-flex.main_under {
        flex-direction: inherit;
    }
}

/* amp */
.controller.amp .lb_area #cont_main.pd-contents.amp_main h1 {
    padding: 1em 0 0.7em;
}
.controller.amp .lb_area #cont_main.pd-contents.amp_main p{
    margin: 0 0 1.5em;
}
.controller.amp .lb_area #cont_main.pd-contents.amp_main img{
    max-width: 825px;
    margin: 0 0 1.5em;
}
.controller.amp .main_upper small span{
    margin: 0 70px 0.5em 0;
}
.controller.amp .main_upper small span.mr59{
    margin-right: 59px;
}
.controller.amp #cont_main.pd-contents.amp_main .box-flex.main_upper img {
    width: 466px;
    margin-bottom: 0;
}
.controller.amp #cont_main .box-flex.main_upper {
    height: auto;
    margin-top: 4em;
}
.controller.amp .lb_area #cont_main .box-flex.main_upper p {
    margin: 0 0 1.5em;
}
.controller.amp .lb_area #cont_main.pd-contents.amp_main p {
    margin: 0;
    padding-bottom: 4em;
}
.controller.amp .lb_area #cont_main.pd-contents.amp_main p.large {
    margin: 0 0 1.5em;
    padding-bottom: 0;
}

.controller.amp div.bk_area ul.box-flex, 
.controller.amp div.lb_area div.box-flex  {
    /*margin-bottom: 4em;*/
    align-items: flex-start;
}
.controller.amp div.bk_area .pd-contents h2 {
    margin: 0 0 1.25em;
}
.controller.amp div.bk_area td, .controller.amp div.bk_area th {
    min-width: 185px;
}
.controller.amp .pd-contents.amp_main .box-flex.main_upper.lb02 img.pd_amp {
    width: 387px;
    margin-bottom: 0;
}
.controller.amp .lb_area .pd-contents.amp_main .lb02 p {
    max-width: 650px;
    margin-bottom: 0.8em;
}
.pd-contents.amp_main .lb02{
    padding: 3em 0 2em;
}
.lb02 p.large{
    margin-bottom: 1em;
}
.lb02 p.caps{
    font-size: 14px;
}
.lb02 div.pd_amp{
    text-align: right;
    position: relative;
}
.lb02 p.caps.end{
    position: absolute;
    right: 0;
    white-space: nowrap;
}
.controller.amp div.bk_area .vsa-d td, .controller.amp div.bk_area .vsa-d th {
    min-width: 114px;
}

@media screen and (max-width: 768px) {
    .controller .lb_area #cont_main.pd-contents h1 {
        font-size: 32px;
    }
    .controller .lb_area .pd-contents h2 {
        font-size: 28px;
    }
    .controller .lb_area .pd-contents p.large {
        font-size: 24px;
    }
    .controller #cont_products .box-flex img {
        width: 100%;
    }
    .controller.amp .main_upper small span.mr59{
        margin-right: 0;
    }
    .controller.amp #cont_main.pd-contents.amp_main .box-flex.main_upper img, 
    .controller.amp .pd-contents.amp_main .box-flex.main_upper.lb02 img.pd_amp {
        width: 100%;
    }
    .lb02 p.caps.end{
        position: relative;
        white-space: inherit;
    }
    .controller.amp .kogata small span{
        /*display: block; */
    }
    .controller.amp .main_upper.kogata small span.mr60sp{
        margin-right: 60px;
    }
    .controller.amp div.bk_area td, .controller.amp div.bk_area th {
        min-width: auto;
    }
    .controller.amp div.bk_area .vsa-d td, .controller.amp div.bk_area .vsa-d th {
        min-width: auto;
    }
    .controller.amp div.lb_area div.box-flex {
        flex-wrap: wrap;
    }
}

