@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500&family=Roboto:wght@400;700&display=swap');
/*---------------------------------
reset
---------------------------------*/
html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, em, img, q, small, strong, sub, sup, b, i, dl, dt, dd, ol, ul, li, form, label, table, tbody, tfoot, thead, tr, th, td, article, figcaption, figure, footer, header, nav, section {
 margin: 0;
 padding: 0;
 border: 0;
 outline: 0;
 font-size: 100%;
 vertical-align: baseline;
 background: transparent;
 list-style-type: none;
}
html {
 font-size: 62.5%;
 min-height: 100%;
}
nav ul {
 list-style: none;
}
blockquote, q {
 quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
 content: '';
 content: none;
}
a {
 margin: 0;
 padding: 0;
 font-size: 100%;
 vertical-align: baseline;
 background: transparent;
}
ins {
 background-color: #ff9;
 color: #000;
 text-decoration: none;
}
mark {
 background-color: #ff9;
 color: #000;
 font-style: italic;
 font-weight: bold;
}
del {
 text-decoration: line-through;
}
abbr[title], dfn[title] {
 border-bottom: 1px dotted;
 cursor: help;
}
table {
 border-collapse: collapse;
 border-spacing: 0;
}
hr {
 display: block;
 height: 1px;
 border: 0;
 border-top: 1px solid #cccccc;
 margin: 1em 0;
 padding: 0;
}
input, select {
 vertical-align: middle;
}
*, *::before, *::after {
 box-sizing: border-box;
}
img {
 max-width: 100%;
 height: auto;
 vertical-align: bottom;
 -webkit-backface-visibility: hidden;
}
.bx-wrapper {
 background-color: transparent !important;
 border: none !important;
 box-shadow: none !important;
}
@media (min-width: 751px) {
 a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
 }
}
/*---------------------------------
base
---------------------------------*/
body {
 font-family: 'Roboto', 'Noto Sans JP', sans-serif;
 font-weight: 400;
 font-size: 1.4rem;
 scroll-behavior: smooth;
 color: #333;
 letter-spacing: .04em;
}
@media screen and (max-width: 767px) {
 body {
  font-size: 1.3rem;
 }
}
a {
 color: #333;
 text-decoration: none;
}
.clearfix::after {
 content: "";
 display: block;
 clear: both;
}
.main {
 width: 100%;
 margin: 0 auto;
 overflow: hidden;
}
.contents-section {
 width: calc(100% - 100px);
 max-width: 1400px;
 margin: 0 auto;
 padding: 35px 0;
}
@media screen and (max-width: 1024px) {
 .contents-section {
  padding: 0 0 25px;
 }
}
@media screen and (max-width: 767px) {
 .contents-section {
  width: calc(100% - 50px);
  margin-top: 25px;
 }
}
/*@media screen and (max-width:768px), print {
 .contents-section {
  width: calc(100% - 50px);
 }
}*/
.contents-heading {
 display: flex;
 align-items: baseline;
 margin-right: 10px;
 margin: 0 auto 24px;
}
.information-heading {
 padding-bottom: 25px;
 border-bottom: 2px dotted #707070;
}
.heading-title {
 font-size: 24px;
 font-weight: normal;
 margin-right: 10px;
}
.heading-sub-title {
 font-family: 'Marcellus', serif;
 font-weight: 100;
}
.item-title-wrap {
 /*width: 1200px;*/
 margin: 0 auto;
 /*padding-top: 130px;*/
}
.item-title-wrap span {
 font-size: 14px;
 display: inline-block;
 margin-bottom: 14px;
}
.item-title {
 color: #6E6E6E;
 font-size: 32px;
 font-weight: 400;
}
.section-title {
 font-size: 20px;
 font-weight: bold;
 color: #6E6E6E;
 padding-left: 8px;
}
.contents-wrap p {
 line-height: 2.4em;
}
/*---------------------------------
button
---------------------------------*/
.btn-wrap {
 text-align: center;
}
.btn {
 position: relative;
 z-index: 2;
 background: #fff;
 color: #6E6E6E;
 border: 1px solid #6E6E6E;
 display: inline-block;
 text-align: center;
 text-decoration: none;
 line-height: 54px;
 outline: none;
 border-radius: 5px;
}
.btn {
 display: inline-block;
 width: 200px;
 height: 54px;
 text-align: center;
 text-decoration: none;
 line-height: 54px;
 outline: none;
}
.btn::before, .btn::after {
 position: absolute;
 z-index: -1;
 display: block;
 content: '';
}
.btn, .btn::before, .btn::after {
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
 -webkit-transition: all .3s;
 transition: all .3s;
}
.btn:hover {
 background: #6E6E6E;
 color: #fff;
 text-decoration: none;
 opacity: .8;
}
.product-list-btn {
 width: 230px;
}
.mail-magazine-btn {
 width: 100%;
}
/*---------------------------------
cart-button
---------------------------------*/
.add-btn {
 text-align: center;
 width: 100%;
}
.add-btn:hover {
 background: #EB503C;
}
.sold-btn {
 background: #adadad !important;
}
.sold-btn:hover {
 background: #989898 !important;
}
.cart-btn {
 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;
 width: 100%;
 padding: 24px;
}
.add-btn a {
 background: #a72a2e;
 font-size: 1.8rem;
 font-weight: 500;
 color: #fff;
 text-decoration: none;
}
.add-btn a:hover {
 opacity: 1;
}
.add-btn-right {
 width: 24%;
}
.cart-option-area {
 font-size: 12px;
 margin-top: 10px;
}
.cart-option-area span {
 display: block;
}
.cart-add-btn {
 margin-top: 25px;
}
.add-btn a {
 position: relative;
 -webkit-transition: all 500ms cubic-bezier(0.385, 0.010, 0.000, 1.000);
 -moz-transition: all 500ms cubic-bezier(0.385, 0.010, 0.000, 1.000);
 -o-transition: all 500ms cubic-bezier(0.385, 0.010, 0.000, 1.000);
 transition: all 500ms cubic-bezier(0.385, 0.010, 0.000, 1.000);
 overflow: hidden;
 border-radius: 5px;
}
.add-btn a::after {
 content: "";
 color: rgba(0, 0, 0, 0);
 width: 100%;
 height: 100%;
 top: 0;
 left: 0;
 background: rgba(255, 255, 255, 0.2);
 display: block;
 position: absolute;
 border-radius: 5px;
 z-index: 0;
 -webkit-transform: translate(0%, 100%);
 transform: translate(0%, 100%);
 -webkit-transition: all 500ms cubic-bezier(0.385, 0.010, 0.000, 1.000);
 -moz-transition: all 500ms cubic-bezier(0.385, 0.010, 0.000, 1.000);
 -o-transition: all 500ms cubic-bezier(0.385, 0.010, 0.000, 1.000);
 transition: all 500ms cubic-bezier(0.385, 0.010, 0.000, 1.000);
}
.add-btn a:hover {
 background: #af4233;
}
.add-btn a:hover::after {
 -webkit-transform: translate(0%, 0);
 transform: translate(0%, 0);
}
.add-btn a:before {
 content: "";
 display: block;
 width: 25px;
 height: 25px;
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-cart-w.svg);
 background-repeat: no-repeat;
 background-size: contain;
 margin-right: 12px;
}
/*---------------------------------
header
---------------------------------*/
.header {
 position: relative;
 /*z-index: 999;*/
}
.header a:hover {
 text-decoration: none;
}
.nav {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
}
.nav li a {
 position: relative;
 display: block;
 padding: 23px 20px;
 color: #fff;
 line-height: 1;
 font-size: 1.4rem;
 font-weight: 500;
}
.drop-arrow {
 margin-left: 6px;
}
.second-nav {
 display: flex;
 float: right;
}
@media screen and (max-width: 1024px) {
 .second-nav {
  padding-right: 90px;
 }
}
.second-nav li span {
 font-size: 1rem;
 font-weight: 500;
 letter-spacing: 0;
}
.second-nav img {
 display: block;
 width: 50px;
 height: 50px;
 margin: 0 auto;
}
.nv-dropdown:active .drop-arrow {
 transform: rotate(180deg);
 -webkit-transition: all 0.2s ease-in-out;
 -moz-transition: all 0.2s ease-in-out;
 -o-transition: all 0.2s ease-in-out;
 transition: all 0.2s ease-in-out;
}
.nv-dropdown:checked {
 transform: rotate(180deg);
}
.sp-nav-wrap {
 display: none;
}
.sp-second-nav-wrap {
 display: none;
}
.nav-cart {
 position: relative;
 display: block;
}
span.cart-badge {
 /*background: #EB503C;*/
 background-color: #a72a2e;
 color: #fff;
 padding: 5px 7px !important;
 font-size: 10px;
 font-family: 'Roboto', sans-serif;
 font-weight: 700;
 border-radius: 10px;
 line-height: 1;
 position: absolute;
 top: 0;
 right: 0;
}
/*---------------------------------
header-dropmenu
---------------------------------*/
.navigation .drop-nv-wrap {
 display: none;
 position: absolute;
 top: 16px;
 z-index: -1;
}
.navigation .drop-nv-wrap ul {
 line-height: 1.4em;
 padding: 30px 0;
 /*overflow: scroll;
 overflow-x: auto;
 max-height: 80%;
 position: fixed;*/
 background-color: rgba(0, 0, 0, .8);
}
::-webkit-scrollbar {
 width: 10px;
}
::-webkit-scrollbar-track {
 background: #fff;
 border: none;
 border-radius: 10px;
 box-shadow: inset 0 0 2px #777;
}
::-webkit-scrollbar-thumb {
 background: #ccc;
 border-radius: 10px;
 box-shadow: none;
}
.navigation .drop-nv-wrap ul li {
 text-align: left;
 margin: 12px 32px 0 0 !important;
 padding-left: 15px;
}
.navigation .drop-nv-wrap ul li a {
 padding: 0 0 0 12px !important;
 display: inline-block;
}
.dropdown-menu-list a:hover {
 text-decoration: underline !important;
}
.dropdown-menu-list a:before {
 content: "-";
 padding-right: 6px;
 vertical-align: text-top;
 font-weight: bold;
}
.article-title, .article-title-pc {
 position: relative;
}
.article-title:after {
 content: "";
 position: absolute;
 right: -15px;
 top: 20%;
 transition: all 0.2s ease-in-out;
 display: block;
 width: 8px;
 height: 8px;
 border-top: solid 2px #6E6E6E;
 ;
 border-right: solid 2px #6E6E6E;
 ;
 -webkit-transform: rotate(135deg);
 transform: rotate(135deg);
}
.article-title-pc:after {
 content: "";
 position: absolute;
 right: 0;
 top: 9px;
 transition: all 0.2s ease-in-out;
 display: block;
 width: 8px;
 height: 8px;
 border-top: solid 2px #6E6E6E;
 ;
 border-right: solid 2px #6E6E6E;
 ;
 -webkit-transform: rotate(135deg);
 transform: rotate(135deg);
}
@-moz-document url-prefix() {
 .article-title-pc:after {
  top: 3px;
 }
}
.article-title.open:after, .article-title-pc.open:after {
 -webkit-transform: rotate(-45deg);
 transform: rotate(-45deg);
 top: 57%;
}
@-moz-document url-prefix() {
 .article-title.open:after, .article-title-pc.open:after {
  top: 44%;
 }
}
/*---------------------------------
header-serch
---------------------------------*/
.search-link {
 display: inline-block;
 position: relative;
 float: right;
 padding: 0;
}
.sp-header {
 display: none;
}
.search {
 float: right;
 position: relative;
}
.search-box {
 margin: 0;
 float: left;
 display: none;
 position: relative;
 right: 0;
}
.search-icon {
 margin: 0;
 float: left;
 cursor: pointer;
}
a.btn-go {
 text-decoration: none;
 position: absolute;
 right: -55px;
 background: #fff;
}
.btn-go span {
 color: #6E6E6E;
 padding: 9px 12px !important;
}
.search-box a:hover {
 opacity: 1;
}
/*input[type="text"] {
 margin: 21px 9px 0 0;
 padding: 0 50px 4px 0px;
 border: none;
 border-bottom: 1px solid #6E6E6E;
 outline: none;
}*/
.close {
 cursor: pointer;
 margin: 0 0 0 -20px;
 position: absolute;
 top: 27px;
}
/*---------------------------------
top
---------------------------------*/
/*---------------------------------
main-visual
---------------------------------*/
/*.main-visual {
 margin-top: 78px;
}*/
body {
 overflow-x: hidden;
}
.top-slide {
 position: relative;
}
/*.top-slide::after {
 content: "";
 position: absolute;
 z-index: -1;
 top: 50px;
 left: 0;
 display: block;
 width: 100vw;
 height: 100%;
 background: #F4F5F7;
}*/
.top-slide .main-visual img {
 height: auto;
}
#M_slider {
 width: 100%;
 margin: 0 auto;
 overflow: hidden;
}
.main-visual img {
 width: 100%;
 object-fit: cover;
 height: 80vh;
}
.bx-wrapper .bx-pager.bx-default-pager a.active, .bx-wrapper .bx-pager.bx-default-pager a:focus, .bx-wrapper .bx-pager.bx-default-pager a:hover {
 background: #a72a2e !important;
}
.bx-wrapper .bx-pager.bx-default-pager a {
 background: #ccc !important;
}
.bx-wrapper .bx-pager.bx-default-pager a {
 width: 9px !important;
 height: 9px !important;
 margin: 0 7px !important;
}
.scroll-down a {
 display: none;
}
.bx-controls-direction {
 display: none;
}
/*@media screen and (min-width: 768px) {

.top-slide .main-visual {
 -webkit-transform: translate(48px, 0px);
 -ms-transform: translate(48px, 0px);
 transform: translate(48px, 0px);
}

.bx-wrapper {
 margin-right: 48px;
}
	
.bx-wrapper .bx-pager {
 -webkit-transform: translate(-24px, 0px);
 -ms-transform: translate(-24px, 0px);
 transform: translate(-24px, 0px);
}
	
}

@media screen and (max-width: 767px) {

.top-slide::after {
 left: -25px;
}

}*/
/*---------------------------------
side-nav
---------------------------------*/
/*.side-bar {
 width: 240px;
 margin-right: 56px;
}*/
/*.side-bar .shop-itemsearch {
 border: 1px solid #dce7eb;
 padding: 1em;
}*/
.side-bar .shop-itemsearch p {
 font-weight: 500;
 text-align: center;
}
.side-bar {
 /*width: 27%;*/
 /*margin: .75em 0 7.5em 0;*/
 width: 320px;
 margin: 0;
 padding: 0 4.5em 0 0;
}
.side-bar .item-category-list li a {
 position: relative;
 display: block;
 padding: 5px 15px;
 font-size: 1.3rem;
}
.side-bar .item-category-list li a::before {
 position: absolute;
 bottom: 50%;
 left: 0;
 content: "";
 width: 4px;
 height: 1px;
 transition: .3s;
 -webkit-transition: .3s;
 background-color: #dce7eb;
}
.side-bar .side-btn {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 padding: .85em;
 line-height: 1;
 /*background-color: #f2f2f2;*/
 /*border: 1px solid #dce7eb;*/
 border: 1px solid #dce7eb;
 text-decoration: none;
}
.side-btn:hover{
	background-color: #F4F8F9;
}

