@charset "utf-8";

/* ==============================
l__mv__sub__02_sp
===============================*/
@media screen and (max-width: 343px) {
  .l__mv__sub__02 {
    width: 100%;
  }

  .l__mv__sub__02__inner {
    min-width: 320px;
    padding-top: 87px;
    padding-bottom: 95px;
    text-align: center;
    background-image: url(../images/bg_sub_mv_02_sp.png);
    background-repeat: no-repeat;
    background-size: cover;
    /* 曲線の境界線 */
    position: relative;
    border-bottom-left-radius: 80% 9%;
    border-bottom-right-radius: 80% 9%;
    margin-top: 74px;
  }

  .l__mv__sub__02__title {
    font-family: "Shippori Mincho B1", serif;
    font-size: 2.3rem;
    font-weight: 500;
    line-height: 1.41;
    letter-spacing: 0.09em;
  }
}

/* ----------------------------
l__mv__sub___02_pc__344-900
-----------------------------*/
@media screen and (min-width: 344px) and (max-width: 900px) {
  .l__mv__sub__02 {
    width: 100%;
  }

  .l__mv__sub__02__inner {
    padding-top: 87px;
    padding-bottom: 95px;
    text-align: center;
    background-image: url(../images/bg_sub_mv_02_sp.png);
    background-repeat: no-repeat;
    background-size: cover;
    /* 曲線の境界線 */
    position: relative;
    border-bottom-left-radius: 80% 9%;
    border-bottom-right-radius: 80% 9%;
    margin-top: 74px;
  }

  .l__mv__sub__02__title {
    font-family: "Shippori Mincho B1", serif;
    font-size: 2.5rem;
    font-weight: 500;
    line-height: 1.41;
    letter-spacing: 0.09em;
  }
}
/* ----------------------------
l__mv__sub___02_pc__900-1278
-----------------------------*/
@media screen and (min-width: 900px) and (max-width: 1278px) {
  .l__mv__sub__02 {
    width: 100%;
  }

  .l__mv__sub__02__inner {
    padding-top: 164px;
    padding-bottom: 161px;
    min-width: 900px;
    max-width: 1278px;
    text-align: left;
    background-image: url(../images/bg_sub_mv_02_pc.svg);
    background-repeat: no-repeat;
    background-size: cover;
    /* 曲線の境界線 */
    position: relative;
    border-bottom-left-radius: 89% 29%;
    border-bottom-right-radius: 89% 29%;
    margin-top: 74px;
  }

  .l__mv__sub__02__title {
    font-family: "Shippori Mincho B1", serif;
    font-size: 3.8rem;
    font-weight: 500;
    line-height: 1.41;
    letter-spacing: 0.09em;
    max-width: 1280px;
    margin: 0 auto;
    padding-left: 6.2%;
  }
}

/* ----------------------------
l__mv__sub__02_pc
-----------------------------*/

@media screen and (min-width: 1279px) {
  .l__mv__sub__02 {
    width: 100%;
  }

  .l__mv__sub__02__inner {
    padding-top: 164px;
    padding-bottom: 162px;
    width: 100%;
    text-align: left;
    background-image: url(../images/bg_sub_mv_02_pc.svg);
    background-repeat: no-repeat;
    background-size: cover;
    /* 曲線の境界線 */
    position: relative;
    border-bottom-left-radius: 89% 29%;
    border-bottom-right-radius: 89% 29%;
    margin-top: 120px;
  }

  .l__mv__sub__02__title {
    font-family: "Shippori Mincho B1", serif;
    font-size: 3.8rem;
    font-weight: 500;
    line-height: 1.41;
    letter-spacing: 0.09em;
    max-width: 1280px;
    margin: 0 auto;
    padding-left: 6.2%;
  }
}

