@charset "UTF-8";
/*
@include css3(transform, translate(-50%, -50%));
@include css3(transition, 0.3s ease-in-out);  
transform: rotate(0.03deg);
*/
/* Sass Document */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
  margin: 0;
  padding: 0; }

audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden] {
  display: none; }

html {
  font-size: 100%;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */ }

html,
button,
input,
select,
textarea {
  font-family: sans-serif; }

body {
  margin: 0;
  padding: 0; }

a:focus {
  outline: thin dotted; }

a:active,
a:hover {
  outline: 0; }

a {
  color: #333; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  margin: 0em;
  line-height: 150%;
  padding: 0px; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

blockquote {
  margin: 1em 40px; }

dfn {
  font-style: italic; }

mark {
  background: #ff0;
  color: #000; }

p,
pre {
  margin: 0;
  padding: 0; }

code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: 'courier new', monospace;
  font-size: 1em; }

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word; }

q {
  quotes: none; }

q:before,
q:after {
  content: '';
  content: none; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

dl,
menu,
ol,
ul {
  margin: 0em;
  padding: 0px; }

dd {
  margin: 0; }

menu,
ol,
ul {
  padding: 0px;
  margin: 0; }

nav ul,
nav ol {
  list-style: none;
  list-style-image: none; }

img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */ }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 0; }

form {
  margin: 0; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */ }

button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */ }

button,
input {
  line-height: normal; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */ }

button[disabled],
input[disabled] {
  cursor: default; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */ }

input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

table {
  border-collapse: collapse;
  border-spacing: 0; }

.underline {
  text-decoration: underline; }

.clearfix {
  min-height: 1px;
  clear: both; }
  .clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden; }

* html .clearfix {
  height: 1px;
  /*\*/
     /*/ height: auto;
overflow: hidden; /**/ }

img {
  max-width: 100%;
  height: auto; }

/*----------------------------------------------------
　共通設定
----------------------------------------------------*/
#content {
  min-height: 300px;
  padding: 0 0 0 0; }
  @media screen and (max-width: 520px) {
    #content {
      min-height: 20px; } }
  #content .b {
    font-weight: bold; }

@media screen and (max-width: 520px) {
  .js-scrollable {
    width: 100%;
    margin: 0;
    overflow-x: scroll;
    justify-content: flex-start;
    white-space: nowrap;
    padding: 20px; } }

.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 40px 0; }
  .btn a {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background: url("../images/common/btn5.webp") no-repeat center;
    background-size: cover;
    font-size: 18px;
    color: #FFF;
    width: 350px;
    height: 70px;
    padding: 0 40px 5px 40px; }
    @media screen and (max-width: 520px) {
      .btn a {
        background-size: 100%;
        font-size: 14px; } }
    .btn a:after {
      position: absolute;
      content: "";
      top: 50%;
      right: 30px;
      width: 10px;
      height: 15px;
      background-color: #FFF;
      clip-path: polygon(0 0, 0% 100%, 100% 50%);
      -webkit-transform: translate(0%, -50%);
      -moz-transform: translate(0%, -50%);
      -ms-transform: translate(0%, -50%);
      -o-transform: translate(0%, -50%);
      transform: translate(0%, -50%);
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      -ms-transition: 0.3s ease-in-out;
      -o-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out; }
    .btn a:hover {
      opacity: 1; }
      .btn a:hover:after {
        right: 25px;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }

