@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;600&display=swap');

/*	TBS reset
============================== */
body { line-height:1;}
.alt {position:absolute;top:-5000px;left:-9999px;}
.clearfix:after {content:"";clear:both;display:block;}
.hide-txt {text-indent:110%;white-space:nowrap;overflow:hidden;}
.fp-causion {display:none;}
@media all and (min-width:768px) {
.alt-pc {position:absolute;top:-5000px;left:-9999px;}
.clearfix-pc:after {content:"";clear:both;display:block;}
.hide-txt-pc {text-indent:110%;white-space:nowrap;overflow:hidden;}
}
@media all and (max-width:767px) {
.alt-smp {position:absolute;top:-5000px;left:-9999px;}
.clearfix-smp:after {content:"";clear:both;display:block;}
.hide-txt-smp {text-indent:110%;white-space:nowrap;overflow:hidden;}
}

/*	RESETS NL4.0.0base
============================== */
html, body, main, div, p, span, applet, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, section, summary, time, mark, audio, ruby { margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; }
ol, ul, li { list-style: none; }
a img, form, fieldset { border: none; }
input, button, select { vertical-align: middle; }
textarea { vertical-align: top; overflow: auto; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary, .dpb { display: block; }
audio, canvas, progress { display: inline-block; }
progress { vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template, .nt, .alt { display: none; }
a { background-color: transparent; }
a:active, a:hover { outline-width: 0; }
a:hover { text-decoration: none; }
abbr { cursor: help; border-bottom: 1px dotted #bbb; }
abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; }
b, strong, .bt { font-weight: 600; }
dfn { font-style: italic; }
mark { background: yellow; color: black; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
img { border-style: none; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }
figure { margin: 1em 40px; }
hr { box-sizing: content-box; height: 0; overflow: visible; }
optgroup { font-weight: bold; }
button, input, select { overflow: visible; } /*Edge, IE*/
button, input, select, textarea { margin: 0; } /*Firefox and Safari*/
button, select { text-transform: none; } /*Edge, Firefox, and IE*/
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; }
[disabled] { cursor: default; }
button, html [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; } /*Android 4, iOS*/
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } /*Firefox*/
button:-moz-focusring, input:-moz-focusring { outline: 1px dotted ButtonText; }
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; } /*Edge and IE ...etc*/
textarea { overflow: auto; } /*IE*/
[type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0; } /*IE10-*/
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } /*Chrome*/
[type="search"] { -webkit-appearance: textfield; } /*Chrome and Safari*/
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /*Chrome and Safari on OS X*/
pre { overflow: auto; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }
q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; display: table;}
q:after, blockquote:after { clear: both; }
q::after, blockquote::after { content: ""; display: block; clear: both;}
.clearfix:before, .clearfix:after { content: ""; content: none; display: table;}
.clearfix:after { clear: both; }
.clearfix::after { content: ""; display: block; clear: both;}
.tCenter, .ct { text-align: center;}
.tLeft, .lt { text-align: left;}
.tRight, .rt { text-align: right;}
@media print { .noprint { display: none;} }
/*txt*/
.nt { display: none;}
.bt { font-weight: bold; font-weight: 600;}
.ut { font-weight: lighter;}
.br_rsmp, .br_wsmp, .br_tablet, .br_pc, .br_wpc, .br_bwpc, .br_rsmpi, .br_wsmpi, .br_tableti, .br_pci, .br_wpci, .br_pci, .br_bwpci { display: none; }
.br_smp { display: -webkit-block; display: block; }
.br_smpi { display: -webkit-inline; display: inline; }
@media (min-width: 480px) { 
.br_smp, .br_smpi { display: none; } 
.br_rsmp { display: -webkit-block; display: block; } 
.br_rsmpi { display: -webkit-inline; display: inline; } 
}
@media (min-width: 640px) { 
.br_rsmp, .br_rsmpi { display: none; } 
.br_wsmp { display: -webkit-block; display: block; } 
.br_wsmpi { display: -webkit-inline; display: inline; } 
}
@media (min-width: 768px) { 
.br_wsmp, .br_wsmpi { display: none; } 
.br_tablet { display: -webkit-block; display: block; } 
.br_tableti { display: -webkit-inline; display: inline; } 
}
@media (min-width: 1000px) { 
.br_tablet, .br_tableti { display: none; } 
.br_pc { display: -webkit-block; display: block; } 
.br_pci { display: -webkit-inline; display: inline; } 
}
@media (min-width: 1200px) { 
.br_pc, .br_pci { display: none; } 
.br_wpc { display: -webkit-block; display: block; } 
.br_wpci { display: -webkit-inline; display: inline; } 
}
@media (min-width: 1400px) { 
.br_wpc, .br_wpci { display: none; } 
.br_bwpc { display: -webkit-block; display: block; } 
.br_bwpci { display: -webkit-inline; display: inline; } 
}
br { letter-spacing: 0; }
.ct { text-align: center;}
.lt { text-align: left;}
.rt { text-align: right;}
/*_size*/
.f300 { font-size: 300%;}
.f240 { font-size: 240%;}
.f220 { font-size: 220%;}
.f200 { font-size: 200%;}
.f180 { font-size: 180%;}
.f170 { font-size: 180%;}
.f160 { font-size: 160%;}
.f150 { font-size: 150%;}
.f140 { font-size: 140%;}
.f130 { font-size: 130%;}
.f125 { font-size: 125%;}
.f120, .big { font-size: 120%;}
.f110 { font-size: 110%;}
.f105 { font-size: 105%;}
.f100 { font-size: 100%;}
.f95 { font-size: 95%;}
.f90, .small { font-size: 90%;}
.f85 { line-height: normal; font-size: 85% !important;}
.f75 { line-height: normal; font-size: 75% !important;}
.f65 { line-height: normal; font-size: 65% !important;}
.f64 { line-height: normal; font-size: 64% !important;}
.f60 { line-height: normal; font-size: 60% !important;}
/*_height*/
.lh100 { line-height: 100%;}
.lh110 { line-height: 110%;}
.lh120 { line-height: 120%;}
.lh130 { line-height: 130%;}
.lh140 { line-height: 140%;}
.lh150 { line-height: 150%;}
.lh160 { line-height: 160%;}
.lh170 { line-height: 170%;}
.lh180 { line-height: 180%;}
.lh200 { line-height: 200%;}
.lh230 { line-height: 230%;}
/*space*/
.pd0 { padding: 0;}
.pd1 { padding: 1em;}
.pdt1 { padding-top: 1em;}
.pdt3 { padding-top: 3em;}
.pdt0 { padding-top: 0;}
.pdt05 { padding-top: .5em;}
.pdb05 { padding-bottom: .5em;}
.pdb0 { padding-bottom: 0;}
.pdb1 { padding-bottom: 1em;}
.pdl1 { padding-left: 1em;}
.pd05 { padding: .5em;}
.mgat { margin: auto;}
.mgtb1 { margin: 1em auto;}
.ls-1 { letter-spacing: -.1em;}
.ls-05 { letter-spacing: -0.05em;}
.ls-075 { letter-spacing: -0.075em;}
.ls0 { letter-spacing: 0;}
.ls1 { letter-spacing: .1em;}
.ls2 { letter-spacing: .2em;}
/*color*/
.black { color: rgba(0, 0, 0, 1);}
.lamp { color: rgba(42, 43, 46, 1);}
.chacoal { color: rgba(59, 63, 74, 1);}
.steel { color: rgba(129, 137, 157, 1);}
.silver { color: rgba(192, 196, 206, 1);}
.pearl { color: rgba(236, 237, 240, 1);}
.snow { color: rgba(246, 247, 250, 1);}
.white { color: rgba(255, 255, 255, 1);}
.blue { color: rgba(0, 80, 255, 1);}
.water { color: rgba(120, 180, 255, 1);}
.sky { color: rgba(160, 200, 250, 1);}
.green { color: rgba(50, 200, 60, 1);}
.yellow { color: rgba(255, 240, 0, 1);}
.orange { color: rgba(255, 170, 30, 1);}
.pink { color: rgba(255, 145, 160, 1);}
.red { color: rgba(255, 60, 30, 1);}
.navy { color: rgba(28, 37, 80, 1);}
.col { color: rgba(122, 30, 37, 1);}
.col1 { color: rgba(179, 11, 23, 1);}
.col2 { color: rgba(122, 58, 30, 1);}
a { text-decoration: none;}
a:link { color: rgba(255, 255, 255, 1);}
a:visited { color: rgba(255, 255, 255, 1);}
a:active { color: rgba(122, 30, 37, 1);}
a:hover { color: rgba(255, 255, 255, .8);}
.bktotop a { color: rgba(255, 255, 255, 1);}
.nolnk { opacity: .35;}
.sdt { text-shadow: 1px 1px 3px rgba(0, 0, 0, .2);}
.sdt2 { text-shadow: 1px 1px 4px rgba(0, 0, 0, .1);}
.kome li { padding-left: 1em;}
.kome li::before { content: '※ '; margin-left: -1.25em;}
/*etc*/
@media print { .noprint { display: none;} }
.cover { width: 100%; height: 100%; background: url(../img/cover.png) repeat; display: block; position: absolute; top: 0; left: 0; }
.cover img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
.nt_txt { font-size: 0; width: 0; height: 0; overflow: hidden; opacity: 0;}
/*lazyload*/
.lazyload, .lazyloading { opacity: 0;}
.lazyloaded { opacity: 1; transition: all 2500ms;}
/*loader*/
.loader_sp { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%);}
.loader { display: inline-block;}
@-webkit-keyframes ball-scale-multiple { 0% { -webkit-transform: scale(0); transform: scale(0); opacity: 0; } 5% { opacity: 1; } 100% { -webkit-transform: scale(1); transform: scale(1); opacity: 0; } }
@keyframes ball-scale-multiple { 0% { -webkit-transform: scale(0); transform: scale(0); opacity: 0; } 5% { opacity: 1; } 100% { -webkit-transform: scale(1); transform: scale(1); opacity: 0; } }
.ball-scale-multiple { position: relative; -webkit-transform: translateY(-30px); transform: translateY(-30px); }
.ball-scale-multiple > div:nth-child(2) { -webkit-animation-delay: -0.4s; animation-delay: -0.4s; }
.ball-scale-multiple > div:nth-child(3) { -webkit-animation-delay: -0.2s; animation-delay: -0.2s; }
.ball-scale-multiple > div { background-color: rgba(122, 30, 37, .5); width: 15px; height: 15px; border-radius: 100%; margin: 2px; -webkit-animation-fill-mode: both; animation-fill-mode: both; position: absolute; left: -30px; top: 0px; opacity: 0; margin: 0; width: 60px; height: 60px; -webkit-animation: ball-scale-multiple 1s 0s linear infinite; animation: ball-scale-multiple 1s 0s linear infinite; }
/*etc*/
.fadeup { padding-top: .5em; opacity: .75;}
.fadein { opacity: 0;}
@-webkit-keyframes main_kira { 0 { opacity: 0;} 100% { opacity: 1;}}
@keyframes main_kira { 0 { opacity: 0;} 100% { opacity: 1;}}
@-webkit-keyframes main_kira2 { 0 { opacity: 0;} 50% { opacity: 1;} 100% { opacity: 0.5;}}
@keyframes main_kira2 { 0 { opacity: 0;} 50% { opacity: 1;} 100% { opacity: 0.5;}}

