.hf-main-title__text, .hf-check-layout {
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/*===============================
    Header
================================*/
.hf-header {
  padding-top: 3px;
  padding-bottom: 3px; }
  @media all and (min-width: 769px) {
    .hf-header {
      padding-top: 10px;
      padding-bottom: 10px; } }
  @media all and (min-width: 981px) {
    .hf-header {
      border-bottom: 1px solid #efefef; } }

@media all and (min-width: 769px) {
  .hf-header-bar {
    max-width: 1210px; } }

@media all and (max-width: 768px) {
  .hf-header-bar__logo {
    padding-left: 25px; } }

/*===============================
    Layout
================================*/
.hf-base-layout {
  padding-right: 15px;
  padding-left: 15px; }
  @media all and (min-width: 769px) {
    .hf-base-layout {
      max-width: 1180px; } }

.hf-main {
  padding-top: 0;
  margin-top: 0; }

.hf-text {
  font-size: 1.4rem;
  line-height: 2;
  margin: 0; }
  @media all and (min-width: 769px) {
    .hf-text {
      font-size: 1.6rem; } }
  .hf-text--small {
    font-size: 1.3rem; }
    @media all and (min-width: 769px) {
      .hf-text--small {
        font-size: 1.4rem; } }

/*===============================
    Main Title
================================*/
.hf-main-title {
  padding: 35px 0;
  margin: 0;
  text-align: center; }
  @media all and (min-width: 769px) {
    .hf-main-title {
      padding: 60px 0; } }
  .hf-main-title__logo {
    max-width: 280px;
    vertical-align: bottom; }
    @media all and (min-width: 769px) {
      .hf-main-title__logo {
        max-width: 390px; } }
  .hf-main-title__text {
    display: block;
    padding-top: 20px;
    font-size: 1.5rem;
    color: #eb6d73;
    text-align: center; }
    @media all and (min-width: 769px) {
      .hf-main-title__text {
        font-size: 2rem; } }

/*===============================
    MinnanoRecipe
================================*/
.hf-recipe-strip {
  padding: 40px 0;
  background-color: #fcedf1; }
  @media all and (min-width: 769px) {
    .hf-recipe-strip {
      padding: 70px 0; } }

.hf-search-box {
  background-color: #fff;
  margin-top: 30px; }
  @media all and (min-width: 769px) {
    .hf-search-box {
      margin-top: 40px; } }
  .hf-search-box__title {
    text-align: center;
    font-weight: bold;
    color: #eb6d73;
    font-size: 1.6rem;
    padding: 18px 1rem 14px;
    margin: 0; }
    @media all and (min-width: 769px) {
      .hf-search-box__title {
        font-size: 2rem;
        padding: 23px 1rem; } }
  .hf-search-box__contents {
    padding: 38px calc(25/375*100%) 25px;
    border-top: solid 1px #FCEDF1; }
    @media all and (min-width: 769px) {
      .hf-search-box__contents {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        padding: 48px 1rem 50px; } }

.hf-radio-box {
  width: 100%;
  padding: 36px 1rem 25px;
  border: 1px solid #EB6D73;
  border-radius: 10px;
  position: relative; }
  @media all and (min-width: 769px) {
    .hf-radio-box {
      max-width: 300px;
      padding: 40px 1rem 40px; } }
  .hf-radio-box + .hf-radio-box {
    margin: 75px 0 0; }
    @media all and (min-width: 769px) {
      .hf-radio-box + .hf-radio-box {
        margin: 0 0 0 72px; } }
    .hf-radio-box + .hf-radio-box::before, .hf-radio-box + .hf-radio-box::after {
      content: "";
      width: 1px;
      height: 22px;
      background-color: #EB6D73;
      position: absolute;
      top: -48px;
      left: 50%; }
      @media all and (min-width: 769px) {
        .hf-radio-box + .hf-radio-box::before, .hf-radio-box + .hf-radio-box::after {
          top: 50%;
          left: -36px; } }
    .hf-radio-box + .hf-radio-box::before {
      -webkit-transform: translateX(-50%) rotate(45deg);
              transform: translateX(-50%) rotate(45deg); }
      @media all and (min-width: 769px) {
        .hf-radio-box + .hf-radio-box::before {
          -webkit-transform: translateY(-50%) rotate(45deg);
                  transform: translateY(-50%) rotate(45deg); } }
    .hf-radio-box + .hf-radio-box::after {
      -webkit-transform: translateX(-50%) rotate(-45deg);
              transform: translateX(-50%) rotate(-45deg); }
      @media all and (min-width: 769px) {
        .hf-radio-box + .hf-radio-box::after {
          -webkit-transform: translateY(-50%) rotate(-45deg);
                  transform: translateY(-50%) rotate(-45deg); } }
  .hf-radio-box__title {
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 1.5;
    white-space: nowrap;
    color: #eb6d73;
    background-color: #fff;
    padding: 0 1.5rem;
    position: absolute;
    top: -12px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
    @media all and (min-width: 769px) {
      .hf-radio-box__title {
        top: -14px;
        font-size: 1.8rem; } }
  .hf-radio-box__item {
    width: 100%;
    max-width: 110px;
    margin-left: auto;
    margin-right: auto; }
    .hf-radio-box__item + .hf-radio-box__item {
      margin-top: 15px; }
      @media all and (min-width: 769px) {
        .hf-radio-box__item + .hf-radio-box__item {
          margin-top: 14px; } }
    .hf-radio-box__item input[type="radio"] {
      display: none; }
    .hf-radio-box__item label {
      display: inline-block;
      padding-left: 37px;
      position: relative; }
      @media all and (min-width: 769px) {
        .hf-radio-box__item label {
          cursor: pointer; } }
      .hf-radio-box__item label::before, .hf-radio-box__item label::after {
        content: "";
        border-radius: 50%;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%); }
      .hf-radio-box__item label::before {
        display: block;
        width: 22px;
        height: 22px;
        background-color: #E8E8E8;
        left: 0; }
      .hf-radio-box__item label::after {
        display: none;
        width: 12px;
        height: 12px;
        background-color: #EB6D73;
        left: 5px; }
    .hf-radio-box__item input[type="radio"]:checked + label::after {
      display: block; }

.hf-search-result {
  width: 100%;
  margin: 40px auto 0; }
  @media all and (min-width: 769px) {
    .hf-search-result {
      max-width: 950px;
      margin: 70px auto 0; } }

.hf-recipe-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  padding: 0; }
  @media all and (min-width: 769px) {
    .hf-recipe-list {
      max-width: 950px; } }
  .hf-recipe-list__item {
    width: 100%;
    max-width: 450px;
    margin: 0 auto; }
    @media all and (min-width: 769px) {
      .hf-recipe-list__item {
        width: calc(50% - 25px);
        margin: 0; } }
    .hf-recipe-list__item + .hf-recipe-list__item {
      margin-top: 15px; }
      @media all and (min-width: 769px) {
        .hf-recipe-list__item + .hf-recipe-list__item {
          margin-top: 0; } }
    @media all and (min-width: 769px) {
      .hf-recipe-list__item:nth-of-type(2n) {
        margin-left: 50px; } }
    @media all and (min-width: 769px) {
      .hf-recipe-list__item:nth-of-type(n+3) {
        margin-top: 40px; } }

.hf-recipe {
  text-align: center;
  margin: 0; }
  .hf-recipe figcaption {
    font-weight: bold;
    text-align: left;
    font-size: 1.6rem;
    color: #eb6d73;
    margin-bottom: 5px; }
  @media screen and (-webkit-min-device-pixel-ratio: 0) {
    .hf-recipe img {
      image-rendering: -webkit-optimize-contrast;
      image-rendering: crisp-edges; } }

@-moz-document url-prefix() {
  .hf-recipe img {
    image-rendering: auto !important; } }

_::-webkit-full-page-media, _:future, :root .hf-recipe img {
  image-rendering: auto !important; }

/*===============================
    Check Layout
================================*/
.hf-strip--gradient-vertical {
  background: -webkit-gradient(linear, left top, right top, from(#ed86b3), color-stop(50%, #f29a67), to(#ee846d));
  background: linear-gradient(90deg, #ed86b3 0%, #f29a67 50%, #ee846d 100%); }

.hf-check-layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 40px 0; }
  @media all and (max-width: 768px) {
    .hf-check-layout {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  @media all and (min-width: 769px) {
    .hf-check-layout {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 65px 0; } }
  .hf-check-layout__img {
    text-align: center; }
    @media all and (max-width: 768px) {
      .hf-check-layout__img {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; }
        .hf-check-layout__img img {
          width: 170px; } }
    @media all and (min-width: 769px) {
      .hf-check-layout__img {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        padding-right: 60px;
        padding-left: 60px; } }
  .hf-check-layout__box {
    text-align: center;
    background-color: #fff;
    border-radius: 5px; }
    @media all and (max-width: 768px) {
      .hf-check-layout__box {
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
        padding: 35px;
        margin-top: 15px; } }
    @media all and (min-width: 769px) {
      .hf-check-layout__box {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        width: 360px;
        padding: 40px 10px;
        margin: 15px 0;
        border-radius: 10px; } }
  .hf-check-layout__box-text {
    margin-top: 0;
    font-size: 1.4rem;
    text-align: center; }
    @media all and (min-width: 769px) {
      .hf-check-layout__box-text {
        font-size: 1.8rem; } }
  .hf-check-layout .hf-button {
    max-width: 220px; }
    @media all and (min-width: 769px) {
      .hf-check-layout .hf-button {
        margin-top: auto; } }
    .hf-check-layout .hf-button--primary {
      background: #eb6d73 !important;
      -webkit-box-shadow: none;
              box-shadow: none;
      -webkit-transition: 0.25s ease-out;
      transition: 0.25s ease-out;
      -webkit-transition-property: opacity;
      transition-property: opacity; }
      .pc .hf-check-layout .hf-button--primary:hover {
        opacity: .7; }

/*===============================
    Considerations
================================*/
.hf-considerations {
  line-height: 1.75;
  color: #5f5f5f;
  padding-top: 40px;
  margin: 0; }
  @media all and (min-width: 769px) {
    .hf-considerations {
      padding-top: 68px; } }
  .hf-considerations__contents {
    padding: 0;
    margin: 0; }
    .hf-considerations__contents:last-of-type {
      margin-top: 25px; }
      @media all and (min-width: 769px) {
        .hf-considerations__contents:last-of-type {
          margin-top: 30px; } }

/*===============================
    Footer
================================*/
.hf-footer {
  padding-bottom: 40px;
  border-top: 1px solid #efefef;
  margin-top: 40px; }
  @media all and (min-width: 769px) {
    .hf-footer {
      margin-top: 65px; } }
  .hf-footer__logo {
    margin-top: 40px; }
    @media all and (min-width: 769px) {
      .hf-footer__logo {
        margin-top: 60px; } }
    .hf-footer__logo img {
      max-width: 238px; }
  .hf-footer__corporate-name, .hf-footer__member-text, .hf-footer__copyright {
    color: #5f5f5f; }
  .hf-footer__corporate-name {
    margin-top: 35px; }
    @media all and (min-width: 769px) {
      .hf-footer__corporate-name {
        margin-top: 40px; } }
  .hf-footer__copyright {
    margin-top: 15px;
    text-transform: capitalize; }
    @media all and (min-width: 769px) {
      .hf-footer__copyright {
        margin-top: 10px; } }
