@charset "UTF-8";

/* 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;
}

:root {
	--scrollbar: 0;
}

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

html:has(#navi[aria-hidden=false]) {
	overflow: hidden;
}

body {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.4rem;
	color: #231815;
	word-wrap: break-word;
}

a {
	color: inherit;
}

div[id],
section[id],
article[id] {
	scroll-margin-top: 80px;
}

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

input,
textarea,
select,
button {
	font: inherit;
	color: inherit;
	outline: none;
}

button,
a {
	cursor: pointer;
}

button:focus-visible,
a:focus-visible {
	outline: auto;
}

/* for development */

pre {
	padding: 15px;
	background: #eee;
	font-size: 1.2rem;
	line-height: 1.2;
}

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

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

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

.d-block {
	display: block;
}

.d-inline-block {
	display: inline-block;
}

.hidden {
	display: none !important;
}

.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
-------------------------------*/

.fw-700 {
	font-weight: 700;
}

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

.mt-0 {
	margin-top: 0px !important;
}

.mb-0 {
	margin-bottom: 0px !important;
}

.mr-0 {
	margin-right: 0px !important;
}

.ml-0 {
	margin-left: 0px !important;
}

.mx-0 {
	margin-left: 0px !important;
	margin-right: 0px !important;
}

.my-0 {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

.mt-5 {
	margin-top: 5px !important;
}

.mb-5 {
	margin-bottom: 5px !important;
}

.mr-5 {
	margin-right: 5px !important;
}

.ml-5 {
	margin-left: 5px !important;
}

.mx-5 {
	margin-left: 5px !important;
	margin-right: 5px !important;
}

.my-5 {
	margin-top: 5px !important;
	margin-bottom: 5px !important;
}

.mt-10 {
	margin-top: 10px !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.mr-10 {
	margin-right: 10px !important;
}

.ml-10 {
	margin-left: 10px !important;
}

.mx-10 {
	margin-left: 10px !important;
	margin-right: 10px !important;
}

.my-10 {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

.mt-15 {
	margin-top: 15px !important;
}

.mb-15 {
	margin-bottom: 15px !important;
}

.mr-15 {
	margin-right: 15px !important;
}

.ml-15 {
	margin-left: 15px !important;
}

.mx-15 {
	margin-left: 15px !important;
	margin-right: 15px !important;
}

.my-15 {
	margin-top: 15px !important;
	margin-bottom: 15px !important;
}

.mt-20 {
	margin-top: 20px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

.mr-20 {
	margin-right: 20px !important;
}

.ml-20 {
	margin-left: 20px !important;
}

.mx-20 {
	margin-left: 20px !important;
	margin-right: 20px !important;
}

.my-20 {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}

.mt-25 {
	margin-top: 25px !important;
}

.mb-25 {
	margin-bottom: 25px !important;
}

.mr-25 {
	margin-right: 25px !important;
}

.ml-25 {
	margin-left: 25px !important;
}

.mx-25 {
	margin-left: 25px !important;
	margin-right: 25px !important;
}

.my-25 {
	margin-top: 25px !important;
	margin-bottom: 25px !important;
}

.mt-30 {
	margin-top: 30px !important;
}

.mb-30 {
	margin-bottom: 30px !important;
}

.mr-30 {
	margin-right: 30px !important;
}

.ml-30 {
	margin-left: 30px !important;
}

.mx-30 {
	margin-left: 30px !important;
	margin-right: 30px !important;
}

.my-30 {
	margin-top: 30px !important;
	margin-bottom: 30px !important;
}

.mt-35 {
	margin-top: 35px !important;
}

.mb-35 {
	margin-bottom: 35px !important;
}

.mr-35 {
	margin-right: 35px !important;
}

.ml-35 {
	margin-left: 35px !important;
}

.mx-35 {
	margin-left: 35px !important;
	margin-right: 35px !important;
}

.my-35 {
	margin-top: 35px !important;
	margin-bottom: 35px !important;
}

.mt-40 {
	margin-top: 40px !important;
}

.mb-40 {
	margin-bottom: 40px !important;
}

.mr-40 {
	margin-right: 40px !important;
}

.ml-40 {
	margin-left: 40px !important;
}

.mx-40 {
	margin-left: 40px !important;
	margin-right: 40px !important;
}

.my-40 {
	margin-top: 40px !important;
	margin-bottom: 40px !important;
}

.mt-45 {
	margin-top: 45px !important;
}

.mb-45 {
	margin-bottom: 45px !important;
}

.mr-45 {
	margin-right: 45px !important;
}

.ml-45 {
	margin-left: 45px !important;
}

.mx-45 {
	margin-left: 45px !important;
	margin-right: 45px !important;
}

.my-45 {
	margin-top: 45px !important;
	margin-bottom: 45px !important;
}

.mt-50 {
	margin-top: 50px !important;
}

.mb-50 {
	margin-bottom: 50px !important;
}

.mr-50 {
	margin-right: 50px !important;
}

.ml-50 {
	margin-left: 50px !important;
}

.mx-50 {
	margin-left: 50px !important;
	margin-right: 50px !important;
}

.my-50 {
	margin-top: 50px !important;
	margin-bottom: 50px !important;
}

.mt-55 {
	margin-top: 55px !important;
}

.mb-55 {
	margin-bottom: 55px !important;
}

.mr-55 {
	margin-right: 55px !important;
}

.ml-55 {
	margin-left: 55px !important;
}

.mx-55 {
	margin-left: 55px !important;
	margin-right: 55px !important;
}

.my-55 {
	margin-top: 55px !important;
	margin-bottom: 55px !important;
}

.mt-60 {
	margin-top: 60px !important;
}

.mb-60 {
	margin-bottom: 60px !important;
}

.mr-60 {
	margin-right: 60px !important;
}

.ml-60 {
	margin-left: 60px !important;
}

.mx-60 {
	margin-left: 60px !important;
	margin-right: 60px !important;
}

.my-60 {
	margin-top: 60px !important;
	margin-bottom: 60px !important;
}

.mt-65 {
	margin-top: 65px !important;
}

.mb-65 {
	margin-bottom: 65px !important;
}

.mr-65 {
	margin-right: 65px !important;
}

.ml-65 {
	margin-left: 65px !important;
}

.mx-65 {
	margin-left: 65px !important;
	margin-right: 65px !important;
}

.my-65 {
	margin-top: 65px !important;
	margin-bottom: 65px !important;
}

.mt-70 {
	margin-top: 70px !important;
}

.mb-70 {
	margin-bottom: 70px !important;
}

.mr-70 {
	margin-right: 70px !important;
}

.ml-70 {
	margin-left: 70px !important;
}

.mx-70 {
	margin-left: 70px !important;
	margin-right: 70px !important;
}

.my-70 {
	margin-top: 70px !important;
	margin-bottom: 70px !important;
}

.mt-75 {
	margin-top: 75px !important;
}

.mb-75 {
	margin-bottom: 75px !important;
}

.mr-75 {
	margin-right: 75px !important;
}

.ml-75 {
	margin-left: 75px !important;
}

.mx-75 {
	margin-left: 75px !important;
	margin-right: 75px !important;
}

.my-75 {
	margin-top: 75px !important;
	margin-bottom: 75px !important;
}

.mt-80 {
	margin-top: 80px !important;
}

.mb-80 {
	margin-bottom: 80px !important;
}

.mr-80 {
	margin-right: 80px !important;
}

.ml-80 {
	margin-left: 80px !important;
}

.mx-80 {
	margin-left: 80px !important;
	margin-right: 80px !important;
}

.my-80 {
	margin-top: 80px !important;
	margin-bottom: 80px !important;
}

.mt-85 {
	margin-top: 85px !important;
}

.mb-85 {
	margin-bottom: 85px !important;
}

.mr-85 {
	margin-right: 85px !important;
}

.ml-85 {
	margin-left: 85px !important;
}

.mx-85 {
	margin-left: 85px !important;
	margin-right: 85px !important;
}

.my-85 {
	margin-top: 85px !important;
	margin-bottom: 85px !important;
}

.mt-90 {
	margin-top: 90px !important;
}

.mb-90 {
	margin-bottom: 90px !important;
}

.mr-90 {
	margin-right: 90px !important;
}

.ml-90 {
	margin-left: 90px !important;
}

.mx-90 {
	margin-left: 90px !important;
	margin-right: 90px !important;
}

.my-90 {
	margin-top: 90px !important;
	margin-bottom: 90px !important;
}

.mt-95 {
	margin-top: 95px !important;
}

.mb-95 {
	margin-bottom: 95px !important;
}

.mr-95 {
	margin-right: 95px !important;
}

.ml-95 {
	margin-left: 95px !important;
}

.mx-95 {
	margin-left: 95px !important;
	margin-right: 95px !important;
}

.my-95 {
	margin-top: 95px !important;
	margin-bottom: 95px !important;
}

.mt-100 {
	margin-top: 100px !important;
}

.mb-100 {
	margin-bottom: 100px !important;
}

.mr-100 {
	margin-right: 100px !important;
}

.ml-100 {
	margin-left: 100px !important;
}

.mx-100 {
	margin-left: 100px !important;
	margin-right: 100px !important;
}

.my-100 {
	margin-top: 100px !important;
	margin-bottom: 100px !important;
}

.mt-auto {
	margin-top: auto !important;
}

.mb-auto {
	margin-bottom: auto !important;
}

.mr-auto {
	margin-right: auto !important;
}

.ml-auto {
	margin-left: auto !important;
}

.mx-auto {
	margin-left: auto !important;
	margin-right: auto !important;
}

.my-auto {
	margin-top: auto !important;
	margin-bottom: auto !important;
}

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

.p-0 {
	padding: 0px !important;
}

.pt-0 {
	padding-top: 0px !important;
}

.pb-0 {
	padding-bottom: 0px !important;
}

.pr-0 {
	padding-right: 0px !important;
}

.pl-0 {
	padding-left: 0px !important;
}

.px-0 {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

.py-0 {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

.p-5 {
	padding: 5px !important;
}

.pt-5 {
	padding-top: 5px !important;
}

.pb-5 {
	padding-bottom: 5px !important;
}

.pr-5 {
	padding-right: 5px !important;
}

.pl-5 {
	padding-left: 5px !important;
}

.px-5 {
	padding-left: 5px !important;
	padding-right: 5px !important;
}

.py-5 {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}

.p-10 {
	padding: 10px !important;
}

.pt-10 {
	padding-top: 10px !important;
}

.pb-10 {
	padding-bottom: 10px !important;
}

.pr-10 {
	padding-right: 10px !important;
}

.pl-10 {
	padding-left: 10px !important;
}

.px-10 {
	padding-left: 10px !important;
	padding-right: 10px !important;
}

.py-10 {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}

.p-15 {
	padding: 15px !important;
}

.pt-15 {
	padding-top: 15px !important;
}

.pb-15 {
	padding-bottom: 15px !important;
}

.pr-15 {
	padding-right: 15px !important;
}

.pl-15 {
	padding-left: 15px !important;
}

.px-15 {
	padding-left: 15px !important;
	padding-right: 15px !important;
}

.py-15 {
	padding-top: 15px !important;
	padding-bottom: 15px !important;
}

.p-20 {
	padding: 20px !important;
}

.pt-20 {
	padding-top: 20px !important;
}

.pb-20 {
	padding-bottom: 20px !important;
}

.pr-20 {
	padding-right: 20px !important;
}

.pl-20 {
	padding-left: 20px !important;
}

.px-20 {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.py-20 {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}

.p-25 {
	padding: 25px !important;
}

.pt-25 {
	padding-top: 25px !important;
}

.pb-25 {
	padding-bottom: 25px !important;
}

.pr-25 {
	padding-right: 25px !important;
}

.pl-25 {
	padding-left: 25px !important;
}

.px-25 {
	padding-left: 25px !important;
	padding-right: 25px !important;
}

.py-25 {
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}

.p-30 {
	padding: 30px !important;
}

.pt-30 {
	padding-top: 30px !important;
}

.pb-30 {
	padding-bottom: 30px !important;
}

.pr-30 {
	padding-right: 30px !important;
}

.pl-30 {
	padding-left: 30px !important;
}

.px-30 {
	padding-left: 30px !important;
	padding-right: 30px !important;
}

.py-30 {
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}

.p-35 {
	padding: 35px !important;
}

.pt-35 {
	padding-top: 35px !important;
}

.pb-35 {
	padding-bottom: 35px !important;
}

.pr-35 {
	padding-right: 35px !important;
}

.pl-35 {
	padding-left: 35px !important;
}

.px-35 {
	padding-left: 35px !important;
	padding-right: 35px !important;
}

.py-35 {
	padding-top: 35px !important;
	padding-bottom: 35px !important;
}

.p-40 {
	padding: 40px !important;
}

.pt-40 {
	padding-top: 40px !important;
}

.pb-40 {
	padding-bottom: 40px !important;
}

.pr-40 {
	padding-right: 40px !important;
}

.pl-40 {
	padding-left: 40px !important;
}

.px-40 {
	padding-left: 40px !important;
	padding-right: 40px !important;
}

.py-40 {
	padding-top: 40px !important;
	padding-bottom: 40px !important;
}

.p-45 {
	padding: 45px !important;
}

.pt-45 {
	padding-top: 45px !important;
}

.pb-45 {
	padding-bottom: 45px !important;
}

.pr-45 {
	padding-right: 45px !important;
}

.pl-45 {
	padding-left: 45px !important;
}

.px-45 {
	padding-left: 45px !important;
	padding-right: 45px !important;
}

.py-45 {
	padding-top: 45px !important;
	padding-bottom: 45px !important;
}

.p-50 {
	padding: 50px !important;
}

.pt-50 {
	padding-top: 50px !important;
}

.pb-50 {
	padding-bottom: 50px !important;
}

.pr-50 {
	padding-right: 50px !important;
}

.pl-50 {
	padding-left: 50px !important;
}

.px-50 {
	padding-left: 50px !important;
	padding-right: 50px !important;
}

.py-50 {
	padding-top: 50px !important;
	padding-bottom: 50px !important;
}

.p-55 {
	padding: 55px !important;
}

.pt-55 {
	padding-top: 55px !important;
}

.pb-55 {
	padding-bottom: 55px !important;
}

.pr-55 {
	padding-right: 55px !important;
}

.pl-55 {
	padding-left: 55px !important;
}

.px-55 {
	padding-left: 55px !important;
	padding-right: 55px !important;
}

.py-55 {
	padding-top: 55px !important;
	padding-bottom: 55px !important;
}

.p-60 {
	padding: 60px !important;
}

.pt-60 {
	padding-top: 60px !important;
}

.pb-60 {
	padding-bottom: 60px !important;
}

.pr-60 {
	padding-right: 60px !important;
}

.pl-60 {
	padding-left: 60px !important;
}

.px-60 {
	padding-left: 60px !important;
	padding-right: 60px !important;
}

.py-60 {
	padding-top: 60px !important;
	padding-bottom: 60px !important;
}

.p-65 {
	padding: 65px !important;
}

.pt-65 {
	padding-top: 65px !important;
}

.pb-65 {
	padding-bottom: 65px !important;
}

.pr-65 {
	padding-right: 65px !important;
}

.pl-65 {
	padding-left: 65px !important;
}

.px-65 {
	padding-left: 65px !important;
	padding-right: 65px !important;
}

.py-65 {
	padding-top: 65px !important;
	padding-bottom: 65px !important;
}

.p-70 {
	padding: 70px !important;
}

.pt-70 {
	padding-top: 70px !important;
}

.pb-70 {
	padding-bottom: 70px !important;
}

.pr-70 {
	padding-right: 70px !important;
}

.pl-70 {
	padding-left: 70px !important;
}

.px-70 {
	padding-left: 70px !important;
	padding-right: 70px !important;
}

.py-70 {
	padding-top: 70px !important;
	padding-bottom: 70px !important;
}

.p-75 {
	padding: 75px !important;
}

.pt-75 {
	padding-top: 75px !important;
}

.pb-75 {
	padding-bottom: 75px !important;
}

.pr-75 {
	padding-right: 75px !important;
}

.pl-75 {
	padding-left: 75px !important;
}

.px-75 {
	padding-left: 75px !important;
	padding-right: 75px !important;
}

.py-75 {
	padding-top: 75px !important;
	padding-bottom: 75px !important;
}

.p-80 {
	padding: 80px !important;
}

.pt-80 {
	padding-top: 80px !important;
}

.pb-80 {
	padding-bottom: 80px !important;
}

.pr-80 {
	padding-right: 80px !important;
}

.pl-80 {
	padding-left: 80px !important;
}

.px-80 {
	padding-left: 80px !important;
	padding-right: 80px !important;
}

.py-80 {
	padding-top: 80px !important;
	padding-bottom: 80px !important;
}

.p-85 {
	padding: 85px !important;
}

.pt-85 {
	padding-top: 85px !important;
}

.pb-85 {
	padding-bottom: 85px !important;
}

.pr-85 {
	padding-right: 85px !important;
}

.pl-85 {
	padding-left: 85px !important;
}

.px-85 {
	padding-left: 85px !important;
	padding-right: 85px !important;
}

.py-85 {
	padding-top: 85px !important;
	padding-bottom: 85px !important;
}

.p-90 {
	padding: 90px !important;
}

.pt-90 {
	padding-top: 90px !important;
}

.pb-90 {
	padding-bottom: 90px !important;
}

.pr-90 {
	padding-right: 90px !important;
}

.pl-90 {
	padding-left: 90px !important;
}

.px-90 {
	padding-left: 90px !important;
	padding-right: 90px !important;
}

.py-90 {
	padding-top: 90px !important;
	padding-bottom: 90px !important;
}

.p-95 {
	padding: 95px !important;
}

.pt-95 {
	padding-top: 95px !important;
}

.pb-95 {
	padding-bottom: 95px !important;
}

.pr-95 {
	padding-right: 95px !important;
}

.pl-95 {
	padding-left: 95px !important;
}

.px-95 {
	padding-left: 95px !important;
	padding-right: 95px !important;
}

.py-95 {
	padding-top: 95px !important;
	padding-bottom: 95px !important;
}

.p-100 {
	padding: 100px !important;
}

.pt-100 {
	padding-top: 100px !important;
}

.pb-100 {
	padding-bottom: 100px !important;
}

.pr-100 {
	padding-right: 100px !important;
}

.pl-100 {
	padding-left: 100px !important;
}

.px-100 {
	padding-left: 100px !important;
	padding-right: 100px !important;
}

.py-100 {
	padding-top: 100px !important;
	padding-bottom: 100px !important;
}

/* gap
-------------------------------*/

.gap-0 {
	gap: 0px;
}

.gap-x-0 {
	-webkit-column-gap: 0px;
	-moz-column-gap: 0px;
	column-gap: 0px;
}

.gap-y-0 {
	row-gap: 0px;
}

.gap-5 {
	gap: 5px;
}

.gap-x-5 {
	-webkit-column-gap: 5px;
	-moz-column-gap: 5px;
	column-gap: 5px;
}

.gap-y-5 {
	row-gap: 5px;
}

.gap-10 {
	gap: 10px;
}

.gap-x-10 {
	-webkit-column-gap: 10px;
	-moz-column-gap: 10px;
	column-gap: 10px;
}

.gap-y-10 {
	row-gap: 10px;
}

.gap-15 {
	gap: 15px;
}

.gap-x-15 {
	-webkit-column-gap: 15px;
	-moz-column-gap: 15px;
	column-gap: 15px;
}

.gap-y-15 {
	row-gap: 15px;
}

.gap-20 {
	gap: 20px;
}

.gap-x-20 {
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	column-gap: 20px;
}

.gap-y-20 {
	row-gap: 20px;
}

.gap-25 {
	gap: 25px;
}

.gap-x-25 {
	-webkit-column-gap: 25px;
	-moz-column-gap: 25px;
	column-gap: 25px;
}

.gap-y-25 {
	row-gap: 25px;
}

.gap-30 {
	gap: 30px;
}

.gap-x-30 {
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	column-gap: 30px;
}

.gap-y-30 {
	row-gap: 30px;
}

.gap-35 {
	gap: 35px;
}

.gap-x-35 {
	-webkit-column-gap: 35px;
	-moz-column-gap: 35px;
	column-gap: 35px;
}

.gap-y-35 {
	row-gap: 35px;
}

.gap-40 {
	gap: 40px;
}

.gap-x-40 {
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	column-gap: 40px;
}

.gap-y-40 {
	row-gap: 40px;
}

.gap-45 {
	gap: 45px;
}

.gap-x-45 {
	-webkit-column-gap: 45px;
	-moz-column-gap: 45px;
	column-gap: 45px;
}

.gap-y-45 {
	row-gap: 45px;
}

.gap-50 {
	gap: 50px;
}

.gap-x-50 {
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	column-gap: 50px;
}

.gap-y-50 {
	row-gap: 50px;
}

.gap-55 {
	gap: 55px;
}

.gap-x-55 {
	-webkit-column-gap: 55px;
	-moz-column-gap: 55px;
	column-gap: 55px;
}

.gap-y-55 {
	row-gap: 55px;
}

.gap-60 {
	gap: 60px;
}

.gap-x-60 {
	-webkit-column-gap: 60px;
	-moz-column-gap: 60px;
	column-gap: 60px;
}

.gap-y-60 {
	row-gap: 60px;
}

.gap-65 {
	gap: 65px;
}

.gap-x-65 {
	-webkit-column-gap: 65px;
	-moz-column-gap: 65px;
	column-gap: 65px;
}

.gap-y-65 {
	row-gap: 65px;
}

.gap-70 {
	gap: 70px;
}

.gap-x-70 {
	-webkit-column-gap: 70px;
	-moz-column-gap: 70px;
	column-gap: 70px;
}

.gap-y-70 {
	row-gap: 70px;
}

.gap-75 {
	gap: 75px;
}

.gap-x-75 {
	-webkit-column-gap: 75px;
	-moz-column-gap: 75px;
	column-gap: 75px;
}

.gap-y-75 {
	row-gap: 75px;
}

.gap-80 {
	gap: 80px;
}

.gap-x-80 {
	-webkit-column-gap: 80px;
	-moz-column-gap: 80px;
	column-gap: 80px;
}

.gap-y-80 {
	row-gap: 80px;
}

.gap-85 {
	gap: 85px;
}

.gap-x-85 {
	-webkit-column-gap: 85px;
	-moz-column-gap: 85px;
	column-gap: 85px;
}

.gap-y-85 {
	row-gap: 85px;
}

.gap-90 {
	gap: 90px;
}

.gap-x-90 {
	-webkit-column-gap: 90px;
	-moz-column-gap: 90px;
	column-gap: 90px;
}

.gap-y-90 {
	row-gap: 90px;
}

.gap-95 {
	gap: 95px;
}

.gap-x-95 {
	-webkit-column-gap: 95px;
	-moz-column-gap: 95px;
	column-gap: 95px;
}

.gap-y-95 {
	row-gap: 95px;
}

.gap-100 {
	gap: 100px;
}

.gap-x-100 {
	-webkit-column-gap: 100px;
	-moz-column-gap: 100px;
	column-gap: 100px;
}

.gap-y-100 {
	row-gap: 100px;
}

/* grid
-------------------------------*/

.grid-1col > *,
.grid-2col > *,
.grid-3col > *,
.grid-4col > * {
	min-width: 0;
}

.grid-1col {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
}

.grid-2col {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.grid-3col {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.grid-4col {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.l-body {
	width: 100%;
	overflow: clip;
}

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

.l-header {
	position: sticky;
	top: 0;
	left: 0;
	width: 100%;
	margin-top: 3.5rem;
	padding: 1rem 0 1rem;
	gap: 3em;
	background: #FFF;
	z-index: 10000;
}

.l-header__inner {
	max-width: 1360px;
	width: calc(100% - 50px);
	padding-left: 10px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	gap: 20px;
}

.l-footer {
	padding: 5rem 0 4rem;
	background: #FDF4DC;
}

.l-footer__inner {
	position: relative;
	width: 84.8101%;
	max-width: 1340px;
	margin: 0 auto;
}

.l-footer__inner::before {
	content: "";
	position: absolute;
	top: -15.2rem;
	left: -2.8%;
	width: 140px;
	aspect-ratio: 140/124;
	background: url(../img/common/illust_01.png) no-repeat center center/contain;
	-webkit-animation: fuwafuwa 3s infinite;
	animation: fuwafuwa 3s infinite;
}

.l-footer__inner::after {
	content: "";
	position: absolute;
	top: -13.3rem;
	right: -3.6%;
	width: 124px;
	aspect-ratio: 124/119;
	background: url(../img/common/illust_02.png) no-repeat center center/contain;
	-webkit-animation: fuwafuwa 5s infinite;
	animation: fuwafuwa 5s infinite;
}

.l-navi {
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.l-page {
	position: relative;
	padding-top: 110px;
	padding-bottom: 110px;
	opacity: 0;
	-webkit-transform: scaleX(0.6);
	transform: scaleX(0.6);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.l-page::before {
	content: "";
	background: #EFB718;
	width: 100%;
	height: 363px;
	position: absolute;
	top: 0;
	left: 0;
}

.l-page__inner {
	min-height: 300px;
	background: #FFF;
}

.l-page__inner > * {
	opacity: 0;
}

.l-page.is-visible {
	-webkit-transition: 0.5s ease-out;
	transition: 0.5s ease-out;
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}

.l-page.is-visible .l-page__inner > * {
	opacity: 1;
	-webkit-transition: opacity 0.5s ease-in-out 0.6s;
	transition: opacity 0.5s ease-in-out 0.6s;
}

.l-lg-wrapper {
	position: relative;
	width: calc(100% - 100px);
	max-width: 1256px;
	margin-left: auto;
	margin-right: auto;
}

.l-wrapper {
	position: relative;
	width: 90%;
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
}

.l-2col {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 5%;
}

.l-2col__side {
	width: 18.5rem;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	position: sticky;
	top: 90px;
	z-index: 100;
}

.l-2col__main {
	width: 100%;
	min-width: 0;
}

.noscript {
	font-size: 16px;
	line-height: 1.4;
	text-align: center;
	padding: 1em;
	border: 3px solid red;
}

.noscript span {
	color: red;
}

.header-logo {
	max-width: 300px;
}

.header-logo a {
	display: block;
}

.header-logo img {
	display: block;
}

.menu-btn {
	display: none;
}

.gnavi {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: clamp(2rem, -17.3333333333rem + 16.1111111111vw, 4.9rem);
	margin-bottom: 0.75rem;
}

.gnavi__item {
	position: relative;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.gnavi__item:has(:focus) .gnavi__children {
	opacity: 1;
	visibility: visible;
}

.gnavi__item a {
	display: block;
	border-bottom: 1px dotted currentColor;
	font-weight: 700;
	letter-spacing: 0.16em;
	color: #323333;
	text-decoration: none;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.gnavi__link {
	position: relative;
	padding: 0 0.3em 0.5em 1em;
	font-size: clamp(1.3rem, 0.05rem + 1.25vw, 1.575rem);
}

.gnavi__link::before {
	content: "";
	position: absolute;
	top: 0.25em;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: currentColor;
}

.gnavi__children {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	bottom: 0;
	left: 0;
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
	white-space: nowrap;
	-webkit-transition: 0.4s;
	transition: 0.4s;
	background: rgba(255, 255, 255, 0.8);
}

.gnavi__children__item {
	margin-top: 1rem;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.gnavi__children a {
	padding: 0.5em 0;
	font-size: 1.4rem;
}

.footer-navi-wrap {
	display: grid;
	grid-template-columns: 22.19% 29.33% 23.33% 23.24%;
	gap: 2.1%;
	max-width: 1050px;
	margin: 0 auto;
}

.footer-navi {
	color: #3E3A39;
}

.footer-navi__item {
	margin-bottom: 3.5rem;
}

.footer-navi__item:not(:has(.footer-navi__child)) {
	margin-bottom: 3.2rem;
}

.footer-navi__link {
	position: relative;
	display: inline-block;
	padding-bottom: 0.95em;
	font-weight: 700;
	font-size: 1.76rem;
	line-height: 1.75;
	text-decoration: none;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.footer-navi__link::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 2.3rem;
	height: 2px;
	background: #E8B217;
	pointer-events: none;
}

.footer-navi__child {
	margin-top: 1.6rem;
}

.footer-navi__child__item:not(:last-child) {
	margin-bottom: 2rem;
}

.footer-navi__child__item a {
	display: inline-block;
	font-size: 1.54rem;
	line-height: 1.4;
	text-decoration: none;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.footer-bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: end;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 3rem 4.4776%;
	margin-top: 1.5rem;
	color: #595757;
}

.footer-bottom__logo {
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.footer-bottom__logo a {
	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: end;
	-ms-flex-align: end;
	align-items: end;
	text-decoration: none;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.footer-bottom__logo__text {
	margin-top: 0.3em;
	padding-right: 0.2em;
	font-weight: 700;
	font-size: 1.52rem;
	line-height: 2;
	letter-spacing: 0.01em;
}

.footer-bottom__logo img {
	display: block;
}

.footer-bottom__info {
	padding-right: 0.2em;
	margin-bottom: 0.3em;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.6393;
	letter-spacing: 0.03em;
}

.footer-bottom__info a {
	text-decoration: none;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.footer-bottom__copyright {
	display: block;
	padding-right: 0.3em;
	margin-bottom: 0.8em;
	font-size: 1.1rem;
	letter-spacing: 0.05em;
	line-height: 1.2;
}

/*
#styleguide
heading-primary

SP 20px / PC 26px
デフォルトは左寄せ
```
<p class="heading-primary">見出し２です</p>
```
*/

/*
#styleguide
heading-secondary

SP 20px / PC 26px
デフォルトは左寄せ
```
<p class="heading-secondary">見出し２です</p>
```
*/

/*
#styleguide
heading-tertiary

SP 20px / PC 26px
デフォルトは左寄せ
```
<p class="heading-tertiary">見出し２です</p>
```
*/

.heading-side {
	color: #898989;
	font-size: 1.426rem;
	font-weight: 700;
	margin: 5px 0 10px;
}

.heading-side:not(:first-child) {
	margin-top: 30px;
}

.text-base {
	font-size: 1.5rem;
	line-height: 2.0667;
	letter-spacing: 0.01em;
}

.text-base p,
.text-base ol,
.text-base ul {
	margin-bottom: 2.0667em;
}

.text-lg {
	font-size: 2rem;
	line-height: 1.8;
}

.text-lg p,
.text-lg ol,
.text-lg ul {
	margin-bottom: 1.8em;
}

.text-sm {
	font-size: 1.4rem;
	line-height: 1.8;
}

.text-sm p,
.text-sm ol,
.text-sm ul {
	margin-bottom: 1.8em;
}

.text-note {
	padding-left: 1em;
	text-indent: -1em;
}

.text-lead {
	font-weight: 700;
	font-size: 2.1rem;
	line-height: 1.5;
}

.buttons-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	gap: 20px;
	margin-top: 47px;
}

.buttons-wrap--center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.button-primary {
	position: relative;
	font-size: 1.32rem;
	font-weight: 500;
	color: #EFB718;
	padding: 0 100px 17px 5px;
	border-bottom: 2px solid #EFB718;
	text-decoration: none;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.button-primary::before {
	position: absolute;
	bottom: 18px;
	right: 2px;
	content: "";
	width: 13px;
	height: 7px;
	display: block;
	-webkit-mask: url(../img/common/icon_arrow.svg) no-repeat center/contain;
	mask: url(../img/common/icon_arrow.svg) no-repeat center/contain;
	background: #EFB718;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.button-secondary {
	position: relative;
	text-decoration: none;
	font-weight: 700;
	line-height: 1.4;
	-webkit-transition: 0.4s;
	transition: 0.4s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.button-secondary::before {
	margin-right: 1em;
	content: "";
	width: 20px;
	height: 20px;
	display: inline-block;
	background: currentColor;
	-webkit-mask: url(../img/common/icon_arrow_black.svg) no-repeat center/contain;
	mask: url(../img/common/icon_arrow_black.svg) no-repeat center/contain;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.page-head {
	position: relative;
	padding: 30px 0px 53px;
	z-index: 10;
}

.page-head::before {
	content: "";
	background: url("../img/common/icon_arrow_long.svg") no-repeat center/contain;
	width: 13px;
	height: 76px;
	position: absolute;
	top: 100%;
	left: 49%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.page-head__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 43px;
}

.page-head__heading {
	position: relative;
	color: #EFB718;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 1.76rem;
	font-weight: 500;
	padding-top: 28px;
}

.page-head__heading::before {
	content: "";
	background: #EFB718;
	width: 2px;
	height: 22px;
	position: absolute;
	top: 10px;
	left: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.page-head__title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.page-head__title__en {
	font-size: 5.655rem;
	letter-spacing: 0.05em;
	font-weight: 700;
	color: #595757;
}

.page-head__title__sub {
	margin-left: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	color: #595757;
	font-weight: 700;
	font-size: 2.189rem;
}

.page-head__title__sub span {
	font-size: 70.3%;
	margin-left: 1em;
}

.page-list-wrap {
	border-bottom: 0.25px solid #231815;
	margin-bottom: 60px;
}

.page-list {
	max-width: 1120px;
	margin: 0 auto;
	padding: 40px 0 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 25px 20px;
}

.page-list--100 {
	max-width: none;
}

.page-list__item {
	overflow: hidden;
}

.page-list__item--equal {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.page-list__item a {
	position: relative;
	padding: 0 10px 36px;
	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-weight: 700;
	font-size: 1.8rem;
	color: #999FA3;
	text-decoration: none;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.page-list__item a::after {
	content: "";
	position: absolute;
	bottom: -0.289em;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 0;
	height: 0.289em;
	background: #F0B818;
	-webkit-transition-property: all;
	transition-property: all;
	-webkit-transition-duration: 0.4s;
	transition-duration: 0.4s;
	-webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
	transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
}

.page-list__item a[aria-current] {
	color: #231815;
}

.page-list__item a[aria-current]::after {
	bottom: 0;
	width: 4.2em;
}

.pagination {
	margin-top: 63px;
	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;
	gap: 8px;
}

.pagination .page-numbers {
	text-decoration: none;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 30px;
	height: 30px;
	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.1rem;
	color: #EFB718;
	border-radius: 50%;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.pagination .page-numbers.current {
	background: #EFB718;
	color: #FFF;
	border-radius: 50%;
}

.pagination .page-numbers.dots {
	background: none;
}

.pagination .page-numbers.prev,
.pagination .page-numbers.next {
	background: none;
	width: 6px;
	height: 12px;
}

.pagination .page-numbers.prev {
	margin-right: 13px;
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.pagination .page-numbers.next {
	margin-left: 13px;
}

.side-link {
	border-bottom: 1px solid #F0B818;
	font-size: 1.3rem;
}

.side-link__item {
	border-top: 1px solid #DCDDDD;
}

.side-link__link {
	display: block;
	text-decoration: none;
	padding: 14px 0 14px 4px;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.image-in {
	position: relative;
	overflow: hidden;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: left top;
	transform-origin: left top;
}

.image-in::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: #EFB718;
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

.image-in img {
	display: block;
}

.image-in.is-visible {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
	-webkit-transition: 0.45s cubic-bezier(0.77, 0, 0.175, 1);
	transition: 0.45s cubic-bezier(0.77, 0, 0.175, 1);
}

.image-in.is-visible::after {
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transition: 0.4s 0.5s cubic-bezier(0.77, 0, 0.175, 1);
	transition: 0.4s 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}

.image-mag a {
	-webkit-transition: 0.4s;
	transition: 0.4s;
	display: block;
}

.anime-fuwafuwa-1 {
	-webkit-animation: fuwafuwa 3s infinite;
	animation: fuwafuwa 3s infinite;
}

.anime-fuwafuwa-2 {
	-webkit-animation: fuwafuwa 5s infinite;
	animation: fuwafuwa 5s infinite;
}

.anime-fuwafuwa-3 {
	-webkit-animation: fuwafuwa 4s infinite;
	animation: fuwafuwa 4s infinite;
}

.anime-car-1 {
	-webkit-animation: car 16s linear infinite;
	animation: car 16s linear infinite;
}

.anime-car-2 {
	-webkit-animation: car 16s linear 5s infinite;
	animation: car 16s linear 5s infinite;
}

.anime-car-3 {
	-webkit-animation: car 22s linear 2s infinite;
	animation: car 22s linear 2s infinite;
}

.modal {
	position: relative;
	z-index: 10000;
	display: none;
}

.modal.is-open {
	display: block;
}

.modal__overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
	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;
}

.modal__container {
	position: relative;
	background: #ffffff;
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-overflow-scrolling: touch;
}

.modal-play-youtube .modal__container {
	max-width: 1200px;
	max-height: 86%;
}

.modal__inner {
	height: 100%;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	max-height: 85vh;
}

.modal__close {
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	position: fixed;
	top: 20px;
	right: 20px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 50px;
	z-index: 10;
	display: block;
	text-align: center;
}

.modal__close__icon {
	display: block;
	width: 36px;
	height: 36px;
	position: relative;
	margin: 0 auto 5px;
}

.modal__close__icon::before,
.modal__close__icon:after {
	content: "";
	display: block;
	width: 50px;
	height: 2px;
	position: absolute;
	left: 0;
}

.modal__close__icon:before {
	top: 0;
	-webkit-transform-origin: left bottom;
	transform-origin: left bottom;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.modal__close__icon:after {
	top: 100%;
	-webkit-transform-origin: left top;
	transform-origin: left top;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/**************************\
	Demo Animation Style
\**************************/

.modal[aria-hidden=false] .modal__overlay {
	-webkit-animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
	animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.modal[aria-hidden=false] .modal__container {
	-webkit-animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
	animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.modal[aria-hidden=true] .modal__overlay {
	-webkit-animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
	animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.modal[aria-hidden=true] .modal__container {
	-webkit-animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
	animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.modal .modal__container,
.modal .modal__overlay {
	will-change: transform;
}

@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-preloader-color: var(--swiper-theme-color);
		--swiper-wrapper-transition-timing-function: initial;
		*/
}

:host {
	position: relative;
	display: block;
	margin-left: auto;
	margin-right: auto;
	z-index: 1;
}

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

.swiper-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;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
	transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

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

.swiper-horizontal {
	-ms-touch-action: pan-y;
	touch-action: pan-y;
}

.swiper-vertical {
	-ms-touch-action: pan-x;
	touch-action: pan-x;
}

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

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

/* Auto Height */

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

.swiper-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;
	transition-property: transform, height;
	transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

/* 3D Effects */

.swiper-3d.swiper-css-mode .swiper-wrapper {
	-webkit-perspective: 1200px;
	perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

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

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

/* CSS Mode */

.swiper-css-mode > .swiper-wrapper {
	overflow: auto;
	scrollbar-width: none; /* For Firefox */
	-ms-overflow-style: none; /* For Internet Explorer and Edge */
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
	display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
	scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
	scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
	scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
	content: "";
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-webkit-box-ordinal-group: 10000;
	-ms-flex-order: 9999;
	order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: center center;
	scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
	-webkit-margin-start: var(--swiper-centered-offset-before);
	margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
	height: 100%;
	min-height: 1px;
	width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
	-webkit-margin-before: var(--swiper-centered-offset-before);
	margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
	width: 100%;
	min-width: 1px;
	height: var(--swiper-centered-offset-after);
}

/* Slide styles start */

/* 3D Shadows */

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

.swiper-3d .swiper-slide-shadow {
	background: rgba(0, 0, 0, 0.15);
}

.swiper-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: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-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: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-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: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-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: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.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%;
	transform-origin: 50%;
	-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:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
	-webkit-animation: swiper-preloader-spin 1s infinite linear;
	animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
	--swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
	--swiper-preloader-color: #000;
}

/* Slide styles end */

:root {
	--swiper-navigation-size: 44px; /*
		--swiper-navigation-top-offset: 50%;
		--swiper-navigation-sides-offset: 10px;
		--swiper-navigation-color: var(--swiper-theme-color);
		*/
}

.swiper-button-prev,
.swiper-button-next {
	position: absolute;
	top: var(--swiper-navigation-top-offset, 50%);
	width: calc(var(--swiper-navigation-size) / 44 * 27);
	height: var(--swiper-navigation-size);
	margin-top: calc(0px - var(--swiper-navigation-size) / 2);
	z-index: 10;
	cursor: pointer;
	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: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
	opacity: 0;
	cursor: auto;
	pointer-events: none;
}

.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
	opacity: 0;
	cursor: auto;
	pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
	display: none !important;
}

.swiper-button-prev svg,
.swiper-button-next svg {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	-webkit-transform-origin: center;
	transform-origin: center;
}

.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
	left: var(--swiper-navigation-sides-offset, 10px);
	right: auto;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
	right: var(--swiper-navigation-sides-offset, 10px);
	left: auto;
}

.swiper-button-lock {
	display: none;
}

/* Navigation font start */

.swiper-button-prev:after,
.swiper-button-next:after {
	font-family: swiper-icons;
	font-size: var(--swiper-navigation-size);
	text-transform: none !important;
	letter-spacing: 0;
	font-variant: initial;
	line-height: 1;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
	content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
	right: var(--swiper-navigation-sides-offset, 10px);
	left: auto;
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
	content: "next";
}

/* Navigation font end */

@media (hover: hover) {

.gnavi__item:hover .gnavi__children {
	opacity: 1;
	visibility: visible;
}

.gnavi__item a:hover {
	opacity: 0.6;
}

.footer-navi__link:hover {
	opacity: 0.6;
}

.footer-navi__child__item a:hover {
	opacity: 0.6;
}

.footer-bottom__logo a:hover {
	opacity: 0.6;
}

.footer-bottom__info a:hover {
	opacity: 0.6;
}

.button-primary:hover {
	color: #231815;
	border-color: #231815;
}

.button-primary:hover::before {
	background: #231815;
}

.button-secondary:hover::before {
	-webkit-mask-image: url(../img/common/icon_arrow_white.svg);
	mask-image: url(../img/common/icon_arrow_white.svg);
}

.page-list__item a:hover {
	color: #231815;
}

.pagination .page-numbers.prev:hover,
.pagination .page-numbers.next:hover {
	opacity: 0.6;
}

.side-link__link:hover {
	background: #FEF6E3;
}

.image-mag a:hover {
	opacity: 0.6;
}

}

@media screen and (min-width: 768px) {

.text-pc-left { /* pc */
	text-align: left;
}

.text-pc-center { /* pc */
	text-align: center;
}

.text-pc-right { /* pc */
	text-align: right;
}

/* pc */

.mt-pc-0 {
	margin-top: 0px !important;
}

.mb-pc-0 {
	margin-bottom: 0px !important;
}

.mr-pc-0 {
	margin-right: 0px !important;
}

.ml-pc-0 {
	margin-left: 0px !important;
}

.mx-pc-0 {
	margin-left: 0px !important;
	margin-right: 0px !important;
}

.my-pc-0 {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

/* pc */

.mt-pc-5 {
	margin-top: 5px !important;
}

.mb-pc-5 {
	margin-bottom: 5px !important;
}

.mr-pc-5 {
	margin-right: 5px !important;
}

.ml-pc-5 {
	margin-left: 5px !important;
}

.mx-pc-5 {
	margin-left: 5px !important;
	margin-right: 5px !important;
}

.my-pc-5 {
	margin-top: 5px !important;
	margin-bottom: 5px !important;
}

/* pc */

.mt-pc-10 {
	margin-top: 10px !important;
}

.mb-pc-10 {
	margin-bottom: 10px !important;
}

.mr-pc-10 {
	margin-right: 10px !important;
}

.ml-pc-10 {
	margin-left: 10px !important;
}

.mx-pc-10 {
	margin-left: 10px !important;
	margin-right: 10px !important;
}

.my-pc-10 {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

/* pc */

.mt-pc-15 {
	margin-top: 15px !important;
}

.mb-pc-15 {
	margin-bottom: 15px !important;
}

.mr-pc-15 {
	margin-right: 15px !important;
}

.ml-pc-15 {
	margin-left: 15px !important;
}

.mx-pc-15 {
	margin-left: 15px !important;
	margin-right: 15px !important;
}

.my-pc-15 {
	margin-top: 15px !important;
	margin-bottom: 15px !important;
}

/* pc */

.mt-pc-20 {
	margin-top: 20px !important;
}

.mb-pc-20 {
	margin-bottom: 20px !important;
}

.mr-pc-20 {
	margin-right: 20px !important;
}

.ml-pc-20 {
	margin-left: 20px !important;
}

.mx-pc-20 {
	margin-left: 20px !important;
	margin-right: 20px !important;
}

.my-pc-20 {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}

/* pc */

.mt-pc-25 {
	margin-top: 25px !important;
}

.mb-pc-25 {
	margin-bottom: 25px !important;
}

.mr-pc-25 {
	margin-right: 25px !important;
}

.ml-pc-25 {
	margin-left: 25px !important;
}

.mx-pc-25 {
	margin-left: 25px !important;
	margin-right: 25px !important;
}

.my-pc-25 {
	margin-top: 25px !important;
	margin-bottom: 25px !important;
}

/* pc */

.mt-pc-30 {
	margin-top: 30px !important;
}

.mb-pc-30 {
	margin-bottom: 30px !important;
}

.mr-pc-30 {
	margin-right: 30px !important;
}

.ml-pc-30 {
	margin-left: 30px !important;
}

.mx-pc-30 {
	margin-left: 30px !important;
	margin-right: 30px !important;
}

.my-pc-30 {
	margin-top: 30px !important;
	margin-bottom: 30px !important;
}

/* pc */

.mt-pc-35 {
	margin-top: 35px !important;
}

.mb-pc-35 {
	margin-bottom: 35px !important;
}

.mr-pc-35 {
	margin-right: 35px !important;
}

.ml-pc-35 {
	margin-left: 35px !important;
}

.mx-pc-35 {
	margin-left: 35px !important;
	margin-right: 35px !important;
}

.my-pc-35 {
	margin-top: 35px !important;
	margin-bottom: 35px !important;
}

/* pc */

.mt-pc-40 {
	margin-top: 40px !important;
}

.mb-pc-40 {
	margin-bottom: 40px !important;
}

.mr-pc-40 {
	margin-right: 40px !important;
}

.ml-pc-40 {
	margin-left: 40px !important;
}

.mx-pc-40 {
	margin-left: 40px !important;
	margin-right: 40px !important;
}

.my-pc-40 {
	margin-top: 40px !important;
	margin-bottom: 40px !important;
}

/* pc */

.mt-pc-45 {
	margin-top: 45px !important;
}

.mb-pc-45 {
	margin-bottom: 45px !important;
}

.mr-pc-45 {
	margin-right: 45px !important;
}

.ml-pc-45 {
	margin-left: 45px !important;
}

.mx-pc-45 {
	margin-left: 45px !important;
	margin-right: 45px !important;
}

.my-pc-45 {
	margin-top: 45px !important;
	margin-bottom: 45px !important;
}

/* pc */

.mt-pc-50 {
	margin-top: 50px !important;
}

.mb-pc-50 {
	margin-bottom: 50px !important;
}

.mr-pc-50 {
	margin-right: 50px !important;
}

.ml-pc-50 {
	margin-left: 50px !important;
}

.mx-pc-50 {
	margin-left: 50px !important;
	margin-right: 50px !important;
}

.my-pc-50 {
	margin-top: 50px !important;
	margin-bottom: 50px !important;
}

/* pc */

.mt-pc-55 {
	margin-top: 55px !important;
}

.mb-pc-55 {
	margin-bottom: 55px !important;
}

.mr-pc-55 {
	margin-right: 55px !important;
}

.ml-pc-55 {
	margin-left: 55px !important;
}

.mx-pc-55 {
	margin-left: 55px !important;
	margin-right: 55px !important;
}

.my-pc-55 {
	margin-top: 55px !important;
	margin-bottom: 55px !important;
}

/* pc */

.mt-pc-60 {
	margin-top: 60px !important;
}

.mb-pc-60 {
	margin-bottom: 60px !important;
}

.mr-pc-60 {
	margin-right: 60px !important;
}

.ml-pc-60 {
	margin-left: 60px !important;
}

.mx-pc-60 {
	margin-left: 60px !important;
	margin-right: 60px !important;
}

.my-pc-60 {
	margin-top: 60px !important;
	margin-bottom: 60px !important;
}

/* pc */

.mt-pc-65 {
	margin-top: 65px !important;
}

.mb-pc-65 {
	margin-bottom: 65px !important;
}

.mr-pc-65 {
	margin-right: 65px !important;
}

.ml-pc-65 {
	margin-left: 65px !important;
}

.mx-pc-65 {
	margin-left: 65px !important;
	margin-right: 65px !important;
}

.my-pc-65 {
	margin-top: 65px !important;
	margin-bottom: 65px !important;
}

/* pc */

.mt-pc-70 {
	margin-top: 70px !important;
}

.mb-pc-70 {
	margin-bottom: 70px !important;
}

.mr-pc-70 {
	margin-right: 70px !important;
}

.ml-pc-70 {
	margin-left: 70px !important;
}

.mx-pc-70 {
	margin-left: 70px !important;
	margin-right: 70px !important;
}

.my-pc-70 {
	margin-top: 70px !important;
	margin-bottom: 70px !important;
}

/* pc */

.mt-pc-75 {
	margin-top: 75px !important;
}

.mb-pc-75 {
	margin-bottom: 75px !important;
}

.mr-pc-75 {
	margin-right: 75px !important;
}

.ml-pc-75 {
	margin-left: 75px !important;
}

.mx-pc-75 {
	margin-left: 75px !important;
	margin-right: 75px !important;
}

.my-pc-75 {
	margin-top: 75px !important;
	margin-bottom: 75px !important;
}

/* pc */

.mt-pc-80 {
	margin-top: 80px !important;
}

.mb-pc-80 {
	margin-bottom: 80px !important;
}

.mr-pc-80 {
	margin-right: 80px !important;
}

.ml-pc-80 {
	margin-left: 80px !important;
}

.mx-pc-80 {
	margin-left: 80px !important;
	margin-right: 80px !important;
}

.my-pc-80 {
	margin-top: 80px !important;
	margin-bottom: 80px !important;
}

/* pc */

.mt-pc-85 {
	margin-top: 85px !important;
}

.mb-pc-85 {
	margin-bottom: 85px !important;
}

.mr-pc-85 {
	margin-right: 85px !important;
}

.ml-pc-85 {
	margin-left: 85px !important;
}

.mx-pc-85 {
	margin-left: 85px !important;
	margin-right: 85px !important;
}

.my-pc-85 {
	margin-top: 85px !important;
	margin-bottom: 85px !important;
}

/* pc */

.mt-pc-90 {
	margin-top: 90px !important;
}

.mb-pc-90 {
	margin-bottom: 90px !important;
}

.mr-pc-90 {
	margin-right: 90px !important;
}

.ml-pc-90 {
	margin-left: 90px !important;
}

.mx-pc-90 {
	margin-left: 90px !important;
	margin-right: 90px !important;
}

.my-pc-90 {
	margin-top: 90px !important;
	margin-bottom: 90px !important;
}

/* pc */

.mt-pc-95 {
	margin-top: 95px !important;
}

.mb-pc-95 {
	margin-bottom: 95px !important;
}

.mr-pc-95 {
	margin-right: 95px !important;
}

.ml-pc-95 {
	margin-left: 95px !important;
}

.mx-pc-95 {
	margin-left: 95px !important;
	margin-right: 95px !important;
}

.my-pc-95 {
	margin-top: 95px !important;
	margin-bottom: 95px !important;
}

/* pc */

.mt-pc-100 {
	margin-top: 100px !important;
}

.mb-pc-100 {
	margin-bottom: 100px !important;
}

.mr-pc-100 {
	margin-right: 100px !important;
}

.ml-pc-100 {
	margin-left: 100px !important;
}

.mx-pc-100 {
	margin-left: 100px !important;
	margin-right: 100px !important;
}

.my-pc-100 {
	margin-top: 100px !important;
	margin-bottom: 100px !important;
}

/* pc */

.mt-pc-auto {
	margin-top: auto !important;
}

.mb-pc-auto {
	margin-bottom: auto !important;
}

.mr-pc-auto {
	margin-right: auto !important;
}

.ml-pc-auto {
	margin-left: auto !important;
}

.mx-pc-auto {
	margin-left: auto !important;
	margin-right: auto !important;
}

.my-pc-auto {
	margin-top: auto !important;
	margin-bottom: auto !important;
}

/* pc */

.gap-pc-0 {
	gap: 0px;
}

.gap-pc-x-0 {
	-webkit-column-gap: 0px;
	-moz-column-gap: 0px;
	column-gap: 0px;
}

.gap-pc-y-0 {
	row-gap: 0px;
}

/* pc */

.gap-pc-5 {
	gap: 5px;
}

.gap-pc-x-5 {
	-webkit-column-gap: 5px;
	-moz-column-gap: 5px;
	column-gap: 5px;
}

.gap-pc-y-5 {
	row-gap: 5px;
}

/* pc */

.gap-pc-10 {
	gap: 10px;
}

.gap-pc-x-10 {
	-webkit-column-gap: 10px;
	-moz-column-gap: 10px;
	column-gap: 10px;
}

.gap-pc-y-10 {
	row-gap: 10px;
}

/* pc */

.gap-pc-15 {
	gap: 15px;
}

.gap-pc-x-15 {
	-webkit-column-gap: 15px;
	-moz-column-gap: 15px;
	column-gap: 15px;
}

.gap-pc-y-15 {
	row-gap: 15px;
}

/* pc */

.gap-pc-20 {
	gap: 20px;
}

.gap-pc-x-20 {
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	column-gap: 20px;
}

.gap-pc-y-20 {
	row-gap: 20px;
}

/* pc */

.gap-pc-25 {
	gap: 25px;
}

.gap-pc-x-25 {
	-webkit-column-gap: 25px;
	-moz-column-gap: 25px;
	column-gap: 25px;
}

.gap-pc-y-25 {
	row-gap: 25px;
}

/* pc */

.gap-pc-30 {
	gap: 30px;
}

.gap-pc-x-30 {
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	column-gap: 30px;
}

.gap-pc-y-30 {
	row-gap: 30px;
}

/* pc */

.gap-pc-35 {
	gap: 35px;
}

.gap-pc-x-35 {
	-webkit-column-gap: 35px;
	-moz-column-gap: 35px;
	column-gap: 35px;
}

.gap-pc-y-35 {
	row-gap: 35px;
}

/* pc */

.gap-pc-40 {
	gap: 40px;
}

.gap-pc-x-40 {
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	column-gap: 40px;
}

.gap-pc-y-40 {
	row-gap: 40px;
}

/* pc */

.gap-pc-45 {
	gap: 45px;
}

.gap-pc-x-45 {
	-webkit-column-gap: 45px;
	-moz-column-gap: 45px;
	column-gap: 45px;
}

.gap-pc-y-45 {
	row-gap: 45px;
}

/* pc */

.gap-pc-50 {
	gap: 50px;
}

.gap-pc-x-50 {
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	column-gap: 50px;
}

.gap-pc-y-50 {
	row-gap: 50px;
}

/* pc */

.gap-pc-55 {
	gap: 55px;
}

.gap-pc-x-55 {
	-webkit-column-gap: 55px;
	-moz-column-gap: 55px;
	column-gap: 55px;
}

.gap-pc-y-55 {
	row-gap: 55px;
}

/* pc */

.gap-pc-60 {
	gap: 60px;
}

.gap-pc-x-60 {
	-webkit-column-gap: 60px;
	-moz-column-gap: 60px;
	column-gap: 60px;
}

.gap-pc-y-60 {
	row-gap: 60px;
}

/* pc */

.gap-pc-65 {
	gap: 65px;
}

.gap-pc-x-65 {
	-webkit-column-gap: 65px;
	-moz-column-gap: 65px;
	column-gap: 65px;
}

.gap-pc-y-65 {
	row-gap: 65px;
}

/* pc */

.gap-pc-70 {
	gap: 70px;
}

.gap-pc-x-70 {
	-webkit-column-gap: 70px;
	-moz-column-gap: 70px;
	column-gap: 70px;
}

.gap-pc-y-70 {
	row-gap: 70px;
}

/* pc */

.gap-pc-75 {
	gap: 75px;
}

.gap-pc-x-75 {
	-webkit-column-gap: 75px;
	-moz-column-gap: 75px;
	column-gap: 75px;
}

.gap-pc-y-75 {
	row-gap: 75px;
}

/* pc */

.gap-pc-80 {
	gap: 80px;
}

.gap-pc-x-80 {
	-webkit-column-gap: 80px;
	-moz-column-gap: 80px;
	column-gap: 80px;
}

.gap-pc-y-80 {
	row-gap: 80px;
}

/* pc */

.gap-pc-85 {
	gap: 85px;
}

.gap-pc-x-85 {
	-webkit-column-gap: 85px;
	-moz-column-gap: 85px;
	column-gap: 85px;
}

.gap-pc-y-85 {
	row-gap: 85px;
}

/* pc */

.gap-pc-90 {
	gap: 90px;
}

.gap-pc-x-90 {
	-webkit-column-gap: 90px;
	-moz-column-gap: 90px;
	column-gap: 90px;
}

.gap-pc-y-90 {
	row-gap: 90px;
}

/* pc */

.gap-pc-95 {
	gap: 95px;
}

.gap-pc-x-95 {
	-webkit-column-gap: 95px;
	-moz-column-gap: 95px;
	column-gap: 95px;
}

.gap-pc-y-95 {
	row-gap: 95px;
}

/* pc */

.gap-pc-100 {
	gap: 100px;
}

.gap-pc-x-100 {
	-webkit-column-gap: 100px;
	-moz-column-gap: 100px;
	column-gap: 100px;
}

.gap-pc-y-100 {
	row-gap: 100px;
}

.modal__container { /* pc */
	max-width: 1200px;
	width: 89.33333vw;
}

.modal__inner { /* pc */
	max-height: 90vh;
}

.modal__close { /* pc */
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.modal__close:hover {
	opacity: 0.6;
}

}

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

.l-header { /* 1000px以下 */
	position: fixed;
	padding: 1.5rem 2rem;
	margin-top: 0;
}

.l-header__inner { /* 1000px以下 */
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	padding-left: 0;
}

.l-navi { /* 1000px以下 */
	display: none;
	position: fixed;
	top: 7.6rem;
	left: 0;
	width: 100%;
	height: calc(100% - 7.6rem);
	background: #EFB718;
	padding: 2.5rem 3rem 5rem;
	color: #FFF;
	z-index: 100;
	overflow: auto;
}

.l-lg-wrapper { /* 1000px以下 */
	width: calc(100% - 60px);
}

.l-wrapper { /* 1000px以下 */
	width: calc(100% - 60px);
}

.header-logo { /* 1000px以下 */
	max-width: 230px;
}

.menu-btn { /* 1000px以下 */
	display: block;
	background: none;
	border: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	padding: 0;
	position: relative;
	z-index: 400;
	width: 48px;
	height: 48px;
	border: 2px solid #EFB718;
	border-radius: 50%;
}

.menu-btn__icon {
	position: relative;
	margin: 0 auto;
	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;
	gap: 5px;
}

.menu-btn__icon span {
	display: block;
	width: 5px;
	height: 5px;
	background: #EFB718;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.menu-btn__icon span:nth-child(1) {
	top: 0;
}

.menu-btn__icon span:nth-child(2) {
	top: 50%;
}

.menu-btn__icon span:nth-child(3) {
	top: 100%;
}

.menu-btn__text {
	margin-top: 6px;
	display: block;
}

.menu-btn.is-open .menu-btn__icon {
	display: block;
}

.menu-btn.is-open .menu-btn__icon span {
	position: absolute;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 20px;
	height: 3px;
}

.menu-btn.is-open .menu-btn__icon span:nth-child(1) {
	top: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
}

.menu-btn.is-open .menu-btn__icon span:nth-child(2) {
	opacity: 0;
}

.menu-btn.is-open .menu-btn__icon span:nth-child(3) {
	top: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	transform: translate(-50%, -50%) rotate(-45deg);
}

.gnavi { /* 1000px以下 */
	gap: 2.5em;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.gnavi__item a { /* 1000px以下 */
	color: #FFF;
}

.gnavi__link { /* 1000px以下 */
	padding: 0.5em 0.8em;
	font-size: 1.5rem;
}

.gnavi__link::before { /* 1000px以下 */
	top: 0.8em;
}

.gnavi__children { /* 1000px以下 */
	position: static;
	opacity: 1;
	visibility: visible;
	-webkit-transform: none;
	transform: none;
	white-space: normal;
	padding-left: 0.9em;
	background: none;
}

.page-head { /* 1000px以下 */
	padding-top: 110px;
}

}

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

.menu-btn { /* sp */
	width: 42px;
	height: 42px;
}

.menu-btn__icon { /* sp */
	gap: 4px;
}

.menu-btn__icon span { /* sp */
	width: 4px;
	height: 4px;
}

}

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

.text-sp-left { /* sp */
	text-align: left;
}

.text-sp-center { /* sp */
	text-align: center;
}

.text-sp-right { /* sp */
	text-align: right;
}

.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;
}

/* sp */

.mt-sp-0 {
	margin-top: 0px !important;
}

.mb-sp-0 {
	margin-bottom: 0px !important;
}

.mr-sp-0 {
	margin-right: 0px !important;
}

.ml-sp-0 {
	margin-left: 0px !important;
}

.mx-sp-0 {
	margin-left: 0px !important;
	margin-right: 0px !important;
}

.my-sp-0 {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

/* sp */

.mt-sp-5 {
	margin-top: 5px !important;
}

.mb-sp-5 {
	margin-bottom: 5px !important;
}

.mr-sp-5 {
	margin-right: 5px !important;
}

.ml-sp-5 {
	margin-left: 5px !important;
}

.mx-sp-5 {
	margin-left: 5px !important;
	margin-right: 5px !important;
}

.my-sp-5 {
	margin-top: 5px !important;
	margin-bottom: 5px !important;
}

/* sp */

.mt-sp-10 {
	margin-top: 10px !important;
}

.mb-sp-10 {
	margin-bottom: 10px !important;
}

.mr-sp-10 {
	margin-right: 10px !important;
}

.ml-sp-10 {
	margin-left: 10px !important;
}

.mx-sp-10 {
	margin-left: 10px !important;
	margin-right: 10px !important;
}

.my-sp-10 {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

/* sp */

.mt-sp-15 {
	margin-top: 15px !important;
}

.mb-sp-15 {
	margin-bottom: 15px !important;
}

.mr-sp-15 {
	margin-right: 15px !important;
}

.ml-sp-15 {
	margin-left: 15px !important;
}

.mx-sp-15 {
	margin-left: 15px !important;
	margin-right: 15px !important;
}

.my-sp-15 {
	margin-top: 15px !important;
	margin-bottom: 15px !important;
}

/* sp */

.mt-sp-20 {
	margin-top: 20px !important;
}

.mb-sp-20 {
	margin-bottom: 20px !important;
}

.mr-sp-20 {
	margin-right: 20px !important;
}

.ml-sp-20 {
	margin-left: 20px !important;
}

.mx-sp-20 {
	margin-left: 20px !important;
	margin-right: 20px !important;
}

.my-sp-20 {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}

/* sp */

.mt-sp-25 {
	margin-top: 25px !important;
}

.mb-sp-25 {
	margin-bottom: 25px !important;
}

.mr-sp-25 {
	margin-right: 25px !important;
}

.ml-sp-25 {
	margin-left: 25px !important;
}

.mx-sp-25 {
	margin-left: 25px !important;
	margin-right: 25px !important;
}

.my-sp-25 {
	margin-top: 25px !important;
	margin-bottom: 25px !important;
}

/* sp */

.mt-sp-30 {
	margin-top: 30px !important;
}

.mb-sp-30 {
	margin-bottom: 30px !important;
}

.mr-sp-30 {
	margin-right: 30px !important;
}

.ml-sp-30 {
	margin-left: 30px !important;
}

.mx-sp-30 {
	margin-left: 30px !important;
	margin-right: 30px !important;
}

.my-sp-30 {
	margin-top: 30px !important;
	margin-bottom: 30px !important;
}

/* sp */

.mt-sp-35 {
	margin-top: 35px !important;
}

.mb-sp-35 {
	margin-bottom: 35px !important;
}

.mr-sp-35 {
	margin-right: 35px !important;
}

.ml-sp-35 {
	margin-left: 35px !important;
}

.mx-sp-35 {
	margin-left: 35px !important;
	margin-right: 35px !important;
}

.my-sp-35 {
	margin-top: 35px !important;
	margin-bottom: 35px !important;
}

/* sp */

.mt-sp-40 {
	margin-top: 40px !important;
}

.mb-sp-40 {
	margin-bottom: 40px !important;
}

.mr-sp-40 {
	margin-right: 40px !important;
}

.ml-sp-40 {
	margin-left: 40px !important;
}

.mx-sp-40 {
	margin-left: 40px !important;
	margin-right: 40px !important;
}

.my-sp-40 {
	margin-top: 40px !important;
	margin-bottom: 40px !important;
}

/* sp */

.mt-sp-45 {
	margin-top: 45px !important;
}

.mb-sp-45 {
	margin-bottom: 45px !important;
}

.mr-sp-45 {
	margin-right: 45px !important;
}

.ml-sp-45 {
	margin-left: 45px !important;
}

.mx-sp-45 {
	margin-left: 45px !important;
	margin-right: 45px !important;
}

.my-sp-45 {
	margin-top: 45px !important;
	margin-bottom: 45px !important;
}

/* sp */

.mt-sp-50 {
	margin-top: 50px !important;
}

.mb-sp-50 {
	margin-bottom: 50px !important;
}

.mr-sp-50 {
	margin-right: 50px !important;
}

.ml-sp-50 {
	margin-left: 50px !important;
}

.mx-sp-50 {
	margin-left: 50px !important;
	margin-right: 50px !important;
}

.my-sp-50 {
	margin-top: 50px !important;
	margin-bottom: 50px !important;
}

/* sp */

.mt-sp-55 {
	margin-top: 55px !important;
}

.mb-sp-55 {
	margin-bottom: 55px !important;
}

.mr-sp-55 {
	margin-right: 55px !important;
}

.ml-sp-55 {
	margin-left: 55px !important;
}

.mx-sp-55 {
	margin-left: 55px !important;
	margin-right: 55px !important;
}

.my-sp-55 {
	margin-top: 55px !important;
	margin-bottom: 55px !important;
}

/* sp */

.mt-sp-60 {
	margin-top: 60px !important;
}

.mb-sp-60 {
	margin-bottom: 60px !important;
}

.mr-sp-60 {
	margin-right: 60px !important;
}

.ml-sp-60 {
	margin-left: 60px !important;
}

.mx-sp-60 {
	margin-left: 60px !important;
	margin-right: 60px !important;
}

.my-sp-60 {
	margin-top: 60px !important;
	margin-bottom: 60px !important;
}

/* sp */

.mt-sp-65 {
	margin-top: 65px !important;
}

.mb-sp-65 {
	margin-bottom: 65px !important;
}

.mr-sp-65 {
	margin-right: 65px !important;
}

.ml-sp-65 {
	margin-left: 65px !important;
}

.mx-sp-65 {
	margin-left: 65px !important;
	margin-right: 65px !important;
}

.my-sp-65 {
	margin-top: 65px !important;
	margin-bottom: 65px !important;
}

/* sp */

.mt-sp-70 {
	margin-top: 70px !important;
}

.mb-sp-70 {
	margin-bottom: 70px !important;
}

.mr-sp-70 {
	margin-right: 70px !important;
}

.ml-sp-70 {
	margin-left: 70px !important;
}

.mx-sp-70 {
	margin-left: 70px !important;
	margin-right: 70px !important;
}

.my-sp-70 {
	margin-top: 70px !important;
	margin-bottom: 70px !important;
}

/* sp */

.mt-sp-75 {
	margin-top: 75px !important;
}

.mb-sp-75 {
	margin-bottom: 75px !important;
}

.mr-sp-75 {
	margin-right: 75px !important;
}

.ml-sp-75 {
	margin-left: 75px !important;
}

.mx-sp-75 {
	margin-left: 75px !important;
	margin-right: 75px !important;
}

.my-sp-75 {
	margin-top: 75px !important;
	margin-bottom: 75px !important;
}

/* sp */

.mt-sp-80 {
	margin-top: 80px !important;
}

.mb-sp-80 {
	margin-bottom: 80px !important;
}

.mr-sp-80 {
	margin-right: 80px !important;
}

.ml-sp-80 {
	margin-left: 80px !important;
}

.mx-sp-80 {
	margin-left: 80px !important;
	margin-right: 80px !important;
}

.my-sp-80 {
	margin-top: 80px !important;
	margin-bottom: 80px !important;
}

/* sp */

.mt-sp-85 {
	margin-top: 85px !important;
}

.mb-sp-85 {
	margin-bottom: 85px !important;
}

.mr-sp-85 {
	margin-right: 85px !important;
}

.ml-sp-85 {
	margin-left: 85px !important;
}

.mx-sp-85 {
	margin-left: 85px !important;
	margin-right: 85px !important;
}

.my-sp-85 {
	margin-top: 85px !important;
	margin-bottom: 85px !important;
}

/* sp */

.mt-sp-90 {
	margin-top: 90px !important;
}

.mb-sp-90 {
	margin-bottom: 90px !important;
}

.mr-sp-90 {
	margin-right: 90px !important;
}

.ml-sp-90 {
	margin-left: 90px !important;
}

.mx-sp-90 {
	margin-left: 90px !important;
	margin-right: 90px !important;
}

.my-sp-90 {
	margin-top: 90px !important;
	margin-bottom: 90px !important;
}

/* sp */

.mt-sp-95 {
	margin-top: 95px !important;
}

.mb-sp-95 {
	margin-bottom: 95px !important;
}

.mr-sp-95 {
	margin-right: 95px !important;
}

.ml-sp-95 {
	margin-left: 95px !important;
}

.mx-sp-95 {
	margin-left: 95px !important;
	margin-right: 95px !important;
}

.my-sp-95 {
	margin-top: 95px !important;
	margin-bottom: 95px !important;
}

/* sp */

.mt-sp-100 {
	margin-top: 100px !important;
}

.mb-sp-100 {
	margin-bottom: 100px !important;
}

.mr-sp-100 {
	margin-right: 100px !important;
}

.ml-sp-100 {
	margin-left: 100px !important;
}

.mx-sp-100 {
	margin-left: 100px !important;
	margin-right: 100px !important;
}

.my-sp-100 {
	margin-top: 100px !important;
	margin-bottom: 100px !important;
}

/* sp */

.mt-sp-auto {
	margin-top: auto !important;
}

.mb-sp-auto {
	margin-bottom: auto !important;
}

.mr-sp-auto {
	margin-right: auto !important;
}

.ml-sp-auto {
	margin-left: auto !important;
}

.mx-sp-auto {
	margin-left: auto !important;
	margin-right: auto !important;
}

.my-sp-auto {
	margin-top: auto !important;
	margin-bottom: auto !important;
}

/* sp */

.p-sp-0 {
	padding: 0px !important;
}

.pt-sp-0 {
	padding-top: 0px !important;
}

.pb-sp-0 {
	padding-bottom: 0px !important;
}

.pr-sp-0 {
	padding-right: 0px !important;
}

.pl-sp-0 {
	padding-left: 0px !important;
}

.px-sp-0 {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

.py-sp-0 {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

/* sp */

.p-sp-5 {
	padding: 5px !important;
}

.pt-sp-5 {
	padding-top: 5px !important;
}

.pb-sp-5 {
	padding-bottom: 5px !important;
}

.pr-sp-5 {
	padding-right: 5px !important;
}

.pl-sp-5 {
	padding-left: 5px !important;
}

.px-sp-5 {
	padding-left: 5px !important;
	padding-right: 5px !important;
}

.py-sp-5 {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}

/* sp */

.p-sp-10 {
	padding: 10px !important;
}

.pt-sp-10 {
	padding-top: 10px !important;
}

.pb-sp-10 {
	padding-bottom: 10px !important;
}

.pr-sp-10 {
	padding-right: 10px !important;
}

.pl-sp-10 {
	padding-left: 10px !important;
}

.px-sp-10 {
	padding-left: 10px !important;
	padding-right: 10px !important;
}

.py-sp-10 {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}

/* sp */

.p-sp-15 {
	padding: 15px !important;
}

.pt-sp-15 {
	padding-top: 15px !important;
}

.pb-sp-15 {
	padding-bottom: 15px !important;
}

.pr-sp-15 {
	padding-right: 15px !important;
}

.pl-sp-15 {
	padding-left: 15px !important;
}

.px-sp-15 {
	padding-left: 15px !important;
	padding-right: 15px !important;
}

.py-sp-15 {
	padding-top: 15px !important;
	padding-bottom: 15px !important;
}

/* sp */

.p-sp-20 {
	padding: 20px !important;
}

.pt-sp-20 {
	padding-top: 20px !important;
}

.pb-sp-20 {
	padding-bottom: 20px !important;
}

.pr-sp-20 {
	padding-right: 20px !important;
}

.pl-sp-20 {
	padding-left: 20px !important;
}

.px-sp-20 {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.py-sp-20 {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}

/* sp */

.p-sp-25 {
	padding: 25px !important;
}

.pt-sp-25 {
	padding-top: 25px !important;
}

.pb-sp-25 {
	padding-bottom: 25px !important;
}

.pr-sp-25 {
	padding-right: 25px !important;
}

.pl-sp-25 {
	padding-left: 25px !important;
}

.px-sp-25 {
	padding-left: 25px !important;
	padding-right: 25px !important;
}

.py-sp-25 {
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}

/* sp */

.p-sp-30 {
	padding: 30px !important;
}

.pt-sp-30 {
	padding-top: 30px !important;
}

.pb-sp-30 {
	padding-bottom: 30px !important;
}

.pr-sp-30 {
	padding-right: 30px !important;
}

.pl-sp-30 {
	padding-left: 30px !important;
}

.px-sp-30 {
	padding-left: 30px !important;
	padding-right: 30px !important;
}

.py-sp-30 {
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}

/* sp */

.p-sp-35 {
	padding: 35px !important;
}

.pt-sp-35 {
	padding-top: 35px !important;
}

.pb-sp-35 {
	padding-bottom: 35px !important;
}

.pr-sp-35 {
	padding-right: 35px !important;
}

.pl-sp-35 {
	padding-left: 35px !important;
}

.px-sp-35 {
	padding-left: 35px !important;
	padding-right: 35px !important;
}

.py-sp-35 {
	padding-top: 35px !important;
	padding-bottom: 35px !important;
}

/* sp */

.p-sp-40 {
	padding: 40px !important;
}

.pt-sp-40 {
	padding-top: 40px !important;
}

.pb-sp-40 {
	padding-bottom: 40px !important;
}

.pr-sp-40 {
	padding-right: 40px !important;
}

.pl-sp-40 {
	padding-left: 40px !important;
}

.px-sp-40 {
	padding-left: 40px !important;
	padding-right: 40px !important;
}

.py-sp-40 {
	padding-top: 40px !important;
	padding-bottom: 40px !important;
}

/* sp */

.p-sp-45 {
	padding: 45px !important;
}

.pt-sp-45 {
	padding-top: 45px !important;
}

.pb-sp-45 {
	padding-bottom: 45px !important;
}

.pr-sp-45 {
	padding-right: 45px !important;
}

.pl-sp-45 {
	padding-left: 45px !important;
}

.px-sp-45 {
	padding-left: 45px !important;
	padding-right: 45px !important;
}

.py-sp-45 {
	padding-top: 45px !important;
	padding-bottom: 45px !important;
}

/* sp */

.p-sp-50 {
	padding: 50px !important;
}

.pt-sp-50 {
	padding-top: 50px !important;
}

.pb-sp-50 {
	padding-bottom: 50px !important;
}

.pr-sp-50 {
	padding-right: 50px !important;
}

.pl-sp-50 {
	padding-left: 50px !important;
}

.px-sp-50 {
	padding-left: 50px !important;
	padding-right: 50px !important;
}

.py-sp-50 {
	padding-top: 50px !important;
	padding-bottom: 50px !important;
}

/* sp */

.p-sp-55 {
	padding: 55px !important;
}

.pt-sp-55 {
	padding-top: 55px !important;
}

.pb-sp-55 {
	padding-bottom: 55px !important;
}

.pr-sp-55 {
	padding-right: 55px !important;
}

.pl-sp-55 {
	padding-left: 55px !important;
}

.px-sp-55 {
	padding-left: 55px !important;
	padding-right: 55px !important;
}

.py-sp-55 {
	padding-top: 55px !important;
	padding-bottom: 55px !important;
}

/* sp */

.p-sp-60 {
	padding: 60px !important;
}

.pt-sp-60 {
	padding-top: 60px !important;
}

.pb-sp-60 {
	padding-bottom: 60px !important;
}

.pr-sp-60 {
	padding-right: 60px !important;
}

.pl-sp-60 {
	padding-left: 60px !important;
}

.px-sp-60 {
	padding-left: 60px !important;
	padding-right: 60px !important;
}

.py-sp-60 {
	padding-top: 60px !important;
	padding-bottom: 60px !important;
}

/* sp */

.p-sp-65 {
	padding: 65px !important;
}

.pt-sp-65 {
	padding-top: 65px !important;
}

.pb-sp-65 {
	padding-bottom: 65px !important;
}

.pr-sp-65 {
	padding-right: 65px !important;
}

.pl-sp-65 {
	padding-left: 65px !important;
}

.px-sp-65 {
	padding-left: 65px !important;
	padding-right: 65px !important;
}

.py-sp-65 {
	padding-top: 65px !important;
	padding-bottom: 65px !important;
}

/* sp */

.p-sp-70 {
	padding: 70px !important;
}

.pt-sp-70 {
	padding-top: 70px !important;
}

.pb-sp-70 {
	padding-bottom: 70px !important;
}

.pr-sp-70 {
	padding-right: 70px !important;
}

.pl-sp-70 {
	padding-left: 70px !important;
}

.px-sp-70 {
	padding-left: 70px !important;
	padding-right: 70px !important;
}

.py-sp-70 {
	padding-top: 70px !important;
	padding-bottom: 70px !important;
}

/* sp */

.p-sp-75 {
	padding: 75px !important;
}

.pt-sp-75 {
	padding-top: 75px !important;
}

.pb-sp-75 {
	padding-bottom: 75px !important;
}

.pr-sp-75 {
	padding-right: 75px !important;
}

.pl-sp-75 {
	padding-left: 75px !important;
}

.px-sp-75 {
	padding-left: 75px !important;
	padding-right: 75px !important;
}

.py-sp-75 {
	padding-top: 75px !important;
	padding-bottom: 75px !important;
}

/* sp */

.p-sp-80 {
	padding: 80px !important;
}

.pt-sp-80 {
	padding-top: 80px !important;
}

.pb-sp-80 {
	padding-bottom: 80px !important;
}

.pr-sp-80 {
	padding-right: 80px !important;
}

.pl-sp-80 {
	padding-left: 80px !important;
}

.px-sp-80 {
	padding-left: 80px !important;
	padding-right: 80px !important;
}

.py-sp-80 {
	padding-top: 80px !important;
	padding-bottom: 80px !important;
}

/* sp */

.p-sp-85 {
	padding: 85px !important;
}

.pt-sp-85 {
	padding-top: 85px !important;
}

.pb-sp-85 {
	padding-bottom: 85px !important;
}

.pr-sp-85 {
	padding-right: 85px !important;
}

.pl-sp-85 {
	padding-left: 85px !important;
}

.px-sp-85 {
	padding-left: 85px !important;
	padding-right: 85px !important;
}

.py-sp-85 {
	padding-top: 85px !important;
	padding-bottom: 85px !important;
}

/* sp */

.p-sp-90 {
	padding: 90px !important;
}

.pt-sp-90 {
	padding-top: 90px !important;
}

.pb-sp-90 {
	padding-bottom: 90px !important;
}

.pr-sp-90 {
	padding-right: 90px !important;
}

.pl-sp-90 {
	padding-left: 90px !important;
}

.px-sp-90 {
	padding-left: 90px !important;
	padding-right: 90px !important;
}

.py-sp-90 {
	padding-top: 90px !important;
	padding-bottom: 90px !important;
}

/* sp */

.p-sp-95 {
	padding: 95px !important;
}

.pt-sp-95 {
	padding-top: 95px !important;
}

.pb-sp-95 {
	padding-bottom: 95px !important;
}

.pr-sp-95 {
	padding-right: 95px !important;
}

.pl-sp-95 {
	padding-left: 95px !important;
}

.px-sp-95 {
	padding-left: 95px !important;
	padding-right: 95px !important;
}

.py-sp-95 {
	padding-top: 95px !important;
	padding-bottom: 95px !important;
}

/* sp */

.p-sp-100 {
	padding: 100px !important;
}

.pt-sp-100 {
	padding-top: 100px !important;
}

.pb-sp-100 {
	padding-bottom: 100px !important;
}

.pr-sp-100 {
	padding-right: 100px !important;
}

.pl-sp-100 {
	padding-left: 100px !important;
}

.px-sp-100 {
	padding-left: 100px !important;
	padding-right: 100px !important;
}

.py-sp-100 {
	padding-top: 100px !important;
	padding-bottom: 100px !important;
}

/* sp */

.gap-sp-0 {
	gap: 0px;
}

.gap-sp-x-0 {
	-webkit-column-gap: 0px;
	-moz-column-gap: 0px;
	column-gap: 0px;
}

.gap-sp-y-0 {
	row-gap: 0px;
}

/* sp */

.gap-sp-5 {
	gap: 5px;
}

.gap-sp-x-5 {
	-webkit-column-gap: 5px;
	-moz-column-gap: 5px;
	column-gap: 5px;
}

.gap-sp-y-5 {
	row-gap: 5px;
}

/* sp */

.gap-sp-10 {
	gap: 10px;
}

.gap-sp-x-10 {
	-webkit-column-gap: 10px;
	-moz-column-gap: 10px;
	column-gap: 10px;
}

.gap-sp-y-10 {
	row-gap: 10px;
}

/* sp */

.gap-sp-15 {
	gap: 15px;
}

.gap-sp-x-15 {
	-webkit-column-gap: 15px;
	-moz-column-gap: 15px;
	column-gap: 15px;
}

.gap-sp-y-15 {
	row-gap: 15px;
}

/* sp */

.gap-sp-20 {
	gap: 20px;
}

.gap-sp-x-20 {
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	column-gap: 20px;
}

.gap-sp-y-20 {
	row-gap: 20px;
}

/* sp */

.gap-sp-25 {
	gap: 25px;
}

.gap-sp-x-25 {
	-webkit-column-gap: 25px;
	-moz-column-gap: 25px;
	column-gap: 25px;
}

.gap-sp-y-25 {
	row-gap: 25px;
}

/* sp */

.gap-sp-30 {
	gap: 30px;
}

.gap-sp-x-30 {
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	column-gap: 30px;
}

.gap-sp-y-30 {
	row-gap: 30px;
}

/* sp */

.gap-sp-35 {
	gap: 35px;
}

.gap-sp-x-35 {
	-webkit-column-gap: 35px;
	-moz-column-gap: 35px;
	column-gap: 35px;
}

.gap-sp-y-35 {
	row-gap: 35px;
}

/* sp */

.gap-sp-40 {
	gap: 40px;
}

.gap-sp-x-40 {
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	column-gap: 40px;
}

.gap-sp-y-40 {
	row-gap: 40px;
}

/* sp */

.gap-sp-45 {
	gap: 45px;
}

.gap-sp-x-45 {
	-webkit-column-gap: 45px;
	-moz-column-gap: 45px;
	column-gap: 45px;
}

.gap-sp-y-45 {
	row-gap: 45px;
}

/* sp */

.gap-sp-50 {
	gap: 50px;
}

.gap-sp-x-50 {
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	column-gap: 50px;
}

.gap-sp-y-50 {
	row-gap: 50px;
}

/* sp */

.gap-sp-55 {
	gap: 55px;
}

.gap-sp-x-55 {
	-webkit-column-gap: 55px;
	-moz-column-gap: 55px;
	column-gap: 55px;
}

.gap-sp-y-55 {
	row-gap: 55px;
}

/* sp */

.gap-sp-60 {
	gap: 60px;
}

.gap-sp-x-60 {
	-webkit-column-gap: 60px;
	-moz-column-gap: 60px;
	column-gap: 60px;
}

.gap-sp-y-60 {
	row-gap: 60px;
}

/* sp */

.gap-sp-65 {
	gap: 65px;
}

.gap-sp-x-65 {
	-webkit-column-gap: 65px;
	-moz-column-gap: 65px;
	column-gap: 65px;
}

.gap-sp-y-65 {
	row-gap: 65px;
}

/* sp */

.gap-sp-70 {
	gap: 70px;
}

.gap-sp-x-70 {
	-webkit-column-gap: 70px;
	-moz-column-gap: 70px;
	column-gap: 70px;
}

.gap-sp-y-70 {
	row-gap: 70px;
}

/* sp */

.gap-sp-75 {
	gap: 75px;
}

.gap-sp-x-75 {
	-webkit-column-gap: 75px;
	-moz-column-gap: 75px;
	column-gap: 75px;
}

.gap-sp-y-75 {
	row-gap: 75px;
}

/* sp */

.gap-sp-80 {
	gap: 80px;
}

.gap-sp-x-80 {
	-webkit-column-gap: 80px;
	-moz-column-gap: 80px;
	column-gap: 80px;
}

.gap-sp-y-80 {
	row-gap: 80px;
}

/* sp */

.gap-sp-85 {
	gap: 85px;
}

.gap-sp-x-85 {
	-webkit-column-gap: 85px;
	-moz-column-gap: 85px;
	column-gap: 85px;
}

.gap-sp-y-85 {
	row-gap: 85px;
}

/* sp */

.gap-sp-90 {
	gap: 90px;
}

.gap-sp-x-90 {
	-webkit-column-gap: 90px;
	-moz-column-gap: 90px;
	column-gap: 90px;
}

.gap-sp-y-90 {
	row-gap: 90px;
}

/* sp */

.gap-sp-95 {
	gap: 95px;
}

.gap-sp-x-95 {
	-webkit-column-gap: 95px;
	-moz-column-gap: 95px;
	column-gap: 95px;
}

.gap-sp-y-95 {
	row-gap: 95px;
}

/* sp */

.gap-sp-100 {
	gap: 100px;
}

.gap-sp-x-100 {
	-webkit-column-gap: 100px;
	-moz-column-gap: 100px;
	column-gap: 100px;
}

.gap-sp-y-100 {
	row-gap: 100px;
}

/* sp */

.sp-grid-1col {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
}

.sp-grid-2col {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.sp-grid-3col {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.sp-grid-4col {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.--sp-grid-2col { /* sp */
	grid-template-columns: repeat(2, 1fr);
}

.--sp-grid-1col { /* sp */
	grid-template-columns: repeat(1, 1fr);
}

.l-header { /* sp */
	padding: 1rem 1.5rem;
}

.l-footer { /* sp */
	margin-top: 90px;
}

.l-footer__inner { /* sp */
	width: 86%;
}

.l-footer__inner::before { /* sp */
	top: -12rem;
	left: -5%;
	width: 98px;
}

.l-footer__inner::after { /* sp */
	top: -11rem;
	right: -5%;
	width: 94px;
}

.l-navi { /* sp */
	top: 6.6rem;
	height: calc(100% - 6.6rem);
}

.l-page { /* sp */
	padding-top: 40px;
	padding-bottom: 40px;
}

.l-lg-wrapper { /* sp */
	width: 92%;
}

.l-wrapper { /* sp */
	width: 90%;
}

.l-2col { /* sp */
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 50px;
}

.l-2col__side { /* sp */
	width: 100%;
	position: static;
}

.footer-navi-wrap { /* sp */
	grid-template-columns: repeat(2, 1fr);
	gap: 0 2.1%;
}

.footer-navi__link { /* sp */
	font-size: 1.5rem;
}

.footer-navi__child__item a { /* sp */
	font-size: 1.3rem;
}

.footer-bottom { /* sp */
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	text-align: center;
}

.footer-bottom__info { /* sp */
	padding-right: 0;
	margin-bottom: 0;
}

.footer-bottom__copyright { /* sp */
	font-size: 1rem;
	padding-right: 0;
	margin-bottom: 0;
}

.text-base { /* sp */
	font-size: 1.4rem;
}

.page-head { /* sp */
	padding: 90px 0 30px;
}

.page-head::before { /* sp */
	width: 6px;
	height: 40px;
}

.page-head__inner { /* sp */
	gap: 30px;
	-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;
}

.page-head__heading { /* sp */
	font-size: 1.6rem;
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: lr-tb;
	writing-mode: horizontal-tb;
	padding-left: 50px;
	padding-top: 0 !important;
}

.page-head__heading::before { /* sp */
	top: 0.5em !important;
	left: 0;
	-webkit-transform: none;
	transform: none;
	width: 40px;
	height: 2px;
}

.page-head__title { /* sp */
	display: block;
}

.page-head__title__en { /* sp */
	font-size: 3.655rem;
}

.page-head__title__sub { /* sp */
	margin-top: 10px;
	margin-left: 0;
	font-size: 2rem;
}

.page-list-wrap { /* sp */
	margin-bottom: 30px;
}

.page-list { /* sp */
	padding-top: 20px;
	gap: 15px 10px;
}

.page-list__item--equal { /* sp */
	-webkit-box-flex: initial;
	-ms-flex: initial;
	flex: initial;
}

.page-list__item a { /* sp */
	font-size: 1.4rem;
	padding: 0 10px 20px;
}

.pagination { /* sp */
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 10px 5px;
	margin-top: 40px;
}

}

@-webkit-keyframes car {

0% {
	left: calc(50% - 50vw);
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

80% {
	left: 100vw;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

100% {
	left: 100vw;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

}

@keyframes car {

0% {
	left: calc(50% - 50vw);
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

80% {
	left: 100vw;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

100% {
	left: 100vw;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

}

@-webkit-keyframes fuwafuwa {

0% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

50% {
	-webkit-transform: translateY(-20px);
	transform: translateY(-20px);
}

100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@keyframes fuwafuwa {

0% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

50% {
	-webkit-transform: translateY(-20px);
	transform: translateY(-20px);
}

100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@-webkit-keyframes mmfadeIn {

from {
	opacity: 0;
}

to {
	opacity: 1;
}

}

@keyframes mmfadeIn {

from {
	opacity: 0;
}

to {
	opacity: 1;
}

}

@-webkit-keyframes mmfadeOut {

from {
	opacity: 1;
}

to {
	opacity: 0;
}

}

@keyframes mmfadeOut {

from {
	opacity: 1;
}

to {
	opacity: 0;
}

}

@-webkit-keyframes mmslideIn {

from {
	-webkit-transform: translateY(15%);
	transform: translateY(15%);
}

to {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@keyframes mmslideIn {

from {
	-webkit-transform: translateY(15%);
	transform: translateY(15%);
}

to {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@-webkit-keyframes mmslideOut {

from {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

to {
	-webkit-transform: translateY(-10%);
	transform: translateY(-10%);
}

}

@keyframes mmslideOut {

from {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

to {
	-webkit-transform: translateY(-10%);
	transform: translateY(-10%);
}

}

@-webkit-keyframes swiper-preloader-spin {

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

100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}

}

@keyframes swiper-preloader-spin {

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

100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}

}

