@charset "UTF-8";

body{
    margin: 0;
}

ul,li {
    padding: 0;
    list-style: none;
    margin: 0;
}

.container{
    margin: 0;
}
#main-content {
    font-family: "Noto Sans CJK JP";
    overflow: hidden;
}
#main-content img{
    width: 100%;
    vertical-align:top;
}
#contents{
    background-color: #efe8e2;
}

/* introduction emmi */
#emmi {
    padding: 80px 20px 96px;
}
#emmi .inner{
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1088px;
    width: 100%;
    margin: 0 auto;
}
#emmi .introduction {
    box-sizing: border-box;
    max-width: 552px;
    width: 100%;
    padding-right: 16px;
    box-sizing: border-box;
}
#emmi .emmi-img-box img {
    max-width: 536px;
    width: 100%;
}
#emmi .emmi-name {
    max-width: 178px;
    width: 100%;
    image-rendering: -webkit-optimize-contrast;
    margin: 0 0 48px;
}
#emmi .introduction-text {
    font-size: 1.125rem;
    color: #000;
    text-align: left;
    font-family: "Noto Sans CJK JP";
    line-height: 1.55;
}


/* point */
.point-box{
    padding: 120px 20px 200px;
}
.point-box.box-02{
    padding-top: 0;
}
.point-box .point-info{
    max-width: 1088px;
    width: 100%;
    margin: 0 auto;
    opacity: 0;
}
.point-box.active  .point-info{
    animation: fade .4s ease-in-out .5s 1 normal forwards;
}
@keyframes fade {
    0% { opacity: 0; }
    100% { opacity: 1; }
}
.point-box.box-02 .point-info{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.point-box .point-info .point-title{
    font-family: 'Work Sans', sans-serif;
    font-weight: lighter;
    font-size: 3.5rem;
    margin: 0 0 16px;
    width: 100%;
}
.point-box.box-02 .point-title{
    text-align: right;
    width: 100%;
}
.point-box .point-info .point-text{
    margin: 0 0 79px;
    line-height: 1.75;
    max-width: 722px;
}
.point-box .column-type-01{
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1088px;
    width: 100%;
    margin: 0 auto;
}
.point-box .column-type-01 .point-img:first-child{
    margin-right: 8px;
}
.point-box .column-type-01 .point-img:last-child{
    margin-left: 8px;
}
.point-box .column-type-01 .point-img img{
    max-width: 536px;
    width: 100%;
}
.point-box .point-01-area{
    position: relative;
}
.point-box .point-01-area .inner{
    position: relative;
    z-index: 1;
}
.point-box .point-01-area::after{
    background-color: #C0ACC8;
    content: "";
    position: absolute;
    z-index: 0;
    width: 95%;
    height: 100%;
    left: -20px;
    top: 72px;
}
.point-box .point-02-area{
    position: relative;
}
.point-box .point-02-area .inner{
    position: relative;
    z-index: 1;
}
.point-box .point-02-area::after{
    background-color: #eaeeac;
    content: "";
    position: absolute;
    z-index: 0;
    width: 95%;
    height: 100%;
    right: -20px;
    top: 72px;
}
.point-box .point-01-area::after{
    transform: translateX(-800px);
    transition: opacity 1s,transform 0.8s;
    opacity: 0;
}
.point-box .point-01-area.fadein::after {
    opacity: 1;
    transform: translateX(0);
}
.point-box .point-02-area::after{
    transform: translateX(800px);
    transition: opacity 1s,transform 0.8s;
    opacity: 0;
}
.point-box .point-02-area.fadein::after {
    opacity: 1;
    transform: translateX(0);
}



/* model */
.model-box{
    padding: 0 20px 200px;
}
.model-box .model-info{
    width: 100%;
    max-width: 1088px;
    margin: 0 auto;
}
.model-box .model-info .model-title{
    font-family: 'Work Sans', sans-serif;
    font-weight: bold;
    font-size: 2rem;
    margin: 0 0 75px;
    position: relative;
    display: inline-block;
    transform: translateX(-50px);
    transition: opacity 1s,transform 0.8s;
    opacity: 0;
}
.model-box .model-info .model-title.fadein {
    opacity: 1;
    transform: translateX(0);
}
.model-box .model-info .model-title::after{
    content: "";
    position: absolute;
    width: 150%;
    right: 0;
    bottom: 0;
    border: 1px solid #707070;
}
.model-box .model-info .model-text{
    margin: 0 0 79px;
    line-height: 1.75;
    max-width: 722px;
}
.model-box .column-type-01{
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 1088px;
    width: 100%;
    margin: 0 auto;
}
.model-box .column-type-01 .model-img{
    max-width: 536px;
    width: 100%;
}
.model-box .column-type-01 .model-text-box{
    max-width: 550px;
    width: 100%;
    padding-left: 26px;
    box-sizing: border-box;
}
.model-box .column-type-01 .model-text{
    margin: 0 0 67px;
    line-height: 1.75;
}
.model-box .model-01-area{
    position: relative;
}
.model-box .model-01-area .inner{
    position: relative;
    z-index: 1;
}
.model-box .model-01-area::after{
    background-color: #F6F3EE;
    content: "";
    position: absolute;
    z-index: 0;
    width: 95%;
    height: 100%;
    left: -20px;
    top: 72px;
}
.model-box .model-01-area::after{
    transform: translateX(-800px);
    transition: opacity 1s,transform 0.8s;
    opacity: 0;
}
.model-box .model-01-area.fadein::after {
    opacity: 1;
    transform: translateX(0);
}

.btn_blk_1 {
    font-family: 'Work Sans', sans-serif;
    font-size: 0.75rem;
    max-width: 136px;
    width: 100%;
    box-sizing: border-box;
    padding: 13px 10px;
    background-color: #000;
    color: #fff;
    display: inline-block;
    text-align: center;
    text-decoration: none;
}
.btn_blk_1:hover {
    opacity: 0.6;
    transition: opacity 0.3s;
}


/* products */
#products {
    padding: 30px 20px 200px;
}
#products .capture {
    margin-bottom: 30px;
}
#products .capture img.pc-only{
    max-width: 788px;
    width: 100%;
    margin: auto;
}
#products .content-title{
    text-align: center;
    font-size: 3.5rem;
    font-weight: lighter;
    margin: 0 0 58px;
}
.product-area {
    z-index: 1;
    position: relative;
}
.product-list {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 812px;
    margin: auto;
    max-width: 95%;
}
.product-unit {
    max-width: 398px;
}
.product-unit:first-child{
    margin-right: 8px;
}
.product-unit:last-child{
    margin-left: 8px;
}
.product-unit dl{
    color: #190F00;
    font-size: 20px;
    margin: 10px 0 0;
}
.product-unit dt{
    color: #495057;
    font-weight: 400;
}
.product-unit dl dd {
    margin-left: 0;
}
.product-unit dl dd p {
    margin: 0;
}
.product-unit dl dd span {
    font-family: Work Sans;
    font-size: 30px;
    font-weight: bold;
}
.cslp .lp-footer footer {
    background-color: #fed70e;
}

