@charset "UTF-8";
/*! Writen  by SCSS */
/*オープンテンプレ*/
.menu-item {
  background: #ccc;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 450px; }

.menu-item span {
  font-size: 30px; }

.crbox {
  background-color: #f2f2f2;
  border: none; }

/*オープンテンプレ*/
#main {
  overflow: hidden; }

@media screen and (max-width: 480px) {
  .msn-h2--cap .msn-h2__title {
    font-size: 1.8rem; } }

.info_red {
  color: #ad181f; }

.msn-topInfo__copy {
  font-size: 34px;
  font-size: calc(36vw / 16);
  font-feature-settings: "palt";
  letter-spacing: 0.06em; }

.msn-topInfo__copy.c,
.msn-topInfo__copy .c {
  color: #907809; }

.msn-topInfo__copy .s1 {
  font-size: 90%; }

.msn-topInfo__copy .s2 {
  font-size: 80%; }

.msn-topInfo__copy .s3 {
  font-size: 70%; }

.msn-topInfo__copy .s4 {
  font-size: 60%; }

.msn-topInfo__copy .s5 {
  font-size: 50%; }

.msn-topInfo__copy .l1 {
  font-size: 110%; }

.msn-topInfo__copy .l2 {
  font-size: 120%; }

.msn-topInfo__copy .l3 {
  font-size: 130%; }

.msn-topInfo__copy .l4 {
  font-size: 140%; }

/*@media screen and (max-width: 1600px) {
	.msn-topInfo__copy{
		font-size: calc(37vw / 16);
	}
}
@media screen and (max-width: 960px) {
	.msn-topInfo__copy{
		font-size: 2.8vw;
	}
}*/
@media screen and (max-width: 767px) {
  .info_wrap {
    padding: 5px 20px 10px; }

  .msn-topInfo__copy {
    font-size: 5vw; } }
@media screen and (max-width: 500px) {
  .msn-topInfo__copy {
    font-size: 6.6vw;
    line-height: 1.5; } }
@media screen and (max-width: 767px) {
  .msn-fv__mv .cap {
    font-size: 9px; }
    .msn-fv__mv .cap.bg {
      background: none !important; } }

.msn-obi {
  background: #000; }
  .msn-obi .obi_wrap {
    text-align: center;
    padding: calc(20vw / 16) 0;
    padding: calc(13vw / 16) 0;
    padding: calc(20vw / 16) 0; }
    @media screen and (max-width: 767px) {
      .msn-obi .obi_wrap {
        padding: 25px 0; } }
    @media screen and (max-width: 480px) {
      .msn-obi .obi_wrap {
        padding: 5px 0; } }
    .msn-obi .obi_wrap ul {
      display: flex;
      justify-content: center; }
      @media screen and (max-width: 767px) {
        .msn-obi .obi_wrap ul {
          flex-wrap: wrap;
          position: relative; }
          .msn-obi .obi_wrap ul::after {
            width: 100%;
            height: 1px;
            position: absolute;
            left: 0;
            bottom: 37%;
            bottom: 50%;
            background: #fff; } }
      .msn-obi .obi_wrap ul li {
        color: #fff;
        padding: 0 calc(20% / 16);
        padding: 0 calc(30% / 16);
        display: flex;
        justify-content: center;
        align-items: center; }
        @media screen and (max-width: 767px) {
          .msn-obi .obi_wrap ul li {
            padding: 15px 5px; } }
        .msn-obi .obi_wrap ul li.o1 {
          padding-right: calc(10% / 16); }
          @media screen and (max-width: 767px) {
            .msn-obi .obi_wrap ul li.o1 {
              padding: 15px 5px 5px;
              width: 100%; } }
        .msn-obi .obi_wrap ul li.o2 {
          padding-left: calc(10% / 16); }
          @media screen and (max-width: 767px) {
            .msn-obi .obi_wrap ul li.o2 {
              padding: 5px 5px 15px;
              width: 100%;
              border-bottom: solid 1px #fff; } }
        .msn-obi .obi_wrap ul li.o3 {
          border-left: solid 1px #fff; }
          @media screen and (max-width: 660px) {
            .msn-obi .obi_wrap ul li.o3 {
              border-left: none;
              width: 100%;
              border-bottom: solid 1px #fff; } }
        .msn-obi .obi_wrap ul li.o4 {
          border-left: solid 1px #fff; }
          @media screen and (max-width: 660px) {
            .msn-obi .obi_wrap ul li.o4 {
              border-left: none;
              width: 100%; } }
        .msn-obi .obi_wrap ul li:nth-child(1) {
          border-left: none !important; }
        .msn-obi .obi_wrap ul li.col2 {
          gap: 0 calc(20vw / 16);
          border-left: none !important;
          padding-inline: calc(30% / 16); }
          @media screen and (max-width: 660px) {
            .msn-obi .obi_wrap ul li.col2 {
              gap: 15px;
              padding: 0 15px;
              padding-bottom: 20px !important;
              border-bottom: 1px solid #fff; } }
        .msn-obi .obi_wrap ul li.line {
          border-left: solid 1px #fff; }
          @media screen and (max-width: 660px) {
            .msn-obi .obi_wrap ul li.line {
              border-left: none; } }
        @media screen and (max-width: 660px) {
          .msn-obi .obi_wrap ul li.line_sp {
            border-left: solid 1px #fff; } }
        @media screen and (max-width: 660px) {
          .msn-obi .obi_wrap ul li.sp100 {
            width: 100%;
            padding: 0; } }
        .msn-obi .obi_wrap ul li.x {
          padding-left: 0; }
          .msn-obi .obi_wrap ul li.x div {
            width: calc(66vw / 16); }
            @media screen and (max-width: 660px) {
              .msn-obi .obi_wrap ul li.x div {
                width: calc(90vw / 8);
                width: calc(75vw / 8); } }
            .msn-obi .obi_wrap ul li.x div img {
              width: 100%; }
        .msn-obi .obi_wrap ul li .t0 {
          font-size: clamp(10px, calc(24vw / 16), 24px);
          font-size: clamp(10px, calc(26vw / 16), 26px);
          font-size: clamp(10px, calc(28vw / 16), 28px);
          font-weight: 900;
          /*font-size: clamp(10px, calc(24vw / 18), 24px);*/
          letter-spacing: 0.2em; }
          @media screen and (max-width: 660px) {
            .msn-obi .obi_wrap ul li .t0 {
              font-size: calc(26vw / 8); } }
          @media screen and (max-width: 480px) {
            .msn-obi .obi_wrap ul li .t0 {
              font-size: calc(33vw / 8);
              font-size: calc(37vw / 8);
              font-size: calc(40vw / 8); } }
        .msn-obi .obi_wrap ul li .t1 {
          font-size: clamp(10px, calc(26vw / 16.4), 27px);
          font-size: clamp(10px, calc(29vw / 16.4), 29px);
          /*font-size: clamp(10px, calc(26vw / 18), 27px);*/
          position: relative;
          line-height: 1;
          letter-spacing: 0.15em;
          text-align: left;
          line-height: 1.6; }
          .msn-obi .obi_wrap ul li .t1.ls {
            letter-spacing: 0.22em; }
            .msn-obi .obi_wrap ul li .t1.ls .l2 {
              padding-right: 0.1em; }
          @media screen and (max-width: 660px) {
            .msn-obi .obi_wrap ul li .t1 {
              font-size: calc(33vw / 8);
              text-align: center;
              line-height: 2; } }
          @media screen and (max-width: 480px) {
            .msn-obi .obi_wrap ul li .t1 {
              font-size: calc(45vw / 8);
              font-size: calc(35vw / 8);
              font-size: calc(40vw / 8);
              font-size: calc(42vw / 8);
              text-align: center;
              line-height: 2;
              letter-spacing: 0.05em; } }
          .msn-obi .obi_wrap ul li .t1 .s1 {
            font-size: 60%;
            display: block;
            letter-spacing: 0.14em;
            margin-bottom: -0.4em; }
            @media screen and (max-width: 767px) {
              .msn-obi .obi_wrap ul li .t1 .s1.vpc {
                display: none; } }
            @media screen and (max-width: 480px) {
              .msn-obi .obi_wrap ul li .t1 .s1 {
                margin-bottom: -0.1em;
                font-size: 67%; } }
            .msn-obi .obi_wrap ul li .t1 .s1.ls0 {
              letter-spacing: 0; }
            .msn-obi .obi_wrap ul li .t1 .s1 .l {
              font-size: 112%; }
            .msn-obi .obi_wrap ul li .t1 .s1 .s {
              font-size: 87.5%; }
          .msn-obi .obi_wrap ul li .t1 .s2 {
            font-size: 55%;
            font-size: 65%;
            letter-spacing: 0.05em; }
          .msn-obi .obi_wrap ul li .t1 .s3 {
            font-size: 92%; }
          .msn-obi .obi_wrap ul li .t1 .s4 {
            display: block;
            font-size: 60%;
            margin-bottom: 0.3em;
            letter-spacing: 0.1em; }
          .msn-obi .obi_wrap ul li .t1 .l1 {
            font-size: 230%;
            line-height: 0.5;
            letter-spacing: 0;
            display: inline-block;
            transform: translateY(0.08em); }
            @media screen and (max-width: 480px) {
              .msn-obi .obi_wrap ul li .t1 .l1 {
                font-size: 180%;
                font-size: 170%; } }
          .msn-obi .obi_wrap ul li .t1 .min {
            display: inline-block;
            position: relative;
            width: 2.3em;
            max-width: 1.9em;
            margin-left: 0.15em; }
            @media screen and (max-width: 480px) {
              .msn-obi .obi_wrap ul li .t1 .min {
                width: 1.9em; } }
            .msn-obi .obi_wrap ul li .t1 .min .m {
              white-space: nowrap;
              display: block;
              font-size: 40%;
              position: absolute;
              top: -0.3em;
              left: 0;
              letter-spacing: 0; }
              @media screen and (max-width: 480px) {
                .msn-obi .obi_wrap ul li .t1 .min .m {
                  top: -0.2em;
                  /*top: 0.5em;
                  top: 75%;
                  top: 75%;
                  left: auto;
                  right: 0;*/ } }
          .msn-obi .obi_wrap ul li .t1 .l2 {
            font-size: 230%;
            line-height: 0.4;
            letter-spacing: 0;
            display: inline-block;
            transform: translateY(0.08em); }
            @media screen and (max-width: 480px) {
              .msn-obi .obi_wrap ul li .t1 .l2 {
                font-size: 180%;
                font-size: 170%; } }
          .msn-obi .obi_wrap ul li .t1 .l3 {
            font-size: 122%;
            display: inline-block;
            transform: translateY(0.02em); }
            @media screen and (max-width: 480px) {
              .msn-obi .obi_wrap ul li .t1 .l3 {
                font-size: 110%; } }
        .msn-obi .obi_wrap ul li.line_2 {
          padding: 0 calc(30% / 16);
          padding: 0 calc(35% / 16); }
          @media screen and (max-width: 660px) {
            .msn-obi .obi_wrap ul li.line_2 {
              width: 50%;
              padding: 1.295em 0; } }
          .msn-obi .obi_wrap ul li.line_2:nth-child(1) {
            border-left: none; }
          @media screen and (max-width: 660px) {
            .msn-obi .obi_wrap ul li.line_2.sp100 {
              width: 100%; } }
          .msn-obi .obi_wrap ul li.line_2 .t1 {
            transform: translate(0px, 7px); }
            @media screen and (max-width: 660px) {
              .msn-obi .obi_wrap ul li.line_2 .t1 {
                transform: translate(0px, 0);
                line-height: 1.3;
                font-size: calc(26vw / 8);
                text-align: center; } }
            @media screen and (max-width: 480px) {
              .msn-obi .obi_wrap ul li.line_2 .t1 {
                line-height: 1.3;
                font-size: calc(40vw / 8);
                text-align: center;
                letter-spacing: 0.15em; } }
            @media screen and (max-width: 660px) {
              .msn-obi .obi_wrap ul li.line_2 .t1.ex1_sp {
                font-size: calc(20vw / 8); } }
            @media screen and (max-width: 480px) {
              .msn-obi .obi_wrap ul li.line_2 .t1.ex1_sp {
                font-size: calc(37vw / 8); } }
      .msn-obi .obi_wrap ul.obi2 {
        margin-top: calc(20% / 16);
        padding-top: calc(20% / 16);
        border-top: solid 1px #fff; }
        @media screen and (max-width: 660px) {
          .msn-obi .obi_wrap ul.obi2 {
            padding-top: 15px;
            margin-top: 15px;
            padding-top: 25px;
            padding-top: 20px;
            margin-top: 25px;
            margin-top: 20px; } }
        .msn-obi .obi_wrap ul.obi2 li {
          /*padding: 0 calc(30% / 16);
          @include mq(660){
          	width: 50%;
          }
          &:nth-child(1) {
          	border-left: none;
          }
          &.sp100 {
          	@include mq(660){
          		width: 100%;
          		
          	}
          }
          .t1 {
          	@include mq(660){
          			line-height: 1.3;
          			font-size: calc(26vw / 8);
          			text-align: center;
          	}
          	@include mq($br_sp){
          		line-height: 1.3;
          		font-size: calc(40vw / 8);
          		text-align: center;
          		letter-spacing: 0.15em;
          	}
          	&.ex1_sp {
          		@include mq(660){
          			font-size: calc(20vw / 8);
          		}
          		@include mq($br_sp){
          			font-size: calc(37vw / 8);
          		}
          	}
          }*/ }

.read.lg {
  font-size: clamp(16px, calc(20vw / 9.6), 20px);
  font-size: clamp(16px, calc(19vw / 9.6), 19px);
  font-size: clamp(13px, calc(17vw / 9.6), 17px);
  font-size: clamp(13px, calc(18vw / 9.6), 18px);
  text-align: center;
  line-height: 1.6;
  margin-bottom: 2em;
  font-weight: 400;
  font-weight: 900; }
  @media screen and (max-width: 480px) {
    .read.lg {
      font-size: calc(15vw / 3.9);
      margin-bottom: 1.6em; } }

.msn-h2__inner {
  font-weight: 500;
  letter-spacing: 0.05em; }

#sec-feature .read.lg {
  line-height: 2.2;
  font-weight: 400; }
  @media screen and (max-width: 480px) {
    #sec-feature .read.lg {
      line-height: 1.8; } }
#sec-feature .menu-item {
  background: none;
  height: auto;
  display: block; }
  #sec-feature .menu-item .img {
    position: relative; }
    #sec-feature .menu-item .img sup {
      font-size: 7.5px; }
    #sec-feature .menu-item .img .ttl {
      position: absolute;
      inset: 0;
      display: flex;
      justify-content: center;
      align-items: center; }
      #sec-feature .menu-item .img .ttl span {
        color: #fff;
        text-shadow: 0 0 4px rgba(0, 0, 0, 0.6), 2px 2px 4px rgba(0, 0, 0, 0.6), -2px 2px 4px rgba(0, 0, 0, 0.6), -2px -2px 4px rgba(0, 0, 0, 0.6), 2px -2px 4px rgba(0, 0, 0, 0.6); }
  #sec-feature .menu-item .copy {
    padding: 10px 0 5px;
    padding: 15px 0 5px; }
    #sec-feature .menu-item .copy .f1 {
      text-align: center;
      letter-spacing: 0.08em;
      line-height: 1.3;
      font-size: clamp(12px, calc(18vw / 9.6), 18px);
      margin-bottom: 0.8em; }
      @media screen and (max-width: 480px) {
        #sec-feature .menu-item .copy .f1 {
          font-size: calc(15vw / 3.9);
          font-size: calc(16vw / 3.9); } }
    #sec-feature .menu-item .copy .f2 {
      letter-spacing: 0.14em;
      line-height: 1.5;
      font-size: clamp(12px, calc(16vw / 9.6), 16px); }
      @media screen and (max-width: 480px) {
        #sec-feature .menu-item .copy .f2 {
          letter-spacing: 0.1em;
          font-size: calc(12vw / 3.9);
          font-size: calc(14vw / 3.9); } }
@media screen and (max-width: 480px) {
  #sec-feature .msn-imageGrid__item:not(:last-child) {
    margin-bottom: 4rem; } }

.list01 > div {
  display: flex;
  flex-direction: column;
  justify-content: space-between; }

#sec-plan .read.lg {
  line-height: 2.2;
  font-weight: 400; }
  @media screen and (max-width: 480px) {
    #sec-plan .read.lg {
      line-height: 1.8; } }
@media screen and (max-width: 480px) {
  #sec-plan .read {
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-size: calc(14vw / 3.9);
    margin-bottom: 40px; }
    #sec-plan .read br {
      display: none; }
      #sec-plan .read br.vsp480 {
        display: block; } }
