@charset "UTF-8";
@import url("//fonts.googleapis.com/css2?family=Urbanist:wght@100..900&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");
/*
font-family: $font-gothic;
300 400 500 700
*/
/*
font-family: $font-min;
300 400 500 600 700
*/
/*
font-family: $font-en;
300 400 600
*/
/*@include font-gothic();*/
/*@include font-min();*/
/*@include font-en();*/
/*
$c_primary:#1C4B96;
*/
/*@include incImg100();*/
/*@include incSmooth();*/
/*@include dropshadow;*/
/*@include boxshadow;*/
/*@include fs();*/
/*@include btm();*/
body {
  background: #FFF; }

.wrap {
  padding: 0; }

.contents {
  padding: 0; }

.contents #main {
  max-width: 100%; }

.news_info {
  border-color: #0086C7 !important;
  color: #0086C7 !important; }

.news_event {
  border-color: #E35E78 !important;
  color: #E35E78 !important; }

.news_internship {
  border-color: #D55B00 !important;
  color: #D55B00 !important; }

.news_blog {
  border-color: #000 !important;
  color: #000 !important; }

@media only screen and (max-width: 960px) {
  .wrap {
    overflow: hidden; } }
.topMv {
  background: #FFF;
  /*
  background: linear-gradient(180deg, rgba(255, 255, 255, 1) 20%, rgba(253, 249, 225, 1) 50%) fixed;
  */
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  height: calc(100vh - 110px);
  min-height: 770px;
  padding-bottom: 80px;
  	/*
  max-height: 800px;
  max-height: 830px;
  padding-top: 72px;
  */
  position: relative;
  z-index: 2;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  .topMv .swiper {
    opacity: 0; }
    .topMv .swiper .swiper-wrapper {
      transition-timing-function: linear !important;
      display: flex; }
      .topMv .swiper .swiper-wrapper .swiper-slide {
        width: 503px; }
        .topMv .swiper .swiper-wrapper .swiper-slide:nth-child(2n) {
          padding-top: 80px;
          width: 478px; }
  .topMv .swiper {
    animation: swiperFade 1s ease 0.2s 1 forwards; }
  .topMv .topMvInr {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin: 0 auto;
    width: 100%;
    max-width: 1360px;
    position: relative;
    z-index: 2;
    padding: 0 2.5vw;
    transform: translate(0, -40px); }
    .topMv .topMvInr .title {
      width: 660px; }
      .topMv .topMvInr .title .en {
        display: inline-block;
        opacity: 0;
        filter: blur(10px);
        -webkit-animation: enFade 0.6s ease-out 0.3s 1 forwards;
        animation: enFade 0.6s ease-out 0.3s 1 forwards;
        margin-bottom: 28px; }
        .topMv .topMvInr .title .en strong {
          background: linear-gradient(90deg, #00A0E9 0%, #37C4D5 80%);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          display: block;
          font-family: "Urbanist", sans-serif;
          font-size: 80px;
          font-size: 8rem;
          line-height: 2;
          line-height: 1.8;
          font-weight: bold;
          letter-spacing: -0.02em;
          line-height: 1; }
          @media only screen and (max-width: 960px) {
            .topMv .topMvInr .title .en strong {
              font-size: 68px;
              font-size: 6.8rem; } }
      .topMv .topMvInr .title .ja {
        color: #000;
        display: block;
        font-size: 42px;
        font-size: 4.2rem;
        line-height: 2;
        line-height: 1.8;
        font-weight: 700;
        line-height: 1.5;
        letter-spacing: -0.02em;
        opacity: 0;
        animation: swiperFade 0.1s ease 0.3s 1 forwards; }
        @media only screen and (max-width: 960px) {
          .topMv .topMvInr .title .ja {
            font-size: 36px;
            font-size: 3.6rem; } }
        .topMv .topMvInr .title .ja span {
          display: inline-block;
          opacity: 0;
          transform: translate(20px, 10px);
          filter: blur(10px); }
          .topMv .topMvInr .title .ja span.mfade {
            -webkit-animation: mojiFade3 0.5s ease 0.1s 1 forwards;
            animation: mojiFade3 0.5s ease 0.1s 1 forwards; }
          .topMv .topMvInr .title .ja span:nth-child(n+9) {
            color: #00A0E9; }
    .topMv .topMvInr .newsIndexList {
      width: calc(100% - 750px);
      opacity: 0;
      filter: blur(10px);
      -webkit-animation: enFade 1s ease-out 1s 1 forwards;
      animation: enFade 1s ease-out 1s 1 forwards; }
      .topMv .topMvInr .newsIndexList ul li {
        width: 100%; }
        .topMv .topMvInr .newsIndexList ul li a {
          background: #FFF;
          box-shadow: 0 0 20px rgba(0, 160, 233, 0.3);
          border-radius: 4px;
          color: #000;
          display: flex;
          flex-wrap: wrap;
          align-items: center;
          padding: 30px 60px 30px 30px;
          text-decoration: none;
          position: relative; }
          .topMv .topMvInr .newsIndexList ul li a .cat {
            background: #FFF;
            border: 1px solid #DDD;
            border-radius: 30px;
            color: #555;
            display: inline-flex;
            justify-content: center;
            align-items: center;
            font-size: 12px;
            font-size: 1.2rem;
            line-height: 2;
            font-weight: 500;
            letter-spacing: 0.04em;
            line-height: 1;
            min-height: 24px;
            min-width: 64px;
            margin-left: 12px;
            padding: 1px 12px;
            vertical-align: 1px; }
            @media only screen and (max-width: 960px) {
              .topMv .topMvInr .newsIndexList ul li a .cat {
                font-size: 10px;
                font-size: 1rem; } }
          .topMv .topMvInr .newsIndexList ul li a .date {
            font-family: "Urbanist", sans-serif;
            font-size: 13px;
            font-size: 1.3rem;
            line-height: 2;
            line-height: 1.4;
            font-weight: 400;
            transition: 0.3s; }
            @media only screen and (max-width: 960px) {
              .topMv .topMvInr .newsIndexList ul li a .date {
                font-size: 10px;
                font-size: 1rem; } }
          .topMv .topMvInr .newsIndexList ul li a .title {
            display: block;
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 2;
            font-weight: 500;
            line-height: 1.7;
            letter-spacing: -0.02em;
            margin-top: 10px;
            position: relative;
            transition: 0.2s;
            width: 100%;
            overflow: hidden;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            /* 行数を指定 */ }
            @media only screen and (max-width: 960px) {
              .topMv .topMvInr .newsIndexList ul li a .title {
                font-size: 14px;
                font-size: 1.4rem; } }
          .topMv .topMvInr .newsIndexList ul li a:hover .title {
            color: #00A0E9; }

@keyframes mojiFade3 {
  0% {
    opacity: 0;
    filter: blur(10px);
    transform: translate(20px, 10px); }
  100% {
    opacity: 1;
    filter: blur(0);
    transform: translate(0, 0); } }
@keyframes swiperFade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes enFade {
  0% {
    opacity: 0;
    filter: blur(10px); }
  100% {
    opacity: 1;
    filter: blur(0); } }
@media only screen and (max-width: 960px) {
  .topMv {
    align-items: flex-start;
    align-content: flex-start;
    height: calc(100vh - 66px);
    min-height: auto;
    min-height: none;
    padding: 28px 0 0; }
    .topMv .swiper .swiper-wrapper .swiper-slide {
      width: 360px; }
      .topMv .swiper .swiper-wrapper .swiper-slide:nth-child(2n) {
        padding-top: 32px;
        width: 340px; }
    .topMv .topMvInr {
      display: block;
      margin: 0;
      width: 100%;
      max-width: 100%;
      padding: 0 7.5vw;
      transform: translate(0, -20px); }
      .topMv .topMvInr .title {
        width: 100%; }
        .topMv .topMvInr .title .en {
          margin-bottom: 16px; }
          .topMv .topMvInr .title .en strong {
            font-size: 50px;
            letter-spacing: -0.02em;
            line-height: 0.92; }
        .topMv .topMvInr .title .ja {
          font-size: 20px;
          letter-spacing: -0.04em; }
      .topMv .topMvInr .newsIndexList {
        padding-top: 32px;
        width: 100%; }
        .topMv .topMvInr .newsIndexList ul li {
          margin: 0 0 16px 0; }
          .topMv .topMvInr .newsIndexList ul li a {
            padding: 16px 5vw; }
            .topMv .topMvInr .newsIndexList ul li a .cat {
              font-size: 10px;
              letter-spacing: -0.02em; }
            .topMv .topMvInr .newsIndexList ul li a .date {
              font-size: 11px; }
            .topMv .topMvInr .newsIndexList ul li a .title {
              font-size: 14px;
              padding-right: 0; } }
@media only screen and (max-width: 430px) {
  .topMv {
    z-index: 0;
    min-height: 700px;
    /*
    		&::before {
    			position: absolute;
    			background: linear-gradient(180deg, rgba(255, 255, 255, 1) 20%, rgba(253, 249, 225, 1) 50%);
    			left: 0;
    			top: 0;
    			width: 100%;
    			height: 100%;
    			content: "";
    			z-index: -1;
    		}
    		*/ } }
@media only screen and (max-width: 380px) {
  .topMv {
    min-height: 700px; } }
.bg01 {
  background: #0CA3E7;
  background: linear-gradient(145deg, #0ca3e7 60%, #54d8ca 95%, #55d9ca 100%);
  position: relative;
  width: 100%; }

.snow {
  position: absolute;
  top: -10px;
  background-image: url("/assets/img/top/snow.png");
  background-size: cover;
  border-radius: 50%;
  pointer-events: none;
  animation-name: fall;
  animation-timing-function: linear; }

@keyframes fall {
  0% {
    transform: translateY(0); }
  100% {
    transform: translateY(1100px); } }
.sec01 {
  color: #FFF;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 1100px;
  margin: 0;
  position: relative;
  z-index: 0; }
  .sec01::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: url(../img/top/sec01-bg.webp) no-repeat center center/cover;
    z-index: -1; }
  .sec01 .inr {
    padding-left: 2.5vw;
    position: relative;
    z-index: 2; }
  .sec01 h2 {
    display: block;
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 2;
    line-height: 1.8;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.02em;
    margin-bottom: 48px; }
    @media only screen and (max-width: 960px) {
      .sec01 h2 {
        font-size: 31px;
        font-size: 3.1rem; } }
  .sec01 .pBox p {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2;
    font-weight: 500;
    margin-top: 32px;
    font-feature-settings: "palt"; }
    @media only screen and (max-width: 960px) {
      .sec01 .pBox p {
        font-size: 15px;
        font-size: 1.5rem; } }
    .sec01 .pBox p:first-child {
      margin-top: 0; }
  .sec01 .mindImgList li {
    position: absolute;
    opacity: 0;
    transform: translate(0, 0) scale(0.4); }
    .sec01 .mindImgList li img {
      				/*
      border-radius: 16px;
      box-shadow: 0px 12px 12px 0px rgba(0, 0, 0, 0.08);
      */
      overflow: hidden;
      height: auto;
      width: 100%; }
    .sec01 .mindImgList li.li01 {
      top: 14%;
      left: 6%;
      width: 21%; }
    .sec01 .mindImgList li.li02 {
      top: 42%;
      right: 6%;
      width: 21%; }
    .sec01 .mindImgList li.li03 {
      top: 72%;
      right: 9%;
      width: 14%; }
  .sec01.is-active .inr h2 {
    opacity: 0;
    transform: translate(0, 20px);
    animation: mindFade02 1s ease .55s 1 forwards; }
  .sec01.is-active .inr .pBox p {
    opacity: 0;
    transform: translate(0, 20px);
    animation: mindFade02 1s ease .85s 1 forwards; }
  .sec01.is-active .mindImgList li.li01 {
    animation: mindFade01 1s ease 0.6s 1 forwards;
    		/*
    		img {
    			animation: 2.2s fuwafuwa 0.1s infinite;
    		}
    */ }
  .sec01.is-active .mindImgList li.li02 {
    animation: mindFade01 1s ease 0.9s 1 forwards;
    /*
    img {
    	animation: 2.2s fuwafuwa 0.2s infinite;
    }
    */ }
  .sec01.is-active .mindImgList li.li03 {
    animation: mindFade01 1s ease 1.2s 1 forwards; }
@keyframes fuwafuwa {
  0%,
		100% {
    transform: translateY(0); }
  50% {
    transform: translateY(-30px); } }
@keyframes mindFade01 {
  0% {
    opacity: 0;
    transform: translate(0, 0) scale(0.4); }
  60% {
    transform: translate(0, 0) scale(1.15); }
  100% {
    opacity: 1;
    transform: translate(0, 0) scale(1); } }
@keyframes mindFade02 {
  0% {
    opacity: 0;
    transform: translate(0, 20px); }
  100% {
    opacity: 1;
    transform: translate(0, 0); } }
@media only screen and (max-width: 960px) {
  .sec01 {
    display: block;
    min-height: auto;
    min-height: none;
    padding: 80px 5vw 370px;
    text-align: center; }
    .sec01 .inr {
      padding-left: 0; }
    .sec01 h2 {
      font-size: 22px;
      line-height: 1.5;
      letter-spacing: -0.04em;
      margin-bottom: 32px; }
    .sec01 .pBox p {
      font-size: 14px;
      letter-spacing: -0.04em;
      line-height: 1.9;
      margin-top: 24px; }
      .sec01 .pBox p:first-child {
        margin-top: 0; }
    .sec01 .mindImgList li.li01 {
      top: auto;
      bottom: 120px;
      left: 6%;
      width: 160px; }
    .sec01 .mindImgList li.li02 {
      top: auto;
      bottom: 150px;
      right: 6%;
      width: 140px; }
    .sec01 .mindImgList li.li03 {
      top: auto;
      bottom: 50px;
      right: 9%;
      width: 70px; }
    .sec01.is-active .inr h2 {
      opacity: 0;
      transform: translate(0, 20px);
      animation: mindFade02 1s ease .55s 1 forwards; }
    .sec01.is-active .inr .pBox p {
      opacity: 0;
      transform: translate(0, 20px);
      animation: mindFade02 1s ease .85s 1 forwards; }
    .sec01.is-active .mindImgList li.li01 {
      animation: mindFade01 1s ease 1.5s 1 forwards;
      /*
      img {
      	animation: 2.2s fuwafuwa 0.1s infinite;
      }
      */ }
    .sec01.is-active .mindImgList li.li02 {
      animation: mindFade01 1s ease 1.8s 1 forwards;
      /*
      img {
      	animation: 2.2s fuwafuwa 0.2s infinite;
      }
      */ }
    .sec01.is-active .mindImgList li.li03 {
      animation: mindFade01 1s ease 2.1s 1 forwards; }
  @keyframes fuwafuwa {
    0%,
			100% {
      transform: translateY(0); }
    50% {
      transform: translateY(-20px); } }
  @keyframes mindFade01 {
    0% {
      opacity: 0;
      transform: translate(0, 0) scale(0.4); }
    60% {
      transform: translate(0, 0) scale(1.15); }
    100% {
      opacity: 1;
      transform: translate(0, 0) scale(1); } }
  @keyframes mindFade02 {
    0% {
      opacity: 0;
      transform: translate(0, 20px); }
    100% {
      opacity: 1;
      transform: translate(0, 0); } } }
.sec02 {
  margin: 0 auto;
  max-width: 1280px;
  padding: 180px 40px 160px; }
  .sec02 .tabBox {
    display: none;
    opacity: 0;
    transform: translate(0, 10px); }
  .sec02 .tabBox.active {
    display: block;
    -webkit-animation: tabFade 0.6s ease 0.05s 1 forwards;
    animation: tabFade 0.6s ease 0.05s 1 forwards; }
  .sec02 .newsCatFlex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative; }
    .sec02 .newsCatFlex h2 {
      margin-bottom: 0;
      position: relative;
      width: 30%; }
      .sec02 .newsCatFlex h2 .ja {
        color: #00A0E9;
        display: block;
        font-size: 42px;
        font-size: 4.2rem;
        line-height: 2;
        line-height: 1.8;
        font-weight: 500;
        letter-spacing: -0.01em;
        line-height: 1.25;
        position: relative;
        z-index: 2; }
        @media only screen and (max-width: 960px) {
          .sec02 .newsCatFlex h2 .ja {
            font-size: 36px;
            font-size: 3.6rem; } }
      .sec02 .newsCatFlex h2 .en {
        color: #F5F5F5;
        font-family: "Urbanist", sans-serif;
        font-size: 120px;
        font-size: 12rem;
        line-height: 2;
        line-height: 1.8;
        font-weight: 600;
        letter-spacing: 0;
        line-height: 1;
        position: absolute;
        top: -0.7em;
        left: -0.4em;
        z-index: -1;
        white-space: nowrap; }
        @media only screen and (max-width: 960px) {
          .sec02 .newsCatFlex h2 .en {
            font-size: 102px;
            font-size: 10.2rem; } }
    .sec02 .newsCatFlex .data {
      width: 65%; }
    .sec02 .newsCatFlex .cmnBtn {
      position: absolute;
      left: 0;
      top: 120px; }
    .sec02 .newsCatFlex .cmnBtn li a {
      min-width: 280px; }
  .sec02 .newsCatSort {
    margin-bottom: 30px; }
    .sec02 .newsCatSort > ul {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      padding: 0;
      width: 100%; }
      .sec02 .newsCatSort > ul li {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 2;
        font-weight: 500;
        letter-spacing: 0;
        line-height: 1.7;
        margin-right: 10px; }
        @media only screen and (max-width: 960px) {
          .sec02 .newsCatSort > ul li {
            font-size: 12px;
            font-size: 1.2rem; } }
        .sec02 .newsCatSort > ul li span {
          background: #FFF;
          border: 1px solid #DDD;
          border-radius: 40px;
          color: #46AAFC;
          cursor: pointer;
          display: block;
          padding: 4px 20px;
          text-decoration: none; }
          .sec02 .newsCatSort > ul li span:hover {
            background: #46AAFC;
            color: #FFF; }
        .sec02 .newsCatSort > ul li.current span {
          background: #46AAFC;
          color: #FFF; }
  .sec02 .newsIndexList ul li {
    margin: 0 0 16px 0;
    width: 100%; }
    .sec02 .newsIndexList ul li a {
      background: #FAFAFA;
      color: #000;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      padding: 30px 60px 30px 30px;
      text-decoration: none;
      position: relative; }
      .sec02 .newsIndexList ul li a .cat {
        background: #FFF;
        border: 1px solid #DDD;
        border-radius: 30px;
        color: #555;
        display: inline-flex;
        justify-content: center;
        align-items: center;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 2;
        font-weight: 500;
        letter-spacing: 0.04em;
        line-height: 1;
        min-height: 24px;
        min-width: 64px;
        margin-left: 12px;
        padding: 1px 12px;
        vertical-align: 1px; }
        @media only screen and (max-width: 960px) {
          .sec02 .newsIndexList ul li a .cat {
            font-size: 10px;
            font-size: 1rem; } }
        .sec02 .newsIndexList ul li a .cat.cat01 {
          border-color: #D55A00;
          color: #D55A00; }
      .sec02 .newsIndexList ul li a .date {
        font-family: "Urbanist", sans-serif;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 2;
        line-height: 1.4;
        font-weight: 400;
        transition: 0.3s; }
        @media only screen and (max-width: 960px) {
          .sec02 .newsIndexList ul li a .date {
            font-size: 10px;
            font-size: 1rem; } }
      .sec02 .newsIndexList ul li a .title {
        display: block;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 2;
        font-weight: 500;
        line-height: 1.7;
        letter-spacing: -0.02em;
        margin-top: 10px;
        position: relative;
        transition: 0.5s;
        width: 100%;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
        /* 行数を指定 */ }
        @media only screen and (max-width: 960px) {
          .sec02 .newsIndexList ul li a .title {
            font-size: 14px;
            font-size: 1.4rem; } }
      .sec02 .newsIndexList ul li a:hover .title {
        color: #00A0E9; }

@media only screen and (min-width: 960px) {
  .sec02 .newsCatFlex {
    min-height: 300px; } }
@media only screen and (max-width: 500px) {
  .sec01::after {
    background: url(../img/top/sec01-bg-sp.webp) no-repeat center center/cover; } }
@media only screen and (max-width: 960px) {
  .sec02 {
    margin: 0;
    max-width: 100%;
    padding: 80px 5vw 90px; }
    .sec02 .newsCatFlex {
      display: block; }
      .sec02 .newsCatFlex h2 {
        margin-bottom: 40px;
        padding-left: 16px;
        width: 100%; }
        .sec02 .newsCatFlex h2 .ja {
          font-size: 26px;
          letter-spacing: 0.04em; }
        .sec02 .newsCatFlex h2 .en {
          font-size: 60px;
          top: -0.6em;
          left: 0;
          z-index: -1; }
      .sec02 .newsCatFlex .data {
        width: 100%; }
      .sec02 .newsCatFlex .cmnBtn {
        position: static;
        padding: 0 5vw; }
      .sec02 .newsCatFlex .cmnBtn li a {
        min-width: 240px;
        padding: 12px 40px 12px 30px; }
    .sec02 .newsCatSort {
      margin-bottom: 30px; }
      .sec02 .newsCatSort > ul {
        justify-content: center;
        padding: 0;
        width: 100%; }
        .sec02 .newsCatSort > ul li {
          margin: 4px; }
          .sec02 .newsCatSort > ul li a {
            padding: 4px 16px; }
    .sec02 .newsIndexList ul li {
      margin: 0 0 16px 0; }
      .sec02 .newsIndexList ul li a {
        padding: 20px 5vw; }
        .sec02 .newsIndexList ul li a .cat {
          font-size: 11px; }
          .sec02 .newsIndexList ul li a .cat.cat01 {
            border-color: #D55A00;
            color: #D55A00; }
        .sec02 .newsIndexList ul li a .date {
          font-size: 11px; }
        .sec02 .newsIndexList ul li a .title {
          font-size: 14px;
          padding-right: 24px; } }
@keyframes tabFade {
  0% {
    opacity: 0;
    transform: translate(0, 10px); }
  100% {
    opacity: 1;
    transform: translate(0, 0); } }
.bg02 {
  background: #00a0e9;
  background: linear-gradient(180deg, rgba(0, 160, 233, 0.13) 0%, rgba(83, 215, 203, 0.13) 100%); }

.cmnBtn.whiteBtn {
  display: flex;
  flex-wrap: wrap; }
  .cmnBtn.whiteBtn li {
    margin: 0 8px; }

.sec03 {
  background: url("/assets/img/top/sec03_bg.webp") center top 90px no-repeat;
  background-size: 1115px auto;
  margin-bottom: 160px; }
  .sec03 h2 {
    text-align: center;
    margin-bottom: 70px;
    position: relative;
    width: 100%; }
    .sec03 h2 .en {
      color: rgba(255, 255, 255, 0.9);
      font-family: "Urbanist", sans-serif;
      font-size: 100px;
      font-weight: 600;
      letter-spacing: 0;
      line-height: 1;
      margin-bottom: 10px;
      white-space: nowrap; }
    .sec03 h2 .ja {
      color: #00A0E9;
      display: block;
      font-size: 55px;
      font-size: 5.5rem;
      line-height: 2;
      line-height: 1.8;
      font-weight: bold;
      letter-spacing: -0.01em;
      line-height: 1;
      position: relative;
      z-index: 2;
      background: linear-gradient(90deg, #06AEFC 35%, #000000 60%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent; }
      @media only screen and (max-width: 960px) {
        .sec03 h2 .ja {
          font-size: 47px;
          font-size: 4.7rem; } }
      .sec03 h2 .ja .num {
        font-family: "Urbanist", sans-serif;
        font-size: 90px;
        font-size: 9rem;
        line-height: 2;
        line-height: 1.8;
        line-height: 1;
        margin-right: 8px; }
        @media only screen and (max-width: 960px) {
          .sec03 h2 .ja .num {
            font-size: 77px;
            font-size: 7.7rem; } }
    .sec03 h2 .img {
      display: block;
      width: 180px;
      position: absolute;
      top: -100px;
      left: calc(50% - 90px); }
    .sec03 h2 .fukidashi {
      filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
      display: block;
      width: 364px;
      position: absolute;
      top: 54px;
      left: calc(50% - 182px); }
  .sec03 .slideBox {
    position: relative;
    margin: 0 auto 60px;
    max-width: 1140px; }
  .sec03 .swiper {
    position: relative;
    overflow-y: visible !important;
    margin: 0 auto;
    max-width: 1000px; }
    .sec03 .swiper .swiper-slide {
      box-sizing: border-box;
      padding: 0;
      position: relative;
      width: 292px;
      			/*モーダル無効化
      a {
      pointer-events: none;
      }
      */ }
      @media only screen and (min-width: 960px) {
        .sec03 .swiper .swiper-slide a img {
          transition: 0.2s; }
        .sec03 .swiper .swiper-slide a:hover img {
          opacity: 0.7; } }
  .sec03 .swiper-button-prev,
  .sec03 .swiper-button-next {
    background: none;
    border-radius: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    display: flex;
    min-width: 90px;
    min-height: 90px;
    width: 90px;
    height: 90px;
    cursor: pointer;
    z-index: 2;
    transition: 0.2s;
    opacity: 1; }
    .sec03 .swiper-button-prev:hover,
    .sec03 .swiper-button-next:hover {
      transform: scale(1.2);
      box-shadow: 0 0 8px rgba(0, 0, 0, 0.2); }
  .sec03 .swiper-button-prev::before,
  .sec03 .swiper-button-next::before {
    content: "";
    border-radius: 50%;
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    font-family: "Urbanist", sans-serif; }
  .sec03 .swiper-button-prev::after,
  .sec03 .swiper-button-next::after {
    background: url("../img/common/icon_next_02.png") center center no-repeat;
    background-size: cover;
    width: 90px;
    height: 90px;
    content: ""; }
  .sec03 .swiper-button-prev::after {
    background: url("../img/common/icon_prev_02.png") center center no-repeat;
    background-size: cover;
    margin-left: 0.1rem; }
  .sec03 .swiper-button-disabled {
    pointer-events: none;
    opacity: 0; }
  .sec03 .swiper-button-prev {
    left: -2.5vw !important;
    top: calc(50% - 30px); }
  .sec03 .swiper-button-next {
    right: -2.5vw !important;
    top: calc(50% - 30px); }
  .sec03 .swiper-button-next.swiper-button-disabled,
  .sec03 .swiper-button-prev.swiper-button-disabled {
    opacity: .15; }
  .sec03 .swiper-horizontal > .swiper-pagination-bullets,
  .sec03 .swiper-pagination-bullets.swiper-pagination-horizontal,
  .sec03 .swiper-pagination-custom,
  .sec03 .swiper-pagination-fraction {
    bottom: -30px !important; }

.modaal-wrapper .staffModal {
  background: #FFF;
  box-shadow: inset 25px 35px 35px rgba(188, 234, 254, 0.2), inset -25px -35px 35px rgba(188, 234, 254, 0.2);
  border: 5px solid rgba(255, 255, 255, 0.7);
  border-radius: 24px;
  display: block;
  padding: 70px 54px 30px;
  position: relative; }
  .modaal-wrapper .staffModal .img {
    text-align: center; }
    .modaal-wrapper .staffModal .img img {
      width: 170px; }
  .modaal-wrapper .staffModal .data {
    padding: 28px 0;
    width: 100%; }
    .modaal-wrapper .staffModal .data .head02 {
      color: #06AEFD;
      font-weight: 500;
      letter-spacing: 0.06em;
      margin-bottom: 24px;
      padding-bottom: 16px;
      text-align: center; }
    .modaal-wrapper .staffModal .data .desc {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 2;
      line-height: 1.7;
      font-weight: 500;
      letter-spacing: -0.02em; }
      @media only screen and (max-width: 960px) {
        .modaal-wrapper .staffModal .data .desc {
          font-size: 15px;
          font-size: 1.5rem; } }

.modaal-wrapper {
  	/*
  z-index: 10001!important;
  background-color: rgba(0,0,0,0.8)!important;
  */ }

.modaal-container {
  border-radius: 24px !important;
  background-color: transparent !important;
  max-width: 600px !important; }

.modaal-content-container {
  background-color: transparent !important;
  padding: 0 !important;
  position: relative; }

.inline_close {
  background: #000;
  border-radius: 100%;
  color: #FFF;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: 100;
  font-weight: normal;
  text-decoration: none;
  position: absolute;
  top: 30px;
  right: 30px;
  width: 50px;
  height: 50px; }

/* Animation */
.sec03 {
  transform: translate(0px, 0) !important; }
  .sec03 h2 .en,
  .sec03 h2 .ja,
  .sec03 h2 .img,
  .sec03 h2 .fukidashi {
    opacity: 0; }
  .sec03 h2 .en,
  .sec03 h2 .ja {
    display: block;
    transform: translate(0px, 30px); }
  .sec03 .slideBox,
  .sec03 .cmnBtn {
    opacity: 0; }
  .sec03.is-active {
    animation: fadeInK 0s ease 0s 1 forwards; }
    .sec03.is-active h2 .img {
      animation: fadeInK 0.4s ease .1s 1 forwards; }
    .sec03.is-active h2 .fukidashi {
      animation: bounce 1s ease 0.3s 1 forwards; }
    .sec03.is-active h2 .en {
      animation: fadeInUpK 0.6s ease 0.9s 1 forwards; }
    .sec03.is-active h2 .ja {
      animation: fadeInUpK 0.6s ease 1.1s 1 forwards; }
    .sec03.is-active .slideBox {
      animation: fadeInUpK 0.6s ease 1.3s 1 forwards; }
    .sec03.is-active .cmnBtn {
      animation: fadeInUpK 0.6s ease 1.5s 1 forwards; }

@keyframes bounce {
  0% {
    transform: translateY(-20px); }
  25% {
    transform: translateY(16px); }
  50% {
    transform: translateY(-11px); }
  75% {
    transform: translateY(5px); }
  100% {
    transform: translateY(0);
    opacity: 1; } }
@media only screen and (max-width: 960px) {
  .sec03 {
    background-size: 100% auto;
    padding: 12px 0 0;
    margin-bottom: 80px; }
    .sec03 h2 {
      margin-bottom: 40px; }
      .sec03 h2 .en {
        font-size: 50px;
        margin-bottom: 50px; }
      .sec03 h2 .ja {
        font-size: 38px;
        margin-top: 20px; }
        .sec03 h2 .ja .num {
          font-family: "Urbanist", sans-serif;
          font-size: 70px;
          line-height: 1;
          margin-right: 4px; }
      .sec03 h2 .img {
        width: 90px;
        top: -30px;
        left: calc(50% - 45px); }
      .sec03 h2 .fukidashi {
        width: 240px;
        top: 50px;
        left: calc(50% - 120px); }
    .sec03 .cmnBtn.whiteBtn {
      padding: 0 10vw; }
      .sec03 .cmnBtn.whiteBtn li {
        margin: 0; }
        .sec03 .cmnBtn.whiteBtn li a {
          min-width: 300px;
          padding: 12px 40px 12px 30px; }
    .sec03 .slideBox {
      margin: 0 auto 20px; }
    .sec03 .swiper {
      max-width: 100%; }
      .sec03 .swiper .swiper-slide {
        padding: 0;
        position: relative;
        width: 45vw; }
        .sec03 .swiper .swiper-slide a {
          display: block;
          transition: 1s;
          opacity: 0.5; }
        .sec03 .swiper .swiper-slide.swiper-slide-active a {
          opacity: 1; }
    .sec03 .swiper-button-prev,
    .sec03 .swiper-button-next {
      background: none;
      border-radius: 100%;
      box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
      display: flex;
      min-width: 44px;
      min-height: 44px;
      width: 44px;
      height: 44px;
      cursor: pointer;
      z-index: 2;
      transition: 0.2s;
      opacity: 1; }
      .sec03 .swiper-button-prev:hover,
      .sec03 .swiper-button-next:hover {
        transform: scale(1.2);
        box-shadow: 0 0 8px rgba(0, 0, 0, 0.2); }
    .sec03 .swiper-button-prev::before,
    .sec03 .swiper-button-next::before {
      content: "";
      border-radius: 50%;
      -webkit-box-shadow: var(--box-shadow);
      box-shadow: var(--box-shadow);
      font-family: "Urbanist", sans-serif; }
    .sec03 .swiper-button-prev::after,
    .sec03 .swiper-button-next::after {
      background: url("../img/common/icon_next_02.png") center center no-repeat;
      background-size: cover;
      width: 44px;
      height: 44px;
      content: ""; }
    .sec03 .swiper-button-prev::after {
      background: url("../img/common/icon_prev_02.png") center center no-repeat;
      background-size: cover;
      margin-left: 0.1rem; }
    .sec03 .swiper-button-disabled {
      pointer-events: none;
      opacity: 0; }
    .sec03 .swiper-button-prev {
      left: 5vw !important;
      top: calc(50% - 10px); }
    .sec03 .swiper-button-next {
      right: 5vw !important;
      top: calc(50% - 10px); }

  .modaal-wrapper .staffModal {
    border-radius: 20px;
    padding: 50px 5vw 12px; }
    .modaal-wrapper .staffModal .img {
      text-align: center; }
      .modaal-wrapper .staffModal .img img {
        width: 110px; }
    .modaal-wrapper .staffModal .data {
      padding: 28px 0;
      width: 100%; }
      .modaal-wrapper .staffModal .data .head02 {
        margin-bottom: 20px;
        padding-bottom: 12px; }

  .modaal-container {
    border-radius: 20px !important; }

  .inline_close {
    font-size: 14px;
    top: 16px;
    right: 16px;
    width: 40px;
    height: 40px; } }
.sec04 {
  margin-bottom: 0;
  padding-bottom: 140px; }
  .sec04 .sec04Flex {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1280px;
    min-height: 550px;
    padding: 0 0 0 20px;
    position: relative; }
  .sec04 .sec04L {
    width: 32%; }
    .sec04 .sec04L h2 {
      margin-bottom: 70px;
      width: 100%; }
      .sec04 .sec04L h2 .img {
        display: block;
        margin-bottom: 30px;
        position: relative;
        left: -20px;
        width: 83px; }
      .sec04 .sec04L h2 .fukidashi {
        filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
        display: block;
        width: 298px;
        position: absolute;
        top: 0;
        left: 80px; }
      .sec04 .sec04L h2 .ja {
        color: #00A0E9;
        display: block;
        font-size: 55px;
        font-size: 5.5rem;
        line-height: 2;
        line-height: 1.8;
        font-weight: bold;
        letter-spacing: -0.03em;
        line-height: 1;
        position: relative;
        z-index: 2;
        background: linear-gradient(90deg, #06AEFC 15%, #000000 60%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
        @media only screen and (max-width: 960px) {
          .sec04 .sec04L h2 .ja {
            font-size: 47px;
            font-size: 4.7rem; } }
        .sec04 .sec04L h2 .ja .mini {
          display: block;
          font-family: "Urbanist", sans-serif;
          font-size: 38px;
          font-size: 3.8rem;
          line-height: 2;
          line-height: 1.8;
          line-height: 1;
          letter-spacing: 0.06em;
          margin-bottom: 12px; }
          @media only screen and (max-width: 960px) {
            .sec04 .sec04L h2 .ja .mini {
              font-size: 32px;
              font-size: 3.2rem; } }
      .sec04 .sec04L h2 .en {
        color: rgba(255, 255, 255, 0.9);
        font-family: "Urbanist", sans-serif;
        font-size: 80px;
        font-weight: 600;
        letter-spacing: -0.02em;
        line-height: 1;
        white-space: nowrap;
        position: absolute;
        top: -70px;
        right: 0; }
    .sec04 .sec04L .cmnBtn {
      justify-content: flex-start;
      text-align: left; }
      .sec04 .sec04L .cmnBtn li {
        margin: 0; }
  .sec04 .sec04R {
    width: 63%; }
    .sec04 .sec04R .cultureList {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      position: relative; }
      .sec04 .sec04R .cultureList li {
        border: 5px solid #FFF;
        border-radius: 12px;
        display: flex;
        margin-bottom: 56px;
        overflow: hidden;
        width: 47.5%; }
        .sec04 .sec04R .cultureList li:nth-child(2) {
          transform: translateY(32px); }
        .sec04 .sec04R .cultureList li a {
          background-position: center;
          background-repeat: no-repeat;
          background-size: cover;
          display: flex;
          align-content: space-between;
          flex-wrap: wrap;
          min-height: 490px;
          padding: 16px 16px 32px;
          position: relative;
          text-decoration: none;
          width: 100%; }
          .sec04 .sec04R .cultureList li a .tag {
            background: #FFF;
            border-radius: 40px;
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
            color: #00A0E9;
            display: inline-block;
            font-size: 18px;
            font-size: 1.8rem;
            line-height: 2;
            font-weight: 500;
            letter-spacing: 0.02em;
            line-height: 1.4;
            padding: 8px 24px;
            position: relative;
            z-index: 2; }
            @media only screen and (max-width: 960px) {
              .sec04 .sec04R .cultureList li a .tag {
                font-size: 15px;
                font-size: 1.5rem; } }
          .sec04 .sec04R .cultureList li a .data {
            position: relative;
            z-index: 2;
            width: 100%; }
            .sec04 .sec04R .cultureList li a .data .title {
              color: #004262;
              font-size: 20px;
              font-size: 2rem;
              line-height: 2;
              font-weight: 500;
              letter-spacing: -0.06em;
              box-decoration-break: clone;
              -webkit-box-decoration-break: clone;
              display: inline;
              padding: .02em .12em;
              line-height: 1.6;
              background-color: #FFF;
              transition: 0.2s;
              position: relative;
              left: -4px; }
              @media only screen and (max-width: 960px) {
                .sec04 .sec04R .cultureList li a .data .title {
                  font-size: 17px;
                  font-size: 1.7rem; } }
            .sec04 .sec04R .cultureList li a .data .name {
              color: #FFF;
              display: block;
              font-size: 18px;
              font-size: 1.8rem;
              line-height: 2;
              line-height: 1.4;
              font-weight: 500;
              letter-spacing: -0.02em;
              margin-top: 28px;
              text-align: right; }
              @media only screen and (max-width: 960px) {
                .sec04 .sec04R .cultureList li a .data .name {
                  font-size: 15px;
                  font-size: 1.5rem; } }
              .sec04 .sec04R .cultureList li a .data .name .part {
                display: block;
                font-size: 14px;
                font-size: 1.4rem;
                line-height: 2;
                line-height: 1.4; }
                @media only screen and (max-width: 960px) {
                  .sec04 .sec04R .cultureList li a .data .name .part {
                    font-size: 12px;
                    font-size: 1.2rem; } }
          .sec04 .sec04R .cultureList li a:after {
            background: #FFF;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0) 45%, rgba(71, 171, 252, 0.5) 80%);
            content: '';
            display: block;
            height: 100%;
            width: 100%;
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            transition: 0.2s; }
          .sec04 .sec04R .cultureList li a:before {
            background: #FFF;
            background: linear-gradient(180deg, rgba(71, 171, 252, 0.1) 45%, rgba(71, 171, 252, 0.5) 80%);
            content: '';
            display: block;
            height: 100%;
            width: 100%;
            position: absolute;
            top: 0;
            left: 0;
            bottom: -100%;
            right: 0;
            transition: 0.5s;
            opacity: 0; }
          .sec04 .sec04R .cultureList li a:hover .data .title {
            color: #00A0E9; }
          .sec04 .sec04R .cultureList li a:hover:before {
            opacity: 1;
            bottom: 0; }

/* Animation */
.sec04 {
  transform: translate(0px, 0) !important; }
  .sec04 .sec04L h2 .en,
  .sec04 .sec04L h2 .ja,
  .sec04 .sec04L h2 .img,
  .sec04 .sec04L h2 .fukidashi {
    opacity: 0; }
  .sec04 .sec04L h2 .en,
  .sec04 .sec04L h2 .ja {
    display: block;
    transform: translate(0px, 30px); }
  .sec04 .sec04L .slideBox,
  .sec04 .sec04L .cmnBtn {
    opacity: 0; }
  .sec04 .sec04R {
    opacity: 0;
    transform: translate(0px, 30px); }
  .sec04.is-active {
    animation: fadeInK 0s ease 0s 1 forwards; }
    .sec04.is-active .sec04L h2 .img {
      animation: fadeInK 0.4s ease .1s 1 forwards; }
    .sec04.is-active .sec04L h2 .fukidashi {
      animation: bounce 1s ease 0.3s 1 forwards; }
    .sec04.is-active .sec04L h2 .ja {
      animation: fadeInUpK 0.6s ease 0.9s 1 forwards; }
    .sec04.is-active .sec04L h2 .en {
      animation: fadeInUpK 0.6s ease 0.9s 1 forwards; }
    .sec04.is-active .sec04L .cmnBtn {
      animation: fadeInUpK 0.6s ease 1.1s 1 forwards; }
    .sec04.is-active .sec04R {
      animation: fadeInUpK 0.6s ease 1.1s 1 forwards; }

@media only screen and (max-width: 960px) {
  .sec04 {
    padding: 0 5vw 180px;
    position: relative; }
    .sec04 .sec04Flex {
      display: block;
      margin: 0;
      max-width: 100%;
      min-height: auto;
      min-height: none;
      padding: 0;
      position: static; }
    .sec04 .sec04L {
      width: 100%; }
      .sec04 .sec04L h2 {
        margin-bottom: 40px;
        text-align: center;
        width: 100%; }
        .sec04 .sec04L h2 .img {
          display: block;
          margin-bottom: 30px;
          position: relative;
          left: calc(50% - 130px);
          width: 60px;
          z-index: 2; }
        .sec04 .sec04L h2 .fukidashi {
          display: block;
          width: 200px;
          position: absolute;
          top: 0;
          left: calc(50% - 74px);
          z-index: 2; }
        .sec04 .sec04L h2 .ja {
          font-size: 38px; }
          .sec04 .sec04L h2 .ja .mini {
            font-size: 26px;
            margin-bottom: 8px; }
        .sec04 .sec04L h2 .en {
          font-size: 50px;
          position: absolute;
          top: 50px;
          right: auto;
          left: 0;
          width: 100%;
          text-align: center; }
      .sec04 .sec04L .cmnBtn.whiteBtn {
        position: absolute;
        bottom: 80px;
        left: 0;
        padding: 0 10vw;
        width: 100%; }
        .sec04 .sec04L .cmnBtn.whiteBtn li {
          margin: 0; }
          .sec04 .sec04L .cmnBtn.whiteBtn li a {
            min-width: 300px;
            padding: 12px 40px 12px 30px; }
    .sec04 .sec04R {
      width: 100%; }
      .sec04 .sec04R .cultureList {
        display: block; }
        .sec04 .sec04R .cultureList li {
          border: 5px solid #FFF;
          border-radius: 12px;
          display: flex;
          margin-bottom: 16px;
          overflow: hidden;
          width: 90%; }
          .sec04 .sec04R .cultureList li:nth-child(2) {
            transform: translate(10%, 0); }
          .sec04 .sec04R .cultureList li a {
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            display: flex;
            align-content: space-between;
            flex-wrap: wrap;
            min-height: 360px;
            padding: 16px 16px;
            position: relative;
            text-decoration: none;
            width: 100%; }
            .sec04 .sec04R .cultureList li a .tag {
              background: #FFF;
              border-radius: 40px;
              box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
              color: #00A0E9;
              display: inline-block;
              font-size: 18px;
              font-size: 1.8rem;
              line-height: 2;
              font-weight: 500;
              letter-spacing: 0.02em;
              line-height: 1.4;
              padding: 8px 24px;
              position: relative;
              z-index: 2; } }
            @media only screen and (max-width: 960px) and (max-width: 960px) {
              .sec04 .sec04R .cultureList li a .tag {
                font-size: 15px;
                font-size: 1.5rem; } }
@media only screen and (max-width: 960px) {
            .sec04 .sec04R .cultureList li a .data {
              position: relative;
              z-index: 2;
              width: 100%; }
              .sec04 .sec04R .cultureList li a .data .title {
                color: #004262;
                font-size: 20px;
                font-size: 2rem;
                line-height: 2;
                font-weight: 500;
                letter-spacing: -0.06em;
                box-decoration-break: clone;
                -webkit-box-decoration-break: clone;
                display: inline;
                padding: .12em;
                line-height: 1.8;
                background-color: #FFF;
                transition: 0.2s;
                position: relative;
                left: -4px; } }
              @media only screen and (max-width: 960px) and (max-width: 960px) {
                .sec04 .sec04R .cultureList li a .data .title {
                  font-size: 17px;
                  font-size: 1.7rem; } }
@media only screen and (max-width: 960px) {
              .sec04 .sec04R .cultureList li a .data .name {
                color: #FFF;
                display: block;
                font-size: 18px;
                font-size: 1.8rem;
                line-height: 2;
                line-height: 1.4;
                font-weight: 500;
                letter-spacing: -0.02em;
                margin-top: 28px;
                text-align: right; } }
              @media only screen and (max-width: 960px) and (max-width: 960px) {
                .sec04 .sec04R .cultureList li a .data .name {
                  font-size: 15px;
                  font-size: 1.5rem; } }
@media only screen and (max-width: 960px) {
                .sec04 .sec04R .cultureList li a .data .name .part {
                  display: block;
                  font-size: 14px;
                  font-size: 1.4rem;
                  line-height: 2;
                  line-height: 1.4; } }
                @media only screen and (max-width: 960px) and (max-width: 960px) {
                  .sec04 .sec04R .cultureList li a .data .name .part {
                    font-size: 12px;
                    font-size: 1.2rem; } }
@media only screen and (max-width: 960px) {
            .sec04 .sec04R .cultureList li a:after {
              background: #FFF;
              background: linear-gradient(180deg, rgba(255, 255, 255, 0) 45%, rgba(71, 171, 252, 0.5) 80%);
              content: '';
              display: block;
              height: 100%;
              width: 100%;
              position: absolute;
              top: 0;
              left: 0;
              bottom: 0;
              right: 0;
              transition: 0.2s; }
            .sec04 .sec04R .cultureList li a:before {
              background: #FFF;
              background: linear-gradient(180deg, rgba(71, 171, 252, 0.1) 45%, rgba(71, 171, 252, 0.5) 80%);
              content: '';
              display: block;
              height: 100%;
              width: 100%;
              position: absolute;
              top: 0;
              left: 0;
              bottom: -100%;
              right: 0;
              transition: 0.5s;
              opacity: 0; }
            .sec04 .sec04R .cultureList li a:hover .data .title {
              color: #00A0E9; }
            .sec04 .sec04R .cultureList li a:hover:before {
              opacity: 1;
              bottom: 0; } }
.sec05 {
  background: url("/assets/img/top/sec03_bg.webp") center top 90px no-repeat;
  background-size: 1115px auto;
  margin: 0;
  padding-bottom: 140px; }
  .sec05 .sec05Inr {
    background: #FFF;
    margin: 0 auto;
    max-width: 1240px;
    padding: 0 0 90px; }
  .sec05 h2 {
    margin-bottom: 60px;
    padding-top: 70px;
    text-align: center;
    width: 100%; }
    .sec05 h2 .imgCenter {
      display: flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: -44px;
      left: calc(50% - 180px);
      width: 360px; }
    .sec05 h2 .img {
      display: block;
      width: 62px; }
    .sec05 h2 .fukidashi {
      filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
      display: block;
      padding-top: 20px;
      width: 296px; }
    .sec05 h2 .ja {
      color: #00A0E9;
      display: block;
      font-size: 55px;
      font-size: 5.5rem;
      line-height: 2;
      line-height: 1.8;
      font-weight: bold;
      letter-spacing: -0.01em;
      line-height: 1;
      position: relative;
      z-index: 2;
      background: linear-gradient(90deg, #06AEFC 25%, #000000 80%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent; }
      @media only screen and (max-width: 960px) {
        .sec05 h2 .ja {
          font-size: 47px;
          font-size: 4.7rem; } }
      .sec05 h2 .ja .mini {
        font-size: 38px;
        font-size: 3.8rem;
        line-height: 2;
        line-height: 1.8;
        font-weight: bold;
        line-height: 1;
        margin-right: 8px; }
        @media only screen and (max-width: 960px) {
          .sec05 h2 .ja .mini {
            font-size: 32px;
            font-size: 3.2rem; } }
  .sec05 .slideBox {
    position: relative; }
  .sec05 .swiper {
    position: relative;
    overflow-y: visible !important; }
    .sec05 .swiper .swiper-slide {
      box-sizing: border-box;
      padding: 0;
      position: relative;
      width: 798px;
      border: 5px solid #FFF;
      display: flex;
      margin-bottom: 56px;
      overflow: hidden;
      transition: 0.5s; }
      .sec05 .swiper .swiper-slide:not(.swiper-slide-active) {
        transform: scale(0.8);
        opacity: 0.4; }
      .sec05 .swiper .swiper-slide a {
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        display: flex;
        align-content: space-between;
        flex-wrap: wrap;
        min-height: 460px;
        padding: 24px 24px 36px;
        position: relative;
        text-decoration: none;
        width: 100%; }
        .sec05 .swiper .swiper-slide a .tag {
          background: #FFF;
          border-radius: 40px;
          color: #00A0E9;
          display: inline-block;
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 2;
          font-weight: 400;
          letter-spacing: 0.02em;
          line-height: 1.4;
          padding: 6px 16px;
          position: relative;
          z-index: 2; }
          @media only screen and (max-width: 960px) {
            .sec05 .swiper .swiper-slide a .tag {
              font-size: 10px;
              font-size: 1rem; } }
        .sec05 .swiper .swiper-slide a .data {
          position: relative;
          z-index: 2;
          width: 100%;
          transform: translateX(-24px); }
          .sec05 .swiper .swiper-slide a .data .date {
            color: #FFF;
            display: block;
            font-family: "Urbanist", sans-serif;
            font-size: 13px;
            font-size: 1.3rem;
            line-height: 2;
            font-weight: 600;
            letter-spacing: 0.06em;
            line-height: 1.4;
            margin-bottom: 8px;
            padding-left: 24px; }
            @media only screen and (max-width: 960px) {
              .sec05 .swiper .swiper-slide a .data .date {
                font-size: 10px;
                font-size: 1rem; } }
          .sec05 .swiper .swiper-slide a .data .title {
            color: #004262;
            font-size: 28px;
            font-size: 2.8rem;
            line-height: 2;
            line-height: 1.8;
            font-weight: 600;
            letter-spacing: -0.06em;
            box-decoration-break: clone;
            -webkit-box-decoration-break: clone;
            display: inline;
            padding: .1em;
            line-height: 1.8;
            background-color: #FFF;
            transition: 0.2s; }
            @media only screen and (max-width: 960px) {
              .sec05 .swiper .swiper-slide a .data .title {
                font-size: 24px;
                font-size: 2.4rem; } }
        .sec05 .swiper .swiper-slide a:after {
          background: #FFF;
          background: linear-gradient(180deg, rgba(255, 255, 255, 0) 45%, rgba(71, 171, 252, 0.5) 80%);
          content: '';
          display: block;
          height: 100%;
          width: 100%;
          position: absolute;
          top: 0;
          left: 0;
          bottom: 0;
          right: 0;
          transition: 0.2s; }
        .sec05 .swiper .swiper-slide a:before {
          background: #FFF;
          background: linear-gradient(180deg, rgba(71, 171, 252, 0.1) 45%, rgba(71, 171, 252, 0.5) 80%);
          content: '';
          display: block;
          height: 100%;
          width: 100%;
          position: absolute;
          top: 0;
          left: 0;
          bottom: -100%;
          right: 0;
          transition: 0.5s;
          opacity: 0; }
        .sec05 .swiper .swiper-slide a:hover .data .title {
          color: #00A0E9; }
        .sec05 .swiper .swiper-slide a:hover:before {
          opacity: 1;
          bottom: 0; }
      @media only screen and (min-width: 960px) {
        .sec05 .swiper .swiper-slide a img {
          transition: 0.2s; }
        .sec05 .swiper .swiper-slide a:hover img {
          opacity: 0.7; } }
  .sec05 .swiper-button-prev,
  .sec05 .swiper-button-next {
    background: none;
    border-radius: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    display: flex;
    min-width: 90px;
    min-height: 90px;
    width: 90px;
    height: 90px;
    cursor: pointer;
    z-index: 2;
    transition: 0.2s;
    opacity: 1; }
    .sec05 .swiper-button-prev:hover,
    .sec05 .swiper-button-next:hover {
      transform: scale(1.2);
      box-shadow: 0 0 8px rgba(0, 0, 0, 0.2); }
  .sec05 .swiper-button-prev::before,
  .sec05 .swiper-button-next::before {
    content: "";
    border-radius: 50%;
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    font-family: "Urbanist", sans-serif; }
  .sec05 .swiper-button-prev::after,
  .sec05 .swiper-button-next::after {
    background: url("../img/common/icon_next_02.png") center center no-repeat;
    background-size: cover;
    width: 90px;
    height: 90px;
    content: ""; }
  .sec05 .swiper-button-prev::after {
    background: url("../img/common/icon_prev_02.png") center center no-repeat;
    background-size: cover;
    margin-left: 0.1rem; }
  .sec05 .swiper-button-disabled {
    pointer-events: none;
    opacity: 0; }
  .sec05 .swiper-button-prev {
    left: calc(50% - 520px) !important;
    top: calc(50% - 30px); }
  .sec05 .swiper-button-next {
    right: calc(50% - 520px) !important;
    top: calc(50% - 30px); }
  .sec05 .swiper-button-next.swiper-button-disabled,
  .sec05 .swiper-button-prev.swiper-button-disabled {
    opacity: .15; }
  .sec05 .swiper-horizontal > .swiper-pagination-bullets,
  .sec05 .swiper-pagination-bullets.swiper-pagination-horizontal,
  .sec05 .swiper-pagination-custom,
  .sec05 .swiper-pagination-fraction {
    bottom: -30px !important; }

/* Animation */
.sec05 h2 .ja,
.sec05 h2 .fukidashi {
  opacity: 0; }
.sec05 h2 .ja {
  display: block;
  transform: translate(0px, 30px); }
.sec05 .slideBox,
.sec05 .cmnBtn {
  opacity: 0; }
.sec05.is-active h2 .fukidashi {
  animation: bounce 1s ease 0.6s 1 forwards; }
.sec05.is-active h2 .ja {
  animation: fadeInUpK 0.6s ease 1.2s 1 forwards; }
.sec05.is-active .slideBox {
  animation: fadeInUpK 0.6s ease 1.3s 1 forwards; }
.sec05.is-active .cmnBtn {
  animation: fadeInUpK 0.6s ease 1.5s 1 forwards; }

@media only screen and (max-width: 960px) {
  .sec05 {
    background: url("/assets/img/top/sec03_bg.webp") center top 90px no-repeat;
    background-size: 100% auto;
    margin: 0;
    padding-bottom: 40px; }
    .sec05 .sec05Inr {
      margin: 0;
      max-width: 100%;
      padding: 0 5vw 60px; }
    .sec05 h2 {
      margin-bottom: 20px;
      padding-top: 40px;
      width: 100%; }
      .sec05 h2 .imgCenter {
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        top: -44px;
        left: 0;
        width: 100%; }
      .sec05 h2 .img {
        display: block;
        width: 50px; }
      .sec05 h2 .fukidashi {
        filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
        display: block;
        padding-top: 20px;
        width: 220px; }
      .sec05 h2 .ja {
        font-size: 38px;
        margin-top: 8px; }
        .sec05 h2 .ja .mini {
          font-size: 26px;
          margin-right: 4px; }
    .sec05 .cmnBtn {
      padding: 0 5vw;
      width: 100%; }
      .sec05 .cmnBtn li {
        margin: 0; }
        .sec05 .cmnBtn li a {
          min-width: 300px;
          padding: 12px 40px 12px 30px; }
    .sec05 .swiper .swiper-slide {
      width: 100%;
      margin-bottom: 36px;
      transition: 0; }
      .sec05 .swiper .swiper-slide a {
        min-height: 300px;
        padding: 16px 5vw 28px;
        width: 100%; }
        .sec05 .swiper .swiper-slide a .tag {
          font-size: 10px; }
        .sec05 .swiper .swiper-slide a .data {
          position: relative;
          z-index: 2;
          width: 100%;
          transform: translateX(-5vw); }
          .sec05 .swiper .swiper-slide a .data .date {
            font-size: 11px; }
          .sec05 .swiper .swiper-slide a .data .title {
            font-size: 17px;
            padding: 0.1em 0.5em; }
    .sec05 .swiper-button-prev,
    .sec05 .swiper-button-next {
      min-width: 45px;
      min-height: 45px;
      width: 45px;
      height: 45px; }
    .sec05 .swiper-button-prev::after,
    .sec05 .swiper-button-next::after {
      width: 45px;
      height: 45px; }
    .sec05 .swiper-button-prev::after {
      margin-left: 0.1rem; }
    .sec05 .swiper-button-prev {
      left: -2.5vw !important;
      top: auto;
      bottom: 12px; }
    .sec05 .swiper-button-next {
      right: -2.5vw !important;
      top: auto;
      bottom: 12px; }
    .sec05 .swiper-button-next.swiper-button-disabled,
    .sec05 .swiper-button-prev.swiper-button-disabled {
      opacity: .15; }
    .sec05 .swiper-horizontal > .swiper-pagination-bullets,
    .sec05 .swiper-pagination-bullets.swiper-pagination-horizontal,
    .sec05 .swiper-pagination-custom,
    .sec05 .swiper-pagination-fraction {
      bottom: -30px !important; } }
@media only screen and (max-width: 430px) {
  .sec05 .swiper .swiper-slide a {
    min-height: 250px; } }
@media only screen and (max-width: 380px) {
  .sec05 .swiper .swiper-slide a {
    min-height: 230px; }
    .sec05 .swiper .swiper-slide a .data {
      transform: translateX(-5vw); } }
.bg03 {
  background: url("/assets/img/top/bg03.webp") center top -40px no-repeat #F5FCFF;
  background-size: 100% auto;
  padding: 140px 60px 0; }

.sec06 {
  margin-bottom: 0;
  padding-bottom: 140px; }
  .sec06 .sec06Flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    max-width: 1320px;
    min-height: 550px;
    position: relative;
    padding: 0 0 0 20px; }
    .sec06 .sec06Flex.reverse {
      flex-direction: row-reverse; }
  .sec06 .sec06Data {
    display: flex;
    justify-content: center;
    padding-top: 40px;
    width: 50%; }
    .sec06 .sec06Data h2 {
      margin-bottom: 60px;
      width: 100%;
      /*
      .img {
      	display: block;
      	margin-bottom: 24px;
      	position: relative;
      	left: -30px;
      	width: 409px;
      }
      */ }
      .sec06 .sec06Data h2 .en {
        color: #C9EEFF;
        font-family: "Urbanist", sans-serif;
        font-size: 80px;
        font-weight: 600;
        letter-spacing: -0.02em;
        line-height: 0.85;
        white-space: nowrap;
        position: absolute;
        top: 40px;
        opacity: 0.7;
        transform: translateX(-120px); }
      .sec06 .sec06Data h2 .imgCenter1 {
        display: flex;
        align-items: center;
        margin-bottom: 30px; }
      .sec06 .sec06Data h2 .img1 {
        display: block;
        width: 124px; }
      .sec06 .sec06Data h2 .fukidashi1 {
        filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
        display: block;
        width: 285px; }
      .sec06 .sec06Data h2 .imgCenter2 {
        display: flex;
        align-items: center;
        margin-bottom: 30px; }
      .sec06 .sec06Data h2 .img2 {
        display: block;
        width: 88px; }
      .sec06 .sec06Data h2 .fukidashi2 {
        filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
        display: block;
        width: 360px; }
      .sec06 .sec06Data h2 .ja {
        color: #00A0E9;
        display: block;
        font-size: 50px;
        font-size: 5rem;
        line-height: 2;
        line-height: 1.8;
        font-weight: bold;
        letter-spacing: -0.03em;
        line-height: 1;
        position: relative;
        z-index: 2; }
        @media only screen and (max-width: 960px) {
          .sec06 .sec06Data h2 .ja {
            font-size: 43px;
            font-size: 4.3rem; } }
        .sec06 .sec06Data h2 .ja .mini {
          display: block;
          font-family: "Urbanist", sans-serif;
          font-size: 36px;
          font-size: 3.6rem;
          line-height: 2;
          line-height: 1.8;
          line-height: 1;
          letter-spacing: 0.06em;
          margin-bottom: 8px; }
          @media only screen and (max-width: 960px) {
            .sec06 .sec06Data h2 .ja .mini {
              font-size: 31px;
              font-size: 3.1rem; } }
        .sec06 .sec06Data h2 .ja.f42 {
          font-size: 42px;
          font-size: 4.2rem;
          line-height: 2;
          line-height: 1.8;
          line-height: 1.3; }
          @media only screen and (max-width: 960px) {
            .sec06 .sec06Data h2 .ja.f42 {
              font-size: 36px;
              font-size: 3.6rem; } }
    .sec06 .sec06Data .cmnBtn {
      justify-content: flex-start;
      text-align: left; }
      .sec06 .sec06Data .cmnBtn li {
        margin: 0; }
  .sec06 .sec06Img {
    width: 43%; }
    .sec06 .sec06Img .cultureList {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      position: relative; }
      .sec06 .sec06Img .cultureList li {
        border: 5px solid #FFF;
        border-radius: 12px;
        display: flex;
        margin-bottom: 56px;
        overflow: hidden;
        width: 47.5%; }
        .sec06 .sec06Img .cultureList li:nth-child(2) {
          transform: translateY(32px); }
        .sec06 .sec06Img .cultureList li a {
          background-position: center;
          background-repeat: no-repeat;
          background-size: cover;
          display: flex;
          align-content: space-between;
          flex-wrap: wrap;
          min-height: 490px;
          padding: 16px 16px 32px;
          position: relative;
          text-decoration: none;
          width: 100%; }
          .sec06 .sec06Img .cultureList li a .tag {
            background: #FFF;
            border-radius: 40px;
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
            color: #00A0E9;
            display: inline-block;
            font-size: 18px;
            font-size: 1.8rem;
            line-height: 2;
            font-weight: 500;
            letter-spacing: 0.02em;
            line-height: 1.4;
            padding: 8px 24px;
            position: relative;
            z-index: 2; }
            @media only screen and (max-width: 960px) {
              .sec06 .sec06Img .cultureList li a .tag {
                font-size: 15px;
                font-size: 1.5rem; } }
          .sec06 .sec06Img .cultureList li a .data {
            position: relative;
            z-index: 2;
            width: 100%; }
            .sec06 .sec06Img .cultureList li a .data .title {
              color: #004262;
              font-size: 20px;
              font-size: 2rem;
              line-height: 2;
              font-weight: 500;
              letter-spacing: -0.06em;
              box-decoration-break: clone;
              -webkit-box-decoration-break: clone;
              display: inline;
              padding: .12em;
              line-height: 1.8;
              background-color: #FFF;
              transition: 0.2s;
              position: relative;
              left: -16px; }
              @media only screen and (max-width: 960px) {
                .sec06 .sec06Img .cultureList li a .data .title {
                  font-size: 17px;
                  font-size: 1.7rem; } }
            .sec06 .sec06Img .cultureList li a .data .name {
              color: #FFF;
              display: block;
              font-size: 18px;
              font-size: 1.8rem;
              line-height: 2;
              line-height: 1.4;
              font-weight: 500;
              letter-spacing: -0.02em;
              margin-top: 28px;
              text-align: right; }
              @media only screen and (max-width: 960px) {
                .sec06 .sec06Img .cultureList li a .data .name {
                  font-size: 15px;
                  font-size: 1.5rem; } }
              .sec06 .sec06Img .cultureList li a .data .name .part {
                display: block;
                font-size: 14px;
                font-size: 1.4rem;
                line-height: 2;
                line-height: 1.4; }
                @media only screen and (max-width: 960px) {
                  .sec06 .sec06Img .cultureList li a .data .name .part {
                    font-size: 12px;
                    font-size: 1.2rem; } }
          .sec06 .sec06Img .cultureList li a:after {
            background: #FFF;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0) 45%, rgba(71, 171, 252, 0.5) 80%);
            content: '';
            display: block;
            height: 100%;
            width: 100%;
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            transition: 0.2s; }
          .sec06 .sec06Img .cultureList li a:before {
            background: #FFF;
            background: linear-gradient(180deg, rgba(71, 171, 252, 0.1) 45%, rgba(71, 171, 252, 0.5) 80%);
            content: '';
            display: block;
            height: 100%;
            width: 100%;
            position: absolute;
            top: 0;
            left: 0;
            bottom: -100%;
            right: 0;
            transition: 0.5s;
            opacity: 0; }
          .sec06 .sec06Img .cultureList li a:hover .data .title {
            color: #00A0E9; }
          .sec06 .sec06Img .cultureList li a:hover:before {
            opacity: 1;
            bottom: 0; }

/* Animation */
.sec06 h2 .ja,
.sec06 h2 .img1,
.sec06 h2 .fukidashi1,
.sec06 h2 .img2,
.sec06 h2 .fukidashi2 {
  opacity: 0; }
.sec06 h2 .ja {
  display: block;
  transform: translate(0px, 30px); }
.sec06 .cmnBtn {
  opacity: 0; }
.sec06.is-active {
  animation: fadeInUpK 0.6s ease 0.2s 1 forwards; }
  .sec06.is-active h2 .img1,
  .sec06.is-active h2 .img2 {
    animation: fadeInUpK 0.6s ease 0.3s 1 forwards; }
  .sec06.is-active h2 .fukidashi1,
  .sec06.is-active h2 .fukidashi2 {
    animation: bounce 1s ease 0.3s 1 forwards; }
  .sec06.is-active h2 .ja {
    animation: fadeInUpK 0.6s ease 1s 1 forwards; }
  .sec06.is-active .cmnBtn {
    animation: fadeInUpK 0.6s ease 1.2s 1 forwards; }

@media only screen and (max-width: 960px) {
  .bg03 {
    background: url("/assets/img/top/bg03.webp") center top -40px no-repeat #F5FCFF;
    background-size: 100% auto;
    padding: 40px 5vw 10px; }

  .sec06 {
    margin-bottom: 0;
    padding-bottom: 80px; }
    .sec06 .sec06Flex {
      display: block;
      margin: 0;
      max-width: 100%;
      min-height: auto;
      min-height: none;
      padding: 0; }
    .sec06 .sec06Data {
      display: block;
      padding: 0;
      width: 100%; }
      .sec06 .sec06Data h2 {
        transform: translate(0, -20px);
        margin-bottom: 4px;
        width: 100%; }
        .sec06 .sec06Data h2 .en {
          font-size: 50px;
          top: 50px;
          opacity: 0.7;
          transform: translateX(-10px); }
        .sec06 .sec06Data h2 .imgCenter1 {
          display: flex;
          align-items: center;
          margin-bottom: 30px; }
        .sec06 .sec06Data h2 .img1 {
          display: block;
          width: 100px; }
        .sec06 .sec06Data h2 .fukidashi1 {
          filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
          display: block;
          width: 200px; }
        .sec06 .sec06Data h2 .imgCenter2 {
          display: flex;
          align-items: center;
          margin-bottom: 30px; }
        .sec06 .sec06Data h2 .img2 {
          display: block;
          width: 60px; }
        .sec06 .sec06Data h2 .fukidashi2 {
          filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
          display: block;
          width: 240px; }
        .sec06 .sec06Data h2 .ja {
          font-size: 38px; }
          .sec06 .sec06Data h2 .ja .mini {
            font-size: 26px; }
          .sec06 .sec06Data h2 .ja.f42 {
            font-size: 38px; }
      .sec06 .sec06Data .cmnBtn {
        padding: 0 5vw;
        width: 100%; }
        .sec06 .sec06Data .cmnBtn li {
          margin: 0; }
          .sec06 .sec06Data .cmnBtn li a {
            min-width: 300px;
            padding: 12px 40px 12px 30px; }
    .sec06 .sec06Img {
      width: 90%; }
      .sec06 .sec06Img .cultureList {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        position: relative; }
        .sec06 .sec06Img .cultureList li {
          border: 5px solid #FFF;
          border-radius: 12px;
          display: flex;
          margin-bottom: 56px;
          overflow: hidden;
          width: 47.5%; }
          .sec06 .sec06Img .cultureList li:nth-child(2) {
            transform: translateY(32px); }
          .sec06 .sec06Img .cultureList li a {
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            display: flex;
            align-content: space-between;
            flex-wrap: wrap;
            min-height: 490px;
            padding: 16px 16px 32px;
            position: relative;
            text-decoration: none;
            width: 100%; }
            .sec06 .sec06Img .cultureList li a .tag {
              background: #FFF;
              border-radius: 40px;
              box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
              color: #00A0E9;
              display: inline-block;
              font-size: 18px;
              font-size: 1.8rem;
              line-height: 2;
              font-weight: 500;
              letter-spacing: 0.02em;
              line-height: 1.4;
              padding: 8px 24px;
              position: relative;
              z-index: 2; } }
            @media only screen and (max-width: 960px) and (max-width: 960px) {
              .sec06 .sec06Img .cultureList li a .tag {
                font-size: 15px;
                font-size: 1.5rem; } }
@media only screen and (max-width: 960px) {
            .sec06 .sec06Img .cultureList li a .data {
              position: relative;
              z-index: 2;
              width: 100%; }
              .sec06 .sec06Img .cultureList li a .data .title {
                color: #004262;
                font-size: 20px;
                font-size: 2rem;
                line-height: 2;
                font-weight: 500;
                letter-spacing: -0.06em;
                box-decoration-break: clone;
                -webkit-box-decoration-break: clone;
                display: inline;
                padding: .12em;
                line-height: 1.8;
                background-color: #FFF;
                transition: 0.2s;
                position: relative;
                left: -16px; } }
              @media only screen and (max-width: 960px) and (max-width: 960px) {
                .sec06 .sec06Img .cultureList li a .data .title {
                  font-size: 17px;
                  font-size: 1.7rem; } }
@media only screen and (max-width: 960px) {
              .sec06 .sec06Img .cultureList li a .data .name {
                color: #FFF;
                display: block;
                font-size: 18px;
                font-size: 1.8rem;
                line-height: 2;
                line-height: 1.4;
                font-weight: 500;
                letter-spacing: -0.02em;
                margin-top: 28px;
                text-align: right; } }
              @media only screen and (max-width: 960px) and (max-width: 960px) {
                .sec06 .sec06Img .cultureList li a .data .name {
                  font-size: 15px;
                  font-size: 1.5rem; } }
@media only screen and (max-width: 960px) {
                .sec06 .sec06Img .cultureList li a .data .name .part {
                  display: block;
                  font-size: 14px;
                  font-size: 1.4rem;
                  line-height: 2;
                  line-height: 1.4; } }
                @media only screen and (max-width: 960px) and (max-width: 960px) {
                  .sec06 .sec06Img .cultureList li a .data .name .part {
                    font-size: 12px;
                    font-size: 1.2rem; } }
@media only screen and (max-width: 960px) {
            .sec06 .sec06Img .cultureList li a:after {
              background: #FFF;
              background: linear-gradient(180deg, rgba(255, 255, 255, 0) 45%, rgba(71, 171, 252, 0.5) 80%);
              content: '';
              display: block;
              height: 100%;
              width: 100%;
              position: absolute;
              top: 0;
              left: 0;
              bottom: 0;
              right: 0;
              transition: 0.2s; }
            .sec06 .sec06Img .cultureList li a:before {
              background: #FFF;
              background: linear-gradient(180deg, rgba(71, 171, 252, 0.1) 45%, rgba(71, 171, 252, 0.5) 80%);
              content: '';
              display: block;
              height: 100%;
              width: 100%;
              position: absolute;
              top: 0;
              left: 0;
              bottom: -100%;
              right: 0;
              transition: 0.5s;
              opacity: 0; }
            .sec06 .sec06Img .cultureList li a:hover .data .title {
              color: #00A0E9; }
            .sec06 .sec06Img .cultureList li a:hover:before {
              opacity: 1;
              bottom: 0; }
    .sec06 .reverse .sec06Data h2 {
      padding-left: 10%;
      transform: translate(0, -36px); }
      .sec06 .reverse .sec06Data h2 .en {
        top: 60px;
        transform: translateX(-40px); }
      .sec06 .reverse .sec06Data h2 .img {
        margin-bottom: 12px;
        top: 0;
        left: -10px;
        width: 280px; }
      .sec06 .reverse .sec06Data h2 .ja {
        font-size: 38px; }
        .sec06 .reverse .sec06Data h2 .ja .mini {
          font-size: 26px; }
        .sec06 .reverse .sec06Data h2 .ja.f42 {
          font-size: 34px; }
    .sec06 .reverse .sec06Data .cmnBtn {
      padding: 0 5vw;
      width: 100%; }
      .sec06 .reverse .sec06Data .cmnBtn li {
        margin: 0; }
        .sec06 .reverse .sec06Data .cmnBtn li a {
          min-width: 300px;
          padding: 16px 40px 16px 30px; }
    .sec06 .reverse .sec06Img {
      margin-left: 10%; } }
