@charset "UTF-8";
/*
$basecolor2: #D7E98D; // red
$basecolor3: #BE99FF; // red
$basecolor4: #FFF899; // red
$basecolor5: #CCCCCC; // red

$basecolor6: #E199FF; // red
$basecolor7: #99D6FF; // red
$basecolor8: #FF99C3; // red
$basecolor9: #FFCF99; // red
*/
@import url("//fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("//fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700&display=swap");
#main-slider {
  display: none;
}

/* =================================================
   unique layout
================================================= */
/* -------------------------------------
           animation
*/
@keyframes motion-main-link {
  0% {
    transform: translateY(-1rem);
    opacity: 0;
  }
  50% {
    padding: 0 0 8vw;
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    padding: 0 0 12vw;
    transform: translateY(2rem);
    opacity: 0;
  }
}

/* -------------------------------------
   article
------------------------------------- */
#article {
  padding: 0;
  /* -------------------------------------
       main
    ------------------------------------- */
  /* -------------------------------------
       section
    ------------------------------------- */
}

#article #main {
  width: 100%;
  position: relative;
  overflow: hidden;
}

#article #main img {
  display: block;
  width: 100%;
  height: auto;
}

#article #main a,
#article #main a:link {
  display: block;
  text-decoration: none;
}

#article #main .inner {
  width: 100%;
  position: relative;
  /* -------------------------------------
               slider
            ------------------------------------- */
}

#article #main .inner .content {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  /* -------------------------------------
                   news
                */
}

#article #main .inner .content .h2.h2_1 {
  width: 84vw;
  position: absolute;
  z-index: 10;
  top: 22.66667vw;
  left: 50%;
  transform: translateX(-50%);
}

#article #main .inner .content .h2.h2_1 span {
  display: block;
  font-feature-settings: "palt";
  color: white;
  text-shadow: 0 0 4px black, 0 0 6px rgba(0, 0, 0, 0.4);
}

#article #main .inner .content .h2.h2_1 span.txt {
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "游明朝","游明朝体",YuMincho,"Yu Mincho","Times New Roman","メイリオ",Meiryo,serif;
  font-weight: bold;
  font-weight: 500;
  letter-spacing: 0.075em;
  font-size: 3.2rem;
  line-height: 1.35;
  width: 90.66667vw;
}

#article #main .inner .content .h2.h2_1 span.txt_2 {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-weight: bold;
  font-weight: 400;
  letter-spacing: 0.15em;
  font-size: 1.2rem;
  line-height: 1.75;
  margin: 2.66667vw 0 0;
}

#article #main .inner .content .figure.img_cach {
  width: 84vw;
  position: absolute;
  z-index: 1;
  bottom: 18.66667vw;
  left: 50%;
  transform: translateX(-50%);
}

#article #main .inner .content .figure.img_hand {
  width: 84vw;
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: -13.33333vw;
}

#article #main .inner .content .item {
  display: flex;
  width: 100%;
  padding: 0 0 0.53333vw;
  margin: 0;
  background: rgba(255, 255, 255, 0.8);
  position: absolute;
  z-index: 1;
  bottom: 0;
}

#article #main .inner .content .item a,
#article #main .inner .content .item a:link {
  display: block;
  text-decoration: none;
}

#article #main .inner .content .item .h3.h3_1 span {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 400;
  font-feature-settings: "pkna";
  letter-spacing: 0.05em;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1;
  color: white;
  width: 9.33333vw;
  height: 4vw;
  padding-top: 0.13333vw;
  margin: 0 1.33333vw 0 0;
  background: #CB0400;
  box-sizing: border-box;
}

#article #main .inner .content .item .h4.h4_1 a,
#article #main .inner .content .item .h4.h4_1 a:link {
  padding: 0 2.66667vw 0 0;
}

#article #main .inner .content .item .h4.h4_1 span {
  display: block;
  font-feature-settings: "pkna";
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-weight: bold;
  font-weight: 400;
  letter-spacing: 0.075em;
  color: black;
  font-size: 1.2rem;
  line-height: 1.25;
}

#article #main .inner .content .item.new .day {
  /*
                            &:after{
                                content: "NEW";
                                display: flex;
                                align-items: center;
                                justify-content: center;
                                @include webfont_e1; //weight : 700
                                letter-spacing: 0.05em;
                                font-size: 1rem;
                                text-align: center;
                                line-height: 1;
                                color: $monocolor;
                                width: size(80);
                                height: size(50);
                                padding-top: size(5);
                                background: $basecolor;
                                box-sizing: border-box;
                            }
                            */
}

