@charset "UTF-8";
:root {
  --green:#409153;
  --maker:#ffd800;
  --yellow: #fffceb;
  --blue: #024d86;
}

@media screen and (min-width: 821px) {
  .l_breadcrumbs {
    padding: clamp(15px, 2.5vw, 30px) clamp(50px, 8.3333333333vw, 100px) clamp(32.5px, 5.4166666667vw, 65px);
    font-size: clamp(8px, 1.3333333333vw, 16px);
  }
  .subfv {
    aspect-ratio: 1272/250;
  }
  .subfv img {
    object-fit: cover;
    width: 100%;
    max-height: 375px;
  }
  .subfv {
    margin-bottom: clamp(37.5px, 6.25vw, 75px);
    position: relative;
  }
  .subfv .ttl {
    display: flex;
    align-items: center;
    width: clamp(750px, 125vw, 1500px);
    aspect-ratio: 1500/145;
    background: #d3e5f9;
    border-radius: 0 0 clamp(36px, 6vw, 72px) clamp(36px, 6vw, 72px);
    margin: 0 auto 0;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
    padding: 0 clamp(25px, 4.1666666667vw, 50px);
    max-width: 100%;
  }
}
@media screen and (min-width: 821px) and (max-width: 1501px) {
  .subfv .ttl {
    max-width: 96%;
  }
}
@media screen and (min-width: 821px) {
  .subfv .ttl .txt {
    width: clamp(600px, 100vw, 1200px);
    display: block;
    margin: 0 auto;
    font-size: clamp(25px, 4.1666666667vw, 50px);
    font-feature-settings: "palt";
    font-weight: 900;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  }
  .about1 .inner {
    padding: clamp(27.5px, 4.5833333333vw, 55px);
    border-radius: clamp(10px, 1.6666666667vw, 20px);
    background: #eeffe8;
  }
  .about1 .sub {
    font-size: clamp(15px, 2.5vw, 30px);
    margin-top: clamp(20px, 3.3333333333vw, 40px);
    font-weight: 900;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-feature-settings: "palt";
    color: #0b5793;
  }
  .about1 .sub._mt0 {
    margin-top: 0;
  }
  .about1 .desc {
    font-size: clamp(9px, 1.5vw, 18px);
    line-height: 1.7;
    margin-top: clamp(10px, 1.6666666667vw, 20px);
  }
  .about1 .img {
    width: clamp(232.5px, 38.75vw, 465px);
    aspect-ratio: 465/346;
    float: right;
    margin-left: clamp(25px, 4.1666666667vw, 50px);
    margin-bottom: clamp(15px, 2.5vw, 30px);
  }
  .corp .inner {
    padding: clamp(27.5px, 4.5833333333vw, 55px);
    border-radius: clamp(10px, 1.6666666667vw, 20px);
    background: #fffceb;
  }
  .corp .flex {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    column-gap: clamp(25px, 4.1666666667vw, 50px);
  }
  .corp .desc {
    flex: 1;
    font-size: clamp(9px, 1.5vw, 18px);
    line-height: 1.7;
  }
  .corp .img {
    width: clamp(232.5px, 38.75vw, 465px);
    aspect-ratio: 465/346;
    float: right;
  }
  .corp .list {
    margin-top: clamp(22.5px, 3.75vw, 45px);
    border-radius: clamp(10px, 1.6666666667vw, 20px);
    border: clamp(0.5px, 0.0833333333vw, 1px) solid;
    overflow: hidden;
  }
  .corp .list .item {
    border-bottom: clamp(0.5px, 0.0833333333vw, 1px) solid;
    display: flex;
    flex-wrap: wrap;
  }
  .corp .list .item:last-child {
    border-bottom: none;
  }
  .corp .list .item .txt,
  .corp .list .item .label {
    height: clamp(35px, 5.8333333333vw, 70px);
    display: flex;
    align-items: center;
    font-size: clamp(9px, 1.5vw, 18px);
  }
  .corp .list .item .label {
    width: clamp(100px, 16.6666666667vw, 200px);
    background: #d3e5f9;
    font-weight: bold;
    justify-content: center;
  }
  .corp .list .item .txt {
    flex: 1;
    background: #fff;
    border-left: clamp(0.5px, 0.0833333333vw, 1px) solid;
    padding-left: clamp(20px, 3.3333333333vw, 40px);
  }
  .policy .inner > *:nth-child(1) {
    margin-top: 0;
  }
  .policy h2 {
    font-weight: bold;
    font-size: clamp(12.5px, 2.0833333333vw, 25px);
    line-height: 1.5;
    margin-top: clamp(20px, 3.3333333333vw, 40px);
  }
  .policy h3 {
    font-weight: bold;
    font-size: clamp(11px, 1.8333333333vw, 22px);
    line-height: 1.5;
  }
  .policy p {
    font-size: clamp(9px, 1.5vw, 18px);
    line-height: 1.7;
  }
  .pay .inner > *:nth-child(1) {
    margin-top: 0;
  }
  .pay .ttl {
    font-size: clamp(12.5px, 2.0833333333vw, 25px);
    padding-bottom: clamp(5px, 0.8333333333vw, 10px);
    margin-top: clamp(45px, 7.5vw, 90px);
    font-weight: bold;
    border-bottom: clamp(0.5px, 0.0833333333vw, 1px) solid;
  }
  .pay .dot,
  .pay .txt {
    font-size: clamp(12.5px, 2.0833333333vw, 25px);
    font-weight: bold;
    position: relative;
    line-height: 1.7;
  }
  .pay .link {
    text-decoration: underline;
  }
  .pay .link:hover {
    text-decoration: none;
  }
  .pay .dot {
    margin-left: 1em;
    margin-top: clamp(30px, 5vw, 60px);
  }
  .pay .dot:before {
    content: "●";
    position: absolute;
    left: -1em;
    color: #e05f00;
  }
  .pay .dot._mt0 {
    margin-top: 0;
  }
  .pay .dot .pl {
    padding-left: 7em;
  }
  .pay .txt {
    margin-top: clamp(5px, 0.8333333333vw, 10px);
  }
  .pay .logo1 {
    margin-top: clamp(15px, 2.5vw, 30px);
    width: clamp(562px, 93.6666666667vw, 1124px);
    max-width: 100%;
    aspect-ratio: 1124/249;
  }
  .pay .logo2 {
    aspect-ratio: 1498/158;
    width: clamp(374.5px, 62.4166666667vw, 749px);
    max-width: 100%;
    margin-top: clamp(15px, 2.5vw, 30px);
  }
  .pay .logo2 img {
    width: 100%;
  }
  .flow {
    background: #4794e6;
    padding: clamp(58px, 9.6666666667vw, 116px) clamp(10px, 1.6666666667vw, 20px) clamp(50px, 8.3333333333vw, 100px);
  }
  .flow .list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .flow .list .item {
    border: clamp(4px, 0.6666666667vw, 8px) solid #0b5793;
    border-radius: clamp(10px, 1.6666666667vw, 20px);
    width: 20.8%;
    aspect-ratio: 1/1;
    position: relative;
    background: #fff;
  }
  .flow .list .item:after {
    content: "";
    width: 26.4%;
    aspect-ratio: 65/100;
    position: absolute;
    right: -30%;
    top: 50%;
    display: block;
    transform: translateY(-50%);
    background: url(../img/com/flow_arrow.png) no-repeat center center/cover;
  }
  .flow .list .item:last-child:after {
    content: none;
  }
  .flow .list .item .badge {
    margin: clamp(-25px, -4.1666666667vw, -50px) auto 0;
    width: clamp(58px, 9.6666666667vw, 116px);
    display: block;
    aspect-ratio: 116/132;
  }
  .flow .list .item .txt {
    width: 100%;
    height: clamp(50px, 8.3333333333vw, 100px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(17.5px, 2.9166666667vw, 35px);
    line-height: 1.2;
    text-align: center;
    font-weight: bold;
  }
  .flow .flow_step {
    width: clamp(444.5px, 74.0833333333vw, 889px);
    aspect-ratio: 1778/148;
    display: block;
    margin-top: clamp(15px, 2.5vw, 30px);
  }
  .flow .steplist {
    margin-top: clamp(40px, 6.6666666667vw, 80px);
  }
  .flow .steplist .item {
    border-radius: clamp(10px, 1.6666666667vw, 20px);
    border: clamp(5px, 0.8333333333vw, 10px) solid #0b5793;
    padding: clamp(5px, 0.8333333333vw, 10px) clamp(17.5px, 2.9166666667vw, 35px) clamp(20px, 3.3333333333vw, 40px);
    background: #fff;
  }
  .flow .steplist .item + .item {
    margin-top: clamp(25px, 4.1666666667vw, 50px);
  }
  .flow .steplist .item .flex {
    display: flex;
    flex-wrap: wrap;
    column-gap: clamp(20px, 3.3333333333vw, 40px);
  }
  .flow .steplist .item .flex .desc {
    flex: 1;
  }
  .flow .steplist .item .flex .desc .sub {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .flow .steplist .item .flex .desc .sub .badge {
    width: clamp(58px, 9.6666666667vw, 116px);
    aspect-ratio: 116/132;
    margin-right: clamp(10px, 1.6666666667vw, 20px);
  }
  .flow .steplist .item .flex .desc .sub .sub_txt {
    flex: 1;
    font-feature-settings: "palt";
    font-size: clamp(20px, 3.3333333333vw, 40px);
    font-weight: 900;
  }
  .flow .steplist .item .flex .desc .sub .sub_txt .emphasis {
    color: #178b32;
  }
  .flow .steplist .item .flex .desc .desctxt {
    font-size: clamp(9px, 1.5vw, 18px);
    margin-top: clamp(5px, 0.8333333333vw, 10px);
    line-height: 1.7;
  }
  .flow .steplist .item .flex .spimg {
    display: none;
  }
  .flow .steplist .item .flex .img {
    margin-top: clamp(12.5px, 2.0833333333vw, 25px);
    width: clamp(175px, 29.1666666667vw, 350px);
    aspect-ratio: 375/340;
  }
  .flow .steplist .item .flex .img img {
    width: 100%;
  }
  .flow .steplist .item .link {
    display: block;
    pointer-events: none;
    margin-top: clamp(15px, 2.5vw, 30px);
  }
  .contact {
    padding-left: clamp(10px, 1.6666666667vw, 20px);
    padding-right: clamp(10px, 1.6666666667vw, 20px);
  }
  .contact .p-country-name {
    display: none !important;
  }
  .contact .inner .lists {
    border: clamp(0.5px, 0.0833333333vw, 1px) solid #0b5793;
    border-radius: clamp(10px, 1.6666666667vw, 20px);
    overflow: hidden;
  }
  .contact .inner .lists .item {
    border-bottom: clamp(0.5px, 0.0833333333vw, 1px) solid #0b5793;
    display: flex;
    flex-wrap: wrap;
  }
  .contact .inner .lists .item:last-child {
    border-bottom: none;
  }
  .contact .inner .lists .item .label {
    font-size: clamp(10px, 1.6666666667vw, 20px);
    font-weight: bold;
    width: clamp(145px, 24.1666666667vw, 290px);
    padding: clamp(20px, 3.3333333333vw, 40px) clamp(15px, 2.5vw, 30px);
    background: #d3e5f9;
  }
  .contact .inner .lists .item .desc {
    font-size: clamp(9px, 1.5vw, 18px);
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    flex: 1;
    padding: clamp(10px, 1.6666666667vw, 20px);
  }
  .contact .inner .lists .item .desc .error {
    margin-top: 0.5em;
    font-weight: bold;
    color: #e60012;
  }
  .contact .inner .lists .item .desc .mwform-file-delete {
    display: none;
  }
  .contact .inner .lists .item .must {
    color: #e60012;
  }
  .contact .inner .filestemp li {
    margin-top: clamp(7.5px, 1.25vw, 15px);
  }
  .contact .inner .filestemp li:nth-child(1) {
    margin-top: 0;
  }
  .contact .inner .filestemp li {
    display: flex;
    align-items: center;
  }
  .contact .inner .filestemp li input[type=file] {
    font-size: clamp(8px, 1.3333333333vw, 16px);
  }
  .contact .inner .filestemp li .mwform-file-delete {
    font-size: clamp(9px, 1.5vw, 18px);
    cursor: pointer;
    position: relative;
    z-index: 10;
    pointer-events: auto;
  }
  .contact .inner textarea {
    padding: clamp(10px, 1.6666666667vw, 20px);
    background: #f1f1f1;
    font-size: clamp(10px, 1.6666666667vw, 20px);
    border-radius: clamp(7.5px, 1.25vw, 15px);
    width: 100%;
  }
  .contact .inner [type=email],
  .contact .inner input[type=text] {
    padding: clamp(10px, 1.6666666667vw, 20px);
    background: #f1f1f1;
    font-size: clamp(10px, 1.6666666667vw, 20px);
    border-radius: clamp(7.5px, 1.25vw, 15px);
    width: 100%;
  }
  .contact .inner select {
    padding: clamp(10px, 1.6666666667vw, 20px);
    font-size: clamp(10px, 1.6666666667vw, 20px);
    border-radius: clamp(7.5px, 1.25vw, 15px);
    width: 8em;
    position: relative;
    background: url(../img/com/com_arrow.png) no-repeat center right 1em/20px 13px, #f1f1f1;
  }
  .contact .inner select:after {
    content: "";
  }
  .contact .inner .adless .itm {
    display: flex;
    align-items: center;
  }
  .contact .inner .adless .itm.itm {
    margin-top: clamp(10px, 1.6666666667vw, 20px);
  }
  .contact .inner .adless .itm .sublabel {
    font-size: clamp(10px, 1.6666666667vw, 20px);
    padding-right: clamp(5px, 0.8333333333vw, 10px);
  }
  .contact .btns {
    margin-top: clamp(50px, 8.3333333333vw, 100px);
    display: flex;
    column-gap: clamp(10px, 1.6666666667vw, 20px);
    justify-content: center;
  }
  .contact .btns .backbtn,
  .contact .btns .sendbtn {
    width: clamp(250px, 41.6666666667vw, 500px);
    height: clamp(65px, 10.8333333333vw, 130px);
    border-radius: clamp(20px, 3.3333333333vw, 40px);
    font-size: clamp(15px, 2.5vw, 30px);
    margin: 0 auto 0;
    font-weight: bold;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    color: #fff;
  }
  .contact .btns .backbtn {
    background: #0b5793;
  }
  .contact .btns .sendbtn {
    background: #178b32;
  }
  .complete .sub {
    font-size: clamp(27.5px, 4.5833333333vw, 55px);
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-weight: bold;
    text-align: center;
    font-feature-settings: "palt";
  }
  .complete .sub br {
    display: none;
  }
  .complete .box {
    border: clamp(0.5px, 0.0833333333vw, 1px) solid #0b5793;
    border-radius: clamp(30px, 5vw, 60px);
    padding: clamp(25px, 4.1666666667vw, 50px) clamp(10px, 1.6666666667vw, 20px);
    margin-top: clamp(25px, 4.1666666667vw, 50px);
  }
  .complete .read {
    font-size: clamp(12.5px, 2.0833333333vw, 25px);
    font-feature-settings: "palt";
    text-align: center;
    font-weight: bold;
  }
  .complete .read br {
    display: none;
  }
  .complete .desc {
    font-size: clamp(10px, 1.6666666667vw, 20px);
    line-height: 1.7;
    margin-top: clamp(25px, 4.1666666667vw, 50px);
    text-align: center;
  }
  .complete .desc br.sp {
    display: none;
  }
  .complete .returntopbtn {
    width: clamp(250px, 41.6666666667vw, 500px);
    height: clamp(65px, 10.8333333333vw, 130px);
    font-size: clamp(15px, 2.5vw, 30px);
    border-radius: clamp(20px, 3.3333333333vw, 40px);
    margin: clamp(50px, 8.3333333333vw, 100px) auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #178b32;
    color: #fff;
    font-weight: bold;
  }
  .p404 .sub {
    font-size: clamp(27.5px, 4.5833333333vw, 55px);
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-weight: bold;
    text-align: center;
    font-feature-settings: "palt";
  }
  .p404 .sub br {
    display: none;
  }
  .p404 .box {
    margin-top: clamp(25px, 4.1666666667vw, 50px);
  }
  .p404 .read {
    font-size: clamp(12.5px, 2.0833333333vw, 25px);
    font-feature-settings: "palt";
    text-align: center;
    font-weight: bold;
  }
  .p404 .read br {
    display: none;
  }
  .p404 .desc {
    font-size: clamp(10px, 1.6666666667vw, 20px);
    line-height: 1.7;
    margin-top: clamp(25px, 4.1666666667vw, 50px);
    text-align: center;
  }
  .p404 .desc br.sp {
    display: none;
  }
  .p404 .returntopbtn {
    width: clamp(250px, 41.6666666667vw, 500px);
    height: clamp(65px, 10.8333333333vw, 130px);
    font-size: clamp(15px, 2.5vw, 30px);
    border-radius: clamp(20px, 3.3333333333vw, 40px);
    margin: clamp(50px, 8.3333333333vw, 100px) auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #178b32;
    color: #fff;
    font-weight: bold;
  }
  .column {
    padding-left: clamp(50px, 8.3333333333vw, 100px);
    padding-right: clamp(50px, 8.3333333333vw, 100px);
  }
  .column .inner .list {
    display: flex;
    flex-wrap: wrap;
    column-gap: 1%;
    row-gap: clamp(5px, 0.8333333333vw, 10px);
  }
  .column .inner .list .item {
    width: 49.5%;
  }
  .column .inner .list .item .link {
    border-radius: clamp(10px, 1.6666666667vw, 20px);
    border: #0b5793 solid #0b5793;
    background: #d3e5f9;
    padding: clamp(7.5px, 1.25vw, 15px);
    display: flex;
    flex-wrap: wrap;
  }
  .column .inner .list .item .link .img {
    margin-right: 3%;
    width: 54%;
    overflow: hidden;
  }
  .column .inner .list .item .link .img img {
    border-radius: clamp(7.5px, 1.25vw, 15px);
    aspect-ratio: 3/2;
    height: auto !important;
  }
  .column .inner .list .item .link .desc {
    width: 43%;
    flex: 1;
    line-height: 1.7;
    font-size: clamp(9px, 1.5vw, 18px);
  }
  .column .inner .readmorebtn {
    margin: clamp(50px, 8.3333333333vw, 100px) auto 0;
    width: clamp(100px, 16.6666666667vw, 200px);
    height: clamp(30px, 5vw, 60px);
    font-size: clamp(10px, 1.6666666667vw, 20px);
    border-radius: clamp(15px, 2.5vw, 30px);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #178b32;
    color: #fff;
    font-weight: bold;
  }
  .column .inner .readmorebtn:hover {
    opacity: 0.8;
  }
  .column .column_loadmore {
    margin-top: clamp(50px, 8.3333333333vw, 100px);
  }
  .column .column_loadmore .js_column_loadmore {
    width: clamp(100px, 16.6666666667vw, 200px);
    height: clamp(30px, 5vw, 60px);
    border-radius: clamp(15px, 2.5vw, 30px);
    font-size: clamp(10px, 1.6666666667vw, 20px);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #168630;
    display: block;
    margin: 0 auto;
    color: #fff;
    text-align: center;
  }
  .blockcontent {
    counter-reset: number 0;
    max-width: 1260px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 30px;
    padding-right: 30px;
    /* side */
  }
  .blockcontent .wp-block-image,
  .blockcontent .postthumbnail,
  .blockcontent .wp-block-list,
  .blockcontent p, .blockcontent table {
    padding-left: clamp(50px, 8.3333333333vw, 100px);
    padding-right: clamp(50px, 8.3333333333vw, 100px);
  }
  .blockcontent img {
    height: auto !important;
  }
  .blockcontent #toc_container {
    padding-left: clamp(50px, 8.3333333333vw, 100px);
    padding-right: clamp(50px, 8.3333333333vw, 100px);
  }
  .blockcontent #toc_container .toc_title {
    font-size: clamp(12.5px, 2.0833333333vw, 25px);
    padding: clamp(7.5px, 1.25vw, 15px) 0 clamp(5px, 0.8333333333vw, 10px);
    border-radius: clamp(10px, 1.6666666667vw, 20px) clamp(10px, 1.6666666667vw, 20px) 0 0;
    background: #178b32;
    font-weight: bold;
    text-align: center;
    color: #fff;
  }
  .blockcontent #toc_container .toc_list {
    border: clamp(1.5px, 0.25vw, 3px) solid #178b32;
    background: #eeffe8;
    padding: clamp(27.5px, 4.5833333333vw, 55px) clamp(45px, 7.5vw, 90px);
    counter-reset: listing 0;
  }
  .blockcontent #toc_container .toc_list a {
    color: #0b5793;
    font-size: clamp(10px, 1.6666666667vw, 20px);
    font-weight: bold;
  }
  .blockcontent #toc_container .toc_list > li {
    position: relative;
  }
  .blockcontent #toc_container .toc_list > li:before {
    counter-increment: listing 1;
    content: counter(listing) ". ";
    color: #0b5793;
    font-size: clamp(10px, 1.6666666667vw, 20px);
    font-weight: bold;
  }
  .blockcontent #toc_container .toc_list > li + li {
    margin-top: clamp(25px, 4.1666666667vw, 50px);
  }
  .blockcontent #toc_container .toc_list > li ul {
    margin-left: 3em;
    position: relative;
  }
  .blockcontent #toc_container .toc_list > li ul > li {
    margin-top: 1em;
    margin-left: 1em;
    position: relative;
  }
  .blockcontent #toc_container .toc_list > li ul > li:before {
    content: "- ";
    position: absolute;
    left: -1em;
    color: #0b5793;
    font-size: clamp(10px, 1.6666666667vw, 20px);
    font-weight: bold;
  }
  .blockcontent .wp-block-image {
    margin-top: clamp(25px, 4.1666666667vw, 50px);
  }
  .blockcontent .ttl {
    word-break: keep-all;
    font-size: clamp(22.5px, 3.75vw, 45px);
    line-height: 1.3;
    font-weight: bold;
    text-align: center;
  }
  .blockcontent .ttl:after {
    content: "";
    width: clamp(125px, 20.8333333333vw, 250px);
    height: clamp(4px, 0.6666666667vw, 8px);
    border-radius: clamp(2px, 0.3333333333vw, 4px);
    background: #0b5793;
    display: block;
    margin: clamp(10px, 1.6666666667vw, 20px) auto clamp(30px, 5vw, 60px);
  }
  .blockcontent h2 {
    margin-top: clamp(37.5px, 6.25vw, 75px);
    background: #d3e5f9;
    padding: clamp(15px, 2.5vw, 30px) clamp(15px, 2.5vw, 30px) clamp(15px, 2.5vw, 30px) clamp(75px, 12.5vw, 150px);
    border-radius: 0 0 clamp(27.5px, 4.5833333333vw, 55px) 0;
    line-height: 1.3;
    font-size: clamp(20px, 3.3333333333vw, 40px);
    font-weight: bold;
    position: relative;
  }
  .blockcontent h2:before {
    counter-increment: number 1;
    content: counter(number) " ";
    font-size: clamp(30px, 5vw, 60px);
    width: clamp(55px, 9.1666666667vw, 110px);
    height: 100%;
    background: #0b5793;
    color: #fff;
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .blockcontent h3 {
    margin-top: clamp(50px, 8.3333333333vw, 100px);
    background: #d3e5f9;
    padding: clamp(12.5px, 2.0833333333vw, 25px) clamp(25px, 4.1666666667vw, 50px);
    border-radius: 0 0 clamp(20px, 3.3333333333vw, 40px) clamp(20px, 3.3333333333vw, 40px);
    line-height: 1.3;
    font-size: clamp(15px, 2.5vw, 30px);
    font-weight: bold;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .blockcontent h4 {
    margin-top: clamp(37.5px, 6.25vw, 75px);
    font-size: clamp(12.5px, 2.0833333333vw, 25px);
    width: clamp(500px, 83.3333333333vw, 1000px);
    border: clamp(0.5px, 0.0833333333vw, 1px) solid #178b32;
    padding: clamp(7.5px, 1.25vw, 15px) clamp(15px, 2.5vw, 30px);
    border-radius: clamp(7.5px, 1.25vw, 15px);
    text-align: center;
    background: #eeffe8;
    font-weight: bold;
    margin-left: auto;
    margin-right: auto;
  }
  .blockcontent p {
    margin-top: clamp(25px, 4.1666666667vw, 50px);
    font-size: clamp(9px, 1.5vw, 18px);
    line-height: 1.7;
    padding-left: clamp(50px, 8.3333333333vw, 100px);
  }
  .blockcontent p + p {
    margin-top: clamp(10px, 1.6666666667vw, 20px);
  }
  .blockcontent .sptable {
    display: none;
  }
  .blockcontent table {
    margin-top: clamp(25px, 4.1666666667vw, 50px);
    width: clamp(500px, 83.3333333333vw, 1000px);
    margin-left: clamp(50px, 8.3333333333vw, 100px);
    font-size: clamp(9px, 1.5vw, 18px);
    border-top: clamp(0.5px, 0.0833333333vw, 1px) solid;
    border-left: clamp(0.5px, 0.0833333333vw, 1px) solid;
  }
  .blockcontent table tr {
    border-bottom: clamp(0.5px, 0.0833333333vw, 1px) solid;
  }
  .blockcontent table td {
    vertical-align: middle;
    text-align: left;
    border-right: clamp(0.5px, 0.0833333333vw, 1px) solid;
    padding: clamp(5px, 0.8333333333vw, 10px) clamp(10px, 1.6666666667vw, 20px);
    line-height: 1.5;
  }
  .blockcontent table tr:nth-child(1) td {
    font-weight: bold;
    text-align: center;
    background: #eeffe8;
  }
  .blockcontent ul.wp-block-list {
    margin-top: clamp(25px, 4.1666666667vw, 50px);
  }
  .blockcontent ul.wp-block-list li {
    color: #e60012;
    font-size: clamp(9px, 1.5vw, 18px);
    font-weight: bold;
    position: relative;
    line-height: 1.3;
    margin-left: 1em;
  }
  .blockcontent ul.wp-block-list li + li {
    margin-top: 0.3em;
  }
  .blockcontent ul.wp-block-list li:before {
    content: "";
    width: 0.8em;
    height: 0.8em;
    border-radius: 0.4em;
    display: block;
    background: #e60012;
    position: absolute;
    left: -1em;
    top: 0.3em;
  }
  .blockcontent ol.wp-block-list {
    margin-top: clamp(25px, 4.1666666667vw, 50px);
    counter-reset: ol-counter;
  }
  .blockcontent ol.wp-block-list li {
    color: #e60012;
    font-size: clamp(9px, 1.5vw, 18px);
    font-weight: bold;
    position: relative;
    line-height: 1.3;
    margin-left: 1.5em;
  }
  .blockcontent ol.wp-block-list li + li {
    margin-top: 0.3em;
  }
  .blockcontent ol.wp-block-list li:before {
    counter-increment: ol-counter;
    content: counter(ol-counter) ".";
    position: absolute;
    left: -1.5em;
    top: 0;
    font-weight: bold;
    color: #e60012;
  }
  .blockcontent .backtolistbtn {
    width: clamp(250px, 41.6666666667vw, 500px);
    height: clamp(50px, 8.3333333333vw, 100px);
    border-radius: clamp(15px, 2.5vw, 30px);
    font-size: clamp(12px, 2vw, 24px);
    margin: clamp(25px, 4.1666666667vw, 50px) auto 0;
    font-weight: bold;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #0b5793;
  }
  .blockcontent .backtolistbtn:hover {
    transition: 0.2s ease-out;
    opacity: 0.8;
  }
  .relations {
    background: #eeffe8;
    top: clamp(1px, 0.1666666667vw, 2px) solid #168630;
    border-bottom: clamp(1px, 0.1666666667vw, 2px) solid #168630;
    padding: 0 clamp(50px, 8.3333333333vw, 100px) clamp(27.5px, 4.5833333333vw, 55px);
    margin-top: clamp(75px, 12.5vw, 150px);
  }
  .relations .relations_ttl {
    color: #fff;
    width: clamp(230px, 38.3333333333vw, 460px);
    clip-path: polygon(0% 0, 100% 0, 95% 100%, 5% 100%);
    height: clamp(45px, 7.5vw, 90px);
    background: #168630;
    font-size: clamp(12.5px, 2.0833333333vw, 25px);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0 auto;
  }
  .relations .list {
    margin-top: clamp(22.5px, 3.75vw, 45px);
    max-width: clamp(600px, 100vw, 1200px);
    width: 100%;
    display: flex;
    justify-content: center;
    column-gap: clamp(50px, 8.3333333333vw, 100px);
    margin-right: auto;
    margin-left: auto;
  }
  .relations .list .item {
    width: clamp(150px, 25vw, 300px);
    border-radius: clamp(10px, 1.6666666667vw, 20px);
    overflow: hidden;
    background: #fff;
  }
  .relations .list .item .link:hover {
    transition: 0.2s ease-out;
    opacity: 0.8;
  }
  .relations .list .item .img img {
    display: block;
    aspect-ratio: 3/2;
    height: auto !important;
  }
  .relations .list .item .desc {
    padding: clamp(10px, 1.6666666667vw, 20px);
    font-size: clamp(9px, 1.5vw, 18px);
    line-height: 1.7;
  }
}
@media screen and (max-width: 820px) {
  .subfv {
    aspect-ratio: 85/39;
    margin-top: min(14.7058823529vw, 125px);
  }
  .subfv img {
    object-fit: cover;
    width: 100%;
    aspect-ratio: 850/395;
  }
  .subfv .ttl {
    display: flex;
    align-items: center;
    width: 100%;
    aspect-ratio: 850/250;
    background: #d3e5f9;
    border-radius: 0 0 min(11.7647058824vw, 100px) min(11.7647058824vw, 100px);
    margin: 0 auto 0;
  }
  .subfv .ttl .txt {
    display: block;
    margin: 0 auto;
    font-size: min(7.0588235294vw, 60px);
    font-feature-settings: "palt";
    font-weight: 900;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  }
  .l_breadcrumbs {
    padding: min(3.5294117647vw, 30px) 3.0588235294vw min(7.6470588235vw, 65px);
    font-size: min(3.5294117647vw, 30px);
  }
  .l_breadcrumbs .breadcrumbs {
    white-space: nowrap;
    overflow: scroll;
    padding-bottom: 0.5em;
  }
  .about1 {
    padding: min(2.3529411765vw, 20px) min(2.9411764706vw, 25px) 0;
  }
  .about1 .inner {
    padding: min(5.8823529412vw, 50px);
    border-radius: min(3.5294117647vw, 30px);
    background: #eeffe8;
  }
  .about1 .sub {
    font-size: min(5.8823529412vw, 50px);
    margin-top: min(7.0588235294vw, 60px);
    font-weight: 900;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-feature-settings: "palt";
    color: #0b5793;
    line-height: 1.5;
  }
  .about1 .desc {
    font-size: min(3.7647058824vw, 32px);
    margin-top: min(2.3529411765vw, 20px);
    line-height: 1.7;
  }
  .about1 .img {
    width: min(82.3529411765vw, 700px);
    aspect-ratio: 465/346;
  }
  .corp .inner {
    padding: min(4.7058823529vw, 40px);
    border-radius: min(2.3529411765vw, 20px);
    background: #fffceb;
  }
  .corp .desc {
    margin-top: min(7.6470588235vw, 65px);
    flex: 1;
    font-size: min(3.7647058824vw, 32px);
    line-height: 1.7;
  }
  .corp .img {
    width: 100%;
    aspect-ratio: 465/346;
    margin: 0 auto;
  }
  .corp .img img {
    width: 100%;
  }
  .corp .list {
    margin: min(7.6470588235vw, 65px) min(2.3529411765vw, 20px) 0;
    border-radius: min(3.5294117647vw, 30px);
    border: min(0.2352941176vw, 2px) solid;
    overflow: hidden;
  }
  .corp .list .item {
    border-bottom: clamp(1px, 0.1666666667vw, 2px) solid;
    display: flex;
    flex-wrap: wrap;
  }
  .corp .list .item:last-child {
    border-bottom: none;
  }
  .corp .list .item .txt,
  .corp .list .item .label {
    width: 100%;
    padding: min(4.7058823529vw, 40px) min(2.3529411765vw, 20px);
    line-height: 1.5;
    text-align: center;
    font-size: min(3.7647058824vw, 32px);
  }
  .corp .list .item .label {
    border-bottom: min(0.2352941176vw, 2px) solid;
    background: #d3e5f9;
    font-weight: bold;
  }
  .corp .list .item .txt {
    background: #fff;
  }
  .policy {
    padding: 0 min(5.8823529412vw, 50px) 0;
  }
  .policy .inner > *:nth-child(1) {
    margin-top: 0;
  }
  .policy h2 {
    font-weight: bold;
    font-size: min(4.7058823529vw, 40px);
    line-height: 1.5;
    margin-top: min(9.4117647059vw, 80px);
  }
  .policy h3 {
    font-weight: bold;
    font-size: min(4.3529411765vw, 37px);
    line-height: 1.5;
  }
  .policy p {
    font-size: min(3.7647058824vw, 32px);
    line-height: 1.7;
  }
  .pay {
    padding-left: min(2.3529411765vw, 20px);
    padding-right: min(2.3529411765vw, 20px);
  }
  .pay .inner > *:nth-child(1) {
    margin-top: 0;
  }
  .pay .ttl {
    line-height: 1.5;
    font-size: min(4.7058823529vw, 40px);
    padding-bottom: min(2.3529411765vw, 20px);
    margin-top: min(10.5882352941vw, 90px);
    font-weight: bold;
    border-bottom: min(0.4705882353vw, 4px) solid;
  }
  .pay .dot,
  .pay .txt {
    font-size: min(4.7058823529vw, 40px);
    font-weight: bold;
    position: relative;
    line-height: 1.7;
  }
  .pay .link {
    text-decoration: underline;
  }
  .pay .link:hover {
    text-decoration: none;
  }
  .pay .dot {
    margin-left: 1em;
    margin-top: min(10.5882352941vw, 90px);
  }
  .pay .dot:before {
    content: "●";
    color: #e05f00;
    position: absolute;
    left: -1em;
    z-index: 1;
  }
  .pay .dot._mt0 {
    margin-top: 0;
  }
  .pay .txt {
    margin-top: clamp(5px, 0.8333333333vw, 10px);
  }
  .pay .txt .link {
    text-decoration: underline;
  }
  .pay .logo1 {
    margin: min(4.7058823529vw, 40px) auto 0;
    width: min(87.6470588235vw, 745px);
    max-width: 100%;
    aspect-ratio: 1491/884;
  }
  .pay .logo2 {
    aspect-ratio: 469/264;
    width: min(55.1764705882vw, 469px);
    max-width: 100%;
    margin: min(4.7058823529vw, 40px) auto 0;
  }
  .pay .logo2 img {
    width: 100%;
  }
  .flow {
    background: #4794e6;
    padding-bottom: clamp(50px, 8.3333333333vw, 100px);
  }
  .flow .flow_flex {
    padding-top: min(10.5882352941vw, 90px);
    padding-left: min(10.5882352941vw, 90px);
    padding-right: min(12.9411764706vw, 110px);
    flex-wrap: wrap;
    display: flex;
    column-gap: min(4.1176470588vw, 35px);
  }
  .flow .list {
    width: min(57.0588235294vw, 485px);
    flex: 1;
  }
  .flow .list .item {
    border: min(1.1764705882vw, 10px) solid #0b5793;
    border-radius: clamp(15px, 2.5vw, 30px);
    aspect-ratio: 485/435;
    position: relative;
    background: #fff;
  }
  .flow .list .item:after {
    content: "";
    width: 85px;
    aspect-ratio: 179/90;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -47px;
    display: block;
    background: url(../img/com/flow_arrowsp.png) no-repeat center center/cover;
  }
  .flow .list .item + .item {
    margin-top: clamp(55px, 9.1666666667vw, 110px);
  }
  .flow .list .item:last-child:after {
    content: none;
  }
  .flow .list .item .badge {
    margin: min(-1.7647058824vw, -15px) auto 0;
    width: min(23.5294117647vw, 200px);
    display: block;
    aspect-ratio: 116/132;
  }
  .flow .list .item .txt {
    width: 100%;
    margin-top: clamp(10px, 1.6666666667vw, 20px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: min(6.9411764706vw, 59px);
    line-height: 1.4;
    text-align: center;
    font-weight: bold;
  }
  .flow .flow_step {
    width: min(15.7647058824vw, 134px);
    aspect-ratio: 134/1549;
    display: block;
  }
  .flow .steplist {
    margin-top: min(11.1764705882vw, 95px);
    padding-right: min(2.3529411765vw, 20px);
    padding-left: min(2.3529411765vw, 20px);
  }
  .flow .steplist .item {
    border-radius: min(3.5294117647vw, 30px);
    border: min(0.9411764706vw, 8px) solid #0b5793;
    padding: min(7.0588235294vw, 60px) min(2.3529411765vw, 20px);
    background: #fff;
  }
  .flow .steplist .item + .item {
    margin-top: min(5.8823529412vw, 50px);
  }
  .flow .steplist .item .flex .desc {
    flex: 1;
  }
  .flow .steplist .item .flex .desc .sub .badge {
    width: min(17.8823529412vw, 152px);
    aspect-ratio: 116/132;
    margin: 0 auto;
    display: block;
  }
  .flow .steplist .item .flex .desc .sub .sub_txt {
    margin-top: min(4.7058823529vw, 40px);
    text-align: center;
    flex: 1;
    font-feature-settings: "palt";
    font-size: min(7.0588235294vw, 60px);
    font-weight: 900;
  }
  .flow .steplist .item .flex .desc .sub .sub_txt .emphasis {
    color: #178b32;
  }
  .flow .steplist .item .flex .desc .desctxt {
    font-size: min(3.7647058824vw, 32px);
    margin-top: min(5.8823529412vw, 50px);
    padding-left: min(2.3529411765vw, 20px);
    padding-right: min(2.3529411765vw, 20px);
    line-height: 1.7;
  }
  .flow .steplist .item .flex .spimg {
    width: min(65.2941176471vw, 555px);
    aspect-ratio: 555/508;
    display: block;
    margin: min(7.0588235294vw, 60px) auto 0;
  }
  .flow .steplist .item .flex .img {
    display: none;
  }
  .flow .steplist .item .link {
    display: block;
    margin: min(4.7058823529vw, 40px) min(2.3529411765vw, 20px) 0;
  }
  .contact {
    padding-left: 3.0588235294vw;
    padding-right: 3.0588235294vw;
  }
  .contact .p-country-name {
    display: none !important;
  }
  .contact .inner {
    padding-left: min(5.8823529412vw, 50px);
    padding-right: min(5.8823529412vw, 50px);
  }
  .contact .inner .lists {
    border: min(0.2352941176vw, 2px) solid #0b5793;
    border-radius: min(3.5294117647vw, 30px);
    overflow: hidden;
  }
  .contact .inner .lists .item {
    border-bottom: min(0.2352941176vw, 2px) solid #0b5793;
  }
  .contact .inner .lists .item:last-child {
    border-bottom: none;
  }
  .contact .inner .lists .item .label {
    font-size: min(3.7647058824vw, 32px);
    text-align: center;
    font-weight: bold;
    padding: min(5.2941176471vw, 45px) min(2.3529411765vw, 20px);
    background: #d3e5f9;
  }
  .contact .inner .lists .item .label .must {
    color: #e60012;
  }
  .contact .inner .lists .item .desc {
    flex: 1;
    padding: min(2.3529411765vw, 20px);
    display: flex;
    align-items: center;
    font-size: min(3.7647058824vw, 32px);
    flex-wrap: wrap;
  }
  .contact .inner .lists .item .desc .error {
    margin-top: 0.5em;
    font-weight: bold;
    color: #e60012;
  }
  .contact .inner .lists .item .desc .mwform-file-delete {
    display: none;
  }
  .contact .inner .filestemp li {
    margin-top: min(3.5294117647vw, 30px);
  }
  .contact .inner .filestemp li:nth-child(1) {
    margin-top: 0;
  }
  .contact .inner .filestemp li {
    display: flex;
    align-items: center;
  }
  .contact .inner .filestemp li input[type=file] {
    font-size: min(3.7647058824vw, 32px);
  }
  .contact .inner .filestemp li .mwform-file-delete {
    font-size: min(3.7647058824vw, 32px);
    cursor: pointer;
    position: relative;
    z-index: 10;
    pointer-events: auto;
  }
  .contact .inner textarea {
    padding: min(2.3529411765vw, 20px);
    background: #f1f1f1;
    font-size: min(3.7647058824vw, 32px);
    border-radius: min(2.3529411765vw, 20px);
    width: 100%;
  }
  .contact .inner [type=email],
  .contact .inner input[type=text] {
    padding: min(4.7058823529vw, 40px);
    background: #f1f1f1;
    font-size: min(3.7647058824vw, 32px);
    border-radius: min(2.3529411765vw, 20px);
    width: 100%;
  }
  .contact .inner select {
    padding: min(4.7058823529vw, 40px);
    font-size: min(3.7647058824vw, 32px);
    border-radius: min(2.3529411765vw, 20px);
    width: 9em;
    position: relative;
    background: url(../img/com/com_arrow.png) no-repeat center right 1em/20px 13px, #f1f1f1;
  }
  .contact .inner select:after {
    content: "";
  }
  .contact .inner .adless .itm {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .contact .inner .adless .itm .p-postal-code {
    width: auto;
  }
  .contact .inner .adless .itm.itm {
    margin-top: min(3.5294117647vw, 30px);
  }
  .contact .inner .adless .itm .sublabel {
    font-size: min(3.7647058824vw, 32px);
    padding-right: min(2.3529411765vw, 20px);
  }
  .contact .inner .adless .itm .inputfld {
    flex: 1;
  }
  .contact .btns {
    margin-top: min(11.7647058824vw, 100px);
  }
  .contact .btns li:nth-child(2) {
    margin-top: min(5.8823529412vw, 50px);
  }
  .contact .btns .backbtn,
  .contact .btns .sendbtn {
    width: min(70.5882352941vw, 600px);
    height: min(18.8235294118vw, 160px);
    border-radius: min(5.8823529412vw, 50px);
    font-size: min(4.7058823529vw, 40px);
    margin: 0 auto 0;
    font-weight: bold;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    color: #fff;
  }
  .contact .btns .backbtn {
    background: #0b5793;
  }
  .contact .btns .sendbtn {
    background: #178b32;
  }
  .complete {
    padding: min(11.7647058824vw, 100px) 3.0588235294vw 0;
  }
  .complete .sub {
    line-height: 1.3;
    font-size: min(8.2352941176vw, 70px);
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-weight: bold;
    text-align: center;
    font-feature-settings: "palt";
  }
  .complete .box {
    border: min(0.2352941176vw, 2px) solid #0b5793;
    border-radius: min(8.2352941176vw, 70px);
    padding: min(8.2352941176vw, 70px) min(2.3529411765vw, 20px) min(7.0588235294vw, 60px);
    margin-top: min(7.0588235294vw, 60px);
  }
  .complete .read {
    line-height: 1.7;
    font-size: min(4.4705882353vw, 38px);
    font-feature-settings: "palt";
    text-align: center;
    font-weight: bold;
  }
  .complete .desc {
    line-height: 1.7;
    font-size: min(3.7647058824vw, 32px);
    margin-top: min(8.2352941176vw, 70px);
    text-align: center;
  }
  .complete .returntopbtn {
    width: min(70.5882352941vw, 600px);
    height: min(18.8235294118vw, 160px);
    font-size: min(4.7058823529vw, 40px);
    border-radius: min(4.7058823529vw, 40px);
    margin: min(14.1176470588vw, 120px) auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #178b32;
    color: #fff;
    font-weight: bold;
  }
  .p404 {
    padding: min(11.7647058824vw, 100px) 3.0588235294vw 0;
  }
  .p404 .sub {
    line-height: 1.3;
    font-size: min(8.2352941176vw, 70px);
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-weight: bold;
    text-align: center;
    font-feature-settings: "palt";
  }
  .p404 .box {
    margin-top: min(7.0588235294vw, 60px);
  }
  .p404 .read {
    line-height: 1.7;
    font-size: min(4.4705882353vw, 38px);
    font-feature-settings: "palt";
    text-align: center;
    font-weight: bold;
  }
  .p404 .desc {
    line-height: 1.7;
    font-size: min(3.7647058824vw, 32px);
    margin-top: min(8.2352941176vw, 70px);
    text-align: center;
  }
  .p404 .returntopbtn {
    width: min(70.5882352941vw, 600px);
    height: min(18.8235294118vw, 160px);
    font-size: min(4.7058823529vw, 40px);
    border-radius: min(4.7058823529vw, 40px);
    margin: min(14.1176470588vw, 120px) auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #178b32;
    color: #fff;
    font-weight: bold;
  }
  .blockcontent {
    counter-reset: number 0;
    margin-left: auto;
    margin-right: auto;
    padding-left: min(2.3529411765vw, 20px);
    padding-right: min(2.3529411765vw, 20px);
    /* side */
  }
  .blockcontent .wp-block-list,
  .blockcontent p, .blockcontent table {
    padding-left: min(5.8823529412vw, 50px);
    padding-right: min(5.8823529412vw, 50px);
  }
  .blockcontent img {
    height: auto !important;
  }
  .blockcontent #toc_container {
    padding-left: min(2.3529411765vw, 20px);
    padding-right: min(2.3529411765vw, 20px);
  }
  .blockcontent #toc_container .toc_title {
    font-size: min(4.7058823529vw, 40px);
    padding: min(3.5294117647vw, 30px) 0 min(3.5294117647vw, 30px);
    border-radius: min(2.3529411765vw, 20px) min(2.3529411765vw, 20px) 0 0;
    background: #178b32;
    font-weight: bold;
    text-align: center;
    color: #fff;
  }
  .blockcontent #toc_container .toc_list {
    border: min(0.5882352941vw, 5px) solid #178b32;
    background: #eeffe8;
    padding: min(8.2352941176vw, 70px) min(5.8823529412vw, 50px) min(7.0588235294vw, 60px);
    counter-reset: listing 0;
  }
  .blockcontent #toc_container .toc_list a {
    color: #0b5793;
    font-size: min(3.7647058824vw, 32px);
    font-weight: bold;
  }
  .blockcontent #toc_container .toc_list > li {
    position: relative;
  }
  .blockcontent #toc_container .toc_list > li:before {
    counter-increment: listing 1;
    content: counter(listing) ". ";
    color: #0b5793;
    font-size: min(3.7647058824vw, 32px);
    font-weight: bold;
  }
  .blockcontent #toc_container .toc_list > li + li {
    margin-top: min(10.5882352941vw, 90px);
  }
  .blockcontent #toc_container .toc_list > li ul {
    margin-left: 3em;
    position: relative;
  }
  .blockcontent #toc_container .toc_list > li ul > li {
    margin-top: 1em;
    margin-left: 1em;
    position: relative;
  }
  .blockcontent #toc_container .toc_list > li ul > li:before {
    content: "- ";
    position: absolute;
    left: -1em;
    color: #0b5793;
    font-size: min(3.7647058824vw, 32px);
    font-weight: bold;
  }
  .blockcontent .wp-block-image {
    margin-top: min(5.8823529412vw, 50px);
  }
  .blockcontent .ttl {
    font-size: min(7.0588235294vw, 60px);
    line-height: 1.3;
    font-weight: bold;
    text-align: center;
    word-break: auto-phrase;
  }
  .blockcontent .ttl:after {
    content: "";
    width: min(47.0588235294vw, 400px);
    height: min(2.3529411765vw, 20px);
    border-radius: min(1.1764705882vw, 10px);
    background: #0b5793;
    display: block;
    margin: min(2.3529411765vw, 20px) auto min(10.5882352941vw, 90px);
  }
  .blockcontent h2 {
    margin-top: min(8.8235294118vw, 75px);
    background: #d3e5f9;
    padding: min(3.5294117647vw, 30px) min(5.8823529412vw, 50px) min(3.5294117647vw, 30px) min(17.6470588235vw, 150px);
    border-radius: 0 0 min(6.4705882353vw, 55px) 0;
    line-height: 1.3;
    font-size: min(5.2941176471vw, 45px);
    font-weight: bold;
    position: relative;
  }
  .blockcontent h2:before {
    counter-increment: number 1;
    content: counter(number) " ";
    font-size: min(7.0588235294vw, 60px);
    width: min(12.9411764706vw, 110px);
    height: 100%;
    background: #0b5793;
    color: #fff;
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .blockcontent h3 {
    margin-top: min(11.7647058824vw, 100px);
    background: #d3e5f9;
    font-size: min(4.5882352941vw, 39px);
    padding: min(3.5294117647vw, 30px) min(5.8823529412vw, 50px);
    border-radius: 0 0 min(5.8823529412vw, 50px) min(5.8823529412vw, 50px);
    line-height: 1.3;
    font-weight: bold;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .blockcontent h4 {
    margin-top: min(8.8235294118vw, 75px);
    font-size: min(4.1176470588vw, 35px);
    border: clamp(0.5px, 0.0833333333vw, 1px) solid #178b32;
    padding: min(2.3529411765vw, 20px) min(3.5294117647vw, 30px);
    border-radius: min(1.7647058824vw, 15px);
    text-align: center;
    background: #eeffe8;
    font-weight: bold;
    margin-left: auto;
    margin-right: auto;
  }
  .blockcontent p {
    margin-top: min(5.8823529412vw, 50px);
    font-size: min(3.7647058824vw, 32px);
    line-height: 1.7;
    padding-left: min(5.8823529412vw, 50px);
  }
  .blockcontent p + p {
    margin-top: 1em;
  }
  .blockcontent .wp-block-table {
    display: none;
  }
  .blockcontent .wp-block-table.sptable {
    display: block;
  }
  .blockcontent table {
    width: 100%;
    margin-top: min(5.8823529412vw, 50px);
    font-size: min(4.4705882353vw, 38px);
    font-weight: bold;
    border-top: min(0.2352941176vw, 2px) solid;
    border-left: min(0.2352941176vw, 2px) solid;
  }
  .blockcontent table tr {
    border-bottom: min(0.2352941176vw, 2px) solid;
  }
  .blockcontent table td {
    vertical-align: middle;
    text-align: left;
    border-right: min(0.2352941176vw, 2px) solid;
    padding: min(3.5294117647vw, 30px) min(2.3529411765vw, 20px);
    line-height: 1.5;
  }
  .blockcontent table tr:nth-child(1) td {
    font-weight: bold;
    text-align: center;
    background: #eeffe8;
  }
  .blockcontent table tr:nth-of-type(n+2) td:first-child {
    width: min(41.1764705882vw, 350px);
  }
  .blockcontent ul.wp-block-list {
    margin-top: min(5.8823529412vw, 50px);
  }
  .blockcontent ul.wp-block-list li {
    color: #e60012;
    font-size: min(3.7647058824vw, 32px);
    font-weight: bold;
    position: relative;
    line-height: 1.3;
    margin-left: 1em;
  }
  .blockcontent ul.wp-block-list li + li {
    margin-top: 0.3em;
  }
  .blockcontent ul.wp-block-list li:before {
    content: "";
    width: 0.8em;
    height: 0.8em;
    border-radius: 0.4em;
    display: block;
    background: #e60012;
    position: absolute;
    left: -1em;
    top: 0.3em;
  }
  .blockcontent ol.wp-block-list {
    margin-top: min(5.8823529412vw, 50px);
    counter-reset: ol-counter;
  }
  .blockcontent ol.wp-block-list li {
    color: #e60012;
    font-size: min(3.7647058824vw, 32px);
    font-weight: bold;
    position: relative;
    line-height: 1.3;
    margin-left: 1.5em;
  }
  .blockcontent ol.wp-block-list li + li {
    margin-top: 0.3em;
  }
  .blockcontent ol.wp-block-list li:before {
    counter-increment: ol-counter;
    content: counter(ol-counter) ".";
    position: absolute;
    left: -1.5em;
    top: 0;
    font-weight: bold;
    color: #e60012;
  }
  .blockcontent .backtolistbtn {
    width: min(58.8235294118vw, 500px);
    height: min(11.7647058824vw, 100px);
    border-radius: min(2.3529411765vw, 20px);
    font-size: min(3.7647058824vw, 32px);
    margin: min(5.8823529412vw, 50px) auto 0;
    font-weight: bold;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #0b5793;
  }
  .column .inner {
    padding-left: min(2.3529411765vw, 20px);
    padding-right: min(2.3529411765vw, 20px);
  }
  .column .inner .list .item.item {
    margin-top: min(3.5294117647vw, 30px);
  }
  .column .inner .list .item .link {
    border-radius: min(2.3529411765vw, 20px);
    border: min(0.3529411765vw, 3px) solid #0b5793;
    background: #d3e5f9;
    padding: min(2.3529411765vw, 20px);
    display: flex;
    flex-wrap: wrap;
  }
  .column .inner .list .item .link .img {
    border-radius: min(2.3529411765vw, 20px);
    overflow: hidden;
    width: min(37.6470588235vw, 320px);
    margin-right: min(2.3529411765vw, 20px);
    align-self: baseline;
  }
  .column .inner .list .item .link .img img {
    height: auto !important;
  }
  .column .inner .list .item .link .desc {
    flex: 1;
    line-height: 1.3;
    font-size: min(3.7647058824vw, 32px);
  }
  .column .inner .readmorebtn {
    margin: min(11.7647058824vw, 100px) auto 0;
    width: min(42.3529411765vw, 360px);
    height: min(10.5882352941vw, 90px);
    border-radius: min(5.2941176471vw, 45px);
    font-size: min(3.7647058824vw, 32px);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #178b32;
    color: #fff;
    font-weight: bold;
  }
  .column .inner .readmorebtn:hover {
    opacity: 0.8;
  }
  .column .column_loadmore {
    margin-top: min(5.8823529412vw, 50px);
  }
  .column .column_loadmore .js_column_loadmore {
    width: min(42.3529411765vw, 360px);
    height: min(10.5882352941vw, 90px);
    border-radius: min(5.2941176471vw, 45px);
    font-size: min(3.7647058824vw, 32px);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #168630;
    display: block;
    margin: 0 auto;
    color: #fff;
    text-align: center;
  }
  .relations {
    background: #eeffe8;
    top: min(0.4705882353vw, 4px) solid #168630;
    border-bottom: min(0.4705882353vw, 4px) solid #168630;
    padding: 0 min(5.8823529412vw, 50px) min(11.7647058824vw, 100px);
    margin-top: min(11.7647058824vw, 100px);
  }
  .relations .relations_ttl {
    color: #fff;
    clip-path: polygon(0% 0, 100% 0, 95% 100%, 5% 100%);
    height: min(15.2941176471vw, 130px);
    background: #168630;
    font-size: min(4.7058823529vw, 40px);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0 auto;
  }
  .relations .list {
    width: 100%;
    padding-left: min(8.2352941176vw, 70px);
    padding-right: min(8.2352941176vw, 70px);
  }
  .relations .list .item {
    margin-top: min(10.5882352941vw, 90px);
    border-radius: min(3.5294117647vw, 30px);
    overflow: hidden;
    background: #fff;
  }
  .relations .list .item .link:hover {
    transition: 0.2s ease-out;
    opacity: 0.8;
  }
  .relations .list .item .img img {
    width: 100%;
    display: block;
    aspect-ratio: 3/2;
    height: auto !important;
  }
  .relations .list .item .desc {
    padding: min(5.8823529412vw, 50px) min(4.7058823529vw, 40px);
    font-size: min(3.7647058824vw, 32px);
    line-height: 1.7;
  }
}

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