@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Alata&display=swap");
@font-face{
  font-weight:normal;
  src:url(../fonts/YakuHanJP/YakuHanJP-Regular.woff);
  font-family:"YakuHanJP";
}
@font-face{
  font-weight:bold;
  src:url(../fonts/YakuHanJP/YakuHanJP-Bold.woff);
  font-family:"YakuHanJP";
}
*, ::after, ::before{
  -webkit-box-sizing:border-box;
          box-sizing:border-box;
  background-repeat:no-repeat;
}

::after, ::before{
  vertical-align:inherit;
  text-decoration:inherit;
}

html{
  -moz-tab-size:4;
  -o-tab-size:4;
  -ms-text-size-adjust:100%;
  -webkit-text-size-adjust:100%;
  cursor:default;
  line-height:1.15;
  font-family:system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  word-break:break-word;
     tab-size:4;
}

body{
  margin:0;
}

h1{
  margin:0.67em 0;
  font-size:2em;
}

hr{
  height:0;
  overflow:visible;
}

main{
  display:block;
}

nav ol, nav ul{
  list-style:none;
}

pre{
  font-size:1em;
  font-family:Menlo, Consolas, Roboto Mono, Ubuntu Monospace, Noto Mono, Oxygen Mono, Liberation Mono, monospace;
}

a{
  background-color:transparent;
}

abbr[title]{
  -webkit-text-decoration:underline dotted;
  text-decoration:underline;
          text-decoration:underline dotted;
}

b, strong{
  font-weight:bolder;
}

code, kbd, samp{
  font-size:1em;
  font-family:Menlo, Consolas, Roboto Mono, Ubuntu Monospace, Noto Mono, Oxygen Mono, Liberation Mono, monospace;
}

small{
  font-size:80%;
}

::-moz-selection{
  background-color:#b3d4fc;
  color:#000;
  text-shadow:none;
}

::selection{
  background-color:#b3d4fc;
  color:#000;
  text-shadow:none;
}

audio, canvas, iframe, img, svg, video{
  vertical-align:middle;
}

audio, video{
  display:inline-block;
}

audio:not([controls]){
  display:none;
  height:0;
}

img{
  border-style:none;
}

svg:not([fill]){
  fill:currentColor;
}

svg:not(:root){
  overflow:hidden;
}

table{
  border-collapse:collapse;
}

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

button, input, select{
  margin:0;
}

button{
  overflow:visible;
  text-transform:none;
}

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

fieldset{
  padding:0.35em 0.75em 0.625em;
}

input{
  overflow:visible;
}

legend{
  display:table;
  max-width:100%;
  color:inherit;
  white-space:normal;
}

progress{
  display:inline-block;
  vertical-align:baseline;
}

select{
  text-transform:none;
}

textarea{
  margin:0;
  overflow:auto;
  resize:vertical;
}

[type=checkbox], [type=radio]{
  padding:0;
}

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

::-webkit-inner-spin-button, ::-webkit-outer-spin-button{
  height:auto;
}

::-webkit-input-placeholder{
  opacity:0.54;
  color:inherit;
}

::-webkit-search-decoration{
  -webkit-appearance:none;
}

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

::-moz-focus-inner{
  border-style:none;
  padding:0;
}

:-moz-focusring{
  outline:1px dotted ButtonText;
}

details{
  display:block;
}

dialog{
  display:block;
  position:absolute;
  right:0;
  left:0;
  margin:auto;
  border:solid;
  background-color:#fff;
  padding:1em;
  width:-moz-fit-content;
  width:-webkit-fit-content;
  width:fit-content;
  height:-moz-fit-content;
  height:-webkit-fit-content;
  height:fit-content;
  color:#000;
}

dialog:not([open]){
  display:none;
}

summary{
  display:list-item;
}

canvas{
  display:inline-block;
}

template{
  display:none;
}

[tabindex], a, area, button, input, label, select, summary, textarea{
  -ms-touch-action:manipulation;
  touch-action:manipulation;
}

[hidden]{
  display:none;
}

[aria-busy=true]{
  cursor:progress;
}

[aria-controls]{
  cursor:pointer;
}

[aria-disabled=true], [disabled]{
  cursor:not-allowed;
}

