@charset "utf-8";
/*
Noto Sans Japanese
font-family: 'Noto Sans JP', sans-serif;
Regular 400
Bold 700

/*--------------------------------------------------------
	reset
---------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { margin: 0; padding: 0; }
address,caption,cite,code,dfn,em,strong,th,var { font-style: normal; }
ul,ol { list-style-type: none; }
em,strong,th,address { font-style: normal; font-weight: normal; text-align: left; }
h1,h2,h3,h4,h5,h6 { font-weight: normal; font-size: 100%; }
img,
object,
embed { border: 0; vertical-align: top; }
img { max-width: 100%; vertical-align: bottom; }
a{ outline: none;}
hr { border: none;}
table { border-collapse: collapse; border-spacing: 0; font-size: 100%; }
li { list-style-type: none; }
strong { font-weight: bold; }

/*-------------------------------------------------
	base
--------------------------------------------------*/
body {position: relative; background: #fff; color: #000; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; font-size: 16px; line-height: 1.5;  -webkit-text-size-adjust:100%;}
a{outline: none;}
/*txt img active*/
::selection ,
::-moz-selection { background:#666; }
img::selection,
img::-moz-selection { background:none; }
/*cookie*/
#onetrust-banner-sdk{ outline: none; }

/*-------------------------------------------------
	font アンチエイリアス
--------------------------------------------------*/
/* 解像度 1x：subpixel、解像度 2x：grayscale */
h1,h2,.number,p
{ -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: unset; }
@media only screen and 
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
h1,h2,.number,p
{ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
}

/*-------------------------------------------------
	fade
--------------------------------------------------*/
.wrap_f{ width: 100%; height: 100%; position: relative; }
.wrap_f::after {content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #000; pointer-events: none; user-select: none; z-index: 300; opacity: 1; transition:1s; }
.wrap_f.fade::after { opacity: 0; pointer-events: none; user-select: none; }

/*anime set
------------------------*/
.main_img img,
.main h1,
h2,
h3,
.co .txt,
.co .txt_s,
.co .img_box,
#history,
#caseback li:nth-child(1),
#caseback li:nth-child(2),
.spec .img_box,
.spec .txt_box{ visibility: hidden; }

/*-------------------------------------------------
	header
--------------------------------------------------*/
header{ position: absolute; left: 0px; top: 0px; z-index: 9999; width: 100%; }
header div{ margin: 0; line-height: 1; font-size: 1px; display: block; }
header div img{ width: 100%; vertical-align: top;}
/*------ header logo ------*/
header .seiko_logo{ width: 130px; position:absolute; right: 30px; top: 30px; text-align: right;}
header .prospex_logo{ width: 240px; position:absolute; left: 30px; top: 30px; }
@media (max-width: 1600px) {
header .seiko_logo{ width: 8.17vw; right: 1.85vw; top: 1.85vw; }
header .prospex_logo{ width: 14.9vw; left: 1.9vw; top: 1.8vw; }
}/*END*/
@media screen and (orientation: portrait) {
header .seiko_logo{ width: 130px; right: 30px; top: 30px; }
header .prospex_logo{ width: 220px; left: 30px; top: 30px; }
}/*END*/
@media screen and (max-width: 780px) and (orientation: portrait) { 
header .seiko_logo{ width: 17vw; right: 3.8vw; top: 3.8vw; }
header .prospex_logo{ width: 28vw; left: 3.8vw; top: 3.8vw; }
}/*END*/
@media screen and (max-width: 640px) and (orientation: portrait) {
header .seiko_logo{ width: 20vw; right: 3.8vw; top: 3.8vw; }
header .prospex_logo{ width: 36vw; left: 3.8vw; top: 3.8vw; }
}/*END*/

/*-------------------------------------------------
	contents
--------------------------------------------------*/
.wrapper{ position: relative; overflow: hidden;}

/*-------------------------------------------------
	main
--------------------------------------------------*/
.main { width: 100%; height: auto; position: relative; z-index: 1; overflow: hidden; outline:none; }
/*---- title_box ----*/
.main .title_box { position: absolute; left: 0; top: 80.5%; width: 100%; text-align: center; z-index: 2;}
@media screen and (orientation: portrait) { /* 縦 */
.main .title_box { top: 77.5%; }
}/*END*/
@media screen and (max-width: 640px) and (orientation: portrait) {
.main .title_box { top: 77.5%; }
}/*END*/
@media screen and (max-width: 400px) and (orientation: portrait) {
.main .title_box { top: 77%; }
}/*END*/
/*---- h1 ----*/
.main h1{ font-size: 2.5vw; line-height: 1.33; font-weight: 700; color: #fff; font-family: Helvetica, Arial, sans-serif;}
@media screen and (orientation: portrait) { /* 縦 */
.main h1{ font-size: 5.2vw; }
.main h1 span{ display: block; }
}/*END*/
@media screen and (max-width: 640px) and (orientation: portrait) {
.main h1{ font-size: 6.4vw; }
}/*END*/

/*---- main_img ----*/
.main .main_img { width: 100%; position: relative; z-index: 1; }
.main .main_img img{ width: 100%; }
/*[ on / off ]*/
.main_img .x15{display:block;}
.main_img .x1{display:none;}
.main_img .tab{display:none;}
.main_img .sp2{display:none;}
.main_img .sp{display:none;}
@media screen and (max-width: 1400px) {
.main_img .x15{display:none;}
.main_img .x1{display:block;}
.main_img .tab{display:none;}
.main_img .sp2{display:none;}
.main_img .sp{display:none;}
}/*END*/
@media screen and (orientation: portrait) {
.main_img .x15{display:none;}
.main_img .x1{display:none;}
.main_img .tab{display:block;}
.main_img .sp2{display:none;}
.main_img .sp{display:none;}
}/*END*/
@media screen and (max-width: 640px) and (orientation: portrait) {
.main_img .x15{display:none;}
.main_img .x1{display:none;}
.main_img .tab{display:none;}
.main_img .sp2{display:block;}
.main_img .sp{display:none;}
}/*END*/
@media screen and (max-width: 400px) and (orientation: portrait) {
.main_img .x15{display:none;}
.main_img .x1{display:none;}
.main_img .tab{display:none;}
.main_img .sp2{display:none;}
.main_img .sp{display:block;}
}/*END*/

/*-------------------------------------------------
	txt
--------------------------------------------------*/
.co h2{ font-size: 32px; letter-spacing: 0px; line-height: 1.5; font-family: Helvetica, Arial, sans-serif; font-weight: bold;}
@media (max-width: 1200px) {
.co h2{ font-size: 2.7vw; letter-spacing: 0vw;}
}/*END*/
@media (max-width: 1024px) {
.co h2{ font-size: 32px; letter-spacing: 0px;}
}/*END*/
@media (max-width: 750px) {
.co h2{ font-size: 4.2vw; letter-spacing: 0px;}
}/*END*/
@media (max-width: 640px) {
.co h2{ font-size: 5.2vw; letter-spacing: 0vw; }
}/*END*/
@media (max-width: 500px) {
.co h2{ font-size: 6.2vw; letter-spacing: 0vw; }
}/*END*/


/*line-height
------------------------------*/
/*--- lh_1 ---*/
.lh_1{line-height: 2;}
@media (max-width: 1400px) {
.lh_1{line-height: 2;}
}/*END*/
@media (max-width: 1024px) {
.lh_1{line-height: 2;}
}/*END*/
@media (max-width: 640px) {
.lh_1{line-height: 1.9;}
}/*END*/

/*txt size
------------------------------*/
/*--- txt ---*/
.txt{ font-size: 17px; }
@media (max-width: 1400px) {
.txt{ font-size: 16px; }
}/*END*/
@media (max-width: 1200px) {
.txt{ font-size: 1.3vw; }
}/*END*/
@media (max-width: 1024px) {
.txt{ font-size: 16px; }
}/*END*/
@media (max-width: 640px) {
.txt{ font-size: 15px; }
}/*END*/
@media (max-width: 420px) {
.txt{ font-size: 15px; }
}/*END*/
@media (max-width: 400px) {
.txt{ font-size: 14px; }
}/*END*/
@media (max-width: 360px) {
.txt{ font-size: 13px; }
}/*END*/

/*--- txt_l ---*/
.txt_l{ font-size: 16.5px; line-height: 2.3; letter-spacing: 1px; font-weight: 700;}
@media (max-width: 1400px) {
.txt_l{ font-size: 16px; }
}/*END*/
@media (max-width: 1200px) {
.txt_l{ font-size: 1.33vw; }
}/*END*/
@media (max-width: 1024px) {
.txt_l{ font-size: 17px; }
}/*END*/
@media (max-width: 640px) {
.txt_l{ font-size: 14px; }
}/*END*/
@media (max-width: 420px) {
.txt_l{ font-size: 14px; }
}/*END*/
@media (max-width: 400px) {
.txt_l{ font-size: 13.5px; }
}/*END*/
@media (max-width: 360px) {
.txt_l{ font-size: 12.5px; }
}/*END*/

/*span*/
.txt span,
.txt_s span{ display: inline-block; }
/*---txt_s---*/
.txt_s{ margin-top: 10px; font-size: 14px!important; line-height: 1.6;letter-spacing: .6px; }
@media (max-width: 1200px) {
.txt_s{ margin-top: 10px; font-size: 1.12vw!important; line-height: 1.6; }
}/*END*/
@media (max-width: 950px) {
.txt_s{ margin-top: 10px; font-size: 13px!important; line-height: 1.6; }
}/*END*/
@media (max-width: 640px) {
.txt_s{ margin-top: 10px; font-size: 12px!important; line-height: 1.6;letter-spacing: 0px; }
}/*END*/

/*-------------------------------------------------
	concept
--------------------------------------------------*/
#concept .txt{ margin-top: 50px;}
@media screen and (max-width: 1200px) {
#concept .txt{ margin-top: 4vw;}
}/*END*/
@media screen and (max-width: 1024px) {
#concept .txt{ margin-top: 6vw;}
}/*END*/
@media screen and (max-width: 640px) {
#concept .txt{ margin-top: 8vw;}
}/*END*/
@media screen and (max-width: 500px) {
#concept .txt{ margin-top: 10vw;}
}/*END*/
@media screen and (max-width: 450px) {
#concept .txt{ margin-top: 8vw;}
}/*END*/


#design .txt{ margin-top: 30px;}
@media screen and (max-width: 1200px) {
#design .txt{ margin-top: 2.2vw;}
}/*END*/
@media screen and (max-width: 1024px) {
#design .txt{ margin-top: 3vw;}
}/*END*/
@media screen and (max-width: 640px) {
#design .txt{ margin-top: 4vw;}
}/*END*/
@media screen and (max-width: 500px) {
#design .txt{ margin-top: 4vw;}
}/*END*/
@media screen and (max-width: 450px) {
#design .txt{ margin-top: 4vw;}
}/*END*/


#cal .txt,
#caseback .txt,
#box .txt{ margin-top: 20px;}
@media screen and (max-width: 1200px) {
#cal .txt,
#caseback .txt,
#box .txt{ margin-top: 2vw;}
}/*END*/
@media screen and (max-width: 1024px) {
#cal .txt,
#caseback .txt,
#box .txt{ margin-top: 18px;}
}/*END*/
@media screen and (max-width: 640px) {
#cal .txt,
#caseback .txt,
#box .txt{ margin-top: 3vw;}
}/*END*/
@media screen and (max-width: 500px) {
#cal .txt,
#caseback .txt,
#box .txt{ margin-top: 3vw;}
}/*END*/
@media screen and (max-width: 450px) {
#cal .txt,
#caseback .txt,
#box .txt{ margin-top: 3vw;}
}/*END*/

/*-------------------------------------------------
	concept
--------------------------------------------------*/
#concept{ padding: 86px 0 0; position: relative; text-align: center;}
#concept .read h2{ margin: 0 auto; max-width: 900px; }
#concept .read h2 span{ display: inline-block;}
#concept .read h2 br{ display: inline-block;}
#concept .read .txt_wrap{ margin: 0 auto; width: 90%; max-width: 1080px; }
#concept .read .txt p span{ display: inline-block; }
@media screen and (max-width: 1400px) {
#concept{ padding: 6.3vw 0 0;}
#concept .read .txt_wrap{ width: 85%; max-width: 1050px; }
}/*END*/
@media screen and (max-width: 1200px) {
#concept{ padding: 6.8vw 0 0;}
#concept .read .txt_wrap{ width: 85%; max-width: 1010px; }
}/*END*/
@media screen and (max-width: 1024px) {
#concept{ padding: 70px 0 0;}
#concept .read .txt_wrap{ width: 85%; max-width: 850px; text-align: left; }
#concept .read .txt_wrap p br{ display: none;}
}/*END*/
@media screen and (max-width: 640px) {
#concept{ padding: 60px 0 0;}
#concept .read h2{ width: 85%; text-align: center;  line-height: 1.3;}
#concept .read h2 br{ display: none;}
}/*END*/
@media screen and (max-width: 500px) {
#concept{ padding: 12vw 0 0;}
}/*END*/
@media screen and (max-width: 450px) {
#concept{ padding: 14vw 0 0;}
}/*END*/

/*-------------------------------------------------
	history
--------------------------------------------------*/
#history{ padding:90px 0 120px; color:#fff;}
.his_inner{ margin: 0 auto; width: 85%; max-width: 1200px; display: flex; text-align: center; position: relative; }
.history_L{ position: relative; background: #080808;}
.history_R{ position: relative; background: #080808;}
.his_inner img{ width: 100%; margin-bottom: 70px;}
.his_inner .txt_box{ position: absolute; bottom: 0%; left: 0%; width: 100%; height: 35%; z-index: 10; display: flex; align-items: center; justify-content: center;}
.his_inner .txt_box h2{ font-size: 48px; line-height: 1; letter-spacing: 2px; color:#fff; opacity: 0.4; font-family: 'Times New Roman', Times, serif;  font-weight: normal !important; }
.his_inner .txt_box p { margin-top: 7px; font-size: 16px; letter-spacing: 1.5px; font-weight: 700; line-height: 1.5;}
.his_inner .txt_box p span{ font-size:20px;}
.his_inner_bar{ position: absolute; left: 50%; top:475px; height: 1px; width: 120px; margin-left: -60px; background: rgba(255,255,255,0.4); z-index: 11;}
@media (max-width: 1410px) {
.his_inner_bar{ position: absolute; left: 50%; top:33.5vw; width: 8.6vw; margin-left: -4.3vw; }
}/*END*/
@media (max-width: 1200px) {
#history{ padding:90px 0 100px;}
.his_inner .txt_box h2{ font-size: 4vw; line-height: 1;  }
.his_inner .txt_box p { margin-top: 0.7vw; font-size:1.35vw; }
.his_inner .txt_box p span{}
.his_inner_bar{ position: absolute; left: 50%; top:33.6vw; width: 8.6vw; margin-left: -4.3vw; }
}/*END*/
@media (max-width: 1024px) {
#history{ padding:80px 0 100px;}
.his_inner .txt_box h2{ font-size: 4.4vw; line-height: 1;  }
.his_inner .txt_box p { margin-top: 1vw;font-size:1.5vw;}
.his_inner .txt_box p span{ margin-top: 0px; }
.his_inner_bar{ position: absolute; left: 50%; top:34.5vw; width: 8.6vw; margin-left: -4.3vw; }
}/*END*/
@media (max-width: 850px) {
#history{ padding:80px 0 80px;}
.his_inner{ background: #0d0c03; height: 43vw;}
.his_inner .txt_box h2{ font-size: 4.4vw; line-height: 1; letter-spacing: 0px; }
.his_inner .txt_box p { margin-top: 1vw; font-size: 1.8vw; letter-spacing: 0px;}
.his_inner .txt_box p span{ margin-top: 0px; }
.his_inner_bar{ position: absolute; left: 50%; top:34.5vw; width: 8.6vw; margin-left: -4.3vw; }
}/*END*/
.br_his_inner{display: none;}
@media (max-width: 640px) {
.his_inner{ background: #0d0c03; height: 51vw;}
#history{ padding:60px 0 80px;}
.br_his_inner{display: block;}
.his_inner{ margin: 0 auto; width: 100%; }
.his_inner .txt_box h2{ font-size: 5vw; line-height: 1;  }
.his_inner .txt_box p { margin-top: 1.6vw; font-size: 2.3vw;}
.his_inner .txt_box p span{ margin-top: 0px; font-size:2.5vw;}
.his_inner_bar{ position: absolute; left: 50%; top:42vw; width: 8.6vw; margin-left: -4.3vw; }
}/*END*/
@media (max-width: 500px) {
#history{ padding:13vw 0 14vw;}
.his_inner{ background: #0d0c03; height: 52vw;}
.his_inner .txt_box{ height: 40%; }
.his_inner .txt_box h2{ font-size: 6vw; line-height: 1;  }
.his_inner .txt_box p { margin-top: 1.6vw; font-size: 2.6vw;}
.his_inner .txt_box p span{ margin-top: 0px; font-size:3vw;}
.his_inner_bar{ position: absolute; left: 50%; top:41vw; width: 8.6vw; margin-left: -4.3vw; }
}/*END*/
/* main_image  ON / OFF */
.his_x15{display:block;}
.his_x1{display:none;}
@media screen and (max-width: 1200px) {
.his_x15{display:none;}
.his_x1{display:block;}
}/*END*/

/*-------------------------------------------------
	para
--------------------------------------------------*/
.para{ position: relative; overflow: hidden; }
.para_inner img{ width: 100%; }
.para_inner{height: 42vw; width: 100%; position: relative; overflow: hidden;}
@media (max-width: 1600px){
.para_inner{height: 42vw; width: 100%; position: relative; }
}/*END*/
@media (max-width: 1024px){
.para_inner{ height: 70vw; width: 100%; }
}/*END*/
@media (max-width: 750px){
.para_inner{ height: 70vw; width: 100%; }
}/*END*/

/* [ on off ]*/
.para_x1{ display: block;}
.para_sp{ display: none;}
@media screen and (max-width: 1024px) {
.para_x1{ display: none;}
.para_sp{ display: block; }
}/*END*/

/*-------------------------------------------------
	para
--------------------------------------------------*/
.para2{ position: relative; overflow: hidden; }
.para2_inner img{ width: 100%; }
.para2_inner{height: 37.5vw; width: 100%; position: relative; overflow: hidden;}
@media (max-width: 1024px){
.para2_inner{ height: 60vw; width: 100%; }
}/*END*/
@media (max-width: 750px){
.para2_inner{ height: 60vw; width: 100%; }
}/*END*/

/*-------------------------------------------------
	DESIGN
--------------------------------------------------*/
#design{ padding: 95px 0 100px; width: 100%; }
#design h2{ text-align: center; margin: 0 auto;}
#design .txt_wrap{ margin: 0 auto; width: 95%; max-width: 1100px; text-align: center;}
@media screen and (max-width: 1400px) {
#design .txt_wrap{ margin: 0 auto; width: 95%; max-width: 1020px; }
}/*END*/
@media screen and (max-width: 1200px) {
#design .txt_wrap{ margin: 0 auto; width: 82%; }
#design{ padding: 8vw 0 9vw;}
}/*END*/
@media screen and (max-width: 1024px) {
#design{ padding: 70px 0;}
#design .txt_wrap{ width: 85%; max-width: 700px; text-align: left; }
#design .txt_wrap p br{ display: none;}
}/*END*/
@media screen and (max-width: 640px) {
#design{ padding: 60px 0;}
}/*END*/
@media screen and (max-width: 500px) {
#design{ padding: 12vw 0;}
}/*END*/
@media screen and (max-width: 450px) {
#design{ padding: 14vw 0;}
}/*END*/

/*-------------------------------------------------
	cal
--------------------------------------------------*/
#cal{ padding: 120px 0;}
#cal .inner { margin: 0 auto; width: 90%; max-width: 1200px; display: flex; align-items: center; justify-content: center; }
#cal .inner .img_box{ margin-left: 0%; width:41.7%;}
#cal .inner .txt_box{  margin-left: 9%; width:49%;}
.br_1{ display: inline-block;}
.br_2{ display: none;}
@media screen and (max-width: 1400px) {
#cal .inner .txt_box{  margin-left: 8%; width:47%;}
}/*END*/
@media screen and (max-width: 1300px) {
#cal .inner .txt_box{  margin-left: 8%; width:43%;}
}/*END*/
@media screen and (max-width: 1250px) {
#cal{ padding: 9.5vw 0;}
#cal .inner .img_box{ margin-left: 0%; width:40%;}
#cal .inner .txt_box{  margin-left: 7%; width:43%;}
}/*END*/
@media screen and (max-width: 1024px) {
#cal{ padding: 10vw 0 12vw;}
#cal .inner { margin: 0 auto; width: 80%; max-width: 1200px; display: block; }
#cal .inner .img_box{ margin: 0 auto; width:80%; text-align: center;}
#cal .inner .txt_box{ margin:7vw 0 0 0; width:100%; text-align: center;}
#cal .inner .txt_box h2{display: inline-block; text-align: left;}
#cal .inner .txt_box p{text-align: left;}
.br_1{ display: none;}
.br_2{ display: inline-block;}
}/*END*/
@media screen and (max-width: 640px) {
#cal{ padding: 12vw 0 13vw;}
#cal .inner .txt_box{ margin:8vw 0 0 0; width:100%; text-align: left;}
.br_1{ display: inline-block;}
.br_2{ display: none;}
}/*END*/

/*-------------------------------------------------
	caseback
--------------------------------------------------*/
#caseback{ padding: 95px 0 0; width: 100%; }
#caseback h2{ text-align: center; margin: 0 auto;}
#caseback .txt_wrap{ margin: 0 auto; width: 95%; max-width: 1100px; text-align: center;}
@media screen and (max-width: 1024px) {
#caseback{ padding: 70px 0 0;}
#caseback .txt_wrap{ width: 85%; max-width: 850px; text-align: center; }
#caseback .txt_wrap p br{ display: none;}
}/*END*/
@media screen and (max-width: 640px) {
#caseback{ padding: 60px 0 0;}
}/*END*/
@media screen and (max-width: 500px) {
#caseback{ padding: 12vw 0 0;}
}/*END*/
@media screen and (max-width: 450px) {
#caseback .txt_wrap{text-align: left; }
#caseback{ padding: 14vw 0 0;}
}/*END*/

/*--- txt ---*/
#caseback ul li p{ margin-top: 15px; font-size: 17px; line-height: 1.4; }
@media (max-width: 1400px) {
#caseback ul li p{ margin-top: 15px; font-size: 16px; }
}/*END*/
@media (max-width: 1200px) {
#caseback ul li p{ margin-top: 15px; font-size: 1.3vw; }
}/*END*/
@media (max-width: 1024px) {
#caseback ul li p{ margin-top: 15px; font-size: 16px; }
}/*END*/
@media (max-width: 640px) {
#caseback ul li p{ margin-top: 14px; font-size: 12px; }
}/*END*/
@media (max-width: 400px) {
#caseback ul li p{ margin-top: 14px; font-size: 12px; }
}/*END*/
@media (max-width: 360px) {
#caseback ul li p{ margin-top: 14px; font-size: 12px; }
}/*END*/
#caseback ul li p span{ display: inline-block;}
#caseback ul{ width: 80%; max-width: 1060px; margin: 0 auto; display: flex; justify-content: space-between;}
#caseback ul li{ text-align: center; width: 47.2%; }
@media screen and (max-width: 750px) {
#caseback ul{ width: 85%; }
}/*END*/
@media screen and (max-width: 400px) {
#caseback ul{ width: 90%; }
}/*END*/
#caseback ul{ padding:100px 0 120px;}
@media screen and (max-width: 1200px) {
#caseback ul{ padding:8vw 0 9vw;}
}/*END*/
@media screen and (max-width: 640px) {
#caseback ul{ padding:12vw 0 13vw;}
}/*END*/
@media screen and (max-width: 450px) {
#caseback ul{ padding:12vw 0 14vw;}
}/*END*/

/*-------------------------------------------------
	box
--------------------------------------------------*/
#box{ padding: 120px 0; width: 100%; background: #1d1d1d; color: #fff; text-align: center; overflow: hidden; }
#box .img_box{ margin: 0 auto; width: 100%; max-width: 1200px; position: relative; }
#box .img_box img{ margin-left: 14.7%; width: 85.1%; max-width: 1022px; position: relative;z-index: 3; }
#box .txt_box { margin: -20px 0 0 0; position: relative; z-index: 2; }
@media screen and (max-width:1200px) {
#box{ padding: 10vw 0; }
}/*END*/
@media screen and (max-width:850px) {
#box{ padding: 12vw 0; }
#box .txt_box { margin: 0 auto; width: 80%; }
#box .txt_box br{ display: none; }
}/*END*/
@media screen and (max-width:640px) {
#box{ padding: 18vw 0 14vw; }
#box .txt_box p {text-align: left; }
#box .img_box{ margin: 0 0 0 -5%; width: 110%; max-width: 1200px; position: relative; }
#box .img_box img{ margin-left: 14.7%; width: 85.1%; max-width: 1022px; position: relative;z-index: 3; }
}/*END*/


.box_bg{ position: absolute; left: 250px; top: -400px; width: 1700px; height: 1700px; margin:-850px 0 0 -850px ; background-image: radial-gradient(circle closest-side, #ccc 0%, #555 60%, #333 80%, #242424 90%, #1d1d1d 100%); z-index: 1; }
@media screen and (max-width: 750px) {
.box_bg{ position: absolute; left: 15vw; top: -50vw; width: 200vw; height: 200vw; margin:-100vw 0 0 -100vw ; background-image: radial-gradient(circle closest-side, #ccc 0%, #555 60%, #333 80%, #242424 90%, #1d1d1d 100%); z-index: 1; }
}/*END*/




/*-------------------------------------------------
	spec
--------------------------------------------------*/
.spec{ padding: 0 0 80px; background: #fff; color: #000; position: relative; }
.spec .title_box{ padding: 80px 0 70px; }
@media screen and (max-width: 640px) {
.spec .title_box{ padding: 11vw 0 10vw; }
}/*END*/
.spec h2{ font-size: 36px; line-height: 1.3; font-weight: 700; font-family: Helvetica, Arial, sans-serif; text-align: center;}
@media screen and (orientation: portrait) { /* 縦 */
.spec h2 span{ display: block; }
}/*END*/
@media screen and (max-width: 640px) {
.spec h2{ font-size: 5.5vw;}
}/*END*/
@media screen and (max-width: 450px) {
.spec h2{ font-size: 5.5vw;}
}/*END*/
.spec .inner{ margin: 0 auto; width: 100%; max-width: 650px; display: flex; align-items: center; justify-content: center; }
.spec .inner .img_box{ max-width: 266px; }
.spec .inner .txt_box{ margin-left: 8%; line-height: 1.5; text-align: center; position: relative; z-index: 2; }
@media screen and (max-width: 800px) {
.spec .inner .txt_box{ margin-left: 8%;}
}/*END*/
@media screen and (max-width: 650px) {
.spec{  padding: 0 0 12vw; }
.spec .inner .img_box{ width:40%; }
.spec .inner .txt_box{ margin-left: 7%; }
}/*END*/
@media screen and (max-width: 500px) {
.spec .inner .txt_box{ margin-left: 5%;}
}/*END*/
@media screen and (max-width: 400px) {
.spec{  padding: 0 0 70px; }
.spec .inner{ margin: 0 auto; width: 100%; max-width: 650px; display: block; }
.spec .inner .txt_box{ margin:20px 0 0 0; display: block;}
.spec .inner .img_box{ width:55%; margin: 0 auto; }
.spec .inner .img_box img{ margin-left: -1%; }
}/*END*/
/* [ on off ]*/
.spec .x15{display:block;}
.spec .x1{display:none;}
@media (max-width: 500px) {
.spec .x15{display:none;}
.spec .x1{display:block;}
}/*END*/
.number		{ margin-top: 0px; font-size: 26px; letter-spacing: 1px; font-weight: 400; }
.caribre	{ margin-top: 5px; font-size: 15px; }
.price		{ margin-top: 7px; font-size: 18px; }
.price span	{ margin-top: 0px; font-size: 12px; margin-left: 3px; }
.limited	{ margin-top: 7px; font-size: 15px; position: relative; padding-bottom: 4px; display: inline-block;} 
.limited::after { content: ''; position: absolute; left: 0px; bottom: 0px; width: 100%; height: 2px; background: #000; }
.limited_sub{ margin-top: 3px; font-size: 12px; }
.spec_txt	{ margin-top: 7px; font-size: 14px; }
.spec_txt2	{ margin-top: 18px; font-size: 13px; }
@media screen and (max-width: 640px) {
.number		{ margin-top: 0px; font-size: 24px; }
.caribre	{ margin-top: 5px; font-size: 14px; }
.price		{ margin-top: 7px; font-size: 16px; }
.price span	{ margin-top: 0px; font-size: 11px; margin-left: 3px; }
.limited	{ margin-top: 7px; font-size: 14px; position: relative; padding-bottom: 4px; display: inline-block;}
.limited_sub{ margin-top: 3px; font-size: 11px; }
.spec_txt	{ margin-top: 7px; font-size: 13px; }
.spec_txt2	{ margin-top: 18px; font-size: 12px; }
}/*END*/
@media screen and (max-width: 500px) {
.limited	{ margin-top: 7px; font-size: 13px;}
.number		{ margin-top: 0px; font-size: 23px; }
}/*END*/

/*spec_btn*/
.spec_btn { margin:22px auto 0; display: block;}
.spec_btn a {width: 190px; padding: 16px 0 18px; margin:0 auto; font-size: 14px; line-height: 1; font-weight: 400;letter-spacing: .5px; color: #fff; background: #000; display: block; transition: 0.3s; text-decoration: none; border-radius: 4px;}
.spec_btn a:hover { cursor: pointer; color: #fff; background: #555; }
@media screen and (max-width: 640px) {
.spec_btn { margin: 18px auto 0; }
.spec_btn a {  width: 150px; padding: 14px 0 16px; font-size: 13px; letter-spacing: 0px;}
}/*END*/
@media screen and (max-width: 420px) {
.spec_btn { margin: 15px auto 0; }
.spec_btn a { font-size: 12px; }
}/*END*/

/*-------------------------------------------------
	gotop
--------------------------------------------------*/
.gotop { position:absolute; bottom:0px; right:20px;width:50px; height:70px; box-sizing:border-box; border-radius: 0%; z-index: 2000!important; }
.gotop a{ position: relative; display:block; background:rgba(33,33,33,0.8); text-decoration:none;width:50px; height:50px; box-sizing:border-box; border-radius: 0%; z-index: 11; transition: 0.3s; }
.gotop a::after { position:absolute; top:50%; left:50%; content: ''; width: 16px; height: 16px; margin: -8px 0 0 -8px; background: url("../img/page_top.svg") no-repeat ; background-size: cover;}
.gotop a:hover { background:rgba(60,60,60,0.5); }
@media (max-width: 500px) {
.gotop { position:absolute; bottom:0px; right:10px; width:40px; height:50px; }
.gotop a{ width:40px; height:40px; }
.gotop a::after { width: 14px; height: 14px; margin: -7px 0 0 -7px; }
}/*END*/

/*-------------------------------------------------
	footer
--------------------------------------------------*/
footer{ background: #262626; width: 100%; height: auto; position: relative; z-index: 10; }
footer::after { content:" "; display:block; clear:both;}
.foot_l{ float: left; margin: 59px 0 0 40px;}
.foot_l .foot_logo { float: left; line-height: 1; margin-bottom: 53px; }
.foot_l .foot_logo img { width: 131px; transition: 0.2s; }
.foot_l .foot_logo a:hover img{ opacity: 0.6;}
.foot_l .copyright { float: left; margin: 13px 0 0 32px; font-size: 12px; line-height: 1; letter-spacing: 1px; color: #fff; font-family:Arial, Helvetica, sans-serif; font-weight: 400; }
@media (max-width: 750px) { 
.foot_l{ float: none; margin: 39px 0 0 0px; text-align: center;}
.foot_l .foot_logo { float: none; line-height: 1; margin-bottom: 23px; }
.foot_l .copyright { float: none; margin: 13px 0 0 0px; padding-bottom: 30px; font-size: 12px; line-height: 1; color: #fff; }
}/*END*/
.foot_r { float: right; padding-top: 58px; margin: 0 35px 0 0 ; }
.foot_r .sns { display: flex; list-style-type: none; }
.foot_r .sns img{ width: 100%;}
.foot_r .sns > li { width: 40px; margin-right: 12px; padding: 5px; line-height: 1; border-radius: 50%; transition: 0.3s; background: #3c3c3c;}
.foot_r .sns > li:nth-child(2){ margin-right: 0; }
.foot_r .sns > li:hover{ opacity: 0.5; }
@media (max-width: 750px) {
.foot_r { float: none; padding-top: 40px; margin: 0px; }
.foot_r .sns { position: static; margin-bottom: 20px; justify-content: center; }
.foot_r .sns > li { margin-right: 10px; }
}/*END*/