/* ==============================
contact__sub_sp
===============================*/
@media screen and (max-width: 372px) {
  .l__contact__sub {
    width: 100%;
    font-family: "Zen Kaku Gothic New", sans-serif;
  }

  .l__contact__sub__inner {
    padding-top: 45px;
    padding-bottom: 27px;
    min-width: 320px;
  }

  .l__contact__sub__txt__wrap {
    padding: 0 6% 0;
    min-width: 327px;
    margin: 0 auto;
  }

  .l__contact__sub__txt {
    width: 100%;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.98;
    letter-spacing: 0.12em;
    text-align: left;
    padding-left: 0;
  }

  /* お問い合わせ_tel_LINE */
  .l__tel__line__inner {
    padding: 0 3%;
  }

  .l__tel__line__list {
    padding: 46px 0;
    min-width: 303px;
    border-radius: 11px;
    border: 2px solid #95e7ea;
    margin-top: 74px;
    text-align: center;
  }

  .l__tel__line__title {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.05em;
  }

  .l__tel__line__title.line__title {
    margin-top: 37px;
  }

  .l__tel {
    font-size: 3.7rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.03em;
    margin-top: 27px;
    align-items: center;
  }

  .l__tel:first-of-type {
    margin-top: 34px;
  }

  /* icon */
  .l__tel__ico_phone {
    width: 29px;
    height: 32px;
    margin-right: 7px;
  }

  .l__tel__ico_sp {
    width: 23px;
    height: 35px;
    margin-right: 8px;
  }

  .l__tel__note__01 {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1;
    margin-top: 29px;
  }

  .l__tel__note__02 {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
    margin-top: 8px;
  }

  .l__tel__line__list__border {
    display: block;
    max-width: 93%;
    height: 1px;
    background: #77e0e4;
    margin: 37px auto 0;
  }

  .l__line {
    display: inline-block;
    color: #fff;
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.08em;
    padding: 37px 90px 40px;
    border-radius: 9px;
    background: #0cc755;
    margin-top: 34px;
    align-items: center;
  }

  .l__tel__ico_line {
    width: 22px;
    height: 21px;
    margin-right: 12px;
  }

  /* mailform */
  .l__mailform {
    padding: 0 3%;
    margin-top: 74px;
    width: 100%;
  }

  .l__mailform__inner {
    padding: 60px 5% 32px;
    max-width: 1330px;
    min-width: 303px;
    border-radius: 10px;
    background: #e1f4f4;
    margin: 0 auto;
  }

  .l__mailform__list {
    width: 100%;
    margin-top: 43px;
  }

  .l__tel__line__title.mail__title {
    font-size: 2.3rem;
    line-height: 1.5;
    letter-spacing: 0.05em;
    min-width: 316px;
  }

  .l__mailform__item {
    margin-top: 29px;
  }

  .l__mailform__label {
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1;
  }

  .required__name {
    display: inline-block;
    padding: 5px 11px;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1;
    border-radius: 5px;
    background: #fb8e46;
    margin-left: 18px;
  }

  .l__mailform__text {
    width: 100%;
    height: 56px;
    border: 1px solid #b8b8b8;
    background: #fff;
    margin-top: 18px;
  }

  .l__mailform__item__textarea textarea {
    width: 100%;
    height: 193px;
    border: 1px solid #b8b8b8;
    background: #fff;
    margin-top: 18px;
  }

  .privacy__flex {
    margin-top: 43px;
    width: 100%;
  }
  .privacy__flex__inner {
    width: 100%;
  }

  .l__mailform__privacy__txt {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  .l__mailform__privacy__txt a {
    display: inline-block;
    color: #fc8e46;
    text-decoration: underline;
  }

  .l__mailform__privacy__label {
    display: flex;
    justify-content: center;
    margin-top: 30px;
  }

  .l__mailform__privacy__label span {
    margin: 0 !important;
    padding: 0 !important;
  }

  .checkbox {
    border: 1px solid #b8b8b8;
    background: #fff;
    width: 27px;
    height: 27px;
    margin-right: 16px;
  }

  .checkbox:checked {
    position: relative;
  }

  .checkbox:checked::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 5px;
    border-left: 2px solid #f46e15;
    border-bottom: 2px solid #f46e15;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
  }

  .l__mailform__privacy__note {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
  }

  .l__mailform__submit__wrap {
    width: 316px;
    margin: 44px auto 0;
  }

  .l__mailform__submit {
    display: inline-block;
    margin: 0 auto;
    min-width: 273px;
    padding: 30px 0 !important;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    border-radius: 100px;
    border: 1px solid #828282;
    background: #ffffff;
    transition: opacity 0.3s ease;
  }

  .l__mailform__submit:hover {
    opacity: 0.6;
    transition: 0.3s ease;
  }

  .wpcf7 input,
  .wpcf7 textarea {
    font-size: 1.8rem;
    padding: 10px;
    line-height: 1.8;
  }

  .wpcf7 form .wpcf7-response-output {
    display: block;
    font-family: "Zen Kaku Gothic New", sans-serif;
    margin: 20px auto !important;
    max-width: 600px;
    padding: 40px !important;
    border-radius: 11px;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2;
    color: #333;
    border: none;
    background-color: #ffffff;
    text-align: left;
  }

  .wpcf7 form .wpcf7-not-valid-tip {
    margin-top: 1rem;
    font-size: 1.4rem;
    font-weight: 400;
  }
}