.side-bar .side-btn.side-btn-lg{
 padding: 1.85em .85em;
}
.side-bar .side-btn img {
 width: 25px;
 height: 25px;
}
.side-bar .side-btn b {
 margin: 0 0 0 .85em;
 white-space: nowrap;
	font-style: normal;
}
.side-bar .side-btn-list {
 margin-top: 50px;
}
.side-bar .side-btn-list li:nth-child(n+2) {
 margin-top: 15px;
}
.filter-dropdown {
 border-bottom: 1px solid #e7e7e7;
}
/*.left-nav {
    width: 240px;
    margin-right: 56px
}*/
.left-nav-title {
 border-bottom: 1px solid #6E6E6E;
 border-top: 1px solid #6E6E6E;
 padding: 16px 0;
 font-weight: bold;
}
.left-nav-item {
 font-size: 14px;
 margin: 18px 0;
 line-height: 1.4em;
}
.left-nav-item:last-child {
 margin-bottom: 40px;
}
.left-nav-item a {
 display: block;
}
.left-nav-item a:hover {
 opacity: .7;
}
.left-nav-help {
 padding: 16px 0;
}
.nav-help-list {
 margin: 18px 0;
 line-height: 1.4em;
 font-size: 14px;
}
/*---------------------------------
information
---------------------------------*/
.information-list {
 padding: 15px 0;
}
@media screen and (min-width: 1025px) {
 .information-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
 }
}
@media screen and (min-width: 768px) {
 .information-box {
  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;
 }
 .information-right {
  flex: 1;
  margin-left: 50px;
 }
}
@media screen and (max-width: 767px) {
 .top-information .top-ttl {
  text-align: center;
 }
}
.information-list:nth-of-type(n+2) {
 border-top: 1px dashed #dce7eb;
}
.information-label {
 margin-right: 20px;
}
.information-contents {
 white-space: nowrap;
 text-overflow: ellipsis;
 overflow: hidden;
}
.information-contents a:hover {
 text-decoration: underline;
}
.information-more {
 margin: 25px 0 0 65px;
}
@media screen and (min-width: 768px) {
 .information-more-sp {
  display: none;
 }
}
@media screen and (max-width: 767px) {
 .information-more {
  display: none;
 }
}
/*---------------------------------
product-container
---------------------------------*/
.product-container {
 display: flex;
}
.product-contents-wrap {
 min-width: 500px;
}
.product-contents-wrap {
 flex: 1;
}
.product-wrap {
 margin: 50px 0;
}
@media screen and (max-width: 767px) {
 .product-wrap {
  margin: 25px 0;
 }
}
.new-product-wrap {
 border-bottom: 2px dotted #707070;
}
.product-list {
 /*width: 888px;*/
 margin: 0 auto;
 display: flex;
 flex-wrap: wrap;
 align-items: baseline;
}
.product-list-item {
 position: relative;
}
@media screen and (min-width: 1025px) {
 .product-list-item {
  width: 23.5%;
  margin-right: 2%;
 }
 .product-list-item:nth-child(4n) {
  margin-right: 0;
 }
 .product-list-item:nth-child(n+5) {
  margin-top: 4%;
 }
}
@media screen and (max-width: 1024px) {
 .product-list-item {
  width: 32%;
  margin-right: 2%;
 }
 .product-list-item:nth-child(3n) {
  margin-right: 0;
 }
 .product-list-item:nth-child(n+4) {
  margin-top: 4%;
 }
}
@media screen and (max-width: 767px) {
 .product-list-item {
  width: 48%;
  margin-right: 2%;
 }
 .product-list-item:nth-child(even) {
  margin-right: 0;
 }
 .product-list-item:nth-child(n+3) {
  margin-top: 4%;
 }
}
/*.product-list-item:nth-child(3n) {
 margin-right: 0;
}*/
.product-image-wrap {
 position: relative;
 width: auto;
 height: 0;
 padding-bottom: 100%;
 margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
 .product-image-wrap {
  margin-bottom: 5px;
 }
}
.product-image-wrap img {
 position: absolute;
 display: block;
 width: 100%;
 height: 100%;
 object-fit: cover;
 top: 0;
 left: 0;
}
/*.product-image-wrap img:hover {
 opacity: .5;
}*/
.product-list-item a div:hover {
 opacity: .7;
}
.product-price, .product-caption {
 display: block;
}
.product-caption {
 margin-top: 5px;
 font-weight: 500;
}
.product-price {
 font-family: 'Roboto', sans-serif;
 font-weight: 700;
 font-size: 2rem;
}
.product-discount {
 text-decoration: line-through;
 display: inline-block !important;
 font-weight: normal !important;
 font-size: 1.4rem !important;
}
.product-sale-price {
 color: #EB503C;
 font-weight: 700;
 font-size: 2rem;
}
.sold-out {
 display: inline-block;
 font-size: 10px;
 font-weight: 100;
 background: #adadad;
 color: #fff;
 padding: 0 6px;
 border-radius: 2px;
 font-family: 'Marcellus', serif;
 margin-bottom: 5px;
}
.product-sale-price em {
 font-style: normal;
 border: 1px solid #EB503C;
 line-height: 1;
 margin-left: 3px;
 padding: 0 2px;
}
@media screen and (min-width: 768px) {
 .product-price small, .product-sale-price small {
  padding-left: 3px;
  font-size: 1.2rem;
 }
 .product-sale-price em {
  font-size: 1.1rem;
 }
}
@media screen and (max-width: 767px) {
 .product-caption {
  font-size: 1.1rem;
 }
 .product-price {
  font-size: 1.6rem;
 }
 .product-discount {
  font-size: 1.3rem !important;
 }
 .product-price small, .product-sale-price small {
  font-size: 1.1rem;
 }
 .product-sale-price em {
  font-size: 1rem;
 }
}
/*---------------------------------
footer
---------------------------------*/
.footer {
 background: #F5F5F5;
}
.footer-contents {
 max-width: 1024px;
 margin: 0 auto;
 padding: 70px 0;
}
.footer-menu-container {
 display: flex;
}
.footer-menu {
 margin-right: 130px;
}
.footer-menu:nth-child(3) {
 margin-right: 0;
}
.footer-menu-list-title {
 margin-bottom: 24px;
 font-size: 14px;
 font-weight: bold;
 font-family: 'Marcellus', serif;
}
.footer-menu-list-item {
 margin-bottom: 30px;
}
.footer-item-list {
 display: flex;
 flex-direction: column;
 height: 700px;
 flex-wrap: wrap;
 justify-content: left;
 align-content: baseline;
 width: 440px;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: normal;
 line-height: 1.4em;
}
.footer-item-list li {
 margin-right: 45px;
}
.mail-icon {
 vertical-align: middle;
}
.sns-link-list {
 display: flex;
 margin-top: 36px;
}
.sns-link {
 margin-right: 16px;
}
.mail-magazine-text {
 text-align: center;
 margin: 56px 0 36px;
}
.mail-magazine-title {
 font-size: 32px;
 font-family: 'Marcellus', serif;
 margin-bottom: 24px;
}
.mail-magazine-caption {
 line-height: 1.4em;
 margin-bottom: 24px;
}
.mail-magazine-btn-wrap {
 margin-bottom: 0;
}
/*---------------------------------
category_list
---------------------------------*/
.category-image {
 position: relative;
 /*padding: 40px 25px;
 background-color: #F4F5F7;*/
}
.category-image img {
 margin-top: 78px;
 height: 222px;
 width: 100%;
 object-fit: cover;
}
/*.category-image:before {
 content: "";
 background-color: #0000006b;
 position: absolute;
 width: 100%;
 height: 300px;
 top: 0;
 left: 0;
 z-index: 1;
}*/
.category-title-wrap {
 width: 100%;
 /*position: absolute;
 top: 170px;*/
 z-index: 2;
}
.category-title {
 /*color: #fff;*/
 font-size: 2.8rem;
 font-weight: 500;
 max-width: 1200px;
 margin: 0 auto;
}
/*---------------------------------
pager
---------------------------------*/
.pager {
 margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
 .pager {
  margin-bottom: 35px;
 }
}
.pager ul.pagination {
 text-align: center;
 margin: 0;
 padding: 0;
}
.pager .pagination li {
 margin: 0 2px;
 padding: 0;
 display: inline-block;
 background: #EBEBEB;
 width: 30px;
 height: 30px;
 text-align: center;
 position: relative;
}
.pager .pagination li a {
 vertical-align: middle;
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 text-align: center;
 display: table;
 text-decoration: none;
}
.pager .pagination li a span {
 display: table-cell;
 vertical-align: middle;
}
.pager .pagination li a:hover, .pager .pagination li a.active {
 color: #fff;
 background: #6E6E6E;
}
/*---------------------------------
detail
---------------------------------*/
/*.detail {
    display: flex;
    justify-content: space-around;
}
.detail-image {
    width: 630px;
    height: 100%;
}
.detail-image img {
    width: 100%;
}*/
@media screen and (min-width:769px), print {
 .detail, .detail-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
 }
 .wrp-detail-item, .detail-item {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  flex: 1;
 }
 .item-image {
  width: 47.5%;
 }
 .detail-image {
  width: 47.5%;
 }
 .detail-right {
  width: 47.5%;
  /*margin-left: 30px;*/
 }
}
@media screen and (max-width: 768px) {
 .detail-right {
  margin-top: 30px;
 }
}
.product-name {
 position: relative;
 width: 100%;
 font-size: 2.4rem;
 font-weight: 500;
 line-height: 1.2;
 margin-bottom: 25px;
 padding-bottom: 25px;
 border-bottom: 2px solid #dce7eb;
}
@media screen and (max-width: 767px) {
 .product-name {
  margin-bottom: 15px;
  padding-bottom: 15px;
 }
}
.product-name::before {
 content: "";
 position: absolute;
 bottom: -7px;
 left: 0;
 display: block;
 width: 2px;
 height: 12px;
 background-color: #dce7eb;
}
.product-name span {
 position: absolute;
 bottom: -9px;
 right: 0;
 display: block;
 background-color: #dce7eb;
}
.product-name span:before, .product-name span:after {
 content: "";
 position: absolute;
 background-color: inherit;
}
.product-name span, .product-name span:before, .product-name span:after {
 width: 10px;
 height: 10px;
 border-top-right-radius: 20%;
}
.product-name span {
 transform: rotate(140deg) skewX(-40deg) scale(1, .866)
}
.product-name span:before {
 transform: rotate(-135deg) skewX(-45deg) scale(1.414, .707) translate(0, -50%);
}
.product-name span:after {
 transform: rotate(135deg) skewY(-45deg) scale(.707, 1.414) translate(50%);
}
.product-price-block {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 font-size: 2.2rem;
 background-color: #f7f7f2;
}
.product-price-txt {
 width: 20%;
 font-size: 1.3rem;
 padding: 1em 2.05em 1em 1em;
}
.product-price-doc {
 width: 80%;
 padding: .5em;
}
.product-price-block small {
 font-size: 1.6rem;
}
input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
 -webkit-appearance: none;
 margin: 0;
}
input[type="number"] {
 -moz-appearance: textfield;
}
input.productnum {
 width: 50px;
 padding: 10px;
 border: 1px solid #dce7eb;
 text-align: center;
}
.productnum-select {
 padding: 1em 0 1em 1em;
}
input.productnum:focus {
 border-color: #7a1e24;
}
div.button {
 float: left;
 width: 16px;
 padding-left: 16px;
}
input.spinner_up {
 margin-top: 3px;
 border: 0px;
 width: 13px;
 height: 13px;
 background: url("/view/images/template/6/up.png") no-repeat;
 cursor: pointer;
}
input.spinner_down {
 margin-top: 3px;
 border: 0px;
 width: 13px;
 height: 13px;
 background: url("/view/images/template/6/down.png") no-repeat;
 cursor: pointer;
}
.productnum-wrap {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 background-color: #f7f7f2;
 border-bottom: 1px solid #dce7eb;
}
.productnum-wrap .button {
 display: none;
}
.purchase-num {
 width: 20%;
 font-size: 1.3rem;
 padding: 1em 2.05em 1em 1em;
 /*  width: 70px;
font-size: 18px;
 font-weight: 500;
 margin-bottom: 8px;*/
}
.option-area {
 margin-top: 25px;
 background-color: #f7f7f2;
}
.makeshop-option-wrap {
 /*margin-top: 15px;*/
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 border-bottom: 1px solid #dce7eb;
}
.makeshop-option-label {
 width: 20%;
 padding: 1em;
 font-size: 1.3rem;
}
.makeshop-option-select-wrap {
 padding: 1em;
 flex: 1;
}
/*.makeshop-option-select {
 padding: 10px;
 width: 100%;
}
*/
.makeshop-option-select {
 background-color: #fff;
 border: 1px solid #dce7eb;
 /*border-radius: 4px;*/
 display: inline-block;
 font: inherit;
 line-height: 1.5em;
 font-size: 1.3rem;
 width: 100%;
 padding: 10px 40px 10px 10px;
 margin: 0;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
 -webkit-appearance: none;
 -moz-appearance: none;
 background-image: linear-gradient(45deg, transparent 50%, #ccc 50%), linear-gradient(135deg, #ccc 50%, transparent 50%), linear-gradient(to right, #ccc, #ccc);
 background-position: calc(100% - 20px) calc(1.25em + 2px), calc(100% - 15px) calc(1.25em + 2px), calc(100% - 2.5em) 0.8em;
 background-size: 5px 5px, 5px 5px, 1px 1.4em;
 background-repeat: no-repeat;
}
.makeshop-option-select:focus {
 background-image: linear-gradient(45deg, transparent 50%, #7a1e24 50%), linear-gradient(135deg, #7a1e24 50%, transparent 50%), linear-gradient(to right, #7a1e24, #7a1e24);
 background-position: calc(100% - 20px) calc(1.25em + 2px), calc(100% - 15px) calc(1.25em + 2px), calc(100% - 2.5em) 0.8em;
 background-size: 5px 5px, 5px 5px, 1px 1.4em;
 border-color: #7a1e24;
 outline: 0;
}
select, input, option {
 font-family: 'Roboto', 'Noto Sans JP', sans-serif;
 /*cursor: pointer;*/
}
.bg-section {
 margin-top: 50px;
 line-height: 1.5;
}
/*.bg-section {
    background: #FCF8EC;
    padding: 100px 0;
}*/
/*.detail-description {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content:flex-end;
    padding: 0 16px;
}*/
/*.left-detail-description, .right-detail-description {
 width: 50%;
}
.left-detail-description {
 margin-right: 140px;
}*/
.detail-description {
 background-color: #f1f1ef;
}
.description-title {
 font-size: 18px;
 font-weight: bold;
 margin-bottom: 24px;
}
.description-text {
 line-height: 2em;
}
.grid-multi-image {
 display: flex;
 flex-wrap: wrap;
}
.multi-image {
 flex: 1 0 calc(100%/3);
}
*::-ms-backdrop, .multi-image {
 width: 33.33%; /* IE11 */
}
.multi-image img {
 width: 100%;
 height: 60vh;
 object-fit: cover;
}
.detail-sold-out {
 display: inline-block;
 font-size: 14px;
 font-weight: 100;
 background: #adadad;
 color: #fff;
 padding: 6px;
 font-family: 'Marcellus', serif;
 margin-bottom: 5px;
 border-radius: 2px;
}
.detail-product-discount {
 font-size: 1.6rem !important;
 font-weight: normal !important;
 /*margin-bottom: 16px;*/
	padding-right: 5px;
 text-decoration: line-through;
}
.detail-product-sale-price {
 color: #EB503C;
}
.detail-product-sale-price em {
    font-style: normal;
    border: 1px solid #EB503C;
    line-height: 1;
    margin-left: 3px;
    padding: 0 2px;
    font-size: 1.4rem;
}
/*---------------------------------
cart
---------------------------------*/
.cart-title-wrap {
 width: 1200px;
 margin: 0 auto;
 padding-top: 130px;
}
.cart-title {
 font-size: 20px;
 font-weight: 500;
 color: #6E6E6E;
 letter-spacing: .2em;
}
.cart {
 margin-top: 60px;
}
.cart-text-head {
 border-bottom: 1px dotted #6E6E6E;
 padding-bottom: 16px !important;
 display: flex;
}
.cart-product {
 padding: 16px 0;
 display: flex;
 border-bottom: 1px dotted #6E6E6E;
 align-items: center;
}
.cart .img-head {
 width: 20%;
}
.cart-product img {
 width: 160px;
}
.cart .name-head {
 width: 25%;
 padding-right: 40px;
 line-height: 1.4em;
}
.cart .qty-head {
 width: 15%;
}
.cart .price-head {
 width: 25%;
}
.cart .remove-head {
 width: 15%;
}
.cart-item-text {
 display: flex;
 justify-content: space-between;
 width: 76%;
 align-items: center;
}
.cart .img {
 width: 20%;
}
.cart .name {
 width: 25%;
 line-height: 1.4em;
}
.cart .qty {
 width: 15%;
 display: flex;
}
.cart .price {
 width: 25%;
}
.cart .remove {
 width: 15%;
 padding-left: 14px;
}
.remove-sp {
 display: none;
}
.total {
 text-align: right;
 margin: 56px 0 32px;
}
.total-text {
 font-size: 18px;
}
.total-price {
 font-size: 32px;
 padding-left: 16px;
}
.total-text-small {
 font-size: 14px;
}
.continue-shopping {
 padding-right: 40px;
}
.payment-add-btn {
 display: flex;
 flex-direction: row-reverse;
 justify-content: space-between;
 align-items: center;
}
.quantity-notification {
 width: 44px;
 height: 44px;
 text-align: center;
}
.awesome a {
 cursor: pointer !important;
 text-align: center !important;
 display: inline-block;
 vertical-align: middle !important;
 color: #fff !important;
 width: 85px !important;
 height: 100% !important;
 background: #6E6E6E !important;
 font-size: 12px;
 margin-left: 6px;
 text-decoration: none;
 padding: 14px;
}
/*---------------------------------
news-list
---------------------------------*/
.contents-wrap {
 max-width: 960px;
 margin: 0 auto 80px;
}
/*.info-title-wrap {
 padding-top: 160px;
}*/
h2.info-title {
 padding-bottom: 50px;
 font-size: 2rem;
 font-weight: 400;
 line-height: 1.5;
}
/*---------------------------------
guide
---------------------------------*/
.guide-section {
 margin-bottom: 64px;
}
.guide-section-title {
 font-size: 20px;
 font-weight: 400;
 line-height: 1.2em;
 margin-bottom: 24px;
 border-bottom: 1px solid #6E6E6E;
 padding-bottom: 12px;
}
/*---------------------------------
company
---------------------------------*/
.company-section img {
 margin-bottom: 20px;
 width: 100%;
}
/*---------------------------------
contract
---------------------------------*/
.contract-section {
 margin-bottom: 64px;
}
.contract-section-title {
 font-size: 20px;
 font-weight: 400;
 line-height: 1.2em;
 margin-bottom: 24px;
 border-bottom: 1px solid #6E6E6E;
 padding-bottom: 12px;
}
/*---------------------------------
policy
---------------------------------*/
.policy-section pre {
 line-height: 2.4em;
 font-size: 14px;
 font-family: 'Roboto', 'Noto Sans JP', sans-serif;
}
@media screen and (max-width: 1024px) {
 .side-bar {
  display: none;
 }
}
/*---------------------------------
responsive 
---------------------------------*/
@media screen and (max-width: 767px) {
 /*---------------------------------
common
---------------------------------*/
 .main-visual {
  position: relative;
  /*margin-top: 53px;*/
 }
 .scroll-down a {
  background: url(/view/images/template/6/scroll-down.png) no-repeat;
  background-size: 50px 50px;
  width: 50px;
  height: 50px;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 60px;
  margin: auto;
 }
 #start-contents {
  /*  margin-top: -70px;
  padding-top: 70px;*/
  position: relative;
 }
 span.cart-badge {
  top: -10px;
  right: -14px;
 }
 .header, .footer {
  width: 100%;
 }
 /* .top-bar {
  padding: 14px 2px;
  min-height: 54px;
 }*/
 .header-inner {
  padding: 0 15px;
 }
 .shop-logo {
  margin: 0;
  float: none;
  text-align: center;
 }
 .nav, .second-nav {
  display: none;
 }
 .bx-wrapper .bx-pager {
  text-align: center !important;
  padding-left: 0;
 }
 /*------------------
    hamburger
    ------------------*/
 .wrapper {
  height: 100%;
  overflow-x: hidden;
  position: relative;
  display: block;
 }
 .sp-nav-wrap {
  display: block;
 }
 .overlay {
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: rgba(255, 255, 255, 1) !important;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  opacity: 0;
  transition: opacity .5s;
 }
 .overlay.open {
  width: 100%;
  height: 100%;
  opacity: 1;
 }
 .menu-trigger {
  display: inline-block;
  width: 24px;
  height: 20px;
  vertical-align: middle;
  cursor: pointer;
  position: fixed;
  top: 25px;
  left: 25px;
  z-index: 100;
  background-color: #fff;
 }
 .menu-trigger span {
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #6E6E6E;
  transition: all .5s;
 }
 .menu-trigger.active span {
  background-color: #6E6E6E;
 }
 .menu-trigger span:nth-of-type(1) {
  top: 0;
 }
 .menu-trigger.active span:nth-of-type(1) {
  transform: translateY(9px) rotate(-45deg);
 }
 .menu-trigger span:nth-of-type(2) {
  top: 9px;
 }
 .menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
 }
 .menu-trigger span:nth-of-type(3) {
  bottom: 0;
 }
 .menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-9px) rotate(45deg);
 }
 nav {
  width: 250px;
  height: 100%;
  /*padding-top: 100px;*/
  background: #fff !important;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  transform: translate(-250px);
  transition: all .5s;
 }
 nav.open {
  transform: translate(0, 0);
  overflow: scroll;
  overflow-x: hidden;
  height: 100%;
 }
 nav li {
  color: #6E6E6E;
  text-align: left;
  padding: 10px 20px;
  ;
 }
 .accordion-container {
  position: relative;
  width: 100%;
  cursor: pointer
 }
 .accordion-container .article-title {
  display: block;
  position: relative;
  margin: 0;
  font-weight: normal;
  color: #6E6E6E;
  ;
  cursor: pointer;
 }
 .accordion-container .article-title:hover, .accordion-container .article-title:active, .accordion-container .content-entry.open .article-title {
  color: #6E6E6E;
  ;
 }
 .accordion-container .article-title:hover i:before, .accordion-container .article-title:hover i:active, .accordion-container .content-entry.open i {
  color: white;
 }
 .article-title {
  position: relative;
 }
 .article-title:after {
  content: "";
  position: absolute;
  right: 16px;
  top: 10%;
  transition: all 0.2s ease-in-out;
  display: block;
  width: 8px;
  height: 8px;
  border-top: solid 2px #6E6E6E;
  ;
  border-right: solid 2px #6E6E6E;
  ;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
 }
 .article-title.open:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 45%;
 }
 .accordion-content {
  display: none;
  padding: 24px 6px 0;
  font-family: 'Noto Sans JP', sans-serif;
 }
 .accordion-content p {
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
  display: block;
 }
 .accordion-content a {
  position: absolute;
  display: inline-block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
 }
 .accordion-container {
  margin: 0;
 }
 dl.search1 {
  position: relative;
  background-color: #fff;
  border-bottom: 1px solid #aaa;
 }
 dl.search1 dt {
  padding: 12px 0px
 }
 dl.search1 dt input {
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
 }
 dl.search1 dd {
  position: absolute;
  top: 0;
  right: 0;
 }
 dl.search1 dd button {
  display: block;
  padding: 10px;
  background: none;
  border: none;
 }
 dl.search1 dd button span {
  display: block;
  width: 20px;
  height: 20px;
  background: url('/view/images/template/6/search_icon.png') no-repeat scroll 0 0;
 }
 .search-link-sp {
  margin-bottom: 16px;
 }
 .sp-second-nav-wrap {
  display: flex;
  position: absolute;
  top: 13px;
  right: 16px;
 }
 .cart-link {
  position: relative;
  margin-left: 16px;
 }
 .slider li img {
  height: 50vh;
 }
 .footer-contents {
  width: 90%;
  padding: 30px 0;
  margin-top: 60px;
 }
 .footer-menu-container {
  display: block;
 }
 .footer-menu {
  margin-bottom: 60px;
 }
 .footer-menu:last-child {
  margin-bottom: 0;
 }
 .footer-menu-list-item {
  margin-bottom: 20px;
 }
 .sns-link-list {
  margin-top: 20px;
 }
 .sns-link img {
  width: 24px;
 }
 .product-contents-wrap {
  min-width: 100%;
 }
 .product-list-item {
  width: calc(100%/2 - 8px);
  min-width: 0;
  margin-right: 16px;
 }
 .product-list-item:nth-child(even) {
  margin-right: 0;
 }
 .product-list {
  justify-content: space-between;
  width: 100%;
 }
 .product-list-item:nth-child(3) {
  margin-right: 16px;
 }
 /*------------------
    category_list
    ------------------*/
 .banner-image {
  background-position: center;
  height: 20vh;
 }
 .item-title-wrap span {
  padding-left: 8px;
 }
 .item-title {
  font-size: 28px;
  padding-left: 8px;
 }
 .category-image:before {
  height: 198px;
 }
 .category-image img {
  height: 145px;
  margin-top: 54px;
 }
 .category-title-wrap {
  top: 115px;
 }
 .category-title {
  font-size: 20px;
 }
 /*------------------
    detail
    ------------------*/
 .detail {
  margin-top: 130px;
  display: block;
 }
 .detail-image {
  width: 100%;
 }
 .detail-image img {
  width: 100%;
 }
 .detail-right {
  margin-left: 0;
  width: 100%;
 }
 .product-name {
  font-size: 1.8rem;
 }
 .product-price-block {
  font-size: 2.6rem;
 }
 .product-price-block small {
  font-size: 1.6rem;
 }
 /* .productnum-wrap {
  padding: 32px 0 24px;
 }*/
 .add-btn {
  width: 100%;
 }
 .bg-section {
  margin-top: 60px;
  padding: 40px 0;
 }
 .detail-description {
  width: 100%;
  display: block;
 }
 .left-detail-description, .right-detail-description {
  width: 100%;
  margin-bottom: 48px;
 }
 .right-detail-description {
  margin-bottom: 0;
 }
 .grid-multi-image {
  display: block;
 }
 /*------------------
    cart
    ------------------*/
 .cart-title {
  padding: 0 0 0 10px;
 }
 .cart-table {
  border-top: 1px dotted #6E6E6E;
 }
 .cart-text-head {
  display: none;
 }
 .cart .img {
  width: auto;
 }
 .cart .img img {
  padding-right: 16px;
 }
 .cart-item-text {
  display: block;
 }
 .cart-item-text div {
  width: 100% !important;
  margin-bottom: 10px;
 }
 .cart .remove {
  display: none;
 }
 .remove-sp {
  display: block;
  text-align: right;
  text-decoration: underline;
 }
 .cart-add-btn {
  display: block;
  margin-bottom: 54px;
 }
 .continue-shopping {
  padding: 0;
  margin-top: 24px;
  text-align: center;
  text-decoration: underline;
 }
 .awesome {
  height: 44px !important;
 }
 .cart-product {
  align-items: end;
 }
 .payment-add-btn {
  display: block;
  margin-bottom: 48px;
 }
