@charset "UTF-8";
/* ================================================== *
 *
 *    common
 *
 * ================================================== */
body {
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
}
.fixed {
    position: fixed;
    overflow: hidden;
}
/* ------------------------------------------------- *
 *        header
 * ------------------------------------------------- */
#header {
    position: relative;
	width: 100vw;
	height: 100vh;
}
#header .header_logo {
    width: 100%;
    height: 60px;
    margin: 0;
    padding: 6px 100px 6px 16px;
    background: #000;
    z-index: 999;
}
#header .header_logo img {
    height: 48px;
}
#header .bg-slider {
    position: absolute;
    top: 36px;
    right: 0;
    bottom: 0;
    left: 0;
	background-position:center center;
	background-size: cover;
    z-index: -1;
}
#concept #header .bg-slider {
    background: url(../concept/img/img_mv.jpg) no-repeat center center;
	background-size: cover;
}
#order #header .bg-slider {
    background: url(../order/img/img_mv.jpg) no-repeat center center;
	background-size: cover;
}
#item #header .bg-slider {
    background: url(../item/img/img_mv.jpg) no-repeat center center;
	background-size: cover;
}
#collection #header .bg-slider {
    background: url(../collection/img/img_mv.jpg) no-repeat center center;
	background-size: cover;
}
#shop #header .bg-slider {
    background: url(../shop/img/img_mv.jpg) no-repeat center center;
	background-size: cover;
}
#header .page_title p {
    display: inline-block;
    margin: 0;
    padding: 2px 8px;
    background: #000;
    color: #fff;
}
#header .scroll {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    opacity: .8;
    z-index: 99;
}
#header .scroll img {
    width: 80px;
    height: auto;
}
#header .scroll:after {
    content: 'scroll';
    color: #fff;
    position: absolute;
    bottom: 16px;
    left: 66%;
    z-index: -1;
}
#header .nav_trigger {
    position: absolute;
    top: 12px;
    right: 16px;
    width: 36px;
    height: 36px;
    background: #AF9F8E;
    border-radius: 4px;
    text-align: center;
}
#header .nav_trigger .trigger_icon {
    position: absolute;
    left: 6px;
    display: inline-block;
    width: 24px;
    height: 2px;
    background: #fff;
    cursor: pointer;
    transition-duration: .4s;
}
#header .nav_trigger .trigger_icon:nth-last-of-type(1) {
    top: 10px;
}
#header .nav_trigger .trigger_icon:nth-last-of-type(2) {
    top: 17px;
}
#header .nav_trigger .trigger_icon:nth-last-of-type(3) {
    top: 24px;
}
.active #header .nav_trigger .trigger_icon:nth-last-of-type(1) {
    top: 17px;
	-ms-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	transform: rotate(45deg);
}
.active #header .nav_trigger .trigger_icon:nth-last-of-type(2) {
    opacity: 0;
}
.active #header .nav_trigger .trigger_icon:nth-last-of-type(3) {
    top: 17px;
	-ms-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	transform: rotate(-45deg);
}
#nav {
    position: absolute;
    top: 60px;
    right: 16px;
    width: 210px;
    height: 0;
    padding: 0 32px;
    background: rgba(255,255,255,.7);
    transition-duration: .6s;
    overflow: hidden;
}
.active #nav {
    height: 368px;
    padding: 16px 32px;
}
#home.active  #nav {
    height: 317px;
    padding: 16px 32px;
}
#nav .nav_list {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    text-align: center;
}
#nav .nav_list li {
    font-size: 1.2em;
    line-height: 1;
    padding: 8px 0;
    border-bottom: 1px solid #4a4f63;
}
#nav .nav_list li.current {
    opacity: .6;
}
#nav .nav_list li small {
    font-size: .6em;
}
#nav .nav_list li a {
    display: block;
}
#nav .nav_list li.current {
    opacity: .6;
}
#nav .nav_list li.current a {
    cursor: default;
    text-decoration: none;
    color: #4a4f63;
}
#nav .nav_under {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
}

