@charset "UTF-8";
/* ============================================================== base ============================================================ */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html { line-height: 1.15; -webkit-text-size-adjust: 100%; }

body { margin: 0; }

h1 { font-size: inherit; margin: 0; }

hr { box-sizing: content-box; height: 0; overflow: visible; }

pre { font-family: monospace,monospace; font-size: 1em; }

a { background-color: transparent; }

abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; }

b, strong { font-weight: bolder; }

code, kbd, samp { font-family: monospace,monospace; font-size: 1em; }

small { font-size: 80%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -.25em; }

sup { top: -.5em; }

img { border-style: none; }

button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0; }

button, input { overflow: visible; }

button, select { text-transform: none; }

[type=button], [type=reset], [type=submit], button { -webkit-appearance: button; }

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner { border-style: none; padding: 0; }

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring { outline: 1px dotted ButtonText; }

fieldset { padding: .35em .75em .625em; }

legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }

progress { vertical-align: baseline; }

textarea { overflow: auto; }

[type=checkbox], [type=radio] { box-sizing: border-box; padding: 0; }

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button { height: auto; }

[type=search] { -webkit-appearance: textfield; outline-offset: -2px; }

[type=search]::-webkit-search-decoration { -webkit-appearance: none; }

::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }

details { display: block; }

summary { display: list-item; }

template { display: none; }

[hidden] { display: none; }

/*# sourceMappingURL=normalize.min.css.map */
body { word-wrap: break-word; }

section, main { display: block; }

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; outline: none; }

i, em { font-style: normal; }

table { border-collapse: collapse; }

li { list-style: none; }

img { max-width: 100%; line-height: 0; }

* { background-repeat: no-repeat; background-position: 50% 50%; background-size: cover; }

a { outline: none; }

/*   ============================================================== contents ============================================================ */
/* common.scss
============================== */
html, body { height: 100%; }

