@charset "UTF-8";
@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");
@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@100;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 .h2.h2_1 {
  padding: 2.66667vw 5.33333vw;
  border: 3px solid white;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#article #main .inner .h2.h2_1 span {
  display: block;
  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: "palt";
  white-space: nowrap;
  letter-spacing: 0.25em;
  text-align: center;
  color: white;
  font-size: 1.6rem;
  line-height: 1.75;
  text-shadow: 0 0 12px rgba(0, 0, 0, 0.2);
}

#article #main .inner .bnr_main_free {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
}

#article #main .inner .bnr_main_free a,
#article #main .inner .bnr_main_free a:link {
  text-decoration: none;
  display: flex;
  align-items: center;
  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: "palt";
  letter-spacing: 0.075em;
  color: #333333;
  font-size: 1.2rem;
  line-height: 1;
  padding: 0.75rem 1rem 0.75rem 0.75rem;
  background: #FFDD00;
}

#article #main .inner .bnr_main_free a:before,
#article #main .inner .bnr_main_free a:link:before {
  content: "";
  display: block;
  width: 1.33333vw;
  height: 1.33333vw;
  margin: 0 1rem 0 0;
  border-top: 1px solid #333333;
  border-right: 1px solid #333333;
  transform: rotate(45deg);
  opacity: 0.6;
}

#article #main .inner .link {
  position: absolute;
  z-index: 1;
  bottom: 2.66667vw;
  left: 50%;
  transform: translateX(-50%);
  text-shadow: 0 0 6px black, 0 0 10px rgba(0, 0, 0, 0.4);
}

#article #main .inner .link a,
#article #main .inner .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.15em;
  color: white;
  font-size: 1rem;
  line-height: 1;
  padding: 0 0 8vw;
  position: relative;
  z-index: 1;
  animation-fill-mode: backwards;
  animation-name: motion-main-link;
  animation-delay: 0s;
  animation-duration: 2s;
  animation-timing-function: ease-in;
  animation-iteration-count: infinite;
}

#article #main .inner .link a:before, #article #main .inner .link a:after,
#article #main .inner .link a:link:before,
#article #main .inner .link a:link:after {
  content: "";
  display: block;
  width: 1px;
  height: 8vw;
  background: white;
  box-shadow: 0 0 6px black, 0 0 10px rgba(0, 0, 0, 0.4);
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 50%;
}

#article #main .inner .link a:before,
#article #main .inner .link a:link:before {
  margin-left: -3.46667vw;
  transform: translateX(-50%) rotate(-60deg);
}

#article #main .inner .link a:after,
#article #main .inner .link a:link:after {
  margin-left: 3.46667vw;
  transform: translateX(-50%) rotate(60deg);
}

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

#article #main .inner .img img,
#article #main .inner a.item img,
#article #main .inner 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 {
  margin: 0 !important;
  position: relative;
  /* -------------------------------------
                   slider
                */
  /* -------------------------------------
                   slick-arrow
                */
  /* -------------------------------------
                   slick-dots
                */
}

#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: #036EB8;
  border: 1px solid white;
}

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

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

#article .section .inner {
  margin: 0 auto;
  /* -------------------------------------
               slick_slider
            ------------------------------------- */
}

#article .section .inner .content.content_1 {
  position: relative;
}

#article .section .inner .slick_slider {
  list-style: none;
  margin: 0 auto;
  position: static;
  /* -------------------------------------
                   slider
                */
  /* -------------------------------------
                   slick-dots
                */
  /* -------------------------------------
                   slick-arrow
                */
}

#article .section .inner .slick_slider .slick-list {
  overflow: visible;
}

#article .section .inner .slick_slider .slider {
  line-height: 1.25;
  position: absolute;
}

#article .section .inner .slick_slider .slider:first-child {
  position: static;
}

#article .section .inner .slick_slider .slider a,
#article .section .inner .slick_slider .slider a:link {
  display: block;
}

#article .section .inner .slick_slider .slider .figure {
  margin: 0 auto;
}

#article .section .inner .slick_slider .slider .figcaption {
  margin: 0 auto;
}

