@font-face {
  font-family: "mplus";
  src: url("/product/closeup/assets/font/mplus/mplus-1p-light.woff") format("woff"), url("/product/closeup/assets/font/mplus/mplus-1p-light.ttf") format("truetype");
  font-weight: 300; }
@font-face {
  font-family: "mplus";
  src: url("/product/closeup/assets/font/mplus/mplus-1p-regular.woff") format("woff"), url("/product/closeup/assets/font/mplus/mplus-1p-regular.ttf") format("truetype");
  font-weight: 400; }
@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(/product/closeup/assets/font/iconfont/MaterialIcons-Regular.eot); /* For IE6-8 */
  src: local('Material Icons'),
       local('MaterialIcons-Regular'),
       url(/product/closeup/assets/font/iconfont/MaterialIcons-Regular.woff2) format('woff2'),
       url(/product/closeup/assets/font/iconfont/MaterialIcons-Regular.woff) format('woff'),
       url(/product/closeup/assets/font/iconfont/MaterialIcons-Regular.ttf) format('truetype');
}
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px; /*inherit*/
  line-height: 1; /*inherit*/
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  text-rendering: optimizeLegibility;
  -webkit-font-feature-settings: 'liga';
     -moz-font-feature-settings: 'liga';
          font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

i.material-icons.home:before { content: "\e88a";  font-size: inherit; line-height: 1; vertical-align: -22%; margin-right: 5px; }

i.material-icons.archive:before { content: "\e03b";  font-size: inherit; line-height: 1; vertical-align: -24%; margin-right: 5px; }

i.material-icons.link:after { content: "\e315";  font-size: inherit; line-height: 1; vertical-align: -28%;}

i.material-icons.totop:before { content: "\e25a";  font-size: inherit; line-height: 1; vertical-align: ; margin-right: 5px; }

.rotate-270 {
  -webkit-transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  -o-transform: rotate(270deg);
  transform: rotate(270deg);
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}

.rev-scroll-btn span {
	position: absolute;
	display: block;
	top: 29%;
	left: 50%;
	width: 8px;
	height: 8px;
	margin: -4px 0 0 -4px;
	background: rgba(255, 255, 255, 0.8);
	border-radius: 50%;
	-webkit-animation: rev-ani-mouse 2.5s linear infinite;
	-moz-animation: rev-ani-mouse 2.5s linear infinite;
	animation: rev-ani-mouse 2.5s linear infinite;
}

@media screen and (orientation: landscape) {
   /* 横向きの場合のスタイル */
  .landscape { display: block !important; }
  .portrait { display: none !important; }
}
@media screen and (orientation: portrait) {
   /* 縦向きの場合のスタイル */
  .landscape { display: none !important; }
  .portrait { display: block !important; }
}

/*
html, body
{
	padding: 0;
	margin: 0;
}

html {
  line-height: 1.5;
  font-family: "mplus", sans-serif;
  font-weight: 300;
  color: #424242;
  background: #fff; }
  @media only screen and (min-width: 0) {
    html {
      font-size: 14px; } }
  @media only screen and (min-width: 601px) {
    html {
      font-size: 14.5px; } }
  @media only screen and (min-width: 993px) {
    html {
      font-size: 15px; } }
      
body {font-family: "mplus", sans-serif;
  font-weight: 300;}

header
{
	background: rgba(149, 149, 149, .8);
	font-size: 16px;
	font-weight: 400;
	color: #fff;
	line-height: 40px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;	
	width: 100%;
	height: 40px;
	padding: 0 10px;
	z-index: 2000;
	position: fixed;
}
header a { color: #fff;}
header .th_logo { height: 30px; width: auto; margin: 5px 0 0 0; float: right;}

.section {
  padding-top: 0;
  padding-bottom: 0;
}

.section.no-pad {
  padding: 0;
}

.section.no-pad-bot {
  padding-bottom: 0;
}

.section.no-pad-top {
  padding-top: 0;
}

.container {
  margin: 0 auto;
  width: 100%;
}
.container_wide {
  margin: 0 auto;
  max-width: 1440px;
  width: 100%;
}
.left-to-center{ text-align: center;}

@media only screen and (min-width: 601px) {
  .container {
    width: 85%;
  }
  .container_wide {
    width: 100%;
  }
  .left-to-center{ text-align: left;}
}
@media only screen and (min-width: 993px) {
  .container {
    width: 75%;
  }
  .container_wide {
    width: 100%;
  }
  .left-to-center{ text-align: left;}
}

.container .row {
  margin-left: auto;
  margin-right: auto;
}
.row {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
}

.totop { position: absolute; bottom: 70px; right: 5%;}
*/