.cslp .lp-footer footer .lp-footer__inr small {
    color: #2B2929;
}
.pc-only {
    display: block !important;
}

.sp-only {
    display: none !important;
}
@media screen and (max-width: 1166px) {

    .line-box{
        margin-right: 60px;
    }
}
@media screen and (max-width: 1070px) {
}
@media screen and (max-width: 940px) {
}
@media (min-width: 768px){
    #head-content .hide_pc {
        display: none !important;
        image-rendering: -webkit-optimize-contrast;
    }
}
@media screen and (max-width: 767px) {
    #head-content{
        background: none;
    }
    #head-content .hide_sp{
        display: none !important;
        image-rendering: -webkit-optimize-contrast;
    }



    /* introduction emmi */
    #emmi {
        padding: 47px 15px;
    }
    #emmi .inner{
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }
    #emmi .emmi-img-box{
        margin-bottom: 40px;
    }
    #emmi .emmi-img-box img {
        max-width: 345px;
    }
    #emmi .emmi-name {
        margin: 0 auto 32px;
    }


    /* point */
    .point-box{
        padding: 60px 15px 100px;
    }
    .point-box .point-info .point-text{
        margin-bottom: 138px;
    }
    .point-box .column-type-01{
        flex-wrap: wrap;
        justify-content: center;
    }
    .point-box .column-type-01 .point-img:first-child{
        margin-right: 0;
        margin-bottom: 16px;
    }
    .point-box .column-type-01 .point-img:last-child{
        margin-left: 0;
    }
    .point-box .point-01-area::after{
        width: 78%;
        height: 114%;
        left: auto;
        right: -15px;
        top: -7%;
    }
    .point-box .point-02-area::after{
        width: 78%;
        height: 114%;
        right: auto;
        left: -15px;
        top: -7%;
    }
    .point-box .point-01-area::after{
        transform: translateX(800px);
    }
    .point-box .point-02-area::after{
        transform: translateX(-800px);
    }


    /* model */
    .model-box{
        padding: 100px 15px 100px;
    }
    .model-box .model-info .model-title {
        position: relative;
        z-index: 1;
    }
    .model-box .model-01-area::after{
        width: 78%;
        height: 138%;
        left: auto;
        right: -15px;
        top: -30%;
    }
    .model-box .model-01-area::after{
        transform: translateX(800px);
    }
    .model-box .column-type-01 {
        flex-wrap: wrap;
        justify-content: center;
    }
    .model-box .column-type-01 .model-img {
        margin-bottom: 24px;
    }
    .model-box .column-type-01 .model-text-box {
        max-width: 536px;
        padding-left: 0;
    }
    .model-box .column-type-01 .model-text {
        margin: 0 0 35px;
    }
    .box_btn{
        text-align: center;
    }


    /* products */
    #products{
        padding: 56px 15px 80px;
    }
    #products .capture img.sp-only {
        max-width: 302px;
        width: 100%;
    }
    #products .capture {
        text-align: center;
    }
    .product-list{
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;
        max-width: 100%;
    }
    .product-unit:first-child{
        margin-bottom: 16px;
        margin-right: 0;
    }
    .product-unit:last-child {
        margin-left: 0px;
    }
    #products .content-title{
        margin-bottom: 64px;
    }
    .cslp .lp-footer footer {
        background-color: #fed70e;
    }
    .cslp .lp-footer footer .lp-footer__inr small {
        color: #2B2929;
    }
    .pc-only {
        display: none !important;
    }
    .sp-only {
        display: inline-block !important;
    }
}