.linkbox {
    position: absolute;
    bottom: 30px;
    text-align: center;
}
.linkbox img {
    max-width: 100%;
    height: auto;
}
@media (min-width: 768px) {
    #header .header_logo {
        margin-top: 36px;
        padding-left: 36px;
        background: transparent;
    }
    #header .bg-slider {
        top: 0;
    }
    #header .page_title {
        position: absolute;
        bottom: 0;
        left: 0;
    }
    #header .page_title p {
        width: 240px;
        padding: 8px 16px;
        font-size: 18px;
        text-align: center;
    }
    #header .scroll img {
        width: 120px;
    }
    #header .nav_trigger {
        display: none;
    }
    #nav {
        position: static;
        width: 100%;
        height: auto;
        padding: 8px 0;
        background: #fff;
    }
    #nav .nav_list {
        width: 100%;
        margin: 0 auto;
        padding: 0;
        list-style: none;
        text-align: right;
    }
    #nav .nav_list li {
        position: relative;
        display: inline-block;
        font-size: 14px;
        margin-left: 32px;
        padding: 8px 0;
        border-bottom: none;
        text-align: center;
    }
    #nav .nav_list li small {
        font-size: 8px;
    }
    #home .nav_list li.current {
        display: none;
    }
    #nav .nav_under {
        display: none;
    }
    #home #nav {
        position: fixed;
        height: auto;
        padding: 16px 32px;
        top: auto;
        right: auto;
        left: 0;
        bottom: 0;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0);
        box-shadow: none;
    }
    .linkbox {
        position: absolute;
        bottom: 100px;
        text-align: left;
        left: 15px;
    }
}
/* ------------------------------------------------- *
 *        footer
 * ------------------------------------------------- */
#footer_wrap {
    width: 100%;
    margin: 0;
    padding: 0;
	background-color: #030303;
}
#footer {
    position: relative;
}
#footer .footer_nav {
	width: 100%;
    margin: 0 auto;
    padding: 8px 0;
    list-style: none;
}
#footer .footer_nav li {
    display: inline-block;
    padding: 4px 32px 4px 0;
    text-align: left;
}
#footer .footer_nav li a {
    display: block;
    color: #fff;
    font-size: 11px;
    text-decoration: none;
}
#footer .copy {
    position: absolute;
    bottom: 6px;
    left: 15px;
    font-size: 11px;
    color: #aaa;
}
#footer .footer_logo {
	width: 100%;
    margin: 0 auto;
    padding: 8px 0 16px;
    text-align: right;
}
#footer .footer_logo img {
	width: 45%;
}
@media (min-width: 768px) {
    #footer .footer_nav {
        padding: 16px 0;
    }
    #footer .footer_nav li a {
        font-size: 14px;
    }
    #footer .copy {
        position: static;
        text-align: center;
    }
    #footer .footer_logo {
        padding: 8px 0;
    }
    #footer .footer_logo img {
        width: 25%;
    }
}

/* ------------------------------------------------- *
 *        pagetop
 * ------------------------------------------------- */
#pagetop {
    position: fixed;
    right: 0;
    bottom: 24px;
    width: 24px;
    cursor: pointer;
}
#pagetop img {
    width: 100%;
    height: auto;
}

/* ------------------------------------------------- *
 *        under_bunner
 * ------------------------------------------------- */
.under_bunner {
    width: 100%;
    margin: 16px auto;
    padding: 8px 4px;
    text-align: center;
    background: #CFC9C1;
    border-radius: 4px;
    box-shadow: 2px 2px 4px rgba(0,0,0,.6);
}
.under_bunner:hover {
    opacity: .6;
}
#shop .under_bunner {
    width: 100%;
    margin: 16px auto;
    padding: 8px 4px;
    text-align: center;
    background: #CFC9C1;
    border-radius: 4px;
    box-shadow: none;
}
#shop .under_bunner:hover {
    opacity: 1;
}
.under_bunner a {
    display: block;
    text-decoration: none;
    color: inherit;
}


/* ------------------------------------------------- *
 *        toppage
 * ------------------------------------------------- */
#overlay1,
#overlay2,
#overlay3 {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #000000;
}
#overlay1 {
    background: url(../top_img/top_img3.jpg) no-repeat center center;
    background-size: cover;
    z-index: 9999;
}
#overlay2 {
    background: url(../top_img/top_img4.jpg) no-repeat center center;
    background-size: cover;
    z-index: 9999;
}
#overlay3 {
    z-index: 9998;
}

/* ------------------------------------------------- *
 *        pagetop
 * ------------------------------------------------- */
#load_overlay {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #000;
    z-index: 9998;
}
#load_overlay img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    z-index: 9999;
    width: 64px;
    height: 64px;
}
/* ================================================== *
 *
 *    contents
 *
 * ================================================== */
/* ------------------------------------------------- *
 *        common
 * ------------------------------------------------- */
#contents .h1 {
    font-size: 28px;
    color: #A14642;
    text-align: center;
    padding-bottom: 8px;
    border-bottom: 1px solid #4a4f63;
}
#contents .h1 small {
    display: inline-block;
    color: #A14642;
    margin-top: -8px;
    padding-left: 8px;
    vertical-align: middle;
}
#contents .h2 {
    font-size: 17px;
    color: #A14642;
    padding-bottom: 8px;
}
#contents p {
    font-size: 16px;
    line-height: 1.8;
}
#contents img {
    width: 100%;
    height: auto;
}
#contents .padding-xs-16 {
    padding: 16px 0;
}
#contents .red {
    color: #A14642;
}

    #contents .br_xs {
        display: none;
    }

