/*================================================================
foundation
================================================================*/

/*================================================================
base.css
================================================================*/

/*================================================================
mixin
================================================================*/

/*================================================================
reset.css
================================================================*/

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td {
	border: 0;
	font-weight: normal;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

header,
footer,
nav,
section,
article,
aside,
figure,
figcaption {
	display: block;
}

img,
iframe {
	width: 100%;
}

ol,
ul {
	counter-reset: number 0;
	list-style: none;
	list-style-type: none;
}

li {
	list-style-type: none;
}

blockquote {
	-webkit-margin-before: 0;
	-webkit-margin-after: 0;
	-webkit-margin-start: 0;
	-moz-margin-start: 0;
	-webkit-margin-end: 0;
	-moz-margin-end: 0;
	margin-block-end: 0;
	margin-block-start: 0;
	margin-inline-end: 0;
	margin-inline-start: 0;
}

em {
	display: inline-block;
	font-style: normal;
}

/*================================================================
variable
================================================================*/

@font-face {
	font-family: "ff-eng";
	src: url("../font/Helvetica.woff") format("truetype");
}

@font-face {
	font-family: "ff-eng2";
	src: url("../font/Bodoni72.woff") format("truetype");
}

html {
	font-size: 62.5%;
	scroll-behavior: smooth;
}

body {
	background-color: #FFFFFF;
	color: #1B1B1B;
	font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1;
}

a {
	-webkit-transition: opacity 0.3s;
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s;
}

.color-white {
	color: #FFFFFF;
}

.color-black {
	color: #1B1B1B;
}

.ff {
	font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.ff2 {
	font-family: "Zen Maru Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.ff-eng {
	font-family: "ff-eng", sans-serif;
}

.ff-eng2 {
	font-family: "ff-eng2", sans-serif;
}

/*================================================================
layout
================================================================*/

/*================================================================
l-cms
================================================================*/

.official_footer {
	background: #545c63;
	color: #fff;
}

.official_footer a {
	color: #fff;
}

.official_footer_inr {
	margin: 0 auto;
	max-width: 1000px;
	padding: 40px 140px;
}

.official_footer_menu {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
}

.official_footer_menu_left {
	width: 80%;
}

.official_footer_menu_left h2 {
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 25px;
}

.official_footer_menu_left ul {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: -10px 0 0;
}

.official_footer_menu_left ul li {
	margin: 10px 0 0;
	width: 46.5%;
}

.official_footer_menu_left ul li a {
	-webkit-transition: color 0.25s;
	color: #a0a4a8;
	font-size: 13px;
	letter-spacing: -1px;
	line-height: 1.8;
	text-decoration: none;
	transition: color 0.25s;
}

.official_footer_menu_left ul li a:hover {
	color: #fff;
}

.official_footer_menu_right {
	border-left: 1px solid #656d73;
	padding-left: 29px;
	width: 20%;
}

.official_footer_menu_right nav ul {
	margin-top: 20px;
}

.official_footer_menu_right nav ul li {
	margin-top: 10px;
}

.official_footer_menu_right nav ul li:first-child {
	margin-top: 0;
}

.official_footer_menu_right nav ul li a {
	-webkit-transition: opacity 0.25s;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	transition: opacity 0.25s;
}

.official_footer_menu_right nav ul li a:hover {
	opacity: 0.7;
}

.official_footer_sub_navigation {
	margin-top: 20px;
}

.official_footer_sub_navigation ul li {
	margin-bottom: 10px;
}

.official_footer_sub_navigation ul li a {
	-webkit-transition: opacity 0.25s;
	color: #a0a4a8;
	font-size: 12px;
	transition: opacity 0.25s;
}

.official_footer_sub_navigation ul li a:hover {
	opacity: 0.7;
}

.official_footer_copy {
	background: #414951;
	padding: 30px;
}

.official_footer_copy p {
	font-size: 13px;
	margin-top: 5px;
	text-align: center;
}

.home_news_popup {
	margin: 25px auto 10px;
	max-width: 700px;
	position: relative;
}

.home_news_popup__main {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	background: #015585;
	box-sizing: border-box;
	color: #fff;
	padding: 50px;
	position: relative;
}

.home_news_popup__date {
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 10px;
}

.home_news_popup__title {
	color: #ffcb15;
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 10px;
}

.home_news_popup__body {
	font-size: 14px;
}

.home_news_popup__body p {
	margin: 1em 0;
}

.home_news_popup__body b,
.home_news_popup__body strong {
	font-weight: bold;
}

.home_news_popup__body em {
	font-style: italic;
}

.home_news_popup__body small {
	font-size: 10px;
}

.home_news_popup__body ul {
	margin: 1em 0;
	padding: 0 0 0 1.2em;
}

.home_news_popup__body ul li {
	list-style: disc;
}

.home_news_popup__body ol {
	margin: 1em 0;
	padding: 0 0 0 1.2em;
}

.home_news_popup__body ol li {
	list-style: decimal;
}

.home_news_popup__body blockquote {
	margin: 1em 0;
	padding: 0 0 0 30px;
}

.home_news_popup__foot {
	padding: 20px 0 0;
}

.home_news_popup__btn_close {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: opacity 0.2s;
	align-items: center;
	background: #ffcb15;
	color: #000;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 16px;
	font-weight: bold;
	height: 40px;
	justify-content: center;
	margin: 0 auto;
	max-width: 200px;
	text-align: center;
	text-decoration: none;
	transition: opacity 0.2s;
}

.home_news_popup__btn_close:hover {
	opacity: 0.8;
	text-decoration: none;
}

.faq_box {
	background: #fff;
	padding: 0 0 20px;
}

#faqList .question {
	border-top: 1px dotted #555;
	color: #083a8a;
	cursor: pointer;
	font-size: 13px;
	font-weight: normal;
	line-height: 22px;
	padding: 5px;
}

#faqList .answer {
	background-color: #eee;
	border-top: 1px dotted #555;
	color: #910000;
	display: none;
	font-size: 12px;
	font-weight: normal;
	line-height: 30px;
	padding: 10px;
}

#faqList .answer img {
	height: auto !important;
	max-width: 100%;
	width: inherit;
}

#faqList .qTitle {
	color: #333;
	font-size: 22px;
	letter-spacing: -2px;
	line-height: 22px;
	margin: 10px 0 0 0;
	width: 35px;
}

#faqList .aTitle {
	display: block;
	font-size: 22px;
	letter-spacing: -2px;
	letter-spacing: 0px;
	line-height: 22px;
	margin: 0;
}

.faq_copyright {
	display: block;
	text-align: right;
}

#faqList p {
	color: #5b2b14;
	letter-spacing: 1px;
	letter-spacing: 0px;
	line-height: 30px;
}

#faqList b,
#faqList strong {
	font-weight: bold;
}

#faqList em {
	font-style: italic;
}

#faqList small {
	font-size: 10px;
	letter-spacing: 1px;
	line-height: 10px;
}

#faqList .notes {
	line-height: 18px;
}

#faqList ul {
	margin: 1em 0;
	padding: 0 0 0 1.2em;
}

#faqList ul li {
	list-style: disc;
}

#faqList ol {
	margin: 1em 0;
	padding: 0 0 0 1.2em;
}

#faqList ol li {
	list-style: decimal;
}

#faqList blockquote {
	margin: 1em 0;
	padding: 0 0 0 30px;
}

#faqList table {
	border: 1px solid #5b2b14;
	color: #5b2b14;
	line-height: 30px;
	margin-bottom: 20px;
	width: 400px;
}

#faqList table td {
	border: 1px solid #5b2b14;
	padding: 0px;
	text-align: center;
}

.news_article {
	border-bottom: 1px dotted #000;
	padding: 40px 0 10px;
}

.news_article__head {
	background: #c0101a;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	padding: 8px 15px;
}

.news_article__date {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	width: 9em;
}

.news_article__title {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-moz-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	font-size: 16px;
	line-height: 1.5;
}

.news_article__body {
	font-size: 14px;
	padding: 10px 0 20px;
}

.news_article__body p {
	margin: 1em 0;
}

.news_article__body b,
.news_article__body strong {
	font-weight: bold;
}

.news_article__body em {
	font-style: italic;
}

.news_article__body small {
	font-size: 10px;
}

.news_article__body ul {
	margin: 1em 0;
	padding: 0 0 0 1.2em;
}

.news_article__body ul li {
	list-style: disc;
}

.news_article__body ol {
	margin: 1em 0;
	padding: 0 0 0 1.2em;
}

.news_article__body ol li {
	list-style: decimal;
}

.news_article__body blockquote {
	margin: 1em 0;
	padding: 0 0 0 30px;
}

.news_nav {
	padding: 40px 0;
}

