/* 使用カラー */
:root {
  --black: #000;
  --navy: #1D4763;
  --red: #B40019;
  --skyblue: #7AC8D0;
  --pink: #F9CEBF;
}

/* 使用フォント */
:root {
  --NotoSans: 'Noto Sans JP', sans-serif;
  /* Regular 400 Medium 500 SemiBold 600 Bold 700 Black 900*/
  --NotoSerif: 'Noto Serif JP', serif;
  /* Regular 400 Medium 500 Bold 700 */
}


body {
  min-height: 100vh;
  /* min-height: -webkit-fill-available; */
  font-family: var(--NotoSans);
  z-index: 0;
  position: relative;
}

html {
  font-size: min(calc(10 / 1280 * 100vw), 10px);
  /* 画面幅1280pxで10px*/
  /* overflow-y: overlay; */
  color: var(--black);
  /* height: -webkit-fill-available; */

}

img {
  width: 100%;
  object-fit: contain;
  height: 100%;
}

/*fade表示関連*/

.fade_in {
  opacity: 0;
  transition: opacity 1.5s cubic-bezier(0, 0.42, 0.58, 1);
}

.fade_up {
  transform: translateY(2vw);
  opacity: 0;
  transition: all 1.2s cubic-bezier(0, 0.42, 0.58, 1);
}

.fade_in.show {
  opacity: 1;
}