/* ----------------------------
contact__sub_pc 901-900
-----------------------------*/
@media screen and (min-width: 373px) and (max-width: 900px) {
  .l__contact__sub {
    width: 100%;
    font-family: "Zen Kaku Gothic New", sans-serif;
  }

  .l__contact__sub__inner {
    padding-top: 45px;
    padding-bottom: 27px;
  }

  .l__contact__sub__txt__wrap {
    padding: 0 6% 0;
    min-width: 327px;
    margin: 0 auto;
  }

  .l__contact__sub__txt {
    width: 100%;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.98; /* 29.7px */
    letter-spacing: 0.12em;
    text-align: left;
    padding-left: 0;
  }

  /* お問い合わせ_tel_LINE */
  .l__tel__line__inner {
    padding: 0 3%;
  }

  .l__tel__line__list {
    padding: 46px 0;
    min-width: 353px;
    border-radius: 11px;
    border: 2px solid #95e7ea;
    margin-top: 74px;
    text-align: center;
  }

  .l__tel__line__title {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.05em;
  }

  .l__tel__line__title.line__title {
    margin-top: 37px;
  }

  .l__tel {
    font-size: 3.7rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.03em;
    margin-top: 25px;
    align-items: center;
  }

  .l__tel:first-of-type {
    margin-top: 33px;
  }

  /* icon */
  .l__tel__ico_phone {
    width: 29px;
    height: 32px;
    margin-right: 7px;
  }

  .l__tel__ico_sp {
    width: 23px;
    height: 35px;
    margin-right: 8px;
  }

  .l__tel__note__01 {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1;
    margin-top: 28px;
  }

  .l__tel__note__02 {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
    margin-top: 8px;
  }

  .l__tel__line__list__border {
    display: block;
    max-width: 93%;
    height: 1px;
    background: #77e0e4;
    margin: 37px auto 0;
  }

  .l__line {
    display: inline-block;
    color: #fff;
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.08em;
    padding: 38px 121px 37px;
    border-radius: 9px;
    background: #0cc755;
    margin-top: 35px;
    align-items: center;
  }

  .l__tel__ico_line {
    width: 22px;
    height: 21px;
    margin-right: 12px;
  }

  /* mailform */
  .l__mailform {
    padding: 0 3%;
    margin-top: 74px;
    width: 100%;
  }

  .l__mailform__inner {
    padding: 60px 5% 32px;
    max-width: 1330px;
    min-width: 353px;
    border-radius: 10px;
    background: #e1f4f4;
    margin: 0 auto;
  }

  .l__mailform__list {
    width: 100%;
    margin-top: 43px;
  }

  .l__tel__line__title.mail__title {
    font-size: 2.3rem;
    line-height: 1.5;
    letter-spacing: 0.05em;
    min-width: 316px;
  }

  .l__mailform__item {
    margin-top: 29px;
  }

  .l__mailform__label {
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1;
  }

  .required__name {
    display: inline-block;
    padding: 5px 11px;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1;
    border-radius: 5px;
    background: #fb8e46;
    margin-left: 18px;
  }

  .l__mailform__text {
    width: 100%;
    height: 56px;
    border: 1px solid #b8b8b8;
    background: #fff;
    margin-top: 18px;
  }

  .l__mailform__item__textarea textarea {
    width: 100%;
    height: 193px;
    border: 1px solid #b8b8b8;
    background: #fff;
    margin-top: 18px;
  }

  .privacy__flex {
    margin-top: 43px;
    width: 100%;
  }
  .privacy__flex__inner {
    width: 100%;
  }

  .l__mailform__privacy__txt {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  .l__mailform__privacy__txt a {
    display: inline-block;
    color: #fc8e46;
    text-decoration: underline;
  }

  .l__mailform__privacy__label {
    display: flex;
    justify-content: center;
    margin-top: 30px;
  }

  .l__mailform__privacy__label span {
    margin: 0 !important;
    padding: 0 !important;
  }

  .checkbox {
    border: 1px solid #b8b8b8;
    background: #fff;
    width: 27px;
    height: 27px;
    margin-right: 16px;
  }

  .checkbox:checked {
    position: relative;
  }

  .checkbox:checked::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 5px;
    border-left: 2px solid #f46e15;
    border-bottom: 2px solid #f46e15;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
  }

  .l__mailform__privacy__note {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
  }

  .l__mailform__submit__wrap {
    width: 316px;
    margin: 44px auto 0;
  }

  .l__mailform__submit {
    display: inline-block;
    margin: 0 auto;
    min-width: 316px;
    padding: 31px 0 !important;
    font-size: 2rem !important;
    font-weight: 500;
    line-height: 1 !important;
    text-align: center;
    border-radius: 100px;
    border: 1px solid #828282;
    background: #ffffff;
    transition: opacity 0.3s ease;
  }

  .l__mailform__submit:hover {
    opacity: 0.6;
    transition: 0.3s ease;
  }

  .wpcf7 input,
  .wpcf7 textarea {
    font-size: 1.8rem;
    padding: 10px;
    line-height: 1.8;
  }

  .wpcf7 form .wpcf7-response-output {
    display: block;
    font-family: "Zen Kaku Gothic New", sans-serif;
    margin: 20px auto !important;
    max-width: 600px;
    padding: 40px !important;
    border-radius: 11px;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2;
    color: #333;
    border: none;
    background-color: #ffffff;
    text-align: left;
  }

  .wpcf7 form .wpcf7-not-valid-tip {
    margin-top: 1rem;
    font-size: 1.4rem;
    font-weight: 400;
  }
}

