@charset "euc-jp";

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: 0;
    text-decoration: underline;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace;
    font-size: 1em
}

small, .small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button
}

[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

[hidden],
template {
    display: none
}

* {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
}

body {
    background-color: #fafafa;
    background-image: url();

    color: #474a4d;
    font-family:-apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    YuGothic,
    "ヒラギノ角ゴ ProN W3",
    Hiragino Kaku Gothic ProN,
    Arial,
    "メイリオ",
    Meiryo,
    sans-serif;
}

h2 {
    font-size: 24px;
}

h3 {
    font-size: 20px;
}

h4 {
    font-size: 18px;
}

p {
    color: #666;
    line-height: 1.9;
}

a {
    color: #383838;
}

a:hover {
    color: #897858;
}

img {
    vertical-align: middle;
}

a img:hover {
    opacity: 0.7;
}

ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

ul li,
ol li {
    padding-bottom: 15px;
}

dl dt,
dl dd {
    line-height: 1.9;
}

dl dd {
    margin-bottom: 20px;
}

.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

.w-max1024 {
    margin: 0 auto;
    max-width: 1024px;
}

.w-max1200 {
    margin: 0 auto;
    max-width: 1400px;
}

/* レイアウト */
#contents {
    margin: 20px auto 40px;
    max-width: 1400px;
}

#main_top {
    margin: 0 auto;
    padding: 0 20px;
    max-width: 100%;
}

#main {
    padding: 0;
    width: 74%;
    float: left;
}

#side_top {
    padding: 0 20px;
    width: 100%;
}

#side {
    padding-left: 5%;
    width: 26%;
    float: right;
}

#side h4 {
    border-bottom: dotted 1px #aaa;
}

/* 色関連 */
.bg-gold {
    background-color: #9f917c;
}

.bg-black {
    background-color: #241a08;
}

.bg-gold a,
.bg-black a {
    color: #fff;
}

.bg-yellow {
    background-color: #fef263;
}


/* font関連 */
.webfont {
    font-family: 'Marcellus SC', serif;
}

.hurigana,
.font-gold {
    color: #9f917c;
    font-size: 10px;
}

.line-through {
    text-decoration: line-through;
}

/* icon関連 */
.icon-b,
.icon-w {
    width: 16px;
    height: 16px;
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

.icon-lg-b,
.icon-lg-w {
    width: 24px;
    height: 24px;
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

i {
    margin-right: 5px;
}


/* header */
#header {
    border-bottom: solid 1px #f3f2f2;
}

#header .inner {
    position: relative;
}

#header .logo {
    margin: 20px 0 20px 40px;
    width: 80px;
    height: auto;
    display: inline-block;
}

#header .logo-phone {
    margin: 15px 0 20px 20px;
    width: 140px;
    height: auto;
}

#header h1 {
    margin: 0;
    color: #9e9e9e;
    font-size: 10px;
    font-weight: normal;
    text-align: right;
    position: absolute;
    right: 20px;
    top: 50px;
}

#header .wrapper {
    float: right;
}

#header .wrapper ul {
    font-size: 0;
    float: left;
}

#header .wrapper ul li {
    padding: 0 15px;
    height: 40px;
    font-size: 12px;
    text-align: center;
    line-height: 40px;
    display: inline-block;
}

form.header-search {
    float: left;
}

form.header-search .sbox {
    margin: 0;
    padding: 0 20px;
    width: 260px;
    height: 40px;
    border: solid 1px #e4e4e4;
    border-radius: 0px;
}

/*  グローバルナビゲーション  */
#header .nav-pc {
    position: absolute;
    right: 20px;
    bottom: 20px;
}

#header .nav-pc ul li {
    margin: 0;
    padding: 0 20px;
    text-align: center;
    line-height: 1.2;
    display: inline-block;
}

#header .nav-pc ul li a:hover {
    text-decoration: none;
}

#header .nav-pc ul li .webfont {
    font-size: 20px;
}

/*  グローバルナビゲーション　トグル  */
#header .nav {
    width: 100%;
    height: 0;
    position: absolute;
}

#header .nav-phone {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    position: relative;
    height: 0;
    padding: 0 1em;
}

#header .navbar_toggle {
    position: absolute;
    top: -60px;
    right: 20px;
    z-index: 9999;
}

#header .navbar_toggle_icon {
    position: relative;
    display: block;
    height: 2px;
    width: 30px;
    background: #5c6b80;
    -webkit-transition: ease .5s;
    transition: ease .5s;
}

#header .navbar_toggle_icon:nth-child(1) {
    top: 0;
}

#header .navbar_toggle_icon:nth-child(2) {
    margin: 8px 0;
}

#header .navbar_toggle_icon:nth-child(3) {
    top: 0;
}

/*OPEN時の動き*/
#header .navbar_toggle.open .navbar_toggle_icon:nth-child(1) {
    top: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#header .navbar_toggle.open .navbar_toggle_icon:nth-child(2) {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    opacity: 0;
}

#header .navbar_toggle.open .navbar_toggle_icon:nth-child(3) {
    top: -10px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#header .nav-phone .menu {
    padding: 0;
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 90px;
    right: 0;
    -webkit-transform: translateX(120%);
    transform: translateX(120%);
    -webkit-transition: ease .5s;
    transition: ease .5s;
}

#header .nav-phone .menu ul li {
    padding: 12px 60px;
    border-bottom: 1px solid #f3f2f2;
}

/*OPEN時の動き*/
#header .nav-phone .menu.open {
    padding: 0 0 100px 0;
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 90px;
    right: 0;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background-color: rgba(255, 255, 255, 0.95);
    display: block;
    z-index: 1;
}

