@charset "UTF-8";

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


/* common
-------------------------------------------------*/
:root {
  font-size: 100px;
}
@media screen and (max-width: 1366px) and (min-width: 751px) {
:root {
    font-size: 7.320644216vw;
}
}
@media screen and (max-width: 750px) {
:root {
    font-size: 26.66666666666vw;
}
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
dl,
dt,
dd,
table,
tr,
th,
td,
form,
figure,
picture {
	font-size: inherit;
	margin: 0;
	padding: 0;
}
a {
	color: inherit;
	text-decoration: none;
    outline: none;
}
summary {
	display: block;
}
table {
	border-collapse: collapse;
	empty-cells: show;
}
th,
td {
	text-align: left;
	vertical-align: top;
}
ul li {
	list-style: none;
}
address {
	font-style: normal;
}
figure,
picture {
	display: block;
}
img {
	vertical-align: top;
    width: 100%;
    max-width: 100%;
	height: auto;
}
input,
textarea,
select {
	color: inherit;
	font-family: inherit;
	-webkit-appearance: none;
	appearance: none;
}
textarea {
	form-sizing: content;
}
button {
	color: inherit;
	font-family: inherit;
}

input, select {
    vertical-align: middle;
}


/* module
------------------------------------------------- */
.pcon { display: block; }
.spon { display: none; }
@media screen and (max-width:750px){
.pcon { display: none; }
.spon { display: block; }
}


/* a
------------------------------------------------- */
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
	text-decoration: none;
	outline: none;
    color: #1A1A1A;
}
@media screen and (min-width:751px){
a {
    transition: 0.4s;
}
a.al:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}
.telLink {
	pointer-events: none;
}
}
@media screen and (max-width:750px){
a {
    -webkit-tap-highlight-color: transparent;
}
}


/* html
------------------------------------------------- */
html {
    font-size: 0.16rem;
    overflow-x: hidden;
    scroll-behavior: smooth;
    scrollbar-gutter: stable;
}


/* body
------------------------------------------------- */
body {
    min-height: 100vh;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	font-size: 0.16rem;
	line-height: 1.875;
    letter-spacing: normal;
	color: #1A1A1A;
	-webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
    position: relative;
}
.eng {
    font-family: "Work Sans", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
}
@media screen and (max-width:750px){
body::before {
    background-color: #fff;
}
}


/* layout
------------------------------------------------- */
.inner {
    max-width: 11rem;
    margin: 0 auto;
    position: relative;
}
.d-flex {
    display: flex;
}
.f-wrap {
    flex-wrap: wrap;
}
.f-rev {
    flex-direction: row-reverse;
}
.just-center {
    justify-content: center;
}
.just-between {
    justify-content: space-between;
}
.just-end {
    justify-content: flex-end;
}
.align-center {
    align-items: center;
}
.align-start {
    align-items: flex-start;
}
.align-end {
    align-items: flex-end;
}
@media screen and (max-width:750px){
.inner {
    width: 90%;
}
.d-flex {
    display: block;
}
}


/* header
------------------------------------------------- */
#header {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 15;
}
#header .logo {
    width: 1.8864rem;
    position: absolute;
    left: 0.34rem;
    top: 0.28rem;
}
#header .logo a {
    display: block;
}
@media screen and (max-width:750px){
#header .logo {
    width: 0.8581rem;
    left: 0.16rem;
    top: 0.11rem;
}
}

/* snav
------------------------------------------------- */
#snav {
    position: fixed;
    right: 0;
    top: 0;
    z-index: 80;
}
#snav a {
    display: block;
    width: 1.04rem;
    height: 1.04rem;
    border-radius: 0 0 0 1.04rem;
    text-align: center;
    padding: 0.22rem 0 0 0.15rem;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
}
#snav a::before,
#snav a::after {
    content: '';
    width: 100%;
    height: 100%;
    background: url("../img/common/snav_bg.png") left bottom no-repeat;
    background-size: cover;
    position: absolute;
    right: 0;
    top: 0;
    mix-blend-mode: overlay;
    opacity: 0.28;
    z-index: 2;
}
#snav a::after {
    width: 200%;
    height: 200%;
    background: #FF7F00;
    mix-blend-mode: normal;
    border-radius: 50%;
    right: -100%;
    top: -100%;
    opacity: 1;
    z-index: 1;
    transition: 0.4s;
}
#snav a span {
    display: block;
    font-size: 0.15rem;
    font-weight: 900;
    color: #fff;
    line-height: 1.2;
    position: relative;
    z-index: 3;
}
#snav a span b {
    display: block;
    font-size: 0.18rem;
    font-weight: 700;
}
@media screen and (min-width:751px){
#snav a:hover::after {
    background: #004BDE;
}
}
@media screen and (max-width:750px){
#snav a {
    width: 0.92rem;
    height: 0.92rem;
    border-radius: 0 0 0 0.92rem;
    padding: 0.18rem 0 0 0.15rem;
}
#snav a span {
    font-size: 0.13rem;
    line-height: 1.2;
}
#snav a span b {
    font-size: 0.15rem;
}
}


