@charset "UTF-8";
/* 変数_ブレイクポイント*/
@media screen and (min-width: 1280px) {
  .pc {
    display: none !important; } }

@media screen and (max-width: 1400px) and (min-width: 1280px) {
  .mpc {
    display: none !important; } }

@media screen and (max-width: 1279px) and (min-width: 1025px) {
  .npc {
    display: none !important; } }

@media screen and (max-width: 1024px) and (min-width: 600px) {
  .tab {
    display: none !important; } }

@media screen and (max-width: 599px) {
  .sp {
    display: none !important; } }

/* main
-------------------------------------------------------*/
@media screen and (min-width: 1280px) {
  main {
    padding-top: 12.4rem; } }
@media screen and (max-width: 1279px) and (min-width: 1025px) {
  main {
    padding-top: 12.4rem; } }
@media screen and (max-width: 1024px) and (min-width: 600px) {
  main {
    padding-top: 12.4rem; } }
@media screen and (max-width: 599px) {
  main {
    padding-top: 6.2rem; } }

/* single-area
-------------------------------------------------------*/
.single-area {
  width: 100%; }
  @media screen and (min-width: 1280px) {
    .single-area {
      padding: 12rem 10vw 0 10vw; } }
  @media screen and (max-width: 1279px) and (min-width: 1025px) {
    .single-area {
      padding: 12rem 5vw 0 5vw; } }
  @media screen and (max-width: 1024px) and (min-width: 600px) {
    .single-area {
      padding: 10rem 5vw 0 5vw; } }
  @media screen and (max-width: 599px) {
    .single-area {
      padding: 8rem 5vw 0 5vw; } }

@media screen and (min-width: 1280px) {
  .single-area-inner {
    max-width: 1024px;
    margin: 0 auto; } }
@media screen and (max-width: 1279px) and (min-width: 1025px) {
  .single-area-inner {
    max-width: 1024px;
    margin: 0 auto; } }
@media screen and (max-width: 1024px) and (min-width: 600px) {
  .single-area-inner {
    max-width: 1024px;
    margin: 0 auto; } }
@media screen and (max-width: 599px) {
  .single-area-inner {
    max-width: 600px;
    margin: 0 auto; } }