#article .section .inner .slick_slider .slider .h4 {
  margin: 0 auto;
}

#article .section .inner .slick_slider .slider p {
  margin: 0 auto;
}

#article .section .inner .slick_slider.show .slider {
  position: static;
}

#article .section .inner .slick_slider .slick-dots {
  padding: 0;
  bottom: -30px !important;
  left: 50%;
  transform: translateX(-50%);
}

#article .section .inner .slick_slider .slick-dots li {
  text-indent: -9999px;
  width: 12px;
  height: 12px;
  margin: 0 0.6em !important;
  background: white;
  border: 1px solid #036EB8;
  border-radius: 100%;
  box-sizing: border-box;
}

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

#article .section .inner .slick_slider .slick-dots li.slick-active {
  background: #036EB8;
  border: 1px solid #036EB8;
}

#article .section .inner .slick_slider .slick-arrow.slick-prev, #article .section .inner .slick_slider .slick-arrow.slick-next {
  z-index: 99;
}

#article .section .inner .slick_slider .slick-arrow.slick-prev {
  left: 0.5rem;
}

#article .section .inner .slick_slider .slick-arrow.slick-next {
  right: 0.5rem;
}

#article .section .inner .slick_slider .slick-arrow.slick-prev:before, #article .section .inner .slick_slider .slick-arrow.slick-next:before {
  color: #036EB8;
}

#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: 500;
  font-feature-settings: "pkna";
}

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

#article .section .h3.h3_1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  color: white;
  height: 37.33333vw;
  margin: 0 auto;
  background: #036EB8;
}

#article .section .h3.h3_1 span.txt {
  font-family: 'Josefin Sans', Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 500;
  display: inline-block;
  letter-spacing: 0;
  font-size: 2.1rem;
  width: auto;
}

#article .section .h3.h3_1 span.txt_2 {
  letter-spacing: 0.075em;
  font-size: 1.2rem;
  line-height: 1;
  margin: 1rem 0 0;
  opacity: 0.6;
}

#article .section .h3.h3_1 span.txt_2:before {
  content: "～ ";
}

#article .section .h3.h3_1 span.txt_2:after {
  content: " ～";
}

#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 Sans JP", "Hiragino Kaku Gothic ProN","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-weight: bold;
  font-weight: 400;
  font-feature-settings: "palt";
  letter-spacing: 0.175em;
  color: #333333;
  font-size: 1rem;
  line-height: 1;
  text-align: center;
  width: 100%;
  padding: 1rem 0;
}

#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 #333333;
  box-sizing: border-box;
  position: relative;
}

#article .section.event .inner .content .h4.h4_1 {
  display: flex;
  justify-content: space-between;
  margin: 2vw auto 0;
}

#article .section.event .inner .content .h4.h4_1 span {
  display: flex;
  align-items: baseline;
  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";
  letter-spacing: 0.05em;
  color: #333333;
  font-size: 1.2rem;
  line-height: 1.2;
}

#article .section.event .inner .content .h4.h4_1 span b {
  display: block;
  margin: 0 1.33333vw 0 0;
  transform: translateY(0.53333vw);
}

#article .section.event .inner .content .h4.h4_1 span.day {
  font-family: 'Josefin Sans', Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 500;
}

#article .section.event .inner .content .h4.h4_1 span.day b {
  width: 3.2vw;
}

#article .section.event .inner .content .h4.h4_1 span.txt b {
  width: 2.26667vw;
}

#article .section.event .inner .content .h5.h5_1 {
  padding: 0;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  /*
                            &:after{
                                content: "";
                                display: block;
                                width: size(12);
                                height: size(12);
                                border-top: 1px solid $monocolor7;
                                border-right: 1px solid $monocolor7;
                                position: absolute;
                                z-index: 1;
                                top: 50%;
                                right: size(15);
                                transform: translateY(-50%) rotate(45deg);
                            }
                            */
}

#article .section.event .inner .content .h5.h5_1 span {
  display: block;
  font-feature-settings: "palt";
  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.5;
}

