@charset "UTF-8";
@media screen and (min-width: 1024px) {
  .btn_style01 {
    width: 360px; }
    .btn_style01 a, .btn_style01 a:link a:visited {
      position: relative;
      width: 100%;
      height: 60px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.6rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      line-height: 1.0;
      background-color: #fff;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border: 1px solid #E5E5E5; }
    .btn_style01 a:hover {
      color: #111; }
    .btn_style01 .arrow {
      overflow: hidden;
      position: absolute;
      top: 10px;
      right: 10px;
      width: 40px;
      height: 40px;
      background-color: #f5f5f5;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .btn_style01 .arrow:before,
    .btn_style01 .arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 40px;
      height: 40px;
      background: url(../img/arrow_bl.svg) no-repeat center center;
      background-size: 12px;
      animation-fill-mode: forwards;
      animation-duration: 0.3s; }
    .btn_style01 .arrow:after {
      transform: translateX(-100%); }
    .btn_style01 a:hover .arrow:before {
      animation-name: transformRightLeft;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0s; }
    .btn_style01 a:hover .arrow:after {
      animation-name: transformLeftRight;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0.2s; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .btn_style01 {
    width: 100%; }
    .btn_style01 a, .btn_style01 a:link a:visited {
      position: relative;
      width: 100%;
      height: 56px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.6rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      line-height: 1.0;
      background-color: #fff;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border: 1px solid #E5E5E5; }
    .btn_style01 a:hover {
      color: #111; }
    .btn_style01 .arrow {
      overflow: hidden;
      position: absolute;
      top: 8px;
      right: 8px;
      width: 38px;
      height: 38px;
      background-color: #f5f5f5;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .btn_style01 .arrow:before,
    .btn_style01 .arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 38px;
      height: 38px;
      background: url(../img/arrow_bl.svg) no-repeat center center;
      background-size: 12px;
      animation-fill-mode: forwards;
      animation-duration: 0.3s; }
    .btn_style01 .arrow:after {
      transform: translateX(-100%); }
    .btn_style01 a:hover .arrow:before {
      animation-name: transformRightLeft;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0s; }
    .btn_style01 a:hover .arrow:after {
      animation-name: transformLeftRight;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0.2s; } }
@media screen and (max-width: 767px) {
  .btn_style01 {
    width: 100%; }
    .btn_style01 a {
      position: relative;
      width: 100%;
      height: 50px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.5rem;
      font-weight: 600;
      line-height: 1.0;
      background-color: #fff;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border: 1px solid #E5E5E5; }
    .btn_style01 a:hover {
      color: #111; }
    .btn_style01 .arrow {
      overflow: hidden;
      position: absolute;
      top: 7px;
      right: 7px;
      width: 36px;
      height: 36px;
      background-color: #f5f5f5;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .btn_style01 .arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 36px;
      height: 36px;
      background: url(../img/arrow_bl.svg) no-repeat center center;
      background-size: 10px; } }

@media screen and (min-width: 1024px) {
  .btn_style02 {
    width: 100%; }
    .btn_style02 a, .btn_style02 a:link a:visited {
      position: relative;
      width: 100%;
      height: 60px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.6rem;
      font-weight: 500;
      letter-spacing: 0.05em;
      line-height: 1.0;
      color: #fff;
      background-color: #69A6BD;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .btn_style02 a:hover {
      color: #fff; }
    .btn_style02 .arrow {
      overflow: hidden;
      position: absolute;
      top: 10px;
      right: 10px;
      width: 40px;
      height: 40px;
      background-color: #5699B2;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .btn_style02 .arrow:before,
    .btn_style02 .arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 40px;
      height: 40px;
      background: url(../img/arrow_wh.svg) no-repeat center center;
      background-size: 12px;
      animation-fill-mode: forwards;
      animation-duration: 0.3s; }
    .btn_style02 .arrow:after {
      transform: translateX(-100%); }
    .btn_style02 a:hover .arrow:before {
      animation-name: transformRightLeft;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0s; }
    .btn_style02 a:hover .arrow:after {
      animation-name: transformLeftRight;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0.2s; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .btn_style02 {
    width: 100%; }
    .btn_style02 a, .btn_style02 a:link a:visited {
      position: relative;
      width: 100%;
      height: 56px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.6rem;
      font-weight: 500;
      letter-spacing: 0.05em;
      line-height: 1.0;
      color: #fff;
      background-color: #69A6BD;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .btn_style02 a:hover {
      color: #fff; }
    .btn_style02 .arrow {
      overflow: hidden;
      position: absolute;
      top: 8px;
      right: 8px;
      width: 38px;
      height: 38px;
      background-color: #5699B2;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .btn_style02 .arrow:before,
    .btn_style02 .arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 38px;
      height: 38px;
      background: url(../img/arrow_wh.svg) no-repeat center center;
      background-size: 12px;
      animation-fill-mode: forwards;
      animation-duration: 0.3s; }
    .btn_style02 .arrow:after {
      transform: translateX(-100%); }
    .btn_style02 a:hover .arrow:before {
      animation-name: transformRightLeft;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0s; }
    .btn_style02 a:hover .arrow:after {
      animation-name: transformLeftRight;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0.2s; } }
@media screen and (max-width: 767px) {
  .btn_style02 {
    width: 100%; }
    .btn_style02 a {
      position: relative;
      width: 100%;
      height: 50px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 1.5rem;
      font-weight: 600;
      line-height: 1.0;
      background-color: #69A6BD;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .btn_style02 a:hover {
      color: #fff; }
    .btn_style02 .arrow {
      overflow: hidden;
      position: absolute;
      top: 7px;
      right: 7px;
      width: 36px;
      height: 36px;
      background-color: #5699B2;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .btn_style02 .arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 36px;
      height: 36px;
      background: url(../img/arrow_wh.svg) no-repeat center center;
      background-size: 10px; } }

@media screen and (min-width: 1024px) {
  .btn_style03 {
    width: 200px; }
    .btn_style03 a, .btn_style03 a:link a:visited {
      width: 100%;
      height: 50px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.4rem;
      font-weight: 600;
      line-height: 1.0;
      letter-spacing: 0.05em;
      background: url(../img/arrow_bl.svg) no-repeat right 15px center;
      background-size: 10px;
      background-color: #fff;
      border: 1px solid #E5E5E5;
      border-radius: 25px;
      -webkit-border-radius: 25px;
      -moz-border-radius: 25px; }
    .btn_style03 a:hover {
      color: #111;
      background: url(../img/arrow_bl.svg) no-repeat right 10px center;
      background-size: 10px;
      background-color: #f5f5f5; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .btn_style03 {
    width: 170px; }
    .btn_style03 a, .btn_style03 a:link a:visited {
      width: 100%;
      height: 42px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.4rem;
      font-weight: 600;
      line-height: 1.0;
      letter-spacing: 0.05em;
      background: url(../img/arrow_bl.svg) no-repeat right 15px center;
      background-size: 10px;
      background-color: #fff;
      border: 1px solid #E5E5E5;
      border-radius: 21px;
      -webkit-border-radius: 21px;
      -moz-border-radius: 21px; }
    .btn_style03 a:hover {
      color: #111;
      background: url(../img/arrow_bl.svg) no-repeat right 10px center;
      background-size: 10px;
      background-color: #f5f5f5; } }
@media screen and (max-width: 767px) {
  .btn_style03 {
    width: 90px; }
    .btn_style03 a {
      width: 100%;
      height: 36px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.3rem;
      font-weight: 600;
      line-height: 1.0;
      letter-spacing: 0.05em;
      background: url(../img/arrow_bl.svg) no-repeat right 10px center;
      background-size: 10px;
      background-color: #fff;
      border: 1px solid #E5E5E5;
      border-radius: 18px;
      -webkit-border-radius: 18px;
      -moz-border-radius: 18px; }
    .btn_style03 a:hover {
      color: #111; } }

@media screen and (min-width: 1024px) {
  .line_btn_style01 {
    width: 360px; }
    .line_btn_style01 a, .line_btn_style01 a:link a:visited {
      position: relative;
      width: 100%;
      height: 60px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 1.6rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      line-height: 1.0;
      background-color: #00B900;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .line_btn_style01 a:hover {
      color: #fff; }
    .line_btn_style01 .arrow {
      overflow: hidden;
      position: absolute;
      top: 10px;
      right: 10px;
      width: 40px;
      height: 40px;
      background-color: #00ab00;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .line_btn_style01 .arrow:before,
    .line_btn_style01 .arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 40px;
      height: 40px;
      background: url(../img/arrow_wh.svg) no-repeat center center;
      background-size: 12px;
      animation-fill-mode: forwards;
      animation-duration: 0.3s; }
    .line_btn_style01 .arrow:after {
      transform: translateX(-100%); }
    .line_btn_style01 a:hover .arrow:before {
      animation-name: transformRightLeft;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0s; }
    .line_btn_style01 a:hover .arrow:after {
      animation-name: transformLeftRight;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0.2s; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .line_btn_style01 {
    width: 100%; }
    .line_btn_style01 a, .line_btn_style01 a:link a:visited {
      position: relative;
      width: 100%;
      height: 56px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 1.6rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      line-height: 1.0;
      background-color: #00B900;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .line_btn_style01 a:hover {
      color: #fff; }
    .line_btn_style01 .arrow {
      overflow: hidden;
      position: absolute;
      top: 8px;
      right: 8px;
      width: 38px;
      height: 38px;
      background-color: #00ab00;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .line_btn_style01 .arrow:before,
    .line_btn_style01 .arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 38px;
      height: 38px;
      background: url(../img/arrow_wh.svg) no-repeat center center;
      background-size: 12px;
      animation-fill-mode: forwards;
      animation-duration: 0.3s; }
    .line_btn_style01 .arrow:after {
      transform: translateX(-100%); }
    .line_btn_style01 a:hover .arrow:before {
      animation-name: transformRightLeft;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0s; }
    .line_btn_style01 a:hover .arrow:after {
      animation-name: transformLeftRight;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0.2s; } }
@media screen and (max-width: 767px) {
  .line_btn_style01 {
    width: 100%; }
    .line_btn_style01 a {
      position: relative;
      width: 100%;
      height: 50px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 1.5rem;
      font-weight: 600;
      line-height: 1.0;
      background-color: #00B900;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .line_btn_style01 a:hover {
      color: #fff; }
    .line_btn_style01 .arrow {
      overflow: hidden;
      position: absolute;
      top: 7px;
      right: 7px;
      width: 36px;
      height: 36px;
      background-color: #00ab00;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .line_btn_style01 .arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 36px;
      height: 36px;
      background: url(../img/arrow_wh.svg) no-repeat center center;
      background-size: 10px; } }

@media screen and (min-width: 1024px) {
  .cta_btn_style01 {
    width: 360px; }
    .cta_btn_style01 a, .cta_btn_style01 a:link a:visited {
      position: relative;
      width: 100%;
      height: 60px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 1.6rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      line-height: 1.0;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border: 1px solid rgba(255, 255, 255, 0.6); }
    .cta_btn_style01 a:hover {
      color: #fff;
      border: 1px solid #fff; }
    .cta_btn_style01 .cta_arrow {
      overflow: hidden;
      position: absolute;
      top: 10px;
      right: 10px;
      width: 40px;
      height: 40px;
      background-color: rgba(255, 255, 255, 0.2);
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .cta_btn_style01 .cta_arrow:before,
    .cta_btn_style01 .cta_arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 40px;
      height: 40px;
      background: url(../img/arrow_wh.svg) no-repeat center center;
      background-size: 12px;
      animation-fill-mode: forwards;
      animation-duration: 0.3s; }
    .cta_btn_style01 .cta_arrow:after {
      transform: translateX(-100%); }
    .cta_btn_style01 a:hover .cta_arrow:before {
      animation-name: transformRightLeft;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0s; }
    .cta_btn_style01 a:hover .cta_arrow:after {
      animation-name: transformLeftRight;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0.2s; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .cta_btn_style01 {
    width: 100%; }
    .cta_btn_style01 a, .cta_btn_style01 a:link a:visited {
      position: relative;
      width: 100%;
      height: 56px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 1.6rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      line-height: 1.0;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border: 1px solid rgba(255, 255, 255, 0.6); }
    .cta_btn_style01 a:hover {
      color: #fff;
      border: 1px solid #fff; }
    .cta_btn_style01 .cta_arrow {
      overflow: hidden;
      position: absolute;
      top: 8px;
      right: 8px;
      width: 38px;
      height: 38px;
      background-color: rgba(255, 255, 255, 0.2);
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .cta_btn_style01 .cta_arrow:before,
    .cta_btn_style01 .cta_arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 38px;
      height: 38px;
      background: url(../img/arrow_wh.svg) no-repeat center center;
      background-size: 12px;
      animation-fill-mode: forwards;
      animation-duration: 0.3s; }
    .cta_btn_style01 .cta_arrow:after {
      transform: translateX(-100%); }
    .cta_btn_style01 a:hover .cta_arrow:before {
      animation-name: transformRightLeft;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0s; }
    .cta_btn_style01 a:hover .cta_arrow:after {
      animation-name: transformLeftRight;
      /* 修正: hover時のアニメーションを指定 */
      animation-delay: 0.2s; } }
@media screen and (max-width: 767px) {
  .cta_btn_style01 {
    width: 100%; }
    .cta_btn_style01 a {
      position: relative;
      width: 100%;
      height: 50px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 1.5rem;
      font-weight: 600;
      line-height: 1.0;
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border: 1px solid rgba(255, 255, 255, 0.6); }
    .cta_btn_style01 a:hover {
      color: #fff; }
    .cta_btn_style01 .cta_arrow {
      overflow: hidden;
      position: absolute;
      top: 7px;
      right: 7px;
      width: 36px;
      height: 36px;
      background-color: rgba(255, 255, 255, 0.2);
      border-radius: 4px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px; }
    .cta_btn_style01 .cta_arrow:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 36px;
      height: 36px;
      background: url(../img/arrow_wh.svg) no-repeat center center;
      background-size: 10px; } }

@media screen and (min-width: 1024px) {
  .jf_btn_style01 {
    width: 100%; }
    .jf_btn_style01 a, .jf_btn_style01 a:link a:visited {
      width: 100%;
      height: 76px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 2.2rem;
      font-weight: 700;
      line-height: 1.0;
      letter-spacing: 0.075em;
      background: url(../img/arrow01.svg) no-repeat right 15px center;
      background-size: 15px;
      background-color: #F4DF5F;
      border-radius: 8px;
      -webkit-border-radius: 8px;
      -moz-border-radius: 8px;
      box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); }
      .jf_btn_style01 a img, .jf_btn_style01 a:link a:visited img {
        width: 32px;
        padding-right: 10px; }
    .jf_btn_style01 a:hover {
      color: #111;
      background: url(../img/arrow01.svg) no-repeat right 10px center;
      background-size: 15px;
      background-color: #F4D438; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .jf_btn_style01 {
    width: 100%; }
    .jf_btn_style01 a, .jf_btn_style01 a:link a:visited {
      width: 100%;
      height: 66px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.0;
      letter-spacing: 0.075em;
      background: url(../img/arrow01.svg) no-repeat right 15px center;
      background-size: 13px;
      background-color: #F4DF5F;
      border-radius: 6px;
      -webkit-border-radius: 6px;
      -moz-border-radius: 6px; }
      .jf_btn_style01 a img, .jf_btn_style01 a:link a:visited img {
        width: 26px;
        padding-right: 8px; }
    .jf_btn_style01 a:hover {
      color: #111;
      background-color: #F4D438; } }
@media screen and (max-width: 767px) {
  .jf_btn_style01 {
    width: 100%; }
    .jf_btn_style01 a {
      width: 100%;
      height: 54px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.8rem;
      font-weight: 700;
      line-height: 1.0;
      letter-spacing: 0.075em;
      background: url(../img/arrow01.svg) no-repeat right 10px center;
      background-size: 11px;
      background-color: #F4DF5F;
      border-radius: 6px;
      -webkit-border-radius: 6px;
      -moz-border-radius: 6px; }
      .jf_btn_style01 a img {
        width: 20px;
        padding-right: 6px; } }

@media screen and (min-width: 1024px) {
  .btn_style_arrowunder {
    width: 100%; }
    .btn_style_arrowunder a, .btn_style_arrowunder a:link a:visited {
      width: 100%;
      height: 76px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 2.2rem;
      font-weight: 700;
      line-height: 1.0;
      letter-spacing: 0.075em;
      background: url(../img/arrow03.svg) no-repeat right 20px bottom 50%;
      background-size: 15px;
      background-color: #69A6BD;
      border-radius: 8px;
      -webkit-border-radius: 8px;
      -moz-border-radius: 8px;
      box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); }
      .btn_style_arrowunder a img, .btn_style_arrowunder a:link a:visited img {
        width: 32px;
        padding-right: 10px; }
    .btn_style_arrowunder a:hover {
      color: #111;
      background: url(../img/arrow03.svg) no-repeat right 20px bottom 45%;
      background-size: 15px;
      background-color: #5699B2; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .btn_style_arrowunder {
    width: 100%; }
    .btn_style_arrowunder a, .btn_style_arrowunder a:link a:visited {
      width: 100%;
      height: 66px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.0;
      letter-spacing: 0.075em;
      background: url(../img/arrow03.svg) no-repeat right 20px bottom 50%;
      background-size: 13px;
      background-color: #69A6BD;
      border-radius: 6px;
      -webkit-border-radius: 6px;
      -moz-border-radius: 6px; }
      .btn_style_arrowunder a img, .btn_style_arrowunder a:link a:visited img {
        width: 26px;
        padding-right: 8px; }
    .btn_style_arrowunder a:hover {
      color: #111;
      background-color: #5699B2; } }
@media screen and (max-width: 767px) {
  .btn_style_arrowunder {
    width: 100%; }
    .btn_style_arrowunder a {
      width: 100%;
      height: 54px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      font-size: 1.8rem;
      font-weight: 700;
      line-height: 1.0;
      letter-spacing: 0.075em;
      background: url(../img/arrow03.svg) no-repeat right 15px center;
      background-size: 11px;
      background-color: #69A6BD;
      border-radius: 6px;
      -webkit-border-radius: 6px;
      -moz-border-radius: 6px; }
      .btn_style_arrowunder a img {
        width: 20px;
        padding-right: 6px; } }

/* ########## index_header ########## */
@media screen and (min-width: 1024px) {
  .index_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    z-index: 1000;
    transition: all .6s;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    .index_header__detail {
      position: relative;
      width: 96%;
      height: 70px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      margin-left: 4%; }
      .index_header__detail__logo {
        position: relative;
        width: 140px;
        opacity: 0;
        transition: all .6s; }
        .index_header__detail__logo p {
          width: 100%; }
          .index_header__detail__logo p img {
            width: 100%; }
      .index_header__detail__nav {
        position: relative;
        flex: 1;
        height: 70px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        padding-left: 20px; }
        .index_header__detail__nav__left {
          position: relative;
          flex: 1;
          height: 70px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          align-items: center; }
          .index_header__detail__nav__left__menu {
            position: relative;
            flex: 1;
            height: 70px;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            align-items: center;
            justify-content: flex-end;
            padding-right: 5px; }
            .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__list {
              position: relative;
              margin-right: 35px;
              font-size: min(1.0vw, 14px);
              font-weight: 500;
              letter-spacing: 0.075em; }
              .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__list a, .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__list a:link a:visited {
                position: relative;
                color: #fff;
                height: 70px;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                -webkit-flex-wrap: wrap;
                -moz-flex-wrap: wrap;
                -ms-flex-wrap: wrap;
                flex-wrap: wrap;
                align-items: center; }
              .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__list a::after {
                position: absolute;
                bottom: 23px;
                left: 0;
                content: '';
                width: 100%;
                height: 1px;
                background: #fff;
                transform: scale(0, 1);
                transform-origin: right top;
                transition: transform .3s; }
              .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__list a:hover {
                color: #fff; }
              .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__list a:hover::after {
                transform-origin: left top;
                transform: scale(1, 1); }
            .index_header__detail__nav__left__menu li.current a {
              color: #69A6BD; }
            .index_header__detail__nav__left__menu li.current::after {
              position: absolute;
              bottom: 23px;
              left: 0;
              content: '';
              width: 100%;
              height: 1px;
              background: #69A6BD; }
            .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega {
              position: relative;
              margin-right: 35px;
              font-size: min(1.0vw, 14px);
              font-weight: 500;
              letter-spacing: 0.075em; }
              .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega p {
                position: relative;
                font-weight: 500; }
                .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega p a, .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega p a:link a:visited {
                  position: relative;
                  color: #fff;
                  height: 70px;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  -webkit-flex-wrap: wrap;
                  -moz-flex-wrap: wrap;
                  -ms-flex-wrap: wrap;
                  flex-wrap: wrap;
                  align-items: center; }
                .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega p a::after {
                  position: absolute;
                  bottom: 23px;
                  left: 0;
                  content: '';
                  width: 100%;
                  height: 1px;
                  background: #fff;
                  transform: scale(0, 1);
                  transform-origin: right top;
                  transition: transform .3s; }
                .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega p a:hover {
                  color: #fff; }
                .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega p a:hover::after {
                  transform-origin: left top;
                  transform: scale(1, 1); }
              .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega p.current a {
                color: #69A6BD; }
              .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega p.current::after {
                position: absolute;
                bottom: 23px;
                left: 0;
                content: '';
                width: 100%;
                height: 1px;
                background: #69A6BD; }
            .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega div.index_header__detail__nav__left__menu__mega__sub {
              position: absolute;
              width: 600px;
              top: 56px;
              left: 50%;
              background-color: #f5f5f5;
              transform: translateX(-50%);
              -webkit-transform: translateX(-50%);
              -webkit-transition: all .3s ease;
              transition: all .3s ease;
              visibility: hidden;
              opacity: 0;
              padding: 25px 25px;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
              z-index: 30; }
              .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega div.index_header__detail__nav__left__menu__mega__sub ul.index_header__detail__nav__left__menu__mega__sub__list {
                position: relative;
                width: 100%;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                -webkit-flex-wrap: wrap;
                -moz-flex-wrap: wrap;
                -ms-flex-wrap: wrap;
                flex-wrap: wrap;
                justify-content: space-between; }
                .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega div.index_header__detail__nav__left__menu__mega__sub ul.index_header__detail__nav__left__menu__mega__sub__list li {
                  position: relative;
                  width: 49%; }
                  .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega div.index_header__detail__nav__left__menu__mega__sub ul.index_header__detail__nav__left__menu__mega__sub__list li a, .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega div.index_header__detail__nav__left__menu__mega__sub ul.index_header__detail__nav__left__menu__mega__sub__list li a:link a:visited {
                    position: relative;
                    display: -webkit-flex;
                    display: -moz-flex;
                    display: -ms-flex;
                    display: -o-flex;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    width: 100%;
                    font-weight: 500;
                    height: 54px;
                    background: url(../img/arrow_bl.svg) no-repeat right 15px center;
                    background-size: 10px;
                    background-color: #fff;
                    border: 1px solid #E5E5E5;
                    border-radius: 4px;
                    -webkit-border-radius: 4px;
                    -moz-border-radius: 4px; }
                  .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega div.index_header__detail__nav__left__menu__mega__sub ul.index_header__detail__nav__left__menu__mega__sub__list li a::after {
                    background: none; }
                  .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega div.index_header__detail__nav__left__menu__mega__sub ul.index_header__detail__nav__left__menu__mega__sub__list li a:hover {
                    background: url(../img/arrow_bl.svg) no-repeat right 10px center;
                    background-size: 10px;
                    background-color: #fff; }
                .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega div.index_header__detail__nav__left__menu__mega__sub ul.index_header__detail__nav__left__menu__mega__sub__list li:nth-child(n+3) {
                  margin-top: 12px; }
            .index_header__detail__nav__left__menu li.index_header__detail__nav__left__menu__mega:hover div.index_header__detail__nav__left__menu__mega__sub {
              visibility: visible;
              opacity: 1;
              top: 64px; }
        .index_header__detail__nav__right {
          position: relative;
          width: 170px;
          height: 70px; }
          .index_header__detail__nav__right p {
            position: relative;
            width: 100%; }
            .index_header__detail__nav__right p a, .index_header__detail__nav__right p a:link a:visited {
              position: relative;
              color: #fff;
              width: 100%;
              height: 70px;
              font-size: min(1.0vw, 14px);
              font-weight: 500;
              letter-spacing: 0.075em;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              -moz-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              align-items: center;
              justify-content: center;
              background-color: #69A6BD; }
              .index_header__detail__nav__right p a img, .index_header__detail__nav__right p a:link a:visited img {
                width: 14px;
                margin-right: 6px; }
            .index_header__detail__nav__right p a:hover {
              background-color: #5699B2; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .index_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    z-index: 1000;
    transition: all .6s;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    .index_header__detail {
      position: relative;
      width: 96%;
      height: 60px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      margin-left: 4%; }
      .index_header__detail__logo {
        position: relative;
        width: 125px;
        opacity: 0;
        transition: all .6s; }
        .index_header__detail__logo p {
          width: 100%; }
          .index_header__detail__logo p img {
            width: 100%; }
      .index_header__detail__nav {
        display: none; }
        .index_header__detail__nav__left {
          display: none; }
        .index_header__detail__nav__right {
          display: none; } }
@media screen and (max-width: 767px) {
  .index_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 52px;
    z-index: 1000;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    .index_header__detail {
      position: relative;
      width: 95%;
      height: 52px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      margin-left: 5%; }
      .index_header__detail__logo {
        position: relative;
        width: 110px;
        opacity: 0;
        transition: all .6s; }
        .index_header__detail__logo p {
          width: 100%; }
          .index_header__detail__logo p img {
            width: 100%; }
      .index_header__detail__nav {
        display: none; }
        .index_header__detail__nav__left {
          display: none; }
        .index_header__detail__nav__right {
          display: none; } }

@media screen and (min-width: 1024px) {
  .fixed {
    background-color: #fff;
    border-bottom: 1px solid #E5E5E5;
    transition: all .6s; }
    .fixed .index_header__detail__logo {
      position: relative;
      width: 140px;
      opacity: 10;
      transition: all .6s; }
      .fixed .index_header__detail__logo p {
        width: 100%; }
        .fixed .index_header__detail__logo p img {
          width: 100%; }
    .fixed li.index_header__detail__nav__left__menu__list {
      margin-right: 35px; }
      .fixed li.index_header__detail__nav__left__menu__list a, .fixed li.index_header__detail__nav__left__menu__list a:link a:visited {
        color: #111; }
      .fixed li.index_header__detail__nav__left__menu__list a::after {
        background: #69A6BD; }
      .fixed li.index_header__detail__nav__left__menu__list a:hover {
        color: #69A6BD; }
    .fixed li.index_header__detail__nav__left__menu__mega {
      margin-right: 35px; }
      .fixed li.index_header__detail__nav__left__menu__mega p {
        position: relative;
        font-weight: 500; }
        .fixed li.index_header__detail__nav__left__menu__mega p a, .fixed li.index_header__detail__nav__left__menu__mega p a:link a:visited {
          color: #111; }
        .fixed li.index_header__detail__nav__left__menu__mega p a::after {
          background: #69A6BD; }
        .fixed li.index_header__detail__nav__left__menu__mega p a:hover {
          color: #69A6BD; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .fixed {
    background-color: #fff;
    border-bottom: 1px solid #E5E5E5;
    transition: all .6s; }
    .fixed .index_header__detail__logo {
      position: relative;
      width: 125px;
      opacity: 10;
      transition: all .6s; }
      .fixed .index_header__detail__logo p {
        width: 100%; }
        .fixed .index_header__detail__logo p img {
          width: 100%; } }
@media screen and (max-width: 767px) {
  .fixed {
    background-color: #fff;
    border-bottom: 1px solid #E5E5E5;
    transition: all .6s; }
    .fixed .index_header__detail__logo {
      position: relative;
      width: 110px;
      opacity: 10;
      transition: all .6s; }
      .fixed .index_header__detail__logo p {
        width: 100%; }
        .fixed .index_header__detail__logo p img {
          width: 100%; } }

/* ########## index_header ########## */
/* ########## header ########## */
@media screen and (min-width: 1024px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    z-index: 1000;
    background-color: #fff;
    border-bottom: 1px solid #E5E5E5; }
    .header__detail {
      position: relative;
      width: 96%;
      height: 70px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      margin-left: 4%; }
      .header__detail__logo {
        position: relative;
        width: 140px; }
        .header__detail__logo p {
          width: 100%; }
          .header__detail__logo p img {
            width: 100%; }
      .header__detail__nav {
        position: relative;
        flex: 1;
        height: 70px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        padding-left: 20px; }
        .header__detail__nav__left {
          position: relative;
          flex: 1;
          height: 70px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          align-items: center; }
          .header__detail__nav__left__menu {
            position: relative;
            flex: 1;
            height: 70px;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            align-items: center;
            justify-content: flex-end;
            padding-right: 5px; }
            .header__detail__nav__left__menu li.header__detail__nav__left__menu__list {
              position: relative;
              margin-right: 35px;
              font-size: min(1.0vw, 14px);
              font-weight: 500;
              letter-spacing: 0.075em; }
              .header__detail__nav__left__menu li.header__detail__nav__left__menu__list a, .header__detail__nav__left__menu li.header__detail__nav__left__menu__list a:link a:visited {
                position: relative;
                color: #111;
                height: 70px;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                -webkit-flex-wrap: wrap;
                -moz-flex-wrap: wrap;
                -ms-flex-wrap: wrap;
                flex-wrap: wrap;
                align-items: center; }
              .header__detail__nav__left__menu li.header__detail__nav__left__menu__list a::after {
                position: absolute;
                bottom: 23px;
                left: 0;
                content: '';
                width: 100%;
                height: 1px;
                background: #69A6BD;
                transform: scale(0, 1);
                transform-origin: right top;
                transition: transform .3s; }
              .header__detail__nav__left__menu li.header__detail__nav__left__menu__list a:hover {
                color: #69A6BD; }
              .header__detail__nav__left__menu li.header__detail__nav__left__menu__list a:hover::after {
                transform-origin: left top;
                transform: scale(1, 1); }
            .header__detail__nav__left__menu li.current a {
              color: #69A6BD !important;
              font-weight: 600; }
            .header__detail__nav__left__menu li.current::after {
              position: absolute;
              bottom: 23px;
              left: 0;
              content: '';
              width: 100%;
              height: 1px;
              background: #69A6BD; }
            .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega {
              position: relative;
              margin-right: 35px;
              font-size: min(1.0vw, 14px);
              font-weight: 500;
              letter-spacing: 0.075em; }
              .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega p {
                position: relative;
                font-weight: 500; }
                .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega p a, .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega p a:link a:visited {
                  position: relative;
                  color: #111;
                  height: 70px;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  -webkit-flex-wrap: wrap;
                  -moz-flex-wrap: wrap;
                  -ms-flex-wrap: wrap;
                  flex-wrap: wrap;
                  align-items: center; }
                .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega p a::after {
                  position: absolute;
                  bottom: 23px;
                  left: 0;
                  content: '';
                  width: 100%;
                  height: 1px;
                  background: #69A6BD;
                  transform: scale(0, 1);
                  transform-origin: right top;
                  transition: transform .3s; }
                .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega p a:hover {
                  color: #69A6BD; }
                .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega p a:hover::after {
                  transform-origin: left top;
                  transform: scale(1, 1); }
              .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega p.current a {
                color: #69A6BD !important;
                font-weight: 600; }
              .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega p.current::after {
                position: absolute;
                bottom: 23px;
                left: 0;
                content: '';
                width: 100%;
                height: 1px;
                background: #69A6BD; }
            .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega div.header__detail__nav__left__menu__mega__sub {
              position: absolute;
              width: 600px;
              top: 56px;
              left: 50%;
              background-color: #f5f5f5;
              transform: translateX(-50%);
              -webkit-transform: translateX(-50%);
              -webkit-transition: all .3s ease;
              transition: all .3s ease;
              visibility: hidden;
              opacity: 0;
              padding: 25px 25px;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
              z-index: 30; }
              .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega div.header__detail__nav__left__menu__mega__sub ul.header__detail__nav__left__menu__mega__sub__list {
                position: relative;
                width: 100%;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                -webkit-flex-wrap: wrap;
                -moz-flex-wrap: wrap;
                -ms-flex-wrap: wrap;
                flex-wrap: wrap;
                justify-content: space-between; }
                .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega div.header__detail__nav__left__menu__mega__sub ul.header__detail__nav__left__menu__mega__sub__list li {
                  position: relative;
                  width: 49%; }
                  .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega div.header__detail__nav__left__menu__mega__sub ul.header__detail__nav__left__menu__mega__sub__list li a, .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega div.header__detail__nav__left__menu__mega__sub ul.header__detail__nav__left__menu__mega__sub__list li a:link a:visited {
                    position: relative;
                    display: -webkit-flex;
                    display: -moz-flex;
                    display: -ms-flex;
                    display: -o-flex;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    width: 100%;
                    color: #111 !important;
                    font-weight: 500;
                    height: 54px;
                    background: url(../img/arrow_bl.svg) no-repeat right 15px center;
                    background-size: 10px;
                    background-color: #fff;
                    border: 1px solid #E5E5E5;
                    border-radius: 4px;
                    -webkit-border-radius: 4px;
                    -moz-border-radius: 4px; }
                  .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega div.header__detail__nav__left__menu__mega__sub ul.header__detail__nav__left__menu__mega__sub__list li a::after {
                    background: none; }
                  .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega div.header__detail__nav__left__menu__mega__sub ul.header__detail__nav__left__menu__mega__sub__list li a:hover {
                    color: #69A6BD !important;
                    background: url(../img/arrow_bl.svg) no-repeat right 10px center;
                    background-size: 10px;
                    background-color: #fff; }
                .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega div.header__detail__nav__left__menu__mega__sub ul.header__detail__nav__left__menu__mega__sub__list li:nth-child(n+3) {
                  margin-top: 12px; }
            .header__detail__nav__left__menu li.header__detail__nav__left__menu__mega:hover div.header__detail__nav__left__menu__mega__sub {
              visibility: visible;
              opacity: 1;
              top: 64px; }
        .header__detail__nav__right {
          position: relative;
          width: 170px;
          height: 70px; }
          .header__detail__nav__right p {
            position: relative;
            width: 100%; }
            .header__detail__nav__right p a, .header__detail__nav__right p a:link a:visited {
              position: relative;
              color: #fff;
              width: 100%;
              height: 70px;
              font-size: min(1.0vw, 14px);
              font-weight: 500;
              letter-spacing: 0.075em;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              -moz-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              align-items: center;
              justify-content: center;
              background-color: #69A6BD; }
              .header__detail__nav__right p a img, .header__detail__nav__right p a:link a:visited img {
                width: 14px;
                margin-right: 6px; }
            .header__detail__nav__right p a:hover {
              background-color: #5699B2; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    z-index: 1000;
    background-color: #fff;
    border-bottom: 1px solid #E5E5E5; }
    .header__detail {
      position: relative;
      width: 96%;
      height: 60px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      margin-left: 4%; }
      .header__detail__logo {
        position: relative;
        width: 125px; }
        .header__detail__logo p {
          width: 100%; }
          .header__detail__logo p img {
            width: 100%; }
      .header__detail__nav {
        display: none; }
        .header__detail__nav__left {
          display: none; }
        .header__detail__nav__right {
          display: none; } }
@media screen and (max-width: 767px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 52px;
    z-index: 1000;
    background-color: #fff;
    border-bottom: 1px solid #E5E5E5; }
    .header__detail {
      position: relative;
      width: 95%;
      height: 52px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      margin-left: 5%; }
      .header__detail__logo {
        position: relative;
        width: 110px; }
        .header__detail__logo p {
          width: 100%; }
          .header__detail__logo p img {
            width: 100%; }
      .header__detail__nav {
        display: none; }
        .header__detail__nav__left {
          display: none; }
        .header__detail__nav__right {
          display: none; } }

/* ########## header ########## */
/* ########## jf_header ########## */
@media screen and (min-width: 1024px) {
  .jf_header {
    position: relative;
    width: 100%;
    height: 170px;
    min-width: 1125px;
    padding-top: 70px;
    background-color: #fff; }
    .jf_header__contents {
      position: relative;
      width: 86%;
      height: 100px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      margin: 0 auto; }
      .jf_header__contents__logo {
        position: relative;
        width: 162px; }
        .jf_header__contents__logo p {
          width: 100%;
          line-height: 1.0; }
          .jf_header__contents__logo p img {
            width: 100%; }
      .jf_header__contents__nav {
        position: relative;
        flex: 1;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-end; }
        .jf_header__contents__nav__list {
          border-left: 1px dotted #E5E5E5; }
          .jf_header__contents__nav__list a {
            width: 130px;
            height: 100px;
            color: #111;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center; }
            .jf_header__contents__nav__list a p.jf_nav_img {
              text-align: center;
              width: 100%;
              line-height: 1.0;
              font-size: 1.2rem;
              font-weight: 500; }
              .jf_header__contents__nav__list a p.jf_nav_img img {
                width: 38px;
                margin-bottom: 12px; }
            .jf_header__contents__nav__list a p.jf_nav_txt {
              width: 100%;
              line-height: 1.0;
              text-align: center;
              font-size: 1.2rem;
              font-weight: 500; }
          .jf_header__contents__nav__list a:hover {
            color: #111;
            background-color: #f5f5f5; }
        .jf_header__contents__nav__contact {
          border-left: 1px dotted #E5E5E5; }
          .jf_header__contents__nav__contact a {
            width: 130px;
            height: 100px;
            color: #111;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center;
            background-color: #F4DF5F; }
            .jf_header__contents__nav__contact a p.jf_nav_img {
              text-align: center;
              width: 100%;
              line-height: 1.0;
              font-size: 1.2rem;
              font-weight: 500; }
              .jf_header__contents__nav__contact a p.jf_nav_img img {
                width: 38px;
                margin-bottom: 12px; }
          .jf_header__contents__nav__contact a:hover {
            color: #111;
            background-color: #F4D438; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .jf_header {
    position: relative;
    width: 100%;
    height: 150px;
    padding-top: 60px;
    background-color: #fff; }
    .jf_header__contents {
      position: relative;
      width: 97%;
      height: 90px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      margin-left: 3%; }
      .jf_header__contents__logo {
        position: relative;
        width: 145px; }
        .jf_header__contents__logo p {
          width: 100%;
          line-height: 1.0; }
          .jf_header__contents__logo p img {
            width: 100%; }
      .jf_header__contents__nav {
        position: relative;
        flex: 1;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-end; }
        .jf_header__contents__nav__list {
          border-left: 1px dotted #E5E5E5; }
          .jf_header__contents__nav__list a {
            width: 110px;
            height: 90px;
            color: #111;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center; }
            .jf_header__contents__nav__list a p.jf_nav_img {
              text-align: center;
              width: 100%;
              line-height: 1.0;
              font-size: 1.1rem;
              font-weight: 500; }
              .jf_header__contents__nav__list a p.jf_nav_img img {
                width: 34px;
                margin-bottom: 10px; }
          .jf_header__contents__nav__list a:hover {
            color: #111;
            background-color: #f5f5f5; }
        .jf_header__contents__nav__contact {
          border-left: 1px dotted #E5E5E5; }
          .jf_header__contents__nav__contact a {
            width: 110px;
            height: 90px;
            color: #111;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center;
            background-color: #F4DF5F; }
            .jf_header__contents__nav__contact a p.jf_nav_img {
              text-align: center;
              width: 100%;
              line-height: 1.0;
              font-size: 1.1rem;
              font-weight: 500; }
              .jf_header__contents__nav__contact a p.jf_nav_img img {
                width: 34px;
                margin-bottom: 10px; }
          .jf_header__contents__nav__contact a:hover {
            color: #111;
            background-color: #F4D438; } }
@media screen and (max-width: 767px) {
  .jf_header {
    position: relative;
    width: 100%;
    height: 132px;
    padding-top: 52px;
    background-color: #fff; }
    .jf_header__contents {
      position: relative;
      width: 100%;
      height: 80px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center; }
      .jf_header__contents__logo {
        position: relative;
        width: 120px;
        margin: 0 auto; }
        .jf_header__contents__logo p {
          width: 100%;
          line-height: 1.0; }
          .jf_header__contents__logo p img {
            width: 100%; }
      .jf_header__contents__nav {
        display: none; } }

/* ########## jf_header ########## */
/* ########## nav_menu ########## */
@media screen and (min-width: 1024px) {
  div.nav_menu {
    display: none; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  div.nav_menu {
    position: fixed;
    top: 6px;
    right: 6px;
    display: block;
    width: 48px;
    height: 48px;
    background: url(../img/sp_nav_menu_backimg.svg) no-repeat center bottom 12px;
    background-size: 22px;
    background-color: #69A6BD;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    z-index: 9000; }
    div.nav_menu a.nav_menu__icon {
      position: relative;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      width: 48px;
      height: 48px;
      text-align: center;
      text-decoration: none;
      transition: all .3s; }
      div.nav_menu a.nav_menu__icon .menu__line {
        display: block;
        height: 1px;
        position: absolute;
        transition: transform .3s; }
      div.nav_menu a.nav_menu__icon .menu__line--top {
        width: 24px;
        top: 15px;
        left: 12px;
        background-color: #fff; }
      div.nav_menu a.nav_menu__icon .menu__line--bottom {
        width: 24px;
        bottom: 26px;
        left: 12px;
        background-color: #fff; }
    div.nav_menu a.nav_menu__icon.active {
      width: 100%;
      height: 42px; }
      div.nav_menu a.nav_menu__icon.active .menu__line {
        display: block;
        height: 1px;
        position: absolute;
        transition: transform .3s; }
      div.nav_menu a.nav_menu__icon.active .menu__line--top {
        width: 25px;
        top: 17px;
        left: 12px;
        background-color: #fff;
        transform: rotate(25deg); }
      div.nav_menu a.nav_menu__icon.active .menu__line--bottom {
        width: 25px;
        bottom: 24px;
        left: 12px;
        background-color: #fff;
        transform: rotate(-25deg); } }
@media screen and (max-width: 767px) {
  div.nav_menu {
    position: fixed;
    top: 5px;
    right: 5px;
    display: block;
    width: 42px;
    height: 42px;
    background: url(../img/sp_nav_menu_backimg.svg) no-repeat center bottom 10px;
    background-size: 20px;
    background-color: #69A6BD;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    z-index: 9000; }
    div.nav_menu a.nav_menu__icon {
      position: relative;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      width: 42px;
      height: 42px;
      text-align: center;
      text-decoration: none;
      transition: all .3s; }
      div.nav_menu a.nav_menu__icon .menu__line {
        display: block;
        height: 1px;
        position: absolute;
        transition: transform .3s; }
      div.nav_menu a.nav_menu__icon .menu__line--top {
        width: 20px;
        top: 13px;
        left: 11px;
        background-color: #fff; }
      div.nav_menu a.nav_menu__icon .menu__line--bottom {
        width: 20px;
        bottom: 23px;
        left: 11px;
        background-color: #fff; }
    div.nav_menu a.nav_menu__icon.active {
      width: 100%;
      height: 42px; }
      div.nav_menu a.nav_menu__icon.active .menu__line {
        display: block;
        height: 1px;
        position: absolute;
        transition: transform .3s; }
      div.nav_menu a.nav_menu__icon.active .menu__line--top {
        width: 22px;
        top: 15px;
        left: 10px;
        background-color: #fff;
        transform: rotate(25deg); }
      div.nav_menu a.nav_menu__icon.active .menu__line--bottom {
        width: 22px;
        bottom: 26px;
        left: 10px;
        background-color: #fff;
        transform: rotate(-25deg); } }

@media screen and (min-width: 1024px) {
  .gnav {
    display: none; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .gnav {
    background-color: #69A6BD;
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 6000; }
    .gnav .gnav__wrap {
      position: relative;
      height: 100%;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      overflow: auto;
      -webkit-overflow-scrolling: touch; }
      .gnav .gnav__wrap__logo {
        position: relative;
        width: 100%;
        height: 60px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        padding: 0 4%; }
        .gnav .gnav__wrap__logo p {
          width: 140px; }
          .gnav .gnav__wrap__logo p img {
            width: 100%; }
      .gnav .gnav__wrap__menu {
        width: 60%;
        margin: 0 auto;
        border-top: 1px solid #5699B2;
        /*　closeというクラスがついたら形状変化　*/
        /*アコーディオンで現れるエリア*/ }
        .gnav .gnav__wrap__menu__list {
          border-bottom: 1px solid #5699B2; }
          .gnav .gnav__wrap__menu__list p {
            text-align: center;
            font-size: 1.4rem;
            letter-spacing: 0.1em;
            font-weight: 500; }
            .gnav .gnav__wrap__menu__list p a {
              width: 100%;
              height: 52px;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              -moz-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              align-items: center;
              justify-content: center;
              color: #fff;
              line-height: 1.0;
              background: url(../img/arrow_wh.svg) no-repeat right 15px center;
              background-size: 12px; }
        .gnav .gnav__wrap__menu__contact {
          font-size: 1.4rem;
          padding: 20px 0 0; }
          .gnav .gnav__wrap__menu__contact a {
            position: relative;
            color: #111;
            font-weight: 500;
            width: 100%;
            height: 56px;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center;
            background-color: #fff;
            border-radius: 4px;
            -webkit-border-radius: 4px;
            -moz-border-radius: 4px; }
            .gnav .gnav__wrap__menu__contact a img {
              width: 12px;
              margin-right: 6px; }
        .gnav .gnav__wrap__menu .accordion-area {
          list-style: none;
          width: 100%;
          margin: 0 auto; }
          .gnav .gnav__wrap__menu .accordion-area ul {
            margin: 0 0 5px;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            justify-content: space-between; }
            .gnav .gnav__wrap__menu .accordion-area ul li {
              width: 49.6%;
              margin-bottom: 3px; }
              .gnav .gnav__wrap__menu .accordion-area ul li a {
                position: relative;
                width: 100%;
                height: 46px;
                color: #fff;
                font-size: 1.3rem;
                font-weight: 500;
                line-height: 1.3;
                letter-spacing: 0.05em;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                -webkit-flex-wrap: wrap;
                -moz-flex-wrap: wrap;
                -ms-flex-wrap: wrap;
                flex-wrap: wrap;
                align-items: center;
                justify-content: center;
                background-color: #5699B2;
                padding: 0 10px;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px; }
        .gnav .gnav__wrap__menu .accordion-title {
          position: relative;
          /*+マークの位置基準とするためrelative指定*/
          font-size: 1.4rem;
          height: 52px;
          font-weight: 500;
          color: #fff;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          align-items: center;
          justify-content: center;
          line-height: 1.0;
          transition: all .5s ease; }
        .gnav .gnav__wrap__menu .accordion-title::before,
        .gnav .gnav__wrap__menu .accordion-title::after {
          position: absolute;
          content: '';
          width: 13px;
          height: 1px;
          background-color: #fff; }
        .gnav .gnav__wrap__menu .accordion-title::before {
          top: 48%;
          right: 15px;
          transform: rotate(0deg); }
        .gnav .gnav__wrap__menu .accordion-title::after {
          top: 48%;
          right: 15px;
          transform: rotate(90deg); }
        .gnav .gnav__wrap__menu .accordion-title.close::after {
          display: none; }
        .gnav .gnav__wrap__menu .box {
          display: none;
          /*はじめは非表示*/ } }
@media screen and (max-width: 767px) {
  .gnav {
    background-color: #69A6BD;
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 6000; }
    .gnav .gnav__wrap {
      position: relative;
      height: 100%;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: center;
      overflow: auto;
      -webkit-overflow-scrolling: touch; }
      .gnav .gnav__wrap__logo {
        position: relative;
        width: 100%;
        height: 56px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        padding: 0 5%; }
        .gnav .gnav__wrap__logo p {
          width: 140px; }
          .gnav .gnav__wrap__logo p img {
            width: 100%; }
      .gnav .gnav__wrap__menu {
        width: 88%;
        margin: 0 auto;
        border-top: 1px solid #5699B2;
        /*　closeというクラスがついたら形状変化　*/
        /*アコーディオンで現れるエリア*/ }
        .gnav .gnav__wrap__menu__list {
          border-bottom: 1px solid #5699B2; }
          .gnav .gnav__wrap__menu__list p {
            text-align: center;
            font-size: 1.4rem;
            letter-spacing: 0.1em;
            font-weight: 500; }
            .gnav .gnav__wrap__menu__list p a {
              width: 100%;
              height: 48px;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              -moz-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              align-items: center;
              justify-content: center;
              color: #fff;
              line-height: 1.0;
              background: url(../img/arrow_wh.svg) no-repeat right 15px center;
              background-size: 10px; }
        .gnav .gnav__wrap__menu__contact {
          font-size: 1.4rem;
          padding: 20px 0 0; }
          .gnav .gnav__wrap__menu__contact a {
            position: relative;
            color: #111;
            font-weight: 500;
            width: 100%;
            height: 52px;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center;
            background-color: #fff;
            border-radius: 4px;
            -webkit-border-radius: 4px;
            -moz-border-radius: 4px; }
            .gnav .gnav__wrap__menu__contact a img {
              width: 12px;
              margin-right: 6px; }
        .gnav .gnav__wrap__menu .accordion-area {
          list-style: none;
          width: 100%;
          margin: 0 auto; }
          .gnav .gnav__wrap__menu .accordion-area ul {
            margin: 0 0 5px;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            -moz-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            justify-content: space-between; }
            .gnav .gnav__wrap__menu .accordion-area ul li {
              width: 49.6%;
              margin-bottom: 3px; }
              .gnav .gnav__wrap__menu .accordion-area ul li a {
                position: relative;
                width: 100%;
                height: 42px;
                color: #fff;
                font-size: 1.2rem;
                font-weight: 500;
                line-height: 1.3;
                letter-spacing: 0.05em;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                -webkit-flex-wrap: wrap;
                -moz-flex-wrap: wrap;
                -ms-flex-wrap: wrap;
                flex-wrap: wrap;
                align-items: center;
                justify-content: center;
                background-color: #5699B2;
                padding: 0 10px;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px; }
        .gnav .gnav__wrap__menu .accordion-title {
          position: relative;
          /*+マークの位置基準とするためrelative指定*/
          font-size: 1.4rem;
          height: 48px;
          font-weight: 500;
          color: #fff;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          align-items: center;
          justify-content: center;
          line-height: 1.0;
          transition: all .5s ease; }
        .gnav .gnav__wrap__menu .accordion-title::before,
        .gnav .gnav__wrap__menu .accordion-title::after {
          position: absolute;
          content: '';
          width: 11px;
          height: 1px;
          background-color: #fff; }
        .gnav .gnav__wrap__menu .accordion-title::before {
          top: 48%;
          right: 15px;
          transform: rotate(0deg); }
        .gnav .gnav__wrap__menu .accordion-title::after {
          top: 48%;
          right: 15px;
          transform: rotate(90deg); }
        .gnav .gnav__wrap__menu .accordion-title.close::after {
          display: none; }
        .gnav .gnav__wrap__menu .box {
          display: none;
          /*はじめは非表示*/ } }

/* ########## nav_menu ########## */
@media screen and (min-width: 1024px) {
  .footer {
    position: relative;
    margin-top: 240px;
    background: url(../img/kishihiro_wh.svg) no-repeat center bottom 100px;
    background-size: 101%;
    background-color: #f5f5f5;
    padding-bottom: 35px; }
    .footer__cta {
      position: relative;
      width: 98%;
      height: 450px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      justify-content: space-between;
      margin: 0 auto;
      z-index: 3; }
      .footer__cta__contact {
        position: relative;
        width: 49.5%;
        height: 450px; }
        .footer__cta__contact a, .footer__cta__contact a:link a:visited {
          position: relative;
          width: 100%;
          height: 450px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          color: #fff;
          background-color: #69A6BD;
          border-radius: 4px;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          overflow: hidden; }
          .footer__cta__contact a .footer__cta__contact__detail, .footer__cta__contact a:link a:visited .footer__cta__contact__detail {
            position: relative;
            width: 100%;
            z-index: 5; }
            .footer__cta__contact a .footer__cta__contact__detail h2, .footer__cta__contact a:link a:visited .footer__cta__contact__detail h2 {
              text-align: center;
              font-size: 3rem;
              font-weight: 700; }
            .footer__cta__contact a .footer__cta__contact__detail h6, .footer__cta__contact a:link a:visited .footer__cta__contact__detail h6 {
              text-align: center;
              font-family: "Inter", sans-serif;
              font-size: 1.5rem;
              font-weight: 600;
              line-height: 1.0;
              padding-bottom: 8px; }
            .footer__cta__contact a .footer__cta__contact__detail p, .footer__cta__contact a:link a:visited .footer__cta__contact__detail p {
              text-align: center;
              font-size: 1.5rem;
              line-height: 1.8;
              margin: 20px auto 0; }
          .footer__cta__contact a .arrow02, .footer__cta__contact a:link a:visited .arrow02 {
            overflow: hidden;
            position: absolute;
            bottom: 30px;
            right: 30px;
            width: 60px;
            height: 60px;
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.6);
            z-index: 15;
            transition: all .3s; }
          .footer__cta__contact a .arrow02:before,
          .footer__cta__contact a .arrow02:after, .footer__cta__contact a:link a:visited .arrow02:before,
          .footer__cta__contact a:link a:visited .arrow02:after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            width: 58px;
            height: 58px;
            background: url(../img/arrow_wh.svg) no-repeat center center;
            background-size: 12px;
            animation-fill-mode: forwards;
            animation-duration: 0.3s; }
          .footer__cta__contact a .arrow02:after, .footer__cta__contact a:link a:visited .arrow02:after {
            transform: translateX(-100%); }
        .footer__cta__contact a:hover {
          color: #fff;
          background-color: #5699B2; }
        .footer__cta__contact a:hover .arrow02 {
          border: 1px solid #fff; }
        .footer__cta__contact a:hover .arrow02:before {
          animation-name: transformRightLeft;
          /* 修正: hover時のアニメーションを指定 */
          animation-delay: 0s; }
        .footer__cta__contact a:hover .arrow02:after {
          animation-name: transformLeftRight;
          /* 修正: hover時のアニメーションを指定 */
          animation-delay: 0.2s; }
        .footer__cta__contact a::after {
          position: absolute;
          content: "";
          display: block;
          width: 100%;
          height: 100%;
          top: 0;
          background: url(../img/footer_contact_backimg.png) no-repeat center center;
          background-size: cover;
          -webkit-transition: all .3s ease-out;
          -moz-transition: all .3s ease-out;
          -ms-transition: all .3s ease-out;
          transition: all .3s ease-out; }
        .footer__cta__contact a:hover::after {
          -moz-transform: scale(1.1);
          -webkit-transform: scale(1.1);
          -ms-transform: scale(1.1);
          transform: scale(1.1); }
      .footer__cta__line {
        position: relative;
        width: 49.5%;
        height: 450px; }
        .footer__cta__line a, .footer__cta__line a:link a:visited {
          position: relative;
          width: 100%;
          height: 450px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          color: #fff;
          background-color: #00B900;
          border-radius: 4px;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          overflow: hidden; }
          .footer__cta__line a .footer__cta__line__detail, .footer__cta__line a:link a:visited .footer__cta__line__detail {
            position: relative;
            width: 100%;
            z-index: 5; }
            .footer__cta__line a .footer__cta__line__detail h2, .footer__cta__line a:link a:visited .footer__cta__line__detail h2 {
              text-align: center;
              font-size: 3rem;
              font-weight: 700; }
            .footer__cta__line a .footer__cta__line__detail h6, .footer__cta__line a:link a:visited .footer__cta__line__detail h6 {
              text-align: center;
              font-family: "Inter", sans-serif;
              font-size: 1.5rem;
              font-weight: 600;
              line-height: 1.0;
              padding-bottom: 8px; }
            .footer__cta__line a .footer__cta__line__detail p, .footer__cta__line a:link a:visited .footer__cta__line__detail p {
              text-align: center;
              font-size: 1.5rem;
              line-height: 1.8;
              margin: 20px auto 0; }
          .footer__cta__line a .window, .footer__cta__line a:link a:visited .window {
            overflow: hidden;
            position: absolute;
            bottom: 30px;
            right: 30px;
            width: 60px;
            height: 60px;
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.6);
            z-index: 15;
            transition: all .3s; }
          .footer__cta__line a .window:after, .footer__cta__line a:link a:visited .window:after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            width: 58px;
            height: 58px;
            background: url(../img/window_icon_wh.svg) no-repeat center center;
            background-size: 14px; }
        .footer__cta__line a:hover {
          color: #fff;
          background-color: #00ab00; }
        .footer__cta__line a:hover .window {
          border: 1px solid #fff; }
        .footer__cta__line a::after {
          position: absolute;
          content: "";
          display: block;
          width: 100%;
          height: 100%;
          top: 0;
          background: url(../img/footer_line_backimg.png) no-repeat center center;
          background-size: cover;
          -webkit-transition: all .3s ease-out;
          -moz-transition: all .3s ease-out;
          -ms-transition: all .3s ease-out;
          transition: all .3s ease-out; }
        .footer__cta__line a:hover::after {
          -moz-transform: scale(1.1);
          -webkit-transform: scale(1.1);
          -ms-transform: scale(1.1);
          transform: scale(1.1); }
    .footer__detail {
      position: relative;
      width: 96%;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin: 0 0 350px 4%;
      padding-top: 100px; }
      .footer__detail__left {
        position: relative;
        width: 400px; }
        .footer__detail__left__desc {
          position: relative;
          width: 100%; }
          .footer__detail__left__desc h3 {
            font-size: 1.8rem;
            font-weight: 700;
            margin-bottom: 20px; }
          .footer__detail__left__desc dl {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            align-items: center;
            border-top: 1px solid #ddd;
            padding: 20px 2px; }
            .footer__detail__left__desc dl dt {
              width: 90px;
              font-size: 1.2rem; }
            .footer__detail__left__desc dl dd {
              flex: 1;
              font-size: 1.3rem; }
          .footer__detail__left__desc dl:last-of-type {
            border-bottom: 1px solid #ddd; }
      .footer__detail__right {
        position: relative;
        flex: 1; }
        .footer__detail__right__nav {
          width: 100%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          justify-content: flex-end; }
          .footer__detail__right__nav__list {
            position: relative;
            width: 225px; }
            .footer__detail__right__nav__list h3 {
              font-size: 1.4rem;
              font-weight: 700;
              margin-bottom: 15px; }
            .footer__detail__right__nav__list h4 {
              color: #111;
              font-size: 1.4rem;
              font-weight: 700;
              margin-top: 30px;
              margin-bottom: 15px; }
            .footer__detail__right__nav__list ul.footer_nav_style01 {
              position: relative;
              width: 100%; }
              .footer__detail__right__nav__list ul.footer_nav_style01 li {
                line-height: 1.4;
                font-size: 1.3rem;
                background: url(../img/list_mk.svg) no-repeat 2px 8px;
                background-size: 5px;
                padding-left: 13px; }
                .footer__detail__right__nav__list ul.footer_nav_style01 li a, .footer__detail__right__nav__list ul.footer_nav_style01 li a:link a:visited {
                  position: relative;
                  color: #111; }
                .footer__detail__right__nav__list ul.footer_nav_style01 li a::after {
                  position: absolute;
                  bottom: -2px;
                  left: 0;
                  content: '';
                  width: 100%;
                  height: 1px;
                  background: #69A6BD;
                  transform: scale(0, 1);
                  transform-origin: right top;
                  transition: transform .3s; }
                .footer__detail__right__nav__list ul.footer_nav_style01 li a:hover {
                  color: #69A6BD; }
                .footer__detail__right__nav__list ul.footer_nav_style01 li a:hover::after {
                  transform-origin: left top;
                  transform: scale(1, 1); }
              .footer__detail__right__nav__list ul.footer_nav_style01 li:nth-child(n + 2) {
                margin-top: 12px; }
            .footer__detail__right__nav__list ul.footer_nav_style02 {
              position: relative;
              width: 100%;
              margin-top: 25px;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              -moz-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              padding-left: 13px; }
              .footer__detail__right__nav__list ul.footer_nav_style02 li {
                width: 28px;
                margin-right: 15px; }
                .footer__detail__right__nav__list ul.footer_nav_style02 li img {
                  width: 100%; }
    .footer__copy {
      width: 92%;
      margin: 0 auto; }
      .footer__copy p {
        text-align: right;
        font-family: "Inter", sans-serif;
        font-size: 1rem;
        line-height: 1.0;
        letter-spacing: 0.05em; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .footer {
    position: relative;
    margin-top: 220px;
    background: url(../img/kishihiro_wh.svg) no-repeat center bottom 70px;
    background-size: 101%;
    background-color: #f5f5f5;
    padding-bottom: 30px; }
    .footer__cta {
      position: relative;
      width: 98%;
      height: 400px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      justify-content: space-between;
      margin: 0 auto;
      z-index: 3; }
      .footer__cta__contact {
        position: relative;
        width: 49.5%;
        height: 400px; }
        .footer__cta__contact a, .footer__cta__contact a:link a:visited {
          position: relative;
          width: 100%;
          height: 400px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          color: #fff;
          background-color: #69A6BD;
          border-radius: 4px;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          overflow: hidden; }
          .footer__cta__contact a .footer__cta__contact__detail, .footer__cta__contact a:link a:visited .footer__cta__contact__detail {
            position: relative;
            width: 100%;
            z-index: 5; }
            .footer__cta__contact a .footer__cta__contact__detail h2, .footer__cta__contact a:link a:visited .footer__cta__contact__detail h2 {
              text-align: center;
              font-size: 2.4rem;
              font-weight: 700; }
            .footer__cta__contact a .footer__cta__contact__detail h6, .footer__cta__contact a:link a:visited .footer__cta__contact__detail h6 {
              text-align: center;
              font-family: "Inter", sans-serif;
              font-size: 1.3rem;
              font-weight: 600;
              line-height: 1.0;
              padding-bottom: 8px; }
            .footer__cta__contact a .footer__cta__contact__detail p, .footer__cta__contact a:link a:visited .footer__cta__contact__detail p {
              width: 80%;
              font-size: 1.3rem;
              line-height: 1.8;
              margin: 20px auto 0; }
              .footer__cta__contact a .footer__cta__contact__detail p br, .footer__cta__contact a:link a:visited .footer__cta__contact__detail p br {
                display: none; }
          .footer__cta__contact a .arrow02, .footer__cta__contact a:link a:visited .arrow02 {
            overflow: hidden;
            position: absolute;
            bottom: 20px;
            right: 20px;
            width: 56px;
            height: 56px;
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.6);
            z-index: 15;
            transition: all .3s; }
          .footer__cta__contact a .arrow02:before,
          .footer__cta__contact a .arrow02:after, .footer__cta__contact a:link a:visited .arrow02:before,
          .footer__cta__contact a:link a:visited .arrow02:after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            width: 54px;
            height: 54px;
            background: url(../img/arrow_wh.svg) no-repeat center center;
            background-size: 12px;
            animation-fill-mode: forwards;
            animation-duration: 0.3s; }
          .footer__cta__contact a .arrow02:after, .footer__cta__contact a:link a:visited .arrow02:after {
            transform: translateX(-100%); }
        .footer__cta__contact a:hover {
          color: #fff;
          background-color: #5699B2; }
        .footer__cta__contact a:hover .arrow02 {
          border: 1px solid #fff; }
        .footer__cta__contact a:hover .arrow02:before {
          animation-name: transformRightLeft;
          /* 修正: hover時のアニメーションを指定 */
          animation-delay: 0s; }
        .footer__cta__contact a:hover .arrow02:after {
          animation-name: transformLeftRight;
          /* 修正: hover時のアニメーションを指定 */
          animation-delay: 0.2s; }
        .footer__cta__contact a::after {
          position: absolute;
          content: "";
          display: block;
          width: 100%;
          height: 100%;
          top: 0;
          background: url(../img/footer_contact_backimg.png) no-repeat center center;
          background-size: cover;
          -webkit-transition: all .3s ease-out;
          -moz-transition: all .3s ease-out;
          -ms-transition: all .3s ease-out;
          transition: all .3s ease-out; }
        .footer__cta__contact a:hover::after {
          -moz-transform: scale(1.1);
          -webkit-transform: scale(1.1);
          -ms-transform: scale(1.1);
          transform: scale(1.1); }
      .footer__cta__line {
        position: relative;
        width: 49.5%;
        height: 400px; }
        .footer__cta__line a, .footer__cta__line a:link a:visited {
          position: relative;
          width: 100%;
          height: 400px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          color: #fff;
          background-color: #00B900;
          border-radius: 4px;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          overflow: hidden; }
          .footer__cta__line a .footer__cta__line__detail, .footer__cta__line a:link a:visited .footer__cta__line__detail {
            position: relative;
            width: 100%;
            z-index: 5; }
            .footer__cta__line a .footer__cta__line__detail h2, .footer__cta__line a:link a:visited .footer__cta__line__detail h2 {
              text-align: center;
              font-size: 2.4rem;
              font-weight: 700; }
            .footer__cta__line a .footer__cta__line__detail h6, .footer__cta__line a:link a:visited .footer__cta__line__detail h6 {
              text-align: center;
              font-family: "Inter", sans-serif;
              font-size: 1.3rem;
              font-weight: 600;
              line-height: 1.0;
              padding-bottom: 8px; }
            .footer__cta__line a .footer__cta__line__detail p, .footer__cta__line a:link a:visited .footer__cta__line__detail p {
              width: 80%;
              font-size: 1.3rem;
              line-height: 1.8;
              margin: 20px auto 0; }
              .footer__cta__line a .footer__cta__line__detail p br, .footer__cta__line a:link a:visited .footer__cta__line__detail p br {
                display: none; }
          .footer__cta__line a .window, .footer__cta__line a:link a:visited .window {
            overflow: hidden;
            position: absolute;
            bottom: 20px;
            right: 20px;
            width: 56px;
            height: 56px;
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.6);
            z-index: 15;
            transition: all .3s; }
          .footer__cta__line a .window:after, .footer__cta__line a:link a:visited .window:after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            width: 54px;
            height: 54px;
            background: url(../img/window_icon_wh.svg) no-repeat center center;
            background-size: 14px; }
        .footer__cta__line a:hover {
          color: #fff;
          background-color: #00ab00; }
        .footer__cta__line a:hover .window {
          border: 1px solid #fff; }
        .footer__cta__line a::after {
          position: absolute;
          content: "";
          display: block;
          width: 100%;
          height: 100%;
          top: 0;
          background: url(../img/footer_line_backimg.png) no-repeat center center;
          background-size: cover;
          -webkit-transition: all .3s ease-out;
          -moz-transition: all .3s ease-out;
          -ms-transition: all .3s ease-out;
          transition: all .3s ease-out; }
        .footer__cta__line a:hover::after {
          -moz-transform: scale(1.1);
          -webkit-transform: scale(1.1);
          -ms-transform: scale(1.1);
          transform: scale(1.1); }
    .footer__detail {
      position: relative;
      width: 92%;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      justify-content: space-between;
      margin: 0 auto 260px;
      padding-top: 80px; }
      .footer__detail__left {
        position: relative;
        width: 46%; }
        .footer__detail__left__desc {
          position: relative;
          width: 100%; }
          .footer__detail__left__desc h3 {
            font-size: 1.6rem;
            font-weight: 700;
            margin-bottom: 20px; }
          .footer__detail__left__desc dl {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            align-items: center;
            border-top: 1px solid #ddd;
            padding: 18px 2px; }
            .footer__detail__left__desc dl dt {
              width: 70px;
              font-size: 1.1rem; }
            .footer__detail__left__desc dl dd {
              flex: 1;
              font-size: 1.2rem; }
          .footer__detail__left__desc dl:last-of-type {
            border-bottom: 1px solid #ddd; }
      .footer__detail__right {
        position: relative;
        width: 50%; }
        .footer__detail__right__nav {
          width: 100%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
          .footer__detail__right__nav__list {
            position: relative;
            width: 50%; }
            .footer__detail__right__nav__list h3 {
              font-size: 1.4rem;
              font-weight: 700;
              margin-bottom: 15px; }
            .footer__detail__right__nav__list h4 {
              color: #111;
              font-size: 1.4rem;
              font-weight: 700;
              margin-top: 25px;
              margin-bottom: 15px; }
            .footer__detail__right__nav__list ul.footer_nav_style01 {
              position: relative;
              width: 100%; }
              .footer__detail__right__nav__list ul.footer_nav_style01 li {
                line-height: 1.4;
                font-size: 1.2rem;
                background: url(../img/list_mk.svg) no-repeat 2px 8px;
                background-size: 5px;
                padding-left: 13px; }
                .footer__detail__right__nav__list ul.footer_nav_style01 li a, .footer__detail__right__nav__list ul.footer_nav_style01 li a:link a:visited {
                  position: relative;
                  color: #111; }
                .footer__detail__right__nav__list ul.footer_nav_style01 li a::after {
                  position: absolute;
                  bottom: -2px;
                  left: 0;
                  content: '';
                  width: 100%;
                  height: 1px;
                  background: #69A6BD;
                  transform: scale(0, 1);
                  transform-origin: right top;
                  transition: transform .3s; }
                .footer__detail__right__nav__list ul.footer_nav_style01 li a:hover {
                  color: #69A6BD; }
                .footer__detail__right__nav__list ul.footer_nav_style01 li a:hover::after {
                  transform-origin: left top;
                  transform: scale(1, 1); }
              .footer__detail__right__nav__list ul.footer_nav_style01 li:nth-child(n + 2) {
                margin-top: 10px; }
            .footer__detail__right__nav__list ul.footer_nav_style02 {
              position: relative;
              width: 100%;
              margin-top: 20px;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              -moz-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              padding-left: 13px; }
              .footer__detail__right__nav__list ul.footer_nav_style02 li {
                width: 24px;
                margin-right: 12px; }
                .footer__detail__right__nav__list ul.footer_nav_style02 li img {
                  width: 100%; }
          .footer__detail__right__nav__list:nth-child(2) {
            padding-left: 15px; }
    .footer__copy {
      width: 92%;
      margin: 0 auto; }
      .footer__copy p {
        text-align: right;
        font-family: "Inter", sans-serif;
        font-size: 1rem;
        line-height: 1.0;
        letter-spacing: 0.05em; } }
@media screen and (max-width: 767px) {
  .footer {
    position: relative;
    width: 100%;
    margin-top: 160px;
    background: url(../img/kishihiro_wh.svg) no-repeat center bottom 70px;
    background-size: 101%;
    background-color: #f5f5f5;
    padding-bottom: 30px; }
    .footer__cta {
      position: relative;
      width: 94%;
      margin: 0 auto;
      z-index: 3; }
      .footer__cta__contact {
        position: relative;
        width: 100%;
        height: 300px; }
        .footer__cta__contact a {
          position: relative;
          width: 100%;
          height: 300px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          color: #fff;
          background: url(../img/footer_contact_backimg.png) no-repeat center center;
          background-size: cover;
          background-color: #69A6BD;
          border-radius: 4px;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px; }
          .footer__cta__contact a .footer__cta__contact__detail {
            width: 100%; }
            .footer__cta__contact a .footer__cta__contact__detail h2 {
              text-align: center;
              font-size: 2.2rem;
              font-weight: 600; }
            .footer__cta__contact a .footer__cta__contact__detail h6 {
              text-align: center;
              font-family: "Inter", sans-serif;
              font-size: 1.2rem;
              font-weight: 500;
              line-height: 1.0;
              padding-bottom: 5px; }
            .footer__cta__contact a .footer__cta__contact__detail p {
              width: 80%;
              text-align: justify;
              font-size: 1.4rem;
              line-height: 1.8;
              margin: 15px auto 0; }
          .footer__cta__contact a .arrow02 {
            overflow: hidden;
            position: absolute;
            bottom: 15px;
            right: 15px;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border: 1px solid #fff;
            z-index: 15; }
          .footer__cta__contact a .arrow02:after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            width: 38px;
            height: 38px;
            background: url(../img/arrow_wh.svg) no-repeat center center;
            background-size: 10px; }
        .footer__cta__contact a:hover {
          color: #fff; }
      .footer__cta__line {
        position: relative;
        width: 100%;
        height: 300px;
        margin-top: 10px; }
        .footer__cta__line a {
          position: relative;
          width: 100%;
          height: 300px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          color: #fff;
          background: url(../img/footer_line_backimg.png) no-repeat center center;
          background-size: cover;
          background-color: #00B900;
          border-radius: 4px;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px; }
          .footer__cta__line a .footer__cta__line__detail {
            width: 100%; }
            .footer__cta__line a .footer__cta__line__detail h2 {
              text-align: center;
              font-size: 2.2rem;
              font-weight: 600; }
            .footer__cta__line a .footer__cta__line__detail h6 {
              text-align: center;
              font-family: "Inter", sans-serif;
              font-size: 1.2rem;
              font-weight: 500;
              line-height: 1.0;
              padding-bottom: 5px; }
            .footer__cta__line a .footer__cta__line__detail p {
              width: 80%;
              text-align: justify;
              font-size: 1.4rem;
              line-height: 1.8;
              margin: 15px auto 0; }
          .footer__cta__line a .window {
            overflow: hidden;
            position: absolute;
            bottom: 15px;
            right: 15px;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border: 1px solid #fff;
            z-index: 15; }
          .footer__cta__line a .window:after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            width: 38px;
            height: 38px;
            background: url(../img/window_icon_wh.svg) no-repeat center center;
            background-size: 12px; }
        .footer__cta__line a:hover {
          color: #fff; }
    .footer__detail {
      position: relative;
      width: 90%;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin: 0 auto 180px;
      padding-top: 80px; }
      .footer__detail__left {
        position: relative;
        width: 100%; }
        .footer__detail__left__desc {
          position: relative;
          width: 100%; }
          .footer__detail__left__desc h3 {
            text-align: center;
            font-size: 1.6rem;
            font-weight: 700;
            margin-bottom: 20px; }
          .footer__detail__left__desc dl {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            align-items: center;
            border-top: 1px solid #ddd;
            padding: 16px 0; }
            .footer__detail__left__desc dl dt {
              width: 80px;
              font-size: 1.2rem;
              padding-left: 3px; }
            .footer__detail__left__desc dl dd {
              flex: 1;
              font-size: 1.2rem; }
          .footer__detail__left__desc dl:last-of-type {
            border-bottom: 1px solid #ddd; }
      .footer__detail__right {
        position: relative;
        width: 100%; }
        .footer__detail__right__nav {
          width: 100%; }
          .footer__detail__right__nav__list {
            position: relative;
            width: 100%; }
            .footer__detail__right__nav__list h3 {
              display: none; }
            .footer__detail__right__nav__list h4 {
              display: none; }
            .footer__detail__right__nav__list ul.footer_nav_style01 {
              display: none; }
            .footer__detail__right__nav__list ul.footer_nav_style02 {
              position: relative;
              width: 100%;
              margin-top: 35px;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              -moz-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              justify-content: center; }
              .footer__detail__right__nav__list ul.footer_nav_style02 li {
                width: 28px;
                margin: 0 10px; }
                .footer__detail__right__nav__list ul.footer_nav_style02 li img {
                  width: 100%; }
    .footer__copy {
      width: 100%; }
      .footer__copy p {
        text-align: center;
        font-family: "Inter", sans-serif;
        font-size: 1rem;
        line-height: 1.0;
        letter-spacing: 0.05em; } }

@media screen and (min-width: 1024px) {
  .footer::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 350px;
    background-color: #fff;
    top: 0;
    left: 0; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .footer::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 340px;
    background-color: #fff;
    top: 0;
    left: 0; } }
@media screen and (max-width: 767px) {
  .footer::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 560px;
    background-color: #fff;
    top: 0;
    left: 0; } }

/* ###### title_sp ##### */
@media screen and (min-width: 1024px) {
  .title_sp {
    position: relative;
    width: 100%;
    padding-bottom: 40px; }
    .title_sp h2 {
      color: #111;
      font-weight: 600;
      font-size: 4rem;
      line-height: 1.2; }
    .title_sp h6 {
      font-family: "Inter", sans-serif;
      color: #69A6BD;
      font-weight: 500;
      line-height: 1.0;
      font-size: 1.5rem;
      background: url(../img/square_icon_bl.svg) no-repeat 0px 4px;
      background-size: 8px;
      padding: 0 0 8px 14px; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .title_sp {
    position: relative;
    width: 100%;
    padding-bottom: 35px; }
    .title_sp h2 {
      color: #111;
      font-weight: 600;
      font-size: 3rem;
      line-height: 1.2; }
    .title_sp h6 {
      font-family: "Inter", sans-serif;
      color: #69A6BD;
      font-weight: 500;
      line-height: 1.0;
      font-size: 1.3rem;
      background: url(../img/square_icon_bl.svg) no-repeat 0px 3px;
      background-size: 7px;
      padding: 0 0 8px 13px; } }
@media screen and (max-width: 767px) {
  .title_sp {
    position: relative;
    width: 100%;
    padding-bottom: 30px; }
    .title_sp h2 {
      color: #111;
      font-weight: 600;
      font-size: 2.4rem;
      line-height: 1.2; }
    .title_sp h6 {
      font-family: "Inter", sans-serif;
      color: #69A6BD;
      font-weight: 500;
      font-size: 1.2rem;
      line-height: 1.2;
      background: url(../img/square_icon_bl.svg) no-repeat 2px 4px;
      background-size: 6px;
      padding: 0 0 5px 13px; } }

/* ###### title_sp ##### */
/* ###### title_sp02 ##### */
@media screen and (min-width: 1024px) {
  .title_sp02 {
    text-align: center;
    position: relative;
    width: 100%;
    padding-bottom: 45px; }
    .title_sp02 h2 {
      color: #111;
      font-weight: 800;
      font-size: 2.4rem;
      line-height: 1.2; }
    .title_sp02 p {
      color: #69A6BD;
      font-weight: 600;
      font-size: 1.5rem;
      padding-bottom: 10px; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .title_sp02 {
    text-align: center;
    position: relative;
    width: 100%;
    padding-bottom: 40px; }
    .title_sp02 h2 {
      color: #111;
      font-weight: 800;
      font-size: 2.4rem;
      line-height: 1.2; }
    .title_sp02 p {
      color: #69A6BD;
      font-weight: 600;
      font-size: 1.4rem;
      padding-bottom: 8px; } }
@media screen and (max-width: 767px) {
  .title_sp02 {
    position: relative;
    width: 86%;
    margin: 0 auto;
    padding-bottom: 30px; }
    .title_sp02 h2 {
      color: #111;
      font-weight: 800;
      font-size: 2.2rem;
      line-height: 1.2; }
    .title_sp02 p {
      color: #69A6BD;
      font-weight: 600;
      font-size: 1.2rem;
      line-height: 1.2;
      letter-spacing: 0.1em;
      padding-bottom: 6px; } }

/* ###### title_sp02 ##### */
/* ###### side_title_sp ##### */
@media screen and (min-width: 1024px) {
  .side_title_sp {
    text-align: center;
    position: relative;
    width: 100%; }
    .side_title_sp h2 {
      color: #111;
      font-weight: 500;
      font-size: 1.8rem;
      letter-spacing: 0.075em;
      line-height: 1.0; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .side_title_sp {
    text-align: center;
    position: relative;
    width: 100%; }
    .side_title_sp h2 {
      color: #111;
      font-weight: 500;
      font-size: 2rem;
      line-height: 1.0;
      letter-spacing: 0.075em; } }
@media screen and (max-width: 767px) {
  .side_title_sp {
    text-align: center;
    position: relative;
    width: 100%; }
    .side_title_sp h2 {
      color: #111;
      font-weight: 500;
      font-size: 1.8rem;
      letter-spacing: 0.075em;
      line-height: 1.0; } }

/* ###### side_title_sp ##### */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  border: 0;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

@media screen and (min-width: 1024px) {
  html, body {
    font-size: 62.5%;
    overflow: visible; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  html, body {
    font-size: 62.5%;
    overflow: visible; } }
@media screen and (max-width: 767px) {
  html, body {
    font-size: 62.5%;
    overflow: visible;
    overflow-x: hidden; } }

body {
  height: 100%;
  color: #545454;
  background-color: #fff;
  font-family: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 10px;
  font-size: 1.0rem;
  font-feature-settings: "palt";
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%; }

@media screen and (min-width: 1024px) {
  ol, ul {
    list-style: none;
    font-weight: 400;
    letter-spacing: 0.05em; }

  h1 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h2 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h3 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h4 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h5 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h6 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  p {
    font-weight: 400;
    letter-spacing: 0.05em; }

  dl {
    font-weight: 400;
    letter-spacing: 0.05em; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  ol, ul {
    list-style: none;
    font-weight: 400;
    letter-spacing: 0.05em; }

  h1 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h2 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h3 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h4 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h5 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  h6 {
    font-weight: 400;
    letter-spacing: 0.05em; }

  p {
    font-weight: 400;
    letter-spacing: 0.05em; }

  dl {
    font-weight: 400;
    letter-spacing: 0.05em; } }
@media screen and (max-width: 767px) {
  ol, ul {
    list-style: none;
    font-weight: 500;
    letter-spacing: 0.05em; }

  h1 {
    font-weight: 500;
    letter-spacing: 0.05em; }

  h2 {
    font-weight: 500;
    letter-spacing: 0.05em; }

  h3 {
    font-weight: 500;
    letter-spacing: 0.05em; }

  h4 {
    font-weight: 500;
    letter-spacing: 0.05em; }

  h5 {
    font-weight: 500;
    letter-spacing: 0.05em; }

  h6 {
    font-weight: 500;
    letter-spacing: 0.05em; }

  p {
    font-weight: 500;
    letter-spacing: 0.05em; }

  dl {
    font-weight: 500;
    letter-spacing: 0.05em; } }
caption, th, td {
  font-weight: normal;
  text-align: left;
  vertical-align: top; }

img {
  max-width: 100%;
  height: auto;
  width: auto;
  border: 0;
  vertical-align: bottom; }

a, a:link a:visited {
  color: #111;
  transition: all .3s;
  text-decoration: none; }

a:hover {
  color: #69A6BD;
  text-decoration: none; }

a.imghover:link img {
  transition: all .3s; }

a.imghover:hover img {
  filter: alpha(opacity=80);
  opacity: 0.8; }

.imghover {
  transition: all .3s; }

.imghover:hover {
  filter: alpha(opacity=80);
  opacity: 0.8; }

input:-internal-autofill-selected {
  background-color: #fff; }

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(0); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-delay: 0.8s;
  opacity: 0; }

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(20px); }
  to {
    opacity: 1;
    transform: translateY(0); } }
@keyframes transformLeftRight {
  0% {
    transform: translateX(-100%); }
  100% {
    transform: translateX(0); } }
@keyframes transformRightLeft {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(100%); } }
@keyframes pathmove {
  0% {
    height: 0;
    top: 0;
    opacity: 0; }
  30% {
    height: 30px;
    opacity: 1; }
  100% {
    height: 0;
    top: 50px;
    opacity: 0; } }
/* ########## container ########## */
@media screen and (min-width: 1024px) {
  .container {
    position: relative;
    width: 100%;
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
    -moz-animation: fadeIn 2s ease 0s 1 normal;
    -o-animation: fadeIn 2s ease 0s 1 normal; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .container {
    position: relative;
    width: 100%;
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
    -moz-animation: fadeIn 2s ease 0s 1 normal;
    -o-animation: fadeIn 2s ease 0s 1 normal; } }
@media screen and (max-width: 767px) {
  .container {
    position: relative;
    width: 100%;
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
    -moz-animation: fadeIn 2s ease 0s 1 normal;
    -o-animation: fadeIn 2s ease 0s 1 normal; } }

/* ########## container ########## */
/* ########## index_contents ########## */
@media screen and (min-width: 1024px) {
  .index_contents {
    position: relative;
    width: 100%;
    background-color: #fff;
    margin: 0 auto; }
    .index_contents__main {
      position: relative;
      width: 100%;
      height: 100vh;
      background: url(../../img/index_img/index_main_backimg.png) no-repeat 100% 100%;
      background-size: cover;
      background-color: #f5f5f5; }
      .index_contents__main__catch {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 300px;
        transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        z-index: 5; }
        .index_contents__main__catch p {
          position: relative;
          width: 100%; }
          .index_contents__main__catch p img {
            width: 100%; }
      .index_contents__main__news {
        position: absolute;
        left: 45px;
        bottom: 45px;
        width: 55%;
        height: 60px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        background: url(../img/arrow_bl.svg) no-repeat right 15px center;
        background-size: 12px;
        background-color: #fff;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.05);
        z-index: 5; }
        .index_contents__main__news__left {
          width: 100px;
          height: 60px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          background-color: #69A6BD;
          border-radius: 4px 0 0 4px;
          -webkit-border-radius: 4px 0 0 4px;
          -moz-border-radius: 4px 0 0 4px; }
          .index_contents__main__news__left p {
            color: #fff;
            font-size: 1.2rem;
            font-weight: 500; }
        .index_contents__main__news__right {
          flex: 1;
          height: 60px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          padding-left: 25px;
          padding-right: 40px; }
          .index_contents__main__news__right dl {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            align-items: center; }
            .index_contents__main__news__right dl dt {
              width: 65px;
              font-size: 1.2rem;
              border-right: 1px solid #E5E5E5; }
            .index_contents__main__news__right dl dd {
              position: relative;
              flex: 1;
              font-weight: 600;
              font-size: 1.3rem;
              padding-left: 15px; }
              .index_contents__main__news__right dl dd a, .index_contents__main__news__right dl dd a:link a:visited {
                position: relative;
                color: #111; }
              .index_contents__main__news__right dl dd a::after {
                position: absolute;
                bottom: -2px;
                left: 0;
                content: '';
                width: 100%;
                height: 1px;
                background: #69A6BD;
                transform: scale(0, 1);
                transform-origin: right top;
                transition: transform .3s; }
              .index_contents__main__news__right dl dd a:hover {
                color: #69A6BD; }
              .index_contents__main__news__right dl dd a:hover::after {
                transform-origin: left top;
                transform: scale(1, 1); }
    .index_contents__main::after {
      content: '';
      position: absolute;
      width: 100%;
      height: 100vh;
      top: 0;
      left: 0;
      background-color: rgba(0, 0, 0, 0.2); }
    .index_contents__detail {
      position: relative;
      width: 100%;
      padding-top: 120px;
      background-color: #fff; }
      .index_contents__detail__bn {
        position: relative;
        width: 92%;
        margin: 0 auto;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between;
        gap: 0 40px; }
        .index_contents__detail__bn__list {
          width: 50%; }
          .index_contents__detail__bn__list p {
            width: 100%; }
            .index_contents__detail__bn__list p img {
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px; }
      .index_contents__detail__news {
        position: relative;
        width: 92%;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        margin: 100px auto 0; }
        .index_contents__detail__news__title {
          position: relative;
          width: 400px; }
        .index_contents__detail__news__right {
          position: relative;
          flex: 1; }
          .index_contents__detail__news__right h4.btn_style03 {
            position: absolute;
            top: 0;
            right: 0;
            z-index: 10; }
          .index_contents__detail__news__right__list {
            position: relative;
            width: 100%;
            border-top: 1px solid #E5E5E5;
            margin-top: 80px; }
            .index_contents__detail__news__right__list__sp {
              position: relative;
              width: 100%;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              align-items: center;
              padding: 25px 0;
              border-bottom: 1px solid #E5E5E5; }
              .index_contents__detail__news__right__list__sp__img {
                position: relative;
                width: 180px;
                height: 120px;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px;
                overflow: hidden; }
                .index_contents__detail__news__right__list__sp__img img {
                  width: 100%;
                  height: 120px;
                  object-fit: cover;
                  -webkit-transition: .3s ease-in-out;
                  transition: .3s ease-in-out; }
                .index_contents__detail__news__right__list__sp__img .caption {
                  text-align: center;
                  position: absolute;
                  width: 100%;
                  top: 50%;
                  left: 50%;
                  transform: translateY(-50%) translateX(-50%);
                  -webkit-transform: translateY(-50%) translateX(-50%);
                  font-size: 1.1rem;
                  font-weight: 500;
                  color: #fff;
                  letter-spacing: 0.05em; }
                .index_contents__detail__news__right__list__sp__img .mask {
                  width: 100%;
                  height: 100%;
                  position: absolute;
                  top: 0;
                  left: 0;
                  opacity: 0;
                  background-color: rgba(0, 0, 0, 0.2);
                  -webkit-transition: all 0.6s ease;
                  -moz-transition: all 0.6s ease;
                  -o-transition: all 0.6s ease;
                  transition: all 0.6s ease; }
              .index_contents__detail__news__right__list__sp__img:hover img {
                transform: scale(1.1); }
              .index_contents__detail__news__right__list__sp__img:hover .mask {
                opacity: 1;
                /* マスクを表示する */ }
              .index_contents__detail__news__right__list__sp__desc {
                position: relative;
                flex: 1;
                padding-left: 20px; }
                .index_contents__detail__news__right__list__sp__desc h3 {
                  font-size: 1.8rem;
                  line-height: 1.7;
                  font-weight: 600; }
                .index_contents__detail__news__right__list__sp__desc__option {
                  width: 100%;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  align-items: center;
                  justify-content: space-between;
                  margin-top: 20px; }
                  .index_contents__detail__news__right__list__sp__desc__option li.cat_style {
                    position: relative;
                    font-size: 1.1rem;
                    line-height: 1.0;
                    font-weight: 500;
                    padding-left: 10px;
                    background: url(../img/circle_icon_bl.svg) no-repeat 0 4px;
                    background-size: 5px; }
                    .index_contents__detail__news__right__list__sp__desc__option li.cat_style a, .index_contents__detail__news__right__list__sp__desc__option li.cat_style a:link a:visited {
                      position: relative;
                      color: #111; }
                    .index_contents__detail__news__right__list__sp__desc__option li.cat_style a::after {
                      position: absolute;
                      bottom: -2px;
                      left: 0;
                      content: '';
                      width: 100%;
                      height: 1px;
                      background: #69A6BD;
                      transform: scale(0, 1);
                      transform-origin: right top;
                      transition: transform .3s; }
                    .index_contents__detail__news__right__list__sp__desc__option li.cat_style a:hover {
                      color: #69A6BD; }
                    .index_contents__detail__news__right__list__sp__desc__option li.cat_style a:hover::after {
                      transform-origin: left top;
                      transform: scale(1, 1); }
                  .index_contents__detail__news__right__list__sp__desc__option li.time_style {
                    font-size: 1rem; }
                    .index_contents__detail__news__right__list__sp__desc__option li.time_style img {
                      width: 17px;
                      padding-right: 5px; }
            .index_contents__detail__news__right__list__none {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              background-color: #f5f5f5;
              padding: 45px 45px;
              margin-top: 30px; }
              .index_contents__detail__news__right__list__none p {
                text-align: center;
                font-size: 1.5rem; }
      .index_contents__detail__about {
        position: relative;
        width: 100%;
        margin-top: 140px;
        padding: 80px 0;
        overflow: hidden; }
        .index_contents__detail__about__desc {
          position: relative;
          width: 100%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          flex-direction: row-reverse;
          z-index: 3; }
          .index_contents__detail__about__desc__img {
            position: relative;
            width: 50%; }
            .index_contents__detail__about__desc__img p {
              width: 100%; }
              .index_contents__detail__about__desc__img p img {
                width: 100%;
                border-radius: 4px 0 0 4px;
                -webkit-border-radius: 4px 0 0 4px;
                -moz-border-radius: 4px 0 0 4px; }
          .index_contents__detail__about__desc__txt {
            position: relative;
            width: 50%;
            padding: 0 45px 0 4%; }
            .index_contents__detail__about__desc__txt h2 {
              color: #fff;
              font-size: 3rem;
              font-weight: 600; }
            .index_contents__detail__about__desc__txt p {
              color: #fff;
              font-size: 1.5rem;
              line-height: 2.0;
              margin-top: 35px; }
      .index_contents__detail__about::before {
        content: '';
        position: absolute;
        width: 75%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: #69A6BD;
        border-radius: 0 4px 4px 0;
        -webkit-border-radius: 0 4px 4px 0;
        -moz-border-radius: 0 4px 4px 0; }
      .index_contents__detail__about::after {
        content: 'About';
        position: absolute;
        bottom: -25px;
        left: 4%;
        color: #5699B2;
        font-family: "Inter", sans-serif;
        font-size: 16.0rem;
        font-weight: 600;
        line-height: 1.0;
        letter-spacing: 0.01em; }
      .index_contents__detail__event {
        position: relative;
        width: 92%;
        margin: 140px auto 0; }
        .index_contents__detail__event__title {
          position: relative;
          width: 100%;
          margin: 0 auto; }
          .index_contents__detail__event__title h4.btn_style03 {
            position: absolute;
            bottom: 40px;
            right: 0;
            z-index: 10; }
        .index_contents__detail__event__list {
          position: relative;
          width: 100%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          margin: 0 auto; }
          .index_contents__detail__event__list__sp {
            position: relative;
            width: 31.5%;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            flex-direction: column;
            margin-right: 2.75%; }
            .index_contents__detail__event__list__sp__img {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              overflow: hidden; }
              .index_contents__detail__event__list__sp__img img {
                width: 100%;
                object-fit: cover;
                -webkit-transition: .3s ease-in-out;
                transition: .3s ease-in-out; }
              .index_contents__detail__event__list__sp__img .caption {
                text-align: center;
                position: absolute;
                width: 100%;
                top: 50%;
                left: 50%;
                transform: translateY(-50%) translateX(-50%);
                -webkit-transform: translateY(-50%) translateX(-50%);
                font-size: 1.1rem;
                font-weight: 500;
                color: #fff;
                letter-spacing: 0.05em; }
              .index_contents__detail__event__list__sp__img .mask {
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
                opacity: 0;
                background-color: rgba(0, 0, 0, 0.2);
                -webkit-transition: all 0.6s ease;
                -moz-transition: all 0.6s ease;
                -o-transition: all 0.6s ease;
                transition: all 0.6s ease; }
            .index_contents__detail__event__list__sp__img:hover img {
              transform: scale(1.1); }
            .index_contents__detail__event__list__sp__img:hover .mask {
              opacity: 1;
              /* マスクを表示する */ }
            .index_contents__detail__event__list__sp__desc {
              position: relative;
              width: 100%;
              padding-top: 20px;
              padding-bottom: 30px; }
              .index_contents__detail__event__list__sp__desc h3 {
                font-size: 1.8rem;
                line-height: 1.7;
                font-weight: 600; }
            .index_contents__detail__event__list__sp__option {
              position: relative;
              width: 100%;
              margin-top: auto;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              align-items: center;
              justify-content: space-between;
              border-top: 1px solid #E5E5E5;
              border-bottom: 1px solid #E5E5E5;
              padding: 15px 0; }
              .index_contents__detail__event__list__sp__option li.cat_style {
                position: relative;
                font-size: 1.1rem;
                line-height: 1.0;
                font-weight: 500;
                padding-left: 10px;
                background: url(../img/circle_icon_bl.svg) no-repeat 0 4px;
                background-size: 5px; }
                .index_contents__detail__event__list__sp__option li.cat_style a, .index_contents__detail__event__list__sp__option li.cat_style a:link a:visited {
                  position: relative;
                  color: #111; }
                .index_contents__detail__event__list__sp__option li.cat_style a::after {
                  position: absolute;
                  bottom: -2px;
                  left: 0;
                  content: '';
                  width: 100%;
                  height: 1px;
                  background: #69A6BD;
                  transform: scale(0, 1);
                  transform-origin: right top;
                  transition: transform .3s; }
                .index_contents__detail__event__list__sp__option li.cat_style a:hover {
                  color: #69A6BD; }
                .index_contents__detail__event__list__sp__option li.cat_style a:hover::after {
                  transform-origin: left top;
                  transform: scale(1, 1); }
              .index_contents__detail__event__list__sp__option li.time_style {
                font-size: 1rem; }
                .index_contents__detail__event__list__sp__option li.time_style img {
                  width: 17px;
                  padding-right: 5px; }
          .index_contents__detail__event__list__sp:nth-child(3n) {
            margin-right: 0; }
          .index_contents__detail__event__list__sp:nth-child(4) {
            display: none; }
      .index_contents__detail__business {
        position: relative;
        width: 92%;
        margin: 140px auto 0; }
        .index_contents__detail__business__list {
          position: relative;
          width: 100%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          gap: 0 20px; }
          .index_contents__detail__business__list__sp {
            position: relative;
            width: 50%; }
            .index_contents__detail__business__list__sp a {
              position: relative;
              width: 100%;
              display: block;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              overflow: hidden; }
              .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__num {
                position: absolute;
                left: 0;
                top: 0;
                width: 100%;
                z-index: 10;
                padding: 35px 40px 40px; }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__num p {
                  position: relative;
                  color: #fff;
                  font-size: 6rem;
                  font-family: "Inter", sans-serif;
                  font-weight: 500; }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__num p::after {
                  content: '';
                  position: absolute;
                  width: 15px;
                  height: 1px;
                  background-color: #fff;
                  left: 8px;
                  bottom: -15px; }
              .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__txt {
                position: absolute;
                left: 0;
                bottom: 0;
                width: 100%;
                z-index: 10;
                padding: 40px 40px;
                background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.45)); }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__txt h3 {
                  color: #fff;
                  font-size: 2.4rem;
                  font-weight: 600;
                  text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2); }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__txt p {
                  text-align: justify;
                  color: #fff;
                  font-size: 1.5rem;
                  line-height: 1.8;
                  margin-top: 15px;
                  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2); }
              .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__img {
                position: relative;
                width: 100%; }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__img p {
                  width: 100%; }
                  .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__img p img {
                    width: 100%;
                    object-fit: cover;
                    -webkit-transition: .3s ease-in-out;
                    transition: .3s ease-in-out; }
              .index_contents__detail__business__list__sp a .arrow02 {
                overflow: hidden;
                position: absolute;
                bottom: 30px;
                right: 30px;
                width: 60px;
                height: 60px;
                border-radius: 50%;
                -webkit-border-radius: 50%;
                -moz-border-radius: 50%;
                border: 1px solid rgba(255, 255, 255, 0.6);
                z-index: 15;
                transition: all .3s; }
              .index_contents__detail__business__list__sp a .arrow02:before,
              .index_contents__detail__business__list__sp a .arrow02:after {
                content: "";
                position: absolute;
                top: 0;
                right: 0;
                width: 58px;
                height: 58px;
                background: url(../img/arrow_wh.svg) no-repeat center center;
                background-size: 12px;
                animation-fill-mode: forwards;
                animation-duration: 0.3s; }
              .index_contents__detail__business__list__sp a .arrow02:after {
                transform: translateX(-100%); }
            .index_contents__detail__business__list__sp a:hover .arrow02 {
              border: 1px solid #fff; }
            .index_contents__detail__business__list__sp a:hover .arrow02:before {
              animation-name: transformRightLeft;
              /* 修正: hover時のアニメーションを指定 */
              animation-delay: 0s; }
            .index_contents__detail__business__list__sp a:hover .arrow02:after {
              animation-name: transformLeftRight;
              /* 修正: hover時のアニメーションを指定 */
              animation-delay: 0.2s; }
          .index_contents__detail__business__list__sp > a:hover .index_contents__detail__business__list__sp__img img {
            -webkit-transform: scale(1.07);
            transform: scale(1.07); }
      .index_contents__detail__works {
        position: relative;
        width: 100%;
        margin-top: 140px;
        padding-bottom: 120px; }
        .index_contents__detail__works__title {
          position: relative;
          width: 92%;
          margin: 0 auto; }
          .index_contents__detail__works__title h4.btn_style03 {
            position: absolute;
            bottom: 40px;
            right: 0;
            z-index: 10; }
        .index_contents__detail__works__list {
          position: relative;
          width: 100%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          padding-left: 4%;
          padding-bottom: 60px; }
          .index_contents__detail__works__list__sp {
            position: relative;
            width: 25%; }
            .index_contents__detail__works__list__sp__img {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              overflow: hidden;
              margin-bottom: 20px; }
              .index_contents__detail__works__list__sp__img img {
                width: 100%;
                object-fit: cover;
                -webkit-transition: .3s ease-in-out;
                transition: .3s ease-in-out; }
              .index_contents__detail__works__list__sp__img .caption {
                text-align: center;
                position: absolute;
                width: 100%;
                top: 50%;
                left: 50%;
                transform: translateY(-50%) translateX(-50%);
                -webkit-transform: translateY(-50%) translateX(-50%);
                font-size: 1.1rem;
                font-weight: 500;
                color: #fff;
                letter-spacing: 0.05em; }
              .index_contents__detail__works__list__sp__img .mask {
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
                opacity: 0;
                background-color: rgba(0, 0, 0, 0.2);
                -webkit-transition: all 0.6s ease;
                -moz-transition: all 0.6s ease;
                -o-transition: all 0.6s ease;
                transition: all 0.6s ease; }
            .index_contents__detail__works__list__sp__img:hover img {
              transform: scale(1.1); }
            .index_contents__detail__works__list__sp__img:hover .mask {
              opacity: 1;
              /* マスクを表示する */ }
            .index_contents__detail__works__list__sp__txt {
              position: relative;
              width: 100%;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex; }
              .index_contents__detail__works__list__sp__txt h3 {
                flex: 1;
                font-size: 1.8rem;
                line-height: 1.7;
                font-weight: 600;
                padding-left: 15px; }
              .index_contents__detail__works__list__sp__txt p {
                width: 100px;
                height: 30px;
                color: #111;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                align-items: center;
                background-color: #f5f5f5;
                padding-left: 14px;
                font-size: 1.2rem;
                font-weight: 500;
                border-radius: 15px;
                -webkit-border-radius: 15px;
                -moz-border-radius: 15px; }
                .index_contents__detail__works__list__sp__txt p img {
                  width: 12px;
                  margin-right: 4px; }
          .index_contents__detail__works__list__none {
            position: relative;
            width: 100%;
            padding-right: 4%; }
            .index_contents__detail__works__list__none p {
              text-align: center;
              font-size: 1.5rem;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              background-color: #f5f5f5;
              padding: 45px 45px; }
          .index_contents__detail__works__list .swiper-pagination {
            position: absolute;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            align-items: center;
            bottom: 0px !important;
            right: 4%;
            z-index: 10; }
            .index_contents__detail__works__list .swiper-pagination span {
              display: block;
              width: 14px;
              height: 14px;
              background-color: #f5f5f5;
              margin-left: 15px;
              border-radius: 50%;
              -webkit-border-radius: 50%;
              -moz-border-radius: 50%;
              cursor: pointer; }
            .index_contents__detail__works__list .swiper-pagination .swiper-pagination-bullet-active {
              background-color: #69A6BD; }
      .index_contents__detail__land {
        position: relative;
        width: 100%; }
        .index_contents__detail__land__title {
          position: relative;
          width: 92%;
          margin: 0 auto;
          z-index: 5; }
          .index_contents__detail__land__title h4.btn_style03 {
            position: absolute;
            bottom: 40px;
            right: 0;
            z-index: 10; }
        .index_contents__detail__land__list {
          position: relative;
          width: 98%;
          background-color: #f5f5f5;
          margin: -60px auto 0;
          border-radius: 6px 6px 0 0;
          -webkit-border-radius: 6px 6px 0 0;
          -moz-border-radius: 6px 6px 0 0;
          padding: 80px 3% 45px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          gap: 0 40px; }
          .index_contents__detail__land__list__sp {
            position: relative;
            width: 33.333%;
            padding: 40px 0;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            flex-direction: column;
            background-color: #fff;
            border-radius: 4px;
            -webkit-border-radius: 4px;
            -moz-border-radius: 4px; }
            .index_contents__detail__land__list__sp__img {
              position: relative;
              width: 100%;
              padding: 0 40px; }
              .index_contents__detail__land__list__sp__img a {
                position: relative;
                width: 100%;
                display: block;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px;
                overflow: hidden; }
                .index_contents__detail__land__list__sp__img a img {
                  width: 100%;
                  object-fit: cover;
                  -webkit-transition: .3s ease-in-out;
                  transition: .3s ease-in-out; }
                .index_contents__detail__land__list__sp__img a .caption {
                  text-align: center;
                  position: absolute;
                  width: 100%;
                  top: 50%;
                  left: 50%;
                  transform: translateY(-50%) translateX(-50%);
                  -webkit-transform: translateY(-50%) translateX(-50%);
                  font-size: 1.1rem;
                  font-weight: 500;
                  color: #fff;
                  letter-spacing: 0.05em; }
                .index_contents__detail__land__list__sp__img a .mask {
                  width: 100%;
                  height: 100%;
                  position: absolute;
                  top: 0;
                  left: 0;
                  opacity: 0;
                  background-color: rgba(0, 0, 0, 0.2);
                  -webkit-transition: all 0.6s ease;
                  -moz-transition: all 0.6s ease;
                  -o-transition: all 0.6s ease;
                  transition: all 0.6s ease; }
              .index_contents__detail__land__list__sp__img :hover img {
                transform: scale(1.1); }
              .index_contents__detail__land__list__sp__img :hover .mask {
                opacity: 1;
                /* マスクを表示する */ }
            .index_contents__detail__land__list__sp__txt {
              position: relative;
              width: 100%;
              padding: 20px 40px 30px; }
              .index_contents__detail__land__list__sp__txt h3 {
                font-size: 1.8rem;
                line-height: 1.7;
                font-weight: 600; }
              .index_contents__detail__land__list__sp__txt p {
                font-size: 1.3rem;
                line-height: 1.6;
                margin-top: 10px;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                align-items: center; }
                .index_contents__detail__land__list__sp__txt p img {
                  width: 12px;
                  margin-right: 5px; }
            .index_contents__detail__land__list__sp__btn {
              position: relative;
              width: 100%;
              border-top: 1px solid #E5E5E5;
              padding: 30px 12% 0;
              margin-top: auto; }
          .index_contents__detail__land__list__sp:nth-child(4) {
            display: none; }
        .index_contents__detail__land__btn {
          position: relative;
          width: 98%;
          background-color: #f5f5f5;
          margin: 0 auto;
          border-radius: 0 0 6px 6px;
          -webkit-border-radius: 0 0 6px 6px;
          -moz-border-radius: 0 0 6px 6px;
          padding: 0 0 85px; }
          .index_contents__detail__land__btn ul {
            width: 100%;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            justify-content: center;
            gap: 0 20px; }
      .index_contents__detail__thinkhome {
        position: relative;
        width: 100%;
        height: 600px;
        background: url(../../img/index_img/index_thinkhome_backimg.png) no-repeat center center;
        background-size: 100%;
        margin-top: 160px; }
        .index_contents__detail__thinkhome a {
          position: relative;
          width: 100%;
          height: 600px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          z-index: 5;
          transition: all .3s; }
          .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text {
            position: relative;
            width: 80%;
            z-index: 10; }
            .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text h3 {
              width: 200px;
              margin: 0 auto; }
              .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text h3 img {
                width: 100%; }
            .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text p {
              color: #fff;
              text-align: center;
              font-size: 1.5rem;
              line-height: 2.0;
              margin-top: 40px; }
          .index_contents__detail__thinkhome a .window {
            overflow: hidden;
            position: absolute;
            bottom: 30px;
            right: 4%;
            width: 60px;
            height: 60px;
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.6);
            z-index: 15;
            transition: all .3s; }
          .index_contents__detail__thinkhome a .window:after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            width: 58px;
            height: 58px;
            background: url(../img/window_icon_wh.svg) no-repeat center center;
            background-size: 14px; }
        .index_contents__detail__thinkhome a:hover .window {
          border: 1px solid #fff; }
        .index_contents__detail__thinkhome a::after {
          content: '';
          position: absolute;
          width: 100%;
          height: 600px;
          top: 0;
          left: 0;
          background-color: rgba(0, 0, 0, 0);
          transition: all .3s; }
        .index_contents__detail__thinkhome a:hover::after {
          background-color: rgba(0, 0, 0, 0.2); }
      .index_contents__detail__thinkhome::after {
        content: '';
        position: absolute;
        width: 100%;
        height: 600px;
        top: 0;
        left: 0;
        background-color: rgba(0, 0, 0, 0.1); }
      .index_contents__detail__column {
        position: relative;
        width: 92%;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        margin: 160px auto 0; }
        .index_contents__detail__column__left {
          position: relative;
          width: 400px; }
          .index_contents__detail__column__left__cat {
            position: sticky;
            width: 300px; }
            .index_contents__detail__column__left__cat ul {
              width: 100%; }
              .index_contents__detail__column__left__cat ul li {
                font-size: 1.4rem;
                margin-bottom: 10px; }
                .index_contents__detail__column__left__cat ul li a, .index_contents__detail__column__left__cat ul li a:link a:visited {
                  width: 100%;
                  height: 56px;
                  font-weight: 500;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  align-items: center;
                  background: url(../img/list_mk.svg) no-repeat 22px center;
                  background-size: 5px;
                  background-color: #f5f5f5;
                  padding-left: 33px;
                  border-radius: 4px;
                  -webkit-border-radius: 4px;
                  -moz-border-radius: 4px; }
                .index_contents__detail__column__left__cat ul li a:hover {
                  color: #111;
                  background-color: #E5E5E5; }
        .index_contents__detail__column__right {
          position: relative;
          flex: 1;
          padding-top: 30px; }
          .index_contents__detail__column__right h4.btn_style03 {
            position: absolute;
            top: 20px;
            right: 0;
            z-index: 10; }
          .index_contents__detail__column__right__list {
            position: relative;
            width: 100%;
            border-top: 1px solid #E5E5E5;
            margin-top: 80px; }
            .index_contents__detail__column__right__list__sp {
              position: relative;
              width: 100%;
              padding: 30px 0;
              border-bottom: 1px solid #E5E5E5; }
              .index_contents__detail__column__right__list__sp__desc {
                position: relative;
                width: 100%; }
                .index_contents__detail__column__right__list__sp__desc h3 {
                  font-size: 1.8rem;
                  line-height: 1.7;
                  font-weight: 600; }
                .index_contents__detail__column__right__list__sp__desc__option {
                  width: 100%;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  align-items: center;
                  justify-content: space-between;
                  margin-top: 20px; }
                  .index_contents__detail__column__right__list__sp__desc__option li.cat_style {
                    position: relative;
                    font-size: 1.1rem;
                    line-height: 1.0;
                    font-weight: 500;
                    padding-left: 10px;
                    background: url(../img/circle_icon_bl.svg) no-repeat 0 4px;
                    background-size: 5px; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a, .index_contents__detail__column__right__list__sp__desc__option li.cat_style a:link a:visited {
                      position: relative;
                      color: #111; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a::after {
                      position: absolute;
                      bottom: -2px;
                      left: 0;
                      content: '';
                      width: 100%;
                      height: 1px;
                      background: #69A6BD;
                      transform: scale(0, 1);
                      transform-origin: right top;
                      transition: transform .3s; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a:hover {
                      color: #69A6BD; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a:hover::after {
                      transform-origin: left top;
                      transform: scale(1, 1); }
                  .index_contents__detail__column__right__list__sp__desc__option li.time_style {
                    font-size: 1rem; }
                    .index_contents__detail__column__right__list__sp__desc__option li.time_style img {
                      width: 17px;
                      padding-right: 5px; }
            .index_contents__detail__column__right__list__none {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              background-color: #f5f5f5;
              padding: 45px 45px;
              margin-top: 30px; }
              .index_contents__detail__column__right__list__none p {
                text-align: center;
                font-size: 1.5rem; }
      .index_contents__detail__company {
        position: relative;
        width: 92%;
        margin: 140px auto 0; }
        .index_contents__detail__company__desc {
          position: relative;
          width: 100%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          gap: 0 90px; }
          .index_contents__detail__company__desc__left {
            width: 50%; }
            .index_contents__detail__company__desc__left h3 {
              color: #111;
              font-size: 2.2rem;
              line-height: 1.8;
              font-weight: 600; }
            .index_contents__detail__company__desc__left p {
              font-size: 1.5rem;
              line-height: 2.0;
              margin-top: 30px; }
              .index_contents__detail__company__desc__left p img {
                width: 100%;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px; }
            .index_contents__detail__company__desc__left h4 {
              margin-top: 40px; }
          .index_contents__detail__company__desc__right {
            width: 50%; }
            .index_contents__detail__company__desc__right__sp {
              border-top: 1px solid #E5E5E5;
              width: 100%; }
              .index_contents__detail__company__desc__right__sp dl {
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                align-items: center;
                border-bottom: 1px solid #E5E5E5;
                padding: 25px 2px; }
                .index_contents__detail__company__desc__right__sp dl dt {
                  width: 120px;
                  font-size: 1.4rem;
                  font-weight: 500;
                  background: url(../img/list_mk.svg) no-repeat 2px 10px;
                  background-size: 5px;
                  padding-left: 13px; }
                .index_contents__detail__company__desc__right__sp dl dd {
                  flex: 1;
                  font-size: 1.5rem; }
      .index_contents__detail__slide {
        position: relative;
        width: 100%;
        margin-top: 140px; }
        .index_contents__detail__slide .slider {
          position: relative;
          width: 100%; }
          .index_contents__detail__slide .slider li {
            padding: 0 10px; }
            .index_contents__detail__slide .slider li img {
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .index_contents {
    position: relative;
    width: 100%; }
    .index_contents__main {
      position: relative;
      width: 100%;
      height: 100vh;
      background: url(../../img/index_img/index_main_backimg.png) no-repeat 100% 100%;
      background-size: cover;
      background-color: #f5f5f5; }
      .index_contents__main__catch {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 240px;
        transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        z-index: 5; }
        .index_contents__main__catch p {
          position: relative;
          width: 100%; }
          .index_contents__main__catch p img {
            width: 100%; }
      .index_contents__main__news {
        position: absolute;
        left: 35px;
        bottom: 35px;
        width: 65%;
        height: 60px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        background: url(../img/arrow_bl.svg) no-repeat right 15px center;
        background-size: 12px;
        background-color: #fff;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.05);
        z-index: 5; }
        .index_contents__main__news__left {
          width: 80px;
          height: 60px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          background-color: #69A6BD;
          border-radius: 4px 0 0 4px;
          -webkit-border-radius: 4px 0 0 4px;
          -moz-border-radius: 4px 0 0 4px; }
          .index_contents__main__news__left p {
            color: #fff;
            font-size: 1.1rem;
            font-weight: 500; }
        .index_contents__main__news__right {
          flex: 1;
          height: 60px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          padding-left: 20px;
          padding-right: 40px; }
          .index_contents__main__news__right dl {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            align-items: center; }
            .index_contents__main__news__right dl dt {
              width: 70px;
              font-size: 1.1rem;
              border-right: 1px solid #E5E5E5; }
            .index_contents__main__news__right dl dd {
              position: relative;
              flex: 1;
              font-weight: 600;
              font-size: 1.2rem;
              padding-left: 15px; }
              .index_contents__main__news__right dl dd a, .index_contents__main__news__right dl dd a:link a:visited {
                position: relative;
                color: #111; }
              .index_contents__main__news__right dl dd a:hover {
                color: #69A6BD; }
    .index_contents__main::after {
      content: '';
      position: absolute;
      width: 100%;
      height: 100vh;
      top: 0;
      left: 0;
      background-color: rgba(0, 0, 0, 0.2); }
    .index_contents__detail {
      position: relative;
      width: 100%;
      padding-top: 100px;
      background-color: #fff;
      /* &__works::after {
        content: '';
        position: absolute;
        width: 92%;
        height: 1px;
        background-color: $thridy;
        bottom: 0;
        left: 4%;
      } */ }
      .index_contents__detail__bn {
        position: relative;
        width: 92%;
        margin: 0 auto;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between;
        gap: 0 25px; }
        .index_contents__detail__bn__list {
          width: 50%; }
          .index_contents__detail__bn__list p {
            width: 100%; }
            .index_contents__detail__bn__list p img {
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px; }
      .index_contents__detail__news {
        position: relative;
        width: 92%;
        margin: 80px auto 0; }
        .index_contents__detail__news__title {
          position: relative;
          width: 100%; }
        .index_contents__detail__news__right {
          position: relative;
          width: 100%; }
          .index_contents__detail__news__right h4.btn_style03 {
            position: absolute;
            top: -78px;
            right: 0;
            z-index: 10; }
          .index_contents__detail__news__right__list {
            position: relative;
            width: 100%;
            border-top: 1px solid #E5E5E5; }
            .index_contents__detail__news__right__list__sp {
              position: relative;
              width: 100%;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              align-items: center;
              padding: 25px 0;
              border-bottom: 1px solid #E5E5E5; }
              .index_contents__detail__news__right__list__sp__img {
                position: relative;
                width: 160px;
                height: 106px;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px;
                overflow: hidden; }
                .index_contents__detail__news__right__list__sp__img img {
                  width: 100%;
                  height: 106px;
                  object-fit: cover;
                  -webkit-transition: .3s ease-in-out;
                  transition: .3s ease-in-out; }
                .index_contents__detail__news__right__list__sp__img .caption {
                  text-align: center;
                  position: absolute;
                  width: 100%;
                  top: 50%;
                  left: 50%;
                  transform: translateY(-50%) translateX(-50%);
                  -webkit-transform: translateY(-50%) translateX(-50%);
                  font-size: 1.1rem;
                  font-weight: 500;
                  color: #fff;
                  letter-spacing: 0.05em; }
                .index_contents__detail__news__right__list__sp__img .mask {
                  width: 100%;
                  height: 100%;
                  position: absolute;
                  top: 0;
                  left: 0;
                  opacity: 0;
                  background-color: rgba(0, 0, 0, 0.2);
                  -webkit-transition: all 0.6s ease;
                  -moz-transition: all 0.6s ease;
                  -o-transition: all 0.6s ease;
                  transition: all 0.6s ease; }
              .index_contents__detail__news__right__list__sp__img:hover img {
                transform: scale(1.1); }
              .index_contents__detail__news__right__list__sp__img:hover .mask {
                opacity: 1;
                /* マスクを表示する */ }
              .index_contents__detail__news__right__list__sp__desc {
                position: relative;
                flex: 1;
                padding-left: 20px; }
                .index_contents__detail__news__right__list__sp__desc h3 {
                  font-size: 1.6rem;
                  line-height: 1.6;
                  font-weight: 600; }
                .index_contents__detail__news__right__list__sp__desc__option {
                  width: 100%;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  align-items: center;
                  justify-content: space-between;
                  margin-top: 15px; }
                  .index_contents__detail__news__right__list__sp__desc__option li.cat_style {
                    position: relative;
                    font-size: 1.1rem;
                    line-height: 1.0;
                    font-weight: 500;
                    padding-left: 10px;
                    background: url(../img/circle_icon_bl.svg) no-repeat 0 4px;
                    background-size: 5px; }
                    .index_contents__detail__news__right__list__sp__desc__option li.cat_style a, .index_contents__detail__news__right__list__sp__desc__option li.cat_style a:link a:visited {
                      position: relative;
                      color: #111; }
                    .index_contents__detail__news__right__list__sp__desc__option li.cat_style a::after {
                      position: absolute;
                      bottom: -2px;
                      left: 0;
                      content: '';
                      width: 100%;
                      height: 1px;
                      background: #69A6BD;
                      transform: scale(0, 1);
                      transform-origin: right top;
                      transition: transform .3s; }
                    .index_contents__detail__news__right__list__sp__desc__option li.cat_style a:hover {
                      color: #69A6BD; }
                    .index_contents__detail__news__right__list__sp__desc__option li.cat_style a:hover::after {
                      transform-origin: left top;
                      transform: scale(1, 1); }
                  .index_contents__detail__news__right__list__sp__desc__option li.time_style {
                    font-size: 1rem; }
                    .index_contents__detail__news__right__list__sp__desc__option li.time_style img {
                      width: 17px;
                      padding-right: 5px; }
            .index_contents__detail__news__right__list__none {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              background-color: #f5f5f5;
              padding: 35px 35px;
              margin-top: 30px; }
              .index_contents__detail__news__right__list__none p {
                text-align: center;
                font-size: 1.4rem; }
      .index_contents__detail__about {
        position: relative;
        width: 100%;
        margin-top: 120px;
        padding: 80px 0;
        overflow: hidden; }
        .index_contents__detail__about__desc {
          position: relative;
          width: 100%;
          z-index: 3; }
          .index_contents__detail__about__desc__img {
            position: relative;
            width: 76%;
            margin-left: 20%; }
            .index_contents__detail__about__desc__img p {
              width: 100%; }
              .index_contents__detail__about__desc__img p img {
                width: 100%;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px; }
          .index_contents__detail__about__desc__txt {
            position: relative;
            width: 100%;
            padding: 40px 24% 0 8%; }
            .index_contents__detail__about__desc__txt h2 {
              color: #fff;
              font-size: 2.4rem;
              font-weight: 600; }
            .index_contents__detail__about__desc__txt p {
              color: #fff;
              font-size: 1.4rem;
              line-height: 2.2;
              margin-top: 25px; }
      .index_contents__detail__about::before {
        content: '';
        position: absolute;
        width: 86%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: #69A6BD;
        border-radius: 0 4px 4px 0;
        -webkit-border-radius: 0 4px 4px 0;
        -moz-border-radius: 0 4px 4px 0; }
      .index_contents__detail__about::after {
        content: 'About';
        position: absolute;
        bottom: -20px;
        left: 4%;
        color: #5699B2;
        font-family: "Inter", sans-serif;
        font-size: 12.0rem;
        font-weight: 600;
        line-height: 1.0;
        letter-spacing: 0.01em; }
      .index_contents__detail__event {
        position: relative;
        width: 100%;
        margin: 120px auto 0; }
        .index_contents__detail__event__title {
          position: relative;
          width: 92%;
          margin: 0 auto; }
          .index_contents__detail__event__title h4.btn_style03 {
            position: absolute;
            bottom: 35px;
            right: 0;
            z-index: 10; }
        .index_contents__detail__event__list {
          position: relative;
          width: 92%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          justify-content: space-between;
          margin: 0 auto; }
          .index_contents__detail__event__list__sp {
            position: relative;
            width: 48%;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            flex-direction: column; }
            .index_contents__detail__event__list__sp__img {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              overflow: hidden; }
              .index_contents__detail__event__list__sp__img img {
                width: 100%;
                object-fit: cover;
                -webkit-transition: .3s ease-in-out;
                transition: .3s ease-in-out; }
              .index_contents__detail__event__list__sp__img .caption {
                text-align: center;
                position: absolute;
                width: 100%;
                top: 50%;
                left: 50%;
                transform: translateY(-50%) translateX(-50%);
                -webkit-transform: translateY(-50%) translateX(-50%);
                font-size: 1.1rem;
                font-weight: 500;
                color: #fff;
                letter-spacing: 0.05em; }
              .index_contents__detail__event__list__sp__img .mask {
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
                opacity: 0;
                background-color: rgba(0, 0, 0, 0.2);
                -webkit-transition: all 0.6s ease;
                -moz-transition: all 0.6s ease;
                -o-transition: all 0.6s ease;
                transition: all 0.6s ease; }
            .index_contents__detail__event__list__sp__img:hover img {
              transform: scale(1.1); }
            .index_contents__detail__event__list__sp__img:hover .mask {
              opacity: 1;
              /* マスクを表示する */ }
            .index_contents__detail__event__list__sp__desc {
              position: relative;
              width: 100%;
              padding-top: 20px;
              padding-bottom: 30px; }
              .index_contents__detail__event__list__sp__desc h3 {
                font-size: 1.6rem;
                line-height: 1.7;
                font-weight: 600; }
            .index_contents__detail__event__list__sp__option {
              position: relative;
              width: 100%;
              margin-top: auto;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              align-items: center;
              justify-content: space-between;
              border-top: 1px solid #E5E5E5;
              border-bottom: 1px solid #E5E5E5;
              padding: 15px 0; }
              .index_contents__detail__event__list__sp__option li.cat_style {
                position: relative;
                font-size: 1.1rem;
                line-height: 1.0;
                font-weight: 500;
                padding-left: 10px;
                background: url(../img/circle_icon_bl.svg) no-repeat 0 4px;
                background-size: 5px; }
                .index_contents__detail__event__list__sp__option li.cat_style a, .index_contents__detail__event__list__sp__option li.cat_style a:link a:visited {
                  position: relative;
                  color: #111; }
                .index_contents__detail__event__list__sp__option li.cat_style a::after {
                  position: absolute;
                  bottom: -2px;
                  left: 0;
                  content: '';
                  width: 100%;
                  height: 1px;
                  background: #69A6BD;
                  transform: scale(0, 1);
                  transform-origin: right top;
                  transition: transform .3s; }
                .index_contents__detail__event__list__sp__option li.cat_style a:hover {
                  color: #69A6BD; }
                .index_contents__detail__event__list__sp__option li.cat_style a:hover::after {
                  transform-origin: left top;
                  transform: scale(1, 1); }
              .index_contents__detail__event__list__sp__option li.time_style {
                font-size: 1rem; }
                .index_contents__detail__event__list__sp__option li.time_style img {
                  width: 17px;
                  padding-right: 5px; }
          .index_contents__detail__event__list__sp:nth-child(n+3) {
            margin-top: 60px; }
          .index_contents__detail__event__list__none {
            position: relative;
            width: 100%;
            background-color: #f5f5f5;
            padding: 45px 45px;
            border-radius: 4px;
            -webkit-border-radius: 4px;
            -moz-border-radius: 4px; }
            .index_contents__detail__event__list__none p {
              text-align: center;
              font-size: 1.4rem; }
      .index_contents__detail__business {
        position: relative;
        width: 92%;
        margin: 120px auto 0; }
        .index_contents__detail__business__list {
          position: relative;
          width: 100%; }
          .index_contents__detail__business__list__sp {
            position: relative;
            width: 100%; }
            .index_contents__detail__business__list__sp a {
              position: relative;
              width: 100%;
              display: block;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              overflow: hidden; }
              .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__num {
                position: absolute;
                left: 0;
                top: 0;
                width: 100%;
                z-index: 10;
                padding: 35px 35px; }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__num p {
                  position: relative;
                  color: #fff;
                  font-size: 5.6rem;
                  font-family: "Inter", sans-serif;
                  font-weight: 500; }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__num p::after {
                  content: '';
                  position: absolute;
                  width: 15px;
                  height: 1px;
                  background-color: #fff;
                  left: 6px;
                  bottom: -15px; }
              .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__txt {
                position: absolute;
                left: 0;
                bottom: 0;
                width: 100%;
                z-index: 10;
                padding: 35px 35px;
                background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.45)); }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__txt h3 {
                  color: #fff;
                  font-size: 2rem;
                  font-weight: 600;
                  text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2); }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__txt p {
                  text-align: justify;
                  color: #fff;
                  font-size: 1.4rem;
                  line-height: 1.8;
                  margin-top: 15px;
                  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2); }
              .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__img {
                position: relative;
                width: 100%; }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__img p {
                  width: 100%; }
                  .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__img p img {
                    width: 100%;
                    object-fit: cover;
                    -webkit-transition: .3s ease-in-out;
                    transition: .3s ease-in-out; }
              .index_contents__detail__business__list__sp a .arrow02 {
                overflow: hidden;
                position: absolute;
                bottom: 25px;
                right: 25px;
                width: 56px;
                height: 56px;
                border-radius: 50%;
                -webkit-border-radius: 50%;
                -moz-border-radius: 50%;
                border: 1px solid rgba(255, 255, 255, 0.6);
                z-index: 15;
                transition: all .3s; }
              .index_contents__detail__business__list__sp a .arrow02:before,
              .index_contents__detail__business__list__sp a .arrow02:after {
                content: "";
                position: absolute;
                top: 0;
                right: 0;
                width: 54px;
                height: 54px;
                background: url(../img/arrow_wh.svg) no-repeat center center;
                background-size: 12px;
                animation-fill-mode: forwards;
                animation-duration: 0.3s; }
              .index_contents__detail__business__list__sp a .arrow02:after {
                transform: translateX(-100%); }
            .index_contents__detail__business__list__sp a:hover .arrow02 {
              border: 1px solid #fff; }
            .index_contents__detail__business__list__sp a:hover .arrow02:before {
              animation-name: transformRightLeft;
              /* 修正: hover時のアニメーションを指定 */
              animation-delay: 0s; }
            .index_contents__detail__business__list__sp a:hover .arrow02:after {
              animation-name: transformLeftRight;
              /* 修正: hover時のアニメーションを指定 */
              animation-delay: 0.2s; }
          .index_contents__detail__business__list__sp > a:hover .index_contents__detail__business__list__sp__img img {
            -webkit-transform: scale(1.07);
            transform: scale(1.07); }
          .index_contents__detail__business__list__sp:nth-child(2) {
            margin-top: 15px; }
      .index_contents__detail__works {
        position: relative;
        width: 100%;
        margin-top: 120px;
        padding-bottom: 100px; }
        .index_contents__detail__works__title {
          position: relative;
          width: 92%;
          margin: 0 auto; }
          .index_contents__detail__works__title h4.btn_style03 {
            position: absolute;
            bottom: 35px;
            right: 0;
            z-index: 10; }
        .index_contents__detail__works__list {
          position: relative;
          width: 100%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          padding-left: 4%;
          padding-bottom: 50px; }
          .index_contents__detail__works__list__sp {
            position: relative;
            width: 25%; }
            .index_contents__detail__works__list__sp__img {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              overflow: hidden;
              margin-bottom: 15px; }
              .index_contents__detail__works__list__sp__img img {
                width: 100%;
                object-fit: cover;
                -webkit-transition: .3s ease-in-out;
                transition: .3s ease-in-out; }
              .index_contents__detail__works__list__sp__img .caption {
                text-align: center;
                position: absolute;
                width: 100%;
                top: 50%;
                left: 50%;
                transform: translateY(-50%) translateX(-50%);
                -webkit-transform: translateY(-50%) translateX(-50%);
                font-size: 1.1rem;
                font-weight: 500;
                color: #fff;
                letter-spacing: 0.05em; }
              .index_contents__detail__works__list__sp__img .mask {
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
                opacity: 0;
                background-color: rgba(0, 0, 0, 0.2);
                -webkit-transition: all 0.6s ease;
                -moz-transition: all 0.6s ease;
                -o-transition: all 0.6s ease;
                transition: all 0.6s ease; }
            .index_contents__detail__works__list__sp__img:hover img {
              transform: scale(1.1); }
            .index_contents__detail__works__list__sp__img:hover .mask {
              opacity: 1;
              /* マスクを表示する */ }
            .index_contents__detail__works__list__sp__txt {
              position: relative;
              width: 100%;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex; }
              .index_contents__detail__works__list__sp__txt h3 {
                flex: 1;
                font-size: 1.6rem;
                line-height: 1.7;
                font-weight: 600;
                padding-left: 15px; }
              .index_contents__detail__works__list__sp__txt p {
                width: 90px;
                height: 30px;
                color: #111;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                align-items: center;
                background-color: #f5f5f5;
                padding-left: 10px;
                font-size: 1.1rem;
                font-weight: 500;
                border-radius: 15px;
                -webkit-border-radius: 15px;
                -moz-border-radius: 15px; }
                .index_contents__detail__works__list__sp__txt p img {
                  width: 12px;
                  margin-right: 4px; }
          .index_contents__detail__works__list__none {
            position: relative;
            width: 100%;
            padding-right: 4%; }
            .index_contents__detail__works__list__none p {
              text-align: center;
              font-size: 1.4rem;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              background-color: #f5f5f5;
              padding: 35px 35px; }
          .index_contents__detail__works__list .swiper-pagination {
            position: absolute;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            align-items: center;
            bottom: 0px !important;
            right: 5%;
            z-index: 10; }
            .index_contents__detail__works__list .swiper-pagination span {
              display: block;
              width: 14px;
              height: 14px;
              background-color: #f5f5f5;
              margin-left: 12px;
              border-radius: 50%;
              -webkit-border-radius: 50%;
              -moz-border-radius: 50%;
              cursor: pointer; }
            .index_contents__detail__works__list .swiper-pagination .swiper-pagination-bullet-active {
              background-color: #69A6BD; }
      .index_contents__detail__land {
        position: relative;
        width: 100%; }
        .index_contents__detail__land__title {
          position: relative;
          width: 92%;
          margin: 0 auto;
          z-index: 5; }
          .index_contents__detail__land__title h4.btn_style03 {
            position: absolute;
            bottom: 30px;
            right: 0;
            z-index: 10; }
        .index_contents__detail__land__list {
          position: relative;
          width: 98%;
          background-color: #f5f5f5;
          margin: -50px auto 0;
          border-radius: 6px 6px 0 0;
          -webkit-border-radius: 6px 6px 0 0;
          -moz-border-radius: 6px 6px 0 0;
          padding: 60px 4% 40px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          justify-content: space-between; }
          .index_contents__detail__land__list__sp {
            position: relative;
            width: 48.5%;
            padding: 30px 0;
            background-color: #fff;
            border-radius: 4px;
            -webkit-border-radius: 4px;
            -moz-border-radius: 4px; }
            .index_contents__detail__land__list__sp__img {
              position: relative;
              width: 100%;
              padding: 0 30px; }
              .index_contents__detail__land__list__sp__img a {
                position: relative;
                width: 100%;
                display: block;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px;
                overflow: hidden; }
                .index_contents__detail__land__list__sp__img a img {
                  width: 100%;
                  object-fit: cover;
                  -webkit-transition: .3s ease-in-out;
                  transition: .3s ease-in-out; }
                .index_contents__detail__land__list__sp__img a .caption {
                  text-align: center;
                  position: absolute;
                  width: 100%;
                  top: 50%;
                  left: 50%;
                  transform: translateY(-50%) translateX(-50%);
                  -webkit-transform: translateY(-50%) translateX(-50%);
                  font-size: 1.1rem;
                  font-weight: 500;
                  color: #fff;
                  letter-spacing: 0.05em; }
                .index_contents__detail__land__list__sp__img a .mask {
                  width: 100%;
                  height: 100%;
                  position: absolute;
                  top: 0;
                  left: 0;
                  opacity: 0;
                  background-color: rgba(0, 0, 0, 0.2);
                  -webkit-transition: all 0.6s ease;
                  -moz-transition: all 0.6s ease;
                  -o-transition: all 0.6s ease;
                  transition: all 0.6s ease; }
              .index_contents__detail__land__list__sp__img :hover img {
                transform: scale(1.1); }
              .index_contents__detail__land__list__sp__img :hover .mask {
                opacity: 1;
                /* マスクを表示する */ }
            .index_contents__detail__land__list__sp__txt {
              position: relative;
              width: 100%;
              padding: 15px 30px 25px; }
              .index_contents__detail__land__list__sp__txt h3 {
                font-size: 1.6rem;
                line-height: 1.7;
                font-weight: 600; }
              .index_contents__detail__land__list__sp__txt p {
                font-size: 1.1rem;
                margin-top: 6px;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                align-items: center; }
                .index_contents__detail__land__list__sp__txt p img {
                  width: 12px;
                  margin-right: 5px; }
            .index_contents__detail__land__list__sp__btn {
              position: relative;
              width: 100%;
              border-top: 1px solid #E5E5E5;
              padding: 25px 30px 0; }
          .index_contents__detail__land__list__sp:nth-child(n+3) {
            margin-top: 25px; }
        .index_contents__detail__land__btn {
          position: relative;
          width: 98%;
          background-color: #f5f5f5;
          margin: 0 auto;
          border-radius: 0 0 6px 6px;
          -webkit-border-radius: 0 0 6px 6px;
          -moz-border-radius: 0 0 6px 6px;
          padding: 0 0 60px; }
          .index_contents__detail__land__btn ul {
            width: 100%;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            justify-content: center;
            gap: 0 15px; }
            .index_contents__detail__land__btn ul li {
              width: 340px; }
      .index_contents__detail__thinkhome {
        position: relative;
        width: 100%;
        height: 480px;
        background: url(../../img/index_img/index_thinkhome_backimg.png) no-repeat center center;
        background-size: cover;
        margin-top: 120px; }
        .index_contents__detail__thinkhome a {
          position: relative;
          width: 100%;
          height: 480px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          z-index: 5; }
          .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text {
            position: relative;
            width: 80%;
            z-index: 10; }
            .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text h3 {
              width: 180px;
              margin: 0 auto; }
              .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text h3 img {
                width: 100%; }
            .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text p {
              color: #fff;
              text-align: center;
              font-size: 1.4rem;
              line-height: 2.0;
              margin-top: 35px; }
          .index_contents__detail__thinkhome a .window {
            overflow: hidden;
            position: absolute;
            bottom: 25px;
            right: 4%;
            width: 56px;
            height: 56px;
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.6);
            z-index: 15;
            transition: all .3s; }
          .index_contents__detail__thinkhome a .window:after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            width: 54px;
            height: 54px;
            background: url(../img/window_icon_wh.svg) no-repeat center center;
            background-size: 14px; }
        .index_contents__detail__thinkhome a:hover .window {
          border: 1px solid #fff; }
        .index_contents__detail__thinkhome a::after {
          content: '';
          position: absolute;
          width: 100%;
          height: 480px;
          top: 0;
          left: 0;
          background-color: rgba(0, 0, 0, 0);
          transition: all .3s; }
        .index_contents__detail__thinkhome a:hover::after {
          background-color: rgba(0, 0, 0, 0.2); }
      .index_contents__detail__thinkhome::after {
        content: '';
        position: absolute;
        width: 100%;
        height: 480px;
        top: 0;
        left: 0;
        background-color: rgba(0, 0, 0, 0.1); }
      .index_contents__detail__column {
        position: relative;
        width: 92%;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        margin: 160px auto 0; }
        .index_contents__detail__column__left {
          position: relative;
          width: 260px; }
          .index_contents__detail__column__left__cat {
            position: sticky;
            width: 220px; }
            .index_contents__detail__column__left__cat ul {
              width: 100%; }
              .index_contents__detail__column__left__cat ul li {
                font-size: 1.2rem;
                margin-bottom: 10px; }
                .index_contents__detail__column__left__cat ul li a, .index_contents__detail__column__left__cat ul li a:link a:visited {
                  width: 100%;
                  height: 48px;
                  font-weight: 500;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  align-items: center;
                  background: url(../img/list_mk.svg) no-repeat 17px center;
                  background-size: 5px;
                  background-color: #f5f5f5;
                  padding-left: 28px;
                  border-radius: 4px;
                  -webkit-border-radius: 4px;
                  -moz-border-radius: 4px; }
                .index_contents__detail__column__left__cat ul li a:hover {
                  color: #111;
                  background-color: #E5E5E5; }
        .index_contents__detail__column__right {
          position: relative;
          flex: 1;
          padding-top: 30px; }
          .index_contents__detail__column__right h4.btn_style03 {
            position: absolute;
            top: 10px;
            right: 0;
            z-index: 10; }
          .index_contents__detail__column__right__list {
            position: relative;
            width: 100%;
            border-top: 1px solid #E5E5E5;
            margin-top: 62px; }
            .index_contents__detail__column__right__list__sp {
              position: relative;
              width: 100%;
              padding: 25px 0;
              border-bottom: 1px solid #E5E5E5; }
              .index_contents__detail__column__right__list__sp__desc {
                position: relative;
                width: 100%; }
                .index_contents__detail__column__right__list__sp__desc h3 {
                  font-size: 1.6rem;
                  line-height: 1.6;
                  font-weight: 600; }
                .index_contents__detail__column__right__list__sp__desc__option {
                  width: 100%;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  align-items: center;
                  justify-content: space-between;
                  margin-top: 15px; }
                  .index_contents__detail__column__right__list__sp__desc__option li.cat_style {
                    position: relative;
                    font-size: 1.1rem;
                    line-height: 1.0;
                    font-weight: 500;
                    padding-left: 10px;
                    background: url(../img/circle_icon_bl.svg) no-repeat 0 4px;
                    background-size: 5px; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a, .index_contents__detail__column__right__list__sp__desc__option li.cat_style a:link a:visited {
                      position: relative;
                      color: #111; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a::after {
                      position: absolute;
                      bottom: -2px;
                      left: 0;
                      content: '';
                      width: 100%;
                      height: 1px;
                      background: #69A6BD;
                      transform: scale(0, 1);
                      transform-origin: right top;
                      transition: transform .3s; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a:hover {
                      color: #69A6BD; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a:hover::after {
                      transform-origin: left top;
                      transform: scale(1, 1); }
                  .index_contents__detail__column__right__list__sp__desc__option li.time_style {
                    font-size: 1rem; }
                    .index_contents__detail__column__right__list__sp__desc__option li.time_style img {
                      width: 17px;
                      padding-right: 5px; }
            .index_contents__detail__column__right__list__none {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              background-color: #f5f5f5;
              padding: 35px 35px;
              margin-top: 30px; }
              .index_contents__detail__column__right__list__none p {
                text-align: center;
                font-size: 1.4rem; }
      .index_contents__detail__company {
        position: relative;
        width: 92%;
        margin: 140px auto 0; }
        .index_contents__detail__company__desc {
          position: relative;
          width: 100%; }
          .index_contents__detail__company__desc__left {
            width: 100%; }
            .index_contents__detail__company__desc__left h3 {
              color: #111;
              font-size: 2rem;
              line-height: 1.8;
              font-weight: 600; }
            .index_contents__detail__company__desc__left p {
              font-size: 1.4rem;
              line-height: 2.0;
              margin-top: 25px; }
              .index_contents__detail__company__desc__left p img {
                width: 100%;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px; }
            .index_contents__detail__company__desc__left h4 {
              width: 340px;
              margin: 30px auto 0; }
          .index_contents__detail__company__desc__right {
            width: 100%;
            border-top: 1px solid #E5E5E5;
            margin-top: 40px; }
            .index_contents__detail__company__desc__right dl {
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              align-items: center;
              border-bottom: 1px solid #E5E5E5;
              padding: 25px 2px; }
              .index_contents__detail__company__desc__right dl dt {
                width: 100px;
                font-size: 1.2rem;
                font-weight: 500;
                background: url(../img/list_mk.svg) no-repeat 2px 10px;
                background-size: 5px;
                padding-left: 13px; }
              .index_contents__detail__company__desc__right dl dd {
                flex: 1;
                font-size: 1.4rem; }
      .index_contents__detail__slide {
        position: relative;
        width: 100%;
        margin-top: 120px; }
        .index_contents__detail__slide .slider {
          position: relative;
          width: 100%; }
          .index_contents__detail__slide .slider li {
            padding: 0 8px; }
            .index_contents__detail__slide .slider li img {
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px; } }
@media screen and (max-width: 767px) {
  .index_contents {
    position: relative; }
    .index_contents__main {
      position: relative;
      width: 100%;
      height: 100vh;
      background: url(../../img/index_img/sp_index_main_backimg.png) no-repeat 100% 100%;
      background-size: cover;
      background-color: #f5f5f5; }
      .index_contents__main__catch {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 185px;
        transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        z-index: 5; }
        .index_contents__main__catch p {
          position: relative;
          width: 100%; }
          .index_contents__main__catch p img {
            width: 100%; }
      .index_contents__main__news {
        position: absolute;
        left: 4%;
        bottom: 20px;
        width: 92%;
        height: 70px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        background: url(../img/arrow_bl.svg) no-repeat right 10px center;
        background-size: 10px;
        background-color: #fff;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.05);
        z-index: 5; }
        .index_contents__main__news__left {
          width: 70px;
          height: 70px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          background-color: #69A6BD;
          border-radius: 4px 0 0 4px;
          -webkit-border-radius: 4px 0 0 4px;
          -moz-border-radius: 4px 0 0 4px; }
          .index_contents__main__news__left p {
            color: #fff;
            font-size: 1rem;
            font-weight: 500; }
        .index_contents__main__news__right {
          flex: 1;
          height: 70px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          padding-left: 12px;
          padding-right: 30px; }
          .index_contents__main__news__right dl {
            width: 100%; }
            .index_contents__main__news__right dl dt {
              font-size: 0.9rem;
              line-height: 1.2;
              padding-bottom: 3px; }
            .index_contents__main__news__right dl dd {
              position: relative;
              font-weight: 600;
              font-size: 1.2rem;
              line-height: 1.5; }
              .index_contents__main__news__right dl dd a {
                position: relative;
                color: #111; }
    .index_contents__main::after {
      content: '';
      position: absolute;
      width: 100%;
      height: 100vh;
      top: 0;
      left: 0;
      background-color: rgba(0, 0, 0, 0.2); }
    .index_contents__detail {
      position: relative;
      width: 100%;
      padding-top: 100px;
      background-color: #fff;
      /* &__works::after {
        content: '';
        position: absolute;
        width: 90%;
        height: 1px;
        background-color: $thridy;
        bottom: 0;
        left: 5%;
      } */ }
      .index_contents__detail__bn {
        position: relative;
        width: 90%;
        margin: 0 auto; }
        .index_contents__detail__bn__list {
          width: 100%; }
          .index_contents__detail__bn__list p {
            width: 100%; }
            .index_contents__detail__bn__list p img {
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px; }
        .index_contents__detail__bn__list:nth-child(2) {
          margin-top: 15px; }
      .index_contents__detail__news {
        position: relative;
        width: 90%;
        margin: 80px auto 0; }
        .index_contents__detail__news__title {
          position: relative;
          width: 100%; }
        .index_contents__detail__news__right {
          position: relative;
          width: 100%; }
          .index_contents__detail__news__right h4.btn_style03 {
            position: absolute;
            top: -65px;
            right: 0;
            z-index: 10; }
          .index_contents__detail__news__right__list {
            position: relative;
            width: 100%;
            border-top: 1px solid #E5E5E5; }
            .index_contents__detail__news__right__list__sp {
              position: relative;
              width: 100%;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              padding: 20px 0;
              border-bottom: 1px solid #E5E5E5; }
              .index_contents__detail__news__right__list__sp__img {
                position: relative;
                width: 135px;
                height: 90px;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px;
                overflow: hidden; }
                .index_contents__detail__news__right__list__sp__img img {
                  width: 100%;
                  height: 90px;
                  object-fit: cover; }
                .index_contents__detail__news__right__list__sp__img .caption {
                  display: none; }
                .index_contents__detail__news__right__list__sp__img .mask {
                  display: none; }
              .index_contents__detail__news__right__list__sp__desc {
                position: relative;
                flex: 1;
                padding-left: 15px; }
                .index_contents__detail__news__right__list__sp__desc h3 {
                  font-size: 1.4rem;
                  line-height: 1.6;
                  font-weight: 600; }
                .index_contents__detail__news__right__list__sp__desc__option {
                  width: 100%;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  justify-content: flex-end;
                  margin-top: 15px; }
                  .index_contents__detail__news__right__list__sp__desc__option li.cat_style {
                    display: none; }
                  .index_contents__detail__news__right__list__sp__desc__option li.time_style {
                    font-size: 1rem; }
                    .index_contents__detail__news__right__list__sp__desc__option li.time_style img {
                      width: 17px;
                      padding-right: 5px; }
            .index_contents__detail__news__right__list__none {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              background-color: #f5f5f5;
              padding: 25px 5px;
              margin-top: 30px; }
              .index_contents__detail__news__right__list__none p {
                text-align: center;
                font-size: 1.4rem; }
      .index_contents__detail__about {
        position: relative;
        width: 100%;
        margin-top: 100px;
        padding: 70px 0;
        overflow: hidden; }
        .index_contents__detail__about__desc {
          position: relative;
          width: 100%;
          z-index: 3; }
          .index_contents__detail__about__desc__img {
            position: relative;
            width: 95%;
            margin-left: 5%; }
            .index_contents__detail__about__desc__img p {
              width: 100%; }
              .index_contents__detail__about__desc__img p img {
                width: 100%;
                border-radius: 4px 0 0 4px;
                -webkit-border-radius: 4px 0 0 4px;
                -moz-border-radius: 4px 0 0 4px; }
          .index_contents__detail__about__desc__txt {
            position: relative;
            width: 100%;
            padding: 35px 15% 0 5%; }
            .index_contents__detail__about__desc__txt h2 {
              color: #fff;
              font-size: 2.2rem;
              font-weight: 600; }
            .index_contents__detail__about__desc__txt p {
              text-align: justify;
              color: #fff;
              font-size: 1.5rem;
              line-height: 2.0;
              margin-top: 25px; }
      .index_contents__detail__about::before {
        content: '';
        position: absolute;
        width: 95%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: #69A6BD;
        border-radius: 0 4px 4px 0;
        -webkit-border-radius: 0 4px 4px 0;
        -moz-border-radius: 0 4px 4px 0; }
      .index_contents__detail__about::after {
        content: 'About';
        position: absolute;
        bottom: -13px;
        left: 4%;
        color: #5699B2;
        font-family: "Inter", sans-serif;
        font-size: 7.6rem;
        font-weight: 600;
        line-height: 1.0;
        letter-spacing: 0.01em; }
      .index_contents__detail__event {
        position: relative;
        width: 100%;
        margin: 100px auto 0; }
        .index_contents__detail__event__title {
          position: relative;
          width: 90%;
          margin: 0 auto; }
          .index_contents__detail__event__title h4.btn_style03 {
            position: absolute;
            bottom: 30px;
            right: 0;
            z-index: 10; }
        .index_contents__detail__event__list {
          position: relative;
          width: 90%;
          margin: 0 auto; }
          .index_contents__detail__event__list__sp {
            position: relative;
            width: 100%; }
            .index_contents__detail__event__list__sp__img {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              overflow: hidden; }
              .index_contents__detail__event__list__sp__img img {
                width: 100%; }
              .index_contents__detail__event__list__sp__img .caption {
                display: none; }
              .index_contents__detail__event__list__sp__img .mask {
                display: none; }
            .index_contents__detail__event__list__sp__desc {
              position: relative;
              width: 100%;
              padding-top: 15px;
              padding-bottom: 25px; }
              .index_contents__detail__event__list__sp__desc h3 {
                font-size: 1.6rem;
                line-height: 1.7;
                font-weight: 600; }
            .index_contents__detail__event__list__sp__option {
              position: relative;
              width: 100%;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              align-items: center;
              justify-content: space-between;
              border-top: 1px solid #E5E5E5;
              border-bottom: 1px solid #E5E5E5;
              padding: 12px 0; }
              .index_contents__detail__event__list__sp__option li.cat_style {
                position: relative;
                font-size: 1.1rem;
                line-height: 1.0;
                font-weight: 500;
                padding-left: 10px;
                background: url(../img/circle_icon_bl.svg) no-repeat 0 4px;
                background-size: 5px; }
                .index_contents__detail__event__list__sp__option li.cat_style a {
                  position: relative;
                  color: #111; }
              .index_contents__detail__event__list__sp__option li.time_style {
                font-size: 1rem; }
                .index_contents__detail__event__list__sp__option li.time_style img {
                  width: 16px;
                  padding-right: 5px; }
          .index_contents__detail__event__list__sp:nth-child(n+2) {
            margin-top: 40px; }
          .index_contents__detail__event__list__sp:nth-child(4) {
            display: none; }
      .index_contents__detail__business {
        position: relative;
        width: 100%;
        margin: 100px auto 0; }
        .index_contents__detail__business .title_sp {
          width: 90%;
          margin: 0 auto; }
        .index_contents__detail__business__list {
          position: relative;
          width: 94%;
          margin: 0 auto; }
          .index_contents__detail__business__list__sp {
            position: relative;
            width: 100%; }
            .index_contents__detail__business__list__sp a {
              position: relative;
              width: 100%;
              display: block;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              overflow: hidden; }
              .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__num {
                position: absolute;
                left: 0;
                top: 0;
                width: 100%;
                z-index: 10;
                padding: 22px 25px 25px; }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__num p {
                  position: relative;
                  color: #fff;
                  font-size: 3.8rem;
                  font-family: "Inter", sans-serif;
                  font-weight: 500; }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__num p::after {
                  content: '';
                  position: absolute;
                  width: 10px;
                  height: 1px;
                  background-color: #fff;
                  left: 6px;
                  bottom: -10px; }
              .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__txt {
                position: absolute;
                left: 0;
                bottom: 0;
                width: 100%;
                z-index: 10;
                padding: 25px 25px;
                background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.45)); }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__txt h3 {
                  color: #fff;
                  font-size: 2rem;
                  font-weight: 600;
                  text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2); }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__txt p {
                  width: 270px;
                  text-align: justify;
                  color: #fff;
                  font-size: 1.4rem;
                  line-height: 1.8;
                  margin-top: 12px;
                  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2); }
              .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__img {
                position: relative;
                width: 100%; }
                .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__img p {
                  width: 100%; }
                  .index_contents__detail__business__list__sp a .index_contents__detail__business__list__sp__img p img {
                    width: 100%;
                    object-fit: cover;
                    -webkit-transition: .3s ease-in-out;
                    transition: .3s ease-in-out; }
              .index_contents__detail__business__list__sp a .arrow02 {
                overflow: hidden;
                position: absolute;
                bottom: 15px;
                right: 15px;
                width: 40px;
                height: 40px;
                border-radius: 50%;
                -webkit-border-radius: 50%;
                -moz-border-radius: 50%;
                border: 1px solid #fff;
                z-index: 15; }
              .index_contents__detail__business__list__sp a .arrow02:after {
                content: "";
                position: absolute;
                top: 0;
                right: 0;
                width: 38px;
                height: 38px;
                background: url(../img/arrow_wh.svg) no-repeat center center;
                background-size: 10px; }
            .index_contents__detail__business__list__sp a::after {
              content: '';
              position: absolute;
              width: 100%;
              height: 100%;
              top: 0;
              left: 0;
              background-color: rgba(0, 0, 0, 0.1); }
          .index_contents__detail__business__list__sp:nth-child(2) {
            margin-top: 15px; }
      .index_contents__detail__works {
        position: relative;
        width: 100%;
        margin-top: 100px;
        padding-bottom: 80px; }
        .index_contents__detail__works__title {
          position: relative;
          width: 90%;
          margin: 0 auto; }
          .index_contents__detail__works__title h4.btn_style03 {
            position: absolute;
            bottom: 30px;
            right: 0;
            z-index: 10; }
        .index_contents__detail__works__list {
          position: relative;
          width: 100%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          padding-left: 5%;
          padding-bottom: 40px; }
          .index_contents__detail__works__list__sp {
            position: relative;
            width: 25%; }
            .index_contents__detail__works__list__sp__img {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              overflow: hidden;
              margin-bottom: 15px; }
              .index_contents__detail__works__list__sp__img img {
                width: 100%; }
              .index_contents__detail__works__list__sp__img .caption {
                display: none; }
              .index_contents__detail__works__list__sp__img .mask {
                display: none; }
            .index_contents__detail__works__list__sp__txt {
              position: relative;
              width: 100%;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex; }
              .index_contents__detail__works__list__sp__txt h3 {
                flex: 1;
                font-size: 1.4rem;
                line-height: 1.7;
                font-weight: 600;
                padding-left: 12px; }
              .index_contents__detail__works__list__sp__txt p {
                width: 86px;
                height: 28px;
                color: #111;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                align-items: center;
                background-color: #f5f5f5;
                padding-left: 12px;
                font-size: 1rem;
                font-weight: 500;
                border-radius: 15px;
                -webkit-border-radius: 15px;
                -moz-border-radius: 15px; }
                .index_contents__detail__works__list__sp__txt p img {
                  width: 10px;
                  margin-right: 4px; }
          .index_contents__detail__works__list__none {
            position: relative;
            width: 100%;
            padding-right: 5%; }
            .index_contents__detail__works__list__none p {
              text-align: center;
              font-size: 1.4rem;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              background-color: #f5f5f5;
              padding: 25px 5px; }
          .index_contents__detail__works__list .swiper-pagination {
            position: absolute;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            align-items: center;
            bottom: 0px !important;
            left: 50%;
            transform: translateX(-50%);
            -webkit-transform: translateX(-50%);
            z-index: 10; }
            .index_contents__detail__works__list .swiper-pagination span {
              display: block;
              width: 12px;
              height: 12px;
              background-color: #f5f5f5;
              margin: 0 5px;
              border-radius: 50%;
              -webkit-border-radius: 50%;
              -moz-border-radius: 50%; }
            .index_contents__detail__works__list .swiper-pagination .swiper-pagination-bullet-active {
              background-color: #69A6BD; }
      .index_contents__detail__land {
        position: relative;
        width: 100%; }
        .index_contents__detail__land__title {
          position: relative;
          width: 90%;
          margin: 0 auto;
          z-index: 5; }
          .index_contents__detail__land__title h4.btn_style03 {
            position: absolute;
            bottom: 30px;
            right: 0;
            z-index: 10; }
        .index_contents__detail__land__list {
          position: relative;
          width: 96%;
          background-color: #f5f5f5;
          margin: -40px auto 0;
          border-radius: 6px 6px 0 0;
          -webkit-border-radius: 6px 6px 0 0;
          -moz-border-radius: 6px 6px 0 0;
          padding: 40px 25px 30px; }
          .index_contents__detail__land__list__sp {
            position: relative;
            width: 100%;
            padding: 25px 0;
            background-color: #fff;
            border-radius: 4px;
            -webkit-border-radius: 4px;
            -moz-border-radius: 4px; }
            .index_contents__detail__land__list__sp__img {
              position: relative;
              width: 100%;
              padding: 0 25px; }
              .index_contents__detail__land__list__sp__img a {
                position: relative;
                width: 100%;
                display: block;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px;
                overflow: hidden; }
                .index_contents__detail__land__list__sp__img a img {
                  width: 100%; }
                .index_contents__detail__land__list__sp__img a .caption {
                  display: none; }
                .index_contents__detail__land__list__sp__img a .mask {
                  display: none; }
            .index_contents__detail__land__list__sp__txt {
              position: relative;
              width: 100%;
              padding: 15px 25px 20px; }
              .index_contents__detail__land__list__sp__txt h3 {
                font-size: 1.6rem;
                line-height: 1.7;
                font-weight: 600; }
              .index_contents__detail__land__list__sp__txt p {
                font-size: 1.2rem;
                margin-top: 5px;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                align-items: center; }
                .index_contents__detail__land__list__sp__txt p img {
                  width: 12px;
                  margin-right: 5px; }
            .index_contents__detail__land__list__sp__btn {
              position: relative;
              width: 100%;
              border-top: 1px solid #E5E5E5;
              padding: 20px 25px 0; }
          .index_contents__detail__land__list__sp:nth-child(n+2) {
            margin-top: 15px; }
        .index_contents__detail__land__btn {
          position: relative;
          width: 96%;
          background-color: #f5f5f5;
          margin: 0 auto;
          border-radius: 0 0 6px 6px;
          -webkit-border-radius: 0 0 6px 6px;
          -moz-border-radius: 0 0 6px 6px;
          padding: 0 25px 40px; }
          .index_contents__detail__land__btn ul {
            width: 100%; }
            .index_contents__detail__land__btn ul li:nth-child(n+2) {
              margin-top: 10px; }
      .index_contents__detail__thinkhome {
        position: relative;
        width: 100%;
        height: 560px;
        background: url(../../img/index_img/sp_index_thinkhome_backimg.png) no-repeat center center;
        background-size: cover;
        margin-top: 140px; }
        .index_contents__detail__thinkhome a {
          position: relative;
          width: 100%;
          height: 560px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          align-items: center;
          justify-content: center;
          z-index: 5; }
          .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text {
            position: relative;
            width: 70%; }
            .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text h3 {
              width: 150px;
              margin: 0 auto; }
              .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text h3 img {
                width: 100%; }
            .index_contents__detail__thinkhome a .index_contents__detail__thinkhome__text p {
              text-align: justify;
              color: #fff;
              font-size: 1.5rem;
              line-height: 2.0;
              margin-top: 30px; }
          .index_contents__detail__thinkhome a .window {
            overflow: hidden;
            position: absolute;
            bottom: 20px;
            right: 20px;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border: 1px solid #fff;
            z-index: 15; }
          .index_contents__detail__thinkhome a .window:after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            width: 38px;
            height: 38px;
            background: url(../img/window_icon_wh.svg) no-repeat center center;
            background-size: 12px; }
      .index_contents__detail__thinkhome::after {
        content: '';
        position: absolute;
        width: 100%;
        height: 560px;
        top: 0;
        left: 0;
        background-color: rgba(0, 0, 0, 0.15); }
      .index_contents__detail__column {
        position: relative;
        width: 100%;
        margin: 140px auto 0; }
        .index_contents__detail__column__left {
          position: relative;
          width: 100%; }
          .index_contents__detail__column__left .title_sp {
            width: 90%;
            margin: 0 auto; }
          .index_contents__detail__column__left__cat {
            position: relative;
            width: 94%;
            margin: 0 auto; }
            .index_contents__detail__column__left__cat ul {
              width: 100%;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              -moz-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              justify-content: space-between; }
              .index_contents__detail__column__left__cat ul li {
                width: 49.5%;
                font-size: 1.2rem; }
                .index_contents__detail__column__left__cat ul li a {
                  width: 100%;
                  height: 42px;
                  font-weight: 500;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  align-items: center;
                  background: url(../img/list_mk.svg) no-repeat 17px center;
                  background-size: 5px;
                  background-color: #f5f5f5;
                  padding-left: 28px;
                  border-radius: 4px;
                  -webkit-border-radius: 4px;
                  -moz-border-radius: 4px; }
              .index_contents__detail__column__left__cat ul li:nth-child(n+3) {
                margin-top: 5px; }
        .index_contents__detail__column__right {
          position: relative;
          width: 90%;
          margin: 25px auto 0; }
          .index_contents__detail__column__right h4.btn_style03 {
            position: absolute;
            top: -135px;
            right: 0;
            z-index: 10; }
          .index_contents__detail__column__right__list {
            position: relative;
            width: 100%;
            border-top: 1px solid #E5E5E5; }
            .index_contents__detail__column__right__list__sp {
              position: relative;
              width: 100%;
              padding: 20px 0;
              border-bottom: 1px solid #E5E5E5; }
              .index_contents__detail__column__right__list__sp__desc {
                position: relative;
                width: 100%; }
                .index_contents__detail__column__right__list__sp__desc h3 {
                  font-size: 1.6rem;
                  line-height: 1.6;
                  font-weight: 600; }
                .index_contents__detail__column__right__list__sp__desc__option {
                  width: 100%;
                  display: -webkit-flex;
                  display: -moz-flex;
                  display: -ms-flex;
                  display: -o-flex;
                  display: flex;
                  align-items: center;
                  justify-content: space-between;
                  margin-top: 15px; }
                  .index_contents__detail__column__right__list__sp__desc__option li.cat_style {
                    position: relative;
                    font-size: 1rem;
                    line-height: 1.0;
                    font-weight: 500;
                    padding-left: 8px;
                    background: url(../img/circle_icon_bl.svg) no-repeat 0 3px;
                    background-size: 4px; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a, .index_contents__detail__column__right__list__sp__desc__option li.cat_style a:link a:visited {
                      position: relative;
                      color: #111; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a::after {
                      position: absolute;
                      bottom: -2px;
                      left: 0;
                      content: '';
                      width: 100%;
                      height: 1px;
                      background: #69A6BD;
                      transform: scale(0, 1);
                      transform-origin: right top;
                      transition: transform .3s; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a:hover {
                      color: #69A6BD; }
                    .index_contents__detail__column__right__list__sp__desc__option li.cat_style a:hover::after {
                      transform-origin: left top;
                      transform: scale(1, 1); }
                  .index_contents__detail__column__right__list__sp__desc__option li.time_style {
                    font-size: 1rem; }
                    .index_contents__detail__column__right__list__sp__desc__option li.time_style img {
                      width: 17px;
                      padding-right: 5px; }
            .index_contents__detail__column__right__list__none {
              position: relative;
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              background-color: #f5f5f5;
              padding: 25px 5px;
              margin-top: 30px; }
              .index_contents__detail__column__right__list__none p {
                text-align: center;
                font-size: 1.4rem; }
      .index_contents__detail__company {
        position: relative;
        width: 90%;
        margin: 100px auto 0; }
        .index_contents__detail__company__desc {
          position: relative;
          width: 100%; }
          .index_contents__detail__company__desc__left {
            width: 100%;
            padding-top: 5px; }
            .index_contents__detail__company__desc__left h3 {
              color: #111;
              font-size: 1.8rem;
              line-height: 1.8;
              font-weight: 600; }
            .index_contents__detail__company__desc__left p {
              text-align: justify;
              font-size: 1.4rem;
              line-height: 2.0;
              margin-top: 25px; }
              .index_contents__detail__company__desc__left p img {
                width: 100%;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px; }
            .index_contents__detail__company__desc__left h4 {
              margin-top: 40px; }
          .index_contents__detail__company__desc__right {
            width: 100%;
            border-top: 1px solid #E5E5E5;
            margin: 40px 0; }
            .index_contents__detail__company__desc__right dl {
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              align-items: center;
              border-bottom: 1px solid #E5E5E5;
              padding: 20px 2px; }
              .index_contents__detail__company__desc__right dl dt {
                width: 70px;
                font-size: 1.3rem;
                font-weight: 500;
                background: url(../img/list_mk.svg) no-repeat 2px 10px;
                background-size: 5px;
                padding-left: 13px; }
              .index_contents__detail__company__desc__right dl dd {
                flex: 1;
                font-size: 1.4rem; }
      .index_contents__detail__slide {
        position: relative;
        width: 100%;
        margin-top: 80px; }
        .index_contents__detail__slide .slider {
          position: relative;
          width: 100%; }
          .index_contents__detail__slide .slider li {
            padding: 0 5px; }
            .index_contents__detail__slide .slider li img {
              width: 100%;
              border-radius: 4px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px; } }

/* ########## index_contents ########## */
/* ########## class_style ########## */
@media screen and (min-width: 1024px) {
  .mt_0 {
    margin-top: 0 !important; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .mt_0 {
    margin-top: 0 !important; } }
@media screen and (max-width: 767px) {
  .mt_0 {
    margin-top: 0 !important; } }

@media screen and (max-width: 767px) {
  .pc {
    display: none; } }

@media screen and (min-width: 1024px) {
  .sp {
    display: none; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .sp {
    display: none; } }

@media screen and (min-width: 1024px) {
  .img_border01 {
    border: 1px solid #E5E5E5; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .img_border01 {
    border: 1px solid #E5E5E5; } }
@media screen and (max-width: 767px) {
  .img_border01 {
    border: 1px solid #E5E5E5; } }

@media screen and (min-width: 1024px) {
  .img_border02 {
    border: 1px solid #ddd; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .img_border02 {
    border: 1px solid #ddd; } }
@media screen and (max-width: 767px) {
  .img_border02 {
    border: 1px solid #ddd; } }

@media screen and (min-width: 1024px) {
  .sticky {
    position: sticky;
    position: -webkit-sticky;
    top: 100px; } }
@media screen and (max-width: 1023px) and (min-width: 768px) {
  .sticky {
    position: sticky;
    position: -webkit-sticky;
    top: 85px; } }

.f_black_style01 {
  color: #111; }

.f_black_style02 {
  color: #111;
  font-weight: 500; }

.f_red_style01 {
  color: #d32626; }

.f_red_style02 {
  color: #d32626;
  font-weight: 500; }

/* ########## class_style ########## */
/* ########## recaptcha ########## */
.grecaptcha-badge {
  visibility: hidden; }

/* ########## recaptcha ########## */
