@charset "UTF-8";
@import url(colors.css);


/* -------- Box Sizing -------- */

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

*:before,
*:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
}


/* Basic Settings */

* {
    margin: 0;
    padding: 0;
}

html {
    height: 100%;
    font-size: 6.25%;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, 'Hind Vadodara', "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
    font-size: 15rem;
    line-height: 1.7;
    text-align: justify;
    color: var(--font-color);
    background-color: var(--background-color);
    min-height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

a {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

a,
a:link {
    color: var(--link-color);
    text-decoration: none;
}

a:visited {
    color: var(--visited-color);
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

a img {
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}

a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    /* IE用 */
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: -apple-system, BlinkMacSystemFont, 'Hind Vadodara', "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
    margin: 1.2em 0 0.75em;
    font-weight: 100;
    line-height: 1.3;
    color: var(--key-color2);
    clear: both;
}

h1 {
    font-size: 28rem;
}

h2 {
    font-size: 24rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--key-color);
}

h3 {
    font-size: 20rem;
}

h4 {
    font-size: 16rem;
}

h5 {
    font-size: 14rem;
}

h6 {
    font-size: 12rem;
}

p {
    margin: 0 0 2.4rem;
    text-align: justify;
}

h1 + p,
h2 + p,
h3 + p,
h4 + p,
h5 + p,
h6 + p {
    margin-top: 2rem;
}

strong {
    font-size: 115%;
}

img {
    border: none;
    vertical-align: bottom;
}


/* Table */

table {
    width: 100%;
    margin: 0;
    font-size: 13rem;
    line-height: 1.8;
    border-collapse: collapse;
    border: 0px;
}

th,
td {
    padding: 0.6rem 1rem;
    background-color: var(--key-color1);
    border-bottom: 2px solid #fff;
}

td:nth-of-type(even) {
    text-align: right;
    border-left: 2px solid #fff;
}

tr > td {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

tr:hover > td {
    color: #fff;
    background-color: var(--key-color2);
}


/* list */

ol,
ul {
    margin: 2.8rem 0;
    padding-left: 5%;
    line-height: 2;
}

li {
    margin-bottom: 0.8rem;
}

/* blockquote */

blockquote {
    margin: 2.8rem 0;
    padding: 1.6rem 2.4rem;
    background-color: rgba(69, 255, 198, 0.2);
    border: 1px solid #45ffc6;
}

blockquote p:last-child {
    margin: 0;
    font-style: italic;
}


/* Block Elements */

/*section,
footer {
    width: 100%;
    padding: 10px 0;
}*/

/*article {
    padding: 30px 0;
}*/

.bodybox {
    width: 92%;
    max-width: 960px;
    margin: 0 auto;
    padding: 30px 0;
}


/* header & menu */

header {
    background-color: var(--key-color);
}

header .bodybox {
    margin: 0 auto;
    padding: 0;
}

header ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
}

header li {
    margin: 0;
    padding: 0;

    width: 170px;
}

header li:first-child {
    width: 60px;
    margin-right: auto;
}

header li:first-child a {
    padding: 5px;
    padding-left: 0;
}

header li:first-child img {
    width: 85%;
    display: block;
}

header a,
header a:link,
header a:visited {
    display: block;
    margin: 0;
    padding: 0.7em 1.5em;
    color: var(--font-color);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

header a:hover {
    color: white;
    text-decoration: none;
    background-color: var(--key-color2);
}

header li:first-child a:hover {
    background-color: transparent;
}

header span {
    display: none;
    width: 100%;
    color: var(--font-color);
}

header a:hover span {
    display: block;
    color: white;
}


/* head */

#lead {
    background-image: url(image/background_main.jpg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
}

#lead .bodybox {
    padding: 120px 0 40px;
}

#head {
    text-align: center;
}

/*
.main {
    margin-top: 100px;
}
*/

.pv {
    margin: 0 auto 0;
}

.pv iframe {
    margin: 0 auto 0;
}

.main h1 {
    margin: 0;
    font-size: 52rem;
    font-family: 'Noto Serif JP', serif;
}

.main p {
    color: #fff;
    font-size: 18rem;
    text-align: center;
    line-height: 1.5;
}

#head video {
    width: 100%;
}


/* shopimage */

#shopimage {
    height: 650px;
    background-image: url(image/background.jpg);
    background-size: auto 450px;
    background-repeat: repeat-x;
    background-position: top center;
    background-color: var(--key-color);
    position: relative;
}

#shopimage p {
    width: 50%;
    margin: 0 auto;
    font-size: 24rem;
    line-height: 1.5;
    text-align: center;
    position: absolute;
    bottom: 5rem;
    left: 25%;
}


/* price & makers */

/*#price {
    background-color: var(--background-color2);
}*/

.tablebox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.tablebox div {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: var(--column-gap);
}

.tablebox div:last-child {
    margin-right: 0;
}

.tablebox h3,
.makers h3 {
    margin: 0 0 .7em;
    padding: 0.7rem 1rem;
    font-size: 15rem;
    color: #fff;
    background-color: var(--key-color);
}

.tablebox > div > h3:nth-child(3) {
    margin-top: 2em;
}