.news_nav__txt {
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 10px;
	text-align: center;
}

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

.news_pager__item {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: opacity 0.1s;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	align-items: center;
	background: #34402a;
	border: 1px solid #34402a;
	border-radius: 50%;
	box-sizing: border-box;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 16px;
	font-weight: bold;
	height: 40px;
	justify-content: center;
	margin: 5px;
	text-decoration: none;
	transition: opacity 0.1s;
	width: 40px;
}

.news_pager__item:hover {
	color: #fff;
	opacity: 0.8;
	text-decoration: none;
}

.news_pager__item.is-active {
	background: #c0101a;
	border: 1px solid #c0101a;
	color: #fff;
}

.news_pager__item.is-active:hover {
	opacity: 1;
}

/*================================================================
l-column
================================================================*/

.l-column {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
}

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

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

/*================================================================
l-footer
================================================================*/

.l-footer__header {
	background-color: #E198A6;
	padding: 4.4rem 0;
}

.l-footer__body {
	background-color: #545c63;
	color: #9ea2a6;
	padding: 4.4rem 0;
}

.l-footer__inner {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	margin: 0 auto;
	max-width: 100rem;
	padding: 0 3.4375%;
}

.l-footer__logo-link img {
	width: 16rem;
}

.l-footer__logo-link p {
	color: #FFFFFF;
	font-size: 1rem;
}

.l-footer__header-link {
	background-color: #FFFFFF;
	border-radius: 14px;
	color: #A67C52;
	font-family: "Zen Maru Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.2rem;
	font-weight: 700;
	padding: 0.4rem 1rem;
}

.l-footer__body-wrap {
	margin-top: 2rem;
}

.l-footer__body-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2rem;
}

.l-footer__body-link {
	font-size: 1.2rem;
}

.l-footer__body-item2 {
	margin-top: 2.5rem;
}

.l-footer__body-link2 {
	color: #FFFFFF;
	font-size: 1.4rem;
	font-weight: 700;
}

.l-footer__copy {
	background-color: #414951;
	color: #FFFFFF;
	font-size: 1.2rem;
	padding: 3rem 0;
}

.l-footer-sp {
	background-color: #545c63;
	color: #FFFFFF;
}

.l-footer-sp__submit {
	background-color: #E198A6;
	padding: 1rem;
}

.l-footer-sp__submit-link {
	background-color: #A67C52;
	border-radius: 4px;
	color: #FFFFFF;
	display: block;
	font-family: "Zen Maru Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	padding: 2rem 0;
	position: relative;
}

.l-footer-sp__submit-link:before {
	background: transparent url(images/general/svg/movie.svg) no-repeat center center/contain;
	content: "";
	height: 1.5rem;
	left: 2.4rem;
	position: absolute;
	top: 2.4rem;
	width: 1.5rem;
}

.l-footer-sp__submit-link span {
	background-color: #FFFFFF;
	border-radius: 4px;
	color: #A67C52;
	font-family: "Zen Maru Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.6rem;
	font-weight: 500;
	margin-left: 0.8rem;
	padding: 0.2rem 0.6rem;
}

.l-footer-sp__toTop {
	border: 1px solid #656d73;
	padding: 2rem 0;
}

.l-footer-sp__toTop-link {
	letter-spacing: 0.1rem;
}

.l-footer-sp__home {
	border: 1px solid #656d73;
	padding: 2rem 0;
}

.l-footer-sp__home-link {
	letter-spacing: 0.1rem;
}

