/* search_box */
#openform { background: rgba(var(--white-rgb), .3); }

/* section */
section {margin: 3vw 0;}
section.section_pad {padding: 3vw 0;margin-bottom: 0;}
section >* { z-index: 3; }
section .title_box {margin-bottom: 30px;}
section .title_box .area_title {font-weight: 400;font-size: 45px;text-align: center;}
section .title_box .sub_title { font-weight: 300; font-size: 23px; }

/* bg_box */
.bg_box { width: 100%; height: 100%; background: no-repeat 50% / cover; background-attachment: fixed; opacity: .3; top: 0; left: 0; }
.bg_box:before {width: 100%;height: 100%;display: block;background: rgba(var(--primary-rgb), .15);content: "";}
.bg_box.white:before { background: rgba(var(--white-rgb), .2); }

/* about_area */
#about_area .info_box article {margin-bottom: 30px;width: 100%;line-height: 210%;letter-spacing: 1.5px;font-weight: 300;text-align: justify;}
#about_area .img_box{width: 40%;margin-right: 5%;display: inline-block;}
#about_area .info_box{width:50%}
#about_area .title_box .area_title{text-align:left;}

/* product_area */
#product_area .slick-list { overflow: visible; }

/* news_area */
#news_area .list_box img {height: 230px;}
#news_area .list_box .info_box {padding: 15px 0;}
#news_area .list_box .info_box p a { margin-right: 10px; max-width: calc(100% - 100px); font-weight: 400; z-index: 2; }
#news_area .list_box .info_box p .time { width: 90px; font-weight: 300; }
#news_area .list_box .info_box h3 {height: 34px;font-size: 20px;color: #323232;}
#news_area ul{display:flex;flex-wrap: wrap;}
#news_area li{width:calc(100%/3);margin-bottom: 15px;}

/* book_area */
#book_area .list_box img { height: 450px; }
#book_area .list_box .img_box { border: var(--white) solid; border-width: 0 1px 1px 0; }
#book_area .list_box .img_box:before , #book_area .list_box .img_box:after { position: absolute; width: 100%; height: 100%; background: var(--white); z-index: 9; opacity: .4; content: ""; }
#book_area .list_box .img_box:after { right: 0; bottom: 0; }
#book_area .list_box .atag_item { z-index: 10; }
#book_area .list_box .badge { margin: auto; padding: 10px 20px; max-width: calc(80% - 40px); height: 34px; line-height: 36px; font-size: 20px; }

/* youtube_box */
#youtube_box { min-height: 1px; padding-bottom: 30%; }
#youtube_box a { position: absolute; background: var(--white); display: flex; top: 50%; left: 50%; z-index: 99; }
#youtube_box a i { margin: auto; font-size: 30px; color: var(--primary); }
#youtube_box iframe { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 5; }

/* custom_area */
#custom_area { margin: 0; padding: 5vw 0 3vw; }
#custom_area:before { position: absolute; width: 100%; height: 75%; background: rgba(var(--primary-rgb), .1); display: block; bottom: 0; left: 0; opacity: .3; content: ""; }
#custom_box { padding: 8vw 0 5vw; }
#custom_box li .row { margin: 30px 20px; padding: 30px; border-bottom: 2px var(--primary) solid; }
#custom_box li .row h2 { font-size: 20px; }
#custom_box li .row article { margin-top: 30px; line-height: 200%; }

@-webkit-keyframes spineer { 0% { -webkit-box-shadow: 0 0 0 0 var(--info); } 70% { -webkit-box-shadow: 0 0 0 20px transparent; } 100%{ -webkit-box-shadow: 0 0 0 0 transparent; } }
@keyframes spineer { 0% { box-shadow: 0 0 0 0 var(--info); } 70% { box-shadow: 0 0 0 20px transparent; } 100%{ box-shadow: 0 0 0 0 transparent; } }


@media screen and (max-width: 1440px){
    section .title_box .area_title{font-size:30px;}
    #news_area .list_box img {height: 200px;}
}
@media screen and (min-width: 1281px){
	#book_area .list_box li:hover .badge { background: var(--primary); color: var(--white); }
	#custom_box li:hover .row { box-shadow: 0 4px 17px 0 rgba(var(--black-rgb), .2); }
}
@media screen and (max-width: 1280px){
    #news_area .list_box img {height: 180px;}
}
@media screen and (max-width: 1024px){
    #news_area li{width:50%;}
}
@media screen and (max-width: 768px){
    #news_area .list_box img {height: 160px;}
	#about_area .img_box{width: 50%;margin: 0 auto 20px;display: block;}
	#about_area .info_box{width:100%;display:block;margin: 0 0 50px;}
	#news_area .list_box .info_box { padding: 15px 0; }
	#youtube_box { padding-bottom: 60vw; }
	#custom_box li .row { margin: 10px 15px; padding: 10px 0; }
}
@media screen and (max-width: 640px){
    #news_area li{width:100%;}
	#book_area .list_box img { height: 65vw; }
}
@media screen and (max-width: 450px){
    section {margin: 30px 0;}
	#product_area .bgBox { width: 100%; object-fit: cover; }
}