@charset "utf-8";

/* ======================================================
 * kraft.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Layout
 * - Page Components
 * PC Media Queries
 * @media only screen and (max-width: 767px)
 * - Layout
 * - Page Components
 * SP Media Queries
 * Print
====================================================== */

/* ======================================================
 * PC
====================================================== */
@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */

  /* ------------------------------------------------------
   * Layout
  ------------------------------------------------------ */
  /* ----- container ----- */
  .container[data-wide="true"] {
    max-width: inherit;
    width: 100%;
  }
  
  /* ----- kraft-inner ----- */
  .kraft-inner {
    max-width: 1200px;
    margin: 0 auto;
  }
  
  /* ------------------------------------------------------
   * Page Components
  ------------------------------------------------------ */
  /* ----- kraft-heading ----- */
  .kraft-heading-lv3 {
    margin-bottom: 30px;
  }
  .kraft-heading-lv3 .heading_title {
    text-align: center;
  }
  .kraft-heading-lv3 .heading_title > img {
    width: auto;
    height: 25px;
  }
  
  /* ----- kraft-hero-layout ----- */
  .kraft-hero-layout {
    margin-top: 40px;
  }
  
  /* ----- kraft-box-layout ----- */
  .kraft-box-layout {
    margin: 60px -40px;
    padding: 76px 0;
    background: url(/sp/kraft/img/kraft_bg01.png) repeat;
  }
  .kraft-box-layout .kraft-inner {
    padding: 0 40px;
  }
  .kraft-box-layout .kraft_box_title {
    text-align: center;
  }
  .kraft-box-layout .kraft_box_title > img {
    width: auto;
    height: 65px;
  }
  .kraft-box-layout .kraft_box_detail {
    text-align: center;
  }
  .kraft-box-layout .kraft_box_detail p {
    line-height: 2.2;
    letter-spacing: .15em;
  }
  .kraft-box-layout .kraft_box_title + .kraft_box_detail {
    margin-top: 36px;
  }
  
  /* ----- kraft-layout ----- */
  [class^="kraft-layout"] > *:first-child {
    margin-top: 0;
  }
  .kraft-layout + .kraft-layout {
    margin-top: 60px;
    padding-top: 53px;
    border-top: 1px solid #515151;
  }
  .kraft-layout-v2 {
    margin-top: 54px;
    padding-top: 60px;
    border-top: 1px solid #bababa;
  }
  
  /* ----- kraft-heading-layout ----- */
  .kraft-heading-layout > *:first-child {
    margin-top: 0;
  }
  .kraft-heading-layout {
    margin-bottom: 60px;
  }
  .kraft-heading-layout p {
    line-height: 2.2;
    letter-spacing: .15em;
  }
  
  /* ----- kraft-note-area ----- */
  .kraft-note-area {
    margin-top: 60px;
  }
  
  /* ----- image-set ----- */
  .image-set + .image-set {
    margin-top: 36px;
  }
  .image-set .kraft_image_caption {
    margin-top: 20px;
    font-size: 1.6rem;
    line-height: 1.7;
  }
  .image-set .kraft_image_caption > span {
    display: block;
    margin-bottom: 8px;
  }
  
  /* ----- kraft-text ----- */
  .kraft-text {
    margin-top: 32px;
  }
  
  /* ----- kraft-text-lead ----- */
  .kraft-text-lead {
    letter-spacing: .1em;
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 2.0rem;
    font-weight: bold;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}

/* ======================================================
 * PC Media Queries
====================================================== */
@media screen and (min-width: 1921px) {
}
@media screen and (min-width: 768px) and (max-width: 1920px) {
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
}
@media screen and (min-width: 768px) and (max-width: 1080px) {
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
}
@media screen and (min-width: 768px) and (max-width: 960px) {
}


/* ======================================================
 * SP
====================================================== */
@media only screen and (max-width: 767px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  /* ------------------------------------------------------
   * Layout
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Page Components
  ------------------------------------------------------ */
  /* ----- kraft-heading ----- */
  .kraft-heading-lv3 {
    margin-bottom: 30px;
  }
  .kraft-heading-lv3 .heading_title {
    text-align: center;
  }
  .kraft-heading-lv3 .heading_title > img {
    width: auto;
    height: 18px;
  }
  
  /* ----- kraft-hero-layout ----- */
  .kraft-hero-layout {
    margin: 25px -15px;
  }
  
  /* ----- kraft-box-layout ----- */
  .kraft-box-layout {
    margin: 30px -15px;
    padding: 40px 0;
    background: url(/sp/kraft/img/kraft_bg01.png) repeat;
  }
  .kraft-box-layout .kraft-inner {
    padding: 0 15px;
  }
  .kraft-box-layout .kraft_box_title {
    text-align: center;
  }
  .kraft-box-layout .kraft_box_title > img {
    width: auto;
    height: 49px;
  }
  .kraft-box-layout .kraft_box_detail {
    text-align: center;
  }
  .kraft-box-layout .kraft_box_detail p {
    line-height: 1.9;
    letter-spacing: .1em;
  }
  .kraft-box-layout .kraft_box_title + .kraft_box_detail {
    margin-top: 36px;
  }
  
  /* ----- kraft-layout ----- */
  [class^="kraft-layout"] > *:first-child {
    margin-top: 0;
  }
  .kraft-layout + .kraft-layout {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #515151;
  }
  .kraft-layout-v2 {
    margin-top: 24px;
    padding-top: 30px;
    border-top: 1px solid #bababa;
  }
  
  /* ----- kraft-heading-layout ----- */
  .kraft-heading-layout > *:first-child {
    margin-top: 0;
  }
  .kraft-heading-layout {
    margin-bottom: 30px;
  }
  .kraft-heading-layout p {
    line-height: 2.2;
    letter-spacing: .1em;
  }
  
  /* ----- kraft-note-area ----- */
  .kraft-note-area {
    margin-top: 30px;
  }
  
  /* ----- column-layout ----- */
  .column-layout {
    margin-top: 14px;
  }
  
  /* ----- image-set ----- */
  .image-set + .image-set {
    margin-top: 14px;
  }
  .image-set .kraft_image_caption {
    margin-top: 9px;
    font-size: 1.4rem;
    line-height: 1.3;
    letter-spacing: .1em;
  }
  .image-set .kraft_image_caption > span {
    display: block;
    margin-bottom: 8px;
  }
  
  /* ----- kraft-text ----- */
  .kraft-text {
    margin-top: 15px;
  }
  
  /* ----- kraft-text-lead ----- */
  .kraft-text-lead {
    letter-spacing: .1em;
    font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.8rem;
    font-weight: bold;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * SP Media Queries
====================================================== */
/***
@media only screen and (max-width: 360px) {
}
@media only screen and (min-width: 320px) and (max-width: 767px) {
}
@media only screen and (max-width: 736px) {
}
@media only screen and (max-width: 667px) {
}
@media only screen and (max-width: 640px) {
}
@media only screen and (max-width: 568px) {
}
@media only screen and (max-width: 480px) {
}
@media only screen and (max-width: 375px) {
}
@media only screen and (max-width: 360px) {
}
@media only screen and (max-width: 320px) {
}
***/


/* ======================================================
 * Print
====================================================== */
@media print {
  DUMMY {
    width: auto !important;
    margin-left: -9999px !important;
    margin-right: -9999px !important;
  }
}