@import url('fontawesome-all.css');
@import url('font-awesome.min.css');
@import url('fontawesome.min.css');
@import url('SeoJump.css');
@import url('css2.css'); 

*:focus { outline:  none; }
*, ::after, ::before { margin: 0; padding: 0; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; -ms-transition: all .2s linear; -o-transition: all .2s linear; }

body { overflow-x: hidden; overflow-y: overlay; margin: 0; }
body::-webkit-scrollbar { width: 13px; }
body::-webkit-scrollbar-track { background: #000; }
body::-webkit-scrollbar-thumb { border-radius: 8px; border: 4px solid transparent; background-clip: content-box; background-color: rgb(255 255 255 / 40%); }
body::-webkit-scrollbar-thumb:hover { background-color: #fff; }

header , footer , div , nav , article , hr , p , form , label , input , textarea , ul , li , img , svg , span , font , strong , b , a , i { text-align: left; vertical-align: middle; word-wrap: break-word; word-break: break-word; line-height: 170%; border-width: 0; font-family: var(--font-family), sans-serif; font-size: 16px; color: var(--info); }

h1, h2, h3, h4, h5, h6 { word-wrap: break-word; word-break: break-word; font-family: var(--font-family), sans-serif; line-height: 1.7; color: var(--info); }
h1 *, h2 *, h3 *, h4 *, h5 *, h6 * { font-size: inherit; }
h1, .h1 { font-weight: bold; font-size: 2em; }
h2, .h2 { font-weight: bold; font-size: 1.5em; }
h3, .h3 { font-weight: bold; font-size: 1.17em; }
h4, .h4 { font-weight: bold; font-size: 1em; }
h5, .h5 { font-weight: bold; font-size: .83em; }
h6, .h6 { font-weight: bold; font-size: .67em; }

ul , ol { list-style: none; }

fieldset { border: 0; }
input[type=text] , input[type=number] , input[type=tel] , input[type=password] , button , select , textarea { padding: .3rem 1rem; width: 100%; background-color: #fff; background-clip: padding-box; border: 1px solid #ced4da; border-radius: .2rem; box-shadow: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
input::-webkit-outer-spin-button , input::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; }
input[type=number] { -moz-appearance: textfield; }
input[type="password"] { font-family: auto; }
select { padding: .3rem 1rem; }
input , button , select , textarea { border-radius: 0; box-shadow: none; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; }

/* img */
img { max-width: 100%; }
.img_cover { object-fit: cover; }
.img_contain { object-fit: contain; }

a , a:link , a:visited , a:hover { text-decoration: none; white-space: pre-wrap; }

/* general class set */
.txt_clamp { overflow: hidden; height: 27px; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
.d_inblock.txt_clamp { display: -webkit-inline-box; }
.atag_item { width: 100%; height: 100%; top: 0; left: 0; }
.nowrap_box { font-size: 0; }
.flex_direction { flex-direction: column; }
.flex_wrap { flex-wrap: wrap; }
.text_uppercase { text-transform: uppercase; }

/* btn */
.btn , .btn_outline { padding: .2em 1em; display: inline-block; }
.btn_pill { padding: .6em 4em; }
.btn_radius { border-radius: 5em; }

/* badge  */
.badge { padding: 2px 10px; box-shadow: none; }
.badge_lighten { padding: 0 4px; min-width: 22px; border-radius: 3px; font-weight: 400; text-align: center; font-size: 12px; vertical-align: text-bottom; }

/* photo , bg_box */
a.photo , .bg_box { overflow: hidden; background-repeat: no-repeat; background-position: 50%; background-size: cover; }

/* fancybox */
[class^="fancybox-"] , [class^="fancybox-"] * , .slick-track , .fa , .fas , .fa:before , .fas:before , .fa:after , .fas:after , .trans_none_box { -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }
.fancybox-infobar__body span { font-size: inherit; color: currentcolor; vertical-align: initial; }
.fancybox-slide--iframe .fancybox-content , .fancybox-slide--ajax >div { margin: 0; max-width: 95vw; max-height: 90vh; height: 70vh; background: transparent; }
.fancybox-slide--ajax >div { overflow: hidden; }
.fancybox-show-caption .fancybox-caption-wrap { display: none; }

/* webBox */
.webBox { position: relative; background: #000; width: 100%; max-width: 100%; min-height: 100vh; }
.webBox .wrapper { position: relative; padding-bottom: 3vmax; }
.webBox .h1box { height: 400px; }
.webBox .slick-slider { margin-bottom: 0; min-width: 100%; }

/* workframe */
.workframe , .workframe_s { margin: 0 auto; width: 90vw; }

/* header */
header { padding: .5em 2vw; background: rgb(255 255 255 / 15%); top: 0; left: 0; z-index: 10; }
header #header_logo { width: 220px; }
header #header_logo img { height: 60px; }
header #header_menu { width: 1%; flex: 1 1 auto; }
header #header_menu nav ul li a { padding: .5em 1.25em; }
header.scroll { padding: .3em 2vw; background: var(--g_800); box-shadow: 0 0 20px 0 rgba(10, 16, 34, .2); }
header.scroll #header_logo img { height: 50px; }

/* trigger */
#trigger { width: 30px; height: 22px; background: transparent; border: 0; top: 50%; right: 2vw; z-index: 100; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
#trigger span { position: absolute; width: 100%; height: 2px; background: var(--g_100); display: block; top: 0; right: 0; transition: transform .4s cubic-bezier(.215,.61,.355,1),opacity .4s cubic-bezier(.215,.61,.355,1), -webkit-transform .4s cubic-bezier(.215,.61,.355,1); }
#trigger span:nth-child(2) { top: calc((100% - 2px) / 2); }
#trigger span:nth-child(3) { top: calc(100% - 2px); }
#trigger.open span { transition: .4s cubic-bezier(.645,.045,.355,1); }
#trigger.open span:nth-child(1) { top: 50%; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
#trigger.open span:nth-child(2) { opacity: 0; }
#trigger.open span:nth-child(3) { top: 50%; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

/* banner_box */
#banner_box .item { height: 90vh; }
#banner_box img { width: 100%; height: 90vh; object-fit: cover; }
#banner_box video { position: absolute; width: 100%; height: 100%; object-fit: cover; top: 0; left: 0; }
#banner_box .txt_box { padding-bottom: 10%; background: url(../image/banner_bg.png); }
#banner_box .txt_box * { letter-spacing: .5em; font-weight: 400; font-size: 3em; }
#banner_box .txt_box p { font-size: 1.3em; }

/* star_point */
.star_point , .star_point * { line-height: 1; }
.star_point .star { margin-right: .1em; width: 16px; height: 16px; background: var(--g_600); display: inline-block; clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%); }
.star_point .full { white-space: nowrap; top: 0; left: 0; }
.star_point .full .star { background: var(--yellow); }

/* footer */
footer { padding: 1em 0; }
footer .count_box label { font-size: .88em; }
footer .footer_other { width: 1%; flex: 1 auto; }
footer .footer_other * { font-weight: 300; font-size: 14px; }

@media screen and (min-width: 1281px){
	.workframe { width: var(--width-xl); }
	.fancybox-slide--iframe .fancybox-content , .fancybox-slide--ajax >div { width: var(--width-xl); }
}
@media screen and (max-width: 1160px) {
	header #header_menu nav { padding-top: 80px; width: 300px; height: 100vh; top: 0; right: -500px; background: var(--g_800); box-shadow: -10px 0 30px -5px rgba(10, 16, 34, .1); }
	header #header_menu nav.open { right: 0; }
}
@media screen and (max-width: 640px) {
	footer .footer_other { margin-top: 1em; }
}
@media screen and (max-width: 550px) {
	.fancybox-slide--iframe .fancybox-content , .fancybox-slide--ajax >div { width: 96vw; height: 80vh; }
}
@media screen and (max-width:1024px) {
.phoneWrap {display:block;position: fixed;bottom: 0;width: 100%;left: 0;z-index: 999;}
	.phoneWrap ul{display:flex;}
	.phoneWrap li{width:50%;}
	.phoneWrap a{display: block;padding: 12px 0;text-align: center;background: #ac8a8a;color: #fff;}
	.phoneWrap li:last-child a{background: #1c8e20;}
	footer{padding-bottom: 40px;}
}
@media screen and (min-width:1025px) {
    .phoneWrap { display: none!important; }
}