[aria-hidden=false][hidden]:not(:focus){
  clip:rect(0, 0, 0, 0);
  display:inherit;
  position:absolute;
}
html{
  -webkit-animation:bggradient 15s ease infinite;
          animation:bggradient 15s ease infinite;
  background:url(../images/bg-kirakira.png) repeat, -webkit-gradient(linear, left top, right top, from(#432294), to(#663B99));
  background:url(../images/bg-kirakira.png) repeat, linear-gradient(90deg, #432294, #663B99);
  background-size:180px 180px, 300% 300%;
  font-size:16px;
  line-height:1.6;
}

@-webkit-keyframes bggradient{
  0%{
    background-position:0 0, 0% 50%;
  }
  50%{
    background-position:0 0, 100% 50%;
  }
  100%{
    background-position:0 0, 0% 50%;
  }
}

@keyframes bggradient{
  0%{
    background-position:0 0, 0% 50%;
  }
  50%{
    background-position:0 0, 100% 50%;
  }
  100%{
    background-position:0 0, 0% 50%;
  }
}
@media only screen and (max-width: 767px){
  .bggloup{
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    background:url(../images/background.jpg) #7532F6;
    background-size:cover;
    width:100vw;
    height:100vh;
  }
}
body{
  -webkit-font-kerning:normal;
  -webkit-appearance:none;
     -moz-appearance:none;
  -webkit-font-feature-settings:"palt";
          font-feature-settings:"palt";
  -webkit-transition:opacity 1s ease;
  -webkit-box-shadow:0 0 16px 0 rgba(0, 0, 0, 0.5);
          appearance:none;
  opacity:0;
  transition:opacity 1s ease;
  margin:0 auto;
          box-shadow:0 0 16px 0 rgba(0, 0, 0, 0.5);
  background-color:#7532F6;
  min-width:375px;
  max-width:1500px;
  color:#000;
  font-weight:400;
  font-family:"YakuHanJP", "Alata", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
          font-kerning:normal;
}

legend{
  display:block;
}

ol,
ul{
  margin:0;
  padding:0;
  list-style:none;
}

a{
  color:#8E7CFE;
}

em{
  font-style:normal;
  font-weight:bold;
}

button{
  outline:none;
}

[type=button]{
  cursor:pointer;
  border-radius:0;
  padding:0;
}
html [type=button]{
  -webkit-appearance:none;
     -moz-appearance:none;
          appearance:none;
}

figure{
  margin:0;
}

.appDl{
  -ms-flex-wrap:wrap;
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
          justify-content:center;
  margin-top:28px;
}
.appDl a{
  -webkit-transition:all 0.3s, -webkit-transform 0.3s;
  display:block;
  transition:all 0.3s, -webkit-transform 0.3s;
  transition:all 0.3s, transform 0.3s;
  transition:all 0.3s, transform 0.3s, -webkit-transform 0.3s;
  margin:0 8px;
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
}
.appDl a:hover{
  -webkit-box-shadow:0 0 15px rgba(255, 255, 255, 0.9);
          box-shadow:0 0 15px rgba(255, 255, 255, 0.9);
  border-radius:16px;
}
.appDl a img{
  width:auto;
  height:66px;
}
@media only screen and (max-width: 767px){
  .appDl a img{
    height:50px;
  }
}

.button-wrapper{
  position:relative;
  margin:auto;
}
.button-wrapper .specialPrice{
  position:absolute;
  top:-20px;
  left:-10px;
  z-index:2;
}
.button-wrapper .button{
  position:relative;
  overflow:hidden;
}

.button{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-align:center;
      -ms-flex-align:center;
  -ms-flex-negative:0;
  -webkit-transition:0.2s cubic-bezier(0.45, 0, 0.55, 1);
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position:relative;
      flex-shrink:0;
          justify-content:center;
          align-items:center;
  z-index:1;
  transition:0.2s cubic-bezier(0.45, 0, 0.55, 1);
  cursor:pointer;
  border-radius:50px;
  padding:16px 32px;
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
  overflow:hidden;
  color:#fff;
  font-weight:bold;
  text-decoration:none;
}
.button.button-border{
  border:2px solid #fff;
}
.button.position-center{
  margin:auto;
}
.button.primaryButton{
  position:relative;
  z-index:0;
  border-radius:58px;
  background:-webkit-gradient(linear, left top, left bottom, color-stop(-6.02%, #2972FC), color-stop(102.73%, #DC68FF));
  background:linear-gradient(180deg, #2972FC -6.02%, #DC68FF 102.73%);
  color:#7532F6;
}
.button.primaryButton::after{
  -webkit-box-shadow:6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
  position:absolute;
  z-index:-1;
  inset:4px;
          box-shadow:6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
  border-radius:46px;
  background:#fff;
  content:"";
}
.button.cray-purple{
  -webkit-box-shadow:0px 2px 10px 0px rgba(178, 136, 255, 0.5), 6px 6px 12px 0px #9990FE inset, -12px -12px 24px 0px #8586FE inset;
          box-shadow:0px 2px 10px 0px rgba(178, 136, 255, 0.5), 6px 6px 12px 0px #9990FE inset, -12px -12px 24px 0px #8586FE inset;
  border:3px solid #FFF;
  border-radius:58px;
  background:#A094FE;
}
.button.middle{
  border-width:3px;
  padding:20px 55px;
  width:100%;
  font-size:18px;
}
@media only screen and (max-width: 767px){
  .button.middle{
    padding:20px;
  }
}
.button.w80{
  margin-right:auto;
  margin-left:auto;
  width:80%;
}
.button.large{
  border-width:4px;
  padding:24px 12px;
  font-size:28px;
}
@media only screen and (max-width: 767px){
  .button.large{
    padding:18px 12px;
    font-size:21px;
  }
}
.button.specialLarge{
  margin-right:auto;
  margin-left:auto;
  border-width:4px;
  padding:25px 52px;
  font-size:25px;
}
@media only screen and (max-width: 767px){
  .button.specialLarge{
    font-size:18px;
  }
}
.button.icon-arrow::after{
  display:inline-block;
  margin-left:1em;
  background:url(../images/arrow.png) no-repeat;
  background-size:100%;
  width:8px;
  height:15px;
  content:"";
}
@media only screen and (max-width: 767px){
  .button{
    padding:16px 30px;
    font-size:16px;
  }
  .button.icon-arrow::after{
    background-size:auto 100%;
    width:8px;
    height:10px;
  }
}
.button.shine-effect{
  position:relative;
  overflow:hidden !important;
}
.button.shine-effect::before{
  -webkit-transform:rotate(45deg);
  -webkit-animation:shine 3s infinite;
  position:absolute;
  top:-50%;
  left:-50%;
          transform:rotate(45deg);
  z-index:1;
          animation:shine 3s infinite;
  background:linear-gradient(45deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.3) 100%);
  width:200%;
  height:200%;
  content:"";
}
@-webkit-keyframes shine{
  0%{
    -webkit-transform:translateX(-200%) translateY(-200%) rotate(45deg);
            transform:translateX(-200%) translateY(-200%) rotate(45deg);
  }
  100%{
    -webkit-transform:translateX(100%) translateY(100%) rotate(45deg);
            transform:translateX(100%) translateY(100%) rotate(45deg);
  }
}
@keyframes shine{
  0%{
    -webkit-transform:translateX(-200%) translateY(-200%) rotate(45deg);
            transform:translateX(-200%) translateY(-200%) rotate(45deg);
  }
  100%{
    -webkit-transform:translateX(100%) translateY(100%) rotate(45deg);
            transform:translateX(100%) translateY(100%) rotate(45deg);
  }
}

@media only screen and (min-width: 1000px){
  .primaryButton::before{
    -webkit-transform:scale(0, 1);
    -webkit-transform-origin:left top;
    -webkit-transition:0.2s cubic-bezier(0.45, 0, 0.55, 1);
    -webkit-transform:skewY(-10deg) scale(1, 0);
    position:absolute;
    top:0;
    left:0;
            transform:scale(0, 1);
            transform:skewY(-10deg) scale(1, 0);
            transform-origin:left top;
    z-index:-1;
    transition:0.2s cubic-bezier(0.45, 0, 0.55, 1);
    background:#b1a4fe;
    width:100%;
    height:100%;
    height:120px;
    content:"";
  }
  .primaryButton:hover::before{
    -webkit-transform:skewY(-10deg) scale(1, 1);
            transform:skewY(-10deg) scale(1, 1);
  }
}
.glitter{
  -webkit-animation:glitter 2s ease-out 0s forwards;
  position:fixed;
  top:-15px;
  left:-15px;
  z-index:2;
          animation:glitter 2s ease-out 0s forwards;
  background:url(../images/glitter.gif) 100% 100% no-repeat;
  background-size:contain;
  width:60px;
  height:60px;
  pointer-events:none;
}

@-webkit-keyframes glitter{
  0%{
    -webkit-transform:translateY(0) rotate(-5deg);
            transform:translateY(0) rotate(-5deg);
    opacity:0;
  }
  5%{
    opacity:1;
  }
  80%{
    opacity:1;
  }
  100%{
    -webkit-transform:translateY(50px) rotate(5deg);
            transform:translateY(50px) rotate(5deg);
    opacity:0;
  }
}

@keyframes glitter{
  0%{
    -webkit-transform:translateY(0) rotate(-5deg);
            transform:translateY(0) rotate(-5deg);
    opacity:0;
  }
  5%{
    opacity:1;
  }
  80%{
    opacity:1;
  }
  100%{
    -webkit-transform:translateY(50px) rotate(5deg);
            transform:translateY(50px) rotate(5deg);
    opacity:0;
  }
}
.cursor{
  position:fixed;
  background:url(../images/glitter.gif) 100% 100% no-repeat;
  background-size:contain;
  width:100px;
  height:100px;
  pointer-events:none;
}

.story-popup{
  -webkit-box-shadow:12px 12px 24px 0px rgba(0, 0, 0, 0.25), 6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
          box-shadow:12px 12px 24px 0px rgba(0, 0, 0, 0.25), 6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
  border-radius:60px;
  width:625px;
  max-width:94%;
  overflow:hidden;
}

.arasuziHeader{
  position:relative;
  background:url("../images/arasuziHeader.png") center no-repeat;
  background-size:625px 205px;
  width:625px;
  max-width:100%;
  height:205px;
}
.arasuziHeader h4{
  margin:0;
  padding-top:85px;
  color:#fff;
  font-size:30px;
  text-align:center;
}
@media only screen and (max-width: 767px){
  .arasuziHeader h4{
    -webkit-box-pack:center;
        -ms-flex-pack:center;
    -webkit-box-align:center;
        -ms-flex-align:center;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
            justify-content:center;
            align-items:center;
    padding:85px 20px 0;
    height:6em;
    font-size:24px;
    line-height:1.2;
  }
}
.arasuziHeader .popup-close{
  position:absolute;
  top:30px;
  right:30px;
  background:url("../images/close.png") no-repeat;
  background-size:100%;
  width:50px;
  height:50px;
  text-indent:-99999px;
}
@media only screen and (max-width: 767px){
  .arasuziHeader .popup-close{
    width:30px;
    height:30px;
  }
}

.story-description{
  padding:0 30px 30px;
  max-height:330px;
  overflow-y:auto;
  color:#4A23AD;
}
.story-description p:first-child{
  margin-top:0;
}

.popupImg{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position:fixed;
  top:0;
  left:0;
          justify-content:center;
          align-items:center;
  z-index:10;
  background:rgba(0, 0, 0, 0.8);
  width:100%;
  height:100vh;
}
.popupImg .popupImg__inner{
  width:900px;
  max-width:80%;
}
.popupImg img{
  max-width:100%;
  height:auto;
}
.popupImg .closeBtn{
  display:block;
  margin:0 0 16px auto;
  background:url("../images/close.png") no-repeat;
  background-size:100%;
  width:35px;
  height:35px;
}
.cta{
  background:-webkit-gradient(linear, left top, left bottom, from(#100824), to(#4A23AD));
  background:linear-gradient(180deg, #100824 0%, #4A23AD 100%);
  color:#fff;
}
.cta h2{
  margin-bottom:0 !important;
}
.cta .cta__inner{
  -webkit-box-pack:justify;
      -ms-flex-pack:justify;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          justify-content:space-between;
          align-items:center;
  margin:0 auto;
  background:url("../images/bg-cta.webp") no-repeat;
  background-size:auto 100%;
  padding:55px 0;
  width:980px;
}
.cta .cta__left{
  padding-left:80px;
}
.cta .cta__right{
  text-align:center;
}
.cta .cta__right img{
  display:block;
  margin:0 auto 10px;
}
.cta .is-sp{
  display:none;
}
@media (max-width: 980px){
  .cta .is-pc{
    display:none;
  }
  .cta .is-sp{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    padding:24px 16px 30px;
  }
  .cta .is-sp > div{
    -webkit-box-pack:center;
        -ms-flex-pack:center;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
            justify-content:center;
    width:100%;
  }
  .cta .is-sp .button{
    margin-top:16px;
  }
  .cta .is-sp .ctaText{
    margin-top:5px;
  }
  .cta .cta__inner{
    -ms-flex-wrap:wrap;
    -webkit-box-pack:center;
        -ms-flex-pack:center;
        flex-wrap:wrap;
            justify-content:center;
    width:100%;
  }
}
.details{
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
      -ms-flex-direction:column;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          flex-direction:column;
  gap:80px;
  margin:auto;
  width:980px;
}
.detail{
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
      -ms-flex-direction:column;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          flex-direction:column;
}
.detail-content{
  -webkit-box-flex:1;
      -ms-flex:1;
          flex:1;
}
.detail-image{
  -webkit-box-flex:1;
      -ms-flex:1;
          flex:1;
  margin:30px 0;
  text-align:center;
}

.detail-image img{
  max-width:100%;
  height:auto;
}
.detail-title{
  margin-bottom:30px;
  font-weight:bold;
  font-size:36px;
  line-height:1.3;
}
.detail-title strong{
  background:-webkit-gradient(linear, right top, left top, from(#2972FC), to(#DC68FF));
  background:linear-gradient(270deg, #2972FC 0%, #DC68FF 100%);
  color:#fff;
}
.detail-text{
  margin-bottom:25px;
  font-size:20px;
  line-height:1.7;
}
.detail-text strong{
  background:-webkit-gradient(linear, right top, left top, from(#F8E1FF), to(#D4E3FE));
  background:linear-gradient(270deg, #F8E1FF 0%, #D4E3FE 100%);
  padding:0 4px;
  font-weight:bold;
}
.detail-text:last-child{
  margin-bottom:0;
}
@media (min-width: 980px){
  .detail{
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
        -ms-flex-direction:row;
    -webkit-box-align:center;
        -ms-flex-align:center;
    -webkit-box-pack:justify;
        -ms-flex-pack:justify;
            flex-direction:row;
            justify-content:space-between;
            align-items:center;
    gap:40px;
  }
  .details .detail:nth-child(even){
    -webkit-box-orient:horizontal;
    -webkit-box-direction:reverse;
        -ms-flex-direction:row-reverse;
            flex-direction:row-reverse;
  }
  .detail-image{
    margin:0;
  }
}
@media (max-width: 980px){
  .details{
    width:100%;
  }
}
@media (max-width: 768px){
  .details{
    gap:50px;
    width:100%;
  }
  .details h3.detail-title{
    margin-top:1rem;
    margin-bottom:14px;
    font-size:25px;
    line-height:1.5;
    text-align:center;
  }
  .details h3.detail-title strong{
    font-size:32px;
  }
  .details .detail-image{
    margin-top:0;
    margin-bottom:0;
  }
  .details .detail-image img{
    -o-object-fit:contain;
    max-height:440px;
       object-fit:contain;
  }
  .details p.detail-text{
    margin:14px auto;
    font-size:16px;
  }
}
@supports not (background-clip: text){
  .detail-title strong{
    -webkit-text-fill-color:#A255D4;
    text-fill-color:#A255D4;
    background:none;
    color:#A255D4;
  }
}
.breadcrumb ol{
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:center;
  font-size:14px;
}
.breadcrumb ol li{
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:center;
}
.breadcrumb ol li.home::before{
  display:inline-block;
  margin-right:2px;
  background:url("../images/icon-home.svg") no-repeat;
  background-size:100%;
  width:18px;
  height:15px;
  content:"";
}
.breadcrumb ol li:not(:last-child)::after{
  display:inline-block;
  margin-right:5px;
  margin-left:5px;
  background:url("../images/arrow.svg") no-repeat;
  background-size:100%;
  width:5px;
  height:11px;
  content:"";
}
.breadcrumb ol a,
.breadcrumb ol span{
  color:#fff;
}

.siteHeader{
  position:sticky;
  top:0;
  opacity:0;
  z-index:5;
  background:url(../images/cloud.png) repeat-x bottom;
  background-position:bottom -1px center;
  background-size:82px 207px;
  padding-bottom:50px;
}
.siteHeader .siteHeader__inner{
  -webkit-box-pack:justify;
      -ms-flex-pack:justify;
  -webkit-box-align:center;
      -ms-flex-align:center;
  -ms-flex-wrap:wrap;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
          justify-content:space-between;
          align-items:center;
  margin:0 auto;
  padding:12px;
  width:980px;
}
@media only screen and (max-width: 980px){
  .siteHeader .siteHeader__inner{
    width:100%;
  }
}
.siteHeader .siteHeader__inner .open-menu{
  display:none;
}
@media only screen and (max-width: 767px){
  .siteHeader .siteHeader__inner{
    width:100%;
  }
  .siteHeader .siteHeader__inner .siteHeader__logo img{
    width:auto;
    height:80px;
  }
  .siteHeader .siteHeader__inner nav{
    display:none;
  }
  .siteHeader .siteHeader__inner .open-menu{
    display:block;
    border:0;
    background:transparent;
    padding:0;
    width:75px;
    height:75px;
  }
}
.siteHeader h1{
  margin:0;
}

.siteMenu{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  gap:30px;
}
.siteMenu a{
  color:#364C65;
  font-weight:bold;
  font-size:18px;
  text-decoration:none;
}

.siteMenu-sp{
  display:none;
}

@media only screen and (max-width: 767px){
  .siteMenu-sp{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
        -ms-flex-direction:column;
    -webkit-box-pack:justify;
        -ms-flex-pack:justify;
    -ms-flex-wrap:wrap;
    -webkit-transition:left 0.5s cubic-bezier(0.77, 0, 0.175, 1), visibility 0.5s;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    position:fixed;
    top:0;
    left:-100%;
            flex-direction:column;
        flex-wrap:wrap;
            justify-content:space-between;
    visibility:hidden;
    z-index:99999;
    transition:left 0.5s cubic-bezier(0.77, 0, 0.175, 1), visibility 0.5s;
    background-color:#9890FE;
    padding:24px 12px;
    width:100vw;
    height:100dvh;
  }
  .siteMenu-sp.active{
    left:0;
    visibility:visible;
  }
  .siteMenu-sp .menu-item{
    -webkit-transform:translateY(20px);
    -webkit-transition:opacity 0.4s ease, -webkit-transform 0.4s ease;
    -webkit-transition-delay:0s;
            transform:translateY(20px);
    opacity:0;
    transition:opacity 0.4s ease, -webkit-transform 0.4s ease;
    transition:opacity 0.4s ease, transform 0.4s ease;
    transition:opacity 0.4s ease, transform 0.4s ease, -webkit-transform 0.4s ease;
            transition-delay:0s;
  }
  .siteMenu-sp.active .menu-item{
    -webkit-transform:translateY(0);
            transform:translateY(0);
    opacity:1;
  }
  .siteMenu-sp.active .menu-item:nth-child(1){
    -webkit-transition-delay:0.1s;
            transition-delay:0.1s;
  }
  .siteMenu-sp.active .menu-item:nth-child(2){
    -webkit-transition-delay:0.2s;
            transition-delay:0.2s;
  }
  .siteMenu-sp.active .menu-item:nth-child(3){
    -webkit-transition-delay:0.3s;
            transition-delay:0.3s;
  }
  .siteMenu-sp.active .menu-item:nth-child(4){
    -webkit-transition-delay:0.4s;
            transition-delay:0.4s;
  }
  .siteMenu-sp.active .menu-item:nth-child(5){
    -webkit-transition-delay:0.5s;
            transition-delay:0.5s;
  }
  .siteMenu-sp.active .menu-item:nth-child(6){
    -webkit-transition-delay:0.6s;
            transition-delay:0.6s;
  }
  .close-menu{
    display:block;
    margin-top:6px;
    margin-right:6px;
    border:0;
    background:transparent;
    padding:0;
    width:66px;
    height:66px;
  }
  .siteMenu__header{
    -webkit-box-pack:justify;
        -ms-flex-pack:justify;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
            justify-content:space-between;
    width:100%;
  }
  .siteMenu__footer{
    -webkit-box-pack:center;
        -ms-flex-pack:center;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
            justify-content:center;
    margin-right:-24px;
    margin-left:-24px;
    width:calc(100% + 48px);
  }
  .siteMenu__footer .appDl{
    margin:0;
  }
  .siteMenu__body ul{
    -ms-flex-wrap:wrap;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
        flex-wrap:wrap;
    gap:30px;
  }
  .siteMenu__body li{
    width:100%;
  }
  .siteMenu__body a{
    display:block;
    color:#fff;
    font-weight:bold;
    font-size:20px;
    text-decoration:none;
  }
}
.mainVisual__right{
  position:relative;
  width:528px;
  height:526px;
}
.mainVisual__slide{
  position:absolute;
  top:28px;
  left:257px;
  z-index:0;
  margin:0;
  padding:0;
  width:190px;
  list-style:none;
}
.mainVisual__slide li{
  -webkit-transition:opacity 0.3s ease-in-out;
  position:absolute;
  top:0;
  left:0;
  opacity:0;
  transition:opacity 0.3s ease-in-out;
  width:100%;
  height:100%;
}
.mainVisual__slide li.active{
  opacity:1;
}
.mainVisual__slide li img{
  width:100%;
  height:auto;
}
.mainVisual .sp-slide{
  position:relative;
  margin:auto;
  width:366px;
  height:325px;
}
.mainVisual .sp-slide .mainVisual__slide{
  position:absolute;
  top:16px;
  left:189px;
  z-index:0;
  margin:0;
  padding:0;
  width:121px;
  list-style:none;
}
.mainVisual .mainVisual__screen{
  position:relative;
}

.overRay{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:none;
  position:fixed;
  top:0;
  left:0;
          justify-content:center;
          align-items:center;
  z-index:999;
  background-color:rgba(0, 0, 0, 0.7);
  width:100vw;
  height:100vh;
}
.overRay .close-overRay{
  position:absolute;
  top:48px;
  right:48px;
  cursor:pointer;
  width:30px;
  height:30px;
}
.overRay img{
  width:auto;
  max-height:90%;
}
@media only screen and (max-width: 767px){
  .overRay img{
    width:90%;
    height:auto;
    max-height:unset;
  }
  .overRay .close-overRay{
    top:16px;
    right:16px;
  }
}

.siteFooter{
  background-color:#453B57;
  color:#fff;
}
.siteFooter .siteFooter__inner{
  -webkit-box-pack:justify;
      -ms-flex-pack:justify;
  -webkit-box-align:center;
      -ms-flex-align:center;
  -ms-flex-wrap:wrap;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
          justify-content:space-between;
          align-items:center;
  margin:0 auto;
  width:980px;
}
.siteFooter .siteFooter__iphone{
  margin-top:-180px;
}
.siteFooter .siteFooter__body{
  margin-top:-160px;
  text-align:center;
}
.siteFooter .siteFooter__body h2{
  font-size:20px;
}
.siteFooter .siteFooter__body h2 strong{
  font-size:30px;
}
.siteFooter .siteFooter__body .siteFooter__icon{
  display:block;
  margin:32px auto;
}
@media only screen and (max-width: 980px){
  .siteFooter .siteFooter__inner{
    width:100%;
  }
  .siteFooter .siteFooter__iphone{
    display:none;
  }
  .siteFooter .siteFooter__body{
    margin-top:0;
    padding:16px 0;
    width:100%;
  }
  .siteFooter .siteFooter__body h2{
    font-size:16px;
  }
  .siteFooter .siteFooter__body h2 strong{
    font-size:28px;
  }
}

.footerNavi{
  position:relative;
  background-color:#111;
  padding:30px 0;
}
.footerNavi .footerNavi__alclogo{
  display:block;
  margin-bottom:16px;
}
.footerNavi .pagetop{
  -webkit-box-align:center;
      -ms-flex-align:center;
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-transition:all 0.3s, -webkit-transform 0.3s;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position:absolute;
  top:-49px;
  right:40px;
          justify-content:center;
          align-items:center;
  transition:all 0.3s, -webkit-transform 0.3s;
  transition:all 0.3s, transform 0.3s;
  transition:all 0.3s, transform 0.3s, -webkit-transform 0.3s;
  border-radius:20px 20px 0 0;
  background-color:#111;
  padding:12px 24px;
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
  color:#fff;
  text-decoration:none;
}
.footerNavi .pagetop:hover{
  background-color:#222;
}
.footerNavi .pagetop::before{
  display:block;
  margin-right:8px;
  background:url(../images/up.png) no-repeat;
  background-size:100%;
  width:18px;
  height:18px;
  content:"";
}
@media only screen and (max-width: 767px){
  .footerNavi{
    padding-top:0;
  }
  .footerNavi .pagetop{
    position:relative;
    top:0;
    left:0;
    border-bottom:1px solid #555;
    border-radius:0;
    width:100%;
  }
}
.footerNavi .footerNavi__inner{
  margin:0 auto;
  width:980px;
}
@media only screen and (max-width: 767px){
  .footerNavi .footerNavi__inner{
    padding:46px 16px 16px;
    width:100%;
  }
  .footerNavi .footerNavi__inner .footerNavi__alclogo{
    text-align:center;
  }
}
.footerNavi .footerNavi__list{
  -ms-flex-wrap:wrap;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
  margin-bottom:16px;
}
@media only screen and (max-width: 767px){
  .footerNavi .footerNavi__list{
    -webkit-box-pack:center;
        -ms-flex-pack:center;
            justify-content:center;
  }
  .footerNavi .footerNavi__list .footerNavi__link{
    font-size:14px;
  }
}
.footerNavi .footerNavi__item{
  margin-right:1em;
}
.footerNavi a{
  color:#fff;
  text-decoration:none;
}
.footerNavi a[target=_blank]::after{
  display:inline-block;
  margin-left:4px;
  background:url("../images/external-link.svg") no-repeat;
  background-size:100%;
  width:16px;
  height:16px;
  content:"";
}
.footerNavi a:hover{
  text-decoration:underline;
}
.footerNavi .footerNavi__sns__list{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
@media only screen and (max-width: 767px){
  .footerNavi .footerNavi__sns__list{
    -webkit-box-pack:center;
        -ms-flex-pack:center;
            justify-content:center;
  }
}
.footerNavi .footerNavi__sns__item{
  margin-right:1em;
}
.footerNavi .footerNavi__sns__link{
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:center;
  color:#fff;
  text-decoration:none;
}
.footerNavi .footerNavi__sns__link img{
  margin-right:8px;
}

.footerNavi__copylight{
  background-color:#000;
  padding:30px 0;
  color:#fff;
  font-size:12px;
  text-align:center;
}
.footerNavi__copylight p{
  letter-spacing:1px;
}

.footer__bottom{
  border-top:1px solid #222;
  background-color:#000;
  text-align:center;
}
.footer__bottom a{
  display:block;
  padding:24px;
}
.footer__bottom img{
  width:auto;
  height:25px;
}

.floating-card{
  -webkit-transform:translateY(100%);
  -webkit-transition:all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  position:fixed;
  bottom:20px;
  left:20px;
          transform:translateY(100%);
  opacity:1;
  z-index:1000;
  transition:all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@media only screen and (max-width: 980px){
  .floating-card{
    display:none;
  }
}
.floating-card.visible{
  -webkit-transform:translateY(0);
          transform:translateY(0);
}
.floating-card.collapsed{
  -webkit-transform:translateY(calc(100% - 5px)) !important;
          transform:translateY(calc(100% - 5px)) !important;
}
.card-content{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-shadow:0px 2px 8px 0px rgba(0, 0, 0, 0.25), 6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position:relative;
          justify-content:center;
          box-shadow:0px 2px 8px 0px rgba(0, 0, 0, 0.25), 6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
  border-radius:16px 16px 0 0;
  border-radius:40px 0px 0px 0px;
  background:var(--01_text-white, #FFF);
  background-color:#fff;
  padding:20px;
  width:200px;
}
.toggle-btn{
  -webkit-box-align:center;
      -ms-flex-align:center;
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-shadow:3px -3px 4px 0px rgba(0, 0, 0, 0.1), 6px 6px 12px 0px #ECF5FF inset;
  -webkit-transition:-webkit-transform 0.3s;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          justify-content:center;
          align-items:center;
  transition:-webkit-transform 0.3s;
  transition:transform 0.3s;
  transition:transform 0.3s, -webkit-transform 0.3s;
  cursor:pointer;
          box-shadow:3px -3px 4px 0px rgba(0, 0, 0, 0.1), 6px 6px 12px 0px #ECF5FF inset;
  border:none;
  border-radius:20px 20px 0px 0px;
  background:var(--01_text-white, #FFF);
  background-color:#ECF5FF;
  width:50px;
  height:34px;
}
.minus-btn{
  position:absolute;
  top:-33px;
  right:0px;
}
.plus-btn{
  -webkit-transform:translateY(-20px);
  -webkit-transition:opacity 0.3s, -webkit-transform 0.3s;
  position:absolute;
  top:-33px;
  right:0px;
          transform:translateY(-20px);
  opacity:0;
  transition:opacity 0.3s, -webkit-transform 0.3s;
  transition:opacity 0.3s, transform 0.3s;
  transition:opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
  pointer-events:none;
}
.floating-card.collapsed .plus-btn{
  -webkit-transform:translateY(0);
          transform:translateY(0);
  opacity:1;
  pointer-events:auto;
}

main.siteMain{
  opacity:0;
  margin-top:-3.5rem;
}
.mainVisual{
  position:relative;
  background:url("../images/bg-mainvisual.webp") no-repeat center;
  background-size:cover;
  padding-top:3.5rem;
}
.mainVisual .mainVisual__inner{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          justify-content:center;
          align-items:center;
  margin:0 auto;
  width:980px;
}
.mainVisual .mainVisual__mask{
  -o-object-fit:cover;
  position:absolute;
  bottom:-2.5rem;
  left:0;
  z-index:2;
  width:100%;
  height:150px;
     object-fit:cover;
  pointer-events:none;
}
.mainVisual .mainVisual__right{
  text-align:center;
}
.mainVisual .button{
  width:100%;
  overflow:visible;
}
.mainVisual .specialPrice{
  position:absolute;
  top:-1rem;
  left:0.5rem;
  z-index:3;
  pointer-events:none;
}
.mainVisual .sp-mainVisual{
  display:none;
}
.mainVisual .appTitle{
  margin-bottom:24px;
  color:#fff;
  font-weight:bold;
}
h2.ctaText{
  margin:0 auto 20px;
  font-size:56px;
  line-height:1.2;
  letter-spacing:2px;
}
h2.ctaText strong{
  font-size:70px;
}

.mainVisual .points{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          justify-content:center;
  margin-bottom:24px;
}

.mainVisual.is-sp{
  display:none;
}

@media only screen and (min-width: 768px) and (max-width: 1030px){
  .mainVisual{
    padding-top:0;
  }
  .mainVisual__inner{
    -webkit-transform:scale(0.8);
            transform:scale(0.8);
  }
  .mainVisual .mainVisual__mask{
    bottom:0;
  }
}
@media only screen and (max-width: 767px){
  .mainVisual.is-pc{
    display:none;
  }
  .mainVisual.is-sp{
    display:block;
    padding:40px 22px;
    width:100vw;
    overflow:hidden;
  }
  .mainVisual.is-sp .ctaText{
    margin:0 auto 8px;
    color:#fff;
    text-align:center;
  }
  .mainVisual.is-sp .mainVisual__mask{
    bottom:0;
    left:-5px;
    width:calc(100% + 10px);
    height:auto;
  }
  .mainVisualImage-sp{
    display:block;
    margin:auto;
  }
  .points li{
    width:33.3333333333vw;
  }
  .points img{
    width:100%;
    height:auto;
  }
  h2.ctaText{
    margin:0 auto 20px;
    font-size:36px;
    line-height:1.2;
    letter-spacing:2px;
  }
  h2.ctaText strong{
    font-size:42px;
  }
}
.news{
  background-color:#F3F1FF;
  padding-top:1rem;
}

.newsBox{
  position:relative;
  z-index:2;
  margin:0 auto 0;
  border-radius:30px;
  background:linear-gradient(135deg, #DC68FF 0%, #2972FC 100%) border-box border-box;
  padding:4px;
  width:980px;
  color:#332E3C;
}
.newsBox .news__inner{
  -webkit-box-pack:justify;
      -ms-flex-pack:justify;
  -webkit-box-align:center;
      -ms-flex-align:center;
  -ms-flex-wrap:wrap;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
          justify-content:space-between;
          align-items:center;
  border-radius:28px;
  background-color:#fff;
  padding:24px 48px;
  overflow:hidden;
}
.newsBox .news__inner h2{
  margin:0;
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
  font-size:30px;
  line-height:1.2;
  text-align:center;
}
.newsBox .news__inner h2 span{
  display:block;
  color:#8E7CFE;
  font-weight:normal;
  font-size:14px;
}
.newsBox .news__body{
  position:relative;
  width:620px;
  height:20px;
  font-size:16px;
}
.newsBox .news__body li{
  -webkit-transform:translateY(100%);
  -webkit-transition:opacity 0.5s, -webkit-transform 0.5s;
  position:absolute;
  top:0;
  left:0;
          transform:translateY(100%);
  opacity:0;
  transition:opacity 0.5s, -webkit-transform 0.5s;
  transition:opacity 0.5s, transform 0.5s;
  transition:opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
}
.newsBox .news__body li.is-active{
  -webkit-transform:translateY(0);
  -ms-flex-wrap:wrap;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
          transform:translateY(0);
  transform:translateY(0);
  opacity:1;
}
.newsBox .news__body .news__date{
  margin-right:1em;
}
.newsBox .news__body .news__title{
  width:450px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.newsBox .news__body a{
  -ms-flex-wrap:wrap;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
  color:#000;
  text-decoration:none;
}
.newsBox .news__pagenavi{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
.newsBox .news__pagenavi button{
  -webkit-transition:all 0.3s, -webkit-transform 0.3s;
  display:block;
  transition:all 0.3s, -webkit-transform 0.3s;
  transition:all 0.3s, transform 0.3s;
  transition:all 0.3s, transform 0.3s, -webkit-transform 0.3s;
  margin:0 4px;
  border:0;
  background:url(../images/pagenavi.png) no-repeat;
  background-size:100%;
  width:50px;
  height:50px;
}
.newsBox .news__pagenavi button:hover{
  opacity:0.8;
  cursor:pointer;
}
.newsBox .news__prev{
  -webkit-transform:rotate(90deg);
          transform:rotate(90deg);
}
.newsBox .news__next{
  -webkit-transform:rotate(-90deg);
          transform:rotate(-90deg);
}
@media only screen and (max-width: 979px){
  .newsBox{
    width:90%;
  }
  .newsBox .news__inner{
    padding:16px;
  }
  .newsBox .news__inner .news__body{
    width:100%;
    height:55px;
  }
  .newsBox .news__inner .news__body .news__date{
    margin-right:0;
    margin-bottom:0;
    width:100%;
    color:#999999;
    font-size:14px;
    text-align:center;
  }
  .newsBox .news__inner .news__body .news__title{
    width:80vw;
    text-align:center;
  }
  .newsBox .news__inner h2{
    margin-bottom:12px;
    width:100%;
    text-align:center;
  }
  .newsBox .news__pagenavi{
    -webkit-box-pack:justify;
        -ms-flex-pack:justify;
    position:absolute;
    top:32px;
            justify-content:space-between;
    width:90%;
  }
  .newsBox .news__pagenavi button{
    background-size:100%;
    width:32px;
    height:32px;
  }
}
.appReview{
  margin-top:-2px;
  background-color:#F3F1FF;
  padding-bottom:50px;
  overflow:hidden;
  text-align:center;
}
.appReview h2{
  margin-top:0;
  margin-bottom:24px;
  padding-top:2rem;
  font-size:60px;
}
.appReview p strong{
  margin-bottom:30px;
  font-size:30px;
}
.appReview .achievements{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  gap:30px;
  margin:0 auto 30px;
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
}
.appReview .achievements__item{
  border:2px solid #000;
  border-radius:30px;
  padding:6px;
  width:190px;
  line-height:1.2;
  text-align:center;
}
.appReview .achievements__item dl{
  margin-bottom:0;
}
.appReview .achievements__item dt{
  font-weight:bold;
  font-size:16px;
}
.appReview .achievements__item dd{
  margin:0;
  font-weight:bold;
  font-size:40px;
}
.appReview .achievements__item dd small{
  font-size:20px;
}
@media only screen and (max-width: 767px){
  .appReview h2{
    margin-bottom:16px;
    font-size:24px;
  }
  .appReview p strong{
    margin-bottom:20px;
    font-size:16px;
  }
  .appReview .achievements{
    gap:16px;
  }
  .appReview .achievements__item{
    border-radius:16px;
    width:105px;
  }
  .appReview .achievements__item img{
    width:16px;
    height:16px;
  }
  .appReview .achievements__item img.googlePlayStore-award{
    width:100%;
    height:auto;
  }
  .appReview .achievements__item dl{
    margin-top:4px;
  }
  .appReview .achievements__item dt{
    font-weight:bold;
    font-size:10px;
  }
  .appReview .achievements__item dd{
    margin:0;
    font-weight:bold;
    font-size:22px;
  }
  .appReview .achievements__item dd small{
    font-size:11px;
  }
}

.review-slider{
  position:relative;
  margin:0 auto;
  width:100%;
  text-align:left;
}

.review-slider__item{
  padding:10px;
}

.review-card{
  -webkit-box-shadow:6px 6px 12px 0px #F7ECFF inset, -12px -12px 24px 0px #DBCBFF inset;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
      -ms-flex-direction:column;
  -webkit-box-sizing:border-box;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          flex-direction:column;
          box-sizing:border-box;
  margin:0 auto;
          box-shadow:6px 6px 12px 0px #F7ECFF inset, -12px -12px 24px 0px #DBCBFF inset;
  border-radius:36px;
  background:#DFDAFF;
  padding:24px;
  width:340px;
  height:344px;
}

.review-card__rating{
  margin-bottom:16px;
}

.review-card__star{
  color:#FFB800;
  font-size:24px;
  letter-spacing:2px;
}

.review-card__title{
  margin:0 0 16px 0;
  font-weight:bold;
  font-size:18px;
  line-height:1.4;
}

.review-card__content{
  -webkit-box-flex:1;
      -ms-flex-positive:1;
  -ms-overflow-style:none;
          flex-grow:1;
  margin:0;
  overflow-y:auto;
  scrollbar-width:none;
  font-size:16px;
  line-height:1.8;
}

.review-card__content::-webkit-scrollbar{
  display:none;
}

.review-card__source{
  margin-top:16px;
  color:#666;
  font-style:italic;
  font-size:12px;
  text-align:right;
}
.slick-track{
  -webkit-box-align:stretch;
      -ms-flex-align:stretch;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:stretch;
}

.slick-slide{
  -webkit-box-align:stretch;
      -ms-flex-align:stretch;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:stretch;
  height:auto;
}

.slick-prev:before,
.slick-next:before{
  color:#DFDAFF;
  font-size:24px;
}

.slick-next{
  position:absolute;
  top:calc(50% - 35px);
  left:10px;
  z-index:1;
  border:0;
  background:url("../images/icon-arrow_left.png");
  background-size:100%;
  width:70px;
  height:70px;
  text-indent:-99999px;
}

.slick-prev{
  position:absolute;
  top:calc(50% - 35px);
  right:10px;
  z-index:1;
  border:0;
  background:url("../images/icon-arrow_right.png");
  background-size:100%;
  width:70px;
  height:70px;
  text-indent:-99999px;
}

@media only screen and (max-width: 767px){
  .review-slider{
    overflow:hidden;
  }
  .slick-next,
.slick-prev{
    top:calc(50% - 25px);
    width:50px;
    height:50px;
  }
  .slick-prev{
    right:0;
  }
  .slick-next{
    left:0;
  }
  .review-slider__item{
    padding:10px 20px;
  }
}
.trouble{
  background:url("../images/bg-nayami.png") repeat #4A23AD;
  background-size:260px;
  padding:80px 0 0;
}
.trouble h2{
  margin-bottom:50px;
  color:#fff;
  font-size:40px;
  text-align:center;
}
.trouble .concerns-box{
  margin:0 auto 2rem;
  border:6px solid var(--gold, #E4C25B);
  border-radius:30px;
  background-color:#ffffff;
  padding:40px 30px;
  width:100%;
  max-width:800px;
}
.trouble .concerns-list{
  margin:0 auto;
  padding:0;
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
  list-style:none;
}
.trouble .concerns-list__item{
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:center;
  margin-bottom:30px;
}
.trouble .concerns-list__item:last-child{
  margin-bottom:0;
}
.trouble .concerns-list__icon{
  margin-right:10px;
}
.trouble .concerns-list__text{
  color:#364C65;
  font-weight:bold;
  font-size:25px;
  line-height:1.4;
}
@media only screen and (max-width: 767px){
  .trouble{
    padding:50px 0 0;
    width:100vw;
    overflow:hidden;
  }
  .trouble h2{
    margin-bottom:32px;
    font-size:24px;
  }
  .trouble .concerns-box{
    padding:30px 20px;
    width:90%;
  }
  .trouble .concerns-list__icon img{
    width:28px;
    height:28px;
  }
  .trouble .concerns-list__text{
    font-size:15px;
  }
  .trouble .fukidashi-mask{
    margin-left:-5px;
    width:calc(100% + 10px);
  }
}
.learning{
  background-color:#F3F1FF;
  padding:50px 24px 100px;
  color:#364C65;
}
.learning h2{
  margin:0 0 2rem;
  text-align:center;
}
@media only screen and (max-width: 767px){
  .learning h2 img{
    width:100%;
    height:auto;
  }
}
.dontTired{
  padding:100px 24px;
  color:#fff;
}
.dontTired h2{
  margin:0 auto 30px;
  font-size:50px;
  text-align:center;
}
.dontTired .detail-title strong{
  font-size:44px;
}
@media only screen and (max-width: 767px){
  .dontTired{
    padding:30px 16px;
  }
  .dontTired h2{
    margin-bottom:30px;
    font-size:25px;
  }
}
.userInterview{
  background-color:#F3F1FF;
  padding:100px 16px;
  text-align:center;
}
.userInterview h2{
  font-size:50px;
}
.userInterview > p{
  font-size:24px;
}

.review__list{
  -ms-flex-wrap:wrap;
  -webkit-box-pack:justify;
      -ms-flex-pack:justify;
  -webkit-box-align:stretch;
      -ms-flex-align:stretch;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
          justify-content:space-between;
          align-items:stretch;
  margin:60px auto;
  width:980px;
}

.review__item{
  -webkit-box-shadow:0 0 16px rgba(0, 0, 0, 0.2);
  margin-bottom:20px;
          box-shadow:0 0 16px rgba(0, 0, 0, 0.2);
  border-radius:8px;
  background-color:#fff;
  padding:20px;
  width:calc((100% - 32px) / 3);
  text-align:center;
}
.review__item h3{
  margin:8px auto;
  font-size:16px;
}
.review__item p{
  margin:0;
  text-align:left;
}

@media only screen and (max-width: 980px){
  .userInterview{
    padding:50px 16px;
  }
  .userInterview h2{
    margin-bottom:0;
    font-size:26px;
  }
  .userInterview > p{
    font-size:14px;
    text-align:left;
  }
  .review__list{
    margin:30px auto 32px;
    width:100%;
  }
  .review__item{
    width:48%;
  }
  .review__item p{
    font-size:12px;
  }
}
.selectPlan{
  background-color:#4A23AD;
  padding:30px 16px 50px;
  color:#fff;
  text-align:center;
}
.selectPlan .selectPlan__inner{
  margin:0 auto;
  width:980px;
}
@media only screen and (min-width: 612px) and (max-width: 979px){
  .selectPlan .selectPlan__inner{
    width:100%;
  }
  .selectPlan .selectPlan__inner .plans{
    -webkit-transform:scale(0.8);
            transform:scale(0.8);
  }
}
.selectPlan h2{
  font-size:50px;
}
.selectPlan h2 img{
  display:block;
  margin:0 auto -2rem;
}
.selectPlan p{
  margin-bottom:50px;
  font-size:20px;
  text-align:left;
}
.selectPlan p strong{
  background-color:#FFF599;
  color:#000;
}
.selectPlan .plans{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          justify-content:center;
          align-items:center;
}
.selectPlan .plans .plan:nth-child(2){
  position:relative;
  margin-right:-0.5rem;
  margin-left:-1rem;
}
.selectPlan .plans .plan:nth-child(2)::after{
  display:block;
  position:absolute;
  top:20px;
  left:calc(50% - 32px);
  z-index:10;
  background:url("../images/price/image-recommend.png") no-repeat;
  background-size:100%;
  width:104px;
  height:16px;
  content:"";
}
.selectPlan .plans .plan:nth-child(2) img{
  position:relative;
  z-index:2;
}
@media only screen and (max-width: 768px){
  .selectPlan .selectPlan__inner{
    width:100%;
  }
  .selectPlan h2{
    margin-top:0;
    font-size:40px;
  }
  .selectPlan h2 img{
    width:290px;
    height:auto;
  }
  .selectPlan p{
    font-size:16px;
  }
  .selectPlan .plans{
    -ms-overflow-style:none;
    margin:-8rem -16px -6rem -10px;
    height:422px;
    overflow-x:auto;
    scrollbar-width:none;
  }
  .selectPlan .plans::-webkit-scrollbar{
    display:none;
  }
  .selectPlan .plans .plan img{
    width:145px;
    height:168px;
  }
  .selectPlan .plans .plan:nth-child(2){
    margin-right:-0.2rem;
    margin-left:-0.5rem;
  }
  .selectPlan .plans .plan:nth-child(2) img{
    width:172px;
    height:184px;
  }
  .selectPlan .plans .plan:nth-child(2)::after{
    display:block;
    position:absolute;
    top:-0.8rem;
    right:0;
    background:url("../images/image-recommend.png") no-repeat;
    background-size:100%;
    width:68px;
    height:61px;
    content:"";
  }
}
.detailPlan{
  background-color:#594AA6;
  padding-bottom:60px;
  color:#fff;
  text-align:center;
}
.detailPlan h2{
  margin-top:0;
  margin-bottom:64px;
  font-size:45px;
}
@media only screen and (max-width: 768px){
  .detailPlan h2{
    margin-bottom:30px;
    padding-right:16px;
    padding-left:16px;
    font-size:30px;
  }
}
.detailPlan .comparison-wrapper{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -ms-flex-wrap:wrap;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
          justify-content:center;
          align-items:center;
  gap:30px;
  margin:0 auto;
  max-width:980px;
}
@media (max-width: 980px){
  .detailPlan .comparison-wrapper{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
        -ms-flex-direction:column;
    -webkit-box-align:center;
        -ms-flex-align:center;
            flex-direction:column;
            align-items:center;
    gap:50px;
    width:100%;
  }
}
.detailPlan .detail-free,
.detailPlan .detail-pro{
  position:relative;
  border-radius:20px;
  width:100%;
  max-width:350px;
}
.detailPlan .plan-title{
  margin-top:0;
  margin-bottom:20px;
  font-weight:bold;
  font-size:30px;
  text-align:center;
}
.detailPlan .plan-subtitle{
  margin-bottom:20px;
  font-size:16px;
  text-align:center;
}
.detailPlan .divider{
  margin:20px 0;
  background-color:#DDDDDD;
  height:1px;
}
.detailPlan .feature-list{
  list-style:none;
}
.detailPlan .feature-item{
  -webkit-box-align:start;
      -ms-flex-align:start;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:flex-start;
  margin-bottom:24px;
}
.detailPlan .feature-item.inactive{
  opacity:0.5;
}
.detailPlan .check-icon{
  -ms-flex-negative:0;
      flex-shrink:0;
  margin-right:12px;
  width:24px;
  height:24px;
}
.detailPlan .feature-content{
  -webkit-box-flex:1;
      -ms-flex:1;
          flex:1;
}
.detailPlan .feature-content p{
  margin:0;
}
.detailPlan .feature-title{
  margin-bottom:4px;
  font-weight:bold;
  font-size:12px;
  text-align:left;
}
.detailPlan .feature-detail{
  font-size:12px;
  text-align:left;
}
.detailPlan .detail-free{
  border:1px solid #DDDDDD;
  background-color:#FFFFFF;
  padding:30px 40px;
}
.detailPlan .detail-free .plan-title{
  color:#8E7CFE;
}
.detailPlan .detail-free .plan-subtitle{
  color:#8E7CFE;
}
.detailPlan .detail-free .feature-title{
  color:#333333;
}
.detailPlan .detail-free .feature-detail{
  color:#666666;
}
.detailPlan .detail-pro{
  border:10px solid #FFD770;
  border-radius:30px;
  background-color:#3D2B88;
  padding:30px 20px;
  color:#FFFFFF;
}
.detailPlan .detail-pro .plan-subtitle{
  margin-top:70px;
  text-shadow:0 0 10px rgba(255, 255, 255, 0.5333333333);
}
.detailPlan .detail-pro .plan-title{
  margin-top:40px;
  color:#FFFFFF;
}
.detailPlan .detail-pro .feature-title{
  color:#FFFFFF;
  font-size:14px;
}
.detailPlan .detail-pro .feature-detail{
  color:#fff;
  font-size:14px;
}
.detailPlan .detail-pro .pro-badge{
  -webkit-transform:translateX(50%);
  position:absolute;
  top:-100px;
  right:50%;
          transform:translateX(50%);
}
.detailPlan .detail-pro .pro-badge #animation-twinkle3{
  position:absolute;
  top:30px;
  left:30px;
  width:120px;
  height:120px;
}
.detailPlan .detail-pro .pro-badge-img{
  width:180px;
  height:180px;
}
@media (max-width: 768px){
  .detailPlan .comparison-wrapper{
    gap:50px;
    padding:0 16px;
  }
  .detailPlan .detail-free,
.detailPlan .detail-pro{
    max-width:100%;
  }
  .detailPlan .detail-free,
.detailPlan .detail-pro{
    padding:20px 15px;
  }
  .detailPlan .plan-title{
    font-size:28px;
  }
  .detailPlan .plan-subtitle{
    font-size:16px;
  }
}
.modal-overlay{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:none;
  position:fixed;
  top:0;
  left:0;
          justify-content:center;
          align-items:center;
  z-index:1000;
  background:rgba(0, 0, 0, 0.7);
  width:100%;
  height:100%;
}

.modal-content{
  -webkit-box-shadow:0px 2px 8px 0px rgba(0, 0, 0, 0.25), 6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
  position:relative;
          box-shadow:0px 2px 8px 0px rgba(0, 0, 0, 0.25), 6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
  border-radius:58px;
  background:#fff;
  padding:40px;
  width:520px;
  max-width:90%;
}
.modal-content img{
  aspect-ratio:360/315;
  max-width:100%;
  height:auto;
}

.modal-close{
  position:absolute;
  top:25px;
  right:25px;
  cursor:pointer;
  border:none;
  background:none;
  padding:10px;
}
.modal-close img{
  width:35px;
  height:35px;
}
@media only screen and (max-width: 767px){
  .modal-close{
    top:-50px;
    right:0;
  }
}

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

.qr-wrapper{
  margin:30px auto;
}
.qa{
  background-color:#F3F1FF;
  padding:100px 16px;
  text-align:center;
}
.qa h2{
  color:#364C65;
  font-size:50px;
}
.qa .faq-container{
  margin:0 auto;
  width:980px;
  max-width:100%;
  font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
}
.qa .faq-item{
  margin:0 0 24px;
}
.qa .faq-question{
  -webkit-box-align:stretch;
      -ms-flex-align:stretch;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position:relative;
          align-items:stretch;
  cursor:pointer;
  background-color:#FFFFFF;
  padding:0;
  padding-right:50px;
  table-layout:fixed;
}
.qa .faq-answer{
  display:none;
  margin-top:6px;
  background-color:#FFFFFF;
  padding:0;
}
.qa .faq-answer .faq-icon{
  background-color:#fff;
  color:#4A23AD;
}
.qa .faq-item.active .faq-answer{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
.qa .faq-icon{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-align:start;
      -ms-flex-align:start;
  -ms-flex-negative:0;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-shrink:0;
          justify-content:center;
          align-items:flex-start;
  margin:0;
  border-radius:0;
  background-color:#4A23AD;
  padding:10px 0;
  width:60px;
  color:#FFFFFF;
  font-weight:bold;
  font-size:32px;
}
.qa .faq-question-text{
  -webkit-box-flex:1;
      -ms-flex:1;
          flex:1;
  margin:0;
  padding:20px;
  color:#000;
  font-weight:bold;
  font-size:20px;
  text-align:left;
}
.qa .faq-answer-text{
  -webkit-box-flex:1;
      -ms-flex:1;
          flex:1;
  padding:20px;
  color:#555;
  font-size:16px;
  line-height:1.6;
  text-align:left;
}
.qa .faq-answer-text ul{
  margin:1.5rem 1rem;
  list-style:circle;
}
.qa .faq-answer-text ul:first-child{
  margin-top:0;
}
.qa .faq-answer-text ul li{
  margin-bottom:0.5rem;
}
.qa .faq-answer-text ul li:last-child{
  margin-bottom:0;
}
.qa .faq-answer-text p{
  margin:0 auto 1rem;
}
.qa .faq-answer-text p:last-child{
  margin-bottom:0;
}
.qa .faq-toggle{
  -webkit-transform:translateY(-50%);
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position:absolute;
  top:50%;
  right:20px;
          justify-content:center;
          align-items:center;
          transform:translateY(-50%);
  cursor:pointer;
  border:none;
  background:none;
  padding:0;
  width:40px;
  height:40px;
  font-size:24px;
}
.qa .faq-toggle-icon{
  color:#512DA8;
  font-size:28px;
  line-height:1;
}
.qa .faq-link{
  color:#6E41E0;
  text-decoration:none;
}
.qa .faq-link:hover{
  text-decoration:underline;
}
@media (max-width: 768px){
  .qa{
    padding:30px 16px;
  }
  .qa h2{
    color:#364C65;
    font-size:30px;
  }
  .qa .faq-question-text{
    padding:15px;
    font-size:18px;
  }
  .qa .faq-answer-text{
    padding:15px;
    font-size:16px;
  }
  .qa .faq-icon{
    width:50px;
    font-size:26px;
  }
  .qa .faq-toggle{
    right:15px;
  }
}
@media (max-width: 480px){
  .qa .faq-question-text{
    padding:10px;
    font-size:16px;
  }
  .qa .faq-answer-text{
    padding:10px;
    font-size:14px;
  }
  .qa .faq-icon{
    width:40px;
    font-size:22px;
  }
  .qa .faq-toggle{
    right:10px;
  }
}
.siteContainer{
  opacity:0;
  margin:0 auto;
  padding-top:3.5rem;
  padding-right:16px;
  padding-bottom:50px;
  padding-left:16px;
  width:980px;
  color:#fff;
  font-size:18px;
}
.siteContainer h1{
  font-size:40px;
}
@media (max-width: 980px){
  .siteContainer{
    width:100%;
  }
  .siteContainer h1{
    font-size:30px;
  }
  .siteContainer p{
    margin-bottom:30px;
    font-size:15px;
  }
}
.storyLibrary{
  overflow:hidden;
}
.storyLibrary h2{
  margin-bottom:12px;
  font-size:40px;
}
@media only screen and (max-width: 767px){
  .storyLibrary{
    padding:0;
  }
  .storyLibrary h2{
    font-size:30px;
  }
}
.storyLibrary__header{
  -webkit-box-pack:start;
      -ms-flex-pack:start;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          justify-content:start;
          align-items:center;
  margin-bottom:16px;
  color:#fff;
}
.storyLibrary__header h3{
  margin-top:0;
  margin-right:1em;
  margin-bottom:0;
}
.storyLibrary__header a{
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:center;
  opacity:0.7;
  color:#fff;
  text-decoration:none;
}
.storyLibrary__header a::after{
  display:inline-block;
  margin-left:0.2em;
  background:url("../images/plus.svg") no-repeat;
  background-size:100% !important;
  width:14px;
  height:14px;
  content:"";
}
.storyLibrary__header a.is-hide::after{
  background:url("../images/minus.svg") no-repeat;
}

.storyLibrary .storyLibrary__list{
  -ms-flex-wrap:wrap;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      flex-wrap:wrap;
  margin-right:-26px;
  margin-bottom:24px;
}
.storyLibrary .storyLibrary__list li{
  display:none;
  margin-right:26px;
  margin-bottom:26px;
  width:calc((100% - 156px) / 6);
}
@media only screen and (max-width: 767px){
  .storyLibrary .storyLibrary__list li{
    width:calc((100% - 78px) / 3);
  }
}
.storyLibrary .storyLibrary__list li:nth-of-type(-n + 6){
  display:block;
}
.storyLibrary .storyLibrary__list figure{
  width:100%;
  text-align:left;
}
.storyLibrary .storyLibrary__list figure img{
  border-radius:16px;
  background:rgba(0, 0, 0, 0.3);
  width:100%;
  height:auto;
}
.storyLibrary .storyLibrary__list figcaption span{
  display:block;
  -webkit-line-clamp:1;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.storyLibrary .storyLibrary__list figcaption .japaneseTitle{
  margin-top:10px;
  color:#fff;
  font-weight:bold;
  font-size:16px;
}
@media only screen and (max-width: 450px){
  .storyLibrary .storyLibrary__list figcaption .japaneseTitle{
    font-size:14px;
  }
}
.storyLibrary .storyLibrary__list figcaption .englishTitle{
  color:rgba(255, 255, 255, 0.7);
  font-size:12px;
}
@media only screen and (max-width: 450px){
  .storyLibrary .storyLibrary__list figcaption .englishTitle{
    font-size:11px;
  }
}
.storyLibrary .levelList{
  margin-top:30px;
}
.storyLibrary .levelList dt{
  margin-bottom:30px;
  font-weight:bold;
  font-size:30px;
}
.storyLibrary .levelList dd{
  margin-left:0;
}
.feature-card{
  -webkit-box-align:center;
      -ms-flex-align:center;
  -webkit-box-shadow:0px 2px 8px 0px rgba(0, 0, 0, 0.25), 6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:center;
  gap:0;
  margin-bottom:40px;
          box-shadow:0px 2px 8px 0px rgba(0, 0, 0, 0.25), 6px 6px 12px 0px #ECF5FF inset, -12px -12px 24px 0px #CBE3FF inset;
  border-radius:36px;
  background-color:#fff;
  padding:40px;
  color:#333;
}
.feature-card .feature-image{
  -ms-flex-negative:0;
      flex-shrink:0;
}
.feature-card .feature-image img{
  width:380px;
  height:auto;
}
@media (max-width: 768px){
  .feature-card{
    -ms-flex-wrap:wrap;
        flex-wrap:wrap;
    padding:30px;
  }
  .feature-card .feature-image{
    margin:0 auto;
    width:100%;
  }
  .feature-card .feature-image img{
    width:100%;
    height:auto;
  }
  .feature-card .feature-number{
    -ms-flex-wrap:wrap;
    -webkit-box-pack:center;
        -ms-flex-pack:center;
    display:block;
        flex-wrap:wrap;
            justify-content:center;
    text-align:center;
  }
}

.feature-number{
  -webkit-box-pack:start;
      -ms-flex-pack:start;
  -ms-flex-line-pack:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
      align-content:center;
          justify-content:start;
}

.feature-text{
  font-size:20px;
}
.feature-text strong{
  background:-webkit-gradient(linear, right top, left top, from(#F8E1FF), to(#D4E3FE));
  background:linear-gradient(270deg, #F8E1FF 0%, #D4E3FE 100%);
  font-weight:bold;
}
.phrase-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:30px;
  margin:0 auto;
  max-width:980px;
}
.phrase-card{
  position:relative;
  position:relative;
  z-index:0;
  border-radius:30px;
  background:-webkit-gradient(linear, left top, left bottom, color-stop(-6.02%, #2972FC), color-stop(102.73%, #DC68FF));
  background:linear-gradient(180deg, #2972FC -6.02%, #DC68FF 102.73%);
  padding:20px;
  width:100%;
  overflow:hidden;
  color:#fff;
}
.phrase-card::after{
  position:absolute;
  z-index:-1;
  inset:4px;
  border-radius:26px;
  background:#5F31DE;
  content:"";
}
.phrase-card.larger{
  padding:20px 10px;
}
.card-title{
  margin-bottom:10px;
  font-weight:bold;
  font-size:20px;
  text-align:center;
}
.phrase-list{
  padding-left:15px;
  list-style-type:none;
}

.phrase-list li{
  position:relative;
  margin-bottom:0;
  padding-left:15px;
  font-size:16px;
  letter-spacing:1px;
}

.phrase-list li::before{
  position:absolute;
  left:0;
  content:"•";
}
.phrase-list li.more{
  margin-top:15px;
  padding-right:10px;
  font-size:12px;
  text-align:right;
}
.phrase-list li.more::before{
  content:"" !important;
}
@media (max-width: 900px){
  .phrase-grid{
    grid-template-columns:repeat(2, 1fr);
  }
}
@media (max-width: 600px){
  .phrase-grid{
    grid-template-columns:1fr;
  }
  .card-title{
    font-size:18px;
  }
  .phrase-list li{
    font-size:14px;
  }
}
.media{
  background-color:#F3F1FF;
}
.media h2{
  margin-top:0;
  color:#364C65;
  font-size:50px;
  text-align:center;
}
@media (max-width: 768px){
  .media{
    padding:30px 16px;
  }
  .media h2{
    font-size:30px;
  }
}
.media .subTitle{
  margin-top:-12px;
  margin-bottom:60px;
  color:#364C65;
  text-align:center;
}
.media .mediaNews{
  margin:auto;
  width:980px;
}
@media only screen and (max-width: 767px){
  .media .mediaNews{
    padding:0 16px;
    width:100%;
  }
}
.media .mediaNews__item:not(:last-child){
  margin-bottom:24px;
}
.media .mediaNews__item a{
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          align-items:center;
  color:#364C65;
  line-height:1.4;
  text-decoration:none;
}
@media only screen and (max-width: 767px){
  .media .mediaNews__item a{
    -ms-flex-wrap:wrap;
        flex-wrap:wrap;
  }
}
.media .mediaNews__item .media__image{
  margin-right:16px;
  padding:3px;
  width:268px;
  height:84px;
}
@media only screen and (max-width: 767px){
  .media .mediaNews__item .media__image{
    margin-right:0;
    margin-bottom:8px;
    aspect-ratio:268/84;
    width:100%;
  }
}
.media .mediaNews__item .media__image .media__image__inner{
  -webkit-box-pack:center;
      -ms-flex-pack:center;
  -webkit-box-align:center;
      -ms-flex-align:center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
          justify-content:center;
          align-items:center;
  background-color:#fff;
  padding:24px;
  height:100%;
}
.media .mediaNews__item .media__image img{
  -o-object-fit:cover;
  max-width:90%;
  max-height:78px;
     object-fit:cover;
}
.media .mediaNews__item .media__detail{
  height:-webkit-fit-content;
  height:-moz-fit-content;
  height:fit-content;
}
@media only screen and (min-width: 768px){
  .media .mediaNews__item .media__detail{
    -webkit-box-flex:1;
        -ms-flex:1;
            flex:1;
  }
}
.media .mediaNews__item .media__date{
  margin-top:0;
  margin-bottom:4px;
  font-size:12px;
}
.media .mediaNews__item .media__title{
  margin:0;
  font-weight:bold;
  font-size:16px;
}

.nami{
  background-color:#F3F1FF;
  width:100%;
}
.nami svg{
  width:100%;
  height:auto;
}
.nami::after{
  display:block;
  margin-top:-1px;
  background-color:#453B57;
  width:100%;
  height:3px;
  content:"";
}

.youTube{
  padding:30px;
  text-align:center;
}
.youTube h2{
  margin-top:0;
  color:#fff;
  font-size:30px;
}
.youTube iframe{
  margin-bottom:1rem;
  aspect-ratio:16/9;
  max-width:100%;
  height:auto;
}

#open-aboutEvent{
  position:fixed;
  right:2rem;
  bottom:2rem;
  z-index:9;
}
@media only screen and (max-width: 767px){
  #open-aboutEvent{
    right:1rem;
    bottom:1rem;
  }
}
#open-aboutEvent img{
  width:104px;
  height:76px;
}
/*# sourceMappingURL=style.css.map */