#article .section.event .inner .content p {
  color: #333333;
  font-size: 1rem;
  line-height: 1.5;
  margin: 1.33333vw auto 0;
}

#article .section.event .inner .content .figure {
  height: 56.25067vw;
  overflow: hidden;
}

#article .section.event .inner .content .figure img {
  position: relative;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#article .section.event .inner .content .figure img.w {
  width: auto;
  height: 100%;
}

#article .section.event .inner .content .item {
  padding: 0 0 2vw;
  margin: 0;
  position: relative;
  z-index: 1;
}

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

#article .section.event .inner .content .item .float_l {
  position: relative;
  z-index: 1;
}

#article .section.event .inner .content .item .float_r {
  padding: 2vw 2vw 0;
}

#article .section.event .inner .content .item.new:after {
  content: "NEW";
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Josefin Sans', Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 400;
  letter-spacing: 0.05em;
  font-size: 1rem;
  text-align: center;
  line-height: 1;
  color: white;
  width: 10.66667vw;
  height: 4vw;
  padding-top: 1.06667vw;
  background: #333333;
  box-sizing: border-box;
  position: absolute;
  z-index: 9;
  top: 0;
  left: 1.33333vw;
}

#article .section.works .inner .content {
  display: flex;
  flex-wrap: wrap;
  padding: 2.66667vw 0 0;
  margin: 0 auto;
}

#article .section.works .inner .content .item {
  width: 46vw;
  padding: 0;
  margin: 0 2.66667vw 0;
}

#article .section.works .inner .content .item:nth-of-type(2n) {
  margin: 0;
}

#article .section.works .inner .content .item a,
#article .section.works .inner .content .item a:link {
  text-decoration: none;
  display: block;
  height: 100%;
  padding: 0 0 6.66667vw;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

#article .section.works .inner .content .item .figure {
  width: 100%;
  height: 33.33333vw;
  position: relative;
  overflow: hidden;
}

#article .section.works .inner .content .item .figure img {
  position: relative;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#article .section.works .inner .content .item .figure img.w {
  width: auto;
  height: 100%;
}

#article .section.works .inner .content .item .h4.h4_1 {
  width: 42vw;
  padding: 0 0 1.6vw;
  margin: 1.33333vw auto 0;
  border-bottom: 1px solid #333333;
}

#article .section.works .inner .content .item .h4.h4_1 span {
  display: block;
  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: "palt";
  letter-spacing: 0.175em;
  color: #333333;
  font-size: 1rem;
  line-height: 1.5;
}

#article .section.works .inner .content .item .h5.h5_1 {
  width: 100%;
  min-height: 5.33333vw;
  padding: 0;
  box-sizing: border-box;
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  /*
                                &:after{
                                    top: 0.25rem;
                                    right: size(20);
                                    transform: rotate(45deg);
                                }
                                */
}

#article .section.works .inner .content .item .h5.h5_1 span {
  display: flex;
  align-items: baseline;
  letter-spacing: 0.075em;
  color: #333333;
  font-size: 0.9rem;
  line-height: 1;
  width: 42vw;
  margin: 0 auto;
}

#article .section.works .inner .content .item .h5.h5_1 span b {
  display: block;
  width: 1.86667vw;
  margin: 0 1.33333vw 0 0;
  transform: translateY(0.26667vw);
}

#article .section.blog .inner .content {
  padding: 2.4vw 0 0;
  position: relative;
  z-index: 1;
  /* -------------------------------------
                       item
                    */
}

#article .section.blog .inner .content .figure {
  width: 100%;
  height: 26.66667vw;
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
}

#article .section.blog .inner .content .figure img {
  position: relative;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#article .section.blog .inner .content .figure img.w {
  width: auto;
  height: 100%;
}

#article .section.blog .inner .content .figure img.h {
  width: 100%;
  height: auto;
}

#article .section.blog .inner .content .h4.h4_3 {
  margin: 2.66667vw auto 0;
  position: relative;
}

#article .section.blog .inner .content .h4.h4_3 span {
  display: block;
  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";
  letter-spacing: 0.075em;
  font-size: 1.2rem;
  line-height: 1.5;
  color: black;
}