/* navtoggle
------------------------------------------------- */
.navtoggle {
    width: 1.44rem;
    height: 0.4rem;
    position: fixed;
    right: 1.17rem;
    top: 0.21rem;
    cursor: pointer;
    z-index: 80;
    transition: 0.3s;
}
.navtoggle::before {
    content: 'MENU';
    width: 100%;
    font-size: 0.12rem;
    font-weight: 500;
    line-height: 0.4rem;
    letter-spacing: 0.08em;
    color: #1A1A1A;
    position: absolute;
    left: 0;
    top: 0;
    transition: 0.3s;
}
.navtoggle div {
    width: 1rem;
    height: 0.1rem;
    margin: 0.15rem 0 0 0.44rem;
    position: relative;
}
.navtoggle span {
    display: block;
    width: 100%;
    height: 0.03rem;
    background: linear-gradient(90deg, #004BDE, #CA60CB, #FFBB00);
    position: absolute;
    right: 0;
    top: 0;
    transition: 0.3s ease-in-out;
}
.navtoggle span:nth-child(2) {
    top: 0.07rem;
}
@media screen and (min-width:751px){
.navtoggle:hover span {
    width: 80%;
    right: 10%;
}
}
@media screen and (max-width:750px){
.navtoggle {
    width: 0.9rem;
    height: 0.3rem;
    right: 0.98rem;
    top: 0.18rem;
}
.navtoggle::before {
    line-height: 0.3rem;
}
.navtoggle div {
    width: 0.4521rem;
    margin: 0.11rem 0 0 0.44rem;
    position: relative;
}
.navtoggle span:nth-child(2) {
    top: 0.07rem;
}
}


/* gnav
------------------------------------------------- */
#gnav {
    width: 5.4rem;
    height: 8.25rem;
    max-height: 100vh;
    position: fixed;
    right: 0;
    top: 0;
    padding: 0.86rem 0.75rem 0;
    z-index: 96;
    overflow-x: hidden;
    overflow-y: auto;
    visibility: hidden;
    clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
    transition: clip-path .75s cubic-bezier(0.68, 0.04, 0.49, 0.94),visibility 0s .75s ease,-webkit-clip-path .75s cubic-bezier(0.68, 0.04, 0.49, 0.94);
    box-sizing: border-box;
}
body.nav-active #gnav {
    visibility: visible;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    transition: clip-path .75s cubic-bezier(0.68, 0.04, 0.49, 0.94),visibility 0s ease,-webkit-clip-path .75s cubic-bezier(0.68, 0.04, 0.49, 0.94);
}
#gnav::after {
    content: '';
    width: 5.2rem;
    height: 8.05rem;
    background-color: #F4F4F4;
    border-radius: 0.17rem;
    box-shadow: 0 0 0.06rem 0 rgba(0,0,0,0.16);
    position: absolute;
    right: 0.1rem;
    top: 0.1rem;
    z-index: 1;
}
#gnav .home {
    width: 0.95rem;
    height: 0.37rem;
    position: absolute;
    left: 0.75rem;
    top: 0.29rem;
    z-index: 2;
    opacity: 0;
}
#gnav .home a {
    width: 100%;
    height: 100%;
    background-color: #004BDE;
    border-radius: 0.15rem;
    font-size: 0.14rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: #fff;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