@media (min-width: 768px) {
    #contents {
        max-width: 980px;
    }
    #contents .h1 {
        font-size: 2.4em;
    }
    #contents .h2 {
        font-size: 1.6em;
    }
}



/* ------------------------------------------------- *
 *        concept
 * ------------------------------------------------- */
#concept .concept_list {
    font-size: 1.2em;
    padding: 0;
    list-style: none;
}
#concept .concept_list li:before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background: url(../common_img/mark.svg) no-repeat center center;
    background-size: contain;
    margin-right: 4px;
}
@media (min-width: 768px) {
    #concept .img02 {
        width: 95%;
        height: auto;
        padding-right: 48px;
    }
}

/* ------------------------------------------------- *
 *        order
 * ------------------------------------------------- */
#order .try_order {
    text-align: center;
}
#order .try_order img {
    width: 120px;
    height: auto;
}
@media (min-width: 768px) {
}

/* ------------------------------------------------- *
 *        item
 * ------------------------------------------------- */
/*#item #contents .h2 {
    font-size: 22px;
    margin-bottom: 0;
}
#item #contents .h2:before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(../common_img/mark.svg) no-repeat center center;
    background-size: contain;
    margin-top: -8px;
    margin-right: 8px;
}
#item #contents .h2 small {
    font-size: 14px;
    color: inherit;
    padding-left: 8px;
}
#item #contents .h3 {
    font-size: 17px;
    color: #A14642;
    margin-top: 4px;
}*/
.table-item > tbody > tr:first-child > td {
    background: #eee;
}
.table-item > tbody > tr > th,
.table-item > tbody > tr:first-child > td {
    border-left: none;
}
.table-item > tbody > tr > td:last-child {
    border-right: none;
}
.table-item > tbody > tr > th,
.table-item > tbody > tr > td {
    text-align: center;
    vertical-align: middle;
}
.table-item > tbody > tr > th {
    width: 88px;
    font-size: 28px;
    line-height: 1;
    font-weight: bold;
}
.item_textile {
    padding: 16px;
}
.truncate_more_link {
    display: block;
    font-size: 12px;
    text-align: center;
    border: 2px solid #ccc;
    text-decoration: none;
}
.truncate_more_link:link,
.truncate_more_link:visited {
    text-decoration: none;
}
.truncate_more_link:hover {
    opacity: .6;
    text-decoration: none;
}
.truncate_more_link:active {
    text-decoration: none;
}

/* ------------------------------------------------- *
 *        FORMi
 * ------------------------------------------------- */
#shop .h2_contact {
    display: inline-block;
    margin: 0 auto;
    margin-top: -40px;
    padding: 0 8px;
    font-size: 28px;
    color: #A14642;
    background: #fff;
}
#shop .contact_box {
    margin: 40px auto 16px;
    padding: 0 8px;
    border: 1px solid #aaa;
    text-align: center;
}
#shop .contact_box p {
    font-size: 16px;
}
#shop .contact_box p small {
    font-size: 12px;
}
#shop .contact_box p.border {
    margin: 12px 0 0 0;
    border-bottom: 1px solid #ccc;
}
#shop .contact_table {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
}
#shop .contact_table * {
    border: none;
}
#shop .contact_table th {
    width: 85px;
    padding-right: 0;
}

/* ================================================== *
 *
 *    helper
 *
 * ================================================== */
@media (min-width: 768px) {
    .xs-only {
        display: none;
    }
    #shop .contact_box p {
        font-size: 20px;
    }
    #shop .contact_box p small {
        font-size: 16px;
    }
}

/* ------------------------------------------------- *
 *        margin
 * ------------------------------------------------- */
.margin-top-lg {
	margin-top: 60px;
}
.margin-top-md {
	margin-top: 30px;
}
.margin-top-sm {
	margin-top: 15px;
}
.margin-bottom-lg {
	margin-bottom: 60px;
}
.margin-bottom-md {
	margin-bottom: 30px;
}
.margin-bottom-sm {
	margin-bottom: 15px;
}

/* ------------------------------------------------- *
 *        padding
 * ------------------------------------------------- */
.padding-05 {
	padding:5px;
}
.padding-10 {
	padding:10px;
}
.padding-15 {
	padding:15px;
}
.padding-top-lg {
	padding-top: 60px;
}
.padding-top-md {
	padding-top: 30px;
}
.padding-top-sm {
	padding-top: 15px;
}
.padding-top-xs {
	padding-top: 8px;
}
.padding-bottom-lg {
	padding-bottom: 60px;
}
.padding-bottom-md {
	padding-bottom: 30px;
}
.padding-bottom-sm {
	padding-bottom: 15px;
}