#article .section.blog .inner .content .h5.h5_3 {
  margin: 1.06667vw auto 0;
}

#article .section.blog .inner .content .h5.h5_3 span {
  display: block;
  line-height: 1.5;
  color: black;
}

#article .section.blog .inner .content .h5.h5_3 span.txt {
  font-size: 1rem;
}

#article .section.blog .inner .content .day {
  display: flex;
  align-items: center;
  font-family: 'Josefin Sans', Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 400;
  letter-spacing: 0.025em;
  color: #333333;
  font-size: 1.2rem;
  line-height: 1;
}

#article .section.blog .inner .content .item {
  width: 100%;
  margin: 0 auto 2.66667vw;
  position: relative;
}

#article .section.blog .inner .content .item a,
#article .section.blog .inner .content .item a:link {
  width: 94.66667vw;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

#article .section.blog .inner .content .item a.float,
#article .section.blog .inner .content .item a:link.float {
  display: flex;
  justify-content: space-between;
}

#article .section.blog .inner .content .item a .float_l,
#article .section.blog .inner .content .item a:link .float_l {
  width: 26.66667vw;
}

#article .section.blog .inner .content .item a .float_r,
#article .section.blog .inner .content .item a:link .float_r {
  width: 65.33333vw;
}

#article .section.blog .inner .content .item a:before, #article .section.blog .inner .content .item a:after,
#article .section.blog .inner .content .item a:link:before,
#article .section.blog .inner .content .item a:link:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  bottom: 0;
}

#article .section.blog .inner .content .item a:before,
#article .section.blog .inner .content .item a:link:before {
  width: 65.33333vw;
  border-bottom: 1px solid #333333;
  right: 0;
}

#article .section.blog .inner .content .item a:after,
#article .section.blog .inner .content .item a:link:after {
  width: 1px;
  height: 4vw;
  border-right: 1px solid #333333;
  bottom: -0.8vw;
  right: 1.73333vw;
  transform: rotate(-60deg);
}

#article .section.blog .inner .content .item.new .day:after {
  content: "NEW";
  display: inline-block;
  font-family: 'Josefin Sans', Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-weight: 400;
  letter-spacing: 0.05em;
  font-size: 0.9rem;
  text-align: center;
  color: white;
  width: auto;
  padding: 0.8vw 4vw 0.01333vw;
  margin: 0 0 0 4vw;
  background: #333333;
  transform: translateY(-0.4vw);
}

#article .section.about .inner .content {
  display: flex;
  flex-wrap: wrap;
  width: 93.33333vw;
  margin: 3.33333vw auto 0;
  position: relative;
  z-index: 1;
}

#article .section.about .inner .content .item {
  width: 45.33333vw;
  padding: 0;
  margin: 0 2.66667vw 2.66667vw 0;
}

#article .section.about .inner .content .item:nth-of-type(2n) {
  margin: 0 0 2.66667vw 0;
}

#article .section.about .inner .content .item a,
#article .section.about .inner .content .item a:link {
  text-decoration: none;
  display: block;
  height: 100%;
  padding: 0;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

#article .section.about .inner .content .item .figure {
  width: 100%;
  position: relative;
  overflow: hidden;
}

#article .section.about .inner .content .item .h4.h4_1 {
  padding: 0;
  margin: 1.33333vw 0 0;
}

#article .section.about .inner .content .item .h4.h4_1 span {
  display: block;
  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: "palt";
  letter-spacing: 0.05em;
  text-align: center;
  color: black;
  font-size: 1.2rem;
  line-height: 1.5;
}
#article .section.voice .inner .h3.h3_1:nth-of-type(2) span.txt_2 {
  margin: 16px 0 0;
}
#article .section.voice .inner .content.content_1 {
  margin: 3.33333vw auto 8px;
  width: 93.33333vw ;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: static;
  list-style: none;
}
#article .section.voice .inner .content .item {
  padding: 0 0 20px 0;
  width: 46vw;
}
#article .section.voice .inner .content .item:nth-child(n+3) {
  padding: 0;
}
#article .section.voice .inner .content .item a,
#article .section.voice .inner .content .item a:link {
  width: 100%;
  height: 100%;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#article .section.voice .inner .content .item .figure {
  margin: 0 auto;
  overflow: hidden;
  width: 100%;
  height: auto;
}
#article .section.voice .inner .content .item .figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 1.634/ 1.09;
  -o-object-fit: cover;
     object-fit: cover;
}
#article .section.voice .inner .content .item h4 {
  padding: 10px 0;
  width: 100%;
  margin: 0;
  border-bottom: 1px solid hsl(0, 0%, 20%);
  line-height: 1.3;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