@media screen and (max-width: 480px) {
  #sec-plan .msn-buttonMore-wrap a {
    min-width: 160px !important;
    margin-inline: auto;
    font-size: 12px; } }
@media screen and (min-width: 768px) {
  #sec-plan .msn-section__container {
    max-width: 1400px; } }
@media screen and (min-width: 768px) {
  #sec-plan .plan {
    max-width: 960px;
    margin-inline: auto; } }
#sec-plan .msn-imageGrid--cols3--gap {
  justify-content: center;
  gap: calc(20% / 13.6); }
#sec-plan .menu-item {
  background: none;
  height: auto;
  display: block;
  text-align: center; }
  @media screen and (max-width: 480px) {
    #sec-plan .menu-item img {
      width: 100%; } }
  #sec-plan .menu-item .txt {
    text-align: center; }
    #sec-plan .menu-item .txt .p1 {
      font-size: clamp(12px, calc(32vw / 9.6), 32px);
      font-weight: 400;
      letter-spacing: 0.05em;
      line-height: 1;
      margin: 0.2em 0 0.2em; }
      @media screen and (max-width: 480px) {
        #sec-plan .menu-item .txt .p1 {
          font-size: calc(28vw / 3.9); } }
      #sec-plan .menu-item .txt .p1 .s {
        font-size: 60%; }
    #sec-plan .menu-item .txt .p2 {
      font-size: clamp(12px, calc(28vw / 9.6), 28px);
      font-weight: 400;
      letter-spacing: 0.05em;
      line-height: 1;
      margin: 0 0 0.2em; }
      @media screen and (max-width: 480px) {
        #sec-plan .menu-item .txt .p2 {
          font-size: calc(24vw / 3.9); } }
      #sec-plan .menu-item .txt .p2 .s {
        font-size: 75%; }
    #sec-plan .menu-item .txt .p3 {
      font-size: clamp(12px, calc(20vw / 9.6), 20px);
      font-weight: 400;
      letter-spacing: 0.05em;
      line-height: 1.5; }
      @media screen and (max-width: 480px) {
        #sec-plan .menu-item .txt .p3 {
          font-size: calc(16vw / 3.9); } }
