@charset "utf-8";

/* ======================================================
 * compack.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * PC Media Queries
 * @media only screen and (max-width: 767px)
 * SP Media Queries
 * Print
====================================================== */

/**
 * Noto Sans CJK JP: https://www.google.com/get/noto/#sans-jpan
 * Noto Sans JP: https://fonts.google.com/earlyaccess#Noto+Sans+JP
 */
@font-face {
  font-family: 'Noto Sans CJK JP';
  font-style: normal;
  font-weight: 100;
  src: url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Thin.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Thin.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Thin.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Sans CJK JP';
  font-style: normal;
  font-weight: 300;
  src: url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Light.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Light.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Light.otf) format('opentype');
}
@font-face {
   font-family: 'Noto Sans CJK JP';
   font-style: normal;
   font-weight: 400;
   src: url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format('woff2'),
        url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format('woff'),
        url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format('opentype');
}
@font-face {
   font-family: 'Noto Sans CJK JP';
   font-style: normal;
   font-weight: 500;
   src: url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Medium.woff2) format('woff2'),
        url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Medium.woff) format('woff'),
        url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Medium.otf) format('opentype');
}
@font-face {
   font-family: 'Noto Sans CJK JP';
   font-style: normal;
   font-weight: 700;
   src: url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.woff2) format('woff2'),
        url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.woff) format('woff'),
        url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.otf) format('opentype');
}
@font-face {
   font-family: 'Noto Sans CJK JP';
   font-style: normal;
   font-weight: 900;
   src: url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Black.woff2) format('woff2'),
        url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Black.woff) format('woff'),
        url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Black.otf) format('opentype');
}


/* ======================================================
 * PC
====================================================== */
@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  /* ----- font ----- */
  .hero-layout-v5 .hero_visual .hero_text_area .hero_text,
  .hero-layout-v5 .hero_visual .hero_sub_text,
  .heading-lv2 .heading_title,
  .column-media .column_image .image-set [class*="image_caption"],
  .column-media .column_detail .column-layout .image_caption01,
  .special-compack-column-layout [class*="box-layout"]:not(.box-layout-v5):not(.box-layout-v7):not(.box-layout-v9) > .box_title,
  .special-compack-column-layout .compack_column_item .image-set [class*="image_caption"],
  .special-compack-column-layout.type01 .special-compack-box-layout .box_title_area .box_title {
    font-family: "Noto Sans", "Noto Sans CJK JP", Verdana, Arial, Helvetica, sans-serif;
  }
  .column-media.type-point .column-layout .column_item .image_inner .image_caption {
    font-family: Lato;
  }
   
  /* ----- hero-layout-v5 ----- */
  .hero-layout-v5 .hero_visual {
    position: relative;
  }
  .hero-layout-v5 .hero_visual .hero_text_area {
    position: absolute;
    left: 3.5%;
    top: 50%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    width: 25%;
    padding: 1%;
    background: #ffedfd;
  }
  .hero-layout-v5 .hero_visual .hero_text_area .hero_text {
    color: #5e3498;
    font-size: 2.1rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 1px;
  }
  .hero-layout-v5 .hero_visual .hero_sub_text {
    position: absolute;
    left: 16%;
    top: 27.6%;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 1px;
  }
  
  /* ----- special-compack-column-layout ----- */
  .special-compack-column-layout {
  }
  .special-compack-column-layout .special-compack-box-layout {
    padding: 25px 40px;
  }
  .special-compack-column-layout .special-compack-box-layout .box_title {
    font-size: 2.4rem;
    line-height: 1.6;
    color: #555555;
  }
  .special-compack-column-layout .special-compack-box-layout .box_title .is-strong {
    color: #000000;
  }
  .special-compack-column-layout .compack_column_item .special-compack-box-layout .box_title .is-smaller {
    font-family: Lato;
    color: #555;
  }
  .special-compack-column-layout .box_detail .image-set .image_inner {
    width: 46%;
  }
  .special-compack-column-layout .compack_column_item .image-set {
    position: relative;
  }
  .special-compack-column-layout.type01 .special-compack-box-layout {
    padding: 70px 10%;
    background-color: #f2f2f2;
  }
  .special-compack-column-layout.type01 .special-compack-box-layout .box_title_area {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    height: 100%;
    padding: 30px 40px;
    border: solid 1px #000;
    text-align: center;
  }
  .special-compack-column-layout.type01 .special-compack-box-layout .box_title_area .box_title {
    font-size: 2.8rem;
    line-height: 1.6;
    color: #555;
  }
  .special-compack-column-layout.type01 .special-compack-box-layout .box_title_area .box_title span {
    font-weight: 700;
    color: #000;
  }
  .special-compack-column-layout.type01 .compack_column_item .image-set [class*="image_caption"] {
    position: absolute;
    font-weight: 400;
    font-size: 1.6rem;
  }
  .special-compack-column-layout.type01 .compack_column_item .image-set .image_caption01 {
    right: 26%;
    top: 14%;
  }
  .special-compack-column-layout.type01 .compack_column_item .image-set .image_caption02 {
    left: 30%;
    top: 27%;
  }
  .special-compack-column-layout.type01 .compack_column_item .image-set .image_caption03 {
    left: 30%;
    bottom: 8%;
  }
    
  
  /* ----- column-media ----- */
  .column-media .column_detail .special-point-title .point_label {
    color: #555555;
    font-weight: normal;
  }
  .column-media .column_detail .special-point-title .point_label span {
    color: #000;
    font-weight: 700;
  }
  .column-media.type-point .column-layout[data-row-pc="6"] > * {
    margin-left: 2%;
    width: calc((100% - 10%) / 6);
  }
  .column-media.type-point .column-layout .column_item .image_inner .image_caption {
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.2;
    color: #333;
  }
  

  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * SP