/*	COMMON
============================== */
html { overflow-y: visible; min-height: 100%;}
body { width: 100%; min-height: 100vh; position: relative; margin: 0!important; background-color: rgba(0, 0, 0, 1); color: rgba(255, 255, 255, 1); background-repeat: no-repeat; background-position: center 50%; background-size: contain; background-image: url(../img/bg-s.jpg); font-family: 'Noto Sans JP', sans-serif; z-index: 0;}
body.fixed { position: fixed; width: 100%; height: 100%; left: 0;}
body a { text-decoration: none; outline-style: none;}
.fix_bg { width: 100%; height: 100%; position: fixed; background-repeat:no-repeat; background-position: center center; background-size: cover; z-index: -1;}
.fix_bg .fix_bgsp { display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
#container { width: 100%; font-size: 80%; font-weight: 300; overflow: hidden;}
#contents { width: 100%;}
.wrap { width: 100%; max-width: 1400px; margin: 0 auto;}
/*for_W640-*/
@media all and (min-width: 640px) {
body { background-position: center 50%;}
}

/*for_W768-*/
@media all and (min-width: 768px) {
body { background-size: 140%; background-image: url(../img/bg.jpg); background-position: center 52%;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
body { background-position: center 54%;}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
body { background-position: center 51%;}
}
/*for_W1400-*/
@media all and (min-width: 768px) {
body { background-size: 120%; background-image: url(../img/bg-l.jpg); background-position: center 50%;}
}

/*	header
============================== */
#header_sp { box-sizing: border-box; width: 100%; height: 100vh; background-repeat: no-repeat; background-position: bottom center; background-size: cover; background-image: url(../img/main_bg-s.jpg?1); overflow: hidden; opacity: 0; -webkit-animation: main_kira 1000ms linear forwards; animation: main_kira 1000ms linear forwards; animation-delay: 100ms; position: relative; z-index: 1000;}
#header { box-sizing: border-box; width: 100%; height: 100%; margin: 0 auto; position: relative;}
#head_set { width: 100%; max-width: 1280px; margin: 0 auto; position: relative; z-index: 3000;}
#main_pc-kira1sp, #main_pc-kira2sp { display: none;}
#main_kira1sp, #main_kira2sp { display: block;}

#main_kira1sp { width: 100%; position: absolute; top: 0; left: 0; z-index: 1000;}
#main_kira1_1 { width: 100%; height: 0; padding-top: 87.150127226463104%; padding-top: -webkit-calc(685 / 786 * 100%); padding-top: calc(685 / 786 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari1_1s.png?0); position: absolute; top: 0; left: 0; opacity: 0; -webkit-animation: main_kira 500ms linear forwards; animation: main_kira 500ms linear forwards; animation-delay: 1000ms; z-index: 1000;}
#main_kira1_2 { width: 100%; height: 0; padding-top: 87.150127226463104%; padding-top: -webkit-calc(685 / 786 * 100%); padding-top: calc(685 / 786 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari1_2s.png?0); position: absolute; top: 0; left: 0; opacity: 0; -webkit-animation: main_kira 500ms linear forwards; animation: main_kira 500ms linear forwards; animation-delay: 2000ms; z-index: 1000;}

#main_kira2sp { width: 100%; position: absolute; bottom: 0; right: 0; z-index: 1000;}
#main_kira2_1 { width: 100%; height: 0; padding-top: 87.150127226463104%; padding-top: -webkit-calc(685 / 786 * 100%); padding-top: calc(685 / 786 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari2_1s.png); position: absolute; bottom: 0; right: 0; opacity: 0; -webkit-animation: main_kira 500ms linear forwards; animation: main_kira 500ms linear forwards; animation-delay: 500ms; z-index: 1000;}
#main_kira2_2 { width: 100%; height: 0; padding-top: 87.150127226463104%; padding-top: -webkit-calc(685 / 786 * 100%); padding-top: calc(685 / 786 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari2_2s.png); position: absolute; bottom: 0; right: 0; opacity: 0; -webkit-animation: main_kira 500ms linear forwards; animation: main_kira 500ms linear forwards; animation-delay: 1500ms; z-index: 1000;}
#main_kira2_3 { width: 100%; height: 0; padding-top: 87.150127226463104%; padding-top: -webkit-calc(685 / 786 * 100%); padding-top: calc(685 / 786 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari2_3s.png); position: absolute; bottom: 0; right: 0; opacity: 0; -webkit-animation: main_kira 500ms linear forwards; animation: main_kira 500ms linear forwards; animation-delay: 2500ms; z-index: 1000;}
/*scroll*/
#scroll_line { width: 1px; height: 70px; background-color: rgba(255, 255, 255, .5); position: absolute; bottom: 40px; left: 50%;}
#scroll_line0 { width: 0; height: 0; background-color: rgba(255, 255, 255, 0); position: absolute; top: 0; left: 50%;}
#scroll_txt-sp { width: 12%; position: absolute; bottom: 120px; left: 44%; opacity: .9;}
#scroll_txt-img { width: 100%; height: 0; padding-top: 22.689075630252101%; padding-top: -webkit-calc(27 / 119 * 100%); padding-top: calc(27 / 119 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/scroll.png?0);}
/*for_W480-*/
@media all and (min-width: 480px) {
#scroll_txt-sp { width: 8%; left: 46%;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#scroll_txt-sp { width: 60px; left: calc((100% - 60px) / 2);}
}
/*for_W960-*/
@media all and (min-width: 960px) {
#header_sp { background-image: url(../img/main_bg.jpg?1); background-position: top center; -webkit-animation: main_kira 1600ms linear forwards; animation: main_kira 1600ms linear forwards; animation-delay: 100ms;}
#scroll_line { height: 160px; bottom: -80px;}
#scroll_line0 { width: 1px; height: 100px; background-color: rgba(255, 255, 255, .5); position: absolute; top: 0; left: 50%;}
#main_kira1sp, #main_kira2sp { display: none;}
#main_pc-kira1sp, #main_pc-kira2sp { display: block;}
#main_pc-kira1sp { width: 50%; position: absolute; bottom: 0; left: 0; z-index: 1000;}
#main_pc-kira1_1 { width: 100%; height: 0; padding-top: 116.666666666666667%; padding-top: -webkit-calc(1400 / 1200 * 100%); padding-top: calc(1400 / 1200 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari1_1.png?0); position: absolute; bottom: 0; left: 0; opacity: 0; -webkit-animation: main_kira 500ms linear forwards; animation: main_kira 500ms linear forwards; animation-delay: 1500ms; z-index: 1000;}
#main_pc-kira1_2 { width: 100%; height: 0; padding-top: 116.666666666666667%; padding-top: -webkit-calc(1400 / 1200 * 100%); padding-top: calc(1400 / 1200 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari1_2.png); position: absolute; bottom: 0; left: 0; opacity: 0; -webkit-animation: main_kira 500ms linear forwards; animation: main_kira 500ms linear forwards; animation-delay: 2000ms; z-index: 1000;}
#main_pc-kira1_3 { width: 100%; height: 0; padding-top: 116.666666666666667%; padding-top: -webkit-calc(1400 / 1200 * 100%); padding-top: calc(1400 / 1200 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari1_3.png); position: absolute; bottom: 0; left: 0; opacity: 0; -webkit-animation: main_kira 800ms linear forwards; animation: main_kira 800ms linear forwards; animation-delay: 2500ms; z-index: 1000;}
#main_pc-kira2sp { width: 50%; position: absolute; top: 0; right: 0; z-index: 1000;}
#main_pc-kira2_1 { width: 100%; height: 0; padding-top: 116.666666666666667%; padding-top: -webkit-calc(1400 / 1200 * 100%); padding-top: calc(1400 / 1200 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari2_1.png); position: absolute; top: 0; right: 0; opacity: 0; -webkit-animation: main_kira 500ms linear forwards; animation: main_kira 500ms linear forwards; animation-delay: 1000ms; z-index: 1000;}
#main_pc-kira2_2 { width: 100%; height: 0; padding-top: 116.666666666666667%; padding-top: -webkit-calc(1400 / 1200 * 100%); padding-top: calc(1400 / 1200 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari2_2.png); position: absolute; top: 0; right: 0; opacity: 0; -webkit-animation: main_kira 500ms linear forwards; animation: main_kira 500ms linear forwards; animation-delay: 1500ms; z-index: 1000;}
#main_pc-kira2_3 { width: 100%; height: 0; padding-top: 116.666666666666667%; padding-top: -webkit-calc(1400 / 1200 * 100%); padding-top: calc(1400 / 1200 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/main_kirari2_3.png); position: absolute; top: 0; right: 0; opacity: 0; -webkit-animation: main_kira 800ms linear forwards; animation: main_kira 800ms linear forwards; animation-delay: 3000ms; z-index: 1000;}
}
/*for_W1700-*/
@media all and (min-width: 1700px) {
#header_sp { background-position: center center;}
}
/*for_W2100-*/
@media all and (min-width: 2100px) {
#header_sp { background-position: top center;}
}
/*logo*/
h1#logo { display: block; width: 36%; max-width: 240px; position: relative; position: absolute; top: 1.5em; left: 1.5em; opacity: 1; z-index: 3000;}
h1#logo #logo_txt { display: block; width: 100%; height: 0; padding-top: 15.590200445434298%; padding-top: -webkit-calc(70 / 449 * 100%); padding-top: calc(70 / 449 * 100%); background-repeat: no-repeat; background-size: contain; position: relative; z-index: 3000;}
h1#logo #logo_txt a { display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 3000;}
h1#logo #logo_txt a:hover { opacity: .8;}
/*for_W960-*/
@media all and (min-width: 960px) {
h1#logo { top: 3em; left: 3em; z-index: 3000;}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
h1#logo { left: calc((100% - 1280px) / 2);}
}
/*copy*/
#copy { display: block; width: 96%; max-width: 1000px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%); z-index: 10000;}
#copy #copy_txt { display: block; width: 100%; height: 0; padding-top: 56.777251184834123%; padding-top: -webkit-calc(1198 / 2110 * 100%); padding-top: calc(1198 / 2110 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/copy.png?0); opacity: 0; -webkit-animation: title_come 1000ms linear forwards; animation: title_come 600ms linear forwards; animation-delay: 600ms; margin-top: 1.5em;}
@-webkit-keyframes title_come { 0 { opacity: 0;} 100% { opacity: 1; margin-top: 0;}}
@keyframes title_come { 0 { opacity: 0;} 100% { opacity: 1; margin-top: 0;}}
/*for_W960-*/
@media all and (min-width: 960px) {
#copy { width: 98%;}
}
/*_contact*/
#header .mn_contact-smp { display: block; width: 28%; max-width: 200px; position: fixed; top: 1.3em; right: calc(21% + 1.5em); -webkit-animation: title0 10000ms linear forwards; animation: title0 10000ms linear forwards; animation-delay: 10000ms; z-index: 5000;}
#header .mn_contact-smp a { display: block; width: 100%; height: 0; padding-top: 25.663716814159292%; padding-top: -webkit-calc(58 / 226 * 100%); padding-top: calc(58 / 226 * 100%); background-repeat: no-repeat; background-size: contain; z-index: 5000;}
#header .mn_contact-smp a:hover { opacity: .75;}
#header .mn_contact { display: block; width: 28%; max-width: 200px; position: absolute; top: 1.3em; right: calc(21% + 1.5em); -webkit-animation: title0 10000ms linear forwards; animation: title0 10000ms linear forwards; animation-delay: 10000ms; z-index: 5000;}
#header .mn_contact a { display: block; width: 100%; height: 0; padding-top: 25.663716814159292%; padding-top: -webkit-calc(58 / 226 * 100%); padding-top: calc(58 / 226 * 100%); background-repeat: no-repeat; background-size: contain; z-index: 5000;}
#header .mn_contact a:hover { opacity: .75;}
@-webkit-keyframes title0 { 0 { opacity: 1;} 100% { opacity: 1; margin-top: 0;}}
@keyframes title0 { 0 { opacity: 1;} 100% { opacity: 1; margin-top: 0;}}
/*_gl_nav*/
#header #gl_nav { display: none;}
/*_jp-en*/
#header .mn_jp-en { display: block; width: 16%; max-width: 70px; min-height: 34px; position: absolute; top: 1.3em; right: 1.5em; z-index: 1000; background: rgba(0, 0, 0, .18); border-radius: 80px; box-shadow: 0px 0px 50px rgba(0, 0, 0, .65); z-index: 5000;}
#header .mn_jp-en .mn_jp0 { display: block; width: 48%; height: 0; padding-top: 48%; position: absolute; top: 0; left: 0;}
#header .mn_jp-en .mn_jp0 a { display: block; width: 100%; height: 0; padding-top: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/jp0.png?0); position: absolute; top: 0; left: 0;}
#header .mn_jp-en .mn_en0 { display: block; width: 48%; height: 0; padding-top: 48%; position: absolute; top: 0; right: 0;}
#header .mn_jp-en .mn_en0 a { display: block; width: 100%; height: 0; padding-top: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/en0.png?0); position: absolute; top: 0; left: 0;}
#header .mn_jp-en .mn_jp0 a:hover, #header .mn_jp-en .mn_en0 a:hover { opacity: .75;}
#header .mn_jp-en .mn_jp { display: block; width: 48%; height: 0; padding-top: 48%; position: absolute; top: 0; left: 0; background-repeat: no-repeat; background-size: contain; background-image: url(../img/jp.png?0);}
#header .mn_jp-en .mn_en { display: block; width: 48%; height: 0; padding-top: 48%; position: absolute; top: 0; right: 0; background-repeat: no-repeat; background-size: contain; background-image: url(../img/en.png?0);}
/*for_W480-*/
@media all and (min-width: 480px) {
#header .mn_contact-smp { display: block; width: 26%;}
#header .mn_contact { display: block; width: 26%;}
}
/*for_W640-*/
@media all and (min-width: 640px) {
#header .mn_contact-smp { display: block; width: 23%;}
#header .mn_contact { display: block; width: 23%; max-width: 140px;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
/*#header .mn_contact-smp { display: none;}*/
#header .mn_contact { max-width: 90px; top: 1.7em; right: 13%;}
#header #gl_nav { display: block; width: 40%; position: absolute; top: 2.2em; right: 12em; z-index: 5000;}
#header #gl_nav { display: block; width: 38%; position: absolute; top: 2.2em; right: 27%; z-index: 5000;}
#header #gl_nav ul { width: 100%; display: flex; flex-flow: row nowrap; justify-content: flex-end; align-items: center;}
#header #gl_nav #mn_concept { flex-basis: 21%; margin-left: 10%;}
#header #gl_nav #mn_vision { flex-basis: 15.4%; margin-left: 10%;}
#header #gl_nav #mn_work { flex-basis: 12.6%; margin-left: 10%;}
#header #gl_nav #mn_news { flex-basis: 12.6%;}
#header #gl_nav #mn_concept a { display: block; width: 100%; height: 0; padding-top: 21.118012422360248%; padding-top: -webkit-calc(68 / 322 * 100%); padding-top: calc(68 / 322 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/mn_concept.png?0);}
#header #gl_nav #mn_vision a { display: block; width: 100%; height: 0; padding-top: 29.565217391304348%; padding-top: -webkit-calc(68 / 230 * 100%); padding-top: calc(68 / 230 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/mn_vision.png?0);}
#header #gl_nav #mn_work a { display: block; width: 100%; height: 0; padding-top: 35.789473684210526%; padding-top: -webkit-calc(68 / 190 * 100%); padding-top: calc(68 / 190 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/mn_work.png?0);}
#header #gl_nav #mn_news a { display: block; width: 100%; height: 0; padding-top: 35.789473684210526%; padding-top: -webkit-calc(68 / 190 * 100%); padding-top: calc(68 / 190 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/mn_news.png?0);}
#header #gl_nav li a:hover { opacity: .75;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
#header .mn_jp-en { display: block; width: 10%; max-width: 80px; position: absolute; top: 3em; right: 3em; background: rgba(0, 0, 0, 0); border-radius: 80px; box-shadow: 0px 0px 50px rgba(0, 0, 0, 0);}
#header #gl_nav { display: block; width: 38%; position: absolute; top: 3.7em; right: 27%; z-index: 5000;}
#header .mn_contact { max-width: 100px; top: 3.4em; right: 14%; z-index: 5000;}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
#header #gl_nav { width: 36%; right: calc(((100% - 1280px) / 2) + 12% + 12em);}
#header #gl_nav #mn_concept { flex-basis: 16.8%; margin-left: 14%;}
#header #gl_nav #mn_vision { flex-basis: 12.32%; margin-left: 14%;}
#header #gl_nav #mn_work { flex-basis: 10.08%; margin-left: 14%;}
#header #gl_nav #mn_news { flex-basis: 10.08%;}
#header .mn_jp-en { right: calc(((100% - 1280px) / 2) + 1.5em);}
#header .mn_contact { max-width: 120px; top: 3.4em; right: 11%;}
}
/*news_pu*/
#news_pu { box-sizing: border-box; width: 92%; max-width: 500px; background: rgba(255, 255, 255, .8); padding: .75em 3em .75em 2em; border-radius: 10px; position: absolute; left: 4%; bottom: 20px; z-index: 1500; font-size: 90%; line-height: 160%; letter-spacing: .03em;}
#news_pu a { color: rgba(0, 0, 0, 1);}
#news_pu a:hover { color: rgba(0, 0, 0, .75);}
#news_pu a::after { content: ''; width: 20px; height: 20px; background-repeat: no-repeat; background-size: contain; background-image: url(../img/ya_white.png); position: absolute; right: 10px; top: 50%; margin-top: -10px; filter: brightness(10%);}
#news_pu.blank a::after { content: ''; width: 20px; height: 20px; background-repeat: no-repeat; background-size: contain; background-image: url(../img/blank.png); position: absolute; right: 10px; top: 50%; margin-top: -10px; filter: brightness(10%);}
#news_pu #star { width: 36px; height: 36px; background-repeat: no-repeat; background-size: contain; background-image: url(../img/news_star.png); position: absolute; top: -12px; left: -12px;}
#news_pu #blk_txt { font-size: 85% !important; color: rgba(0, 0, 0, .4); white-space: nowrap;}
/*for_W480-*/
@media all and (min-width: 480px) {
#news_pu { font-size: 96%; letter-spacing: .05em;}
}
/*for_W640-*/
@media all and (min-width: 640px) {
#news_pu { font-size: 98%; letter-spacing: .05em; left: calc(96% - 500px);}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#news_pu { font-size: 110%; letter-spacing: .05em; left: calc(96% - 500px); padding: 1em 3.2em 1em 2.5em;}
}


/*	news
============================== */
#news { box-sizing: border-box; width: 100%; max-width: 1280px; margin: 0 auto; padding: 4em 0; position: relative; z-index: 500;}
#news h2 { display: block; width: 38%; max-width: 220px; margin: 0 auto; z-index: 1100;}
#news h2 .h2_txt { display: block; width: 100%; height: 0; padding-top: 15.822784810126582%; padding-top: -webkit-calc(100 / 632 * 100%); padding-top: calc(100 / 632 * 100%); background-repeat: no-repeat; background-size: contain;}
#news .cont { width: 92%; margin: 0 auto; padding: 2em 0;}
#news .cont ul { width: 100%;}
#news .cont li { width: 100%; border-bottom: .5px solid rgba(255, 255, 255, .75); position: relative;}
#news .cont li:first-child { border-top: .5px solid rgba(255, 255, 255, .75);}
#news .cont li a { width: 100%; height: 100%; display: block; position: relative; z-index: 1200;}
#news .cont li a::after { content: ''; width: 20px; height: 20px; background-repeat: no-repeat; background-size: contain; background-image: url(../img/ya_white.png); position: absolute; right: 10px; top: 50%; margin-top: -10px;}
#news .cont li.blank a::after { content: ''; width: 20px; height: 20px; background-repeat: no-repeat; background-size: contain; background-image: url(../img/blank.png); position: absolute; right: 10px; top: 50%; margin-top: -10px;}
#news .cont li a:hover::after, #news .cont li.blank a:hover::after { opacity: .8;}
#news .cont li a .li_cont { width: calc(100% - 40px); padding: 1.5em 0; line-height: 160%; letter-spacing: .05em;}
#news .cont li a .li_date { font-weight: 600; padding-bottom: .5em; font-size: 95%;}
#news .cont li a .blk_txt { padding: .5em 0 0 0; font-size: 90% !important; color: rgba(255, 255, 255, .3); white-space: nowrap;}

#news_lnk { width: 32%; max-width: 180px; height: 44px; border: 1px solid rgba(255, 255, 255, 1); border-radius: 50px; position: absolute; bottom: 0; right: 4%;}
#news_lnk .lnk_imgsp { display: block; width: 52%; max-width: 110px; position: absolute; top: 40%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%);}
#news_lnk .lnk_img { display: block; width: 100%; height: 0; padding-top: 13.888888888888889%; padding-top: -webkit-calc(40 / 288 * 100%); padding-top: calc(40 / 288 * 100%); background-repeat: no-repeat; background-size: contain; position: absolute; top: 0; left: 0;}
#news_lnk a { width: 100%; height: 100%; display: block; border-radius: 50px; position: absolute; top: 0; left: 0;}
#news_lnk a:hover { background: rgba(255, 255, 255, .2);}
/*for_W640-*/
@media all and (min-width: 640px) {
#news_lnk .lnk_imgsp { position: absolute; top: 35%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%);}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#news_lnk .lnk_imgsp { position: absolute; top: 35%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%);}
#news .cont ul { margin-bottom: 2em;}
#news .cont li a .li_cont { display: flex; flex-flow: row nowrap; justify-content: flex-start; align-items: center;}
#news .cont li a .li_date { box-sizing: border-box; flex-basis: 17%; padding: 0; padding-left: 2%; text-align: left;}
#news .cont li a .li_txt { box-sizing: border-box; flex-basis: 80%; padding: 0;}
#news .cont li.blank a .li_txt { flex-basis: 60%; padding-right: 4%;}
#news .cont li a .blk_txt { padding: 000; text-align: right;}
}
/*for_W830-*/
@media all and (min-width: 830px) {
#news .cont li.blank a .li_txt { flex-basis: 61%;}
}
/*for_W900-*/
@media all and (min-width: 900px) {
#news .cont li.blank a .li_txt { flex-basis: 62%;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
#news h2 {  margin: 8em auto 0 auto;}
#news .cont li a .li_cont { font-size: 120%;}
#news_lnk { height: 50px;}
#news .cont li.blank a .li_txt { flex-basis: 63%;}
}
/*for_W1100-*/
@media all and (min-width: 1100px) {
#news { padding: 6em 0 4em 0;}
#news .cont { padding: 3em 0;}
#news .cont li a .li_cont { font-size: 140%;}
#news .cont li.blank a .li_txt { flex-basis: 61%;}
}
/*for_W1200-*/
@media all and (min-width: 1200px) {
#news .cont li.blank a .li_txt { flex-basis: 62%;}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
#news .cont li a .li_cont { font-size: 160%;}
#news_lnk { height: 60px;}
#news_lnk .lnk_imgsp { width: 60%; max-width: 120px;}
#news .cont li a::after { right: 20px;}
#news .cont li.blank a::after { right: 20px;}
#news .cont li.blank a .li_txt { flex-basis: 63%;}
#news .cont li a .blk_txt { font-size: 80% !important;}
}

/*	concept
============================== */
#concept { box-sizing: border-box; width: 100%; max-width: 1280px; margin: 0 auto; overflow-x: hidden; position: relative; z-index: 500;}
#concept #kirari1 { width: 30%; max-width: 300px; margin: 1em 0 0 1.5em; position: relative; z-index: 500;}
#concept #kirari_img1 { width: 100%; height: 0; padding-top: 137.042925278219396%; padding-top: -webkit-calc(862 / 629 * 100%); padding-top: calc(862 / 629 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari1_1.png); position: relative; z-index: 1000; opacity: 0;}
#concept #kirari_img2 { width: 100%; height: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari1_2.png); position: absolute; top: 0; left: 0; z-index: 1000; opacity: 0;}
#concept #kirari_img3 { width: 100%; height: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari1_3.png); position: absolute; top: 0; left: 0; z-index: 1000; opacity: 0;}
#concept h2 { display: block; width: 38%; max-width: 300px; margin: -6.5em auto 0 auto; position: relative; z-index: 1500;}
#concept h2 .h2_txt { display: block; width: 100%; height: 0; padding-top: 15.822784810126582%; padding-top: -webkit-calc(100 / 632 * 100%); padding-top: calc(100 / 632 * 100%); background-repeat: no-repeat; background-size: contain;}
#concept .cont { width: 75%; text-align: left; line-height: 240%; letter-spacing: .2em; margin: 5em auto 2em auto; font-size: 110%; font-weight: 600; padding-top: 1em; position: relative; z-index: 500;}
#concept .cont p { padding: .15em 0 1.5em 0;}
/*for_W410-*/
@media all and (min-width: 410px) {
#concept h2 { margin: -7.3em auto 0 auto;}
}
/*for_W480-*/
@media all and (min-width: 480px) {
#concept h2 { margin: -8.5em auto 0 auto;}
#concept .cont { width: 60%;}
}
/*for_W520-*/
@media all and (min-width: 520px) {
#concept h2 { margin: -9.5em auto 0 auto;}
}
/*for_W560-*/
@media all and (min-width: 560px) {
#concept h2 { margin: -10em auto 0 auto;}
}
/*for_W600-*/
@media all and (min-width: 600px) {
#concept h2 { margin: -10.5em auto 0 auto;}
}
/*for_W640-*/
@media all and (min-width: 640px) {
#concept { padding-bottom: 0;}
#concept h2 { margin: -11em auto 0 auto;}
#concept .cont { width: 50%; font-size: 120%; line-height: 220%; margin: 5em auto;}
}
/*for_W680-*/
@media all and (min-width: 680px) {
#concept h2 { margin: -12em auto 0 auto;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#concept { position: relative;}
#concept h2 { margin: 0; position: absolute; top: 12em; left: 30%;}
#concept .cont { width: 50%; font-size: 130%; margin: -5em 0 6em 30%; line-height: 240%;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
#concept h2 { margin: 0; position: absolute; top: 14.5em; left: 30%;}
#concept .cont { width: 60%; font-size: 140%; line-height: 240%; margin: -4em 0 6em 30%;}
}
/*for_W1000-*/
@media all and (min-width: 1000px) {
#concept h2 { margin: 0; position: absolute; top: 15em; left: 30%;}
#concept .cont { margin: -4em 0 8em 30%;}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
#concept #kirari1 { margin: 0;}
#concept h2 { margin: 0; position: absolute; top: 18em; left: 20%;}
#concept .cont { width: 60%; font-size: 190%; line-height: 200%; margin: -3em 0 4em 25%;}
}
/*for_W1400-*/
@media all and (min-width: 1400px) {
#concept .cont { margin: -4em 0 4em 25%;}
}

/*	vision
============================== */
#vision { box-sizing: border-box; width: 100%; overflow-x: hidden; padding-top: 4em; position: relative; z-index: 100;}
#vision #kirari2 { width: 32%; max-width: 240px; position: absolute; top: 1em; right: -1em;}
#vision #kirari2_img1 { width: 100%; height: 0; padding-top: 137.042925278219396%; padding-top: -webkit-calc(716 / 476 * 100%); padding-top: calc(716 / 476 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari2_1.png); opacity: 0;}
#vision #kirari2_img2 { width: 100%; height: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari2_2.png); position: absolute; top: 0; left: 0; opacity: 0;}
#vision #kirari2_img3 { width: 100%; height: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari2_3.png); position: absolute; top: 0; left: 0; opacity: 0;}
#vision h2 { display: block; width: 14%; max-width: 90px; padding-bottom: 1em; margin: 0 auto;}
#vision h2 .h2_txt { display: block; width: 100%; height: 0; padding-top: 20.858895705521472%; padding-top: -webkit-calc(34 / 163 * 100%); padding-top: calc(34 / 163 * 100%); background-repeat: no-repeat; background-size: contain;}
#vision h2 .v_line { display: block; width: 30px; height: 1px; background-color: rgba(255, 255, 255, .5); margin: 1em auto;}
#vision .title_j { width: 100%; text-align: center; font-size: 160%; letter-spacing: .1em; font-weight: 600; position: relative; z-index: 100;}
#vision .cont { width: 92%; max-width: 1280px; margin: 2em auto; text-align: left; line-height: 210%; letter-spacing: .05em; font-weight: 300; font-size: 105%;}
#vision .cont p { padding: 0 0 1em 0;}
/*for_W480-*/
@media all and (min-width: 480px) {
#vision .cont { width: 80%; line-height: 240%; font-size: 110%; left: 10%;}
#vision .cont p { padding: 0 0 2em 0;}
}
/*for_W520-*/
@media all and (min-width: 520px) {
#vision .cont { font-size: 120%;}
}
/*for_W640-*/
@media all and (min-width: 640px) {
#vision { padding-top: 2em; margin-bottom: 8em;}
#vision h2 { display: block; width: 10%; padding: 5em 0 1em 0;}
#vision .title_j { font-size: 180%;}
#vision .cont { width: 70%; line-height: 250%; font-size: 130%;}
#vision .cont p { padding: 0 0 2em 0;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#vision { padding-top: 5em; margin-top: -5em; margin-bottom: 0;}
#vision h2 { width: 8%;}
#vision .cont { width: 80%; line-height: 260%; font-size: 130%;}
#vision .cont p { padding: 0 0 1em 0;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
#vision .title_j { font-size: 200%;}
#vision .cont { width: 80%; line-height: 200%; font-size: 130%;}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
#vision { padding-top: 5em; margin-top: 0; margin-bottom: 0;}
#vision .title_j { font-size: 240%;}
#vision .cont { line-height: 180%; font-size: 180%;}
}

/*	work
============================== */
#work { box-sizing: border-box; width: 100%; max-width: 1200px; margin: 0 auto; padding-top: 9em; overflow-x: hidden; position: relative; z-index: 100;}
#work #kirari3 { width: 44%; max-width: 300px; position: absolute; top: 0; left: -1em; z-index: 10;}
#work #kirari3_img3 { width: 100%; height: 0; padding-top: 110.211946050096339%; padding-top: -webkit-calc(572 / 519 * 100%); padding-top: calc(572 / 519 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari3_3.png); opacity: 0;}
#work #kirari3_img2 { width: 100%; height: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari3_2.png); position: absolute; top: 0; left: 0; opacity: 0;}
#work #kirari3_img1 { width: 100%; height: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari3_1.png); position: absolute; top: 0; left: 0; opacity: 0;}

#work h2 { display: block; width: 14%; max-width: 90px; padding: 1em 0; margin: 0 auto; }
#work h2 .h2_txt { display: block; width: 100%; height: 0; padding-top: 20.858895705521472%; padding-top: -webkit-calc(34 / 163 * 100%); padding-top: calc(34 / 163 * 100%); background-repeat: no-repeat; background-size: contain;}
#work h2 .w_line { display: block; width: 30px; height: 1px; background-color: rgba(255, 255, 255, .5); margin: 1em auto;}
#work .title_j { text-align: center; font-size: 160%; font-weight: 600; letter-spacing: .1em; position: relative; z-index: 100;}
#work #work_list ul { width: 92%; margin: 3em auto 2em auto;}
#work #work_list li { width: 100%; height: 90px; border-radius: 500px; margin-top: 1em; position: relative;}
#work #work_list li::after { content: ''; width: 100%; height: 90px; border-radius: 500px; position: absolute; top: -0.3em; left: -0.3em; border: .5px solid rgba(255, 255, 255, .8);}
#work #work_list #li_drama { opacity: 1; margin-left: 0; background-color: rgba(96, 159, 255, .24);}
#work #work_list #li_variety { opacity: 1; margin-left: 0; background-color: rgba(255, 200, 92, .24);}
#work #work_list #li_newsinfo { opacity: 1; margin-left: 0; background-color: rgba(255, 140, 140, .24);}
#work #work_list #li_anime { opacity: 1; margin-left: 0; background-color: rgba(255, 171, 237, .24);}
#work #work_list #li_movie { opacity: 1; margin-left: 0; background-color: rgba(110, 234, 90, .24);}
#work #work_list li a { display: block; width: 100%; height: 100%; border-radius: 500px; display: flex; flex-flow: row nowrap; justify-content: center; align-items: center; position: absolute; top: 0; left: 0; z-index: 1000;}
#work #work_list li a:hover { background: rgba(0, 0, 0, .35);}
#work #work_list li a .li_text { display: block; flex-basis: 48%; text-align: center; font-size: 120%; font-weight: 600;}
#work #work_list li a .li_icon { display: block; flex-basis: 21%;}
#work #work_list li a .li_icon .img { display: block; width: 100%; height: 0; padding-top: 100%; background-repeat: no-repeat; background-size: contain;}
#work #work_list li a .li_ya { display: block; flex-basis: 7%; margin-left: 7%; margin-right: 6%;}
#work #work_list li a .li_ya .img { display: block; width: 100%; height: 0; padding-top: 100%; background-repeat: no-repeat; background-size: contain;}
/*for_W440-*/
@media all and (min-width: 440px) {
#work #work_list li, #work #work_list li::after { height: 110px;}
}
/*for_W640-*/
@media all and (min-width: 640px) {
#work #kirari3 { position: absolute; top: 40%; left: -2em;}
#work h2 { display: block; width: 10%; padding: 5em 0 1em 0;}
#work .title_j { font-size: 180%; font-weight: 600;}
#work #work_list { width: 92%; height: 0; padding-top: 56%; position: relative; margin: 4em 0 2em 6%;}
#work #work_list ul { width: 100%; margin: 0 auto; display: flex; flex-flow: row wrap; justify-content: center; align-items: center; position: absolute; top: 0; left: 0;}
#work #work_list li { width: 28%; height: 0; padding-top: 28%; flex-basis: 28%; border-radius: 800px; margin: 0 5% 1em 0; position: relative;}
#work #work_list li::after { content: ''; width: 100%; height: 100%; border-radius: 800px; position: absolute; top: -0.5em; left: -0.5em; border: 1px solid rgba(255, 255, 255, .8);}
#work #work_list #li_drama, #work #work_list #li_variety, #work #work_list #li_newsinfo, #work #work_list #li_anime, #work #work_list #li_movie { margin-left: 0;}
#work #work_list li a { position: absolute; top: 0; left: 0;}
#work #work_list li a .li_text { width: 100%; flex-basis: 100%; font-size: 100%; position: absolute; top: 2em; left: -0.5em; text-align: center;}
#work #work_list li a .li_icon { width: 42%; flex-basis: 42%; position: absolute; top: 50%; left: 48%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%);}
#work #work_list li a .li_ya { width: 10%; flex-basis: 10%; margin-left: 0; margin-right: 0; position: absolute; bottom: 2.4em; left: 43%;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#work { padding-top: 5em; margin-top: -2em;}
#work h2 { width: 8%;}
#work #work_list li a .li_text { font-size: 110%; top: 2.5em; left: 0;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
#work .title_j { font-size: 200%;}
#work #work_list li a .li_text { font-size: 130%;}
#work #work_list li a .li_icon { width: 48%; flex-basis: 48%;}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
#work { background-position: top  42% left -5%; background-size: 20%;}
#work #kirari3 { left: 0;}
#work .title_j { font-size: 240%;}
#work #work_list li a .li_text { font-size: 180%;}
#work #work_list li a .li_ya { bottom: 3.5em;}
}

/*_collabo*/
#collabo_txt { width: 92%; margin: 0 auto; text-align: center; font-size: 140%; letter-spacing: .05em; line-height: 160%; font-weight: 600; padding: 2em 0 0 0;  position: relative; z-index: 100;}
#collabo_set { box-sizing: border-box; width: 92%; max-width: 1280px; margin: 2em auto 0 auto; background: rgba(255, 255, 255, 1); padding: .5em .5em 2em .5em; position: relative; z-index: 100;}
#collabo_set .c_title { font-size: 115%; text-align: center; font-weight: 600; padding: 1em 0; color: rgba(0, 0, 0, 1);}
#collabo_set .c_line { width: 60px; height: 1px; background-color: rgba(0, 0, 0, .8); margin: 0 auto 1em auto;}
#collabo_set ul { width: 66%; margin: 0 auto; display: flex; flex-flow: row wrap; justify-content: space-between; align-items: center;}
#collabo_set li { flex-basis: 45%; text-align: center;}
#collabo_set li .li_img { width: 100%; height: 0; padding-top: 66.079295154185022%; padding-top: -webkit-calc(300 / 454 * 100%); padding-top: calc(300 / 454 * 100%); background-repeat: no-repeat; background-size: contain;}
/*for_W640-*/
@media all and (min-width: 640px) {
#collabo_txt { letter-spacing: .15em; line-height: 160%; padding: .5em 0 1.5em 0;}
#collabo_set .c_title { font-size: 130%;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#collabo_txt { padding: 1em 0 2em 0;}
#collabo_set { padding: 1em .5em 2.5em .5em;}
#collabo_set .c_title { font-size: 140%;}
#collabo_set .c_line { width: 100px;}
#collabo_set ul { width: 80%; margin-top: 2em;}
#collabo_set li { flex-basis: 28%; margin-bottom: .5em; text-align: center;}
#collabo_set #item1 { order: 1;}
#collabo_set #item2 { order: 2;}
#collabo_set #item3 { order: 3;}
#collabo_set #item4 { order: 4;}
#collabo_set #item5 { order: 7;}
#collabo_set #item6 { order: 5;}
#collabo_set #item7 { order: 6;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
#collabo_set .c_title { font-size: 150%;}
#collabo_set .c_line { width: 140px;}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
#collabo_txt { font-size: 200%; letter-spacing: .05em; line-height: 160%; padding: 1em 0 2em 0;}
#collabo_set { padding: 1em 3em 6em 3em;}
#collabo_set .c_title { font-size: 200%;}
#collabo_set .c_line { width: 180px;}
}

/*	contact
============================== */
/*.contact_all { opacity: 0;}*/
.contact_sp { width: 100%; max-width: 1280px; text-align: center; margin: 0 auto 2em auto; position: relative; z-index: 100;}
.contact_sp .contact_txt { font-size: 110%; line-height: 180%; letter-spacing: .1em; font-weight: 600;}
.btn_contact a { display: block; width: 80%; max-width: 360px; height: 60px; margin: 1em auto; border-radius: 40px; background: rgba(255, 255, 255, .6); position: relative; z-index: 100;}
.btn_contact a .btn_contact-txtsp { display: block; width: 33%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%);}
.btn_contact a .btn_contact-txt { display: block; width: 100%; height: 0; padding-top: 16%; padding-top: -webkit-calc(32 / 200 * 100%); padding-top: calc(32 / 200 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/contact_btntxt.png);}
.btn_contact a .btn_contact-txtsp::after { content: ''; width: 20px; height: 20px; background-repeat: no-repeat; background-size: contain; background-image: url(../img/ya.png); position: absolute; top: 50%; left: 120%; transform: translate(0, -50%); -webkit- transform: translate(0, -50%);}
.btn_contact a:hover { background: rgba(255, 255, 255, .8);}
#btm_contact-sp { display: none;}
/*for_W640-*/
@media all and (min-width: 640px) {
.contact_sp { margin-top: -12em;}
.contact_sp .contact_txt { font-size: 130%; line-height: 200%; letter-spacing: .15em; padding-bottom: 1em;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#vsu { padding-bottom: 3em;}
.contact_all { width: 100%; max-width: 1280px; margin: 0 auto; display: flex; flex-flow: row nowrap; justify-content: flex-end; align-items: center; text-align: right;}
.contact_sp { flex-basis: 60%; padding-right: 2%; margin: 0;}
.contact_sp .contact_txt { font-size: 140%; line-height: 160%; font-weight: 300; letter-spacing: .1em; text-align: right;}
.btn_contact { flex-basis: 18%; margin-right: 6%; max-width: 200px;}
.btn_contact a { width: 100%; height: 0; padding-top: 100%; margin: 1em auto; border-radius: 100%; background: rgba(255, 255, 255, 0); border: 1px solid rgba(255, 255, 255, .5); position: relative; z-index: 100;}
.btn_contact a .btn_contact-txtsp { width: 60%; top: 55%;}
.btn_contact a .btn_contact-txt { display: block; width: 100%; height: 0; padding-top: 57.657657657657658%; padding-top: -webkit-calc(128 / 222 * 100%); padding-top: calc(128 / 222 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/contact_btntxt-w.png);}
.btn_contact a .btn_contact-txtsp::after { content: ''; width: 20px; height: 20px; background-repeat: no-repeat; background-size: contain; background-image: url(../img/ya_white.png); position: absolute; top: 70%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%);}
.btn_contact a:hover {background: rgba(255, 255, 255, .2);}
#btm_contact-sp { width: 20%; max-width: 240px; display: block; position: fixed; bottom: 2em; right: 2em; z-index: 9000;}
#btm_contact-sp a { display: block; width: 100%; height: 0; padding-top: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/contact_btn.png);}
#btm_contact-sp a:hover { opacity: .75;}
}
/*for_W880-*/
@media all and (min-width: 880px) {
.contact_all { margin-top: -3em;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
.contact_all { margin-top: -2em;}
.contact_sp .contact_txt { font-size: 160%;}
.btn_contact a { border: 1px solid rgba(255, 255, 255, 1);}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
.contact_all { margin-top: 0;}
.contact_sp .contact_txt { font-size: 180%;}
.btn_contact { flex-basis: 14%; margin-right: 10%;}
}

/*	footer
============================== */
#footer { box-sizing: border-box; width: 100%; padding: 6em 0 4em 0; position: relative; overflow: hidden;}
#footer .contact_txt { font-size: 140%; line-height: 140%; letter-spacing: .05em; text-align: center; padding-bottom: .5em; font-weight: 600;}
#footer .btn_contact a { background: rgba(255, 255, 255, .8);}
#footer .btn_contact a:hover {background: rgba(255, 255, 255, .9);}
#footer #pp { padding: 5em 0 3em 0; text-align: center; font-weight: 300;}
#footer #pp a { text-align: center; color: rgba(124, 124, 124, 1); border-bottom: 1px solid rgba(124, 124, 124, .7);}
#footer #pp a:hover { color: rgba(130, 130, 130, 1); border-bottom: 1px solid rgba(130, 130, 130, .7);}
#footer #cr { padding: 0 5%; text-align: center; font-weight: 300; color: rgba(124, 124, 124, 1); line-height: 160%; font-size: 94%;}
#footer #cr a { color: rgba(124, 124, 124, 1);}
#footer #cr a:hover { color: rgba(130, 130, 130, 1);}

#footer #sns_sp { box-sizing: border-box; width: 100%; max-width: 880px; margin: 0 auto; padding: 8em 0 4em 0; text-align: center; position: relative; z-index: 1000;}
#footer #sns_sp h3 { font-size: 120%; font-weight: 600; letter-spacing: .05em; padding-bottom: 1em;}
#footer #sns_sp ul { width: 70%; margin: 0 auto 3em auto;}
#footer #sns_sp li { width: 100%; height: 62px; margin: 1em auto 1.5em auto; border: 1px solid rgba(255, 255, 255, 1); border-radius: 100px;}
#footer #sns_sp li a { width: 100%; height: 100%; display: block; border-radius: 100px; position: relative;}
#footer #sns_sp li a:hover { background: rgba(255, 255, 255, .1);}
#footer #sns_sp li a .act { display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%); font-size: 114%; letter-spacing: .05em; padding-left: 36px;}
#footer #sns_sp li a #sns_tw::before { content: ''; width: 25px; height: 25px; background-repeat: no-repeat; background-size: contain; background-image: url(../img/sns_twitter.png); position: absolute; top: -4px; left: 0;}
#footer #sns_sp li a #sns_ig::before { content: ''; width: 25px; height: 25px; background-repeat: no-repeat; background-size: contain; background-image: url(../img/sns_instagram.png); position: absolute; top: -4px; left: 0;}
/*for_W640-*/
@media all and (min-width: 640px) {
#footer { padding: 5em 0;}
#footer .contact_txt { font-size: 150%; letter-spacing: .15em;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#footer { background-position: bottom  2em right -10%;}
#kirari4 { width: 50%;}
#footer .contact_all { width: 100%; display: block; text-align: center;}
#footer .btn_contact a { background: rgba(255, 255, 255, 0); border: 1px solid rgba(255, 255, 255, .5);}
#footer .btn_contact a:hover {background: rgba(255, 255, 255, .2);}
#footer .contact_txt { width: 100%;}
#footer .btn_contact { width: 18%; margin:1em auto;}
#footer #pp { padding: 0 0 3em 0;}
#footer #sns_sp { display: flex; flex-flow: row nowrap; justify-content: space-between; align-items: center; padding: 8em 0 0 0;}
#footer #sns_sp h3 { flex-basis: 36%; padding-bottom: 3em;}
#footer #sns_sp ul { flex-basis: 60%; display: flex; flex-flow: row nowrap; justify-content: flex-end; align-items: center;}
#footer #sns_sp li { flex-basis: 45%;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
#footer .contact_all { margin-top: 0;}
#footer .contact_txt { font-size: 160%;}
#footer .btn_contact a { border: 1px solid rgba(255, 255, 255, 1);}
#footer #pp { font-size: 110%;}
#footer #cr { font-size: 100%;}
}
/*for_W1280-*/
@media all and (min-width: 1280px) {
#footer .contact_txt { font-size: 240%; padding-top: .5em;}
#footer .btn_contact { width: 14%;}
#footer #pp { font-size: 140%;}
#footer #cr { font-size: 110%;}
}

/*_kira4*/
#kira4sp { width: 100%; overflow: hidden;}
#kirari4 { width: 70%; max-width: 500px; position: absolute; bottom: -1em; right: -6em;}
#kirari4_img1 { width: 100%; height: 0; padding-top: 132.538167938931298%; padding-top: -webkit-calc(1389 / 1048 * 100%); padding-top: calc(1389 / 1048 * 100%); background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari4_1.png); position: relative; opacity: 0;}
#kirari4_img2 { width: 100%; height: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari4_2.png); position: absolute; bottom: 0; right: 0; opacity: 0;}
#kirari4_img3 { width: 100%; height: 100%; background-repeat: no-repeat; background-size: contain; background-image: url(../img/kirari4_3.png); position: absolute; top: 0; left: 0; opacity: 0;}
/*for_W640-*/
@media all and (min-width: 640px) {
#kirari4 { width: 60%;}
}
/*for_W768-*/
@media all and (min-width: 768px) {
#kirari4 { width: 50%;}
}
/*for_W960-*/
@media all and (min-width: 960px) {
#kirari4 { width: 40%; max-width: 400px;}
}