/* ----------------------------
contact__sub_pc 901-1269
-----------------------------*/

@media screen and (min-width: 901px) and (max-width: 1269px) {
  .l__contact__sub {
    width: 100%;
    font-family: "Zen Kaku Gothic New", sans-serif;
  }

  .l__contact__sub__inner {
    padding-top: 123px;
    padding-bottom: 43px;
  }

  .l__contact__sub__txt__wrap {
    display: block;
    padding: 0 12%;
    width: 100%;
    min-width: 353px;
    margin: 0 auto;
  }

  .l__contact__sub__txt {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.85;
    letter-spacing: 0.05em;
    text-align: left;
  }

  /* お問い合わせ_tel_LINE */
  .l__tel__line__inner {
    padding: 0 12%;
    margin: 0 auto;
    max-width: 1440px;
  }

  .l__tel__line__list {
    padding: 50px 0 36px;
    max-width: 1112px;
    min-width: 353px;
    border-radius: 11px;
    border: 2px solid #95e7ea;
    margin-top: 96px !important;
    text-align: center;
    display: flex;
  }

  .l__tel__line__title {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.05em;
  }

  .l__tel__line__title.line__title {
    margin-top: 0;
  }

  .l__tel__wrap {
    min-width: 50%;
    text-align: center;
  }

  .l__tel {
    font-size: 3.7rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.03em;
    margin-top: 25px !important;
    align-items: center;
  }

  .l__tel:first-of-type {
    margin-top: 37px !important;
  }

  /* icon */
  .l__tel__ico_phone {
    width: 29px;
    height: 32px;
    margin-right: 12px !important;
  }

  .l__tel__ico_sp {
    width: 23px;
    height: 35px;
    margin-right: 12px !important;
  }

  .l__tel__note__01 {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1;
    margin-top: 28px !important;
  }

  .l__tel__note__02 {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
    margin-top: 8px !important;
  }

  .l__tel__line__list {
    position: relative;
  }

  .l__tel__line__list__border {
    display: block;
    width: 1px;
    height: 153px;
    background: #77e0e4;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .l__line {
    display: inline-block;
    color: #fff;
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.08em;
    width: 64%;
    padding: 58px 0;
    border-radius: 9px;
    background: #0cc755;
    margin-top: 34px !important;
    align-items: center;
    letter-spacing: 1.68px;
  }

  .l__line:hover {
    opacity: 0.6;
    transition: 0.3s ease;
  }

  .l__tel__ico_line {
    width: 22px;
    height: 21px;
    margin-right: 10px !important;
  }

  /* mailform */
  .l__mailform {
    padding: 0 4%;
    margin-top: 97px !important;
    width: 100%;
  }

  .l__mailform__inner {
    padding: 75px 6% 83px;
    max-width: 1330px;
    border-radius: 30px;
    background: #e1f4f4;
    margin: 0 auto;
  }

  .l__mailform__list {
    width: 100%;
    margin-top: 83px !important;
  }

  .l__tel__line__title.mail__title {
    font-size: 2.6rem;
    line-height: 1.5;
    letter-spacing: 0.05em;
    min-width: 316px;
    font-weight: 700;
    letter-spacing: 0.05em;
  }

  .l__mailform__item {
    margin-top: 32px !important;
    display: flex;
    align-items: center;
    gap: 50px;
  }

  .l__mailform__label {
    display: flex;
    justify-content: space-between;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1;
    min-width: 277px;
  }

  .required__name {
    display: inline-block;
    padding: 6px 12px;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    border-radius: 5px;
    background: #fb8e46;
    margin-left: auto;
  }

  .l__mailform__text__wrap {
    width: 643px;
  }

  .l__mailform__text {
    width: 100%;
    height: 56px;
    border: 1px solid #b8b8b8;
    background: #fff;
    margin-top: 0 !important;
  }

  .l__mailform__item.message__flex {
    align-items: start;
  }

  .l__mailform__label.message__label {
    padding-top: 19px;
  }

  .l__mailform__item__textarea {
    width: 643px;
  }

  .l__mailform__item__textarea textarea {
    width: 100%;
    height: 193px;
    border: 1px solid #b8b8b8;
    background: #fff;
    margin-top: 0 !important;
  }

  .privacy__flex {
    width: 378px;
    height: auto;
    margin: 64px auto 0 !important;
  }

  .privacy__flex__inner {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    flex-direction: column;
  }

  .l__mailform__privacy__txt {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2 !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
    white-space: nowrap;
  }

  .l__mailform__privacy__txt a {
    display: inline-block;
    color: #f46e15;
    text-decoration: underline;
  }

  .l__mailform__privacy__txt a:hover {
    text-decoration: none;
  }

  .br__sp {
    display: none;
  }

  .l__mailform__privacy__label {
    display: flex;
    align-items: center;
    width: 225px;
    display: flex;
    margin-top: 28px !important;
  }

  .l__mailform__privacy__label span {
    margin: 0 !important;
    padding: 0 !important;
  }

  .checkbox {
    border: 1px solid #b8b8b8;
    background: #fff;
    width: 27px;
    height: 27px;
    margin-right: 16px;
  }

  .checkbox:checked {
    position: relative;
  }

  .checkbox:checked::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 5px;
    border-left: 2px solid #f46e15;
    border-bottom: 2px solid #f46e15;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
  }

  .l__mailform__privacy__note {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
    white-space: nowrap;
    margin-left: 0 !important;
  }

  .l__mailform__submit__wrap {
    width: 347px;
    margin: 43px auto 0;
  }

  .l__mailform__submit {
    display: inline-block;
    margin: 0 auto;
    min-width: 347px !important;
    padding: 33px 0 !important;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    border-radius: 100px;
    border: 1px solid #828282;
    background: #ffffff;
    transition: opacity 0.3s ease;
  }

  .l__mailform__submit:hover {
    opacity: 0.6;
    transition: 0.3s ease;
  }

  .wpcf7 input,
  .wpcf7 textarea {
    font-size: 1.8rem;
    padding: 10px;
    line-height: 1.8;
  }

  .wpcf7 form .wpcf7-response-output {
    display: block;
    font-family: "Zen Kaku Gothic New", sans-serif;
    margin: 20px auto !important;
    width: 600px;
    padding: 40px !important;
    border-radius: 11px;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2;
    color: #333;
    border: none;
    background-color: #ffffff;
    text-align: left;
  }

  .wpcf7 form .wpcf7-not-valid-tip {
    margin-top: 1rem;
    font-size: 1.4rem;
    font-weight: 400;
  }
}

