@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400&display=swap');
/*--------------------------------------------------------
	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%; height: auto; }
hr { border: none;}
table { border-collapse: collapse; border-spacing: 0; font-size: 100%; }
li { list-style-type: none; }
strong { font-weight: bold; }

/*--------------------------------------------------------
	base 
---------------------------------------------------------*/
body { font-family: 'Noto Serif JP', serif; font-weight: 400; line-height: 1.8; font-size: 16px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-text-size-adjust:100%;}
a:link { color: #14233e; text-decoration: none; }
a:visited { color: #14233e; text-decoration: none; }
a:hover,a:active { text-decoration: underline; }
.wrapper{ overflow: hidden; position: relative;}
/* img select
------------------------*/
img{pointer-events: none;  user-select: none;}
header img,
footer img,
.logo_gs img{pointer-events:auto; user-select:auto;}

/*anime set
------------------------*/
#main .main_img img,
#main .ksk_logo,
#main h1,
#concept .txt,
#ks h2,
#ks .txt,
#ks .ks_r,
#ks .ks_r .txt_s2,
#design h2,
.design_01 .img,
.design_02 .img,
.design_03 .img,
.design_04 .img,
#design .inner,
#design .emblem,
#gallery .gallery_head img,
#gallery .gallery_img1 img,
#gallery .gallery_img2 img,
#movie .movie_bg,
#movement .img_box,
#movement .txt_box,
.collections h2,
.collections .inner .inner_L,
.collections .inner .inner_R
{ visibility: hidden;}

/*-------------------------------------------------
	header
--------------------------------------------------*/
header{ position: relative; z-index: 600; }
/*------ header logo ------*/
header .seiko_logo{ width: 160px; position:absolute; left: 30px; top: 30px; transition: 0.5s;padding: 0; z-index: 600;}
@media (max-width: 1300px) {
header .seiko_logo{ width: 11.5vw; position:absolute; left: 2.2vw; top: 2.2vw;}
}/*END*/
@media screen and (max-width: 1300px) and (orientation: landscape) {
}/*END*/
@media (max-width: 640px) {
header .seiko_logo{ width: 14.5vw; position:absolute; left: 2.2vw; top: 2.2vw;}
}/*END*/
@media screen and (max-width: 640px) and (orientation: landscape) {
}/*END*/
@media screen and (max-width: 1200px) and (orientation: portrait) {   
header .seiko_logo{ width: 17vw; position:absolute; left: 3vw; top: 3vw;}
}/*END*/
@media screen and (max-width: 640px) and (orientation: portrait) {
header .seiko_logo{ width: 25vw; position:absolute; left: 3vw; top: 3.5vw;}
}/*END*/

/*-------------------------------------------------
	base
---------------------------------------------------*/
h2{ font-size: 19px; line-height: 1; letter-spacing: 10px; text-align: center; font-family:"Times New Roman", Times, "serif"; color: #7c7c7c;}
p.txt{ font-size: 17px; line-height: 2.3; letter-spacing: 0.5px; text-align: left; }
p.txt_s{ margin-top: 25px; font-size: 15px; line-height: 2; letter-spacing: 0.5px; text-align: left; color: #999;}
p.txt_s2{ margin-top: 25px; font-size: 15px; line-height: 2; letter-spacing: 0.5px; text-align: left; color: #fff;}
p.txt_s3{ margin-top: 25px; font-size: 15px; line-height: 1.6; letter-spacing: 0.5px; text-align: left; color: #222;}
.design_02 .inner .txt_box p.txt_s{  color: #ccc;}
@media screen and (max-width:1800px) {
h2{ font-size: 19px; line-height: 1; letter-spacing: 10px; text-align: center; font-family:"Times New Roman", Times, "serif"; color: #7c7c7c;}
p.txt{ font-size: 16px; line-height: 2.3; letter-spacing: 0.5px; text-align: left; }
p.txt_s{ margin-top: 25px; font-size: 14px; line-height: 2; letter-spacing: 0.5px; text-align: left; color: #999;}
p.txt_s2{ margin-top: 25px; font-size: 15px; line-height: 2; letter-spacing: 0.5px; text-align: left; color: #fff;}
p.txt_s3{ margin-top: 25px; font-size: 14px; line-height: 1.6; letter-spacing: 0.5px; }
}/*END*/
@media screen and (max-width: 640px) {
h2{ font-size: 18px; line-height: 1; letter-spacing: 6px; }
p.txt{ font-size: 14.5px; line-height: 2; letter-spacing: 0.5px; text-align: left; }
p.txt_s{ margin-top: 15px; font-size: 12.5px; line-height: 2; letter-spacing: 0px;}
p.txt_s2{ margin-top: 15px; font-size: 13px; line-height: 2; letter-spacing: 0px;}
p.txt_s3{ margin-top: 15px; font-size: 12.5px; line-height: 1.6; letter-spacing: 0px;}
}/*END*/
@media screen and (max-width: 400px) {
h2{ font-size: 17px; line-height: 1; letter-spacing: 5px;}
p.txt{ font-size: 3.5vw; line-height: 1.8; letter-spacing: 0.5px; text-align: left; }
p.txt_s{ margin-top: 3vw; font-size: 3.2vw; line-height: 2; letter-spacing: 0px;}
p.txt_s2{ margin-top: 3vw; font-size: 3.2vw; line-height: 2; letter-spacing: 0px;}
p.txt_s3{ margin-top: 3vw; font-size: 3.2vw; line-height: 1.6; letter-spacing: 0px;}
}/*END*/

/* =======================================

	cf

======================================= */
.cf:before,
.cf:after {
	content:"";
	display:table;
}
 
.cf:after {
	clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom:1;
}


/*-------------------------------------------------
	gotop
--------------------------------------------------*/
.gotop { position:fixed; bottom:0px; right:20px;width:50px; height:70px; box-sizing:border-box; border-radius: 0%; z-index: 100; }
.gotop a{ position: relative; display:block; background:rgba(60,60,60,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: 20px; height: 20px; margin: -10px 0 0 -10px; background: url("../image/page_top.png") no-repeat; background-size: cover;}
.gotop a:hover { background:rgba(60,60,60,0.5); }
@media (max-width: 500px) {
.gotop { position:fixed; bottom:0px; right:10px; width:40px; height:50px; }
.gotop a{ width:40px; height:40px; }
.gotop a::after { width: 20px; height: 20px; margin: -10px 0 0 -10px; }
}/*END*/

/*-------------------------------------------------
	footer
--------------------------------------------------*/
footer{ background: #262626; width: 100%; height: auto; }
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: 'Noto Sans JP', 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*/