@media (min-width: 768px) {
  #sec-plan #top_plan .msn-imageGrid__item {
    flex-basis: calc(45.125% - 2%);
    flex-basis: calc(440% / 13.6);
    flex-basis: 100%;
    max-width: 440px;
    margin-inline: auto; } }
@media screen and (max-width: 480px) {
  #sec-plan #top_plan .msn-c-madori__item:not(:last-child) {
    margin-bottom: 2.5rem; } }
@media screen and (max-width: 480px) {
  #sec-plan #top_plan .msn-c-madori__item {
    max-width: 85%;
    max-width: 75%;
    margin-inline: auto; } }
#sec-plan .msn-buttonMore-wrap .msn-buttonMore {
  font-size: clamp(14px, calc(19vw / 16), 19px);
  letter-spacing: 0.1em;
  font-family: "游明朝","Yu Mincho",YuMincho,"游明朝体","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝", serif;
  font-feature-settings: "palt"; }
  @media screen and (max-width: 767px) {
    #sec-plan .msn-buttonMore-wrap .msn-buttonMore {
      font-family: YakuHanMP,"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho","游明朝",YuMincho,"游明朝体","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif; } }
  @media screen and (max-width: 480px) {
    #sec-plan .msn-buttonMore-wrap .msn-buttonMore {
      font-size: 13px; }
      #sec-plan .msn-buttonMore-wrap .msn-buttonMore .msn-buttonMore__label {
        line-height: 1;
        transform: translate(-10px, -1px); } }