/*----------------------------------------------------
　共通パーツ
----------------------------------------------------*/
.menuBox {
  background: url("../images/common/menuBg.webp") no-repeat center top;
  background-size: cover;
  padding: 80px 0 5px; }
  @media screen and (max-width: 520px) {
    .menuBox {
      padding: 40px 0 20px; } }
  .menuBox .inner h2 {
    color: #FFF !important;
    font-size: 50px;
    text-align: center; }
    @media screen and (max-width: 520px) {
      .menuBox .inner h2 {
        font-size: 30px; } }
  .menuBox .inner .sub {
    color: #FFF;
    text-align: center;
    padding: 0 0 30px; }
    @media screen and (max-width: 520px) {
      .menuBox .inner .sub {
        text-align: left; } }
  .menuBox .inner .sizeBox {
    background-color: #FFF;
    margin: 0 0 50px; }
    @media screen and (max-width: 520px) {
      .menuBox .inner .sizeBox {
        margin: 0 0 25px; } }
    .menuBox .inner .sizeBox .size_par {
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap; }
      .menuBox .inner .sizeBox .size_par .lBox {
        font-size: 30px;
        color: #FFF;
        background-color: #E9470A;
        padding: 20px 10px 20px 80px;
        position: relative;
        width: 24%; }
        @media screen and (max-width: 1000px) {
          .menuBox .inner .sizeBox .size_par .lBox {
            width: 100%; } }
        @media screen and (max-width: 767px) {
          .menuBox .inner .sizeBox .size_par .lBox {
            padding: 10px 10px 10px 130px; } }
        @media screen and (max-width: 520px) {
          .menuBox .inner .sizeBox .size_par .lBox {
            font-size: 16px;
            padding: 15px 10px 15px 100px; } }
        .menuBox .inner .sizeBox .size_par .lBox:after {
          content: "";
          position: absolute;
          top: 0;
          right: -25px;
          width: 25px;
          height: 100%;
          background-color: #E9470A;
          clip-path: polygon(0 0, 0% 100%, 100% 50%); }
          @media screen and (max-width: 1000px) {
            .menuBox .inner .sizeBox .size_par .lBox:after {
              display: none; } }
        .menuBox .inner .sizeBox .size_par .lBox:before {
          content: "";
          position: absolute;
          top: -20px;
          left: 20px;
          width: 90px;
          height: 50px;
          background: url("../images/top/menu1.webp") no-repeat center;
          background-size: 100%;
          transform: rotate(-20deg); }
          @media screen and (max-width: 767px) {
            .menuBox .inner .sizeBox .size_par .lBox:before {
              top: 50%;
              -webkit-transform: translate(0%, -50%);
              -moz-transform: translate(0%, -50%);
              -ms-transform: translate(0%, -50%);
              -o-transform: translate(0%, -50%);
              transform: translate(0%, -50%); } }
          @media screen and (max-width: 520px) {
            .menuBox .inner .sizeBox .size_par .lBox:before {
              width: 60px;
              height: 40px; } }
      .menuBox .inner .sizeBox .size_par .rBox {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 20px 20px 20px 50px;
        width: 75%; }
        @media screen and (max-width: 1000px) {
          .menuBox .inner .sizeBox .size_par .rBox {
            width: 100%;
            padding: 20px 10px; } }
        @media screen and (max-width: 767px) {
          .menuBox .inner .sizeBox .size_par .rBox {
            flex-wrap: wrap; } }
        .menuBox .inner .sizeBox .size_par .rBox p {
          width: calc(100% - 250px);
          padding: 0 !important;
          line-height: 21px !important; }
          @media screen and (max-width: 767px) {
            .menuBox .inner .sizeBox .size_par .rBox p {
              width: 100%;
              padding: 0 0 30px; } }
          @media screen and (max-width: 520px) {
            .menuBox .inner .sizeBox .size_par .rBox p br {
              display: none; } }
        .menuBox .inner .sizeBox .size_par .rBox .sizeBtn {
          cursor: pointer;
          color: #FFF;
          background-color: #16348B;
          width: 200px;
          padding: 15px 10px 15px 20px;
          border-radius: 30px;
          position: relative;
          font-size: 14px; }
          @media screen and (max-width: 767px) {
            .menuBox .inner .sizeBox .size_par .rBox .sizeBtn {
              margin: 30px auto 0;
              width: 300px; } }
          @media screen and (max-width: 520px) {
            .menuBox .inner .sizeBox .size_par .rBox .sizeBtn {
              margin-top: 10px;
              width: 250px; } }
          .menuBox .inner .sizeBox .size_par .rBox .sizeBtn:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 15px;
            width: 12px;
            height: 8px;
            background-color: #FFF;
            clip-path: polygon(100% 0, 0 0, 50% 100%);
            -webkit-transform: translate(0%, -50%);
            -moz-transform: translate(0%, -50%);
            -ms-transform: translate(0%, -50%);
            -o-transform: translate(0%, -50%);
            transform: translate(0%, -50%); }
    .menuBox .inner .sizeBox .size_chi {
      padding: 40px 50px;
      display: none;
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      -ms-transition: 0.3s ease-in-out;
      -o-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out; }
      @media screen and (max-width: 767px) {
        .menuBox .inner .sizeBox .size_chi {
          padding: 0 10px 10px; } }
      .menuBox .inner .sizeBox .size_chi.dis {
        display: block;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }
      .menuBox .inner .sizeBox .size_chi .flexBoxs {
        display: flex;
        justify-content: center;
        flex-wrap: wrap; }
        .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox {
          width: 33.3%;
          display: flex;
          justify-content: space-between; }
          @media screen and (max-width: 767px) {
            .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox {
              width: 100%;
              border-right: 1px solid #707070; } }
          .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox.last {
            border-right: 1px solid #707070; }
            @media screen and (max-width: 767px) {
              .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox.last {
                border-bottom: 1px solid #707070; } }
          .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in {
            flex: 1;
            border-top: 1px solid #707070;
            border-left: 1px solid #707070;
            border-bottom: 1px solid #707070; }
            @media screen and (max-width: 767px) {
              .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in {
                border-bottom: none; } }
            .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .title {
              background-color: #59B5F8;
              border-bottom: 1px solid #707070;
              padding: 15px 10px;
              min-height: 100px;
              display: flex;
              justify-content: center;
              align-items: center; }
              .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .title p {
                line-height: 21px !important;
                text-align: center;
                font-weight: 300;
                padding: 0 !important; }
                .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .title p.tx1 {
                  font-size: 16px !important; }
                  @media screen and (max-width: 520px) {
                    .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .title p.tx1 {
                      font-size: 14px !important; } }
                  .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .title p.tx1 span {
                    font-size: 26px; }
                    @media screen and (max-width: 520px) {
                      .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .title p.tx1 span {
                        font-size: 20px; } }
                .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .title p.tx2 {
                  font-size: 12px !important; }
                  @media screen and (max-width: 520px) {
                    .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .title p.tx2 {
                      font-size: 11px !important; } }
            .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .img {
              background-color: #FFF;
              padding: 10px;
              font-size: 10px; }
              .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .img .imgBox {
                display: flex;
                justify-content: center;
                align-items: center;
                min-height: 130px; }
              .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .img p {
                line-height: 21px !important; }
                @media screen and (max-width: 520px) {
                  .menuBox .inner .sizeBox .size_chi .flexBoxs .inBox .in .img p {
                    font-size: 12px !important;
                    line-height: 18px !important; } }
  .menuBox .inner .tabs ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0 10px;
    border-bottom: 2px solid #FFF; }
    @media screen and (max-width: 767px) {
      .menuBox .inner .tabs ul {
        gap: 0 2%; } }
    .menuBox .inner .tabs ul li {
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      -ms-transition: 0.3s ease-in-out;
      -o-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out;
      width: 220px;
      background-color: #E0E0E0;
      border-radius: 5px 5px 0 0;
      border: 2px solid #FFFFFF;
      border-bottom: none;
      text-align: center;
      padding: 20px;
      cursor: pointer;
      color: #707070;
      font-size: 18px; }
      @media screen and (max-width: 767px) {
        .menuBox .inner .tabs ul li {
          width: 31%;
          padding: 10px; } }
      @media screen and (max-width: 600px) {
        .menuBox .inner .tabs ul li {
          font-size: 15px;
          padding: 10px 0; } }
      @media screen and (max-width: 420px) {
        .menuBox .inner .tabs ul li {
          font-size: 13px; } }
      .menuBox .inner .tabs ul li.active {
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        color: #FFF;
        background-color: #E9470A; }
  .menuBox .inner .con {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    margin: 40px 0 50px;
    display: none;
    opacity: 0;
    visibility: hidden; }
    .menuBox .inner .con.show {
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      -ms-transition: 0.3s ease-in-out;
      -o-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out;
      display: block;
      opacity: 1;
      visibility: visible; }
    .menuBox .inner .con p {
      color: #FFF; }
    .menuBox .inner .con .flexBox {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      padding: 0 0 60px; }
      @media screen and (max-width: 520px) {
        .menuBox .inner .con .flexBox {
          padding: 0 0 20px; } }
      .menuBox .inner .con .flexBox .imgBox {
        width: 30%; }
        @media screen and (max-width: 767px) {
          .menuBox .inner .con .flexBox .imgBox {
            display: none; } }
      .menuBox .inner .con .flexBox .txBox {
        width: 68%; }
        @media screen and (max-width: 767px) {
          .menuBox .inner .con .flexBox .txBox {
            width: 100%; } }
        .menuBox .inner .con .flexBox .txBox .titleBox {
          font-size: 36px;
          font-weight: 500;
          color: #FFF;
          border-left: #E9470A 5px solid;
          padding: 0 0 5px 20px;
          line-height: 140%;
          margin: 0 0 30px; }
          @media screen and (max-width: 600px) {
            .menuBox .inner .con .flexBox .txBox .titleBox {
              font-size: 24px; } }
        .menuBox .inner .con .flexBox .txBox p {
          padding: 0 0 1em; }
  .menuBox .inner .price_select_box {
    padding: 12px 25px;
    background-color: #FFF;
    border-radius: 5px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 0 30px;
    max-width: 820px; }
    @media screen and (max-width: 767px) {
      .menuBox .inner .price_select_box {
        flex-wrap: wrap;
        gap: 0; } }
    @media screen and (max-width: 767px) {
      .menuBox .inner .price_select_box .lBox {
        width: 100%; } }
    .menuBox .inner .price_select_box .lBox .price_select {
      background-color: #FF0000;
      color: #FFF;
      padding: 5px;
      border: 1px solid #A0A0A0; }
      @media screen and (max-width: 767px) {
        .menuBox .inner .price_select_box .lBox .price_select {
          width: 100%; } }
      .menuBox .inner .price_select_box .lBox .price_select option {
        background-color: #FFF;
        color: #333; }
    @media screen and (max-width: 767px) {
      .menuBox .inner .price_select_box .rBox {
        width: 100%;
        padding: 5px 0 0 0;
        font-size: 14px; } }
  .menuBox .inner .priceBox {
    padding: 0 0 30px; }
    .menuBox .inner .priceBox .price_in.price_in_wash .price .price_par .par1, .menuBox .inner .priceBox .price_in.price_in_others .price .price_par .par1 {
      height: 150px; }
      @media screen and (max-width: 950px) {
        .menuBox .inner .priceBox .price_in.price_in_wash .price .price_par .par1, .menuBox .inner .priceBox .price_in.price_in_others .price .price_par .par1 {
          height: 75px; } }
    .menuBox .inner .priceBox .price_in.price_in_wash .price .price_chi .chi_1, .menuBox .inner .priceBox .price_in.price_in_others .price .price_chi .chi_1 {
      height: 150px; }
      @media screen and (max-width: 950px) {
        .menuBox .inner .priceBox .price_in.price_in_wash .price .price_chi .chi_1, .menuBox .inner .priceBox .price_in.price_in_others .price .price_chi .chi_1 {
          height: auto; } }
    .menuBox .inner .priceBox .price_in.price_in_wash .price .price_chi .chi_1_2 img, .menuBox .inner .priceBox .price_in.price_in_others .price .price_chi .chi_1_2 img {
      height: auto !important;
      width: 120px !important;
      max-width: none; }
    .menuBox .inner .priceBox .price_in.price_in_wash .price .price_chi .chi_1_2.subimg, .menuBox .inner .priceBox .price_in.price_in_others .price .price_chi .chi_1_2.subimg {
      padding: 0; }
      .menuBox .inner .priceBox .price_in.price_in_wash .price .price_chi .chi_1_2.subimg img, .menuBox .inner .priceBox .price_in.price_in_others .price .price_chi .chi_1_2.subimg img {
        height: 65px !important;
        width: auto !important; }
    .menuBox .inner .priceBox .price_in .price {
      display: none;
      font-size: 14px;
      opacity: 0; }
      .menuBox .inner .priceBox .price_in .price.dis {
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        opacity: 1; }
      .menuBox .inner .priceBox .price_in .price span.red {
        color: #FF0000; }
      .menuBox .inner .priceBox .price_in .price .bg1 {
        background-color: #FBFF93 !important; }
      .menuBox .inner .priceBox .price_in .price .bg2 {
        background-color: #C6EDFF !important; }
      .menuBox .inner .priceBox .price_in .price .pre_icon {
        width: 100%;
        position: relative; }
        .menuBox .inner .priceBox .price_in .price .pre_icon img {
          position: relative;
          top: -2px; }
        .menuBox .inner .priceBox .price_in .price .pre_icon .preBox {
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -ms-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
          opacity: 0;
          visibility: hidden;
          border: 1px solid #D9D9D9;
          border-radius: 5px;
          background-color: #FFF;
          box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.2);
          position: absolute;
          top: 0;
          left: 150px;
          padding: 20px;
          min-width: 520px;
          z-index: 10;
          text-align: left; }
          @media screen and (max-width: 660px) {
            .menuBox .inner .priceBox .price_in .price .pre_icon .preBox {
              left: 0;
              min-width: 0;
              width: 450px; } }
          @media screen and (max-width: 520px) {
            .menuBox .inner .priceBox .price_in .price .pre_icon .preBox {
              width: 300px; } }
          .menuBox .inner .priceBox .price_in .price .pre_icon .preBox .title {
            width: 100%;
            padding: 0 0 10px; }
          .menuBox .inner .priceBox .price_in .price .pre_icon .preBox p {
            color: #000 !important;
            letter-spacing: 0;
            line-height: 26px !important; }
            .menuBox .inner .priceBox .price_in .price .pre_icon .preBox p.tx1 {
              font-size: 20px; }
              @media screen and (max-width: 520px) {
                .menuBox .inner .priceBox .price_in .price .pre_icon .preBox p.tx1 {
                  font-size: 18px; } }
            .menuBox .inner .priceBox .price_in .price .pre_icon .preBox p.tx2 {
              font-size: 16px; }
              @media screen and (max-width: 520px) {
                .menuBox .inner .priceBox .price_in .price .pre_icon .preBox p.tx2 {
                  font-size: 14px; } }
        .menuBox .inner .priceBox .price_in .price .pre_icon:hover .preBox {
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -ms-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
          opacity: 1;
          visibility: visible; }
      .menuBox .inner .priceBox .price_in .price .price_par {
        flex: 1;
        border-top: 1px solid #707070;
        border-left: 1px solid #707070; }
        @media screen and (max-width: 950px) {
          .menuBox .inner .priceBox .price_in .price .price_par {
            width: 100%;
            flex: none;
            margin: 0 0 30px; } }
        @media screen and (max-width: 520px) {
          .menuBox .inner .priceBox .price_in .price .price_par {
            margin: 0 0 15px; } }
        .menuBox .inner .priceBox .price_in .price .price_par .par1 {
          display: flex;
          justify-content: center;
          align-items: center;
          background-color: #59B5F8;
          border-bottom: 1px solid #707070;
          height: 75px; }
          .menuBox .inner .priceBox .price_in .price .price_par .par1 .par1_in {
            padding: 10px 10px 5px; }
            .menuBox .inner .priceBox .price_in .price .price_par .par1 .par1_in p {
              font-size: 16px;
              text-align: center;
              line-height: 30px !important;
              color: #333; }
              .menuBox .inner .priceBox .price_in .price .price_par .par1 .par1_in p span {
                font-size: 40px;
                display: block; }
                @media screen and (max-width: 950px) {
                  .menuBox .inner .priceBox .price_in .price .price_par .par1 .par1_in p span {
                    display: inline-block; } }
        .menuBox .inner .priceBox .price_in .price .price_par .par2 {
          display: flex;
          justify-content: center;
          align-items: center;
          flex-wrap: wrap;
          background-color: #FFF;
          text-align: center;
          padding: 20px 10px;
          border-bottom: 1px solid #707070;
          height: 70px; }
          @media screen and (max-width: 950px) {
            .menuBox .inner .priceBox .price_in .price .price_par .par2 {
              display: none; } }
          .menuBox .inner .priceBox .price_in .price .price_par .par2 .red {
            width: 100%;
            font-size: 15px;
            color: #CD0003;
            line-height: 120% !important; }
      .menuBox .inner .priceBox .price_in .price .price_chi {
        flex: 1;
        text-align: center;
        border-top: 1px solid #707070;
        border-left: 1px solid #707070; }
        .menuBox .inner .priceBox .price_in .price .price_chi.last {
          border-right: 1px solid #707070; }
        @media screen and (max-width: 950px) {
          .menuBox .inner .priceBox .price_in .price .price_chi {
            flex: none;
            width: 100%;
            margin: 0 0 20px; } }
        .menuBox .inner .priceBox .price_in .price .price_chi.spe1 {
          position: relative;
          border-left: 3px solid #FF0000;
          border-right: 3px solid #FF0000; }
          @media screen and (max-width: 950px) {
            .menuBox .inner .priceBox .price_in .price .price_chi.spe1 {
              margin: 50px 0 20px; } }
          .menuBox .inner .priceBox .price_in .price .price_chi.spe1:before {
            content: "人気No.1";
            width: 100%;
            height: 30px;
            position: absolute;
            top: -46px;
            left: -3px;
            background-color: #FF0000;
            border-radius: 5px 5px 0 0;
            border: 3px solid #FF0000;
            color: #FFF000;
            font-size: 20px;
            padding: 5px 0; }
          .menuBox .inner .priceBox .price_in .price .price_chi.spe1:after {
            position: absolute;
            content: "";
            width: 100%;
            height: 3px;
            bottom: 0;
            left: 0;
            background-color: #FF0000; }
          .menuBox .inner .priceBox .price_in .price .price_chi.spe1.type2:before {
            content: "おすすめ"; }
        .menuBox .inner .priceBox .price_in .price .price_chi.spe2 {
          position: relative;
          border-left: 3px solid #FFF000;
          border-right: 3px solid #FFF000; }
          @media screen and (max-width: 950px) {
            .menuBox .inner .priceBox .price_in .price .price_chi.spe2 {
              margin: 50px 0 20px; } }
          .menuBox .inner .priceBox .price_in .price .price_chi.spe2:before {
            content: "初めての方におすすめ";
            width: 100%;
            height: 30px;
            position: absolute;
            top: -46px;
            left: -3px;
            background-color: #FFF000;
            border-radius: 5px 5px 0 0;
            border: 3px solid #FFF000;
            color: #16348B;
            font-size: 14px;
            padding: 8px 0 2px; }
          .menuBox .inner .priceBox .price_in .price .price_chi.spe2:after {
            position: absolute;
            content: "";
            width: 100%;
            height: 3px;
            bottom: 0;
            left: 0;
            background-color: #FFF000; }
        .menuBox .inner .priceBox .price_in .price .price_chi.spe3 {
          border-left: none; }
        .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 {
          height: 75px;
          border-bottom: 1px solid #707070;
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap;
          background-color: #FFF; }
          .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1 {
            width: 100%;
            background-color: #C6EDFF;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 13px;
            letter-spacing: -0.08em; }
            @media screen and (max-width: 950px) {
              .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1 {
                width: 100%;
                order: 2;
                justify-content: flex-start;
                padding: 10px 20px; } }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1.icon {
              height: 38px; }
              @media screen and (max-width: 950px) {
                .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1.icon {
                  height: auto; } }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1.wTx {
              height: 45px;
              font-size: 11px; }
              @media screen and (max-width: 950px) {
                .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1.wTx {
                  height: auto;
                  font-size: 13px; }
                  .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1.wTx br {
                    display: none; } }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1 img {
              display: none; }
              @media screen and (max-width: 950px) {
                .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1 img {
                  display: block;
                  width: 120px;
                  height: auto;
                  max-width: none;
                  margin: 0 20px 0 0; } }
              .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1 img.fava {
                display: block;
                margin: 0 20px 0 0;
                width: 30px;
                height: 25px; }
                @media screen and (max-width: 950px) {
                  .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_1 img.fava {
                    width: 30px;
                    height: 25px; } }
          .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_2 {
            width: 100%;
            background-color: #FFF;
            display: flex;
            justify-content: center;
            align-items: center; }
            @media screen and (max-width: 950px) {
              .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_2 {
                display: none; } }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_2.icon {
              height: 36px; }
              @media screen and (max-width: 950px) {
                .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_2.icon {
                  height: auto; } }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_2 img {
              width: auto;
              height: 22px;
              max-width: none; }
              @media screen and (max-width: 950px) {
                .menuBox .inner .priceBox .price_in .price .price_chi .chi_1 .chi_1_2 img {
                  display: none; } }
        .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex {
          display: flex;
          justify-content: flex-start; }
          .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_left {
            display: none; }
            @media screen and (max-width: 950px) {
              .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_left {
                display: flex;
                justify-content: center;
                align-items: center;
                flex-wrap: wrap;
                width: 50%;
                border-right: 1px solid #707070; } }
            @media screen and (max-width: 430px) {
              .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_left {
                width: 40%; } }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_left .par2 {
              background-color: #FFF;
              text-align: center;
              padding: 20px 10px;
              border-bottom: 1px solid #707070;
              height: 70px;
              width: 100%;
              display: flex;
              justify-content: center;
              align-items: center;
              flex-wrap: wrap; }
              @media screen and (max-width: 430px) {
                .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_left .par2 {
                  font-size: 12px;
                  padding: 5px 5px; } }
              .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_left .par2 .red {
                width: 100%;
                font-size: 15px;
                color: #CD0003;
                line-height: 120% !important; }
          @media screen and (max-width: 950px) {
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_right {
              width: 50%; } }
          @media screen and (max-width: 430px) {
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_right {
              width: 60%; } }
          .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_right .chi_2 {
            background-color: #FFF;
            text-align: center;
            padding: 5px 5px;
            border-bottom: 1px solid #707070;
            height: 70px;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-wrap: wrap; }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_right .chi_2 .mini {
              font-size: 10px;
              text-align: left; }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_right .chi_2 .mini2 {
              font-size: 10px;
              text-align: center;
              width: 100%; }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_right .chi_2.del {
              text-decoration: line-through;
              color: #FF0000; }
              .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_right .chi_2.del span {
                color: #333; }
            .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_right .chi_2.red {
              color: #FF0000;
              align-items: baseline;
              padding-top: 20px; }
              .menuBox .inner .priceBox .price_in .price .price_chi .chi_flex .chi_right .chi_2.red span {
                font-size: 20px; }
  .menuBox .inner .cation .red {
    color: #FF0000;
    padding: 0 0 5px; }
  .menuBox .inner .cation p {
    color: #FFF !important;
    padding: 0 !important; }
    .menuBox .inner .cation p a {
      color: #FFF000;
      text-decoration: underline; }
  .menuBox .inner .cation a.pdf {
    color: #FFF;
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 30px 0 0 0;
    text-decoration: underline; }
    .menuBox .inner .cation a.pdf:before {
      content: "";
      background: url("../images/top/pdf.webp") no-repeat center;
      background-size: 100%;
      width: 49px;
      height: 37px; }

.page .menuBox {
  padding: 80px 0; }
  @media screen and (max-width: 520px) {
    .page .menuBox {
      padding: 40px 0; } }
  .page .menuBox .inner .price_select_box {
    margin: 0 0 60px; }
    @media screen and (max-width: 520px) {
      .page .menuBox .inner .price_select_box {
        margin: 0 0 25px; } }

.caseBox {
  padding: 90px 0;
  position: relative; }
  @media screen and (max-width: 430px) {
    .caseBox {
      padding: 40px 0 20px; } }
  .caseBox:before, .caseBox:after {
    background: url("../images/common/caseBg.webp") no-repeat center top;
    background-size: cover;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    opacity: 0.7; }
  .caseBox:after {
    background-image: none;
    background-color: #E2E6EF;
    z-index: -1; }
  .caseBox h2 {
    text-align: center;
    font-size: 60px;
    font-weight: 500;
    color: #16348B;
    padding: 0 0 50px;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .caseBox h2 {
        font-size: 40px; } }
    @media screen and (max-width: 520px) {
      .caseBox h2 {
        font-size: 30px; } }
  .caseBox .inner {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0 3%; }
    @media screen and (max-width: 767px) {
      .caseBox .inner {
        gap: 20px 2%; } }
    .caseBox .inner .in {
      width: 31%;
      border: 2px solid #1671DA; }
      @media screen and (max-width: 767px) {
        .caseBox .inner .in {
          width: 48%; } }
      @media screen and (max-width: 520px) {
        .caseBox .inner .in {
          width: 100%; } }
      .caseBox .inner .in a {
        display: block;
        padding: 20px;
        background-color: #FFF; }
      .caseBox .inner .in .imgBox {
        position: relative;
        height: 220px;
        overflow: hidden; }
        @media screen and (max-width: 1050px) {
          .caseBox .inner .in .imgBox {
            height: 180px; } }
        .caseBox .inner .in .imgBox img {
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
          -moz-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
          -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
          @media screen and (max-width: 1100px) {
            .caseBox .inner .in .imgBox img {
              max-width: none;
              height: 100%;
              width: auto; } }
          @media screen and (max-width: 1050px) {
            .caseBox .inner .in .imgBox img {
              width: 100%;
              height: auto; } }
      .caseBox .inner .in .txBox {
        padding: 20px 0; }
        .caseBox .inner .in .txBox .time {
          font-size: 12px;
          padding: 0 0 5px; }
        .caseBox .inner .in .txBox p {
          font-size: 18px;
          line-height: 24px;
          color: #1571DA; }
      .caseBox .inner .in .cateBox {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        font-size: 12px;
        border-top: 1px solid #C3C3C3;
        padding: 10px 0; }
        @media screen and (max-width: 520px) {
          .caseBox .inner .in .cateBox {
            flex-wrap: wrap; } }
        .caseBox .inner .in .cateBox .lBox {
          width: 30%; }
          @media screen and (max-width: 520px) {
            .caseBox .inner .in .cateBox .lBox {
              width: 100%;
              padding: 0 0 5px; } }
        .caseBox .inner .in .cateBox .rBox {
          width: 70%;
          display: flex;
          justify-content: flex-start;
          gap: 3px 3px; }
          @media screen and (max-width: 520px) {
            .caseBox .inner .in .cateBox .rBox {
              flex-wrap: wrap;
              width: 100%; } }
          .caseBox .inner .in .cateBox .rBox img {
            max-width: none;
            width: auto;
            height: 20px; }
            @media screen and (max-width: 1200px) {
              .caseBox .inner .in .cateBox .rBox img {
                height: 15px; } }

.reasonBox {
  background: url("../images/page/reasonMain.webp") no-repeat center, #16348B;
  background-size: cover; }
  @media screen and (max-width: 520px) {
    .reasonBox {
      background-position: right top;
      background-size: 200%; } }
  .reasonBox .main {
    padding: 50px 0 0 0; }
    @media screen and (max-width: 520px) {
      .reasonBox .main {
        padding: 0; } }
    .reasonBox .main .title {
      background: url("../images/page/reason1.webp") no-repeat center top;
      background-size: 227px 87px;
      padding: 90px 0 40px 0;
      text-align: center;
      color: #FFF;
      font-size: 50px;
      font-weight: 500; }
      @media screen and (max-width: 767px) {
        .reasonBox .main .title {
          background-size: 150px auto;
          font-size: 36px;
          padding-top: 50px; } }
      @media screen and (max-width: 520px) {
        .reasonBox .main .title {
          background-size: 130px auto;
          font-size: 26px;
          padding-bottom: 20px; } }
    .reasonBox .main .sub {
      text-align: center;
      font-size: 36px;
      font-weight: 500;
      color: #FFF;
      padding: 0 0 50px;
      line-height: 50px; }
      @media screen and (max-width: 1050px) {
        .reasonBox .main .sub {
          font-size: 24px; } }
      @media screen and (max-width: 767px) {
        .reasonBox .main .sub {
          font-size: 20px;
          text-align: left;
          line-height: 160%; }
          .reasonBox .main .sub br {
            display: none; } }
      @media screen and (max-width: 520px) {
        .reasonBox .main .sub {
          font-size: 18px; } }
  .reasonBox .flexBox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2%; }
    @media screen and (max-width: 800px) {
      .reasonBox .flexBox {
        gap: 2% 0; } }
    .reasonBox .flexBox .inBox {
      width: 48%;
      margin: 0 0 50px;
      background-color: #FFF; }
      @media screen and (max-width: 800px) {
        .reasonBox .flexBox .inBox {
          width: 100%; } }
      .reasonBox .flexBox .inBox .titleBar {
        background: url("../images/page/reason2.webp") no-repeat left bottom, #FFF000;
        background-size: 61px 60px;
        text-align: center;
        color: #16348B;
        padding: 15px;
        margin: 0 0 30px; }
        .reasonBox .flexBox .inBox .titleBar p {
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 26px; }
          @media screen and (max-width: 1050px) {
            .reasonBox .flexBox .inBox .titleBar p {
              font-size: 22px; } }
          .reasonBox .flexBox .inBox .titleBar p span {
            font-size: 40px; }
            @media screen and (max-width: 1050px) {
              .reasonBox .flexBox .inBox .titleBar p span {
                font-size: 30px; } }
      .reasonBox .flexBox .inBox .imgBox {
        text-align: center;
        padding: 0 40px; }
        @media screen and (max-width: 520px) {
          .reasonBox .flexBox .inBox .imgBox {
            padding: 0 20px; } }
      .reasonBox .flexBox .inBox .txBox {
        padding: 20px 40px 40px; }
        @media screen and (max-width: 520px) {
          .reasonBox .flexBox .inBox .txBox {
            padding: 20px; } }
        .reasonBox .flexBox .inBox .txBox .t {
          min-height: 110px;
          display: flex;
          justify-content: center;
          align-items: center;
          padding: 0 0 20px; }
          @media screen and (max-width: 800px) {
            .reasonBox .flexBox .inBox .txBox .t {
              min-height: 10px; } }
        .reasonBox .flexBox .inBox .txBox .btn {
          padding-bottom: 0; }
          .reasonBox .flexBox .inBox .txBox .btn.type1 {
            padding: 5px 0 !important; }
        .reasonBox .flexBox .inBox .txBox .btnBox {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap;
          padding: 5px 0 0 0; }
          .reasonBox .flexBox .inBox .txBox .btnBox p {
            width: 100%;
            text-align: center; }
          .reasonBox .flexBox .inBox .txBox .btnBox .btn {
            width: 30%; }
            .reasonBox .flexBox .inBox .txBox .btnBox .btn a {
              width: 100%;
              height: 50px;
              background: url("../images/common/btn_mini.webp") no-repeat center;
              background-size: 100%;
              padding: 5px;
              justify-content: center;
              font-size: 16px; }
              @media screen and (max-width: 520px) {
                .reasonBox .flexBox .inBox .txBox .btnBox .btn a {
                  font-size: 14px; } }
              .reasonBox .flexBox .inBox .txBox .btnBox .btn a:after {
                display: none; }
        .reasonBox .flexBox .inBox .txBox p.tx1 {
          font-size: 30px;
          text-align: center; }
          @media screen and (max-width: 1050px) {
            .reasonBox .flexBox .inBox .txBox p.tx1 {
              font-size: 24px; } }
          @media screen and (max-width: 520px) {
            .reasonBox .flexBox .inBox .txBox p.tx1 {
              font-size: 24px !important; } }
          .reasonBox .flexBox .inBox .txBox p.tx1 span {
            position: relative;
            color: #E9470A; }
            .reasonBox .flexBox .inBox .txBox p.tx1 span:after {
              position: absolute;
              left: 0;
              bottom: 0;
              content: "";
              width: 100%;
              height: 20px;
              background-color: rgba(255, 240, 0, 0.7);
              z-index: 1; }
              @media screen and (max-width: 1050px) {
                .reasonBox .flexBox .inBox .txBox p.tx1 span:after {
                  height: 15px; } }
            .reasonBox .flexBox .inBox .txBox p.tx1 span span {
              position: relative;
              z-index: 2; }
              .reasonBox .flexBox .inBox .txBox p.tx1 span span:after {
                display: none; }
          @media screen and (max-width: 900px) {
            .reasonBox .flexBox .inBox .txBox p.tx1 br {
              display: none; } }
          @media screen and (max-width: 520px) {
            .reasonBox .flexBox .inBox .txBox p.tx1 br {
              display: block; } }
        .reasonBox .flexBox .inBox .txBox p.tx2 {
          padding: 0;
          line-height: 30px;
          min-height: 240px; }
          @media screen and (max-width: 800px) {
            .reasonBox .flexBox .inBox .txBox p.tx2 {
              min-height: 10px; } }

.staffBox {
  background-color: #E9470A;
  padding: 100px 0; }
  @media screen and (max-width: 1240px) {
    .staffBox {
      padding: 100px 20px; } }
  .staffBox .inner.w {
    background-color: #FFF;
    padding: 0 !important; }
  .staffBox .inner .titleArea {
    position: relative;
    padding: 60px 100px; }
    @media screen and (max-width: 1150px) {
      .staffBox .inner .titleArea {
        padding: 60px 40px; } }
    @media screen and (max-width: 530px) {
      .staffBox .inner .titleArea {
        padding: 30px 20px 0; } }
    .staffBox .inner .titleArea:before {
      background: url("../images/page/staff2.webp") no-repeat right top;
      background-size: 100%;
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 244px;
      height: 267px;
      z-index: 0; }
      @media screen and (max-width: 1200px) {
        .staffBox .inner .titleArea:before {
          width: 180px; } }
      @media screen and (max-width: 1000px) {
        .staffBox .inner .titleArea:before {
          width: 120px; } }
      @media screen and (max-width: 520px) {
        .staffBox .inner .titleArea:before {
          width: 90px;
          height: 100px; } }
    .staffBox .inner .titleArea .staffTitle {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      gap: 0 30px; }
      @media screen and (max-width: 530px) {
        .staffBox .inner .titleArea .staffTitle {
          gap: 0 15px;
          flex-wrap: wrap;
          justify-content: center;
          gap: 5px 0; } }
      @media screen and (max-width: 800px) {
        .staffBox .inner .titleArea .staffTitle .imgBox {
          width: 150px; } }
      @media screen and (max-width: 520px) {
        .staffBox .inner .titleArea .staffTitle .imgBox {
          width: 100px; } }
      @media screen and (max-width: 530px) {
        .staffBox .inner .titleArea .staffTitle .rBox {
          width: 100%;
          text-align: center; } }
      .staffBox .inner .titleArea .staffTitle .rBox p {
        color: #E9470A;
        padding: 0 !important;
        letter-spacing: -0.08em !important; }
        .staffBox .inner .titleArea .staffTitle .rBox p.tx1 {
          font-size: 40px;
          line-height: 100% !important; }
          @media screen and (max-width: 1050px) {
            .staffBox .inner .titleArea .staffTitle .rBox p.tx1 {
              font-size: 24px; } }
          @media screen and (max-width: 800px) {
            .staffBox .inner .titleArea .staffTitle .rBox p.tx1 {
              font-size: 18px; } }
        .staffBox .inner .titleArea .staffTitle .rBox p.tx2 {
          font-size: 75px;
          line-height: 130% !important; }
          @media screen and (max-width: 1050px) {
            .staffBox .inner .titleArea .staffTitle .rBox p.tx2 {
              font-size: 50px; } }
          @media screen and (max-width: 800px) {
            .staffBox .inner .titleArea .staffTitle .rBox p.tx2 {
              font-size: 36px; } }
          @media screen and (max-width: 520px) {
            .staffBox .inner .titleArea .staffTitle .rBox p.tx2 {
              font-size: 24px !important; } }
    .staffBox .inner .titleArea .staffSub {
      padding: 20px 0px; }
      @media screen and (max-width: 520px) {
        .staffBox .inner .titleArea .staffSub {
          padding: 10px 0; } }
    .staffBox .inner .titleArea .staffLink {
      display: flex;
      justify-content: center;
      gap: 0 20px; }
      @media screen and (max-width: 530px) {
        .staffBox .inner .titleArea .staffLink {
          gap: 0 5px;
          padding: 0 0 30px; } }
      .staffBox .inner .titleArea .staffLink a {
        display: block;
        border: 1px solid #1571DA;
        background-color: #FFF;
        border-radius: 5px;
        padding: 10px;
        text-align: center;
        color: #1571DA;
        font-size: 14px;
        position: relative;
        width: 180px; }
        @media screen and (max-width: 530px) {
          .staffBox .inner .titleArea .staffLink a {
            font-size: 11px;
            width: 30%;
            padding: 10px 0 10px 10px;
            text-align: left; } }
        .staffBox .inner .titleArea .staffLink a:after {
          content: "";
          width: 10px;
          height: 8px;
          background-color: #1571DA;
          position: absolute;
          top: 50%;
          right: 20px;
          -webkit-transform: translate(0%, -50%);
          -moz-transform: translate(0%, -50%);
          -ms-transform: translate(0%, -50%);
          -o-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
          clip-path: polygon(100% 0, 0 0, 50% 100%); }
          @media screen and (max-width: 530px) {
            .staffBox .inner .titleArea .staffLink a:after {
              right: 5px; } }
  .staffBox .inner .subTitle {
    background: #16348B;
    color: #FFF;
    padding: 15px 40px;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media screen and (max-width: 520px) {
      .staffBox .inner .subTitle {
        padding: 10px 10px 10px 20px; } }
    .staffBox .inner .subTitle .lBox {
      display: flex;
      justify-content: flex-start;
      align-items: flex-end;
      flex-wrap: wrap; }
      .staffBox .inner .subTitle .lBox h2 {
        font-size: 20px; }
        @media screen and (max-width: 520px) {
          .staffBox .inner .subTitle .lBox h2 {
            font-size: 16px; } }
        .staffBox .inner .subTitle .lBox h2 span {
          font-size: 30px; }
          @media screen and (max-width: 520px) {
            .staffBox .inner .subTitle .lBox h2 span {
              font-size: 20px;
              display: block; } }
    .staffBox .inner .subTitle .rBox a {
      display: block;
      border: 1px solid #1571DA;
      background-color: #FFF;
      border-radius: 5px;
      padding: 8px 30px;
      text-align: center;
      color: #1571DA;
      font-size: 14px;
      position: relative; }
      @media screen and (max-width: 520px) {
        .staffBox .inner .subTitle .rBox a {
          padding: 8px 20px 8px 10px;
          font-size: 12px; } }
  .staffBox .inner .staffMain {
    padding: 60px 100px 20px; }
    @media screen and (max-width: 800px) {
      .staffBox .inner .staffMain {
        padding: 60px 40px 20px; } }
    @media screen and (max-width: 520px) {
      .staffBox .inner .staffMain {
        padding: 20px; } }
    .staffBox .inner .staffMain .inBox {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      padding: 0 0 50px;
      margin: 0 0 50px;
      border-bottom: 2px dotted #E9470A; }
      .staffBox .inner .staffMain .inBox .imgBox {
        width: 50%; }
        @media screen and (max-width: 900px) {
          .staffBox .inner .staffMain .inBox .imgBox {
            width: 100%;
            text-align: center; } }
      .staffBox .inner .staffMain .inBox .txBox {
        width: 50%;
        padding: 0 0 0 40px; }
        @media screen and (max-width: 900px) {
          .staffBox .inner .staffMain .inBox .txBox {
            width: 100%;
            padding: 20px 0 0 0; } }
        .staffBox .inner .staffMain .inBox .txBox p {
          letter-spacing: -0.05em !important; }
          @media screen and (max-width: 520px) {
            .staffBox .inner .staffMain .inBox .txBox p {
              padding: 0 !important; } }
          .staffBox .inner .staffMain .inBox .txBox p.tx1 {
            font-size: 16px; }
          .staffBox .inner .staffMain .inBox .txBox p.tx2 {
            color: #E9470A;
            font-size: 20px; }
            .staffBox .inner .staffMain .inBox .txBox p.tx2 span {
              font-size: 70px; }
              @media screen and (max-width: 800px) {
                .staffBox .inner .staffMain .inBox .txBox p.tx2 span {
                  font-size: 50px; } }
              @media screen and (max-width: 520px) {
                .staffBox .inner .staffMain .inBox .txBox p.tx2 span {
                  display: block;
                  line-height: 150%;
                  font-size: 36px; } }
              .staffBox .inner .staffMain .inBox .txBox p.tx2 span.type2 {
                font-size: 50px; }
                @media screen and (max-width: 520px) {
                  .staffBox .inner .staffMain .inBox .txBox p.tx2 span.type2 {
                    font-size: 36px; } }
          .staffBox .inner .staffMain .inBox .txBox p.tx3 {
            font-size: 16px; }
        .staffBox .inner .staffMain .inBox .txBox .icon {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          gap: 0 10px;
          padding: 10px 0 20px; }
          @media screen and (max-width: 520px) {
            .staffBox .inner .staffMain .inBox .txBox .icon img {
              width: 23%;
              height: auto; } }

.faqBox {
  @inculde faqBox();
  padding: 0 0 50px; }
  .faqBox dt {
    font-size: 20px;
    font-weight: 500;
    position: relative;
    padding: 23px 0 0 50px;
    margin: 10px 0 20px;
    color: #16348B; }
    @media screen and (max-width: 520px) {
      .faqBox dt {
        font-size: 18px; } }
    .faqBox dt:before {
      content: "Ｑ";
      position: absolute;
      top: 20px;
      left: 0;
      font-size: 16px;
      color: #FFF;
      z-index: 2;
      width: 35px;
      text-align: center;
      padding: 4px 0 0 0; }
    .faqBox dt:after {
      content: '';
      border-radius: 50%;
      width: 36px;
      height: 36px;
      position: absolute;
      left: 0;
      top: 20px;
      background-color: #16348B;
      z-index: 1; }
  .faqBox dd {
    font-size: 16px;
    font-weight: 500;
    position: relative;
    padding: 0px 0 30px 50px;
    margin: 0 0 10px; }
    @media screen and (max-width: 520px) {
      .faqBox dd {
        font-size: 14px; } }
    .faqBox dd:before {
      content: "A";
      position: absolute;
      top: 0px;
      left: 0;
      font-size: 16px;
      color: #FFF;
      z-index: 2;
      width: 36px;
      text-align: center;
      padding: 4px 0 0 0; }
    .faqBox dd:after {
      content: '';
      border-radius: 50%;
      width: 36px;
      height: 36px;
      position: absolute;
      left: 0;
      top: 0px;
      background-color: #E9470A;
      z-index: 1; }
    .faqBox dd a {
      text-decoration: underline;
      color: #16348B; }

.newsBox {
  background-color: #16348B;
  padding: 65px 0 25px; }
  @media screen and (max-width: 520px) {
    .newsBox {
      padding: 40px 0 25px; } }
  .newsBox .inner {
    max-width: 1000px; }
    .newsBox .inner h2 {
      font-size: 60px;
      font-weight: 500;
      text-align: center;
      color: #FFF;
      padding: 0 0 50px; }
      @media screen and (max-width: 520px) {
        .newsBox .inner h2 {
          font-size: 30px;
          padding: 0 0 25px; } }
    .newsBox .inner .inBox {
      padding: 15px 90px 40px;
      border-radius: 10px;
      background-color: #FFF; }
      @media screen and (max-width: 800px) {
        .newsBox .inner .inBox {
          padding: 15px 20px 40px; } }
      .newsBox .inner .inBox .in {
        padding: 25px 0;
        border-bottom: 1px solid #707070; }
        .newsBox .inner .inBox .in a {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          gap: 0 20px; }
          @media screen and (max-width: 800px) {
            .newsBox .inner .inBox .in a {
              flex-wrap: wrap; } }
          .newsBox .inner .inBox .in a .time {
            font-size: 12px; }
            @media screen and (max-width: 767px) {
              .newsBox .inner .inBox .in a .time {
                width: 100%;
                padding: 0 0 5px; } }
          .newsBox .inner .inBox .in a .cateBox {
            display: flex;
            justify-content: flex-start;
            flex-wrap: wrap;
            gap: 5px 5px; }
            @media screen and (max-width: 520px) {
              .newsBox .inner .inBox .in a .cateBox {
                width: 100%;
                padding: 0 0 5px; } }
            .newsBox .inner .inBox .in a .cateBox span {
              background-color: #37B446;
              color: #FFF;
              font-size: 12px;
              padding: 2px 15px;
              border-radius: 30px;
              text-align: center;
              min-width: 80px; }
              .newsBox .inner .inBox .in a .cateBox span.shop_icon {
                min-width: 94px; }
          .newsBox .inner .inBox .in a .tx {
            font-size: 16px; }

.footer_bnr {
  padding: 50px 0; }
  .footer_bnr .inner {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    height: 450px; }
    @media screen and (max-width: 900px) {
      .footer_bnr .inner {
        height: auto;
        padding: 0 15%; } }
    @media screen and (max-width: 680px) {
      .footer_bnr .inner {
        padding: 0 5%; } }
    @media screen and (max-width: 520px) {
      .footer_bnr .inner {
        padding: 0 20px; } }
    .footer_bnr .inner .lBox {
      width: 466px;
      height: 100%; }
      @media screen and (max-width: 900px) {
        .footer_bnr .inner .lBox {
          width: 100%;
          text-align: center; }
          .footer_bnr .inner .lBox img {
            max-width: none;
            width: 100%;
            height: auto; } }
    .footer_bnr .inner .rBox {
      width: calc(100% - 466px);
      height: 100%;
      padding: 30px 60px 60px 60px;
      background-color: #16348B; }
      @media screen and (max-width: 1240px) {
        .footer_bnr .inner .rBox {
          padding: 30px 20px 60px; } }
      @media screen and (max-width: 1000px) {
        .footer_bnr .inner .rBox {
          padding: 20px; } }
      @media screen and (max-width: 900px) {
        .footer_bnr .inner .rBox {
          width: 100%;
          padding: 40px; } }
      @media screen and (max-width: 520px) {
        .footer_bnr .inner .rBox {
          padding: 30px 20px; } }
      .footer_bnr .inner .rBox .title {
        padding: 0 0 20px; }
      .footer_bnr .inner .rBox p {
        font-size: 16px;
        color: #FFF;
        line-height: 30px;
        padding: 0 0 30px; }
        @media screen and (max-width: 1050px) {
          .footer_bnr .inner .rBox p {
            line-height: 30px !important; } }
        @media screen and (max-width: 520px) {
          .footer_bnr .inner .rBox p {
            font-size: 14px;
            line-height: 26px; } }
      .footer_bnr .inner .rBox .contactBtn .button a {
        position: relative;
        display: block;
        background: url("../images/common/btn4.webp") no-repeat center;
        background-size: cover;
        font-size: 26px;
        color: #FFFAC6;
        width: 616px;
        height: 76px;
        padding: 13px 40px 0 40px;
        text-align: center; }
        @media screen and (max-width: 1180px) {
          .footer_bnr .inner .rBox .contactBtn .button a {
            width: 100%;
            background-size: 100% 100%;
            font-size: 20px;
            padding: 18px 40px 0 40px; } }
        @media screen and (max-width: 1000px) {
          .footer_bnr .inner .rBox .contactBtn .button a {
            font-size: 16px;
            padding: 22px 40px 0 0px; } }
        @media screen and (max-width: 460px) {
          .footer_bnr .inner .rBox .contactBtn .button a {
            padding: 10px 40px 0 20px; } }
        .footer_bnr .inner .rBox .contactBtn .button a br {
          display: none; }
          @media screen and (max-width: 460px) {
            .footer_bnr .inner .rBox .contactBtn .button a br {
              display: block; } }
        .footer_bnr .inner .rBox .contactBtn .button a:after {
          position: absolute;
          content: "";
          top: 45%;
          right: 40px;
          width: 12px;
          height: 12px;
          border-top: solid 3px #FFFAC6;
          border-right: solid 3px #FFFAC6;
          -webkit-transform: translate(0%, -50%) rotate(45deg);
          -moz-transform: translate(0%, -50%) rotate(45deg);
          -ms-transform: translate(0%, -50%) rotate(45deg);
          -o-transform: translate(0%, -50%) rotate(45deg);
          transform: translate(0%, -50%) rotate(45deg); }
          @media screen and (max-width: 1000px) {
            .footer_bnr .inner .rBox .contactBtn .button a:after {
              right: 20px; } }
          @media screen and (max-width: 900px) {
            .footer_bnr .inner .rBox .contactBtn .button a:after {
              right: 40px; } }
          @media screen and (max-width: 520px) {
            .footer_bnr .inner .rBox .contactBtn .button a:after {
              right: 20px; } }
      .footer_bnr .inner .rBox .telBox {
        display: flex;
        justify-content: center;
        align-items: flex-end;
        flex-wrap: wrap;
        gap: 0 20px;
        color: #FFF;
        padding: 30px 0 0 0; }
        .footer_bnr .inner .rBox .telBox a {
          color: #FFF;
          text-decoration: none; }
        .footer_bnr .inner .rBox .telBox .tel {
          font-size: 18px;
          display: flex;
          justify-content: flex-start;
          align-items: flex-end;
          gap: 0 20px; }
          @media screen and (max-width: 1050px) {
            .footer_bnr .inner .rBox .telBox .tel {
              width: 100%;
              justify-content: center; } }
          @media screen and (max-width: 520px) {
            .footer_bnr .inner .rBox .telBox .tel {
              font-size: 15px; } }
          .footer_bnr .inner .rBox .telBox .tel span {
            font-size: 25px;
            padding: 0 0 0 20px;
            background: url("../images/common/phone.webp") no-repeat left center;
            background-size: 16px;
            line-height: 100%; }
            @media screen and (max-width: 520px) {
              .footer_bnr .inner .rBox .telBox .tel span {
                font-size: 20px; } }
        .footer_bnr .inner .rBox .telBox .time {
          font-size: 12px; }
          @media screen and (max-width: 1050px) {
            .footer_bnr .inner .rBox .telBox .time {
              width: 100%;
              text-align: center; } }
      .footer_bnr .inner .rBox .contactBtn2 {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 0 15px; }
        @media screen and (max-width: 950px) {
          .footer_bnr .inner .rBox .contactBtn2 {
            transform: scale(0.9); } }
        @media screen and (max-width: 900px) {
          .footer_bnr .inner .rBox .contactBtn2 {
            transform: scale(1); } }
        @media screen and (max-width: 520px) {
          .footer_bnr .inner .rBox .contactBtn2 {
            gap: 0 15px; } }
        @media screen and (max-width: 380px) {
          .footer_bnr .inner .rBox .contactBtn2 {
            transform: scale(0.8); } }
        .footer_bnr .inner .rBox .contactBtn2 .button a {
          position: relative;
          background: url("../images/common/btn2.webp") no-repeat center;
          background-size: cover;
          font-size: 18px;
          color: #FFF;
          width: 290px;
          height: 80px;
          padding: 0 10px 3px;
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 0 10px; }
          @media screen and (max-width: 1150px) {
            .footer_bnr .inner .rBox .contactBtn2 .button a {
              width: 200px;
              height: 55px;
              font-size: 16px; } }
          @media screen and (max-width: 600px) {
            .footer_bnr .inner .rBox .contactBtn2 .button a {
              width: 145px;
              height: 40px; }
              .footer_bnr .inner .rBox .contactBtn2 .button a span span {
                display: none; } }
          @media screen and (max-width: 767px) {
            .footer_bnr .inner .rBox .contactBtn2 .button a {
              font-size: 12px; } }
          @media screen and (max-width: 520px) {
            .footer_bnr .inner .rBox .contactBtn2 .button a {
              background-size: 100% 100%; } }
          .footer_bnr .inner .rBox .contactBtn2 .button a:before {
            content: "";
            background: url("../images/common/mail.svg") no-repeat center;
            background-size: cover;
            width: 18px;
            height: 14px; }
        .footer_bnr .inner .rBox .contactBtn2 .button:last-child a {
          background: url("../images/common/btn3.webp") no-repeat center;
          background-size: cover; }
          @media screen and (max-width: 600px) {
            .footer_bnr .inner .rBox .contactBtn2 .button:last-child a {
              width: 145px;
              height: 40px; } }
          @media screen and (max-width: 520px) {
            .footer_bnr .inner .rBox .contactBtn2 .button:last-child a {
              background-size: 100% 100%; } }
          .footer_bnr .inner .rBox .contactBtn2 .button:last-child a:before {
            content: "";
            background: url("../images/common/calendar.svg") no-repeat center;
            background-size: cover;
            width: 18px;
            height: 18px; }

.footer_shop {
  background-color: #020B4C;
  padding: 40px 0; }
  @media screen and (max-width: 700px) {
    .footer_shop .inner .js-scrollable {
      width: 100%;
      margin: 0;
      overflow-x: scroll;
      justify-content: flex-start;
      white-space: nowrap; } }
  .footer_shop .inner .flex {
    display: flex;
    justify-content: center;
    gap: 0 75px; }
    @media screen and (max-width: 950px) {
      .footer_shop .inner .flex {
        gap: 0 20px; } }
    @media screen and (max-width: 700px) {
      .footer_shop .inner .flex {
        width: 810px;
        justify-content: flex-start; } }
  .footer_shop .inner .inBox {
    width: 250px; }
    .footer_shop .inner .inBox .imgBox {
      height: 150px;
      width: 100%;
      position: relative;
      overflow: hidden; }
      .footer_shop .inner .inBox .imgBox img {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }
    .footer_shop .inner .inBox .txBox {
      padding: 15px 0;
      color: #FFF; }
      .footer_shop .inner .inBox .txBox p {
        font-size: 14px; }
        .footer_shop .inner .inBox .txBox p.tx {
          font-size: 20px;
          padding: 0 0 15px; }
    .footer_shop .inner .inBox .button a {
      display: block;
      border: 1px solid #1571DA;
      background-color: #FFF;
      border-radius: 5px;
      padding: 10px;
      text-align: center;
      color: #1571DA;
      font-size: 14px;
      position: relative; }
      .footer_shop .inner .inBox .button a:after {
        content: "";
        width: 10px;
        height: 10px;
        background-color: #1571DA;
        position: absolute;
        top: 50%;
        right: 20px;
        -webkit-transform: translate(0%, -50%);
        -moz-transform: translate(0%, -50%);
        -ms-transform: translate(0%, -50%);
        -o-transform: translate(0%, -50%);
        transform: translate(0%, -50%);
        clip-path: polygon(0 0, 0% 100%, 100% 50%); }

footer {
  background-color: #16348B;
  padding: 35px 0 10px; }
  footer .inner {
    color: #FFF; }
    footer .inner .flex {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      footer .inner .flex.bottom {
        padding: 40px 0 20px 0; }
        @media screen and (max-width: 1000px) {
          footer .inner .flex.bottom .rBox {
            display: block;
            width: 100%;
            justify-content: center; } }
        @media screen and (max-width: 1000px) {
          footer .inner .flex.bottom .rBox ul {
            order: 1;
            width: 100%;
            justify-content: center; } }
        footer .inner .flex.bottom .rBox ul li {
          width: auto;
          padding: 0;
          							/*
          							&:nth-child(1){
          								order: 1;
          								a{
          									border-right: 1px solid #FFF;
          									padding: 0 10px 0 0;
          									margin: 0 10px 0 0;
          								}
          							}
                                      &:nth-child(2){ order: 2; }
          							*/ }
          footer .inner .flex.bottom .rBox ul li a {
            font-size: 12px; }
      footer .inner .flex .logo {
        width: 270px; }
        @media screen and (max-width: 1000px) {
          footer .inner .flex .logo {
            margin: 0 auto; } }
        footer .inner .flex .logo a {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          gap: 0 10px; }
      footer .inner .flex .copy {
        text-align: center;
        font-size: 12px;
        letter-spacing: 0.06em; }
        @media screen and (max-width: 1000px) {
          footer .inner .flex .copy {
            order: 2;
            width: 100%;
            padding: 30px 0 50px; } }
      footer .inner .flex .rBox {
        width: 70%; }
        @media screen and (max-width: 1000px) {
          footer .inner .flex .rBox {
            display: none; } }
        footer .inner .flex .rBox ul {
          display: flex;
          justify-content: flex-start;
          flex-wrap: wrap; }
          footer .inner .flex .rBox ul li {
            width: 19%;
            padding: 0 0 3px; }
            footer .inner .flex .rBox ul li a {
              color: #FFF;
              font-size: 14px; }
            footer .inner .flex .rBox ul li:nth-child(1) {
              order: 1; }
            footer .inner .flex .rBox ul li:nth-child(2) {
              order: 6; }
            footer .inner .flex .rBox ul li:nth-child(3) {
              order: 2; }
            footer .inner .flex .rBox ul li:nth-child(4) {
              order: 7; }
            footer .inner .flex .rBox ul li:nth-child(5) {
              order: 8; }
            footer .inner .flex .rBox ul li:nth-child(6) {
              order: 3; }
            footer .inner .flex .rBox ul li:nth-child(7) {
              order: 4; }
            footer .inner .flex .rBox ul li:nth-child(8) {
              order: 9; }
            footer .inner .flex .rBox ul li:nth-child(9) {
              order: 5;
              width: 22%; }
            footer .inner .flex .rBox ul li:nth-child(10) {
              order: 10;
              width: 22%; }

#page-top {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  cursor: pointer;
  position: fixed;
  bottom: -90px;
  right: 35px;
  z-index: 10; }
  @media screen and (max-width: 520px) {
    #page-top {
      right: 10px;
      width: 35px;
      height: 35px; } }
  #page-top img {
    filter: none; }
  #page-top.active {
    bottom: 10px; }
    @media screen and (max-width: 520px) {
      #page-top.active {
        bottom: 180px; } }
  @media screen and (max-width: 520px) {
    #page-top.bottom {
      bottom: 180px; } }

a {
  color: #3E3A39; }
  a:hover {
    opacity: 0.8; }

a {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  text-decoration: none; }
  a:hover {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out; }

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

.img {
  filter: brightness(105%); }

ul, dl, ol {
  margin: 0;
  padding: 0; }
  ul li, dl li, ol li {
    list-style: none; }

ol li {
  list-style: decimal;
  line-height: 160%; }

dl dt {
  padding: 5px; }
dl dd {
  padding: 0 30px 60px 0; }
  @media screen and (max-width: 520px) {
    dl dd {
      padding: 0 0 30px; } }
  dl dd ul {
    padding: 10px 20px 20px 40px; }
    dl dd ul li {
      padding: 5px 0 5px 0px;
      list-style-type: disc; }
  dl dd p {
    padding: 0 !important; }

@media screen and (max-width: 520px) {
  .sp_table {
    table-layout: auto; }
    .sp_table th {
      display: table-cell; }
    .sp_table td {
      display: table-cell; }

  .scroll {
    overflow: auto;
    white-space: nowrap; }

  .scroll::-webkit-scrollbar {
    height: 5px; }

  .scroll::-webkit-scrollbar-track {
    background: #F1F1F1; }

  .scroll::-webkit-scrollbar-thumb {
    background: #BCBCBC; } }
.left, .alignleft {
  float: left; }

.right, .alignright {
  float: right; }

.alignleft, .img_left {
  float: left;
  padding: 5px 40px 10px 0; }
  @media screen and (max-width: 520px) {
    .alignleft, .img_left {
      width: 40%;
      padding: 5px 20px 10px 0; } }

.alignright,
.img_right {
  float: right;
  padding: 5px 0 10px 40px; }
  @media screen and (max-width: 520px) {
    .alignright,
    .img_right {
      width: 40%;
      padding: 5px 0 10px 20px; } }

.center,
.aligncenter {
  display: block;
  margin: 0 auto;
  text-align: center; }

.tx_left {
  text-align: left; }

.tx_right {
  text-align: right; }

.pdr {
  padding: 0; }

.mbr {
  margin: 0; }

/*----------------------------------------------------
　Slider
----------------------------------------------------*/
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }
.slick-slider .slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-slider .slick-track:before, .slick-slider .slick-track:after {
    display: table;
    content: ''; }
  .slick-slider .slick-track:after {
    clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }
.slick-loading .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-initialized .slick-slide {
  display: block; }

.slick-arrow.slick-hidden {
  display: none; }

.slick-arrow {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background: url("../images/common/arrow.webp") no-repeat center !important;
  background-size: 100% !important;
  border: none;
  width: 40px;
  height: 70px;
  display: block;
  z-index: 10;
  text-indent: -9999px;
  top: 39%; }
  .no-webp .slick-arrow {
    background: url("../images/common/arrow.png") no-repeat center !important; }
  @media screen and (max-width: 520px) {
    .slick-arrow {
      width: 5px;
      background-size: 100% !important; } }
  .slick-arrow.slick-next {
    -webkit-transform: translate(0%, -50%) rotate(180deg);
    -moz-transform: translate(0%, -50%) rotate(180deg);
    -ms-transform: translate(0%, -50%) rotate(180deg);
    -o-transform: translate(0%, -50%) rotate(180deg);
    transform: translate(0%, -50%) rotate(180deg);
    left: auto;
    right: 20px; }
    @media screen and (max-width: 450px) {
      .slick-arrow.slick-next {
        -webkit-transform: translate(0%, -50%) rotate(180deg);
        -moz-transform: translate(0%, -50%) rotate(180deg);
        -ms-transform: translate(0%, -50%) rotate(180deg);
        -o-transform: translate(0%, -50%) rotate(180deg);
        transform: translate(0%, -50%) rotate(180deg);
        right: 5px; } }
    .slick-arrow.slick-next:before {
      content: ""; }
    .slick-arrow.slick-next:hover {
      opacity: 1;
      display: block; }
  .slick-arrow.slick-prev {
    left: 20px;
    -webkit-transform: translate(0%, -50%) rotate(360deg);
    -moz-transform: translate(0%, -50%) rotate(360deg);
    -ms-transform: translate(0%, -50%) rotate(360deg);
    -o-transform: translate(0%, -50%) rotate(360deg);
    transform: translate(0%, -50%) rotate(360deg); }
    @media screen and (max-width: 450px) {
      .slick-arrow.slick-prev {
        -webkit-transform: translate(0%, -50%) rotate(360deg);
        -moz-transform: translate(0%, -50%) rotate(360deg);
        -ms-transform: translate(0%, -50%) rotate(360deg);
        -o-transform: translate(0%, -50%) rotate(360deg);
        transform: translate(0%, -50%) rotate(360deg);
        left: 5px; } }
    .slick-arrow.slick-prev:before {
      content: ""; }

.slide-dots {
  display: flex;
  justify-content: center;
  margin: 20px auto 0; }
  .slide-dots li {
    margin: 0 7px;
    width: 16px;
    height: 16px;
    background-color: #FFF;
    border-radius: 10px;
    overflow: hidden; }
    .slide-dots li button {
      background-color: #FFF;
      width: 100%;
      height: 100%;
      text-indent: -9999px;
      border: none; }
    .slide-dots li.slick-active {
      background-color: #61d7a6; }
      .slide-dots li.slick-active button {
        background-color: #61d7a6; }

/*------------　ページング　------------*/
.pagination {
  padding: 50px 0;
  line-height: 16px;
  width: 97%;
  margin: 0 auto;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center; }
  .pagination span, .pagination a {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 2px 5px;
    width: 50px;
    height: 50px;
    text-decoration: none !important;
    font-weight: 700;
    font-size: 16px;
    border: 1px solid #CCCCCC;
    color: #16348B;
    border-radius: 4px; }
    @media screen and (max-width: 600px) {
      .pagination span, .pagination a {
        width: 25px;
        height: 25px;
        font-size: 10px;
        margin: 2px 0; } }
  .pagination .first,
  .pagination .current {
    color: #FFF !important;
    background-color: #16348B;
    border-color: #16348B; }
  .pagination .noline {
    color: #16348B;
    margin: 2px 40px 2px 0;
    font-weight: 700; }
    .pagination .noline:last-child {
      margin: 2px 0 2px 40px; }

/*------------　lightbox　------------*/
.lightbox-panel {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  box-shadow: 5px 5px 0 #7b7b7b;
  position: fixed;
  display: none;
  z-index: 1001;
  background: #FFF;
  border: 2px solid #CCCCCC;
  width: 800px;
  padding: 20px;
  text-align: left;
  cursor: pointer; }
  @media screen and (max-width: 520px) {
    .lightbox-panel {
      -webkit-transform: translate(-50%, -50%);
      -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      -o-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      width: 96%;
      padding: 10px; } }
  .lightbox-panel .left, .lightbox-panel .right {
    margin: 0 0 20px; }

.close-panel {
  position: absolute;
  top: -30px;
  right: -30px; }
  @media screen and (max-width: 520px) {
    .close-panel {
      width: 60px;
      right: 5px; } }

#BlackWindow {
  display: none;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background: #000000;
  opacity: 0.7;
  filter: alpha(opacity=70); }

.light_bg {
  display: none;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: #000000;
  opacity: 0.5;
  filter: alpha(opacity=50); }

/*　スペース　*/
.mt100 {
  margin-top: 100px; }

.mb100 {
  margin-bottom: 100px; }

.mr100 {
  margin-right: 100px; }

.ml100 {
  margin-left: 100px; }

.pt100 {
  padding-top: 100px; }

.pb100 {
  padding-bottom: 100px; }

.pr100 {
  padding-right: 100px; }

.pl100 {
  padding-left: 100px; }

.mt95 {
  margin-top: 95px; }

.mb95 {
  margin-bottom: 95px; }

.mr95 {
  margin-right: 95px; }

.ml95 {
  margin-left: 95px; }

.pt95 {
  padding-top: 95px; }

.pb95 {
  padding-bottom: 95px; }

.pr95 {
  padding-right: 95px; }

.pl95 {
  padding-left: 95px; }

.mt90 {
  margin-top: 90px; }

.mb90 {
  margin-bottom: 90px; }

.mr90 {
  margin-right: 90px; }

.ml90 {
  margin-left: 90px; }

.pt90 {
  padding-top: 90px; }

.pb90 {
  padding-bottom: 90px; }

.pr90 {
  padding-right: 90px; }

.pl90 {
  padding-left: 90px; }

.mt85 {
  margin-top: 85px; }

.mb85 {
  margin-bottom: 85px; }

.mr85 {
  margin-right: 85px; }

.ml85 {
  margin-left: 85px; }

.pt85 {
  padding-top: 85px; }

.pb85 {
  padding-bottom: 85px; }

.pr85 {
  padding-right: 85px; }

.pl85 {
  padding-left: 85px; }

.mt80 {
  margin-top: 80px; }

.mb80 {
  margin-bottom: 80px; }

.mr80 {
  margin-right: 80px; }

.ml80 {
  margin-left: 80px; }

.pt80 {
  padding-top: 80px; }

.pb80 {
  padding-bottom: 80px; }

.pr80 {
  padding-right: 80px; }

.pl80 {
  padding-left: 80px; }

.mt75 {
  margin-top: 75px; }

.mb75 {
  margin-bottom: 75px; }

.mr75 {
  margin-right: 75px; }

.ml75 {
  margin-left: 75px; }

.pt75 {
  padding-top: 75px; }

.pb75 {
  padding-bottom: 75px; }

.pr75 {
  padding-right: 75px; }

.pl75 {
  padding-left: 75px; }

.mt70 {
  margin-top: 70px; }

.mb70 {
  margin-bottom: 70px; }

.mr70 {
  margin-right: 70px; }

.ml70 {
  margin-left: 70px; }

.pt70 {
  padding-top: 70px; }

.pb70 {
  padding-bottom: 70px; }

.pr70 {
  padding-right: 70px; }

.pl70 {
  padding-left: 70px; }

.mt65 {
  margin-top: 65px; }

.mb65 {
  margin-bottom: 65px; }

.mr65 {
  margin-right: 65px; }

.ml65 {
  margin-left: 65px; }

.pt65 {
  padding-top: 65px; }

.pb65 {
  padding-bottom: 65px; }

.pr65 {
  padding-right: 65px; }

.pl65 {
  padding-left: 65px; }

.mt60 {
  margin-top: 60px; }

.mb60 {
  margin-bottom: 60px; }

.mr60 {
  margin-right: 60px; }

.ml60 {
  margin-left: 60px; }

.pt60 {
  padding-top: 60px; }

.pb60 {
  padding-bottom: 60px; }

.pr60 {
  padding-right: 60px; }

.pl60 {
  padding-left: 60px; }

.mt55 {
  margin-top: 55px; }

.mb55 {
  margin-bottom: 55px; }

.mr55 {
  margin-right: 55px; }

.ml55 {
  margin-left: 55px; }

.pt55 {
  padding-top: 55px; }

.pb55 {
  padding-bottom: 55px; }

.pr55 {
  padding-right: 55px; }

.pl55 {
  padding-left: 55px; }

.mt50 {
  margin-top: 50px; }

.mb50 {
  margin-bottom: 50px; }

.mr50 {
  margin-right: 50px; }

.ml50 {
  margin-left: 50px; }

.pt50 {
  padding-top: 50px; }

.pb50 {
  padding-bottom: 50px; }

.pr50 {
  padding-right: 50px; }

.pl50 {
  padding-left: 50px; }

.mt45 {
  margin-top: 45px; }

.mb45 {
  margin-bottom: 45px; }

.mr45 {
  margin-right: 45px; }

.ml45 {
  margin-left: 45px; }

.pt45 {
  padding-top: 45px; }

.pb45 {
  padding-bottom: 45px; }

.pr45 {
  padding-right: 45px; }

.pl45 {
  padding-left: 45px; }

.mt40 {
  margin-top: 40px; }

.mb40 {
  margin-bottom: 40px; }

.mr40 {
  margin-right: 40px; }

.ml40 {
  margin-left: 40px; }

.pt40 {
  padding-top: 40px; }

.pb40 {
  padding-bottom: 40px; }

.pr40 {
  padding-right: 40px; }

.pl40 {
  padding-left: 40px; }

.mt35 {
  margin-top: 35px; }

.mb35 {
  margin-bottom: 35px; }

.mr35 {
  margin-right: 35px; }

.ml35 {
  margin-left: 35px; }

.pt35 {
  padding-top: 35px; }

.pb35 {
  padding-bottom: 35px; }

.pr35 {
  padding-right: 35px; }

.pl35 {
  padding-left: 35px; }

.mt30 {
  margin-top: 30px; }

.mb30 {
  margin-bottom: 30px; }

.mr30 {
  margin-right: 30px; }

.ml30 {
  margin-left: 30px; }

.pt30 {
  padding-top: 30px; }

.pb30 {
  padding-bottom: 30px; }

.pr30 {
  padding-right: 30px; }

.pl30 {
  padding-left: 30px; }

.mt25 {
  margin-top: 25px; }

.mb25 {
  margin-bottom: 25px; }

.mr25 {
  margin-right: 25px; }

.ml25 {
  margin-left: 25px; }

.pt25 {
  padding-top: 25px; }

.pb25 {
  padding-bottom: 25px; }

.pr25 {
  padding-right: 25px; }

.pl25 {
  padding-left: 25px; }

.mt20 {
  margin-top: 20px; }

.mb20 {
  margin-bottom: 20px; }

.mr20 {
  margin-right: 20px; }

.ml20 {
  margin-left: 20px; }

.pt20 {
  padding-top: 20px; }

.pb20 {
  padding-bottom: 20px; }

.pr20 {
  padding-right: 20px; }

.pl20 {
  padding-left: 20px; }

.mt15 {
  margin-top: 15px; }

.mb15 {
  margin-bottom: 15px; }

.mr15 {
  margin-right: 15px; }

.ml15 {
  margin-left: 15px; }

.pt15 {
  padding-top: 15px; }

.pb15 {
  padding-bottom: 15px; }

.pr15 {
  padding-right: 15px; }

.pl15 {
  padding-left: 15px; }

.mt10 {
  margin-top: 10px; }

.mb10 {
  margin-bottom: 10px; }

.mr10 {
  margin-right: 10px; }

.ml10 {
  margin-left: 10px; }

.pt10 {
  padding-top: 10px; }

.pb10 {
  padding-bottom: 10px; }

.pr10 {
  padding-right: 10px; }

.pl10 {
  padding-left: 10px; }

.mt5 {
  margin-top: 5px; }

.mb5 {
  margin-bottom: 5px; }

.mr5 {
  margin-right: 5px; }

.ml5 {
  margin-left: 5px; }

.pt5 {
  padding-top: 5px; }

.pb5 {
  padding-bottom: 5px; }

.pr5 {
  padding-right: 5px; }

.pl5 {
  padding-left: 5px; }

/*　幅　*/
.w100 {
  width: 100%; }
  @media screen and (max-width: 520px) {
    .w100 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w100 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w95 {
  width: 95%; }
  @media screen and (max-width: 520px) {
    .w95 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w95 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w90 {
  width: 90%; }
  @media screen and (max-width: 520px) {
    .w90 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w90 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w85 {
  width: 85%; }
  @media screen and (max-width: 520px) {
    .w85 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w85 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w80 {
  width: 80%; }
  @media screen and (max-width: 520px) {
    .w80 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w80 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w75 {
  width: 75%; }
  @media screen and (max-width: 520px) {
    .w75 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w75 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w70 {
  width: 70%; }
  @media screen and (max-width: 520px) {
    .w70 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w70 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w65 {
  width: 65%; }
  @media screen and (max-width: 520px) {
    .w65 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w65 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w60 {
  width: 60%; }
  @media screen and (max-width: 520px) {
    .w60 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w60 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w55 {
  width: 55%; }
  @media screen and (max-width: 520px) {
    .w55 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w55 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w50 {
  width: 50%; }
  @media screen and (max-width: 520px) {
    .w50 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w50 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w45 {
  width: 45%; }
  @media screen and (max-width: 520px) {
    .w45 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w45 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w40 {
  width: 40%; }
  @media screen and (max-width: 520px) {
    .w40 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w40 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w35 {
  width: 35%; }
  @media screen and (max-width: 520px) {
    .w35 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w35 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w30 {
  width: 30%; }
  @media screen and (max-width: 520px) {
    .w30 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w30 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w25 {
  width: 25%; }
  @media screen and (max-width: 520px) {
    .w25 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w25 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w20 {
  width: 20%; }
  @media screen and (max-width: 520px) {
    .w20 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w20 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w15 {
  width: 15%; }
  @media screen and (max-width: 520px) {
    .w15 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w15 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w10 {
  width: 10%; }
  @media screen and (max-width: 520px) {
    .w10 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w10 img {
        height: auto;
        width: 100%;
        max-width: none; } }

.w5 {
  width: 5%; }
  @media screen and (max-width: 520px) {
    .w5 {
      height: auto;
      width: 100%;
      max-width: none; }
      .w5 img {
        height: auto;
        width: 100%;
        max-width: none; } }

/*------------　バグ　------------*/
pre {
  padding: 30px;
  background-color: #E8E8E8;
  font-size: 14px;
  line-height: 130%; }

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