#header .nav-phone .menu.open ul {
    overflow-y: auto;
}

#header .nav-phone h3.drawer {
    margin: 0;
    padding: 12px 60px;
    color: #fff;
    background-color: #9f917c;
    text-align: center;
}


/* スライダー */
.slider {
    margin: 0 auto;
    padding: 0;
    background-color: #f3f2f2;
}

.slider-phone div {
    width: 100% !important;
}

.bx-wrapper {
    margin-bottom: 0 !important;
}

.bx-wrapper .bx-viewport {
    margin: 0 auto;
    padding: 0;
    max-width: 1200px;
    border: none !important;
    position: relative;
    top: 0;
    left: 0 !important;
    box-shadow: none !important;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    overflow: visible !important;
}

.bx-controls {
    display: none;
}

/* トップページのバナー 必要なくなったら削除*/
.top-bnr {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3%;
}

/* トップページのバナー 必要なくなったら削除*/
.bnr-pc {
    margin: 0 auto 4rem;
    max-width: 1024px;
}

.bnr-mobile {
    margin: 0 auto 4rem;
    width: 100%;
}

.bnr-info {
    margin: 1rem 0 4rem;
    text-align: center;
    font-size: 1.8rem;
}

.vacation-notice {
    padding: 1rem 2rem;
    background-color: #fdeff2;
    display: grid;
    justify-content: center;
    align-items: center;
    grid-template-columns: 1fr 5fr;
    gap: 2rem;
}
.vacation-notice p {
    margin: 0;
}



/* front-info */
.info {
    margin-bottom: 6rem;
    padding: 2rem 4rem;
    background: #fff;
}

.info .list {
    margin: 0 auto 2rem;
    width: 100%;
}

.info iframe {
    width: 30%;
    float: right;
}

.info .inner {
    margin-bottom: 40px;
    width: 100%;
}

.info .list dl {
    padding-bottom: 3px;
    border-bottom: solid 1px #f3f2f2;
}

.info .list dl dt {
    margin: 0;
    width: 100%;
    display: inline-block;
    vertical-align: middle;
}

.info .list dl dd {
    margin: 0;
    padding-left: 3%;
    width: 100%;
    display: inline-block;
    vertical-align: middle;
    word-break: break-all;
}

.info h2,
.recommend h2,
.seller h2,
.favorite h2,
.checked h2 {
    margin: 0 0 2rem 0;
    font-size: 28px;
    text-align: center;
    line-height: 1.2;
    font-weight: normal;
}

/* ブランド理念・説明文 */
.brand-description {
    margin-bottom: clamp(2rem, 3vw, 8rem);
}

.brand-description h2,
.brand-description h3,
.brand-description .text-center {
    text-align: center;
}

.brand-description h2 {
    margin-bottom: 0;
    font-weight: normal;
}

.brand-message {
    margin: 0 auto 8rem;
    padding: 0 2rem;
    max-width: 46rem;
}



/* recommend おすすめ商品&seller 売れ筋商品 */
.recommend,
.seller {
    margin-bottom: 30px;
    border: solid 1px #e4e4e4;
    padding: 20px 3%;
}

.recommend ul,
.seller ul {
    margin: 30px 0 0 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.recommend ul li,
.seller ul li {
    padding: 0 3% 30px;
    width: 33.333333%;
    height: auto;
    text-align: center;
    position: relative;
}

.recommend .item-image img {
    aspect-ratio: 1/1;
    object-fit: cover;
}

.recommend ul li .item-desc,
.seller ul li .item-desc {
    padding: 10px;
    font-size: clamp(10px, 2vw, 12px);
}

.recommend ul li .price,
.seller ul li .price {
    font-size: clamp(10px, 2vw, 12px);
}

.recommend a:hover {
    text-decoration: none;
}

.btn-allitem {
    margin: 20px auto 20px;
    padding: 15px 30px;
    max-width: 360px;
    background-color: #fff;
    text-align: center;
    border: solid 1px #241a08;
    border-radius: 50px;
}

.btn-allitem:hover {
    background-color: #241a08;
    color: #fff;
    transition: ease .2s;
}


/*  お気に入り&チェックした商品  */
.favorite,
.checked {
    width: 100%;
    background-color: #f3f2f2;
}

.favorite h2,
.checked h2 {
    margin: 0;
    padding: 1rem 0;
    width: 20%;
    height: auto;
    text-align: center;
    float: left;
    -webkit-align-items: center;
    /* 縦方向中央揃え（Safari用） */
    align-items: center;
    /* 縦方向中央揃え */
    -webkit-justify-content: center;
    /* 横方向中央揃え（Safari用） */
    justify-content: center;
    /* 横方向中央揃え */
}

.favorite h2 {
    border-bottom: solid 1px #f3f2f2;
    border-top: solid 1px #f3f2f2;
}

.favorite ul,
.checked ul {
    width: 80%;
    float: right;
    overflow: hidden;
}

.favorite ul li,
.checked ul li {
    padding-bottom: 0;
    width: 12.5%;
    float: left;
    position: relative;
}

.favorite ul li .soldout,
.checked ul li .soldout {
    padding: 0 3px;
    position: absolute;
    left: 3px;
    top: 3px;
    color: #fff;
    font-size: 10px;
    background-color: rgba(0, 0, 0, 0.5);
}

.checked img {
    aspect-ratio: 2.5/2;
    object-fit: cover;
}

#footer {
    padding: 0 0 40px 0;
    background-color: #241a08;
    text-align: center;
}