/* .info-title-wrap {
  padding-top: 130px;
 }
 h2.info-title {
  font-size: 18px;
  line-height: 1.6em;
  width: 80%;
 }*/
}
.header-inner {
 background-color: #fff;
}
@media screen and (min-width: 768px) {
 .header-inner {
  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;
  width: calc(100% - 100px);
  max-width: 1400px;
  margin: 0 auto;
  padding: 25px 0;
 }
 .shop-logo, .shop-logo img {
  width: 270px;
  height: 59px;
 }
}
.shop-contact p {
 padding-left: 5px;
 font-size: 1.2rem;
 font-weight: 500;
}
.shop-contact strong {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 font-weight: 700;
 font-size: 2.85rem;
}
.shop-contact span {
 display: block;
 padding-left: 5px;
 font-size: 1rem;
}
.shop-contact strong::before {
 content: "";
 width: 34px;
 height: 34px;
 background-repeat: no-repeat;
 background-size: contain;
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-tel.png);
}
@media screen and (max-width: 767px) {
 .header-inner {
  /*padding: 10px 15px;*/
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 60px;
  border-bottom: 1px solid #dce7eb;
  background-color: #fff;
  z-index: 9999;
 }
 .shop-logo, .shop-logo img {
  width: 164px;
  height: 36px;
 }
}
@media screen and (min-width: 768px) {
 .header-above {
  padding: 10px 0;
  background-color: #F4F5F7;
 }
 .header-above .header-above-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0 3.5em;
 }
 .header-above .header-above-inner h1 {
  font-size: 1.1rem;
  font-weight: 500;
 }
 .header-above .header-above-inner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
 }
 .header-above .header-above-inner ul li:nth-child(n+2) {
  margin-left: 15px;
 }
 .header-above .header-above-inner ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.2rem;
  font-weight: 500;
 }
 .header-above .header-above-inner ul li a::before {
  content: "";
  width: 16px;
  height: 16px;
  background-repeat: no-repeat;
  background-size: contain;
 }
 .header-above .header-above-inner ul li.header-mypage a::before {
  background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-mypage-b.svg);
 }
 .header-above .header-above-inner ul li.header-logout a::before {
  background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-logout.png);
 }
 .header-above .header-above-inner ul li.header-login a::before {
  background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-login.png);
 }
 .header-above .header-above-inner ul li.header-member a::before {
  background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-entry.png);
 }
 .header-above .header-above-inner ul li.header-guide a::before {
  background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-guide.png);
 }
 .header-above .header-above-inner ul li.header-faq a::before {
  background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-faq.png);
 }
 .header-inner .shop-postage {
  width: 400px;
 }
 .header-inner .shop-postage ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
 }
 .header-inner .shop-postage ul li:last-child {
  margin-left: 15px;
  display: none;
 }
 .header-inner .shop-postage ul li:last-child img {
  height: 25px;
 }
}
@media screen and (max-width: 1170px) {
 .header-inner .shop-postage ul li:last-child {
  display: none;
 }
}
@media screen and (max-width: 850px) {
 .header-above .header-above-inner h1 {
  display: none;
 }
}
@media screen and (max-width: 767px) {
 .header-above {
  display: none;
 }
}
.header-inner .shop-postage p {
 font-size: 16px;
 font-weight: 500;
 background: linear-gradient(transparent 70%, #fff45c 50%);
}
.header-inner .shop-postage p strong {
 font-size: 18px;
 font-weight: 500;
}
.header-inner .shop-itemsearch {
 margin-top: 5px;
}
.side-bar .shop-itemsearch {
 margin-top: 25px;
}
.shop-itemsearch dl {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: stretch;
 -ms-flex-align: stretch;
 align-items: stretch;
}
.shop-itemsearch dl dt {
 flex: 1;
}
.shop-itemsearch dl dd {
 width: 38px;
 background-color: #535353;
 border-radius: 0 5px 5px 0;
}
.shop-itemsearch dl dd a {
 width: 100%;
 height: 100%;
 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;
}
.shop-itemsearch dl dt input {
 width: 100%;
 padding: 10px;
 border: 1px solid #dce7eb;
 border-radius: 5px 0 0 5px;
 border-right: none;
}
.shop-itemsearch dl dd button {
 padding: 0;
 background-color: transparent;
 border: none;
}
.shop-itemsearch dl dd button img {
 width: 16px;
 height: 16px;
}
.nav-item a {
 position: relative;
 display: block;
 padding: 23px 20px;
 color: #fff;
 line-height: 1;
 font-size: 1.4rem;
}
.nav > li:nth-child(3) > a::after, .nav > li:nth-child(4) > a::after {
 display: inline-block;
 width: 0;
 height: 0;
 margin-left: 0.255em;
 vertical-align: 0.255em;
 content: "";
 border-top: 0.3em solid;
 border-right: 0.3em solid transparent;
 border-bottom: 0;
 border-left: 0.3em solid transparent;
}
.nav-item a:hover {}
.article-title-pc:after {
 display: none;
}
/*.navigation .drop-nv-wrap ul {
 line-height: 1.4em;
 padding: 50px 0 30px;
 overflow: scroll;
 overflow-x: auto;
 max-height: 80%;
 position: fixed;
 background-color: rgba(0, 0, 0, .8);
}*/
@media screen and (min-width:769px), print {
 .navigation {
  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;
  width: 100%;
  /*background-color: #7a1e24;*/
  background-color: #a72a2e;
 }
}
.detail {
 margin-top: 0;
}
.headline {
 position: relative;
 font-weight: 500;
 line-height: 1.3333333333;
 letter-spacing: 0.04em;
}
.headline.-bdbw {
 margin-bottom: 35px;
 padding-bottom: 25px;
}
.headline.-bdbw::before, .headline.-bdbw::after {
 content: "";
 position: absolute;
 bottom: 0;
 left: 0;
 display: inline-block;
 vertical-align: middle;
}
.headline.-bdbw::before {
 background-color: #eaeaea;
 height: 2px;
 width: 100%;
}
.headline.-bdbw::after {
 background-color: #7a1e24;
 width: 5.5em;
 height: 2px;
}
.headline.-bdl {
 padding-left: 1.75em;
}
.headline.-bdb {
 margin-bottom: 35px;
}
.headline::before, .headline::after {
 content: "";
 display: block;
}
.headline.-bdt::before, .headline.-bdl::before, .headline.-bdb::after {
 width: 1em;
 height: 4px;
 background-color: #7a1e24;
}
.headline.-bdl::before {
 position: absolute;
 top: 0.6em;
 left: 0;
}
.headline.-bdt::before {
 margin-bottom: 25px;
}
.headline.-bdb::after {
 margin-top: 25px;
}
@media screen and (min-width:1025px), print {
 .headline {
  font-size: 2.4rem;
 }
 .headline.-md {
  font-size: 2rem;
 }
 .headline.-sm {
  font-size: 1.6rem;
 }
 .headline.-bdl.-md::before {
  top: 0.55em;
  width: 2rem;
 }
 .headline.-bdl.-sm::before {
  top: 0.5em;
 }
 .headline.-bdbw.-md {
  margin-bottom: 25px;
  padding-bottom: 15px;
 }
}
@media screen and (max-width: 1024px) {
 .header .shop-contact {
  display: none;
 }
 .header .shop-postage {
  display: none;
 }
}
@media screen and (min-width: 769px) and (max-width:1024px) {
 .headline {
  font-size: 2.4rem;
 }
 .headline.-md {
  font-size: 1.8rem;
 }
 .headline.-sm {
  font-size: 1.6rem;
 }
 .headline.-bdbw {
  margin-bottom: 35px;
  padding-bottom: 25px;
 }
}
@media screen and (max-width: 768px) {
 .headline {
  font-size: 1.8rem;
 }
 .headline.-md {
  font-size: 1.6rem;
 }
 .headline.-sm {
  font-size: 1.4rem;
 }
 .headline.-bdbw {
  margin-bottom: 25px;
  padding-bottom: 15px;
 }
 .headline.-bdbw::before {
  height: 2px;
 }
 .headline.-bdbw::after {
  width: 100px;
  height: 2px;
 }
 .headline.-bdt::before, .headline.-bdl::before, .headline.-bdb::after {
  height: 2px;
 }
}
.footer-inner {
 width: calc(100% - 100px);
 max-width: 1400px;
 margin: 0 auto;
 padding: 20px 0 50px;
}
@media screen and (max-width: 767px) {
 .footer-inner {
  width: calc(100% - 50px);
  padding-top: 0;
  padding-bottom: 25px;
 }
}
@media screen and (min-width: 1025px) {
 .footer-guide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
 }
 .footer-guide li {
  width: 30%;
  padding: 0 15px;
 }
}
.footer-guide li p {
 line-height: 1.6;
}
.footer-guide li h3 {
 margin-bottom: 25px;
 padding: 50px 0 15px;
 border-bottom: 1px solid #dcdcdc;
 font-size: 1.6rem;
 font-weight: 500;
 line-height: 1;
}
.footer-guide li h4::before {
 content: "";
 width: 13px;
 height: 13px;
 background-image: url("https://gigaplus.makeshop.jp/happyhuck/img/common/ico-circle.png");
 background-size: contain;
 margin-right: 5px;
}
.footer-guide li h4 {
 position: relative;
 display: flex;
 align-items: center;
 margin-bottom: 15px;
 font-weight: 500;
 line-height: 1;
}
@media screen and (max-width: 767px) {
 .footer-guide li h3 {
  margin-bottom: 10px;
  padding-top: 25px;
  font-size: 1.4rem;
 }
 .footer-guide li h4 {
  padding-top: 10px;
  font-size: 1.3rem;
 }
}
.footer-guide li img {
 margin-bottom: 5px;
}
.footer-guide li em, .footer-guide li span {
 display: block;
}
.footer-guide li em {
 font-size: 2.8rem;
 font-style: normal;
}
.footer-bottom {
 border-top: 1px solid #dcdcdc;
}
.footer-bottom ul {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
}
.footer-bottom li a {
 font-size: 1.2rem;
}
.footer-bottom p {
 font-size: 1.1rem;
}
@media screen and (min-width: 768px) {
 .footer-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 50px;
  padding-top: 50px;
 }
 .footer-bottom li:nth-child(n+2) {
  margin-left: 15px;
 }
}
@media screen and (max-width: 767px) {
 .footer-bottom {
  margin-top: 25px;
  padding-top: 10px;
 }
 .footer-bottom li {
  width: 50%;
 }
 .footer-bottom li a {
  display: block;
  padding: 15px 5px;
  text-align: center;
 }
 .footer-bottom .copy-right {
  margin-top: 10px;
  text-align: center;
 }
}
.footer-guide .l-circle li {
 width: 100%;
}
.flink {
 position: relative;
 display: inline-block;
 padding-left: 12px;
 background: url(https://gigaplus.makeshop.jp/happyhuck/img/common/ico-arrow.png) no-repeat left center;
 color: #114b9e;
 vertical-align: middle;
 text-decoration: none;
}
.flink:hover {
 text-decoration: underline;
}
/*.flink::before,
.flink::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.flink::before{
    left: 3px;
    width: 7px;
    height: 1px;
    background: #333;
}
.flink::after{
    left: 3px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
*/
/*merit*/
/*.top-merit ul {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
}*/
.top-merit li:nth-child(n+2) {
 margin-top: 15px;
}
.top-merit img {
 max-width: 100%;
 height: auto;
 vertical-align: bottom;
 -webkit-backface-visibility: hidden;
}
.top-merit dl {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
}
.top-merit dl img {
 width: 40px;
 height: 40px;
}
.top-merit a {
 display: block;
 padding: 20px;
 border: 1px solid #dce7eb;
 /*background-color: #F4F5F7;*/
}
.top-merit dd {
 margin-left: 15px;
 font-weight: 500;
 font-size: 1.3rem;
 line-height: 1.2;
}
.top-merit dd strong {
 font-weight: 500;
 font-size: 2rem;
}
@media screen and (max-width: 768px) {
 .top-merit {
  margin-bottom: 25px;
 }
 .top-merit li {
  width: 48%;
  margin-right: 4%;
 }
 .top-merit li:nth-child(even) {
  margin-right: 0;
 }
 .top-merit li:nth-child(n+3) {
  margin-top: 4%;
 }
}
/*category*/
.top-category {
 margin-top: 50px;
}
@media screen and (max-width: 767px) {
 .top-category {
  margin-top: 30px;
 }
}
.top-category ul {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}
.top-category li {
 width: 32%;
}
.top-category li:nth-child(n+4) {
 margin-top: 2%;
}
.top-category li a {
 display: block;
}

/*.top-category li:nth-child(1) a {
		background-image: url(https://gigaplus.makeshop.jp/happyhuck/img/top/ct1.jpg);
}
.top-category li:nth-child(2) a {
		background-image: url(https://gigaplus.makeshop.jp/happyhuck/img/top/ct1-3.jpg);
}
.top-category li:nth-child(3) a {
		background-image: url(https://gigaplus.makeshop.jp/happyhuck/img/top/ct2-1.jpg);
}
.top-category li:nth-child(4) a {
		background-image: url(https://gigaplus.makeshop.jp/happyhuck/img/top/ct2-3.jpg);
}
.top-category li:nth-child(5) a {
		background-image: url(https://gigaplus.makeshop.jp/happyhuck/img/top/ct3-3.jpg);
}
.top-category li:nth-child(6) a {
		background-image: url(https://gigaplus.makeshop.jp/happyhuck/img/top/ct3-2.jpg);
}*/

@media screen and (min-width: 768px) {
 /* .top-category li:nth-child(n+5) {
  width: 32%;
 }*/
}
@media screen and (max-width: 767px) {
 .top-category li {
  width: 49%;
 }
 .top-category li:nth-child(n+3) {
  margin-top: 2%;
 }
}
/*.top-ttl {
 text-align: center;
}*/
.top-ttl .top-ttl-inner {
 position: relative;
 display: -webkit-inline-box;
 display: -ms-inline-flexbox;
 display: inline-flex;
 -webkit-box-orient: vertical;
 -webkit-box-direction: normal;
 -ms-flex-direction: column;
 flex-direction: column;
}
.top-ttl p {
 text-align: left;
 font-size: 1.6rem;
 font-weight: 500;
 display: inline;
 margin-left: .1em;
 margin-right: .1em;
 padding-left: .25em;
 padding-right: .25em;
 background: linear-gradient(transparent 70%, #FADF88 50%);
}
.top-ttl h2 {
 font-size: 2.4rem;
 font-weight: 500;
}
.top-ttl::before {
 content: "";
 display: inline-block;
 width: 60px;
 height: 60px;
 background-repeat: no-repeat;
 background-size: 60px 60px;
 vertical-align: top;
}
@media screen and (max-width: 767px) {
 .top-ttl p {
  font-size: 1.4rem;
  font-weight: 500;
 }
 .top-ttl h2 {
  font-size: 1.8rem;
  font-weight: 500;
 }
 .top-ttl::before {
  width: 50px;
  height: 50px;
  background-size: 50px 50px;
 }
}
.top-information .top-ttl::before {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-note.png);
}
.top-loop .top-ttl::before {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-loop.png);
}
.top-tag .top-ttl::before {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-tag.png);
}
.top-information, .top-tag, .top-loop {
 position: relative;
 margin-top: 50px;
 padding-top: 55px;
 border-top: 2px solid #dce7eb;
}
.top-information::before, .top-tag::before, .top-loop::before {
 content: "";
 position: absolute;
 top: -7px;
 left: 0;
 display: block;
 width: 2px;
 height: 12px;
 background-color: #dce7eb;
}
.top-tag .top-ttl, .top-loop .top-ttl {
 text-align: center;
}
.triangle {
 position: absolute;
 top: -3px;
 right: 0;
 background-color: #dce7eb;
}
.triangle:before, .triangle:after {
 content: "";
 position: absolute;
 background-color: inherit;
}
.triangle, .triangle:before, .triangle:after {
 width: 10px;
 height: 10px;
 border-top-right-radius: 20%;
}
.triangle {
 /*transform: rotate(30deg) skewX(-30deg) scale(1,.866);*/
 transform: rotate(140deg) skewX(-40deg) scale(1, .866)
}
.triangle:before {
 transform: rotate(-135deg) skewX(-45deg) scale(1.414, .707) translate(0, -50%);
}
.triangle:after {
 transform: rotate(135deg) skewY(-45deg) scale(.707, 1.414) translate(50%);
}
.top-item-wrp h3 {
 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;
 position: absolute;
 top: -15px;
 right: 0;
 left: 0;
 margin-right: auto;
 margin-left: auto;
 min-height: 31px;
 font-size: 2.2rem;
 font-weight: 500;
 line-height: 1;
}
h3.ttl-sg::before {
 content: "";
 display: inline-block;
 width: 36px;
 height: 31px;
 padding-left: 46px;
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/logo-sg.png);
 background-repeat: no-repeat;
 background-size: 36px 31px;
 vertical-align: middle;
}
h3.ttl-banok::before {
 content: "";
 display: inline-block;
 width: 42px;
 height: 31px;
 padding-left: 52px;
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/logo-banok.png);
 background-repeat: no-repeat;
 background-size: 42px 31px;
 vertical-align: middle;
}
.top-item-wrp h4 {
 padding-top: 35px;
 padding-bottom: 5px;
 font-size: 1.8rem;
 font-weight: 500;
}
.top-item-inner {
 position: relative;
 padding: 0 25px 25px;
 background-color: #f5f5f5;
}
@media screen and (min-width: 1025px) {
 .top-item-wrp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
 }
 .top-item-inner {
  width: 48%;
 }
}
@media screen and (min-width: 768px) {
 .top-item-wrp {
  padding-top: 50px;
 }
}
@media screen and (max-width: 767px) {
 .top-item-wrp {
  padding-top: 25px;
 }
 .top-item-inner {
  padding: 0 15px 15px;
 }
 .top-item-wrp h3 {
  font-size: 1.8rem;
 }
 .top-item-wrp h4 {
  padding-top: 20px;
  font-size: 1.6rem;
 }
 .top-item-wrp h3 + h4 {
  padding-top: 35px;
 }
}
/*.top-item-banok{
	border-left: 2px solid #E60012;
}
*/
.top-list {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
}
.top-loop .top-list {
 padding-top: 35px;
}
.top-list li {
 width: 50%;
}
.top-list li:nth-child(odd) {
 padding-right: 1px;
}
.top-list li:nth-child(even) {
 padding-left: 1px;
}
.top-list li:nth-child(n+3) {
 border-top: 2px solid #f5f5f5;
}
.top-list li a {
 position: relative;
 display: block;
 padding: 15px;
 text-align: center;
 background-color: #fff;
}
.top-list li a p {
 font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
 .top-list li a p {
  font-size: 1.1rem;
 }
}
.top-list li a .frame {
 box-sizing: border-box;
 position: absolute;
 left: 0;
 top: 0;
 bottom: 0;
 width: 100%;
 -ms-transition: all 200ms cubic-bezier(0.215, 0.61, 0.355, 1);
 -moz-transition: all 200ms cubic-bezier(0.215, 0.61, 0.355, 1);
 -webkit-transition: all 200ms cubic-bezier(0.215, 0.61, 0.355, 1);
 transition: all 200ms cubic-bezier(0.215, 0.61, 0.355, 1);
}
.top-item-banok .top-list li a:hover .frame {
 border: 5px solid #E60012;
}
.top-item-sg .top-list li a:hover .frame {
 border: 5px solid #004DA2;
}
@media screen and (max-width: 767px) {
 .top-item-sg {
  margin-top: 35px;
 }
}
.side-nav {
 margin-top: 25px;
}
.side-category a {
 text-decoration: none;
}
.side-category {
 cursor: pointer;
 display: block;
}
.category-menu {
 display: block;
 position: relative;
 padding: 17px 0;
 border-bottom: 1px solid #dce7eb;
 background-repeat: no-repeat;
 background-size: 30px 30px;
 background-position: 0 50%;
}
.category-menu a :hover{
	background-color: #F4F8F9;
}
.category-menu.category-photo {
 padding-left: 40px;
}
.category-menu::before, .category-menu::after {
 content: "";
 position: absolute;
 margin-top: 8px;
 right: 9px;
 background-color: #333;
 width: 1px;
 height: 7px;
 transition: all 0.25s ease-in-out;
}
.category-menu::before {
 transform: translate(2px, 0) rotate(45deg);
}
.category-menu::after {
 transform: translate(-2px, 0) rotate(-45deg);
}
.category-menu.on::before {
 transform: translate(-2px, 0) rotate(45deg);
}
.category-menu.on::after {
 transform: translate(2px, 0) rotate(-45deg);
}
.category-menu.category-taggun {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/category-taggun.gif);
}
.category-menu.category-loop {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/category-loop.gif);
}
.category-menu.category-other {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/category-other.gif);
}
/*.sub-menu {
 display: none;
}*/
.sub-menu li {
 padding: 1.5rem 1rem;
 border-bottom: 1px dotted #dce7eb;
 transition: all .2s ease;
}
.sub-menu li:hover {
 background-color: #F4F8F9;
}
.side-banner {
 margin-top: 25px;
}
.side-banner li:nth-child(n+2) {
 margin-top: 15px;
}
.side-banner li a {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 -webkit-box-pack: end;
 -ms-flex-pack: end;
 justify-content: flex-end;
 padding: 40px .85em;
 line-height: 1;
 font-weight: 500;
 text-decoration: none;
 background-repeat: no-repeat;
}
.side-banner:hover {
 text-decoration: none;
}
.side-banner li a.banner-itowa {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/side-banner-itowa.jpg);
 background-size: contain;
 background-color: #233634;
 color: #fff;
 text-shadow: black 1px 1px 0px, black -1px 1px 0px, black 1px -1px 0px, black -1px -1px 0px;
}
.side-banner li a.banner-shoes {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/side-banner-shoes.jpg);
 background-size: contain;
 background-color: #D8DCDD;
}
.side-banner li a.banner-taggun {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/side-banner-taggun.jpg);
 background-size: contain;
 background-color: #D8DCDD;
}
.menu-container {
 max-width: 1400px;
 margin: 0 auto;
 background: #a72a2e;
}
.menu-dropdown-icon:before {
 content: "+";
 display: none;
 cursor: pointer;
 float: right;
 padding: 1.5em 2em;
 color: #fff;
}
.menu > ul {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 width: 100%;
 padding: 0;
 position: relative;
 transition: all .2s ease-in;
}
.menu > ul:before, .menu > ul:after {
 content: "";
 display: table;
}
.menu > ul:after {
 clear: both;
}
.menu > ul > li {
 padding: 0;
 margin: 0;
}
.menu > ul > li a {
 text-decoration: none;
 padding: 1.5em 2em;
 display: block;
 color: #fff;
 font-weight: 500;
}
.menu > ul > li a svg {
 -webkit-transform: rotate(90deg) translateY(-5px) translateX(-1px);
 transform: rotate(90deg) translateY(-5px) translateX(-1px);
 -webkit-transition: -webkit-transform .15s ease-in-out;
 transition: -webkit-transform .15s ease-in-out;
 transition: transform .15s ease-in-out;
 transition: transform .15s ease-in-out, -webkit-transform .15s ease-in-out;
}
/*.menu > ul > li:nth-child(3) > a::after, .menu > ul > li:nth-child(4) > a::after {
 display: inline-block;
 width: 0;
 height: 0;
 margin-left: 0.255em;
 vertical-align: 0.255em;
 content: "";
 border-top: 0.3em solid;
 border-right: 0.3em solid transparent;
 border-bottom: 0;
 border-left: 0.3em solid transparent;
}*/
.menu > ul > li:hover {
 background: #C03033;
}
.menu > ul > li > ul {
 display: none;
 width: 100%;
 background-color: #C03033;
 /*padding: 20px;*/
 position: absolute;
 z-index: 99;
 left: 0;
 margin: 0;
 list-style: none;
 box-sizing: border-box;
}
.menu > ul > li > ul:before, .menu > ul > li > ul:after {
 content: "";
 display: table;
}
.menu > ul > li > ul:after {
 clear: both;
}
.menu > ul > li > ul > li {
 margin: 0;
 padding-bottom: 0;
 list-style: none;
 width: 25%;
 background: none;
 float: left;
}
.menu > ul > li > ul > li a {
 padding: .2em 0;
 display: block;
 border-bottom: 1px solid #ccc;
}
.menu > ul > li > ul > li > ul {
 display: block;
 padding: 0;
 margin: 10px 0 0;
 list-style: none;
 box-sizing: border-box;
}
.menu > ul > li > ul > li > ul:before, .menu > ul > li > ul > li > ul:after {
 content: "";
 display: table;
}
.menu > ul > li > ul > li > ul:after {
 clear: both;
}
.menu > ul > li > ul > li > ul > li {
 float: left;
 width: 100%;
 padding: 10px 0;
 margin: 0;
 font-size: .8em;
}
.menu > ul > li > ul > li > ul > li a {
 border: 0;
}
.menu > ul > li > ul.normal-sub {
 width: 240px;
 left: auto;
}
.menu > ul > li > ul.normal-sub > li {
 width: 100%;
}
.menu > ul > li > ul.normal-sub > li:nth-child(n+2) {
 border-top: 1px solid rgba(255, 255, 255, .05);
}
.menu > ul > li > ul.normal-sub > li a {
 border: 0;
 padding: 10px 15px;
 transition: all .2s ease-in;
}
.menu > ul > li > ul.normal-sub > li a:hover {
 background-color: rgba(255, 255, 255, .1);
}
@media screen and (min-width:1025px) and (max-width:1130px) {
 .menu > ul > li:nth-child(1), .menu > ul > li:nth-child(7) {
  display: none;
 }
}
@media screen and (min-width: 1025px) {
 .menu-mobile {
  display: none;
 }
}
@media screen and (max-width: 1024px) {
 .menu-container {
  position: absolute;
  top: 150px;
  left: 0;
  width: 100%;
  background: none;
  z-index: 10000;
 }
 .menu-mobile {
  display: block;
  width: 60px;
  height: 60px;
  position: absolute;
  top: -80px;
  right: 50px;
 }
 .menu-mobile span, .menu-mobile::before, .menu-mobile::after {
  position: absolute;
  left: 15px;
  height: 2px;
  background-color: #333;
  border-radius: 5px;
 }
 .menu-mobile span {
  display: block;
  width: 22px;
  top: 20px;
  text-indent: -9999px;
  transition: 0.3s opacity ease;
 }
 .menu-mobile::before, .menu-mobile::after {
  content: "";
  display: block;
  width: 29px;
  transition: 0.3s transform ease;
 }
 .menu-mobile::before {
  top: 7px;
 }
 .menu-mobile::after {
  bottom: 25px;
 }
 .menu-mobile.on::before, .menu-mobile.on::after {
  width: 29px;
  left: 15px;
 }
 .menu-mobile.on::before {
  transform: rotate(37deg);
  top: 18px;
 }
 .menu-mobile.on::after {
  transform: rotate(-37deg);
  bottom: 40px;
 }
 .menu-mobile.on span {
  opacity: 0;
 }
 .menu-mobile em {
  position: absolute;
  bottom: 0;
  left: 7px;
  font-size: 1rem;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
 }
}
@media screen and (max-width: 1024px) {
 .menu-dropdown-icon:before {
  display: block;
 }
 .menu > ul {
  display: none;
 }
 .menu > ul > li {
  width: 100%;
  float: none;
  display: block;
 }
 .menu > ul > li:nth-child(n+2), .menu > ul > li > ul.normal-sub > li:first-child {
  border-top: 1px solid rgba(255, 255, 255, .05);
 }
 /*.menu > ul > li > ul.normal-sub > li:nth-child(n+2){
	border-top: 1px solid rgba(255,255,255,.05);
}*/
 .menu > ul > li a {
  padding: 1.5em;
  width: 100%;
  display: block;
 }
 .menu > ul > li > ul {
  position: relative;
 }
 .menu > ul > li > ul.normal-sub {
  width: 100%;
 }
 .menu > ul > li > ul > li {
  float: none;
  width: 100%;
 }
 .menu > ul > li > ul > li:first-child {
  margin: 0;
 }
 .menu > ul > li > ul > li > ul {
  position: relative;
 }
 .menu > ul > li > ul > li > ul > li {
  float: none;
 }
 .menu, .menu .show-on-mobile {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  background-color: #a72a2e;
 }
 .menu > ul > li a svg {
  display: none;
 }
}
@media screen and (max-width: 767px) {
 .menu-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: none;
  z-index: 10000;
 }
 .menu-mobile {
  display: block;
  width: 50px;
  height: 50px;
  position: fixed;
  top: 5px;
  right: 0;
 }
 .menu-mobile span {
  display: block;
  width: 12px;
  height: 2px;
  background-color: #333;
  left: 17px;
  top: 24px;
  text-indent: -9999px;
  transition: 0.3s opacity ease;
 }
 .menu-mobile span, .menu-mobile::before, .menu-mobile::after {
  position: absolute;
  border-radius: 5px;
 }
 .menu-mobile::before {
  content: "";
  display: block;
  width: 17px;
  height: 2px;
  background-color: #333;
  left: 17px;
  top: 17px;
  transition: 0.3s transform ease;
 }
 .menu-mobile::after {
  content: "";
  display: block;
  width: 17px;
  height: 2px;
  background-color: #333;
  left: 17px;
  bottom: 17px;
  transition: 0.3s transform ease;
 }
 .menu-mobile.on::before {
  transform: rotate(37deg);
  width: 21px;
  left: 15px;
  top: 24px;
 }
 .menu-mobile.on::after {
  transform: rotate(-37deg);
  width: 21px;
  left: 15px;
  bottom: 24px;
 }
 .menu-mobile.on span {
  opacity: 0;
 }
 .menu-dropdown-icon:before {
  display: block;
 }
 .menu > ul {
  display: none;
 }
 .menu > ul > li {
  width: 100%;
  float: none;
  display: block;
 }
 .menu > ul > li a {
  padding: 1.5em;
  width: 100%;
  display: block;
 }
 .menu > ul > li > ul {
  position: relative;
 }
 .menu > ul > li > ul.normal-sub {
  width: 100%;
 }
 .menu > ul > li > ul > li {
  float: none;
  width: 100%;
 }
 .menu > ul > li > ul > li:first-child {
  margin: 0;
 }
 .menu > ul > li > ul > li > ul {
  position: relative;
 }
 .menu > ul > li > ul > li > ul > li {
  float: none;
 }
 .menu, .menu .show-on-mobile {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  background-color: #a72a2e;
 }
 .menu {
  top: 60px;
 }
 .menu-mobile em {
  display: none;
 }
}
@media screen and (min-width: 768px) {
 .menu-sp {
  display: none;
 }
}
.menu-sp {
 margin-top: 60px;
 border-bottom: 1px solid #dce7eb;
}
.menu-sp ul {
 display: -webkit-box;
 display: -moz-box;
 display: -webkit-flexbox;
 display: -moz-flexbox;
 display: -ms-flexbox;
 display: -webkit-flex;
 display: -moz-flex;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
}
.menu-sp ul li {
 width: 25%;
 text-align: center;
 font-size: 10px;
 font-size: 1rem;
 position: relative;
}
.menu-sp ul li a {
 display: block;
 padding: 10px 0;
}
.menu-sp ul li a img {
 height: 30px;
}
.menu-sp ul li a span {
 display: block;
}
.menu-sp #search {
 display: none;
 padding: 0 16px 8px;
}
.menu-sp #search {
 position: relative;
}
.menu-sp #search .search-text {
 font-size: 16px;
 font-size: 1.6rem;
}
.menu-sp #search form {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
}
.menu-sp #search .search-text {
 -webkit-transition: 0.2s ease-out;
 -o-transition: 0.2s ease-out;
 transition: 0.2s ease-out;
 border-radius: 5px;
 border: 1px solid #dce7eb;
 background-color: #fff;
 padding: 8px;
 width: 100%;
 font-size: 1.4rem;
}
.menu-sp #search .search-btn {
 -webkit-transition: 0.2s ease-out;
 -o-transition: 0.2s ease-out;
 transition: 0.2s ease-out;
 position: absolute;
 width: 20px;
 height: 20px;
 top: 7px;
 right: 25px;
}
.a-link {
 letter-spacing: 0;
 line-height: 1.66667;
 word-break: break-all;
 color: inherit;
 font-weight: inherit;
 position: relative;
 display: inline-block;
 padding-bottom: 2px;
 font-weight: 500;
}
.a-link:before {
 -webkit-transform: scaleX(1);
 transform: scaleX(1);
 -webkit-transform-origin: 100% 0;
 transform-origin: 100% 0;
}
.a-link:after, .a-link:before {
 content: "";
 border-bottom: 1px solid #333;
 position: absolute;
 bottom: 0;
 left: 0;
 width: 100%;
 height: 1px;
 display: block;
}
.a-link:after {
 -webkit-transform: scaleX(0);
 transform: scaleX(0);
 -webkit-transform-origin: 0 0;
 transform-origin: 0 0;
}
.a-link:hover:before, .hover .a-link:before {
 -webkit-transition: .3s cubic-bezier(.215, .61, .355, 1);
 transition: .3s cubic-bezier(.215, .61, .355, 1);
 -webkit-transform: scaleX(0);
 transform: scaleX(0);
}
.a-link:hover:after, .hover .a-link:after {
 -webkit-transition: .3s cubic-bezier(.215, .61, .355, 1) .25s;
 transition: .3s cubic-bezier(.215, .61, .355, 1) .25s;
 -webkit-transform: scaleX(1);
 transform: scaleX(1);
}
.gl {
 max-width: 1400px;
 margin: 0 auto;
 background: #a72a2e;
 z-index: 9999;
}
#collapse-button, #collapse-button span {
 transition: all .4s;
}
#collapse-button.active span {
 background-color: #333;
}
#collapse-button.active span:nth-of-type(2) {
 opacity: 0;
}
@media screen and (max-width: 1024px) {
 #collapse-button.active span:nth-of-type(1) {
  -webkit-transform: translateY(10px) rotate(37deg);
  transform: translateY(10px) rotate(37deg);
 }
 #collapse-button.active span:nth-of-type(3) {
  -webkit-transform: translateY(-10px) rotate(-37deg);
  transform: translateY(-10px) rotate(-37deg);
 }
}
@media screen and (max-width: 767px) {
 @media screen and (max-width: 1024px) {
  #collapse-button.active span:nth-of-type(1) {
   -webkit-transform: translateY(6px) rotate(37deg);
   transform: translateY(6px) rotate(37deg);
  }
  #collapse-button.active span:nth-of-type(3) {
   -webkit-transform: translateY(-6px) rotate(-37deg);
   transform: translateY(-6px) rotate(-37deg);
  }
 }
}
#collapse-button em {
 position: absolute;
 bottom: -4px;
 left: 5px;
 font-size: 1rem;
 font-weight: 500;
 font-style: normal;
 letter-spacing: 0;
 color: #333;
}
@media screen and (max-width: 767px) {
 #collapse-button em {
  display: none;
 }
}
ul.slimmenu li ul li {
 width: 100%;
}
ul.slimmenu li span {
 display: none;
}
@media screen and (max-width: 1024px) {
 ul.slimmenu li span {
  display: inherit;
 }
}
#menu-collapser, #collapse-button {
 width: 60px;
 height: 60px;
}
#menu-collapser {
 position: absolute;
 top: 60px;
 right: 15px;
 padding: 0;
 z-index: 9999;
}
@media screen and (max-width: 1024px) {
 #menu-collapser {
  position: absolute;
  top: 60px;
  right: 50px;
 }
}
@media screen and (max-width: 767px) {
 #menu-collapser {
  position: fixed;
  top: 10px;
  right: 5px;
 }
}
#collapse-button {
 position: absolute;
 right: 0;
 top: 60%;
 padding: 13px 10px;
 color: #fff;
 font-size: 14px;
 text-align: center;
 cursor: pointer;
 transform: translate(0, -50%);
 -o-transform: translate(0, -50%);
 -ms-transform: translate(0, -50%);
 -moz-transform: translate(0, -50%);
 -webkit-transform: translate(0, -50%);
}
#collapse-button .icon-bar {
 display: block;
 width: 29px;
 height: 2px;
 border-radius: 1px;
 background-color: #333;
}
#collapse-button .icon-bar:nth-of-type(2) {
 width: 20px;
}
#collapse-button .icon-bar + .icon-bar {
 margin-top: 8px;
}
ul.slimmenu {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 width: 100%;
 padding: 0;
 position: relative;
}
ul.slimmenu:after, ul.slimmenu:before {
 content: "";
 display: table;
}
ul.slimmenu:after {
 clear: both;
}
@media screen and (max-width: 1024px) {
 ul.slimmenu {
  display: block;
 }
}
@media screen and (max-width: 767px) {
 #menu-collapser, #collapse-button {
  width: 40px;
  height: 40px;
 }
 /*  #menu-collapser {
    top: -50px;
    right: 15px;
  }*/
 #collapse-button {
  top: 50%;
 }
 #collapse-button .icon-bar {
  width: 17px;
 }
 #collapse-button .icon-bar:nth-of-type(2) {
  width: 12px;
 }
 #collapse-button .icon-bar + .icon-bar {
  margin-top: 4px;
 }
}
ul.slimmenu.collapsed li {
 display: block;
 width: 100%;
 box-sizing: border-box;
 -moz-box-sizing: border-box;
 -webkit-box-sizing: border-box;
}
ul.slimmenu.collapsed li > ul {
 position: static;
 display: none;
}
ul.slimmenu.collapsed li a {
 display: block;
 height: 50px;
 line-height: 50px;
 border-bottom: 1px solid rgba(255, 255, 255, .05);
}
ul.slimmenu.collapsed li .sub-toggle {
 height: 50px;
}
ul.slimmenu li {
 position: relative;
}
ul.slimmenu li ul {
 margin: 0;
 list-style-type: none;
}
ul.slimmenu > li > a svg {
 -webkit-transform: rotate(90deg) translateY(-5px) translateX(-1px);
 transform: rotate(90deg) translateY(-5px) translateX(-1px);
 -webkit-transition: -webkit-transform .15s ease-in-out;
 transition: -webkit-transform .15s ease-in-out;
 transition: transform .15s ease-in-out;
 transition: transform .15s ease-in-out, -webkit-transform .15s ease-in-out;
}
ul.slimmenu li ul li {
 /*background: #C03033;*/
 /*border-bottom: 1px solid rgba(255, 255, 255, .05);*/
 text-align: left;
}
ul.slimmenu li > ul {
 position: absolute;
 left: 0;
 top: 100%;
 z-index: 999;
 display: none;
 /*display: block !important;*/ /*test*/
 width: 260px;
 background-color: #252929;
}
@media screen and (min-width: 1025px) {
 ul.slimmenu li > ul {
  box-shadow: 0 2px 8px rgba(0, 0, 0, .3);
  padding: 15px;
 }
}
@media screen and (max-width: 1024px) {
 ul.slimmenu li > ul {
  width: 100%;
 }
}
ul.slimmenu li > ul > li ul {
 position: absolute;
 left: 100%;
 top: 0;
 z-index: 999;
 display: none;
 width: 100%;
}
ul.slimmenu li > ul > li ul li {
 /*background-color: #D35053;*/
}
ul.slimmenu li a {
 position: relative;
 text-decoration: none;
 display: block;
 color: #fff;
 font-weight: 500;
 transition: all .2s ease;
}
@media screen and (min-width: 1025px) {
 ul.slimmenu li a {
  padding: 1.5em 2em;
 }
}
ul.slimmenu li ul li a {
 text-align: left;
 padding: 14px 24px;
}
ul.slimmenu li ul li a svg {
 position: absolute;
 top: 0;
 bottom: 0;
 margin-top: auto;
 margin-bottom: auto;
 right: 15px;
 /*-webkit-transform: rotate(90deg) translateY(-5px) translateX(-1px);
  transform: rotate(90deg) translateY(-5px) translateX(-1px);
  -webkit-transition: -webkit-transform .15s ease-in-out;
  transition: -webkit-transform .15s ease-in-out;
  transition: transform .15s ease-in-out;
  transition: transform .15s ease-in-out, -webkit-transform .15s ease-in-out;*/
}
@media screen and (min-width:1025px) and (max-width:1130px) {
 ul.slimmenu > li:nth-child(1), ul.slimmenu > li:nth-child(7) {
  display: none;
 }
}
@media screen and (max-width: 1024px) {
 ul.slimmenu li a svg {
  display: none;
 }
}
@media screen and (max-width: 1024px) {
 ul.slimmenu li a {
  padding: 0 0 0 15px;
  font-size: 14px;
  text-align: left;
 }
 ul.slimmenu li ul li a {
  padding: 0 0 0 24px;
  font-size: 13px;
 }
}
@media screen and (max-width: 767px) {
 ul.slimmenu li ul li, ul.slimmenu li ul li a {
  border-bottom: none;
 }
}
ul.slimmenu li a:hover {
 text-decoration: none;
 color: #fff;
 opacity: .7;
}
ul.slimmenu li ul li a:hover {
 background-color: rgba(25, 28, 29, .99);
}
ul.slimmenu li > ul > li ul li a:hover {
 /*background-color: #D35053;*/
}
ul.slimmenu li .sub-toggle {
 position: absolute;
 right: 0;
 top: 0;
 z-index: 999;
 width: 50px;
 height: 50px;
 text-align: center;
 cursor: pointer;
 border-left: 1px solid rgba(255, 255, 255, .05);
}
ul.slimmenu li .sub-toggle:before {
 content: "";
 display: inline-block;
 height: 100%;
 margin-right: -0.25em;
 vertical-align: middle;
}
ul.slimmenu li .sub-toggle > i {
 display: inline-block;
 font-size: 1.4rem;
 vertical-align: middle;
 font-style: normal;
 color: #fff;
}
ul.slimmenu li .sub-toggle > i::after {
 content: "+";
}
ul.slimmenu li .expanded i::after {
 content: "-";
}
@media screen and (max-width: 767px) {
 ul.slimmenu > li {
  border-right: none;
 }
}
.l-anchor {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
}
.l-anchor li {
 background-color: #fff;
 text-align: center;
}
.l-anchor li a {
 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;
 border: 1px solid #dce7eb;
 border-radius: 5px;
 line-height: 1;
}
.l-anchor li a::before {
 content: "";
 width: 6px;
 height: 6px;
 margin-right: 5px;
 border-top: 1px solid #d49597;
 border-left: 1px solid #d49597;
 -webkit-transform: translateX(-100%) translateY(-2px) rotate(-135deg);
 transform: translateX(-100%) translateY(-2px) rotate(-135deg);
 vertical-align: middle;
}
@media screen and (min-width: 1025px) {
 .l-anchor li a:hover {
  background: #fafafa;
 }
}
@media screen and (min-width: 768px) {
 .l-anchor li {
  width: 23.5%;
 }
 .l-anchor li:nth-child(n+5) {
  margin-top: 15px;
 }
 .l-anchor li:nth-child(n+4) {
  border-top: none;
 }
 .l-anchor li a {
  padding: 15px 10px;
 }
}
@media screen and (max-width: 767px) {
 .l-anchor li {
  width: 49%;
 }
 .l-anchor li:nth-child(n+3) {
  margin-top: 2%;
 }
 .l-anchor li a {
  padding: 10px 5px;
  font-size: 1.25rem;
 }
}
/*	 table
------------------------*/
.normal-table {
 width: 100%;
 max-width: 100%;
 table-layout: fixed;
 border-top: 1px solid #ececec;
 border-left: 1px solid #ececec;
 border-bottom: 1px solid #ececec;
}
.normal-table th, .normal-table td {
 padding: 8px;
 border-right: 1px solid #ececec;
 word-break: break-all;
}
.normal-table tr {
 border-top: 1px solid #ececec;
}
.normal-table th {
 background-color: #fafafa;
 font-weight: normal;
 text-align: left;
}
.normal-table.mgl-table th, .normal-table.mgl-table td {
 padding: 10px;
}
.variable-table {
 width: auto;
}
.scroll-table {
 width: 100%;
 overflow-y: hidden;
 overflow-x: auto;
 -ms-overflow-style: -ms-autohiding-scrollbar;
 -webkit-overflow-scrolling: touch;
}
@media screen and (max-width: 767px) {
 .normal-table.vertical-table {
  border: none;
 }
 .vertical-table th, .vertical-table td {
  display: block;
  border-right: none;
 }
}
/*-------------------------------------------------

	 title

-------------------------------------------------*/
.page-ttl {
 position: relative;
 margin-bottom: 50px;
 padding: 25px 100px;
 background-repeat: no-repeat;
 background-size: 50px 50px;
 background-position: 25px 50%;
}
.page-ttl.none-icon {
 padding-left: 25px;
}
.page-ttl h2 {
 font-size: 2.8rem;
 font-weight: 500;
 letter-spacing: .05em;
}
@media screen and (max-width: 767px) {
 .page-ttl {
  position: relative;
  margin-bottom: 35px;
  padding: 15px 40px;
  background-size: 30px 30px;
  background-position: 10px 50%;
 }
.page-ttl.none-icon {
 padding-left: 15px;
}
 .page-ttl h2 {
  font-size: 1.8rem;
 }
}
.page-category .page-ttl {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-category.png);
}
.page-guide .page-ttl {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-guide.png);
}
.page-cart .page-ttl {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-cart.png);
}
.page-company .page-ttl {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-company.png);
}
.page-privacy .page-ttl {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-privacy.png);
}
.page-faq .page-ttl {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-faq.png);
}
.page-voice .page-ttl {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-voice.png);
}
.page-about .page-ttl, .page-company .page-ttl {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-home.png);
}
.page-contact .page-ttl, .page-law .page-ttl {
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/ico-book.png);
}
.page-ttl:after, .page-ttl:before {
 content: "";
 display: block;
 position: absolute;
 top: 0;
 width: 51%;
 height: 100%;
 background-color: #fff;
}
.page-ttl:before {
 left: 0;
 width: 100px;
 border: 2px solid #d49597;
 border-right: none;
 /*border-top-left-radius:10px;*/
 border-bottom-left-radius: 10px;
 z-index: -1;
}
.page-ttl:after {
 right: 0;
 width: 95%;
 border: 2px solid #a72a2e;
 border-left: none;
 border-top-right-radius: 10px;
 /*border-bottom-right-radius:10px;*/
 z-index: -2;
}
.hdline {
 position: relative;
 margin: 3em 0 1.5em;
 padding-bottom: .7em;
 border-bottom: 2px solid #dce7eb;
 font-size: 2rem;
 font-weight: 500;
 letter-spacing: .05em;
}
.hdline::after {
 content: "";
 display: block;
 position: absolute;
 left: 0;
 bottom: -2px;
 width: 3.5em;
 height: 3px;
 /*background-color: #a72a2e;*/
 background-color: #d49597;
 border-radius: 2px;
}
.hdline.-gray::after {
 background-color: #ccc;
}
.hdline.-lg {
 font-size: 2.4rem;
}
.hdline.-sm {
 font-size: 1.6rem;
}
.hdline.-xs {
 font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
 .hdline {
  font-size: 1.6rem;
 }
 .hdline.-lg {
  font-size: 2rem;
 }
 .hdline.-sm {
  font-size: 1.4rem;
 }
 .hdline.-xs {
  font-size: 1.2rem;
 }
}
.hdline2 {
 position: relative;
 margin-bottom: .75em;
 padding-left: 1.5em;
 font-size: 1.6rem;
 font-weight: 500;
 letter-spacing: .05em;
 line-height: 1.6667;
}
.hdline2::before {
 content: "";
 display: block;
 position: absolute;
 top: .7em;
 left: 0;
 width: .9em;
 height: 3px;
 border-radius: 2px;
 background-color: #d49597;
}
.hdline2.-lg {
 font-size: 2rem;
}
.hdline2.-sm {
 font-size: 1.4rem;
}
.hdline2.-xs {
 font-size: 1.3rem;
}
@media screen and (max-width: 767px) {
 .hdline2 {
  font-size: 1.4rem;
 }
 .hdline2.-lg {
  font-size: 1.8rem;
 }
 .hdline2.-sm {
  font-size: 1.3rem;
 }
 .hdline2.-xs {
  font-size: 1.15rem;
 }
}
/*-------------------------------------------------

	 footer

-------------------------------------------------*/
/*.footer {
  background: #fafafa;
}
.footer-inner {
  width: calc(100% - 100px);
  max-width: 1400px;
  margin: 0 auto;
  padding: 50px 0;
}
.footer-guide li p {
  line-height: 1.6;
}
.footer-bottom {
  border-top: 1px solid #dcdcdc;
}
.footer-bottom ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.footer-bottom li a {
  font-size: 1.2rem;
}
.footer-bottom p {
  font-size: 1.1rem;
}
@media screen and (min-width: 1025px) {
  .footer-guide {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .footer-guide > li {
    width: 30%;
  }
}
@media screen and (min-width: 768px) {
  .footer-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 50px;
    padding-top: 50px;
  }
  .footer-bottom li:nth-child(n+2) {
    margin-left: 15px;
  }
}
@media screen and (max-width: 767px) {
  .footer-inner {
    width: calc(100% - 50px);
    padding: 25px 0;
  }
  .footer-bottom {
    margin-top: 25px;
    padding-top: 10px;
  }
  .footer-bottom li {
    width: 50%;
  }
  .footer-bottom li a {
    display: block;
    padding: 15px 5px;
    text-align: center;
  }
  .footer-bottom .copy-right {
    margin-top: 10px;
    text-align: center;
  }
}
.footer .guide-delivery > ul {
  border: 1px solid #dce7eb;
}
.footer .guide-delivery > ul > li:first-child {
  padding: 10px 5px;
  background-color: #fff;
}
.footer .guide-delivery > ul > li:last-child {
  flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-top: 1px solid #dce7eb;
}
.footer .guide-delivery > ul > li img {
  width: 50px;
}
.footer .guide-delivery > ul > li > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.footer .guide-delivery > ul > li > ul > li:nth-child(2) {
  padding-left: 15px;
  padding-right: 15px;
}
.footer .guide-delivery > ul > li dl {
  width: 33.33333333%;
  height: 100%;
  border-left: 1px solid #dce7eb;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.footer .guide-delivery > ul > li dl:first-child {
  border-left: none;
}
.footer .guide-delivery > ul > li dt, .footer .guide-delivery > ul > li dd {
  width: 100%;
  padding: 5px;
  font-size: 1.2rem;
  text-align: center;
}
.footer .guide-delivery > ul > li dt {
  background-color: #eee;
  border-bottom: 1px solid #dce7eb;
}
.footer .guide-delivery > ul > li dd {
  background-color: #fff;
}*/
/*-------------------------------------------------

	 list

-------------------------------------------------*/
.l-normal li {
 position: relative;
 margin-left: 1em;
 text-indent: -1em;
 text-align: left;
 line-height: 1.4;
}
.l-normal li:nth-child(n+2) {
 margin-top: 3px;
}
.l-normal.l-space-long li:nth-child(n+2) {
 margin-top: 10px;
}
.l-circle li {
 position: relative;
 padding-left: 1em;
}
.l-circle li:before {
 content: "";
 display: block;
 position: absolute;
 top: 10px;
 left: .35em;
 bottom: auto;
 right: auto;
 margin: auto;
 width: 4px;
 height: 4px;
 background: #1f1f1f;
 border-radius: 50%;
}
.l-circle li:nth-child(n+2) {
 margin-top: .5em;
}
.l-counter {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -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;
 counter-reset: l-counter;
}
.l-counter li {
 position: relative;
 padding-left: 30px;
 line-height: 1.5;
}
.l-counter li:before {
 position: absolute;
 top: .1em;
 left: 0;
 content: counter(l-counter);
 counter-increment: l-counter;
 background-color: #00447C;
 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;
 height: 20px;
 width: 20px;
 border-radius: 50%;
 line-height: 1;
 font-family: 'BrandonGrotesque-Regular', sans-serif;
 color: #fff;
}
.l-counter li:nth-child(n+2) {
 margin-top: 15px;
}
.l-counter.l-counter-h li:nth-child(n+2) {
 margin-top: 30px;
}
@media screen and (max-width: 767px) {
 .l-counter li {
  padding-left: 28px;
 }
 .l-counter li:before {
  height: 20px;
  width: 20px;
  font-size: 1.6rem;
 }
}
.l-document li:nth-child(n+2) a {
 padding-top: 10px;
 border-top: 1px dashed #ececec;
}
.l-document li:last-child {
 border-bottom: 1px dashed #ececec;
}
.l-document a {
 display: block;
 position: relative;
 padding: 10px 10px 10px 40px;
 font-size: 1.3rem;
}
.l-document a::before {
 content: "";
 display: block;
 position: absolute;
 top: 0;
 bottom: 0;
 left: 10px;
 width: 20px;
 height: 26px;
 margin-top: auto;
 margin-bottom: auto;
 background-image: url("../img/common/icon-pdf.png");
 background-repeat: no-repeat;
 background-size: contain;
}
@media screen and (min-width: 1025px) {
 .l-document a:hover {
  background-color: #F4F8F9;
 }
}
@media screen and (max-width: 767px) {
 .l-document a {
  padding: 10px 0 10px 24px;
  font-size: 1.3rem;
 }
 .l-document a::before {
  left: 0;
  width: 14px;
  height: 18px;
 }
}
.l-square {
 margin-left: 1.5em;
}
.l-square > li {
 position: relative;
 margin-bottom: 0.5em;
 list-style: none;
}
.l-square > li:last-child {
 margin-bottom: 0;
}
.l-square > li:before {
 content: "";
 display: block;
 position: absolute;
 top: 5px;
 left: -1.25em;
 bottom: auto;
 right: auto;
 margin: auto;
 width: 8px;
 height: 8px;
 background-color: #a72a2e;
 border-radius: 2px;
}
.l-square-pink > li:before {
 background-color: #d49597;
}
.l-square-red > li:before {
 content: "";
 background: #B93A2D;
}
.l-square {
 margin-left: 1.5em;
}
.l-line > li {
 position: relative;
 margin-bottom: 0.3em;
 list-style: none;
}
.l-line > li:last-child {
 margin-bottom: 0;
}
.l-line > li:before {
 content: "";
 display: block;
 position: absolute;
 top: .7em;
 left: -1.25em;
 bottom: auto;
 right: auto;
 margin: auto;
 width: 8px;
 height: 1px;
 background-color: #ccc;
 border-radius: 2px;
}
.l-line-pink > li:before {
 background-color: #d49597;
}
.l-line-red > li:before {
 content: "";
 background: #B93A2D;
}
.l-square .l-line {
 margin-left: 1.5em;
}
.about-lead {
 margin: 50px 0;
 font-size: 22px;
 text-align: center;
}
.about-lead-inner {
 position: relative;
}
.about-lead-inner span::before, .about-lead-inner span::after {
 content: "";
 position: absolute;
 top: 0;
 bottom: 0;
 display: block;
 margin-top: auto;
 margin-bottom: auto;
 background-repeat: no-repeat;
 vertical-align: middle;
}
.about-lead-inner span::before {
 left: 0;
 background: url(https://img21.shop-pro.jp/PA01421/473/etc/about-lead-left.png?cmsp_timestamp=20190524181431);
 background-size: cover;
}
.about-lead-inner span::after {
 right: 0;
 background: url(https://img21.shop-pro.jp/PA01421/473/etc/about-lead-right.png?cmsp_timestamp=20190524181436);
 background-size: cover;
}
.about-lead span em {
 position: relative;
 font-size: 26px;
 font-weight: 700;
 font-style: normal;
}
.about-lead span em::after {
 content: "";
 background-color: #FFF45C;
 position: absolute;
 z-index: -1;
 bottom: -3px;
 display: block;
 width: 100%;
 height: 15px;
 left: 0;
}
.about-lead p {
 margin-top: 15px;
}
@media screen and (min-width:768px) {
 .about-lead-inner {
  display: inline-block;
  padding: 0 100px;
 }
 .about-lead-inner span::before, .about-lead-inner span::after {
  width: 72px;
  height: 111px;
 }
}
@media screen and (max-width:767px) {
 .about-lead-inner {
  padding: 0 30px;
 }
 .about-lead {
  margin: 25px 0;
  font-size: 14px;
 }
 .about-lead span em {
  font-size: 16px;
 }
 .about-lead-inner span::before, .about-lead-inner span::after {
  width: 57px;
  height: 90px;
 }
}
.page-about .list-about li a {
 position: relative;
 display: block;
 padding: 10px 5px 25px 5px;
 border: 1px solid #dce7eb;
 font-size: 1.6rem;
 font-weight: 500;
 text-align: center;
 text-decoration: none;
 -webkit-transition: all .4s;
 -o-transition: all .4s;
 transition: all .4s;
}
.page-about .list-about li a::after {
 content: "";
 position: absolute;
 bottom: 12px;
 right: 0;
 left: 0;
 margin-right: auto;
 margin-left: auto;
 width: 6px;
 height: 6px;
 border-top: 2px solid #a72a2e;
 border-right: 2px solid #a72a2e;
 -webkit-transform: rotate(135deg);
 transform: rotate(135deg);
 -webkit-transition: all .4s;
 -o-transition: all .4s;
 transition: all .4s;
}
@media screen and (min-width:768px) {
 .page-about .list-about {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  justify-content: center;
 }
 .page-about .list-about li {
  width: 32%;
 }
 .page-about .list-about li:nth-child(n+2) {
  margin-left: 2%;
 }
 .page-about .list-about li a:hover {
  border: 1px solid #a72a2e;
  color: #a72a2e;
 }
 .page-about .list-about li a:hover::after {
  bottom: 8px;
 }
}
@media screen and (max-width:767px) {
 .page-about .list-about {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
 }
 .page-about .list-about li {
  width: 48%;
 }
 .page-about .list-about li:nth-child(even) {
  margin-left: 4%;
 }
 .page-about .list-about li:nth-child(n+3) {
  margin-top: 10px;
 }
 .page-about .list-about li a {
  padding: 5px 5px 20px 5px;
  border: 2px solid #c9c9c9;
  font-size: 14px;
 }
 .page-about .list-about li a::after {
  width: 6px;
  height: 6px;
 }
}
.page-about .about-box1 {
 margin-top: 25px;
 background-image: url(https://img21.shop-pro.jp/PA01421/473/etc/about-bg.png?cmsp_timestamp=20190524181448);
 background-repeat: no-repeat;
 background-color: #f5f5f5;
 background-position: 50% 50%;
 border-radius: 5px;
}
.page-about .about-box1 p {
 font-size: 18px;
}
.page-about .about-box1 p:nth-child(n+2) {
 margin-top: 15px;
}
@media screen and (min-width:768px) {
 .page-about .about-box1 {
  padding: 100px 10px;
  text-align: center;
 }
}
@media screen and (max-width:767px) {
 .page-about .about-box1 {
  padding: 15px 10px;
 }
 .page-about .about-box1 p {
  font-size: 14px;
 }
}
.page-about .about-box2 li {
 padding: 0 5px 25px;
 background-color: #f5f5f5;
 border-radius: 5px;
 text-align: center;
}
.page-about .about-box2 li strong {
 position: relative;
 display: block;
 text-align: center;
}
.page-about .about-box2 li strong span {
 position: absolute;
 top: -25px;
 left: 0;
 right: 0;
 margin-left: auto;
 margin-right: auto;
}
.page-about .about-box2 li h4 {
 margin-top: 15px;
 padding-top: 100px;
 font-size: 26px;
 font-weight: 700;
 color: #cc3c34;
 text-align: center;
}
.page-about .about-box2 li p {
 margin-top: 10px;
}
@media screen and (min-width:768px) {
 .page-about .about-box2 ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 50px;
 }
 .page-about .about-box2 li {
  width: 48%;
 }
 .page-about .about-box2 li:nth-child(even) {
  margin-left: 4%;
 }
 .page-about .about-box2 li:nth-child(n+3) {
  margin-top: 50px;
 }
}
@media screen and (max-width:767px) {
 .page-about .about-box2 ul {
  margin-top: 35px;
 }
 .page-about .about-box2 li:nth-child(n+2) {
  margin-top: 50px;
 }
 .page-about .about-box2 li img {
  width: 80px;
  height: auto;
 }
 .page-about .about-box2 li h4 {
  margin-top: 15px;
  padding-top: 70px;
  font-size: 20px;
 }
 .page-about .about-box2 li p {
  text-align: left;
 }
}
.voice-list li {
 position: relative;
 padding: 30px 0 15px;
 background: #fafafa;
}
.voice-list li:nth-child(n+3) {
 margin-top: 50px;
}
.voice {
 position: absolute;
 top: -25px;
 left: 15px;
 display: -webkit-box;
 display: -moz-box;
 display: -ms-flexbox;
 display: -webkit-flex;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 justify-content: center;
}
.balloon-box {
 padding: 0 0 0 20px;
 font-size: 14px;
 font-weight: 700;
 line-height: 2.13;
}
.balloon-box .balloon {
 position: relative;
 padding: 10px;
 border-radius: 5px;
 background: #fff;
 border: 1px solid #ccc;
 color: #a72a2e;
 font-weight: 500;
 line-height: 1.4;
}
.balloon-box .balloon::before {
 content: "";
 position: absolute;
 top: 50%;
 left: -24px;
 margin-top: -12px;
 border: 12px solid transparent;
 border-right: 12px solid #FFF;
 z-index: 2;
}
.balloon-box .balloon::after {
 content: "";
 position: absolute;
 top: 50%;
 left: -28px;
 margin-top: -14px;
 border: 14px solid transparent;
 border-right: 14px solid #ccc;
 z-index: 1;
}
.balloon-box .balloon span {
 display: block;
}
.balloon-box .balloon span:nth-child(n+2) {
 margin-top: 10px;
}
.voice-answer {
 position: relative;
 margin: 15px 15px 0;
 background: #fff;
 border-radius: 5px;
}
.voice-answer .voice-img {
 display: block;
 margin: 15px 0;
}
.voice-answer .voice-img p {
 display: inline-block;
 margin-bottom: 15px;
 padding-bottom: 5px;
 border-bottom: 1px solid #488A99;
 color: #488A99;
}
.answer-box {
 margin: 15px 0 0;
 padding: 15px;
}
.answer-box p:nth-child(n+2) {
 margin-top: 15px;
}
@media screen and (min-width:768px) {
 .voice-list {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 75px;
 }
 .voice-list li {
  width: 48%;
 }
 .voice-list li:nth-child(odd) {
  margin-right: 2%;
 }
 .voice-list li:nth-child(even) {
  margin-left: 2%;
 }
}
@media screen and (max-width:767px) {
 .wrp-voice {
  margin: 50px 10px 25px;
 }
 .voice-box {
  width: 100%;
 }
 .voice-list {
  margin-top: 50px;
 }
 .voice-list li {
  padding: 15px 0;
 }
 .voice-list li:nth-child(n+2) {
  margin-top: 50px;
 }
 .voice {
  position: absolute;
  top: -25px;
  left: 15px;
 }
 .voice .icon, .voice .icon img {
  width: 37px !important;
 }
 .balloon-box {
  flex: 1;
 }
 .balloon-box {
  padding: 0 10px;
 }
 .balloon-box .balloon {
  padding: 5px;
  font-size: 13px;
 }
 .balloon-box .balloon::before {
  left: -12px;
  margin-top: -6px;
  border: 6px solid transparent;
  border-right: 6px solid #fff;
 }
 .balloon-box .balloon::after {
  left: -16px;
  margin-top: -8px;
  border: 8px solid transparent;
  border-right: 8px solid #ccc;
 }
 .voice-answer {
  margin: 20px 10px 0;
  padding-left: 0;
 }
 .answer-box {
  margin: 0;
  padding: 10px;
 }
 .answer-box p {
  font-size: 13px;
 }
}
.list-faq > li {
 border-bottom: 1px solid #e6e7e8;
}
.list-faq li .q-ttl {
 position: relative;
 display: block;
 font-weight: 500;
 cursor: pointer;
 -webkit-transition: all .4s;
 -o-transition: all .4s;
 transition: all .4s;
}
.list-faq li .q-ttl::before {
 content: "Q";
 position: absolute;
 bottom: 0;
 margin-top: auto;
 margin-bottom: auto;
 font-family: 'BrandonGrotesque-regular', sans-serif;
 font-weight: normal;
 color: #a72a2e;
 line-height: 1;
}
.list-faq li .q-ttl .icn-faq {
 position: absolute;
 top: 0;
 right: 20px;
 bottom: 0;
 margin-top: auto;
 margin-bottom: auto;
}
.list-faq li .q-inner {
 position: relative;
 display: none;
}
.list-faq li .q-inner::before {
 content: "A";
 display: block;
 background-color: #a72a2e;
 font-family: 'BrandonGrotesque-regular', sans-serif;
 font-weight: normal;
 color: #fff;
 text-align: center;
}
.list-faq li:nth-child(odd) {
 background: #fafafa;
}
.list-faq .icn-faq {
 background-color: #d49597;
 border-radius: 50%;
}
.icn-faq, .icn-faq span {
 display: inline-block;
 transition: all .4s;
}
.icn-faq {
 position: relative;
}
.icn-faq span {
 position: absolute;
 background: #fff;
}
.icn-faq span:nth-of-type(1) {
 transform: rotate(0deg);
 -webkit-transform: rotate(0deg);
 -moz-transform: rotate(0deg);
 -ms-transform: rotate(0deg);
 -o-transform: rotate(0deg);
}
.icn-faq span:nth-of-type(2) {
 transform: rotate(90deg);
 -webkit-transform: rotate(90deg);
 -moz-transform: rotate(90deg);
 -ms-transform: rotate(90deg);
 -o-transform: rotate(90deg);
}
.icn-faq.open span:nth-of-type(2) {
 transform: rotate(180deg);
 -webkit-transform: rotate(180deg);
 -moz-transform: rotate(180deg);
 -ms-transform: rotate(180deg);
 -o-transform: rotate(180deg);
}
.icn-faq.open span:nth-of-type(1) {
 display: none;
}
.page-faq .hdline {
 margin-top: 70px;
}
.page-faq h2 + h3 {
 margin-top: 0;
}
.page-faq h4 {
 padding: 10px;
 font-weight: 700;
 color: #fff;
 line-height: 1;
}
@media screen and (min-width:768px), print {
 .page-faq h3 {
  font-size: 2rem;
 }
 .page-faq h3::before {
  width: 43px;
  height: 30px;
 }
 .page-faq h4 {
  margin-top: 25px;
  font-size: 1.6rem;
 }
 .list-faq {
  margin-top: 25px;
 }
 .list-faq li .q-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 30px 60px 30px 50px;
  font-size: 1.5rem;
 }
 .list-faq li .q-ttl::before {
  top: 30px;
  left: 20px;
  font-size: 2.2rem;
  line-height: 1;
 }
 .list-faq li .q-inner::before {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2.2rem;
  width: 30px;
  height: 30px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  justify-content: center;
 }
 .icn-faq {
  width: 23px;
  height: 23px;
 }
 .icn-faq span {
  left: 7px;
  width: 9px;
  height: 1px;
 }
 .icn-faq span:nth-of-type(1), .icn-faq span:nth-of-type(2) {
  top: 11px;
 }
 .list-faq li .q-ttl:hover .icn-faq {
  background-color: #d49597;
 }
 .list-faq li .q-ttl:hover .icn-faq span {
  background-color: #fff;
 }
 .list-faq li .q-inner {
  margin: 0 15px 0 22px;
  padding: 0 50px 35px 50px;
 }
}
@media screen and (max-width:767px) {
 .page-faq h3 {
  margin-top: 25px;
  font-size: 1.5rem;
 }
 .page-faq h3::before {
  width: 28px;
  height: 20px;
 }
 .page-faq h4 {
  margin-top: 15px;
  font-size: 1.4rem;
 }
 .list-faq li .q-ttl .icn-faq {
  right: 5px;
 }
 .list-faq li .q-inner::before {
  position: absolute;
  top: 4px;
  left: 10px;
  width: 20px;
  height: 20px;
  font-size: 1.6rem;
  line-height: 20px;
 }
 .list-faq li .q-ttl {
  padding: 15px 60px 15px 30px;
  font-size: 1.3rem;
 }
 .list-faq li .q-ttl::before {
  top: 16px;
  left: 10px;
  font-size: 1.6rem;
 }
 .list-faq li .q-inner {
  margin-bottom: 20px;
  padding: 0;
 }
 .icn-faq {
  width: 15px;
  height: 15px;
 }
 .icn-faq span {
  top: 4px;
  left: 4px;
  width: 7px;
  height: 1px;
 }
 .icn-faq span:nth-of-type(1), .icn-faq span:nth-of-type(2) {
  top: 7px;
 }
 .list-faq li .q-inner p {
  padding: 0 10px 0 40px;
 }
}
.wrp-about * {
 box-sizing: border-box;
}
.wrp-about h3 {
 margin: 0 0 25px;
 padding-top: 50px;
 font-size: 30px;
 font-weight: 700;
 text-align: center;
}
.wrp-about h3 strong {
 font-size: 40px;
 font-weight: 700;
 color: #cc3c34;
}
@media screen and (max-width:767px) {
 .wrp-about {
  margin: 0 10px;
 }
 .wrp-about h3 {
  margin: 0 0 25px;
  padding-top: 50px;
  font-size: 20px;
 }
 .wrp-about h3 strong {
  font-size: 30px;
 }
}
.about-lead {
 margin: 50px 0;
 font-size: 22px;
 text-align: center;
}
.about-lead-inner {
 position: relative;
}
.about-lead-inner span::before, .about-lead-inner span::after {
 content: "";
 position: absolute;
 top: 0;
 bottom: 0;
 display: block;
 margin-top: auto;
 margin-bottom: auto;
 background-repeat: no-repeat;
 vertical-align: middle;
}
.about-lead-inner span::before {
 left: 0;
 background: url(https://gigaplus.makeshop.jp/happyhuck/img/about/about-lead-left.png);
 background-size: cover;
}
.about-lead-inner span::after {
 right: 0;
 background: url(https://gigaplus.makeshop.jp/happyhuck/img/about/about-lead-right.png);
 background-size: cover;
}
.about-lead span em {
 position: relative;
 font-size: 26px;
 font-weight: 700;
 font-style: normal;
}
.about-lead span em::after {
 content: "";
 background-color: #FFF45C;
 position: absolute;
 z-index: -1;
 bottom: -3px;
 display: block;
 width: 100%;
 height: 15px;
 left: 0;
}
.about-lead p {
 margin-top: 15px;
}
@media screen and (min-width:768px) {
 .about-lead-inner {
  display: inline-block;
  padding: 0 100px;
 }
 .about-lead-inner span::before, .about-lead-inner span::after {
  width: 72px;
  height: 111px;
 }
}
@media screen and (max-width:767px) {
 .about-lead-inner {
  padding: 0 30px;
 }
 .about-lead {
  margin: 25px 0;
  font-size: 14px;
 }
 .about-lead span em {
  font-size: 16px;
 }
 .about-lead-inner span::before, .about-lead-inner span::after {
  width: 57px;
  height: 90px;
 }
}
@media screen and (max-width:767px) {
 .wrp-about h3 {
  margin: 50px 0 25px;
  font-size: 20px;
 }
 .wrp-about h3 strong {
  font-size: 30px;
 }
}
.wrp-about .list-about li a {
 position: relative;
 display: block;
 padding: 10px 5px 25px 5px;
 border: 4px solid #c9c9c9;
 font-size: 18px;
 font-weight: 700;
 text-align: center;
 text-decoration: none;
 -webkit-transition: all .4s;
 -o-transition: all .4s;
 transition: all .4s;
}
.wrp-about .list-about li a::after {
 content: "";
 position: absolute;
 bottom: 12px;
 right: 0;
 left: 0;
 margin-right: auto;
 margin-left: auto;
 width: 10px;
 height: 10px;
 border-top: solid 1px #7a1e24;
 border-right: solid 1px #7a1e24;
 -webkit-transform: rotate(135deg);
 transform: rotate(135deg);
 -webkit-transition: all .4s;
 -o-transition: all .4s;
 transition: all .4s;
}
@media screen and (min-width:768px) {
 .wrp-about .list-about {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  justify-content: center;
 }
 .wrp-about .list-about li {
  width: 32%;
 }
 .wrp-about .list-about li:nth-child(n+2) {
  margin-left: 2%;
 }
 .wrp-about .list-about li a:hover {
  border: 4px solid #7a1e24;
  color: #7a1e24;
 }
 .wrp-about .list-about li a:hover::after {
  bottom: 8px;
 }
}
@media screen and (max-width:767px) {
 .wrp-about .list-about {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
 }
 .wrp-about .list-about li {
  width: 48%;
 }
 .wrp-about .list-about li:nth-child(even) {
  margin-left: 4%;
 }
 .wrp-about .list-about li:nth-child(n+3) {
  margin-top: 10px;
 }
 .wrp-about .list-about li a {
  padding: 5px 5px 20px 5px;
  border: 2px solid #c9c9c9;
  font-size: 14px;
 }
 .wrp-about .list-about li a::after {
  width: 6px;
  height: 6px;
 }
}
.wrp-about .about-box1 {
 margin-top: 25px;
 background-image: url(https://gigaplus.makeshop.jp/happyhuck/img/about/about-bg.png);
 background-repeat: no-repeat;
 background-color: #f2f2f2;
 background-position: 50% 50%;
 border-radius: 5px;
}
.wrp-about .about-box1 p {
 font-size: 18px;
}
.wrp-about .about-box1 p:nth-child(n+2) {
 margin-top: 15px;
}
@media screen and (min-width:768px) {
 .wrp-about .about-box1 {
  padding: 100px 10px;
  text-align: center;
 }
}
@media screen and (max-width:767px) {
 .wrp-about .about-box1 {
  padding: 15px 10px;
 }
 .wrp-about .about-box1 p {
  font-size: 14px;
 }
}
.wrp-about .about-box2 li {
 padding: 0 5px 25px;
 background-color: #f2f2f2;
 border-radius: 5px;
 text-align: center;
}
.wrp-about .about-box2 li strong {
 position: relative;
 display: block;
 text-align: center;
}
.wrp-about .about-box2 li strong span {
 position: absolute;
 top: -25px;
 left: 0;
 right: 0;
 margin-left: auto;
 margin-right: auto;
}
.wrp-about .about-box2 li h4 {
 margin-top: 15px;
 padding-top: 100px;
 font-size: 26px;
 font-weight: 700;
 color: #cc3c34;
 text-align: center;
}
.wrp-about .about-box2 li p {
 margin-top: 10px;
}
@media screen and (min-width:768px) {
 .wrp-about .about-box2 ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 50px;
 }
 .wrp-about .about-box2 li {
  width: 48%;
 }
 .wrp-about .about-box2 li:nth-child(even) {
  margin-left: 4%;
 }
 .wrp-about .about-box2 li:nth-child(n+3) {
  margin-top: 50px;
 }
}
@media screen and (max-width:767px) {
 .wrp-about .about-box2 ul {
  margin-top: 35px;
 }
 .wrp-about .about-box2 li:nth-child(n+2) {
  margin-top: 50px;
 }
 .wrp-about .about-box2 li img {
  width: 80px;
  height: auto;
 }
 .wrp-about .about-box2 li h4 {
  margin-top: 15px;
  padding-top: 70px;
  font-size: 20px;
 }
 .wrp-about .about-box2 li p {
  text-align: left;
 }
}
.about_table {
 width: 100%;
}
.about_table tr th, .about_table tr td {
 padding: 50px 25px;
 vertical-align: middle;
}
.about_table tr th {
 /*background-color: #ececec;*/
}
@media screen and (min-width:768px) {
 .about_table {
  margin-bottom: 50px;
  border-top: 1px solid #ececec;
 }
 .about_table tr {
  border-bottom: 1px solid #ececec;
 }
 .about_table tr th {
  width: 200px;
 }
}
@media screen and (max-width:767px) {
 .about_table {
  margin-bottom: 25px;
 }
 .about_table tr th, .about_table tr td {
  display: block;
  padding: 10px 0;
 }
 .about_table tr th {
  border-bottom: 1px solid #ececec;
  text-align: left;
 }
 .about_table tr td {
  padding-bottom: 25px;
 }
}
.flow-list li {
 border: 1px solid #eaeaea;
}
.flow-list li:last-child::before, .flow-list li:last-child::after {
 display: none;
}
@media screen and (min-width:768px) {
 .flow-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 25px;
 }
 .flow-list li {
  position: relative;
  width: 30%;
  padding: 25px;
 }
 .flow-list li strong {
  display: block;
  margin-bottom: 15px;
  font-weight: 500;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.35;
 }
 .flow-list li::before, .flow-list li::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -11%;
  border-top: 2px solid #d49597;
 }
 .flow-list li::before {
  width: 15px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
 }
 .flow-list li::after {
  width: 10px;
  height: 10px;
  border-right: 2px solid #d49597;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
 }
 .flow-list li div:first-child {
  text-align: center;
 }
}
@media screen and (max-width:767px) {
 .wrp-training {
  padding: 25px 0;
 }
 .flow-list {
  margin-top: 15px;
 }
 .wrp-training .lead {
  font-size: 1.4rem;
  text-align: left;
 }
 .flow-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 20px;
 }
 .flow-list li div:first-child {
  width: 60px;
 }
 .flow-list li div:last-child {
  flex: 1;
  padding-left: 10px;
 }
 .flow-list li:nth-child(n+2) {
  margin-top: 35px;
 }
 .flow-list li::before, .flow-list li::after {
  content: "";
  position: absolute;
  left: 50%;
  text-align: center;
 }
 .flow-list li::before {
  bottom: -32px;
  height: 15px;
  border-left: 2px solid #d49597;
  transform: translate(-50%, -50%);
 }
 .flow-list li::after {
  bottom: -25px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #d49597;
  border-left: 2px solid #d49597;
  -webkit-transform: translateX(-50%) rotate(-135deg);
  transform: translateX(-50%) rotate(-135deg);
 }
 .flow-list li p span {
  font-size: 1.1rem;
 }
}
.guide-delivery img {
 width: 50px;
 height: auto;
}
.guide-delivery ul {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
}
.guide-delivery ul li {
 width: 30%;
}
/*.guide-delivery ul li dl{
display: none;
}*/
.guide-delivery ul li:first-child dl {
 display: none;
}
.guide-delivery ul li:last-child {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
}
.guide-delivery ul li:last-child dl {}
.guide-delivery ul li:last-child dt, .guide-delivery ul li:last-child dd {
 padding: 15px;
 text-align: center;
}
.shipping-company {
 display: flex;
}
.shipping-company li:nth-child(n+2) {
 margin-left: 25px;
}
.shipping-company img {
 width: 60px;
 height: auto;
}
.shipping-price {
 width: inherit;
}
.shipping-price th, .shipping-price td {
 text-align: center;
}
.item-category ul li {
 background-color: #f5f5f5;
 border-radius: 5px;
 vertical-align: top;
}
@media screen and (min-width: 768px) {
 .item-category ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
 }
 .item-category ul li {
  width: 47.5%;
  background-color: #f5f5f5;
  border-radius: 5px;
  vertical-align: top;
 }
 .item-category ul li:first-child {
  width: 100%;
  margin-bottom: 5%;
 }
}
@media screen and (min-width: 1025px) {
 .item-category ul li .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
 }
 .item-category ul li .photo {
  width: 513px;
 }
 .item-category ul li .txt {
  flex: 1;
 }
}
@media screen and (min-width: 768px) {
 .item-category ul li .txt .txt-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
 }
}
.item-category ul li h2 {
 margin: 5%;
 font-size: 1.8rem;
 font-weight: 500;
}
.item-category ul li dl {
 width: auto;
 padding:  5% 2% 5% 5%;
 line-height: 2.4;
}
.item-category ul li dl dd::before {
 content: url(https://www.dinos.co.jp/category/images/arrow_03.gif);
 margin: 0 5px 0 15px;
 position: relative;
 top: -3px;
}
.item-category ul li + a {
 display: block;
}
.item-category a:hover {
 text-decoration: underline;
}
@media screen and (max-width: 767px) {
 /*.item-category ul li img {
  position: relative;
  width: 30%;
  height: auto;
  top: -45px;
  left: 36%;
  bottom: 0;
 }*/
 .item-category ul li {
  margin: 0 0 70px 0;
 }
 .item-category ul li:first-child {
  margin-top: 90px;
 }
 .item-category ul li:last-child {
  margin-bottom: 0;
 }
 .item-category ul li h2 {
  margin: -30px 0 15px;
  font-size: 1.6rem;
  text-align: center;
 }
 .item-category ul li dl {
  padding: 15px 15px 10px;
 }
}
.postage-table tr th, .postage-table tr td {
 vertical-align: middle;
}
.postage-table tr th:nth-child(3), .postage-table tr th:nth-child(4), .postage-table tr td:nth-child(3), .postage-table tr td:nth-child(4) {
 text-align: center;
}
@media screen and (min-width: 768px) {
 .postage-table tr th:nth-child(1) {
  width: 90px;
 }
 .postage-table tr th:nth-child(3), .postage-table tr th:nth-child(4) {
  width: 130px;
 }
}
@media screen and (max-width: 767px) {
 .postage-table tr th, .postage-table tr td {
  font-size: 1.2rem;
 }
 .postage-table tr th:nth-child(1) {
  width: 60px;
 }
 .postage-table tr th:nth-child(3), .postage-table tr th:nth-child(4) {
  width: 80px;
 }
}
.product-original-code {
 text-align: right;
 font-size: 1.2rem;
 color: #ACAFBD;
}
.breadcrumb {
	width:calc(100% - 100px);
	max-width: 1400px;
	display: flex;
 flex-wrap: wrap;
	margin: 15px auto 0;
}
.breadcrumb li {
 font-size: 1.2rem;
  line-height: 1;
}

.breadcrumb li::before {
    content: "/";
    display: inline-block;
    padding: 0 10px;
    line-height: 1;
}

.breadcrumb li:first-child::before {
	display: none;
}

.side-category-list a{
	display: flex;
	align-items: center;
 position: relative;
 height: 54px;
 /*border-bottom: dotted 1px rgba(0, 0, 0, .3);*/
 letter-spacing: .06em;
	padding-left: 4px;
}
.side-category-list a.no-link{
	pointer-events: none;
}
.side-category-list a.category-sub{
	padding: 16px;
}
.side-category-list a.category-last{
	border-bottom: none;
}
.side-category-list a.category-first-bold{
	border-top: 2px solid #dce7eb;
}
.side-category-list a.category-first{
		border-top: 1px dotted #ccc;
}

.side-category-list a:hover{
	/*color: #a72a2e;*/
	background-color: #F4F8F9;
}

.side-category-list img {
	width: 40px;
	height: 40px;
  margin-right: 12px;
}

.header-merit{
	max-width: 1400px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border-bottom: 1px solid #dce7eb;
}

.header-merit li{
	position: relative;
	width: 25%;
	padding: 5px;
	text-align: center;
}

.header-merit li::before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin-top: auto;
	margin-bottom: auto;
	width: 1px;
	height: 50%;
	background-color: #dce7eb;
}

.header-merit li:first-child::before{
	display: none;
}