/* ----------------------------
contact__sub_pc
-----------------------------*/

@media screen and (min-width: 1270px) {
  .l__contact__sub {
    width: 100%;
    font-family: "Zen Kaku Gothic New", sans-serif;
  }

  .l__contact__sub__inner {
    padding-top: 123px;
    padding-bottom: 43px;
  }

  .l__contact__sub__txt__wrap {
    max-width: 1112px;
    min-width: 540px;
    margin: 0 auto;
  }

  .l__contact__sub__txt {
    display: block;
    width: 100%;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.85;
    letter-spacing: 0.05em;
    text-align: left;
    padding-left: 0;
  }

  /* お問い合わせ_tel_LINE */
  .l__tel__line__inner {
    padding: 0 109px;
    margin: 0 auto;
    max-width: 1330px;
  }

  .l__tel__line__list {
    padding: 50px 0 36px;
    max-width: 1112px;
    min-width: 353px;
    border-radius: 11px;
    border: 2px solid #95e7ea;
    margin: 96px auto 0 !important;
    text-align: center;
    display: flex;
  }

  .l__tel__line__title {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.05em;
  }

  .l__tel__line__title.line__title {
    margin-top: 0;
  }

  .l__tel__wrap {
    min-width: 50%;
    text-align: center;
  }

  .l__tel {
    font-size: 3.7rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.03em;
    margin-top: 25px !important;
    align-items: center;
  }

  .l__tel:first-of-type {
    margin-top: 37px !important;
  }

  /* icon */
  .l__tel__ico_phone {
    width: 29px;
    height: 32px;
    margin-right: 12px !important;
  }

  .l__tel__ico_sp {
    width: 23px;
    height: 35px;
    margin-right: 12px !important;
  }

  .l__tel__note__01 {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1;
    margin-top: 28px !important;
  }

  .l__tel__note__02 {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
    margin-top: 8px !important;
  }

  .l__tel__line__list {
    position: relative;
  }

  .l__tel__line__list__border {
    display: block;
    width: 1px;
    height: 153px;
    background: #77e0e4;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .l__line {
    display: inline-block;
    color: #fff;
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.08em;
    width: 64%;
    padding: 58px 0;
    border-radius: 9px;
    background: #0cc755;
    margin-top: 34px !important;
    align-items: center;
    letter-spacing: 1.68px;
  }

  .l__line:hover {
    opacity: 0.6;
    transition: 0.3s ease;
  }

  .l__tel__ico_line {
    width: 22px;
    height: 21px;
    margin-right: 10px !important;
  }

  /* mailform */
  .l__mailform {
    padding: 0 4%;
    margin-top: 97px !important;
    width: 100%;
  }

  .l__mailform__inner {
    padding: 75px 60px 53px;
    max-width: 1330px;
    border-radius: 30px;
    background: #e1f4f4;
    margin: 0 auto;
  }

  .l__mailform__content {
    display: block;
    width: 100%;
    max-width: 1090px;
    padding: 0 60px 0;
    margin: 0 auto;
  }

  .l__mailform__list {
    display: block;
    width: 100%;
    max-width: 970px;
    margin-top: 83px !important;
    margin: 0 auto;
  }

  .l__tel__line__title.mail__title {
    display: block;
    margin: 0 auto;
    font-size: 2.6rem;
    line-height: 1.5;
    letter-spacing: 0.05em;
    min-width: 316px;
    max-width: 970px;
    font-weight: 700;
    letter-spacing: 0.05em;
  }

  .l__mailform__item {
    margin-top: 32px !important;
    display: flex;
    align-items: center;
    gap: 50px;
  }

  .l__mailform__label {
    display: flex;
    justify-content: space-between;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1;
    min-width: 277px;
  }

  .required__name {
    display: inline-block;
    padding: 6px 12px;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    border-radius: 5px;
    background: #fb8e46;
    margin-left: auto;
  }

  .l__mailform__text__wrap {
    width: 643px;
  }

  .l__mailform__text {
    width: 100%;
    height: 56px;
    border: 1px solid #b8b8b8;
    background: #fff;
    margin-top: 0 !important;
  }

  .l__mailform__item.message__flex {
    align-items: start;
  }

  .l__mailform__label.message__label {
    padding-top: 19px;
  }

  .l__mailform__item__textarea {
    width: 643px;
  }

  .l__mailform__item__textarea textarea {
    width: 100%;
    height: 193px;
    border: 1px solid #b8b8b8;
    background: #fff;
    margin-top: 0 !important;
  }

  .privacy__flex {
    width: 378px;
    height: auto;
    margin: 64px auto 0 !important;
  }

  .privacy__flex__inner {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    flex-direction: column;
  }

  .l__mailform__privacy__txt {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2 !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
    white-space: nowrap;
  }

  .l__mailform__privacy__txt a {
    display: inline-block;
    color: #f46e15;
    text-decoration: underline;
  }

  .l__mailform__privacy__txt a:hover {
    text-decoration: none;
  }

  .br__sp {
    display: none;
  }

  .l__mailform__privacy__label {
    align-items: center;
    width: 225px;
    display: flex;
    margin-top: 28px !important;
  }

  .l__mailform__privacy__label span {
    margin: 0 !important;
    padding: 0 !important;
  }

  .checkbox {
    border: 1px solid #b8b8b8;
    background: #fff;
    width: 27px;
    height: 27px;
    margin-right: 16px;
  }

  .checkbox:checked {
    position: relative;
  }

  .checkbox:checked::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 5px;
    border-left: 2px solid #f46e15;
    border-bottom: 2px solid #f46e15;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
  }

  .l__mailform__privacy__note {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
    white-space: nowrap;
    margin-left: 0 !important;
  }

  .l__mailform__submit__wrap {
    width: 347px;
    margin: 43px auto 0;
  }

  .l__mailform__submit {
    display: inline-block;
    margin: 0 auto;
    min-width: 347px !important;
    padding: 33px 0 !important;
    font-size: 2rem !important;
    font-weight: 500;
    line-height: 1 !important;
    text-align: center;
    border-radius: 100px;
    border: 1px solid #828282;
    background: #ffffff;
    transition: opacity 0.3s ease;
  }

  .l__mailform__submit:hover {
    opacity: 0.6;
    transition: 0.3s ease;
  }

  .wpcf7 input,
  .wpcf7 textarea {
    font-size: 1.8rem;
    padding: 10px;
    line-height: 1.8;
  }

  .wpcf7 form .wpcf7-response-output {
    display: block;
    font-family: "Zen Kaku Gothic New", sans-serif;
    margin: 20px auto !important;
    width: 600px;
    padding: 40px !important;
    border-radius: 11px;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2;
    color: #333;
    border: none;
    background-color: #ffffff;
    text-align: left;
  }

  .wpcf7 form .wpcf7-not-valid-tip {
    margin-top: 1rem;
    font-size: 1.4rem;
    font-weight: 400;
  }
}