.l-footer-sp__nav-list {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.l-footer-sp__nav-item {
	border: 1px solid #656d73;
	padding: 2rem 0;
	text-align: center;
	width: 50%;
}

.l-footer-sp__nav-link {
	letter-spacing: 0.1rem;
}

.l-footer-sp__copy {
	border: 1px solid #656d73;
	padding: 2rem 0;
}

.l-footer-sp__copy p {
	font-size: 1.1rem;
	line-height: 1.5;
	margin-top: 1.8rem;
}

.l-footer-sp__logo-link img {
	width: 20rem;
}

.l-footer__copy--top {
	padding: 3rem 0 21rem;
}

.l-footer-sp__copy--top {
	padding: 2rem 0 10rem;
}

.l-footer__cta {
	-webkit-transition: opacity 0.6s;
	bottom: 0;
	opacity: 0;
	position: fixed;
	transition: opacity 0.6s;
	width: 100%;
	z-index: 100;
}

.l-footer__cta.is-show {
	opacity: 1;
}

.l-footer__submit {
	bottom: 1.5rem;
	position: absolute;
	right: 2rem;
}

.l-footer__submit img {
	width: 15.9rem;
}

/*================================================================
l-header
================================================================*/

.l-header--top {
	-webkit-transition: 0.6s;
	background: transparent url(images/top/png/fv-header.png) repeat 50% 0;
	height: 14.4rem;
	inset: 0;
	position: fixed;
	transition: 0.6s;
	z-index: 100;
}

.l-header--top.active {
	background: none;
}

.l-header__inner {
	background: transparent url(images/general/png/header-bg.png) repeat 50% 0;
	height: 9.6rem;
	left: 0;
	padding: 0.2rem 0;
	position: relative;
	right: 0;
	top: 0;
	z-index: 100;
}

.l-header__wrapper {
	margin: 0 auto;
	max-width: 95rem;
}

.l-header__logo--top {
	padding: 1.8rem 0 0 7.3437%;
}

.l-header__logo-link--top img {
	width: 20.5rem;
}

.l-header__nav--top {
	-webkit-transition: 0.3s;
	opacity: 0;
	position: fixed;
	transition: 0.3s;
	z-index: -1;
}

.l-header__nav--top.panel-active {
	opacity: 1;
	top: 0;
	z-index: 999;
}

.l-header__nav--top.panel-active .l-header__nav-scroll--top {
	-webkit-overflow-scrolling: touch;
	background-color: #fceadf;
	overflow: auto;
	position: fixed;
	width: 100%;
}

.l-header__nav--top.panel-active .l-header__nav-contents--top {
	display: block;
}

.l-header__nav-contents--top {
	display: none;
}

.l-header__nav-item--top {
	position: relative;
}

.l-header__nav-item--top:before {
	background-color: #A67C52;
	content: "";
	height: 1.6rem;
	left: -1.1rem;
	position: absolute;
	top: 0.15rem;
	width: 0.5rem;
}

.l-header__nav-faq {
	font-size: 0.8rem;
	font-weight: 700;
	margin-left: 1.5rem;
	position: relative;
	top: -0.6rem;
}

.l-header__nav-faq:before {
	background: transparent url(images/movie/svg/movie-question.svg) no-repeat center center/contain;
	content: "";
	height: 1rem;
	left: -1.1rem;
	position: absolute;
	top: 0.1rem;
	width: 1rem;
}

.l-header__burger {
	cursor: pointer;
	height: 4.3rem;
	position: fixed;
	right: 7.3437%;
	top: 4.7rem;
	width: 4.3rem;
	z-index: 9999;
}

.l-header__burger-inline,
.l-header__burger-inline2,
.l-header__burger-inline3 {
	-webkit-transition: -webkit-transform 0.3s;
	background-color: #1B1B1B;
	border-radius: 50vh;
	height: 0.3rem;
	margin: 0.8rem;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	width: 4.3rem;
}

.l-header__burger.active {
	top: 7.9rem;
}

.l-header__burger.active .l-header__burger-inline,
.l-header__burger.active .l-header__burger-inline3 {
	margin: -1.1rem auto;
}

.l-header__burger.active .l-header__burger-inline {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.l-header__burger.active .l-header__burger-inline2 {
	opacity: 0;
}

.l-header__burger.active .l-header__burger-inline3 {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.l-header__sns {
	background: transparent url(images/top/png/header-sns-bg.png) no-repeat 100% 0;
	height: 3.1rem;
	position: absolute;
	right: 7.3437%;
	top: 0;
	width: 48rem;
}

.l-header__sns-icons {
	position: absolute;
	top: 1rem;
}

.l-header__sns-icon + .l-header__sns-icon {
	margin-left: 1.5rem;
}

.l-header__sns-icon-link img {
	width: 2.1rem;
}

.l-header__sns-shares {
	position: absolute;
	right: 1rem;
	top: 1.2rem;
}

.l-header__sns-share + .l-header__sns-share {
	margin-left: 0.6rem;
}

.l-header__sns-share--x,
.l-header__sns-share--mail {
	margin-top: -0.8rem;
	position: relative;
}

/*================================================================
l-inner
================================================================*/

.l-inner {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	margin: 0 auto;
	max-width: 150rem;
	padding: 0 4.6875%;
}

/*================================================================
l-inquiry
================================================================*/

.p-contact__header {
	background-color: #E198A6;
	color: #FFFFFF;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.7;
	margin: 2.8rem 0;
	padding: 0.8rem 2rem;
}

.p-contact__header--attention {
	margin: 0.4rem 0 2rem;
}

.p-contact__title {
	margin-top: -2rem;
	position: relative;
}

.p-contact__title em {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-contact__lead {
	font-weight: 700;
	line-height: 1.5;
}

.p-contact__text {
	font-size: 1.2rem;
	line-height: 2;
}

.p-contact__wrapper {
	margin-top: 8rem;
}

.p-contact__contents {
	padding: 0 2rem;
}

.p-contact__info {
	padding: 0 2rem;
}

.p-contact__info img {
	margin-top: 1.8rem;
	width: 100%;
}

.p-contact__btn-link {
	background-color: #A67C52;
	border-radius: 16px;
	color: #FFFFFF;
	display: inline-block;
	height: 3.3rem;
	padding-top: 0.7rem;
	width: 30rem;
}

.p-contact__btn-link span {
	font-size: 1.7rem;
	letter-spacing: 0.2em;
	position: relative;
	text-transform: uppercase;
}

.p-contact__btn-link span:before {
	background: transparent url(images/general/svg/movie.svg) no-repeat center center/contain;
	content: "";
	height: 1.5rem;
	left: -2.3rem;
	position: absolute;
	top: 0.6rem;
	width: 1.5rem;
}

/*================================================================
l-main
================================================================*/

.l-main {
	padding: 4rem 0 0;
}

.l-main3 {
	background-color: #fceadf;
	padding: 4rem 0 0;
}

.l-main__area {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	max-width: 95rem;
	padding: 0 4.6875% 4rem;
}

.l-main__title span {
	color: #A67C52;
	font-family: "Zen Maru Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 3rem;
	font-weight: 500;
	left: 3.4rem;
	position: relative;
	top: 3.2rem;
	z-index: 5;
}

.l-main__title img {
	height: 9.6rem;
	position: relative;
	top: -3rem;
	width: 100%;
	z-index: 1;
}

.l-main__header {
	background-color: #E198A6;
	color: #FFFFFF;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.7;
	margin: 1rem 0 3.1rem;
	padding: 0.8rem 2rem;
}

.l-main__header--company {
	margin: 3rem 0 3.1rem;
}

.l-main__text p {
	font-size: 1.2rem;
	line-height: 2;
}

.l-main__text a {
	color: #F462D4;
	font-size: 1.2rem;
	text-decoration: underline;
}

.l-main__text ul {
	margin-left: 2rem;
}

.l-main__text ul li {
	font-size: 1.2rem;
	line-height: 2;
	list-style-type: disc;
}

.l-main__footer {
	background-color: #fceadf;
	margin-top: -14rem;
	padding-top: 14rem;
	position: relative;
}

.l-main__footer-inner {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	-webkit-box-align: end;
	-webkit-align-items: flex-end;
	-moz-box-align: end;
	-ms-flex-align: end;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	-moz-box-pack: end;
	-ms-flex-pack: end;
	align-items: flex-end;
	box-sizing: content-box;
	justify-content: flex-end;
	margin: 0 auto;
	max-width: 100rem;
	padding: 0 3.4375%;
}

.l-main__footer-inner img {
	width: 7.7rem;
}

.l-main__footer-text {
	font-size: 1rem;
	padding-bottom: 1.5rem;
}

/*================================================================
l-sidebar
================================================================*/

.l-sidebar__submit img {
	width: 100%;
}

.l-sidebar__submit-text {
	margin-top: 0.4rem;
}

.l-sidebar__submit-text a {
	font-size: 0.9rem;
	font-weight: 700;
	margin-left: 1.6rem;
	position: relative;
}

.l-sidebar__submit-text a:before {
	background: transparent url(images/movie/svg/movie-question.svg) no-repeat center center/contain;
	content: "";
	height: 1rem;
	left: -1.1rem;
	position: absolute;
	top: 0.2rem;
	width: 1rem;
}

.l-sidebar__items {
	background: transparent url(images/general/png/sidebar-bg.png) no-repeat center center/contain;
	margin-top: 2.8rem;
	padding: 2.8rem;
	position: relative;
	text-align: center;
}

.l-sidebar__item + .l-sidebar__item {
	margin-top: 2rem;
}

.l-sidebar__item a {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	font-family: "Zen Maru Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.l-sidebar__item img {
	-o-object-fit: cover;
	margin-top: 0.5rem;
	object-fit: cover;
}

.l-sidebar__nav-list {
	margin-top: 2.8rem;
	padding-top: 8.4rem;
	position: relative;
	position: relative;
}

.l-sidebar__nav-list:after {
	background: transparent url(images/general/png/sidebar-icon.png) no-repeat center center/contain;
	content: "";
	height: 8.4rem;
	position: absolute;
	right: 0;
	top: 0;
	width: 8.4rem;
}

.l-sidebar__nav-item {
	background-color: #fceadf;
	border-radius: 50vh;
	height: 14.4rem;
	padding: 2.6rem 0 0 0;
	text-align: center;
	width: 14.4rem;
}

.l-sidebar__nav-item:nth-child(2) {
	height: 13.3rem;
	margin-left: 9.1rem;
	margin-top: -4.1rem;
	padding: 3.1rem 0 0 0;
	position: relative;
	width: 13.3rem;
	z-index: 4;
}

.l-sidebar__nav-item:nth-child(3) {
	height: 12.1rem;
	margin-left: 1.1rem;
	margin-top: -4.3rem;
	padding: 3.1rem 0 0 0;
	position: relative;
	width: 12.1rem;
	z-index: 3;
}

.l-sidebar__nav-item:nth-child(4) {
	height: 12.6rem;
	margin-left: 5.1rem;
	margin-top: -1.4rem;
	padding: 3.7rem 0 0 0;
	position: relative;
	width: 12.6rem;
	z-index: 2;
}

.l-sidebar__nav-link {
	color: #A67C52;
	font-family: "Zen Maru Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.3;
}

.l-sidebar__btn-link {
	background-color: #A67C52;
	border-radius: 16px;
	color: #FFFFFF;
	display: inline-block;
	height: 3.3rem;
	margin-top: 3.3rem;
	padding-top: 0.7rem;
	width: 100%;
}

.l-sidebar__btn-link span {
	font-size: 1.7rem;
	letter-spacing: 0.2em;
	position: relative;
	text-transform: uppercase;
}

.l-sidebar__btn-link span:before {
	background: transparent url(images/general/svg/movie.svg) no-repeat center center/contain;
	content: "";
	height: 1.5rem;
	left: -2.3rem;
	position: absolute;
	top: 0.6rem;
	width: 1.5rem;
}

/*================================================================
l-archive
================================================================*/

.l-single__header {
	background-color: #E198A6;
	color: #FFFFFF;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.7;
	margin: 1rem 0 3.1rem;
	padding: 0.8rem 2rem;
}

.l-single__body {
	border-bottom: 1px solid #A67C52;
	padding-bottom: 5.3rem;
}

.l-single__body p {
	font-size: 1.4rem;
	line-height: 1.9;
}

.l-single__home {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	color: #A67C52;
	flex-direction: column;
	font-size: 1.9rem;
	font-weight: 500;
	margin-top: 5.7rem;
}

.l-single__home span {
	background-color: #E198A6;
	border-radius: 50vh;
	color: #FFFFFF;
	font-size: 1.9rem;
	font-weight: 500;
	margin-top: 2.1rem;
	padding: 1.2rem 1.7rem;
}

/*================================================================
component
================================================================*/

/*================================================================
c-btn
================================================================*/

.c-toTop {
	-webkit-transition: opacity 0.6s;
	bottom: 30rem;
	opacity: 0;
	position: fixed;
	right: -3.3rem;
	transition: opacity 0.6s;
	z-index: 99;
}

.c-toTop.is-show {
	opacity: 1;
}

.c-toTop a img {
	width: 16.6rem;
}

.c-cta-sp {
	background-color: #fceadf;
	padding: 24rem 0 0;
}

.c-cta-sp__submit {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	padding: 0 1rem;
}

.c-cta-sp__mypage {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	margin: 1.9rem 0;
	padding: 0 2rem;
}

.c-cta-sp__campaign {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	padding: 0 2rem;
}

.c-cta-sp__sns {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	background-color: #E198A6;
	box-sizing: content-box;
	margin-top: 1.9rem;
	padding: 2rem;
}

.c-cta-sp__sns-icons {
	margin-bottom: 2rem;
}

.c-cta-sp__sns-icon + .c-cta-sp__sns-icon {
	margin-left: 1.5rem;
}

.c-cta-sp__sns-icon-link img {
	width: 3.2rem;
}

.c-cta-sp__sns-shares {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 0.6rem;
}

/*================================================================
c-modal
================================================================*/

.c-modal {
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 999;
}

.c-modal__overlay {
	background-color: rgba(252, 234, 223, 0.8);
	height: 100%;
	position: absolute;
	width: 100%;
}

.c-modal__close {
	height: 3rem;
	position: absolute;
	right: 5rem;
	top: 5rem;
	width: 3rem;
}

.c-modal__close:before,
.c-modal__close:after {
	background-color: #1B1B1B;
	content: "";
	height: 3rem;
	left: 1.5rem;
	position: absolute;
	top: 1.5rem;
	width: 0.3rem;
}

.c-modal__close:before {
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
}

.c-modal__close:after {
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	transform: translate(-50%, -50%) rotate(-45deg);
}

.c-modal__image img {
	-webkit-transform: translate(-50%, -50%);
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 50%;
}

/*================================================================
project
================================================================*/

/*================================================================
front-page
================================================================*/

/*================================================================
p-fv
================================================================*/

.p-fv {
	background: transparent url(images/top/png/fv.png) no-repeat center center/cover;
	height: 117.3rem;
	inset: 0;
	overflow: hidden;
	position: relative;
	width: 100%;
	z-index: 5;
}

.p-fv__image-main img {
	bottom: 4.8rem;
	position: absolute;
	right: 7.3437%;
	width: 31.2rem;
}

.p-fv__image {
	position: absolute;
	top: 100%; /* ← アニメーション開始位置を.p-fvの下に */
}

.p-fv__image01 {
	-webkit-animation: up 34s linear infinite, rotate01 2s ease-in-out infinite alternate;
	animation: up 34s linear infinite, rotate01 2s ease-in-out infinite alternate;
}

.p-fv__image02 {
	-webkit-animation: up 34s linear infinite, rotate02 1s ease-in-out infinite alternate;
	animation: up 34s linear infinite, rotate02 1s ease-in-out infinite alternate;
}

.p-fv__image03 {
	-webkit-animation: up 34s linear infinite, rotate03 1.2s ease-in-out infinite alternate;
	animation: up 34s linear infinite, rotate03 1.2s ease-in-out infinite alternate;
}

.p-fv__image04 {
	-webkit-animation: up 34s linear infinite, rotate04 1.5s ease-in-out infinite alternate;
	animation: up 34s linear infinite, rotate04 1.5s ease-in-out infinite alternate;
}

.swiper {
	background-color: rgba(255, 255, 255, 0.6);
	position: absolute;
}

.swiper-wrapper {
	-webkit-transition-timing-function: linear;
	transition-timing-function: linear;
}

.swiper-slide img {
	-o-object-fit: cover;
	object-fit: cover;
}

/*================================================================
p-introduction
================================================================*/

.p-introduction {
	background-color: #fceadf;
	overflow: hidden;
	padding: 24.4rem 0 21.7rem;
}

.p-introduction__wrapper {
	margin: 0 auto;
	max-width: 96.6rem;
}

.p-introduction__image--1 img {
	width: 23.4rem;
}

.p-introduction__image--2 {
	margin-top: 27.2rem;
}

.p-introduction__image--2 img {
	width: 26.5rem;
}

.p-introduction__image--3 {
	position: relative;
}

.p-introduction__image--3 img {
	width: 26.9rem;
}

.p-introduction__image--before {
	left: -30rem;
	position: absolute;
	top: -7.6rem;
}

.p-introduction__image--after {
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
}

.p-introduction__text span {
	display: inline-block;
	font-weight: 500;
}

.p-introduction__footer {
	margin-top: 5.6rem;
}

.p-introduction__btn-link img {
	width: 27.1rem;
}

/*================================================================
p-lineup
================================================================*/

.p-lineup {
	background: transparent url(images/top/png/lineup-bg.png) no-repeat center center/cover;
	height: 100%;
	margin-top: -10.9rem;
	overflow: hidden;
	padding: 7.1rem 0 21.5rem;
	position: relative;
	z-index: 5;
}

.p-lineup__image-wrapper {
	margin-top: 16rem;
}

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

.p-lineup__image-items {
	margin-top: 4rem;
}

/*================================================================
p-magazine
================================================================*/

.p-magazine {
	background-color: #E198A6;
	margin-top: -0.2rem;
	padding-top: 2.6rem;
	position: relative;
	z-index: 10;
}

.p-magazine__bg {
	position: relative;
	z-index: 5;
}

.p-magazine__bg--top {
	margin-top: -15.7rem;
}

.p-magazine__bg--top img {
	height: 27.4rem;
}

.p-magazine__bg--bottom {
	bottom: 4.4rem;
}

.p-magazine__bg--bottom img {
	height: 33rem;
}

.p-magazine__set {
	position: relative;
}

.p-magazine__how-lead {
	color: #FFFFFF;
	font-size: 2.3rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin: 0.9rem 0 4.6rem;
}

.p-magazine__set-image--1 {
	left: 11.7187%;
	position: absolute;
	top: -17rem;
}

.p-magazine__set-image--1 img {
	width: 15rem;
}

.p-magazine__set-image--2 {
	bottom: -7.6rem;
	left: 14.0625%;
	position: absolute;
}

.p-magazine__set-image--2 img {
	width: 13.5rem;
}

.p-magazine__set-image--main {
	list-style: none;
	margin-top: 3.2rem;
	text-align: center;
}

.p-magazine__set-image-modal--main {
	margin: 2rem auto 0;
	max-width: 103.6rem;
	text-align: right;
}

.p-magazine__set-image-modal--main img {
	width: 40rem;
}

.p-magazine__set-items-image {
	list-style: none;
}

.p-magazine__set-items-image--modal {
	margin: 2rem auto 8rem;
	max-width: 103.6rem;
	text-align: left;
}

.p-magazine__set-items-image--modal img {
	width: 40rem;
}

.p-magazine__set-info {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	border: 1px solid #1B1B1B;
	flex-direction: column;
	margin-top: 10.8rem;
	padding: 2.6rem 2.6rem 2.3rem 3rem;
}

.p-magazine__set-info-header {
	margin-bottom: 1.8rem;
}

.p-magazine__set-info-image img {
	width: 13rem;
}

.p-magazine__set-info-title {
	margin-top: 1rem;
}

.p-magazine__how {
	padding-top: 8.8rem;
}

.p-magazine__how-image--main {
	text-align: center;
}

/*================================================================
p-campaign
================================================================*/

.p-campaign {
	background: transparent url(images/top/png/campaign-bg.png) no-repeat center center/cover;
	height: 100%;
	margin-top: -18.1rem;
	padding: 18.1rem 0 21.6rem;
	position: relative;
	z-index: 5;
}

.p-campaign__lead {
	margin-bottom: 3.9rem;
	text-align: center;
}

.p-campaign__lead img {
	max-width: 90.6rem;
}

.p-campaign__text {
	font-size: 1.8rem;
	line-height: 1.7;
	margin-bottom: 4.5em;
}

.p-campaign__image--1 {
	margin-top: -5rem;
	position: relative;
}

.p-campaign__accent-image {
	text-align: center;
}

.p-campaign__accent-image img {
	max-width: 110rem;
}

.p-campaign__accent-image--1 {
	margin: 5.8rem auto 3.5rem;
}

.p-campaign__accent-image--2 {
	margin: 4.9rem auto 3.1rem;
}

.p-campaign__date-image {
	margin-bottom: 7.1rem;
	text-align: center;
}

.p-campaign__date-image img {
	max-width: 61.7rem;
}

.p-campaign__instagram-lead,
.p-campaign__x-lead {
	background-color: #AECD72;
	color: #FFFFFF;
	display: block;
	margin-bottom: 1.2rem;
	padding: 0.8rem 0 0.5rem;
	text-align: center;
	width: 9.9rem;
}

.p-campaign__instagram-text,
.p-campaign__x-text {
	line-height: 1.5;
}

.p-campaign__instagram-text + .p-campaign__instagram-text,
.p-campaign__instagram-text + .p-campaign__x-text,
.p-campaign__x-text + .p-campaign__instagram-text,
.p-campaign__x-text + .p-campaign__x-text {
	margin-top: 1.3rem;
}

.p-campaign__btn-link {
	display: block;
	text-align: center;
}

.p-campaign__btn-link img {
	max-width: 71.8rem;
}

/*================================================================
child-page
================================================================*/

/*================================================================
faq
================================================================*/

/*================================================================
p-faq
================================================================*/

.p-faq__items-wrap {
	margin-top: 0.4rem;
}

.p-faq__item {
	border-top: 1px dotted #9ea2a6;
	padding: 0.5rem 0;
}

.p-faq__item-title {
	cursor: pointer;
	font-size: 1.3rem;
	line-height: 1.5;
	list-style: none;
	padding: 0.4rem 1.2rem;
}

.p-faq__item-title span {
	font-family: "Zen Maru Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 2rem;
	font-weight: 500;
}

.p-faq__item-text {
	background-color: #fceadf;
	font-size: 1.3rem;
	line-height: 1.8;
	margin-top: 1.6rem;
	padding: 1.2rem;
}

.p-faq__item-text a {
	color: #F462D4;
	overflow-wrap: anywhere;
	text-decoration: underline;
}

.p-faq__item-text a span {
	font-size: 1.3rem;
	margin: 0;
}

.p-faq__item-text img {
	margin-top: 1.8rem;
}

.p-faq__item-text span {
	font-family: "Zen Maru Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 2rem;
	font-weight: 500;
}

.p-faq__item-img-wrapper {
	height: 50rem;
	overflow-y: scroll;
}

.p-faq__info {
	margin-top: 3.6rem;
}

.p-faq__info img {
	margin-top: 1.8rem;
	width: 100%;
}

.p-faq__lead {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-faq__lead--margin {
	margin-top: -2rem;
	position: relative;
}

/*================================================================
movie/TVCM
================================================================*/

/*================================================================
p-movie
================================================================*/

.p-movie {
	background-color: #fceadf;
	margin-top: -10.6rem;
	padding: 17.9rem 0 20.8rem;
	position: relative;
}

.p-movie--2 {
	background-color: #fceadf;
	margin-top: -17.2rem;
	padding: 15.8rem 0 19.6rem;
	position: relative;
}

.p-movie__inner {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	margin: 0 auto;
	max-width: 85rem;
	padding: 0 3.4375%;
}

.p-movie__btn-link {
	color: #E198A6;
}

.p-movie__btn-link span {
	font-size: 1.7rem;
	letter-spacing: 0.2em;
	position: relative;
	text-transform: uppercase;
}

.p-movie__btn-link span:before {
	background: transparent url(images/general/svg/movie.svg) no-repeat center center/contain;
	content: "";
	height: 1.5rem;
	position: absolute;
	right: -2.3rem;
	top: 0.6rem;
	width: 1.5rem;
}

.p-movie__youtube {
	margin: 4rem auto;
}

.p-movie__youtube iframe {
	aspect-ratio: 3/2;
}

.p-movie__present,
.p-movie__gift,
.p-movie__submit-bg {
	text-align: center;
}

.p-movie__present {
	margin: 4.7rem 0 4.2rem;
}

.p-movie__gift {
	margin: 0 auto 5.4rem;
}

.p-movie__submit {
	margin: 0 auto;
}

.p-movie__gift-text,
.p-movie__submit-text {
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 1.4rem;
	text-align: right;
}

.p-movie__submit-text a {
	font-size: 1.3rem;
	font-weight: 700;
	position: relative;
}

.p-movie__submit-text a:before {
	background: transparent url(images/movie/svg/movie-question.svg) no-repeat center center/contain;
	content: "";
	height: 1.5rem;
	left: -2.1rem;
	position: absolute;
	top: 0.2rem;
	width: 1.5rem;
}

.p-movie__footer {
	padding: 0.5rem 2.8rem;
}

.p-movie__footer img {
	width: 7.7rem;
}

.p-movie__footer-text {
	font-size: 1rem;
}

/*================================================================
utility
================================================================*/

/*================================================================
u-font
================================================================*/

.u-fw700 {
	font-weight: 700;
}

.u-fw500 {
	font-weight: 500;
}

.u-fs20 {
	font-size: 2rem;
}

/*================================================================
u-hidden
================================================================*/

/*================================================================
u-lh
================================================================*/

.u-lh20 {
	line-height: 2;
}

.u-lh15 {
	line-height: 1.5;
}

/*================================================================
u-ls
================================================================*/

.u-ls20 {
	letter-spacing: 0.2em;
}

/*================================================================
u-margin
================================================================*/

/*================================================================
u-ta
================================================================*/

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

.u-taj {
	text-align: justify;
	word-break: break-all;
}

@media (min-width: 375px) and (max-width: 743px) {

.p-fv__image-main img {
	right: 2rem;
}

}

@media (min-width: 375px) {

.u-hidden-sp2 {
	display: none;
}

}

@media (min-width: 480px) and (max-width: 743px) {

.l-footer__submit img {
	width: 5.9rem;
}

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

.l-sidebar__submit {
	margin-right: 2%;
	width: 48%;
}

.l-sidebar__items {
	margin-top: 0;
	width: 50%;
}

.l-sidebar__nav-list {
	width: 50%;
}

.l-sidebar__btn {
	margin-left: 2%;
	width: 48%;
}

.c-cta-sp__sns-icons {
	margin-left: 2rem;
}

.p-fv__image01 {
	-webkit-animation: up-sp 32s linear infinite, rotate01 2s ease-in-out infinite alternate;
	animation: up-sp 32s linear infinite, rotate01 2s ease-in-out infinite alternate;
}

.p-fv__image02 {
	-webkit-animation: up-sp 32s linear infinite, rotate02 2s ease-in-out infinite alternate;
	animation: up-sp 32s linear infinite, rotate02 2s ease-in-out infinite alternate;
}

.p-fv__image03 {
	-webkit-animation: up-sp 32s linear infinite, rotate03 2s ease-in-out infinite alternate;
	animation: up-sp 32s linear infinite, rotate03 2s ease-in-out infinite alternate;
}

.p-fv__image04 {
	-webkit-animation: up-sp 32s linear infinite, rotate04 2s ease-in-out infinite alternate;
	animation: up-sp 32s linear infinite, rotate04 2s ease-in-out infinite alternate;
}

}

@media (min-width: 480px) {

.l-sidebar__item img {
	-o-object-fit: cover;
	height: 7.1rem;
	object-fit: cover;
	width: 16rem;
}

}

@media (min-width: 744px) {

.l-footer__header-item {
	margin-left: 0.4rem;
}

.l-footer__body-nav {
	width: 78%;
}

.l-footer__body-list {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.l-footer__body-item {
	width: 47%;
}

.l-footer__body-nav2 {
	border-left: 1px solid #656d73;
	padding-left: 3.5rem;
	width: 22%;
}

.l-header__wrapper {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	justify-content: space-between;
	padding: 0 3.4375%;
}

.l-header__logo-link img {
	height: 8.3rem;
}

.l-header__nav--top {
	height: 14.4rem;
	top: -100%;
}

.l-header__nav-list--top {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	gap: 2.8rem;
}

.l-header__nav-gift {
	margin-left: 1.2rem;
}

.l-header__nav-submit {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-left: 1.8rem;
	margin-top: 0.8rem;
}

.l-header__nav-submit img {
	aspect-ratio: 1/5;
	height: 7.3rem;
}

.l-main__wrapper {
	margin-left: 8rem;
	width: calc(100% - 18rem - 8rem);
}

.l-sidebar {
	width: 18rem;
}

.swiper {
	height: 100%;
	left: 0;
	width: 22rem;
}

.swiper-slide {
	max-height: 12rem;
	text-align: center;
}

.swiper-slide img {
	height: 100%;
	width: 18rem;
}

.p-introduction__footer {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.p-introduction__btn + .p-introduction__btn {
	margin-left: 2.5rem;
}

.p-magazine__how-images {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.p-magazine__how-image--1 {
	margin-right: 1.4rem;
}

.p-magazine__how-image--2 {
	margin-top: 15.8em;
}

.p-magazine__how-image--4 {
	margin: 25.3rem 0 0 -11.8rem;
	position: relative;
}

.p-campaign__images {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.p-campaign__image--2 {
	margin-left: 1.6rem;
}

.p-campaign__info {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.p-campaign__x {
	margin-left: 4.5rem;
}

.p-faq__item-title {
	padding-left: 3.3em;
	position: relative;
	text-indent: -3.3em;
}

.p-faq__item-title span {
	margin: 0 0.8rem;
	position: relative;
}

.p-faq__item-text {
	margin-top: 1.6rem;
	padding-left: 3.3em;
	text-indent: -3.3em;
}

.p-faq__item-text span {
	margin: 0 0.8rem;
	position: relative;
}

.p-movie__present-image + .p-movie__present-image {
	margin-left: 1.4rem;
}

.p-movie__present-image--1 {
	width: 46.5031%;
}

.p-movie__present-image--2 {
	width: 52.2252%;
}

.p-movie__footer {
	-webkit-box-align: end;
	-webkit-align-items: flex-end;
	-moz-box-align: end;
	-ms-flex-align: end;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	align-items: flex-end;
	justify-content: center;
}

.p-movie__footer-text {
	padding-bottom: 1.5rem;
}

.u-hidden-tab2 {
	display: none;
}

}

@media (min-width: 744px) and (max-width: 1279px) {

.l-footer__submit img {
	width: 10.9rem;
}

.p-fv__image-main img {
	bottom: 12rem;
}

.p-lineup__image-items--mickey .p-lineup__image-item--01 img {
	max-width: 102.2rem;
}

.p-lineup__image-items--mickey .p-lineup__image-item--02 img {
	max-width: 103.3rem;
}

.p-lineup__image-items--mickey .p-lineup__image-item--03 img {
	max-width: 101.2rem;
}

.p-lineup__image-items--pooh .p-lineup__image-item--01 img {
	max-width: 102.8rem;
}

.p-lineup__image-items--pooh .p-lineup__image-item--02 img {
	max-width: 99.7rem;
}

.p-lineup__image-items--pooh .p-lineup__image-item--03 img {
	max-width: 100.4rem;
}

.p-lineup__image-items--beauty .p-lineup__image-item--01 img {
	max-width: 101.9rem;
}

.p-lineup__image-items--beauty .p-lineup__image-item--02 img {
	max-width: 78.3rem;
}

.p-lineup__image-items--beauty .p-lineup__image-item--03 img {
	width: 83.6rem;
}

.p-lineup__image-items--alice .p-lineup__image-item--01 img {
	max-width: 100.7rem;
}

.p-lineup__image-items--alice .p-lineup__image-item--02 img {
	max-width: 106rem;
}

.p-lineup__image-items--alice .p-lineup__image-item--03 img {
	max-width: 100.7rem;
}

.u-hidden-tab {
	display: none;
}

}

@media (min-width: 744px) and (max-width: 1499px) {

.l-header__nav--top.panel-active {
	height: 100%;
}

}

@media (min-width: 744px) and (max-width: 991px) {

.l-header__nav-list--top {
	padding: 2.4rem 0.4rem 2.4rem 2.8rem;
}

.l-header__nav-present {
	margin-left: 1.5rem;
}

.l-header__nav-present img {
	height: 5.6rem;
}

.l-header__nav-gift img {
	height: 5.6rem;
}

.p-fv__image01 {
	-webkit-animation: up-tab2 37s linear infinite, rotate01 2s ease-in-out infinite alternate;
	animation: up-tab2 37s linear infinite, rotate01 2s ease-in-out infinite alternate;
}

.p-fv__image02 {
	-webkit-animation: up-tab2 37s linear infinite, rotate02 2s ease-in-out infinite alternate;
	animation: up-tab2 37s linear infinite, rotate02 2s ease-in-out infinite alternate;
}

.p-fv__image03 {
	-webkit-animation: up-tab2 37s linear infinite, rotate03 2s ease-in-out infinite alternate;
	animation: up-tab2 37s linear infinite, rotate03 2s ease-in-out infinite alternate;
}

.p-fv__image04 {
	-webkit-animation: up-tab2 37s linear infinite, rotate04 2s ease-in-out infinite alternate;
	animation: up-tab2 37s linear infinite, rotate04 2s ease-in-out infinite alternate;
}

.p-introduction__btn-link img {
	max-width: 18rem;
}

}

@media (min-width: 992px) {

.l-footer__inner {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.l-footer__logo-link {
	-webkit-box-align: end;
	-webkit-align-items: flex-end;
	-moz-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.l-footer__logo-link p {
	margin-left: 0.8rem;
}

.l-header__nav-list--top {
	padding: 2.4rem 11.8rem 2.4rem 2.8rem;
}

.l-header__nav-present {
	margin-left: 4.2rem;
}

.l-header__nav-present img {
	height: 7.9rem;
}

.l-header__nav-gift img {
	height: 7.9rem;
}

.p-contact__contents {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.p-contact__btn {
	margin-left: 2rem;
}

.p-introduction__image--1 {
	margin-top: 28.6rem;
}

.p-introduction__contents {
	margin: 4.5rem 3.1rem 0 4.2rem;
}

.p-magazine__set-items {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.p-magazine__set-items-image {
	margin-right: 10.7rem;
}

.p-magazine__set-info {
	max-width: 45.9rem;
}

.p-magazine__set-info-header {
	-webkit-box-align: end;
	-webkit-align-items: flex-end;
	-moz-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.p-magazine__set-info-image {
	margin-right: 1.6rem;
}

}

@media (min-width: 992px) and (max-width: 1279px) {

.p-fv__image01 {
	-webkit-animation: up-tab 32s linear infinite, rotate01 2s ease-in-out infinite alternate;
	animation: up-tab 32s linear infinite, rotate01 2s ease-in-out infinite alternate;
}

.p-fv__image02 {
	-webkit-animation: up-tab 32s linear infinite, rotate02 2s ease-in-out infinite alternate;
	animation: up-tab 32s linear infinite, rotate02 2s ease-in-out infinite alternate;
}

.p-fv__image03 {
	-webkit-animation: up-tab 32s linear infinite, rotate03 2s ease-in-out infinite alternate;
	animation: up-tab 32s linear infinite, rotate03 2s ease-in-out infinite alternate;
}

.p-fv__image04 {
	-webkit-animation: up-tab 32s linear infinite, rotate04 2s ease-in-out infinite alternate;
	animation: up-tab 32s linear infinite, rotate04 2s ease-in-out infinite alternate;
}

}

@media (min-width: 1280px) {

a:hover {
	opacity: 0.7;
}

.l-footer__cta a:hover {
	opacity: 1;
}

.p-contact__btn-link {
	position: relative;
}

.p-contact__btn-link:before {
	-webkit-transition: opacity 0.3s ease-out;
	background: #E198A6;
	border-radius: 16px;
	content: "";
	inset: 0;
	opacity: 0;
	position: absolute;
	transition: opacity 0.3s ease-out;
	z-index: 1;
}

.p-contact__btn-link:hover {
	opacity: 1;
}

.p-contact__btn-link:hover:before {
	opacity: 1;
}

.p-contact__btn-link span {
	position: relative;
	z-index: 5;
}

.l-sidebar__btn-link {
	position: relative;
}

.l-sidebar__btn-link:before {
	-webkit-transition: opacity 0.3s ease-out;
	background: #E198A6;
	border-radius: 16px;
	content: "";
	inset: 0;
	opacity: 0;
	position: absolute;
	transition: opacity 0.3s ease-out;
	z-index: 1;
}

.l-sidebar__btn-link:hover {
	opacity: 1;
}

.l-sidebar__btn-link:hover:before {
	opacity: 1;
}

.l-sidebar__btn-link span {
	position: relative;
	z-index: 5;
}

.c-toTop a:hover {
	opacity: 1;
}

.c-modal__overlay {
	cursor: pointer;
}

.c-modal__close {
	cursor: pointer;
}

.p-introduction__btn a img {
	-webkit-transition: scale 0.3s;
	transition: scale 0.3s;
}

.p-introduction__btn a:hover {
	opacity: 1;
}

.p-introduction__btn a:hover img {
	scale: 1.03;
}

.p-lineup__image-arc img {
	width: 89.2rem;
}

.p-lineup__image-lead img {
	width: 56.7rem;
}

.p-lineup__image-main img {
	width: 114.7rem;
}

.p-lineup__image-items--mickey .p-lineup__image-item--01 {
	margin-bottom: 1.4rem;
	margin-left: 0.4rem;
}

.p-lineup__image-items--mickey .p-lineup__image-item--01 img {
	width: 102.2rem;
}

.p-lineup__image-items--mickey .p-lineup__image-item--02 img {
	width: 103.3rem;
}

.p-lineup__image-items--mickey .p-lineup__image-item--03 {
	margin-left: 1.6rem;
}

.p-lineup__image-items--mickey .p-lineup__image-item--03 img {
	width: 101.2rem;
}

.p-lineup__image-items--pooh .p-lineup__image-item--01 {
	margin-bottom: 0.9rem;
	margin-left: 1.8rem;
}

.p-lineup__image-items--pooh .p-lineup__image-item--01 img {
	width: 102.8rem;
}

.p-lineup__image-items--pooh .p-lineup__image-item--02 img {
	width: 99.7rem;
}

.p-lineup__image-items--pooh .p-lineup__image-item--03 {
	margin-left: 1.3rem;
}

.p-lineup__image-items--pooh .p-lineup__image-item--03 img {
	width: 100.4rem;
}

.p-lineup__image-items--beauty .p-lineup__image-item--01 img {
	width: 101.9rem;
}

.p-lineup__image-items--beauty .p-lineup__image-item--02 {
	margin-left: 23.3rem;
	margin-top: -11rem;
	position: relative;
}

.p-lineup__image-items--beauty .p-lineup__image-item--02 img {
	width: 78.3rem;
}

.p-lineup__image-items--beauty .p-lineup__image-item--03 {
	margin-top: -7rem;
	position: relative;
}

.p-lineup__image-items--beauty .p-lineup__image-item--03 img {
	width: 83.6rem;
}

.p-lineup__image-items--alice .p-lineup__image-item--01 img {
	width: 100.7rem;
}

.p-lineup__image-items--alice .p-lineup__image-item--02 {
	margin-left: 0.7rem;
	margin-top: -6.6rem;
	position: relative;
}

.p-lineup__image-items--alice .p-lineup__image-item--02 img {
	width: 106rem;
}

.p-lineup__image-items--alice .p-lineup__image-item--03 {
	margin-left: 0.5rem;
	margin-top: -2rem;
	position: relative;
}

.p-lineup__image-items--alice .p-lineup__image-item--03 img {
	width: 100.7rem;
}

.p-magazine__set-title img,
.p-magazine__how-title img {
	width: 109.8rem;
}

.p-magazine__set-image--main {
	cursor: pointer;
}

.p-magazine__set-image--main img {
	-webkit-transition: scale 0.3s;
	transition: scale 0.3s;
	width: 103.6rem;
}

.p-magazine__set-image--main:hover img {
	scale: 1.03;
}

.p-magazine__set-items {
	margin-top: -7.2rem;
	position: relative;
}

.p-magazine__set-items-image {
	cursor: pointer;
}

.p-magazine__set-items-image img {
	-webkit-transition: scale 0.3s;
	transition: scale 0.3s;
	width: 50.6rem;
}

.p-magazine__set-items-image:hover {
	opacity: 1;
}

.p-magazine__set-items-image:hover img {
	scale: 1.03;
}

.p-magazine__how-image--main img {
	width: 107.3rem;
}

.p-magazine__how-images--1 {
	margin-top: -8.5rem;
	position: relative;
}

.p-magazine__how-images--2 {
	margin-top: -15.1rem;
	position: relative;
}

.p-magazine__how-image--1 img {
	width: 51.2rem;
}

.p-magazine__how-image--2 img {
	width: 53.1rem;
}

.p-magazine__how-image--3 img {
	width: 69.2rem;
}

.p-magazine__how-image--4 img {
	width: 51.4rem;
}

.p-campaign__image--1 img {
	width: 39.7rem;
}

.p-campaign__image--2 img {
	width: 61rem;
}

.p-campaign__btn-link:hover {
	opacity: 1;
}

.p-campaign__btn-link img {
	-webkit-transition: scale 0.3s;
	transition: scale 0.3s;
}

.p-campaign__btn-link img:hover {
	scale: 1.05;
}

.p-movie__present-image img {
	-webkit-transition: scale 0.3s;
	cursor: pointer;
	transition: scale 0.3s;
}

.p-movie__present-image img:hover {
	scale: 1.03;
}

.p-movie__submit a img {
	-webkit-transition: scale 0.3s;
	transition: scale 0.3s;
}

.p-movie__submit a:hover {
	opacity: 1;
}

.p-movie__submit a:hover img {
	scale: 1.03;
}

.u-hidden-pc {
	display: none;
}

}

@media (min-width: 1500px) {

.l-header__nav--top.panel-active .l-header__nav-scroll--top {
	height: 14.4rem;
}

.p-fv {
	background: transparent url(images/top/png/fv-wide.png) no-repeat center center/cover;
}

.p-fv__image01 {
	-webkit-animation: up-desk 45s linear infinite, rotate01 2s ease-in-out infinite alternate;
	animation: up-desk 45s linear infinite, rotate01 2s ease-in-out infinite alternate;
}

.p-fv__image02 {
	-webkit-animation: up-desk 45s linear infinite, rotate02 s ease-in-out infinite alternate;
	animation: up-desk 45s linear infinite, rotate02 s ease-in-out infinite alternate;
}

.p-fv__image03 {
	-webkit-animation: up-desk 45s linear infinite, rotate03 2s ease-in-out infinite alternate;
	animation: up-desk 45s linear infinite, rotate03 2s ease-in-out infinite alternate;
}

.p-fv__image04 {
	-webkit-animation: up-desk 45s linear infinite, rotate04 2s ease-in-out infinite alternate;
	animation: up-desk 45s linear infinite, rotate04 2s ease-in-out infinite alternate;
}

.p-movie--2 {
	padding: 15.8rem 0 35.5rem;
}

}

@media (min-width: 1501px) {

.l-header__nav-contents--top {
	margin: auto;
	max-width: 150rem;
}

}

@media (max-width: 1499px) {

.l-main2 {
	margin-top: -19.3rem;
	position: relative;
}

}

@media (max-width: 1279px) {

.l-footer__submit {
	bottom: 0.4rem;
	right: 0.4rem;
}

.l-main__header {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.p-introduction__image--1 img {
	max-width: 23.4rem;
}

.p-introduction__image--2 img {
	max-width: 26.5rem;
}

.p-introduction__image--3 img {
	max-width: 26.9rem;
}

.p-lineup__inner {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	margin: 0 auto;
	padding: 0 3.4375%;
}

.p-lineup__image-arc img {
	max-width: 89.2rem;
}

.p-lineup__image-lead img {
	max-width: 56.7rem;
}

.p-lineup__image-main img {
	max-width: 114.7rem;
}

.p-magazine__set-inner,
.p-magazine__how-inner {
	margin: 0 auto;
	padding: 0 7.0312%;
}

.p-magazine__set-title img,
.p-magazine__how-title img {
	max-width: 109.8rem;
}

.p-magazine__set-image--main img {
	max-width: 103.6rem;
}

.p-magazine__set-items-image img {
	max-width: 50.6rem;
}

.p-magazine__how-image--main img {
	max-width: 107.3rem;
}

.p-magazine__how-image--1 img {
	max-width: 51.2rem;
}

.p-magazine__how-image--2 img {
	max-width: 53.1rem;
}

.p-magazine__how-image--3 img {
	max-width: 69.2rem;
}

.p-magazine__how-image--4 img {
	max-width: 51.4rem;
}

.p-campaign__inner {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	margin: 0 auto;
	padding: 0 3.4375%;
}

.p-campaign__image--1 img {
	max-width: 39.7rem;
}

.p-campaign__image--2 img {
	max-width: 61rem;
}

}

@media (max-width: 991px) {

.l-footer__inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.l-footer__logo-link {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.l-footer__logo-link p {
	margin-top: 0.8rem;
}

.l-footer__header-list {
	margin-top: 2rem;
}

.l-header__sns {
	right: 0;
}

.l-header__sns-icons {
	left: 23.3rem;
	top: 4rem;
}

.p-contact__contents {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.p-contact__btn-link {
	margin-top: 3.3rem;
}

.p-introduction__wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	flex-direction: column;
}

.p-introduction__contents {
	margin: 4.5rem 0 5.6rem;
}

.p-magazine__set-image--2 {
	bottom: -19.6rem;
}

.p-magazine__set-items {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: end;
	-webkit-align-items: flex-end;
	-moz-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	flex-direction: column;
}

.p-magazine__set-items-image {
	margin-top: 4rem;
}

.p-magazine__set-info {
	margin-top: 4rem;
}

.p-magazine__set-info-header {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.p-magazine__set-info-image {
	margin-bottom: 1.8rem;
}

.p-magazine__set-info-contents {
	margin-bottom: 1.8rem;
}

.p-magazine__how {
	padding-top: 22.8rem;
}

}

@media (max-width: 743px) {

body {
	font-size: 1.4rem;
}

.l-footer__header-list {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.l-footer__header-item {
	margin-top: 2.3rem;
}

.l-footer__body-wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.l-footer__body-list {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.l-footer__body-nav2 {
	border-top: 1px solid #656d73;
	margin-top: 2.5rem;
}

.l-header__contents {
	margin: 0 auto;
}

.l-header__logo-link img {
	width: 18rem;
}

.l-header__nav--top {
	top: 0;
	width: 100%;
}

.l-header__nav--top.panel-active .l-header__nav-scroll--top {
	height: 100svh;
}

.l-header__nav-list--top {
	-webkit-transform: translate(-50%, -50%);
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}

.l-header__nav-item--top:before {
	top: 0.5rem;
}

.l-header__nav-item--top + .l-header__nav-item--top {
	margin-top: 3.2rem;
}

.l-header__nav-link--top {
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.5;
}

.l-header__nav-present {
	text-align: center;
}

.l-header__nav-present img {
	width: 80%;
}

.l-header__nav-gift {
	text-align: center;
}

.l-header__nav-gift img {
	width: 80%;
}

.l-header__nav-submit {
	text-align: center;
}

.l-header__nav-submit img {
	width: 80%;
}

.l-main__area {
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: column-reverse;
	-moz-box-orient: vertical;
	-moz-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
}

.l-single__header {
	font-size: 1.6rem;
}

.c-modal__image img {
	width: 80%;
}

.p-fv__image-main img {
	bottom: 16.8rem;
}

.swiper {
	bottom: 0;
	height: 12rem;
	width: 100%;
}

.swiper-slide {
	max-width: 18rem;
}

.swiper-slide img {
	height: 100%;
}

.p-introduction {
	padding: 14.4rem 0 21.7rem;
}

.p-introduction__inner {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	padding: 0 2rem;
}

.p-introduction__footer {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.p-introduction__btn + .p-introduction__btn {
	margin-top: 2.5rem;
}

.p-lineup__image-wrapper {
	margin-top: 10rem;
}

.p-magazine {
	padding: 22.6rem 0 10rem;
}

.p-magazine__how-lead {
	font-size: 1.2rem;
}

.p-magazine__how-images {
	-webkit-box-align: end;
	-webkit-align-items: flex-end;
	-moz-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.p-magazine__how-images--1 {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.p-magazine__how-images--2 {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.p-magazine__how-image {
	margin-top: 4rem;
}

.p-campaign__images {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.p-campaign__image--2 {
	margin-top: 4rem;
}

.p-campaign__info {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.p-campaign__x {
	margin-top: 4rem;
}

.p-faq__item-title {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.p-faq__item-title span {
	margin-bottom: 1.2rem;
}

.p-faq__item-text {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.p-faq__item-text span {
	margin-bottom: 1.2rem;
}

.p-movie {
	padding: 17.9rem 0 8.8rem;
}

.p-movie--2 {
	margin-top: 0;
	padding: 5.8rem 0 19.6rem;
}

.p-movie__present {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.p-movie__present-image + .p-movie__present-image {
	margin-top: 2rem;
}

.p-movie__footer {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.u-hidden-sp {
	display: none;
}

}

@media screen and (max-width: 743px) {

.official_footer {
	display: none;
}

.home_news_popup {
	margin: 15px auto;
}

.home_news_popup__main {
	padding: 20px;
}

.home_news_popup__date {
	font-size: 12px;
	margin: 0 0 5px;
}

.home_news_popup__title {
	font-size: 13px;
	margin: 0 0 5px;
}

.home_news_popup__body {
	font-size: 12px;
	padding: 5px 0 10px;
}

.home_news_popup__foot {
	padding: 10px 0 0;
}

.home_news_popup__btn_close {
	font-size: 1rem;
	height: 25px;
	max-width: 125px;
}

.faq_copyright {
	display: none;
}

#faqList {
	margin: 0;
}

#faqList .question {
	font-size: 12px;
}

#faqList .qTitle {
	font-size: 16px;
	line-height: 16px;
	width: 20px;
}

#faqList .aTitle {
	font-size: 16px;
	line-height: 16px;
}

.news_article {
	padding: 10px 0 10px;
}

.news_article__head {
	padding: 8px 10px;
}

.news_article__date {
	font-size: 12px;
}

.news_article__title {
	font-size: 12px;
}

.news_article__body {
	font-size: 3.4vw;
	padding: 5px 0 10px;
}

.news_nav {
	padding: 20px 0;
}

.news_nav__txt {
	font-size: 12px;
}

.news_pager__item {
	font-size: 12px;
	height: 30px;
	margin: 3px;
	width: 30px;
}

}

@media (max-width: 479px) {

.l-footer__submit img {
	width: 4.4rem;
}

.l-sidebar {
	width: 100%;
}

.l-sidebar__item img {
	width: 22rem;
}

.c-cta-sp__sns {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.c-cta-sp__sns-icons {
	margin-bottom: 2rem;
}

.p-fv__image01 {
	-webkit-animation: up-sp2 40s linear infinite, rotate01 2s ease-in-out infinite alternate;
	animation: up-sp2 40s linear infinite, rotate01 2s ease-in-out infinite alternate;
}

.p-fv__image02 {
	-webkit-animation: up-sp2 40s linear infinite, rotate02 2s ease-in-out infinite alternate;
	animation: up-sp2 40s linear infinite, rotate02 2s ease-in-out infinite alternate;
}

.p-fv__image03 {
	-webkit-animation: up-sp2 40s linear infinite, rotate03 2s ease-in-out infinite alternate;
	animation: up-sp2 40s linear infinite, rotate03 2s ease-in-out infinite alternate;
}

.p-fv__image04 {
	-webkit-animation: up-sp2 40s linear infinite, rotate04 2s ease-in-out infinite alternate;
	animation: up-sp2 40s linear infinite, rotate04 2s ease-in-out infinite alternate;
}

.p-magazine__set-image-modal--main img {
	width: 100%;
}

.p-magazine__set-items-image--modal img {
	width: 100%;
}

}

@media (max-width: 374px) {

.l-footer-sp__submit-link:before {
	display: none;
}

.l-main__title span {
	font-size: 2.8rem;
	left: 0.8rem;
}

.p-fv__image-main img {
	right: 0;
}

}

@-webkit-keyframes up {

to {
	top: -330%; /* ← アニメーション終了位置：画像が上に抜ける */
}

}

@keyframes up {

to {
	top: -330%; /* ← アニメーション終了位置：画像が上に抜ける */
}

}

@-webkit-keyframes up-desk {

to {
	top: -570%; /* ← アニメーション終了位置：画像が上に抜ける */
}

}

@keyframes up-desk {

to {
	top: -570%; /* ← アニメーション終了位置：画像が上に抜ける */
}

}

@-webkit-keyframes up-tab {

to {
	top: -280%;
}

}

@keyframes up-tab {

to {
	top: -280%;
}

}

@-webkit-keyframes up-tab2 {

to {
	top: -210%;
}

}

@keyframes up-tab2 {

to {
	top: -210%;
}

}

@-webkit-keyframes up-sp {

to {
	top: -160%;
}

}

@keyframes up-sp {

to {
	top: -160%;
}

}

@-webkit-keyframes up-sp2 {

to {
	top: -100%;
}

}

@keyframes up-sp2 {

to {
	top: -100%;
}

}

@-webkit-keyframes rotate01 {

from {
	-webkit-transform: translateX(0) rotate(0deg);
	transform: translateX(0) rotate(0deg);
}

to {
	-webkit-transform: translateX(1.1rem) rotate(2deg);
	transform: translateX(1.1rem) rotate(2deg);
}

}

@keyframes rotate01 {

from {
	-webkit-transform: translateX(0) rotate(0deg);
	transform: translateX(0) rotate(0deg);
}

to {
	-webkit-transform: translateX(1.1rem) rotate(2deg);
	transform: translateX(1.1rem) rotate(2deg);
}

}

@-webkit-keyframes rotate02 {

from {
	-webkit-transform: translateX(0) rotate(0deg);
	transform: translateX(0) rotate(0deg);
}

to {
	-webkit-transform: translateX(1rem) rotate(7deg);
	transform: translateX(1rem) rotate(7deg);
}

}

@keyframes rotate02 {

from {
	-webkit-transform: translateX(0) rotate(0deg);
	transform: translateX(0) rotate(0deg);
}

to {
	-webkit-transform: translateX(1rem) rotate(7deg);
	transform: translateX(1rem) rotate(7deg);
}

}

@-webkit-keyframes rotate03 {

from {
	-webkit-transform: translateX(0) rotate(0deg);
	transform: translateX(0) rotate(0deg);
}

to {
	-webkit-transform: translateX(1.3rem) rotate(9deg);
	transform: translateX(1.3rem) rotate(9deg);
}

}

@keyframes rotate03 {

from {
	-webkit-transform: translateX(0) rotate(0deg);
	transform: translateX(0) rotate(0deg);
}

to {
	-webkit-transform: translateX(1.3rem) rotate(9deg);
	transform: translateX(1.3rem) rotate(9deg);
}

}

@-webkit-keyframes rotate04 {

from {
	-webkit-transform: translateX(0) rotate(0deg);
	transform: translateX(0) rotate(0deg);
}

to {
	-webkit-transform: translateX(1.3rem) rotate(4deg);
	transform: translateX(1.3rem) rotate(4deg);
}

}

@keyframes rotate04 {

from {
	-webkit-transform: translateX(0) rotate(0deg);
	transform: translateX(0) rotate(0deg);
}

to {
	-webkit-transform: translateX(1.3rem) rotate(4deg);
	transform: translateX(1.3rem) rotate(4deg);
}

}