#gnav ul {
    background-color: #fff;
    border-radius: 0.15rem;
    position: relative;
    z-index: 2;
    opacity: 0;
}
#gnav ul li a {
    width: 100%;
    height: 0.57rem;
    border-bottom: 0.01rem dashed rgba(159,159,159,0.3);
    font-size: 0.18rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    padding-left: 0.3rem;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    position: relative;
}
#gnav ul li:last-child a {
    border-bottom: none;
}
#gnav ul li a span {
    display: inline-block;
    width: 0.28rem;
    height: 0.28rem;
    background-color: #D5D5D5;
    border-radius: 50%;
    position: absolute;
    right: 0.14rem;
    top: 50%;
    margin-top: -0.14rem;
    overflow: hidden;
    transition: 0.4s;
}
#gnav ul li a span::before,
#gnav ul li a span::after {
    content: '';
    width: 0.09rem;
    height: 0.08rem;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228.829%22%20height%3D%227.876%22%20viewBox%3D%220%200%208.829%207.876%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_62%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2062%22%20transform%3D%22translate(-726.171%20-2415)%22%3E%20%3Cline%20id%3D%22%E7%B7%9A_37%22%20data-name%3D%22%E7%B7%9A%2037%22%20y1%3D%227%22%20x2%3D%228%22%20transform%3D%22translate(726.5%202415.5)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_115%22%20data-name%3D%22%E3%83%91%E3%82%B9%20115%22%20d%3D%22M734.5%2C2420.5v-5h-5%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E') right top no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -0.04rem 0 0 -0.045rem;
    z-index: 2;
}
#gnav ul li a span::after {
    width: 0;
    height: 0;
    background: #004BDE;
    border-radius: 50%;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    margin: 0;
    z-index: 1;
    transition: 0.7s;
}
#gnav .entry {
    width: 100%;
    height: 1.1rem;
    margin-top: 0.24rem;
    box-sizing: border-box;
    position: relative;
    z-index: 2;
    opacity: 0;
}
#gnav .entry a {
    width: 100%;
    height: 100%;
    background-color: #000;
    border-radius: 0.15rem;
    color: #fff;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
}
#gnav .entry a::before,
#gnav .entry a::after {
    content: '';
    width: 100%;
    height: 100%;
    background: url("../img/common/gnav_bg.png") center center no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.45;
    mix-blend-mode: overlay;
    z-index: 2;
}
#gnav .entry a::after {
    width: 200%;
    height: 100%;
    background: linear-gradient(270deg, #004BDE, #CA60CB, #FFBB00, #CA60CB, #004BDE);
    left: auto;
    right: 0;
    opacity: 1;
    mix-blend-mode: normal;
    transition: 0.4s;
    z-index: 1;
}
#gnav .entry a span {
    display: block;
    font-size: 0.18rem;
    font-weight: 400;
    line-height: 1.3;
    padding-bottom: 0.05rem;
    position: relative;
    z-index: 3;
}
#gnav .entry a b {
    display: block;
    font-size: 0.45rem;
    font-weight: 300;
    line-height: 1.1;
}
body.nav-active #gnav .home {
    animation: fadeInRight 1s ease 0.5s 1 forwards;
}
body.nav-active #gnav ul {
    animation: fadeInRight 1s ease 0.9s 1 forwards;
}
body.nav-active #gnav .entry {
    animation: fadeInRight 1s ease 1.3s 1 forwards;
}
#gnav .navtoggle {
    position: absolute;
    right: 0.2rem;
    top: 0.2rem;
}
#gnav .navtoggle::before {
    content: 'CLOSE';
}
#gnav .navtoggle span {
    top: 0.05rem;
}
#gnav .navtoggle span:nth-child(1) {
    background: linear-gradient(270deg, #00C9FF, #CA60CB, #FFBB00);
	transform: rotate(10deg);
}
#gnav .navtoggle span:nth-child(2) {
    background: linear-gradient(90deg, #00C9FF, #CA60CB, #FFBB00);
	transform: rotate(-10deg);
}
.overlay {
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #004BDE, #CA60CB, #FFBB00);
    position: fixed;
    left: 0;
    top: 0;
    opacity: 0;
    z-index: -1;
    transition: 1s;
}
body.nav-active .overlay {
    opacity: 0.3;
    z-index: 90;
}
@media screen and (min-width:751px){
#gnav .home a:hover {
    background-color: #1DC6FE;
}
#gnav ul li a:hover span::before {
    animation: move-arrow 1.3s infinite;
}
#gnav ul li a:hover span::after {
    width: 150%;
    height: 150%;
}
#gnav .entry a:hover::after {
    right: -100%;
}
}
@media screen and (max-width:750px){
#gnav {
    width: 100%;
    height: 7.3rem;
    max-height: 100svh;
    padding: 0.78rem 0.3rem 0;
}
#gnav::after {
    width: calc(100vw - 0.2rem);
    height: 7.1rem;
}
#gnav .home {
    width: 1rem;
    height: 0.37rem;
    left: 0.3rem;
    top: 0.25rem;
}
#gnav .home a {
    font-size: 0.12rem;
}
#gnav ul li a {
    height: 0.5rem;
    font-size: 0.15rem;
    padding-left: 0.15rem;
}
#gnav ul li a span {
    background-color: #004BDE;
}
#gnav .entry {
    height: 1rem;
    margin-top: 0.2rem;
}
#gnav .entry a span {
    font-size: 0.16rem;
}
#gnav .entry a b {
    font-size: 0.4rem;
}
#gnav .navtoggle {
    width: 1.2rem;
    right: 0.3rem;
    top: 0.23rem;
}
#gnav .navtoggle div {
    width: 0.7521rem;
}
#gnav .navtoggle span {
    top: 0.04rem;
}
.overlay {
    background: rgba(0,0,0,0.5);
}
}


