@charset "UTF-8";
/*----------------------------------------------
variable
----------------------------------------------*/
.breadcrumb {
  padding: 10px 19px; }
  .breadcrumb ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    padding-left: 0; }
    .breadcrumb ul li {
      font-size: 10px;
      line-height: 1.5;
      color: #000;
      font-weight: normal;
      list-style: none; }
      @media (max-width: 767px) {
        .breadcrumb ul li {
          font-size: calc(10 / 390 * 100vw); } }
      .breadcrumb ul li:not(:last-of-type)::after {
        content: " / ";
        display: inline-block;
        margin-left: 7px;
        margin-right: 7px; }
        @media (max-width: 767px) {
          .breadcrumb ul li:not(:last-of-type)::after {
            margin-left: calc(7 / 390 * 100vw);
            margin-right: calc(7 / 390 * 100vw); } }
      .breadcrumb ul li a {
        color: #000;
        text-decoration: none; }
        .breadcrumb ul li a:hover {
          text-decoration: underline;
          color: #000; }

.thoughtSec01 .inner {
  padding-top: 0; }

.h1Area {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  max-width: 1067px;
  margin: 0 auto;
  align-items: center; }
  @media (max-width: 767px) {
    .h1Area {
      flex-direction: column; } }
  .h1Area h1 {
    font-size: 3.9rem;
    line-height: 1.435;
    color: #004831;
    font-weight: bold;
    flex-shrink: 0;
    margin-top: -51px; }
    @media (max-width: 767px) {
      .h1Area h1 {
        font-size: calc(30 / 390 * 100vw);
        margin-top: 0;
        margin-bottom: calc(20 / 390 * 100vw); } }

.government .h1Area02 h1 {
  background: #AF244D; }
.government .h1Area02 .h1Area02column {
  padding: 50px 40px 20px;
  gap: 30px;
  align-items: flex-start;
  background: #F5E8E5; }
  @media (max-width: 767px) {
    .government .h1Area02 .h1Area02column {
      padding: calc(10 / 390 * 100vw);
      gap: calc(30 / 390 * 100vw); } }
.government .h1Area02 .h1Area02columnTextArea {
  margin-left: 0;
  width: 545px;
  max-width: 100%; }
.government .h1Area02 .h1Area02KomeArea {
  margin: 18px 0 0; }
  .government .h1Area02 .h1Area02KomeArea .komeText {
    margin-left: 0;
    padding: 0; }
.government .h1Area02 .h1Area02columnCTA {
  width: 400px;
  max-width: 100%;
  background: #FFF;
  position: relative;
  padding: 10px 10px 15px; }
  @media (max-width: 767px) {
    .government .h1Area02 .h1Area02columnCTA {
      width: calc(400 / 390 * 100vw);
      padding: calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) calc(15 / 390 * 100vw);
      margin: 0 auto; } }
  .government .h1Area02 .h1Area02columnCTA a {
    text-decoration: none; }
    .government .h1Area02 .h1Area02columnCTA a:hover .btn {
      color: #318A50;
      background: #fff; }
      .government .h1Area02 .h1Area02columnCTA a:hover .btn::before {
        border-color: transparent transparent #318A50 transparent; }
  .government .h1Area02 .h1Area02columnCTA .h1Area02columnCTALabel {
    color: #FFF;
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    background: #293642;
    font-size: 16px;
    font-weight: bold;
    padding: 7px 15px; }
    @media (max-width: 767px) {
      .government .h1Area02 .h1Area02columnCTA .h1Area02columnCTALabel {
        font-size: calc(16 / 390 * 100vw);
        padding: calc(7 / 390 * 100vw) calc(15 / 390 * 100vw); } }
  .government .h1Area02 .h1Area02columnCTA img {
    margin-bottom: 5px;
    width: 100%; }
    @media (max-width: 767px) {
      .government .h1Area02 .h1Area02columnCTA img {
        margin-bottom: calc(5 / 390 * 100vw); } }
  .government .h1Area02 .h1Area02columnCTA p {
    text-align: center;
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 10px; }
    @media (max-width: 767px) {
      .government .h1Area02 .h1Area02columnCTA p {
        font-size: calc(15 / 390 * 100vw);
        margin-bottom: calc(10 / 390 * 100vw); } }
  .government .h1Area02 .h1Area02columnCTA .btn::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0; }
.h1Area02 .inner {
  padding: 10px 19px 14px; }
  @media (max-width: 767px) {
    .h1Area02 .inner {
      padding: calc(15 / 390 * 100vw); } }
.h1Area02 h1 {
  background: #026096;
  color: #fff;
  font-size: 3rem;
  line-height: 1.466;
  text-align: center;
  padding: 16px 29px;
  display: table;
  margin: 0 auto;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  position: relative;
  z-index: 2; }
  @media (max-width: 767px) {
    .h1Area02 h1 {
      font-size: calc(24 / 390 * 100vw);
      padding: calc(10 / 390 * 100vw);
      display: block; } }
  .h1Area02 h1 span {
    font-size: 1.2rem;
    display: inline-block;
    vertical-align: text-top; }
    @media (max-width: 767px) {
      .h1Area02 h1 span {
        font-size: calc(12 / 390 * 100vw); } }
.h1Area02 .h1Area02column {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  max-width: 1060px;
  margin: -38px auto 25px;
  padding: 50px 15px 20px;
  position: relative;
  background: #DDE9EF; }
  @media (max-width: 767px) {
    .h1Area02 .h1Area02column {
      margin: calc(20 / 390 * 100vw) auto calc(20 / 390 * 100vw);
      flex-direction: column;
      padding: calc(10 / 390 * 100vw); } }
.h1Area02 .h1Area02columnImg {
  width: 503px;
  margin-right: 38px;
  position: absolute;
  top: -21px;
  left: 15px; }
  @media (max-width: 767px) {
    .h1Area02 .h1Area02columnImg {
      width: 100%;
      position: static; } }
  .h1Area02 .h1Area02columnImg img {
    width: 100%; }
.h1Area02 .h1Area02columnTextArea {
  width: 490px;
  margin-left: 540px; }
  @media (max-width: 767px) {
    .h1Area02 .h1Area02columnTextArea {
      width: 100%;
      margin-left: 0;
      margin-top: calc(15 / 390 * 100vw); } }
  .h1Area02 .h1Area02columnTextArea p {
    font-size: 1.6rem;
    line-height: 1.8125;
    font-weight: 500; }
    @media (max-width: 767px) {
      .h1Area02 .h1Area02columnTextArea p {
        font-size: calc(16 / 390 * 100vw); } }
  .h1Area02 .h1Area02columnTextArea .examTitle {
    margin-top: 15px;
    font-size: 1.6rem;
    line-height: 1.5;
    font-weight: bold;
    padding-bottom: 11px;
    border-bottom: 1px solid #707070;
    margin-bottom: 13px; }
    @media (max-width: 767px) {
      .h1Area02 .h1Area02columnTextArea .examTitle {
        margin-top: calc(15 / 390 * 100vw);
        font-size: calc(16 / 390 * 100vw);
        padding-bottom: calc(7 / 390 * 100vw);
        margin-bottom: calc(10 / 390 * 100vw); } }
  .h1Area02 .h1Area02columnTextArea .examText {
    font-size: 1.4rem;
    line-height: 1.571;
    font-weight: 500; }
    @media (max-width: 767px) {
      .h1Area02 .h1Area02columnTextArea .examText {
        font-size: calc(14 / 390 * 100vw); } }
.h1Area02 .h1Area02KomeArea {
  max-width: 1060px;
  margin: -10px auto 0; }
  @media (max-width: 767px) {
    .h1Area02 .h1Area02KomeArea {
      margin: 0 auto; } }
  .h1Area02 .h1Area02KomeArea .komeText {
    font-size: 1.2rem;
    line-height: 1.167;
    max-width: 519px;
    margin-left: auto;
    padding: 0 15px; }
    @media (max-width: 767px) {
      .h1Area02 .h1Area02KomeArea .komeText {
        font-size: calc(12 / 390 * 100vw);
        padding: 0;
        max-width: 100%; } }
.financial .h1Area02 .h1Area02column {
  padding: 50px 40px 20px;
  gap: 30px;
  align-items: flex-start; }
  @media (max-width: 767px) {
    .financial .h1Area02 .h1Area02column {
      padding: calc(10 / 390 * 100vw);
      gap: calc(30 / 390 * 100vw); } }
.financial .h1Area02 .h1Area02columnTextArea {
  margin-left: 0;
  width: 545px;
  max-width: 100%; }
.financial .h1Area02 .h1Area02KomeArea {
  margin: 18px 0 0; }
  .financial .h1Area02 .h1Area02KomeArea .komeText {
    margin-left: 0;
    padding: 0; }
.financial .h1Area02 .h1Area02columnCTA {
  width: 400px;
  max-width: 100%;
  background: #FFF;
  position: relative;
  padding: 10px 10px 15px; }
  @media (max-width: 767px) {
    .financial .h1Area02 .h1Area02columnCTA {
      width: calc(400 / 390 * 100vw);
      padding: calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) calc(15 / 390 * 100vw);
      margin: 0 auto; } }
  .financial .h1Area02 .h1Area02columnCTA a {
    text-decoration: none; }
    .financial .h1Area02 .h1Area02columnCTA a:hover .btn {
      color: #318A50;
      background: #fff; }
      .financial .h1Area02 .h1Area02columnCTA a:hover .btn::before {
        border-color: transparent transparent #318A50 transparent; }
  .financial .h1Area02 .h1Area02columnCTA .h1Area02columnCTALabel {
    color: #FFF;
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    background: #293642;
    font-size: 16px;
    font-weight: bold;
    padding: 7px 15px; }
    @media (max-width: 767px) {
      .financial .h1Area02 .h1Area02columnCTA .h1Area02columnCTALabel {
        font-size: calc(16 / 390 * 100vw);
        padding: calc(7 / 390 * 100vw) calc(15 / 390 * 100vw); } }
  .financial .h1Area02 .h1Area02columnCTA img {
    margin-bottom: 5px;
    width: 100%; }
    @media (max-width: 767px) {
      .financial .h1Area02 .h1Area02columnCTA img {
        margin-bottom: calc(5 / 390 * 100vw); } }
  .financial .h1Area02 .h1Area02columnCTA p {
    text-align: center;
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 10px; }
    @media (max-width: 767px) {
      .financial .h1Area02 .h1Area02columnCTA p {
        font-size: calc(15 / 390 * 100vw);
        margin-bottom: calc(10 / 390 * 100vw); } }
  .financial .h1Area02 .h1Area02columnCTA .btn::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0; }

.h1Title {
  font-size: 3.9rem;
  line-height: 1.435;
  color: #004831;
  font-weight: bold;
  text-align: center; }
  @media (max-width: 767px) {
    .h1Title {
      font-size: calc(30 / 390 * 100vw); } }
  .h1Title .fontSmall {
    font-size: 22px; }
    @media (max-width: 767px) {
      .h1Title .fontSmall {
        font-size: calc(18 / 390 * 100vw); } }

.h2Title {
  background: #026096;
  padding: 19.5px 10px 19.5px 42px;
  background: #026096;
  color: #fff;
  font-size: 3.2rem;
  line-height: 1.4375;
  font-weight: bold;
  position: relative;
  margin-bottom: 24px; }
  .government .h2Title {
    background: #AF244D; }
  @media (max-width: 767px) {
    .h2Title {
      padding: calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) calc(35 / 390 * 100vw);
      font-size: calc(24 / 390 * 100vw);
      margin-bottom: calc(20 / 390 * 100vw); } }
  .h2Title::before {
    content: "";
    display: block;
    height: 68.2%;
    width: 10px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 13px;
    transform: translateY(-50%); }
    @media (max-width: 767px) {
      .h2Title::before {
        width: calc(6 / 390 * 100vw);
        left: calc(13 / 390 * 100vw); } }

.h2Title02 {
  background: #3994C8;
  color: #fff;
  font-size: 3.2rem;
  line-height: 1.4375;
  margin-bottom: 43px;
  padding: 19.5px 20px; }
  @media (max-width: 767px) {
    .h2Title02 {
      font-size: calc(24 / 390 * 100vw);
      padding: calc(10 / 390 * 100vw);
      margin-bottom: calc(20 / 390 * 100vw); } }
  .government .h2Title02 {
    background-color: #E97194; }

.aboutSec01 .inner {
  padding: 43px 16px 43px 45px; }
  @media (max-width: 767px) {
    .aboutSec01 .inner {
      padding: calc(30 / 390 * 100vw) calc(15 / 390 * 100vw); } }

.h3Title02 {
  background: #293642;
  color: #fff;
  font-size: 2.8rem;
  line-height: 1.428;
  padding: 13.5px 10px;
  text-align: center; }
  @media (max-width: 767px) {
    .h3Title02 {
      font-size: calc(18 / 390 * 100vw);
      padding: calc(10 / 390 * 100vw); } }

.sec .column01 {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  margin-top: 14px; }
  @media (max-width: 767px) {
    .sec .column01 {
      flex-direction: column; } }
.sec .column01Item {
  width: 50%;
  position: relative; }
  @media (max-width: 767px) {
    .sec .column01Item {
      width: 100%; }
      .sec .column01Item:not(:first-of-type) {
        margin-top: calc(40 / 390 * 100vw); } }
.sec .column01ItemTitle {
  font-weight: bold;
  font-size: 2.2rem;
  line-height: 1.363;
  text-align: center;
  position: relative;
  z-index: 2;
  max-width: 100%;
  min-height: 63px;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (max-width: 767px) {
    .sec .column01ItemTitle {
      font-size: calc(17 / 390 * 100vw);
      min-height: auto; } }
.sec .column01ItemImg {
  margin-top: 13px;
  margin-bottom: 29px;
  text-align: center;
  z-index: 1; }
  @media (max-width: 767px) {
    .sec .column01ItemImg {
      margin-top: calc(13 / 390 * 100vw);
      margin-bottom: calc(29 / 390 * 100vw);
      margin-right: 0; }
      .sec .column01ItemImg img {
        width: 100%; } }
@media (max-width: 767px) {
  .sec .column01ItemBtn {
    margin-top: calc(-15 / 390 * 100vw); } }
.sec .column01ItemBtn .btn {
  margin: 0 auto; }
  @media (max-width: 767px) {
    .sec .column01ItemBtn .btn {
      margin: 0 auto; } }

.logos {
  width: 100%;
  height: 92px;
  margin: 56px 0;
  background: url("../images/strengths-logos_2x.png") left center/auto 100% repeat-x;
  animation: logoLoop 39s linear 0s infinite; }
  @media (max-width: 767px) {
    .logos {
      margin: calc(30 / 390 * 100vw) 0; } }

@keyframes logoLoop {
  0% {
    background: url("../images/strengths-logos_2x.png") 0px center/auto 100% repeat-x; }
  100% {
    background: url("../images/strengths-logos_2x.png") -2500px center/auto 100% repeat-x; } }
.probColumn {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  margin-top: 45px;
  align-items: flex-start; }
  .government .probColumn .probColumnImg::after {
    background-color: #FFFAF9; }
  @media (max-width: 767px) {
    .probColumn {
      flex-direction: column-reverse; } }
  .probColumn.-reverse {
    flex-direction: row-reverse; }
    @media (max-width: 767px) {
      .probColumn.-reverse {
        flex-direction: column-reverse; } }
    .probColumn.-reverse .probColumnTextArea {
      margin-right: 0;
      margin-left: 43px; }
      @media (max-width: 767px) {
        .probColumn.-reverse .probColumnTextArea {
          margin-left: 0; } }
    .probColumn.-reverse .probColumnImg::after {
      left: auto;
      right: -24px; }
      @media (max-width: 767px) {
        .probColumn.-reverse .probColumnImg::after {
          right: calc(-5 / 390 * 100vw); } }
  .probColumn + .probColumn {
    margin-top: 110px; }
    @media (max-width: 767px) {
      .probColumn + .probColumn {
        margin-top: calc(40 / 390 * 100vw); } }
  .probColumn .probColumnTextArea {
    width: 520px;
    padding-right: 43px;
    margin-right: 43px; }
    @media (max-width: 767px) {
      .probColumn .probColumnTextArea {
        width: 100%;
        padding-right: 0;
        margin-right: 0; } }
  .probColumn .probColumnTitle {
    background: #293642;
    color: #fff;
    font-weight: bold;
    text-align: center;
    display: table;
    padding: 13.5px 23.5px;
    margin-bottom: 45px;
    font-size: 2.8rem;
    line-height: 1.428; }
    @media (max-width: 767px) {
      .probColumn .probColumnTitle {
        font-size: calc(20 / 390 * 100vw);
        padding: calc(10 / 390 * 100vw) calc(20 / 390 * 100vw);
        margin-bottom: calc(30 / 390 * 100vw); } }
  .probColumn .probColumnList li {
    font-size: 1.8rem;
    line-height: 1.666;
    font-weight: 500;
    list-style: disc;
    list-style-position: inside;
    padding-left: 1.4em;
    text-indent: -1.4em;
    margin-bottom: 18px; }
    @media (max-width: 767px) {
      .probColumn .probColumnList li {
        font-size: calc(16 / 390 * 100vw);
        margin-bottom: calc(15 / 390 * 100vw); } }
  .probColumn .probColumnImg {
    width: 498px;
    position: relative;
    z-index: 0; }
    .probColumn .probColumnImg::after {
      content: "";
      display: block;
      width: 100%;
      height: 92.8%;
      background: #DDE9EF;
      z-index: -1;
      position: absolute;
      top: 49px;
      left: -24px; }
    .probColumn .probColumnImg img {
      width: 100%; }
    @media (max-width: 767px) {
      .probColumn .probColumnImg {
        width: 100%;
        margin-bottom: calc(40 / 390 * 100vw); }
        .probColumn .probColumnImg img {
          width: 98%; }
        .probColumn .probColumnImg::after {
          top: calc(30 / 390 * 100vw);
          right: calc(-5 / 390 * 100vw);
          left: auto; } }

.changeArea {
  max-width: 1032px;
  margin: 0 auto; }
  .government .changeArea .changeH3Area h3 {
    background-color: #AF244D;
    border-color: #AF244D; }
  .government .changeArea .changeH3Area p {
    border-color: #A0A0A0; }
  .government .changeArea .arrow {
    background-image: url("../images/arrow_red.svg"); }
  .government .changeArea .changeColumn::after {
    background: linear-gradient(180deg, #fff 0%, #fff 11%, #EEEEEE 11%, #EEEEEE 100%); }
  .changeArea + .changeArea {
    margin-top: 80px; }
    @media (max-width: 767px) {
      .changeArea + .changeArea {
        margin-top: calc(40 / 390 * 100vw); } }
  .changeArea .changeH3Area {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: stretch; }
    @media (max-width: 767px) {
      .changeArea .changeH3Area {
        flex-direction: column; } }
    .changeArea .changeH3Area h3 {
      width: 50%;
      padding: 14.5px 22px;
      text-align: center;
      color: #fff;
      font-weight: bold;
      font-size: 3rem;
      line-height: 1.466;
      background: #026096;
      border: 3px solid #026096; }
      @media (max-width: 767px) {
        .changeArea .changeH3Area h3 {
          width: 100%;
          font-size: calc(20 / 390 * 100vw);
          padding: calc(10 / 390 * 100vw); } }
    .changeArea .changeH3Area p {
      width: 50%;
      font-size: 2rem;
      line-height: 1.45;
      font-weight: 500;
      padding: 22px;
      border: 3px solid #026096; }
      @media (max-width: 767px) {
        .changeArea .changeH3Area p {
          width: 100%;
          font-size: calc(17 / 390 * 100vw);
          padding: calc(10 / 390 * 100vw); } }
  .changeArea .arrow {
    width: 62px;
    height: 50px;
    background-image: url("../images/arrow_blue.svg");
    background-size: cover;
    margin: 30px auto 25px; }
    @media (max-width: 767px) {
      .changeArea .arrow {
        margin: calc(20 / 390 * 100vw) auto; } }
  .changeArea .changeColumn {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    padding: 0 32px 26px 0;
    position: relative;
    z-index: 0; }
    @media (max-width: 767px) {
      .changeArea .changeColumn {
        flex-direction: column;
        padding: 0; } }
    .changeArea .changeColumn::after {
      content: "";
      z-index: -1;
      width: 89%;
      height: 100%;
      background: linear-gradient(180deg, #fff 0%, #fff 11%, #DDE9EF 11%, #DDE9EF 100%);
      display: block;
      position: absolute;
      top: 0;
      right: 0; }
      @media (max-width: 767px) {
        .changeArea .changeColumn::after {
          width: 98%; } }
    .changeArea .changeColumn .changeImg {
      width: 476px;
      margin-right: 50px; }
      @media (max-width: 767px) {
        .changeArea .changeColumn .changeImg {
          width: 100%;
          margin-right: 0; } }
      .changeArea .changeColumn .changeImg img {
        box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }
        @media (max-width: 767px) {
          .changeArea .changeColumn .changeImg img {
            width: 95%; } }
    .changeArea .changeColumn .changeTextArea {
      width: 470px;
      padding-top: 72px; }
      @media (max-width: 767px) {
        .changeArea .changeColumn .changeTextArea {
          width: 100%;
          padding-top: 0;
          padding: calc(10 / 390 * 100vw);
          padding-left: calc(15 / 390 * 100vw);
          margin-top: calc(15 / 390 * 100vw); } }
      .changeArea .changeColumn .changeTextArea h4 {
        font-size: 2rem;
        line-height: 1.5;
        font-weight: bold;
        margin-bottom: 1.5em; }
        @media (max-width: 767px) {
          .changeArea .changeColumn .changeTextArea h4 {
            font-size: calc(18 / 390 * 100vw); } }
      .changeArea .changeColumn .changeTextArea p {
        font-size: 2rem;
        line-height: 1.5;
        font-weight: normal; }
        @media (max-width: 767px) {
          .changeArea .changeColumn .changeTextArea p {
            font-size: calc(16 / 390 * 100vw); } }

.meritBox {
  max-width: 1033px;
  margin: 0 auto 100px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  align-items: stretch; }
  @media (max-width: 767px) {
    .government .meritBox .meritBoxItem:first-of-type h3 {
      border-right-color: #AF244D; } }
  @media (max-width: 767px) {
    .government .meritBox .meritBoxItem:first-of-type .meritTextArea {
      border-right-color: #AF244D; } }
  .government .meritBox .meritBoxItem h3 {
    border-color: #AF244D;
    background-color: #AF244D; }
  .government .meritBox .meritBoxItem .meritTextArea {
    background-color: #FFFAF9;
    border-color: #AF244D; }
  @media (max-width: 767px) {
    .meritBox {
      flex-direction: column;
      margin-bottom: calc(50 / 390 * 100vw); } }
  .meritBox .meritBoxItem {
    width: 50%; }
    @media (max-width: 767px) {
      .meritBox .meritBoxItem {
        width: 100%; } }
    .meritBox .meritBoxItem:first-of-type h3 {
      border-right: none; }
      @media (max-width: 767px) {
        .meritBox .meritBoxItem:first-of-type h3 {
          border-right: 3px solid #13357F; } }
    .meritBox .meritBoxItem:first-of-type .meritTextArea {
      border-right: none; }
      @media (max-width: 767px) {
        .meritBox .meritBoxItem:first-of-type .meritTextArea {
          border-right: 3px solid #13357F; } }
    .meritBox .meritBoxItem h3 {
      border: 3px solid #13357F;
      border-bottom: none;
      background: #026096;
      color: #fff;
      font-size: 2.6rem;
      line-height: 1.423;
      padding: 18px 20px; }
      @media (max-width: 767px) {
        .meritBox .meritBoxItem h3 {
          font-size: calc(20 / 390 * 100vw);
          padding: calc(15 / 390 * 100vw) calc(10 / 390 * 100vw); } }
    .meritBox .meritBoxItem .meritTextArea {
      padding: 20px 20px 40px;
      background: #DDE9EF;
      border: 3px solid #13357F; }
      @media (max-width: 767px) {
        .meritBox .meritBoxItem .meritTextArea {
          padding: calc(20 / 390 * 100vw) calc(10 / 390 * 100vw); } }

.list li {
  font-size: 1.8rem;
  line-height: 1.444;
  font-weight: 500;
  margin-bottom: 24px;
  padding-left: 1.5em;
  text-indent: -0.75em; }
  @media (max-width: 767px) {
    .list li {
      font-size: calc(16 / 390 * 100vw);
      margin-bottom: calc(18 / 390 * 100vw); } }
  .list li.txtRed {
    color: #ED544A; }
  .list li:last-of-type {
    margin-bottom: 0; }
  .list li::before {
    content: "・";
    margin-right: 9px;
    display: inline-block; }

.strength {
  max-width: 1035px;
  margin: 0 auto 55px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between; }
  .government .strength .strengthTitle {
    color: #AF244D; }
  @media (max-width: 767px) {
    .strength {
      margin-bottom: calc(40 / 390 * 100vw);
      flex-direction: column; } }
  .strength .strengthItem {
    width: calc((100% - 90px) / 3);
    border-radius: 8px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.23);
    background: #fff;
    padding: 31px 14px 20px; }
    @media (max-width: 767px) {
      .strength .strengthItem {
        width: 100%;
        padding: calc(20 / 390 * 100vw) calc(10 / 390 * 100vw); }
        .strength .strengthItem:not(:first-of-type) {
          margin-top: calc(20 / 390 * 100vw); } }
  .strength .strengthImg {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px; }
    @media (max-width: 767px) {
      .strength .strengthImg {
        margin-bottom: calc(20 / 390 * 100vw); } }
  .strength .strengthTitle {
    text-align: center;
    font-size: 2.2rem;
    line-height: 1.545;
    color: #026096;
    font-weight: bold;
    margin-bottom: 20px; }
    @media (max-width: 767px) {
      .strength .strengthTitle {
        font-size: calc(18 / 390 * 100vw);
        margin-bottom: calc(20 / 390 * 100vw); } }
  .strength .strengthText {
    font-size: 1.6rem;
    line-height: 1.625;
    font-weight: 500; }
    @media (max-width: 767px) {
      .strength .strengthText {
        font-size: calc(15 / 390 * 100vw); } }

.caseArea {
  max-width: 1036px;
  margin: 70px auto 0; }
  @media (max-width: 767px) {
    .caseArea {
      margin-top: 0; } }
  .government .caseArea .caseTitleArea {
    background: #FFFAF9;
    border-color: #AF244D; }
    .government .caseArea .caseTitleArea .caseTitle {
      color: #000000;
      border-bottom-color: #000000; }
    .government .caseArea .caseTitleArea p {
      color: #000000; }
  .government .caseArea .caseTable thead th {
    background-color: #AF244D;
    border-color: #AF244D; }
  .government .caseArea .caseTable tbody th {
    border-color: #AF244D;
    background-color: #FFFAF9; }
  .government .caseArea .caseTable tbody td {
    border-color: #AF244D; }
  .caseArea .caseTitleArea {
    background: #3994C8;
    border: 5px solid #DFDFDF;
    padding: 33px 32.5px;
    margin-bottom: 35px; }
    @media (max-width: 767px) {
      .caseArea .caseTitleArea {
        border-width: 3px;
        padding: calc(20 / 390 * 100vw) calc(10 / 390 * 100vw); } }
    .caseArea .caseTitleArea .caseTitle {
      font-size: 3.2rem;
      line-height: 1.4375;
      color: #fff;
      font-weight: bold;
      text-align: center;
      padding-bottom: 25px;
      border-bottom: 3px solid #fff;
      margin-bottom: 25px; }
      @media (max-width: 767px) {
        .caseArea .caseTitleArea .caseTitle {
          font-size: calc(24 / 390 * 100vw);
          padding-bottom: calc(20 / 390 * 100vw);
          margin-bottom: calc(20 / 390 * 100vw);
          text-align: left; } }
    .caseArea .caseTitleArea p {
      max-width: 913px;
      margin: 0 auto;
      color: #fff;
      font-size: 1.8rem;
      line-height: 1.833; }
      @media (max-width: 767px) {
        .caseArea .caseTitleArea p {
          font-size: calc(16 / 390 * 100vw); } }
  .caseArea .caseTable {
    border-collapse: collapse;
    table-layout: fixed;
    margin-bottom: 70px; }
    @media (max-width: 767px) {
      .caseArea .caseTable {
        margin-bottom: calc(40 / 390 * 100vw); } }
    .caseArea .caseTable thead th {
      background: #026096;
      color: #fff;
      padding: 21px 32px;
      font-size: 2.6rem;
      line-height: 1.423;
      font-weight: bold;
      text-align: left;
      border: 3px solid #026096; }
      @media (max-width: 767px) {
        .caseArea .caseTable thead th {
          padding: calc(15 / 390 * 100vw) calc(10 / 390 * 100vw);
          font-size: calc(20 / 390 * 100vw);
          border: none; } }
    .caseArea .caseTable tbody th {
      border: 3px solid #026096;
      padding: 22px 20px;
      background: #DDE9EF;
      width: 39.3%;
      font-size: 1.8rem;
      line-height: 1.444;
      font-weight: bold;
      text-align: left; }
      @media (max-width: 767px) {
        .caseArea .caseTable tbody th {
          font-size: calc(16 / 390 * 100vw);
          padding: calc(15 / 390 * 100vw) calc(10 / 390 * 100vw);
          display: block;
          width: 100%;
          border-bottom: none;
          border-top: none; } }
    .caseArea .caseTable tbody td {
      font-size: 1.8rem;
      line-height: 1.444;
      font-weight: 500;
      border: 3px solid #026096;
      padding: 22px 15px; }
      @media (max-width: 767px) {
        .caseArea .caseTable tbody td {
          padding: calc(15 / 390 * 100vw) calc(10 / 390 * 100vw);
          font-size: calc(16 / 390 * 100vw);
          display: block;
          width: 100%; } }

.flowArea {
  max-width: 1036px;
  margin: 0 auto 50px; }
  .government .flowArea .flowColumn1 .flowColumn1Title {
    background-color: #AF244D; }
  .government .flowArea .flowColumn2 .flowColumn2Title {
    background-color: #F2A5A0; }
  @media (max-width: 767px) {
    .flowArea {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between; } }
  .flowArea .flowColumn1 {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex; }
    @media (max-width: 767px) {
      .flowArea .flowColumn1 {
        flex-direction: column;
        flex-shrink: 0; } }
    .flowArea .flowColumn1 .flowColumn1Title {
      width: 50%;
      background: #13357F;
      color: #fff;
      font-size: 2rem;
      line-height: 1.45;
      text-align: center;
      padding: 15.5px 0;
      clip-path: polygon(0 0, 94% 0, 100% 50%, 94% 100%, 0 100%);
      font-weight: bold; }
      @media (max-width: 767px) {
        .flowArea .flowColumn1 .flowColumn1Title {
          width: calc(40.5 / 390 * 100vw);
          padding: calc(15 / 390 * 100vw) calc(10 / 390 * 100vw);
          -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
          clip-path: polygon(0 0, 0 96.3%, 50% 100%, 100% 96.3%, 100% 0);
          font-size: calc(14 / 390 * 100vw);
          height: calc(516 / 390 * 100vw);
          flex-shrink: 0; } }
  .flowArea .flowColumn2 {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    margin-top: 2px; }
    @media (max-width: 767px) {
      .flowArea .flowColumn2 {
        margin-top: 0;
        margin-left: calc(2 / 390 * 100vw);
        flex-direction: column;
        flex-shrink: 0; } }
    .flowArea .flowColumn2 .flowColumn2Title {
      width: 25%;
      background: #026096;
      color: #fff;
      font-size: 2rem;
      line-height: 1.45;
      text-align: center;
      padding: 15.5px 0;
      clip-path: polygon(0 0, 88% 0, 100% 50%, 88% 100%, 0 100%);
      font-weight: bold; }
      @media (max-width: 767px) {
        .flowArea .flowColumn2 .flowColumn2Title {
          width: calc(40.5 / 390 * 100vw);
          padding: calc(15 / 390 * 100vw) calc(10 / 390 * 100vw);
          -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
          clip-path: polygon(0 0, 0 93%, 50% 100%, 100% 93%, 100% 0);
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: calc(14 / 390 * 100vw);
          height: calc(258 / 390 * 100vw);
          flex-shrink: 0; } }
      .flowArea .flowColumn2 .flowColumn2Title span {
        transform: translateX(-4%);
        display: inline-block; }
        @media (max-width: 767px) {
          .flowArea .flowColumn2 .flowColumn2Title span {
            transform: translateY(-4%); } }
  .flowArea .flowColumn3 {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    margin-top: 30px; }
    @media (max-width: 767px) {
      .flowArea .flowColumn3 {
        margin-top: 0;
        margin-left: calc(10 / 390 * 100vw);
        flex-direction: column; } }
    .flowArea .flowColumn3 .flowColumn3Item {
      width: 25%;
      position: relative; }
      @media (max-width: 767px) {
        .flowArea .flowColumn3 .flowColumn3Item {
          width: 100%;
          padding: calc(30 / 390 * 100vw) 0;
          height: calc(258 / 390 * 100vw); } }
      .flowArea .flowColumn3 .flowColumn3Item.-var02::before {
        top: 10%; }
        @media (max-width: 767px) {
          .flowArea .flowColumn3 .flowColumn3Item.-var02::before {
            top: auto; } }
      .flowArea .flowColumn3 .flowColumn3Item::before {
        content: attr(data-arrow-txt);
        display: block;
        position: absolute;
        top: 30%;
        right: 0;
        transform: translate(50%, 0);
        font-size: 1.4rem;
        line-height: 1.428;
        color: #004831;
        font-weight: bold;
        text-align: center;
        white-space: pre; }
        @media (max-width: 767px) {
          .flowArea .flowColumn3 .flowColumn3Item::before {
            font-size: calc(12 / 390 * 100vw);
            bottom: 0;
            top: auto;
            right: calc(10 / 390 * 100vw);
            transform: translate(0, 50%); } }
      .flowArea .flowColumn3 .flowColumn3Item:not(:last-of-type)::after {
        content: "";
        background: url("../images/arrow_green.svg");
        background-size: cover;
        width: 35px;
        height: 43px;
        display: block;
        position: absolute;
        top: 50%;
        right: 0;
        transform: translate(50%, -50%); }
        @media (max-width: 767px) {
          .flowArea .flowColumn3 .flowColumn3Item:not(:last-of-type)::after {
            top: auto;
            bottom: 0;
            left: 50%;
            right: auto;
            transform: translate(-50%, 50%) rotate(90deg);
            width: calc(35 / 390 * 100vw);
            height: calc(43 / 390 * 100vw); } }
    .flowArea .flowColumn3 .flowColumn3Title {
      font-size: 1.8rem;
      line-height: 1.444;
      font-weight: bold;
      text-transform: center;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: center;
      align-items: center;
      text-align: center; }
      @media (max-width: 767px) {
        .flowArea .flowColumn3 .flowColumn3Title {
          font-size: calc(15 / 390 * 100vw); } }
    .flowArea .flowColumn3 .flowColumn3Img {
      width: 135px;
      height: 135px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: center;
      align-items: center;
      margin: 25px auto;
      box-shadow: 0 0 15px rgba(0, 0, 0, 0.23);
      border-radius: 8px; }
      @media (max-width: 767px) {
        .flowArea .flowColumn3 .flowColumn3Img {
          width: calc(100 / 390 * 100vw);
          height: calc(100 / 390 * 100vw);
          margin: calc(20 / 390 * 100vw) auto; } }
    .flowArea .flowColumn3 .flowColumn3Text {
      padding: 0 15px;
      font-size: 1.2rem;
      line-height: 1.5;
      font-weight: 500;
      display: table;
      margin: 0 auto; }
      @media (max-width: 767px) {
        .flowArea .flowColumn3 .flowColumn3Text {
          padding: 0;
          font-size: calc(12 / 390 * 100vw); } }

.functionIndex .inner {
  padding: 0px 19px 43px; }
  @media (max-width: 767px) {
    .functionIndex .inner {
      padding: 0 calc(15 / 390 * 100vw) calc(20 / 390 * 100vw); } }
.functionIndex .title {
  font-size: 3.9rem;
  line-height: 1.435;
  margin-bottom: 22px;
  color: #004831;
  font-weight: bold;
  text-align: center; }
  @media (max-width: 767px) {
    .functionIndex .title {
      font-size: calc(30 / 390 * 100vw);
      margin-bottom: calc(20 / 390 * 100vw); } }
.functionIndex .functionList {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 922px;
  margin: 0 auto; }
  .functionIndex .functionList::after {
    content: "";
    width: calc((100% - 82px) / 3);
    height: 0; }
.functionIndex .functionListItem {
  width: calc((100% - 82px) / 3);
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.23);
  position: relative;
  transition: all 0.2s ease-out 0s; }
  @media (max-width: 767px) {
    .functionIndex .functionListItem {
      width: calc((100% - 20px)/2); } }
  .functionIndex .functionListItem:hover {
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.23);
    transform: translateY(5px); }
  .functionIndex .functionListItem::after {
    content: "";
    width: 25px;
    height: 25px;
    display: block;
    position: absolute;
    background-image: url("../images/function_index_arrow.svg");
    background-size: cover;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%); }
    @media (max-width: 767px) {
      .functionIndex .functionListItem::after {
        width: calc(20 / 390 * 100vw);
        height: calc(20 / 390 * 100vw);
        bottom: calc(10 / 390 * 100vw); } }
  .functionIndex .functionListItem a {
    display: block;
    padding: 9px 10px 45px;
    text-decoration: none;
    position: relative; }
    @media (max-width: 767px) {
      .functionIndex .functionListItem a {
        padding: calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) calc(35 / 390 * 100vw); } }
    .functionIndex .functionListItem a::before {
      padding: 3px 8px 2px;
      background: #318A50;
      border-radius: 5px;
      color: #fff;
      font-size: 1.8rem;
      font-weight: bold;
      content: attr(data-point);
      display: block;
      position: absolute;
      top: 0;
      left: 14px;
      transform: translate(0, -50%); }
      @media (max-width: 767px) {
        .functionIndex .functionListItem a::before {
          padding: calc(3 / 390 * 100vw) calc(5 / 390 * 100vw);
          border-radius: calc(3 / 390 * 100vw);
          font-size: calc(12 / 390 * 100vw);
          left: calc(10 / 390 * 100vw); } }
    .functionIndex .functionListItem a:not([data-point])::before {
      display: none; }
  .functionIndex .functionListItem span {
    display: inline-block;
    height: 48px;
    font-size: 1.8rem;
    line-height: 1.444;
    font-weight: bold;
    color: #000000;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center; }
    @media (max-width: 767px) {
      .functionIndex .functionListItem span {
        font-size: calc(15 / 390 * 100vw);
        height: calc(44 / 390 * 100vw); } }
  .functionIndex .functionListItem:nth-of-type(n+4) {
    margin-top: 45px; }
    @media (max-width: 767px) {
      .functionIndex .functionListItem:nth-of-type(n+4) {
        margin-top: calc(25 / 390 * 100vw); } }
  @media (max-width: 767px) {
    .functionIndex .functionListItem:nth-of-type(n+3) {
      margin-top: calc(25 / 390 * 100vw); } }

.functionSec {
  margin-bottom: 50px; }
  @media (max-width: 767px) {
    .functionSec {
      margin-bottom: calc(50 / 390 * 100vw);
      padding: 0 calc(15 / 390 * 100vw); } }
  .functionSec .textArea {
    width: 710px;
    background: #E3EEE8;
    padding: 25px 22px;
    margin-bottom: 100px;
    max-width: 100%; }
    @media (max-width: 1040px) {
      .functionSec .textArea {
        width: 100%;
        padding-bottom: 25px !important;
        margin-bottom: 20px; } }
    @media (max-width: 767px) {
      .functionSec .textArea {
        padding: calc(20 / 390 * 100vw) calc(10 / 390 * 100vw); } }
  .functionSec .functionTitle {
    color: #318A50;
    font-size: 3rem;
    line-height: 1.466;
    font-weight: bold; }
    @media (max-width: 767px) {
      .functionSec .functionTitle {
        font-size: calc(22 / 390 * 100vw); } }
    .functionSec .functionTitle .functionTitlePoint {
      margin-right: 23px;
      padding: 5px 10px;
      background: #293642;
      border-radius: 5px;
      color: #fff;
      font-size: 1.8rem;
      font-weight: bold; }
      @media (max-width: 767px) {
        .functionSec .functionTitle .functionTitlePoint {
          margin-right: calc(10 / 390 * 100vw);
          margin-bottom: calc(10 / 390 * 100vw);
          padding: calc(5 / 390 * 100vw) calc(10 / 390 * 100vw);
          border-radius: calc(5 / 390 * 100vw);
          font-size: calc(16 / 390 * 100vw); } }
    .functionSec .functionTitle.-inPoint {
      padding-left: 4px;
      display: flex;
      align-items: center;
      flex-wrap: wrap; }
      @media (max-width: 767px) {
        .functionSec .functionTitle.-inPoint {
          padding-left: 0; } }
  .functionSec .txtBox {
    margin-top: 36px; }
    @media (max-width: 1040px) {
      .functionSec .txtBox {
        max-width: 100% !important;
        margin-top: 20px; } }
    @media (max-width: 767px) {
      .functionSec .txtBox {
        margin-top: calc(20 / 390 * 100vw); } }
    .functionSec .txtBox p {
      font-size: 1.6rem;
      line-height: 1.875;
      font-weight: 500; }
      @media (max-width: 767px) {
        .functionSec .txtBox p {
          font-size: calc(15 / 390 * 100vw); } }
      .functionSec .txtBox p.fontSmall {
        font-size: 1.4rem; }
        @media (max-width: 767px) {
          .functionSec .txtBox p.fontSmall {
            font-size: calc(12 / 390 * 100vw); } }
  @media (max-width: 1040px) {
    .functionSec .imgArea .img {
      text-align: center !important; }
      .functionSec .imgArea .img img {
        width: auto !important; } }
  .functionSec.functionSec01 {
    margin-top: 50px; }
    @media (max-width: 767px) {
      .functionSec.functionSec01 {
        margin-top: calc(30 / 390 * 100vw); } }
    .functionSec.functionSec01 .textArea {
      margin-left: auto;
      padding-bottom: 80px; }
    .functionSec.functionSec01 .txtBox {
      max-width: 290px;
      margin-left: auto; }
    .functionSec.functionSec01 .imgArea {
      margin-top: -398px; }
      @media (max-width: 1040px) {
        .functionSec.functionSec01 .imgArea {
          margin-top: 0; } }
      @media (max-width: 1220px) {
        .functionSec.functionSec01 .imgArea img {
          width: calc(770 / 1220 * 100vw); } }
  .functionSec.functionSec02 {
    margin-top: 75px; }
    @media (max-width: 1040px) {
      .functionSec.functionSec02 {
        margin-top: 100px; } }
    @media (max-width: 767px) {
      .functionSec.functionSec02 {
        margin-top: 50px; } }
    .functionSec.functionSec02 .textArea {
      padding-bottom: 94px; }
    .functionSec.functionSec02 .txtBox {
      max-width: 388px; }
    .functionSec.functionSec02 .imgArea {
      margin-top: -383px;
      margin-right: -20px; }
      @media (max-width: 1040px) {
        .functionSec.functionSec02 .imgArea {
          margin-top: 0;
          margin-right: 0; } }
      .functionSec.functionSec02 .imgArea .img {
        text-align: right; }
      @media (max-width: 1220px) {
        .functionSec.functionSec02 .imgArea img {
          width: calc(700 / 1220 * 100vw); } }
  .functionSec.functionSec03 {
    margin-top: 283px; }
    @media (max-width: 1040px) {
      .functionSec.functionSec03 {
        margin-top: 100px; } }
    @media (max-width: 767px) {
      .functionSec.functionSec03 {
        margin-top: 50px; } }
    .functionSec.functionSec03 .textArea {
      margin-left: auto;
      padding-bottom: 80px;
      padding-left: 105px; }
      @media (max-width: 1040px) {
        .functionSec.functionSec03 .textArea {
          padding-left: 22px; } }
      @media (max-width: 767px) {
        .functionSec.functionSec03 .textArea {
          padding-left: calc(10 / 390 * 100vw); } }
    .functionSec.functionSec03 .txtBox {
      max-width: 586px; }
    .functionSec.functionSec03 .imgArea {
      margin-top: -603px;
      margin-left: 46px; }
      @media (max-width: 1220px) {
        .functionSec.functionSec03 .imgArea {
          margin-top: calc(-552 / 1220 * 100vw); } }
      @media (max-width: 1040px) {
        .functionSec.functionSec03 .imgArea {
          margin-top: 0;
          margin-left: 0; } }
      .functionSec.functionSec03 .imgArea img {
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.23); }
        @media (max-width: 1220px) {
          .functionSec.functionSec03 .imgArea img {
            width: calc(350 / 1220 * 100vw); } }
  .functionSec.functionSec04 {
    margin-top: 96px; }
    @media (max-width: 1040px) {
      .functionSec.functionSec04 {
        margin-top: 100px; } }
    @media (max-width: 767px) {
      .functionSec.functionSec04 {
        margin-top: 50px; } }
    .functionSec.functionSec04 .textArea {
      padding-bottom: 200px; }
    .functionSec.functionSec04 .txtBox {
      max-width: 388px; }
    .functionSec.functionSec04 .imgArea {
      margin-top: -370px;
      margin-right: 57px; }
      @media (max-width: 1220px) {
        .functionSec.functionSec04 .imgArea {
          margin-right: 0; } }
      @media (max-width: 1040px) {
        .functionSec.functionSec04 .imgArea {
          margin-top: 0;
          margin-right: 0; } }
      .functionSec.functionSec04 .imgArea .img {
        text-align: right; }
      .functionSec.functionSec04 .imgArea img {
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.23); }
        @media (max-width: 1220px) {
          .functionSec.functionSec04 .imgArea img {
            width: calc(550 / 1220 * 100vw); } }
  .functionSec.functionSec05 {
    margin-top: 100px; }
    @media (max-width: 767px) {
      .functionSec.functionSec05 {
        margin-top: 50px; } }
    .functionSec.functionSec05 .textArea {
      margin-left: auto;
      padding-bottom: 60px; }
    .functionSec.functionSec05 .txtBox {
      max-width: 388px;
      margin-left: auto; }
    .functionSec.functionSec05 .imgArea {
      /*margin-top: -375px;*/
      margin-top: -390px;
      position: relative; }
      @media (max-width: 1040px) {
        .functionSec.functionSec05 .imgArea {
          width: fit-content;
          margin-top: 0;
          margin-left: auto;
          margin-right: auto; } }
      .functionSec.functionSec05 .imgArea img {
        position: relative;
        z-index: 1; }
        @media (max-width: 1220px) {
          .functionSec.functionSec05 .imgArea img {
            width: calc(700 / 1220 * 100vw); } }
        @media (max-width: 1040px) {
          .functionSec.functionSec05 .imgArea img {
            width: calc(900 / 1040 * 100vw) !important; } }
        @media (max-width: 767px) {
          .functionSec.functionSec05 .imgArea img {
            width: calc(300 / 390 * 100vw) !important; } }
      .functionSec.functionSec05 .imgArea video {
        width: 555px;
        height: auto;
        position: absolute;
        top: 52px;
        left: 116px;
        z-index: 2; }
        @media (max-width: 1220px) {
          .functionSec.functionSec05 .imgArea video {
            width: calc(492 / 1220 * 100vw);
            top: calc(46 / 1220 * 100vw);
            left: calc(103 / 1220 * 100vw); } }
        @media (max-width: 1040px) {
          .functionSec.functionSec05 .imgArea video {
            width: calc(633 / 1040 * 100vw);
            top: calc(59 / 1040 * 100vw);
            left: calc(132 / 1040 * 100vw); } }
        @media (max-width: 767px) {
          .functionSec.functionSec05 .imgArea video {
            width: calc(211 / 390 * 100vw);
            top: calc(19 / 390 * 100vw);
            left: calc(44 / 390 * 100vw); } }
  .functionSec.functionSec06 {
    margin-top: 100px; }
    @media (max-width: 767px) {
      .functionSec.functionSec06 {
        margin-top: 50px; } }
    .functionSec.functionSec06 .textArea {
      padding-bottom: 125px; }
    .functionSec.functionSec06 .txtBox {
      margin-top: -7px;
      max-width: 388px; }
    .functionSec.functionSec06 .imgArea {
      margin-top: -370px;
      margin-right: 57px; }
      @media (max-width: 1220px) {
        .functionSec.functionSec06 .imgArea {
          margin-right: 0; } }
      @media (max-width: 1040px) {
        .functionSec.functionSec06 .imgArea {
          margin-top: 0; } }
      .functionSec.functionSec06 .imgArea .img {
        text-align: right; }
      .functionSec.functionSec06 .imgArea img {
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.23); }
        @media (max-width: 1220px) {
          .functionSec.functionSec06 .imgArea img {
            width: calc(550 / 1220 * 100vw); } }
  .functionSec.functionSec07 {
    margin-top: 50px; }
    @media (max-width: 767px) {
      .functionSec.functionSec07 {
        margin-top: calc(30 / 390 * 100vw); } }
    .functionSec.functionSec07 .comingsoon {
      font-size: 1.6rem;
      line-height: 1.875; }
      @media (max-width: 767px) {
        .functionSec.functionSec07 .comingsoon {
          font-size: calc(15 / 390 * 100vw); } }
    .functionSec.functionSec07 .textArea {
      margin-left: auto;
      padding-bottom: 80px; }
    .functionSec.functionSec07 .txtBox {
      max-width: 390px;
      margin-left: auto; }
    .functionSec.functionSec07 .imgArea {
      margin-top: -290px;
      margin-left: 75px; }
      @media (max-width: 1040px) {
        .functionSec.functionSec07 .imgArea {
          margin-top: 0;
          margin-left: 0; } }
      .functionSec.functionSec07 .imgArea img {
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.23); }
        @media (max-width: 1220px) {
          .functionSec.functionSec07 .imgArea img {
            width: calc(550 / 1220 * 100vw); } }

.formColumn {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 50px; }
  @media (max-width: 767px) {
    .formColumn {
      margin-top: calc(40 / 390 * 100vw);
      flex-direction: column; } }
  .formColumn .left {
    background: #f9f9f9;
    padding: 30px 15px;
    margin-right: 30px;
    width: 530px; }
    @media (max-width: 767px) {
      .formColumn .left {
        padding: calc(20 / 390 * 100vw) calc(10 / 390 * 100vw);
        width: 100%;
        margin-right: 0;
        margin-bottom: calc(30 / 390 * 100vw); } }
  .formColumn .right.trialForm {
    width: 100%;
    max-width: 504px; }
  .formColumn .formImg {
    text-align: center;
    margin-bottom: 30px; }
    @media (max-width: 767px) {
      .formColumn .formImg {
        margin-bottom: calc(20 / 390 * 100vw); } }
  .formColumn .formTxtBox {
    background: #fff;
    padding: 15px;
    margin-top: 20px; }
    @media (max-width: 767px) {
      .formColumn .formTxtBox {
        padding: calc(15 / 390 * 100vw);
        margin-top: calc(20 / 390 * 100vw); } }
  .formColumn h3 {
    color: #004831;
    font-size: 2.2rem;
    line-height: 1.4375;
    padding-bottom: 5px;
    border-bottom: #318A50 solid 2px;
    font-weight: bold;
    margin-bottom: 15px; }
    @media (max-width: 767px) {
      .formColumn h3 {
        font-size: calc(20 / 390 * 100vw);
        padding-bottom: calc(5 / 390 * 100vw);
        margin-bottom: calc(15 / 390 * 100vw); } }
  .formColumn ul li {
    font-size: 1.6rem;
    line-height: 1.75;
    font-weight: 500;
    padding-left: 1.5em;
    text-indent: -0.6em; }
    .formColumn ul li li {
      padding-left: 1em; }
    @media (max-width: 767px) {
      .formColumn ul li {
        font-size: calc(15 / 390 * 100vw); } }
    .formColumn ul li::before {
      content: "・";
      margin-right: 0.2em;
      display: inline-block; }

.materialIndex .inner {
  padding: 0px 19px 43px; }
  @media (max-width: 767px) {
    .materialIndex .inner {
      padding: 0 calc(15 / 390 * 100vw) calc(20 / 390 * 100vw); } }
.materialIndex .title {
  font-size: 3.9rem;
  line-height: 1.435;
  margin-bottom: 22px;
  color: #004831;
  font-weight: bold;
  text-align: center; }
  @media (max-width: 767px) {
    .materialIndex .title {
      font-size: calc(30 / 390 * 100vw);
      margin-bottom: calc(20 / 390 * 100vw); } }
.materialIndex .materialList {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  gap: 30px 20px;
  margin: 40px auto 0;
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .materialIndex .materialList {
      flex-direction: column;
      gap: calc(30 / 390 * 100vw);
      margin: calc(30 / 390 * 100vw) auto 0; } }
  .materialIndex .materialList .materialItem {
    width: calc((100% - 40px)/3);
    background: #f9f9f9;
    padding: 20px 15px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }
    @media (max-width: 767px) {
      .materialIndex .materialList .materialItem {
        width: 100%;
        padding: calc(20 / 390 * 100vw) calc(15 / 390 * 100vw); } }
    .materialIndex .materialList .materialItem .itemImg {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-bottom: 20px; }
      @media (max-width: 767px) {
        .materialIndex .materialList .materialItem .itemImg {
          margin-bottom: calc(20 / 390 * 100vw); } }
      @media (max-width: 767px) {
        .materialIndex .materialList .materialItem .itemImg img {
          width: 100%; } }
    .materialIndex .materialList .materialItem .textArea {
      margin-bottom: 20px; }
      @media (max-width: 767px) {
        .materialIndex .materialList .materialItem .textArea {
          margin-bottom: calc(20 / 390 * 100vw); } }
    .materialIndex .materialList .materialItem .itemTitle {
      margin-bottom: 15px; }
      .materialIndex .materialList .materialItem .itemTitle a {
        font-size: 18px;
        font-weight: bold;
        text-decoration: none; }
        @media (max-width: 767px) {
          .materialIndex .materialList .materialItem .itemTitle a {
            font-size: calc(18 / 390 * 100vw); } }
    .materialIndex .materialList .materialItem .itemText {
      font-size: 14px;
      font-weight: normal; }
      @media (max-width: 767px) {
        .materialIndex .materialList .materialItem .itemText {
          font-size: calc(14 / 390 * 100vw); } }

.youtube {
  width: 60%;
  aspect-ratio: 16 / 9;
  text-align: center;
  margin: 0 auto; }
  @media (max-width: 767px) {
    .youtube {
      width: 100%; } }
  .youtube iframe {
    width: 100%;
    height: 100%; }
    @media (max-width: 767px) {
      .youtube iframe {
        max-width: 100%;
        max-height: 100%; } }

.caseIndex .inner {
  padding: 0px 19px 43px; }
  @media (max-width: 767px) {
    .caseIndex .inner {
      padding: 0 calc(15 / 390 * 100vw) calc(20 / 390 * 100vw); } }
.caseIndex .title {
  font-size: 3.9rem;
  line-height: 1.435;
  margin-bottom: 22px;
  color: #004831;
  font-weight: bold;
  text-align: center; }
  @media (max-width: 767px) {
    .caseIndex .title {
      font-size: calc(30 / 390 * 100vw);
      margin-bottom: calc(20 / 390 * 100vw); } }

.caseOverview {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px; }
  @media (max-width: 767px) {
    .caseOverview {
      padding: 0 calc(15 / 390 * 100vw); } }
  .caseOverview .container {
    max-width: 860px;
    margin: 0 auto;
    padding: 5px 0;
    border: none;
    border-top: 3px solid #318A50;
    border-bottom: 3px solid #318A50; }
    @media (max-width: 767px) {
      .caseOverview .container {
        max-width: 100%;
        padding: calc(10 / 390 * 100vw) 0; } }
  .caseOverview .companyName {
    font-size: 26px;
    line-height: calc(37/26);
    font-weight: bold;
    margin: 13px 0 25px; }
    @media (max-width: 767px) {
      .caseOverview .companyName {
        font-size: calc(24 / 390 * 100vw);
        margin: 0 0 calc(10 / 390 * 100vw); } }
  .caseOverview .caseInfo {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 20px;
    justify-content: space-between;
    flex-direction: row-reverse; }
    @media (max-width: 767px) {
      .caseOverview .caseInfo {
        gap: calc(20 / 390 * 100vw);
        flex-direction: column; } }
    .caseOverview .caseInfo .left {
      width: 640px;
      flex-shrink: 1; }
      @media (max-width: 767px) {
        .caseOverview .caseInfo .left {
          width: 100%; } }
      .caseOverview .caseInfo .left .list {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        gap: 9px;
        align-items: flex-start; }
        @media (max-width: 767px) {
          .caseOverview .caseInfo .left .list {
            gap: calc(9 / 390 * 100vw); } }
        .caseOverview .caseInfo .left .list + .list {
          margin-top: 12px; }
          @media (max-width: 767px) {
            .caseOverview .caseInfo .left .list + .list {
              margin-top: calc(12 / 390 * 100vw); } }
        .caseOverview .caseInfo .left .list .category {
          background: #318A4F;
          width: 60px;
          flex-shrink: 0;
          color: #fff;
          font-size: 1.4rem;
          padding: 3px 10px;
          border-radius: 4px;
          text-align: center;
          line-height: 1.5; }
          @media (max-width: 767px) {
            .caseOverview .caseInfo .left .list .category {
              width: calc(60 / 390 * 100vw);
              font-size: calc(14 / 390 * 100vw);
              padding: calc(3 / 390 * 100vw) calc(10 / 390 * 100vw);
              border-radius: calc(4 / 390 * 100vw); } }
        .caseOverview .caseInfo .left .list .categoryItemArea {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          flex-wrap: wrap; }
        .caseOverview .caseInfo .left .list .categoryItem {
          font-size: 1.6rem;
          line-height: calc(30/16);
          font-weight: 500; }
          @media (max-width: 767px) {
            .caseOverview .caseInfo .left .list .categoryItem {
              font-size: calc(14 / 390 * 100vw);
              line-height: calc(24/14); } }
    .caseOverview .caseInfo .right .logo {
      background: #fff;
      padding: 13px 18px; }
      @media (max-width: 767px) {
        .caseOverview .caseInfo .right .logo {
          padding: calc(13 / 390 * 100vw) calc(18 / 390 * 100vw); } }
      .caseOverview .caseInfo .right .logo img {
        max-width: 165px;
        width: 100%; }
        @media (max-width: 767px) {
          .caseOverview .caseInfo .right .logo img {
            width: 100%;
            max-width: 100%; } }

.caseDetailContent .page-main {
  width: 100%;
  margin: 0;
  box-shadow: none;
  padding: 0; }
  .caseDetailContent .page-main .page-main-inner {
    max-width: 840px;
    margin: 0 auto;
    padding: 0 20px 0; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .page-main-inner {
        padding: calc(20 / 390 * 100vw) 0; } }
  .caseDetailContent .page-main .main-intro {
    margin-bottom: 40px; }
    .caseDetailContent .page-main .main-intro > :first-child {
      margin-top: 0 !important; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .main-intro {
        margin-bottom: calc(20 / 390 * 100vw); } }
    .caseDetailContent .page-main .main-intro .h2-style2 {
      font-size: 33px;
      line-height: calc(47/33);
      text-align: center; }
      @media (max-width: 767px) {
        .caseDetailContent .page-main .main-intro .h2-style2 {
          font-size: calc(25 / 390 * 100vw) !important; } }
  .caseDetailContent .page-main .main-box2 p {
    font-size: 16px;
    line-height: 1.5; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .main-box2 p {
        font-size: calc(16 / 390 * 100vw); } }
  .caseDetailContent .page-main .main-box2 a {
    font-size: 16px; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .main-box2 a {
        font-size: calc(16 / 390 * 100vw); } }
  .caseDetailContent .page-main .main-intro {
    text-align: center; }
  .caseDetailContent .page-main .main-intro-inner1 {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .main-intro-inner1 {
        flex-direction: column;
        align-items: center; } }
    .caseDetailContent .page-main .main-intro-inner1.img-wide .main-intro-inner1-img {
      width: 200px; }
      .caseDetailContent .page-main .main-intro-inner1.img-wide .main-intro-inner1-img img {
        max-width: 200px; }
    .caseDetailContent .page-main .main-intro-inner1.img-wide .main-intro-inner1-txt {
      width: calc(100% - 220px); }
      @media (max-width: 767px) {
        .caseDetailContent .page-main .main-intro-inner1.img-wide .main-intro-inner1-txt {
          width: 100%; } }
    .caseDetailContent .page-main .main-intro-inner1 .main-intro-inner1-img {
      width: 120px; }
      .caseDetailContent .page-main .main-intro-inner1 .main-intro-inner1-img img {
        width: 100%;
        max-width: 120px;
        height: auto; }
    .caseDetailContent .page-main .main-intro-inner1 .main-intro-inner1-txt {
      text-align: left;
      margin-left: 20px;
      width: calc(100% - 140px); }
      @media (max-width: 767px) {
        .caseDetailContent .page-main .main-intro-inner1 .main-intro-inner1-txt {
          width: 100%;
          margin-left: 0;
          margin-top: calc(10 / 390 * 100vw); } }
  .caseDetailContent .page-main .main-box3 > :first-child {
    margin-top: 0 !important; }
  .caseDetailContent .page-main .main-box3 img {
    max-width: 100%;
    height: auto !important; }
  .caseDetailContent .page-main .main-box3 .main-box3-img {
    margin: 45px -15px 25px; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .main-box3 .main-box3-img {
        margin: calc(20 / 390 * 100vw) auto calc(40 / 390 * 100vw); } }
    .caseDetailContent .page-main .main-box3 .main-box3-img img {
      width: 100%; }
    .caseDetailContent .page-main .main-box3 .main-box3-img p {
      text-align: center;
      margin-top: 10px; }
  .caseDetailContent .page-main .main-box3 .lead {
    font-size: 18px;
    line-height: calc(38/18);
    font-weight: 400;
    margin: 25px 0; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .main-box3 .lead {
        font-size: calc(17 / 390 * 100vw);
        margin: calc(25 / 390 * 100vw) 0; } }
  .caseDetailContent .page-main .main-box3 .main-box3-txt {
    margin-bottom: 60px; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .main-box3 .main-box3-txt {
        margin-bottom: calc(40 / 390 * 100vw); } }
    .caseDetailContent .page-main .main-box3 .main-box3-txt .main-box3-txt-img-right {
      float: right;
      margin-left: 10px; }
  .caseDetailContent .page-main .main-box3 .main-box3-img2 {
    max-width: 800px;
    margin: 0 auto 70px; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .main-box3 .main-box3-img2 {
        margin-bottom: calc(40 / 390 * 100vw); } }
  .caseDetailContent .page-main .main-box3 .main-box3-ttl {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px; }
    .caseDetailContent .page-main .main-box3 .main-box3-ttl img {
      width: 50px;
      vertical-align: middle;
      display: inline-block; }
  .caseDetailContent .page-main .benefits-box {
    background: #E3EEE8;
    max-width: 740px;
    margin: 40px auto;
    padding: 25px 45px;
    border: 3px solid #318A4F; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .benefits-box {
        max-width: 100%;
        margin: calc(40 / 390 * 100vw) auto;
        padding: calc(20 / 390 * 100vw) calc(15 / 390 * 100vw); } }
    .caseDetailContent .page-main .benefits-box .ben-left {
      color: #004831;
      font-weight: 500;
      font-size: 20px;
      line-height: calc(32/20);
      margin-bottom: 14px; }
      @media (max-width: 767px) {
        .caseDetailContent .page-main .benefits-box .ben-left {
          font-size: calc(18 / 390 * 100vw);
          margin-bottom: calc(14 / 390 * 100vw); } }
    .caseDetailContent .page-main .benefits-box .ben-right ul {
      margin: 0;
      padding: 0; }
      .caseDetailContent .page-main .benefits-box .ben-right ul li {
        list-style: none;
        position: relative;
        padding-left: 28px;
        font-size: 18px;
        line-height: 1.5;
        font-weight: 500; }
        @media (max-width: 767px) {
          .caseDetailContent .page-main .benefits-box .ben-right ul li {
            padding-left: calc(20 / 390 * 100vw);
            font-size: calc(18 / 390 * 100vw); } }
        .caseDetailContent .page-main .benefits-box .ben-right ul li + li {
          margin-top: 20px; }
          @media (max-width: 767px) {
            .caseDetailContent .page-main .benefits-box .ben-right ul li + li {
              margin-top: calc(15 / 390 * 100vw); } }
        .caseDetailContent .page-main .benefits-box .ben-right ul li::before {
          content: "";
          display: block;
          position: absolute;
          top: 9px;
          left: 0;
          width: 10px;
          height: 10px;
          background: #004831;
          border-radius: 50%; }
          @media (max-width: 767px) {
            .caseDetailContent .page-main .benefits-box .ben-right ul li::before {
              top: calc(7 / 390 * 100vw);
              width: calc(8 / 390 * 100vw);
              height: calc(8 / 390 * 100vw); } }
  .caseDetailContent .page-main a {
    color: #000;
    text-decoration: underline; }
    .caseDetailContent .page-main a:hover {
      color: #0091C9 !important; }
  .caseDetailContent .page-main h3 {
    font-size: 28px;
    padding: 20px;
    color: #fff;
    line-height: calc(40/28);
    font-weight: bold;
    margin-bottom: 45px;
    margin-top: 100px;
    background: #293642; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main h3 {
        font-size: calc(20 / 390 * 100vw);
        padding: calc(15 / 390 * 100vw);
        margin-bottom: calc(25 / 390 * 100vw);
        margin-top: calc(50 / 390 * 100vw); } }
  .caseDetailContent .page-main p {
    font-size: 18px;
    line-height: calc(36/18);
    margin-bottom: 1.5em;
    font-weight: normal; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main p {
        font-size: calc(16 / 390 * 100vw); } }
    .caseDetailContent .page-main p:has(img) {
      font-size: 15px;
      margin-bottom: 70px !important; }
      @media (max-width: 767px) {
        .caseDetailContent .page-main p:has(img) {
          font-size: calc(12 / 390 * 100vw); } }
      .caseDetailContent .page-main p:has(img) img {
        margin-bottom: 20px !important; }
        @media (max-width: 767px) {
          .caseDetailContent .page-main p:has(img) img {
            margin-bottom: calc(15 / 390 * 100vw) !important; } }
      @media (max-width: 767px) {
        .caseDetailContent .page-main p:has(img) {
          margin-bottom: calc(40 / 390 * 100vw) !important; } }
    .caseDetailContent .page-main p + p:has(img) img {
      margin-top: 70px !important;
      max-width: 800px !important;
      margin: 70px auto 20px; }
      @media (max-width: 767px) {
        .caseDetailContent .page-main p + p:has(img) img {
          margin-top: calc(40 / 390 * 100vw);
          width: 100%; } }
  .caseDetailContent .page-main .h4-style1, .caseDetailContent .page-main h4 {
    font-size: 25px;
    line-height: calc(44/30);
    font-weight: bold;
    margin-bottom: 30px; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .h4-style1, .caseDetailContent .page-main h4 {
        font-size: calc(20 / 390 * 100vw);
        margin-bottom: calc(25 / 390 * 100vw); } }
  .caseDetailContent .page-main .productslink-list {
    margin-top: 55px;
    margin-bottom: 50px; }
    @media (max-width: 767px) {
      .caseDetailContent .page-main .productslink-list {
        margin-top: calc(25 / 390 * 100vw);
        margin-bottom: calc(50 / 390 * 100vw); } }
    .caseDetailContent .page-main .productslink-list ul {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-wrap: wrap;
      gap: 30px 50px;
      padding: 0;
      margin: 0; }
      @media (max-width: 767px) {
        .caseDetailContent .page-main .productslink-list ul {
          gap: calc(20 / 390 * 100vw);
          justify-content: center;
          align-items: center;
          flex-direction: column; } }
      .caseDetailContent .page-main .productslink-list ul li {
        width: 447px;
        max-width: 100%;
        border: 1px solid #191919;
        background: #fff;
        border-radius: 20px;
        position: relative;
        list-style: none;
        padding: 0;
        margin: 0; }
        @media (max-width: 767px) {
          .caseDetailContent .page-main .productslink-list ul li {
            width: calc(300 / 390 * 100vw);
            border-radius: calc(20 / 390 * 100vw); } }
        .caseDetailContent .page-main .productslink-list ul li a {
          display: block;
          padding: 33px 50px 44px 45px;
          text-decoration: none;
          position: relative; }
          @media (max-width: 767px) {
            .caseDetailContent .page-main .productslink-list ul li a {
              padding: calc(19 / 390 * 100vw) calc(18 / 390 * 100vw) calc(32 / 390 * 100vw); } }
          .caseDetailContent .page-main .productslink-list ul li a::after {
            content: "";
            width: 16px;
            height: 23px;
            display: block;
            position: absolute;
            background-image: url("/img/icon_arrow_black.svg");
            background-size: cover;
            background-repeat: no-repeat;
            top: 50%;
            right: 37px;
            transform: translateY(-50%); }
            @media (max-width: 767px) {
              .caseDetailContent .page-main .productslink-list ul li a::after {
                width: calc(14.98 / 390 * 100vw);
                height: calc(22.25 / 390 * 100vw);
                right: calc(15 / 390 * 100vw);
                top: 62%; } }
        .caseDetailContent .page-main .productslink-list ul li .productslink-list-copy {
          font-size: 20px;
          line-height: 1.45;
          font-weight: bold;
          margin-bottom: 22px;
          margin-left: 7px;
          letter-spacing: 0.1em; }
          @media (max-width: 767px) {
            .caseDetailContent .page-main .productslink-list ul li .productslink-list-copy {
              font-size: calc(19 / 390 * 100vw);
              text-align: center;
              margin-bottom: calc(17 / 390 * 100vw);
              margin-left: 0;
              letter-spacing: 0; } }
        .caseDetailContent .page-main .productslink-list ul li .productslink-list-name {
          display: none; }
        .caseDetailContent .page-main .productslink-list ul li .productslink-list-logo img {
          width: auto;
          height: 55px !important; }
          @media (max-width: 767px) {
            .caseDetailContent .page-main .productslink-list ul li .productslink-list-logo img {
              height: calc(40 / 390 * 100vw) !important; } }
        .caseDetailContent .page-main .productslink-list ul li .icn-btn {
          display: none; }

.kamilessCTA {
  background: #E3EEE8;
  padding: 75px 0;
  /*margin: 0 -104px;*/
  position: relative;
  width: 100%; }
  @media (max-width: 767px) {
    .kamilessCTA {
      flex-direction: column;
      padding: calc(35 / 390 * 100vw) calc(10 / 390 * 100vw);
      gap: calc(20 / 390 * 100vw); } }
  .kamilessCTA::after {
    content: "";
    position: absolute;
    top: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    display: block;
    background-image: linear-gradient(to right, #318A50 5px, transparent 5px);
    background-size: 10px 2px;
    background-repeat: repeat-x;
    background-position: left bottom; }
  .kamilessCTA .inner {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    max-width: 950px;
    margin: 0 auto;
    padding: 0 15px; }
    @media (max-width: 767px) {
      .kamilessCTA .inner {
        padding: 0 calc(15 / 390 * 100vw);
        flex-direction: column;
        gap: calc(20 / 390 * 100vw); } }
  @media (max-width: 767px) {
    .kamilessCTA .logo {
      width: calc(200 / 390 * 100vw); }
      .kamilessCTA .logo img {
        width: 100%; } }
  .kamilessCTA .txt {
    font-size: 16px;
    line-height: calc(35/16);
    font-weight: 500;
    color: #000;
    margin-left: 15px;
    text-align: center;
    flex-shrink: 1; }
    @media (max-width: 767px) {
      .kamilessCTA .txt {
        font-size: calc(16 / 390 * 100vw);
        margin-left: 0; } }
  .kamilessCTA .ctaBtn {
    margin-left: 45px; }
    @media (max-width: 767px) {
      .kamilessCTA .ctaBtn {
        margin-left: 0; } }
    .kamilessCTA .ctaBtn a {
      display: inline-block;
      width: 220px;
      background: #318A50;
      border: 1px solid #318A50;
      border-radius: 4px;
      padding: 11px 10px;
      font-weight: bold;
      text-align: center;
      font-size: 17px;
      line-height: calc(25/17);
      color: #fff !important;
      text-decoration: none !important;
      position: relative;
      border-radius: 6px;
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.34); }
      @media (max-width: 767px) {
        .kamilessCTA .ctaBtn a {
          width: calc(220 / 390 * 100vw);
          border-radius: calc(4 / 390 * 100vw);
          padding: calc(11 / 390 * 100vw) calc(10 / 390 * 100vw);
          font: calc(16 / 390 * 100vw); } }
      .kamilessCTA .ctaBtn a:hover {
        background: #fff;
        color: #318A50 !important;
        color: #318A50 !important; }

/*-------------------------------------------
//導入事例
-------------------------------------------*/
.caseArea.contentBox {
  max-width: 1033px;
  width: 100%;
  margin: 0 auto;
  padding: 0 18px 50px; }
  @media (max-width: 767px) {
    .caseArea.contentBox {
      padding: 0 calc(14 / 390 * 100vw) calc(30 / 390 * 100vw); } }
  .caseArea.contentBox .titleArea {
    text-align: center; }
    .caseArea.contentBox .titleArea .titleTxt {
      color: #004831;
      font-size: 3.2rem; }
      @media (max-width: 767px) {
        .caseArea.contentBox .titleArea .titleTxt {
          font-size: calc(25 / 390 * 100vw); } }
  .caseArea.contentBox .dotted {
    background-image: linear-gradient(to right, #293642 5px, transparent 5px);
    background-size: 10px 3px;
    background-repeat: repeat-x;
    background-position: left bottom;
    padding-bottom: 23px; }
    @media (max-width: 767px) {
      .caseArea.contentBox .dotted {
        padding-bottom: calc(20 / 390 * 100vw); } }
  .caseArea.contentBox .column02 {
    max-width: 100%;
    margin-top: 50px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media (max-width: 767px) {
      .caseArea.contentBox .column02 {
        margin-top: calc(30 / 390 * 100vw);
        flex-direction: column; } }
    .caseArea.contentBox .column02 .columnImg {
      width: 46.5%; }
      @media (max-width: 767px) {
        .caseArea.contentBox .column02 .columnImg {
          width: 100%;
          text-align: center; } }
      .caseArea.contentBox .column02 .columnImg img {
        width: 100%; }
    .caseArea.contentBox .column02 .columnText {
      width: 50%;
      text-align: center; }
      @media (max-width: 767px) {
        .caseArea.contentBox .column02 .columnText {
          width: 100%;
          margin-top: calc(20 / 390 * 100vw); } }
      .caseArea.contentBox .column02 .columnText .columnImg2 {
        margin: 20px auto 15px;
        text-align: center; }
        @media (max-width: 767px) {
          .caseArea.contentBox .column02 .columnText .columnImg2 {
            margin: calc(10 / 390 * 100vw) auto; } }
      .caseArea.contentBox .column02 .columnText .columnTitle {
        line-height: 86px;
        color: #040404;
        font-size: 3rem;
        font-weight: bold; }
        .caseArea.contentBox .column02 .columnText .columnTitle.-type2 {
          font-size: 1.8rem;
          line-height: calc(26/18); }
          @media (max-width: 767px) {
            .caseArea.contentBox .column02 .columnText .columnTitle.-type2 {
              font-size: calc(18 / 390 * 100vw); } }
        @media (max-width: 767px) {
          .caseArea.contentBox .column02 .columnText .columnTitle {
            font-size: calc(24 / 390 * 100vw);
            line-height: calc(45 / 390 * 100vw); } }
        .caseArea.contentBox .column02 .columnText .columnTitle .titleLogo {
          display: inline-block;
          width: 153px;
          margin-left: 31px; }
          @media (max-width: 767px) {
            .caseArea.contentBox .column02 .columnText .columnTitle .titleLogo {
              width: calc(100 / 390 * 100vw);
              margin-left: calc(15 / 390 * 100vw); } }
          .caseArea.contentBox .column02 .columnText .columnTitle .titleLogo img {
            vertical-align: middle; }
      .caseArea.contentBox .column02 .columnText .columnDes {
        font-size: 2rem;
        font-weight: bold;
        line-height: 1.55;
        margin-top: 15px;
        margin-bottom: 24px; }
        @media (max-width: 767px) {
          .caseArea.contentBox .column02 .columnText .columnDes {
            font-size: calc(16 / 390 * 100vw);
            margin-top: calc(15 / 390 * 100vw);
            margin-bottom: calc(24 / 390 * 100vw); } }
  .caseArea.contentBox .btn03 {
    padding: 13px 25px 13px 45px;
    width: 162px;
    display: block; }
    @media (max-width: 767px) {
      .caseArea.contentBox .btn03 {
        width: calc(260 / 390* 100vw);
        padding: calc(15 / 390* 100vw) calc(25 / 390* 100vw) calc(15 / 390* 100vw) calc(45 / 390* 100vw); } }
    .caseArea.contentBox .btn03.btn {
      font-size: 1.6rem; }
      @media (max-width: 767px) {
        .caseArea.contentBox .btn03.btn {
          font-size: calc(18 / 390 * 100vw); } }

.pconly {
  display: block; }
  @media (max-width: 767px) {
    .pconly {
      display: none; } }

.caseList {
  max-width: 1024px;
  margin: 0 auto; }
  .caseList.-type2 .caseItem {
    border: none;
    background: #FAFAFA;
    padding: 23px 20px; }
    @media (max-width: 767px) {
      .caseList.-type2 .caseItem {
        padding: calc(20 / 390 * 100vw) calc(15 / 390 * 100vw); } }
  .caseList .caseItem {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    padding: 22px 9px;
    min-height: 180px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 28px;
    align-items: center;
    background: #fff;
    border: 2.5px solid #318A4F; }
    .caseList .caseItem:hover {
      color: #000; }
      .caseList .caseItem:hover .itemTitle {
        color: #318A50; }
      .caseList .caseItem:hover .btnArea .btn03 {
        background: #fff;
        color: #318A50; }
        .caseList .caseItem:hover .btnArea .btn03::before {
          border-color: transparent transparent #318A50 transparent; }
      .caseList .caseItem:hover .btnArea .btnTab {
        background: #fff;
        color: #318A50; }
        .caseList .caseItem:hover .btnArea .btnTab::after {
          background-image: url("../images/link-tab-hover.svg"); }
    @media (max-width: 767px) {
      .caseList .caseItem {
        padding: calc(20 / 390 * 100vw) calc(15 / 390 * 100vw);
        gap: calc(20 / 390 * 100vw);
        min-height: auto;
        flex-direction: column; } }
    .caseList .caseItem + .caseItem {
      margin-top: 40px; }
      @media (max-width: 767px) {
        .caseList .caseItem + .caseItem {
          margin-top: calc(30 / 390 * 100vw); } }
    .caseList .caseItem .itemImg {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      height: 130px;
      justify-content: center;
      align-items: center;
      width: 291px; }
      @media (max-width: 767px) {
        .caseList .caseItem .itemImg {
          width: 100%;
          min-height: 130px; } }
      .caseList .caseItem .itemImg a:hover {
        opacity: 0.7; }
    .caseList .caseItem .textArea {
      width: 484px;
      flex-shrink: 1; }
      @media (max-width: 767px) {
        .caseList .caseItem .textArea {
          width: 100%; } }
    .caseList .caseItem .itemTitle {
      font-size: 18px;
      line-height: calc(26/18);
      font-weight: bold;
      margin: 0 0 18px;
      color: #000;
      transition: all 0.2s ease-out 0s; }
      @media (max-width: 767px) {
        .caseList .caseItem .itemTitle {
          font-size: calc(18 / 390 * 100vw);
          margin: 0 0 calc(15 / 390 * 100vw); } }
      .caseList .caseItem .itemTitle a {
        text-decoration: none; }
    .caseList .caseItem .industry {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      gap: 6px; }
      @media (max-width: 767px) {
        .caseList .caseItem .industry {
          gap: calc(6 / 390 * 100vw); } }
      .caseList .caseItem .industry .industryTitle {
        flex-shrink: 0;
        font-size: 12px;
        font-weight: 500;
        line-height: calc(17/12); }
        @media (max-width: 767px) {
          .caseList .caseItem .industry .industryTitle {
            font-size: calc(12 / 390 * 100vw); } }
      .caseList .caseItem .industry .industryList {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-wrap: wrap;
        gap: 0px 15px;
        margin-bottom: 18px; }
        @media (max-width: 767px) {
          .caseList .caseItem .industry .industryList {
            gap: 0 calc(15 / 390 * 100vw);
            margin-bottom: calc(15 / 390 * 100vw); } }
        .caseList .caseItem .industry .industryList span {
          font-size: 12px;
          line-height: calc(17/12);
          display: inline-block;
          font-weight: 500; }
          @media (max-width: 767px) {
            .caseList .caseItem .industry .industryList span {
              font-size: calc(12 / 390 * 100vw); } }
    .caseList .caseItem .itemText {
      font-size: 16px;
      font-weight: 500;
      line-height: calc(27/16);
      color: #000; }
      @media (max-width: 767px) {
        .caseList .caseItem .itemText {
          font-size: calc(16 / 390 * 100vw); } }
    .caseList .caseItem .btnArea {
      width: 166px;
      flex-shrink: 0; }
      @media (max-width: 767px) {
        .caseList .caseItem .btnArea {
          width: 100%; } }
      .caseList .caseItem .btnArea .btn03 {
        padding: 8px 10px;
        width: 166px;
        display: block;
        font-size: 13px; }
        .caseList .caseItem .btnArea .btn03::before {
          position: static;
          display: inline-block;
          margin-right: 8px;
          vertical-align: middle;
          border-width: 0 6px 8px 6px;
          transform: rotate(90deg) translate(-15%); }
        @media (max-width: 767px) {
          .caseList .caseItem .btnArea .btn03 {
            padding: calc(15 / 390 * 100vw) calc(10 / 390 * 100vw);
            width: calc(260 / 390 * 100vw);
            font-size: calc(18 / 390 * 100vw); } }
      .caseList .caseItem .btnArea .btn08 {
        padding: 8px 5px;
        width: 166px;
        display: block;
        font-size: 13px; }
        @media (max-width: 767px) {
          .caseList .caseItem .btnArea .btn08 {
            padding: calc(15 / 390 * 100vw) calc(5 / 390 * 100vw);
            width: calc(260 / 390 * 100vw);
            font-size: calc(18 / 390 * 100vw); } }

.priceTxt {
  font-size: 26px;
  text-align: center;
  font-weight: bold;
  margin-top: 80px;
  margin-bottom: 100px; }
  @media (max-width: 767px) {
    .priceTxt {
      font-size: calc(20 / 390 * 100vw);
      margin-top: calc(30 / 390 * 100vw);
      margin-bottom: calc(50 / 390 * 100vw); } }

.price .priceTable {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
  border: 3px solid #AF244D; }
  @media (max-width: 767px) {
    .price .priceTable th, .price .priceTable td {
      display: block;
      width: 100%; } }
  .price .priceTable thead th {
    background: #AF244D;
    padding: 21px 23px;
    text-align: left;
    color: #fff;
    font-size: 26px;
    font-weight: bold;
    line-height: calc(37/26); }
    @media (max-width: 767px) {
      .price .priceTable thead th {
        padding: calc(15 / 390 * 100vw);
        font-size: calc(20 / 390 * 100vw); } }
  .price .priceTable tr {
    border-bottom: 3px solid #AF244D; }
  .price .priceTable td {
    border-left: 3px solid #AF244D; }
    @media (max-width: 767px) {
      .price .priceTable td {
        border-left: none;
        border-top: 3px solid #AF244D; } }
  .price .priceTable tbody th {
    background: #FFFAF9;
    text-align: center;
    font-weight: bold;
    padding: 25px 10px;
    font-size: 20px;
    line-height: calc(29/20); }
    @media (max-width: 767px) {
      .price .priceTable tbody th {
        padding: calc(15 / 390 * 100vw);
        font-size: calc(18 / 390 * 100vw);
        text-align: left; } }
  .price .priceTable tbody td {
    padding: 26px 20px 26px 40px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5; }
    @media (max-width: 767px) {
      .price .priceTable tbody td {
        padding: calc(15 / 390 * 100vw); } }
    .price .priceTable tbody td .column {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      align-items: center;
      gap: 80px; }
      @media (max-width: 767px) {
        .price .priceTable tbody td .column {
          gap: calc(40 / 390 * 100vw);
          flex-direction: column;
          align-items: flex-start; } }
      .price .priceTable tbody td .column .value {
        font-size: 20px;
        font-weight: bold;
        line-height: calc(29/20);
        text-align: center;
        min-width: 102px;
        flex-shrink: 0; }
        @media (max-width: 767px) {
          .price .priceTable tbody td .column .value {
            font-size: calc(18 / 390 * 100vw);
            min-width: initial; } }
      .price .priceTable tbody td .column .right {
        position: relative; }
        .price .priceTable tbody td .column .right::before {
          content: "";
          display: block;
          position: absolute;
          top: -5px;
          left: -40px;
          width: 1px;
          height: calc(100% + 10px);
          background: #AF244D; }
          @media (max-width: 767px) {
            .price .priceTable tbody td .column .right::before {
              top: calc(-20 / 390 * 100vw);
              left: 0;
              width: 100%;
              height: 1px; } }
        .price .priceTable tbody td .column .right p {
          font-size: 16px;
          line-height: 1.5;
          font-weight: 500; }
          @media (max-width: 767px) {
            .price .priceTable tbody td .column .right p {
              font-size: calc(16 / 390 * 100vw); } }
        .price .priceTable tbody td .column .right .list {
          margin-top: 3px; }
          @media (max-width: 767px) {
            .price .priceTable tbody td .column .right .list {
              margin-top: calc(3 / 390 * 100vw); } }
          .price .priceTable tbody td .column .right .list li {
            list-style: none;
            position: relative;
            font-size: 16px;
            line-height: 1.5;
            font-weight: 500;
            margin: 0;
            display: block;
            padding-left: 1em;
            text-indent: 0; }
            .price .priceTable tbody td .column .right .list li span {
              font-size: 14px; }
              @media (max-width: 767px) {
                .price .priceTable tbody td .column .right .list li span {
                  font-size: calc(14 / 390 * 100vw); } }
            @media (max-width: 767px) {
              .price .priceTable tbody td .column .right .list li {
                font-size: calc(16 / 390 * 100vw); } }
            .price .priceTable tbody td .column .right .list li + li {
              margin-top: 5px; }
              @media (max-width: 767px) {
                .price .priceTable tbody td .column .right .list li + li {
                  margin-top: calc(5 / 390 * 100vw); } }
            .price .priceTable tbody td .column .right .list li::before {
              content: "・";
              margin-right: 0;
              position: absolute;
              top: 0;
              left: 0; }
.price .note, .price .note2 {
  margin-top: 15px;
  font-size: 15px;
  font-weight: 500;
  line-height: calc(21/15); }
  @media (max-width: 767px) {
    .price .note, .price .note2 {
      margin-top: calc(10 / 390 * 100vw);
      font-size: calc(12 / 390 * 100vw); } }
.price .note2 {
  font-weight: bold; }
.price .targetArea {
  background: #FFFAF9;
  padding: 50px 60px; }
  @media (max-width: 767px) {
    .price .targetArea {
      padding: calc(20 / 390 * 100vw) calc(15 / 390 * 100vw); } }
  .price .targetArea h3 {
    margin: 0 -15px 25px;
    padding-bottom: 27px;
    font-size: 26px;
    line-height: calc(37/26);
    text-align: center;
    font-weight: bold;
    border-bottom: 2px solid #000000; }
    @media (max-width: 767px) {
      .price .targetArea h3 {
        margin: 0 calc(-5 / 390 * 100vw) calc(20 / 390 * 100vw);
        font-size: calc(22 / 390 * 100vw);
        padding-bottom: calc(20 / 390 * 100vw); } }
  .price .targetArea p {
    font-size: 18px;
    font-weight: 500;
    line-height: calc(33/18); }
    @media (max-width: 767px) {
      .price .targetArea p {
        font-size: calc(16 / 390 * 100vw); } }
  .price .targetArea h4 {
    margin-top: 35px;
    display: inline-block;
    font-size: 20px;
    line-height: calc(29/20);
    padding: 13px 22px;
    color: #fff;
    background: #AF244D; }
    @media (max-width: 767px) {
      .price .targetArea h4 {
        margin-top: calc(35 / 390 * 100vw);
        font-size: calc(18 / 390 * 100vw);
        padding: calc(13 / 390 * 100vw) calc(20 / 390 * 100vw); } }
  .price .targetArea .targetColumn {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 15px; }
    @media (max-width: 767px) {
      .price .targetArea .targetColumn {
        gap: 0;
        flex-direction: column; } }
    .price .targetArea .targetColumn .item {
      width: calc((100% - 15px)/2); }
      @media (max-width: 767px) {
        .price .targetArea .targetColumn .item {
          width: 100%; } }
  .price .targetArea .list {
    margin-top: 20px; }
    @media (max-width: 767px) {
      .price .targetArea .list {
        margin-top: calc(20 / 390 * 100vw); } }
    .price .targetArea .list li {
      list-style: none;
      position: relative;
      text-indent: 0;
      font-size: 18px;
      line-height: 1.5;
      font-weight: 500;
      padding-left: 1em;
      margin: 0; }
      @media (max-width: 767px) {
        .price .targetArea .list li {
          font-size: calc(16 / 390 * 100vw); } }
      .price .targetArea .list li::before {
        content: "・";
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        margin-right: 0; }
      .price .targetArea .list li + li {
        margin-top: 6px; }
        @media (max-width: 767px) {
          .price .targetArea .list li + li {
            margin-top: calc(5 / 390 * 100vw); } }
      .price .targetArea .list li.second {
        margin-top: 2.3em; }
        @media (max-width: 767px) {
          .price .targetArea .list li.second {
            margin-top: calc(20 / 390 * 100vw); } }
    .price .targetArea .list .childList {
      margin-top: 8px; }
      @media (max-width: 767px) {
        .price .targetArea .list .childList {
          margin-top: calc(8 / 390 * 100vw); } }
      .price .targetArea .list .childList li {
        font-size: 16px;
        padding-left: 0.8em; }
        @media (max-width: 767px) {
          .price .targetArea .list .childList li {
            font-size: calc(14 / 390 * 100vw); } }
        .price .targetArea .list .childList li::before {
          content: "-"; }
        .price .targetArea .list .childList li + li {
          margin-top: 8px; }
          @media (max-width: 767px) {
            .price .targetArea .list .childList li + li {
              margin-top: calc(5 / 390 * 100vw); } }
.price .noteList li {
  list-style: none;
  position: relative;
  text-indent: 0;
  font-size: 15px;
  line-height: 1.5;
  font-weight: 500;
  padding-left: 1em;
  margin: 0; }
  @media (max-width: 767px) {
    .price .noteList li {
      font-size: calc(12 / 390 * 100vw); } }
  .price .noteList li::before {
    content: "・";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    margin-right: 0; }
