@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900);
/* 共通
-------------------------------------------- */
.frrn {
  color: #000;
}
.frrn ul.caut {
  list-style-type: none;
  letter-spacing: -.03em;
}
.frrn ul.caut.white {
  color: #fff;
}
.frrn ul.caut li {
  padding-left: 1em;
  text-indent: -1em;
  padding-bottom: 0.3em strong;
  padding-bottom-color: #cc0000 !important;
}
.frrn ul.caut li.red {
  color: #cc0000;
  font-weight: 600;
}
.frrn_contents .date ul li strong a,
.frrn_contents .date ul li.red a {
  text-decoration: underline;
}
.frrn figure, .frrn figcaption {
  margin: 0;
  padding: 0;
}

/* PC
-------------------------------------------- */
@media screen and (min-width: 901px), print {
  .sp {
    display: none;
  }

  .frrn {
    position: relative;
    font-size: 20px;
    font-family: 'Noto Sans JP', sans-serif;
    font-feature-settings: "palt";
    color: #333;
    overflow: hidden;
  }
  .frrn img {
    width: 100%;
    height: auto;
    image-rendering: -webkit-optimize-contrast;
  }
  .frrn a {
    text-decoration: none;
  }
  .frrn a:hover {
    text-decoration: underline;
  }
  .frrn_header {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ff0001;
    height: 100px;
  }
  .frrn_header_inr {
    max-width: 1300px;
    width: 98%;
  }
  .frrn_header_logo {
    width: 87px;
  }
  .frrn_header_menu {
    display: none;
  }
  .frrn_header_navi {
    display: none;
  }
  .frrn_main {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ffd900;
    margin: 0;
    padding: 35px 0 25px;
    line-height: 0;
  }
  .frrn_main img {
    max-width: 1200px;
    width: 100%;
  }
  .frrn_ex {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 0;
    line-height: 0;
  }
  .frrn_ex li:first-of-type {
    width: 550px;
  }
  .frrn_ex li:nth-of-type(2) {
    width: 550px;
  }
  .frrn_ex li:last-of-type {
    max-width: 1000px;
    width: 98%;
  }
}
@media screen and (min-width: 901px) and (max-width: 1150px) {
  .frrn_ex li:first-of-type {
    width: 48vw;
  }
  .frrn_ex li:nth-of-type(2) {
    width: 48vw;
  }
}
@media screen and (min-width: 901px), print {
  .frrn_contents {
    background: #ffd900 url("../img/bg.png");
    padding: 40px 0 100px;
  }
  .frrn_navi ul {
    display: flex;
    justify-content: center;
    gap: 10px;
    padding: 0 10px;
  }
  .frrn_navi ul li {
    width: 326px;
    transition: 0.3s all;
  }
  .frrn_navi ul li:hover {
    transform: scale(1.1, 1.1);
  }
  .frrn_post {
    box-sizing: border-box;
    max-width: 1000px;
    width: 100%;
    margin: 100px auto 0;
    padding: 4px;
    background: #fff;
    border-radius: 30px;
    position: relative;
  }
  .frrn_post::before {
    content: "";
    width: 100%;
    height: 229px;
    background: url("../img/post_ttl_bg.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_post_inr {
    border: 1px solid #ffe133;
    border-radius: 30px;
    padding-bottom: 30px;
  }
  .frrn_post_ttl {
    display: flex;
    justify-content: center;
    padding: 30px 0 60px;
    line-height: 0;
    position: relative;
    z-index: 1;
  }
  .frrn_post_ttl img {
    max-width: 788.5px;
    width: 100%;
  }
  .frrn_post_date {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .frrn_post_date_ttl {
    display: flex;
    justify-content: center;
    max-width: 908px;
    width: 98%;
    padding-bottom: 10px;
    border-bottom: 1px solid #ffe133;
    position: relative;
    line-height: 0;
  }
  .frrn_post_date_ttl img {
    width: 157px;
  }
  .frrn_post_date_ttl::before {
    content: "";
    width: 38px;
    height: 28px;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    bottom: -14px;
  }
  .frrn_post_date_ttl::after {
    content: "";
    width: 38px;
    height: 28px;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    right: 0;
    bottom: -14px;
    transform: scale(-1, 1);
  }
  .frrn_post_date_time {
    max-width: 727px;
    width: 98%;
    margin-top: 20px;
  }
  .frrn_post_item {
    margin-top: 60px;
    position: relative;
  }
  .frrn_post_item_ttl {
    max-width: 833px;
    width: 98%;
    margin: 0 auto;
  }
  .frrn_post_item_limit {
    width: 161px;
    position: absolute;
    top: 70px;
    left: 20px;
  }
}
@media screen and (min-width: 901px) and (max-width: 1000px) {
  .frrn_post_item_limit {
    width: 16vw;
    top: 6.6666666667vw;
    left: 1.3333333333vw;
  }
}
@media screen and (min-width: 901px), print {
  .frrn_post_item_img {
    display: flex;
    justify-content: center;
    margin-top: 40px;
  }
  .frrn_post_item_img img {
    max-width: 902px;
    width: 98%;
  }
  .frrn_post_item figcaption {
    margin-top: 30px;
    font-size: 24px;
    text-align: center;
  }
  .frrn_post_item ul.caut {
    margin: 30px;
  }
  .frrn_post_flow {
    box-sizing: border-box;
    max-width: 900px;
    width: 100%;
    margin: 40px auto 0;
    padding-bottom: 40px;
    border: 1px solid #18a4b0;
    border-radius: 30px;
  }
}
@media screen and (min-width: 901px) and (max-width: 964px) {
  .frrn_post_flow {
    width: 95%;
  }
}
@media screen and (min-width: 901px), print {
  .frrn_post_flow_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    background: #18a4b0;
    height: 80px;
  }
  .frrn_post_flow_ttl img {
    width: 288px;
  }
  .frrn_post_flow_step li.ico {
    position: relative;
  }
  .frrn_post_flow_step li.ico::before {
    content: "";
    width: 150px;
    height: 76px;
    background-size: contain;
    position: absolute;
    top: 0;
    left: -30px;
  }
  .frrn_post_flow_step li.ico .tx {
    width: 90%;
    margin: 0 auto;
  }
  .frrn_post_flow_step li.ico .img {
    width: 90%;
    margin: 30px auto 0;
  }
  .frrn_post_flow_step li.ico .btn {
    position: relative;
    line-height: 0;
    transition: 0.3s all;
  }
  .frrn_post_flow_step li.ico .btn:hover {
    transform: scale(1.1, 1.1);
  }
  .frrn_post_flow_step li.ico .btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
  }
  .frrn_post_flow_step li.ico .btn::after {
    content: "";
    width: 24px;
    height: 24px;
    background: url("../img/ico_blank.png") no-repeat;
    background-size: contain;
    position: absolute;
    right: 20px;
    top: calc(calc(70px / 2) - calc(24px / 2));
  }
  .frrn_post_flow_step li.ico:first-of-type {
    margin-top: 30px;
    padding-top: 20px;
  }
  .frrn_post_flow_step li.ico:first-of-type::before {
    background: url("../img/post_step1.png") no-repeat;
    background-size: contain;
  }
  .frrn_post_flow_step li.ico:first-of-type .tx {
    max-width: 485.5px;
  }
  .frrn_post_flow_step li.ico:first-of-type .img {
    width: 647px;
    padding-left: 52px;
  }
  .frrn_post_flow_step li.ico:first-of-type .btn {
    width: 482px;
    height: 70px;
    margin: 30px auto 0;
    border-radius: 35px;
    background: #000;
  }
  .frrn_post_flow_step li.ico:first-of-type .btn img {
    max-width: 321.5px;
    width: 90%;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) {
    margin-top: 60px;
    padding-top: 10px;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2)::before {
    background: url("../img/post_step2.png") no-repeat;
    background-size: contain;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) .tx {
    max-width: 349px;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) .img {
    max-width: 186px;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) .btn {
    width: 382px;
    height: 70px;
    margin: 30px auto 0;
    border-radius: 35px;
    background: #000;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) .btn img {
    max-width: 215px;
    width: 90%;
  }
  .frrn_post_flow_step li.ico:last-of-type {
    margin-top: 60px;
    padding-top: 10px;
  }
  .frrn_post_flow_step li.ico:last-of-type::before {
    background: url("../img/post_step3.png") no-repeat;
    background-size: contain;
  }
  .frrn_post_flow_step li.ico:last-of-type .tx {
    max-width: 606.5px;
  }
  .frrn_post_flow_requirements {
    max-width: 860px;
    width: 98%;
    margin: 100px auto 0;
  }
  .frrn_post_flow_requirements_ttl {
    width: 146.5px;
    margin: 0 auto 20px;
  }
  .frrn_post_flow_requirements_conte {
    height: 500px;
    overflow-y: scroll;
    padding: 0 20px 20px;
  }
  .frrn_post_flow_requirements_conte strong {
    display: block;
  }
  .frrn_post_flow_requirements_conte strong.nm {
    font-size: 1.1em;
  }
  .frrn_post_flow_requirements_conte strong.hd1 {
    margin-top: 2em;
  }
  .frrn_post_flow_requirements_conte strong.hd2 {
    margin-top: 1em;
  }
  .frrn_post_flow_requirements_conte ul.dot li {
    padding-left: 0.5em;
    text-indent: -0.5em;
  }
  .frrn_post_flow_requirements_conte ul.caut li {
    padding-left: 1em;
    text-indent: -1em;
  }
  .frrn_post_flow_requirements_conte a {
    text-decoration: underline;
  }
  .frrn_post_flow_requirements_conte a:hover {
    background: #000;
    color: #fff;
    text-decoration: none;
  }
  .frrn_card {
    box-sizing: border-box;
    max-width: 1000px;
    width: 100%;
    margin: 100px auto 0;
    padding: 4px;
    background: #fff;
    border-radius: 30px;
    position: relative;
  }
  .frrn_card::before {
    content: "";
    width: 100%;
    height: 229px;
    background: url("../img/post_ttl_bg.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_card_inr {
    border: 1px solid #ffe133;
    border-radius: 30px;
    padding-bottom: 30px;
  }
  .frrn_card_ttl {
    display: flex;
    justify-content: center;
    padding: 30px 0 60px;
    line-height: 0;
    position: relative;
    z-index: 1;
  }
  .frrn_card_ttl img {
    max-width: 866px;
    width: 100%;
  }
  .frrn_card_date {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .frrn_card_date_ttl {
    display: flex;
    justify-content: center;
    max-width: 908px;
    width: 98%;
    padding-bottom: 10px;
    border-bottom: 1px solid #ffe133;
    position: relative;
    line-height: 0;
  }
  .frrn_card_date_ttl img {
    width: 76.5px;
  }
  .frrn_card_date_ttl::before {
    content: "";
    width: 38px;
    height: 28px;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    bottom: -14px;
  }
  .frrn_card_date_ttl::after {
    content: "";
    width: 38px;
    height: 28px;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    right: 0;
    bottom: -14px;
    transform: scale(-1, 1);
  }
  .frrn_card_date_time {
    max-width: 468.5px;
    width: 98%;
    margin-top: 20px;
  }
  .frrn_card_date ul.caut {
    margin-top: 10px;
    text-align: center;
  }
  .frrn_card_item {
    margin-top: 60px;
    position: relative;
  }
  .frrn_card_item_ttl {
    max-width: 850px;
    width: 98%;
    margin: 0 auto;
  }
  .frrn_card_item_img {
    display: block;
    max-width: 593px;
    width: 98%;
    margin: 20px auto 0;
  }
  .frrn_card_flow {
    box-sizing: border-box;
    max-width: 900px;
    width: 98%;
    margin: 40px auto 0;
    padding-bottom: 40px;
    border: 1px solid #18a4b0;
    border-radius: 30px;
  }
  .frrn_card_flow_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    background: #18a4b0;
    height: 80px;
  }
  .frrn_card_flow_ttl img {
    width: 288px;
  }
  .frrn_card_flow_ex {
    max-width: 780px;
    width: 98%;
    margin: 30px auto 0;
  }
  .frrn_card_flow_item {
    margin-top: 40px;
  }
  .frrn_card_flow_item dt {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 200px;
    height: 60px;
    margin: 0 auto;
    background: #000;
    border-radius: 30px;
  }
  .frrn_card_flow_item dt img {
    width: 120px;
  }
  .frrn_card_flow_item dd {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  .frrn_card_flow_item dd p {
    max-width: 785px;
    width: 98%;
  }
  .frrn_card_flow_item dd ul {
    display: flex;
    justify-content: center;
    gap: 10px;
  }
  .frrn_card_flow_item dd ul li {
    width: 279px;
  }
  .frrn_card_flow_item dd ul li figcaption {
    margin-top: 10px;
    font-size: 24px;
    text-align: center;
  }
  .frrn_card_flow ul.caut {
    margin: 20px;
  }
  .frrn_recipe {
    box-sizing: border-box;
    max-width: 1000px;
    width: 100%;
    margin: 100px auto 0;
    padding: 4px;
    background: #fff;
    border-radius: 30px;
    position: relative;
  }
  .frrn_recipe_inr {
    border: 1px solid #ffe133;
    border-radius: 30px;
    padding-bottom: 30px;
  }
  .frrn_recipe_ttl {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 908px;
    width: 98%;
    margin: 0 auto;
    padding: 30px 0 30px;
    border-bottom: 1px solid #ffe133;
    position: relative;
    line-height: 0;
  }
  .frrn_recipe_ttl::before {
    content: "";
    width: 38px;
    height: 28px;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    bottom: -14px;
  }
  .frrn_recipe_ttl::after {
    content: "";
    width: 38px;
    height: 28px;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    right: 0;
    bottom: -14px;
    transform: scale(-1, 1);
  }
  .frrn_recipe_ttl p:first-of-type {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 940px;
    width: 98%;
    height: 60px;
    border-radius: 30px;
    background: #67bfc6;
  }
  .frrn_recipe_ttl p:first-of-type img {
    max-width: 728px;
    width: 100%;
  }
  .frrn_recipe_ttl p:last-of-type {
    margin-top: 20px;
    max-width: 648px;
    width: 100%;
  }
  .frrn_recipe_frieren {
    margin-top: 40px;
    position: relative;
  }
  .frrn_recipe_frieren::before {
    content: "";
    width: 253px;
    height: 219px;
    background: url("../img/recipe_frieren.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 10px;
    transition: 0.3s all;
  }
}
@media screen and (min-width: 901px) and (max-width: 1000px) {
  .frrn_recipe_frieren::before {
    width: 23vw;
  }
}
@media screen and (min-width: 901px), print {
  .frrn_recipe_frieren_ttl {
    max-width: 482px;
    width: 98%;
    margin: 0 auto;
  }
  .frrn_recipe_frieren_img {
    max-width: 752px;
    width: 98%;
    margin: 10px auto 0;
  }
  .frrn_recipe_frieren_material {
    box-sizing: border-box;
    max-width: 900px;
    width: 98%;
    margin: 40px auto 0;
    padding: 20px 30px;
    border: 2px dashed #18a4b0;
    background: #f7f7f1;
    border-radius: 30px;
    font-size: 24px;
    position: relative;
  }
  .frrn_recipe_frieren_material::after {
    content: "";
    width: 300px;
    height: 300px;
    background: url("../img/recipe_soi.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 20px;
    right: 20px;
  }
  .frrn_recipe_frieren_material p:first-of-type {
    font-weight: bold;
  }
  .frrn_recipe_frieren_material p:last-of-type {
    margin-top: 1em;
  }
  .frrn_recipe_frieren_cooking {
    box-sizing: border-box;
    max-width: 900px;
    width: 98%;
    margin: 40px auto 0;
    padding-bottom: 40px;
    border: 1px solid #18a4b0;
    border-radius: 30px;
  }
  .frrn_recipe_frieren_cooking_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    background: #18a4b0;
    height: 80px;
  }
  .frrn_recipe_frieren_cooking_ttl img {
    width: 228px;
  }
  .frrn_recipe_frieren_cooking_flw {
    margin: 20px;
  }
  .frrn_recipe_frieren_cooking_flw li {
    position: relative;
    background: url("../img/cooking_line.png") no-repeat;
    background-size: calc(100% - 80px) auto;
    background-position: right 30px;
    font-size: 24px;
  }
  .frrn_recipe_frieren_cooking_flw li::before {
    content: "";
    width: 71px;
    height: 71px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_recipe_frieren_cooking_flw li p:first-of-type {
    padding: 60px 20px 0 80px;
  }
  .frrn_recipe_frieren_cooking_flw li:first-of-type {
    padding-bottom: 300px;
  }
  .frrn_recipe_frieren_cooking_flw li:first-of-type::before {
    background: url("../img/cooking_no1.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_frieren_cooking_flw li:first-of-type p:last-of-type {
    width: 950px;
    position: absolute;
    left: -45px;
    transition: 0.3s all;
  }
}
@media screen and (min-width: 901px) and (max-width: 960px) {
  .frrn_recipe_frieren_cooking_flw li:first-of-type p:last-of-type {
    width: 95vw;
    left: calc(50% - calc(95vw / 2));
  }
}
@media screen and (min-width: 901px), print {
  .frrn_recipe_frieren_cooking_flw li:nth-of-type(2)::before {
    background: url("../img/cooking_no2.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_frieren_cooking_flw li:nth-of-type(2) p:last-of-type {
    width: 675px;
    margin: 20px auto 0;
  }
  .frrn_recipe_frieren_cooking_flw li:nth-of-type(3)::before {
    background: url("../img/cooking_no3.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_frieren_cooking_flw li:nth-of-type(3) p:last-of-type {
    width: 842px;
    margin: 20px auto 0;
  }
  .frrn_recipe_frieren_cooking_flw li:last-of-type {
    padding-bottom: 300px;
  }
  .frrn_recipe_frieren_cooking_flw li:last-of-type::before {
    background: url("../img/cooking_no4.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_frieren_cooking_flw li:last-of-type p:last-of-type {
    width: 882px;
    position: absolute;
    top: 6em;
    left: -10px;
    transition: 0.3s all;
  }
}
@media screen and (min-width: 901px) and (max-width: 960px) {
  .frrn_recipe_frieren_cooking_flw li:last-of-type p:last-of-type {
    width: 95vw;
    left: calc(50% - calc(95vw / 2));
  }
}
@media screen and (min-width: 901px), print {
  .frrn_recipe_fern {
    margin-top: 60px;
    position: relative;
  }
  .frrn_recipe_fern::before {
    content: "";
    width: 247px;
    height: 236px;
    background: url("../img/recipe_fern.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    right: 0;
    transition: 0.3s all;
  }
}
@media screen and (min-width: 901px) and (max-width: 1000px) {
  .frrn_recipe_fern::before {
    width: 23vw;
  }
}
@media screen and (min-width: 901px), print {
  .frrn_recipe_fern_ttl {
    max-width: 482px;
    width: 98%;
    margin: 0 auto;
  }
  .frrn_recipe_fern_img {
    max-width: 752px;
    width: 98%;
    margin: 10px auto 0;
  }
  .frrn_recipe_fern_material {
    box-sizing: border-box;
    max-width: 900px;
    width: 98%;
    margin: 40px auto 0;
    padding: 20px 30px;
    border: 2px dashed #18a4b0;
    background: #f7f7f1;
    border-radius: 30px;
    font-size: 24px;
    position: relative;
  }
  .frrn_recipe_fern_material::after {
    content: "";
    width: 300px;
    height: 300px;
    background: url("../img/recipe_miso.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 20px;
    right: 20px;
  }
  .frrn_recipe_fern_material p:first-of-type {
    font-weight: bold;
  }
  .frrn_recipe_fern_material p:last-of-type {
    margin-top: 1em;
  }
  .frrn_recipe_fern_cooking {
    box-sizing: border-box;
    max-width: 900px;
    width: 98%;
    margin: 40px auto 0;
    padding-bottom: 60px;
    border: 1px solid #18a4b0;
    border-radius: 30px;
  }
  .frrn_recipe_fern_cooking_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    background: #18a4b0;
    height: 80px;
  }
  .frrn_recipe_fern_cooking_ttl img {
    width: 228px;
  }
  .frrn_recipe_fern_cooking_flw {
    margin: 20px;
  }
  .frrn_recipe_fern_cooking_flw li {
    position: relative;
    background: url("../img/cooking_line.png") no-repeat;
    background-size: calc(100% - 80px) auto;
    background-position: right 30px;
    font-size: 24px;
  }
  .frrn_recipe_fern_cooking_flw li::before {
    content: "";
    width: 71px;
    height: 71px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_recipe_fern_cooking_flw li p:first-of-type {
    padding: 60px 20px 0 80px;
  }
  .frrn_recipe_fern_cooking_flw li:first-of-type {
    padding-bottom: 300px;
  }
  .frrn_recipe_fern_cooking_flw li:first-of-type::before {
    background: url("../img/cooking_no1.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_fern_cooking_flw li:first-of-type p:first-of-type span {
    display: inline-block;
    padding-left: 0.5em;
    text-indent: -0.5em;
  }
  .frrn_recipe_fern_cooking_flw li:first-of-type p:last-of-type {
    width: 892px;
    position: absolute;
    top: 9em;
    left: calc(50% - calc(892px / 2));
    transition: 0.3s all;
  }
}
@media screen and (min-width: 901px) and (max-width: 940px) {
  .frrn_recipe_fern_cooking_flw li:first-of-type p:last-of-type {
    width: 95vw;
    left: calc(50% - calc(95vw / 2));
  }
}
@media screen and (min-width: 901px), print {
  .frrn_recipe_fern_cooking_flw li:nth-of-type(2) {
    padding-bottom: 300px;
  }
  .frrn_recipe_fern_cooking_flw li:nth-of-type(2)::before {
    background: url("../img/cooking_no2.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_fern_cooking_flw li:nth-of-type(2) p:last-of-type {
    width: 881px;
    position: absolute;
    top: 7em;
    left: calc(50% - calc(881px / 2));
  }
  .frrn_recipe_fern_cooking_flw li:last-of-type {
    padding-bottom: 300px;
  }
  .frrn_recipe_fern_cooking_flw li:last-of-type::before {
    background: url("../img/cooking_no3.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_fern_cooking_flw li:last-of-type p:last-of-type {
    width: 913px;
    position: absolute;
    top: 6em;
    left: calc(50% - calc(913px / 2));
    transition: 0.3s all;
  }
}
@media screen and (min-width: 901px) and (max-width: 940px) {
  .frrn_recipe_fern_cooking_flw li:last-of-type p:last-of-type {
    width: 97vw;
    left: calc(50% - calc(97vw / 2));
  }
}
@media screen and (min-width: 901px), print {
  .frrn_recipe_stark {
    margin-top: 60px;
    position: relative;
  }
  .frrn_recipe_stark::before {
    content: "";
    width: 239px;
    height: 245px;
    background: url("../img/recipe_stark.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 10px;
    transition: 0.3s all;
  }
}
@media screen and (min-width: 901px) and (max-width: 1000px) {
  .frrn_recipe_stark::before {
    width: 22vw;
  }
}
@media screen and (min-width: 901px), print {
  .frrn_recipe_stark_ttl {
    max-width: 482px;
    width: 98%;
    margin: 0 auto;
  }
  .frrn_recipe_stark_img {
    max-width: 752px;
    width: 98%;
    margin: 10px auto 0;
  }
  .frrn_recipe_stark_material {
    box-sizing: border-box;
    max-width: 900px;
    width: 98%;
    margin: 40px auto 0;
    padding: 20px 30px;
    border: 2px dashed #18a4b0;
    background: #f7f7f1;
    border-radius: 30px;
    font-size: 24px;
    position: relative;
  }
  .frrn_recipe_stark_material::after {
    content: "";
    width: 300px;
    height: 300px;
    background: url("../img/recipe_sio.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 20px;
    right: 20px;
  }
  .frrn_recipe_stark_material p:first-of-type {
    font-weight: bold;
  }
  .frrn_recipe_stark_material p:last-of-type {
    margin-top: 1em;
  }
  .frrn_recipe_stark_cooking {
    box-sizing: border-box;
    max-width: 900px;
    width: 98%;
    margin: 40px auto 0;
    padding-bottom: 40px;
    border: 1px solid #18a4b0;
    border-radius: 30px;
  }
  .frrn_recipe_stark_cooking_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    background: #18a4b0;
    height: 80px;
  }
  .frrn_recipe_stark_cooking_ttl img {
    width: 228px;
  }
  .frrn_recipe_stark_cooking_flw {
    margin: 20px;
  }
  .frrn_recipe_stark_cooking_flw li {
    position: relative;
    background: url("../img/cooking_line.png") no-repeat;
    background-size: calc(100% - 80px) auto;
    background-position: right 30px;
    font-size: 24px;
  }
  .frrn_recipe_stark_cooking_flw li::before {
    content: "";
    width: 71px;
    height: 71px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_recipe_stark_cooking_flw li p:first-of-type {
    padding: 60px 20px 0 80px;
  }
  .frrn_recipe_stark_cooking_flw li:first-of-type::before {
    background: url("../img/cooking_no1.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_stark_cooking_flw li:first-of-type p:last-of-type {
    width: 590px;
    margin: 0 20px 0 auto;
  }
  .frrn_recipe_stark_cooking_flw li:nth-of-type(2)::before {
    background: url("../img/cooking_no2.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_stark_cooking_flw li:nth-of-type(2) p:last-of-type {
    width: 609px;
    margin: 20px auto 0;
  }
  .frrn_recipe_stark_cooking_flw li:nth-of-type(3)::before {
    background: url("../img/cooking_no3.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_stark_cooking_flw li:nth-of-type(3) p:last-of-type {
    width: 815px;
    margin: 20px auto 0;
  }
  .frrn_recipe_stark_cooking_flw li:last-of-type::before {
    background: url("../img/cooking_no4.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_stark_cooking_flw li:last-of-type p:last-of-type {
    width: 815px;
    margin: 20px auto 0;
  }
  .frrn ul.caut.com {
    max-width: 1000px;
    width: 98%;
    margin: 30px auto 0;
  }
  .frrn_contact {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    max-width: 1000px;
    width: 98%;
    height: 620px;
    margin: 100px auto 0;
    background: url("../img/contact_bg_t.png"), url("../img/contact_bg_b.png");
    background-repeat: no-repeat, no-repeat;
    background-position: center top, center bottom;
    background-size: contain;
  }
  .frrn_contact_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 800px;
    width: 98%;
    height: 110px;
    background: #67bfc6;
    border-radius: 55px;
  }
  .frrn_contact_ttl img {
    max-width: 611.5px;
    width: 98%;
  }
  .frrn_contact_tel {
    max-width: 504.5px;
  }
  .frrn_contact_date {
    max-width: 611px;
  }
  .frrn_contact_post_ex {
    max-width: 761px;
    margin-top: 30px;
    position: relative;
  }
  .frrn_contact_post_ex::before {
    content: "";
    width: 790.5px;
    height: 12px;
    background: url("../img/contact_line.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: -30px;
    left: calc(50% - calc(790.5px / 2));
  }
  .frrn_contact_post_mail {
    font-size: 28px;
    font-weight: 500;
    line-height: 1;
  }
  .frrn_contact_post_mail a {
    color: #18a4b0;
    text-decoration: underline;
    font-size: 1.2em;
  }
  .frrn_contact_post_mail a:hover {
    background: #18a4b0;
    color: #fff;
    text-decoration: none;
  }
  .frrn_contact_post_date {
    max-width: 588.5px;
  }
  .frrn_copy {
    margin-top: 100px;
    font-size: 20px;
    text-align: center;
  }
  .frrn_sns {
    display: flex;
    justify-content: center;
    column-gap: 10px;
    margin-top: 100px;
  }
  .frrn_sns li {
    width: 61.5px;
    transition: 0.3s all;
  }
  .frrn_sns li:hover {
    transform: scale(1.1, 1.1);
  }
  .frrn_pagetop {
    width: 144px;
    position: fixed;
    right: 10px;
    bottom: 100px;
    z-index: 99;
    line-height: 0;
    transition: 0.3s all;
  }
  .frrn_pagetop:hover {
    transform: scale(1.1, 1.1);
  }
  .frrn_pagetop:active {
    transform: scale(0.8, 0.8);
  }
  .frrn_footer {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    background: #fff;
    padding: 30px 0;
  }
  .frrn_footer_inr {
    display: flex;
    justify-content: space-between;
    align-items: center;
    column-gap: 20px;
    max-width: 980px;
    width: 98%;
  }
  .frrn_footer_tx {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
  }
  .frrn_footer_tx ul {
    display: flex;
  }
  .frrn_footer_tx ul li:not(:last-of-type) {
    margin-right: 1em;
  }
  .frrn_footer_copy {
    margin-top: 30px;
  }
  .frrn_footer_sns {
    display: flex;
    justify-content: flex-end;
    column-gap: 10px;
    flex-grow: 2;
  }
  .frrn_footer_sns li {
    width: 50px;
    transition: 0.3s all;
  }
  .frrn_footer_sns li:hover {
    opacity: 0.7;
  }
  .frrn_footer_logo {
    width: 173px;
    transition: 0.3s all;
  }
  .frrn_footer_logo:hover {
    opacity: 0.7;
  }
}
/* SP
-------------------------------------------- */
@media screen and (max-width: 900px) {
  .pc {
    display: none;
  }

  .frrn {
    position: relative;
    font-size: 3.2vw;
    font-family: 'Noto Sans JP', sans-serif;
    font-feature-settings: "palt";
    overflow: hidden;
  }
  .frrn img {
    width: 100%;
    height: auto;
    image-rendering: -webkit-optimize-contrast;
  }
  .frrn a {
    text-decoration: underline;
  }
  .frrn_header {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ff0001;
    width: 100%;
    height: 13.3333333333vw;
    position: fixed;
    z-index: 99;
  }
  .frrn_header_inr {
    width: 98%;
  }
  .frrn_header_logo {
    width: 11.6vw;
  }
  .frrn_header_menu {
    width: 9.6vw;
    height: 6.4vw;
    position: fixed;
    top: calc(6.6666666667vw - 3.2vw);
    right: 3.3333333333vw;
    padding: 0;
    cursor: pointer;
  }
  .frrn_header_menu .menu-bar {
    width: 9.6vw;
    height: 1.0666666667vw;
    background: #fff;
    border-radius: 0.5333333333vw;
    position: absolute;
    transition: all 0.3s;
  }
  .frrn_header_menu .menu-bar:first-of-type {
    margin-top: 0;
  }
  .frrn_header_menu .menu-bar:nth-of-type(2) {
    margin-top: 2.9333333333vw;
  }
  .frrn_header_menu .menu-bar:last-of-type {
    margin-top: 5.8666666667vw;
  }
  .frrn_header_menu.active .menu-bar:first-of-type {
    transform: rotate(45deg);
    margin-top: 2.6666666667vw;
  }
  .frrn_header_menu.active .menu-bar:nth-of-type(2) {
    opacity: 0;
  }
  .frrn_header_menu.active .menu-bar:last-of-type {
    transform: rotate(-45deg);
    margin-top: 2.6666666667vw;
  }
  .frrn_header_navi {
    opacity: 0;
    transform: translateZ(0);
    transition: 0.3s all;
    position: fixed;
    width: 100%;
    top: 13.3333333333vw;
    background: #ffd900 url("../img/bg.png");
  }
  .frrn_header_navi.active {
    opacity: 1;
    transition: 0.3s all;
  }
  .frrn_header_navi ul {
    padding: 2.6666666667vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.3333333333vw;
  }
  .frrn_header_navi ul li {
    width: 41.3333333333vw;
  }
  .frrn_wrap {
    margin-top: 13.3333333333vw;
  }
  .frrn_main {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ffd900;
    margin: 0;
    padding: 4.6666666667vw 0 3.3333333333vw;
    line-height: 0;
  }
  .frrn_main img {
    width: 97.3333333333vw;
  }
  .frrn_ex {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.3333333333vw;
    padding: 4vw 0;
    line-height: 0;
  }
  .frrn_ex li {
    width: 92vw;
  }
  .frrn_contents {
    background: #ffd900 url("../img/bg.png");
    padding: 40px 0 100px;
  }
  .frrn_navi {
    display: none;
  }
  .frrn_post {
    box-sizing: border-box;
    width: 97.3333333333vw;
    margin: 1.3333333333vw auto 0;
    padding: 0.5333333333vw;
    background: #fff;
    border-radius: 4vw;
    position: relative;
  }
  .frrn_post::before {
    content: "";
    width: 100%;
    height: 30.5333333333vw;
    background: url("../img/post_ttl_bg_sp.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_post_inr {
    border: 0.1333333333vw solid #ffe133;
    border-radius: 4vw;
    padding-bottom: 4vw;
  }
  .frrn_post_ttl {
    display: flex;
    justify-content: center;
    padding: 4vw 0 8vw;
    line-height: 0;
    position: relative;
    z-index: 1;
  }
  .frrn_post_ttl img {
    width: 88.2666666667vw;
  }
  .frrn_post_date {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .frrn_post_date_ttl {
    display: flex;
    justify-content: center;
    width: 90.4vw;
    padding-bottom: 1.3333333333vw;
    border-bottom: 0.1333333333vw solid #ffe133;
    position: relative;
    line-height: 0;
  }
  .frrn_post_date_ttl img {
    width: 20.9333333333vw;
  }
  .frrn_post_date_ttl::before {
    content: "";
    width: 5.0666666667vw;
    height: 3.7333333333vw;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    bottom: -1.8666666667vw;
  }
  .frrn_post_date_ttl::after {
    content: "";
    width: 5.0666666667vw;
    height: 3.7333333333vw;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    right: 0;
    bottom: -1.8666666667vw;
    transform: scale(-1, 1);
  }
  .frrn_post_date_time {
    width: 81.8666666667vw;
    margin-top: 2.6666666667vw;
  }
  .frrn_post_item {
    margin-top: 6.6666666667vw;
    position: relative;
  }
  .frrn_post_item_ttl {
    width: 66.9333333333vw;
    margin: 0 auto;
  }
  .frrn_post_item_limit {
    width: 21.4666666667vw;
    position: absolute;
    top: 6.6666666667vw;
    left: 0.6666666667vw;
  }
  .frrn_post_item_img {
    display: flex;
    justify-content: center;
    margin-top: 1.3333333333vw;
  }
  .frrn_post_item_img img {
    width: 91.4666666667vw;
  }
  .frrn_post_item figcaption {
    margin-top: 1.3333333333vw;
    text-align: center;
  }
  .frrn_post_item ul.caut {
    margin: 1em;
  }
  .frrn_post_flow {
    box-sizing: border-box;
    width: 94.6666666667vw;
    margin: 5.3333333333vw auto 0;
    padding-bottom: 5.3333333333vw;
    border: 0.1333333333vw solid #18a4b0;
    border-radius: 4vw;
  }
  .frrn_post_flow_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 4vw;
    border-top-right-radius: 4vw;
    background: #18a4b0;
    height: 10.6666666667vw;
  }
  .frrn_post_flow_ttl img {
    width: 38.4vw;
  }
  .frrn_post_flow_step li.ico {
    position: relative;
  }
  .frrn_post_flow_step li.ico::before {
    content: "";
    width: 85.3333333333vw;
    height: 8vw;
    position: absolute;
    top: 0;
    left: calc(50% - calc(85.3333333333vw / 2));
  }
  .frrn_post_flow_step li.ico .tx {
    margin: 0 auto;
  }
  .frrn_post_flow_step li.ico .img {
    margin: 4vw auto 0;
  }
  .frrn_post_flow_step li.ico .btn {
    position: relative;
    line-height: 0;
  }
  .frrn_post_flow_step li.ico .btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
  }
  .frrn_post_flow_step li.ico .btn::after {
    content: "";
    width: 3.2vw;
    height: 3.2vw;
    background: url("../img/ico_blank.png") no-repeat;
    background-size: contain;
    position: absolute;
    right: 2.6666666667vw;
    top: calc(50% - calc(3.2vw / 2));
  }
  .frrn_post_flow_step li.ico:first-of-type {
    margin-top: 4vw;
    padding-top: 10.6666666667vw;
  }
  .frrn_post_flow_step li.ico:first-of-type::before {
    background: url("../img/post_step1_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_post_flow_step li.ico:first-of-type .tx {
    width: 64.8vw;
  }
  .frrn_post_flow_step li.ico:first-of-type .img {
    width: 86.2666666667vw;
    padding-left: 6.9333333333vw;
  }
  .frrn_post_flow_step li.ico:first-of-type .btn {
    width: 64.2666666667vw;
    height: 9.3333333333vw;
    margin: 4vw auto 0;
    border-radius: 4.6666666667vw;
    background: #000;
  }
  .frrn_post_flow_step li.ico:first-of-type .btn img {
    width: 42.9333333333vw;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) {
    margin-top: 8vw;
    padding-top: 10.6666666667vw;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2)::before {
    background: url("../img/post_step2_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) .tx {
    width: 46.6666666667vw;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) .img {
    width: 24.8vw;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) .btn {
    width: 50.9333333333vw;
    height: 9.3333333333vw;
    margin: 4vw auto 0;
    border-radius: 4.6666666667vw;
    background: #000;
  }
  .frrn_post_flow_step li.ico:nth-of-type(2) .btn img {
    width: 28.8vw;
  }
  .frrn_post_flow_step li.ico:last-of-type {
    margin-top: 8vw;
    padding-top: 10.6666666667vw;
  }
  .frrn_post_flow_step li.ico:last-of-type::before {
    background: url("../img/post_step3_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_post_flow_step li.ico:last-of-type .tx {
    max-width: 53.4666666667vw;
  }
  .frrn_post_flow_requirements {
    width: 88vw;
    margin: 13.3333333333vw auto 0;
  }
  .frrn_post_flow_requirements_ttl {
    width: 19.6vw;
    margin: 0 auto 2.6666666667vw;
  }
  .frrn_post_flow_requirements_conte {
    height: 66.6666666667vw;
    overflow-y: scroll;
    padding: 0 0 2.6666666667vw;
  }
  .frrn_post_flow_requirements_conte strong {
    display: block;
  }
  .frrn_post_flow_requirements_conte strong.nm {
    font-size: 1.1em;
  }
  .frrn_post_flow_requirements_conte strong.hd1 {
    margin-top: 2em;
  }
  .frrn_post_flow_requirements_conte strong.hd2 {
    margin-top: 1em;
  }
  .frrn_post_flow_requirements_conte ul.dot li {
    padding-left: 0.5em;
    text-indent: -0.5em;
  }
  .frrn_post_flow_requirements_conte ul.caut li {
    padding-left: 1em;
    text-indent: -1em;
  }
  .frrn_post_flow_requirements_conte a {
    text-decoration: underline;
  }
  .frrn_card {
    box-sizing: border-box;
    width: 97.3333333333vw;
    margin: 8vw auto 0;
    padding: 0.5333333333vw;
    background: #fff;
    border-radius: 4vw;
    position: relative;
  }
  .frrn_card::before {
    content: "";
    width: 100%;
    height: 35.8666666667vw;
    background: url("../img/card_ttl_bg_sp.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_card_inr {
    border: 0.1333333333vw solid #ffe133;
    border-radius: 4vw;
    padding-bottom: 4vw;
  }
  .frrn_card_ttl {
    display: flex;
    justify-content: center;
    padding: 4vw 0 8vw;
    line-height: 0;
    position: relative;
    z-index: 1;
  }
  .frrn_card_ttl img {
    width: 76.1333333333vw;
  }
  .frrn_card_date {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .frrn_card_date_ttl {
    display: flex;
    justify-content: center;
    width: 90.4vw;
    padding-bottom: 1.3333333333vw;
    border-bottom: 0.1333333333vw solid #ffe133;
    position: relative;
    line-height: 0;
  }
  .frrn_card_date_ttl img {
    width: 10.1333333333vw;
  }
  .frrn_card_date_ttl::before {
    content: "";
    width: 5.0666666667vw;
    height: 3.7333333333vw;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    bottom: -1.8666666667vw;
  }
  .frrn_card_date_ttl::after {
    content: "";
    width: 5.0666666667vw;
    height: 3.7333333333vw;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    right: 0;
    bottom: -1.8666666667vw;
    transform: scale(-1, 1);
  }
  .frrn_card_date_time {
    width: 64.4vw;
    margin-top: 2.6666666667vw;
  }
  .frrn_card_item {
    margin-top: 6.6666666667vw;
    position: relative;
  }
  .frrn_card_item_ttl {
    width: 87.3333333333vw;
    margin: 0 auto;
  }
  .frrn_card_item_img {
    width: 78.9333333333vw;
    margin: 1.3333333333vw auto 0;
  }
  .frrn_card_flow {
    box-sizing: border-box;
    width: 94.6666666667vw;
    margin: 5.3333333333vw auto 0;
    padding-bottom: 5.3333333333vw;
    border: 0.1333333333vw solid #18a4b0;
    border-radius: 4vw;
  }
  .frrn_card_flow_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 4vw;
    border-top-right-radius: 4vw;
    background: #18a4b0;
    height: 10.6666666667vw;
  }
  .frrn_card_flow_ttl img {
    width: 38.4vw;
  }
  .frrn_card_flow_ex {
    width: 80.5333333333vw;
    margin: 4vw auto 0;
  }
  .frrn_card_flow_item {
    margin-top: 5.3333333333vw;
  }
  .frrn_card_flow_item dt {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 26.6666666667vw;
    height: 8vw;
    margin: 0 auto;
    background: #000;
    border-radius: 4vw;
  }
  .frrn_card_flow_item dt img {
    width: 16vw;
  }
  .frrn_card_flow_item dd {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.6666666667vw;
  }
  .frrn_card_flow_item dd p {
    width: 85.7333333333vw;
  }
  .frrn_card_flow_item dd ul {
    display: flex;
    justify-content: center;
    gap: 1.3333333333vw;
  }
  .frrn_card_flow_item dd ul li {
    width: 30.2666666667vw;
  }
  .frrn_card_flow_item dd ul li figcaption {
    margin-top: 1.3333333333vw;
    text-align: center;
  }
  .frrn_card_flow ul.caut {
    margin: 1em 1em 0;
  }
  .frrn_recipe {
    box-sizing: border-box;
    width: 97.3333333333vw;
    margin: 8vw auto 0;
    padding: 0.5333333333vw;
    background: #fff;
    border-radius: 4vw;
    position: relative;
  }
  .frrn_recipe_inr {
    border: 0.1333333333vw solid #ffe133;
    border-radius: 4vw;
    padding-bottom: 4vw;
  }
  .frrn_recipe_ttl {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 89.0666666667vw;
    margin: 0 auto;
    padding: 4vw 0;
    border-bottom: 0.1333333333vw solid #ffe133;
    position: relative;
    line-height: 0;
  }
  .frrn_recipe_ttl::before {
    content: "";
    width: 5.0666666667vw;
    height: 3.7333333333vw;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    bottom: -1.8666666667vw;
  }
  .frrn_recipe_ttl::after {
    content: "";
    width: 5.0666666667vw;
    height: 3.7333333333vw;
    background: url("../img/kazari.png") no-repeat;
    background-size: contain;
    position: absolute;
    right: 0;
    bottom: -1.8666666667vw;
    transform: scale(-1, 1);
  }
  .frrn_recipe_ttl p:first-of-type {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 92vw;
    height: 8vw;
    border-radius: 4vw;
    background: #67bfc6;
  }
  .frrn_recipe_ttl p:first-of-type img {
    width: 82.9333333333vw;
  }
  .frrn_recipe_ttl p:last-of-type {
    margin-top: 2.6666666667vw;
    width: 74.8vw;
  }
  .frrn_recipe_frieren {
    margin-top: 5.3333333333vw;
    position: relative;
  }
  .frrn_recipe_frieren::before {
    content: "";
    width: 29.3333333333vw;
    height: 25.4666666667vw;
    background: url("../img/recipe_frieren_sp.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 2.6666666667vw;
    left: 0;
  }
  .frrn_recipe_frieren_ttl {
    width: 64.2666666667vw;
    margin-left: 29.3333333333vw;
  }
  .frrn_recipe_frieren_img {
    width: 92vw;
    margin: 1.3333333333vw auto 0;
  }
  .frrn_recipe_frieren_material {
    box-sizing: border-box;
    width: 92vw;
    margin: 5.3333333333vw auto 0;
    padding: 2.6666666667vw;
    border: 0.2666666667vw dashed #18a4b0;
    background: #f7f7f1;
    border-radius: 4vw;
    position: relative;
  }
  .frrn_recipe_frieren_material::after {
    content: "";
    width: 29.4666666667vw;
    height: 29.4666666667vw;
    background: url("../img/recipe_soi_sp.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 2.6666666667vw;
    right: 2.6666666667vw;
  }
  .frrn_recipe_frieren_material p:first-of-type {
    font-weight: bold;
  }
  .frrn_recipe_frieren_material p:last-of-type {
    margin-top: 1em;
  }
  .frrn_recipe_frieren_cooking {
    box-sizing: border-box;
    width: 92vw;
    margin: 5.3333333333vw auto 0;
    padding-bottom: 5.3333333333vw;
    border: 0.1333333333vw solid #18a4b0;
    border-radius: 4vw;
  }
  .frrn_recipe_frieren_cooking_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 4vw;
    border-top-right-radius: 4vw;
    background: #18a4b0;
    height: 10.6666666667vw;
  }
  .frrn_recipe_frieren_cooking_ttl img {
    width: 30.4vw;
  }
  .frrn_recipe_frieren_cooking_flw {
    margin: 2.6666666667vw;
  }
  .frrn_recipe_frieren_cooking_flw li {
    position: relative;
    background: url("../img/cooking_line_sp.png") no-repeat;
    background-size: calc(100% - 10.6666666667vw) auto;
    background-position: right 4vw;
  }
  .frrn_recipe_frieren_cooking_flw li::before {
    content: "";
    width: 9.4666666667vw;
    height: 9.4666666667vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_recipe_frieren_cooking_flw li p:first-of-type {
    padding: 10.6666666667vw 1.3333333333vw 0;
  }
  .frrn_recipe_frieren_cooking_flw li:first-of-type {
    padding-bottom: 50.6666666667vw;
  }
  .frrn_recipe_frieren_cooking_flw li:first-of-type::before {
    background: url("../img/cooking_no1_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_frieren_cooking_flw li:first-of-type p:last-of-type {
    width: 98.4vw;
    position: absolute;
    top: 40vw;
    left: calc(50% - calc(98.4vw / 2));
  }
  .frrn_recipe_frieren_cooking_flw li:nth-of-type(2) {
    padding-bottom: 37.3333333333vw;
  }
  .frrn_recipe_frieren_cooking_flw li:nth-of-type(2)::before {
    background: url("../img/cooking_no2_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_frieren_cooking_flw li:nth-of-type(2) p:last-of-type {
    width: 90vw;
    position: absolute;
    top: 26.6666666667vw;
    left: calc(50% - calc(90vw / 2));
  }
  .frrn_recipe_frieren_cooking_flw li:nth-of-type(3)::before {
    background: url("../img/cooking_no3_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_frieren_cooking_flw li:nth-of-type(3) p:last-of-type {
    width: 92.5333333333vw;
    margin: 2.6666666667vw auto 0;
  }
  .frrn_recipe_frieren_cooking_flw li:last-of-type {
    padding-bottom: 50.6666666667vw;
  }
  .frrn_recipe_frieren_cooking_flw li:last-of-type::before {
    background: url("../img/cooking_no4_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_frieren_cooking_flw li:last-of-type p:last-of-type {
    width: 91.8666666667vw;
    position: absolute;
    top: 26.6666666667vw;
    left: calc(50% - calc(91.8666666667vw / 2));
  }
  .frrn_recipe_fern {
    margin-top: 8vw;
    position: relative;
  }
  .frrn_recipe_fern::before {
    content: "";
    width: 28.5333333333vw;
    height: 27.3333333333vw;
    background: url("../img/recipe_fern_sp.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 1.3333333333vw;
    right: 0;
  }
  .frrn_recipe_fern_ttl {
    width: 63.7333333333vw;
    margin-left: 1.3333333333vw;
  }
  .frrn_recipe_fern_img {
    width: 92vw;
    margin: 1.3333333333vw auto 0;
  }
  .frrn_recipe_fern_material {
    box-sizing: border-box;
    width: 92vw;
    margin: 5.3333333333vw auto 0;
    padding: 2.6666666667vw;
    border: 0.2666666667vw dashed #18a4b0;
    background: #f7f7f1;
    border-radius: 4vw;
    position: relative;
  }
  .frrn_recipe_fern_material::after {
    content: "";
    width: 29.4666666667vw;
    height: 29.4666666667vw;
    background: url("../img/recipe_miso_sp.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 2.6666666667vw;
    right: 2.6666666667vw;
  }
  .frrn_recipe_fern_material p:first-of-type {
    font-weight: bold;
  }
  .frrn_recipe_fern_material p:last-of-type {
    margin-top: 1em;
  }
  .frrn_recipe_fern_cooking {
    box-sizing: border-box;
    width: 92vw;
    margin: 5.3333333333vw auto 0;
    padding-bottom: 5.3333333333vw;
    border: 0.1333333333vw solid #18a4b0;
    border-radius: 4vw;
  }
  .frrn_recipe_fern_cooking_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 4vw;
    border-top-right-radius: 4vw;
    background: #18a4b0;
    height: 10.6666666667vw;
  }
  .frrn_recipe_fern_cooking_ttl img {
    width: 30.4vw;
  }
  .frrn_recipe_fern_cooking_flw {
    margin: 2.6666666667vw;
  }
  .frrn_recipe_fern_cooking_flw li {
    position: relative;
    background: url("../img/cooking_line_sp.png") no-repeat;
    background-size: calc(100% - 10.6666666667vw) auto;
    background-position: right 4vw;
  }
  .frrn_recipe_fern_cooking_flw li::before {
    content: "";
    width: 9.4666666667vw;
    height: 9.4666666667vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_recipe_fern_cooking_flw li p:first-of-type {
    padding: 10.6666666667vw 1.3333333333vw 0;
  }
  .frrn_recipe_fern_cooking_flw li:first-of-type {
    padding-bottom: 50.6666666667vw;
  }
  .frrn_recipe_fern_cooking_flw li:first-of-type::before {
    background: url("../img/cooking_no1_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_fern_cooking_flw li:first-of-type p:first-of-type span {
    display: inline-block;
    padding-left: 0.5em;
    text-indent: -0.5em;
  }
  .frrn_recipe_fern_cooking_flw li:first-of-type p:last-of-type {
    width: 98.1333333333vw;
    position: absolute;
    top: 33.3333333333vw;
    left: calc(50% - calc(98.1333333333vw / 2));
  }
  .frrn_recipe_fern_cooking_flw li:nth-of-type(2) {
    padding-bottom: 42.6666666667vw;
  }
  .frrn_recipe_fern_cooking_flw li:nth-of-type(2)::before {
    background: url("../img/cooking_no2_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_fern_cooking_flw li:nth-of-type(2) p:last-of-type {
    width: 97.0666666667vw;
    position: absolute;
    top: 24vw;
    left: calc(50% - calc(97.0666666667vw / 2));
  }
  .frrn_recipe_fern_cooking_flw li:last-of-type {
    padding-bottom: 46.6666666667vw;
  }
  .frrn_recipe_fern_cooking_flw li:last-of-type::before {
    background: url("../img/cooking_no3_sp.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_fern_cooking_flw li:last-of-type p:last-of-type {
    width: 93.8666666667vw;
    position: absolute;
    top: 24vw;
    left: calc(50% - calc(93.8666666667vw / 2) - 3vw);
  }
  .frrn_recipe_stark {
    margin-top: 8vw;
    position: relative;
  }
  .frrn_recipe_stark::before {
    content: "";
    width: 27.7333333333vw;
    height: 29.7333333333vw;
    background: url("../img/recipe_stark_sp.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 2.6666666667vw;
    left: 1.3333333333vw;
  }
  .frrn_recipe_stark_ttl {
    width: 65.0666666667vw;
    margin-left: 29.3333333333vw;
  }
  .frrn_recipe_stark_img {
    max-width: 752px;
    width: 98%;
    margin: 10px auto 0;
  }
  .frrn_recipe_stark_material {
    box-sizing: border-box;
    width: 92vw;
    margin: 5.3333333333vw auto 0;
    padding: 2.6666666667vw;
    border: 0.2666666667vw dashed #18a4b0;
    background: #f7f7f1;
    border-radius: 4vw;
    position: relative;
  }
  .frrn_recipe_stark_material::after {
    content: "";
    width: 29.4666666667vw;
    height: 29.4666666667vw;
    background: url("../img/recipe_sio_sp.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: 2.6666666667vw;
    right: 2.6666666667vw;
  }
  .frrn_recipe_stark_material p:first-of-type {
    font-weight: bold;
  }
  .frrn_recipe_stark_material p:last-of-type {
    margin-top: 1em;
  }
  .frrn_recipe_stark_cooking {
    box-sizing: border-box;
    width: 92vw;
    margin: 5.3333333333vw auto 0;
    padding-bottom: 5.3333333333vw;
    border: 0.1333333333vw solid #18a4b0;
    border-radius: 4vw;
  }
  .frrn_recipe_stark_cooking_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top-left-radius: 4vw;
    border-top-right-radius: 4vw;
    background: #18a4b0;
    height: 10.6666666667vw;
  }
  .frrn_recipe_stark_cooking_ttl img {
    width: 30.4vw;
  }
  .frrn_recipe_stark_cooking_flw {
    margin: 2.6666666667vw;
  }
  .frrn_recipe_stark_cooking_flw li {
    position: relative;
    background: url("../img/cooking_line_sp.png") no-repeat;
    background-size: calc(100% - 10.6666666667vw) auto;
    background-position: right 4vw;
  }
  .frrn_recipe_stark_cooking_flw li::before {
    content: "";
    width: 9.4666666667vw;
    height: 9.4666666667vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  .frrn_recipe_stark_cooking_flw li p:first-of-type {
    padding: 10.6666666667vw 1.3333333333vw 0;
  }
  .frrn_recipe_stark_cooking_flw li:first-of-type::before {
    background: url("../img/cooking_no1.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_stark_cooking_flw li:first-of-type p:last-of-type {
    width: 78.6666666667vw;
    margin: 10px auto 0;
  }
  .frrn_recipe_stark_cooking_flw li:nth-of-type(2)::before {
    background: url("../img/cooking_no2.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_stark_cooking_flw li:nth-of-type(2) p:last-of-type {
    width: 81.2vw;
    margin: 10px auto 0;
  }
  .frrn_recipe_stark_cooking_flw li:nth-of-type(3) {
    padding-bottom: 52vw;
  }
  .frrn_recipe_stark_cooking_flw li:nth-of-type(3)::before {
    background: url("../img/cooking_no3.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_stark_cooking_flw li:nth-of-type(3) p:last-of-type {
    width: 94.9333333333vw;
    position: absolute;
    top: 26.6666666667vw;
    left: calc(50% - calc(94.9333333333vw / 2) + 1vw);
  }
  .frrn_recipe_stark_cooking_flw li:last-of-type {
    padding-bottom: 52vw;
  }
  .frrn_recipe_stark_cooking_flw li:last-of-type::before {
    background: url("../img/cooking_no4.png") no-repeat;
    background-size: contain;
  }
  .frrn_recipe_stark_cooking_flw li:last-of-type p:last-of-type {
    width: 90.6666666667vw;
    position: absolute;
    top: 21.3333333333vw;
    left: calc(50% - calc(90.6666666667vw / 2) + 1vw);
  }
  .frrn ul.caut.com {
    margin: 1em;
  }
  .frrn_contact {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2.6666666667vw;
    max-width: 1000px;
    width: 97.3333333333vw;
    height: 82.6666666667vw;
    margin: 13.3333333333vw auto 0;
    background: url("../img/contact_bg_t_sp.png"), url("../img/contact_bg_b_sp.png");
    background-repeat: no-repeat, no-repeat;
    background-position: center top, center bottom;
    background-size: contain;
  }
  .frrn_contact_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 89.3333333333vw;
    height: 14.6666666667vw;
    background: #67bfc6;
    border-radius: 7.3333333333vw;
  }
  .frrn_contact_ttl img {
    width: 77.8666666667vw;
  }
  .frrn_contact_tel {
    width: 63.7333333333vw;
  }
  .frrn_contact_date {
    width: 76.1333333333vw;
  }
  .frrn_contact_post_ex {
    max-width: 88.9333333333vw;
    margin-top: 3.3333333333vw;
    position: relative;
  }
  .frrn_contact_post_ex::before {
    content: "";
    width: 86.9333333333vw;
    height: 1.7333333333vw;
    background: url("../img/contact_line_sp.png") no-repeat;
    background-size: contain;
    position: absolute;
    top: -3.3333333333vw;
    left: calc(50% - calc(86.9333333333vw / 2));
  }
  .frrn_contact_post_mail {
    font-size: 3.7333333333vw;
    font-weight: 500;
    line-height: 1;
  }
  .frrn_contact_post_mail a {
    color: #18a4b0;
    text-decoration: underline;
    font-size: 1.2em;
  }
  .frrn_contact_post_mail a:hover {
    color: #18a4b0;
    text-decoration: none;
  }
  .frrn_contact_post_date {
    max-width: 73.3333333333vw;
    margin-top: 1.3333333333vw;
  }
  .frrn_copy {
    margin-top: 13.3333333333vw;
    font-size: 2.6666666667vw;
    text-align: center;
  }
  .frrn_sns {
    display: flex;
    justify-content: center;
    column-gap: 4vw;
    margin-top: 13.3333333333vw;
  }
  .frrn_sns li {
    width: 16.2666666667vw;
  }
  .frrn_pagetop {
    width: 15.7333333333vw;
    position: fixed;
    right: 1.3333333333vw;
    bottom: 1.3333333333vw;
    z-index: 99;
    line-height: 0;
  }
  .frrn_footer {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    background: #fff;
    padding: 4vw 0;
  }
  .frrn_footer_inr {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    width: 98%;
  }
  .frrn_footer_tx {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .frrn_footer_tx ul {
    display: flex;
    font-size: 3.2vw;
  }
  .frrn_footer_tx ul li:not(:last-of-type) {
    margin-right: 1em;
  }
  .frrn_footer_copy {
    margin-top: 4vw;
  }
  .frrn_footer_sns {
    display: flex;
    column-gap: 6.6666666667vw;
    margin-top: 4vw;
  }
  .frrn_footer_sns li {
    width: 13.3333333333vw;
  }
  .frrn_footer_logo {
    width: 46.1333333333vw;
    margin-top: 4vw;
  }
}