/* headline
------------------------------------------------- */
.headline1 {
    font-size: 0.4rem;
    font-weight: 700;
    line-height: 2.85;
    letter-spacing: 0.059em;
    margin-bottom: 0.1rem;
    position: relative;
}
.headline1::before {
    content: '';
    width: 100%;
    height: 0.01rem;
    background: linear-gradient(90deg, #004BDE, #CA60CB, #FFBB00);
    position: absolute;
    left: 0;
    top: 0;
}
.headline1 span {
    font-size: 0.24rem;
    font-weight: 500;
    padding-left: 0.2rem;
}
.headline2 {
    font-size: 0.24rem;
    font-weight: 500;
    line-height: 1.45;
    padding-bottom: 0.48rem;
    position: relative;
}
.headline2::before {
    content: '';
    width: 0.01rem;
    height: 0.21rem;
    background-color: #004BDE;
    position: absolute;
    left: 0;
    bottom: 0.15rem;
}
.headline3 span {
    font-size: 5.49rem;
    font-weight: 300;
    line-height: 1.17;
    color: #fff;
    position: absolute;
    left: -2.46rem;
    top: -2.67rem;
    z-index: 1;
}
.headline3 b {
    font-size: 0.84rem;
    font-weight: 100;
    line-height: 1.15;
    letter-spacing: -0.05em;
    color: #004BDE;
    position: relative;
    z-index: 2;
}
.headline4 {
    font-size: 0.26rem;
    font-weight: 400;
    line-height: 1.45;
    text-align: center;
}
.headline4 span {
    display: inline-block;
    background: linear-gradient(90deg, #004BDE, #CA60CB, #FFBB00);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 1rem;
    font-weight: 200;
    line-height: 1.1;
    margin-top: 0.22rem;
    position: relative;
}
.headline4 span::before {
    content: '';
    width: 0.01rem;
    height: 0.21rem;
    background-color: #1A1A1A;
    position: absolute;
    left: 50%;
    top: -0.15rem;
}
@media screen and (max-width:750px){
.headline1 {
    font-size: 0.28rem;
    line-height: 2.85;
    letter-spacing: 0.04em;
    margin-bottom: 0.1rem;
}
.headline1 span {
    display: block;
    font-size: 0.18rem;
    line-height: 1.5;
    padding: 0 0 0.3rem;
    margin-top: -0.1rem;
}
.headline2 {
    font-size: 0.2rem;
    padding-bottom: 0.4rem;
}
.headline2::before {
    height: 0.18rem;
    bottom: 0.12rem;
}
.headline3 span {
    font-size: 3rem;
    left: -0.46rem;
    top: -2rem;
}
.headline3 b {
    font-size: 0.4rem;
    white-space: nowrap;
}
.headline4 {
    font-size: 0.16rem;
}
.headline4 span {
    font-size: 0.6rem;
}
}


/* btnst
------------------------------------------------- */
.btnst a,
.btn-wrap a .btnst {
    display: inline-block;
    height: 0.37rem;
    font-size: 0.13rem;
    line-height: 1.77;
    font-weight: 500;
    color: #004BDE;
    padding-right: 0.68rem;
    position: relative;
}
.btnst a::before,
.btnst a::after,
.btn-wrap a .btnst::before,
.btn-wrap a .btnst::after {
    content: '';
    width: 100%;
    height: 0.01rem;
    background-color: #004BDE;
    position: absolute;
    left: 0;
    bottom: 0;
}
.btnst a::after,
.btn-wrap a .btnst::after {
    background-color: #FF7F00;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform 0.4s;
}
.btnst.eng a,
.btn-wrap a .btnst.eng {
    font-size: 0.11rem;
    line-height: 2.55;
    padding-right: 0.52rem
}
.btnst a .ar,
.btn-wrap a .btnst .ar {
    display: inline-block;
    width: 0.28rem;
    height: 0.28rem;
    background-color: #004BDE;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: 0;
    overflow: hidden;
}
.btnst a .ar::before,
.btn-wrap a .btnst .ar::before {
    content: '';
    width: 0.09rem;
    height: 0.08rem;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228.829%22%20height%3D%227.876%22%20viewBox%3D%220%200%208.829%207.876%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_62%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2062%22%20transform%3D%22translate(-726.171%20-2415)%22%3E%20%3Cline%20id%3D%22%E7%B7%9A_37%22%20data-name%3D%22%E7%B7%9A%2037%22%20y1%3D%227%22%20x2%3D%228%22%20transform%3D%22translate(726.5%202415.5)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_115%22%20data-name%3D%22%E3%83%91%E3%82%B9%20115%22%20d%3D%22M734.5%2C2420.5v-5h-5%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E') right top no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -0.04rem 0 0 -0.045rem;
}
.btnst.wh a,
.btn-wrap a .btnst.wh {
    color: #fff;
}
.btnst.wh a::before,
.btn-wrap a .btnst.wh::before {
    background-color: #fff;
}
.btnst.wh a .ar,
.btn-wrap a .btnst.wh .ar {
    background-color: #fff;
}
.btnst.wh a .ar::before,
.btn-wrap a .btnst.wh .ar::before {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228.829%22%20height%3D%227.876%22%20viewBox%3D%220%200%208.829%207.876%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_62%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2062%22%20transform%3D%22translate(-726.171%20-2415)%22%3E%20%3Cline%20id%3D%22%E7%B7%9A_37%22%20data-name%3D%22%E7%B7%9A%2037%22%20y1%3D%227%22%20x2%3D%228%22%20transform%3D%22translate(726.5%202415.5)%22%20fill%3D%22none%22%20stroke%3D%22%23004bde%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_115%22%20data-name%3D%22%E3%83%91%E3%82%B9%20115%22%20d%3D%22M734.5%2C2420.5v-5h-5%22%20fill%3D%22none%22%20stroke%3D%22%23004bde%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
}
@media screen and (min-width:751px){
.btnst a:hover::after,
.btn-wrap a:hover .btnst::after {
    transform-origin: left top;
    transform: scale(1, 1);
}
.btnst a:hover .ar::before,
.btn-wrap a:hover .btnst .ar::before {
    animation: move-arrow 1.3s infinite;
}
}


/* entry
------------------------------------------------- */
#entry {
    margin-top: 2.8rem;
    position: relative;
    z-index: 4;
}
#entry .sec {
    background: url("../img/common/entry_bg.jpg") center center no-repeat;
    background-size: cover;
    border-radius: 0.4rem;
    color: #fff;
    padding: 0.46rem 0 0.32rem;
    opacity: 0;
}
#entry.isAnimate .sec {
    animation: fade 0.8s 0.4s forwards;
}
#entry h3 {
    font-size: 0.27rem;
    font-weight: 400;
    line-height: 1.45;
    letter-spacing: 0.02em;
    color: #fff;
    text-align: center;
    padding-bottom: 0.39rem;
}
#entry h3 .ls1 {
    letter-spacing: -0.48em;
}
#entry h3 .ls2 {
    letter-spacing: -0.23em;
}
#entry ul {
    border-top: 0.01rem solid rgba(255,255,255,0.5);
    border-bottom: 0.01rem solid rgba(255,255,255,0.5);
    position: relative;
}
#entry ul::before {
    content: '';
    width: 0.01rem;
    height: 100%;
    background-color: rgba(255,255,255,0.5);
    position: absolute;
    left: 50%;
    top: 0;
    z-index: 2;
}
#entry ul li {
    width: 50%;
}
#entry ul li a {
    display: block;
    width: 100%;
    height: 1.9rem;
    padding: 0.2rem 0 0 0.45rem;
    box-sizing: border-box;
    position: relative;
}
#entry ul li a h4 {
    font-size: 0.27rem;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: 0.13em;
    color: #fff;
}
#entry ul li a .btnst {
    position: absolute;
    right: 0.27rem;
    bottom: 0.22rem;
}
#entry .entry {
    width: 2.4rem;
    padding-top: 0.42rem;
    margin: 0 auto;
}
#entry .entry a {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 0.18rem;
    font-weight: 400;
    line-height: 1.45;
    text-align: center;
    color: #fff;
    padding-bottom: 0.97rem;
    box-sizing: border-box;
    position: relative;
}
#entry .entry a b {
    display: block;
    font-size: 0.549rem;
    font-weight: 200;
    line-height: 1.165;
    text-align: center;
    color: #fff;
}
#entry .entry a i {
    font-style: normal;
    letter-spacing: -0.23em;
}
#entry .entry a .ar {
    display: inline-block;
    width: 0.8rem;
    height: 0.8rem;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    bottom: 0;
    margin-left: -0.4rem;
    overflow: hidden;
}
#entry .entry a .ar::before {
    content: '';
    width: 0.25rem;
    height: 0.25rem;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224.498%22%20height%3D%2224.682%22%20viewBox%3D%220%200%2024.498%2024.682%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_42%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2042%22%20transform%3D%22translate(-669.502%20-5301.528)%22%3E%20%3Cline%20id%3D%22%E7%B7%9A_28%22%20data-name%3D%22%E7%B7%9A%2028%22%20y1%3D%2223.736%22%20x2%3D%2223.736%22%20transform%3D%22translate(669.856%205302.12)%22%20fill%3D%22none%22%20stroke%3D%22%23004bde%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_42%22%20data-name%3D%22%E3%83%91%E3%82%B9%2042%22%20d%3D%22M693.5%2C5317.528v-15.5H678%22%20fill%3D%22none%22%20stroke%3D%22%23004bde%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E') right top no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -0.125rem 0 0 -0.125rem;
}
#entry .entry-arrow {
    width: 3.364rem;
    height: 2.5639rem;
    position: absolute;
    left: -0.56rem;
    top: -2.36rem;
    z-index: 2;
}
#entry .entry-arrow .st0 {
    fill: #004bde;
}
#entry .entry-arrow .st1 {
    fill: none;
    stroke: #fff;
    stroke-miterlimit: 10;
    stroke-width: 300px;
    stroke-dasharray: 1000px;
    stroke-dashoffset: 1000px;
}
#entry.isAnimate .entry-arrow .st1 {
    animation: entry-arrow 1.5s 0.1s forwards;
}
#entry #line {
    mask: url(#mask-wrapper);
}
#pagetop {
    width: 0.1612rem;
    position: absolute;
    right: 0.68rem;
    top: -1.51rem;
    overflow: hidden;
    z-index: 4;
}
#pagetop::before,
#pagetop::after {
    content: '';
    width: 0.01rem;
    height: 100%;
    background-color: #1A1A1A;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
}
#pagetop::before {
    background-color: #fff;
    animation: pagetop 2s infinite;
    z-index: 2;
}
@media screen and (min-width:751px){
#entry .entry a:hover .ar::before {
    animation: move-arrow 1.3s infinite;
}
}
@media screen and (max-width:750px){
#entry {
    margin-top: 1.75rem;
}
#entry .sec {
    background-image: url("../img/common/entry_bg_sp.jpg");
    background-size: cover;
    border-radius: 0.3rem;
    padding: 0.46rem 0 0.32rem;
}
#entry h3 {
    font-size: 0.22rem;
    letter-spacing: 0.02em;
    padding-bottom: 0.39rem;
}
#entry ul {
    display: flex;
    border-top: 0.01rem solid rgba(255,255,255,0.5);
    border-bottom: 0.01rem solid rgba(255,255,255,0.5);
    position: relative;
}
#entry ul::before {
    content: '';
    width: 0.01rem;
    height: 100%;
    background-color: rgba(255,255,255,0.5);
    position: absolute;
    left: 50%;
    top: 0;
    z-index: 2;
}
#entry ul li {
    width: 50%;
}
#entry ul li a {
    height: 1.5rem;
    padding: 0.2rem 0 0 0.2rem;
}
#entry ul li a h4 {
    font-size: 0.2rem;
}
#entry ul li a .btnst {
    right: 0.2rem;
    bottom: 0.2rem;
}
#entry .entry {
    padding-top: 0.25rem;
}
#entry .entry a {
    font-size: 0.16rem;
    padding-bottom: 0.7rem;
}
#entry .entry a b {
    font-size: 0.485rem;
}
#entry .entry a .ar {
    width: 0.6rem;
    height: 0.6rem;
    margin-left: -0.3rem;
}
#entry .entry-arrow {
    width: 2rem;
    height: 1.5243rem;
    left: -0.3rem;
    top: -1.4rem;
}
#pagetop {
    width: 0.13rem;
    right: 0.2rem;
    top: -1.2rem;
}
}


