@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: #000; color: #fff; 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; }
video {display: block;}
/*-------------------------------------------------
	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 .title_box img,
.main .title_box h1,
h2,
h3,
#read p,
#jam_read p,
#jam_read .jam_read_bg,
.design p,
.jam_about_logo,
#jam_about p,
#movement p,
.img_box,
.design_03 .img_box,
.jam_design_02 .img_box,
.jam_design_03 .img_box,
.co_h2,
.co_h2 span,
.spec .title_box,
.spec .img_box,
.spec h3,
.spec p,
.spec_btn,
#spec_sub p{ visibility: hidden; }

/*-------------------------------------------------
	timer
--------------------------------------------------*/
.timer_show{ display: none;}

/*-------------------------------------------------
	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 (orientation: portrait) {
header .seiko_logo{ width: 140px; right: 30px; top: 30px; }
header .prospex_logo{ width: 250px; left: 30px; top: 30px; }
}/*END*/
@media (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 (max-width: 640px) and (orientation: portrait) {
header .seiko_logo{ width: 20vw;}
header .prospex_logo{ width: 36vw;}
}/*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: 76.5%; width: 100%; text-align: center; z-index: 2;}
.main .title_box img{width: 38.8vw; position: relative; z-index: 1; line-height: 0; font-size: 1px; }
.main .title_box h1 { margin-top: 1.55vw; font-size: 1.75vw; line-height: 1.3; color: #fff; width: 100%; font-family: Helvetica; font-weight: bold; position: relative; z-index: 2; }
@media (orientation: portrait) { /* 縦 */
.main .title_box { top: 76%; }
.main .title_box img{width: 69vw; }
.main .title_box h1 { margin-top: 3vw; font-size: 3.1vw; }
}/*END*/
@media (max-width: 640px) and (orientation: portrait) {
.main .title_box { top: 81%; }
.main .title_box img{width: 72vw; }
.main .title_box h1 { margin-top: 3.4vw; font-size: 3.8vw; line-height: 1.35;}

#jamstec .main .title_box { top: 77%; }
#jamstec .title_box h1 { margin-top: 3.6vw; font-size: 3.8vw; line-height: 1.35;}
#jamstec .title_box h1 span {display: block;}
}/*END*/
@media (max-width: 400px) and (orientation: portrait) {
.main .title_box { top: 80.5%; }
#jamstec .main .title_box { top: 75.5%; }
}/*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 .sp{display:none;}
@media (max-width: 1400px) {
.main_img .x15{display:none;}
.main_img .x1{display:block;}
.main_img .tab{display:none;}
.main_img .sp{display:none;}
}/*END*/
@media (orientation: portrait) {
.main_img .x15{display:none;}
.main_img .x1{display:none;}
.main_img .tab{display:block;}
.main_img .sp{display:none;}
}/*END*/
@media (max-width: 640px) and (orientation: portrait) {
.main_img .x15{display:none;}
.main_img .x1{display:none;}
.main_img .tab{display:none;}
.main_img .sp{display:block;}
}/*END*/

/*-------------------------------------------------
	txt
--------------------------------------------------*/
.co h2{ font-size: 30px; letter-spacing: 1px; line-height: 1.5; font-family: 'Noto Sans JP', sans-serif; font-weight: 700;}
@media (max-width: 1200px) {
.co h2{ font-size: 2.5vw; letter-spacing: .1vw;}
}/*END*/
@media (max-width: 1024px) {
.co h2{ font-size: 30px; letter-spacing: 1px;}
}/*END*/
@media (max-width: 750px) {
.co h2{ font-size: 4vw; letter-spacing: 1px;}
}/*END*/
@media (max-width: 640px) {
.co h2{ font-size: 5vw; letter-spacing: .1vw; }
}/*END*/
@media (max-width: 500px) {
.co h2{ font-size: 5.8vw; letter-spacing: .1vw; }
}/*END*/
/*line-height
------------------------------*/
/*--- lh_1 ---*/
.lh_1{line-height: 2.1;}
@media (max-width: 1400px) {
.lh_1{line-height: 2.1;}
}/*END*/
@media (max-width: 1024px) {
.lh_1{line-height: 2.1;}
}/*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: 14px; }
}/*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: 15px; }
}/*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: 28px; font-size: 14px!important; line-height: 1.6;letter-spacing: .6px; }
@media (max-width: 1200px) {
.txt_s{ margin-top: 25px; font-size: 1.12vw!important; line-height: 1.6; }
}/*END*/
@media (max-width: 950px) {
.txt_s{ margin-top: 24px; font-size: 13px!important; line-height: 1.6; }
}/*END*/
@media (max-width: 640px) {
.txt_s{ margin-top: 23px; font-size: 12px!important; line-height: 1.6;letter-spacing: 0px; }
}/*END*/

/*-------------------------------------------------
	read
--------------------------------------------------*/
#read { padding-bottom: 120px; color: #fff; background: linear-gradient(130deg, #3b3b3b 0%, #000000 80%);}
#read .inner{ padding: 90px 0 100px; width: 90%; max-width: 1100px; margin: 0 auto; text-align: center; }
#read .inner p span{ display: inline-block;}
@media (max-width: 1400px) {
#read .inner{ padding: 80px 0; width: 85%; max-width: 1100px;}
}/*END*/
@media (max-width: 1200px) {
#read .inner{ padding: 80px 0;}
}/*END*/
@media (max-width: 1024px) {
#read .inner{ padding: 80px 0; width: 90%; max-width: 1100px; margin: 0 auto; text-align: center; }
}/*END*/
@media (max-width: 1000px) {
#read { padding-bottom: 100px; }
#read .inner{  padding: 80px 0; width: 90%; max-width: 1100px;}
}/*END*/
@media (max-width: 900px) {
#read .inner{  padding: 80px 0; width: 90%; max-width: 1100px;}
}/*END*/
@media (max-width: 850px) {
#read .inner{  padding: 70px 0; width: 85%; max-width: 1100px;}
}/*END*/
@media (max-width: 720px) {
#read .inner p span{ display:inline;}
#read .inner{width: 85%;}
}/*END*/
@media (max-width: 620px) {
/*#read .inner p{ text-align: left; }*/
#read .inner{ padding: 60px 0; width: 85%; max-width: 620px;}
/*#read .inner p span{ display:inline !important; }*/
}/*END*/
@media (max-width: 640px) {
#read { padding-bottom: 80px; }
}/*END*/