.tablebox td:nth-of-type(even) {
    width: 25%;
}

/*.tablebox .headmakers {
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
}*/

.makers ul {
    margin: 0 0 2em;
    padding: 0;
    width: 100%;
    font-size: 13rem;
    line-height: 1.8;
    list-style: none;
    overflow: hidden;
    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;
}

.makers li {
    margin: 0 0 2px;
    padding: 0;
    width: 33.3%;
    height: 90px;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    /background-color: var(--key-color1);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/*.tablebox .headmakers li {
    background-color: var(--key-color12);
}*/

.makers li:hover {
    /color: #fff;
    /background-color: var(--key-color2);
}

/*.headmakers ul {
    overflow: hidden;
}*/

/*.makers li {
    width: 32.6%;
    height: 90px;
    /padding: 0;
    /float: left;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
}*/

.makers li div {
    width: 100%;
    height: 100%;
    /background-color: rgba(255, 255, 255, 0.8);
    background-color: var(--key-color12);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.makers li:hover div {
    background-color: transparent;
}

.makers li div p {
    width: 100%;
    height: 100%;
    padding: 0.6rem 1rem;
}

.hm1 {
    background-image: url(image/banners/hm1.png)
}

.hm2 {
    background-image: url(image/banners/hm2.png)
}

.hm3 {
    background-image: url(image/banners/hm3.png)
}

.hm4 {
    background-image: url(image/banners/hm4.png)
}

.hm5 {
    background-image: url(image/banners/hm5.png)
}

.hm6 {
    background-image: url(image/banners/hm6.png)
}

.hm7 {
    background-image: url(image/banners/hm7.png)
}

.hm8 {
    background-image: url(image/banners/hm8.png)
}

.hm9 {
    background-image: url(image/banners/hm9.png)
}

.hm10 {
    background-image: url(image/banners/hm10.png)
}

.hm11 {
    background-image: url(image/banners/hm11.png)
}

.hm12 {
    background-image: url(image/banners/hm12.png)
}

/*.hm1:hover {
    background-image: url(image/banners/hm1-2.png)
}

.hm2:hover {
    background-image: url(image/banners/hm2-2.png)
}

.hm3:hover {
    background-image: url(image/banners/hm3-2.png)
}

.hm4:hover {
    background-image: url(image/banners/hm4-2.png)
}

.hm5:hover {
    background-image: url(image/banners/hm5-2.png)
}

.hm6:hover {
    background-image: url(image/banners/hm6-2.png)
}

.hm7:hover {
    background-image: url(image/banners/hm7-2.png)
}

.hm8:hover {
    background-image: url(image/banners/hm8-2.png)
}

.hm9:hover {
    background-image: url(image/banners/hm9-2.png)
}

.hm10:hover {
    background-image: url(image/banners/hm10-2.png)
}

.hm11:hover {
    background-image: url(image/banners/hm11-2.png)
}

.hm12:hover {
    background-image: url(image/banners/hm12-2.png)
}*/

.sm1 {
    background-image: url(image/banners/sm1.png)
}

.sm2 {
    background-image: url(image/banners/sm2.png)
}

.sm3 {
    background-image: url(image/banners/sm3.png)
}

.sm4 {
    background-image: url(image/banners/sm4.png)
}

.sm5 {
    background-image: url(image/banners/sm5.png)
}

.sm6 {
    background-image: url(image/banners/sm6.png)
}

.sm7 {
    background-image: url(image/banners/sm7.png)
}

.sm8 {
    background-image: url(image/banners/sm8.png)
}

.sm9 {
    background-image: url(image/banners/sm9.png)
}

.sm10 {
    background-image: url(image/banners/sm10.png)
}

.sm11 {
    background-image: url(image/banners/sm11.png)
}

.sm12 {
    background-image: url(image/banners/sm12.png)
}

.sm13 {
    background-image: url(image/banners/sm13.png)
}

.am1 {
    background-image: url(image/banners/am1.png)
}

.am2 {
    background-image: url(image/banners/am2.png)
}


/* prof */

#prof {
    background-color: var(--key-color);
}

#prof h2 {
    border-bottom: 2px solid var(--key-color1);
}

#prof div div {
    -webkit-column-count: 3;
    column-count: 3;
    -webkit-column-gap: var(--column-gap);
    column-gap: var(--column-gap);
}

#prof img {
    width: 100%;
    margin-top: 4rem;
}

.sig {
    margin: 1rem 0 0;
    text-align: right;
}


/* access */

#access div.bodybox > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 60px;
}

.address {
    width: calc(33.3% - var(--column-gap)/2);
    margin-right: var(--column-gap);
}

.banner {
    display: block;
    width: 75%;
    margin-top: 50px;
}

.banner img {
    width: 100%;
}

.map {
    width: calc(66.6% - var(--column-gap)/2);
}

.map iframe {
    width: 100%;
    height: 400px;
}


/* footer */

footer {
    padding: 15px 0 25px;
    background-color: var(--key-color);
}

footer a {
    display: block;
    width: 45px;
    margin: 0 auto;
}

footer a img {
    display: block;
    width: 100%;
}