#footer .footer-nav {
    padding: 40px 0 10px 0;
    background: url('https://img21.shop-pro.jp/PA01343/829/etc/bg-contents-footer.jpg?cmsp_timestamp=20181217150417') repeat-x top left;
    background-size: 4px 5px;
}

#footer .footer-nav li {
    padding: 0 15px 8px 15px;
    display: inline-block;
}

#footer .footer-nav li a {
    color: #fff;
}

#footer address {
    margin: 0;
    padding: 0;
    font-size: 12px;
}

/* サイドバー */
#header form .sbox,
#side form .sbox {
    margin: 0;
    padding: 0 20px;
    width: 100%;
    height: 40px;
    border: solid 1px #e4e4e4;
    border-radius: 0px;
}

#header .search-box,
#side .search-box {
    position: relative;
}

#header form button,
#side form button {
    border: none;
    position: absolute;
    right: 3px;
    top: 25%;
    background-color: #fff;
}

#side_top .side-banner {
    padding: 10px;
    width: 33.333333%;
    float: left;
}

.side-banner__fb {
    overflow: scroll;
}

#side_top .mobile-shop h4 {
    margin: 0;
}

.side-banner,
.about-site {
    margin-bottom: 30px;
}

.about-site ul li {
    margin-left: 20px;
    padding: 5px 0;
}

.search-cate h3,
.search-group h3,
.mobile-shop h3 {
    margin-bottom: 5px;
}

.search-cate ul li,
.search-group ul li {
    margin-left: 20px;
    padding: 5px 0;
}

.search-group {
    margin-bottom: 30px;
}

/* 一覧ページ、検索結果ページ */
ul.list-3col {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
}

ul.list-3col li.list-item {
    margin: 0;
    padding: 0 1% 30px;
    width: 33.333333%;
    height: auto;
    text-align: center;
    position: relative;
}

ul.list-3col li.list-item img {
    vertical-align: middle;
    aspect-ratio: 1/1;
    object-fit: cover;
}

ul.list-3col li .item-desc {
    padding: 10px;
}

#main_top .soldout,
ul.list-3col li .soldout {
    padding: 5px;
    position: absolute;
    left: 20px;
    top: 8px;
    color: #fff;
    font-size: 12px;
    background-color: rgba(0, 0, 0, 0.5);
}

.pager {
    text-align: center;
}

.sort {
    margin: 60px 0 20px 0;
    text-align: center;
}

.topicpath-nav {
    padding: 8px;
}

/*カテゴリー一覧*/
.category-h {
    margin-top: 10px;
    text-align: center;
    font-weight: normal;
}

#cat-enshuori .container,
#cat-tenryushika .container,
#cat-alberton .container {
    position: relative;
}

#cat-enshuori .container .cat-btn,
#cat-tenryushika .container .cat-btn,
#cat-alberton .container .cat-btn {
    width: 25%;
    height: 25%;
    position: absolute;
    right: 0rem;
    bottom: 2rem;
}

#cat-enshuori .container .cat-btn a img,
#cat-tenryushika .container .cat-btn a img,
#cat-alberton .container .cat-btn a img {
    transition: all 0.5s 0s ease;
}

#cat-enshuori .container .cat-btn a img:hover,
#cat-tenryushika .container .cat-btn a img:hover,
#cat-alberton .container .cat-btn a img:hover {
    transform: translateY(-5px);
    transition: all 0.5s 0s ease;
    opacity: 1;
}




/* お気に入りボタン */
.product__fav-item {
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0px;
    right: 10px;
}

.product__fav-item_02,
#prd-opt-table {
    margin: 0 auto 20px;
    border-radius: 3px;
    max-width: 100px;
}

.product__fav-item button {
    padding: 7px;
    cursor: pointer;
    transition: ease .2s;
    font-size: 16px;
    color: #fff;
    border: none;
    border-radius: 0;
    outline: none;
    background: rgba(255, 255, 255, 0);
}

.product__fav-item_02 button {
    padding: 7px;
    cursor: pointer;
    transition: ease .2s;
    font-size: 16px;
    color: #ff7373;
    border: none;
    border-radius: 0;
    outline: none;
    background: rgba(255, 115, 115, 0);
}

.product__fav-item .fav-items {
    background-color: rgba(255, 255, 255, 0);
    color: #ff7373;
}

.product__fav-item_02 .fav-items {
    background-color: rgba(255, 115, 115, 0.9);
    color: #fff;
}

#product .btn-addcart {
    padding: 20px;
    width: 100%;
    background-color: #241a08;
    color: #fff;
    border: none;
}




/* freepage */
#freepage {
    margin-bottom: 100px;
}

#freepage h2 {
    margin-bottom: 40px;
    text-align: center;
    font-weight: normal;
}

#freepage h3 {
    margin-top: 100px;
    padding: 5px 20px;
    color: #474a4d;
    font-size: 24px;
    letter-spacing: 1px;
    position: relative;
}

#freepage h4 {
    margin-top: 40px;
    padding: 5px 20px;
    color: #474a4d;
}

#freepage img {
    width: 100%;
}

#freepage .message {
    font-size: 16px;
    text-align: center;
}

#freepage .freepage-cate {
    margin: 0 0 40px 0;
}

#freepage .freepage-cate ul {
    display: flex;
}

#freepage .freepage-cate ul li {
    margin: 0 1%;
    padding: 10px;
    width: 31.333333%;
    text-align: center;
    background-color: #f3f2f2;
}

