@charset "utf-8";

/* ================= */
/* 要素のリセット    */
/* ================= */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,

time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

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;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
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;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0; 
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}


/* 全体設定   */
html, body {
    font: 13px marugo, HG丸ゴシックM-PRO, verdana, arial, sans-serif;
    word-wrap: break-word;
    -webkit-text-size-adjust: 100%;
    height: 100%;
}

#wrapper {
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
    background: #eee;
}

a:hover {opacity: 0.7;}


/*  タイトル画像サイズ   */
.title-image-size {
    width: 300px;
    max-width: 100%;
    height: auto;
    margin-bottom: 40px;
}

.title-image-size-2 {
    width: 800px;
    max-width: 100%;
    height: auto;
}


/*  文字サイズ   */
h2 {font-size: 1.3em;}
.history p {font-size: 1.15rem; line-height: 25px;}
.p-b {font-size: 1.5rem;}
.p-s {font-size: 1.15rem;}


/* Banner   */
.main-banner {
    text-align: center;
    margin: 0;
    margin-bottom: 30px;
}

.main-banner img {
    width: 100%;
    max-width: 100%;
    height: auto;
    vertical-align: top;
}


/* Brand History  */
.history {
    width: 560px;
    text-align: center;
    padding: 2em 0;
    margin: 0 auto 3em auto;
}


/* タブ    */
.tab-wrap {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 50px auto;
    width: 960px;
    max-width: 100%;
}

.tab-label-m {
    color: #003364;
    background: #fff;
    font-size: 18px;
    font-weight: bold;
    text-shadow: 0 -1px 0 rgba(0,0,0,.2);
    white-space: nowrap;
    text-align: center;
    padding: 10px .5em;
    order: -1;
    position: relative;
    z-index: 1;
    cursor: pointer;
    border-radius: 10px 10px 0 0;
    border-top:solid 3px #003364;
    border-right:solid 3px #003364;
    border-left:solid 3px #003364;
    flex: 1;
}

.tab-label-l {
    color: #ff6f6d;
    background: #fff;
    font-size: 18px;
    font-weight: bold;
    text-shadow: 0 -1px 0 rgba(0,0,0,.2);
    white-space: nowrap;
    text-align: center;
    padding: 10px .5em;
    order: -1;
    position: relative;
    z-index: 1;
    cursor: pointer;
    border-radius: 10px 10px 0 0;
    border-top:solid 3px #ff6f6d;
    border-right:solid 3px #ff6f6d;
    border-left:solid 3px #ff6f6d;
    flex: 1;
}

.tab-content {
    width: 100%;
    height: 0;
    overflow: hidden;
    opacity: 0;
    text-align: center;
}

/* アクティブなタブ */
.tab-switch:checked+.tab-label-m {
    background: #003364;
    color: #fff;
}

.tab-switch:checked+.tab-label-l {
    background: #ff6f6d;
    color: #fff;
}

.tab-switch:checked+.tab-label-m+.tab-content {
    height: auto;
    overflow: auto;
    opacity: 1;
    transition: .5s opacity;
}

.tab-switch:checked+.tab-label-l+.tab-content {
    height: auto;
    overflow: auto;
    opacity: 1;
    transition: .5s opacity;
}

/* ラジオボタン非表示 */
.tab-switch {
    display: none;
}


/* product  */
.product {
    text-align: center;
}

.product-image img {
    width: 700px;
    max-width: 100%;
    height: auto;
    margin: 20px 0 30px 0;
}

.product-box {
    display: flex;
    justify-content: center;
    align-items: stretch;
}

.product-box-box {
    display: flex;
    flex-direction: column;
    width: 550px;
    max-width: 100%;
    border: dashed 2px #000;
    padding: 10px;
    margin: 0 15px;
    box-sizing: border-box;
}

.product-box-box-box {
    display: flex;
    max-width: 100%;
    box-sizing: border-box;
}

.item-image img {
    width: 150px;
    max-width: 100%;
    height: auto;
}

.item-text {
    display: flex;
    flex-wrap: wrap;
    flex: 1;
    text-align: left;
    padding: 10px;
}

.item-text p {
    margin: 3px;
}

.price {margin-top: 10px;}
.p-b,.p-s {font-weight: bold;color: #c62f64;}

.color {margin-top: auto;}
.color a {color: #c62f64;font-weight: bold;}
.color a:hover {color: blue;}
.color img {
    width: 20px;
    margin: 0 5px;
    vertical-align: middle;
}


/* Recommend-item  */
.recommend-item {
    text-align: center;
    padding: 10px;
    margin: 30px 0;
}

.recommend-item-box {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
}

.recommend-item-box-box {
    width: 470px;
    max-width: 100%;
    margin: 0 20px;
}

.recommend-item-box-box img {
    width: 200px;
    max-width: 100%;
    height: auto;
}

.color2 {margin-top: 10px;list-style: none;}
.color2 li {display: inline;}
.color2 a {color: #c62f64;font-weight: bold;}
.color2 a:hover {color: blue;}
.color2 img {
    width: 20px;
    margin: 0 5px;
    vertical-align: middle;
}

.btn-box1 {
    display: flex;
    flex-wrap:wrap;
    list-style: none;
    text-align: center;
    width: 800px;
    max-width: 100%;
    margin: 20px auto;
}

.btn-box1 li {
	width: calc(100%/3);
    padding:8px 5px;
    margin: 0 auto;
	box-sizing:border-box;
}

.btn-box1 li img {
	max-width:100%;
	height: auto;
}

.btn-box2 img {
    width: 300px;
    max-width: 100%;
    height: auto;
}


/* フッター  */
footer p {
    text-align: center;
    font-size: 11px;
    color: #fff;
    background: #000;
    padding: 10px;
}

footer a {color: #fff;}


/* スマホ  */
@media screen and (max-width: 760px) {

    /*  タイトル画像サイズ   */
    .title-image-size {width: 280px; margin-bottom: 30px;}

    /*  文字サイズ   */
    h2 {font-size: 1.3em;}
    .history p {font-size: 1rem;}
    .p-b {font-size: 1.2rem;}
    .p-s {font-size: 1rem;}

    /* Brand History  */
    .history {width: 90%; padding: 0;}

    /* product  */
    .product-image img {margin: 0 0 10px 0;}
    .product-box {flex-direction: column; align-items: center;}
    .product-box-box {margin: 10px 0 0 0;}
    .product-box-box-box {flex-direction: column;}
    .item-image img {width: 120px;}
    .item-text {justify-content: center; text-align: center;}

    /* Recommend-item  */
    .recommend-item {margin: 20px 0;}
    .recommend-item-box-box {margin: 0 10px;}

    .color2 {margin-top: 10px;}
    .color2 li {display: list-item;}
    .btn-box1 li {width: calc(100%/2);}
}