#article .section.voice .inner .content .item h4 span {
  font-size: 1.0rem;
  display: -webkit-box;
        overflow: hidden;
        color: #333333;
        
}
#article .section.voice .inner .content .item .voice_name {
  padding-top: 10px;
}
#article .section.voice .inner .content .item .voice_name p {
  font-size: 1rem;
  letter-spacing: 0.075em;
  color: #333333;
}
#article .section.voice .inner .content .item a {
  text-decoration: 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;
    }
  }
  /* -------------------------------------
   header
------------------------------------- */
  #container {
    /* -------------------------------------
       normal
    */
  }
  #container.fixed {
    padding: 0 0 0;
  }
  #container #header {
    position: absolute;
    z-index: 9999;
    top: 620px;
  }
  /* -------------------------------------
   article
------------------------------------- */
  #article {
    padding: 0 0 40px;
    /* -------------------------------------
       main
    ------------------------------------- */
    /* -------------------------------------
       section
    ------------------------------------- */
  }
  #article #main {
    width: 100%;
    padding: 0;
    margin: 0 auto 150px;
    background: black;
  }
  #article #main .inner {
    width: 100%;
    margin: 0;
    /* -------------------------------------
               slider
            ------------------------------------- */
  }
  #article #main .inner .content {
    width: 1020px;
    margin: 0 auto;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  #article #main .inner .h2.h2_1 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 580px;
    height: 226px;
    padding: 0;
    top: 230px;
    transform: translateX(-50%);
  }
  #article #main .inner .h2.h2_1 span {
    font-size: 3.6rem;
  }
  #article #main .inner .bnr_main_free a,
  #article #main .inner .bnr_main_free a:link {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.8rem;
    width: 370px;
    height: 52px;
    padding: 0;
  }
  #article #main .inner .bnr_main_free a:before,
  #article #main .inner .bnr_main_free a:link:before {
    width: 6px;
    height: 6px;
    margin: 0 16px 0 -10px;
  }
  #article #main .inner .link {
    bottom: auto;
    top: 688px;
  }
  #article #main .inner .link a,
  #article #main .inner .link a:link {
    font-size: 1.2rem;
    padding: 0 0 60px;
    animation-fill-mode: backwards;
    animation-name: motion-main-link;
    animation-delay: 0s;
    animation-duration: 2s;
    animation-timing-function: ease-in;
    animation-iteration-count: infinite;
  }
  #article #main .inner .link a:before, #article #main .inner .link a:after,
  #article #main .inner .link a:link:before,
  #article #main .inner .link a:link:after {
    height: 60px;
  }
  #article #main .inner .link a:before,
  #article #main .inner .link a:link:before {
    margin-left: -26px;
  }
  #article #main .inner .link a:after,
  #article #main .inner .link a:link:after {
    margin-left: 26px;
  }
  #article #main .inner .img,
  #article #main .inner a.item,
  #article #main .inner a.item:link {
    height: 620px;
  }
  #article #main .inner .slick_slider {
    display: block;
    /* -------------------------------------
                   slider
                */
    /* -------------------------------------
                   slick-arrow
                */
    /* -------------------------------------
                   slick-dots
                */
  }
  #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: 1020px;
    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%;
    margin: 50px auto 0;
    /* -------------------------------------
           common
        */
    /* -------------------------------------
           event
        &*/
    /* -------------------------------------
           works
        */
    /* -------------------------------------
           blog
        */
    /* -------------------------------------
           about
        */
        /* -------------------------------------
       voice
    */
  }
  #article .section .inner {
    width: 1080px;
    padding: 0;
    position: relative;
    z-index: 1;
    /* -------------------------------------
               slick_slider
            ------------------------------------- */
  }
  #article .section .inner .content {
    width: 1020px;
    position: relative;
    z-index: 1;
  }
  #article .section .inner .slick_slider {
    /* -------------------------------------
                   slider
                */
    /* -------------------------------------
                   slick-dots
                */
  }
  #article .section .inner .slick_slider .slider a,
  #article .section .inner .slick_slider .slider a:link {
    overflow: hidden;
  }
  #article .section .inner .slick_slider .slider .figure {
    overflow: hidden;
  }
  #article .section .inner .slick_slider .slick-dots {
    padding: 0;
    position: absolute !important;
    bottom: -48px !important;
  }
  #article .section .h3.h3_1 {
    color: #333333;
    width: 100%;
    height: auto;
    padding: 50px 0 40px;
    background: white;
  }
  #article .section .h3.h3_1 span.txt {
    font-size: 3.2rem;
  }
  #article .section .h3.h3_1 span.txt_2 {
    font-size: 1.4rem;
    margin: 6px 0 0;
  }
  #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;
  }
  #article .section.event .inner .content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
  }
  #article .section.event .inner .content .figure {
    width: 100%;
    height: 272px;
  }
  #article .section.event .inner .content .h4.h4_1 {
    margin: 4px auto 0;
  }
  #article .section.event .inner .content .h4.h4_1 span b {
    margin: 0 8px 0 0;
  }
  #article .section.event .inner .content .h4.h4_1 span.day b {
    width: 12px;
    transform: translateY(2px);
  }
  #article .section.event .inner .content .h4.h4_1 span.txt b {
    width: 9px;
    transform: translateY(1px);
  }
  #article .section.event .inner .content .h5.h5_1 {
    padding: 0;
    margin: 8px 0 0;
  }
  #article .section.event .inner .content .h5.h5_1 span.txt {
    font-size: 1.4rem;
  }
  #article .section.event .inner .content .h5.h5_1:after {
    width: 10px;
    height: 10px;
    right: 8px;
  }
  #article .section.event .inner .content p {
    margin: 10px auto 0;
  }
  #article .section.event .inner .content .item {
    width: 500px;
  }
  #article .section.event .inner .content .item .float_r {
    padding: 0;
  }
  #article .section.event .inner .content .item.new:after {
    font-size: 1.2rem;
    width: 50px;
    height: 20px;
    padding-top: 4px;
    left: 10px;
  }
  #article .section.works .inner .content {
    padding: 0;
  }
  #article .section.works .inner .content .item {
    width: 328px;
    padding: 0;
    margin: 0 18px 0 0;
  }
  #article .section.works .inner .content .item:nth-of-type(2n) {
    margin: 0 18px 0 0;
  }
  #article .section.works .inner .content .item:nth-of-type(3n) {
    margin: 0;
  }
  #article .section.works .inner .content .item a,
  #article .section.works .inner .content .item a:link {
    width: 100%;
    height: 100%;
    padding: 0 0 50px;
  }
  #article .section.works .inner .content .item .figure {
    height: 218.66667px;
  }
  #article .section.works .inner .content .item .h4.h4_1 {
    width: 298px;
    padding: 0 0 10px;
    margin: 10px auto 0;
  }
  #article .section.works .inner .content .item .h4.h4_1 span {
    font-size: 1.6rem;
  }
  #article .section.works .inner .content .item .h5.h5_1 {
    min-height: 40px;
    padding: 0 20px;
    /*
                                &:after{
                                    right: 15px;
                                }
                                */
  }
  #article .section.works .inner .content .item .h5.h5_1 span {
    font-size: 1.2rem;
    width: 298px;
    margin: 0 auto;
  }
  #article .section.works .inner .content .item .h5.h5_1 span b {
    width: 10px;
    margin: 0 8px 0 0;
    transform: translateY(3px);
  }
  #article .section.blog .inner .content {
    display: flex;
    flex-wrap: wrap;
    width: 860px;
    padding: 0;
    margin: 0 auto;
  }
  #article .section.blog .inner .content .figure {
    width: 100%;
    height: 128px;
  }
  #article .section.blog .inner .content .h4.h4_3 {
    margin: 12px auto 0;
  }
  #article .section.blog .inner .content .h4.h4_3 span {
    font-size: 1.4rem;
  }
  #article .section.blog .inner .content .h5.h5_3 {
    margin: 6px auto 0;
  }
  #article .section.blog .inner .content .h5.h5_3 span {
    line-height: 1.4;
  }
  #article .section.blog .inner .content .h5.h5_3 span.txt {
    font-size: 1.2rem;
  }
  #article .section.blog .inner .content .item {
    width: 400px;
    margin: 0 60px 36px 0;
  }
  #article .section.blog .inner .content .item:nth-of-type(2n) {
    margin: 0 0 36px 0;
  }
  #article .section.blog .inner .content .item a,
  #article .section.blog .inner .content .item a:link {
    width: 100%;
  }
  #article .section.blog .inner .content .item a .float_l,
  #article .section.blog .inner .content .item a:link .float_l {
    width: 136px;
    margin: 0;
  }
  #article .section.blog .inner .content .item a .float_r,
  #article .section.blog .inner .content .item a:link .float_r {
    width: 250px;
  }
  #article .section.blog .inner .content .item a:before,
  #article .section.blog .inner .content .item a:link:before {
    width: 250px;
  }
  #article .section.blog .inner .content .item a:after,
  #article .section.blog .inner .content .item a:link:after {
    height: 12px;
    right: 3px;
    bottom: -3px;
  }
  #article .section.blog .inner .content .item.new .day:after {
    padding: 4px 15px 0;
    margin: 0 0 0 20px;
    transform: translateY(-2px);
  }
  #article .section.about .inner .content {
    width: 1020px;
    margin: 0 auto;
  }
  #article .section.about .inner .content .item {
    width: 326.66667px;
    padding: 0;
    margin: 0 20px 30px 0;
  }
  #article .section.about .inner .content .item:nth-of-type(2n) {
    margin: 0 20px 30px 0;
  }
  #article .section.about .inner .content .item:nth-of-type(3n) {
    margin: 0 0 30px 0;
  }
  #article .section.about .inner .content .item a,
  #article .section.about .inner .content .item a:link {
    text-decoration: none;
    display: block;
    height: 100%;
    padding: 0;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
  }
  #article .section.about .inner .content .item .figure {
    height: 190px;
  }
  #article .section.about .inner .content .item .figure img {
    position: relative;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  #article .section.about .inner .content .item .h4.h4_1 {
    margin: 10px 0 0;
  }
  #article .section.about .inner .content .item .h4.h4_1 span {
    letter-spacing: 0.15em;
    font-size: 1.6rem;
  }

  #article .section.voice .inner .content.content_1 {
    margin-bottom: 24px;
    padding: 0;
    max-width: 1020px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  #article .section.voice .inner .content .item {
    width: 48%;
    padding: 0 0 40px 0;
  }
}


@media screen and (min-width: 768px) and (hover: hover) {
  #article .section.voice .inner {
    padding: 0;
  }
}
@media screen and (min-width: 768px) and (hover: hover) {
#article .section.voice .inner .content .item a:hover .voice_name,
#article .section.voice .inner .content .item a:link:hover .voice_name {
  color: #333333;
}
}
@media screen and (min-width: 768px) {
#article .section.voice .inner .content .item .figure {
  max-width: 490px;
  max-height: 300px;
}
#article .section.voice .inner .content .item h4 {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  padding: 20px 0 14px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
#article .section.voice .inner .content .item h4 span {
  font-size: 1.6rem;
}
#article .section.voice .inner .content .item .voice_name {
  padding-top: 14px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#article .section.voice .inner .content .item .voice_name p {
  font-size: 1.2rem;
}
#article .section.voice .inner .content .item a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
}
@media screen and (min-width: 768px) and (hover: hover) {
#article .section.voice .inner .content .item a:hover h4 {
  color: #333333;
}
}

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