.fade_up.show {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.hamburger-menu {
  display: block;
}

.sp-only_wrapper {
  display: block;
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 1000;
}

.sp-only_wrapper,
.sp-only {
  display: block;
}

.menu_wrap {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media screen and (max-width: 699.98px) {
  html {
    font-size: calc(10 / 375 * 100vw);
    /* 画面幅375pxで10px*/
  }

  .pc_only {
    display: none;
  }

  .sp_only {
    display: block;
  }
}

/* confirm */

  .sec_08_header {
    width: 100%;
    height: 29rem;
    background-image: url(../img/lp/sec08_titlebg.png);
    background-size: contain;
    text-align: center;
    padding-top: 4.5rem;
    margin-bottom: 7.5rem;
    background-position: center center;
  }

  .sec_08_title {
    font-size: 7.5rem;
    font-family: var(--NotoSerif);
    color: #fff;
    font-weight: 900;
}


.sec_14 {
  background-image: url(../img/lp/form_bg.png);
  text-align: center;
  padding-bottom: 8.4rem;
}

.form_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 92.7rem;
  margin: 0 auto;
  margin-bottom: 5rem;
  align-items: center;
}

.form_wrap_last {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 92.7rem;
  margin: 0 auto;
  margin-bottom: 5rem;
}


.sec14_hissu {
  width: 3.6rem;
  height: 1.7rem;
}

.form_title_wrap {
  position: relative;
  width: 13rem;
  text-align: left;

}

.form_title {
  color: #fff;
  font-size: 1.6rem;
  font-family: var(--NotoSans);
  font-weight: 700;
}

.form_title::before {
  content: url(../img/lp/hissu.png);
  display: block;
  width: 3.6rem;
  height: 1.7rem;
  position: absolute;
  top: 0.2rem;
  left: -4rem;

}

.form_input {
  display: flex;
  align-items: center;
  width: 70.8rem;
  height: 5.5rem;
  background-color: #ffffff;
  color: #000;
  font-size: 1.6rem;
  font-family: var(--NotoSans);
  font-weight: 600;
  border-radius: 0.5rem;
  padding-left: 1rem;
}

.form_textarea {
  height: fit-content;
  min-height: 19.1rem;
  align-items: start;
  padding: 1rem;
  text-align: left;
}

.wpcf7-spinner {
  display: none;
}

.form_submit {
  width: 31.2rem;
  height: 5.5rem;
  margin: 0 auto;
  color: #ffffff;
  font-size: 1.6rem;
  font-family: var(--NotoSans);
  font-weight: 900;
  background-color: #C40D25;
  border-radius: 0.5rem;

}

.sp_only {
  display: none;
}

.top_link {
  position: absolute;
  left: 2rem;
  top: 2rem;
}

.fv_kouchan_logo {
  width: 17rem;
}

@media screen and (max-width: 699.98px) {
  .sp_only {
    display: block;
  }

  .top_img_group {
    display: flex;
    width: 34rem;
    margin: 0 auto;
    justify-content: space-between;
  }

  .top_fv_back {
    height: 2rem;
    min-height: 67rem;
    padding-top: 0rem;
    width: 100%;
    background-image: url(../img/lp/ramen_top.png);
    background-repeat: no-repeat;
    background-position: center 0rem;
    background-size: cover;
    position: relative;
    padding-bottom: 1rem;
  }


  .top_img_flex {
    width: 11rem;
    height: 22.7rem;
    object-fit: contain;
  }

  .top_text_flex01 {
    position: absolute;
    width: 7rem;
    height: 70.7rem;
    left: 8rem;
    top: 32rem;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    object-fit: contain;
  }

  .top_text_flex03 {
    width: 7.6rem;
    height: 49.1rem;
    position: absolute;
    right: -3rem;
    top: 30rem;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    object-fit: contain;
  }

  .top_text_flex02 {
    width: 9rem;
    height: 66.7rem;
    position: absolute;
    left: 4.5rem;
    top: 38rem;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    object-fit: contain;
  }

  .top_black_bar {
    background-color: #000;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 900;
    width: 34.5rem;
    padding: 1.2rem;
    border-radius: 1.5rem;
    text-align: left;
    display: block;
    position: absolute;
    bottom: 2rem;
    border: solid 3px #707070;
    margin: 0 auto;
    right: 1rem;
  }

  .sec_01_text {
    font-size: 1.5rem;
    font-weight: 900;
    color: #fff;
  }

  .sec_01 {
    background-color: #000;
    text-align: center;
    padding-top: 2.8rem;
    padding-bottom: 11.3rem;
    position: relative;
  }

  .sec_02_text {
    font-size: 2.8rem;
    font-weight: 900;
    color: #C40D25;
    margin-bottom: 1rem;
  }

  .sec_03_text {
    font-size: 2rem;
    font-weight: 900;
    color: #fff;
  }

  .triangle_text {
    color: #fff;
    width: 32rem;
    font-size: 2.1rem;
    font-weight: 700;
    position: absolute;
    bottom: -2rem;
    z-index: 3;
    left: 50%;
    transform: translate(0%, -50%);
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, -50%);
  }

  .sec_02_text01 {
    width: 34.9rem;
    object-fit: contain;
    margin: 0 auto;
    display: block;
  }

  .sec02_ramen_img {
    width: 35.2rem;
    height: 24rem;
    object-fit: cover;
    border-radius: 1.4rem;
  }

  .sec02_sub_area {
    width: 34.5rem;
    position: relative;
  }

  .sec02_flex {
    display: flex;
    width: 34.2rem;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    margin: 0 auto;
  }

  .sec_02_red_text {
    font-size: 2rem;
    color: #fff;
    background-color: #C40D25;
    width: max-content;
    padding: 1rem;
    margin-bottom: 0.5rem;
    margin-left: 6rem;
    position: relative;
    z-index: 2;
  }

  .sec02_flex::after {
    display: none;
  }

  .sec02_sub_area::after {
    content: "1";
    position: absolute;
    font-size: 5.4rem;
    color: #C40D25;
    font-weight: 700;
    top: 1rem;
    left: 1.3rem;
    font-family: var(--NotoSans);
  }

  .sec_02_explanation {
    font-size: 1.7rem;
    font-weight: 700;
    font-family: var(--NotoSans);
  }

  .sec02_flex02 {
    display: flex;
    width: 35.2rem;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    justify-content: space-between;
    margin: 0 auto;
    margin-top: 5rem;
    align-items: center;
    /* margin-bottom: 17rem; */
    position: relative;
  }

  .sec02_flex02>.sec02_ramen_img {
    width: 31rem;
    height: 21rem;
    position: relative;
    left: -38px;
    order: 1;
  }

  .sec02_sub_area2 {
    width: 40.5rem;
    position: relative;
    order: 2;
  }

  .sec02_flex02::after {
    display: none;
  }

  .sec02_ramen_img2 {
    position: absolute;
    width: 18.5rem;
    height: 16.4rem;
    border-radius: 1.4rem;
    right: -0.3rem;
    top: 7rem;
    object-fit: cover;
    z-index: 1;
  }

  .sec02_sub_area2::after {
    content: "2";
    position: absolute;
    font-size: 5.4rem;
    color: #C40D25;
    font-weight: 700;
    top: -2rem;
    left: 1.3rem;
    font-family: var(--NotoSans);
  }

  .sec02_flex03 {
    display: flex;
    width: 35.2rem;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    margin-top: 5rem;
    align-items: center;
    position: relative;
  }

  .sec02_flex03>.sec02_ramen_img {
    width: 35.2rem;
    height: 24rem;
    object-fit: cover;
    border-radius: 1.4rem;
  }

  .sec02_flex03::after {
    display: none;
  }

  .sec02_sub_area3::after {
    content: "3";
    position: absolute;
    font-size: 5.4rem;
    color: #C40D25;
    font-weight: 700;
    top: -2rem;
    left: 1.3rem;
    font-family: var(--NotoSans);
  }

  .sec02_flex04 {
    display: flex;
    width: 35.2rem;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    margin-top: 5rem;
    align-items: center;
    margin-bottom: 4.8rem;
    position: relative;
  }

  .sec02_flex04>.sec02_ramen_img {
    width: 35.2rem;
    height: 24rem;
    object-fit: cover;
    border-radius: 1.4rem;
    order: 1;
  }

  .sec02_sub_area4 {
    width: 40.5rem;
    position: relative;
    order: 2;
  }

  .sec02_flex04::after {
    display: none;
  }

  .sec02_sub_area4::after {
    content: "4";
    position: absolute;
    font-size: 5.4rem;
    color: #C40D25;
    font-weight: 700;
    top: 1rem;
    left: 1.3rem;
    font-family: var(--NotoSans);
  }

  .sec02_flex05 {
    width: 35.2rem;
    flex-wrap: wrap;
    margin-bottom: 5rem;
  }

  .sec02_flex05>.sec02_ramen_img {
    width: 35.2rem;
    height: 24rem;
  }

  .sec02_flex05::after {
    display: none;
  }


  .sec02_sub_area5::after {
    font-size: 5.4rem;
    top: 1rem;
    left: 1.3rem;
  }

  .sec02_flex06 {
    width: 35.2rem;
    flex-wrap: wrap;
    margin-bottom: -12rem;
  }

  .sec02_sub_area6 {
    order: 2;
  }

  .sec02_flex06>.sec02_ramen_img {
    width: 35.2rem;
    height: 24rem;
  }

  .sec02_sub_area6::after {
    font-size: 5.4rem;
    top: 1rem;
    left: 1.3rem;
  }

  .sec_02 {
    background-image: url(../img/lp/sec_02back.png);
    padding-top: 18rem;
    padding-bottom: 1.5rem;
  }

  .sec_03_title {
    font-size: 2rem;
  }

  .contact_btn_group {
    width: 30rem;
    flex-wrap: wrap;
  }


  .contact_btn {
    font-size: 2rem;
    height: 5rem;
    margin-bottom: 2rem;
    padding: 1rem;
  }

  .tel_contact_icon {
    color: #FFFDE1;
    font-size: 2.3rem;
    font-weight: 900;
    margin: 2rem auto;
    /* width: max-content; */
    display: block;
    /* text-align: left; */
    width: 35rem;
  }

  .contact_icon {
    width: 10rem;
    height: 3.7rem;
  }

  .sec_04fv {
    width: 100%;
    height: 16rem;
  }

  .sec_04_title {
    font-size: 2.5rem;
    margin-top: 3rem;
  }

  .sec_04_text {
    width: 33rem;
    font-size: 1.4rem;
  }

  .sec05_img {
    width: 35rem;
  }

  .sec_05_title_span {
    font-size: 4rem;
  }

  .sec_05_title {
    font-size: 2rem;
  }

  .sec_05_text {
    font-size: 1.5rem;
    width: 35rem;
  }

  .sec_07 {
    padding-top: 2rem;
    padding: 1rem;
  }

  .sec_07img {
    width: 35rem;
    margin: 0 auto;
  }

  .sec07_table:first-child {
    width: 8rem;
    font-size: 1.3rem;
    padding: 1rem;
  }

  .sec07_table:nth-child(2) {
    font-size: 1.3rem;
    width: 11rem;
    padding-left: 0.1rem;
  }

  .sec_07_bar {
    width: 14rem;
    font-size: 1.5rem;
  }

  .sec_07_bar::after {
    height: 5.2rem;
  }

  .sec07_table:last-child {

    font-size: 1.3rem;

    width: 15rem;

    padding-left: 1rem;
  }

  .sec07_table {}

  .sec_07_road {
    font-size: 1.8rem;
    padding: 1rem;
    margin-top: 7rem;
  }

  .sec_07_flex {
    flex-wrap: wrap;
    width: 36rem;
  }

  .store_conditions {
    font-size: 2rem;
    width: 35rem;
  }

  .store_conditions_span {
    font-size: 1.5rem;
  }

  .sec_07_item01 {
    font-size: 1.7rem;
  }

  .sec_07_item02 {
    font-size: 1.7rem;
  }

  .sec_07_red_text {
    font-size: 2rem;
  }

  .sec_07_store_img {
    height: 22rem;
    width: 100%;
  }

  .store_item_left {
    font-size: 1.3rem;
    width: 13rem;
    padding: 1rem;
  }

  .store_item_right {
    font-size: 1.3rem;
    width: 0rem;
    padding-right: 6rem;
  }

  .sec_07_store_table {

    width: 35rem;
  }

  .sec_07_area {
    width: 36.9rem;
  }

  .sec_07_title {
    font-size: 2.3rem;
  }

  .sec_07_note_text {

    font-size: 1.4rem;
  }

  .sec_05_explanation {
    width: 34rem;
  }

  .sec_07_note_area {
    width: 36rem;
  }

  .sec_08_header {
    height: 7.3rem;
    margin-bottom: 2rem;
    padding-top: 0.5rem;
  }

  .sec_08_title {
    font-size: 2.6rem;
  }

  .sec08_step_phase {
    width: 9rem;
    height: 9rem;
    font-size: 2.5rem;
    padding-top: 1rem;
  }

  .sec08_step_phase span {
    font-size: 4rem;
  }

  .sec08_step_desc_wrap {
    width: 28rem;
  }

  .sec08_step_title {
    font-size: 1.9rem;
    width: 23rem;
  }

  .sec08_step_title::after {
    top: 8rem;
    left: 12rem;
    width: 22rem;
    height: 0.2rem;
  }

  .sec08_step_desc_txt {
    font-size: 1.3rem;
    width: 21rem;
  }

  .sec08_step_wrap {
    width: 37rem;
    margin-bottom: 2rem;
  }

  .sec08_step_phase::after {
    top: 8rem;
    left: 3.5rem;
    height: 17rem;
  }

  .sec08_last_step_phase {
    width: 9rem;
    height: 9rem;
    font-size: 4.5rem;
    padding-top: 1.4rem;
  }

  .sec09_table {
    width: 36rem;
    font-size: 1.5rem;
  }

  .sec09_table td {
    padding: 0.2rem;
    width: 7rem;
  }

  .sec09_desc {
    font-size: 1.3rem;
  }

  .sec10_title {
    width: 35rem;
  }

  .sec10_icon_wrap {
    width: 37rem;
  }

  .sec10_icon {
    width: 13rem;
  }

  .sec10_desc_wrap {
    width: 36rem;
    padding: 2rem;
  }

  .sec10_desc {
    font-size: 1.6rem;
  }

  .sec11_content_wrap {
    width: 36rem;
  }

  .sec11_shop_title {
    font-size: 2rem;
  }

  .sec11_shop_title::after {
  content: "";
  display: block;
  width: 17.8rem;
  height: 0.2rem;
  background-color: #C40D25;
  position: absolute;
  top: 8.5rem;
  left: 9rem;
  transform: none;
  }

  .sec11_shop_wrap {
    width: 13.5rem;
    margin-left: 0.5rem;
    margin-bottom: 1rem;
  }

  .sec11_shop_name {
    font-size: 1.5rem;
  }

  .sec12_insta {
    width: 10rem;
    top: -0.5rem;
    left: 3rem;
  }

  .sec_12 {
    height: 26rem;
    background-position: 57% center;
  }

  .sec_13 {
    padding-top: 3rem;
  }

  .sec13_title {
    font-size: 2rem;
    margin-bottom: 3rem;
  }

  .sec13_title::after {
    top: 3rem;
    left: 9rem;
    width: 12rem;
  }

  .company_outline {
    width: 31rem;
    font-size: 1.3rem;
  }

  .company_outline td {
    border-bottom: solid 0.1rem #000;
    padding: 1rem 1rem;
    width: 10rem;
  }

  .form_wrap {
    width: 26rem;
    margin-bottom: 2rem;
  }

  .form_input {
    width: 26rem;
    height: 3rem;
  }

  .form_title {}

  .form_wrap_last {
    width: 26rem;
  }

  .form_textarea {
    height: fit-content;
    min-height: 18rem;
  }

  .form_submit {
    width: 26rem;
  }

  .triangle {
    width: 38rem;
  }

  .contact_icon_fukidashi {
    display: none;
  }

  .sec08_bg {
    width: 32rem;
    height: 36rem;
  }

  .top_link {
    top: 1rem;
    left: 1rem;
  }

  .fv_kouchan_logo {
    width: 14rem;
  }




}