#freepage .freepage-cate ul li:hover {
    background-color: #dcdddd;
}

#freepage .freepage-cate ul li a {
    display: block;
}

#freepage .category-desc {
    margin-bottom: 100px;
}

#freepage .enshuori-h,
#freepage .tenryushika-h,
#freepage .alberton-h {
    margin-bottom: 30px;
    position: relative;
}

#freepage .enshuori-h h3,
#freepage .tenryushika-h h3,
#freepage .alberton-h h3 {
    margin: 0 auto;
    padding: 2% 5%;
    text-align: center;
    font-size: 26px;
    font-weight: normal;
    background-color: rgba(255, 255, 255, 0.95);
    border: none;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

#freepage .enshuori-h h3::before,
#freepage .tenryushika-h h3::before,
#freepage .alberton-h h3::before {
    display: none;
}

#freepage .enshuori .text,
#freepage .tenryushika .text,
#freepage .alberton .text {
    margin: 0 0 60px 0;
    padding: 0px;
}

#freepage .enshuori .figure {
    margin: 0 20px 20px 0;
    width: 40%;
    float: left;
}

#freepage .list-link {
    margin: 0 auto;
    padding: 0 20px;
    width: 60%;
    padding: 15px 0;
    text-align: center;
    background-color: #9f917c;
    border-radius: 3px;
}

#freepage .list-link a {
    color: #fff;
}

#freepage .text ul {
    margin: 0 0 0 20px;
}

#freepage .text ul li {
    padding: 0 0 10px 0;
    list-style: disc;
}


/* freepage about-teatrino*/
/* freepage こだわりの素材*/
/* freepage アトリエ*/
#freepage.about-teatrino .concept,
#freepage.about-teatrino .concept_activities,
#freepage.about-teatrino .logo-meaning,
#freepage .featured-enshu .history,
#freepage .featured-enshu .featured-ensyuori,
#freepage .featured-leather .history,
#freepage .featured-leather .featured-gibier {
    padding: 0 60px;
}

#freepage .featured-enshu,
#freepage .featured-leather {
    margin-bottom: 100px;
}

#freepage h3::before {
    position: absolute;
    content: '';
    width: 88px;
    height: 1px;
    background-color: #474a4d;
    top: -40px;
}

#freepage.about-teatrino .concept_wid540,
#freepage .featured-enshu .history_wid540,
#freepage .featured-leather .history_wid540 {
    margin-bottom: 70px;
    width: 540px;
    max-width: 100%;
    float: right;
}

#freepage.about-teatrino .clearfix::after {
    content: " ";
    clear: both;
    display: block;
}

#freepage.about-teatrino .concept_h4-1 {
    font-size: 20px;
    text-align: right;
    line-height: 2;
}

#freepage.about-teatrino .concept_h4-2 {
    margin-top: 0;
    margin-left: 40px;
    font-size: 18px;
    line-height: 2;
    position: relative;
}

#freepage.about-teatrino .concept_h4-2::before {
    position: absolute;
    content: '';
    width: 44px;
    height: 1px;
    background-color: #474a4d;
    left: -40px;
    top: 22px;
}

#freepage.about-teatrino .concept_ethical {
    margin-bottom: 140px;
    padding: 40px;
    border: solid 1px #9f907b;
}

#freepage.about-teatrino .concept_ethical .concept_wrap {
    padding: 0 20px;
    margin-bottom: 40px;
}

#freepage.about-teatrino .concept_ethical .concept_wrap::after {
    content: "";
    display: block;
    clear: both;
}

#freepage.about-teatrino .concept_ethical .concept_wrap_2 {
    padding-right: 40px;
    width: 80%;
    float: left;
}

#freepage.about-teatrino .concept_ethical .ethical-logo {
    width: 20%;
    height: auto;
    float: right;
}

#freepage.about-teatrino .concept_ethical .ethical-banner_wrap {
    display: flex;
}

#freepage.about-teatrino .concept_ethical .ethical-banner_wrap img {
    padding: 0 20px;
}

#freepage.about-teatrino .concept_activities .concept_activities_list {
    margin-bottom: 30px;
    width: 100%;
    min-height: 340px;
    position: relative;
}

#freepage .featured-ensyuori .featured-ensyuori_list,
#freepage .featured-leather .featured-leather_list {
    margin-bottom: 30px;
    width: 100%;
    min-height: auto;
}

#freepage.about-teatrino .concept_activities .concept_activities_list h4,
#freepage .featured-ensyuori .featured-ensyuori_list__text h4,
#freepage .featured-leather .featured-leather_list__text h4 {
    margin: 0 0 20px 0;
    padding: 0;
    font-size: 16px;
    line-height: 2;
}

#freepage.about-teatrino .concept_activities .concept_activities_list .concept_activities01 {
    margin-left: 40px;
    width: 50%;
    max-width: 340px;
    height: auto;
    display: block;
    box-sizing: border-box;
}

#freepage .featured-ensyuori .featured-ensyuori_list .featured-ensyuori01,
#freepage .featured-leather .featured-leather_list .featured-leather01 {
    margin-left: 0;
    max-width: 160px;
    height: auto;
    float: left;
    display: block;
    box-sizing: border-box;
}

#freepage.about-teatrino .concept_activities .concept_activities_list-r .concept_activities01 {
    margin-left: 40px;
    width: 50%;
    max-width: 340px;
    height: auto;
    display: block;
    box-sizing: border-box;
    position: absolute;
    right: 0;
}

