@charset "utf-8";

@media screen and (min-width : 769px) {

    /*------------------------------------------------------------------------------------------
    *
    *
        Responsive / PC
    *
    *
    ------------------------------------------------------------------------------------------ */

    /* ------------------------------------------------------------
    *
        .main_visual
    *
    ------------------------------------------------------------ */
    @-webkit-keyframes fade {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes fade {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    .main-visual {
        position: relative;
		display: flex;
        padding-bottom: 55px;
		height: 80vh;
        overflow: hidden;
        opacity: 0;
		z-index: 3;
		align-items: center;
        -webkit-animation: fade 1.5s ease-in-out 0s forwards;
        animation: fade 1.5s ease-in-out 0s forwards;
        -webkit-animation-delay: 0.1s;
        animation-delay: 0.1s;
    }

    .main-visual .section_inner {
        width: 980px;
		margin: auto;
    }

    .main-visual .section_inner .pic img {
		vertical-align: middle;
	}

    .main-visual .main-visual__scroll {
        position: absolute;
        top: 80%;
        left: 0;
        font-size: 18px;
        color: #646464 !important;
        text-decoration: none;
        transform: translate(-50%, 0);
        opacity: 1;
        transition: opacity 1s ease;
        writing-mode: vertical-lr;
    }

    .main-visual .main-visual__scroll span {
        position: absolute;
        top: 55px;
        left: 50%;
        width: 1px;
        height: 50px;
        background-color: #646464;
        animation: scroll 1.5s infinite;
    }

    @keyframes scroll {
        0% {
            transform: translate(0, 0);
            opacity: 0;
        }

        50% {
            opacity: 1;
        }

        100% {
            transform: translate(0, 20px);
            opacity: 0;
        }
    }

    .main-visual.is-show .main-visual__scroll {
        opacity: 0;
    }

    .main-visual .visual_cap {
        position: absolute;
        right: 10px;
        bottom: 6px;
        color: #b4b4b4;
        font-size: 11px;
        font-family: var(--font-light);
    }
	
	.slick-initialized .slick-slide {
		margin: 0 auto;
	}

    .slick-dots {
        position: relative;
        bottom: -20px !important;
        left: 41.6%;
    }

    .slick-dots li {
        display: inline-block;
        margin: 0;
        padding: 0 5px;
        width: 35px;
    }

    .slick-dots li button {
        -webkit-appearance: none;
        -moz-appearance: none;
        background: #b5b5b6;
        border: 0;
        box-sizing: border-box;
        cursor: pointer;
        height: 2px;
        outline: none;
        overflow: hidden;
        padding: 2px;
        position: relative;
        text-indent: -999px;
        transition: background-color .25s;
        width: 35px;
    }

    .slick-dots li button:before {
        width: 35px;
        border-radius: 0;
    }

    .slick-dots li:hover button:before,
    .slick-dots li.slick-active button:before {
        background: #000;
    }



    /* ------------------------------------------------------------------------------------------
    *
    .section
    *
    ------------------------------------------------------------------------------------------ */


    img {
        max-width: 100%;
        height: auto;
    }


    /* ------------------------------------------------------------------------------------------
    *
    .section
    *
    ------------------------------------------------------------------------------------------ */

    .section {
        margin: 0;
        height: 800px;
        background-color: #fff;
    }

    .section .pic_full {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: center/cover no-repeat;
    }

    .scroll_anim .fade {
        opacity: 0;
    }

    .section .copy_wrap {
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        margin: 0 auto;
        width: 1020px;
        color: #595757;
        transform: translate(0, -50%);
        -webkit-transform: translate(0, -50%);
        -webkit-transform: translate(0, -50%);
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        box-sizing: border-box;
    }

    .section .copy_wrap .copy {
        font-size: 15px;
        line-height: 2.5;
    }
	
    /* ------------------------------------------------------------
    *
        #advanced
    *
    ------------------------------------------------------------ */
	
	#advanced .section-inner {
		padding-top: 10vw;
		width: 100vw;
		opacity: 1;
		transition: all 1s cubic-bezier(0.645, 0.045, 0.355, 1);
		display: table-cell;
		vertical-align: middle;
		min-width: 1200px; 
	} 

	#advanced .section-inner .sec_item_wrap {
		width: 1048px;
		display: flex;
		justify-content: space-between; 
	} 

	#advanced .section-inner .sec_item_wrap .sec-item {
		width: 455px; 
	}
	
	#advanced .section-inner .sec_item_wrap .sec-item p.def-delight {
		width: 440px;
		opacity: 0;
		transition: all .5s ease;
		-webkit-transform: translateY(20px);
		transform: translateY(20px); 
	}
	
	#advanced .section-inner .sec_item_wrap .sec-item p.def-delight.start {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0); 
	}
	
	#advanced .section-inner .sec_item_wrap .sec-item p.def-delight.end {
		opacity: 0;
		-webkit-transform: translateY(-40px);
		transform: translateY(-40px); 
	} 	

	#advanced .section-inner .sec_item_wrap .sec-item.fig-item {
		position: relative;
		width: 500px; 
	} 

	#advanced .section-inner .sec_item_wrap .sec-item.fig-item .slick-wrap.def-delight {
		transition: all 1s cubic-bezier(0.645, 0.045, 0.355, 1);
		opacity: 0; 
	}
	#advanced .section-inner .sec_item_wrap .sec-item.fig-item .slick-wrap.def-delight.start {
		opacity: 1; 
	} 

	#advanced .section-inner .sec_item_wrap .sec-item.fig-item .slick-wrap .slick-wrap-container .slick-item .slick-num {
		top: 80px;
		font-size: 58px; 
	} 

	#advanced .section-inner .sec_item_wrap .sec-item.fig-item .slick-wrap .slick-wrap-container .slick-item .img-wrap {
		width: 100%;
		max-height: 50vh;
		min-height: 500px; 
	} 	

	#advanced .sec-item {
		order: 2; 
	}

	#advanced .sec-item.fig-item {
		order: 1; 
	} 
	

    /* ------------------------------------------------------------
    *
        #professional
    *
    ------------------------------------------------------------ */

    #professional .pic_profession {
        background-image: url(../../top/image/professional_img.jpg);
    }

    #professional .copy_wrap {
        top: 55%;
    }

    #professional .copy_wrap {
        -webkit-transition: opacity 1s .3s ease;
        transition: opacity 1s .3s ease;
    }

    #professional.anim_end .copy_wrap {
        opacity: 1;
    }

    #professional .copy_wrap .tit {
        width: 392px;
    }

    #professional .copy_wrap .copy {
        margin: 68px 0 0 34px;
    }

    /* ------------------------------------------------------------
    *
        #maintain
    *
    ------------------------------------------------------------ */

    #maintain .copy_wrap {
        top: 53.3%;
    }

    #maintain .copy_wrap .maintain_block {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: -65px;
        justify-content: space-between;
    }

    #maintain .copy_wrap .maintain_block .pic {
        width: 525px;
    }

    #maintain .copy_wrap .maintain_block .maintain_copy {
        margin-top: 106px;
        width: 518px;
        -webkit-transition: opacity 1s .3s ease;
        transition: opacity 1s .3s ease;
    }

    #maintain.anim_end .copy_wrap .maintain_block .maintain_copy {
        opacity: 1;
    }

    #maintain .copy_wrap .maintain_block .maintain_copy .tit {
        width: 436px;
    }

    #maintain .copy_wrap .maintain_block .copy {
        margin: 46px 0 0 20px;
    }

    #maintain .desc_wrap {
        display: inline-block;
        margin-left: 3px;
        width: 100%;
        -webkit-transition: opacity 1s 1s ease;
        transition: opacity 1s 1s ease;
    }

    #maintain.anim_end .desc_wrap {
        opacity: 1;
    }

    #maintain .desc_block {
        float: left;
        margin: 70px 0 0;
        width: 50%;
        box-sizing: border-box;
    }

    #maintain .desc_block .pic {
        float: left;
        padding-right: 20px;
        width: 200px;
    }

    #maintain .desc_detail {
        float: left;
        width: 238px;
        line-height: 1.5;
    }

    #maintain .desc_detail .desc_tit {
        position: relative;
        margin-bottom: 12px;
        padding: 0 0 0 8px;
        height: 60px;
        font-size: 17px;
        font-family: var(--font-bold);
        border-bottom: 1px solid #969696;
    }

    #maintain .desc_detail .desc_tit:before {
        content: '';
        display: block;
        position: absolute;
        left: -45px;
        bottom: -15px;
        margin: auto;
        width: 50px;
        height: 0;
        border-top: 1px solid #969696;
        transform: rotate(-35deg);
        z-index: -1;
    }

    #maintain .desc_detail .desc_copy {
        padding-left: 7px;
        font-size: 13px;
        font-family: var(--font-light);
    }

    /* ------------------------------------------------------------
    *
        #deliver
    *
    ------------------------------------------------------------ */

    #deliver {
        background-color: #5a5a5a;
    }

    #deliver .copy_wrap {
        top: 56.5%;
        color: #dcdddd;
    }

    #deliver .copy_wrap .maintain_block {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: -65px;
        justify-content: space-between;
    }

    #deliver .copy_wrap .maintain_block .pic {
        width: 525px;
    }

    #deliver .copy_wrap .maintain_block .maintain_copy {
        margin-top: 60px;
        width: 518px;
        -webkit-transition: opacity 1s .3s ease;
        transition: opacity 1s .3s ease;
    }

    #deliver.anim_end .copy_wrap .maintain_block .maintain_copy {
        opacity: 1;
    }

    #deliver .copy_wrap .maintain_block .maintain_copy .tit {
        width: 440px;
    }

    #deliver .copy_wrap .maintain_block .copy {
        margin: 46px 0 0 20px;
    }

    #deliver .desc_wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-left: -15px;
        width: 100%;
        justify-content: space-around;
        -webkit-transition: opacity 1s 1s ease;
        transition: opacity 1s 1s ease;
    }

    #deliver.anim_end .desc_wrap {
        opacity: 1;
    }

    #deliver .desc_block {
        margin: 108px 0 0;
        box-sizing: border-box;
    }

    #deliver .desc_block:first-child {
        order: 2;
    }

    #deliver .desc_block .pic {
        width: 700px;
    }

    #deliver .desc_detail {
        width: 250px;
        line-height: 1.5;
    }

    #deliver .desc_detail .desc_copy {
        font-size: 13px;
        font-family: var(--font-light);
    }

    #deliver .desc_detail .desc_tit {
        margin-bottom: 16px;
    }

    /* ------------------------------------------------------------
    *
        #search
    *
    ------------------------------------------------------------ */

    #search {
        padding: 50px 0;
        color: #3e3a39;
        font-size: 15px;
        text-align: center;
        line-height: 1.6;
        background-color: #EFEFEF;
    }

    .search_btn img {
        width: 458px;
    }


    /* ------------------------------
        #nav_right
    ------------------------------ */
    #nav_right {
        position: fixed;
        right: 5%;
        top: 50%;
        transform: translate(0, -50%);
        text-align: right;
        z-index: 4;
    }

    #nav_right li {
        cursor: pointer;
        margin: 14px 0;
        padding: 7px 25px 7px 0;
        position: relative;
        right: 140px;
        transform: translateX(150px);
        transition: .6s cubic-bezier(0, 0, 0.3, 1) 0s;
    }

    #nav_right.show li {
        transform: translateX(0)
    }

    #nav_right li:nth-child(2) {
        transition-delay: .05s;
    }

    #nav_right li:nth-child(3) {
        transition-delay: .1s;
    }

    #nav_right li:nth-child(4) {
        transition-delay: .15s;
    }

    #nav_right li:nth-child(5) {
        transition-delay: .2s;
    }

    #nav_right li:nth-child(6) {
        transition-delay: .25s;
    }

    #nav_right li:nth-child(7) {
        transition-delay: .3s;
    }

    #nav_right li:nth-child(8) {
        transition-delay: .35s;
    }

    #nav_right li:nth-child(9) {
        transition-delay: .4s;
    }

    #nav_right li::after {
        display: inline-block;
        content: '';
        background: #d2dcd7;
        border-radius: 4px;
        width: 8px;
        height: 8px;
        position: absolute;
        right: 0;
        top: 50%;
        margin: -4px 0 0 -4px;
        transition: .25s;
    }

    #nav_right.dark li::after {
        background: #fff;
    }

    #nav_right li.current::after,
    #nav_right li:hover::after {
        transform: scale(1.5);
    }

    #nav_right li.current::after {
        background: #c30d23;
        transform: scale(1.5);
    }

}