/*--- br ---*/
.read_br1{display: block; }
.read_br2{display: block; }
.read_br3{display: none; }
@media (max-width: 1250px) {
.read_br1{display: block; }
.read_br2{display: block; }
.read_br3{display: block; }
}/*END*/
@media (max-width: 880px) {
.read_br1{display: none; }
.read_br2{display: none; }
.read_br3{display: none; }
}/*END*/
@media (max-width: 100px) {
.read_br1{display: none; }
.read_br2{display: none; }
.read_br3{display: none; }
}/*END*/

/*-------------------------------------------------
	archive
--------------------------------------------------*/
#archive { margin: 0 auto; width: 80%; max-width: 1000px; position: relative; }
#archive .title_box{position: absolute; height: 100%; z-index: 2; display: flex; align-items: center; justify-content: center;}
#archive .title_box.box1{ left: 0; top: 0; width: 36.5%;}
#archive .title_box.box2{ right: 0; top: 0; width: 37.5%;}
#archive .title_box h2,
#archive .title_box h3{ opacity: .4;}
/*h2*/
#archive .title_box.box1 h2{ margin-top: 1.5%; font-size:46px; line-height: 1; font-family: Helvetica, Arial, sans-serif; font-weight: bold; display: flex;}
#archive .title_box.box1 h2 span{ margin-left: 11px; font-size:21px; line-height: 1.2; }
#archive .title_box.box1 h2 span small{ font-size:14px;line-height: .8; display: block;}
/*h3*/
#archive .title_box.box2 h3{ margin-top: .5%; font-size:14px; line-height: 1.6; font-weight: bold;}
@media (max-width: 1100px) {
/*h2*/
#archive .title_box.box1 h2{ margin-top: 1.5%; font-size:4.3vw; }
#archive .title_box.box1 h2 span{ margin-left: 1vw;  font-size:1.95vw; line-height: 1.2;}
#archive .title_box.box1 h2 span small{ font-size:1.3vw;}
/*h3*/
#archive .title_box.box2 h3{ font-size:1.3vw;}
}/*END*/
@media (max-width: 900px) {
/*h2*/
#archive .title_box.box1 h2{ margin-top: 1.5%; font-size:4.8vw; }
#archive .title_box.box1 h2 span{ margin-left: 1vw;  font-size:2.2vw; line-height: 1.2;}
#archive .title_box.box1 h2 span small{ font-size:1.47vw;}
/*h3*/
#archive .title_box.box2 h3{ font-size:1.45vw;}
}/*END*/
@media (max-width: 750px) {
/*リセット*/
#archive .title_box{position: relative; height: 100%; display: block; }
#archive .title_box.box1,
#archive .title_box.box2{ width:initial;}
/*title_box_wrap*/
#archive .title_box_wrap{ position: absolute; right: 0; top: 0; width: 36.5%; height: 100%; z-index: 3; display: flex; align-items: center; justify-content: center;}
#archive .title_box_wrap div{  width: 100%; display: block; }
/*h2*/
#archive .title_box.box1 h2{ margin-top: 0%; font-size:5.7vw; line-height: 1; display: block;}
#archive .title_box.box1 h2 span{  margin-top: 0%; margin-left: 0px; font-size:2.8vw; line-height: 1.2; display: block; }
#archive .title_box.box1 h2 span small{ font-size:1.9vw; line-height: 1;}
/*h3*/
#archive .title_box.box2 h3{ margin-top: 5.5%; font-size:1.7vw; line-height: 1.6; font-weight: bold; }
}/*END*/
@media (max-width: 640px) {
/*title_box_wrap*/
#archive .title_box_wrap{ position: absolute; right: 0; top: 0; width: 36.5%; height: 100%; z-index: 3; display: flex; align-items: center; justify-content: center;}
/*h2*/
#archive .title_box.box1 h2{ margin-top: 0%; font-size:6.4vw; line-height: 1; }
#archive .title_box.box1 h2 span{  margin-top: 0%; margin-left: 0px; font-size:3.2vw; line-height: 1.2; }
#archive .title_box.box1 h2 span small{ font-size:2.2vw; line-height: 1;}
/*h3*/
#archive .title_box.box2 h3{ margin-top: 5.5%; font-size:1.9vw; line-height: 1.6; }
}/*END*/
@media (max-width: 500px) {
#archive {width: 85%;}
/*title_box_wrap*/
#archive .title_box_wrap{ position: absolute; right: 0; top: 0; width: 37.5%; height: 100%; z-index: 3; display: flex; align-items: center; justify-content: center;}
/*h2*/
#archive .title_box.box1 h2{ margin-top: 0%; font-size:7vw; line-height: 1; }
#archive .title_box.box1 h2 span{  margin-top: 0%; margin-left: 0px; font-size:3.6vw; line-height: 1.2; }
#archive .title_box.box1 h2 span small{ font-size:2.4vw; line-height: 1;}
/*h3*/
#archive .title_box.box2 h3{ margin-top: 5.5%; font-size:2.1vw; line-height: 1.6; }
}/*END*/
@media (max-width: 400px) {
#archive {width: 90%;}
/*title_box_wrap*/
#archive .title_box_wrap{ position: absolute; right: 0; top: 0; width: 39%; height: 100%; z-index: 3; display: flex; align-items: center; justify-content: center;}
/*h2*/
#archive .title_box.box1 h2{ margin-top: 0%; font-size:7.5vw; line-height: 1; }
#archive .title_box.box1 h2 span{  margin-top: 0%; margin-left: 0px; font-size:3.8vw; line-height: 1.2; }
#archive .title_box.box1 h2 span small{ font-size:2.7vw; line-height: 1;}
/*h3*/
#archive .title_box.box2 h3{ margin-top: 5.5%; font-size:2.3vw; line-height: 1.6; }
}/*END*/

/*[ on / off ]*/
#archive .x15{display:block;}
#archive .x1{display:none;}
#archive .sp{display:none;}
@media (max-width: 1400px) {
#archive .x15{display:none;}
#archive .x1{display:block;}
#archive .sp{display:none;}
}/*END*/
@media (max-width: 750px) {
#archive .x15{display:none;}
#archive .x1{display:none;}
#archive .sp{display:block;}
}/*END*/