====================================================== */
@media only screen and (max-width: 767px) {
  /* ----- font ----- */
  .hero-layout-v5 .hero_visual .hero_text_area .hero_text,
  .hero-layout-v5 .hero_visual .hero_sub_text,
  .heading-lv2 .heading_title,
  .column-media .column_image .image-set [class*="image_caption"],
  .column-media .column_detail .column-layout .image_caption01,
  .special-compack-column-layout [class*="box-layout"]:not(.box-layout-v5):not(.box-layout-v7):not(.box-layout-v9) > .box_title,
  .special-compack-column-layout .compack_column_item .image-set [class*="image_caption"],
  .special-compack-column-layout.type01 .special-compack-box-layout .box_title_area .box_title {
    font-family: "Noto Sans", "Noto Sans CJK JP", Verdana, Arial, Helvetica, sans-serif;
  }
  .column-media.type-point .column-layout .column_item .image_inner .image_caption {
    font-family: Lato;
  }
   
  /* ----- hero-layout-v5 ----- */
  .hero-layout-v5 .hero_visual {
    position: relative;
  }
  .hero-layout-v5 .hero_visual .hero_text_area {
    position: absolute;
    left: 15%;
    bottom: 7%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    width: 70%;
    padding: 1% 4%;
    background: #ffedfd;
  }
  .hero-layout-v5 .hero_visual .hero_text_area .hero_text {
    color: #5e3498;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
  }
  .hero-layout-v5 .hero_visual .hero_sub_text {
    position: absolute;
    right: 24%;
    bottom: 38%;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 1px;
  }
  
  /* ----- special-compack-column-layout ----- */
  .special-compack-column-layout {
  }
  .special-compack-column-layout .special-compack-box-layout {
    padding: 15px 15px;
  }
  .special-compack-column-layout .special-compack-box-layout .box_title {
    font-size: 1.4rem;
    line-height: 1.4;
    color: #555555;
  }
  .special-compack-column-layout .special-compack-box-layout .box_title .is-strong {
    color: #000000;
  }
  .special-compack-column-layout .compack_column_item .special-compack-box-layout .box_title .is-smaller {
    font-family: Lato;
    color: #555;
  }
  .special-compack-column-layout .box_detail .image-set .image_inner {
    width: 46%;
  }
  .special-compack-column-layout .compack_column_item .image-set {
    position: relative;
  }
  .special-compack-column-layout.type01 .special-compack-box-layout {
    padding: 4% 7%;
    background-color: #f2f2f2;
  }
  .special-compack-column-layout.type01 .special-compack-box-layout .box_title_area {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    height: 100%;
    padding: 1em 1em;
    border: solid 1px #000;
    text-align: center;
  }
  .special-compack-column-layout.type01 .special-compack-box-layout .box_title_area .box_title {
    font-size: 1.8rem;
    line-height: 1.4;
    color: #555;
  }
  .special-compack-column-layout.type01 .special-compack-box-layout .box_title_area .box_title span {
    font-weight: 700;
    color: #000;
  }
  .special-compack-column-layout.type01 .compack_column_item .image-set [class*="image_caption"] {
    position: absolute;
    font-weight: 400;
    font-size: 1.1rem;
  }
  .special-compack-column-layout.type01 .compack_column_item .image-set .image_caption01 {
    right: 26%;
    top: 14%;
  }
  .special-compack-column-layout.type01 .compack_column_item .image-set .image_caption02 {
    left: 30%;
    top: 27%;
  }
  .special-compack-column-layout.type01 .compack_column_item .image-set .image_caption03 {
    left: 27%;
    bottom: 8%;
  }
    
  
  /* ----- column-media ----- */
  .column-media .column_detail .special-point-title .point_label {
    color: #555555;
    font-weight: normal;
    font-size: 1.9rem;
  }
  .column-media .column_detail .special-point-title .point_label span {
    color: #000;
    font-weight: 700;
  }
  .column-media.type-point .column-layout[data-row-pc="6"] > * {
    margin-left: 3%;
    width: calc((100% - 6%) / 3);
  }
  .column-media.type-point .column-layout .column_item .image_inner .image_caption {
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.2;
    color: #333;
  }
  

  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}