.row {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
  margin-top: 0;
  width: 100%;
}

.slider_limit { width: 100%; margin: 0 auto;}
.slider_negative_m {margin-top: -60px !important;}
@media screen and (min-width:47.938em){
.slider_limit { max-width: 70%; margin: 0 auto;}
.slider_negative_m {margin-top: -120px !important;}
}


  .archive-content .divider{height: 1px !important; background: #000 !important;}
  .archive-content p {color: #fff !important;}
  .archive-content p a {color: #fff !important;}
  .archive-content p a:hover { text-decoration: underline !important;}


.containerInner {
  width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	}
  .containerInner.sec02-height { height: 600px; }
  .containerInner.sec03-height { height: 390px; }
  .containerInner.sec04-height { height: 800px; }
  .containerInner.sec-end-height { height: 100%; }
	@media only screen and (min-width: 340px) {
  .containerInner.sec02-height { height: 600px; }
  .containerInner.sec03-height { height: 390px; }
  .containerInner.sec04-height { height: 880px; }
	}
	@media only screen and (min-width: 370px) {
  .containerInner.sec02-height { height: 600px; }
  .containerInner.sec03-height { height: 440px; }
  .containerInner.sec04-height { height: 900px; }
	}
	@media only screen and (min-width: 400px) {
  .containerInner.sec02-height { height: 640px; }
  .containerInner.sec03-height { height: 490px; }
  .containerInner.sec04-height { height: 920px; }
	}
	@media only screen and (min-width: 430px) {
  .containerInner.sec02-height { height: 640px; }
  .containerInner.sec03-height { height: 490px; }
  .containerInner.sec04-height { height: 1060px; }
	}
	@media only screen and (min-width: 500px) {
  .containerInner.sec02-height { height: 640px; }
  .containerInner.sec03-height { height: 490px; }
  .containerInner.sec04-height { height: 1180px; }
	}
	@media only screen and (min-width: 580px) {
  .containerInner.sec02-height { height: 600px; }
  .containerInner.sec03-height { height: 520px; }
  .containerInner.sec04-height { height: 1280px; }
	}
	@media only screen and (min-width: 601px) {
  .containerInner.sec02-height { height: 600px; }
  .containerInner.sec03-height { height: 520px; }
  .containerInner.sec04-height { height: 640px; }
	}
	@media only screen and (min-width: 760px) {
  .containerInner.sec02-height { height: 600px; }
  .containerInner.sec03-height { height: 520px; }
  .containerInner.sec04-height { height: 680px; }
	}
	@media only screen and (min-width: 800px) {
  .containerInner.sec02-height { height: 600px; }
  .containerInner.sec03-height { height: 520px; }
  .containerInner.sec04-height { height: 700px; }
	}
	@media only screen and (min-width: 993px) {
  .containerInner.sec02-height { height: 600px; }
  .containerInner.sec03-height { height: 750px; }
  .containerInner.sec04-height { height: 700px; }
	}
	@media only screen and (min-width: 1024px) {
  .containerInner.sec02-height { height: 660px; }
  .containerInner.sec03-height { height: 650px; }
  .containerInner.sec04-height { height: 720px; }
	}
	@media only screen and (min-width: 1200px) {
  .containerInner.sec02-height { height: 700px; }
  .containerInner.sec03-height { height: 780px; }
  .containerInner.sec04-height { height: 870px; }
	}
	@media only screen and (min-width: 1300px) {
  .containerInner.sec02-height { height: 700px; }
  .containerInner.sec03-height { height: 830px; }
  .containerInner.sec04-height { height: 900px; }
	}
	@media only screen and (min-width: 1400px) {
  .containerInner.sec02-height { height: 700px; }
  .containerInner.sec03-height { height: 850px; }
  .containerInner.sec04-height { height: 950px; }
	}

/*** #section02 ***/
#section02 .pic01 { position: absolute; top: 130px; left: -50px; width: 260px; }
@media only screen and (min-width: 400px) {
  #section02 .pic01 { top: 120px; left: -50px;  width: 300px;}
}
@media only screen and (min-width: 420px) {
  #section02 .pic01 { top: 120px; left: -60px;  width: 330px;}
}
@media only screen and (min-width: 500px) {
  #section02 .pic01 { top: 100px; left: -60px;  width: 380px;}
}
@media only screen and (min-width: 601px) {
  #section02 .pic01 { top: 50px; left: -80px;  width: 460px;}
}
@media only screen and (min-width: 993px) {
  #section02 .pic01 { top: 50px; left: -80px;  width: 540px; }
}
#section02 .pic02 { position: absolute; bottom: -50px; right: -40px; width: 360px; }
@media only screen and (min-width: 400px) {
  #section02 .pic02 { bottom: -50px; right: -60px; width: 380px;}
}
@media only screen and (min-width: 420px) {
  #section02 .pic02 { bottom: -60px; right: -80px; width: 380px;}
}
@media only screen and (min-width: 500px) {
  #section02 .pic02 { bottom: -60px; right: -80px; width: 400px;}
}
@media only screen and (min-width: 601px) {
  #section02 .pic02 { bottom: -80px; right: -100px; width: 540px;}
}
@media only screen and (min-width: 993px) {
  #section02 .pic02 { bottom: -30px; right: -80px; width: 600px; }
}
@media only screen and (min-width: 1025px) {
  #section02 .pic02 { bottom: -30px; right: -80px; width: 640px; }
}
#section02 .sec02_icon { position: absolute; top: 10px; left: 43%; width: 14%; }
@media only screen and (min-width: 400px) {
  #section02 .sec02_icon { top: 10px; left: 45%; width: 10%;}
}
@media only screen and (min-width: 601px) {
  #section02 .sec02_icon { top: 10px; left: 46%; width: 8%;}
}
@media only screen and (min-width: 993px) {
  #section02 .sec02_icon {top: 10px; left: 46%; width: 8%; }
}
#section02 .sec02_title { position: absolute; top: 80px; width: 100%; text-align: center; font-size: 1.5em; }
@media only screen and (min-width: 400px) {
  #section02 .sec02_title { top: 80px; width: 100%; text-align: center; font-size: 1.5em;}
}
@media only screen and (min-width: 601px) {
  #section02 .sec02_title {top: 90px; width: 100%; text-align: center; font-size: 1.6em; }
}
@media only screen and (min-width: 993px) {
  #section02 .sec02_title { top: 120px; width: 100%; text-align: center; font-size: 1.8em; }
}
@media only screen and (min-width: 1025px) {
  #section02 .sec02_title { top: 140px; width: 100%; text-align: center; font-size: 2em; }
}
#section02 .sec02_caption { position: absolute; bottom: 50%; left:65%; width: 30%; text-align: left; font-size: .9em; background: ; }
@media only screen and (min-width: 400px) {
  #section02 .sec02_caption {bottom: 50%; left:65%; width: 30%; text-align: left; font-size: .9em; background: ;  }
}
@media only screen and (min-width: 420px) {
  #section02 .sec02_caption {bottom: 18%; left:25%; width: 30%; text-align: left; font-size: 1em; background: ;  }
}
@media only screen and (min-width: 601px) {
  #section02 .sec02_caption { bottom: 20%; left:25%; width: 30%; text-align: left; font-size: 1em; background: ; }
}
@media only screen and (min-width: 993px) {
  #section02 .sec02_caption { bottom: 20%; left:25%; width: 30%; text-align: left; font-size: 1.2em; background: ; }
}

/*** #section03 ***/
#section03 .sec03_icon { position: absolute; top: 30px; left: 43%; width: 14%; }
@media only screen and (min-width: 400px) {
  #section03 .sec03_icon { top: 30px; left: 45%; width: 10%;}
}
@media only screen and (min-width: 601px) {
  #section03 .sec03_icon {top: 30px; left: 46%; width: 8%; }
}
@media only screen and (min-width: 993px) {
  #section03 .sec03_icon {top: 30px; left: 46%; width: 8%; }
}
#section03 .sec03_title { position: absolute; top: 100px; width: 100%; text-align: center; font-size: 1.5em; }
@media only screen and (min-width: 400px) {
  #section03 .sec03_title { top: 100px; width: 100%; text-align: center; font-size: 1.5em;}
}
@media only screen and (min-width: 601px) {
  #section03 .sec03_title { top: 110px; width: 100%; text-align: center; font-size: 1.6em; }
}
@media only screen and (min-width: 993px) {
  #section03 .sec03_title { top: 140px; width: 100%; text-align: center; font-size: 1.8em; }
}
@media only screen and (min-width: 1025px) {
  #section03 .sec03_title { top: 160px; width: 100%; text-align: center; font-size: 2em; }
}
#section03 .sec03_speccontainer { padding: 46% 3% 0 3%; }
@media only screen and (min-width: 400px) {
  #section03 .sec03_speccontainer { padding: 40% 3% 0 3%;}
}
@media only screen and (min-width: 420px) {
  #section03 .sec03_speccontainer { padding: 30% 3% 0 3%;}
}
@media only screen and (min-width: 500px) {
  #section03 .sec03_speccontainer { padding: 24% 3% 0 3%;}
}
@media only screen and (min-width: 601px) {
  #section03 .sec03_speccontainer { padding: 17% 5% 0 5%;}
}
@media only screen and (min-width: 993px) {
  #section03 .sec03_speccontainer { padding: 17% 5% 0 5%;}
}
#section03 .sec03_spec { padding: 1%; text-align: center; font-size: .8em; font-weight: 500;}
@media only screen and (min-width: 400px) {
  #section03 .sec03_spec { padding: 1%; text-align: center; font-size: .9em; font-weight: 500;}
}
@media only screen and (min-width: 601px) {
  #section03 .sec03_spec { padding: 5%; text-align: center; font-size: 1em; font-weight: 500;}
}
@media only screen and (min-width: 993px) {
  #section03 .sec03_spec { padding: 5%; text-align: center; font-size: 1.2em; font-weight: 500;}
}


/*** #section04 ***/
#section04 .sec04_container { padding: 5%; }
@media only screen and (min-width: 400px) {
  #section04 .sec04_container { }
}
@media only screen and (min-width: 601px) {
  #section04 .sec04_container { }
}
@media only screen and (min-width: 993px) {
  #section04 .sec04_container { padding: 3%; }
}
#section04 .sec04_icon { position: absolute; top: 30px; left: 43%; width: 14%; }
@media only screen and (min-width: 400px) {
  #section04 .sec04_icon { top: 40px; left: 45%; width: 10%;}
}
@media only screen and (min-width: 601px) {
  #section04 .sec04_icon { top: 30px; left: 45%; width: 16%;}
}
@media only screen and (min-width: 993px) {
  #section04 .sec04_icon { top: 30px; left: 42%; width: 16%;}
}
#section04 .sec04_title { position: absolute; width: 90%; text-align: center; font-size: 1.5em; margin-top: 65px;}
@media only screen and (min-width: 400px) {
  #section04 .sec04_title { width: 90%; text-align: center; font-size: 1.5em; margin-top: 80px;}
}
@media only screen and (min-width: 420px) {
  #section04 .sec04_title { width: 90%; text-align: center; font-size: 1.5em; margin-top: 90px;}
}
@media only screen and (min-width: 601px) {
  #section04 .sec04_title { width: 90%; text-align: center; font-size: 1.6em; margin-top: 70px; }
}
@media only screen and (min-width: 993px) {
  #section04 .sec04_title { width: 90%; text-align: center; font-size: 1.8em; margin-top: 100px;}
}
@media only screen and (min-width: 1025px) {
  #section04 .sec04_title {width: 90%; text-align: center; font-size: 2em; margin-top: 100px; }
}
#section04 .sec04_caption { position: absolute; width: 90%; text-align: center; font-size: .9em; margin-top: 100px;}
@media only screen and (min-width: 400px) {
  #section04 .sec04_caption { width: 90%; text-align: center; font-size: 1em; margin-top: 120px;}
}
@media only screen and (min-width: 420px) {
  #section04 .sec04_caption { width: 90%; text-align: center; font-size: 1em; margin-top: 130px;}
}
@media only screen and (min-width: 601px) {
  #section04 .sec04_caption { width: 90%; text-align: center; font-size: 1.2em; margin-top: 120px;}
}
@media only screen and (min-width: 993px) {
  #section04 .sec04_caption { width: 90%; text-align: center; font-size: 1.2em; margin-top: 150px;}
}

#section04 .sec04_spec { padding: 0; text-align: center; font-size: 1em; font-weight: 500;}
@media only screen and (min-width: 400px) {
  #section04 .sec04_spec {padding: 0 15px; text-align: center; font-size: 1em; font-weight: 500; }
}
@media only screen and (min-width: 601px) {
  #section04 .sec04_spec { padding: 0; text-align: center; font-size: 1.2em; font-weight: 500;}
}
@media only screen and (min-width: 993px) {
  #section04 .sec04_spec {padding: 0 15px; text-align: center; font-size: 1.2em; font-weight: 500; }
}
@media only screen and (min-width: 1025px) {
  #section04 .sec04_spec {padding: 0; text-align: center; font-size: 1.2em; font-weight: 500; }
}

#section04 .sec04_spec.upper { padding-top: 30px;}
@media only screen and (min-width: 400px) {
  #section04 .sec04_spec.upper {padding-top: 30px; }
}
@media only screen and (min-width: 601px) {
  #section04 .sec04_spec.upper { padding-top: 190px;}
}
@media only screen and (min-width: 993px) {
  #section04 .sec04_spec.upper { padding-top: 210px; }
}
@media only screen and (min-width: 1025px) {
  #section04 .sec04_spec.upper { padding-top: 230px; }
}





#section04 .sec04_linkA { position: absolute; bottom: 200px; left: 30px; width: 60px; }
@media only screen and (min-width: 400px) {
  #section04 .sec04_linkA { bottom: 240px; left: 50px;  width: 60px;}
}
@media only screen and (min-width: 580px) {
  #section04 .sec04_linkA { bottom: 380px; left: 70px;  width: 80px;}
}
@media only screen and (min-width: 601px) {
  #section04 .sec04_linkA { bottom: 40px; left: 100px;  width: 100px;}
}
@media only screen and (min-width: 760px) {
  #section04 .sec04_linkA { bottom: 400px; left: 460px;  width: 100px;}
}
@media only screen and (min-width: 993px) {
  #section04 .sec04_linkA { bottom: 50px; left: 120px;  width: 100px; }
}
#section04 .sec04_linkB { position: absolute; top: 340px; right: 30px; width: 60px; }
@media only screen and (min-width: 580px) {
  #section04 .sec04_linkB { top: 540px; right: 50px;  width: 80px;}
}
@media only screen and (min-width: 601px) {
  #section04 .sec04_linkB { top: 240px; right: 150px;  width: 100px;}
}
@media only screen and (min-width: 760px) {
  #section04 .sec04_linkB { top: 560px; right: 200px;  width: 100px;}
}
@media only screen and (min-width: 993px) {
  #section04 .sec04_linkB { top: 290px; right: 200px;  width: 100px; }
}