/*-------------------------------------------------
	movie
--------------------------------------------------*/
.movie{ position: relative;text-align: center; overflow: hidden; z-index: 4;}
.movie a{ width: 100%; position: relative; display: block;  }
video {width: 100%;}
.movie_pc{ display: block;}
.movie_sp{ display: none;}
@media (orientation: portrait) {
.movie_pc{ display: none;}
.movie_sp{ display: block;}
}/*END*/

/* play movie*/
.movie a span.play{ position: absolute; left: 50%; top: 50%; width: 70px; height: 70px; margin: -35px 0 0 -35px; display: inline-block;  background: rgba(255,255,255,.7); border-radius: 50%; box-sizing: border-box; z-index: 3; transition: 0.3s; }
.movie a span.play::after{ border-width: 10px 0 10px 16px; margin: -10px 0 0 -5px; border-color: transparent transparent transparent #000; left: 50%; top: 50%; position: absolute; content: ''; display: block; width: 0; height: 0; border-style: solid; }
.movie a:hover span.play{ background: rgba(255,255,255,0.5);  }
@media (max-width: 1400px) {
.movie a span.play{ display: inline-block; width: 60px; height: 60px; margin: -30px 0 0 -30px; }
.movie a span.play::after{ border-width: 8px 0 8px 13px; margin: -8px 0 0 -5px;  }
}/*END*/
@media (max-width: 750px) {
.movie a span.play{ display: inline-block; width: 50px; height: 50px;  margin: -25px 0 0 -25px; }
.movie a span.play::after{ border-width: 7px 0 7px 11px; margin: -7px 0 0 -4px;  }
}/*END*/

/*-------------------------------------------------
	txt [base]
--------------------------------------------------*/
#read .inner p span{ display: inline-block;}
.txt_l{ font-size: 16px; font-weight: 400;}
.txt{ font-size: 16px; }
.lh_1{ line-height: 2.1;}
.lh_read{ line-height: 2.3;}
.txt span{ display: inline-block;}
@media (max-width: 1400px) {
.txt_read{ font-size: 18px; line-height: 2.3; }
.txt{ font-size: 16px; }
}/*END*/
@media (max-width: 1200px) {
.txt_read{ font-size: 17px; line-height: 2.1; }
}/*END*/
@media (max-width: 1100px) {
.txt_l{ font-size: 15px; }
}/*END*/
@media (max-width: 1024px) {
.txt_l{ font-size: 16px; }
}/*END*/
@media (max-width: 640px) {
.txt_l{ font-size: 15px; }
.txt{ font-size: 15px; }
.lh_1{ line-height: 2;}
.lh_read{ line-height: 2.1;}
}/*END*/
@media (max-width: 500px) {
}/*END*/
@media (max-width: 450px) {
.txt_l{ font-size: 14px; }
.txt{ font-size: 14px; }
.lh_read{ line-height: 2;}
}/*END*/
@media (max-width: 450px) {
.txt_l{ font-size: 13px; }
.txt{ font-size: 13px; }
.lh_read{ line-height: 2;}
}/*END*/

/*======= txt =======*/
.design h3{ margin-top: 0px; font-size: 31px; line-height: 1.4; letter-spacing: 1.8px; font-weight: 700;}
.design h4{ margin-top: 42px; font-size: 21px; line-height: 1.4; letter-spacing: 1.5px; font-weight: 700;}
.design .txt{ margin-top: 30px; }
.design h3 span{ display: inline-block;}
@media(max-width: 1400px) {
.design h3{ margin-bottom: 0px; font-size: 31px; letter-spacing: 1px;}
.design h4{ margin-top: 41px; font-size: 20px; letter-spacing: 1px;}
}/*END*/
@media (max-width: 1200px) {
.design h3{ margin-bottom: 0px; font-size: 30px; letter-spacing: 1px;}
.design h4{ margin-top: 41px; font-size: 20px; letter-spacing: 1px;}
}/*END*/
@media (max-width: 1024px) {
.design h3{ margin-bottom: 0px; font-size: 28px; letter-spacing: 1px;}
.design h4{ margin-top: 42px; font-size: 20px; letter-spacing: 1px;}
}/*END*/
@media (max-width: 640px) {
.design h3{ margin-top: 0px;font-size: 23px;}
.design h4{ margin-top: 40px; font-size: 17px;}
.design .txt{ margin-top: 20px; }
}/*END*/
@media (max-width: 450px) {
.design h3{ margin-top: 0px; font-size: 21px; }
.design h4{ margin-top: 38px; font-size: 16px; }
}/*END*/
@media (max-width: 400px) {
.design h3{ margin-top: 0px; font-size: 20px; }
.design h4{ margin-top: 38px; font-size: 16px; }
}/*END*/

/*-------------------------------------------------
	co   - DESIGN - title
--------------------------------------------------*/
.co_h2{ margin: 0 auto; display: inline-block; padding: 120px 0; font-size: 20px; line-height: 1.2; letter-spacing: 12px; font-weight: bold; text-align: center; font-family:Helvetica,  Arial, sans-serif;}
.co_h2 span{ display:block; width: 33%; max-width: 70px; height: 2px; margin: 25px auto 0;}
@media (max-width: 1400px) {
.co_h2{  padding: 100px 0; font-size: 17px; letter-spacing: 11px;}
.co_h2 span{ margin: 20px auto 0;}
}/*END*/
@media (max-width: 1024px) {
.co_h2{  padding: 100px 0; font-size: 18px; letter-spacing: 11px;}
.co_h2 span{ margin: 18px auto 0;}
}/*END*/
@media (max-width: 750px) {
.co_h2{  padding:90px 0; font-size: 18px; letter-spacing: 11px;}
}/*END*/
@media (max-width: 640px) {
.co_h2{ padding: 70px 0; font-size: 17px; letter-spacing: 8px;}
#color .co_h2{ padding: 70px 0 60px; font-size: 17px; letter-spacing: 7px;}
.co_h2 span{ margin: 15px auto 0;}
}/*END*/
@media (max-width: 500px) {
.co_h2{ padding: 60px 0; font-size: 15px; letter-spacing: 8px;}
#color .co_h2{ padding: 60px 0 50px; font-size: 15px; letter-spacing: 6px;}
.co_h2 span{ margin: 15px auto 0;}
}/*END*/

/*=== #regular ===*/
#regular .co_h2 span{ background: #404040;}
/*=== #JAMSTEC ===*/
#jamstec .co_h2 span{ background: #3078a0; }

/*-------------------------------------------------
	design
--------------------------------------------------*/
#design{text-align: center; position: relative; overflow: hidden; }

/*=== #regular ===*/
#regular #design{ background: #000; color: #fff;}
/*=== #JAMSTEC ===*/
#jamstec #design{ background: #fff; color: #000;}

/*design common*/
.design img{ width: 100%;}
.design .design_head { width: 100%; position: relative; top: 0px;  z-index: 2; text-align: center;} 

/*======= design_01 =======*/
.design_01 { position: relative; z-index: 2; }
.design_01 .txt_box { padding:5.4vw 0 130px; margin: 0 auto; width: 80%; max-width: 700px; text-align: center; position: relative; z-index: 2;}
.design_01 .img_box { margin: 0 auto 0; width: 100%; }
@media (max-width: 1024px) {
.design_01 .txt_box { padding:5.4vw 0 110px;}
}/*END*/
@media (max-width: 750px) {
.design_01 .txt_box { padding:60px 0 90px;}
}/*END*/
@media (max-width: 640px) {
.design_01 .txt_box p{  text-align: left; }
}/*END*/
@media (max-width: 580px) {
.design_01 .txt_box { padding:50px 0 70px;}
}/*END*/

/*[ on / off ]*/
.design_01 .x15{ display: block;}
.design_01 .x1{ display: none;}
.design_01 .sp{ display: none;}
@media (max-width: 1400px) {
.design_01 .x15{ display: none;}
.design_01 .x1{ display: block;}
.design_01 .sp{ display: none;}
}/*END*/
@media (max-width: 750px) {
.design_01 .x15{ display: none;}
.design_01 .x1{ display: none !important;}
.design_01 .sp{ display: block;}
}/*END*/

/*======= design_02 =======*/
.design_02{ padding:9vw 0 10vw; position: relative;  color: #fff; overflow: hidden;}
.design_02_bg{ position: absolute; left: 10%; top: -150px; width: 1900px; height: 1900px; margin:-950px 0 0 -950px ; background-image: radial-gradient(circle closest-side, rgba(106, 109, 114, .6) 0%, rgba(106, 109, 114, 0) 100%); opacity: 1; z-index: 1; }
.design_02 .img_box{ margin: 0 auto; width: 96.5%;}
.design_02 .txt_box { margin: -10vw auto 0; width: 75%; display: flex; flex-direction: row-reverse; position: relative; z-index: 2;}
.design_02 .txt_box .txt_box_inner{ width: 80%; max-width: 460px; text-align: left;}
@media (max-width: 1600px) {
.design_02{ padding:9vw 0 10vw;}
.design_02_bg{ position: absolute; left: 10%; top: -12%; width: 120vw; height: 120vw; margin:-60vw 0 0 -60vw ; }
.design_02 .txt_box { margin: -10vw auto 0; width: 80%;}
}/*END*/
@media (max-width: 1300px) {
.design_02{ padding:9vw 0 10vw;}
.design_02 .txt_box { margin: -8vw auto 0; width: 80%; }
.design_02 .txt_box .txt_box_inner{ width: 80%; max-width: 460px; }
}/*END*/
@media (max-width: 1150px) {
.design_02{ padding:12vw 0 ;}
.design_02 .img_box{ margin: 0 0 0 -5%; width: 110%;}
.design_02 .txt_box h3{ text-align: center;}
.design_02 .txt_box { margin: 0vw auto 0; width: 100%; display: block;}
.design_02 .txt_box .txt_box_inner{ margin: 0 auto; width: 80%; max-width: 620px; text-align: left; }
}/*END*/
@media (max-width: 750px) {
.design_02{ padding:0 0 18vw;}
.design_02_bg{ display: none;}
.design_02 .img_box{ margin: 0; width: 100%;}
.design_02 .txt_box { margin: -3vw auto 0; width: 100%; }
}/*END*/
@media (max-width: 640px) {
.design_02{ padding:0 0 20vw;}
.design_02 .txt_box { margin: -3vw auto 0; width: 100%; }
}/*END*/
@media (max-width: 500px) {
.design_02 .txt_box { margin: -2vw auto 0; width: 100%; }
.design_02 .txt_box .txt_box_inner{ margin: 0 auto; width: 80%; max-width: 600px; text-align: left; }
}/*END*/
@media (max-width: 400px) {
.design_02 .txt_box { margin: -2vw auto 0; width: 100%; }
.design_02 .txt_box .txt_box_inner{ margin: 0 auto; width: 80%; max-width: 600px; text-align: left; }
}/*END*/

/*[ on / off ]*/
.design_02 .x15{ display: block;}
.design_02 .x1{ display: none;}
.design_02 .sp{ display: none;}
@media (max-width: 1400px) {
.design_02 .x15{ display: none;}
.design_02 .x1{ display: block;}
.design_02 .sp{ display: none;}
}/*END*/
@media (max-width: 750px) {
.design_02 .x15{ display: none;}
.design_02 .x1{ display: none !important;}
.design_02 .sp{ display: block;}
}/*END*/

/*======= design_03 中留=======*/
.design_03{display: block; position: relative;  background: url(../img/d03_bg.jpg); background-size: cover; overflow: hidden;}
.design_03 .img_box{margin-left: 52%; width: 33.7%; line-height: 0; }
.design_03 .txt_box { width: 68%; height: 100%; display: flex; align-items: center; justify-content: center; position: absolute; left: 0; top: 0; z-index: 2;}
.design_03 .txt_box .txt_box_inner{ width: 80%; max-width: 550px; text-align: left; }
.design_03 .txt_box .txt_box_inner p{ max-width: 420px;}
@media (max-width: 1500px) {
.design_03 .img_box{margin-left: 52%; width: 33.7%; line-height: 0; }
.design_03 .txt_box { width: 68%; }
}/*END*/
@media (max-width: 1400px) {
.design_03 .img_box{margin-left: 54%; width: 33.7%; line-height: 0; }
.design_03 .txt_box { width: 70%; }
}/*END*/
@media (max-width: 1200px) {
.design_03 .img_box{margin-left: 54%; width: 38%; line-height: 0; }
.design_03 .txt_box { width: 70%; }
}/*END*/
@media (max-width: 1100px) {
.design_03 .img_box{margin-left: 56%; width: 38%; line-height: 0; }
.design_03 .txt_box { width: 74%;}
}/*END*/
@media (max-width: 1024px) {
.design_03{ padding: 0;  margin: 0; display: block; position: relative;  background: none; }
.design_03 .img_box_wrap{ width: 100%; position: relative; background: url(../img/d03_bg.jpg); background-size: cover; overflow: hidden; }
.design_03 .img_box{margin-left: 28%; width: 45%; line-height: 0; }
.design_03 .txt_box { padding: 80px 0; margin: 0 auto; width: 74%; max-width: 600px; height: initial; display: block; position: relative;}
.design_03 .txt_box .txt_box_inner{ width: 100%; max-width: initial; }
.design_03 .txt_box .txt_box_inner h3{ text-align: center; }
.design_03 .txt_box .txt_box_inner p{ max-width: 100%; }
}/*END*/
@media (max-width: 640px) {
.design_03 .img_box_wrap{ width: 100%; position: relative; background: url(../img/d03_1_sp.jpg); background-size: cover; overflow: hidden; }
.design_03 .txt_box { padding: 60px 0; margin: 0 auto; width: 80%; }
.design_03 .img_box{margin:0 auto; width: 60%; line-height: 0; }
}/*END*/
/*[ on / off ]*/
.design_03 .x15{ display:block; }
.design_03 .x1{ display:none; }
@media (max-width: 1400px) {
.design_03 .x15{ display:none; }
.design_03 .x1{ display:block; }
}/*END*/

/*======= movement [ムーブメント] =======*/
#movement { position: relative; overflow: hidden; }
#movement .movement_bg{ position: absolute; left: 50%; top: -400px; width: 1900px; height: 1900px; margin:-950px 0 0 -950px ; background-image: radial-gradient(circle closest-side, rgba(106, 109, 114, .6) 0%, rgba(106, 109, 114, 0) 100%); opacity: 1; z-index: 1;pointer-events: none; user-select: none; }
#movement .txt_box{ padding: 110px 0 90px; width: 80%; max-width: 850px; margin: 0 auto;}
#movement .txt_box p{ text-align: center;}
@media(max-width: 1000px) {
#movement .txt_box{ padding: 90px 0 80px; width: 85%; margin: 0 auto;}
}/*END*/

@media(max-width: 750px) {
#movement .txt_box{ padding: 80px 0 70px; width: 85%; margin: 0 auto;}
}/*END*/
@media(max-width: 640px) {
#movement .txt_box p{ text-align: left;}
#movement .txt_box p span{ display: inline;}
}/*END*/
@media(max-width: 500px) {
#movement .txt_box{ padding: 70px 0 60px; width: 85%; margin: 0 auto;}
}/*END*/
@media(max-width: 450px) {
#movement .txt_box{ padding: 60px 0 50px; width: 85%; margin: 0 auto;}
#movement .txt_box p{width: 95%; margin-left: 5%;}
}/*END*/

/*img_box*/
#movement .img_box{ margin: 0px auto 0; width: 65%;}
@media(max-width: 1200px) {
#movement .img_box{ margin: 0px auto 0; width: 75%;}
}/*END*/
@media(max-width: 640px) {
#movement .img_box{ margin: 0px auto 0; width: 85%;}
}/*END*/
#movement h3{ margin: 0 auto; width: 95%; text-align: center;}
#movement h3 span{ display: inline-block;}
@media(max-width: 350px) {
#movement h3{ font-size: 5.7vw !important;}
}/*END*/

/*[ on / off ]*/
.movement_br1{ display:block; }
@media (max-width: 930px) {
.movement_br1{ display:none; }
}/*END*/

/*[ on / off ]*/
#movement .x15{ display:block; }
#movement .x1{ display:none; }
#movement .sp{ display:none; }
@media (max-width: 1400px) {
#movement .x15{ display:none; }
#movement .x1{ display:block; }
#movement .sp{ display:none; }
}/*END*/
@media (max-width: 750px) {
#movement .x15{ display:none; }
#movement .x1{ display:none; }
#movement .sp{ display:block; }
}/*END*/

/*===================================================
	JAMSTEC
===================================================*/
#jamstec{ background: #fff; color: #000;}

/*-------------------------------------------------
	jam_read
--------------------------------------------------*/
#jam_read { margin-top: -1px; padding-bottom: 35vw; color: #fff;position: relative; background: #345dad; overflow: hidden;}
.jam_read_grd{ position: absolute; left: 0; top: 0; z-index: 3; width: 100%; height: 400px; background: linear-gradient(to bottom , rgba(27,46,123,1) 20%, rgba(49,90,170,0) 100%);}
.jam_read_bg{ position: absolute; left: 0; top: 0;  z-index: 2;width: 100%; height: 100%; background: url(../img/jam_lead.jpg) center bottom no-repeat #345dae; background-size: 100%; }
#jam_read .inner{ padding: 90px 0 100px; width: 85%; max-width: 1100px; margin: 0 auto; text-align: center; position: relative; z-index: 4; }
#jam_read .inner p span{ display: inline-block;}
.shadow {text-shadow: 0px 0px 5px rgba(40, 73, 155, 1);}
@media (max-width: 1600px) {
#jam_read { padding-bottom: 35vw; }
.jam_read_bg{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: url(../img/jam_lead.jpg) center bottom no-repeat #345dae; background-size: contain; }
}/*END*/

@media (max-width: 1200px) {
#jam_read .inner{ padding: 90px 0 100px; width: 85%; max-width: 1000px; margin: 0 auto; text-align: center; position: relative; z-index: 4;}

}/*END*/
@media (max-width: 1000px) {
#jam_read { padding-bottom: 30vw; }
}/*END*/
@media (max-width: 800px) {
#jam_read .inner{ padding: 10vw 0 100px; }
}/*END*/
@media (max-width: 640px) {
#jam_read { padding-bottom: 35vw; }
.jam_read_bg{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: url(../img/jam_lead_sp.jpg) center bottom no-repeat #345dae; background-size: contain; }
#jam_read .inner{ padding: 14vw 0 100px; }
}/*END*/
@media (max-width: 450px) {
#jam_read { padding-bottom: 25vw;}
#jam_read .inner{ padding: 14vw 0 100px; width: 90%; max-width: 1100px; }
}/*END*/

/*--- br ---*/
.jam_read_br1{display: block; }
.jam_read_br2{display: none; }
.jam_read_br3{display: block; }

@media (max-width: 1200px) {
.jam_read_br1{display: none; }
.jam_read_br2{display: block; }
.jam_read_br3{display: block; }

}/*END*/
@media (max-width: 790px) {
.jam_read_br1{display: none; }
.jam_read_br2{display: none; }
.jam_read_br3{display: none; }
}/*END*/

/*-------------------------------------------------
	jam_about
--------------------------------------------------*/
#jam_about{ padding: 100px 0; background: #fff;}
#jam_about .inner{ margin: 0 auto; width: 85%; max-width: 1000px;}
#jam_about .inner .jam_about_logo{ width: 80%; max-width: 666px; margin: 0 auto;}
#jam_about .inner p{ margin-top: 55px; text-align: center; }
#jam_about .inner p span{ display: inline-block;}
@media (max-width: 1024px) {
#jam_about .inner .jam_about_logo{ width: 80%; max-width: 666px; margin: 0 auto;}
}/*END*/
@media (max-width: 640px) {
#jam_about{ padding: 80px 0; }
#jam_about .inner .jam_about_logo{ width: 100%; max-width: 666px; margin: 0 auto;}
#jam_about .inner p{ margin-top: 45px; text-align: left; }
}/*END*/
@media (max-width: 450px) {
#jam_about{ padding: 60px 0; }
#jam_about .inner .jam_about_logo{ width: 100%; max-width: 666px; margin: 0 auto;}
#jam_about .inner p{ margin-top: 30px; text-align: left; }
}/*END*/

/*[ on / off ]*/
#jam_about .x15{ display:block; }
#jam_about .x1{ display:none; }
@media (max-width: 750px) {
#jam_about .x15{ display:none; }
#jam_about .x1{ display:block; }
}/*END*/

/*--- br ---*/
.jam_about_br1{display: block; }
.jam_about_br2{display: block; }
@media (max-width: 1024px) {
.jam_about_br1{display: none; }
.jam_about_br2{display: none; }
}/*END*/
@media (max-width: 780px) {
.jam_about_br1{display: none; }
.jam_about_br2{display: none; }
}/*END*/

/*======= jam_design_01 =======*/
.jam_design_01 { position: relative; z-index: 2; }
.jam_design_01 .txt_box { padding: 90px 0; margin: 0 auto; width: 85%; max-width: 800px; text-align: center; position: relative; z-index: 2;}
@media (max-width: 750px) {
}/*END*/
@media (max-width: 640px) {
.jam_design_01 .txt_box { padding: 60px 0; margin: 0 auto; width: 85%; text-align: left; }
.jam_design_01 .txt_box h3{  text-align: center; }
}/*END*/
@media (max-width: 500px) {
.jam_design_01 .txt_box { padding: 60px 0; margin: 0 auto; width: 85%; }
}/*END*/
/*--- br ---*/
.jam_design_01_br1{display: block; }
.jam_design_01_br2{display: block; }
@media (max-width: 1024px) {
.jam_design_01_br1{display: none; }
.jam_design_01_br2{display: none; }
}/*END*/
@media (max-width: 780px) {
.jam_design_01_br1{display: none; }
.jam_design_01_br2{display: none; }
}/*END*/


/*--- br ---*/
.jam_design_01_br1{display: block; }
@media (max-width: 820px) {
.jam_design_01_br1{display: none; }
}/*END*/




/*[ on / off ]*/
.jam_design_01 .x15{ display:block; }
.jam_design_01 .x1{ display:none; }
.jam_design_01 .sp{ display:none; }
@media (max-width: 1400px) {
.jam_design_01 .x15{ display:none; }
.jam_design_01 .x1{ display:block; }
.jam_design_01 .sp{ display:none; }
}/*END*/
@media (max-width: 750px) {
.jam_design_01 .x15{ display:none; }
.jam_design_01 .x1{ display:none }
.jam_design_01 .sp{ display:block; }
}/*END*/

/*======= jam_design_02 =======*/
.jam_design_02 {  position: relative; }
.jam_design_02 .img_box_wrap { width: 100%; background: url(../img/jam_d02_bg.jpg) center center; background-size: cover; position: relative; overflow: hidden; }
.jam_design_02 .img_box{ margin-left: 42%; width: 51%; }
.jam_design_02 .txt_box{ width: 44%; height: 100%; display: flex; align-items: center; justify-content: center; position: absolute; left: 0; top: 0; }
.jam_design_02 .txt_box_inner{ width: 370px; text-align: left;}
@media (max-width: 1400px) {
.jam_design_02 .img_box{ margin-left: 46%; width: 48%; }
.jam_design_02 .txt_box{ width: 48%; height: 100%;}
}/*END*/
@media (max-width: 1200px) {
.jam_design_02 { background: none; }
.jam_design_02 .img_box{ margin-left: 20%; width: 60%; }
.jam_design_02 .txt_box{ padding: 80px 0 ; margin: 0 auto; width: 80%; max-width: 675px; height: 100%; position: relative;}
.jam_design_02 .txt_box h3{ text-align: center;}
.jam_design_02 .txt_box_inner{ width: 100%; text-align: left;}
}/*END*/
@media (max-width: 750px) {
.jam_design_02 .img_box_wrap {background:none; }
.jam_design_02 .img_box{ margin-left: 0%; width: 100%; }
}/*END*/
@media (max-width: 640px) {
.jam_design_02 .txt_box{ padding: 60px 0 ; margin: 0 auto; width: 85%; max-width: 675px; height: 100%; position: relative;}
}/*END*/

/*[ on / off ]*/
.jam_design_02 .x15{ display:block; }
.jam_design_02 .x1{ display:none; }
.jam_design_02 .sp{ display:none; }
@media (max-width: 1400px) {
.jam_design_02 .x15{ display:none; }
.jam_design_02 .x1{ display:block; }
.jam_design_02 .sp{ display:none; }
}/*END*/
@media (max-width: 750px) {
.jam_design_02 .x15{ display:none; }
.jam_design_02 .x1{ display:none }
.jam_design_02 .sp{ display:block; }
}/*END*/

/*======= jam_design_03 中留=======*/
.jam_design_03{display: block; position: relative;  background: url(../img/jam_d03_bg.jpg); background-size: cover; overflow: hidden;}
.jam_design_03 .img_box{margin-left: 19%; width: 33.7%; line-height: 0; }
.jam_design_03 .txt_box { width: 48%; height: 100%; display: flex; align-items: center; justify-content: center; position: absolute; right: 0; top: 0; z-index: 2;}
.jam_design_03 .txt_box .txt_box_inner{ width: 80%; max-width: 550px; text-align: left; }
.jam_design_03 .txt_box .txt_box_inner p{ max-width: 420px;}

@media (max-width: 1500px) {
.jam_design_03 .img_box{margin-left: 15%; width: 33.7%; line-height: 0; }
.jam_design_03 .txt_box { width: 55%; }
}/*END*/
@media (max-width: 1400px) {
.jam_design_03 .img_box{margin-left: 13%; width: 33.7%; line-height: 0; }
.jam_design_03 .txt_box { width: 53%; }
}/*END*/
@media (max-width: 1200px) {
.jam_design_03 .img_box{margin-left: 12%; width: 38%; line-height: 0; }
.jam_design_03 .txt_box { width: 52%; }
}/*END*/
@media (max-width: 1100px) {
.jam_design_03 .img_box{margin-left: 10%; width: 38%; line-height: 0; }
.jam_design_03 .txt_box { width: 55%;}
}/*END*/
@media (max-width: 1024px) {
.jam_design_03{ padding: 0;  margin: 0; display: block; position: relative;  background: none; }
.jam_design_03 .img_box_wrap{ width: 100%; position: relative; background: url(../img/jam_d03_sp.jpg); background-size: cover; overflow: hidden; }
.jam_design_03 .img_box{margin-left: 28%; width: 45%; line-height: 0; }
.jam_design_03 .txt_box { padding: 80px 0; margin: 0 auto; width: 74%; max-width: 600px; height: initial; display: block; position: relative;}
.jam_design_03 .txt_box .txt_box_inner{ width: 100%; max-width: initial; }
.jam_design_03 .txt_box .txt_box_inner h3{ text-align: center; }
.jam_design_03 .txt_box .txt_box_inner p{ max-width: 100%; }
}/*END*/
@media (max-width: 640px) {
.jam_design_03 .txt_box { padding: 60px 0; margin: 0 auto; width: 85%; }
.jam_design_03 .img_box{margin:0 auto; width: 60%; line-height: 0; }
}/*END*/

/*[ on / off ]*/
.jam_design_03 .x15{ display:block; }
.jam_design_03 .x1{ display:none; }
@media (max-width: 1400px) {
.jam_design_03 .x15{ display:none; }
.jam_design_03 .x1{ display:block; }
}/*END*/


/*-------------------------------------------------
	spec
--------------------------------------------------*/
.spec{ padding: 0 0 80px; margin: 0 auto;}
@media(max-width: 370px) {
.spec{ padding: 0 0 30px !important; }
}/*END*/

/*=== #regular ===*/
#regular { padding: 0 0 60px;}
#regular .spec{ width: 93.5%; background: #141414; color: #fff; position:relative; overflow: hidden;}

/*=== #JAMSTEC ===*//*
#jamstec .jamstec_spec{ background: url(../img/jam_spec_bg.jpg) center top fixed; background-size: cover; padding: 100px 0; }
#jamstec .jamstec_spec .spec{ width: 93.5%; background: rgba(255,255,255,0.85); color: #000; position:relative; overflow: hidden;}
@media(max-width: 640px) {
#jamstec .jamstec_spec{ background: url(../img/jam_spec_bg_sp.jpg) center top fixed; background-size: cover; padding: 16vw 0; }
}/*END*//*
@media(max-width: 400px) {
#jamstec .jamstec_spec{ background: url(../img/jam_spec_bg_sp.jpg) center top fixed; background-size: cover; padding: 70px 0 70px; }
}/*END*/

/*=== #JAMSTEC ===*/
#jamstec .jamstec_spec{ padding: 100px 0; position: relative; overflow: hidden; }
#jamstec .jamstec_spec .spec{ width: 93.5%; background: rgba(255,255,255,0.85); color: #000; position:relative; overflow: hidden; z-index: 2;}
@media(max-width: 640px) {
#jamstec .jamstec_spec{ padding: 16vw 0; }
}/*END*/
@media(max-width: 400px) {
#jamstec .jamstec_spec{ padding: 70px 0 70px; }
}/*END*/

/*jamstec_spec_bg*/
.jamstec_spec_bg { width: 100%;height: 100%; position: absolute; left: 0; top: 0; clip-path: inset(0); z-index: 1;}
.jamstec_spec_bg img { object-fit: cover; position: fixed; left: 0; top: 0;width: 100%;height: 100%;}

.jamstec_spec_bg .pc{ display: block;}
.jamstec_spec_bg .sp{ display: none;}
@media screen and (max-width: 750px) {
.jamstec_spec_bg .pc{ display: none;}
.jamstec_spec_bg .sp{ display: block;}
}/*END*/

.spec .title_box{ padding: 80px 0 60px; }
@media screen and (max-width:1050px) {
.spec{ padding: 0 0 80px; }
.spec .title_box{ padding: 8vw 0 7.5vw; }
}/*END*/
@media screen and (max-width: 760px) {
.spec .title_box{ padding: 11vw 0 8.5vw; }
}/*END*/
@media screen and (max-width: 640px) {
.spec{ padding: 0 0 70px; }
.spec .title_box{ padding: 12vw 0 9.5vw;  }
}/*END*/
@media screen and (max-width: 500px) {
.spec .title_box{ padding: 14vw 0 11.5vw;  }
.spec{ padding: 0 0 60px; }
}/*END*/

.spec .title_box h2 { font-size: 32px; line-height: 1.3; text-align: center;  font-family:Helvetica, Arial, sans-serif;  font-weight: 700; }
@media screen and (max-width:1200px) {
.spec .title_box h2 { font-size: 2.8vw; }
}/*END*/
@media screen and (max-width: 1024px) {
.spec .title_box h2 { font-size: 30px; }
}/*END*/
@media screen and (max-width: 770px) {
.spec .title_box h2 { font-size: 30px; }
}/*END*/
@media screen and (max-width: 670px) {
.spec .title_box h2 { font-size: 3.9vw;  }
}/*END*/
@media screen and (max-width: 640px) {
.spec .title_box h2 { font-size: 4.3vw;  }
}/*END*/
@media screen and (max-width: 450px) {
.spec .title_box h2 { font-size: 4.8vw;  }
}/*END*/
@media screen and (max-width: 360px) {
.spec .title_box h2 { font-size: 5vw;  }
}/*END*/

.spec_title_br{ display: none;}
@media screen and (max-width: 1024px) {
.spec_title_br{ display: block;}
}/*END*/
.spec_title_br2{ display: none;}
@media screen and (max-width: 640px) {
.spec_title_br2{ display: block;}
}/*END*/
/*spec_box1*/
.spec_box1{ width: 94%; margin: 0 auto; }
.spec_box1 .inner{ margin: 0 auto; width: 100%; max-width: 750px; display: flex; justify-content: center; }
.spec_box1 .img_box{ max-width: 257px; }
.spec_box1 .txt_box{ margin-left: 7%; margin-top: 0px; line-height: 1.5;display: flex; align-items: center; justify-content: center; text-align: center; }
@media screen and (max-width: 1000px) {
.spec_box1 .txt_box{ margin-left: 4%;}
}/*END*/
@media screen and (max-width: 750px) {
.spec_box1 .img_box{ width:38%; }
.spec_box1 .txt_box{ margin-left: 5%;}
}/*END*/
@media screen and (max-width: 650px) {
.spec_box1 .txt_box{ margin-left: 6vw; }
}/*END*/
@media screen and (max-width: 500px) {
.spec_box1 .img_box{ width:40%; }
}/*END*/
@media screen and (max-width: 450px) {
.spec_box1 .txt_box{ margin-left: 4vw;}
}/*END*/
@media screen and (max-width: 370px) {
.spec_box1 .inner{ margin: 0 auto 30px; width: 100%; max-width: 650px; display: block; }
.spec_box1 .txt_box{ margin:20px 0 0 0%; display: block;}
.spec_box1 .img_box{ width:50%; margin: 0 auto; }
}/*END*/
/* [ on off ]*/
.spec .x15{display:block;}
.spec .x1{display:none;}
@media (max-width: 640px) {
.spec .x15{display:none;}
.spec .x1{display:block;}
}/*END*/
.number		{ margin-top: 0px; font-size: 25px; letter-spacing: 1px;  font-family: Helvetica, Arial, sans-serif; font-weight: 500; }
.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: 15px; font-size: 14px; }
.spec_txts	{ margin-top: 18px; font-size: 13px; }
@media screen and (max-width: 1000px) {
.number		{ margin-top: 0px; font-size: 22px; }

}/*END*/
@media screen and (max-width: 640px) {
.number		{ margin-top: 0px; font-size: 22px; }
.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: 15px; font-size: 13px; }
.spec_txts	{ margin-top: 18px; font-size: 12px; }
}/*END*/
@media screen and (max-width: 450px) {
.number		{ margin-top: 0px; font-size: 20px; }
.caribre	{ margin-top: 5px; font-size: 13px; }
.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: 15px; font-size: 12px; }
.spec_txts	{ margin-top: 18px; font-size: 12px; }
}/*END*/
.shop_sp{ text-align: center; margin-top: -3vw; position: relative; z-index: 3;}
@media (max-width: 370px) {
.shop_sp{ text-align: center; margin-top: 25px;}
}/*END*/
/* [ on off ]*/
.shop_pc{ display: block;}
.shop_sp{ display: none;}
@media (max-width: 550px) {
.shop_pc{ display: none;}
.shop_sp{ display: block;}
}/*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: 1px; color: #fff; background: #000; display: block; transition: 0.3s; text-decoration: none; border-radius: 4px;}
.spec_btn a:hover { cursor: pointer; color: #fff; opacity: 0.8; }
@media screen and (max-width: 640px) {
.spec_btn { margin: 18px auto 0; }
.spec_btn a {  width: 170px; padding: 16px 0 18px; font-size: 13px; letter-spacing: 1px;}
}/*END*/
@media screen and (max-width: 450px) {
.spec_btn { margin: 15px auto 0; }
.spec_btn a { width: 160px; font-size: 12px;  padding: 16px 0 18px; }
}/*END*/
@media screen and (max-width: 400px) {
.spec_btn { margin: 15px auto 0; }
.spec_btn a { width: 150px; font-size: 11.5px;  padding: 16px 0 18px; }
}/*END*/
/*spec_btn*/
.spec_btn2 { margin:10px auto 0; }
/*spec_bottom*/
.spec_bottom{ margin: 60px auto 0; width: 100%; display: inline-block; text-align: center;  }
.spec_bottom p{ margin: 0 auto; width: 95%;}
.spec_bottom span{ display: inline-block; }
@media screen and (max-width: 370px) {
.spec_bottom{ margin: 20px auto 0;  }
.spec_btn a { width: 160px; font-size: 11.5px;  padding: 16px 0 18px; letter-spacing: 1px; }
}/*END*/

/*=== #regular btn ===*/
#regular .spec_btn a { color: #000; background: #fff; }
#regular .spec_btn a:hover { opacity: 0.5; }

/*=== #JAMSTEC btn===*/
#jamstec .spec_btn a { color: #fff; background: #002564; }
#jamstec .spec_btn a:hover { opacity: 0.7; }

/*spec_sub*/
.spec_sub{ max-width: 80%; margin: 0 auto; padding: 80px 0 90px; text-align: center;}
.spec_sub p{ display: inline-block; padding: 20px 15px; max-width: 90%; margin: 0 auto; border-top: solid 1px #ccc; border-bottom: solid 1px #ccc;}
.spec_sub p span{ display: inline-block;}
@media screen and (max-width: 1000px) {
.spec_sub{ padding: 60px 0 50px; text-align: center;}
}/*END*/
@media screen and (max-width: 640px) {
.spec_sub{ max-width: 80%; margin: 0 auto; padding: 80px 0 40px; text-align: center;}
}/*END*/
@media screen and (max-width: 370px) {
.spec_sub{ max-width: 80%; margin: 0 auto; padding: 30px 0 40px; text-align: center;}
}/*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*/
*,:after,:before { box-sizing: border-box;}
.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.tw img { padding: 2px;}
.foot_r .sns li.ig img { padding: 5.5px;}
.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(3){ 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*/