@charset "UTF-8";

/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 1680px) {    

    .area { width: 75%; }
    .s4, .s5 { background-size: 80% 100%; }
    
    /*page*/
    .main { width: 90%; }
    .nav li a, .nav li.on a { font-size: 1.5em; }
    .subnav li a, .subnav li.on a { font-size: 1.125em; }
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 1600px) {
    
    .list-2c { background-size: 100% 88%; }
     
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 1440px) {
    
    .area { width: 80%; }
    .s4, .s5 { background-size: 85% 100%; }
    
    .photo-1, .photo-2, .photo-4 { height: 270px; }
    .photo-1 img, .photo-2 img, .photo-4 img { max-height: 260px; }
    .photo-3 { height: 230px; }
    .photo-3 img { max-height: 220px; }
    .photo-6 { height: 280px; }
    .photo-6 img { max-height: 250px; }
    
    .name-base { font-size: 1.125em; }
    .sale-3 { font-size: 1em; }
    
    .list-2b li a { font-size: 1.7em; }
    
    .box-3 { padding: 3%; }
    .box-3 h2 a { font-size: 1.5em; margin: 3% 0 5% 0; }    
    
    /*page*/
    .main { width: 95%; }
    .nav li a, .nav li.on a { height: 55px; line-height: 55px; font-size: 1.3em; }
    .subnav li a, .subnav li.on a { font-size: 1.1em; }
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 1400px) {
    
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 1366px) {
    
   
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 1280px) {
    
    .photo-1, .photo-2, .photo-3, .photo-4 { height: 250px; }
    .photo-1 img, .photo-2 img, .photo-3 img, .photo-4 img { max-height: 240px; }
    .photo-6 { height: 270px; }
    .photo-6 img { max-height: 240px; }
    
    .name-base { font-size: 1em; padding: 0 3%; }
    
    .list-3 li { width: 19.5%; border: 3px solid #2f54d6; border-radius: 15px; margin: 0 0.25%; flex-wrap: wrap; }
    .list-3 li:nth-child(1) { border: 3px solid #810C36; }
    .list-3 li:nth-child(6) { display: none; }
    .photo-3 {width: 100%; border-radius: 11px 11px 0 0; }
    .box-3 { width: 100%; border-radius: 0 0 11px 11px; padding: 0 0 3% 0; }
    .name-3 { height: 1.3em; text-align: center!important; padding: 0 5%; -webkit-line-clamp: 1; margin: 0 0 5px 0; }
    .box-3a { width: 100%; background-color: #2f54d6; }
    .txt-3 a { font-size: 1.5em; color: #FFF; }
    .txt-3 a:hover, .txt-3 a:active { color: #FFF; background-color: #2f54d6; }
    .list-3 li:nth-child(1) .txt-3 a { color: #FFF;	background-color: #810C36; }
    .list-3 li:nth-child(1) .txt-3 a:hover, .list-3 li:nth-child(1) .txt-3 a:active { color: #FFF; background-color: #810C36; }    

    /*page*/
    .main { width: 100%; }
    .nav li a, .nav li.on a { width: 19.5%; height: 60px; line-height: 60px; font-size: 1.6em; margin: 0 0.5% 0.5% 0; }
    .subnav li a, .subnav li.on a { font-size: 1em; }
	.list li { width: 24%; padding: 5px 10px 13px 10px; margin: 0.5%; }    
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 1180px) {
    
    .photo-1, .photo-2, .photo-3, .photo-4 { height: 230px; }
    .photo-1 img, .photo-2 img, .photo-3 img, .photo-4 img { max-height: 220px; }
    .photo-6 { height: 250px; }
    .photo-6 img { max-height: 220px; }
    
    .list-2b { width: 80%; }
    .list-2b li a { font-size: 1.6em; }   
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 1024px) {
    
    .area { width: 96%; } 
    .title { width: 65%; }
    
    .s4, .s5 { background-size: 100% 100%; }    
    .s1 .title:after { top: 0%; right: -30%; }    
    .list-6p { top: 15%; left: 1%; width: 17%; }   
    
    .bn { width: 100%; }
    
    /*page*/
    .subnav li a, .subnav li.on a { font-size: 0.9em; }
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 834px) {
    
    body { background-image: none; }
    .container { padding: 73px 0 0 0; }
    
    .kv-pc { display: none; }
    .kv-m { width: 100%; display: block; }   
    .title { width: 95%; margin: 0 auto 1% auto; }
    
    #s1, #s2, #s3, #s4, #s5, #s6, #s7, #s8 { padding-top: 60px; margin-top: -60px; }
    #r1, #r2, #r3, #r4, #r5 { padding-top: 73px; margin-top: -73px; }
    
    .s1 { background-image: none; padding: 8% 0; }
    .s2 { background-size: auto 100%; padding: 8% 0; margin: -6% 0 0 0; }
    .s3 { padding: 5% 0; }
    .s4 { padding: 5% 0;}
    .s5 { background-color: #00a95d; background-image: none; padding: 0 0 8% 0;}
    .s6 { background-size: auto 100%; padding: 8% 0; margin: -6% 0 0 0; }
    
    .photo-1, .photo-2, .photo-4 { height: 310px; }
    .photo-1 img, .photo-2 img, .photo-4 img { max-height: 300px; }
    .photo-3 { height: 310px; }
    .photo-3 img { max-height: 300px; }
    .photo-6 { height: 330px; }
    .photo-6 img { max-height: 300px; }
    
    .kv-txt1 { width: 47.5%; top: 16%; left: 39%; }
    .kv-txt2 { width: 44.6%; top: 23.5%; left: 48.5%; }
    .kv-txt3 { width: 19%; top: 53%; left: 63.5%; }
    .kv-txt4 { width: 59%; top: 54.5%; left: 4%; }
    
    .name-base { font-size: 1.125em; padding: 0 4%; }   
    
    .list-1 li, .list-3 li, .list-4 li, .list-5 li, .list-6 li, .list-7 li, .list-8 li { width: 48%; margin: 0 1% 2% 1%; }
    .list-1 li:nth-child(5), .list-3 li:nth-child(5), .list-4 li:nth-child(5), .list-5 li:nth-child(5),
    .list-7 li:nth-child(5), .list-8 li:nth-child(5),
    .list-4p, .list-6p {
        display: none; }
    
    .photo-1 img:hover,
    .list-1 li:nth-child(6) img:hover, .list-1 li:nth-child(7) img:hover, .list-1 li:nth-child(8) img:hover,
    .list-2a li img:hover {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
    
    .s1 .title:after { background-image: none; } 
    .list-1 ul, .list-7 ul { padding: 2% 1% 0.5% 1%; }
    .list-1 li:nth-child(6), .list-1 li:nth-child(7), .list-1 li:nth-child(8) { width: 98%; margin: 0 1% 2% 1%; }
    
    .s2 .title { margin: 0 auto 8% auto; }
    .box-2a { padding: 5% 2% 2% 2%; }
    .list-2a { margin: -14% auto 0 auto; }
    .list-2a h2, .list-2c h3 { width: 75%; }
    .list-2a li { width: 48%; margin: 0 1% 2% 1%; }
    .list-2p1, .list-2p2 { display: none; }
    .list-2b { width: 100%; margin: 2% 0; }
    .box-2b { width: 100%; }
    .list-2c { float: none; width: 100%; background-size: 100% 85%; padding: 0 2% 2% 2%; margin: -4% 0 0 0; }
    
    .list-4 li { padding: 0 0 2% 0; }
    
    .list-6 h2 { width: 100%; margin: 2% auto 3% auto; }
    .list-6 h2 img:nth-child(1) { display: none; }
    .list-6 h2 img:nth-child(2) { display: block; }
    .list-6 li:nth-child(6) .photo-6 { display: block; }
    .list-6 li:nth-child(6) p a { position: absolute; bottom: 0; left: 0; background-color: #2f54d6; border-radius: 0; padding: 3% 15%; }
    
    .bn li { width: 100%; margin: 0 auto 1% auto; }
    
    /*page*/
    .main { padding: 73px 0 0 0; }
    
    .kv-pbn img:nth-child(1) { display: none; }
    .kv-pbn img:nth-child(2) { display: block; }
    
    .nav-area { padding: 1.5% 1% 0.5% 1%; }
    .nav-box { height: auto; margin: 0 auto 1.5% auto; overflow: hidden; }
    .nav { float: left; width: calc(100% - 45px); white-space: nowrap; }
    .nav ul { padding: 0; overflow-x: scroll; overflow-y: hidden; }
    .nav ul::-webkit-scrollbar { display: none; }
    .nav li { width: auto; display: inline-block; margin: 0; }
    .nav li a, .nav li.on a { width: auto; min-width: 150px; font-size: 1.7em; height: 60px; line-height: 60px; padding: 0 15px;  }
    
    .nav-more, .nav-up { position: relative; float: left; width: 45px; font-size: 1.8em; text-align: center; box-shadow: -5px 0 5px rgba(0,0,0, 0.4); display: block; z-index: 1; }
    .nav-more { height: 60px; line-height: 60px; color: #2f54d6; background-color: #EAEAEA; }
    .nav-up { height: 40px; line-height: 40px; color: #999; background-color: #FFF; }
    .icon-down-open-1::before { margin-right: 0; margin-left: 0; }
    .icon-up-open-1::before { margin-right: 0; margin-left: 0; }
    
    .nav-1 { width: 100%; background-color: #FFF; box-shadow: 0 0 5px rgba(0,0,0, 0.4); padding: 0; margin: 0 auto 3% auto;  z-index: 3; }
    .nav-1 h2 { float: left; width: calc(100% - 45px); font-size: 1.2em; height: 40px; line-height: 40px; color: #999; padding: 0 0 0 2.5%; }
    .nav-1 ul { width: 100%; padding: 4% 0; overflow: hidden; }
    .nav-1 li a { float: left; width: 45%; font-size: 1.3em; font-weight: bolder; text-align: center; color: #FFF; background-color: #2f54d6; border-radius: 40px; padding: 3%; margin: 0 2.5% 2% 2.5%; }
    .nav-1 li.on a { color: #FFF; background-color: #f03e40; }
    
    .subnav-box { width: 100%; padding: 0; margin: 0 auto; display: block; }
    .subnav { width: 100%; white-space: nowrap; }
    .subnav ul { padding: 0; overflow-x: scroll; overflow-y: hidden; }
    .subnav ul::-webkit-scrollbar { display: none; }
    .subnav li { width: auto; margin: 0; display: inline-block; }
    .subnav li a, .subnav li.on a { width: auto; height: auto; font-size: 1.25em; line-height: 1; border-bottom: 0px solid #EBD4B0; border-right: 0px solid #EBD4B0; padding: 12px; }
    
    .hide { display: none; }
    
    .path { padding: 1%; }
    
    .list li { width: 24%; padding: 5px 10px 13px 10px; margin: 0.5%; }    
    .gift { float: none; }
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 768px) {
    
  
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 736px) {
    
   
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 667px) {
    
   

}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 480px) {
    
    .s1 { padding: 5% 0 10%; }
    .s2, .s6 { padding: 10% 0; margin: -8% 0 0 0; }
    
    .photo-1, .photo-2, .photo-3, .photo-4 { height: 230px; }
    .photo-1 img, .photo-2 img, .photo-3 img, .photo-4 img { max-height: 220px; }
    .photo-6 { height: 250px; }
    .photo-6 img { max-height: 220px; }
    
    .list-1 ul, .list-7 ul, .list-6 li { border-radius: 15px; }
    
    .box-2a { padding: 5% 1% 2% 1%; }
    .list-2a h2 { width: 80%; }
    .list-2c h3 { width: 90%; }
    .list-2b li a { font-size: 1.35em; padding: 10px 20px; margin: 0 0.5% 2% 0.5%; }
    .list-2b li:nth-child(8) { display: none; }
    .list-2c { background-size: 100% 85%; margin: -5% 0 0 0; }
        
    /*page*/
    .nav-area { padding: 2% 2% 0.5% 2%; }
    .nav li a, .nav li.on a { min-width: 120px; font-size: 1.5em; height: 50px; line-height: 50px; padding: 0 15px; }
    .nav-more { height: 50px; line-height: 50px; }
    .subnav li a, .subnav li.on a { font-size: 1.1em; padding: 12px 10px; }
    .path { padding: 2% 2% 1% 2%; }
    .list li { width: 48%;	padding: 0 10px 15px 10px; margin: 1%; }
    .photo { width: 100%; height: 190px; margin: 0; }
    .photo img { max-height: 180px; }
    .tag-p1 { width: 20%; }
    .tag-p2 { width: 30%; }
    
    /*頁碼*/
    .page { padding: 20px 1% 40px 1%; }
    .page ul { width: 90%; }
    a.page_prev, a.page_next, a.page_prev_off, a.page_next_off { font-size: 0.9em; }
    a.page_prev { background-position: 7% center; }
    a.page_next { background-position: 93% center; }
    .page_number { font-size: 1em; }
	
    /*rule*/
    .gift { float: none; width: 95%; margin: 10px auto; }
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 440px) {
    
    .list-2b li a { font-size: 1.3em; padding: 10px 20px; margin: 0 0.5% 2% 0.5%; }
    .list-2c { background-size: 100% 87%; margin: -5% 0 0 0; }
    
    .list-6 p a, .list-6 li:nth-child(6) p a, .list-6 li:nth-child(7) p a, .list-6 li:nth-child(8) p a { padding: 3% 10%; }

}

/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 430px) {
    
    .name-base { font-size: 1.1em; padding: 0 4%; }
    .txt-1 { font-size: 1em!important; }
    .list-2b li a { font-size: 1.25em; padding: 10px 20px; margin: 0 0.5% 2% 0.5%; }
    

}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 414px) {
    
    .list-2b li a { font-size: 1.2em; padding: 10px 20px; margin: 0 0.5% 2% 0.5%; }
    .list-2c { background-size: 100% 88%; margin: -5% 0 0 0; }
    
}

/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 402px) {
    
    .list-2b li a { font-size: 1.35em; padding: 10px 20px; margin: 0 0.5% 2% 0.5%; }
    
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 393px) {
    
    div[class^="name"]  { font-size: 1em; }
    
    .list-2c { background-size: 100% 90%; margin: -5% 0 0 0; }
    
    
    /*page*/
    .nav li a, .nav li.on a { font-size: 1.5em; }
    .subnav li a, .subnav li.on a { font-size: 1.125em; padding: 12px 10px; }
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 375px) {
    
    .photo-1, .photo-2, .photo-3, .photo-4 { height: 220px; }
    .photo-1 img, .photo-2 img, .photo-3 img, .photo-4 img { max-height: 210px; }
    .photo-6 { height: 240px; }
    .photo-6 img { max-height: 210px; }
    
    .txt-1 { font-size: 0.9em!important; padding: 0 2%; }
    .list-2b li a { font-size: 1.3em; padding: 10px 20px; margin: 0 0.5% 2% 0.5%; }
    .list-2c { background-size: 100% 91%; margin: -5% 0 0 0; }
    .list-6 p a, .list-6 li:nth-child(6) p a, .list-6 li:nth-child(7) p a, .list-6 li:nth-child(8) p a { padding: 4% 6%; }
        
    /*page*/
    .nav li a, .nav li.on a { font-size: 1.4em; height: 50px; line-height: 50px; }
    .nav-more { height: 50px; line-height: 50px; }
    .subnav li a, .subnav li.on a { font-size: 1.125em; padding: 10px; }
    .tag-p1 { width: 23%; }
    .tag-p2 { width: 33%; }
    
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 360px) {
    
    .list-2b li a { font-size: 1.2em; padding: 10px 20px; margin: 0 0.5% 2% 0.5%; }    
  
}


/*---------------------------------------------------------------
----------------------------------------------------------------*/
@media screen and (max-width: 320px) {
    
    .txt-1 { font-size: 0.85em!important; padding: 0 2%; }
    .list-2b li a { font-size: 1em; padding: 10px 20px; margin: 0 0.5% 2% 0.5%; } 
    .list-2c { background-size: 100% 94%; margin: -2% 0 0 0; }
    
    /*page*/
    .nav li a, .nav li.on a { font-size: 1.3em; height: 45px; line-height: 45px; }
    .nav-more { height: 45px; line-height: 45px; }
    .subnav li a, .subnav li.on a { font-size: 1em; padding: 10px; }
    .path li { font-size: 0.9em; }
        
    /*頁碼*/
    a.page_prev, a.page_next, a.page_prev_off, a.page_next_off { font-size: 0.9em; }
    a.page_prev { background-position: 5% center; }
    a.page_next { background-position: 95% center; }    
    
}
    