#article #main .inner .slick_slider {
  margin: 0 !important;
  position: relative;
  /* -------------------------------------
                   slider
                */
  /* -------------------------------------
                   slick-arrow
                */
  /* -------------------------------------
                   slick-dots
                */
}

#article #main .inner .slick_slider .img,
#article #main .inner .slick_slider a.item,
#article #main .inner .slick_slider a.item:link {
  display: block;
  width: 100%;
  height: 90vh;
  overflow: hidden;
  background-position: center;
  background-size: cover;
}

#article #main .inner .slick_slider .img img,
#article #main .inner .slick_slider a.item img,
#article #main .inner .slick_slider a.item:link img {
  width: auto;
  height: 100%;
  position: relative;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#article #main .inner .slick_slider .slider {
  display: none;
  min-height: 1px;
  opacity: 0;
  transition: 0.3s;
}

#article #main .inner .slick_slider .slider:first-child {
  display: block;
  opacity: 1;
}

#article #main .inner .slick_slider.slick-initialized .slider {
  display: block;
  opacity: 1;
}

#article #main .inner .slick_slider .slick-arrow {
  text-indent: -9999px;
  opacity: 0.1;
  transition: 0.3s;
  display: block;
  width: 6vw;
  height: 6vw;
  background: #999999;
  border-radius: 100%;
  box-sizing: border-box;
  position: absolute;
  z-index: 1;
  top: 50%;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.35);
}

#article #main .inner .slick_slider .slick-arrow:after {
  content: "";
  display: block;
  width: 2.6vw;
  height: 2.6vw;
  margin: 0px auto 0 auto;
  border-top: 2px solid white;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 20%;
}

#article #main .inner .slick_slider .slick-arrow:hover {
  opacity: 0.9;
}

#article #main .inner .slick_slider .slick-arrow.slick-next {
  right: 5px !important;
}

#article #main .inner .slick_slider .slick-arrow.slick-next:after {
  border-right: 2px solid white;
  transform: translate(-68%, -50%) rotate(45deg);
}

#article #main .inner .slick_slider .slick-arrow.slick-prev {
  left: 5px !important;
}

#article #main .inner .slick_slider .slick-arrow.slick-prev:after {
  border-left: 2px solid white;
  transform: translate(-32%, -50%) rotate(-45deg);
}

#article #main .inner .slick_slider .slick-dots {
  bottom: 4px !important;
}

#article #main .inner .slick_slider .slick-dots li {
  text-indent: -9999px;
  width: 12px;
  height: 12px;
  margin: 0 0.6em !important;
  background: white;
  background: rgba(255, 255, 255, 0.85);
  border-radius: 100%;
}

#article #main .inner .slick_slider .slick-dots li button:before {
  content: "" !important;
}

#article #main .inner .slick_slider .slick-dots li.slick-active {
  background: #89b5e4;
  border: 1px solid white;
}

#article #main:hover .slick-arrow {
  opacity: 0.4;
}

#article .section {
  width: 100%;
  padding: 0;
  position: relative;
  overflow: hidden;
  /* -------------------------------------
           common
        */
  /* -------------------------------------
           about
        */
}

#article .section .inner {
  width: 100%;
  margin: 0 auto;
}

#article .section .h3 {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-weight: bold;
  font-weight: 400;
  font-feature-settings: "pkna";
}

#article .section .h3 span {
  display: block;
  line-height: 1;
}

#article .section .h4 {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-weight: bold;
  font-weight: 500;
  font-feature-settings: "pkna";
}

#article .section ul {
  list-style: none;
}

#article .section a,
#article .section a:link {
  display: block;
  text-decoration: none;
  position: relative;
}

#article .section img {
  display: block;
  width: 100%;
  height: auto;
}

#article .section .link {
  width: 100%;
  margin: 0 auto;
}

#article .section .link a,
#article .section .link a:link {
  text-decoration: none;
  display: block;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "游明朝","游明朝体",YuMincho,"Yu Mincho","Times New Roman","メイリオ",Meiryo,serif;
  font-weight: bold;
  font-weight: 300;
  font-feature-settings: "palt";
  letter-spacing: 0.175em;
  color: white;
  font-size: 1rem;
  line-height: 1;
  text-align: center;
  width: 100%;
  padding: 1rem 0;
  background: rgba(137, 181, 228, 0.4);
}

#article .section .link a span,
#article .section .link a:link span {
  display: inline-block;
  width: auto;
  padding: 0.5rem 3rem;
  margin: 0 auto;
  border: 1px solid rgba(255, 255, 255, 0.5);
  box-sizing: border-box;
  position: relative;
}