/* footer
------------------------------------------------- */
#footer {
    background-color: #F2F2F2;
    padding: 3.15rem 0 1.75rem;
    margin-top: -1.9rem;
    position: relative;
    z-index: 3;
}
#footer .inner {
    max-width: 12.2rem;
}
#footer .info {
    width: 1.91rem;
    margin: 0.11rem 0 0 0.13rem;
    text-align: center;
}
#footer .info h4 {
    font-size: 0.14rem;
    font-weight: 400;
    line-height: 1.428;
    letter-spacing: 0.02em;
    text-align: center;
    white-space: nowrap;
    margin-bottom: 0.17rem;
}
#footer .info h4 img {
    display: block;
    width: 1.7787rem;
    margin: 0 auto 0.2rem;
}
#footer .info ul li {
    width: 0.3334rem;
    margin: 0 0.05rem;
}
#footer .fnav {
    width: 8.63rem;
}
#footer .fnav .fnav1 ul {
    width: 2.17rem;
    font-size: 0.13rem;
    border-top: 0.01rem solid rgba(179,179,179,0.5);
    padding-top: 0.05rem;
}
#footer .fnav .fnav1 ul li a {
    line-height: 2.15;
    letter-spacing: 0.06em;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%225.06%22%20height%3D%229.666%22%20viewBox%3D%220%200%205.06%209.666%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_53%22%20data-name%3D%22%E3%83%91%E3%82%B9%2053%22%20d%3D%22M570.5%2C5530.5l4-5-4-4%22%20transform%3D%22translate(-570.11%20-5521.146)%22%20fill%3D%22none%22%20stroke%3D%22%23004bde%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E') left center no-repeat;
    background-size: 0.05rem auto;
    padding-left: 0.15rem;
    position: relative;
}
#footer .fnav .fnav1 ul li a::after {
    content: '';
    width: calc(100% - 0.15rem);
    height: 0.01rem;
    background-color: rgba(26,26,26,0.5);
    position: absolute;
    right: 0;
    bottom: -0.03rem;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform 0.6s;
}
#footer .fnav .fnav1 ul:nth-child(1) {
    width: 1.075rem;
}
#footer .fnav .fnav1 ul:nth-child(1) a {
    background: none;
    padding-left: 0;
}
#footer .fnav .fnav1 ul:nth-child(1) a::after {
    width: 100%;
}
#footer .fnav .fnav2 {
    border-top: 0.01rem solid rgba(179,179,179,0.5);
    padding-top: 0.05rem;
    margin-top: 0.6rem;
}
#footer .fnav .fnav2 ul {
    font-size: 0.12rem;
}
#footer .fnav .fnav2 ul li {
    letter-spacing: 0.06em;
}
#footer .fnav .fnav2 ul li ul li {
    margin-left: 0.1rem;
    letter-spacing: 0.08em;
}
#footer .fnav .fnav2 ul li a {
    color: #666;
}
#footer .fnav .fnav2 ul li.blank a {
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213%22%20height%3D%229%22%20viewBox%3D%220%200%2013%209%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_52%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2052%22%20transform%3D%22translate(-505%20-5699)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_62%22%20data-name%3D%22%E3%83%91%E3%82%B9%2062%22%20d%3D%22M515%2C5702v5h-9v-5h9m1-1H505v7h11v-7Z%22%20fill%3D%22%23666%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_63%22%20data-name%3D%22%E3%83%91%E3%82%B9%2063%22%20d%3D%22M518%2C5699H506v1h12v-1Z%22%20fill%3D%22%23666%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_64%22%20data-name%3D%22%E3%83%91%E3%82%B9%2064%22%20d%3D%22M518%2C5699h-1v7h1v-7Z%22%20fill%3D%22%23666%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E') right center no-repeat;
    background-size: 0.13rem auto;
    padding-right: 0.15rem;
}
#footer small {
    width: 100%;
    height: 0.74rem;
    background-color: #fff;
    font-size: 0.11rem;
    letter-spacing: 0.06em;
    color: #808080;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;
    bottom: 0;
}
@media screen and (min-width:751px){
#footer .fnav .fnav1 ul li a:hover::after {
    transform-origin: left top;
    transform: scale(1, 1);
}
}
@media screen and (max-width:750px){
#footer {
    padding: 2.25rem 0 0.75rem;
}
#footer .info {
    width: 100%;
    margin: 0;
}
#footer .info h4 {
    font-size: 0.13rem;
}
#footer .info h4 img {
    width: 1.5rem;
    margin: 0 auto 0.1rem;
}
#footer .info ul {
    display: flex;
}
#footer .info ul li {
    width: 0.28rem;
}
#footer .fnav {
    width: 100%;
    margin: 0 auto;
}
#footer .fnav .fnav1 {
    display: none;
}
#footer .fnav .fnav2 {
    padding-top: 0.15rem;
    margin-top: 0.3rem;
}
#footer .fnav .fnav2 ul {
    font-size: 0.11rem;
}
#footer .fnav .fnav2 ul li {
    letter-spacing: 0.04em;
}
#footer .fnav .fnav2 ul li.blank {
    width: 100%;
    text-align: center;
    margin-top: 0.05rem;
}
#footer .fnav .fnav2 ul li ul {
    display: flex;
    justify-content: space-between;
}
#footer .fnav .fnav2 ul li ul li {
    margin-left: 0;
    letter-spacing: 0.04em;
}
#footer small {
    height: 0.5rem;
    font-size: 0.11rem;
}
}