#freepage.about-teatrino .concept_activities .concept_activities_text {
    max-width: 380px;
    position: absolute;
    left: calc(50% + 80px);
    bottom: 0px;
}

#freepage .featured-ensyuori .featured-ensyuori_list__text,
#freepage .featured-leather .featured-leather_list__text {
    float: right;
    width: calc(100% - 190px);
}

#freepage.about-teatrino .concept_activities .concept_activities_text-r {
    max-width: 380px;
    position: absolute;
    right: calc(50% + 20px);
    bottom: 0;
}

#freepage.about-teatrino .concept_activities .concept_activities_text-r h4 {
    text-align: right;
}

#freepage.about-teatrino .concept_activities .concept_activities_text-left {
    max-width: 50%;
    position: absolute;
    left: 0;
    bottom: 0;
}

#freepage.about-teatrino .logo-meaning {
    margin-bottom: 100px;
}

#freepage.about-teatrino .logo-meaning_h3 {
    margin-top: 160px;
}

#freepage.about-teatrino .masuda-profile,
#freepage .featured-enshu .takada-profile {
    padding: 40px 10%;
    background-color: #fff;
    border-radius: 6px;
}

#freepage .featured-enshu .takada-profile {
    margin-bottom: 40px;
}

#freepage.about-teatrino .masuda-profile__img,
#freepage .featured-enshu .takada-profile__img {
    width: 160px;
    height: auto;
}

#freepage.about-teatrino .masuda-profile__left {
    width: 30%;
    float: left;
}

#freepage.about-teatrino .masuda-profile__right {
    width: 70%;
    float: right;
}

#freepage.about-teatrino .masuda-profile__h {
    margin-top: 30px;
    padding: 0;
    width: 160px;
    font-size: 14px;
    line-height: 2;
    font-weight: normal;
    text-align: center;
    letter-spacing: 1px;
}

#freepage.about-teatrino .masuda-profile__h span {
    font-weight: bold;
    font-size: 16px;
}

#freepage.about-teatrino .masuda-profile__h::before {
    display: none;
}

#freepage .oteire {
    margin: 100px 0;
    padding: 40px;
    background-color: #e6e7e4;
}

#freepage .oteire .oteire_h3 {
    margin-top: 60px;
    padding: 0;
    font-size: 16px;
}

#freepage .oteire .oteire_h3::before {
    position: absolute;
    content: '';
    width: 40px;
    height: 1px;
    background-color: #474a4d;
    top: -20px;
}

.takada-profile {
    display: flex;
}

.takada-profile .takada-profile__left {
    max-width: 40%;
}

.takada-profile .takada-profile__left .takada_video {
    width: 100%;
}

.takada-profile .takada-profile__right {
    padding-left: 3rem;
    max-width: 60%;
}

#freepage .featured-enshu .takada-profile__h {
    margin: 0 0 30px 0;
    padding: 0;
    font-size: 16px;
}

#freepage .featured-enshu .takada-profile__h::before {
    display: none;
}


/* アトリエ */
.atelier_schedule {
    margin-bottom: clamp(2rem, 8vw, 4rem);
    padding: 1rem;
    border: solid 1px #ccc;
}

.atelier_schedule p {
   color: #333;
}

.atelier_schedule h4 {
    padding: .5rem;
    background-color: #f3f2f2;
}

.atelier_schedule h4:first-child {
    margin-top: 0 !important;
}

.atelier .atelier-desc {
    margin: 0 auto 8rem;
    max-width: 46rem;
    padding: 0 2rem;
}

.atelier .google-cal {
    margin-bottom: 4rem;
    max-width: 100%;
}

.atelier .atelier-int {
    margin: 0 0 8rem 0;
}

.atelier .atelier-int figure {
    margin: 0;
    position: relative;
}

.atelier .atelier-int figcaption {
    color: #fff;
    position: absolute;
    bottom: 30px;
    right: 30px;
}

.atelier .atelier-int .atelier_video {
    width: 100%;
}

.atelier .googlemap__wrap {
    background-color: #fff;
}

.atelier .googlemap {
    text-align: center;
}

.atelier .googlemap iframe {
    width: 100%;
}

.atelier .address {
    margin: 0 auto;
    padding: 3rem;
    max-width: 65rem;
    display: flex;
}

.atelier .address .add__list {
    display: block;
    width: 40%;
    height: auto;
}

.atelier .address .address__map {
    display: block;
    height: auto;
}

.atelier .rinji {
    padding: 4rem 2rem;
    text-align: center;
    border: solid 2px #eee;
}

.atelier .rinji .rinji-map {
    max-width: 26rem;
}

.atelier .rinji figcaption {
    padding: 1rem 0;
}

.atelier .bnr-insta_atelier {
    margin: 2rem auto;
    max-width: 520px;
    display: block;
}



/* webカタログ */
.web-catalog .top-image {
    margin-bottom: 80px;
}

.web-catalog .text {
    font-size: 24px;
    font-weight: 600;
    text-align: center;
}

.web-catalog .text-s {
    font-size: 16px;
    text-align: center;
}

.web-catalog ul.list-2col {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    align-items: flex-start;
}

.web-catalog ul.list-2col h3 {
    font-size: 20px !important;
}

.web-catalog ul.list-2col li.list-item {
    margin: 0;
    padding: 0 5% 6rem;
    width: 50%;
    height: auto;
    position: relative;
}

.web-catalog ul.list-2col li.list-item .product-image {
    padding: 0;
}

.web-catalog h3 {
    margin: 1rem 0 !important;
    padding: 0 !important;
}

.web-catalog h3::before {
    display: none;
}