/*----------------------------------------
	banner
-----------------------------------------*/
.banner-box{
    text-align: center;
}
.banner-box a{
    max-width: 1366px;
    width: 100%;
    display: inline-block;
    vertical-align: top;
}
.banner-img{
    width: 100%;
}

section.section-05{
	/*margin-top: 0;*/
}

.banner_area{
	position: relative;
	max-width: 1366px;
	margin: 0 auto;
	z-index: 4;
}
.banner_inner{

}
.banner_txt{
	color: #ffffff;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.12em;
}
.banner_txt span{
	font-weight: bold;
	line-height: 1.0;
}
.banner_btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	background: #000000;
	color: #ffffff;
	font-size: 13px;
	text-decoration: none;
	transition: all 0.3s;
}
@media screen and (min-width: 788px){
	.banner_area{
		height: 130px;
		background: url(../images/img_banner-pc.png) no-repeat bottom center;
		background-size: cover;
	}

	.banner_txt{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		font-size: calc(22 / 1770 * 100vw);
		margin: auto;
	}

	.banner_btn{
		position: absolute;
		top: 50%;
		right: calc(30 / 1770 * 100vw);
		transform: translateY(-50%);
	}
	.banner_btn a{
		width: 170px;
		height: 40px;
		background: #000000;
		color: #ffffff;
		font-size: 13px;
		text-decoration: none;
		transition: all 0.3s;
	}
	.banner_btn a:hover{
		opacity: 0.7;
	}
}
@media screen and (min-width: 1000px){
	.banner_btn{
		right: calc(90 / 1770 * 100vw);
	}
	.banner_btn a{
		width: 200px;
	}
}
@media screen and (min-width: 1788px){
	.banner_txt{
		font-size: 22px;
	}
	.banner_btn{
		right: 90px;
	}
}
@media screen and (max-width: 787px){
	.banner_area{
		display: flex;
		flex-direction: column;
		justify-content: center;
		height: 165px;
		background: url(../images/img_banner-sp.png) no-repeat bottom center;
		background-size: cover;
		padding-top: calc(30 / 770 * 100vw);
		padding-right: calc(30 / 770 * 100vw);
		padding-bottom: calc(30 / 770 * 100vw);
		padding-left: calc(30 / 770 * 100vw);
	}
	.banner_txt{
		font-size: calc(22 / 770 * 100vw);
		line-height: 1.5;
	}
	.banner_btn{
		margin-top: calc(20 / 770 * 100vw);
	}
	.banner_btn a{
		width: calc(360 / 770 * 100vw);
		margin: 0 auto;
	}
}