.yokoku {
  max-width: 68px; }

@media screen and (max-width: 480px) {
  #sec-info .msn-newsTopicsBlock {
    gap: 14px; } }
@media screen and (max-width: 480px) {
  #sec-info .msn-newsTopicsBlock__title {
    font-size: 14px; } }
@media screen and (max-width: 480px) {
  #sec-info .msn-newsTopicsBlock__date {
    width: 105px; } }
@media screen and (max-width: 480px) {
  #sec-info .msn-newsTopicsBlock__content {
    width: calc(100% - 130px);
    width: calc(100% - 115px); } }
@media screen and (max-width: 480px) {
  #sec-info .msn-newsTopicsBlock__topicLabel {
    font-size: 9px;
    line-height: 10px;
    padding: 2px 3px; } }

.msn-cv-buttons.online {
  margin-top: -5px; }
  @media screen and (max-width: 480px) {
    .msn-cv-buttons.online {
      margin-top: -15px; } }
.msn-cv-buttons .msn-cv-button--online .msn-cv-button__link {
  background-color: #e08a85; }
  .msn-cv-buttons .msn-cv-button--online .msn-cv-button__link:hover {
    background-color: #bd7a7a;
    background-color: #e8a7a4; }

.ohkarte-add_banner.ohkarte-js-add_banner {
  display: none; }

.kyugyokyugyo {
  text-align: center;
  margin: 20px auto 0;
  border: 1px solid #c30707;
  box-sizing: border-box;
  padding: 20px 15px; }

.kyugyo p {
  font-size: 17px;
  color: #c30707;
  font-weight: bold;
  line-height: 1.8; }

.kyugyo p.k_ttl {
  font-size: 19px;
  margin-bottom: 10px;
  line-height: 1.5; }

.kyugyokyugyo {
  text-align: center;
  margin: 20px auto 0;
  border: 1px solid #c30707;
  box-sizing: border-box;
  padding: 20px 15px; }

.kyugyo p {
  /*font-size: 15px;*/
  color: #c30707;
  font-weight: bold; }

.kyugyo p:first-child {
  margin-bottom: 5px; }

.kyugyo {
  text-align: center;
  margin: 20px auto 30px;
  border: 1px solid #c30707;
  box-sizing: border-box;
  padding: 20px 20px; }

@media screen and (max-width: 767px) {
  .kyugyo {
    width: 100%;
    max-width: 530px;
    margin-bottom: 32px;
    padding: 10px; } }
@media screen and (max-width: 600px) {
  .kyugyo p {
    font-size: 3.2vw;
    font-size: 3.6vw; } }
@media screen and (max-width: 400px) {
  .kyugyo p {
    letter-spacing: -0.03em; } }
@media screen and (max-width: 320px) {
  .kyugyo {
    text-align: center;
    margin: 30px auto 45px;
    border: 1px solid #c30707;
    max-width: 740px;
    box-sizing: border-box;
    padding: 20px 20px; }

  .kyugyo p {
    font-size: 16px;
    color: #c30707;
    font-weight: bold;
    line-height: 1.6; }

  .kyugyo p span {
    letter-spacing: -0.15em; } }
@media (min-width: 768px) {
  .msn-linkBlock {
    margin-bottom: 20px;
    /* padding: 20px 10px; */
    /* max-width: 640px; */
    margin: 0 auto; }

  .msn-linkBlock__text {
    font-size: 17px;
    margin-right: 0.5em;
    font-feature-settings: "palt";
    letter-spacing: 0.03em;
    color: #555;
    color: #000;
    /*	font-size: 15px;*/ }

  	/*.msn-section__container {
  		position: relative;
          max-width: 1000px;
          margin-right: auto;
          margin-left: auto;
          padding-left: 20px;
          padding-right: 20px;
      }*/ }
@media (max-width: 767px) {
  .msn-linkBlock__text {
    text-align: center !important;
    font-size: 14px;
    color: #555;
    color: #000;
    margin-bottom: 18px;
    margin-bottom: 13px;
    font-weight: 500; }

  .msn-topInfo__buttonGroup {
    padding: 0 15px; }

  .msn-linkBlock__button {
    font-size: 15px; }

  .msn-linkBlock__button .msn-buttonA {
    line-height: 40px;
    padding-left: 1.8em;
    padding-right: 1.8em; }

  .msn-linkBlock__button .msn-buttonA .msn-buttonA__label {
    display: inline-block;
    transform: translate(0, 0.03em);
    position: relative;
    top: -0.02em; } }
@media screen and (max-width: 600px) {
  .kyugyo p {
    font-size: 3.6vw;
    line-height: 1.6; }

  .kyugyo p.k_ttl {
    font-size: 4.0vw;
    line-height: 1.8;
    margin-bottom: 9px; } }
.features ul li {
  width: 100%;
  margin-bottom: 90px;
  display: flex;
  align-items: flex-end;
  /*a {
  	display: block;
  	width: 100%;
  	position: relative;
  }*/ }
  @media screen and (max-width: 767px) {
    .features ul li {
      margin: 0 auto 60px;
      display: block; }
      .features ul li:last-child {
        margin-bottom: 0; } }
  .features ul li:nth-child(odd) {
    flex-direction: row-reverse; }
  .features ul li .msn-linkBlock__button {
    max-width: 260px; }
    @media screen and (max-width: 480px) {
      .features ul li .msn-linkBlock__button {
        font-size: 12px;
        font-size: 13px;
        max-width: 200px;
        max-width: 160px; }
        .features ul li .msn-linkBlock__button .msn-buttonC {
          min-width: 200px;
          min-width: 160px; }
          .features ul li .msn-linkBlock__button .msn-buttonC .msn-buttonC__label {
            line-height: 1;
            transform: translate(-10px, -1px); } }
  .features ul li .img {
    position: relative;
    width: 66%;
    margin: 0 0 0 auto; }
    @media screen and (max-width: 767px) {
      .features ul li .img {
        width: 100%;
        margin: 0 auto; }
        .features ul li .img .cap {
          font-size: 9px;
          bottom: auto;
          top: 0; } }
  .features ul li .txt {
    position: relative;
    width: 47%;
    margin: 0 -13% 0 0;
    background: #fff;
    transition-delay: 0.3s;
    padding: 7% 3% 2% 11%;
    overflow: hidden; }
    @media screen and (max-width: 1600px) {
      .features ul li .txt {
        padding: 6% 3% 2% 11%; } }
    @media screen and (max-width: 1360px) {
      .features ul li .txt {
        padding: 1% 3% 0% 11%; } }
    @media screen and (max-width: 767px) {
      .features ul li .txt {
        width: 85%;
        max-width: 340px;
        margin: -60px auto 0 0;
        padding: 20px 0 0 40px;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 30px 20px 20px;
        text-align: center; } }
    .features ul li .txt .t1 {
      position: relative;
      font-size: clamp(15px, calc(22vw / 16), 22px); }
      .features ul li .txt .t1::after {
        content: "";
        display: block;
        position: absolute;
        top: 0.8em;
        left: -45%;
        width: 30%;
        height: 1px;
        background-color: #333; }
        @media screen and (max-width: 767px) {
          .features ul li .txt .t1::after {
            left: -20%;
            width: 15%;
            top: 0.6em;
            left: 50%;
            top: -30px;
            width: 1px;
            height: 20px; } }
    .features ul li .txt .t11 {
      display: block;
      margin: 0 0 1em 0;
      font-size: 38px;
      font-size: clamp(15px, calc(22vw / 16), 22px);
      font-size: clamp(17px, calc(26vw / 16), 26px);
      font-weight: 400;
      font-weight: bold; }
    .features ul li .txt .t12 {
      display: block;
      margin-bottom: 0.25em;
      font-size: 30px;
      font-size: clamp(12px, calc(17vw / 16), 17px);
      font-size: clamp(15px, calc(20vw / 16), 20px);
      font-weight: 700;
      letter-spacing: 0.1em; }
    .features ul li .txt .t13 {
      display: block;
      margin-bottom: 1em;
      font-size: 30px;
      font-size: clamp(20px, calc(40vw / 16), 40px);
      font-size: clamp(24px, calc(40vw / 16), 40px);
      letter-spacing: 0.1em;
      line-height: 1;
      font-weight: 500; }
    .features ul li .txt .t2 {
      font-size: 20px;
      font-size: clamp(14px, calc(19vw / 16), 19px);
      line-height: 2;
      font-weight: 500;
      letter-spacing: 0.1em; }
      @media screen and (max-width: 480px) {
        .features ul li .txt .t2 .msn-linkBlock__button {
          margin-inline: auto; } }
    .features ul li .txt .t21 {
      margin-bottom: 1.2em;
      font-weight: 700; }
      @media screen and (max-width: 480px) {
        .features ul li .txt .t21 {
          font-size: 16px; } }
    .features ul li .txt .t22 {
      margin-top: 10px;
      font-size: 20px;
      padding-left: 10px;
      position: relative; }
      .features ul li .txt .t22::before {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: 0;
        width: 0;
        height: 0;
        margin-top: -4px;
        border-style: solid;
        border-width: 3px 0 3px 6px;
        border-color: transparent transparent transparent #111; }
  .features ul li:nth-child(2n) .img {
    margin: 0 auto 0 0; }
    @media screen and (max-width: 767px) {
      .features ul li:nth-child(2n) .img {
        margin: 0 auto; } }
    .features ul li:nth-child(2n) .img .cap {
      right: calc(208% / 10.56); }
      @media screen and (max-width: 767px) {
        .features ul li:nth-child(2n) .img .cap {
          right: 0; } }
  .features ul li:nth-child(2n) .txt {
    margin: 0 0 0 -13%; }
    @media screen and (max-width: 767px) {
      .features ul li:nth-child(2n) .txt {
        margin: -60px auto 0 0;
        margin: -60px 0 0 auto;
        padding: 20px 40px 0 0;
        text-align: right;
        margin: 0;
        padding: 30px 20px 20px;
        text-align: center; } }
    .features ul li:nth-child(2n) .txt .t1::after {
      content: "";
      display: block;
      position: absolute;
      top: 0.8em;
      left: -45%;
      width: 30%;
      height: 1px;
      background-color: #333; }
      @media screen and (max-width: 767px) {
        .features ul li:nth-child(2n) .txt .t1::after {
          left: -20%;
          width: 15%;
          top: 0.6em;
          left: auto;
          right: -20%;
          left: 50%;
          top: -30px;
          width: 1px;
          height: 20px;
          right: auto; } }

.contact .msn-h2__inner, .contact #contact-lead {
  color: #fff !important; }

.msn-newsTopicsBlock__item .msn-newsTopicsBlock__content .in {
  font-weight: 500;
  font-weight: 400; }

/*# sourceMappingURL=top.css.map */