.web-catalog .list-item_desc dl dt {
    display: inline-block;
}

.web-catalog .list-item_desc dl dd {
    margin: 0;
    display: inline-block;
}

.web-catalog .color-list {
    margin: 2rem 3rem 0;
    max-width: 100%;
    display: flex;
    column-gap: 2%;
}

.web-catalog .color-list li {
    padding: 0;
    width: 14%;
    height: auto;
}

.web-catalog .color-list .color {
    display: inline-block;
    width: 100%;
    height: 100%;
}

.web-catalog .color-list .orange {
    background-color: #E46B4C;
}

.web-catalog .color-list .olive {
    background-color: #B1B086;
}

.web-catalog .color-list .red {
    background-color: #e8383d;
}

.web-catalog .color-list .blue {
    background-color: #4B80B8;
}

.web-catalog .color-list .beige {
    background-color: #D8D7D7;
}

.web-catalog .color-list .gray {
    background-color: #9fa09e;
}

.web-catalog .color-list .navy {
    background-color: #043c78;
}

.web-catalog .small {
    color: #777;
}




/* 商品詳細 */
#product .breadcrumb ul {
    display: flex;
}

#product .breadcrumb ul li {
    padding-bottom: 6px;
}

#product .breadcrumb ul li a {
    text-decoration: underline;
    color: #888;
}

#product .product-image img {
    width: 100%;
    vertical-align: bottom;
}

#product .product-image.gallery {
    margin: 0 0 1rem 0;
}

#product .product-image li {
    padding: 0;
    list-style: none;
}

#product .product-image.choice-btn li {
    cursor: pointer;
    outline: none;
    list-style: none;
    background: #333;
}

#product .product-image.choice-btn li img {
    opacity: 0.4;
}

#product .product-image.choice-btn li.slick-current img {
    opacity: 1;
}

#product .choice-btn .slick-track {
    margin: 0;
    width: 100% !important;
}

#product .product-image .slick-list {
    margin: 0 auto;
    max-width: 70%;
}

#product .product-image.choice-btn li {
    margin: 0;
    padding: 0;
    width: 10%!important;
}

#product .product-price,
#product .product-link {
    display: inline-block;
    float: left;
}
#product .product-price {
    width: 50%;
}

#product .product-link {
    margin-bottom: 0;
    margin-left: 4%;
    width: 46%;
}

#product .product__fav-item_02 button {
    width: 100%;
    border-radius: 3px;
    border: solid 1px #ff7373;
}

#product .product-desc {
    margin: 40px auto 70px;
    max-width: 768px;
}

#product .product-desc .container {
    margin: 0 0 2rem;
    width: 100%;
    text-align: center;
}

#product .product-desc p {
    padding: 0;
    margin: 1rem 0;
}

#product .product-desc h3 {
    padding: 1.5rem 0;
    font-size: 24px;
    border-top: solid 6px #A9ACAB;
    border-bottom: solid 6px #A9ACAB;
}

#product .product-desc h3 span {
    display: block;
}

#product .product-desc h4 {
    font-size: 22px;
}

#product .product-desc .single-table {
    margin-bottom: 2rem;
    width: 100%;
    text-align: left;
}

#product .product-desc .single-table tr {
    width: 100%;
}

#product .product-desc .single-table td {
    padding: 1rem;
    border: solid 1px #b6ab9c;
}

#product .product-desc .single-table__h {
    width: 15%;
}

#product .product-desc .headline {
    background-color: #eee;
}

#product .product-option {
    margin-bottom: 30px;
}

#product .product-option #prd-opt-table {
    max-width: 100% !important;
}


#product .product-link .sns {
    margin-top: 20px;
}

.product-text .wrapper {
    margin-bottom: 70px;
    padding: 20px;
    border: solid 1px #ddd;
}

.product-text .table-bordered {
    background-color: #fff;
}

#product .product-cart {
    text-align: center;
}

.product-desc a {
    color: #474a4d;
    text-decoration: none;
    transition: ease .2s;
}

.product-desc .desc-item-link {
    padding: .5rem 1rem;
    border: solid 1px #474a4d;
    border-radius: 3px;
    text-align: center;
}

.product-desc a:hover .desc-item-link {
    background-color: #d4dcd6;
    transition: ease .2s;
}

.input-append,
.input-prepend {
    font-size: 26px;
}

.input-append .fas,
.input-prepend .fas {
    margin: 0;
    line-height: 1;
    padding: 5px 10px;
    background-color: #f3f2f2;
    border: solid 1px #ccc;
    border-radius: 3px;
}

.input-prepend.input-append input {
    height: 39px;
    border: solid 1px #ccc;
    border-radius: 3px;
}

.single-guide {
    margin: 4rem 0;
    display: flex;
    color: #777;
    font-size: 90%;
}

.single-guide h2 {
    padding-bottom: 1rem;
    text-align: center;
    font-size: 18px;
    border-bottom: solid 1px #777;
}

.together-block {
    margin-top: 8rem;
}

.together-block h2 {
    font-size: 18px;
    text-align: center;
}

.together-block .prd-lst {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 5%;
}





/* テアトリーノ様より商品説明コメント部分*/
.comment-area .left_img {
    padding-top: 2%;
    max-width: 10%;
    height: auto;
    float: left;
}

.comment-area .right_txtara {
    padding: 2%;
    width: 85%;
    background-color: #FFFAF5;
    float: left;
    border-radius: 5px;
    box-sizing: border-box;
}

.comment-area .bottom_img {
    display: none;
}

