@charset "UTF-8";
@import "reset5.css";
@import url("https://use.typekit.net/jad1tgu.css");
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

body { color:#26221d; line-height:1;  padding: 0; position: relative; min-height: 100%; overflow-x:hidden; background: #f3f0e9; -webkit-text-size-adjust: 100%; font-family: "Helvetica Neue", Helvetica, Arial,'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Meiryo", "Osaka", "MS Pゴシック", "MS PGothic", sans-serif; }
html {  min-height: 100%; }

* html body { font-family: "Helvetica Neue", Helvetica, Arial,'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Meiryo", "Osaka", "MS Pゴシック", "MS PGothic", sans-serif;  }
*:first-child+html body { font-family: neue-haas-grotesk-display, "Helvetica Neue", Helvetica, Arial, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Meiryo", "Osaka", "MS Pゴシック", "MS PGothic", sans-serif; }

* {word-wrap: break-word; }
img { -ms-interpolation-mode: bicubic; }
/* !font-size 12px default setting */
body { font-size: 13px; line-height: 2.2; letter-spacing: 0.12em; }
*:first-child+html body { font-size:77%;}
* html body { font-size:77%;}

body p { font-weight: 300; letter-spacing: 0.24em }
h2,h3,h4,h5 { letter-spacing: 0.04em }
.serif { font-family: Georgia, "Times New Roman", Times, "serif" }
.mincho { font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }

/* !clearfix */
hr { display: none; }

.cfix { zoom:1; }
.cfix:after{
    content:"";
    clear:both;
    display:block;
    height:0;
	font-style:italic
}

/* スクロールバーの有無によるズレ対策 */
html {
	overflow-y: scroll;
}


img { vertical-align: middle }


/* margin-bottom
=========================================*/
.mb0 { margin-bottom:0 !important; }
.mb3 { margin-bottom:3px !important; }
.mb4 { margin-bottom:4px !important; }
.mb5 { margin-bottom:5px !important; }
.mb7 { margin-bottom:7px !important; }
.mb10 { margin-bottom:10px !important; }
.mb12 { margin-bottom:12px !important; }
.mb15 { margin-bottom:15px !important; }
.mb20 { margin-bottom:20px !important; }
.mb25 { margin-bottom:25px !important; }
.mb30 { margin-bottom:30px !important; }
.mb35 { margin-bottom:35px !important; }
.mb40 { margin-bottom:40px !important; }
.mb50 { margin-bottom:50px !important; }
.mb60 { margin-bottom:60px !important; }
.mb80 { margin-bottom:80px !important; }


/* margin-top
=========================================*/
.mt0 { margin-top:0 !important; }
.mt3 { margin-top:3px !important; }
.mt4 { margin-top:4px !important; }
.mt5 { margin-top:5px !important; }
.mt7 { margin-top:7px !important; }
.mt10 { margin-top:10px !important; }
.mt12 { margin-top:12px !important; }
.mt15 { margin-top:15px !important; }
.mt20 { margin-top:20px !important; }
.mt25 { margin-top:25px !important; }
.mt30 { margin-top:30px !important; }
.mt35 { margin-top:35px !important; }
.mt40 { margin-top:40px !important; }
.mt50 { margin-top:50px !important; }

.mr5 { margin-right:5px !important; }
.mr10 { margin-right:10px !important; }


/* padding-top
=========================================*/
.pt0 { padding-top:0 !important; }
.pt3 { padding-top:3px !important; }
.pt4 { padding-top:4px !important; }
.pt5 { padding-top:5px !important; }
.pt7 { padding-top:7px !important; }
.pt10 { padding-top:10px !important; }
.pt12 { padding-top:12px !important; }
.pt15 { padding-top:15px !important; }
.pt20 { padding-top:20px !important; }
.pt25 { padding-top:25px !important; }
.pt30 { padding-top:30px !important; }
.pt35 { padding-top:35px !important; }
.pt40 { padding-top:40px !important; }
.pt50 { padding-top:50px !important; }
.pt60 { padding-top:60px !important; }
.pt80 { padding-top:80px !important; }


.tx9 { font-size: 9px }
.tx10 { font-size: 10px }
.tx11 { font-size: 11px }
.tx12 { font-size: 12px }
.tx13 { font-size: 13px }
.tx14 { font-size: 14px }
.tx15 { font-size: 15px }
.tx16 { font-size: 16px }
.tx18 { font-size: 18px }
.tx20 { font-size: 20px }
.tx24 { font-size: 24px }

.fltR { float: right; }
.fltL { float: left; }

.txtR { text-align: right; }
.txtL { text-align: left; }
.txtC { text-align: center; }


/* !Links */
p a { font-weight: 400 }
a:link { color: #221815; text-decoration: none }
a:visited { color: #221815; text-decoration: none }
a:hover { color: #cac7c6; text-decoration: underline }
a:active { color: #221815; text-decoration: none }


html {  }
#wrapper { position: relative; width: 100%; text-align: center; overflow: hidden }
#loader { position: fixed; left: 50%; top: 50%; margin: -16px 0 0 -16px; z-index: 10000 }
#menu-btn { display: none }

/* header */
#header { height: 80px; position:relative; width: 100%; min-width:1200px; background: #f3f0e9; z-index: 1000 }
#header h1 { position:absolute; top:70px; left:50px; }
#header .gnav { position:absolute; top: 50px; right: 10px; }
#header .gnav li { float:left; }
#header .gnav li a { font-size: 15px; line-height: 1em; padding: 25px 30px; display: block; text-decoration:none; position: relative }
#header .gnav li a:hover { color: #f3f0e9; text-decoration: underline }
#header .gnav li a span { display: block; padding: 2px; position: relative }
#header .gnav li a span p { letter-spacing: 0.12em; position: relative; z-index: 10 }
#header .gnav li a span div { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #000; z-index: 0 }
#header .gnav .cur { color:#f3f0e9; font-weight: 500 }
#header .lang { font-size:15px; line-height:1; position:absolute; top:0px; right: 40px; border-left:1px solid #9b9995; padding:20px 0 5px 40px; }
#header .lang a { padding:0 0 0 3px; text-decoration:none; }
#header .lang a:hover { color: #f3f0e9; }
#header .lang a span { display: inline-block; padding: 2px; position: relative }
#header .lang a span p { letter-spacing: 0.16em; position: relative; z-index: 10 }
#header .lang a span div { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #000; z-index: 0 }
#header .lang .cur { color:#f3f0e9; font-weight: 600 }

.spnav { display: none }


/* footer */
#footer { position:fixed; left: 0; bottom: 0; min-width:1200px; z-index: 0 }
#footer h2 { position:absolute; top:50%; left:50%; margin:0 0 0 -280px; }
#footer h2 span { color: #fff; font-size:18px; font-weight:400; text-shadow:0 0 2px #666; margin:20px 0 0; display:inline-block; }
#footer p { color:#fff; font-size:12px; letter-spacing:0.1em; text-shadow:0 0 2px #666; position:absolute; bottom:60px; left:0; width:100%; }


/* menu */
#fnav { padding:60px 0; min-width:1200px; }
#fnav h3 { font-size:18px; font-weight:400; line-height:1; margin:0 0 10px; }
#fnav ul { margin: 0; padding: 0; text-align: center; }
#fnav ul li { list-style-type: none; display: inline-block; font-size:30px; font-weight:100; }
#fnav a { text-decoration:none; font-weight:600; letter-spacing: 0.04em; }
#fnav a:hover { color:#cac7c6; }
#fnav .cur { color:#cac7c6; }


/* sns */
#sns { background:#cac7c6; padding:30px 0; min-width:1200px; }
#sns img { margin:0 20px; }

.contents { position: relative; background: #f3f0e9; z-index: 10 }

/* コンテンツ幅調整 */
.sec { min-width:1200px; opacity: 0; position: relative }

.top-sec h2 { opacity: 0; position: relative; z-index: 10 }
.top-sec .lock { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 10000 }
.sec .inner { padding: 0 0 120px }
.vis-wrap { position: relative; background: #64635d; z-index: 0 }
.vis-wrap.gd { background: #af9c46 }
.vis-wrap img { opacity: 0 }


/* top-main */
.top-main { position:relative; padding:0 0 0 12.15%; margin:0 0 90px; min-width:1200px; }
.top-main h2 { color:#f3f0e9; font-size:48px; line-height:1; position:absolute; bottom:85px; left:0; text-align:left; z-index: 10 }
.top-main span { padding:0 25px 0 50px; display:inline-block; position: relative }
.top-main span p { position: relative; letter-spacing: 0.04em; font-weight: bold; z-index: 10; }
.top-main span p span { padding:0; display: inherit; position: inherit }
.top-main span div { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #000; z-index: 0 }
.top-main .tx01 { margin:0 0 12px; }
.top-main .tx01 p { font-weight:400; }
.top-main .vis { position: relative; z-index: 0 }
.top-main .vis .vis-img { position: absolute; left: 0; top: 0; display: none; z-index: 0 }
.top-main .vis .cvr1 { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #64635d; z-index: 11 }
.top-main .vis .cvr2 { position: absolute; right: 0; top: 0; width: 100%; height: 100%; background: #af9c46; z-index: 10; display: none; opacity: 0.95 }
.top-main .vis .bullets { position: absolute; left: 50%; bottom: -40px; margin-left: -45px }
.top-main .vis .bullets li { display: inline-block; cursor: pointer }


/* top */

/* トップページボタン */
.btn-more01 { position:relative; display:inline-block; margin: 20px 0 0; }
.btn-more01 a { color:#000; font-size: 28px; font-weight:200; letter-spacing:0.05em; text-decoration:none; position:relative; z-index:200; }
.btn-more01 a:hover { font-weight: 500; letter-spacing:0; }
.btn-more01 .line { background:#e8e2d5; width: 100%; height: 14px; display:block; position:absolute; bottom: 12px; left: 0; z-index:100; }
.btn-more02 { position:relative; display:inline-block; }
.btn-more02 a { color:#fff; font-size:28px; font-weight:200; letter-spacing:0.05em; text-decoration:none; position:relative; z-index:200; }
.btn-more02 a:hover { font-weight: 500; letter-spacing:0;  }
.btn-more02 .line { background:rgba(243,240,233,0.3); width: 100%; height:14px; display:block; position:absolute; bottom:12px; left: 0; z-index:100; }

.top-bnr { padding: 0 60px 60px }
.top-bnr a { display: block; overflow: hidden }
.news { text-align:left; padding:0 0 90px 12.15%; }
.news h2 { font-size:28px; line-height:1; margin:0 0 35px; }
.news h2 span { font-weight:100; font-style:italic; }
.news ul { border-top:2px solid #000;}
.news ul li { border-bottom:1px solid #b6b4af; }
.news ul li .date { font-weight:normal; padding:0 90px 0 0; }
.news ul li a { display: block; font-size:14px; font-weight:600; text-decoration:none; padding:15px 25px 10px; }
.news ul li a:hover { background: #000; color: #f3f0e9 }

.collection { background:#fff; padding:90px 0 115px; }
.collection h2 { font-size: 52px; line-height:1; margin:0 0 70px; }
.collection .sec_inner { padding: 0 8%; max-width: inherit; min-width: inherit; }
.collection li { float: left; width: 33.33%; opacity: 0 }
.collection li.ml { margin-left: 16.66% }
.collection li .col { padding: 30px; position: relative }
.collection li .col h3 { position: relative; font-weight: 600; font-size: 18px; margin-bottom: 0 !important; z-index: 1; display:inline-block; }
.collection li .col h3 span { color: #cf1f2a; font-weight: 400; font-size: 14px; position:absolute; bottom:1px; right:0; margin:0 -50px 0 0; }
.collection li .col .bs {  }
.collection li .col .tb { position: absolute; left: 5%; bottom: 30px; z-index: 0 }

.concept { background:#fff; padding:0 0 120px; position:relative; }
.concept .inner { padding:0 12.15% 0 0 ; position:relative; }
.concept h2 { color:#fff; font-size:52px; line-height:1;  position:absolute; top:110px; left:90px; }
.concept h3 { font-size:18px; letter-spacing:0.12em; font-weight: 400; position:absolute; top:130px; right:4.5%; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }
.concept .read { background:#000; width:580px; padding:25px 40px 10px; position:absolute; bottom:-50px; right:0; text-align:left; z-index: 10 }
.concept .read p { color:#fff; font-size:15px; text-align:left; letter-spacing:0em; }

.features { padding:90px 6%; }
.features .inner { position:relative; padding: 0 }
.features h2 { color:#fff; font-size:52px; line-height:1; position:absolute; top:90px; right:90px; }
.features ul { position:absolute; bottom:130px; left:70px; text-align:left; z-index: 10  }
.features ul li { color:#fff; font-size:20px; line-height:2.6em;  }
.features ul li span { font-size:15px; text-decoration:underline; padding:0 0 0 20px; display: inline-block }
.features .btn-more02 { position:absolute; bottom:40px; left:70px; z-index: 10  }

.magazine { background:#cac7c6; padding: 60px 0 80px; }
.magazine h2 { font-size: 52px; line-height:1; margin:0 0 60px; }
.magazine ul { padding: 0 6%; margin:0 0 0 -60px; }
.magazine ul li { width:50%; float:left; }
.magazine ul li .inner { margin:0 0 80px 60px; padding:0 0 0 80px; position:relative; }
.magazine ul li .inner a { display: block; overflow: hidden }
.magazine .tit {
	text-align: left;
	position: absolute;
	bottom: 20px;
	left: 2px;
}
.magazine .tit .date { font-size:12px; letter-spacing:0.1em; line-height:1; }
.magazine .tit .vol { font-size:50px; font-weight: bold; letter-spacing:0.04em; line-height:1; margin:0 0 10px; display:inline-block; }
.magazine .tit h3 { font-size:16px; line-height:2; font-weight: 400 }
.magazine .btn-more01 { margin-top: 0 }
.magazine .btn-more01 .line { background:rgba(243,240,233,0.5);  }

.case { position:relative; }
.case h2 { color:#fff; font-size:52px; text-decoration:none; line-height:1.1; position:absolute; top:110px; left:100px; text-align:left; }
.case h2 img { margin:0 0 20px; }
.case .btn-more02 { position:absolute; bottom:60px; right:80px; }

.clm2 { background:#fff; padding:70px 0; }
.clm2 ul li { float:left; width:50%; position:relative; }
.clm2 ul li a { display: block; overflow: hidden }
.clm2 h2 { color:#fff; font-size:52px; text-decoration:none; line-height:1; position:absolute; bottom:55px; left:50px; z-index: 10 }

.contact { padding: 70px 0 0 0; }




/* main */
.main { position:relative; padding:0 0 0 12.15%; margin:0 0 80px; min-width:1200px; }
.main h2 { color:#f3f0e9; font-size:48px; line-height:1; position:absolute; bottom:85px; left:0; text-align:left; z-index: 10 }
.main span { padding:0 50px 0 100px; display:inline-block; position: relative }
.main span p { position: relative; letter-spacing: 0.04em; font-weight: bold; display: inline-block; z-index: 10; }
.main span p.name { font-size:24px; font-weight: 300; margin-left: 1em }
.main span p span { padding:0; display: inherit; position: inherit }
.main span div { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #000; z-index: 0 }
.main .vis { position: relative; z-index: 0 }
.main .vis img { position: absolute; left: 0; top: 0; opacity: 0; z-index: 0 }
.main .vis .cvr1 { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #64635d; z-index: 11 }
.main .vis .cvr2 { position: absolute; right: 0; top: 0; width: 100%; height: 100%; background: #af9c46; z-index: 10; display: none; opacity: 0.95 }

.loc-nav { padding:0 0 40px 12.15%; text-align: left; margin-top: -40px }
.loc-nav li { display: inline-block; font-size: 16px }

/* concept */
#concept { background:#fff; padding:70px 0 140px; }
#concept .inner { width:80%; margin:0 auto; }
#concept h3 { font-size:22px; letter-spacing:0.4em; margin:0 0 45px; }
#concept p { text-align:left; }
#concept .profile { margin:130px 0 0; }
#concept .profile .cfix { margin:0 0 80px; }
#concept .profile .pic { float:left; }
#concept .profile .fltL { width:50%; }
#concept .profile .fltL h4 { margin:0 0 0 80px; font-size:24px; text-align:left; }
#concept .profile .fltL p { margin:0 0 0 80px; }
#concept .profile span { font-size:16px; font-weight:600; }


/* collection */
#collection  { background:#fff; padding:100px 0 200px; }
#collection .idx { width: 80%;  margin:0 auto 30px; }
#collection .idx li { width:50%; float:left; }
#collection .idx li .col { width: 80%; margin: 0 auto 80px; }
#collection .idx li h3 { font-size: 20px; font-weight:600; position:relative; display:inline-block; }
#collection .idx li h3 span { color:#cf1f2a; font-size:14px; font-weight:100; position:absolute; bottom:5px; right:0; margin:0 -50px 0 0; }
#collection .idx li h3 span.tx-3d { color:#000; font-size:14px; font-weight:400; position:absolute; bottom:5px; right:0; margin:0 -80px 0 0; }
#collection h4 { font-size:20px; margin:0 0 40px; }

#detail { background:#fff; padding:100px 0 120px; }
#detail h3 { font-size: 40px; line-height:1; position:relative; display:inline-block; }
#detail h3 span { color:#cf1f2a; font-size: 20px; font-weight: 200; position:absolute; bottom:3px; right:0; margin:0 -80px 0 0; }
#detail p.read { width: 50%; margin: 40px auto 80px; text-align: left }
#detail .col { width: 60%; margin: 0 auto 80px;  }
#detail .col h4 { font-size: 16px; font-weight: 300; letter-spacing:0.1em; margin-bottom: 20px; position:relative; display:inline-block; }
#detail .col h4 span { font-size: 24px; font-weight:600; }
#detail .col h4 .new { color:#cf1f2a; font-size: 16px; font-weight: 200; position:absolute; bottom:3px; right:0; margin:0 -7em 0 0; }
#detail .vr-view { text-align: center; margin: 60px auto 0; padding: 60px 0; background: #f7f7f7 }
#detail .vr-view h4 { font-size: 24px; font-weight:600; letter-spacing:0.1em; margin-bottom: 20px; position:relative; display:inline-block; }
#detail .vr-view .vrWrap { margin: 0 auto; }
#detail .spec { width: 50%; margin: 80px auto 120px; text-align: left }
#detail .spec .fltL { width: 50% }
#detail .spec .fltR { width: 50% }
#detail .spec th { white-space: nowrap }
#detail .spec th, #detail .spec td { padding: 2px; vertical-align: top; font-weight: 300; font-size: 12px }
#detail .typeC { text-align: center; margin: -60px auto 120px }
.btn-back { position:relative; display:inline-block; }
.btn-back a { color: #000; font-size:28px; font-weight:200; letter-spacing:0.05em; text-decoration:none; position:relative; z-index:200; }
.btn-back a:hover { font-weight: 500; letter-spacing:0.02em; }
.btn-back a span { font-weight:400; }
.btn-back a:hover span { font-weight: 500; }
.btn-back .line { background:#e8e2d5; width: 100%; height:14px; display:block; position:absolute; bottom:12px; left:0; z-index:100; }
#detail .btn-pager { font-size:28px; font-style:italic; position:relative; }
#detail .btn-pager a { text-decoration:none; letter-spacing:0.05em; }
#detail .btn-pager .prev { position:absolute; top:-60px; left:70px; }
#detail .btn-pager .next { position:absolute; top:-60px; right:70px; }
#detail .btn-pager .gout { opacity: 0.15 }
a.gout:hover { color: #221815; text-decoration: none }


/* features */
#features { background:#fff; padding:70px 0 40px; }
#features .inner { width: 80%; margin:0 auto; }
#features.update { padding:60px 0 80px; background: #f7f8f8 }
#features.update .inner { width: 80%; margin:0 auto; padding: 0 }
#features .art { padding: 0; margin: 0 auto 120px; position: relative; }
#features .art.update-ss20 { margin: 0 auto 40px; text-align: left }
#features .art .num { font-size: 40px; color: #b58b0d; font-weight: 600; }
#features .art h3 { font-size: 22px; padding: 20px 0; border-bottom: solid 1px #b7b7b2; letter-spacing:0.1em !important; }
#features .art.update-ss20 h3 { font-size: 32px; border-bottom: none }
#features .art.update-ss20 h3 span { font-size: 18px; font-weight: normal; color: #b58b0e }
#features .art.update-ss20 p { font-size: 15px }
#features .art h4 { font-size: 18px; padding: 20px 0; font-weight: normal }
#features .art p { letter-spacing: 0.16em }
#features .art .l { float: left; width: 50%; text-align: left; }
#features .art .r { float: right; width: 50%; text-align: left; }
#features .art .l a, #features .art .r a { position: relative; display: block }
#features .art .l p a, #features .art .r p a { display: inline }
#features .art .l a .btn-view { position: absolute; left: 0; bottom: 0; width: 100%; text-align: center; display: inline-block; }
#features .art .r a .btn-view { position: absolute; left: 0; bottom: -40px; width: 100%; text-align: center; display: inline-block; }
#features .art .detail { margin-top: 40px }
#features .art .detail img { float: left; margin-right: 40px }
#features .art .detail p { padding-top: 80px }
#features .art .art_inner p { margin: 0 !important }

#features .imgR { padding: 0 0 0 0; }
#features .imgR .l { float: left; width: 45.652%; text-align: left }
#features .imgR .r { float: right; width: 54.348%; text-align: left }
#features .imgL { padding: 0 0 0 0; }
#features .imgL .l { float: left; width: 54.348%; text-align: left }
#features .imgL .r { float: right; width: 45.652%; text-align: left }
#feat01 p { width: 92% }
#feat01 .r img { width: 100% }
#feat02 { margin-bottom: 0 !important }
#feat07 { margin-bottom: 80px !important; }
#feat08 { margin-bottom: 0 !important; padding: 0 !important; }
#features #feat02 h3, #features #feat05 h3 { font-size: 20px; letter-spacing: 0.36em }


/* dealer */
#dealer { background:#fff; padding:70px 0 40px; }
#dealer .inner { width:80%; margin:0 auto; }
#dealer h3 { font-size:22px; letter-spacing:0.4em; margin:0 0 45px; }
#dealer .area { margin: 50px 0; }
#dealer ul {
	display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
#dealer ul li { width: 50%; float: left; text-align: left; }
#dealer ul li .dlr { padding: 30px; }
#dealer ul li h4 { margin:0 0 5px; font-size: 16px; letter-spacing: 0.12em }


/* magazine */
#magazine { background:#fff; padding:90px 0 60px; }
#magazine .inner { width:80%; margin:0 auto; }
#magazine ul { margin:0 0 0 -60px; }
#magazine ul li { width:50%; float:left; }
#magazine ul li .inner { margin:0 0 80px 60px; padding:0 0 0 80px; position:relative; }
#magazine ul li .inner a { display: block; overflow: hidden }
#magazine .tit { text-align:left; position:absolute; bottom:20px; left:0; }
#magazine .tit .date { font-size:12px; letter-spacing:0.1em; line-height:1; }
#magazine .tit .vol { font-size:50px; font-weight: bold; letter-spacing:0.1em; line-height:1; margin:0 0 10px; display:inline-block; }
#magazine .tit h3 { font-size:16px; line-height:2; font-weight: 400; }


/* news */
#news { background:#fff; padding:70px 0; }
#news .inner { width:80%; margin:0 auto; }
#news .inner .cont { float:left; width: 72% !important; padding:20px 0; margin-bottom: 30px; position: relative; text-align: left; }
#news .inner .cont .entry { margin-bottom: 80px !important; position: relative !important }
#news .inner .cont .entry .entry-title { font-size:22px !important; letter-spacing:0.4em; margin:0 0 45px; }
#news .inner #sidebar { float:right; width:22%; margin-bottom: 30px; text-align: left; }
#news .btn-more01 { margin: 0 0 0 -20px; }
#news .btn-more01 a { font-size: 24px; }
#news .btn-more01 .line { height: 10px; bottom: 10px; }
#news .inner .cont .entry .entry-thumb{ position: absolute; left:0; top: 0;}
#news .inner .cont .entry .entry-thumb a{ display: block; }
#news .inner .cont .entry .entry-thumb img{ border:0; width:180px; height:180px; display: block; }
#news .inner .cont .entry .entry-card-content{ padding-left:220px; }



/* inquiry */
#inquiry { background:#fff; padding:70px 0 140px; }
#inquiry h3 { font-size:22px; letter-spacing:0.4em; margin:0 0 45px; }
#inquiry .sec_inner #mailform { width: 50%; margin:0 auto; }
#inquiry li p {  text-align: left; }
#inquiry .form-box01 { border:0; color:#aaa; border:solid 1px #ccc; margin:0 0 20px; padding: 0 10px border:1px solid #cdcac8; width:98%; height:40px; border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; }
#inquiry textarea { border:0; color:#aaa; border:solid 1px #ccc; margin:0 0 20px; border:1px solid #cdcac8; width:98%; height:110px;
border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; padding:10px 0 }


.view { position: fixed; left: 0; top: 100%; width: 100%; height: 100%; background: #fff; /*display: none;*/ z-index: 10001 }
.view .box { position: absolute; left: 50%; top: 50%; width: 1024px; height:682px; margin: -341px 0 0 -512px; background-color: #fff; text-align: center; }
.view .close { position: absolute; left: 0; bottom: 5%; width: 100%; text-align: center; z-index: 1000 }

.pc-none { display: none }
.sp-none { display: block }




@media screen and (max-width: 780px) {
	
	body { font-size:13px; line-height: 2.0; -webkit-text-size-adjust: none; }

	a {color:#fff; text-decoration:none; -webkit-tap-highlight-color:rgba(0,0,0,0); -webkit-touch-callout:none; }
	
	#menu-btn { position: fixed; right: 0; top: 2px; width: 50px; height: 50px; z-index: 10000; cursor: pointer; display: block }
	#menu-btn span.ln1 { position: absolute; left: 50%; top: 50%; margin: -5px 0 0 -25%; width: 50%; height: 1px; background: #211815 }
	#menu-btn span.ln2 { position: absolute; left: 50%; top: 50%; margin: 5px 0 0 -25%; width: 50%; height: 1px; background: #211815 }

	#header { height: 60px; position: relative; left: 0; top: 0; width: 100%; min-width: inherit; background: #f3f0e9; z-index: 1000 }
	#header h1 { position:absolute; top:15px; left:20px; }
	#header h1 img { width: auto; height: 11px}
	#header .gnav { display: none }
	#header .gnav li { float:left; }
	#header .gnav li a { font-size: 15px; line-height: 1em; padding: 25px 30px; display: block; text-decoration:none; position: relative }
	#header .gnav li a:hover { color: #f3f0e9; text-decoration: underline }
	#header .gnav li a span { display: block; padding: 2px; position: relative }
	#header .gnav li a span p { letter-spacing: 0.12em; position: relative; z-index: 10 }
	#header .gnav li a span div { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #000; z-index: 0 }
	#header .gnav .cur { color:#f3f0e9; font-weight: 500 }
	#header .lang { display: none }
	#header .lang a { padding:0 0 0 3px; text-decoration:none; }
	#header .lang a:hover { color: #f3f0e9; }
	#header .lang a span { display: inline-block; padding: 2px; position: relative }
	#header .lang a span p { letter-spacing: 0.16em; position: relative; z-index: 10 }
	#header .lang a span div { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #000; z-index: 0 }
	#header .lang .cur { color:#f3f0e9; font-weight: 600 }
	
	.spnav { display: block; position: fixed; left: 100%; top: 0; width: 50%; height: 100%; background: #000; z-index: 10000 }
	.spnav .gnav { position: relative; padding: 40px 0 }
	.spnav .gnav li {  }
	.spnav .gnav li a { color: #f3f0e9; font-size: 15px; line-height: 1em; padding: 25px 30px; display: block; text-decoration:none; position: relative }
	.spnav .gnav li a:hover { color: #000; text-decoration: underline }
	.spnav .gnav li a span { display: block; padding: 2px; position: relative }
	.spnav .gnav li a span p { letter-spacing: 0.12em; position: relative; z-index: 10 }
	.spnav .gnav li a span div { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #f3f0e9; z-index: 0 }
	.spnav .gnav .cur { color:#000 !important; font-weight: 500 }
	.spnav .lang { font-size: 11px; line-height:1; position:absolute; bottom: 40px; left: 20px; color: #fff; }
	.spnav .lang a { color: #fff; padding:0 0 0 3px; text-decoration:none; }
	.spnav .lang a span { display: inline-block; padding: 2px; position: relative }
	.spnav .lang a span p { letter-spacing: 0.16em; position: relative; z-index: 10 }
	.spnav .lang a span div { position: absolute; left: 0; top: 0; width: 0; height: 100%; background: #f3f0e9; z-index: 0 }
	.spnav .lang .cur { color:#000; font-weight: 600 }

	/* footer */
	#footer { position:fixed; left: 0; bottom: 0; min-width:auto; z-index: 0 }
	#footer h2 { position:absolute; top:40%; left:0; margin:0; }
	#footer h2 img { width:70%; height:auto; }
	#footer h2 span { font-size:12px; margin:0px 0 0; }
	#footer p { font-size:11px;position:absolute; bottom:10px; left:0; }


	/* menu */
	#fnav { padding:30px 20px 20px; min-width:auto; }
	#fnav h3 { font-size:14px; margin:0 0 5px; }
	#fnav ul { }
	#fnav ul li { font-size:22px; }


	/* sns */
	#sns { padding:15px 0; min-width:auto; }
	#sns img { margin:0 10px; height:30px; }

	/* コンテンツ幅調整 */
	.sec { min-width:auto; }
	.sec .inner { padding: 0 0 40px }
	
	/* top-main */
	.top-main { position:relative; padding:0; margin:0 0 40px; min-width: inherit; }
	.top-main h2 { color:#f3f0e9; font-size: 20px; line-height:1; position:absolute; bottom: -10px; left:0; text-align:left; z-index: 10 }
	.top-main span { padding:0 20px; display:inline-block; position: relative }
	.top-main .tx01 { margin:0 0 6px; }
	
	/* top */
	
	/* トップページボタン */
    .btn-more01 { position:relative; display:inline-block; margin: 20px 0 0; }
	.btn-more01 a { color:#000; font-size: 22px; font-weight:200; letter-spacing:0.05em; text-decoration:none; position:relative; z-index:200; }
	.btn-more01 a:hover { font-weight: 500; letter-spacing:0;  }
	.btn-more01 .line { background:#e8e2d5; width: 100%; height: 14px; display:block; position:absolute; bottom: 5px; left: 0; z-index:100; }
	.btn-more02 { position:relative; display:inline-block; }
	.btn-more02 a { color:#fff; font-size:22px; font-weight:200; letter-spacing:0.05em; text-decoration:none; position:relative; z-index:200; }
	.btn-more02 a:hover { font-weight: 500; letter-spacing:0;  }
	.btn-more02 .line { background:rgba(243,240,233,0.3); width: 100%; height:14px; display:block; position:absolute; bottom:5px; left: 0; z-index:100; }

	.top-bnr { padding: 0 20px 20px }
	
	.news { text-align:left; padding: 0 0 40px 20px; }
	.news h2 { font-size:18px; line-height:1; margin: 0 0 20px; }
	.news ul li .date { font-weight:normal; padding: 0; display: block }
	.news ul li a { display: block; font-size:14px; font-weight:600; text-decoration:none; padding: 15px 25px 10px; }
	.news ul li a:hover { background: #000; color: #f3f0e9 }

	.collection { background:#fff; padding: 40px 0 60px; }
	.collection h2 { font-size: 32px; line-height:1; margin:0 0 20px; }
	.collection .sec_inner { padding: 0 10px; max-width: inherit; min-width: inherit; }
	.collection li { float: left; width: 50%; opacity: 0 }
	.collection li.ml { margin-left: 0 }
	.collection li .col { padding: 10px; position: relative }
	.collection li .col h3 { font-size: 16px; margin-bottom: 0 !important; z-index: 1; display:inline-block; }
	.collection li .col h3 span { font-size: 14px; position:absolute; bottom:1px; right:0; margin:0 -50px 0 0; }
	.collection li .col .bs {  }
	.collection li .col .tb { position: absolute; left: 5%; bottom: 30px; z-index: 0 }

	.concept { background:#fff; padding:0; position:relative; }
	.concept .inner { padding:0 ; position:relative; }
	.concept h2 { color:#fff; font-size: 32px; line-height:1;  position:absolute; top:40px; left:40px; }
	.concept h3 { font-size:18px; letter-spacing:0.12em; font-weight: 400; position:absolute; top: 32%; right: inherit; left: 40px; color: #fff; z-index: 10; -webkit-writing-mode: inherit; -ms-writing-mode: inherit; writing-mode: inherit; }
	.concept .read { background:#000; width: auto; padding: 20px; position:relative; bottom: inherit; right:inherit; text-align:left; z-index: 10 }
	.concept .read p { color:#fff; font-size:14px; text-align:left; letter-spacing:0em; }

	.features { padding: 20px; }
	.features .inner { position:relative; padding: 0; text-align:left;  }
	.features h2 { color:#fff; font-size: 32px; line-height:1; position:absolute; top: 20px; right: 20px; }
	.features ul { position: relative; bottom: inherit; left: inherit; z-index: 10  }
	.features ul li { color:#000; font-size: 16px; line-height:2em;  }
	.features ul li span { font-size: 12px; text-decoration:underline; padding:0 0 0 20px; display: inline }
	.features .btn-more02 { position: relative; bottom: inherit; left: inherit; text-align: left; }
	.features .btn-more02 a { color: #000 }
	.features .btn-more02 .line { background:#e8e2d5; }

	.magazine { background:#cac7c6; padding: 40px 0 40px 30px; }
	.magazine h2 { font-size: 32px; line-height:1; margin:0 30px 20px 0; }
	.magazine ul { margin:0; }
	.magazine ul li { width:100%; }
	.magazine ul li .inner { margin:0 0 40px; padding:0; }
	.magazine .tit { position:absolute; bottom:10px; left:-30px; }
	.magazine .tit .date { font-size:10px; }
	.magazine .tit .vol { font-size:36px; margin:0 0 5px; }
	.magazine .tit h3 { font-size:14px; line-height:1.6em; }
	.magazine .btn-more01 { margin: 0 30px 0 0 }
	.magazine .btn-more01 .line { background:rgba(243,240,233,0.5);  }

	.case { position:relative; }
	.case h2 { color:#fff; font-size: 24px; text-decoration:none; line-height:1.1; position:absolute; top:20px; left: 20px; text-align:left; }
	.case h2 img { margin:0 0 12px; }
	.case .btn-more02 { position:absolute; bottom:10px; right:15px; }

	.clm2 { background:#fff; padding: 40px 0; }
	.clm2 ul li { float:left; width: 100%; position:relative; }
	.clm2 ul li a { display: block; overflow: hidden }
	.clm2 h2 { color:#fff; font-size: 32px; text-decoration:none; line-height:1; position:absolute; bottom: 40px; left: 40px; z-index: 10 }

	.contact { padding: 40px 20px 0; }
	.contact div img { height: 44px }
	
	


	/* main */
	.main { position:relative; padding:0; margin:0; min-width: inherit; }
	.main h2 { color:#f3f0e9; font-size: 32px; line-height:1; position:absolute; bottom:-10px; left:0; text-align:left; z-index: 10 }
	.main span { padding: 0 20px; display:inline-block; position: relative }
	.main span p { position: relative; letter-spacing: 0.04em; font-weight: bold; display: inline-block; z-index: 10; }
	.main span p.name { display: none }
	.main span p span { padding:0; display: inherit; position: inherit }
	
	.loc-nav { padding: 20px ; text-align: left; margin-top: 0 }
	.loc-nav li { font-size: 14px }


	/* concept */
	#concept { padding: 40px 20px 70px; }
	#concept .inner { width:auto; margin:0 auto; }
	#concept h3 { font-size:20px; letter-spacing:0.3em; margin:0 0 20px; }
	#concept .profile { margin:40px 0 0; }
	#concept .profile .cfix { margin:0 0 40px; }
	#concept .profile img.pic { float: none; width: 100%; margin:0 0 20px; }
	#concept .profile .fltL { width:100%; }
	#concept .profile .fltL h4 { margin:0; }
	#concept .profile .fltL p { margin:0; }


	/* collection */
	#collection  { padding:40px 10px 70px; }
	#collection .idx { width: 100%;  margin:0 auto 20px; }
	#collection .idx li .col { width: 90%; margin: 0 auto 40px; }
	#collection .idx li h3 { font-size: 15px; }
	#collection .idx li h3 span { font-size:11px; position:absolute; bottom:2px; right:0; margin:0 -30px 0 0; }
	#collection .idx li h3 span.tx-3d { font-size:11px; position:absolute; bottom:2px; right:0; margin:0 -50px 0 0; }
	#collection h4 { font-size:16px; margin:0 0 20px; }
	#collection .case { width:50%; height:auto; }

	#detail { padding:50px 20px 70px; }
	#detail h3 { font-size: 30px; }
	#detail h3 span { font-size: 15px; position:absolute; bottom:1px; right:0; margin:0 -55px 0 0; }
	#detail p.read { width: 100%; margin: 30px auto 40px; }
	#detail .col { width: 100%; margin: 0 auto 40px; }
	#detail .col h4 { font-size: 14px; margin:0 0 10px; }
	#detail .col h4 span { font-size: 16px; }
	#detail .col h4 .new { font-size: 12px; bottom:2px; right:0; margin:0 -7em 0 0; }
	#detail .vr-view { margin: 40px -20px 0; padding: 40px 10px; }
	#detail .vr-view h4 { font-size: 16px; margin-bottom: 10px; }
	#detail .spec { width: 100%; margin: 40px auto 80px; }
	#detail .spec .fltL { width: 100% }
	#detail .spec .fltR { width: 100% }
	#detail .spec th { white-space: nowrap }
	#detail .spec th { width:30%; }
	#detail .spec td { width:70%; }
	#detail .typeC { margin: -40px auto 120px }
	#detail .typeC img { width:100%; }
	.btn-back a { font-size:25px; }
	#detail .btn-pager { font-size:20px; }
	#detail .btn-pager .prev { position:absolute; top:-100px; left:0; }
	#detail .btn-pager .next { position:absolute; top:-100px; right:0; }


	/* features */
	#features { padding:40px 20px 60px; }
	#features .inner { width:100%; }
	#features.update { padding:40px 20px 80px; }
	#features.update .inner { width: 100%; margin:0 auto; padding: 0 }
	#features .art { padding: 0; margin: 0 auto 50px; }
	#features .art.update-ss20 { margin: 0 auto 20px; }
	#features .art .num { font-size: 26px; line-height:1; }
	#features .art .num span { font-size: 32px }
	#features .art h3 { font-size: 20px; padding: 5px 0; }
	#features .art h3 img { height: 16px }
	#features .art.update-ss20 h3 { font-size: 32px; border-bottom: none }
	#features .art.update-ss20 h3 span { font-size: 18px; display: block }
	#features .art.update-ss20 p { font-size: 14px }
	#features .art h4 { font-size: 15px; padding: 15px 0 10px; }
	#features .art .l { width: 100%; margin:10px 0 0; }
	#features .art .r { width: 100%; margin:10px 0 0; }
	#features .art .l a .btn-view img, #features .art .r a .btn-view img { height: 15px }
	#features .art .detail { margin-top:20px; }
	#features .art .detail img { float: left; margin-right: 20px; width:50% }
	#features .art .detail p { padding-top: 0 }
	#features .art .pt80 { padding:20px 0 0 !important; }
	#features .imgR { padding: 0; }
	#features .imgR .l { width: 100%; }
	#features .imgR .r { width: 100%; }
	#features .imgL { padding: 0; }
	#features .imgL .l { width: 100%; }
	#features .imgL .r { width: 100%; }
	#feat01 p { width: 100% }
	#feat01 .r img { width: 100% }
	#feat02 { margin-bottom: 0 !important }
	#feat07 { margin-bottom: 60px !important; }
	#feat08 { margin-bottom: 0 !important; padding: 0 !important; }
	#feat08 span { text-align:left !important; display:inline-block }
	#features #feat02 h3, #features #feat05 h3 { font-size: 20px; letter-spacing: 0.36em }
	.sabae_imgs img { width:50%; }


	/* dealer */
	#dealer { padding:40px 20px 20px; }
	#dealer .inner { width:100%; }
	#dealer h3 { font-size:20px; letter-spacing:0.3em; margin:0 0 20px; }
	#dealer .area { margin:0 0 30px; }
	#dealer ul li { width: 100%; }
	#dealer ul li .dlr { padding: 0 0 20px; }
	#dealer ul li h4 { font-size: 13px; }


	/* magazine */
	#magazine { padding:60px 20px 40px 50px; }
	#magazine .inner { width:100%; }
	#magazine ul { margin:0; }
	#magazine ul li { width:100%; }
	#magazine ul li .inner { margin:0 0 40px; padding:0; }
	#magazine .tit { position:absolute; bottom:10px; left:-30px; }
	#magazine .tit .date { font-size:10px; }
	#magazine .tit .vol { font-size:36px; margin:0 0 5px; }
	#magazine .tit h3 { font-size:14px; line-height:1.6em; }
	

	#news { padding:40px 20px; }
	#news .inner { width:100%; }
	#news .inner .cont { float:none; width: auto !important; padding:20px 2%; margin-bottom: 20px; position: relative; text-align: left; }
	#news .inner .cont .entry { margin-bottom: 40px !important; position: relative !important }
	#news .inner .cont .entry .entry-title { font-size: 18px !important; letter-spacing:0.3em; margin:0 0 20px; line-height: 1.6em }
	#news .inner #sidebar { float:none; width: auto; padding:20px 2%; margin-bottom: 20px; text-align: left; }
	#news .inner .cont .entry .entry-thumb img{ border:0; width:100px; height:100px; display: block; }
	#news .inner .cont .entry .entry-card-content { padding-left:20px !important; }
	#news .inner .cont .entry .entry-card-content .post-date { display: block; margin-bottom: 10px }
	#news .inner .cont .entry .entry-card-content .entry-snippet { display: none }
	#news .btn-more01 { display: none }


	/* inquiry */
	#inquiry { padding:40px 20px 70px; }
	#inquiry h3 { font-size:20px; letter-spacing:0.3em; margin:0 0 20px; }
	#inquiry .sec_inner #mailform { width: 100%; margin:0 auto; }
	#inquiry .form-box01 {  width:96%; padding:0 2%; float:none; }
	#inquiry textarea {  width:96%; padding:2%; height:180px ; float:none; }
	#inquiry .form-btn { margin: 0; }

	/* mailform */
	.text-success { padding: 40px; font-size: 16px; font-weight: bold }
	.text-danger { padding: 40px; font-size: 16px; color: #C00; font-weight: bold }
	#button_default, .MyMailForm_btn { background:#676c73; font-size:16px; padding:10px 0; cursor:pointer; width:80%; border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; color: #fff; margin: 0 auto }
	#button_default:hover, .MyMailForm_btn:hover { background:#000; color: #fff  }

	#inquiry .followus { padding: 40px 0 ; background: #e4ded0 }
	#inquiry .followus h3 { font-size: 15px }
	#inquiry .followus ul { width: 204px; margin: 0 auto }
	#inquiry .followus li a { display: block; padding: 10px }

	#inquiry .contact { padding: 40px 20px;  }




	#gotop { position: fixed; right: 0; bottom: -60px; width: 60px; height: 60px; overflow: hidden; z-index: 100 }
	#gotop a { display: block; padding: 10px }

	.btn { margin: 40px auto 0; width: 90% }

	#lay .lay_inner { width: 100%; padding: 0 0 60px; opacity: 0 }
	#lay .lay_inner #lineup { padding-top: 40px }
	#lay .close_btn { right: 20px; top: 10px; width: 40px; height: 40px }
	
	.view .box { width: 120vw; height: 80vw; margin: -50vw 0 0 -50vw; }

	.w1 { width: 90%; height: auto }
	.w2 { width: 70%; height: auto }
	.w3 { width: 50%; height: auto }

	
	.pc-none { display: block }
	.sp-none { display: none }

}
