@charset "UTF-8";
:root {
  --txtalign:left;
  --contentsW:90%;
}

@media screen and (max-width: 767px) {
  /* ----------------------------------------
   * PCとスマホ切り替え
   * ---------------------------------------- */
  .br_none {
    display: none;
  }
  .br_sp {
    display: inherit;
  }
  .pc {
    display: none;
  }
  .sp {
    display: inherit;
  }
  .box {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../img/bg_01.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box .child {
    color: #fff;
    font-family: eb-garamond, serif;
    font-size: 125px;
    text-align: var(--txtalign); /* 横方向に中央揃え */
  }
  /*company*/
  .box1-cp {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../img/company/company_sp_bg_01.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box1-cp .child {
    color: #fff;
    font-family: eb-garamond, serif;
    font-size: 4rem;
    text-align: var(--txtalign); /* 横方向に中央揃え */
    padding-bottom: 30%;
  }
  /*about */
  /*products*/
  /* ----------------------------------------
   * お問い合わせ
   * ---------------------------------------- */
  /* IE */
  /* Edge */
  /* IE */
  /* Edge */
  /* ----------------------------------------
   * プライバシーポリシー
   * ---------------------------------------- */
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  /* 縦向きの場合のスタイル */
  /*company*/
  .box1-cp {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .box1-cp .child {
    color: #fff;
    font-family: eb-garamond, serif;
    font-size: 4rem;
    text-align: var(--txtalign); /* 横方向に中央揃え */
    padding: 10%;
  }
}
@media screen and (max-width: 767px) {
  .Android .box2-cp .box_cont .company_ttl_b {
    font-size: 1.6rem;
    line-height: 3;
  }
  .Android .box2-cp .box_cont .company_cont_b {
    font-size: 0.95rem;
    line-height: 1.8;
  }
  .box2-cp {
    width: 100%;
    height: 100vh;
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url(../img/company/company_sp_bg_02.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box2-cp .box_cont {
    width: 100%;
    padding: 12% 8% 30% 8%;
    text-shadow: 0 0 8px #464646;
  }
  .box2-cp .box_cont .company_ttl_b {
    width: 100%;
    height: 100%;
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: bold;
    font-size: 2rem;
    text-align: var(--txtalign);
    line-height: 4;
  }
  .box2-cp .box_cont .company_cont_b {
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    font-size: 1rem;
    text-align: var(--txtalign);
  }
  .box2-cp .box_cont .ms_name {
    margin-top: 12%;
    text-align: var(--txtalign);
    color: #fff;
  }
  .box2-cp .box_cont .ms_name span {
    margin: 3% 0;
  }
  .box2-cp .box_cont .ms_name img {
    display: block;
    text-align: var(--txtalign);
    width: 42%;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  /* 縦向きの場合のスタイル */
  /*company*/
  .box2-cp {
    width: 100%;
    height: auto;
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url(../img/company/company_sp_bg_02.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box2-cp .box_cont {
    width: 100%;
    padding: 5%;
    text-shadow: 0 0 8px #464646;
  }
  .box2-cp .box_cont .company_ttl_b {
    width: 100%;
    height: 100%;
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: bold;
    font-size: 2rem;
    text-align: var(--txtalign);
    line-height: 2em;
  }
  .box2-cp .box_cont .company_cont_b {
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    font-size: 1rem;
    text-align: var(--txtalign);
  }
  .box2-cp .box_cont .ms_name {
    margin-top: 2%;
    text-align: var(--txtalign);
    color: #fff;
  }
  .box2-cp .box_cont .ms_name span {
    margin: 3% 0;
  }
  .box2-cp .box_cont .ms_name img {
    margin: 0 auto;
    display: block;
    text-align: var(--txtalign);
    width: 20%;
  }
}
@media screen and (max-width: 767px) {
  .Android .box3-cp .box_cont .company_ttl_w {
    font-size: 1.6rem;
    line-height: 3;
  }
  .Android .box3-cp .box_cont .table_wrap .td {
    font-size: 0.95rem;
  }
  .box3-cp {
    height: 100vh;
    background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url(../img/company/company_sp_bg_03.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box3-cp .box_cont {
    width: 100%;
    padding: 12% 8% 30% 8%;
    text-shadow: 0 0 8px #464646;
  }
  .box3-cp .box_cont .company_ttl_w {
    width: 100%;
    height: 100%;
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: bold;
    font-size: 2rem;
    text-align: left;
    line-height: 3;
  }
  .box3-cp .box_cont .table_wrap {
    width: 100%;
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    font-size: 1rem;
    text-align: left;
    line-height: 2;
  }
  .box3-cp .box_cont .table_wrap th {
    width: 30%;
  }
  .box3-cp .box_cont .table_wrap td {
    width: 70%;
    padding-left: 2%;
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  /* 縦向きの場合のスタイル */
  /*company*/
  .box3-cp {
    width: 100%;
    height: auto;
    background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url(../img/company/company_sp_bg_03.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box3-cp .box_cont {
    width: 100%;
    padding: 8%;
    text-shadow: 0 0 8px #464646;
  }
  .box3-cp .box_cont .company_ttl_w {
    width: 100%;
    height: 100%;
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: bold;
    font-size: 2rem;
    text-align: left;
    line-height: 3;
  }
  .box3-cp .box_cont .table_wrap {
    width: 100%;
    color: #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    font-size: 1rem;
    text-align: left;
    line-height: 2;
  }
  .box3-cp .box_cont .table_wrap th {
    width: 30%;
  }
  .box3-cp .box_cont .table_wrap td {
    width: 70%;
    padding-left: 2%;
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .box1-ab {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../img/about/about_sp_bg_01.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box1-ab .child {
    color: #fff;
    font-family: eb-garamond, serif;
    font-size: 4rem;
    text-align: var(--txtalign); /* 横方向に中央揃え */
    padding-bottom: 30%;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  /* 横向きの場合のスタイル */
  /*about */
  .box1-ab {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../img/about/about_sp_bg_01.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box1-ab .child {
    color: #fff;
    font-family: eb-garamond, serif;
    font-size: 4rem;
    text-align: var(--txtalign); /* 横方向に中央揃え */
    padding: 10%;
  }
}
@media screen and (max-width: 767px) {
  .Android .box2-ab .box_cont .about_ttl_b {
    font-size: 1.6rem;
    line-height: 2.2;
  }
  .Android .box2-ab .box_cont .about_cont_b {
    font-size: 0.95rem;
    line-height: 1.8;
  }
  .box2-ab {
    width: 100%;
    height: 100vh;
    background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.2)), url(../img/about/about_sp_bg_02.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box2-ab .box_cont {
    width: 100%;
    padding: 20% 10%;
    box-sizing: border-box;
    display: block;
    justify-content: center;
    align-items: center;
    flex-flow: row;
    text-shadow: 0 0 8px #464646;
  }
  .box2-ab .box_cont .about_ttl_b {
    width: 100%;
    height: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    color: #fff;
    font-weight: bold;
    font-size: 2rem;
    text-align: left;
    line-height: 3;
    margin: 0;
  }
  .box2-ab .box_cont .about_cont_b {
    width: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    color: #fff;
    font-weight: 500;
    font-size: 1rem;
    text-align: le;
    line-height: 2;
  }
  .Android .box3-ab .box_cont .about_ttl_b {
    font-size: 1.5rem;
    line-height: 2.2;
  }
  .Android .box3-ab .box_cont .about_cont_b {
    font-size: 0.95rem;
    line-height: 1.8;
  }
  .box3-ab {
    width: 100%;
    height: 100vh;
    background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.2)), url(../img/about/about_sp_bg_03.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box3-ab .box_cont {
    width: 100%;
    padding: 20% 10%;
    box-sizing: border-box;
    display: block;
    justify-content: center;
    align-items: center;
    flex-flow: row;
    text-shadow: 0 0 8px #464646;
  }
  .box3-ab .box_cont .about_ttl_b {
    width: 100%;
    height: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    color: #fff;
    font-weight: bold;
    font-size: 2rem;
    text-align: left;
    line-height: 3;
    margin: 0;
  }
  .box3-ab .box_cont .about_cont_b {
    width: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    color: #fff;
    font-weight: 500;
    font-size: 1rem;
    text-align: le;
    line-height: 1.8;
  }
  .box4 {
    width: 100%;
    height: 100vh;
    background: #f1f5fa;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }
  .box4 .box_cont .corp_icon {
    width: 14%;
    margin: 0 20%;
    text-align: var(--txtalign);
  }
  .box4 .box_cont .corp_icon img {
    width: 100%;
  }
  .box4 .access_ttl {
    color: #231c1c;
    font-family: arial, sans-serif;
    font-size: 2.5rem;
    text-align: var(--txtalign);
  }
  .box4 #map {
    width: 100%;
    margin: 1% 0;
  }
  .Android .box4-ab .box_cont .about_ttl_b {
    font-size: 1.6rem;
    line-height: 2.2;
  }
  .Android .box4-ab .box_cont .about_cont_b {
    font-size: 0.95rem;
    line-height: 1.8;
  }
  .box4-ab {
    width: 100%;
    height: 100vh;
    background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.2)), url(../img/about/about_sp_bg_04.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box4-ab .box_cont {
    width: 100%;
    padding: 20% 10%;
    box-sizing: border-box;
    display: block;
    justify-content: center;
    align-items: center;
    flex-flow: row;
    text-shadow: 0 0 8px #464646;
  }
  .box4-ab .box_cont .about_ttl_b {
    width: 100%;
    height: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    color: #fff;
    font-weight: bold;
    font-size: 2rem;
    text-align: left;
    line-height: 3;
  }
  .box4-ab .box_cont .about_cont_b {
    width: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    color: #fff;
    font-weight: 500;
    font-size: 1rem;
    text-align: le;
    line-height: 2;
  }
  .Android .box5-ab .box_cont .about_ttl_b {
    font-size: 1.6rem;
    line-height: 2.2;
  }
  .Android .box5-ab .box_cont .about_cont_b {
    font-size: 0.95rem;
    line-height: 1.8;
  }
  .box5-ab {
    width: 100%;
    height: 100vh;
    background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.2)), url(../img/about/about_sp_bg_05.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box5-ab .box_cont {
    width: 100%;
    padding: 20% 10%;
    box-sizing: border-box;
    display: block;
    justify-content: center;
    align-items: center;
    flex-flow: row;
    text-shadow: 0 0 8px #464646;
  }
  .box5-ab .box_cont .about_ttl_b {
    width: 100%;
    height: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    color: #fff;
    font-weight: bold;
    font-size: 2rem;
    text-align: left;
    line-height: 3;
  }
  .box5-ab .box_cont .about_cont_b {
    width: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    color: #fff;
    font-weight: 500;
    font-size: 1rem;
    text-align: left;
    line-height: 1.9;
  }
  .box6-ab {
    width: 100%;
    height: 100vh;
    background: #f1f5fa;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }
  .box6-ab .corp_icon img {
    width: 60%;
  }
  .box6-ab .product_ttl {
    color: #231c1c;
    font-family: arial, sans-serif;
    font-size: 58px;
    text-align: var(--txtalign);
    margin: 1% 0;
  }
  .box6-ab .product_cont {
    color: #231c1c;
    padding: 0 20%;
    line-height: 2.5;
  }
  :root {
    --ttlimgW:30%;
  }
  .box1-pd {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../img/products/products_sp_bg_01.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .box1-pd .child {
    color: #fff;
    font-family: eb-garamond, serif;
    font-size: 4rem;
    text-align: var(--txtalign); /* 横方向に中央揃え */
    padding-bottom: 30%;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  /* 横向きの場合のスタイル */
  /*about */
  .box1-pd {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .box1-pd .child {
    color: #fff;
    font-family: eb-garamond, serif;
    font-size: 4rem;
    text-align: var(--txtalign); /* 横方向に中央揃え */
    padding: 10%;
  }
}
@media screen and (max-width: 767px) {
  .box2-pd {
    width: 100%;
    height: auto;
    margin: 10% 0 4% 0;
    background: #f1f5fa;
  }
  .box2-pd .product_cont {
    width: 100%;
    height: 100%;
    padding: 1% 0;
    display: flex;
    flex-wrap: wrap;
    align-content: stretch;
    justify-content: center;
    align-items: flex-start;
  }
  .box2-pd .product_cont .product_ttl {
    width: 100%;
    text-align: var(--txtalign);
    display: block;
    font-family: toppan-bunkyu-midashi-go-std, sans-serif;
    font-weight: 500;
    font-size: 60px;
    line-height: 1.3;
  }
  .box2-pd .product_cont .product_ttl img {
    padding: 10% 0;
    width: var(--ttlimgW);
  }
  .box2-pd .product_cont .product_list {
    width: 100%;
    display: flex;
    display: -ms-flexbox;
    /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
  }
  .box2-pd .product_cont .product_list::after {
    content: "";
    display: block;
    background: #64666b;
    height: 1px;
    width: 98%;
    margin: 5% 0;
  }
  .box2-pd .product_cont .product_list a {
    font-size: 1rem;
    color: #231c1c;
    text-decoration: none;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
  }
  .box2-pd .product_cont .product_list .product_thumb {
    width: 50%;
    margin-bottom: 5%;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_image {
    margin: 0 2%;
  }
  .box2-pd .product_cont .product_list .product_thumb img {
    width: 100%;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_info {
    width: 80%;
    margin: 0 10%;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_info .item_option {
    font-size: 14px;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_info span {
    font-size: 14px;
    margin: 0 3%;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_info .inblock {
    display: inline-block;
    font-size: 1rem;
  }
  .box2-pd .product_cont .product_list_b {
    width: 100%;
    display: flex;
    display: -ms-flexbox;
    /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
  }
  .box2-pd .product_cont .product_list_b a {
    font-size: 18px;
    color: #231c1c;
    text-decoration: none;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
  }
  .box2-pd .product_cont .product_list_b .product_thumb {
    width: 50%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_image {
    margin: 0 2%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb img {
    width: 100%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_info {
    width: 80%;
    margin: 0 10%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_info .item_option {
    width: 100%;
    font-size: 14px;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_info span {
    font-size: 13px;
    margin: 0 3%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_info .inblock {
    display: inline-block;
    font-size: 1rem;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .sp_lim_space {
    margin-bottom: 10%;
  }
  .box2-pd .product_cont .container_box_2 {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 1% 0;
    display: flex;
    flex-wrap: wrap;
    align-content: stretch;
    justify-content: center;
    align-items: flex-start;
  }
  .box2-pd .product_cont .container_box_2 .product_ttl {
    width: 100%;
    text-align: var(--txtalign);
    display: block;
    font-family: toppan-bunkyu-midashi-go-std, sans-serif;
    font-weight: 500;
    font-size: 60px;
    line-height: 1.3;
  }
  .box2-pd .product_cont .container_box_2 .product_ttl img {
    width: var(--ttlimgW);
  }
  .box2-pd .product_cont .product_anno_txt {
    margin: 4% auto 0;
    width: 90%;
  }
  .product_anno_txt {
    font-size: 0.8rem !important;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  /* 横向きの場合のスタイル */
  .box2-pd {
    width: 100%;
    height: auto;
    margin: 10% 0 10% 0;
    background: #f1f5fa;
  }
  .box2-pd .product_cont {
    width: 100%;
    height: 100%;
    padding: 1% 0;
    display: flex;
    flex-wrap: wrap;
    align-content: stretch;
    justify-content: center;
    align-items: flex-start;
  }
  .box2-pd .product_cont .product_ttl {
    width: 100%;
    text-align: var(--txtalign);
    display: block;
    font-family: toppan-bunkyu-midashi-go-std, sans-serif;
    font-weight: 500;
    font-size: 60px;
    line-height: 1.3;
  }
  .box2-pd .product_cont .product_ttl img {
    padding: 5% 0;
    width: 25%;
  }
  .box2-pd .product_cont .product_list {
    width: 100%;
    display: flex;
    display: -ms-flexbox;
    /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
  }
  .box2-pd .product_cont .product_list::after {
    content: "";
    display: block;
    background: #64666b;
    height: 1px;
    width: 98%;
    margin: 5% 0;
  }
  .box2-pd .product_cont .product_list a {
    font-size: 1rem;
    color: #231c1c;
    text-decoration: none;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
  }
  .box2-pd .product_cont .product_list .product_thumb {
    width: 50%;
    margin-bottom: 5%;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_image {
    margin: 0 2%;
  }
  .box2-pd .product_cont .product_list .product_thumb img {
    width: 100%;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_info {
    width: 80%;
    margin: 0 10%;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_info .item_option {
    font-size: 14px;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_info span {
    font-size: 14px;
    margin: 0 3%;
  }
  .box2-pd .product_cont .product_list .product_thumb .p_info .inblock {
    display: inline-block;
    font-size: 1rem;
  }
  .box2-pd .product_cont .product_list_b {
    width: 100%;
    display: flex;
    display: -ms-flexbox;
    /* IE10 */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
  }
  .box2-pd .product_cont .product_list_b a {
    font-size: 18px;
    color: #231c1c;
    text-decoration: none;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
  }
  .box2-pd .product_cont .product_list_b .product_thumb {
    width: 50%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_image {
    margin: 0 2%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb img {
    width: 100%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_info {
    width: 80%;
    margin: 0 10%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_info .item_option {
    width: 100%;
    font-size: 14px;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_info span {
    font-size: 13px;
    margin: 0 3%;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .p_info .inblock {
    display: inline-block;
    font-size: 1rem;
  }
  .box2-pd .product_cont .product_list_b .product_thumb .sp_lim_space {
    margin-bottom: 10%;
  }
  .box2-pd .product_cont .container_box_2 {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 1% 0;
    display: flex;
    flex-wrap: wrap;
    align-content: stretch;
    justify-content: center;
    align-items: flex-start;
  }
  .box2-pd .product_cont .container_box_2 .product_ttl {
    width: 100%;
    text-align: var(--txtalign);
    display: block;
    font-family: toppan-bunkyu-midashi-go-std, sans-serif;
    font-weight: 500;
    font-size: 60px;
    line-height: 1.3;
  }
  .box2-pd .product_cont .container_box_2 .product_ttl img {
    padding: 5% 0;
    width: 25%;
  }
}
@media screen and (max-width: 767px) {
  #item_page {
    width: 100%;
    height: auto;
    background: #f1f5fa;
    text-align: var(--txtalign);
    padding: 20% 0 10% 0;
  }
  #item_page .item_page_wrap {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
  }
  #item_page .item_page_wrap #content {
    max-width: 100%;
    margin: 2rem auto;
    text-align: var(--txtalign);
  }
  #item_page .item_page_wrap #content img {
    width: 100%;
  }
  #item_page .item_page_wrap #content_5 {
    max-width: 100%;
    margin: 2rem auto 1.5rem auto;
    text-align: var(--txtalign);
  }
  #item_page .item_page_wrap #content_5 img {
    width: 100%;
  }
  #item_page .item_page_wrap #featured_img img,
  #item_page .item_page_wrap #thumb_img img {
    max-width: 100%;
  }
  #item_page .item_page_wrap #thumb_img {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 2%;
  }
  #item_page .item_page_wrap #thumb_img img {
    max-width: 25%;
    width: 25%;
    cursor: pointer;
    margin: 0 1% 1% 0;
    border: 2px solid #eee;
    box-sizing: border-box;
  }
  #item_page .item_page_wrap .txt_wrap {
    width: 100%;
    text-align: left;
    padding: 0 10%;
  }
  #item_page .item_page_wrap .txt_wrap::after {
    content: "";
    display: block;
    background: #3f4554;
    width: 90%;
    height: 1px;
    margin: 12% 0;
  }
  #item_page .item_page_wrap .txt_wrap h3 {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    font-size: 1.4rem;
  }
  #item_page .item_page_wrap .txt_wrap h3 span {
    margin: 0 0.3%;
    font-size: 0.8rem;
  }
  #item_page .item_page_wrap .txt_wrap tr {
    width: 100%;
    line-height: 1.8;
  }
  #item_page .item_page_wrap .txt_wrap tr th {
    width: 50%;
    letter-spacing: 0.15em;
  }
  #item_page .item_page_wrap .txt_wrap tr td {
    width: 50%;
  }
  #item_page .item_page_wrap .txt_wrap .detail .catch {
    margin: 3% 0;
    color: #ac9c69;
    font-size: 1rem;
  }
  #item_page .item_page_wrap .txt_wrap .buybtn .button {
    display: block;
    max-width: 100%;
    margin: 4% auto 2% auto;
  }
  #item_page .item_page_wrap .txt_wrap .supple_wrap {
    margin: 6% 0 0;
  }
  #item_page .item_page_wrap .info_wrap {
    width: 100%;
    text-align: left;
    padding: 0 15%;
  }
  #item_page .item_page_wrap .info_wrap h4 {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    font-size: 1.2rem;
    margin: 2% 0 4% 0;
  }
  #item_page .item_page_wrap .info_wrap ul {
    margin: 0 2%;
    line-height: 2;
  }
  #item_page .item_page_wrap .product_anno_txt {
    width: 100%;
    margin: 0 0 4%;
    padding: 0 10%;
  }
  #item_page .item_page_wrap .product_anno_txt span {
    display: inline;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  /* 横向きの場合のスタイル */
  #item_page {
    width: 100%;
    height: auto;
    background: #f1f5fa;
    text-align: var(--txtalign);
    padding: 10% 0;
  }
}
@media screen and (max-width: 767px) {
  .contact {
    width: 100%;
    height: 220px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../img/contact/contact_bg_01.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .contact .child {
    color: #fff;
    font-family: eb-garamond, serif;
    font-size: 4rem;
    text-align: var(--txtalign); /* 横方向に中央揃え */
  }
  #tel_contact {
    width: var(--contentsW);
    background: #f1f5fa;
    max-width: 900px;
    height: auto;
    margin: 5% auto;
    padding: 0;
  }
  #tel_contact .txt_box01 {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    font-size: 1rem;
    line-height: 1.8em;
    text-align: var(--txtalign);
  }
  #tel_contact .txt_box02 {
    width: 100%;
    height: auto;
    margin: 2% auto;
    padding: 0;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-size: 2.2rem;
    line-height: 1.8em;
    text-align: var(--txtalign);
    font-weight: bold;
  }
  #tel_contact .txt_box02 span {
    font-size: 1.5rem;
    margin-right: 0.5%;
  }
  #tel_contact .txt_box02 a {
    text-decoration: none;
    color: #231c1c;
  }
  #tel_contact h3 {
    width: 100%;
    height: auto;
    margin: 0 auto 3% auto;
    padding: 1% 0;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.8em;
    color: #231c1c;
    text-align: var(--txtalign);
    border-top: #E5E5E5 1px solid;
    border-bottom: #E5E5E5 1px solid;
  }
  #mail_contact {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
  }
  #mail_complete {
    width: 100%;
    height: auto;
    margin: 10% auto;
    padding: 0;
  }
  #form {
    width: var(--contentsW);
    max-width: 900px;
    height: auto;
    margin: 0 auto;
    padding: 0;
  }
  #form h3 {
    width: 100%;
    height: auto;
    margin: 0 auto 3% auto;
    padding: 1% 0;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 1.8em;
    color: #231c1c;
    text-align: var(--txtalign);
    border-top: #E5E5E5 1px solid;
    border-bottom: #E5E5E5 1px solid;
  }
  #form .form_box {
    width: 100%;
    height: auto;
    margin: 2% auto;
    padding: 0 0;
  }
  #form .form_txt {
    width: 100%;
    height: auto;
    margin: 3% auto;
    padding: 0 1.5%;
    font-size: 0.9rem;
    line-height: 1.8em;
    color: #000;
  }
  #form .form_txt strong {
    font-size: 24px;
    color: #0d6f69;
  }
  #form .form_txt ul {
    width: 96%;
    height: auto;
    margin: 0 auto;
    padding: 0;
  }
  #form .form_txt li {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    list-style: disc;
    font-size: 16px;
  }
  #form .group {
    text-align: left;
    padding: 0;
    height: auto;
    overflow: hidden;
  }
  #form .gLeft {
    display: inline-block;
    width: 100%;
    font-weight: 500;
    letter-spacing: 0.05em;
    padding: 2% 0 2% 0;
    margin: 0 auto;
    vertical-align: middle;
    font-size: 16px;
  }
  #form .gRight {
    margin: 0 auto;
    padding: 2% 0 2% 0;
    width: 100%;
    line-height: 30px;
    font-size: 16px;
  }
  #form .typeBox {
    width: 70%;
    color: #555;
    background-color: #eeeeee;
    border: 1px solid #fff;
    display: block;
    font-size: 14px;
    line-height: 1.42857;
    padding: 6px 10px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    margin: 0;
    text-align: left;
    border-radius: none;
    -webkit-appearance: none;
  }
  #form .typeBox2 {
    width: 20%;
    color: #555;
    background-color: #eeeeee;
    border: 1px solid #fff;
    display: block;
    font-size: 14px;
    line-height: 1.42857;
    padding: 6px 10px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    margin: 0;
    text-align: left;
    border-radius: none;
    -webkit-appearance: none;
  }
  #form .form_box {
    color: rgb(50, 50, 50);
  }
  #form .confirm_btn {
    position: relative;
    width: 100%;
    height: auto;
    text-align: var(--txtalign);
    margin: 4% auto;
    padding: 0;
    color: #fff;
    font-size: 16px;
  }
  #form .confirm_btn_confirm {
    width: 300px;
    height: 60px;
    display: block;
    margin: 0 auto 4% auto;
    position: relative;
    top: 100px;
    border: none;
    background: #de7341;
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.1em;
    font-size: 18px;
    border-radius: 0;
    -webkit-appearance: none;
  }
  #form .confirm_btn_confirm[type=submit] {
    width: 300px;
    height: 60px;
    display: block;
    margin: 0 auto;
    padding: 0;
    position: relative;
    top: 2%;
    border-radius: 25px;
    -webkit-appearance: none;
  }
  #form button[type=submit]:hover {
    cursor: pointer;
    background: #666;
    transition: 0.5s ease-in-out;
  }
  #form button[type=submit][disabled] {
    cursor: pointer;
    background: #fff;
    color: #666;
    transition: 0.5s ease-in-out;
    border: #de7341 1px solid;
  }
  #form .confirm_btn_confirm2 {
    width: 300px;
    height: 60px;
    display: block;
    margin: 0 auto 40px auto;
    padding: 0;
    position: relative;
    top: 0;
    border: none;
    background: #de7341;
    color: #fff;
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 400;
    letter-spacing: 0.1em;
    font-size: 18px;
    border-radius: 25px;
    -webkit-appearance: none;
  }
  #form .confirm_btn_confirm2:hover {
    cursor: pointer;
    background: #666;
    transition: 0.5s ease-in-out;
  }
  #form .confirm_btn_reset {
    width: 300px;
    height: 60px;
    display: block;
    margin: 20px auto;
    padding: 0;
    position: relative;
    top: 0;
    border: #de7341 1px solid;
    background: #fff;
    color: #666;
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 400;
    letter-spacing: 0.1em;
    font-size: 18px;
    border-radius: 25px;
    -webkit-appearance: none;
  }
  #form .confirm_btn_reset:hover {
    cursor: pointer;
    background: #666;
    color: #fff;
    transition: 0.5s ease-in-out;
    border: none;
  }
  #form .form_box .req {
    margin-right: 10px;
    margin-left: 5px;
    padding: 0.5% 1%;
    text-align: var(--txtalign);
    line-height: 20px;
    color: #fff;
    font-size: 14px;
    background: #de7341;
  }
  #form .form_box .no_req {
    margin-right: 10px;
    margin-left: 5px;
    padding: 0.5% 1%;
    text-align: var(--txtalign);
    line-height: 20px;
    color: #fff;
    font-size: 14px;
    background: #A5A5A5;
  }
  #form .form_box .radio {
    margin-left: 1%;
  }
  #form .form_box .typeBox {
    width: 100%;
    height: auto;
    padding: 10px 5px 10px 10px;
  }
  #form textarea::placeholder, #form textarea:-ms-input-placeholder, #form textarea::-ms-input-placeholder {
    color: #c7c6c6;
  }
  #form .bb {
    border-bottom: 1px solid #dfdfdf;
  }
  #form .bt {
    border-top: 1px solid #dfdfdf;
  }
  #form input[type=checkbox] {
    display: none;
  }
  #form .checkbox {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    margin: 10px 0 0 0;
    padding: 12px;
    cursor: pointer;
  }
  #form .checkbox:hover:after {
    border-color: #2E81C7;
  }
  #form .checkbox:after {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    margin-top: -10px;
    width: 25px;
    height: 25px;
    border: 2px solid #bbb;
    content: "";
  }
  #form .checkbox:before {
    transition: opacity 0.2s linear;
    position: absolute;
    top: 55%;
    left: 9px;
    display: block;
    margin-top: -7px;
    width: 8px;
    height: 12px;
    border-right: 3px solid #2550A6;
    border-bottom: 3px solid #2550A6;
    content: "";
    opacity: 0;
    transform: rotate(45deg);
  }
  #form input[type=checkbox]:checked + .checkbox:before {
    opacity: 1;
  }
  #form span {
    display: inline-block;
    color: #000000;
    font-size: 85%;
    padding-left: 1%;
  }
  #form .link {
    display: block;
    margin: 1% auto 3% auto;
    font-size: 14px;
    text-decoration: underline;
  }
  #form .link:hover {
    color: #2E81C7;
  }
  .pv_p {
    width: 100%;
    height: 220px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../img/privacy/privacy_bg_01.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .pv_p .child {
    color: #fff;
    font-family: eb-garamond, serif;
    font-size: 2.6rem;
    text-align: var(--txtalign); /* 横方向に中央揃え */
  }
  #privacy {
    width: 95%;
    background: #f1f5fa;
    max-width: 1200px;
    height: auto;
    margin: 5% auto;
    padding: 0;
  }
  #privacy .txt_box01 {
    width: 95%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    font-size: 1rem;
    line-height: 1.4;
    text-align: left;
  }
  #privacy .txt_box02 {
    width: 100%;
    height: auto;
    margin: 2% auto;
    padding: 0;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-size: 2.2rem;
    line-height: 1.8em;
    text-align: var(--txtalign);
    font-weight: bold;
  }
  #privacy .txt_box02 span {
    font-size: 1.5rem;
    margin-right: 0.5%;
  }
  #privacy .txt_box02 a {
    text-decoration: none;
    color: #231c1c;
  }
  #privacy h3 {
    width: 100%;
    height: auto;
    margin: 0 auto 3% auto;
    padding: 1% 0;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.8em;
    color: #231c1c;
    text-align: left;
  }
  #privacy dl {
    width: 100%;
    padding: 3%;
  }
  #privacy dl dt {
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: 1%;
  }
  #privacy dl .contact_box {
    color: #cc753e;
    font-size: 1rem;
    font-weight: bold;
    margin: 5% 0 2% 0;
  }
  #privacy dl dd {
    font-size: 1rem;
    margin-bottom: 2.5%;
  }
  #privacy dl dd ol {
    width: 100%;
    padding: 1% 5%;
  }
}/*# sourceMappingURL=style_sp.css.map */