#article .section .link a span:before, #article .section .link a span:after,
#article .section .link a:link span:before,
#article .section .link a:link span:after {
  content: "";
  display: block;
  box-sizing: border-box;
  position: absolute;
  z-index: 1;
  top: 50%;
}

#article .section .link a span:after,
#article .section .link a:link span:after {
  width: 0.6rem;
  height: 0.6rem;
  border-top: 1px solid white;
  border-right: 1px solid white;
  z-index: 9;
  left: 0.75rem;
  transform: translateY(-50%) rotate(45deg);
  opacity: 0.6;
}

#article .section.about .inner .content {
  width: 100%;
  margin: 0 auto;
}

#article .section.about .inner .content .h3.h3_2 span {
  letter-spacing: 0.075em;
  text-align: center;
  color: black;
  font-size: 1.4rem;
  line-height: 1.5;
}

#article .section.about .inner .content .item {
  padding: 5.33333vw 0;
}

/* -------------------------------------
   footer
------------------------------------- */
#footer {
  padding: 5.33333vw 0 0;
  /* -------------------------------------
       aside
    ------------------------------------- */
}

#footer .aside {
  background: none;
}

@media screen and (min-width: 768px) {
  #main_slider {
    display: block;
  }
  /* =================================================
   unique layout
================================================= */
  /* -------------------------------------
           animation
*/
  @keyframes motion-main-link {
    0% {
      transform: translateY(-10px);
      opacity: 0;
    }
    50% {
      padding: 0 0 60px;
      transform: translateY(0);
      opacity: 1;
    }
    100% {
      padding: 0 0 90px;
      transform: translateY(20px);
      opacity: 0;
    }
  }
  /* -------------------------------------
   article
------------------------------------- */
  #article {
    /* -------------------------------------
       main
    ------------------------------------- */
    /* -------------------------------------
       section
    ------------------------------------- */
  }
  #article #main {
    width: 100%;
    padding: 0;
    margin: 0 auto;
    background: black;
  }
  #article #main .inner {
    width: 100%;
    margin: 0;
    /* -------------------------------------
               slider
            ------------------------------------- */
  }
  #article #main .inner .content {
    width: 1200px;
    left: 50%;
    transform: translateX(-50%);
    /* -------------------------------------
                   news
                */
  }
  #article #main .inner .content .h2.h2_1 {
    width: 630px;
    top: 260px;
    left: auto;
    right: 0;
    transform: none;
  }
  #article #main .inner .content .h2.h2_1 span {
    text-shadow: 0 0 6px black, 0 0 10px black;
  }
  #article #main .inner .content .h2.h2_1 span.txt {
    font-size: 5.4rem;
    line-height: 1.5;
  }
  #article #main .inner .content .h2.h2_1 span.txt_2 {
    font-size: 2.4rem;
    line-height: 1.75;
    margin: 10px 0 0;
  }
  #article #main .inner .content .figure.img_cach {
    width: 1200px;
    bottom: 120px;
    left: 50%;
    transform: translateX(-50%);
  }
  #article #main .inner .content .figure.img_cach img {
    width: 536px;
  }
  #article #main .inner .content .figure.img_hand {
    width: 1920px;
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  #article #main .inner .content .figure.img_hand img {
    width: 878px;
  }
  #article #main .inner .content .item {
    align-items: center;
    justify-content: center;
    width: 100vw;
    height: 40px;
    padding: 0;
    background: rgba(255, 255, 255, 0.8);
    z-index: 1;
    left: 50%;
    transform: translateX(-50%);
  }
  #article #main .inner .content .item .h3.h3_1 span {
    width: 48px;
    height: 20px;
    padding-top: 0;
    margin: 0 10px 0 0;
  }
  #article #main .inner .content .item .h4.h4_1 {
    margin: -2.3px 0 0;
  }
  #article #main .inner .content .item .h4.h4_1 a,
  #article #main .inner .content .item .h4.h4_1 a:link {
    display: flex;
    padding: 0 0 0 0;
  }
  #article #main .inner .content .item .h4.h4_1 span {
    display: inline-block;
    font-size: 1.2rem;
    line-height: 1.25;
    width: auto;
  }
  #article #main .inner .content .item .h4.h4_1 span.day {
    margin: 0 20px 0 0;
  }
  #article #main .inner .content .item.new .day {
    /*
                            &:after{
                                font-size: 1rem;
                                width: 50px;
                                height: 20px;
                                padding-top: 2px;
                            }
                            */
  }
  #article #main .inner .slick_slider {
    display: block;
    /* -------------------------------------
                   slider
                */
    /* -------------------------------------
                   slick-arrow
                */
    /* -------------------------------------
                   slick-dots
                */
  }
  #article #main .inner .slick_slider .img,
  #article #main .inner .slick_slider a.item,
  #article #main .inner .slick_slider a.item:link {
    height: 860px;
  }
  #article #main .inner .slick_slider .slick-list {
    overflow: visible !important;
  }
  #article #main .inner .slick_slider .slider {
    position: relative;
    opacity: 1;
    transition: none;
    /*
                    &.slick-current{
                        
                        z-index: 9;
                        transform: scaleY(1);
                        box-shadow: 0 0 20px rgba($monocolor,1);
                        
                        a,
                        a:link,
                        .img{

                            img{
                                opacity: 1;
                            }
                        }
                    }
                    */
  }
  #article #main .inner .slick_slider .slider a,
  #article #main .inner .slick_slider .slider a:link,
  #article #main .inner .slick_slider .slider .img {
    width: 100%;
  }
  #article #main .inner .slick_slider .slick-arrow {
    width: 50px;
    height: 50px;
    opacity: 0.4;
  }
  #article #main .inner .slick_slider .slick-arrow:after {
    width: 16px;
    height: 16px;
    border-top: 3px solid white;
  }
  #article #main .inner .slick_slider .slick-arrow:hover {
    opacity: 1;
  }
  #article #main .inner .slick_slider .slick-arrow.slick-next {
    right: -30px !important;
  }
  #article #main .inner .slick_slider .slick-arrow.slick-next:after {
    border-right: 3px solid white;
  }
  #article #main .inner .slick_slider .slick-arrow.slick-prev {
    left: -30px !important;
  }
  #article #main .inner .slick_slider .slick-arrow.slick-prev:after {
    border-left: 3px solid white;
  }
  #article #main .inner .slick_slider:hover .slick-arrow {
    opacity: 1;
  }
  #article #main .inner .slick_slider .slick-dots {
    display: flex;
    justify-content: flex-end;
    width: 1200px;
    bottom: 12px !important;
    left: 50%;
    transform: translateX(-50%);
  }
  #article #main .inner .slick_slider .slick-dots li {
    width: 12px;
    height: 12px;
    margin: 0 8px !important;
  }
  #article #main:hover .slick-arrow {
    opacity: 1;
  }
  #article .section {
    width: 100%;
    /* -------------------------------------
           common
        */
    /* -------------------------------------
           about
        */
  }
  #article .section .inner {
    width: 1280px;
    padding: 0;
    position: relative;
    z-index: 1;
  }
  #article .section .inner .content {
    width: 1200px;
    position: relative;
    z-index: 1;
  }
  #article .section .link {
    text-align: center;
    margin: 40px auto 0;
  }
  #article .section .link a,
  #article .section .link a:link {
    display: inline-block;
    font-size: 1.4rem;
    width: auto;
    padding: 0;
    box-sizing: border-box;
  }
  #article .section .link a span,
  #article .section .link a:link span {
    padding: 12px 60px 0;
    height: 40px;
    border: none;
    /*
    &:before{
        width: 16px;
        height: 16px;
        background: $monocolor2;
        border-radius: 100%;
        right: 10px;
        transform: translateY(-50%);
    }
    */
  }
  #article .section .link a span:after,
  #article .section .link a:link span:after {
    left: 12px;
  }
  #article .section.about .inner .content {
    width: 1200px;
  }
  #article .section.about .inner .content .h3.h3_2 span {
    font-size: 1.8rem;
    line-height: 1.75;
  }
  #article .section.about .inner .content .item {
    padding: 24px 0 50px;
  }
}

@media screen and (min-width: 1536px) {
  /* -------------------------------------
   article
------------------------------------- */
  #article {
    padding: 0;
    /* -------------------------------------
       main
    ------------------------------------- */
  }
  #article #main .inner .slider a img,
  #article #main .inner .slider a:link img,
  #article #main .inner .slider .img img {
    display: block;
    width: 100%;
    height: auto;
  }
  /* -------------------------------------
footer
------------------------------------- */
  #footer {
    /* -------------------------------------
       aside
    ------------------------------------- */
  }
  #footer .aside {
    /* -------------------------------------
           aside_2
        */
  }
  #footer .aside.aside_2 .inner {
    padding: 0;
  }
  #footer .aside.aside_2 .inner small {
    text-align: center;
  }
}
