@charset "UTF-8";
.pc-display {
  display: block;
}

.tab-display {
  display: none !important;
}

.sp-display {
  display: none !important;
}

/**
* 低解像度
*/
@media screen and (max-width: 1180px) {
  .pc-display {
    display: none !important;
  }
  .tab-display {
    display: block !important;
  }
  .sp-display {
    display: none !important;
  }
  header .header-pc-contents {
    height: 70px;
    position: relative;
    padding: 20px 16px;
  }
  header .header-sp-menu {
    display: none;
  }
  header .header-sp-menu .menu {
    background-color: #fff;
    height: 100vh;
    width: 100%;
    position: absolute;
    left: 0;
    top: 70px;
  }
  header .header-sp-menu.is-active {
    display: block;
  }
  header .header-sp-menu a {
    border-top: solid 1px #A9D6E4;
    border-bottom: solid 1px #A9D6E4;
    display: block;
    margin-bottom: -1px;
    padding: 15px 30px;
  }
  header .header-sp-menu .sub-menu a {
    color: #4A94E9;
    background-color: #E3F1F6;
    padding: 15px 30px 15px 46px;
  }
  header .js-hamburger {
    font-size: 28px;
    position: absolute;
    top: 16px;
    right: 16px;
  }
  header .js-hamburger .icon-close {
    display: none;
  }
  header .js-hamburger.is-active .icon-bars {
    display: none;
  }
  header .js-hamburger.is-active .icon-close {
    display: inline-block;
  }
  #index .mv {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: auto;
    padding: 120px 20px 0;
    width: 100%;
  }
  #index .mv::before {
    content: none;
  }
  #index .mv .mv-left {
    grid-gap: 20px;
    width: 100%;
  }
  #index .mv .mv-left img {
    width: 75%;
    max-width: 560px;
  }
  #index main .contents-01-right h2.pc-display {
    display: block !important;
  }
  .page-style section h1 {
    font-size: 26px;
  }
}
/**
* tablet
*/
@media screen and (max-width: 959px) {
  body {
    font: 400 16px/1.4 "Noto Sans JP", sans-serif;
  }
  .pc-display {
    display: none !important;
  }
  .tab-display {
    display: block !important;
  }
  .sp-display {
    display: none !important;
  }
  .btn-columns {
    grid-gap: 16px;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .btn {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  #index .mv .mv-left {
    grid-gap: 20px;
    width: 100%;
  }
  #index .mv .mv-left img {
    width: 100%;
  }
  #index main {
    grid-gap: 24px;
  }
  #index main section > div {
    grid-gap: 24px;
    padding: 32px 20px;
  }
  #index main .contents-01-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 20px;
    width: 100%;
  }
  #index main .contents-01-box .contents-01-right ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #index main .contents-01-box .contents-01-right ul li {
    text-align: left;
  }
  #index main .contents-01-box .contents-01-right h2 {
    text-align: center;
    font-size: 22px;
    width: 80%;
    margin: 20px auto 40px;
  }
  #index main .contents-01-box .contents-01-right h2.pc-display {
    display: block !important;
  }
  #index main .contents-01-box .contents-01-left img {
    max-width: 460px;
  }
  #index main .contents-02 {
    padding: 32px 0;
  }
  #index main .contents-02-box .contents-02-review {
    width: auto;
  }
  #index main .contents-02-columns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #index main .contents-02-columns a img {
    float: left;
    border-radius: 20px 0 0 20px;
  }
  .page-style main {
    padding: 70px 0 0;
  }
  .page-style section {
    padding: 60px 20px;
    grid-gap: 20px;
  }
  .page-style section .wp-block-image img {
    max-height: 360px;
    width: auto !important;
    margin: auto;
  }
  .page-style section .wp-block-image img[src*=".svg"] {
    height: 40px;
    margin: 0 -20px 0 -10px;
  }
  .page-style-title {
    padding: 30px 20px;
  }
  body[class*=simpletitle] section, body[id=privacy] section {
    padding: 0 20px 60px;
  }
  body[class*=simpletitle] .page-style-title, body[id=privacy] .page-style-title {
    padding: 40px 20px;
  }
  main.single {
    padding: 70px 20px 0;
    grid-gap: 20px;
  }
  main.single section {
    padding: 0;
  }
}
/**
* sp
*/
@media screen and (max-width: 480px) {
  body {
    font: 400 16px/1.4 "Noto Sans JP", sans-serif;
  }
  .pc-display {
    display: none !important;
  }
  .sp-display {
    display: block !important;
  }
  .btn-columns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .btn::after {
    float: right;
  }
  header .header-pc-name {
    font: 600 4.9vw/24px "Noto Serif JP", serif;
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  table {
    border-spacing: none !important;
  }
  table th, table td {
    display: block;
    width: 100% !important;
    text-align: left !important;
    padding: 15px !important;
  }
  h1 {
    font: 700 24px/1.4 "Noto Sans JP", sans-serif;
  }
  #index .mv img.tab-display {
    display: none !important;
  }
  #index .mv img.sp-display {
    margin-top: 20px;
  }
  #index main::before {
    margin-top: -60px;
    height: 60px;
  }
  #index main .contents-01-box .contents-01-right h2 {
    width: 100%;
  }
  #index main .contents-01-box .contents-01-right h2.pc-display {
    display: none !important;
  }
  #index main .contents-01-box .contents-01-right h2.pc-display p {
    text-wrap: nowrap;
  }
  #index main .contents-02-columns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #index main .contents-02-columns a img {
    width: 100%;
    border-radius: 20px 20px 0 0;
  }
  #index main .contents-02-review li {
    padding: 20px 15px 20px 30px;
  }
  #index main .contents-03::after {
    height: 80px;
  }
  #index .contents-news-box {
    padding: 100px 20px 60px;
  }
  #index .contents-news-box h1 {
    background: url(../img/bk_top_news_sp.png) right/contain no-repeat;
  }
  #index .contents-news-box .contents-news-list a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #index .contents-news-box .contents-news-list a .new-label {
    top: 18px;
  }
  #index .contents-news-box .contents-news-list a p {
    width: auto;
    padding: 10px 0 0 0;
  }
  #index .contents-news-box .contents-news-list a::after {
    position: absolute;
    right: 0;
    top: calc(50% - 16px);
  }
  footer .footer-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .page-style-title-box {
    background: none;
  }
  .page-style section {
    padding: 20px;
    grid-gap: 20px;
  }
  .page-style section h1 {
    font-size: 24px;
  }
  .page-style section h1.blue {
    color: #4A94E9;
  }
  .page-style section h2 {
    font: 700 18px/1.4 "Noto Sans JP", sans-serif;
  }
  .page-style section .wp-block-image img {
    border-radius: 10px;
  }
  .page-style section ul.feature-list li {
    width: 100%;
  }
  .page-style section div[class*=bg] {
    padding: 20px;
  }
  .page-style section div[class*=bg] h2 {
    font: 500 1.25em/1.8 "Noto Sans JP", sans-serif;
  }
  .page-style section .bg-pailblue .business_tag li {
    font-size: 12px;
    padding: 8px;
  }
  .page-style section p.button a {
    font-size: 14px;
  }
  .page-style section div[class*=column]:first-child {
    margin-bottom: 0 !important;
  }
  body[class*=simpletitle] section table i.fa-sort-down, body[class*=simpletitle] section table body[id=privacy] section table i.fa-sort-down {
    right: 30px;
    top: calc(30px + 0.3em);
  }
  body[class*=simpletitle] section table input[type=radio] {
    width: 24px;
    height: 24px;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    margin-right: 15px;
  }
  body[class*=simpletitle] section table a.btn {
    width: 100%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}