body { background: #fff; color: #2c2e2f; font-family: YakuHanJP,-apple-system, BlinkMacSystemFont,"游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; font-size: 14px; line-height: 1.8; word-wrap: break-word; }

a { color: inherit; text-decoration: none; line-height: 1; }

img { max-width: 100%; background-repeat: no-repeat; background-position: 50% 50%; background-size: cover; line-height: 0; }

.clearfix::after { content: ""; display: block; clear: both; }

::selection { background: #ccc; color: #2c2e2f; }

::-moz-selection { background: #ccc; color: #2c2e2f; }

.svg-parts { width: 0; height: 0; pointer-events: none; position: absolute; bottom: 0; }

.svg-parts .svg-symbol { display: none; }

.btn { text-align: center; }

.btn-base-style, .btn--main, .btn--sub { -webkit-appearance: none; -moz-appearance: none; appearance: none; display: inline-block; border-radius: 3em; font-size: 1.1em; border: none; cursor: pointer; text-decoration: none !important; }

.btn--main { background: linear-gradient(135deg, #333, #111); color: #fff; margin: 1em 0; padding: 1.4em 2em; font-style: normal; }

@media screen and (min-width: 756px) and (max-width: 961px) { .btn--main { min-width: 50%; } }

.btn--main:hover { opacity: 1 !important; }

.btn--sub { border: 1px solid #2c2e2f; color: #2c2e2f; margin: 1em 0; padding: 1.2em 2em; background-color: rgba(255, 255, 255, 0.8); }

@media screen and (min-width: 756px) and (max-width: 961px) { .btn--sub { min-width: 50%; } }

.btn--sub:hover { opacity: 1 !important; }

.txt--link a { text-decoration: underline; transition: .3s; }

.txt--link a:hover { text-decoration: none; }

.txt--basic { margin: 0 0 1em; }

.txt--sub { font-size: 0.85em; line-height: 1.8em; }

.txt--big { font-size: 1.5em; margin: 0 0 1em; }

.left { text-align: left; }

.right { text-align: right; }

.center { text-align: center; }

.bold { font-weight: bold; }

.font--roboto { font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; }

.ph, .thumb { position: relative; line-height: 0; }

.ph img, .thumb img { width: 100%; }

.ph .dummy, .thumb .dummy { display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

.block--pager { text-align: center; letter-spacing: -.5em; font-size: 15px; margin: 0 auto; padding: 0; position: relative; top: 20px; height: 60px; }

.block--pager li { display: inline-block; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; padding: .6em 0; margin: 0 5px; letter-spacing: .03em; vertical-align: middle; position: relative; }

.block--pager li::before { content: ''; display: block; width: 50%; height: 2px; background: #2c2e2f; position: absolute; bottom: 2px; left: 25%; transform: scaleX(0); transform-origin: right; transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }

.block--pager a { display: block; position: relative; text-decoration: none; padding: 0 0.6em; }

.block--pager .pager__item--number { text-align: center; color: #fff; }

.block--pager .pager__item--newer { width: 40px; height: 40px; padding: 0; position: absolute; top: 0; right: 0; }

.block--pager .pager__item--newer a, .block--pager .pager__item--newer span { display: block; width: 100%; height: 100%; padding: 12px 0; position: relative; }

.block--pager .pager__item--newer a::after, .block--pager .pager__item--newer span::after { content: ''; display: block; position: absolute; }

.block--pager .pager__item--newer a::after, .block--pager .pager__item--newer span::after { width: 7px; height: 7px; border-top: 2px solid #555; border-right: 2px solid #555; transform: rotate(45deg); top: 16px; right: 16px; }

.block--pager .pager__item--newer span { opacity: .2; }

.block--pager .pager__item--older { width: 40px; height: 40px; padding: 0; position: absolute; top: 0; left: 0; }

.block--pager .pager__item--older a, .block--pager .pager__item--older span { display: block; width: 100%; height: 100%; padding: 12px 0; position: relative; }

.block--pager .pager__item--older a::after, .block--pager .pager__item--older span::after { content: ''; display: block; position: absolute; }

.block--pager .pager__item--older a::after, .block--pager .pager__item--older span::after { width: 7px; height: 7px; border-top: 2px solid #555; border-right: 2px solid #555; transform: rotate(-135deg); top: 16px; right: 16px; }

.block--pager .pager__item--older span { opacity: .2; }

.block--pager .pager__item--newer, .block--pager .pager__item--older { z-index: 2; }

.block--pager .pager__item--newer::before, .block--pager .pager__item--older::before { display: none !important; }

.block--pager .pager__item--current { font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; font-weight: 700; position: relative; padding: 0.6em; }

.block--pager .pager__item--current::before { transform: scaleX(1); }

.slick-dots { bottom: -30px; }

.slick-dots li { width: 17px; height: 2px; margin: 0 2.5px; padding: 0; transition: .3s; }

.slick-dots li button { width: 100%; }

.slick-dots li button:before { content: ''; width: 100%; height: 2px; background: #ddd; opacity: 1; }

.slick-dots .slick-active button:before { background: #2c2e2f; }

.date, .category { display: inline-block; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; }

.tit { font-size: 15px; line-height: 1.8; letter-spacing: 0.03em; }

.list--info li .date, .list--info li .category { display: inline-block; }

.list--info li.new .tit { position: relative; }

.list--info li.new .tit::after { content: 'New'; display: inline-block; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; font-size: 20px; color: #4ad4ea; padding-left: 5px; }

.list--info li a { display: block; overflow: hidden; text-decoration: none; }

.list--info li a:hover { opacity: 0.6; }

.list--info li .list--txt { display: block; padding: 15px 0; border-bottom: 1px solid #ddd; }

.form--post dt { margin: 3em 0 1em; }

.form--post dd { margin: 0 0 1em; }

.block--error { color: #f00; background: rgba(204, 0, 0, 0.15); padding: 10px; border-radius: 5px; }

/* placeholder */
::-webkit-input-placeholder { color: #888; }

::-moz-placeholder { color: #888; opacity: 1; }

:-ms-input-placeholder { color: #888; }

:-moz-placeholder { color: #888; }

/* autofill */
input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill { -webkit-box-shadow: 0 0 0px 1000px #fff inset; }

/* input */
input[type="text"], input[type="tel"], input[type="email"], input[type="password"], input[type="number"], button { font-family: YakuHanJP,-apple-system, BlinkMacSystemFont,"游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; font-size: 14px; line-height: 1.8; -webkit-appearance: none; display: inline-block; width: 100%; max-width: 100%; background: transparent; box-shadow: none; border: 1px solid #2c2e2f; border-radius: 0.3em; padding: 0.5em; color: #2c2e2f; }

input[type="text"]:focus, input[type="tel"]:focus, input[type="email"]:focus, input[type="password"]:focus, input[type="number"]:focus, button:focus { border-color: #2c2e2f; }

input[type="text"].form__error, input[type="tel"].form__error, input[type="email"].form__error, input[type="password"].form__error, input[type="number"].form__error, button.form__error { background: #fff0ea; color: #f33; border-color: #f33; }

input[type="text"].form__error:focus, input[type="tel"].form__error:focus, input[type="email"].form__error:focus, input[type="password"].form__error:focus, input[type="number"].form__error:focus, button.form__error:focus { background: transparent; color: inherit; border-color: inherit; }

input[type="text"][disabled], input[type="tel"][disabled], input[type="email"][disabled], input[type="password"][disabled], input[type="number"][disabled], button[disabled] { background: #ddd; border: none; opacity: 0.5; }

input[readonly="readonly"], input[readonly="readonly"] { border: none; background: #fff; }

.input--half { width: 50% !important; }

.input--quarter { width: 25% !important; }

button { border: none; line-height: 1; }

/* textarea */
textarea { font-family: YakuHanJP,-apple-system, BlinkMacSystemFont,"游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; font-size: 14px; line-height: 1.8; -webkit-appearance: none; display: inline-block; width: 100%; max-width: 100%; background: transparent; box-shadow: none; border: 1px solid #2c2e2f; border-radius: 0.3em; padding: 0.5em; height: 10em; }

textarea:focus { border-color: #2c2e2f; }

textarea.form__error { background: #fff0ea; color: #f33; border-color: #f33; }

textarea.form__error:focus { background: transparent; color: inherit; border-color: inherit; }

textarea[disabled] { background: #ddd; border: none; opacity: 0.5; }

/* select */
.form__select { display: inline-block; position: relative; }

.form__select select { font-family: YakuHanJP,-apple-system, BlinkMacSystemFont,"游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; font-size: 14px; line-height: 1.8; -webkit-appearance: none; display: inline-block; width: 100%; max-width: 100%; background: transparent; box-shadow: none; border: 1px solid #2c2e2f; border-radius: 0.3em; padding: 0.5em; padding-right: 1.5em; }

.form__select select:focus { border-color: #2c2e2f; }

.form__select select.form__error { background: #fff0ea; color: #f33; border-color: #f33; }

.form__select select.form__error:focus { background: transparent; color: inherit; border-color: inherit; }

.form__select select[disabled] { background: #ddd; border: none; opacity: 0.5; }

.form__select::after { content: ''; display: inline-block; width: 0.5em; height: 0.5em; border: 1px solid #fff; border-top: none; border-right: none; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); vertical-align: middle; }

.form__select::after { position: absolute; border-color: #2c2e2f; top: 15px; right: 9px; }

/* checkbox */
.form__checkbox label p { font-family: YakuHanJP,-apple-system, BlinkMacSystemFont,"游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; font-size: 14px; line-height: 1.8; display: block; padding: 0.5em; position: relative; cursor: pointer; }

.form__checkbox input[type="checkbox"], .form__checkbox input[type="radio"] { -webkit-appearance: none; width: 0; height: 0; opacity: 0; position: absolute; }

.form__checkbox.form__error { color: #f33; }

.form__checkbox label p { padding-left: 1.6em; }

.form__checkbox label p::before { content: ''; display: inline-block; width: 1.2em; height: 1.2em; border-radius: 0.3em; border: 1px solid #2c2e2f; margin: -0.6em 0 0; position: absolute; top: 50%; left: 0; }

.form__checkbox label p::after { content: ''; display: inline-block; width: 0.8em; height: 0.4em; border: 2px solid #fff; border-top: none; border-right: none; margin: -0.25em 0 0; position: absolute; top: 70%; left: 0.2em; transform: rotate(-45deg); opacity: 0; }

.form__checkbox :checked ~ p::before { background: #2c2e2f; border-color: #2c2e2f; }

.form__checkbox :checked ~ p::after { top: 50%; opacity: 1; }

/* radio */
.form__radio label p { font-family: YakuHanJP,-apple-system, BlinkMacSystemFont,"游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; font-size: 14px; line-height: 1.8; display: block; padding: 0.5em; position: relative; cursor: pointer; }

.form__radio input[type="checkbox"], .form__radio input[type="radio"] { -webkit-appearance: none; width: 0; height: 0; opacity: 0; position: absolute; }

.form__radio.form__error { color: #f33; }

.form__radio label p { padding: 0 0.5em 0 1.6em; }

.form__radio label p::before { content: ''; display: inline-block; width: 1.2em; height: 1.2em; border-radius: 50%; border: 1px solid; margin: -0.6em 0 0; position: absolute; top: 50%; left: 0; }

.form__radio :checked ~ p::before { border-color: #2c2e2f; border-width: 0.3em; }

/* toggle button */
.form__toggle label p { font-family: YakuHanJP,-apple-system, BlinkMacSystemFont,"游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; font-size: 14px; line-height: 1.8; display: block; padding: 0.5em; position: relative; cursor: pointer; }

.form__toggle input[type="checkbox"], .form__toggle input[type="radio"] { -webkit-appearance: none; width: 0; height: 0; opacity: 0; position: absolute; }

.form__toggle.form__error { color: #f33; }

.form__toggle label p { padding-left: 0; position: relative; }

.form__toggle label p::before, .form__toggle label p::after { content: ''; display: block; height: 30px; margin: -15px 0 0; position: absolute; border: 1px solid #2c2e2f; }

.form__toggle label p::before { width: 50px; border-radius: 15px; top: 50%; right: 0; }

.form__toggle label p::after { width: 30px; background: #2c2e2f; box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1); border-radius: 50%; top: 50%; right: 20px; }

.form__toggle :checked ~ p::before { background: #2c2e2f; border-color: #2c2e2f; }

.form__toggle :checked ~ p::after { right: 0; }

/* horizontal */
.form--horizontal li { display: inline-block; }

.form--horizontal label { display: inline-block; margin: 0 0.3em 0 0; }

.form--confirm { margin: 0 0 2em; }

.form--confirm { border: 0.5px solid #d9dde0; border-radius: 6px; padding: 40px 30px 10px; margin-bottom: 40px; }

.form--confirm dt { margin: 0 0 10px; opacity: 0.4; }

.form--confirm dd { margin: 0 0 30px; }

.header .logo { width: 230px; height: 70px; display: block; margin-left: 3%; position: absolute; top: 40px; z-index: 10; }

.header .logo a { display: block; width: 100%; height: 100%; text-indent: -9999em; background: no-repeat center url(/static/fcopen/fanplakit/common/logo--fanplakit.svg); background-size: contain; }

.nav { font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; }

.nav li { display: inline-block; font-size: 13px; letter-spacing: 0.08em; margin-right: 1em; }

footer { width: 100%; position: absolute; bottom: 0; left: 0; z-index: 10; padding-bottom: 100px; }

footer .block--mup a img { filter: invert(1); }

footer .block--footer-nav { padding: 0 3%; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; }

footer .block--footer-nav .block--mup { width: 55%; }

footer .block--footer-nav .block--mup a { display: inline-block; width: 130px; position: relative; top: 11px; margin-right: 10px; }

footer .block--footer-nav .block--nav { width: 45%; text-align: right; }

footer .block--footer-nav .block--nav .list--sub-nav { display: inline-block; }

footer .block--footer-nav .block--nav .list--sub-nav li { display: inline-block; margin-right: 10px; }

footer .block--footer-nav .block--nav .list--sub-nav li a { display: block; font-size: 12px; text-decoration: none; color: #2c2e2f; }

footer .block--footer-nav .block--nav .p-mark { display: inline-block; width: 50px; position: relative; top: 20px; }

footer .block--fanplus { padding: 40px 3% 0px; }

footer .block--fanplus .logo a { display: inline-block; width: 200px; }

footer .block--fanplus .copyright { position: absolute; right: 3%; bottom: 64px; }

.content--body { position: relative; z-index: 2; background: none; }

.content--body a { text-decoration: underline; }

.wrap { overflow: hidden; min-height: 100%; position: relative; }

.contents-tit { font-size: 50px; margin-bottom: 10px; }

.list__more { display: none; margin: 30px 0; text-align: right; }

.list__more a { display: inline-block; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; position: relative; }

.section-tit { font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; font-size: 50px; }

.section--detail { width: 80%; max-width: 850px; margin: 0 auto; padding-top: 140px; }

.detail__btn { display: block; margin: 2em auto 0; }

.detail__btn a { display: inline-block; position: relative; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; font-size: 14px; padding-left: 16px; }

.detail__btn a::before { content: ''; display: block; width: 6px; height: 6px; background: #fff; border-radius: 7px; position: absolute; left: 2px; top: 4px; }

.detail__btn a::after { content: 'BACK'; display: block; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; font-size: 14px; }

.youtube { position: relative; width: 100%; padding-top: 56.28%; }

.youtube iframe, .youtube embed { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

.section--list { position: relative; z-index: 1; }

.section--list .no-data { font-size: 13px; }

.pankuzu { width: 100%; margin: 0 auto; padding: 10px 3% 20px; border-bottom: 2px solid; }

.pankuzu .list--pankuzu li { display: inline-block; line-height: 1; position: relative; padding-right: 20px; margin-right: 10px; }

.pankuzu .list--pankuzu li::after, .pankuzu .list--pankuzu li::before { content: ''; width: 7px; height: 1px; background: #2c2e2f; position: absolute; transform: rotate(60deg); right: 0; top: 4px; }

.pankuzu .list--pankuzu li::after { transform: rotate(-60deg); top: 10px; }

.pankuzu .list--pankuzu li:last-of-type::after, .pankuzu .list--pankuzu li:last-of-type::before { display: none; }

.pankuzu .list--pankuzu li a { text-decoration: none; font-size: 15px; font-weight: bold; color: #2c2e2f; }

.limited { display: inline-block; line-height: 1; margin-bottom: 0.5em; padding: 3px 1em; font-size: 11px; font-weight: normal; color: #fff; border-radius: 3px; background-color: #424242; letter-spacing: .1em; }

.page--home .delighter { transition: .4s; opacity: 0; transform: translateY(60px); }

.page--home .delighter.started { opacity: 1; transform: translateY(0); }

.page--home.loaded .list--characteristics li .free-txt__item { transform: scale(1); }

.page--home .header .logo { width: 150px; height: 50px; top: 25px; }

.page--home .header .logo a { text-indent: 0; background: none; }

.page--home .wrap { padding-top: 0; background: #fff; overflow: hidden; position: relative; }

.page--home .home-nav { position: fixed; width: 50%; right: 5%; top: 20px; z-index: 10; text-align: right; }

.page--home .home-nav a { color: #2c2e2f; }

.page--home .section-tit { text-align: center; }

.page--home .section--top { height: 100vh; min-height: 750px; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-around; justify-content: space-around; -ms-flex-align: center; -webkit-box-align: center; -webkit-align-items: center; align-items: center; background: url("/static/fcopen/fanplakit/top/bg_top.jpg") no-repeat center top; background-size: cover; position: relative; z-index: 1; }

.page--home .section--top::after { content: ""; width: 100%; height: 100%; position: absolute; z-index: -1; mix-blend-mode: multiply; background: linear-gradient(126deg, #c6f1ff 0%, #7afff0 67%, #008dd0 100%); }

.page--home .section--top .inner { width: 50%; min-width: 700px; text-align: center; }

.page--home .section--top h1 { width: 55%; margin: 50px auto 30px; transition: all .3s ease; }

.page--home .section--top .txt--basic { font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 700; letter-spacing: 0.08em; font-size: 24px; color: #111; text-align: center; line-height: 1; }

.page--home .list--characteristics { display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-around; justify-content: space-around; max-width: 500px; margin: 40px auto 30px; }

.page--home .list--characteristics li { width: 18%; line-height: 1; display: block; text-align: center; position: relative; }

.page--home .list--characteristics li .icon { display: block; width: 80%; margin: 0 auto; background-color: rgba(202, 255, 252, 0.7); border-radius: 50%; }

.page--home .list--characteristics li p { margin-top: 7px; font-size: 13px; font-weight: bold; line-height: 1.5; }

.page--home .list--characteristics li .free-txt__item { position: absolute; width: 50px; height: 20px; font-weight: bold; font-size: 16px; letter-spacing: 0.12em; left: 21px; top: -2px; transform: scale(0); transition: 0.25s cubic-bezier(0.06, 0.44, 0.33, 2.36) 0.6s; }

.page--home .list--characteristics li .free-txt__item::before, .page--home .list--characteristics li .free-txt__item::after { content: ''; display: block; width: 2px; height: 17px; background: #000; position: absolute; top: 0; }

.page--home .list--characteristics li .free-txt__item::before { left: -3px; transform: rotate(-30deg); }

.page--home .list--characteristics li .free-txt__item::after { right: 0; transform: rotate(30deg); }

.page--home .list--characteristics + .txt--basic { font-size: 17px; line-height: 1.5; }

.page--home .section--banner { padding: 80px 8% 0; }

.page--home .section--banner .list--bnr li a { display: block; line-height: 0; overflow: hidden; }

.page--home .section--banner .list--bnr li a img { width: 100%; transition: .3s; }

.page--home .section--banner .list--bnr li a:hover img { transform: scale(1.1); }

.page--home .section--banner.section--bnr--single .list--bnr { display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; -ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.page--home .section--banner.section--bnr--single .list--bnr li { width: 49%; }

.page--home .section--about .inner { width: 70%; max-width: 1100px; padding: 180px 0 150px; margin: 0 auto; }

.page--home .section--about .inner .txt--lead { font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; letter-spacing: 0.08em; font-size: 26px; text-align: center; margin-bottom: 20px; letter-spacing: 0; line-height: 1.7; }

.page--home .section--about .inner .txt--lead img { display: inline-block; width: 195px; position: relative; top: 9px; left: -7px; margin-bottom: -1px; margin-left: 25px; }

.page--home .section--about .inner .list--point { width: 100%; max-width: 1100px; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: center; justify-content: center; -ms-flex-align: flex-start; -webkit-box-align: flex-start; -webkit-align-items: flex-start; align-items: flex-start; flex-wrap: wrap; margin: 0 auto; padding-top: 20px; }

.page--home .section--about .inner .list--point li { width: calc(100% / 3); text-align: center; position: relative; opacity: 0; transform: translateY(50px); margin-bottom: 20px; transition: opacity .5s ease-out, transform .5s ease-out; }

.page--home .section--about .inner .list--point li.new::before { background: linear-gradient(135deg, #fff9a0, #ff8383, #ff0000); opacity: 0.6; }

.page--home .section--about .inner .list--point li.new::after { content: ''; display: block; width: 50%; height: 20%; background: no-repeat url(/static/fcopen/fanplakit/top/ico_new.svg); background-size: contain; position: absolute; left: 15%; top: 8%; }

.page--home .section--about .inner .list--point li .point__num { font-family: 'Roboto', sans-serif; font-weight: 900; letter-spacing: 0.08em; letter-spacing: 0.04em; font-size: 28px; font-style: italic; line-height: 1; margin-bottom: 10px; }

.page--home .section--about .inner .list--point li .point__num em { font-size: 3em; font-weight: 700; }

.page--home .section--about .inner .list--point li .txt--basic { padding: 0 0.5em; font-weight: bold; font-size: 1.3vw; line-height: 1.4; }

.page--home .section--about .inner .list--point li .txt--sub { padding: 0 1em; text-align: left; }

.page--home .section--about .inner .list--point li::before { content: ""; position: absolute; width: 150px; height: 150px; top: 10px; transform: translateX(-67%); border-radius: 50%; background: linear-gradient(135deg, #d7eff7, #69daf3, #41ded0); opacity: 0.2; z-index: -1; transition: all .3s ease; }

.page--home .section--about .inner .list--point li:nth-child(1) { transition-delay: 0s; }

.page--home .section--about .inner .list--point li:nth-child(2) { transition-delay: 0.2s; }

.page--home .section--about .inner .list--point li:nth-child(3) { transition-delay: 0.4s; }

.page--home .section--about .inner .list--point li:nth-child(4) { transition-delay: 0.6s; }

.page--home .section--about .inner .list--point li:nth-child(5) { transition-delay: 1.2s; }

.page--home .section--about .inner .list--point.started li { opacity: 1; transform: translateY(0px); }

.page--home .block--thumb { overflow: hidden; }

.page--home .block--thumb .list--thumb { width: 140%; position: relative; left: -20%; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-around; justify-content: space-around; -ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.page--home .block--thumb .list--thumb li { width: 25%; }

.page--home .block--thumb .list--thumb li figure img { display: block; width: 100%; background-size: cover; }

.page--home .block--thumb .list--thumb li figure figcaption { display: none; }

.page--home .section--official { width: 70%; max-width: 1100px; padding: 0px 0 200px; margin: 0 auto; }

.page--home .section--official .thumb { width: 80%; margin: 0 auto; line-height: 0; }

.page--home .section--official .section-tit { font-size: 32px; }

.page--home .section--official .txt--lead { font-size: 24px; text-align: center; margin-bottom: 3em; }

.page--home .section--official .txt--basic { font-size: 18px; }

.page--home .section--official .list--attention { font-size: 14px; }

.page--home .section--fc-introduce .section-tit { margin-bottom: 30px; font-weight: 700; letter-spacing: 0.02em; }

.page--home .section--fc-introduce .list--contents li { width: 25%; margin: 0 10px; }

.page--home .section--fc-introduce .list--contents li a { display: block; text-decoration: none; }

.page--home .section--fc-introduce .list--contents li .txt__item { padding: 10px; }

.page--home .section--fc-introduce .list--contents li .thumb { position: relative; }

.page--home .section--fc-introduce .list--contents li .thumb::after { content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

.page--home .section--fc-introduce .list--contents li .thumb img { display: block; object-fit: cover; aspect-ratio: 16 /9; max-height: 260px; }

.page--home .section--fc-introduce .list--contents li .tit { font-weight: bold; font-size: 1.2em; }

.page--home .section--fc-introduce .list--contents li .tit span { display: block; font-size: 0.8em; }

.page--home .section--module .inner { padding: 160px 0; width: 80%; margin: 0 auto; }

.page--home .section--module .inner .section-tit span { font-weight: 400; letter-spacing: 0.05em; margin: 7px; }

.page--home .section--module .inner .section-tit + .txt--basic { text-align: center; font-size: 16px; margin: 0 auto; }

.page--home .section--module .inner .list--module { max-width: 960px; margin: 60px auto 0; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: flex-start; justify-content: flex-start; -ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-line-pack: stretch; align-content: stretch; }

.page--home .section--module .inner .list--module li { width: calc(100% / 3); padding: 0 2em; margin-bottom: 50px; position: relative; }

.page--home .section--module .inner .list--module li figure { width: 55%; max-width: 160px; background: linear-gradient(135deg, #ffffff, #60d5ef, #41ded0); border-radius: 50%; padding: 10%; overflow: hidden; line-height: 0; margin: 0 auto 10px; box-shadow: 0 16px 18px -22px #333; }

.page--home .section--module .inner .list--module li .tit { width: 100%; min-height: 55px; font-weight: bold; font-size: 1.2vw; letter-spacing: 0; text-align: center; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; }

.page--home .section--module .inner .list--module li .tit p { width: 100%; line-height: 1.3; letter-spacing: .05em; margin-bottom: 0.5em; text-align: center; }

.page--home .section--module .inner .list--module li .txt--sub span { font-size: 85%; }

.page--home .section--module .inner .list--module li .scheduled { position: absolute; top: -16px; left: 60%; width: 70px; height: 70px; border-radius: 50%; background-color: rgba(74, 159, 234, 0.8); padding-top: 21px; color: #fff; font-size: 11px; text-align: center; overflow: hidden; line-height: 1.5; }

.page--home .section--module .inner .block--nextrelease { max-width: 500px; margin: 0 auto; padding: 3em; border: 1px solid #2c2e2f; }

.page--home .section--module .inner .block--nextrelease .detail--module .tit { font-weight: bold; font-size: 1.8vw; letter-spacing: 0; text-align: center; }

.page--home .section--module .inner .block--nextrelease .detail--module .tit p { width: 100%; line-height: 1.3; margin-bottom: 1em; text-align: center; }

.page--home .section--module .inner .block--nextrelease .detail--module .block--appinfo { width: 80%; margin: 50px auto 0; text-align: center; }

.page--home .section--module .inner .block--nextrelease .detail--module .block--appinfo .logo { margin-bottom: 10px; }

.page--home .section--module .inner .block--nextrelease .detail--module .block--appinfo ul { margin: 10px 0 20px; text-align: center; }

.page--home .section--module .inner .block--nextrelease .detail--module .block--appinfo ul li { width: 40%; height: 30px; display: inline-block; line-height: 30px; border-radius: 3px; background-color: #2a3e97; color: #fff; font-size: 14px; }

.page--home .section--module .inner .block--nextrelease .detail--module .txt--big { margin: 0; font-size: 24px; letter-spacing: .15em; line-height: 1; }

.page--home .section--module .inner .block--nextrelease .detail--module .txt--big span { font-family: 'Roboto', sans-serif; font-weight: 900; letter-spacing: 0.08em; font-size: 46px; color: #2a3e97; }

.page--home .section--module .inner .txt--big { margin-top: 2em; font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; letter-spacing: 0.08em; font-size: 20px; letter-spacing: .2em; text-align: center; }

.page--home .section--media { background: #f1f2f3; background-size: cover; }

.page--home .section--media .inner { padding: 160px 0; width: 80%; max-width: 1100px; margin: 0 auto; }

.page--home .section--media .inner .section-tit .tit-img { width: 150px; margin: 0 auto 15px; padding: 5px 15px; font-size: 0; line-height: 1; border: solid 1px #222; border-radius: 50px; }

.page--home .section--media .inner .section-tit span { display: block; font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; letter-spacing: 0.08em; font-size: 30px; text-align: center; margin-bottom: 20px; letter-spacing: 0; line-height: 1.5; }

.page--home .section--media .inner .section-tit + .txt--basic { text-align: center; font-size: 16px; margin: 0 auto; }

.page--home .section--media .inner .block--fanplabox { padding: 80px 50px 50px; margin-top: 3em; background-color: #fff; }

.page--home .section--media .inner .block--fanplabox .block--aboutfanpla { text-align: center; }

.page--home .section--media .inner .block--fanplabox .block--aboutfanpla p { font-weight: bold; font-size: 18px; }

.page--home .section--media .inner .block--fanplabox .block--aboutfanpla .logo { width: 45%; max-width: 210px; margin: 0 auto 0; text-align: center; }

.page--home .section--media .inner .block--fanplabox .block--fanpla { margin-top: 40px; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; }

.page--home .section--media .inner .block--fanplabox .block--fanpla .thumb { width: 42%; text-align: center; }

.page--home .section--media .inner .block--fanplabox .block--fanpla .thumb img { max-width: 450px; margin: 0 auto; box-shadow: 0 16px 18px -22px #333333; }

.page--home .section--media .inner .block--fanplabox .block--fanpla .list--module { width: 52%; text-align: center; }

.page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt { background-color: #fff; border-radius: 10px; }

.page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt li { display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; -ms-flex-align: center; -webkit-box-align: center; -webkit-align-items: center; align-items: center; }

.page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt li .icon { width: 70px; }

.page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt li .txt--basic { margin-bottom: 0; width: calc(100% - 90px); font-weight: bold; font-size: 18px; text-align: left; line-height: 1.4; }

.page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt li:last-child { padding-bottom: 0; }

.page--home .section--fee { background: linear-gradient(135deg, #21d4fd, #49cbbc); }

.page--home .section--fee .inner { padding: 150px 0; width: 70%; max-width: 1100px; margin: 0 auto; color: #fff; }

.page--home .section--fee .section-tit + .txt--basic { text-align: center; font-size: 16px; margin: 0 auto; }

.page--home .section--fee .btn .btn--sub.btn--min { color: #fff; border-color: #fff; }

.page--home .section--fee .block--fee { width: 100%; max-width: 500px; border: 2px solid #fff; padding: 80px 0 60px; margin: 50px auto; position: relative; }

.page--home .section--fee .block--fee dl { display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-align: flex-end; -webkit-box-align: flex-end; -webkit-align-items: flex-end; align-items: flex-end; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: center; justify-content: center; }

.page--home .section--fee .block--fee dt { font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; letter-spacing: 0.08em; font-size: 18px; letter-spacing: 0.1em; margin-bottom: 5px; }

.page--home .section--fee .block--fee dd { font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 400; letter-spacing: 0.08em; margin-left: .5em; font-size: 20px; }

.page--home .section--fee .block--fee dd em { font-family: 'Roboto', sans-serif; font-weight: 300; letter-spacing: 0.08em; font-size: 6em; line-height: 0.5; vertical-align: 0px; }

.page--home .section--fee .list--attention { width: 100%; max-width: 600px; margin: 0 auto; }

.page--home .section--step .inner { padding: 150px 0 130px; width: 80%; margin: 0 auto; }

.page--home .section--step .inner .section-tit span { font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; }

.page--home .section--step .inner .txt--lead { font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; font-weight: 700; letter-spacing: 0.08em; font-size: 20px; text-align: center; margin-bottom: 20px; line-height: 1.5; }

.page--home .section--step .inner .txt--lead .txt--sub { letter-spacing: -0.05em; font-weight: 400; font-size: 12px; }

.page--home .section--step .inner .list--step { max-width: 1100px; margin: 0 auto; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; -ms-flex-align: flex-start; -webkit-box-align: flex-start; -webkit-align-items: flex-start; align-items: flex-start; }

.page--home .section--step .inner .list--step li { width: 20%; text-align: center; position: relative; opacity: 0; transform: translateY(50px); transition: opacity .5s ease-out, transform .5s ease-out; }

.page--home .section--step .inner .list--step li::after { content: ''; display: block; width: 30px; height: 30px; border-top: 2px solid; border-right: 2px solid; transform: rotate(45deg); position: absolute; top: 50px; right: -30px; }

.page--home .section--step .inner .list--step li:last-child::after { display: none; }

.page--home .section--step .inner .list--step li dl dt { font-family: 'Roboto', sans-serif; font-weight: 900; letter-spacing: 0.08em; letter-spacing: 0.04em; font-size: 20px; font-style: italic; line-height: 1; margin-bottom: 20px; }

.page--home .section--step .inner .list--step li dl dt em { font-size: 2em; font-weight: 700; }

.page--home .section--step .inner .list--step li dd .tit { font-weight: bold; line-height: 1; margin-bottom: 10px; }

.page--home .section--step .inner .list--step li dd .txt--basic { font-size: 13px; line-height: 1.5; text-align: left; }

.page--home .section--step .inner .list--step li:nth-child(1) { transition-delay: 0s; }

.page--home .section--step .inner .list--step li:nth-child(2) { transition-delay: 0.2s; }

.page--home .section--step .inner .list--step li:nth-child(3) { transition-delay: 0.4s; }

.page--home .section--step .inner .list--step li:nth-child(4) { transition-delay: 0.6s; }

.page--home .section--step .inner .list--step.started li { opacity: 1; transform: translateY(0px); }

.page--home .section--faq .inner { width: 50%; min-width: 750px; padding: 100px 0; margin: 0 auto; }

.page--home .section--faq .section-tit { font-family: 'Roboto', sans-serif; font-weight: 100; letter-spacing: 0.08em; letter-spacing: 0; }

.page--home .section--faq .list--faq li { border: 1px solid #111; position: relative; margin-bottom: 20px; cursor: pointer; }

.page--home .section--faq .list--faq li dt { font-size: 18px; padding: 30px 80px 30px 54px; transition: .3s; position: relative; text-indent: -23px; line-height: 1.4; }

.page--home .section--faq .list--faq li dt span { font-family: 'Roboto', sans-serif; font-weight: 400; letter-spacing: 0.08em; margin-right: .3em; font-size: 22px; }

.page--home .section--faq .list--faq li dt:hover { opacity: 0.6; }

.page--home .section--faq .list--faq li dt::before, .page--home .section--faq .list--faq li dt::after { content: ''; display: block; width: 30px; height: 1px; background: #2c2e2f; position: absolute; right: 30px; top: 50%; transition: opacity .2s ease; }

.page--home .section--faq .list--faq li dt::after { transform: rotate(90deg); }

.page--home .section--faq .list--faq li dt.open::after { opacity: 0; }

.page--home .section--faq .list--faq li dd { display: none; font-size: 14px; padding: 0 30px 30px; line-height: 1.8; }

.page--home .btn { margin-bottom: 10px; }

.page--home .list--attention li { font-size: 12px; line-height: 1.3; text-indent: -1em; padding-left: 1em; margin-bottom: 1em; }

.page--home .list--attention li:last-child { margin-bottom: 0; }

.page--home .section--info { background: #f1f2f3; }

.page--home .section--info .inner { width: 80%; max-width: 1100px; margin: 0 auto; padding: 100px 0; }

.page--home .section--info .inner .section-tit { font-family: 'Roboto', sans-serif; font-weight: 100; letter-spacing: 0.08em; letter-spacing: 0; }

.page--home .section--info .inner .list--info { max-width: 1100px; margin: 0 auto; }

.page--home .section--entry { background: linear-gradient(135deg, #21d4fd, #49cbbc); padding: 160px 0 140px; }

.page--home .section--entry .logo { width: 28%; margin: 0 auto 20px; }

.page--home .section--entry .btn { margin-bottom: 0; }

.page--home .section--entry .btn .btn--main { background: #fff; color: #2c2e2f; font-size: 18px; font-weight: bold; padding: 1.4em 6em; margin: 0; }

.page--home .block--sns { text-align: right; padding: 0 5%; }

.page--home .block--sns a { font-size: 24px; color: #2c2e2f; text-decoration: none; }

.page--home .block--sns .list--sns { position: relative; color: #2c2e2f; margin-bottom: 20px; }

.page--home .block--sns .list--sns::before { content: 'Share'; font-family: 'Roboto', sans-serif; font-weight: 600; font-style: italic; font-size: 28px; display: inline-block; padding-right: 14px; }

.page--home .block--sns li { display: inline-block; margin: 0 10px; }

@media screen and (min-width: 1500px) { .page--home .section--about .inner .list--point li .txt--basic { font-size: 20px; }
  .page--home .section--about .inner .list--point li::before { transform: scale(1.2, 1.2) translateX(-56%); transform-origin: center; }
  .page--home .section--module .inner { width: 70%; }
  .page--home .section--module .inner .list--module { max-width: 1100px; }
  .page--home .section--module .inner .list--module li .tit { font-size: 16px; }
  .page--home .section--step .inner { width: 70%; }
  .page--home .section--info .inner { width: 70%; } }

.page--info .section--detail .date { font-size: 13px; }

.page--info .section--detail .tit { font-size: 16px; font-weight: bold; }

.page--info .section--detail .txt--basic { font-size: 14px; }

.page--info .section--detail .txt--basic a { text-decoration: underline; }

.page--info .section--detail.new .tit { position: relative; }

.page--info .section--detail.new .tit::after { content: 'New'; display: inline-block; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; font-size: 23px; color: #7b6218; }

.page--info .section--detail .txt { font-size: 14px; padding: 40px 0 20px; }

.page--info .section--detail .txt a { text-decoration: underline; }

.page--info .section--detail .txt a:hover { text-decoration: none; }

.page--info .block--share { line-height: 1; text-align: right; padding-top: 60px; margin: 0 0 30px; }

.page--info .block--share .share { display: inline-block; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; font-size: 10px; padding-right: 0; letter-spacing: 0.1em; vertical-align: 0px; color: #111; }

.page--info .block--share a { color: #111; }

.page--info .block--share a:hover { color: #7b6218; }

.page--info .block--share a:hover svg { fill: #7b6218; }

.page--info .block--share li { display: inline-block; vertical-align: middle; font-size: 20px; color: #efefef; margin: 0 0 0 15px; }

.page--info .block--share .lineIco svg { width: 18px; height: 18px; fill: #111; transition: .3s; }

/*  page--support
------------------------------ */
.section--detail.support .section-tit { font-family: YakuHanJP,-apple-system, BlinkMacSystemFont,"游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; margin-bottom: 40px; font-size: 18px; letter-spacing: 0.1em; font-weight: bold; }

.section--detail.support .list--support dt { color: inherit; font-weight: bold; line-height: 1.8; margin-bottom: 5px; }

.section--detail.support .list--support dd { line-height: 1.6; margin-bottom: 30px; }

.section--detail.support .list--support dd:last-of-type { margin-bottom: 0; }

.section--detail.support .list--support li { font-weight: normal; margin-bottom: 1.5em; }

.section--detail.support .list--support li:last-of-type { margin-bottom: 0; }

.section--detail.support .list--support li ul { text-indent: 1em; }

.section--detail.support .list--support li ul li { padding-left: 1em; text-indent: -.5em; }

/*  page--faq
------------------------------ */
.list--faq a { position: relative; }

.list--faq a:hover { opacity: 0.5; }

.list--faq a.btn--main:hover { opacity: 1; }

.list--faq .tit { padding-left: 20px; }

.list--faq .txt { margin: 0; padding-left: 20px; line-height: 1.4; }

.list--faq .icon--q { float: left; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; line-height: 1.7; color: #2c2e2f; margin-right: 5px; }

.section--detail .list--faq .icon--q { line-height: 1.6; }

.block--faq-detail { border: 1px solid #2c2e2f; padding: 25px; margin: 0 0 80px; }

.block--faq-detail dt { font-size: 16px; border-bottom: 1px solid #2c2e2f; padding: 0 0 15px; margin: 0 0 20px; }

.block--faq-detail dt .txt { padding-left: 40px; margin: 0; }

.block--faq-detail dt .category { display: inline-block; font-size: 12px; background: #eee; color: #9fa3a7; border-radius: 20px; padding: 1px 8px 0; margin: 0 0 20px; }

.block--faq-detail dd .txt { font-size: 16px; padding-left: 40px; margin: 0; }

.block--faq-detail span[class^="icon--"] { display: inline-block; float: left; width: 30px; height: 30px; font-family: 'Roboto', sans-serif; font-weight: 500; letter-spacing: 0.08em; font-size: 16px; text-align: center; line-height: 33px; border-radius: 50px; padding-left: 2px; }

.block--faq-detail span.icon--q { color: #fff; line-height: 30px; background: #2c2e2f; }

.block--faq-detail span.icon--a { color: #2c2e2f; background: rgba(111, 138, 166, 0.2); }

.page--faq .section--detail .block--contact { text-align: center; margin: 40px 0 0; }

.page--faq .section--detail .block--contact a { color: #2c2e2f; position: relative; border-width: 1px; margin-top: -.2em; }

.page--faq .section--detail .block--contact a::after { content: ''; display: inline-block; width: 0.5em; height: 0.5em; border: 1px solid #fff; border-top: none; border-right: none; -webkit-transform: rotate(-135deg); transform: rotate(-135deg); vertical-align: middle; }

.page--faq .section--detail .block--contact a:hover { color: #000; }

.page--faq .section--detail .block--contact .fa { display: none; }

/*  page--error
------------------------------ */
@media screen and (min-width: 961px) { .sp { display: none !important; }
  a { transition: .3s; }
  body { position: relative; }
  .btn input { transition: .3s; }
  .btn--main { min-width: 230px; position: relative; }
  .btn--main:hover { box-shadow: 0 23px 20px -25px #333333; }
  .btn--sub { min-width: 300px; }
  .btn--min { min-width: unset; font-size: 13px; line-height: 1; padding: 1.2em 3em; }
  .btn--min:hover { box-shadow: 0 16px 18px -19px #333333; }
  .wrap { padding: 154px 0 350px; }
  .content--body a { transition: all .3s ease; }
  .content--body a:hover { opacity: 0.8; }
  .slick-dots { bottom: -50px; }
  .slick-dots li, .slick-dots li button, .slick-dots li button::before { width: 20px; height: 3px; }
  footer { padding-bottom: 100px; }
  footer .block--footer-nav { padding: 0 5%; flex-direction: row-reverse; position: relative; }
  footer .block--footer-nav .block--nav .list--sub-nav { font-size: 13px; }
  footer .block--footer-nav .block--nav .list--sub-nav li:last-of-type { margin-right: 0; }
  footer .block--footer-nav .block--nav .p-mark { display: block; margin: 0 0 0 auto; top: 10px; }
  footer .block--company .logo { width: 280px; margin-bottom: 5px; }
  footer .block--company .block--mup { width: 100%; font-size: 10px; }
  footer .block--company .block--mup a { width: 80px; position: relative; top: 11px; margin-right: 10px; }
  footer .copyright { position: absolute; right: 5%; bottom: -60px; }
  footer .list--sub-nav li a:hover { opacity: 0.5; }
  .date { font-size: 12px; margin-bottom: 10px; }
  .list--info a:hover { opacity: 0.5; }
  .list--info > li .date { margin-right: .5em; }
  .block--pager { text-align: left; margin: 0 auto 0 0; left: -15px; }
  .block--pager .pager__item--older, .block--pager .pager__item--newer { position: static; }
  .block--pager a, .block--pager a::after { transition: .4s; }
  .block--pager a:hover { color: #7b6218; }
  .block--pager a:hover::after { border-color: #7b6218; }
  .block--category li a { transition: .3s; }
  .block--category li a:hover { background: #2c2e2f; color: #fff; }
  .section--detail { padding-bottom: 50px; }
  .section--detail .section-tit { margin-bottom: 40px; }
  .section--list { padding: 0 15%; }
  .section--list .list--info { margin-bottom: 40px; }
  .section--list .list--info li a { padding: 18px 0; }
  .section--list .section-tit { margin-bottom: 40px; }
  .page--home .section--top .btn .btn--main:hover, .page--home .section--entry .btn .btn--main:hover { box-shadow: 0 23px 20px -25px #01373c; }
  .page--home .section--about .inner .list--point li .txt--basic { display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; -webkit-align-items: center; align-items: center; min-height: 3em; }
  .page--home .section--official .txt--basic, .page--home .section--official .list--attention { width: 70%; max-width: 900px; margin: 0 auto; }
  .page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt li { padding-bottom: 10px; }
  .page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt li:last-child { padding-bottom: 0; }
  .page--home .section--fee .inner .section-tit { font-size: 36px; }
  /*  page--info
------------------------------ */
  .page--info .section--detail .section-tit { height: 20px; background-position: right center; margin-bottom: 65px; }
  .page--info .section--detail .txt--basic a:hover { text-decoration: none; }
  .page--info .section--detail .category { vertical-align: 1px; margin-left: 2px; }
  /*  page--xxxxxx
------------------------------ */ }

@media screen and (min-width: 1px) and (max-width: 960px) { /* common.scss
============================== */
  .pc { display: none !important; }
  a { transition: .4s; }
  .btn--main { min-width: 90%; font-size: 1em; } }

@media screen and (min-width: 1px) and (max-width: 960px) and (min-width: 756px) and (max-width: 961px) { .btn--main { min-width: 50%; } }

@media screen and (min-width: 1px) and (max-width: 960px) { .btn--sub { min-width: 90%; font-size: 1em; } }

@media screen and (min-width: 1px) and (max-width: 960px) and (min-width: 756px) and (max-width: 961px) { .btn--sub { min-width: 50%; } }

@media screen and (min-width: 1px) and (max-width: 960px) { .header .logo { width: 32vw; height: 10vw; max-width: 230px; max-height: 70px; margin-left: 5%; top: 24px; }
  footer { position: relative; padding: 60px 0; }
  footer .block--footer-nav { padding: 0 5%; display: block; position: relative; }
  footer .block--footer-nav .block--nav { width: 100%; text-align: left; }
  footer .block--footer-nav .block--nav .list--sub-nav { font-weight: bold; font-size: 13px; margin-bottom: 50px; }
  footer .block--footer-nav .block--nav .list--sub-nav li { display: block; margin-right: 0; margin-bottom: 5px; text-align: left; }
  footer .block--footer-nav .block--nav .list--sub-nav li a { line-height: 1.8; }
  footer .block--company .logo { width: 42%; line-height: 0; margin-bottom: 0px; }
  footer .block--company .block--mup { width: 100%; font-size: 10px; transform: scale(0.85); transform-origin: left bottom; line-height: 1.7; }
  footer .block--company .block--mup a { display: block; width: 80px; margin-bottom: 15px; }
  footer .block--company .p-mark { position: absolute; bottom: -2px; width: 50px; right: 7%; line-height: 0; }
  footer .copyright { font-size: 10px; position: relative; left: 0; bottom: -10px; }
  .date, .category { font-size: 12px; margin-bottom: 5px; }
  .category { width: auto; font-size: 11px; margin-left: 5px; }
  .tit { font-size: 14px; line-height: 1.5; }
  .list__more { position: absolute; right: 0; top: 0; }
  .block--category { margin: 0 auto 20px; }
  .block--category li { margin: 0 .2em .2em 0; }
  .block--category li a { font-weight: normal; }
  [class^="list--"] li.new .tit::after { font-size: 1em; vertical-align: 0; }
  .wrap { padding: 80px 0 0; position: relative; }
  .section-tit { font-size: 7vw; }
  .section--detail { padding: 40px 5%; width: 100%; max-width: inherit; }
  .section--detail .section-tit { margin-bottom: 20px; }
  .section--detail .detail__btn { margin-top: 4em; }
  .section--list .section-tit { margin-bottom: 30px; }
  .contents-tit { font-size: 40px; }
  .pankuzu { padding: 10px 5%; }
  .pankuzu .list--pankuzu li:before { width: 5px; right: 0; top: 7px; }
  .pankuzu .list--pankuzu li::after { width: 5px; top: 11px; }
  .pankuzu .list--pankuzu li a { font-size: 10px; }
  .page--home .list--characteristics { display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-around; justify-content: space-around; margin: 30px auto 20px; }
  .page--home .list--characteristics li { width: 19%; }
  .page--home .list--characteristics li .free-txt__item { font-size: 13px; letter-spacing: 0.12em; left: 5px; top: -4px; }
  .page--home .list--characteristics li .free-txt__item::before, .page--home .list--characteristics li .free-txt__item::after { height: 14px; }
  .page--home .list--characteristics li .free-txt__item::before { left: 2px; }
  .page--home .list--characteristics li .free-txt__item::after { right: 4px; }
  .page--home .list--characteristics li p { font-size: 10px; } }

@media screen and (min-width: 1px) and (max-width: 960px) and (max-width: 374px) { .page--home .list--characteristics { -ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
  .page--home .list--characteristics li { width: calc(100% /3); margin-bottom: 20px; } }

@media screen and (min-width: 1px) and (max-width: 960px) { .page--home .section--top .inner, .page--home .section--about .inner, .page--home .section--module .inner, .page--home .section--fee .inner, .page--home .section--media .inner, .page--home .section--step .inner, .page--home .section--faq .inner, .page--home .section--info .inner { width: 86%; min-width: 0; padding: 20vw 0 18vw; }
  .page--home .header .logo { width: 30vw; height: 7vw; max-width: 150px; max-height: 50px; }
  .page--home .section--top { background: url("/static/fcopen/fanplakit/top/bg_top_sp.jpg") no-repeat; background-size: cover; }
  .page--home .section--top h1 { width: 75%; margin: 0 auto 1em; }
  .page--home .section--top .txt--basic { font-size: 3vw; }
  .page--home .section--banner { padding: 50px 0 0; margin-bottom: -30px; }
  .page--home .section--banner .list--bnr li { margin: 0 5px; }
  .page--home .section--banner.section--bnr--single .list--bnr { display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; -ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .page--home .section--banner.section--bnr--single .list--bnr li { width: 48%; }
  .page--home .section--about .inner .txt--lead { font-size: 4vw; }
  .page--home .section--about .inner .txt--lead img { width: 38vw; margin-bottom: 3px; }
  .page--home .section--about .inner .list--point { display: block; max-width: 90%; padding-top: 10%; padding-left: 5%; }
  .page--home .section--about .inner .list--point li { width: 100%; min-height: 100px; margin-bottom: 40px; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-align: center; -webkit-box-align: center; -webkit-align-items: center; align-items: center; }
  .page--home .section--about .inner .list--point li.new::after { width: 18vw; height: 10vw; left: -9vw; top: 50%; margin-top: -12vw; }
  .page--home .section--about .inner .list--point li .point__num { font-size: 16px; }
  .page--home .section--about .inner .list--point li .txt--basic { font-size: 3vw; padding: 0 0 0 25px; margin-bottom: 5px; text-align: left; }
  .page--home .section--about .inner .list--point li .txt--sub { padding: 0 0 0 25px; }
  .page--home .section--about .inner .list--point li:last-child { margin-bottom: 0; }
  .page--home .section--about .inner .list--point li::before { width: 110px; height: 110px; top: 50%; transform: translate(-25%, -50%); }
  .page--home .section--official { width: 100%; max-width: inherit; padding: 0 5% 50px; margin: 0 auto; }
  .page--home .section--official .section-tit { font-size: 6vw; }
  .page--home .section--official .thumb { width: 100%; }
  .page--home .section--official .txt--lead { font-size: 16px; text-align: left; margin-bottom: 20px; }
  .page--home .section--official .txt--basic { font-size: 14px; }
  .page--home .section--official .list--attention { font-size: 14px; }
  .page--home .section--fc-introduce .list--contents li { margin: 5px; }
  .page--home .section--fc-introduce .list--contents li .tit { font-size: 1em; }
  .page--home .section--module .inner .section-tit + .txt--basic { font-size: 3vw; }
  .page--home .section--module .inner .list--module { margin: 30px auto 0; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; }
  .page--home .section--module .inner .list--module li { width: 48%; padding: 0; margin-bottom: 2em; font-size: 13px; }
  .page--home .section--module .inner .list--module li figure { width: 72%; margin-bottom: 10px; }
  .page--home .section--module .inner .list--module li .tit { min-height: 8em; }
  .page--home .section--module .inner .list--module li .tit p { font-size: 2.8vw; }
  .page--home .section--module .inner .list--module li .tit p span { font-size: 10px; transform: scale(0.9); }
  .page--home .section--module .inner .list--module li .scheduled { top: -24px; left: 60%; width: 65px; height: 65px; font-size: 10px; padding-top: 18px; }
  .page--home .section--module .inner .block--nextrelease { padding: 3em 2em 2em; }
  .page--home .section--module .inner .block--nextrelease .detail--module .tit { font-size: 22px; }
  .page--home .section--module .inner .block--nextrelease .detail--module .txt--big { font-size: 18px; letter-spacing: .15em; }
  .page--home .section--module .inner .block--nextrelease .detail--module .txt--big span { font-family: 'Roboto', sans-serif; font-weight: 900; letter-spacing: 0.08em; font-size: 30px; }
  .page--home .section--module .inner .txt--big { font-size: 3.5vw; }
  .page--home .section--media .inner .section-tit .tit-img { max-width: 400px; }
  .page--home .section--media .inner .section-tit span { font-size: 4vw; }
  .page--home .section--media .inner .section-tit + .txt--basic { font-size: 3vw; }
  .page--home .section--media .inner .block--fanplabox { padding: 3em 2em 2em; }
  .page--home .section--media .inner .block--fanplabox .block--aboutfanpla p { font-size: 3vw; }
  .page--home .section--media .inner .block--fanplabox .block--fanpla { margin-top: 20px; display: block; }
  .page--home .section--media .inner .block--fanplabox .block--fanpla .thumb { width: 100%; }
  .page--home .section--media .inner .block--fanplabox .block--fanpla .list--module { width: 100%; margin-top: 20px; }
  .page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt li { padding-top: 10px; }
  .page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt li .txt--basic { font-size: 3.5vw; }
  .page--home .section--fee .inner .section-tit { font-size: 5vw; }
  .page--home .section--fee .inner .section-tit + .txt--basic { font-size: 3vw; }
  .page--home .section--fee .inner .block--fee { margin: 20px auto; }
  .page--home .section--fee .inner .block--fee dd em { font-size: 5em; }
  .page--home .section--fee .inner .list--attention { width: 100%; }
  .page--home .section--step .inner .txt--lead { font-size: 3.5vw; }
  .page--home .section--step .inner .list--step { display: block; max-width: 250px; }
  .page--home .section--step .inner .list--step li { width: 100%; margin-bottom: 50px; }
  .page--home .section--step .inner .list--step li dl dt { margin-bottom: 10px; font-size: 25px; }
  .page--home .section--step .inner .list--step li dl dd .txt--basic { text-align: center; }
  .page--home .section--step .inner .list--step li::after { width: 22px; height: 22px; top: auto; bottom: -10px; right: 50%; transform: rotate(135deg); transform-origin: bottom; }
  .page--home .section--faq .list--faq li dt { font-size: 13px; padding: 1em 50px 1em 40px; }
  .page--home .section--faq .list--faq li dt::before, .page--home .section--faq .list--faq li dt::after { width: 20px; right: 15px; }
  .page--home .section--entry { padding: 20% 0 15%; }
  .page--home .section--entry .logo { width: 50%; }
  .page--home .section--entry .btn .btn--main { font-size: 16px; }
  .page--home .block--sns { text-align: left; }
  .page--home .block--sns a { font-size: 18px; }
  .page--home .block--sns .list--sns::before { font-size: 4.3vw; }
  .page--home .block--sns li { display: inline-block; margin: 0 5px; } }

/*  tablet
------------------------------ */
@media screen and (min-width: 768px) and (max-width: 960px) { body { font-size: 16px; }
  .contents-tit { font-size: 55px; }
  .tit { font-size: 18px; line-height: 1.8; }
  .date { font-size: 15px; }
  .category { font-size: 13px; }
  .page--home .list--characteristics { display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-around; justify-content: space-around; margin: 40px auto 30px; }
  .page--home .list--characteristics li { width: 19%; }
  .page--home .list--characteristics li p { font-size: 13px; }
  .page--home .section--top .txt--basic { font-size: 20px; }
  .page--home .section--about .inner .txt--lead { font-size: 3vw; }
  .page--home .section--about .inner .txt--lead img { width: 35vw; }
  .page--home .section--about .inner .list--point li { margin-bottom: 60px; }
  .page--home .section--about .inner .list--point li .point__num { font-size: 22px; }
  .page--home .section--about .inner .list--point li .txt--basic { font-size: 2vw; }
  .page--home .section--module .inner .list--module li .tit { min-height: 55px; }
  .page--home .section--module .inner .list--module li .tit p { font-size: 16px; }
  .page--home .section--step .inner .txt--lead { font-size: 20px; }
  .page--home .section--step .inner .list--step { max-width: 1100px; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; -ms-flex-align: flex-start; -webkit-box-align: flex-start; -webkit-align-items: flex-start; align-items: flex-start; }
  .page--home .section--step .inner .list--step li { width: 20%; }
  .page--home .section--step .inner .list--step li::after { transform: rotate(45deg); position: absolute; top: 50px; right: -20px; }
  .page--home .section--media .inner .section-tit + .txt--basic { font-size: 2.2vw; }
  .page--home .section--media .inner .block--fanplabox { margin-top: 30px; }
  .page--home .section--media .inner .block--fanplabox .block--aboutfanpla p { font-size: 15px; }
  .page--home .section--media .inner .block--fanplabox .block--fanpla .list--module { margin-top: 30px; }
  .page--home .section--media .inner .block--fanplabox .block--fanpla .list--module .list--module--txt li .txt--basic { font-size: 15px; }
  .page--home .section--fee .inner .section-tit + .txt--basic { font-size: 3vw; }
  .page--home .block--sns .list--sns::before { font-size: 28px; }
  .section-tit { font-size: 50px; }
  .section--detail, .section--list { padding: 80px 10%; } }
