/* Tools */

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html,
body,
div,
span,
applet,
object,
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,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* HTML5 display-role reset for older browsers */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
	display: block;
}

body {
	line-height: 1;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

.text-align-center {
	text-align: center;
}

.text-align-right {
	text-align: right;
}

.display-block {
	display: block;
}

.hidden {
	display: none !important;
	visibility: hidden;
}

.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clear {
	clear: both;
}

/* show only  SP/PC
-------------------------------*/

.sp-only {
	display: none !important;
}

.sp-only-2 {
	display: none !important;
}

.pc-only {
	display: block !important;
}

.pc-only-2 {
	display: inline-block !important;
}

/* font
-------------------------------*/

.bold {
	font-weight: bold;
}

/* margin
-------------------------------*/

/* padding
-------------------------------*/

/* base */

html {
	font-size: 62.5%;
}

body {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.4rem;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	color: #000;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

body.is-op {
	position: fixed;
	top: 0;
	left: 0;
}

a {
	color: inherit;
	text-decoration: none;
}

main {
	display: block;
	width: 100%;
	position: relative;
}

img {
	max-width: 100%;
	height: auto;
}

input,
textarea,
select,
button {
	font-family: inherit;
}

button {
	padding: 0;
	background: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	outline: none;
	cursor: pointer;
}

/* Layout */

.l-body {
	width: 100%;
	overflow: hidden;
	opacity: 0;
}

.l-body.is-fixed {
	position: fixed;
}

.l-body.is-visible {
	opacity: 1;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
}

.l-header {
	position: relative;
}

.l-menu {
	z-index: 1000;
}

.screen-height {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100vh;
}

.l-menuBtn {
	z-index: 1100;
}

.l-soundBtn {
	z-index: 900;
}

.l-footer {
	position: relative;
	margin-top: 100px;
	background: url(../img/bg_footer_sp.jpg) no-repeat center/cover;
}

.l-underHeader {
	background-image: url(../img/under_ttl/bg_0.jpg);
}

.l-wrapper {
	position: relative;
	width: 86.66667%;
	margin-left: auto;
	margin-right: auto;
}

.l-sp-wrapper--pc-relative {
	position: relative;
}

.l-main {
	padding: 80px 0 0;
}

.l-top-content {
	padding-top: 100vh;
	position: relative;
}

.l-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.l-flex--list {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 25px;
}

/* Module */

.header-simple {
	height: 76px;
	border-bottom: 26px solid #158dfc;
	position: relative;
}

.header-simple--chara-detail {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	border-bottom: none;
	z-index: 100;
}

.header-text {
	display: none;
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	text-align: center;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	letter-spacing: 0.4em;
	color: #cccccc;
	padding: 26px 0;
}

.header-text span {
	display: block;
	-webkit-transform: scale(0.8);
	-ms-transform: scale(0.8);
	transform: scale(0.8);
}

.header-text--blue {
	display: block;
	color: #158dfc;
}

.footer-main {
	background: rgba(21, 141, 252, 0.6);
	color: #FFFFFF;
	position: relative;
}

.footer-link__item {
	border-bottom: 1px solid #FFFFFF;
	letter-spacing: 0.15em;
}

.footer-link__item a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	height: 50px;
	position: relative;
	background-image: -webkit-gradient(linear, left top, right top, from(#1541fc), color-stop(50%, #1541fc), color-stop(50%, transparent), to(transparent));
	background-image: -webkit-linear-gradient(left, #1541fc 0%, #1541fc 50%, transparent 50%, transparent 100%);
	background-image: -o-linear-gradient(left, #1541fc 0%, #1541fc 50%, transparent 50%, transparent 100%);
	background-image: linear-gradient(to right, #1541fc 0%, #1541fc 50%, transparent 50%, transparent 100%);
	background-size: 200% 100%;
	background-position: right top;
}

.footer-link__item a:after {
	content: "";
	display: block;
	width: 5px;
	height: 3px;
	border-radius: 3px;
	background: #FFFFFF;
	position: absolute;
	top: 50%;
	right: 6.666666%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.footer-share-wrap {
	border-bottom: 1px solid #FFFFFF;
	padding: 25px 0;
}

.footer-share {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.footer-share__heading {
	font: 500 1.2rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	margin-right: 20px;
}

.footer-share__main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 115px;
}

.footer-share__item img,
.footer-share__item svg {
	width: 23px;
	height: auto;
	max-height: 50px;
}

.footer-share__item path {
	fill: #FFFFFF;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.footer-share__item a {
	display: block;
}

.footer-share__item a:hover path {
	fill: #1541fc;
}

.app-wrap {
	border-bottom: 1px solid #FFFFFF;
	padding: 25px 0;
}

.app {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	margin-bottom: 21px;
	font-size: 1.0rem;
}

.app__image {
	border-radius: 15px;
	-webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.2);
	box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.2);
	width: 72px;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	margin-right: 24px;
}

.app__image img {
	display: block;
}

.app__image--center {
	margin: 0 auto 20px;
}

.app__heading {
	font-size: 1.3rem;
	letter-spacing: 0.2em;
	margin-bottom: 13px;
}

.app__content {
	letter-spacing: 0.1em;
	line-height: 1.5;
}

.app__detail {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	color: #cccccc;
}

.app__detail--lg {
	font-size: 1.2rem;
	line-height: 1.7;
}

.app__detail__label {
	width: 54px;
}

.app__detail__text {
	width: calc(100% - 54px);
	white-space: nowrap;
}

.app__detail__text:before {
	content: "：";
}

.download-app__heading {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	text-align: center;
	letter-spacing: 0.08em;
	margin-bottom: 8px;
}

.download-app__heading--md {
	font-size: 1.2rem;
	margin-bottom: 22px;
}

.download-app__main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
   width: 80%;
   margin: 0 auto;
}

.download-app__item:not(:first-child) {
	margin-left: 10px;
}

.download-app__item--1 {
	width: calc(45% - 5px);
}

.download-app__item--2 {
	width: calc(55% - 5px);
}

.download-app__item--3 {
	display: none;
}

.download-app__item img {
	display: block;
}

.download-app__item a {
	display: block;
}

.footer-sub {
	background: rgba(0, 0, 0, 0.6);
	color: #FFFFFF;
}

.footer-company-wrap {
	padding: 38px 0 28px;
	max-width: 285px;
	margin-left: auto;
	margin-right: auto;
}

.footer-company {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.footer-company__item {
	width: 50%;
}

.footer-company__item:first-child,
.footer-company__item:nth-child(2) {
	margin-bottom: 25px;
}

.footer-company__item img {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.footer-company__item img[src*='akatsuki'] {
	max-height: 23px;
}

.footer-company__item img[src*='kadokawa'] {
	max-height: 16px;
}

.footer-company__item img[src*='logo_hachinai'] {
	max-height: 36px;
}

.footer-company__item a {
	display: block;
	width: 100%;
	height: 100%;
}

.copyright {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	text-align: center;
	letter-spacing: 0.08em;
	margin-top: 30px;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.pagetop {
	font-size: 1.2rem;
	color: #cccccc;
	font: 500 1.2rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	width: 100%;
	height: 75px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	border-bottom: 1px solid #FFFFFF;
	position: relative;
	overflow: hidden;
	background-image: -webkit-gradient(linear, left top, right top, from(#1541fc), color-stop(50%, #1541fc), color-stop(50%, transparent), to(transparent));
	background-image: -webkit-linear-gradient(left, #1541fc 0%, #1541fc 50%, transparent 50%, transparent 100%);
	background-image: -o-linear-gradient(left, #1541fc 0%, #1541fc 50%, transparent 50%, transparent 100%);
	background-image: linear-gradient(to right, #1541fc 0%, #1541fc 50%, transparent 50%, transparent 100%);
	background-size: 200% 100%;
	background-position: right top;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.pagetop__text {
	position: relative;
	z-index: 5;
}

.pagetop__icon {
	position: absolute;
	top: 50%;
	right: 42px;
	-webkit-transform: translate3d(50%, -50%, 0);
	transform: translate3d(50%, -50%, 0);
	width: 90px;
	height: 90px;
	border-radius: 50%;
	will-change: transform;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.pagetop__icon:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/pagetop_deco.png) no-repeat center center/100% auto, #158dfc;
	border-radius: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.pagetop__icon svg {
	display: block;
	width: auto;
	max-width: 8px;
	height: 23px;
	position: relative;
}

.pagetop__icon path,
.pagetop__icon polygon {
	fill: #fff;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.sns-share-fixed {
	display: none;
}

.footer-illust {
	margin-bottom: -100px;
}

.footer-illust img {
	display: block;
}

.footer-illust__play {
	display: block;
	border: none;
	padding: 0;
	width: 100%;
	height: 100%;
}

.footer-illust__play.is-disable {
	pointer-events: none;
}

.footer-illust__mark {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.footer-illust__mark__item {
	position: absolute;
	top: 50%;
	left: 50%;
	opacity: 0;
	-webkit-transform: translate(-50%, -50%) scale(0.2);
	-ms-transform: translate(-50%, -50%) scale(0.2);
	transform: translate(-50%, -50%) scale(0.2);
	border-radius: 50%;
	border: 1px solid #158dfc;
	width: 250px;
	height: 250px;
}

.footer-illust__play:not(.is-disable) .footer-illust__mark__item:nth-child(1) {
	-webkit-animation: show 4.0s infinite;
	animation: show 4.0s infinite;
}

.footer-illust__play:not(.is-disable) .footer-illust__mark__item:nth-child(2) {
	-webkit-animation: show 4.0s 0.3s infinite;
	animation: show 4.0s 0.3s infinite;
}

.footer-illust__play:not(.is-disable) .footer-illust__mark__item:nth-child(3) {
	-webkit-animation: show 4.0s 0.6s infinite;
	animation: show 4.0s 0.6s infinite;
}

.l-homeBtn {
	width: 17.333333333333332vw;
	height: 17.333333333333332vw;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: fixed;
	right: 4vw;
	bottom: 30.8vw;
	border-radius: 50%;
	background-color: #158dfc;
	mix-blend-mode: multiply;
	-webkit-transition: background-color 0.25s;
	-o-transition: background-color 0.25s;
	transition: background-color 0.25s;
}

.l-homeBtn img {
	width: 36%;
	display: block;
}

.l-homeBtn.is-show {
	-webkit-transform: translate3d(0px, 0px, 0px);
	transform: translate3d(0px, 0px, 0px);
}

.heading-1 {
	background: #eaf5ff;
	padding: 15px 0 16px;
	margin-bottom: 25px;
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
	position: relative;
}

.heading-1 img {
	width: 28px;
	display: inline-block;
	vertical-align: middle;
	margin: -12px 11px -8px -8px;
}

.heading-1 span {
	display: block;
	width: 86.66667%;
	margin-left: auto;
	margin-right: auto;
}

.heading-1--center {
	text-align: center;
}

.heading-1--talk {
	position: relative;
}

.heading-1--talk:after {
	content: "";
	display: block;
	width: 28px;
	height: 24px;
	background: url(../img/icon_talk.png) no-repeat center/contain;
	position: absolute;
	top: 50%;
	right: -2px;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.heading-2 {
	color: #158dfc;
	text-align: center;
	font-size: 1.3rem;
	letter-spacing: 0.15em;
	text-align: center;
	margin-bottom: 25px;
}

.heading-3 {
	letter-spacing: 0.05em;
	margin-bottom: 14px;
}

.heading-3:before {
	content: "";
	display: inline-block;
	vertical-align: center;
	margin: 0 5px 2px 0;
	width: 5px;
	height: 3px;
	background: #158dfc;
	border-radius: 4px;
	vertical-align: middle;
}

.heading-3 + .heading-3 {
	margin-top: 30px;
}

.heading-4 {
	position: relative;
}

.heading-4--white {
	color: #FFFFFF;
}

.heading-4__jp {
	font: 400 4.5rem "Noto Serif JP", serif;
	letter-spacing: 0.2em;
	position: relative;
}

.heading-4__jp--sm {
	font-size: 3.0rem;
}

.heading-4__jp:before {
	content: "";
	position: absolute;
	background: #158dfc;
	display: block;
	width: 15px;
	height: 5px;
	top: 50%;
	left: -6.666666vw;
}

.heading-4__en {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.2em;
	padding-left: 18px;
}

.heading-5 {
	text-align: center;
	color: #158dfc;
	font: 500 5rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
	margin-bottom: 36px;
}

.heading-5 span {
	font-size: 1.0rem;
	letter-spacing: 0.1em;
	display: block;
	margin-bottom: -4px;
}

.heading-6 {
	color: #158dfc;
	text-align: center;
	margin-bottom: 22px;
	line-height: 1.4;
	letter-spacing: 0.05em;
}

.heading-6 img {
	vertical-align: middle;
	display: inline-block;
	margin: 0 10px 2px 0;
}

.heading-6 img[src*="line"] {
	width: 31px;
}

.heading-7 {
	color: #158dfc;
	text-align: center;
	margin-bottom: 3px;
	line-height: 1.4;
	font: 500 2.8rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.05em;
}

.heading-8 {
	text-align: center;
	margin-bottom: 22px;
	line-height: 1.4;
	font: 500 1.4rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.05em;
}

.heading-9 {
	background: #e8e8e8;
	padding: 15px 14px;
	font-size: 1.3rem;
	line-height: 1.6;
	letter-spacing: 0.16em;
	margin-bottom: 15px;
}

.button {
	background: #158dfc;
	color: #FFFFFF;
	width: 125px;
	height: 30px;
	font: 500 1.1rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	border-radius: 25px;
	margin-left: auto;
	margin-right: auto;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.button--en {
	font-size: 1.0rem;
}

.button--lg {
	width: 100%;
	height: 60px;
	border-radius: 30px;
	font-size: 1.3rem;
	letter-spacing: 0.15em;
}

.button--sm {
	width: 75px;
}

.button--right {
	margin-right: 0;
}

.button--white {
	background: #FFFFFF;
	color: #158dfc;
}

.button:focus {
	background-color: #1541fc;
}

.button__text {
	position: relative;
	z-index: 5;
}

.button__text img[src*='twitter'] {
	width: 23px;
	display: inline-block;
	vertical-align: middle;
	margin: 0 6px 0 0;
}

.button__anime {
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	border-radius: 50%;
	-webkit-transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
	-o-transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
	transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 1;
	background-color: #1541fc;
}

.back-btn {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.3em;
	color: #cccccc;
	position: absolute;
	top: 0;
	left: 0;
	padding: 18px 0 18px;
}

.back-btn:before {
	content: "";
	display: inline-block;
	width: 10px;
	height: 1px;
	background: #cccccc;
	vertical-align: middle;
	margin: 0 14px 2px 0;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.shadow {
	position: relative;
}

.shadow:before {
	content: "";
	position: absolute;
	top: 100%;
	right: 3px;
	width: calc(50% - 10px);
	height: 5px;
	background: #d7d7d7;
	border-radius: 0 0 2px 0;
	-webkit-transform: rotate(5deg);
	-ms-transform: rotate(5deg);
	transform: rotate(5deg);
	-webkit-transform-origin: right top;
	-ms-transform-origin: right top;
	transform-origin: right top;
}

.modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 3000;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

.modal.is-opend {
	opacity: 1;
	visibility: visible;
}

.modal--cover {
	background: rgba(21, 141, 252, 0.9);
}

.modal--himawari {
	background: url(../img/bg_actor.jpg) no-repeat center/cover;
}

.modal__content {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.close-btn {
	font: 500 1.2rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
	text-align: center;
	color: #FFFFFF;
	position: absolute;
	right: 15px;
	bottom: 14px;
}

.close-btn:before {
	content: "";
	background: url(../img/icon_close_blue.svg) no-repeat center/20px auto, #FFFFFF;
	border-radius: 50%;
	width: 65px;
	height: 65px;
	margin-bottom: 7px;
	display: block;
}

.close-btn--blue {
	color: #158dfc;
}

.close-btn--blue:before {
	background: url(../img/icon_close_white.svg) no-repeat center/20px auto, #158dfc;
}

.cat-list-1 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	color: #158dfc;
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
	margin-bottom: 40px;
}

.cat-list-1__item {
	max-width: 120px;
	width: 20%;
	height: 40px;
}

.cat-list-1__item a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	width: 100%;
	height: 100%;
	border-radius: 20px;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

.cat-list-1__item a:hover {
	background: #1541fc;
	color: #FFFFFF;
}

.cat-list-1__item.is-current a {
	background: #158dfc;
	color: #FFFFFF;
	pointer-events: none;
}

.news-list {
	width: 46.461538%;
	margin-bottom: 20px;
}

.news-list--pickup {
	width: 100%;
	max-width: 300px;
	padding: 0 12px;
}

.news-list--pickup .news-list__date {
	width: 22px;
	padding: 10px 4px;
}

.news-list--pickup .news-list__head {
	padding-left: 22px;
}

.news-list--pickup .news-list__main {
	padding: 0 22px;
}

.news-list__link {
	display: block;
}

.news-list__link:hover img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.news-list__head {
	position: relative;
	padding-left: 14px;
	margin-bottom: 10px;
}

.news-list__image {
	padding-top: 64.727272%;
	position: relative;
	border-radius: 0 5px 5px 0;
	overflow: hidden;
}

.news-list__image > img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	position: absolute;
	top: 0;
	left: 0;
}

.news-list__image img {
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.news-list__date {
	font: 500 0.9rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	-webkit-font-feature-settings: normal;
	font-feature-settings: normal;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	background: #eaf5ff;
	color: #158dfc;
	width: 14px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	padding: 7px 0;
	border-radius: 5px 0 0 5px;
}

.news-list__main {
	padding-left: 14px;
}

.news-list__title {
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
	font-family: "hiragino kaku gothic pro","Meiryo","sans-serif";
}

.cat-label {
	font: 500 0.8rem "Montserrat", "Noto Sans JP", sans-serif;
	display: inline-block;
	padding: 2px 8px 2px 10px;
	background: #eaf5ff;
	color: #158dfc;
	border-radius: 10px;
	letter-spacing: 0.1em;
	margin-bottom: 5px;
}

.sound {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #FFFFFF;
	z-index: 5000;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding-top: 18%;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.sound__switches {
	margin-bottom: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.sound__switch {
	margin: 0 11px;
	position: relative;
}

.sound__icon {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: #158dfc;
	width: 65px;
	height: 65px;
	border-radius: 50%;
}

.sound__icon img {
	width: 100%;
}

.sound__label {
	color: #158dfc;
	font-size: 0.9rem;
	font-family: "Montserrat", "Noto Sans JP", sans-serif;
}

.sound__text {
	font-size: 2.4rem;
	color: #158dfc;
	line-height: 1.64;
	letter-spacing: 0.15em;
	font-family: "Noto Serif JP", serif;
	margin-bottom: 20px;
	padding-left: 20px;
}

.sound__note {
	font-size: 1.0rem;
	color: #158dfc;
	letter-spacing: 0.1em;
	padding-left: 20px;
}

.sound__header {
	position: absolute;
	top: 20px;
	width: 270px;
}

.chara-content {
	padding: 100px 0 400px;
	pointer-events: none;
}

.chara-content .l-wrapper {
	pointer-events: auto;
}

.chara-content--end-long {
	padding-bottom: 400px;
}

.chara-list-wrap {
	width: 93.333333vw;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.chara-list-wrap--msg {
	width: 100%;
}

.chara-list-wrap:not(:last-child) {
	margin-bottom: 5px;
}

.chara-list-wrap-sm {
	margin-bottom: 12px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.chara-list {
	color: #158dfc;
	margin-bottom: 18px;
	width: 25%;
	text-align: center;
	position: relative;
}

.chara-list a {
	padding: 0 0 10px;
	display: block;
}

.chara-list__image {
	margin: 0 3.333333vw 4px;
	overflow: hidden;
	border-radius: 50%;
	position: relative;
}

.chara-list__image:before {
	content: "";
	padding-top: 100%;
	display: block;
}

.chara-list__image img {
	position: absolute;
	top: 0;
	left: 0;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	display: block;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	will-change: transform;
}

.chara-list__name {
	font-size: 1.2rem;
	line-height: 1.3;
}

.chara-list__name-sm {
	font-size: 1.0rem;
	position: relative;
	font-family: "Montserrat", "Noto Sans JP", sans-serif;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 10px;
	letter-spacing: 0.08em;
}

.chara-list__name-sm span {
	display: block;
	white-space: nowrap;
	width: 166%;
	-webkit-transform: scale(0.6);
	-ms-transform: scale(0.6);
	transform: scale(0.6);
	-webkit-transform-origin: left center;
	-ms-transform-origin: left center;
	transform-origin: left center;
}

.chara-list--sm {
	color: #000;
	width: 55px;
}

.chara-list--sm:not(:nth-child(4n)) {
	margin-right: calc((100% - 220px) / 3);
}

.chara-list--sm .chara-list__link {
	padding-bottom: 0;
}

.chara-list--sm .chara-list__image {
	width: 100%;
	margin: 0 auto 4px;
}

.chara-list--sm .chara-list__name {
	display: inline-block;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	white-space: nowrap;
	min-width: 100%;
}

.chara-list-content {
	margin-bottom: 24px;
}

.chara-list-msg {
	margin-bottom: 15px;
}

.chara-list-msg__link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	position: relative;
}

.chara-list-msg__image {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 55px;
	margin-right: 15px;
}

.chara-list-msg__main {
	padding-top: 2px;
}

.chara-list-msg__name {
	letter-spacing: 0.05em;
	margin-bottom: 5px;
}

.chara-list-msg__text {
	color: #777777;
	font-size: 1.2rem;
	line-height: 1.4;
}

.chara-list-msg__time {
	position: absolute;
	top: 2px;
	right: -10px;
	font-size: 1.0rem;
	color: #777777;
	letter-spacing: 0.1em;
}

.chara-mv {
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
}

.chara-mv--release {
	position: absolute;
	top: auto;
	bottom: 0;
}

.chara-bg {
	background: url(../img/bg_chara_01_sp.jpg) no-repeat center/cover;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.chara-bg:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/bg_chara_02_sp.jpg) no-repeat center/cover;
	opacity: 0;
	-webkit-transition: 0.6s;
	-o-transition: 0.6s;
	transition: 0.6s;
}

.chara-mv--change .chara-bg:before {
	opacity: 1;
}

.chara-bg--rival {
	background-image: url(../img/bg_chara_03_sp.jpg);
}

.chara-bg--rival:before {
	background-image: url(../img/bg_chara_04_sp.jpg);
}

.chara-image {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	margin-left: auto;
}

.chara-image img {
	display: block;
}

.chara-image__item {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

.chara-image__item--first {
	opacity: 1;
}

.chara-mv--change .chara-image__item--first {
	opacity: 0;
}

.chara-image__item--second {
	opacity: 0;
}

.chara-mv--change .chara-image__item--second {
	opacity: 1;
}

.chara-intro {
	width: 100%;
	height: 100vh;
	padding-top: 75px;
	padding-bottom: 5vh;
	pointer-events: none;
}

.chara-intro__inner {
	position: relative;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.chara-catchcopy {
	color: #FFFFFF;
	text-shadow: 0 0 25px rgba(255, 255, 255, 0.8);
	font-family: "Noto Serif JP", serif;
	-webkit-font-feature-settings: normal;
	font-feature-settings: normal;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	line-height: 1.5;
	font-size: 8.1vw;
	letter-spacing: 0.12em;
	white-space: nowrap;
	pointer-events: auto;
	width: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.chara-catchcopy--long {
	font-size: 6.7vw;
	-webkit-transform: translateY(-5%);
	-ms-transform: translateY(-5%);
	transform: translateY(-5%);
	height: 105%;
}

.chara-name {
	color: #FFFFFF;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	pointer-events: auto;
}

.chara-name__jp {
	font: 300 10.3vw "Noto Serif JP", serif;
	letter-spacing: 0.08em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.chara-name__jp--long {
	letter-spacing: -0.08em;
}

.chara-name__en {
	font: 500 3.1vw "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	margin-top: 0.8vw;
}

.chara-name__cv {
	margin-top: 5vw;
}

.chara-name__cv__label {
	font: 500 2.7vw "Montserrat", "Noto Sans JP", sans-serif;
	vertical-align: middle;
	display: inline-block;
	margin-bottom: 3px;
}

.chara-name__cv__label:after {
	content: "";
	display: inline-block;
	width: 10px;
	height: 1px;
	background: #FFFFFF;
	vertical-align: middle;
	margin: 0 6px 2px 5px;
}

.chara-name__cv__name {
	font-size: 4.6vw;
	font-weight: 500;
	letter-spacing: 0.16em;
	font-family: "hiragino kaku gothic pro","Meiryo","sans-serif";
}

.chara-name__play {
	width: 40px;
	height: 40px;
	border-radius: 20px;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	vertical-align: middle;
	background: #158dfc;
	margin-left: 10px;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.chara-name__play img {
	width: 56%;
}

.chara-name__play:hover {
	opacity: 0.6;
}

.chara-illust-content {
	padding: 160px 0 30px;
	overflow: hidden;
	pointer-events: none;
}

.chara-illust-wrap {
	position: relative;
}

.chara-illust-wrap:before {
	content: "";
	display: block;
	width: 100%;
	height: 30vw;
	position: absolute;
	left: 0%;
	bottom: -10%;
	background: url(../img/img_shadow_1.svg) no-repeat center bottom/100% auto;
}

.chara-illust-wrap--2:before {
	width: 100%;
	height: 60px;
	bottom: -30px;
}

.chara-illust-wrap--1:before {
	width: 50%;
	height: 30px;
	left: 50%;
	bottom: -15%;
	-webkit-transform: translateX(-46%) rotate(0deg);
	-ms-transform: translateX(-46%) rotate(0deg);
	transform: translateX(-46%) rotate(0deg);
}

.chara-illust {
	-webkit-transform: rotate(-5deg) translateX(-50%) scale(1.08);
	-ms-transform: rotate(-5deg) translateX(-50%) scale(1.08);
	transform: rotate(-5deg) translateX(-50%) scale(1.08);
	position: relative;
	left: 50%;
	width: 100%;
	overflow: hidden;
}

.chara-illust .swiper-wrapper {
	-webkit-transition-timing-function: linear !important;
	-o-transition-timing-function: linear !important;
	transition-timing-function: linear !important;
}

.chara-illust--about {
	pointer-events: none;
}

.chara-illust--about--leftup {
	-webkit-transform: rotate(5deg) translateX(-50%);
	-ms-transform: rotate(5deg) translateX(-50%);
	transform: rotate(5deg) translateX(-50%);
	-webkit-transform-origin: left top;
	-ms-transform-origin: left top;
	transform-origin: left top;
}

.chara-illust__wrapper {
	top: 0;
	left: 0;
	overflow: hidden;
	position: relative;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.chara-illust__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.chara-illust__item {
	width: 100%;
	max-width: 61vw;
}

.chara-illust__item img {
	pointer-events: none;
	display: block;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	max-width: calc(100% + 1px);
}

.images-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	height: 154px;
	-webkit-transform: rotate(-5deg);
	-ms-transform: rotate(-5deg);
	transform: rotate(-5deg);
}

.images-list--no-loop {
	height: auto;
	-webkit-transform: rotate(-5deg) scale(1.08);
	-ms-transform: rotate(-5deg) scale(1.08);
	transform: rotate(-5deg) scale(1.08);
}

.images-list--no-loop .images-list__item {
	width: 50%;
	height: auto;
}

.images-list__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.images-list__item {
	width: 215px;
	height: 154px;
}

.images-list__item a {
	display: block;
}

.images-list__item img {
	display: block;
	width: 100%;
}

#loopslider_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.chara-overview {
	position: relative;
}

.table-1 {
	font-size: 1.3rem;
	letter-spacing: 0.16rem;
	line-height: 1.4;
	border-radius: 5px;
	margin-bottom: 1px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: rgba(255, 255, 255, 0.8);
	overflow: hidden;
}

.table-1__label {
	background: #158dfc;
	color: #FFFFFF;
	width: 110px;
	padding: 16px 10px 16px 14px;
}

.table-1__label--long {
	letter-spacing: 0;
}

.table-1__content {
	width: calc(100% - 110px);
	padding: 16px 10px 16px 14px;
}

.line-deco {
	width: 1000px;
	height: 1px;
	background: #efefef;
	position: relative;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.line-deco:before,
.line-deco:after {
	content: "";
	display: block;
	width: 20px;
	height: 100%;
	background: #158dfc;
	position: absolute;
	top: 0;
}

.line-deco:before {
	left: 0;
}

.line-deco:after {
	right: 0;
}

.line-deco--lg {
	width: calc(100% + 200px);
}

.line-wrap {
	position: relative;
}

.voice {
	padding: 30px 0 30px;
}

.voice__heading {
	text-align: center;
	font: 500 1.2rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	margin-bottom: 22px;
}

.voice__heading:before {
	content: "";
	display: block;
	width: 36px;
	height: 24px;
	margin: 0 auto 11px;
	background: url(../img/icon_voice.svg) no-repeat center/contain;
}

.voice__main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.voice__button {
	display: block;
	width: 104px;
	color: #158dfc;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.voice__button.is-playing {
	color: #1541fc;
}

.voice__button.is-playing .voice__number {
	background: #1541fc;
}

.voice__number {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #158dfc;
	color: #FFFFFF;
	margin: 0 auto 8px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	font: 500 1.3rem "Montserrat", "Noto Sans JP", sans-serif;
}

.voice__text {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	line-height: 1.2;
	display: block;
}

.profile {
	padding: 0 0 50px;
}

.profile__item:not(:last-child) {
	margin-bottom: 3px;
}

.profile__heading {
	font: 300 2.8rem "Noto Serif JP", serif;
	position: relative;
	padding: 10px 25px 8px;
	margin-bottom: 22px;
	letter-spacing: 0.2em;
}

.profile__heading:before {
	content: "";
	background: #158dfc;
	width: 30px;
	height: 5px;
	position: absolute;
	bottom: 25px;
	left: 0;
	-webkit-transform: translateY(50%) scale(0.5);
	-ms-transform: translateY(50%) scale(0.5);
	transform: translateY(50%) scale(0.5);
	-webkit-transform-origin: center left;
	-ms-transform-origin: center left;
	transform-origin: center left;
}

.profile__heading:after {
	content: "";
	display: block;
	background: #eaf5ff;
	width: 93.333333vw;
	height: 25px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.profile__text {
	font-size: 1.3rem;
	letter-spacing: 0.15em;
	line-height: 1.4;
	padding-left: 25px;
}

.buttons {
	padding: 0 12px;
}

.buttons__item:not(:last-child) {
	margin-bottom: 25px;
}

.eyecatch {
	text-align: center;
	width: 100vw;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	margin-bottom: 22px;
}

.eyecatch img {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.text-date {
	color: #158dfc;
	font: 500 0.9rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.15em;
}

.post-info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 8px;
}

.post-info--noimg {
	padding-top: 40px;
}

.post-title {
	font-size: 1.6rem;
	line-height: 1.5625;
	color: #158dfc;
	letter-spacing: 0.15em;
	margin-bottom: 14px;
}

.wp-content {
	font-size: 1.3rem;
	font-weight: 400;
	line-height: 1.54;
	letter-spacing: 0.15em;
}

.wp-content > * {
	margin-bottom: 1.54em;
}

.wp-content a {
	color: #158dfc;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}

.wp-content a:hover {
	text-decoration: underline;
}

.wp-content h2,
.wp-content h3,
.wp-content h4,
.wp-content h5,
.wp-content h6 {
	color: #158dfc;
}

.wp-content ul > li:not(.blocks-gallery-item) {
	padding-left: 18px;
	text-indent: -18px;
}

.wp-content ul > li:not(.blocks-gallery-item):not(:last-child) {
	margin-bottom: 5px;
}

.wp-content ul > li:not(.blocks-gallery-item):before {
	content: "";
	display: inline-block;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #000;
	vertical-align: middle;
	margin: 0 8px 3px 6px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.wp-content ol {
	counter-reset: item;
	list-style-type: none;
}

.wp-content ol > li {
	padding-left: 20px;
	text-indent: -20px;
}

.wp-content ol > li:not(:last-child) {
	margin-bottom: 5px;
}

.wp-content ol > li:before {
	counter-increment: item;
	content: counter(item) ".";
	color: #000;
	font-family: "Montserrat", "Noto Sans JP", sans-serif;
	font-weight: 500;
	margin-right: 3px;
}

.wp-content strong {
	font-weight: bold;
}

.wp-content em {
	font-style: italic;
}

.wp-content pre {
	white-space: pre-wrap;
}

.wp-content .wp-block-button__link {
	text-decoration: none;
}

.wp-content table {
	border: 1px solid #000;
}

.wp-content table thead {
	background: #F8F8F8;
	font-weight: 700;
}

.wp-content table th,
.wp-content table td {
	border: 1px solid #000;
	padding: 10px 10px;
}

.wp-content code {
	background: #f7f6f6;
}

.wp-content blockquote {
	background: #f7f6f6;
	padding: 20px 30px;
}

.wp-content img {
	border: none !important;
}

.wp-content .gallery-item img {
	width: 100%;
}

.post-share {
	padding: 24px 0;
}

.sns-share {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.sns-share__item {
	margin: 0 12.5px;
}

.sns-share__item a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: #158dfc;
	color: #FFFFFF;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.sns-share__item a:hover {
	background: #1541fc;
}

.sns-share__item img {
	width: 26.5px;
	display: block;
}

.sns-share__item img[src*='twitter'] {
	width: 23px;
}

.pager {
	position: relative;
	margin-top: 25px;
}

.pager:before,
.pager:after {
	content: "";
	display: block;
	width: 100vw;
	height: 1px;
	background: #efefef;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.pager:before {
	top: 0;
}

.pager:after {
	bottom: 0;
}

.pager__inner:before,
.pager__inner:after {
	content: "";
	display: table;
}

.pager__inner:after {
	clear: both;
}

.pager__link {
	display: block;
	height: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.pager__link--prev {
	float: left;
	padding-right: 30px;
}

.pager__link--prev:before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 3px;
	background: #158dfc;
	display: inline-block;
	margin-right: 10px;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.pager__link--prev:hover:before {
	margin-right: 24px;
	width: 20px;
}

.pager__link--next {
	float: right;
	padding-left: 30px;
}

.pager__link--next:after {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 3px;
	background: #158dfc;
	display: inline-block;
	margin-left: 10px;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.pager__link--next:hover:after {
	margin-left: 24px;
	width: 20px;
}

.pager__link--list {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 0 30px;
}

.btn-friend-list {
	position: fixed;
	bottom: 52vw;
	right: 0;
	width: 100px;
	height: 100px;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
}

.btn-friend-list--flow {
	opacity: 0;
}

.btn-friend-list:hover .btn-friend-list__icon {
	background: #1541fc;
	border-color: #1541fc;
}

.btn-friend-list:hover .btn-friend-list__text {
	background: #1541fc;
}

.btn-friend-list__icon {
	display: block;
	width: 100%;
	height: 100%;
	padding-bottom: 26px;
	border-radius: 50%;
	background: #158dfc;
	-webkit-box-shadow: 0 0 0 5px #FFFFFF inset;
	box-shadow: 0 0 0 5px #FFFFFF inset;
	border: 2px solid #158dfc;
	-webkit-transition: background 0.5s, border 0.5s;
	-o-transition: background 0.5s, border 0.5s;
	transition: background 0.5s, border 0.5s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding-top: 10%;
}

.btn-friend-list__icon img {
	width: 55%;
}

.btn-friend-list__text {
	background: #158dfc;
	color: #FFFFFF;
	width: 84%;
	height: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	border-radius: 20px;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
	position: absolute;
	bottom: 6px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.friend-list {
	background: #FFFFFF;
	width: 100vw;
	height: 100%;
}

.friend-list__inner {
	border-radius: 10px;
	padding-bottom: 90px;
	overflow-y: auto;
	height: 100%;
	-webkit-overflow-scrolling: touch;
}

.banners {
	position: relative;
}

.banners__item {
	width: calc(100% - 50px);
	margin: 0 auto 10px;
	border-radius: 5px;
	overflow: hidden;
}

.banners__item a {
	display: block;
	background: #FFFFFF;
}

.banners__item img {
	display: block;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.banner-content {
	padding: 0 0 90px;
}

.news-pickup {
	position: relative;
	padding: 35px 0;
}

.news-pickup__image {
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0;
	width: 73vw;
	height: 225px;
}

.news-pickup__image img {
	max-width: initial;
	width: 550px;
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.news-pickup__head {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 46px;
}

.news-pickup__head .button {
	margin-top: 20px;
}

.news-pickup__main {
	padding: 0 12px;
}

.news-pickup__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.news-pickup__inner .news-list {
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.twitter {
	padding: 42px 0 100px;
}

.twitter__head {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 22px;
}

.twitter__icon {
	width: 32px;
}

.twitter__body {
	border: 1px solid #efefef;
	border-radius: 5px;
	height: 384px;
	overflow: scroll;
}

.twitter__body iframe {
	width: 100%;
	height: 100%;
}

.game {
	position: relative;
	padding: 0 0 50px;
}

.game__head {
	margin-bottom: 30px;
}

.game__main {
	background: #158dfc;
	color: #FFFFFF;
	width: 275px;
	margin: 34px auto 68px;
	border-radius: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 40px 0;
}

.game__app-name {
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-align: center;
	margin-bottom: 18px;
}

.movie-pickup {
	padding-top: 50px;
	padding-bottom: 50px;
	position: relative;
}

.movie-pickup__bar {
	width: 100%;
	height: 150px;
	background: #158dfc;
	position: absolute;
	top: -4vh;
	left: 50%;
	z-index: -1;
}

.movie-pickup__heading {
	font: 500 3.5rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	text-align: center;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 4;
}

.movie-pickup__movie {
	max-width: 275px;
	margin-left: auto;
	margin-right: auto;
}

.movie {
	display: block;
	width: calc(50% - 11px);
}

.movie--lg {
	width: 100%;
}

.movie--lg .movie__main:after {
	width: 46px;
	height: 46px;
}

.movie__main {
	display: block;
	position: relative;
}

.movie__main:before {
	content: "";
	display: block;
	width: 50%;
	height: 10%;
	background: #d7d7d7;
	border-radius: 4px;
	position: absolute;
	right: 5px;
	top: 100%;
	-webkit-transform: translateY(-50%) rotate(4deg);
	-ms-transform: translateY(-50%) rotate(4deg);
	transform: translateY(-50%) rotate(4deg);
	-webkit-transform-origin: top right;
	-ms-transform-origin: top right;
	transform-origin: top right;
}

.movie__main:after {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: url(../img/icon_play_white.svg) no-repeat center/100% auto;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	overflow: hidden;
}

.movie__thumbnail {
	display: block;
	position: relative;
	padding-top: 56.25%;
	overflow: hidden;
	border-radius: 6px;
}

.movie__thumbnail img {
	position: relative;
	display: block;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.movie__text {
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
	margin-top: 12px;
}

.movie__text--sm {
	font-size: 1.2rem;
	margin-top: 7px;
}

.accordion-section {
	background: #f8f8f8;
}

.accordion-section + .accordion-section {
	margin-top: 5px;
}

.accordion-section__head {
	position: relative;
}

.accordion-section__head:before {
	content: "";
	display: block;
	width: 25px;
	height: 2.5px;
	background: #158dfc;
	position: absolute;
	top: 0;
	left: 6.66667%;
}

.accordion-section__trg {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 20px 6.66667%;
	color: #158dfc;
	width: 100%;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
}

.accordion-section__trg:after {
	content: "";
	display: block;
	width: 14px;
	height: 8px;
	position: absolute;
	top: 50%;
	right: 6.66667%;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	background: url(../img/icon_arrow_bottom_blue.svg) no-repeat center/contain;
}

.accordion-section__trg span {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
	padding-right: 23px;
}

.accordion-section__trg.is-opend:after {
	-webkit-transform: rotate(180deg) translateY(50%);
	-ms-transform: rotate(180deg) translateY(50%);
	transform: rotate(180deg) translateY(50%);
}

.accordion-section__main {
	display: none;
}

.accordion-section__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 0 0 20px;
}

.official-sns {
	margin-top: 100px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	position: relative;
	padding: 24px 0;
}

.official-sns:before,
.official-sns:after {
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	content: "";
	display: block;
	width: 100vw;
	height: 1px;
	background: #efefef;
}

.official-sns:before {
	top: 0;
}

.official-sns:after {
	bottom: 0;
}

.official-sns__heading {
	font: 500 1.2rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
}

.official-sns__main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.official-sns__item {
	margin-left: 20px;
}

.official-sns__item a {
	display: block;
}

.official-sns__item img {
	display: block;
}

.official-sns__item img[src*='twitter'] {
	width: 26px;
}

.official-sns__item img[src*='yotube'] {
	width: 95px;
}

.official-sns__item img[src*='line'] {
	width: 28px;
}

.official-sns__item img[src*='discord'] {
	width: 26px;
}

.about-section {
	padding-top: 50px;
}

.about-section__scrollin--1 {
	opacity: 0;
	-webkit-transform: translate(0, 60px);
	-ms-transform: translate(0, 60px);
	transform: translate(0, 60px);
}

.about-section__scrollin--1.is-visible {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
	-webkit-transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	-o-transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.about-section__scrollin--5:before {
	opacity: 0;
}

.about-section__scrollin--5.is-visible:before {
	opacity: 1;
	-webkit-transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	-o-transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.about-section__main {
	position: relative;
}

.about-section__main--1 {
	background: url(../img/bg_about_01_sp.jpg) no-repeat center/100% auto;
}

.about-section__main--1:before {
	left: -48px;
	background: url(../img/bg_about_01_pc.jpg) no-repeat center/contain;
}

.about-section__main--2 {
	background: url(../img/bg_about_02_sp.jpg) no-repeat center/100% auto;
}

.about-section__main--2:before {
	right: -48px;
	background: url(../img/bg_about_02_pc.jpg) no-repeat center/contain;
}

.about-section__main--3 {
	background: url(../img/bg_about_03_sp.jpg) no-repeat center/100% auto;
}

.about-section__main--3:before {
	left: -48px;
	background: url(../img/bg_about_03_pc.jpg) no-repeat center/contain;
}

.about-section__text-wrap {
	width: 79.6%;
	margin-left: auto;
	margin-right: auto;
}

.about-section__text-wrap--2 .about-text {
	margin-left: auto;
}

.about-section__text-wrap .about-text {
	opacity: 0;
	-webkit-transform: translate(0, 80px);
	-ms-transform: translate(0, 80px);
	transform: translate(0, 80px);
}

.about-section__text-wrap .about-text.is-visible {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
	-webkit-transition: 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	-o-transition: 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.about-section__image {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
}

.about-section__image img {
	display: block;
	position: absolute;
	opacity: 0;
	-webkit-transform: translate(60px, -60px) rotate(-10deg);
	-ms-transform: translate(60px, -60px) rotate(-10deg);
	transform: translate(60px, -60px) rotate(-10deg);
}

.about-section__image img.is-visible {
	opacity: 1;
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	-webkit-transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	-o-transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.about-section__image--1:before {
	left: 86.888888%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.about-section__image--1__01 {
	width: 50%;
	top: -3.6%;
	right: -3.3%;
}

.about-section__image--1__02 {
	width: 59.6%;
	right: -7%;
	top: 28.2vw;
	z-index: 6;
}

.about-section__image--2:before {
	top: -4%;
	right: 86.888888%;
	-webkit-transform: translateX(50%);
	-ms-transform: translateX(50%);
	transform: translateX(50%);
}

.about-section__image--2__01 {
	width: 68%;
	top: 0.4%;
	left: -16%;
}

.about-section__image--2__02 {
	width: 64%;
	left: -4.7%;
	top: 34vw;
}

.about-section__image--3 {
	z-index: 8;
}

.about-section__image--3:before {
	content: none;
}

.about-section__image--3__01 {
	width: 50%;
	top: -3.1%;
	right: 4.7%;
}

.about-section__image--3__02 {
	width: 57%;
	right: 8.3%;
	top: 25.7vw;
}

.about-section__films {
	opacity: 0;
	-webkit-transform: translate(0, 80px);
	-ms-transform: translate(0, 80px);
	transform: translate(0, 80px);
}

.about-section__films.is-visible {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
	-webkit-transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	-o-transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.about-section__films--1 {
	margin-top: 7.7vw;
}

.about-section__films--1 img {
	width: 100%;
}

.about-section__films--3 {
	margin-top: 7.4vw;
	z-index: 10;
	position: relative;
}

.about-section__swiper-wrap {
	height: 35.6vw;
	position: relative;
}

.about-section__swiper-wrap:before {
	content: "";
	display: block;
	width: 100%;
	height: 30vw;
	position: absolute;
	left: 0;
	bottom: -2.6vw;
	background: url(../img/img_shadow_1.svg) no-repeat center bottom/100% auto;
}

.about-section__swiper-wrap--leftup {
	padding-top: 5vw;
}

.about-section__swiper-wrap--leftup:before {
	background: url(../img/img_shadow_2.svg) no-repeat center bottom/100% auto;
}

.about-section__swiper.swiper-slide {
	width: auto;
	height: 25.4vw;
}

.about-section__swiper.swiper-slide img {
	max-width: initial;
	height: 100%;
	width: auto;
}

.about-text {
	-webkit-font-feature-settings: normal;
	font-feature-settings: normal;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	line-height: 1.75;
	font-size: 4.7vw;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.12em;
	text-shadow: 0 0 3px #FFFFFF, 2px 2px 6px #FFFFFF;
}

.about-movie {
	position: relative;
	max-width: 275px;
	margin-left: auto;
	margin-right: auto;
}

.about-link {
	margin-top: 14vw;
	margin-bottom: 42vw;
}

.about-link__item {
	margin-bottom: 17.5vw;
}

.about-link__item:nth-child(odd) {
	padding-left: 7.1vw;
}

.about-link__item:nth-child(even) {
	padding-right: 7.1vw;
	text-align: right;
}

.about-link__link {
	display: block;
	position: relative;
	padding: 24px 20px;
	color: #158dfc;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.about-link__link:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 40px;
	background: #eaf5ff;
}

.about-link__text {
	position: relative;
	font: 500 7.8vw "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.05em;
}

.about-link__image {
	position: absolute;
}

.about-link__image--1 {
	right: 8.1%;
	bottom: -13vw;
}

.about-link__image--1 img {
	width: 48vw;
}

.about-link__image--2 {
	left: 7.1vw;
	top: 58%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.about-link__image--2 img {
	width: 50.666666vw;
}

.about-link__image--3 {
	right: 5%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.about-link__image--3 img {
	width: 42.93333vw;
}

.story-text {
	-webkit-font-feature-settings: normal;
	font-feature-settings: normal;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	line-height: 1.89;
	font-size: 4.26vw;
	font-weight: 300;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.08em;
}

.story-text--wide {
	line-height: 3.15;
}

.story-text--lh0 {
	line-height: 1;
}

.story-text span:not([class]) {
	padding: 1.5vw 0;
}

.story-text__strong {
	position: relative;
}

.story-text__strong:before {
	content: "";
	display: inline-block;
	width: 1px;
	height: 26.666666vw;
	background: #000;
	margin: 4vw auto -0.4vw;
}

.story-text__lg {
	position: relative;
	line-height: 1;
	display: inline-block;
	font-size: 195%;
}

.story-text__lg:before {
	content: "";
	display: block;
	width: 74.266666vw;
	height: 74.266666vw;
	background: url(../img/circle_orange.png) no-repeat center/contain;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.story-text__lg span:not([class]) {
	padding: 0.3em 0;
}

.story-lg-text {
	-webkit-font-feature-settings: normal;
	font-feature-settings: normal;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	line-height: 2.05;
	font-size: 8vw;
	font-weight: 300;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.10em;
	white-space: nowrap;
}

.story-lg-text .half-space {
	padding: 0.3em 0 0;
}

.story-xlg-text {
	-webkit-font-feature-settings: normal;
	font-feature-settings: normal;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	line-height: 2.05;
	font-size: 10.4vw;
	font-weight: 300;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.10em;
	white-space: nowrap;
}

.story-xlg-text .half-space {
	padding: 0.3em 0 0;
}

.story01 {
	position: relative;
	padding: 13.3vw 0 17vw;
}

.story01:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	right: 56.2vw;
	width: 198px;
	height: 275px;
	z-index: -1;
	background: url(../img/img_story_01.png) no-repeat center top/100% auto;
}

.story01__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.story02 {
	position: relative;
}

.story02__image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.story02__image img {
	max-width: initial;
	height: 100%;
	width: auto;
	position: absolute;
	bottom: 0;
	left: 0;
	-webkit-transition: 0.1s;
	-o-transition: 0.1s;
	transition: 0.1s;
}

.story02__inner {
	padding: 13.3vw 3.4% 34.2vw;
}

.story02__inner .story-text {
	margin-left: auto;
}

.story03 {
	position: relative;
	padding: 16.6vw 0 15.5vw;
}

.story03__inner {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.story03__inner:before {
	position: absolute;
	top: 13.6vw;
	left: 22.26vw;
	content: "";
	display: block;
	width: 107.866666vw;
	height: 107.866666vw;
	background: url(../img/circle_orange.png) no-repeat center/contain;
}

.story03__inner .story-text {
	width: 38%;
	padding-bottom: 2.2em;
}

.story03__imagebox-1 {
	position: absolute;
	top: 0;
	left: 5%;
	-webkit-transform: translate(0, -43%);
	-ms-transform: translate(0, -43%);
	transform: translate(0, -43%);
	width: 66.266666vw;
}

.story03__imagebox-2 {
	position: relative;
	width: 90.7vw;
	margin: 9vw 0 0 0;
	padding: 20.3vw 0 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.story03__image-2 {
	position: absolute;
	top: 0;
	left: -6.5vw;
	width: 66.266666vw;
}

.story03__image-3 {
	width: 53vw;
	position: relative;
}

.story03__image-4 {
	width: 51vw;
	position: absolute;
	bottom: -19vw;
	left: -14vw;
}

.story04 {
	position: relative;
}

.story04__imagebox-1 {
	position: absolute;
	top: 0;
	left: 0;
	width: 65vw;
	height: 146.666666vw;
	overflow: hidden;
}

.story04__imagebox-1 img {
	max-width: initial;
	height: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
}

.story04__inner {
	width: 64vw;
	height: 146.666666vw;
	position: relative;
}

.story04__inner .story-xlg-text {
	position: absolute;
	top: 47vw;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.story04__imagebox-2 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.story04__imagebox-2 img {
	position: absolute;
	display: block;
}

.story04__image-1 {
	width: 51.733333vw;
	top: 10.4vw;
	right: 7.1vw;
}

.story04__image-2 {
	width: 52.933333vw;
	top: 54.3vw;
	right: -8vw;
}

.story05 {
	position: relative;
	padding-bottom: 43vw;
	margin-bottom: 11.8vw;
}

.story05__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	padding: 0 2%;
}

.story05__inner .story-text:first-child {
	-webkit-transform: translateY(-20.6vw);
	-ms-transform: translateY(-20.6vw);
	transform: translateY(-20.6vw);
}

.story05__inner .story-text:nth-child(2) {
	padding: 6.7vw 3vw 0 0;
}

.story05__imagebox-1 {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 59.5%;
	height: 69vw;
}

.story05__imagebox-1 img {
	position: absolute;
	display: block;
}

.story05__image-1 {
	width: 66.266666vw;
	max-width: 100vw;
	right: 14.4vw;
	top: 0;
}

.story05__image-2 {
	width: 52.933333vw;
	bottom: 0;
	right: 0;
}

.story06 {
	position: relative;
}

.story06__image-1 {
	height: 66.666666vw;
	position: relative;
	overflow: hidden;
}

.story06__image-1 img {
	position: absolute;
	bottom: 0;
	left: 50%;
	display: block;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.story06__image-2 {
	width: 66.26666vw;
	margin: -31vw auto 0;
	position: relative;
	z-index: 10;
}

.story06__image-3 {
	margin: -110px auto 0;
	text-align: center;
	z-index: 5;
}

.story06__swiper-wrap {
	margin-top: -38px;
	z-index: 5;
}

.story06__swiper-wrap .images-list__item {
	width: 150px;
	height: 107px;
}

.bg-gray {
	background: #f8f8f8;
	padding: 20px 0 50px;
}

.movie-list-1 {
	position: relative;
	padding-top: 25px;
}

.movie-list-1:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100px;
	background: #eaf5ff;
}

.movie-list-1__item {
	max-width: 275px;
	margin: 0 auto 50px;
}

.movie-list-2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 20px;
}

.movie-list-2__item {
	margin-bottom: 30px;
}

.unit {
	margin-bottom: 75px;
}

.unit__item {
	position: relative;
}

.unit__link {
	display: block;
	background: #eaf5ff;
	overflow: visible;
	width: 100%;
	height: calc(53.3vw + 40px);
	position: relative;
}

.unit__link:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 24vw;
	background: #FFFFFF;
}

.unit__logo {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 5;
}

.unit__logo img[src*="huit"] {
	width: 150px;
	margin: 0 6vw -3px 0;
}

.unit__logo img[src*="clutch"] {
	width: 155px;
	margin: 0 5vw 0 0;
}

.unit__logo img[src*="inhi16"] {
	width: 132px;
	margin: 0 5vw 2px 0;
}

.unit__logo img[src*="twin"] {
	width: 134px;
	margin: 0 6.5vw -7px 0;
}

.unit__text {
	font-size: 1.3rem;
	color: #FFFFFF;
	background: #158dfc;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 10px 7.1vw;
	letter-spacing: 0.15em;
	height: 40px;
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
}

.unit__text--long {
	letter-spacing: 0.05em;
}

.unit__text span {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	vertical-align: middle;
	display: inline-block;
	letter-spacing: 0.1em;
}

.unit__text span:after {
	content: "";
	display: inline-block;
	width: 20px;
	height: 1px;
	background: rgba(255, 255, 255, 0.5);
	margin: 0 9px;
	vertical-align: middle;
}

.unit__image {
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	display: block;
	width: 100%;
	height: 100%;
}

.unit__image img {
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	max-width: initial;
}

.unit__image img[src*="huit"] {
	width: 73vw;
	margin-top: 10px;
}

.unit__image img[src*="clutch"] {
	width: 94vw;
}

.unit__image img[src*="inhi16"] {
	width: 86vw;
}

.unit__image img[src*="twin"] {
	width: 58vw;
	margin-top: 10px;
}

.unit__trg {
	color: #FFFFFF;
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 1.2rem;
	font-weight: 500;
	font-family: "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
	display: block;
	line-height: 40px;
	margin: 0 5vw 0 0;
}

.unit__trg__text {
	opacity: 0;
}

.unit__trg__icon {
	display: block;
	width: 9px;
	height: 9px;
	border-right: 1px solid #FFFFFF;
	border-bottom: 1px solid #FFFFFF;
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	-ms-transform: rotate(45deg) translate(-50%, -50%);
	transform: rotate(45deg) translate(-50%, -50%);
	position: absolute;
	top: 50%;
	right: 0;
}

.unit__trg__icon.is-opend {
	top: 70%;
	-webkit-transform: rotate(-135deg) translate(50%, 50%);
	-ms-transform: rotate(-135deg) translate(50%, 50%);
	transform: rotate(-135deg) translate(50%, 50%);
}

.line-wrap {
	position: relative;
}

.line-wrap:last-child {
	padding-bottom: 0;
}

.line-wrap:before {
	content: "";
	display: block;
	width: 100vw;
	height: 100px;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: -1;
}

.line-wrap--blue {
	padding: 22px 0 50px;
}

.line-wrap--blue:before {
	background: #eaf5ff;
}

.line-wrap--gray {
	padding: 22px 0 50px;
}

.line-wrap--gray:before {
	background: #f8f8f8;
}

.line-wrap--mb0 {
	padding-bottom: 0;
}

.disc-wrap {
	width: 100vw;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.disc-wrap::-webkit-scrollbar {
	display: none;
}

.disc-wrap__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-bottom: 10px;
}

.disc-item {
	width: 140px;
	margin-right: 15px;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	position: relative;
}

.disc-item:first-child {
	margin-left: 7.1vw;
}

.disc-item__link {
	position: relative;
	padding: 10px 10px 15px;
	display: block;
	z-index: 5;
	border-radius: 5px;
	background: #f8f8f8;
	overflow: hidden;
	height: 100%;
}

.disc-item__link:before {
	content: "";
	display: block;
	width: 100%;
	height: 40px;
	background: #158dfc;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.disc-item__image {
	position: relative;
	margin-bottom: 12px;
	overflow: hidden;
}

.disc-item__image img {
	display: block;
	position: relative;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.disc-item__name {
	font-size: 1.3rem;
	line-height: 1.4;
	color: #158dfc;
	letter-spacing: 0.15em;
	margin-bottom: 5px;
}

.disc-item__label {
	font-size: 1.0rem;
	-webkit-transform: scale(0.8);
	-ms-transform: scale(0.8);
	transform: scale(0.8);
	-webkit-transform-origin: center left;
	-ms-transform-origin: center left;
	transform-origin: center left;
	display: inline-block;
	padding: 5px 10px;
	background: #FFFFFF;
	border-radius: 10px;
	letter-spacing: 0.15em;
	margin-bottom: 3px;
}

.disc-item__text {
	font-size: 1.2rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	margin-bottom: 2px;
}

.disc-item__info {
	font-size: 1.0rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
}

.banner-4col-wrap {
	width: 100vw;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.banner-4col-wrap::-webkit-scrollbar {
	display: none;
}

.banner-4col {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.banner-4col__item {
	padding: 0 8px 0 7px;
}

.banner-4col__item:first-child {
	margin-left: calc(7.1vw - 7px);
}

.banner-4col__item a {
	display: block;
	width: 275px;
}

.banner-4col__item img {
	display: block;
}

.spcial-list-wrap {
	margin-bottom: 50px;
}

.spcial-list {
	position: relative;
	margin-bottom: 25px;
}

.spcial-list:before {
	content: "";
	display: block;
	width: 100%;
	height: 75px;
	position: absolute;
	top: 0;
	left: 0;
	background: #eaf5ff;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.spcial-list a {
	display: block;
	position: relative;
}

.spcial-list__title {
	position: relative;
	font-size: 1.6rem;
	letter-spacing: 0.15em;
	line-height: 1.4;
	padding: 15px 0 13px;
}

.spcial-list__title:before {
	content: "";
	width: 45px;
	height: 5px;
	background: #158dfc;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

.spcial-list__main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 5px;
}

.spcial-list__image {
	width: 46%;
	border-radius: 5px;
	overflow: hidden;
}

.spcial-list__image img {
	display: block;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.spcial-list__text {
	width: 50%;
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
	margin-top: -4px;
}

.lightnovel-list-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.lightnovel-list {
	width: 28.7%;
}

.lightnovel-list:not(:last-child) {
	margin-right: 6.95%;
}

.lightnovel-list a {
	display: block;
}

.lightnovel-list__image {
	margin-bottom: 8px;
	overflow: hidden;
}

.lightnovel-list__image img {
	display: block;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.lightnovel-list__text {
	font-size: 1.2rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
}

.stamp-list {
	margin-bottom: 5px;
}

.stamp-list a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 0 16px 0 20px;
	border-left: 15px solid #158dfc;
	border-radius: 5px;
	height: 100px;
	background: #eaf5ff;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.stamp-list img {
	width: 78px;
}

.stamp-list__text {
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
	display: block;
	padding: 15px 0 0;
	height: 100%;
}

.special-head {
	font: 300 2.4rem "Noto Serif JP", serif;
	text-align: center;
	letter-spacing: 0.15em;
	line-height: 1.8;
	color: #FFFFFF;
	height: 175px;
	background-size: cover;
	background-position: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-bottom: 50px;
}

.special-head--shosetsu {
	background-image: url(../img/img_head_shosetsu_sp.jpg);
}

.special-head--gogo {
	background-image: url(../img/img_head_gogo_sp.jpg);
}

.special-head--katato {
	background-image: url(../img/img_head_katato_sp.jpg);
}

.novel-list-wrap {
	margin-bottom: 50px;
}

.novel-list {
	font-size: 1.3rem;
	line-height: 1.4;
	margin-bottom: 15px;
}

.novel-list:before {
	right: 10px;
}

.novel-list a {
	position: relative;
	height: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	border-radius: 5px;
	background: #eaf5ff;
	overflow: hidden;
}

.novel-list a:before {
	content: "";
	display: block;
	width: 15px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: #158dfc;
}

.novel-list__text {
	display: block;
	width: 100%;
	padding: 0 35px;
	letter-spacing: 0.15em;
}

.comic-list-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 25px;
}

.comic-list {
	width: calc(50% - 12px);
	margin-bottom: 20px;
}

.comic-list a {
	display: block;
}

.comic-list__image {
	position: relative;
	overflow: hidden;
	padding-top: 56.333333%;
	border-radius: 5px;
	overflow: hidden;
}

.comic-list__image img {
	display: block;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.comic-list__text {
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
	display: block;
	margin-top: 13px;
}

.label-new {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	background: #ffb900;
	letter-spacing: 0.1em;
	width: 100px;
	position: absolute;
	top: 0;
	left: -25px;
	-webkit-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	transform: rotate(-30deg);
	padding: 1px 25px 1px;
	z-index: 10;
	color: #000 !important;
}

.special-detail {
	position: relative;
	margin-top: 15px;
	padding-top: 30px;
}

.special-detail:before {
	content: "";
	display: block;
	position: fixed;
	top: 95px;
	right: 0;
	width: 215px;
	height: 700px;
	background-position: right top;
	background-repeat: no-repeat;
	background-size: contain;
}

.special-detail--arihara:before {
	background-image: url(../img/chara_blue/arihara.jpg);
}

.special-detail--shinonome:before {
	background-image: url(../img/chara_blue/shinonome.jpg);
}

.special-detail--nozaki:before {
	background-image: url(../img/chara_blue/nozaki.jpg);
}

.special-detail--kawakita:before {
	background-image: url(../img/chara_blue/kawakita.jpg);
}

.special-detail--ukita:before {
	background-image: url(../img/chara_blue/ukita.jpg);
}

.special-detail--nakano:before {
	background-image: url(../img/chara_blue/nakano.jpg);
}

.special-detail--suzuki:before {
	background-image: url(../img/chara_blue/suzuki.jpg);
}

.special-detail--iwaki:before {
	background-image: url(../img/chara_blue/iwaki.jpg);
}

.special-detail--kurashiki:before {
	background-image: url(../img/chara_blue/kurashiki.jpg);
}

.special-detail--tsukumo:before {
	background-image: url(../img/chara_blue/tsukumo.jpg);
}

.special-detail--hase:before {
	background-image: url(../img/chara_blue/hase.jpg);
}

.special-detail--asada:before {
	background-image: url(../img/chara_blue/asada.jpg);
}

.special-detail--naoe:before {
	background-image: url(../img/chara_blue/naoe.jpg);
}

.special-detail--amakusa:before {
	background-image: url(../img/chara_blue/amakusa.jpg);
}

.special-detail--kondo:before {
	background-image: url(../img/chara_blue/kondo.jpg);
}

.special-detail--nagai:before {
	background-image: url(../img/chara_blue/nagai.jpg);
}

.special-detail--nitta:before {
	background-image: url(../img/chara_blue/nitta.jpg);
}

.special-detail--hanayama:before {
	background-image: url(../img/chara_blue/hanayama.jpg);
}

.special-detail--asahina:before {
	background-image: url(../img/chara_blue/asahina.jpg);
}

.special-detail--tsukishima:before {
	background-image: url(../img/chara_blue/tsukishima.jpg);
}

.special-detail--senba:before {
	background-image: url(../img/chara_blue/senba.jpg);
}

.special-detail--akino:before {
	background-image: url(../img/chara_blue/akino.jpg);
}

.special-detail--taketomi:before {
	background-image: url(../img/chara_blue/taketomi.jpg);
}

.special-detail--izumida:before {
	background-image: url(../img/chara_blue/izumida.jpg);
}

.special-detail--sakagami:before {
	background-image: url(../img/chara_blue/sakagami.jpg);
}

.special-detail--aisaka:before {
	background-image: url(../img/chara_blue/aisaka.jpg);
}

.special-detail--hiiragi:before {
	background-image: url(../img/chara_blue/hiiragi.jpg);
}

.special-detail--tsukahara:before {
	background-image: url(../img/chara_blue/tsukahara.jpg);
}

.special-detail--honjo:before {
	background-image: url(../img/chara_blue/honjo.jpg);
}

.special-detail--shiina:before {
	background-image: url(../img/chara_blue/shiina.jpg);
}

.special-detail--agatsuma:before {
	background-image: url(../img/chara_blue/agatsuma.jpg);
}

.special-detail--sakurada:before {
	background-image: url(../img/chara_blue/sakurada.jpg);
}

.special-detail--takanashi:before {
	background-image: url(../img/chara_blue/takanashi.jpg);
}

.special-detail--lihua:before {
	background-image: url(../img/chara_blue/lihua.jpg);
}

.special-detail--kusakari:before {
	background-image: url(../img/chara_blue/kusakari.jpg);
}

.special-detail--jinguji:before {
	background-image: url(../img/chara_blue/jinguji.jpg);
}

.special-detail--makino:before {
	background-image: url(../img/chara_blue/makino.jpg);
}

.special-detail--hifumi:before {
	background-image: url(../img/chara_blue/hifumi.jpg);
}

.special-detail--todo:before {
	background-image: url(../img/chara_blue/todo.jpg);
}

.special-detail--kousaka:before {
	background-image: url(../img/chara_blue/kousaka.jpg);
}

.special-detail--shiomi:before {
	background-image: url(../img/chara_blue/shiomi.jpg);
}

.special-detail--osaki:before {
	background-image: url(../img/chara_blue/osaki.jpg);
}

.special-detail--onizuka:before {
	background-image: url(../img/chara_blue/onizuka.jpg);
}

.special-detail--starffin:before {
	background-image: url(../img/chara_blue/starffin.jpg);
}

.special-detail--sanders:before {
	background-image: url(../img/chara_blue/sanders.jpg);
}

.comic-content {
	padding: 6px 0;
	max-width: 750px;
}

.comic-content img {
	width: 70%;
	min-width: 184px;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.landscape {
	opacity: 0;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
	visibility: hidden;
	pointer-events: none;
	background: #158dfc;
	color: #FFFFFF;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 4000;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
}

.landscape__image {
	width: 102px;
	margin: 0 auto 16px;
}

.landscape__text {
	font: 300 2.5rem "Noto Serif JP", serif;
	letter-spacing: 0.2em;
}

.landscape__note {
	font: 400 1.2rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.2em;
	margin-top: 10px;
}

.noimage {
	background: #b8ddfe;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.noimage img {
	display: block;
	width: 80px;
	height: auto;
}

.notfound {
	background: url(../img/bg_notfound_sp.jpg) no-repeat center/cover;
	text-align: center;
	padding: 67px 38px 50px;
}

.notfound__text {
	font-size: 1.3rem;
	letter-spacing: 0.15em;
	line-height: 1.5;
	margin-bottom: 55px;
}

.playlist {
	display: block;
	width: 100%;
	margin-bottom: 20px;
}

.playlist__main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.playlist__main:hover img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.playlist__main:hover .playlist__thumbnail:after {
	background: url(../img/icon_blank_blue.svg) no-repeat center/contain;
}

.playlist__thumbnail {
	display: block;
	position: relative;
	padding-top: 21.8%;
	overflow: hidden;
	border-radius: 6px;
	width: 37%;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.playlist__thumbnail:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #158dfc;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	opacity: 0.3;
}

.playlist__thumbnail:after {
	content: "";
	display: block;
	width: 23px;
	height: 23px;
	background: url(../img/icon_blank_white.svg) no-repeat center/contain;
	position: absolute;
	bottom: 8px;
	right: 8px;
	z-index: 6;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.playlist__thumbnail img {
	position: relative;
	display: block;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.playlist__info {
	padding-left: 15px;
}

.playlist__title {
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
}

.playlist__title--sm {
	font-size: 1.2rem;
	margin-top: 7px;
}

.playlist__text {
	color: #777777;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
	line-height: 1.35;
	margin-top: 3px;
}

.line-kisekae {
	display: block;
	background: #eaf5ff;
	padding: 10px 0 10px;
	border-radius: 5px;
}

.line-kisekae:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 5px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, transparent), color-stop(62%, transparent), color-stop(62%, #158dfc), to(#158dfc));
	background: -webkit-linear-gradient(top, transparent 0, transparent 62%, #158dfc 62%, #158dfc 100%);
	background: -o-linear-gradient(top, transparent 0, transparent 62%, #158dfc 62%, #158dfc 100%);
	background: linear-gradient(to bottom, transparent 0, transparent 62%, #158dfc 62%, #158dfc 100%);
}

.line-kisekae img {
	position: relative;
	margin-left: -6.6666665vw;
	max-width: 102%;
}

.chara-paging {
	position: absolute;
	top: 45%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	left: 0;
	width: 100%;
}

.chara-paging:before,
.chara-paging:after {
	content: "";
	display: table;
}

.chara-paging:after {
	clear: both;
}

.chara-paging__item a {
	display: block;
	padding: 30px 30px;
}

.chara-paging__item--left {
	float: left;
}

.chara-paging__item--left a {
	padding-left: 7px;
}

.chara-paging__item--right {
	float: right;
}

.chara-paging__item--right a {
	padding-right: 7px;
}

.chara-paging__item img {
	width: 12px;
}

.unit-detail {
	background: #158dfc;
	color: #FFFFFF;
	display: none;
}

.unit-detail__wrapper {
	width: 86.66667%;
	margin-left: auto;
	margin-right: auto;
	padding: 24px 0 40px;
}

.unit-detail__close {
	position: relative;
	color: #FFFFFF;
	background: #1541fc;
	width: 100%;
	padding: 23px 38px;
	font-size: 1.0rem;
	font-weight: 500;
	font-family: "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
	display: block;
	text-align: right;
}

.unit-detail__close__icon {
	display: block;
	width: 9px;
	height: 9px;
	border-left: 1px solid #FFFFFF;
	border-top: 1px solid #FFFFFF;
	-webkit-transform: rotate(45deg) translate(-20%, -20%);
	-ms-transform: rotate(45deg) translate(-20%, -20%);
	transform: rotate(45deg) translate(-20%, -20%);
	position: absolute;
	top: 50%;
	right: 17px;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.unit-name {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100vw;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	margin-bottom: 45px;
}

.unit-name--4 {
	padding-left: 165px;
}

.unit-name--4 .unit-name__item:first-child {
	margin-right: 2.4vw;
	margin-left: -4vw;
}

.unit-name__item {
	margin: 0 1.2vw;
	letter-spacing: 0.15em;
}

.unit-name__item a {
	display: block;
	text-align: center;
}

.unit-name__chara {
	display: block;
	font-size: 4.3vw;
}

.unit-name__chara--sm {
	font-size: 4vw;
	letter-spacing: 0;
}

.unit-name__voice {
	display: block;
	font-size: 2.3vw;
	margin-top: 1.8vw;
}

.unit-name__voice--sm {
	letter-spacing: 0;
}

.unit-disc__heading {
	font: 500 1.4rem "Montserrat", "Noto Sans JP", sans-serif;
	text-align: center;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}

.unit-disc__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: #3fa3ff;
	height: 60px;
	margin-bottom: 1px;
}

.unit-disc__play {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 64px;
	height: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 0;
	border: none;
	flex-shrink: 0;
	position: relative;
}

.unit-disc__play img {
	width: 24px;
}

.unit-disc__play svg {
	opacity: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(-90deg);
	-ms-transform: translate(-50%, -50%) rotate(-90deg);
	transform: translate(-50%, -50%) rotate(-90deg);
}

.unit-disc__play circle {
	fill: transparent;
	stroke-width: 2;
}

.unit-disc__play .circle1 {
	stroke: #FFFFFF;
	stroke-dasharray: 0 107;
}

.unit-disc__play .circle2 {
	stroke: #98ceff;
	stroke-dasharray: 107 107;
}

.unit-disc__play.is-playing img {
	opacity: 0.5;
}

.unit-disc__play.is-playing svg {
	opacity: 1;
}

.unit-disc__play.is-disabled {
	position: relative;
	pointer-events: none;
}

.unit-disc__play.is-disabled:before {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	content: "";
	display: block;
	width: 15px;
	height: 2px;
	background: #FFFFFF;
	opacity: 0.5;
}

.unit-disc__main {
	padding-right: 10px;
	width: calc(100% - 179px);
	letter-spacing: 0.15em;
}

.unit-disc__title {
	display: block;
	font-size: 1.3rem;
	white-space: nowrap;
	overflow: hidden;
	-o-text-overflow: ellipsis;
	text-overflow: ellipsis;
	width: 100%;
}

.unit-disc__album {
	display: block;
	font-size: 1.0rem;
	margin-top: 7px;
}

.unit-disc__image {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	display: block;
	width: 40px;
}

.unit-disc__link {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	display: block;
	width: 60px;
	height: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	flex-shrink: 0;
	background: #1541fc;
	margin-left: 15px;
}

.unit-disc__link img {
	width: 36px;
}

.unit-disc__link.is-disabled {
	background: #888888;
	opacity: 0.7;
	pointer-events: none;
}

.unit-overview {
	margin-bottom: 22px;
}

.unit-overview__heading {
	font-size: 2.1rem;
	letter-spacing: 0.15em;
	line-height: 1.25;
	margin-bottom: 17px;
}

.unit-overview__text {
	font-size: 1.3rem;
	letter-spacing: 0.15em;
	line-height: 1.4;
	margin-bottom: 25px;
}

.unit-overview__image {
	text-align: center;
}

.unit-overview__image img {
	max-width: 348px;
	width: 107%;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.unit-overview__image img[src*='inhi'] {
	width: 119%;
	max-width: 400px;
	-webkit-transform: translateX(-3.5%);
	-ms-transform: translateX(-3.5%);
	transform: translateX(-3.5%);
	left: 0;
}

.actor {
	color: #FFFFFF;
	padding: 18px 0 120px;
	text-align: center;
	width: 100%;
	height: 100%;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
}

.actor__label {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	text-align: center;
	letter-spacing: 0.08em;
	margin-bottom: 17px;
}

.actor__detail {
	margin-bottom: 40px;
}

.actor__image {
	border-radius: 50%;
	border: 20px solid #44a4fd;
	width: 240px;
	height: 240px;
	overflow: hidden;
	margin-left: auto;
	margin-right: auto;
}

.actor__image img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.actor__name {
	font-size: 2.3rem;
	letter-spacing: 0.16em;
	margin-top: -12px;
	font-family: "hiragino kaku gothic pro","Meiryo","sans-serif";
}

.actor__chara {
	font-size: 1.3rem;
	letter-spacing: 0.16em;
	margin-top: 10px;
}

.actor__message {
	border-radius: 10px;
	max-width: 300px;
	margin-left: auto;
	margin-right: auto;
}

.actor__message img {
	display: block;
}

.recruit {
	background: #eaf5ff;
}

.recruit:not(:last-child) {
	margin-bottom: 25px;
}

.recruit__overview {
	padding: 20px 0 0;
}

.recruit__heading {
	color: #158dfc;
	font-size: 2.0rem;
	letter-spacing: 0.15em;
	line-height: 1.5;
	margin-bottom: 10px;
}

.recruit__main {
	font-size: 1.3rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	padding: 8px 0 0;
}

.recruit__detail {
	display: none;
}

.recruit__company {
	padding: 25px 0 0;
}

.recruit__trg {
	background: #158dfc;
	color: #FFFFFF;
	width: 100%;
	height: 40px;
	position: relative;
	margin-top: 24px;
	font: 600 1.2rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
	text-align: right;
	padding: 0;
}

.recruit__trg:after {
	content: "";
	display: block;
	width: 11px;
	height: 11px;
	border-right: 1px solid #FFFFFF;
	border-bottom: 1px solid #FFFFFF;
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	-ms-transform: rotate(45deg) translate(-50%, -50%);
	transform: rotate(45deg) translate(-50%, -50%);
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.recruit__trg span {
	position: relative;
	opacity: 0;
}

.recruit__trg.is-opend:after {
	-webkit-transform: rotate(-135deg) translate(25%, 25%);
	-ms-transform: rotate(-135deg) translate(25%, 25%);
	transform: rotate(-135deg) translate(25%, 25%);
}

.recruit__button {
	padding: 16px 12px;
}

.recruit-detail {
	position: relative;
	padding: 18px 0;
}

.recruit-detail:not(:last-child) {
	margin-bottom: 4px;
}

.recruit-detail:before {
	content: "";
	display: block;
	width: 45px;
	height: 5px;
	background: #158dfc;
	position: absolute;
	top: 0;
	left: 0;
}

.recruit-detail__heading {
	font-size: 1.6rem;
	letter-spacing: 0.15em;
	margin-bottom: 16px;
}

.recruit-detail__content {
	font-size: 1.3rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
}

.recruit-detail__content p:not(:last-child),
.recruit-detail__content ul:not(:last-child) {
	margin-bottom: 1em;
}

.recruit-detail__content ul li {
	padding-left: 1.2em;
	text-indent: -1.2em;
}

.recruit-detail__content ul li:before {
	content: "・";
	padding-right: 0.5em;
}

.company {
	margin-bottom: 10px;
	line-height: 1.38;
	letter-spacing: 0.16em;
	font-size: 1.3rem;
}

.company__heading {
	background: #f8f8f8;
	margin-bottom: 4px;
	padding: 16px 12px;
}

.company__content {
	background: #FFFFFF;
	padding: 16px 12px;
}

.company__content p:not(:last-child) {
	margin-bottom: 1.5em;
}

.contact {
	margin-bottom: 40px;
	position: relative;
}

.contact:nth-child(odd) {
	background: #eaf5ff;
}

.contact:nth-child(even) {
	background: #f8f8f8;
}

.contact__inner {
	padding: 16px 0 38px;
}

.contact__inner:before {
	content: "";
	display: block;
	width: 45px;
	height: 5px;
	background: #158dfc;
	position: absolute;
	top: 0;
	left: 0;
}

.contact__logo {
	width: 183px!important;
	margin-bottom: 14px;
}

.contact__heading {
	font-size: 1.6rem;
	letter-spacing: 0.15em;
}

.contact__text {
	font-size: 1.3rem;
	line-height: 1.6;
	margin-top: 16px;
	letter-spacing: 0.15em;
}

.contact__sub .button {
	position: absolute;
	bottom: 0;
	right: 0;
	-webkit-transform: translate(0, 50%);
	-ms-transform: translate(0, 50%);
	transform: translate(0, 50%);
	width: 75px;
}

.contact__mail {
	display: inline-block;
	margin-top: 10px;
	font: 600 1.3rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.1em;
	color: #158dfc;
}

.recruit-message {
	position: relative;
	margin-bottom: 40px;
}

.recruit-message__main {
	font-size: 1.5rem;
	letter-spacing: 0.15em;
	line-height: 1.4;
	position: relative;
	padding: 15px 0 7px;
}

.recruit-message__image {
	position: relative;
	border-radius: 10px;
	overflow: hidden;
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
}

.recruit-message__image img {
	display: block;
	width: 100%;
}

.download-app-head {
	margin-bottom: 84px;
}

.download-app-head__heading {
	text-align: center;
	font: 500 1.2rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	margin-bottom: 20px;
}

.download-app-head__main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
   width: 80%;
   margin: 0 auto;
}

.download-app-head__item {
	width: 55%;
}

.download-app-head__item:not(:first-child) {
	margin-left: 10px;
}

.download-app-head__item--1 {
	width: calc(45% - 5px);
}

.download-app-head__item--2 {
	width: calc(55% - 5px);
}

.download-app-head__item--3 {
	display: none;
}

.download-app-head__item a {
	display: block;
}

.download-app-head__item img {
	display: block;
}

.about-home {
	margin-bottom: 80px;
}

.about-home__main {
	margin-top: 36px;
	margin-bottom: 46px;
}

.about-home__text-1 {
	font-size: 1.6rem;
	line-height: 2.24;
	letter-spacing: 0.15em;
	margin-bottom: 40px;
	position: relative;
	z-index: 50;
	color: #1541fc;
}

.about-home__text-2 {
	-webkit-font-feature-settings: normal;
	font-feature-settings: normal;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	line-height: 1.75;
	font-size: 3.0rem;
	font-family: "Noto Serif JP", serif;
	white-space: nowrap;
	letter-spacing: 0.08em;
	margin-left: auto;
	position: relative;
	z-index: 50;
}

.about-home__movie-1 {
	width: 275px;
	height: 275px;
	position: relative;
	overflow: hidden;
	margin: -454px 0 40px -50px;
}

.about-home__movie-1:after {
	content: "";
	display: block;
	background: url(../img/frame_movie_1.png) no-repeat center/cover;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: calc(100% + 5px);
	height: calc(100% + 5px);
}

.about-home__movie-1 video {
	width: auto;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.about-home__text-3 {
	font-size: 1.6rem;
	line-height: 2.24;
	letter-spacing: 0.08em;
	width: 180px;
	position: relative;
	z-index: 50;
	color: #1541fc;
}

.about-home__movie-2 {
	position: relative;
	width: 100vw;
	height: 76.833333vw;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	margin: -40px 0 -40px;
	overflow: hidden;
}

.about-home__movie-2:after {
	content: "";
	display: block;
	background: url(../img/frame_movie_2.png) no-repeat left -30px top/cover;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
}

.about-home__movie-2 video {
	width: auto;
	height: 85%;
	position: absolute;
	top: 1%;
	left: 63%;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.about-home__text-4 {
	font-size: 2.8rem;
	line-height: 1.78;
	font-family: "Noto Serif JP", serif;
	margin-bottom: 28px;
	position: relative;
	z-index: 50;
}

.about-home__text-4 span {
	display: block;
	text-align: right;
}

.about-home__text-5 {
	font-size: 1.6rem;
	line-height: 2.24;
	letter-spacing: 0.15em;
	margin-bottom: 40px;
	position: relative;
	z-index: 50;
	color: #1541fc;
}

.about-home__text-6 {
	padding: 37px 0;
	font-size: 2.8rem;
	line-height: 1.78;
	font-family: "Noto Serif JP", serif;
	position: relative;
	z-index: 50;
}

.about-home__2col {
	width: 100vw;
	position: relative;
	left: 50%;
	-webkit-transform: translate(-50%);
	-ms-transform: translate(-50%);
	transform: translate(-50%);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.about-home__2col__item {
	width: 50%;
	height: 28vw;
	position: relative;
	overflow: hidden;
}

.about-home__2col__item img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.about-home__2col__item video {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.game-image {
	position: relative;
	padding: 28px 0 0;
	width: 94%;
	margin: 0 auto;
}

.game-image:before {
	content: "";
	display: block;
	width: 100vw;
	height: 66.266666vw;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background: #eaf5ff;
	z-index: 0;
}

.game-image .swiper-container {
	overflow: visible;
}

.game-image .swiper-wrapper {
	padding: 0 3% 22px;
}

.game-image__item {
	width: 100% !important;
}

.game-image__item a {
	display: block;
}

.game-image__item img {
	-webkit-filter: drop-shadow(0 7px 5px rgba(21, 141, 252, 0.07));
	filter: drop-shadow(0 7px 5px rgba(21, 141, 252, 0.07));
}

.game-image__link {
	position: relative;
}

.game-image__link:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 22px;
	right: 10px;
	width: 118px;
	height: 30px;
	background: url(../img/txt_more.png) no-repeat center/contain;
}

.game-image__movie {
	position: relative;
}

.game-image__movie:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 6px;
	right: -20px;
	width: 234px;
	height: 62px;
	background: url(../img/txt_more_movie.png) no-repeat center/contain;
}

.game-image__thumblist {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.game-image__thumblist__item {
	width: calc((100% - 21px) / 4);
	overflow: hidden;
	margin-bottom: 15px;
}

.game-image__thumblist__item:not(:nth-child(4n)) {
	margin-right: 7px;
}

.game-image__thumblist__item.is-current {
	border: 2px solid #158dfc;
}

.game-image__thumblist__item a {
	pointer-events: none;
}

.game-image__thumblist__item a:after {
	content: none;
}

.game-image__thumblist__item img {
	-webkit-transform: scale(1.24) rotate(1.4deg);
	-ms-transform: scale(1.24) rotate(1.4deg);
	transform: scale(1.24) rotate(1.4deg);
}

.game-image .swiper-button-next,
.game-image .swiper-button-prev {
	position: absolute;
	top: calc(28px + 24vw);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 13px;
	height: 25px;
}

.game-image .swiper-button-prev {
	left: -20px;
}

.game-image .swiper-button-next {
	left: auto;
	right: -20px;
}

.scrollin,
.scrollin-2col,
.scrollin-3col,
.scrollin-group,
.scrollin-pc3-sp2 {
	opacity: 0;
	-webkit-transform: translate(0, 80px);
	-ms-transform: translate(0, 80px);
	transform: translate(0, 80px);
}

.scrollin--simple,
.scrollin-2col--simple,
.scrollin-3col--simple,
.scrollin-group--simple,
.scrollin-pc3-sp2--simple {
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
}

.scrollin--dance,
.scrollin-2col--dance,
.scrollin-3col--dance,
.scrollin-group--dance,
.scrollin-pc3-sp2--dance {
	-webkit-transform: translate(60px, -60px) rotate(-10deg);
	-ms-transform: translate(60px, -60px) rotate(-10deg);
	transform: translate(60px, -60px) rotate(-10deg);
}

.scrollin.is-visible,
.scrollin-2col.is-visible,
.scrollin-3col.is-visible,
.scrollin-group.is-visible,
.scrollin-pc3-sp2.is-visible {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
	-webkit-transition: 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	-o-transition: 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.scrollin-group-more {
	display: none;
	opacity: 0;
	-webkit-transform: translate(0, 80px);
	-ms-transform: translate(0, 80px);
	transform: translate(0, 80px);
}

.scrollin-group-more.is-visible {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
	-webkit-transition: 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	-o-transition: 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/**
 * Swiper 5.3.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 29, 2020
 */

@font-face {
	font-family: 'swiper-icons';
	src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
	font-weight: 400;
	font-style: normal;
}

:root {
	--swiper-theme-color: #007aff;
}

.swiper-container {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0; /* Fix of Webkit flickering */
	z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.swiper-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	-o-transition-property: transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
	-webkit-transform: translate3d(0px, 0, 0);
	transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.swiper-container-free-mode > .swiper-wrapper {
	-webkit-transition-timing-function: ease-out;
	-o-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
	margin: 0 auto;
}

.swiper-slide {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	position: relative;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	-o-transition-property: transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
}

.swiper-slide-invisible-blank {
	visibility: hidden;
}

/* Auto Height */

.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
	height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-transition-property: height, -webkit-transform;
	transition-property: height, -webkit-transform;
	-o-transition-property: transform, height;
	transition-property: transform, height;
	transition-property: transform, height, -webkit-transform;
}

/* 3D Effects */

.swiper-container-3d {
	-webkit-perspective: 1200px;
	perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 10;
}

.swiper-container-3d .swiper-slide-shadow-left {
	background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
	background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
	background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
	background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */

.swiper-container-css-mode > .swiper-wrapper {
	overflow: auto;
	scrollbar-width: none; /* For Firefox */
	-ms-overflow-style: none; /* For Internet Explorer and Edge */
}

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
	display: none;
}

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: start start;
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
	-ms-scroll-snap-type: x mandatory;
	scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
	-ms-scroll-snap-type: y mandatory;
	scroll-snap-type: y mandatory;
}

:root {
	--swiper-navigation-size: 44px; /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
	position: absolute;
	bottom: 40px;
	z-index: 10;
	outline: none;
	cursor: pointer;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background: #158dfc;
	margin-top: -22px;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
	opacity: 0.35;
	cursor: auto;
	pointer-events: none;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
	left: 16px;
	background: url(../img/slick_arrow_left.svg) no-repeat center/contain;
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
	left: 80px;
	background: url(../img/slick_arrow_right.svg) no-repeat center/contain;
}

.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
	--swiper-navigation-color: #ffffff;
}

.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
	--swiper-navigation-color: #000000;
}

.swiper-button-lock {
	display: none;
}

:root { /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */
}

.swiper-pagination {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	z-index: 10;
	position: absolute;
	bottom: 60px;
	right: 15px;
	list-style: none;
	display: block;
	text-align: center;
}

.swiper-pagination.swiper-pagination-hidden {
	opacity: 0;
}

/* Common Styles */

/* Bullets */

.swiper-pagination-bullets-dynamic {
	overflow: hidden;
	font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	-webkit-transform: scale(0.33);
	-ms-transform: scale(0.33);
	transform: scale(0.33);
	position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
	-webkit-transform: scale(0.66);
	-ms-transform: scale(0.66);
	transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
	-webkit-transform: scale(0.33);
	-ms-transform: scale(0.33);
	transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
	-webkit-transform: scale(0.66);
	-ms-transform: scale(0.66);
	transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
	-webkit-transform: scale(0.33);
	-ms-transform: scale(0.33);
	transform: scale(0.33);
}

.swiper-pagination-bullet {
	width: 35px;
	height: 5px;
	display: inline-block;
	background: rgba(111, 137, 144, 0.5);
	outline: none;
}

button.swiper-pagination-bullet {
	border: none;
	margin: 0;
	padding: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
}

.swiper-pagination-bullet-active {
	background: #158dfc;
}

.swiper-container-vertical > .swiper-pagination-bullets {
	right: 10px;
	top: 50%;
	-webkit-transform: translate3d(0px, -50%, 0);
	transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 6px 0;
	display: block;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 8px;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	display: inline-block;
	-webkit-transition: 200ms top, 200ms -webkit-transform;
	transition: 200ms top, 200ms -webkit-transform;
	-o-transition: 200ms transform, 200ms top;
	transition: 200ms transform, 200ms top;
	transition: 200ms transform, 200ms top, 200ms -webkit-transform;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 4px;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	white-space: nowrap;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	-webkit-transition: 200ms left, 200ms -webkit-transform;
	transition: 200ms left, 200ms -webkit-transform;
	-o-transition: 200ms transform, 200ms left;
	transition: 200ms transform, 200ms left;
	transition: 200ms transform, 200ms left, 200ms -webkit-transform;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	-webkit-transition: 200ms right, 200ms -webkit-transform;
	transition: 200ms right, 200ms -webkit-transform;
	-o-transition: 200ms transform, 200ms right;
	transition: 200ms transform, 200ms right;
	transition: 200ms transform, 200ms right, 200ms -webkit-transform;
}

/* Progress */

.swiper-pagination-progressbar {
	background: rgba(0, 0, 0, 0.25);
	position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	background: var(--swiper-pagination-color, var(--swiper-theme-color));
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
	-webkit-transform-origin: left top;
	-ms-transform-origin: left top;
	transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	-webkit-transform-origin: right top;
	-ms-transform-origin: right top;
	transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
	width: 100%;
	height: 4px;
	left: 0;
	top: 0;
}

.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
	width: 4px;
	height: 100%;
	left: 0;
	top: 0;
}

.swiper-pagination-white {
	--swiper-pagination-color: #ffffff;
}

.swiper-pagination-black {
	--swiper-pagination-color: #000000;
}

.swiper-pagination-lock {
	display: none;
}

/* Scrollbar */

.swiper-scrollbar {
	border-radius: 10px;
	position: relative;
	-ms-touch-action: none;
	background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal > .swiper-scrollbar {
	position: absolute;
	left: 1%;
	bottom: 3px;
	z-index: 50;
	height: 5px;
	width: 98%;
}

.swiper-container-vertical > .swiper-scrollbar {
	position: absolute;
	right: 3px;
	top: 1%;
	z-index: 50;
	width: 5px;
	height: 98%;
}

.swiper-scrollbar-drag {
	height: 100%;
	width: 100%;
	position: relative;
	background: rgba(0, 0, 0, 0.5);
	border-radius: 10px;
	left: 0;
	top: 0;
}

.swiper-scrollbar-cursor-drag {
	cursor: move;
}

.swiper-scrollbar-lock {
	display: none;
}

.swiper-zoom-container {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
	max-width: 100%;
	max-height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.swiper-slide-zoomed {
	cursor: move;
}

/* Preloader */

:root { /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}

.swiper-lazy-preloader {
	width: 42px;
	height: 42px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -21px;
	margin-top: -21px;
	z-index: 10;
	-webkit-transform-origin: 50%;
	-ms-transform-origin: 50%;
	transform-origin: 50%;
	-webkit-animation: swiper-preloader-spin 1s infinite linear;
	animation: swiper-preloader-spin 1s infinite linear;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
	border-radius: 50%;
	border-top-color: transparent;
}

.swiper-lazy-preloader-white {
	--swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
	--swiper-preloader-color: #000;
}

/* a11y */

.swiper-container .swiper-notification {
	position: absolute;
	left: 0;
	top: 0;
	pointer-events: none;
	opacity: 0;
	z-index: -1000;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
	-webkit-transition-timing-function: ease-out;
	-o-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
	pointer-events: none;
	-webkit-transition-property: opacity;
	-o-transition-property: opacity;
	transition-property: opacity;
}

.swiper-container-fade .swiper-slide .swiper-slide {
	pointer-events: none;
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}

.swiper-container-cube {
	overflow: visible;
}

.swiper-container-cube .swiper-slide {
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: 1;
	visibility: hidden;
	-webkit-transform-origin: 0 0;
	-ms-transform-origin: 0 0;
	transform-origin: 0 0;
	width: 100%;
	height: 100%;
}

.swiper-container-cube .swiper-slide .swiper-slide {
	pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
	-webkit-transform-origin: 100% 0;
	-ms-transform-origin: 100% 0;
	transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
	pointer-events: auto;
	visibility: visible;
}

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
	z-index: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow {
	position: absolute;
	left: 0;
	bottom: 0px;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.6;
	-webkit-filter: blur(50px);
	filter: blur(50px);
	z-index: 0;
}

.swiper-container-flip {
	overflow: visible;
}

.swiper-container-flip .swiper-slide {
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: 1;
}

.swiper-container-flip .swiper-slide .swiper-slide {
	pointer-events: none;
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
	z-index: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

/* Magnific Popup CSS */

.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 3042;
	overflow: hidden;
	position: fixed;
	background: #158dfc;
	opacity: 0.9;
}

.mfp-wrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 3043;
	position: fixed;
	outline: none !important;
	-webkit-backface-visibility: hidden;
}

.mfp-container {
	text-align: center;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 8px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.mfp-container:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
	display: none;
}

.mfp-content {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto;
	text-align: left;
	z-index: 3045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
	width: 100%;
	cursor: auto;
}

.mfp-ajax-cur {
	cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
}

.mfp-zoom {
	cursor: pointer;
	cursor: -webkit-zoom-in;
	cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
	cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.mfp-loading.mfp-figure {
	display: none;
}

.mfp-hide {
	display: none !important;
}

.mfp-preloader {
	color: #CCC;
	position: absolute;
	top: 50%;
	width: auto;
	text-align: center;
	margin-top: -0.8em;
	left: 8px;
	right: 8px;
	z-index: 3044;
}

.mfp-preloader a {
	color: #CCC;
}

.mfp-preloader a:hover {
	color: #FFF;
}

.mfp-s-ready .mfp-preloader {
	display: none;
}

.mfp-s-error .mfp-content {
	display: none;
}

button.mfp-close,
button.mfp-arrow {
	overflow: visible;
	cursor: pointer;
	background: transparent;
	border: 0;
	-webkit-appearance: none;
	display: block;
	outline: none;
	padding: 0;
	z-index: 3046;
	-webkit-box-shadow: none;
	box-shadow: none;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

button.mfp-close {
	width: 65px;
	height: 83px;
	line-height: 1;
	position: absolute;
	right: 15px;
	bottom: 15px;
	text-decoration: none;
	text-align: center;
	padding: 0;
	color: #FFF;
	font-style: normal;
	font-size: 28px;
	font-family: Arial, Baskerville, monospace;
	background: url(../img/btn_close_modal.png) no-repeat center/contain;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.mfp-close:hover,
.mfp-close:focus {
	opacity: 0.8;
}

.mfp-close-btn-in .mfp-close {
	color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
	color: #FFF;
	right: -6px;
	text-align: right;
	padding-right: 6px;
	width: 100%;
}

.mfp-counter {
	position: absolute;
	top: 0;
	right: 0;
	color: #CCC;
	font-size: 12px;
	line-height: 18px;
	white-space: nowrap;
}

.mfp-arrow {
	position: absolute;
	opacity: 0.65;
	margin: 0;
	top: 50%;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;
	-webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
	margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
	opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 0;
	margin-top: 35px;
	margin-left: 35px;
	border: medium inset transparent;
}

.mfp-arrow:after {
	border-top-width: 13px;
	border-bottom-width: 13px;
	top: 8px;
}

.mfp-arrow:before {
	border-top-width: 21px;
	border-bottom-width: 21px;
	opacity: 0.7;
}

.mfp-arrow-left {
	left: 0;
}

.mfp-arrow-left:after {
	border-right: 17px solid #FFF;
	margin-left: 31px;
}

.mfp-arrow-left:before {
	margin-left: 25px;
	border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
	right: 0;
}

.mfp-arrow-right:after {
	border-left: 17px solid #FFF;
	margin-left: 39px;
}

.mfp-arrow-right:before {
	border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
	padding-top: 40px;
	padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
	line-height: 0;
	width: 100%;
	max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
	top: -40px;
}

.mfp-iframe-scaler {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #000;
}

/* Main image in popup */

img.mfp-img {
	width: auto;
	max-width: 100%;
	height: auto;
	display: block;
	line-height: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 40px 0 40px;
	margin: 0 auto;
}

/* The shadow behind the image */

.mfp-figure {
	line-height: 0;
}

.mfp-figure:after {
	content: '';
	position: absolute;
	left: 0;
	top: 40px;
	bottom: 40px;
	display: block;
	right: 0;
	width: auto;
	height: auto;
	z-index: -1;
	-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #444;
}

.mfp-figure small {
	color: #BDBDBD;
	display: block;
	font-size: 12px;
	line-height: 14px;
}

.mfp-figure figure {
	margin: 0;
}

.mfp-bottom-bar {
	margin-top: -36px;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	cursor: auto;
}

.mfp-title {
	text-align: left;
	line-height: 18px;
	color: #F3F3F3;
	word-wrap: break-word;
	padding-right: 36px;
}

.mfp-image-holder .mfp-content {
	max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	cursor: pointer;
}

/**
 * Simple fade transition,
 */

.mfp-fade.mfp-bg {
	opacity: 0;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.9;
}

.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1;
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0;
}

/* Slider */

.slick-slider {
	position: relative;
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-user-select: auto;
	-moz-user-select: auto;
	-ms-user-select: auto;
	user-select: auto;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
	outline: none;
}

.slick-list {
	position: relative;
	overflow: hidden;
	display: block;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.slick-track {
	position: relative;
	left: 0;
	top: 0;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.slick-track:before,
.slick-track:after {
	content: "";
	display: table;
}

.slick-track:after {
	clear: both;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	float: left;
	height: 100%;
	min-height: 1px;
	outline: none;
	display: none;
}

[dir="rtl"] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
	display: none;
}

/* Slider */

/* Icons */

/* Arrows */

/* Dots */

/**
 * TrackpadScrollEmulator
 * Author: Jonathan Nicol @f6design
 * https://github.com/jnicol/trackpad-scroll-emulator
 */

.tse-scrollable {
	position: relative;
	overflow: hidden;
}

.tse-scrollable .tse-scroll-content {
	overflow: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
}

/* No longer using ::scrollbar too, since it breaks Chrome 25 */

.tse-scrollable .tse-scroll-content::-webkit-scrollbar {
	width: 0;
	height: 0;
}

.tse-scrollbar {
	z-index: 99;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 5px;
}

.tse-scrollbar .drag-handle {
	position: absolute;
	right: 5px;
	min-height: 10px;
	width: 5px;
	opacity: 0;
	border-radius: 3px;
	-webkit-transition: opacity 0.2s linear;
	-o-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	background: #cccccc;
	-webkit-background-clip: padding-box;
	-moz-background-clip: padding;
}

.tse-scrollbar:hover .drag-handle { /* When hovered, remove all transitions from drag handle */
	opacity: 0.7;
	-webkit-transition: opacity 0 linear;
	-o-transition: opacity 0 linear;
	transition: opacity 0 linear;
}

.tse-scrollbar .drag-handle.visible {
	opacity: 0.7;
}

/* Used when testing the scrollbar width */

/* No longer using ::scrollbar too, since it breaks Chrome 25 */

.scrollbar-width-tester::-webkit-scrollbar {
	width: 0;
	height: 0;
}

/* Horizontal scroller */

.tse-scrollable.horizontal .tse-scroll-content {
	overflow-x: scroll;
	overflow-y: hidden;
}

.tse-scrollable.horizontal .tse-scroll-content::-webkit-scrollbar,
.tse-scrollable.horizontal .tse-scroll-content::scrollbar {
	width: auto;
	height: 0;
}

.tse-scrollable.horizontal .tse-scrollbar {
	top: auto;
	left: 0;
	width: auto;
	height: 11px;
}

.tse-scrollable.horizontal .tse-scrollbar .drag-handle {
	right: auto;
	top: 2px;
	height: 7px;
	min-height: 0;
	min-width: 10px;
	width: auto;
}

@media screen and (min-width: 768px) {

.l-footer { /* pc */
	margin-top: 150px;
	background-image: url(../img/bg_footer_pc.jpg);
}

.l-wrapper { /* pc */
	max-width: 1000px;
}

.l-wrapper--sm { /* pc */
	width: 750px;
	max-width: calc(100% - 100px);
}

.l-pc-wrapper { /* pc */
	position: relative;
	width: 86.66667%;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}

.l-pc-sm-wrapper { /* pc */
	position: relative;
	width: 86.66667%;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}

.l-pc-xsm-wrap { /* pc */
	position: relative;
	width: calc(100% - 50px);
	margin-left: auto;
	margin-right: auto;
}

.l-main { /* pc */
	padding: 80px 0 0;
}

.l-flex--list { /* pc */
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	margin-bottom: 50px;
}

.header-simple { /* pc */
	height: 100px;
	border-bottom: none;
}

.header-simple:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 200px;
	background: #158dfc;
	z-index: -2;
}

.header-simple--chara-detail { /* pc */
	position: fixed;
	z-index: 0;
}

.header-simple--chara-detail--release { /* pc */
	position: absolute;
	top: auto;
	bottom: calc(100vh - 100px);
}

.header-simple--sm { /* pc */
	height: 120px;
}

.header-simple--sm:before {
	height: 50px;
	top: auto;
	bottom: 0;
}

.header-text { /* pc */
	display: block;
	width: 420px;
}

.header-text--blue { /* pc */
	color: #158dfc;
}

.footer-main { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-bottom: 1px solid #FFFFFF;
}

.footer-link { /* pc */
	width: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.footer-link__item { /* pc */
	width: 50%;
	border-left: 1px solid #FFFFFF;
	border-bottom: none;
}

.footer-link__item a { /* pc */
	height: 75px;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	padding: 0 3.55vw;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.footer-link__item a:hover {
	background-position: left top;
}

.footer-share-wrap { /* pc */
	width: 50%;
	padding: 0 4vw;
	border-bottom: none;
}

.footer-share { /* pc */
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.footer-share__main { /* pc */
	width: 32%;
}

.footer-share__item a { /* pc */
	padding: 10px 0;
}

.app-wrap { /* pc */
	width: 100%;
	padding: 39px 4vw;
}

.app-wrap__inner { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.app { /* pc */
	margin-bottom: 0;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.app__image { /* pc */
	margin-right: 20px;
}

.app__image--center { /* pc */
	margin-right: auto;
}

.app__main { /* pc */
	width: 100%;
}

.app__detail { /* pc */
	width: 20em;
}

.app__detail:nth-child(1),
.app__detail:nth-child(2) {
	width: 18em;
}

.app__detail--lg { /* pc */
	width: 200px;
}

.app__detail__label { /* pc */
	width: 4.4em;
}

.app__detail__text { /* pc */
	width: auto;
}

.download-app--footer { /* pc */
	margin-left: 20px;
}

.download-app__heading { /* pc */
}

.download-app__item { /* pc */
}

.download-app__item:not(:first-child) { /* pc */
	margin-left: 11px;
}

.download-app__item--1 { /* pc */
	width: 142px;
}

.download-app__item--2 { /* pc */
	width: 177px;
}

.download-app__item--3 { /* pc */
	display: block;
	width: 142px;
}

.download-app__item img { /* pc */
}

.footer-sub { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.footer-sub__main { /* pc */
	width: 75%;
}

.footer-company-wrap { /* pc */
	width: 75vw;
	max-width: 75vw;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 0 4vw;
}

.footer-company { /* pc */
	margin-bottom: 0;
	width: calc(100% - 100px);
	max-width: 45%;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.footer-company__item { /* pc */
	width: auto;
}

.footer-company__item:first-child,
.footer-company__item:nth-child(2) { /* pc */
	margin-bottom: 0;
}

.footer-company__item img { /* pc */
	margin: 0;
	max-width: 90%;
}

.footer-company__item img[src*='logo_hachinai'] { /* pc */
	max-height: 48px;
}

.copyright { /* pc */
	margin: 0;
}

.pagetop { /* pc */
	padding: 0 3.55vw;
	width: 25%;
	height: 150px;
	border-bottom: none;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	border-left: 1px solid #FFFFFF;
	-webkit-transition: background-position 0.5s;
	-o-transition: background-position 0.5s;
	transition: background-position 0.5s;
}

.pagetop:hover {
	background-position: left top;
}

.pagetop:hover .pagetop__icon:before {
	width: 97px;
	height: 97px;
	background-color: #FFFFFF;
}

.pagetop:hover .pagetop__icon path,
.pagetop:hover .pagetop__icon polygon {
	fill: #000;
}

.pagetop__icon { /* pc */
	width: 162px;
	height: 162px;
	right: 69px;
	-webkit-transition: width 0.5s, height 0.5s;
	-o-transition: width 0.5s, height 0.5s;
	transition: width 0.5s, height 0.5s;
}

.sns-share-fixed { /* pc */
	display: block;
	position: fixed;
	width: 100px;
	left: 0;
	bottom: 3px;
}

.sns-share-fixed--flow {
	position: absolute;
	bottom: auto;
	top: -3px;
	-webkit-transform: translateY(-100%);
	-ms-transform: translateY(-100%);
	transform: translateY(-100%);
}

.sns-share-fixed__heading {
	font: 500 1rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	color: #158dfc;
	margin-bottom: 40px;
	margin-bottom: 30px;
	text-align: center;
}

.sns-share-fixed__item {
	margin-bottom: 36px;
	margin-bottom: 16px;
}

.sns-share-fixed__item svg {
	width: 27px;
	height: auto;
	display: block;
	margin: 0 auto;
}

.sns-share-fixed__item path {
	fill: #158dfc;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.sns-share-fixed__item a {
	display: block;
	padding: 10px 0;
}

.sns-share-fixed__item a:hover path {
	fill: #1541fc;
}

.footer-illust { /* pc */
	margin-bottom: -150px;
}

.footer-illust img { /* pc */
	max-width: 200%;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	height: 640px;
	max-height: 64vw;
}

.footer-illust__mark__item { /* pc */
	width: 400px;
	height: 400px;
}

.l-homeBtn { /* pc */
	width: 65px;
	height: 65px;
	right: 50px;
	bottom: auto;
	top: 95px;
}

.l-homeBtn:hover {
	background-color: #1541fc;
}

.heading-1 { /* pc */
	padding: 14px 20px 16px;
	margin-bottom: 50px;
}

.heading-1 span { /* pc */
	width: 100%;
}

.heading-1--mb-sm { /* pc */
	margin-bottom: 23px;
}

.heading-4__jp { /* pc */
	font-size: 6.8rem;
}

.heading-4__jp--sm { /* pc */
	font-size: 4.8rem;
}

.heading-4__jp:before { /* pc */
	width: 70px;
	left: -100px;
}

.heading-4__en { /* pc */
	font-size: 1.5rem;
	padding-left: 26px;
	margin-top: 3px;
	display: inline-block;
}

.heading-5 { /* pc */
	font-size: 6.5rem;
}

.heading-5 span { /* pc */
	font-size: 1.3rem;
}

.heading-6 { /* pc */
	margin-bottom: 45px;
}

.heading-7 { /* pc */
	margin-bottom: 90px;
}

.heading-8 { /* pc */
	margin-bottom: 45px;
}

.heading-9 { /* pc */
	padding: 15px 20px;
	margin-bottom: 2px;
}

.button { /* pc */
	width: 200px;
	height: 50px;
	position: relative;
	overflow: hidden;
	font-size: 1.2rem;
}

.button:hover .button__anime {
	width: 400px;
	height: 400px;
}

.button--en { /* pc */
	font-size: 1.0rem;
}

.button--lg { /* pc */
	width: 300px;
	height: 60px;
	font-size: 1.3rem;
}

.button--lg:hover .button__anime {
	width: 600px;
	height: 600px;
}

.button--sm { /* pc */
	width: 100px;
	height: 40px;
}

.button--white { /* pc */
}

.button--white:hover {
	color: #FFFFFF;
}

.button__text img[src*='twitter'] { /* pc */
	margin-right: 10px;
}

.back-btn { /* pc */
	padding: 27px 0 27px;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.back-btn:hover {
	color: #FFFFFF;
}

.back-btn:hover:before {
	width: 50px;
	background: #FFFFFF;
}

.shadow:before { /* pc */
	height: 10px;
	right: 10px;
	border-radius: 0 0 5px 0;
	-webkit-transform: rotate(4deg);
	-ms-transform: rotate(4deg);
	transform: rotate(4deg);
}

.modal__inner-single { /* pc */
	max-width: 860px;
	width: 90%;
}

.close-btn { /* pc */
	right: 50px;
	top: 20px;
	bottom: auto;
}

.close-btn--friend-list { /* pc */
	top: 15px;
	right: 20px;
}

.modal--himawari .close-btn { /* pc */
	top: auto;
	bottom: 20px;
}

.cat-list-1 { /* pc */
	margin-bottom: 100px;
}

.cat-list-1__item { /* pc */
}

.news-list { /* pc */
	width: 30%;
	margin-bottom: 47px;
}

.news-list:not(:nth-child(3n)) {
	margin-right: 5%;
}

.news-list--pickup { /* pc */
	padding: 0;
	margin-right: 50px;
}

.news-list--pickup:not(:nth-child(3n)) {
	margin-right: 50px;
}

.news-list--pickup .news-list__date { /* pc */
	width: 27px;
}

.news-list--pickup .news-list__head { /* pc */
	padding-left: 27px;
}

.news-list--pickup .news-list__main { /* pc */
	padding: 0 27px;
}

.news-list__head { /* pc */
	padding-left: 27px;
	margin-bottom: 15px;
}

.news-list__date { /* pc */
	width: 27px;
	font-size: 1.0rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 10px 0;
	letter-spacing: 0.15em;
}

.news-list__main { /* pc */
	padding-left: 27px;
}

.cat-label { /* pc */
	margin-bottom: 6px;
}

a.cat-label { /* pc */
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

a.cat-label:hover {
	background: #1541fc;
	color: #FFFFFF;
}

.sound { /* pc */
	padding-top: 0;
}

.sound__switches { /* pc */
	margin-bottom: 60px;
}

.sound__switch { /* pc */
	margin: 0 15px;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

.sound__switch:hover {
	opacity: 0.8;
}

.sound__icon { /* pc */
	width: 85px;
	height: 85px;
}

.sound__icon img { /* pc */
	width: 100%;
}

.sound__label { /* pc */
	font-size: 1.2rem;
	display: inline-block;
	margin-top: 10px;
}

.sound__text { /* pc */
	font-size: 3.2rem;
	letter-spacing: 0.1em;
	padding-left: 10px;
	margin-bottom: 10px;
}

.sound__note { /* pc */
	font-size: 1.3rem;
	letter-spacing: 0.15em;
	padding-left: 0;
	text-align: center;
}

.sound__header { /* pc */
	width: 300px;
}

.chara-list-wrap { /* pc */
	width: auto;
	padding: 0 30px;
}

.chara-list-wrap:not(:last-child) { /* pc */
	margin-bottom: 30px;
}

.chara-list-wrap-sm { /* pc */
	width: auto;
}

.chara-list { /* pc */
	width: calc(100% / 5);
}

.chara-list a { /* pc */
	padding-bottom: 17px;
}

.chara-list a:hover img {
	-webkit-transform: scale(1.1) translate3d(0, 0, 0);
	transform: scale(1.1) translate3d(0, 0, 0);
}

.chara-list__image { /* pc */
	margin: 0 17px 8px;
}

.chara-list__name { /* pc */
	font-size: 1.6rem;
}

.chara-list__name-sm span { /* pc */
	-webkit-transform: scale(0.8);
	-ms-transform: scale(0.8);
	transform: scale(0.8);
	width: 125%;
}

.chara-list--sm { /* pc */
	width: 55px;
}

.chara-list--sm:not(:nth-child(4n)) { /* pc */
	margin-right: calc((100% - 220px) / 3);
}

.chara-list--sm .chara-list__image { /* pc */
	width: 100%;
	margin-bottom: 6px;
}

.chara-list--sm .chara-list__name { /* pc */
	font-size: 1.2rem;
}

.chara-list-content { /* pc */
	margin-bottom: 50px;
}

.chara-list-msg-wrap { /* pc */
}

.chara-mv { /* pc */
	width: calc(100% - 60px);
	height: calc(100vh - 100px);
	top: 100px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	z-index: 0;
}

.chara-mv--release { /* pc */
	top: auto;
	bottom: 0;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.chara-bg { /* pc */
	background-image: url(../img/bg_chara_01_pc.jpg);
}

.chara-bg:before { /* pc */
	background-image: url(../img/bg_chara_02_pc.jpg);
}

.chara-bg--rival { /* pc */
	background-image: url(../img/bg_chara_03_pc.jpg);
}

.chara-bg--rival:before { /* pc */
	background-image: url(../img/bg_chara_04_pc.jpg);
}

.chara-image { /* pc */
	width: 50%;
	height: calc(100vh + 100px);
	right: auto;
	left: 50%;
	top: -100px;
}

.chara-image img { /* pc */
	height: calc(100vh + 100px);
	max-width: 200%;
}

.chara-image__item { /* pc */
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.chara-intro { /* pc */
	padding: 100px 0 100px;
	height: 100vh;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.chara-intro__inner { /* pc */
	margin-left: 0;
	margin-right: 0;
	padding: 72px 0 0;
	min-height: 480px;
}

.chara-catchcopy { /* pc */
	font-size: 3.6rem;
	line-height: 2.3;
	margin-left: -30px;
}

.chara-name { /* pc */
	position: static;
}

.chara-name__jp .chara-name__play { /* pc */
	margin-left: 5px;
}

.chara-name__jp { /* pc */
	font-size: 4.3rem;
}

.chara-name__en { /* pc */
	font-size: 1.2rem;
	margin-top: 4px;
}

.chara-name__cv { /* pc */
	margin-top: 20px;
}

.chara-name__cv__label { /* pc */
	font-size: 1.0rem;
}

.chara-name__cv__name { /* pc */
	font-size: 1.8rem;
}

.chara-illust-content { /* pc */
	padding: 160px 0 20px;
}

.chara-illust-wrap { /* pc */
	height: auto;
	padding: 40px 0 45px;
}

.chara-illust-wrap:before { /* pc */
	width: 625px;
	height: 161px;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-48.5%) rotate(0.5deg);
	-ms-transform: translateX(-48.5%) rotate(0.5deg);
	transform: translateX(-48.5%) rotate(0.5deg);
}

.chara-illust-wrap--2:before { /* pc */
	width: 415px;
	height: 66.4px;
	bottom: 15px;
	-webkit-transform: translateX(-48.5%);
	-ms-transform: translateX(-48.5%);
	transform: translateX(-48.5%);
}

.chara-illust-wrap--1:before { /* pc */
	width: 210px;
	height: 35px;
	bottom: 30px;
	left: 50%;
	-webkit-transform: translateX(-48.5%) rotate(0.2deg);
	-ms-transform: translateX(-48.5%) rotate(0.2deg);
	transform: translateX(-48.5%) rotate(0.2deg);
}

.chara-illust { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
	left: 0;
	-webkit-transform: rotate(-4.6deg) translateX(0);
	-ms-transform: rotate(-4.6deg) translateX(0);
	transform: rotate(-4.6deg) translateX(0);
}

.chara-illust__item { /* pc */
	max-width: 227px;
}

.table-1 { /* pc */
	width: 325px;
}

.voice { /* pc */
	padding: 20px 0;
}

.voice__item { /* pc */
	margin: 0 15px;
}

.voice__button { /* pc */
}

.voice__button:hover {
	color: #1541fc;
}

.voice__button:hover .voice__number {
	background: #1541fc;
}

.profile { /* pc */
	padding: 60px 0;
	margin-bottom: 35px;
}

.profile__inner { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.profile__item:not(:last-child) { /* pc */
	margin-bottom: 15px;
}

.profile__item { /* pc */
	width: calc(50% - 25px);
}

.profile__heading { /* pc */
	font-size: 3.2rem;
	margin-bottom: 16px;
}

.profile__heading:before { /* pc */
	bottom: 30px;
}

.profile__heading:after { /* pc */
	width: 100%;
	height: 30px;
}

.profile__text { /* pc */
	font-size: 1.6rem;
}

.buttons { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.buttons__item:not(:last-child) { /* pc */
	margin-bottom: 0;
}

.buttons__item { /* pc */
	margin: 0 25px 0;
}

.eyecatch { /* pc */
	width: 100%;
	position: static;
	-webkit-transform: translateX(0%);
	-ms-transform: translateX(0%);
	transform: translateX(0%);
	margin-bottom: 50px;
}

.post-info { /* pc */
	margin-bottom: 34px;
}

.post-info--noimg { /* pc */
	padding-top: 150px;
}

.post-title { /* pc */
	margin-bottom: 40px;
}

.wp-content > * { /* pc */
	margin-bottom: 44px;
}

.wp-content img { /* pc */
	max-width: 600px;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.sns-share__item { /* pc */
	margin: 0 37.5px;
}

.pager { /* pc */
	margin-top: 75px;
}

.pager:before,
.pager:after { /* pc */
	width: 100%;
}

.pager__link { /* pc */
	height: 82px;
}

.pager__link--prev:before { /* pc */
}

.pager__link--next:after { /* pc */
}

.pager__link--list { /* pc */
}

.pager__link--list:after {
	content: "";
	width: 40px;
	height: 0;
	border-radius: 3px;
	background: #158dfc;
	display: block;
	opacity: 0;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

.pager__link--list:hover:after {
	height: 3px;
	margin-top: 10px;
	opacity: 1;
}

.btn-friend-list { /* pc */
	width: 150px;
	height: 150px;
	right: 50px;
	bottom: 120px;
}

.btn-friend-list__icon { /* pc */
	padding-bottom: 40px;
	-webkit-box-shadow: 0 0 0 8px #FFFFFF inset;
	box-shadow: 0 0 0 8px #FFFFFF inset;
}

.btn-friend-list__text { /* pc */
	font-size: 1.3rem;
	height: 30px;
	bottom: 10px;
}

.friend-list { /* pc */
	width: 375px;
	height: calc(100vh - 200px);
	position: absolute;
	bottom: 55px;
	right: 20px;
	border-radius: 10px;
	-webkit-box-shadow: 0 0 43px rgba(102, 102, 102, 0.2);
	box-shadow: 0 0 43px rgba(102, 102, 102, 0.2);
}

.friend-list__inner { /* pc */
	padding-bottom: 0;
}

.banners { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.banners__item { /* pc */
	width: calc((100% - 40px) / 3);
}

.banners__item:not(:last-child) {
	margin-right: 20px;
}

.banners__item a { /* pc */
}

.banners__item a:hover img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.banner-content { /* pc */
	padding: 100px 0 190px;
}

.news-pickup { /* pc */
	padding: 57px 0;
}

.news-pickup__image { /* pc */
	width: calc(50vw + 385px);
	max-width: 84.5vw;
	height: 340px;
}

.news-pickup__image img { /* pc */
	max-width: 300%;
	width: 1280px;
	min-width: 100%;
}

.news-pickup__head { /* pc */
	margin-bottom: 90px;
}

.news-pickup__head .button { /* pc */
	margin-top: 32px;
}

.news-pickup__main { /* pc */
	width: calc(100% + 50px);
	margin-left: 0;
}

.twitter { /* pc */
	max-width: 800px;
	margin: 0 auto 200px;
	padding: 66px 0 0;
}

.twitter__head { /* pc */
	position: relative;
	display: block;
	margin-bottom: 51px;
}

.twitter__head .button { /* pc */
	width: 167px;
	height: 40px;
}

.twitter__icon { /* pc */
	margin: 0 auto;
}

.twitter__button { /* pc */
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 167px;
	height: 50px;
}

.twitter__body { /* pc */
	height: 337px;
}

.game { /* pc */
	padding: 57px 0 0;
}

.game__head { /* pc */
	margin-bottom: 50px;
}

.game__main { /* pc */
	width: 600px;
	margin: 85px auto 68px;
	padding: 48px 0 57px;
}

.game__app-name { /* pc */
	margin-bottom: 28px;
}

.game__detail { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-line-pack: justify;
	align-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 420px;
	height: 45px;
}

.movie-pickup { /* pc */
	padding-top: 100px;
	padding-bottom: 100px;
}

.movie-pickup__bar { /* pc */
	max-width: 1200px;
	height: 250px;
	top: -7vh;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.movie-pickup__heading { /* pc */
	font-size: 4.0rem;
}

.movie-pickup__movie { /* pc */
	max-width: 800px;
}

.movie { /* pc */
	width: 50%;
	padding: 0 50px;
}

.movie:hover .movie__thumbnail img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.movie:hover .movie__main:after {
	color: #158dfc;
	background-image: url(../img/icon_play_blue.svg);
}

.movie--lg { /* pc */
	width: 100%;
	padding: 0;
}

.movie--lg .movie__main:after { /* pc */
	width: 109px;
	height: 135px;
	content: "PLAY MOVIE";
	font: 500 1.2rem "Montserrat", "Noto Sans JP", sans-serif;
	letter-spacing: 0.2em;
	color: #FFFFFF;
	background-position: center top;
	background-size: 100% auto;
	padding-top: 120px;
	margin-top: 14px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-left: 0.2em;
}

.movie__main:after { /* pc */
	width: 48px;
	height: 48px;
}

.movie__text { /* pc */
	margin-top: 15px;
}

.movie__text--sm { /* pc */
	margin-top: 17px;
}

.accordion-section + .accordion-section { /* pc */
	margin-top: 10px;
}

.accordion-section__head:before { /* pc */
	width: 70px;
	height: 5px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.accordion-section__trg { /* pc */
	padding: 46px;
	display: block;
	text-align: center;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.accordion-section__trg:hover {
	color: #1541fc;
}

.accordion-section__trg:after { /* pc */
	width: 30px;
	height: 17px;
	right: 50px;
}

.accordion-section__trg span { /* pc */
	position: absolute;
	top: 0;
	right: 50px;
	height: 100%;
	padding-right: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-size: 1.2rem;
}

.accordion-section__inner { /* pc */
	width: 800px;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 46px;
}

.official-sns { /* pc */
	max-width: 850px;
	padding: 27px 24px;
	margin: 200px auto 0;
}

.official-sns:before,
.official-sns:after { /* pc */
	width: 100%;
}

.official-sns__item { /* pc */
	margin-left: 74px;
}

.official-sns__item a { /* pc */
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.official-sns__item a:hover {
	opacity: 0.5;
}

.about-section { /* pc */
	padding-top: 80px;
}

.about-section:first-child {
	padding-top: 140px;
}

.about-section__main { /* pc */
	background: none;
}

.about-section__main:before {
	content: "";
	display: block;
	position: absolute;
	width: 728px;
	height: 482px;
	top: -76px;
	z-index: -1;
}

.about-section__text-wrap { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.about-section__text-wrap--1 { /* pc */
	margin-left: 0;
	padding-left: 3.6%;
}

.about-section__text-wrap--2 { /* pc */
	margin-right: 0;
	padding-right: 4.5%;
}

.about-section__text-wrap--2 .about-text { /* pc */
	margin-left: 0;
}

.about-section__text-wrap { /* pc */
	width: 50%;
}

.about-section__image--1 { /* pc */
	width: 400px;
	right: auto;
	left: 50%;
}

.about-section__image--1__01 { /* pc */
	width: 244px;
	right: auto;
	top: -2.8%;
	left: -12px;
}

.about-section__image--1__02 { /* pc */
	width: 291px;
	right: -2%;
	top: 77px;
}

.about-section__image--2 { /* pc */
	width: 400px;
	right: 50%;
}

.about-section__image--2__01 { /* pc */
	width: 364px;
	top: -0.9%;
	left: -13%;
}

.about-section__image--2__02 { /* pc */
	width: 343px;
	left: 24.7%;
	top: 33.5%;
	z-index: 1;
}

.about-section__image--3 { /* pc */
	width: 400px;
	right: auto;
	left: 50%;
}

.about-section__image--3__01 { /* pc */
	width: 244px;
	top: -10px;
	right: auto;
	left: -27px;
}

.about-section__image--3__02 { /* pc */
	width: 277px;
	right: -5px;
	top: 72px;
}

.about-section__films.is-visible { /* pc */
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.about-section__films { /* pc */
	width: 1141px;
	position: relative;
	left: 50%;
	-webkit-transform: translate(-50%, 80px);
	-ms-transform: translate(-50%, 80px);
	transform: translate(-50%, 80px);
}

.about-section__films--1 { /* pc */
	margin-top: -27px;
}

.about-section__films--2 { /* pc */
	margin-top: -10px;
}

.about-section__films--3 { /* pc */
	margin-top: 30px;
	width: 91%;
}

.about-section__films--3 img {
	margin-left: auto;
	margin-right: auto;
	width: 583px;
}

.about-text { /* pc */
	font-size: 2.0rem;
	line-height: 2;
	letter-spacing: 0.1em;
}

.about-movie { /* pc */
	max-width: 800px;
}

.about-link { /* pc */
	margin-top: 15px;
	margin-bottom: 230px;
}

.about-link__item { /* pc */
	margin-bottom: 40px;
}

.about-link__item:nth-child(odd) { /* pc */
	padding-left: 0;
	margin-left: auto;
}

.about-link__item:nth-child(even) { /* pc */
	padding-right: 0;
	margin-right: auto;
}

.about-link__item { /* pc */
	width: calc(50% + 55px);
}

.about-link__link:before { /* pc */
	height: 50px;
}

.about-link__link { /* pc */
	padding: 30px 25px;
	position: relative;
}

.about-link a { /* pc */
}

.about-link a:hover {
	color: #1541fc;
}

.about-link__text { /* pc */
	font-size: 3.9rem;
}

.about-link__image--1 { /* pc */
	right: auto;
	left: 200px;
	bottom: -60px;
}

.about-link__image--1 img { /* pc */
	width: 269px;
}

.about-link__image--2 { /* pc */
	left: auto;
	right: 176px;
}

.about-link__image--2 img { /* pc */
	width: 296px;
}

.about-link__image--3 { /* pc */
	right: auto;
	left: 245px;
}

.about-link__image--3 img { /* pc */
	width: 210px;
}

.story-text { /* pc */
	font-size: 2.0rem;
	line-height: 2;
	letter-spacing: 0.1em;
}

.story-text--wide { /* pc */
	line-height: 3;
}

.story-text span:not([class]) { /* pc */
	padding: 0.3em 0;
}

.story-text__strong:before { /* pc */
	height: 100px;
	margin: 8px auto -2px;
}

.story-text__lg:before { /* pc */
	width: 417px;
	height: 417px;
}

.story-text__lg { /* pc */
	font-size: 154%;
}

.story-lg-text { /* pc */
	font-size: 4.2rem;
	line-height: 2;
	letter-spacing: 0.1em;
}

.story-xlg-text { /* pc */
	font-size: 4.0rem;
	line-height: 2;
	letter-spacing: 0.1em;
}

.story01 { /* pc */
	padding: 140px 0 87px;
}

.story01:after { /* pc */
	width: 212px;
	height: 337px;
	right: 50%;
	margin-right: 200px;
}

.story01 { /* pc */
}

.story01__inner { /* pc */
}

.story02 { /* pc */
	height: 638px;
}

.story02__image img { /* pc */
	width: 100%;
	min-width: 1458px;
	height: auto;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.story02__inner { /* pc */
	padding: 100px 113px 0 0;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.story02__inner .story-text { /* pc */
	margin-left: 0;
}

.story03 { /* pc */
	padding: 84px 0 0;
	margin-bottom: 110px;
}

.story03__inner:before { /* pc */
	width: 565px;
	height: 565px;
	top: 0;
	left: 90px;
}

.story03__inner .story-text { /* pc */
	width: 43%;
	padding-bottom: 4.6em;
}

.story03__inner { /* pc */
	width: 50%;
	margin-left: auto;
}

.story03__imagebox-1 { /* pc */
	width: 348px;
	left: auto;
	right: 50%;
	margin-right: -17px;
	-webkit-transform: translate(0, -21.6%);
	-ms-transform: translate(0, -21.6%);
	transform: translate(0, -21.6%);
}

.story03__imagebox-2 { /* pc */
	position: absolute;
	bottom: 34px;
	right: 50%;
	width: 436px;
	height: 257px;
	margin: 0;
	padding: 0;
}

.story03__image-2 { /* pc */
	width: 299px;
	left: 0;
}

.story03__image-3 { /* pc */
	width: 239px;
	position: absolute;
	bottom: 0;
	right: 0;
}

.story03__image-4 { /* pc */
	width: 298px;
	position: absolute;
	bottom: -115px;
	left: -150px;
}

.story04 { /* pc */
	height: 430px;
}

.story04__imagebox-1 { /* pc */
	width: calc(50vw + 400px);
	height: 100%;
}

.story04__imagebox-1 img { /* pc */
	width: 100%;
	height: auto;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.story04__inner .story-xlg-text { /* pc */
	top: 47%;
	left: 62%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.story04__inner { /* pc */
	position: absolute;
	top: 0;
	right: 50%;
	width: 400px;
	height: 100%;
}

.story04__imagebox-2 { /* pc */
	width: 457px;
	height: 357px;
	left: 52%;
	top: 207px;
}

.story04__image-1 { /* pc */
	width: 298px;
	top: 0;
	right: 0;
}

.story04__image-2 { /* pc */
	width: 278px;
	top: auto;
	right: auto;
	left: 0;
	bottom: 0;
}

.story05 { /* pc */
	padding: 170px 0 0;
	margin-bottom: 80px;
}

.story05__inner { /* pc */
	width: 50%;
	padding: 0;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.story05__inner .story-text:first-child { /* pc */
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
}

.story05__inner .story-text:nth-child(2) { /* pc */
	line-height: 1;
	padding: 112px 117px 0 0;
}

.story05__imagebox-1 { /* pc */
	width: 453px;
	height: 364px;
	left: auto;
	right: 50%;
	margin-right: -400px;
}

.story05__image-1 { /* pc */
	width: 348px;
	top: auto;
	bottom: 0;
	right: 0;
}

.story05__image-2 { /* pc */
	width: 278px;
	bottom: auto;
	right: auto;
	left: 0;
	top: 0;
}

.story06__image-1 { /* pc */
	height: 500px;
}

.story06__image-2 { /* pc */
	margin: -196px auto 0;
	text-align: center;
}

.story06__image-2 img {
	width: 397px;
	margin-left: 60px;
}

.bg-gray { /* pc */
	padding: 50px 0 50px;
}

.movie-list-1 { /* pc */
	padding-top: 100px;
	margin-bottom: 100px;
}

.movie-list-1:before { /* pc */
	height: 300px;
}

.movie-list-1__item { /* pc */
	max-width: 800px;
}

.movie-list-2 { /* pc */
	max-width: 900px;
	padding: 0 50px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
}

.movie-list-2__item { /* pc */
	margin-bottom: 50px;
}

.unit { /* pc */
	margin-top: -60px;
	margin-bottom: 150px;
}

.unit__item { /* pc */
	padding-top: 0;
	margin-bottom: 60px;
}

.unit__link:before { /* pc */
	content: none;
}

.unit__link { /* pc */
	padding-top: 1px;
	height: 265px;
	display: block;
	background: #FFFFFF;
}

.unit a,
.unit button { /* pc */
}

.unit a:hover .unit__text,
.unit button:hover .unit__text {
	background-position: left top;
}

.unit__logo { /* pc */
	position: static;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	margin-top: 65px;
	height: 150px;
	padding-left: 32px;
	background: #eaf5ff;
}

.unit__logo img[src*="huit"] { /* pc */
	width: 168px;
	margin-bottom: 3px;
}

.unit__logo img[src*="clutch"] { /* pc */
	width: 205px;
	margin-bottom: 3px;
}

.unit__logo img[src*="inhi16"] { /* pc */
	width: 175px;
}

.unit__logo img[src*="twin"] { /* pc */
	width: 158px;
	margin: -20px 0 -5px -22px;
}

.unit__text { /* pc */
	height: 50px;
	padding: 0 30px;
	background-image: -webkit-gradient(linear, left top, right top, from(#1541fc), color-stop(50%, #1541fc), color-stop(50%, #158dfc), to(#158dfc));
	background-image: -webkit-linear-gradient(left, #1541fc 0%, #1541fc 50%, #158dfc 50%, #158dfc 100%);
	background-image: -o-linear-gradient(left, #1541fc 0%, #1541fc 50%, #158dfc 50%, #158dfc 100%);
	background-image: linear-gradient(to right, #1541fc 0%, #1541fc 50%, #158dfc 50%, #158dfc 100%);
	background-size: 200% auto;
	background-position: right top;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.unit__text span { /* pc */
	font-size: 1.3rem;
}

.unit__text span:after { /* pc */
	margin: 0 14px;
}

.unit__image { /* pc */
	left: auto;
	right: 0;
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
	width: calc(100% - 170px);
}

.unit__image img { /* pc */
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.unit__image img[src*="huit"] { /* pc */
	width: 402px;
	margin-top: 16px;
}

.unit__image img[src*="clutch"] { /* pc */
	width: 515px;
	margin-top: 10px;
}

.unit__image img[src*="inhi16"] { /* pc */
	width: 472px;
	margin-top: 10px;
}

.unit__image img[src*="twin"] { /* pc */
	width: 326px;
	margin-top: 14px;
}

.unit__trg { /* pc */
	margin-right: 5.3%;
	line-height: 47px;
	padding-right: 44px;
}

.unit__trg__text { /* pc */
	opacity: 1;
}

.unit__trg__icon { /* pc */
	width: 20px;
	height: 20px;
	border-width: 2px;
}

.line-wrap { /* pc */
}

.line-wrap:last-child { /* pc */
	margin-bottom: 0;
}

.line-wrap:before { /* pc */
	height: 200px;
}

.line-wrap--sm { /* pc */
}

.line-wrap--sm:before {
	height: 174px;
}

.line-wrap--blue { /* pc */
	padding: 47px 0 100px;
}

.line-wrap--gray { /* pc */
	padding: 47px 0 100px;
}

.line-wrap--mb0 { /* pc */
	padding-bottom: 50px;
}

.disc-wrap { /* pc */
	max-width: 870px;
	left: 0;
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
	margin: 0 auto;
	overflow: visible;
}

.disc-wrap__inner { /* pc */
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.disc-item { /* pc */
	width: 240px;
	margin: 0 25px 50px;
}

.disc-item:first-child {
	margin-left: 25px;
}

.disc-item:before { /* pc */
	height: 8px;
}

.disc-item__link { /* pc */
	padding: 20px 20px 50px;
}

.disc-item__link:hover:before {
	height: 200px;
}

.disc-item__link:hover img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.disc-item__link:before { /* pc */
	height: 50px;
}

.banner-4col-wrap { /* pc */
	width: 100%;
	margin-top: -50px;
	left: 0;
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
	overflow: visible;
}

.banner-4col__item { /* pc */
	padding: 0;
	width: calc((100% - 30px) / 4);
}

.banner-4col__item:not(:last-child) {
	margin-right: 10px;
}

.banner-4col__item:first-child { /* pc */
	margin-left: 0;
}

.banner-4col__item a { /* pc */
	width: auto;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.banner-4col__item a:hover {
	opacity: 0.5;
}

.spcial-list { /* pc */
	padding: 0 0;
	margin-bottom: 0;
}

.spcial-list:hover:before {
	background: #b2daff;
}

.spcial-list:before { /* pc */
	height: 179px;
}

.spcial-list a { /* pc */
	padding: 35px 50px 0;
}

.spcial-list a:before {
	content: "";
	width: 90px;
	height: 5px;
	background: #158dfc;
	display: block;
	position: absolute;
	top: 0;
	left: 50px;
}

.spcial-list a:hover img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.spcial-list__title { /* pc */
	padding: 0;
	margin-top: -4px;
	margin-bottom: 18px;
}

.spcial-list__title:before { /* pc */
	content: none;
}

.spcial-list__main { /* pc */
	display: block;
	margin-bottom: 0;
}

.spcial-list__main:before,
.spcial-list__main:after {
	content: "";
	display: table;
}

.spcial-list__main:after {
	clear: both;
}

.spcial-list__image { /* pc */
	width: 300px;
	float: left;
	margin-right: 30px;
}

.spcial-list__text { /* pc */
	width: auto;
	line-height: 1.6;
}

.spcial-list .button { /* pc */
	-webkit-transform: translateY(-100%);
	-ms-transform: translateY(-100%);
	transform: translateY(-100%);
	width: 150px;
	height: 50px;
}

.lightnovel-list-wrap { /* pc */
	padding: 0 70px;
}

.lightnovel-list a { /* pc */
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.lightnovel-list a:hover {
	color: #158dfc;
}

.lightnovel-list a:hover img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.lightnovel-list__image { /* pc */
	margin-bottom: 18px;
}

.stamp-list-wrap { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.stamp-list { /* pc */
	width: calc(50% - 15px);
}

.stamp-list a { /* pc */
	padding-right: 25px;
}

.stamp-list a:hover {
	background: #b2daff;
}

.stamp-list__text { /* pc */
	padding-top: 18px;
}

.special-head { /* pc */
	height: 465px;
	font-size: 4.0rem;
	line-height: 1.75;
	margin-bottom: 100px;
}

.special-head--shosetsu { /* pc */
	background-image: url(../img/img_head_shosetsu_pc.jpg);
}

.special-head--gogo { /* pc */
	background-image: url(../img/img_head_gogo_pc.jpg);
}

.special-head--katato { /* pc */
	background-image: url(../img/img_head_katato_pc.jpg);
}

.novel-list-wrap { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 90px;
}

.novel-list { /* pc */
	width: calc(50% - 20px);
	margin-bottom: 20px;
}

.novel-list a { /* pc */
	height: 80px;
	background-image: -webkit-gradient(linear, left top, right top, from(#b2daff), color-stop(50%, #b2daff), color-stop(50%, #eaf5ff), to(#eaf5ff));
	background-image: -webkit-linear-gradient(left, #b2daff 0%, #b2daff 50%, #eaf5ff 50%, #eaf5ff 100%);
	background-image: -o-linear-gradient(left, #b2daff 0%, #b2daff 50%, #eaf5ff 50%, #eaf5ff 100%);
	background-image: linear-gradient(to right, #b2daff 0%, #b2daff 50%, #eaf5ff 50%, #eaf5ff 100%);
	background-size: 200% auto;
	background-position: right top;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.novel-list a:hover {
	background-position: left top;
}

.novel-list a:before { /* pc */
	width: 20px;
}

.novel-list__text { /* pc */
	padding: 0 14.3%;
}

.comic-list-wrap { /* pc */
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	margin-bottom: 55px;
}

.comic-list { /* pc */
	width: 30%;
	margin-bottom: 46px;
}

.comic-list:not(:nth-child(3n)) {
	margin-right: 5%;
}

.comic-list a { /* pc */
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.comic-list a:hover {
	color: #158dfc;
}

.comic-list a:hover img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.comic-list__text { /* pc */
	margin-top: 18px;
}

.label-new { /* pc */
	left: -20px;
	padding: 2px 22px 2px;
	font-size: 1.2rem;
}

.special-detail { /* pc */
	margin-top: 40px;
	padding-top: 55px;
}

.special-detail:before { /* pc */
	width: 375px;
	height: 800px;
	top: 175px;
	right: auto;
	left: 50%;
	background-position: center top;
}

.comic-content { /* pc */
	padding: 50px 0;
	margin-bottom: 20px;
	position: relative;
	background: #eaf5ff;
}

.comic-content:before {
	content: "";
	display: block;
	width: 90px;
	height: 5px;
	background: #158dfc;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.comic-content img { /* pc */
	width: 371px;
}

.landscape { /* pc */
	display: none;
}

.notfound { /* pc */
	background-image: url(../img/bg_notfound_pc.jpg);
	padding: 104px 38px 50px;
	margin: 60px 0 0;
}

.notfound__text { /* pc */
	font-size: 1.6rem;
	margin-bottom: 85px;
}

.playlist { /* pc */
	width: 50%;
	padding: 0 50px;
	margin-bottom: 40px;
}

.playlist__main { /* pc */
	display: block;
}

.playlist__thumbnail { /* pc */
	width: 100%;
	padding-top: 59%;
}

.playlist__thumbnail:after { /* pc */
	width: 47px;
	height: 47px;
	bottom: 15px;
	right: 15px;
}

.playlist__info { /* pc */
	padding-left: 0;
}

.playlist__title { /* pc */
	margin-top: 15px;
}

.playlist__title--sm { /* pc */
	margin-top: 17px;
}

.line-kisekae { /* pc */
	padding: 0 3% 0 0;
	text-align: center;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.line-kisekae:hover {
	background: #b2daff;
}

.line-kisekae img { /* pc */
	margin: -25px auto -30px;
}

.chara-paging { /* pc */
	top: 50%;
	padding: 0 20px;
}

.chara-paging__item a { /* pc */
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.chara-paging__item a:hover {
	opacity: 0.5;
}

.chara-paging__item--left a { /* pc */
	padding-left: 30px;
}

.chara-paging__item--right a { /* pc */
	padding-right: 30px;
}

.chara-paging__item img { /* pc */
	width: 30px;
}

.unit-detail__wrapper { /* pc */
	max-width: 90%;
	max-width: 860px;
	padding: 50px 20px 80px;
}

.unit-detail__main { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.unit-detail__close { /* pc */
	font-size: 1.2rem;
	padding: 18px 98px;
}

.unit-detail__close:hover .unit-detail__close__icon {
	margin-top: -6px;
}

.unit-detail__close__icon { /* pc */
	border-width: 2px;
	width: 20px;
	height: 20px;
	right: 54px;
	top: 55%;
}

.unit-name { /* pc */
	width: auto;
	margin-bottom: 64px;
}

.unit-name--1 {
	padding-left: 170px;
}

.unit-name--2 {
	padding-left: 130px;
}

.unit-name--3 {
	padding-left: 180px;
}

.unit-name--4 .unit-name__item:first-child { /* pc */
	margin-left: 0;
	margin-right: 40px;
}

.unit-name__item { /* pc */
	margin: 0 15px;
}

.unit-name__chara { /* pc */
	font-size: 1.6rem;
}

.unit-name__voice { /* pc */
	font-size: 1.0rem;
	margin-top: 9px;
}

.unit-disc { /* pc */
	width: 45.8%;
}

.unit-disc__play { /* pc */
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.unit-disc__play:hover {
	opacity: 0.6;
}

.unit-disc__link { /* pc */
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.unit-disc__link:hover {
	opacity: 0.6;
}

.unit-overview { /* pc */
	width: 45.8%;
	margin-bottom: 0;
}

.unit-overview__text { /* pc */
	margin-bottom: 33px;
}

.unit-overview__image { /* pc */
	text-align: left;
}

.unit-overview__image img { /* pc */
	position: static;
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
}

.actor { /* pc */
	padding: 26px 0 120px;
}

.actor__label { /* pc */
	margin-bottom: 37px;
}

.actor__detail { /* pc */
	margin-bottom: 50px;
}

.actor__image { /* pc */
	border-width: 20px;
	width: 290px;
	height: 290px;
}

.actor__name { /* pc */
	font-size: 2.8rem;
	margin-top: -4px;
}

.actor__message { /* pc */
	max-width: 520px;
}

.recruit:not(:last-child) { /* pc */
	margin-bottom: 40px;
}

.recruit__overview { /* pc */
	padding: 45px 50px 16px;
}

.recruit__detail { /* pc */
	padding: 0 50px;
}

.recruit__company { /* pc */
	padding: 10px 0 0;
}

.recruit__trg { /* pc */
	padding-right: 95px;
	height: 50px;
}

.recruit__trg:after { /* pc */
	width: 17px;
	height: 17px;
	border-width: 2px;
	right: 54px;
}

.recruit__trg span { /* pc */
	opacity: 1;
}

.recruit__trg.is-opend:after { /* pc */
	-webkit-transform: rotate(-135deg) translate(18%, 18%);
	-ms-transform: rotate(-135deg) translate(18%, 18%);
	transform: rotate(-135deg) translate(18%, 18%);
}

.recruit__button { /* pc */
	padding: 38px 12px 26px;
}

.recruit-detail { /* pc */
	padding: 24px 0;
}

.recruit-detail:not(:last-child) { /* pc */
	margin-bottom: 12px;
}

.recruit-detail:before { /* pc */
	width: 90px;
}

.recruit-detail__heading { /* pc */
	margin-bottom: 26px;
}

.recruit-detail__content p:not(:last-child),
.recruit-detail__content ul:not(:last-child) { /* pc */
	margin-bottom: 1.5em;
}

.company { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 2px;
}

.company__heading { /* pc */
	width: 33.5%;
	padding: 16px 20px;
	margin-bottom: 0;
}

.company__content { /* pc */
	width: calc(66.5% - 2px);
	padding: 16px 20px;
}

.contact { /* pc */
	padding: 0 50px;
	margin-bottom: 20px;
}

.contact__inner { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	padding: 35px 0;
}

.contact__inner:before { /* pc */
	width: 90px;
}

.contact__logo { /* pc */
	margin-bottom: 0;
	width: 27.4%;
	-webkit-transform: translateY(-10px);
	-ms-transform: translateY(-10px);
	transform: translateY(-10px);
}

.contact__main { /* pc */
	width: calc(72.6% - 150px);
	padding: 0 7%;
}

.contact__text { /* pc */
	margin-top: 18px;
}

.contact__sub .button { /* pc */
	width: 150px;
	position: static;
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
}

.contact__mail { /* pc */
	margin-top: 0;
}

.recruit-message { /* pc */
}

.recruit-message { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.recruit-message__main { /* pc */
	font-size: 2.0rem;
	padding: 50px 0 0 3em;
	line-height: 1.6;
	width: 50%;
}

.recruit-message__image { /* pc */
	width: 50%;
	max-width: 50%;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	margin-left: 0;
	margin-right: 0;
}

.download-app-head { /* pc */
	background: rgba(234, 245, 255, 0.8);
	border-left: 10px solid #158dfc;
	width: 415px;
	position: absolute;
	top: -148px;
	right: 0;
	padding: 20px 40px 20px;
}

.download-app-head__item--1 { /* pc */
	width: 142px;
}

.download-app-head__item--2 { /* pc */
	width: 177px;
}

.download-app-head__item--3 { /* pc */
	display: block;
	width: 142px;
}

.about-home { /* pc */
	margin-bottom: 116px;
}

.about-home__main { /* pc */
	margin-bottom: 96px;
	position: relative;
}

.about-home__main:before {
	content: "";
	display: block;
	width: 864px;
	height: 869px;
	background: url(../img/img_home_about_3.png) no-repeat center/contain;
	position: absolute;
	top: -130px;
	left: 50%;
	margin-left: -70px;
	z-index: 1;
}

.about-home__text-1 { /* pc */
	margin: 85px 0 60px 55.5%;
	max-width: 25em;
	line-height: 2.44;
	text-shadow: 0 0px 2px #FFFFFF;
}

.about-home__text-2 { /* pc */
	font-size: 3.6rem;
	margin: 0 25.8% 0 auto;
	text-shadow: 0 0px 2px #FFFFFF;
	width: 4em;
}

.about-home__movie-1 { /* pc */
	width: 550px;
	height: 550px;
	margin-top: -724px;
	margin-bottom: 125px;
}

.about-home__text-3 { /* pc */
	width: 50%;
	letter-spacing: 0.15em;
	line-height: 2.44;
}

.about-home__movie-2 { /* pc */
	width: 890px;
	height: 580px;
	margin: -54px -175px -445px auto;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 2;
}

.about-home__text-4 { /* pc */
	font-size: 3.2rem;
	line-height: 1.56;
	letter-spacing: 0.02em;
	margin-bottom: 78px;
	text-shadow: 0 0px 2px #FFFFFF;
}

.about-home__text-4 span { /* pc */
	display: inline;
}

.about-home__text-5 { /* pc */
	padding-left: 8.5%;
	line-height: 2.44;
	margin-bottom: 250px;
	text-shadow: 0 0px 2px #FFFFFF;
}

.about-home__text-6 { /* pc */
	padding: 77px 0;
	text-align: center;
	font-size: 3.2rem;
	line-height: 1.56;
	letter-spacing: 0.02em;
}

.about-home__2col { /* pc */
	width: 100%;
}

.about-home__2col__item { /* pc */
	height: auto;
}

.about-home__2col__item:before {
	content: "";
	display: block;
	width: 100%;
	padding-top: 56%;
}

.about-home__2col__item img,
.about-home__2col__item video {
	position: absolute;
	top: 0;
	left: 0;
}

.game-image { /* pc */
	width: 610px;
	padding: 37px 0 0;
}

.game-image:before { /* pc */
	height: 437px;
}

.game-image__item a { /* pc */
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.game-image__item a:hover {
	-webkit-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
}

.game-image__link:after { /* pc */
	bottom: 39px;
	right: 25px;
	width: 118px;
	height: 33px;
}

.game-image__movie:after { /* pc */
	bottom: 22px;
	right: -35px;
	width: 315px;
	height: 68px;
}

.game-image__thumblist { /* pc */
	padding: 12px 15px 0;
}

.game-image__thumblist__item:not(:nth-child(4n)) { /* pc */
	margin-right: 18px;
}

.game-image__thumblist__item { /* pc */
	width: calc((100% - 72px) / 5);
	margin-right: 18px;
}

.game-image__thumblist__item:nth-child(5n) {
	margin-right: 0;
}

.game-image .swiper-button-next,
.game-image .swiper-button-prev { /* pc */
	width: 30px;
	height: 50px;
	top: 180px;
	margin: 0;
}

.game-image .swiper-button-prev { /* pc */
	left: -75px;
}

.game-image .swiper-button-next { /* pc */
	right: -75px;
}

.swiper-button-prev,
.swiper-button-next { /* pc */
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	-webkit-transform-origin: center;
	-ms-transform-origin: center;
	transform-origin: center;
	top: 50%;
}

.swiper-button-prev:hover,
.swiper-button-next:hover { /* pc */
	-webkit-transform: scale(1.07) translate(0, -50%);
	-ms-transform: scale(1.07) translate(0, -50%);
	transform: scale(1.07) translate(0, -50%);
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next { /* pc */
	left: 50%;
	margin-left: -410px;
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev { /* pc */
	left: auto;
	right: 50%;
	margin-right: -410px;
}

.swiper-pagination { /* pc */
	width: 695px;
	right: 50%;
	bottom: 40px;
	-webkit-transform: translateX(50%);
	-ms-transform: translateX(50%);
	transform: translateX(50%);
	text-align: right;
}

.swiper-pagination-bullet { /* pc */
	width: 50px;
}

.swiper-pagination-bullet:hover {
	background: #A1D8E6;
}

button.mfp-close { /* pc */
	top: 20px;
	right: 50px;
	bottom: auto;
}

}

@media screen and (min-width: 768px) and (max-height: 840px) {

.chara-intro { /* charaMV 高さが低いとき */
	padding-bottom: 4vh;
}

.chara-intro__inner { /* charaMV 高さが低いとき */
	padding: 40px 0 0;
}

.chara-catchcopy { /* charaMV 高さが低いとき */
	font-size: 3.6rem;
	font-size: 4.18vh;
}

.chara-name { /* charaMV 高さが低いとき */
}

}

@media screen and (min-width: 768px) and (max-height: 680px) {

.chara-paging {
	top: 35%;
}

}

@media screen and (min-width: 860px) {

.header-text { /* pc */
	letter-spacing: 0.8em;
}

}

@media screen and (min-width: 1000px) {

.footer-share-wrap { /* 100px以上 */
	padding: 0 7.1vw;
}

.app-wrap { /* 100px以上 */
	padding: 39px 7.1vw;
}

.app { /* 100px以上 */
	width: calc(92px + 40em);
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.app__content { /* 100px以上 */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	height: 3em;
}

.app__detail__label { /* 100px以上 */
	width: auto;
}

.footer-company-wrap { /* 100px以上 */
	padding: 0 7.1vw;
}

.chara-list { /* 100px以上 */
	width: calc(100% / 7);
}

.chara-list--sm { /* 100px以上 */
	width: 55px;
}

.chara-mv { /* 100px以上 */
	width: calc(100% - 200px);
}

}

@media screen and (min-width: 1350px) {

.download-app--footer { /* 1350px以上 */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 100%;
	max-width: 550px;
}

.download-app--footer:before {
	content: "";
	display: block;
	width: 40px;
	height: 1px;
	background: #FFFFFF;
	margin-right: 40px;
}

}

@media screen and (min-width: 1350px) and (min-width: 1350px) {

.download-app--footer .download-app__heading { /* 1350px以上 */
	margin-right: 40px;
	margin-bottom: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

}

@media all and (max-width: 900px) {

.mfp-arrow {
	-webkit-transform: scale(0.75);
	-ms-transform: scale(0.75);
	transform: scale(0.75);
}

.mfp-arrow-left {
	-webkit-transform-origin: 0;
	-ms-transform-origin: 0;
	transform-origin: 0;
}

.mfp-arrow-right {
	-webkit-transform-origin: 100%;
	-ms-transform-origin: 100%;
	transform-origin: 100%;
}

.mfp-container {
	padding-left: 6px;
	padding-right: 6px;
}

}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {

/**
			 * Remove all paddings around the image on small screen
			 */

.mfp-img-mobile .mfp-image-holder {
	padding-left: 0;
	padding-right: 0;
}

.mfp-img-mobile img.mfp-img {
	padding: 0;
}

.mfp-img-mobile .mfp-figure:after {
	top: 0;
	bottom: 0;
}

.mfp-img-mobile .mfp-figure small {
	display: inline;
	margin-left: 5px;
}

.mfp-img-mobile .mfp-bottom-bar {
	background: rgba(0, 0, 0, 0.6);
	bottom: 0;
	margin: 0;
	top: auto;
	padding: 3px 5px;
	position: fixed;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.mfp-img-mobile .mfp-bottom-bar:empty {
	padding: 0;
}

.mfp-img-mobile .mfp-counter {
	right: 5px;
	top: 3px;
}

.mfp-img-mobile .mfp-close {
	top: 0;
	right: 0;
	width: 35px;
	height: 35px;
	line-height: 35px;
	background: rgba(0, 0, 0, 0.6);
	position: fixed;
	text-align: center;
	padding: 0;
}

}

@media screen and (max-width: 767px) {

.sp-only { /* sp */
	display: block !important;
}

.sp-only-2 { /* sp */
	display: inline-block !important;
}

.pc-only { /* sp */
	display: none !important;
}

.pc-only-2 { /* sp */
	display: none !important;
}

.l-menuBtn { /* sp */
}

.l-menuBtn.is-fixed-clear {
	position: absolute;
}

.l-soundBtn { /* sp */
}

.l-soundBtn.is-fixed-clear {
	position: absolute;
}

.l-sp-wrapper { /* sp */
	position: relative;
	width: 86.66667%;
	margin-left: auto;
	margin-right: auto;
}

.l-homeBtn { /* sp */
}

.l-homeBtn.is-fixed-clear {
	position: absolute;
}

.wp-content blockquote { /* sp */
	padding: 12px 15px;
}

.unit-name--2 { /* sp */
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	height: 24vw;
	padding: 0 3vw;
}

.unit-name--2 .unit-name__item {
	width: 29%;
}

.unit-name--2 .unit-name__item a {
	display: inline-block;
}

.unit-name--2 .unit-name__item:nth-child(odd) {
	margin-bottom: 4vw;
	text-align: left;
}

.unit-name--2 .unit-name__item:nth-child(even) {
	text-align: right;
}

.unit-name--2 .unit-name__item:nth-child(even) a {
	-webkit-transform: translateX(28%);
	-ms-transform: translateX(28%);
	transform: translateX(28%);
}

.unit-disc__list { /* sp */
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 100vw;
}

}

@media screen and (orientation: landscape) and (max-width: 767px) {

.landscape {
	opacity: 1;
	visibility: visible;
}

}

@media screen and (max-width: 767px) and (max-height: 480px) {

.chara-paging {
	top: 30%;
}

}

@-webkit-keyframes show {

0% {
	opacity: 1;
	-webkit-transform: translate(-50%, -50%) scale(0.2);
	transform: translate(-50%, -50%) scale(0.2);
}

20% {
	opacity: 1;
}

50% {
	opacity: 0;
	-webkit-transform: translate(-50%, -50%) scale(1);
	transform: translate(-50%, -50%) scale(1);
}

100% {
	opacity: 0;
	-webkit-transform: translate(-50%, -50%) scale(1);
	transform: translate(-50%, -50%) scale(1);
}

}

@keyframes show {

0% {
	opacity: 1;
	-webkit-transform: translate(-50%, -50%) scale(0.2);
	transform: translate(-50%, -50%) scale(0.2);
}

20% {
	opacity: 1;
}

50% {
	opacity: 0;
	-webkit-transform: translate(-50%, -50%) scale(1);
	transform: translate(-50%, -50%) scale(1);
}

100% {
	opacity: 0;
	-webkit-transform: translate(-50%, -50%) scale(1);
	transform: translate(-50%, -50%) scale(1);
}

}

@-webkit-keyframes moving {

0% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

40% {
	-webkit-transform: scale(1.3);
	transform: scale(1.3);
}

100% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

}

@keyframes moving {

0% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

40% {
	-webkit-transform: scale(1.3);
	transform: scale(1.3);
}

100% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

}

@-webkit-keyframes circle {

0% {
	stroke-dasharray: 0 107;
}

99.9%,to {
	stroke-dasharray: 107 107;
}

}

@keyframes circle {

0% {
	stroke-dasharray: 0 107;
}

99.9%,to {
	stroke-dasharray: 107 107;
}

}

@-webkit-keyframes swiper-preloader-spin {

100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}

}

@keyframes swiper-preloader-spin {

100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}

}