.single-area-inner ul {
  display: flex;
  font-weight: 700;
  font-size: 1.3rem; }
  .single-area-inner ul a {
    display: flex;
    align-items: center;
    color: #FFF;
    text-decoration: none; }
    @media screen and (min-width: 1280px) {
      .single-area-inner ul a:hover {
        color: #AD010B; } }
    @media screen and (max-width: 1279px) and (min-width: 1025px) {
      .single-area-inner ul a:hover {
        color: #AD010B; } }
    .single-area-inner ul a::after {
      content: "＞";
      width: 13px;
      height: 13px;
      font-weight: 900;
      margin-left: 5px;
      margin-right: 5px; }

.single-contents-area {
  background: #DEDEDE;
  border-radius: 24px;
  color: #373737; }
  @media screen and (min-width: 1280px) {
    .single-contents-area {
      margin-top: 3rem;
      padding: 4rem; } }
  @media screen and (max-width: 1279px) and (min-width: 1025px) {
    .single-contents-area {
      margin-top: 3rem;
      padding: 4rem; } }
  @media screen and (max-width: 1024px) and (min-width: 600px) {
    .single-contents-area {
      margin-top: 3rem;
      padding: 4rem 5vw; } }
  @media screen and (max-width: 599px) {
    .single-contents-area {
      margin-top: 3rem;
      padding: 4rem 5vw;
      border-radius: 12px; } }
  .single-contents-area .date {
    display: flex;
    align-items: center;
    font-size: 1.4rem; }
    .single-contents-area .date::before {
      content: "";
      width: 24px;
      height: 1px;
      margin-right: 1.2rem;
      background: #373737; }
  .single-contents-area h1 {
    border-bottom: 1px solid #373737;
    font-weight: 900;
    line-height: 1.5; }
    @media screen and (min-width: 1280px) {
      .single-contents-area h1 {
        margin-top: 2rem;
        padding-bottom: 3rem;
        font-size: 2.7rem; } }
    @media screen and (max-width: 1279px) and (min-width: 1025px) {
      .single-contents-area h1 {
        margin-top: 2rem;
        padding-bottom: 3rem;
        font-size: 2.7rem; } }
    @media screen and (max-width: 1024px) and (min-width: 600px) {
      .single-contents-area h1 {
        margin-top: 2rem;
        padding-bottom: 3rem;
        font-size: 2.7rem; } }
    @media screen and (max-width: 599px) {
      .single-contents-area h1 {
        margin-top: 2rem;
        padding-bottom: 3rem;
        font-size: 2.7rem; } }
  .single-contents-area .post {
    font-weight: 600;
    line-height: 2; }
    @media screen and (min-width: 1280px) {
      .single-contents-area .post {
        padding-top: 3rem; } }
    @media screen and (max-width: 1279px) and (min-width: 1025px) {
      .single-contents-area .post {
        padding-top: 3rem; } }
    @media screen and (max-width: 1024px) and (min-width: 600px) {
      .single-contents-area .post {
        padding-top: 3rem; } }
    @media screen and (max-width: 599px) {
      .single-contents-area .post {
        padding-top: 3rem; } }
    .single-contents-area .post p {
      margin-top: 3rem;
      text-align: justify; }
      .single-contents-area .post p:first-child {
        margin-top: 0; }
  .single-contents-area .btn-area {
    border-top: 1px dashed #373737; }
    @media screen and (min-width: 1280px) {
      .single-contents-area .btn-area {
        margin-top: 3rem;
        padding-top: 3rem; } }
    @media screen and (max-width: 1279px) and (min-width: 1025px) {
      .single-contents-area .btn-area {
        margin-top: 3rem;
        padding-top: 3rem; } }
    @media screen and (max-width: 1024px) and (min-width: 600px) {
      .single-contents-area .btn-area {
        margin-top: 3rem;
        padding-top: 3rem; } }
    @media screen and (max-width: 599px) {
      .single-contents-area .btn-area {
        margin-top: 3rem;
        padding-top: 3rem; } }
  .single-contents-area .btn-area a {
    display: block;
    align-items: center;
    position: relative;
    overflow: hidden;
    z-index: 1;
    background: #373737;
    color: #FFF;
    text-decoration: none;
    font-weight: 700;
    text-align: center; }
    @media screen and (min-width: 1280px) {
      .single-contents-area .btn-area a {
        width: 50%;
        font-size: 1.8rem;
        padding: 2.4rem 1rem;
        margin: 0 auto;
        border-radius: 1.2rem;
        transition: .3s; } }
    @media screen and (max-width: 1279px) and (min-width: 1025px) {
      .single-contents-area .btn-area a {
        width: 50%;
        padding: 2rem 1rem;
        margin: 0 auto;
        border-radius: 1.2rem;
        transition: .3s; } }
    @media screen and (max-width: 1024px) and (min-width: 600px) {
      .single-contents-area .btn-area a {
        width: 100%;
        padding: 2rem 1rem;
        border-radius: 1.2rem; } }
    @media screen and (max-width: 599px) {
      .single-contents-area .btn-area a {
        width: 100%;
        padding: 2rem 1rem;
        border-radius: 1.2rem; } }
    .single-contents-area .btn-area a::before {
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1;
      content: "";
      width: 100%;
      height: 100%;
      background: #ad010b;
      border-radius: 1.2rem; }
      @media screen and (min-width: 1280px) {
        .single-contents-area .btn-area a::before {
          transform-origin: 100% 50%;
          transform: scaleX(0);
          transition: transform ease .3s; } }
      @media screen and (max-width: 1279px) and (min-width: 1025px) {
        .single-contents-area .btn-area a::before {
          transform-origin: 100% 50%;
          transform: scaleX(0);
          transition: transform ease .3s; } }
    @media screen and (min-width: 1280px) {
      .single-contents-area .btn-area a:hover::before {
        transform-origin: 0% 50%;
        transform: scaleX(1); } }
    @media screen and (max-width: 1279px) and (min-width: 1025px) {
      .single-contents-area .btn-area a:hover::before {
        transform-origin: 0% 50%;
        transform: scaleX(1); } }
    .single-contents-area .btn-area a::after {
      content: "";
      position: absolute;
      background: url("../img/common/btn-arrow-white.svg");
      background-repeat: no-repeat;
      top: 50%;
      right: 12px;
      transform: translateY(-50%); }
      @media screen and (min-width: 1280px) {
        .single-contents-area .btn-area a::after {
          width: 24px;
          height: 24px; } }
      @media screen and (max-width: 1279px) and (min-width: 1025px) {
        .single-contents-area .btn-area a::after {
          right: 6px;
          width: 18px;
          height: 18px;
          background-size: 18px; } }
      @media screen and (max-width: 1024px) and (min-width: 600px) {
        .single-contents-area .btn-area a::after {
          background: url("../img/common/btn-arrow-red.svg");
          background-repeat: no-repeat;
          background-size: 18px;
          top: 50%;
          right: 10px;
          width: 18px;
          height: 18px; } }
      @media screen and (max-width: 599px) {
        .single-contents-area .btn-area a::after {
          background: url("../img/common/btn-arrow-red.svg");
          background-repeat: no-repeat;
          background-size: 18px;
          top: 50%;
          right: 10px;
          width: 18px;
          height: 18px; } }
    .single-contents-area .btn-area a:hover::after {
      content: "";
      position: absolute;
      background: url("../img/common/btn-arrow-red.svg");
      background-repeat: no-repeat;
      top: 50%;
      right: 12px;
      transform: translateY(-50%); }
      @media screen and (min-width: 1280px) {
        .single-contents-area .btn-area a:hover::after {
          width: 24px;
          height: 24px; } }
      @media screen and (max-width: 1279px) and (min-width: 1025px) {
        .single-contents-area .btn-area a:hover::after {
          right: 6px;
          width: 18px;
          height: 18px;
          background-size: 18px; } }

.news-inner-list {
  display: block !important;
  font-size: 1.5rem !important;
  margin-top: 3rem; }
  .news-inner-list li span {
    display: flex;
    position: relative; }
    .news-inner-list li span::before {
      content: "・"; }

.news-image-list {
  display: flex;
  margin-top: 3rem; }
  @media screen and (max-width: 599px) {
    .news-image-list {
      display: block !important; } }
  .news-image-list li {
    width: calc(100% / 3); }
    @media screen and (max-width: 599px) {
      .news-image-list li {
        width: 100%; } }
  .news-image-list img {
    width: 100%; }
