@charset "UTF-8";
@media screen and (max-width: 768px) {
  a,
  a:link {
    text-decoration: none;
  }
  /* structure
====================================================================================================================================== */
  body {
    min-width: initial;
    min-width: auto;
  }
  #container {
    overflow: hidden;
  }
  .wrapper {
    margin: 0;
    padding: 0 20px;
    width: auto;
  }
  /* common
====================================================================================================================================== */
  /*img*/
  #contents img {
    max-width: 100%;
  }
  /*スタンダード（画像右／左寄せ）*/
  .common_box .img_box {
    margin-right: 0;
    margin-left: 0;
    padding-right: 10px;
    max-width: 30%;
  }
  /*右*/
  .common_box.right .img_box {
    padding-left: 10px;
    padding-right: 0;
  }
  .common_box.right .img_box img {
    max-width: 100%;
  }
  /*100%指定していたimgをautoに戻す*/
  #main .common_box img,
  #main .common_box02 img,
  #main .common_box03 img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: auto;
    max-width: 100%;
  }
  /* header
  ====================================================================================================================================== */
  #header {
    overflow: hidden;
  }
  #header .header_top {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    margin-bottom: 1.5em;
  }
  #header .sns_box {
    top: 10px;
    right: 15px;
  }
  #header .sns_box li {
    width: 35px;
  }
  #header .sns_box li + li {
    margin-left: 8px;
  }
  #header h1 {
    top: 120px;
    right: 0;
    width: 100%;
    text-align: center;
  }
  #header h1 img {
    width: 75%;
    max-width: 460px;
  }
  #header .main_visual .catch {
    bottom: -10px;
    left: 5%;
    width: 53%;
  }
  #header .header_bottom {
    padding-top: 2.3em;
  }
  #header .header_bottom .rhombus01 {
    right: -10%;
    top: -30%;
    width: 43%;
  }
  #header .header_bottom .rhombus02 {
    right: 43%;
    top: 60px;
  }
  #site_title {
    position: static;
    -webkit-transform: none;
    transform: none;
    display: inline-block;
    width: 90px;
  }
  /* contents
  ====================================================================================================================================== */
  #intro_images .ham_image {
    padding-bottom: 3em;
  }
  #intro_images .ham_image .rhombus03 {
    width: 30%;
  }
  #intro_images .ham_image .rhombus03 img {
    width: 100%;
  }
  #intro_images .ham_image img {
    max-width: 290px;
    width: 65%;
  }
  /* 熟成乾塩ベーコン  おいしさの秘密 */
  #secret {
    padding: 3em 0 2em;
  }
  #secret:before, #secret:after {
    content: "";
    height: 3px;
    background-size: auto 3px;
  }
  #secret:before {
    top: -3px;
  }
  #secret:after {
    bottom: -3px;
  }
  #secret .secret_box {
    display: block;
  }
  #secret .secret_box .photo_area {
    width: 100%;
    max-width: 420px;
    margin: 0 auto 1.2em;
  }
  #secret .secret_box .text_area {
    width: auto;
  }
  #secret .secret_box h3 {
    height: 60px;
  }
  #secret .secret_box h3 span:last-child {
    line-height: 60px;
  }
  /* お客様の声 */
  #voice {
    background-size: 800px auto;
    padding: 3em 0 7.5em;
    position: relative;
  }
  #voice:before {
    display: none;
  }
  #voice:after {
    width: 200px;
  }
  #voice h2 {
    text-align: left;
  }
  #voice .voice_wrapper {
    display: block;
    width: 87%;
    margin-left: 0;
  }
  #voice .voice_boxes {
    width: auto;
  }
  #voice .voice_box .prof {
    margin-top: -10px;
    margin-bottom: 0.7em;
    width: 100px;
  }
  #voice .voice_box .prof .icon_prof img {
    width: 75px;
  }
  #voice .voice_box p {
    width: calc(100% - 100px);
    font-size: 0.9375rem;
    line-height: 1.7;
    padding-bottom: 1em;
  }
  #voice .attention {
    text-align: left;
  }
  #voice .cuisine_text {
    bottom: 53px;
    right: 170px;
    width: 160px;
  }
  /* 大山ハム社員直伝！おすすめの食べ方 */
  #recipe {
    padding: 3em 0 5em;
  }
  #recipe .wrapper {
    position: relative;
    z-index: 1;
  }
  #recipe .bg_photo_left_top {
    width: 29.18%;
  }
  #recipe .bg_photo_right_top {
    width: 23.82%;
  }
  #recipe .bg_photo_left_bottom {
    width: 34.36%;
  }
  #recipe .bg_photo_right_bottom {
    width: 42.27%;
  }
  #recipe h2 {
    font-size: 2rem;
    margin-bottom: 1em;
  }
  #recipe .recipe_box .inner {
    padding: 1.3em;
  }
  #recipe .recipe_box .recipe_no {
    top: 20px;
    left: -5px;
    width: 105px;
    height: 28px;
    line-height: 29px;
    font-size: 1rem;
    padding-left: 0.9em;
  }
  #recipe .recipe_box h3 {
    line-height: 1.6em;
    background-size: 480px auto;
  }
  #recipe .recipe_box.recipe04 h3 {
    letter-spacing: 0.05em;
    margin-right: 0;
  }
  #recipe .recipe_box .main_area {
    display: block;
    padding: 1.5em 0 0;
    margin-bottom: 1.2em;
  }
  #recipe .recipe_box .photo_area {
    width: auto;
    margin-bottom: 1em;
  }
  #recipe .recipe_box .photo_area img {
    width: 90%;
  }
  #recipe .recipe_box .text_area {
    width: auto;
    padding-top: 0;
  }
  #recipe .recipe_box .tab_area {
    padding: 0;
  }
  #recipe .recipe_box .tab_area .tab > li a {
    width: 10em;
    font-size: 1.0625rem;
    padding-right: 0.8em;
    background-size: 12px auto;
  }
  #recipe .recipe_box .tab_area .tab > li + li {
    margin-left: 0.8em;
  }
  #recipe .recipe_box .how_to_cook {
    padding: 1.5em 0;
  }
  #recipe .recipe_box .how_to_cook ol {
    padding-left: 1.3em;
  }
  #recipe .recipe_box .ingredients {
    padding: 1.5em 0.5em;
  }
  #recipe .button_area a {
    background-size: 10px auto;
    background-position: right 1em center;
    font-size: 1.2rem;
    width: 100%;
    max-width: 350px;
  }
  .bottom_lead_area .lead_area p {
    margin-top: -14%;
    font-size: 3.6vw;
  }
  .bottom_lead_area .ham_image .image_area img {
    max-width: 290px !important;
    width: 65%;
  }
  /* 大山ハムオンラインショップ 熟成乾塩ベーコン入りの人気セット */
  #online_shop {
    padding: 2.2em 1.7em 2em;
  }
  #online_shop .title_lead {
    margin-bottom: 0.3em;
  }
  #online_shop h2 {
    font-size: 2rem;
    margin-bottom: 0.8em;
  }
  #online_shop .product_box {
    margin-bottom: 1em;
    padding-bottom: 3.7em;
    width: 48%;
  }
  #online_shop .product_box h3 {
    font-size: 1.25rem;
  }
  #online_shop .product_box .product_no p:first-child {
    font-size: 0.8125rem;
  }
  #online_shop .product_box .product_no p:last-child {
    font-size: 0.8125rem;
  }
  #online_shop .product_box .price p:first-child {
    font-size: 1.875rem;
  }
  #online_shop .product_box .price p:last-child {
    font-size: 0.8125rem;
  }
  #online_shop .product_box a.button_cart {
    background-size: 28px auto;
    background-position: left 1em center;
    font-size: 1.1875rem;
    padding: 0.9em 0 0.9em 1.5em;
  }
  /* side_fixed_box
====================================================================================================================================== */
  #side_fixed_box {
    right: 0;
    bottom: 20px;
  }
}