.comment-area::after {
    display: block;
    clear: both;
    content: " ";
}




/* 特定商取引 */
#delivery dl dt,
#payment dl dt,
#info dl dt {
    margin-bottom: 10px;
    padding: 7px;
    background-color: #f3f2f2;
}

#delivery dl dd,
#payment dl dd,
#info dl dd {
    margin-bottom: 40px;
}



@media (max-width: 1440px) {
    #contents {
        margin: 30px 0 40px;
        padding: 1rem;
    }
}

@media (min-width: 981px) {

    /*  グローバルナビゲーション  */
    #header .nav-phone {
        display: none;
    }

    #header .logo-phone {
        display: none;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_text {
        left: calc(340px + 80px);
    }

    #freepage.about-teatrino .concept_activities .concept_activities_text-r {
        right: calc(340px + 40px);
    }
}

@media (max-width: 980px) {

    /* ~980px */
    #header {
        width: 100%;
        position: fixed;
        top: 0;
        background-color: rgba(243, 242, 242, 0.95);
        z-index: 1;
    }

    #header .nav-pc {
        display: none;
    }

    #header .wrapper {
        display: none !important;
    }

    #header h1 {
        display: none;
    }

    #slider,
    #slider-phone {
        margin-top: 90px;
    }

    .other-than-top {
        margin-top: 90px !important;
    }

    #header .logo {
        display: none;
    }

    .info {
        margin-top: 0;
        margin-bottom: 4rem;
        padding: 1rem;
    }

    .info .list {
        padding: 0;
        width: 100%;
        max-width: 100%;
    }

    .info iframe {
        width: 100%;
        text-align: center;
    }
}

@media (min-width: 769px) {

    /* 768px~ */
    #slider-phone {
        display: none;
    }

    .atelier .address .address__map {
        padding: 0;
        width: 60% !important;
    }

    .bnr-pc {
        display: block;
    }

    .bnr-mobile {
        display: none;
    }
}

@media (max-width: 768px) {

    /* ~767px */
    #main_top,
    #main {
        padding: 0;
        width: 100%;
        float: none;
    }

    #side_top,
    #side {
        margin-top: 40px;
        padding: 30px 0 0 0;
        width: 100%;
        border-top: solid 3px #ccc;
        float: none;
    }

    #side_top .side-banner {
        width: 100%;
    }
    
    /* トップページのバナー 必要なくなったら削除*/
    .bnr-pc {
        display: none;
    }

    .bnr-mobile {
        display: block;
    }
    
    .vacation-notice {
        display: block;
    }

    .info .list dl dt {
        margin-bottom: 5px;
    }

    .recommend,
    .seller {
        margin: 0 0 10px 0;
        padding: 20px;
    }
    
    .brand-message {
        margin: 4rem auto;
        padding: .5rem;
        max-width: 100%;
    }

    .favorite ul,
    .checked ul {
        width: 100%;
    }

    .favorite ul li,
    .checked ul li {
        width: 25%;
    }

    .favorite h2,
    .checked h2 {
        margin: 0;
        width: 100%;
        height: auto;
    }

    #product .product-desc {
        width: 100%;
    }

    #product .product-desc .container {
        padding: 0;
        text-align: left;
    }
    
    #product .product-desc .container br {
        display: none;
    }
    
    .single-guide {
        flex-direction: column;
    }
    
    .single-guide .guide__unit {
        margin-bottom: 2rem;
    }

    .together-block {
        margin-top: 0;
    }

    #product .choice-btn .slick-track {
        width: 100% !important;
    }
    
    #product .product-image .slick-list {
        max-width: 100%;
    }
    
    #product .product-image.choice-btn li {
        width: 20%!important;
    }

    #freepage .freepage-cate ul li {
        font-size: 12px;
    }

    #freepage.about-teatrino .concept,
    #freepage.about-teatrino .concept_activities,
    #freepage.about-teatrino .logo-meaning,
    #freepage .featured-enshu .history,
    #freepage .featured-enshu .featured-ensyuori,
    #freepage .featured-leather .history,
    #freepage .featured-leather .featured-gibier {
        padding: 0;
    }

    #freepage h3 {
        padding: 0;
    }

    #freepage.about-teatrino .concept_h4-1,
    #freepage.about-teatrino .logo-meaning_h4-1 {
        padding: 0;
        font-size: 18px;
        text-align: left;
    }

    #freepage.about-teatrino .concept_wid540,
    #freepage .featured-enshu .history_wid540,
    #freepage .featured-leather .history_wid540 {
        width: 100%;
    }

    #freepage.about-teatrino .concept_ethical {
        padding: 5%;
    }

    #freepage.about-teatrino .concept_h4-2 {
        margin: 0 0 20px 0;
        padding: 0 20px;
    }

    #freepage.about-teatrino .concept_h4-2::before {
        display: none;
    }

    #freepage.about-teatrino .concept_ethical .concept_wrap_2 {
        padding: 0;
        width: 100%;
    }

    #freepage.about-teatrino .concept_ethical .ethical-logo {
        float: none;
    }

    #freepage.about-teatrino .concept_ethical .ethical-banner_wrap {
        display: block;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_list,
    #freepage .featured-enshu .featured-ensyuori .featured-ensyuori_list,
    #freepage .featured-leather .featured-gibier .featured-leather_list {
        padding-left: 20px;
        margin-bottom: 30px;
        width: 100%;
        min-height: auto;
        position: static;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_list::after {
        content: "";
        display: block;
        clear: both;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_list .concept_activities01 {
        margin: 0;
        width: 20%;
        height: auto;
        float: left;
        display: block;
        box-sizing: border-box;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_list-r .concept_activities01 {
        margin: 0;
        width: 20%;
        height: auto;
        float: left;
        display: block;
        box-sizing: border-box;
        position: static;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_text {
        padding-left: 20px;
        max-width: 80%;
        float: left;
        position: static;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_text-r {
        padding-left: 20px;
        max-width: 80%;
        float: left;
        position: static;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_text-r h4 {
        text-align: left;
    }

    #freepage.about-teatrino .masuda-profile__left,
    #freepage.about-teatrino .masuda-profile__right,
    #freepage .featured-enshu .takada-profile__left,
    #freepage .featured-enshu .takada-profile__right {
        float: none;
        width: 100%;
    }

    #freepage .featured-enshu .takada-profile__left {
        margin-bottom: 30px;
    }

    #freepage.about-teatrino .masuda-profile,
    #freepage .featured-enshu .takada-profile {
        padding: 10% 5%;
    }

    #freepage.about-teatrino .masuda-profile__img,
    #freepage .featured-enshu .takada-profile__img {
        margin: 0 auto;
        display: block;
    }

    #freepage.about-teatrino .masuda-profile__h {
        width: 100%;
        text-align: center;
    }

    #freepage .oteire {
        margin: 60px 0;
        padding: 20px;
    }

    #freepage .oteire .oteire_h3 {
        margin: 40px 0 0 0;
    }

    #freepage .oteire .oteire_h3::before {
        display: none;
    }

    .takada-profile {
        display: block;
    }

    .takada-profile .takada-profile__left,
    .takada-profile .takada-profile__right {
        max-width: 100%;
    }

    .takada-profile .takada-profile__right {
        padding-left: 0;
    }

    .atelier .address {
        width: 100%;
        display: block;
    }

    .atelier .address .add__list {
        width: 100%;
    }

    .atelier .address .address__map {
        width: 100%;
    }

    .atelier .rinji {
        padding: 2rem;
    }

    .atelier .rinji figure {
        margin: 0;
    }

    .atelier .atelier-int figcaption {
        color: #888;
        position: static;
        text-align: center;
    }
    
    .web-catalog ul.list-2col {
        display: block;
    }

    .web-catalog ul.list-2col li.list-item {
        width: 100%;
    }
}

