@charset "UTF-8";
.courgette {
  font-family: "Courgette", cursive;
  font-weight: 400; }

body {
  padding-top: 0; }
  @media (max-width: 720px) {
    body {
      padding-top: 90px; } }

/* headerArea */
.headerArea .row00 {
  position: absolute;
  top: 100vh; }
  .headerMenuFix .headerArea .row00 {
    position: fixed;
    top: 0; }
  @media (max-width: 720px) {
    .headerArea .row00 {
      top: -40px;
      position: fixed;
      z-index: 1001;
      transition: 1s; }
      .endline .headerArea .row00 {
        top: 0px; } }
.headerArea .row01 {
  position: absolute;
  top: -webkit-calc(100vh + 42px);
  top: calc(100vh + 42px); }
  @media (max-width: 720px) {
    .headerArea .row01 {
      position: fixed;
      top: 0;
      background-color: #19216b; }
      .endline .headerArea .row01 {
        top: 40px; } }
.headerArea .row02 {
  position: absolute;
  top: -webkit-calc(100vh + 112px);
  top: calc(100vh + 112px); }
  @media (max-width: 720px) {
    .headerArea .row02 {
      position: fixed;
      top: 0; } }
.headerArea .row04 {
  position: absolute;
  top: -webkit-calc(100vh + 154px);
  top: calc(100vh + 154px); }

/* mvArea */
.topmvArea {
  position: relative;
  overflow: hidden;
  height: 100vh;
  padding: 0;
  background-size: cover;
  background-position: center center; }
  @media (max-width: 720px) {
    .topmvArea {
      height: -webkit-calc(100vh - 90px);
      height: calc(100vh - 90px); }
      .os-iOS .topmvArea {
        height: -webkit-calc(100vh - 160px);
        height: calc(100vh - 160px); }
      .os-android .topmvArea {
        height: -webkit-calc(100vh - 90px);
        height: calc(100vh - 90px); } }
  .topmvArea:before {
    content: '';
    position: absolute;
    bottom: 0;
    z-index: 1;
    display: block;
    height: 14px;
    width: 100%;
    background-color: #ffc600; }
    @media (max-width: 720px) {
      .topmvArea:before {
        height: 7px;
        bottom: 0; } }
  .topmvArea .slide {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat; }
    @media (max-width: 720px) {
      .topmvArea .slide > .link {
        margin-top: 0;
        position: absolute;
        bottom: 4rem;
        text-align: left;
        padding-left: 1.3rem; }
        .topmvArea .slide > .link .mod_btn01 {
          margin: 0;
          width: 16.7rem;
          height: 4.8rem; }
          .topmvArea .slide > .link .mod_btn01:before, .topmvArea .slide > .link .mod_btn01:after {
            width: 16.7rem;
            height: 4.8rem; }
          .topmvArea .slide > .link .mod_btn01:before {
            background-color: #19216b; }
          .topmvArea .slide > .link .mod_btn01:after {
            border-color: #19216b; }
          .topmvArea .slide > .link .mod_btn01 > span {
            color: #fff; } }
  .topmvArea .mv01 {
    background-image: url(../img/mv_main.jpg); }
    @media (max-width: 720px) {
      .topmvArea .mv01 {
        background-image: url(../img/mv_main_sp.jpg); } }
  .topmvArea .mv02 {
    background-image: url(../img/mv_spring.jpg); }
    @media (max-width: 720px) {
      .topmvArea .mv02 {
        background-image: url(../img/mv_spring_sp.jpg); } }
  .topmvArea .mv03 {
    background-image: url(../img/mv_summer.jpg); }
    @media (max-width: 720px) {
      .topmvArea .mv03 {
        background-image: url(../img/mv_summer_sp.jpg); } }
  .topmvArea .mv04 {
    background-image: url(../img/mv_autumn.jpg); }
    @media (max-width: 720px) {
      .topmvArea .mv04 {
        background-image: url(../img/mv_autumn_sp.jpg); } }
  .topmvArea .mv05 {
    background-image: url(../img/mv_winter.jpg); }
    @media (max-width: 720px) {
      .topmvArea .mv05 {
        background-image: url(../img/mv_winter_sp.jpg); } }
  .topmvArea .header .title {
    display: inline-block; }
  .topmvArea .header .catch {
    font-family: "source-han-sans-japanese", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
    font-weight: 700;
    font-size: 3.5rem;
    color: #fff;
    letter-spacing: 0.06em;
    text-shadow: 0 0 1rem rgba(0, 0, 0, 0.5); }
    @media (max-width: 1350px) {
      .topmvArea .header .catch {
        font-size: 3rem; } }
    @media (max-width: 1150px) {
      .topmvArea .header .catch {
        font-size: 2.4rem; } }
    @media (max-width: 720px) {
      .topmvArea .header .catch {
        font-size: 1.4rem;
        position: absolute;
        bottom: 90%;
        left: 0;
        right: 0;
        text-align: center;
        display: block;
        text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5), 0px 0px 1px rgba(0, 0, 0, 0.5); } }
  .topmvArea .header .date {
    font-family: "vinyl", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
    font-weight: 400;
    font-size: 4.2rem;
    letter-spacing: 0.06em;
    line-height: 1;
    color: #fff;
    text-shadow: 0 0 1rem rgba(0, 0, 0, 0.5); }
    .topmvArea .header .date > span {
      font-family: "source-han-sans-japanese", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
      font-weight: 500;
      margin: 0 1rem;
      font-size: 3.6rem;
      letter-spacing: 0.2rem; }
      @media (max-width: 720px) {
        .topmvArea .header .date > span {
          font-size: 2.05rem;
          margin: 0 0.4rem; } }
    @media (max-width: 720px) {
      .topmvArea .header .date {
        font-size: 2.05rem; } }
  .topmvArea .header.main .title {
    margin-bottom: 2rem; }
    .topmvArea .header.main .title span {
      display: inline-block;
      height: 0;
      padding-top: 25rem;
      width: 79rem;
      overflow: hidden;
      background-image: url(../img/mv_title.png);
      background-size: auto 100%;
      background-repeat: no-repeat;
      background-position: center center; }
      @media (max-width: 720px) {
        .topmvArea .header.main .title span {
          background-image: url(../img/mv_title_sp.png);
          background-size: auto 12rem;
          margin-top: 2.5rem;
          margin-bottom: 0.5rem;
          padding-top: 10.5rem;
          width: 100vw; } }
  .topmvArea .header.course {
    margin-top: 3rem; }
    @media (max-width: 720px) {
      .topmvArea .header.course {
        margin-top: -0.2rem; } }
    .topmvArea .header.course .catch {
      font-size: 2.7rem;
      margin-bottom: 2rem; }
      @media (max-width: 720px) {
        .topmvArea .header.course .catch {
          font-size: 1.4rem;
          position: static;
          margin-bottom: 1.0rem; } }
    .topmvArea .header.course .title {
      display: block;
      position: relative;
      text-shadow: 0 0 1rem rgba(0, 0, 0, 0.5); }
      .topmvArea .header.course .title:before {
        content: '';
        display: block;
        width: 79rem;
        height: 14rem;
        position: absolute;
        top: 50%;
        left: 50%;
        margin-top: -7rem;
        margin-left: -39.5rem;
        background-image: url(../img/mv_title_deco.png);
        background-size: auto 100%;
        background-repeat: no-repeat; }
        @media (max-width: 720px) {
          .topmvArea .header.course .title:before {
            background: none; } }
      .topmvArea .header.course .title > span {
        position: relative;
        z-index: 1;
        font-family: "vinyl", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
        font-weight: 400;
        font-size: 7.1rem;
        color: #ffc600;
        letter-spacing: 0.06em; }
        @media (max-width: 720px) {
          .topmvArea .header.course .title > span {
            font-size: 3.25rem; } }
    .topmvArea .header.course .link {
      margin-top: 2rem; }
  .topmvArea .awardBtn {
    position: absolute;
    right: 1.0rem;
    bottom: 2rem;
    z-index: 1; }
    @media (max-width: 720px) {
      .topmvArea .awardBtn {
        right: 0;
        bottom: 1.0rem; } }
    .topmvArea .awardBtn > a {
      position: relative;
      background-image: url(../img/mv_award_petan.png);
      background-size: 100% auto;
      background-position: center center;
      background-repeat: no-repeat;
      display: block;
      width: 25rem;
      height: 27rem;
      transition: 0.3s; }
      @media (max-width: 720px) {
        .topmvArea .awardBtn > a {
          width: 12.5rem;
          height: 13.5rem; } }
      @media (max-height: 530px) {
        .topmvArea .awardBtn > a {
          width: 10rem;
          height: 10rem; } }
      .no-touchevents .topmvArea .awardBtn > a:hover {
        opacity: 0.7; }
  .topmvArea .downArrow {
    display: block;
    text-align: center;
    width: 5.6rem;
    height: 3.2rem;
    position: absolute;
    z-index: 1;
    bottom: 4rem;
    left: 50%;
    margin-left: -2.8rem;
    text-align: center;
    padding-top: 1.6rem; }
    .no-touchevents .topmvArea .downArrow:hover > .arrow01 {
      margin-top: 1.6rem;
      opacity: 0; }
    .topmvArea .downArrow > span {
      transition: 0.3s;
      display: block;
      width: 2.8rem;
      height: 1.6rem;
      margin: 0 auto;
      background-image: url(../img/mv_scroll_arrow.png);
      background-repeat: no-repeat;
      background-size: 2.8rem	auto; }
      .topmvArea .downArrow > span.arrow01 {
        position: absolute;
        left: 0;
        right: 0;
        top: 0; }
    @media (max-width: 720px) {
      .topmvArea .downArrow {
        display: none; } }

[data-slidearea06] {
  padding: 0;
  overflow: hidden;
  width: 100%;
  height: 100vh; }
  @media (max-width: 720px) {
    [data-slidearea06] {
      height: -webkit-calc(100vh - 90px);
      height: calc(100vh - 90px); }
      .os-iOS [data-slidearea06] {
        height: -webkit-calc(100vh - 160px);
        height: calc(100vh - 160px); }
      .os-android [data-slidearea06] {
        height: -webkit-calc(100vh - 90px);
        height: calc(100vh - 90px); } }
  [data-slidearea06] .contentWrap {
    text-align: left;
    margin-bottom: 45px; }
  [data-slidearea06] .contentWrapIn {
    padding: 0; }
  [data-slidearea06] .content {
    position: relative;
    display: table;
    height: 100vh; }
    [data-slidearea06] .content.disableTrs {
      -webkit-transition: none !important;
      transition: none !important; }
    @media (max-width: 720px) {
      [data-slidearea06] .content {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; } }
  [data-slidearea06] .slide {
    display: table-cell;
    position: relative;
    top: 0;
    left: 0;
    background-position: center center;
    background-size: cover;
    vertical-align: middle; }
    [data-slidearea06] .slide > .wrap {
      text-align: center;
      position: relative; }
  [data-slidearea06] .contentPager {
    position: absolute;
    bottom: 14px;
    left: 0;
    z-index: 10;
    width: 16rem;
    padding-left: 3rem;
    padding-bottom: 2.5rem; }
    @media (max-width: 720px) {
      [data-slidearea06] .contentPager {
        width: 100%;
        padding-left: 1.6rem;
        padding-bottom: 2rem;
        bottom: 0; } }
    [data-slidearea06] .contentPager:before {
      position: absolute;
      z-index: -1;
      left: 0;
      bottom: 0;
      content: '';
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 31.5rem 0 0 31.5rem;
      border-color: transparent transparent transparent rgba(255, 198, 0, 0.8); }
      @media (max-width: 720px) {
        [data-slidearea06] .contentPager:before {
          display: none; } }
    [data-slidearea06] .contentPager li {
      display: block;
      height: 2rem;
      cursor: pointer;
      text-align: left;
      padding-left: 1rem;
      border-left: 0.4rem solid #fff; }
      @media (max-width: 720px) {
        [data-slidearea06] .contentPager li {
          display: inline-block;
          width: 2.25rem;
          height: 0.45rem;
          padding-left: 0;
          border-left: none;
          border-bottom: 0.45rem solid #fff; } }
      [data-slidearea06] .contentPager li.active, .no-touchevents [data-slidearea06] .contentPager li:hover {
        border-color: #0d1663; }
      [data-slidearea06] .contentPager li + li {
        margin-top: 0.8rem; }
        @media (max-width: 720px) {
          [data-slidearea06] .contentPager li + li {
            margin-top: 0;
            margin-left: 0.4rem; } }
      [data-slidearea06] .contentPager li span {
        display: inline;
        transition: .2s;
        font-size: 1.6rem;
        font-family: "vinyl", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
        font-weight: 400;
        letter-spacing: 0.06em;
        line-height: 1.4;
        color: #0d1663; }
        @media (max-width: 720px) {
          [data-slidearea06] .contentPager li span {
            display: none; } }
        [data-slidearea06] .contentPager li span:before {
          content: '';
          display: inline-block;
          height: 100%;
          vertical-align: middle; }

/* sec_intro */
.sec_intro > .wrap {
  padding-top: 112px;
  position: relative;
  z-index: 0;
  width: 100%;
  padding-bottom: 12.4rem;
  background-image: url(../img/intro_bg_bottom.png);
  background-position: calc(50% + 4rem) bottom;
  background-repeat: repeat-x;
  background-size: auto 21.6rem; }
  .sec_intro > .wrap:before, .sec_intro > .wrap:after {
    z-index: -1;
    content: '';
    display: block;
    width: 100%;
    position: absolute; }
  .sec_intro > .wrap:before {
    bottom: 57rem;
    height: 15.4rem;
    background-image: url(../img/intro_bg_upper.png);
    background-position: center center;
    background-size: auto 100%;
    background-repeat: no-repeat; }
    @media (max-width: 720px) {
      .sec_intro > .wrap:before {
        bottom: 48rem;
        height: 4.7rem;
        background-position: 120% center;
        background-image: url(../img/intro_bg_upper_sp.png); } }
  .sec_intro > .wrap:after {
    bottom: 34rem;
    height: 9rem;
    background-image: url(../img/intro_bg_middle.png);
    background-position: 57% center;
    background-size: auto 100%;
    background-repeat: no-repeat; }
    @media (max-width: 720px) {
      .sec_intro > .wrap:after {
        bottom: 25rem;
        height: 7.3rem;
        background-image: url(../img/intro_bg_middle_sp.png);
        background-position: center center; } }
  @media (max-width: 720px) {
    .sec_intro > .wrap {
      padding-top: 0;
      padding-bottom: 7rem;
      background-size: auto 10.8rem;
      background-position: center bottom;
      background-image: url(../img/intro_bg_bottom_sp.png); } }
  .sec_intro > .wrap > .mv {
    width: 100%;
    height: 48.6rem;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    transition: 1.6s cubic-bezier(0.42, 0, 0.58, 1);
    opacity: 0; }
    .sec_intro > .wrap > .mv.active {
      opacity: 1; }
    @media (max-width: 720px) {
      .sec_intro > .wrap > .mv {
        height: 17rem; } }
    .sec_intro > .wrap > .mv > figcaption {
      position: relative;
      z-index: 2;
      margin: 0 auto;
      height: 100%;
      width: 100%;
      max-width: 1100px; }
      .sec_intro > .wrap > .mv > figcaption > img {
        position: absolute;
        bottom: -2rem;
        right: 3.5rem; }
        @media (max-width: 720px) {
          .sec_intro > .wrap > .mv > figcaption > img {
            height: 9rem;
            width: auto;
            right: 0;
            bottom: 0.5rem; } }
  .sec_intro > .wrap > .in {
    max-width: 1100px;
    margin: 0 auto;
    position: relative; }
    @media (max-width: 720px) {
      .sec_intro > .wrap > .in {
        width: calc(100% - 3.2rem); } }
    .sec_intro > .wrap > .in .ph {
      position: absolute;
      top: -7rem;
      z-index: 1;
      width: 53.2rem;
      height: 37.6rem;
      margin-left: 54rem;
      margin-bottom: 12.6rem; }
      @media (max-width: 720px) {
        .sec_intro > .wrap > .in .ph {
          position: relative;
          top: 0;
          margin-top: 6rem;
          margin-left: auto;
          margin-right: auto;
          margin-bottom: 0;
          padding-right: 1.3rem;
          width: 25rem;
          height: 17.5rem; } }
      .sec_intro > .wrap > .in .ph.active:before {
        opacity: 1;
        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%); }
      .sec_intro > .wrap > .in .ph.active > div {
        opacity: 1;
        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%); }
      .sec_intro > .wrap > .in .ph:before {
        position: absolute;
        z-index: 0;
        top: -2rem;
        right: -2.5rem;
        content: '';
        display: block;
        width: 53.2rem;
        height: 37.6rem;
        background-color: #ffc600;
        transition: 1s cubic-bezier(0.77, 0, 0.175, 1);
        opacity: 0;
        clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%); }
        @media (max-width: 720px) {
          .sec_intro > .wrap > .in .ph:before {
            top: -0.9rem;
            right: 0rem;
            width: 25rem;
            height: 17.5rem; } }
      .sec_intro > .wrap > .in .ph > div {
        position: relative;
        z-index: 1;
        width: 100%;
        height: 100%;
        background-position: center center;
        background-size: cover;
        background-repeat: no-repeat;
        transition: 1s cubic-bezier(0.77, 0, 0.175, 1) 0.2s;
        opacity: 0;
        clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%); }
    .sec_intro > .wrap > .in .text_box {
      max-width: 1100px;
      padding-right: 0;
      box-sizing: border-box;
      padding-bottom: 120px;
      padding-top: 40px;
      line-height: 0; }
      @media (max-width: 1150px) {
        .sec_intro > .wrap > .in .text_box {
          padding-left: 30px;
          padding-bottom: 0; } }
      @media (max-width: 720px) {
        .sec_intro > .wrap > .in .text_box {
          position: static;
          padding-right: 0;
          padding-left: 0;
          padding-top: 0; } }
      .sec_intro > .wrap > .in .text_box:before {
        content: "";
        display: block;
        float: right;
        width: 58.2rem;
        height: 27.6rem; }
        @media (max-width: 720px) {
          .sec_intro > .wrap > .in .text_box:before {
            display: none; } }
      .sec_intro > .wrap > .in .text_box .catch {
        margin-top: 5rem;
        transition: 1s cubic-bezier(0.77, 0, 0.175, 1);
        opacity: 0;
        display: inline;
        white-space: pre; }
        .sec_intro > .wrap > .in .text_box .catch.active {
          opacity: 1; }
        @media (max-width: 720px) {
          .sec_intro > .wrap > .in .text_box .catch {
            display: block;
            margin-top: 1.3rem; } }
      .sec_intro > .wrap > .in .text_box .sub_cp {
        transition: 1s cubic-bezier(0.77, 0, 0.175, 1);
        display: inline;
        opacity: 0;
        margin-top: 8px; }
        @media (max-width: 720px) {
          .sec_intro > .wrap > .in .text_box .sub_cp {
            margin-top: 1rem; } }
        .sec_intro > .wrap > .in .text_box .sub_cp.active {
          display: block;
          opacity: 1;
          width: 104%; }
      .sec_intro > .wrap > .in .text_box .read {
        transition: 1s cubic-bezier(0.77, 0, 0.175, 1);
        display: inline;
        opacity: 0;
        margin-top: 10px; }
        @media (max-width: 720px) {
          .sec_intro > .wrap > .in .text_box .read {
            margin-top: 1rem; } }
        .sec_intro > .wrap > .in .text_box .read.active {
          display: block;
          opacity: 1; }
      .sec_intro > .wrap > .in .text_box .spacer {
        display: inline-block; }
        @media (max-width: 720px) {
          .sec_intro > .wrap > .in .text_box .spacer {
            display: none; } }
        .sec_intro > .wrap > .in .text_box .spacer:after {
          content: " "; }
  .sec_intro > .wrap .img_box {
    font-size: 0;
    letter-spacing: 0;
    text-align: center;
    position: relative;
    max-width: 1280px;
    margin: 0 auto; }
    @media (max-width: 720px) {
      .sec_intro > .wrap .img_box {
        margin-top: 4.5rem; } }
    .sec_intro > .wrap .img_box > div {
      display: inline-block;
      width: 23rem;
      height: 23rem;
      box-sizing: border-box;
      border-radius: 50%;
      overflow: hidden;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      margin: 0 1.2rem;
      transition: 1s cubic-bezier(0.42, 0, 0.58, 1);
      clip-path: circle(0% at center); }
      .sec_intro > .wrap .img_box > div.active {
        clip-path: circle(50% at center); }
      @media (max-width: 1280px) {
        .sec_intro > .wrap .img_box > div {
          width: 20rem;
          height: 20rem; } }
      @media (max-width: 1150px) {
        .sec_intro > .wrap .img_box > div {
          width: 17rem;
          height: 17rem; } }
      @media (max-width: 720px) {
        .sec_intro > .wrap .img_box > div {
          width: 9.8rem;
          height: 9.8rem;
          margin: 0 0.25rem; }
          .sec_intro > .wrap .img_box > div.ph01 {
            margin-left: 2rem; }
          .sec_intro > .wrap .img_box > div.ph02 {
            margin-right: 2rem; }
          .sec_intro > .wrap .img_box > div.ph03, .sec_intro > .wrap .img_box > div.ph04, .sec_intro > .wrap .img_box > div.ph05 {
            margin-top: -0.5rem; } }
    .sec_intro > .wrap .img_box figcaption {
      position: absolute;
      right: 6.5rem;
      bottom: -2rem;
      z-index: 1;
      transform: rotate(-9.5deg); }
      .sec_intro > .wrap .img_box figcaption > span {
        display: inline-block;
        position: relative;
        font-size: 4rem;
        font-family: "Courgette", cursive;
        font-weight: 400;
        color: #f05050;
        opacity: 0;
        transform: translate(50px, 200px) rotate(20deg);
        transition: 2s cubic-bezier(0.08, 1.57, 0.3, 1.01); }
        .sec_intro > .wrap .img_box figcaption > span.active {
          opacity: 1;
          transform: none; }
        @media (max-width: 720px) {
          .sec_intro > .wrap .img_box figcaption > span {
            display: none; } }

/* sec_value */
.dot {
  position: relative;
  background-repeat: repeat; }
  .dot:before {
    content: '';
    display: block;
    position: absolute;
    z-index: 0;
    top: 12px;
    bottom: 12px;
    left: 12px;
    right: 12px; }
    @media (max-width: 720px) {
      .dot:before {
        top: 6px;
        bottom: 6px;
        left: 6px;
        right: 6px; } }

.bcyl {
  background-color: #ffc600; }
  .bcyl.dot {
    background-image: url(../common/img/dot_deco_wh.png); }
    .bcyl.dot:before {
      background-color: #ffc600; }

.bcbl {
  background-color: #19216b; }
  .bcbl.dot {
    background-image: url(../common/img/dot_deco_wh02.png); }
    .bcbl.dot:before {
      background-color: #19216b; }
  .bcbl .read {
    color: #fff; }

.bcwh {
  background-color: #fff; }
  .bcwh.dot {
    background-color: #171C61;
    background-image: linear-gradient(transparent 50%, #FFF 50%, #FFF 100%), linear-gradient(90deg, transparent 50%, #FFF 50%, #FFF 100%);
    background-size: 2px 2px; }
    .bcwh.dot:before {
      background-color: #fff; }

.bcgl {
  background-color: #f4f4f2; }

.value_link {
  width: 100%;
  max-width: 1960px;
  margin: 0 auto;
  font-size: 0;
  letter-spacing: 0;
  text-align: center; }
  @media (max-width: 720px) {
    .value_link {
      width: calc(100% - 2rem);
      margin: 0 auto; } }
  .value_link .value_box {
    display: inline-block;
    position: relative;
    width: calc(100% / 3);
    vertical-align: top; }
    @media (max-width: 720px) {
      .value_link .value_box {
        vertical-align: top;
        width: calc((100% - 0.5rem) / 2);
        margin-left: 0.499rem;
        margin-bottom: 0.5rem; }
        .value_link .value_box:nth-child(2n + 1) {
          margin-left: 0; } }
    .value_link .value_box > .wrapLink {
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0; }
      .value_link .value_box > .wrapLink:before {
        z-index: 1;
        content: '';
        position: absolute;
        display: block;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background-color: rgba(255, 255, 255, 0);
        transition: 0.3s; }
      .no-touchevents .value_link .value_box > .wrapLink:hover:before {
        background-color: rgba(255, 255, 255, 0.5); }
    .value_link .value_box > .ph {
      width: 100%;
      height: 26rem;
      background-size: cover;
      background-position: center center;
      background-repeat: no-repeat;
      transition: clip-path 1s cubic-bezier(0.77, 0, 0.175, 1), -webkit-clip-path 1s cubic-bezier(0.77, 0, 0.175, 1);
      clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%); }
      .value_link .value_box > .ph.active {
        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%); }
      @media (max-width: 720px) {
        .value_link .value_box > .ph {
          height: 10rem; } }
    .value_link .value_box > .detail {
      min-height: 22rem;
      box-sizing: border-box;
      padding: 0 0 2rem; }
      @media (max-width: 720px) {
        .value_link .value_box > .detail {
          min-height: 14rem; } }
      .value_link .value_box > .detail > .no_tab {
        margin: -3.5rem auto 1rem;
        position: relative; }
        @media (max-width: 720px) {
          .value_link .value_box > .detail > .no_tab {
            margin: -1.95rem auto 1rem; } }
      .value_link .value_box > .detail > .catch {
        text-align: left; }

.value_detail {
  position: relative; }
  .value_detail:before {
    content: '';
    display: block;
    position: absolute;
    z-index: -1;
    height: 56.8rem;
    width: 100%;
    top: 50%;
    background-color: #f4f4f2; }
  .value_detail > .in {
    position: relative;
    z-index: -1;
    max-width: 1280px;
    margin: 12rem auto 0; }
    .value_detail > .in > figure {
      position: absolute;
      right: 0rem;
      left: auto;
      top: -5rem;
      z-index: 1;
      width: 74.6rem;
      height: 45.7rem; }
      .value_detail > .in > figure figcaption {
        position: absolute;
        z-index: 1;
        font-size: 4rem;
        font-family: "Courgette", cursive;
        font-weight: 400;
        color: #f05050;
        transform: rotate(-12.5deg); }
      .value_detail > .in > figure .ph {
        width: 100%;
        height: 100%;
        background-position: center center;
        background-size: cover;
        background-repeat: no-repeat; }
    .value_detail > .in .text_box {
      max-width: 1220px;
      position: relative;
      height: 45.7rem; }
      .value_detail > .in .text_box > .wrap {
        position: relative;
        z-index: 1;
        top: 50%;
        transform: translateY(-50%);
        padding-left: 7.5rem;
        padding-right: 6.0rem;
        margin-right: 68rem;
        margin-left: 0; }
        .value_detail > .in .text_box > .wrap .read {
          margin-top: 1rem;
          font-size: 1.5rem;
          font-family: "source-han-sans-japanese", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
          font-weight: 400;
          line-height: 1.73;
          letter-spacing: 0.05em; }
    .value_detail > .in .no_tab {
      position: absolute;
      z-index: 1;
      top: -5rem;
      left: -2rem;
      right: auto; }
  .value_detail:nth-child(odd):before {
    content: none; }
  .value_detail:nth-child(odd) > .in > figure {
    position: absolute;
    right: auto;
    left: 0rem; }
  .value_detail:nth-child(odd) .text_box {
    margin-left: 6rem; }
    .value_detail:nth-child(odd) .text_box > .wrap {
      padding-right: 7.5rem;
      padding-left: 6.0rem;
      margin-left: 68rem;
      margin-right: 0; }
  .value_detail:nth-child(odd) .no_tab {
    top: -5rem;
    left: auto;
    right: -2rem; }

/* sec_point */
.sec_point > .in {
  max-width: 1100px;
  margin: 0 auto;
  padding-bottom: 7rem;
  font-size: 0;
  letter-spacing: 0;
  text-align: center; }
  @media (max-width: 720px) {
    .sec_point > .in {
      padding-bottom: 5rem;
      width: calc(100% - 3rem); } }
  .sec_point > .in .sec_tit {
    margin-bottom: 8rem; }
    @media (max-width: 720px) {
      .sec_point > .in .sec_tit {
        margin-bottom: 2rem; } }
.sec_point .point_detail {
  position: relative;
  max-width: 34rem;
  width: 100%;
  display: inline-block;
  vertical-align: top;
  padding-top: 23rem; }
  @media (max-width: 1250px) {
    .sec_point .point_detail {
      max-width: 27%; } }
  @media (max-width: 720px) {
    .sec_point .point_detail {
      padding-top: 0;
      max-width: 100%; } }
  .sec_point .point_detail + .point_detail {
    margin-left: 4rem; }
    @media (max-width: 720px) {
      .sec_point .point_detail + .point_detail {
        margin-left: 0;
        margin-top: 6.0rem; } }
  .sec_point .point_detail .text_box .title {
    width: 100%; }
  .sec_point .point_detail .chart {
    position: absolute;
    top: 0;
    display: block;
    height: 20.4rem; }
    @media (max-width: 720px) {
      .sec_point .point_detail .chart {
        position: static;
        height: 16rem;
        margin-top: 3rem; } }
    .sec_point .point_detail .chart img {
      position: relative;
      top: 50%;
      transform: translateY(-50%); }
      @media (max-width: 1250px) {
        .sec_point .point_detail .chart img {
          width: 100%;
          height: auto; } }
    @media (max-width: 720px) {
      .sec_point .point_detail .chart.c03 {
        height: 13rem; } }

@media (max-width: 720px) {
  .cmnLayout01 > .wrap .indoorview {
    margin-top: -0.5rem; } }

/* sec_contents */
.sec_contents > .wrap {
  padding-top: 1px;
  padding-bottom: 6.5rem;
  background-color: #FFF; }
  @media (max-width: 720px) {
    .sec_contents > .wrap {
      padding: 0;
      padding-bottom: 3.5rem; } }
  .sec_contents > .wrap .cmnLayout03 {
    margin-top: 80px; }
    @media (max-width: 720px) {
      .sec_contents > .wrap .cmnLayout03 {
        margin-top: 3rem; } }

/* sec_award */
.sec_award {
      background-color: #f4f4f2;
}
.sec_award > .wrap {
  padding-bottom: 9.5rem; }
  @media (max-width: 720px) {
    .sec_award > .wrap {
      padding-bottom: 4rem; } }
.sec_award .link01 {
  position: relative;
  text-align: center;
  margin-top: 70px; }
  @media (max-width: 720px) {
    .sec_award .link01 {
      margin-top: 7rem; } }

.eaqualsArea {
  text-align: left;
  padding: 70px 54px;
  background-color: #FAFAFA;
  position: relative;
  overflow: hidden;
  margin-bottom: 70px; }
  @media (max-width: 720px) {
    .eaqualsArea {
      padding: 4rem 1.5rem 5rem;
      text-align: center;
      margin-bottom: 3rem; } }
  .eaqualsArea .bg {
    position: absolute; }
    .eaqualsArea .bg.bg01 {
      width: 466px;
      height: 512px;
      bottom: 0;
      right: 0; }
      @media (max-width: 720px) {
        .eaqualsArea .bg.bg01 {
          width: 16rem;
          height: 18rem; } }
    .eaqualsArea .bg.bg02 {
      width: 186px;
      height: 312px;
      top: 0;
      left: 0; }
      @media (max-width: 720px) {
        .eaqualsArea .bg.bg02 {
          width: 7rem;
          height: 12rem; } }
    .eaqualsArea .bg.bg03 {
      width: 202px;
      height: 230px;
      bottom: 0;
      left: 0; }
      @media (max-width: 720px) {
        .eaqualsArea .bg.bg03 {
          width: 12rem;
          height: 15rem; } }
  .eaqualsArea > .in {
    max-width: 800px;
    width: 100%;
    margin: auto;
    position: relative; }
    @media (max-width: 720px) {
      .eaqualsArea > .in .imgarea {
        position: static;
        height: 6rem; } }
    .eaqualsArea > .in .imgarea > img {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      display: block;
      margin: auto; }
      @media (max-width: 720px) {
        .eaqualsArea > .in .imgarea > img {
          width: auto;
          height: 6rem;
          position: static; } }
    .eaqualsArea > .in .right {
      padding-left: 250px; }
      @media (max-width: 720px) {
        .eaqualsArea > .in .right {
          padding-left: 0;
          margin-top: 2rem; } }
      .eaqualsArea > .in .right .tit {
        font-size: 3.5rem;
        line-height: 4.5rem;
        color: #0D1663;
        font-weight: 500; }
        @media (max-width: 720px) {
          .eaqualsArea > .in .right .tit {
            font-size: 1.65rem;
            line-height: 2.4rem; } }
      .eaqualsArea > .in .right .cap {
        margin-top: 20px;
        font-size: 1.5rem;
        line-height: 2.5rem; }
        @media (max-width: 720px) {
          .eaqualsArea > .in .right .cap {
            margin-top: 1.5rem;
            font-size: 1.2rem;
            line-height: 2rem;
            text-align: justify; } }
  .eaqualsArea > .in2 {
    max-width: 800px;
    width: 100%;
    margin: auto;
    margin-top: 26px;
    position: relative;
    padding-top: 10px;
    text-align: center; }
    @media (max-width: 720px) {
      .eaqualsArea > .in2 {
        padding-top: 0; } }
    .eaqualsArea > .in2:before, .eaqualsArea > .in2:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #E4E4E4; }
      @media (max-width: 720px) {
        .eaqualsArea > .in2:before, .eaqualsArea > .in2:after {
          display: none; } }
    .eaqualsArea > .in2:after {
      top: 2px; }
    .eaqualsArea > .in2 .logo {
      width: 86px;
      height: 66px;
      display: inline-block;
      margin: 20px 10px; }
      @media (max-width: 720px) {
        .eaqualsArea > .in2 .logo {
          width: 8rem;
          height: 6rem;
          display: inline-block;
          margin: 0.5rem 0.2rem;
          background-size: contain; } }

[data-slidearea04] {
  overflow: hidden;
  padding: 0; }
  [data-slidearea04] .contentWrap {
    max-width: 78.2rem;
    max-height: 24.5rem;
    width: 100%;
    height: 100%;
    margin: auto;
    position: relative; }
    @media (max-width: 720px) {
      [data-slidearea04] .contentWrap {
        max-width: 25rem;
        max-height: 100%;
        min-height: 30.7rem; } }
  [data-slidearea04] .content {
    position: relative;
    display: table; }
    [data-slidearea04] .content.disableTrs {
      -webkit-transition: none !important;
      transition: none !important; }
  [data-slidearea04] .slide {
    display: table-cell;
    position: relative;
    top: 0;
    left: 0;
    height: 100%; }
    [data-slidearea04] .slide > .wrap {
      position: relative;
      max-width: 69.2rem;
      height: 100%;
      min-height: 24.5rem;
      margin: 0 4.5rem; }
      @media (max-width: 720px) {
        [data-slidearea04] .slide > .wrap {
          max-width: 22rem;
          min-height: 30rem;
          margin: 0 1.5rem; } }
      [data-slidearea04] .slide > .wrap .ph {
        position: absolute;
        left: 4rem;
        top: 50%;
        margin-top: -10rem;
        z-index: 2;
        width: 20rem;
        height: 20rem;
        background-position: center center;
        background-size: contain;
        background-repeat: no-repeat; }
        @media (max-width: 720px) {
          [data-slidearea04] .slide > .wrap .ph {
            top: 2rem;
            left: 0;
            right: 0;
            margin-top: 0;
            width: 100%;
            height: 14rem; } }
      [data-slidearea04] .slide > .wrap .text_box {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2;
        left: 28.5rem;
        right: 4rem; }
        @media (max-width: 720px) {
          [data-slidearea04] .slide > .wrap .text_box {
            display: block;
            transform: none;
            top: 0;
            padding-top: 16.5rem;
            padding-left: 2.5rem;
            padding-right: 2.5rem;
            position: relative;
            left: auto;
            right: auto; } }
        [data-slidearea04] .slide > .wrap .text_box > .title {
          color: #f05050;
          font-size: 2.4rem;
          font-family: "source-han-sans-japanese", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
          font-weight: 500;
          word-wrap: break-word;
          overflow-wrap: break-word; }
          @media (max-width: 720px) {
            [data-slidearea04] .slide > .wrap .text_box > .title {
              font-size: 1.4rem; } }
        [data-slidearea04] .slide > .wrap .text_box > .read {
          font-size: 1.4rem;
          font-family: "source-han-sans-japanese", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
          font-weight: 400;
          letter-spacing: 0.05em;
          line-height: 1.64;
          word-wrap: break-word;
          overflow-wrap: break-word; }
          @media (max-width: 720px) {
            [data-slidearea04] .slide > .wrap .text_box > .read {
              font-size: 1.2rem; } }

[data-htmlmodule="1"] .btns01 {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  height: 100%;
  max-width: 78.2rem;
  width: 100%; }
  [data-htmlmodule="1"] .btns01 button {
    -webkit-tap-highlight-color: transparent;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 11;
    width: 70px;
    height: 70px; }
    .no-touchevents [data-htmlmodule="1"] .btns01 button:hover:before, .no-touchevents [data-htmlmodule="1"] .btns01 button.hover:before {
      background-color: #19216b; }
    .no-touchevents [data-htmlmodule="1"] .btns01 button:hover:after, .no-touchevents [data-htmlmodule="1"] .btns01 button.hover:after {
      border-top: 1px solid #fff; }
    .no-touchevents [data-htmlmodule="1"] .btns01 button:hover.next:after, .no-touchevents [data-htmlmodule="1"] .btns01 button.hover.next:after {
      border-right: 1px solid #fff; }
    .no-touchevents [data-htmlmodule="1"] .btns01 button:hover.prev:after, .no-touchevents [data-htmlmodule="1"] .btns01 button.hover.prev:after {
      border-left: 1px solid #fff; }
    [data-htmlmodule="1"] .btns01 button.next {
      right: -36px; }
      @media (max-width: 720px) {
        [data-htmlmodule="1"] .btns01 button.next {
          right: -40px; } }
      [data-htmlmodule="1"] .btns01 button.next:after {
        border-right: 1px solid #19216b;
        transform: rotate(45deg);
        right: 3px; }
    [data-htmlmodule="1"] .btns01 button.prev {
      left: -36px; }
      @media (max-width: 720px) {
        [data-htmlmodule="1"] .btns01 button.prev {
          left: -40px; } }
      [data-htmlmodule="1"] .btns01 button.prev:after {
        border-left: 1px solid #19216b;
        transform: rotate(-45deg);
        right: -3px; }
    [data-htmlmodule="1"] .btns01 button:before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto;
      width: 36px;
      height: 36px;
      background-color: #ffc600;
      border-radius: 50%;
      transition: .2s; }
    [data-htmlmodule="1"] .btns01 button:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto;
      width: 10px;
      height: 10px;
      border-top: 1px solid #19216b; }
[data-htmlmodule="1"] .pager {
  position: absolute;
  bottom: -4.5rem;
  left: 0;
  width: 100%;
  text-align: center; }
  [data-htmlmodule="1"] .pager button {
    width: 20px;
    height: 20px;
    position: relative;
    display: inline-block;
    vertical-align: top; }
    [data-htmlmodule="1"] .pager button:after {
      content: "";
      display: block;
      width: 10px;
      height: 10px;
      border: 1px solid #19216b;
      background-color: #fff;
      border-radius: 50%;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto;
      transition: .2s; }
    [data-htmlmodule="1"] .pager button.active:after {
      background-color: #19216b; }
    .no-touchevents [data-htmlmodule="1"] .pager button:hover:after {
      background-color: #19216b; }