/* animation
------------------------------------------------- */
.fadeIn {
    opacity: 0;
}
.fadeIn.isAnimate {
    animation: fadeIn 0.7s ease 0.1s 1 forwards;
}
@keyframes fade {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes fadeout {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: translateY(50px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translateX(50px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translateX(-50px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes mask {
	0% {
		clip-path: inset(0 100% 0 0);
	}
	100% {
		clip-path: inset(0);
	}
}
@keyframes move-arrow {
    0% {
        transform: translate(0, 0);
        opacity: 1;
    }
	20% {
        transform: translate(0, 0);
        opacity: 1;
    }
    35% {
        transform: translate(200%, -200%);
        opacity: 0;
    }
    65% {
        transform: translate(-200%, 200%);
        opacity: 0;
    }
    80% {
        transform: translate(0, 0);
        opacity: 1;
    }
	100% {
        transform: translate(0, 0);
        opacity: 1;
    }
}
@keyframes move-arrow-prev {
    0% {
        transform: translateX(0);
        opacity: 1;
    }
	20% {
        transform: translateX(0);
        opacity: 1;
    }
    35% {
        transform: translateX(-200%);
        opacity: 0;
    }
    65% {
        transform: translateX(200%);
        opacity: 0;
    }
    80% {
        transform: translateX(0);
        opacity: 1;
    }
	100% {
        transform: translateX(0);
        opacity: 1;
    }
}
@keyframes entry-arrow {
    0% {
        stroke-dashoffset: 1000px;
    }
    100% {
        stroke-dashoffset: 0;
    }
}
@keyframes about-line {
    0% {
        stroke-dashoffset: 2500px;
    }
    100% {
        stroke-dashoffset: 0;
    }
}
@keyframes scroll {
    0% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }
    50% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
    51% {
        transform: scale(1, 1);
        transform-origin: 0 100%;
    }
    100% {
        transform: scale(1, 0);
        transform-origin: 0 100%;
    }
}
@keyframes pagetop {
    0% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
    50% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }
    51% {
        transform: scale(1, 0);
        transform-origin: 0 100%;
    }
    100% {
        transform: scale(1, 1);
        transform-origin: 0 100%;
    }
}
@keyframes bounce {
    0% {
        transform: translateY(0);
    }
    25% {
        transform: translateY(-15px);
        animation-timing-function: ease-in;
    }
    50% {
        transform: translateY(0);
    }
    75% {
        transform: translateY(-7px);
        animation-timing-function: ease-in;
    }
    100% {
        transform: translateY(0);
    }
}
@keyframes rotation {
    0%{
        transform:rotate(0);
    }
    100%{
        transform:rotate(-360deg);
    }
}
@keyframes fluffy {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-15px);
    }
}


/**
 * Swiper 8.3.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: July 26, 2022
 */

@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, 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');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{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,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top: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:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next:after,.swiper-button-prev: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,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:50%;background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}