@media screen and (max-width: 540px) {
  body {
    background-size: 500px auto;
  }
  /* header
  ====================================================================================================================================== */
  #header .sns_box {
    top: 10px;
    right: 10px;
  }
  #header .sns_box li {
    width: 30px;
  }
  #header .sns_box li + li {
    margin-left: 6px;
  }
  #header h1 {
    top: 85px;
  }
  #header .main_visual .catch {
    bottom: -10px;
    left: 3%;
    width: 65%;
  }
  #header .header_bottom .rhombus01 {
    right: -10%;
    top: -12%;
    width: 40%;
  }
  #header .header_bottom .rhombus02 {
    right: 35%;
    top: 60px;
    width: 60px;
  }
  #header .scroll_down {
    margin-bottom: 2.7em;
  }
  #header .scroll_down .scroll_button .text {
    font-size: 0.875rem;
    margin-bottom: 0.5em;
  }
  #header .scroll_down .scroll_button .scroll_icon img {
    width: 33px;
  }
  #header .lead {
    font-size: 1rem;
    line-height: 2;
  }
  #site_title {
    width: 70px;
  }
  /* contents
  ====================================================================================================================================== */
  #intro_images {
    padding-top: 1.8em;
  }
  #intro_images .ham_image {
    padding-bottom: 1.9em;
  }
  #intro_images .ham_image .rhombus03 {
    width: 48%;
    left: -10%;
    bottom: -42px;
  }
  #intro_images ul li {
    width: calc((100% - 3px) / 2);
  }
  /* 熟成乾塩ベーコン  おいしさの秘密 */
  #secret {
    padding: 2em 0 1em;
  }
  #secret h2 {
    margin-bottom: 1em;
  }
  #secret h2 br {
    display: block;
  }
  #secret h2 .space {
    display: none;
  }
  #secret .secret_box {
    margin-bottom: 2.5em;
  }
  #secret .secret_box h3 {
    font-size: 1.4rem;
    height: 45px;
    margin-bottom: 0.45em;
  }
  #secret .secret_box h3 span:last-child {
    line-height: 48px;
    margin-left: 0.95em;
  }
  /* お客様の声 */
  #voice {
    background-size: 600px auto;
    padding: 2em 0 8em;
  }
  #voice:after {
    width: 140px;
  }
  #voice h2 {
    font-size: 1.6875rem;
    margin-bottom: 1em;
  }
  #voice .voice_wrapper {
    width: 95%;
  }
  #voice .voice_boxes {
    width: auto;
  }
  #voice .voice_box .prof {
    margin-top: -8px;
    width: 80px;
  }
  #voice .voice_box .prof .icon_prof img {
    width: 60px;
  }
  #voice .voice_box .prof figcaption {
    font-size: 0.875rem;
  }
  #voice .voice_box p {
    width: calc(100% - 80px);
    font-size: 0.875rem;
  }
  #voice .attention {
    font-size: 0.875rem;
  }
  #voice .cuisine_text {
    bottom: 35px;
    right: 120px;
    width: 130px;
  }
  /* 大山ハム社員直伝！おすすめの食べ方 */
  #recipe {
    padding: 2.5em 0 5em;
  }
  #recipe h2 {
    font-size: 1.75rem;
    line-height: 1.5;
  }
  #recipe h2 br.sp_only {
    display: block;
  }
  #recipe h2 .quote:before, #recipe h2 .quote:after {
    display: none;
  }
  #recipe .recipe_box {
    padding: 0.5em;
  }
  #recipe .recipe_box .inner {
    padding: 1.2em;
  }
  #recipe .recipe_box .recipe_no {
    top: 17px;
    left: -5px;
    width: 95px;
    height: 25px;
    line-height: 25px;
    font-size: 0.937rem;
  }
  #recipe .recipe_box h3 {
    font-size: 1.25em;
    background-size: 320px auto;
  }
  #recipe .recipe_box.recipe02 h3 {
    letter-spacing: -0.01em;
  }
  #recipe .recipe_box .text_area p {
    font-size: 1rem;
    line-height: 1.65;
  }
  #recipe .recipe_box .tab_area .tab > li {
    width: 42%;
  }
  #recipe .recipe_box .tab_area .tab > li a {
    width: 100%;
    font-size: 0.9375rem;
    padding-right: 0.8em;
    background-size: 10px auto;
    background-position: right 0.8em center;
  }
  #recipe .recipe_box .tab_area .tab > li + li {
    margin-left: 3%;
  }
  #recipe .recipe_box .how_to_cook {
    padding: 1.3em 0 0.5em;
  }
  #recipe .recipe_box .how_to_cook ol li {
    margin-bottom: 0.45em;
  }
  #recipe .recipe_box .ingredients {
    padding: 1.3em 0.5em 0.5em;
  }
  #recipe .recipe_box .ingredients ul li {
    margin-bottom: 0.3em;
  }
  #recipe .button_area a {
    background-size: 8px auto;
    background-position: right 1em center;
    font-size: 1.125rem;
    max-width: 300px;
  }
  .bottom_lead_area .lead_area .bg_lead {
    width: 146%;
    margin-left: -23%;
  }
  .bottom_lead_area .lead_area p {
    margin-top: -19%;
    font-size: 4.1vw;
  }
  .bottom_lead_area .lead_area p span {
    margin: 0 auto 0.7em;
    padding: 0.5em 0.7em;
  }
  .bottom_lead_area .ham_image p {
    font-size: 1rem;
    margin: 0 -1em;
  }
  /* 大山ハムオンラインショップ 熟成乾塩ベーコン入りの人気セット */
  #online_shop {
    padding: 2em 1.5em 0.5em;
  }
  #online_shop .title_lead {
    font-size: 1.0625rem;
  }
  #online_shop h2 {
    font-size: 1.6875rem;
    margin-bottom: 0.8em;
  }
  #online_shop .products_wrapper {
    display: block;
  }
  #online_shop .product_box {
    margin-bottom: 3em;
    width: auto;
  }
  #online_shop .product_box a.button_cart {
    background-size: 26px auto;
    background-position: left 1.2em center;
    padding: 0.9em 0 0.9em 1em;
  }
  /* footer
  ====================================================================================================================================== */
  #footer .footer_info h3 img {
    width: 250px;
  }
  /* side_fixed_box
====================================================================================================================================== */
  #side_fixed_box .top_page {
    width: 40px;
  }
}

@media screen and (max-width: 320px) {
  .wrapper {
    padding: 0 15px;
  }
  #site_title img {
    width: 75%;
  }
  /* 大山ハム社員直伝！おすすめの食べ方 */
  #recipe .recipe_box h3 {
    background-size: 270px auto;
  }
}
