﻿@charset "utf-8"; 
/* ----*gp_main*---- */ 
h1.gp_main_h1 {
 font-size: 30px;
 color: #262626;
 font-weight: bold;
 position: relative;
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 margin: 40px 0;
}
h1.gp_main_h1:before {
 content: '';
 display: inline-block;
 width: 8px;
 height: 32px;
 margin-right: 0.5em;
 background: #458b13;
 border-radius: 2px;
}
h2.gp_main_h2 {
 font-size: 28px;
 font-weight: bold;
 background: #f2f4e9;
 color: #262626;
 padding: 10px 20px;
 margin: 30px 0;
}
h3.gp_main_h3 {
 font-size: 20px;
 font-weight: bold;
 color: #262626;
 padding: 0 0 10px 0;
 margin: 30px 0 15px;
 border-bottom: 2px solid #458b13;
}
h4.gp_main_h4 {
 font-size: 16px;
 font-weight: bold;
 background: #f2f4e9;
 color: #262626;
 padding: 10px 20px;
 margin: 30px 0;
 text-align: center;
}
.gp_menu {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 margin-bottom: 64px;
}
.gp_menu:before, .gp_menu:after {
 content: "";
 display: block;
 width: 244px;
 height: 0;
}
.gp_menu:before {
 -webkit-box-ordinal-group: 2;
 -ms-flex-order: 1;
 order: 1;
}
.gp_menu_item {
 width: 244px;
 height: 244px;
 margin-bottom: 16px;
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 -webkit-box-orient: vertical;
 -webkit-box-direction: normal;
 -ms-flex-direction: column;
 flex-direction: column;
 background: #e9f4e4;
 border-radius: 8px;
}
@media screen and (max-width: 1280px) {
 .gp_menu_item {
  width: 218px;
  height: 218px;
 }
}
.gp_menu_item_img {
 width: 72px;
 height: 56px;
 margin-bottom: 10px;
}
.gp_menu_item_ttl {
 font-size: 16px;
 font-weight: bold;
}
.gp_txt, .gp_txt2 {
 margin: 12px 0;
 font-size: 16px;
 line-height: 1.6;
}
.gp_txt + h2.gp_main_h2 {
 margin: 50px 0 30px;
}
.gp_txt + h3.gp_main_h3 {
 margin: 50px 0 15px;
}
.gp_article_list {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
 margin-top: 60px;
}
.gp_article_list.col2 .gp_article_list_item {
 width: 630px;
}
.gp_article_list.col3 .gp_article_list_item {
 width: 400px;
}
.gp_article_list.col4 .gp_article_list_item {
 width: 285px;
}
.gp_article_list.col5 .gp_article_list_item {
 width: 220px;
}
.gp_article_list_item_ttl {
 font-size: 18px;
 letter-spacing: 0.05em;
 line-height: 24px;
 color: #262626;
 padding-top: 14px;
 font-weight: bold;
}
.gp_article_list_item_copytxt {
 font-size: 14px;
 padding-top: 5px;
}
.gp_article_list_item_copytxt + .gp_article_list_item_ttl {
 padding-top: 5px;
}
.gp_article_list_item_subttl {
 font-size: 16px;
 padding-top: 5px;
}
.gp_article_list_item_price_wrap {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
}
.gp_article_list_item_price {
 font-size: 16px;
 font-weight: bold;
 margin-bottom: 15px;
 padding-top: 8px;
}
.gp_article_list_item_price .tax {
 font-size: 13px;
}
.gp_article_list_item_price.red {
 color: #db0404;
}
.gp_article_list_item_price.line-through {
 color: #808080;
 text-decoration: line-through;
 font-size: 14px;
}
.gp_main_ttl {
 font-weight: bold;
 margin-top: 50px;
}
.gp_main_ttl.large {
 font-size: 26px;
}
.gp_main_ttl.middle {
 font-size: 22px;
}
.gp_main_ttl.small {
 font-size: 18px;
}
.gp_main_ttl.center {
 text-align: center;
}
.gp_main_ttl.right {
 text-align: right;
}
.gp_tags {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 margin: 100px 0;
}
.gp_tags .gp_tags_list {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 margin-left: 18px;
}
.gp_tags .gp_tags_list_item {
 border-radius: 4px;
 background: #458b13;
 padding: 8px 13px;
 color: #fff;
 margin-right: 8px;
}
.gp_flow_list_item {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 border-bottom: 1px solid #e6e6e6;
 padding-bottom: 40px;
 margin-bottom: 40px;
}
.gp_flow_list_item .gp_flow_list_item_txt_wrap {
 width: 790px;
}
.gp_flow_list_item .gp_flow_list_item_num {
 font-family: Roboto;
 font-weight: bold;
 font-size: 40px;
 color: #458b13;
 line-height: 1;
 margin-right: 20px;
}
.gp_flow_list_item .gp_flow_list_item_head {
 font-size: 18px;
 letter-spacing: 0.05em;
 line-height: 28px;
 font-weight: bold;
 padding-bottom: 30px;
}
.gp_flow_list_item .gp_flow_list_item_txt {
 font-size: 16px;
 letter-spacing: 0.05em;
 line-height: 1.6;
}
.gp_flow_list_item .gp_flow_list_item_img {
 width: 450px;
 margin-left: 20px;
}
.gp_table {
 width: 100%;
 margin-top: 25px;
}
.gp_table_th {
 background-color: #f2f2f2;
 padding: 20px 40px 20px 28px;
 border: 1px solid #ccc;
 width: 290px;
}
.gp_table_td {
 padding: 20px 40px 20px 28px;
 border: 1px solid #ccc;
}
.gp_list {
 margin: 20px 0 30px;
}
.gp_list_item {
 font-size: 16px;
 font-weight: normal;
 line-height: 32px;
}
.gp_list_item.indent {
 padding-left: 1em;
 text-indent: -1em;
}
.gp_btn_wrap {
 width: 736px;
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
 margin: 0 auto 0 0;
}
.gp_btn_wrap.center {
 margin: 0 auto 0;
}
.gp_btn_wrap.right {
 margin-left: auto;
 margin-right: 0;
}
.gp_btn_wrap.col1 {
 display: block;
}
.gp_btn {
 width: 360px;
 height: 64px;
 margin: 15px auto;
 border: 2px solid #458b13;
 border-radius: 8px;
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 font-size: 18px;
 font-weight: bold;
 position: relative;
 background: #fff;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
}
.gp_btn.large {
 width: 920px;
 height: 80px;
}
.gp_btn.large::after {
 width: 10px;
 height: 10px;
}
.gp_btn.btn-gray {
 background: #bfbfbf;
 border: 2px solid #bfbfbf;
 color: #fff;
}
.gp_btn.btn-gray::after {
 border-right: 2px solid #fff;
 border-top: 2px solid #fff;
}
.gp_btn.btn-primary {
 background: #e8731c;
 color: #fff;
 border: 2px solid #e8731c;
}
.gp_btn.btn-primary::after {
 border-right: 2px solid #fff;
 border-top: 2px solid #fff;
}
.gp_btn.btn-secondary {
 background: #458b13;
 color: #fff;
 border: 2px solid #458b13;
}
.gp_btn.btn-secondary::after {
 border-right: 2px solid #fff;
 border-top: 2px solid #fff;
}
.gp_btn::after {
 content: "";
 display: inline-block;
 width: 8px;
 height: 8px;
 border-right: 2px solid #458b13;
 border-top: 2px solid #458b13;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
 position: absolute;
 right: 32px;
 top: calc(50% - 3px);
}
.gp_btn.btn-action {
 background: #db0404;
 border: 2px solid #db0404;
 color: #fff;
}
.gp_btn.btn-action::after {
 opacity: 1;
 border-right: 2px solid #fff;
 border-top: 2px solid #fff;
}
.gp_btn.sweep {
 max-width: 100%;
 margin: 15px auto;
 margin-bottom: 0;
 overflow: hidden;
 position: relative;
 -webkit-transform: translatez(0);
 transform: translatez(0);
 text-decoration: none;
 -webkit-box-sizing: border-box;
 box-sizing: border-box;
 position: relative;
 -webkit-transition: all 0.2s ease-out 0.2s;
 transition: all 0.2s ease-out 0.2s;
}
.gp_btn.sweep:hover {
 -webkit-transition: all 0s ease-out 0s;
 transition: all 0s ease-out 0s;
 border: 1px solid #000;
 opacity: 1;
}
.gp_btn.sweep:hover .btn_bg_black {
 -webkit-transition: all 0.3s ease-out 0s;
 transition: all 0.3s ease-out 0s;
 width: 200%;
 -webkit-transform: translateX(0%);
 transform: translateX(0%);
}
.gp_btn.sweep .btn_bg_black {
 opacity: 1;
 display: block;
 position: absolute;
 top: 0;
 left: 0;
 width: 0;
 height: 100%;
 bottom: auto;
 margin: auto;
 z-index: -1;
 background: #000;
 -webkit-transition: all 0.2s ease-out 0.08s;
 transition: all 0.2s ease-out 0.08s;
 -webkit-transform: translateX(-35%);
 transform: translateX(-35%);
}
.gp_anc_wrap {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
}
.gp_anc_link {
 width: 500px;
 height: 64px;
 margin: 15px auto;
 border: 2px solid #458b13;
 border-radius: 8px;
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 font-size: 18px;
 font-weight: bold;
 position: relative;
 background: #fff;
}
.gp_anc_link::after {
 content: "";
 display: inline-block;
 width: 0;
 height: 0;
 border-left: 8px solid transparent;
 border-right: 8px solid transparent;
 border-top: 12px solid #458b13;
 position: absolute;
 right: 32px;
 top: calc(50% - 3px);
}
.gp_accordion {
 margin: 32px auto 60px;
 background-color: #f2f2f2;
 padding: 32px 28px;
}
.gp_accordion--level-1 .gp_main_ttl {
 margin-top: 0;
}
.gp_accordion--level-2, .gp_accordion--level-3 {
 display: none;
}
.gp_accordion--level-2 {
 background-color: #fff;
 border-radius: 8px;
 padding: 0 20px;
 margin-top: 15px;
}
.gp_accordion--level-2 .gp_accordion--level-ttl {
 margin-top: 0;
}
.gp_accordion--level-3 {
 border-top: 1px solid #e6e6e6;
 padding-top: 15px;
 margin-top: 15px;
}
.gp_accordion--item .gp_accordion--level-ttl {
 cursor: pointer;
 position: relative;
 font-weight: bold;
}
.gp_accordion--item .gp_accordion--level-ttl:before, .gp_accordion--item .gp_accordion--level-ttl:after {
 content: '';
 display: block;
 width: 20px;
 height: 4px;
 border-radius: 5px;
 position: absolute;
 right: 18px;
 top: 50%;
 -webkit-transform: translateY(-50%);
 transform: translateY(-50%);
 background: #458b13;
}
.gp_accordion--item .gp_accordion--level-ttl:after {
 -webkit-transform: translateY(-50%) rotate(90deg);
 transform: translateY(-50%) rotate(90deg);
 -webkit-transition: 0.5s;
 transition: 0.5s;
 background: #458b13;
}
.js_gp_accordion_btn_level1 > .gp_accordion--level-ttl:after {
 -webkit-transform: translateY(-50%) rotate(90deg);
 transform: translateY(-50%) rotate(90deg);
 -webkit-transition: 0.5s;
 transition: 0.5s;
 background: #458b13;
}
.js_gp_accordion_btn_level1.is_open > .gp_accordion--level-ttl:after {
 -webkit-transform: rotate(0);
 transform: rotate(0);
 -webkit-transition: 0.5s;
 transition: 0.5s;
 background: #458b13;
}
.js_gp_accordion_btn_level2 {
 padding: 28px 0;
 cursor: pointer;
}
.js_gp_accordion_btn_level2 > .gp_accordion--level-ttl:after {
 -webkit-transform: translateY(-50%) rotate(90deg);
 transform: translateY(-50%) rotate(90deg);
 -webkit-transition: 0.5s;
 transition: 0.5s;
 background: #458b13;
}
.js_gp_accordion_btn_level2.is_open > .gp_accordion--level-ttl:after {
 -webkit-transform: rotate(0);
 transform: rotate(0);
 -webkit-transition: 0.5s;
 transition: 0.5s;
 background: #458b13;
}
.gp_accordion_q {
 text-indent: -3em;
 padding-left: 3em;
}
.gp_accordion_q::before {
 content: "Q.";
 font-size: 28px;
 color: #458b13;
 font-weight: bold;
 padding-right: 8px;
}
.gp_accordion_a {
 text-indent: -2.5em;
 padding-left: 2.5em;
 font-size: 16px;
 letter-spacing: 0.05em;
 line-height: 28px;
}
.gp_accordion_a::before {
 content: "A.";
 font-size: 28px;
 color: #e8731c;
 font-weight: bold;
 padding-right: 8px;
}
.gp_movie {
 width: 100%;
 aspect-ratio: 16 / 9;
 text-align: center;
 margin: 0 auto;
}
.gp_movie.img_center {
 padding: 20px 60px;
}
.gp_movie2 {
 max-width: 550px;
 text-align: center;
}
.gp_movie_wrap {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
}
.gp_movie_wrap .gp_movie {
 width: 1024px;
}
.gp_movie_wrap .gp_txt {
 width: 500px;
}
.gp_movie_wrap .gp_movie2 {
 width: 550px;
}
.gp_movie_wrap .gp_txt2 {
 width: 700px;
}
.gp_line--gradation {
 background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(49.26%, #458b13), to(#fff));
 background: linear-gradient(to right, #fff 0%, #458b13 49.26%, #fff 100%);
 width: 100%;
 height: 1px;
 margin: 40px 0;
}
.gp_line--dot {
 border: 1px dashed #458b13;
 width: 100%;
 height: 1px;
 margin: 40px 0;
}
.gp_lead_line {
 position: relative;
 padding: 0 65px;
 text-align: center;
 margin: 40px 0;
}
.gp_lead_line:after {
 position: absolute;
 top: calc(50% - 1px);
 left: 0;
 width: 100%;
 height: 2px;
 content: '';
 background: #458b13;
}
.gp_lead_line span {
 position: relative;
 padding: 0 1em;
 background: #fff;
 z-index: 2;
}
.gp_txt_block {
 background: #f2f2f2;
 padding: 40px 28px;
 margin-top: 30px;
}
.gp_txt_block_head {
 font-size: 24px;
 letter-spacing: 0.08em;
 line-height: 24px;
 color: #262626;
 font-weight: bold;
 position: relative;
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 margin: 0 0 24px;
}
.gp_txt_block_head.recommend:before {
 content: '';
 display: inline-block;
 width: 50px;
 height: 50px;
 margin-right: 0.5em;
 background-image: url("../../../img/usr/common/icon_light.png");
 background-size: 100%;
 background-color: transparent;
 position: relative;
 top: -3px;
}
.gp_txt_block_head:before {
 content: '';
 display: inline-block;
 width: 4px;
 height: 22px;
 margin-right: 0.5em;
 background-color: #458b13;
 border-radius: 2px;
}
.gp_txt_block_content {
 background: #fff;
 border-radius: 8px;
 padding: 24px 20px;
}
.gp_txt_block_content_ttl {
 border-bottom: 1px solid #bfbfbf;
 margin: 0 0 20px;
 padding: 0 0 10px;
}
.gp_txt_block_content_txt {
 font-weight: normal;
}
.gp_txt_block_content_txt.recommend {
 text-indent: -1.5em;
 padding-left: 2em;
}
.gp_txt_block_content_txt.recommend:before {
 content: '';
 display: inline-block;
 width: 18px;
 height: 12px;
 margin-right: 0.5em;
 background-image: url("../../../img/usr/common/icon_check.png");
 background-size: 100%;
 background-color: transparent;
 position: relative;
 top: -3px;
}
.gp_to_top {
 text-align: right;
 font-size: 18px;
 margin: 10px 10px 50px;
 font-size: 14px;
}
.gp_to_top a {
 text-decoration: underline;
 color: #006699;
}
.gp_html1000 {
 width: 1000px;
 margin: 0 auto;
}
.gp_html750 {
 width: 750px;
 margin: 0 auto;
}
.block-goods-list-d--price {
 text-decoration: line-through;
}
.block-goods-list-d--price .price_tax {
 font-size: 10px;
}
.block-accessory-list--name {
 margin: 20px 5px 5px !important;
}
.block-cart-i {
 margin-top: 18px;
}
.block-cart-i .block-icon img {
 height: 22px !important;
}
.block-cart-i--goods .price {
 font-size: 15px;
}
.block-cart-i--net-price {
 display: none;
}
.block-cart-i--goods-name {
 margin-bottom: 8px;
}

/*swipe調整*/
.swiper-wrapper {
 max-height: 600px;
}