@media (max-width: 480px) {

    /* ~480px */
    .recommend,
    .seller {
        padding: 20px;
    }

    .recommend ul li,
    .seller ul li {
        margin: 0;
        padding: 0 1% .5rem;
        width: 50%;
    }

    ul.list-3col li.list-item {
        margin: 0 0 30px 0;
        padding: 0 1%;
        width: 50%;
    }

    ul.list-3col li.list-item img {
        width: 100%;
    }

    .product__fav-item button {
        position: absolute;
        top: 0px;
        right: 0px;
    }
    
    .top-bnr {
        padding: 0;
        display: block;
    }
    
    .top-bnr > div {
        padding: 0 5% 15px;
    }

    #freepage .enshuori-h h2,
    #freepage .tenryushika-h h2,
    #freepage .alberton-h h2 {
        width: 70%;
        font-size: 14px;
        padding: 10px;
    }

    #freepage .enshuori-h h3,
    #freepage .tenryushika-h h3,
    #freepage .alberton-h h3 {
        font-size: 20px;
        line-height: 1.2;
    }

    #freepage .enshuori-h h3 span,
    #freepage .tenryushika-h h3 span,
    #freepage .alberton-h h3 span {
        padding-top: 3px;
        display: inline-block;
    }

    #freepage .freepage-cate ul {
        display: block;
    }

    #freepage .freepage-cate ul li {
        margin-bottom: 5px;
        width: 100%;
    }

    #freepage .list-link {
        margin: 0 auto;
        width: 100%;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_list h4,
    #freepage .featured-ensyuori .featured-ensyuori_list__text h4,
    #freepage .featured-leather .featured-leather_list__text h4 {
        margin: 20px 0;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_list .concept_activities01 {
        padding: 0;
        width: 100%;
    }

    #freepage .featured-ensyuori .featured-ensyuori_list .featured-ensyuori01,
    #freepage .featured-leather .featured-leather_list .featured-leather01 {
        padding: 0;
        max-width: 30%;
    }

    #freepage .featured-ensyuori .featured-ensyuori_list__text,
    #freepage .featured-leather .featured-leather_list__text {
        padding: 0;
        width: 65%;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_list-r .concept_activities01 {
        padding: 0;
        width: 100%;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_text {
        padding: 0;
        max-width: 100%;
    }

    #freepage.about-teatrino .concept_activities .concept_activities_text-r {
        padding: 0;
        max-width: 100%;
    }


    .w-50p {
        width: 100%;
    }

    #product .product-price,
    #product .product-link {
        width: 100%;
        float: none;
    }
}


@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min--moz-device-pixel-ratio: 2),
only screen and (-o-min-device-pixel-ratio: 2 / 1),
only screen and (min-device-pixel-ratio: 2),
only screen and (min-resolution: 192dpi),
only screen and (min-resolution: 2dppx) {}

@media only screen and (max-width: 767px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 767px) and (min--moz-device-pixel-ratio: 2),
only screen and (max-width: 767px) and (-o-min-device-pixel-ratio: 2 / 1),
only screen and (max-width: 767px) and (min-device-pixel-ratio: 2),
only screen and (max-width: 767px) and (min-resolution: 192dpi),
only screen and (max-width: 767px) and (min-resolution: 2dppx) {}

