/* m-plus-rounded-1c-regular - latin_japanese  for h1 and h2*/
@font-face {
  font-family: 'M PLUS Rounded 1c';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/m-plus-rounded-1c-v10-latin_japanese-regular.eot'); /* IE9 Compat Modes */
  src: local('M PLUS Rounded 1c'), local('MPLUSRounded1c-Regular'),
       url('fonts/m-plus-rounded-1c-v10-latin_japanese-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/m-plus-rounded-1c-v10-latin_japanese-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/m-plus-rounded-1c-v10-latin_japanese-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/m-plus-rounded-1c-v10-latin_japanese-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/m-plus-rounded-1c-v10-latin_japanese-regular.svg#MPLUSRounded1c') format('svg'); /* Legacy iOS */
}

/* noto-sans-jp-regular - latin */
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/noto-sans-jp-v27-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Noto Sans Japanese Regular'), local('NotoSansJapanese-Regular'),
       url('fonts/noto-sans-jp-v27-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/noto-sans-jp-v27-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/noto-sans-jp-v27-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/noto-sans-jp-v27-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/noto-sans-jp-v27-latin-regular.svg#NotoSansJP') format('svg'); /* Legacy iOS */
}


html, body {
	padding: 0;
	margin: 0;
}

body {
font-family: 'Noto Sans JP', sans-serif;
font-size:12pt;
}

.pc {
display:inline-block !important;
}

.mobile {
display:none !important;
}

.small_mobile {
display:none !important;
}

.rounded {
font-family: 'M PLUS Rounded 1c' !important;
}

h1 {
font-family: 'M PLUS Rounded 1c' !important;
line-height:1;
font-size:30pt;
}

h2 {
font-family: 'M PLUS Rounded 1c' !important;
line-height:1;
font-size:24pt;
}

.pcmenu {
height:66px;
	XXX-webkit-box-shadow: 0 8px 6px -6px black;
	   XXX-moz-box-shadow: 0 8px 6px -6px black;
	        XXXbox-shadow: 0 8px 6px -6px black;
}

.picture_menu img {
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
	filter: alpha(opacity=70);
	opacity:0.7;
	-webkit-transition: opacity 0.3s ease-in-out; 
	-moz-transition: opacity 0.3s ease-in-out; 
	-o-transition: opacity 0.3s ease-in-out; 
	-ms-transition: opacity 0.3s ease-in-out; 
	transition: opacity 0.3s ease-in-out;  
}
.picture_menu img:hover {
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: alpha(opacity=100);
	opacity:1;
	-webkit-transition: opacity 0.3s ease-in-out; 
	-moz-transition: opacity 0.3s ease-in-out; 
	-o-transition: opacity 0.3s ease-in-out; 
	-ms-transition: opacity 0.3s ease-in-out; 
	transition: opacity 0.3s ease-in-out; 
cursor:pointer;
}

.logo {
padding-top:6px;
}

/* for logo */

.company-name {
position:absolute;
margin-top:5px;
margin-left:-12px;
z-index:2;
text-shadow: 3px 3px 6px #000000;
}

.tower1 {
position:absolute;
margin-top:21px;
margin-left:10px;
width:20px;
height: 30px;
background-color: #333;
}

.tower2 {
position:absolute;
margin-top:0px;
margin-left:35px;
width:20px;
height: 50px;
background-color: #33E;
}

.tower3 {
position:absolute;
margin-top:-20px;
margin-left:60px;
width:20px;
height: 70px;
}

.tower4 {
position:absolute;
margin-top:55px;
margin-left:10px;
width:20px;
height: 10px;
}

.tower5 {
position:absolute;
margin-top:55px;
margin-left:35px;
width:20px;
height: 17px;
}

.tower6 {
position:absolute;
margin-top:55px;
margin-left:60px;
width:20px;
height: 23px;
}

/* end for logo */

/* top menu */

.menu-arrow {
float:right;
margin-right:4px;
}

a {
  text-decoration: none;
}

ul.parent, ul.child {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.parent, ul.mid-child {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.parent, ul.big-child {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.parent, ul.sub-child {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.parent > li {
  display: inline-block;
  position: relative;
padding-top:8px;
height:66px;
}

ul.parent > li a:not(.direct-link) {
  display: block;
  padding: 1em 2em;
  height: 1em
}

ul.child {
  display: none;
  position: absolute;
  top: 66px;
}

ul.sub-child {
  display: none;
  position: absolute;
  XXXtop: 3em;
margin-top:-36px;
left:200px;
XXXwidth:200px !important;
}

ul.child li {
height:66px;
width:200px !important;
padding-top:8px;
}

ul.sub-child li {
height:66px;
width:200px !important;
padding-top:8px;
}

ul.mid-child {
  display: none;
  position: absolute;
  top: 66px;
width:700px;
left: 50%;
transform: translate(-50%, 0);
}

ul.big-child {
  display: none;
  position: absolute;
  top: 66px;
width:940px;
left: 50%;
transform: translate(-35%, 0);
}

ul.child li a { min-width: 100%; }

ul.mid-child li a { min-width: 100%; }

ul.big-child li a { min-width: 100%; }

ul.sub-child li a { min-width: 100%; }


.about_block_padding {
padding:0;
padding-right:15px;
}

.about_block {
padding:0;
padding-left:15px;
}

.about-content {
width:100%;
padding-left:10px;
padding-top:10px;
}

.pcmenu h3 {
margin:0;
}

.construction_header {
position:absolute;
margin-top:-36px !important;
margin-left:-10px !important;
padding-left:10px;
padding-right:10px;
padding-top:3px;
}

.leftbox {
padding:10px;
XXXpadding-right:0px;
}

.rightbox {
padding:10px;
XXXpadding-left:10px;
}

.padding-ten {
padding:10px;
}

.padding-twenty {
padding:20px;
}

.envelope {
font-size:14pt;
position:absolute;
margin-left:4px;
margin-top:2px;
}

/* end top menu */


.banner {
    background-size: contain;
    background-repeat: no-repeat;
    width: 100%;
    height: 0;
    padding-top: 62.5%; /* (img-height / img-width * container-width) */
                /* (1200 / 1920 * 100) */

position:relative;
z-index:-1;

}

.main_div {
position:absolute !important;
top:8% !important;
}

.tel_fax {
margin-top:15% !important;
}

.en_banner_header {
font-family: 'Archivo Black', sans-serif !important;
font-size:47px;
text-shadow: 3px 3px 6px #000000;
}

.banner-white-text {
text-shadow: 2px 2px 4px #000000;
height:370px !important;
padding-top:100px !important;
}

.text_one h1 {
margin-top:45px;
font-size:50pt !important;
}

.separator {
height:12px;
padding:0;
margin:0;
XXXmargin-top:-1px;
}

.no-padmar {
padding:0;
margin:0;
}

.topshadow {
-webkit-box-shadow: 0px -2px 3px 0px rgba(50, 50, 50, 0.67);
-moz-box-shadow:    0px -2px 3px 0px rgba(50, 50, 50, 0.67);
box-shadow:         0px -2px 3px 0px rgba(50, 50, 50, 0.67);
}

.bottomshadow {
-webkit-box-shadow: 0px 2px 3px 0px rgba(50, 50, 50, 0.67);
-moz-box-shadow:    0px 2px 3px 0px rgba(50, 50, 50, 0.67);
box-shadow:         0px 2px 3px 0px rgba(50, 50, 50, 0.67);
}

.construction_bg {
background:url(../img/construction_bg.png) top left;
}

.construction_bg_head {
height:80px !important;
padding-top:8px;
padding-left:40px;
margin-top:-4px;
}

/* carousel */

.normal {
font-weight:normal !important;
}

.indent12 {
text-indent:12px !important;
}

.indent24 {
text-indent:24px !important;
}

.indent36 {
text-indent:36px !important;
line-height:1.6;
}

.carousel_text {
position:relative;
text-align:left;
margin-top:10px;
font-size:14pt;
min-height:99px;
}

.howmanypics {
float:right;
font-size:13pt;
margin-right:6px;
margin-bottom:6px;
}

/* end carousel */

.inner_shadow {
   -moz-box-shadow:    inset 0 0 10px #000000;
   -webkit-box-shadow: inset 0 0 10px #000000;
   box-shadow:         inset 0 0 10px #000000;
min-height:680px !important;
}

.inner_shadow_unfixed {
   -moz-box-shadow:    inset 0 0 10px #000000;
   -webkit-box-shadow: inset 0 0 10px #000000;
   box-shadow:         inset 0 0 10px #000000;
}

.listing:not(:first-child) {
border-top: 5px dotted #585858;
}

.button_inner_shadow {
width:200px;
height:120px;
border-radius:20px;
   -moz-box-shadow:    inset 0 0 10px #000000;
   -webkit-box-shadow: inset 0 0 10px #000000;
   box-shadow:         inset 0 0 10px #000000;
    border: none;
    outline:none;
margin:10px;
}

.button_inner_shadow img {
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
	filter: alpha(opacity=70);
	opacity:0.7;
	-webkit-transition: opacity 0.3s ease-in-out; 
	-moz-transition: opacity 0.3s ease-in-out; 
	-o-transition: opacity 0.3s ease-in-out; 
	-ms-transition: opacity 0.3s ease-in-out; 
	transition: opacity 0.3s ease-in-out;
border-radius:20px;
}
.button_inner_shadow img:hover {
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: alpha(opacity=100);
	opacity:1;
	-webkit-transition: opacity 0.3s ease-in-out; 
	-moz-transition: opacity 0.3s ease-in-out; 
	-o-transition: opacity 0.3s ease-in-out; 
	-ms-transition: opacity 0.3s ease-in-out; 
	transition: opacity 0.3s ease-in-out;  
}

#iframe_div {
    position: relative;
}
#iframe_div iframe {
    display: block;
    position: relative;
    z-index: 1;
}
#iframe_div::before {
    background-color: rgba(87, 106, 146, 0.2);
    content: '';
    position: absolute;
    z-index: 2;
    box-shadow: inset 0px 11px 8px -10px black, inset 0px -11px 8px -10px black;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    pointer-events: none;
}

/* tablet and bigger */

@media screen and (min-width: 768px) {


.white_shadow { 
  color: white;
  text-shadow: 0 1px 0 #ccc,
               0 2px 0 #c9c9c9,
               0 3px 0 #bbb,
               0 4px 0 #b9b9b9,
               0 5px 0 #aaa,
               0 6px 1px rgba(0,0,0,.1),
               0 0 5px rgba(0,0,0,.1),
               0 1px 3px rgba(0,0,0,.3),
               0 3px 5px rgba(0,0,0,.2),
               0 5px 10px rgba(0,0,0,.25),
               0 10px 10px rgba(0,0,0,.2),
               0 20px 20px rgba(0,0,0,.15);
}

}

/* screen width smaller than 980px */

@media screen and (max-width: 1024px) {

.indent12 {
text-indent:6px !important;
}

.indent24 {
text-indent:12px !important;
}

.indent36 {
text-indent:18px !important;
line-height:1.6;
}

#select01 {
position:absolute;
right:80px;
}

.pc {
display:none !important;
}

.mobile {
display:inline-block !important;
}

.small_mobile {
display:none !important;
}

h1 {
font-size:20pt;
font-family: meiryo;
}

h2 {
font-size:16pt;
font-family: meiryo;
}

.company-name h2 {
font-size:20pt;
}

.company-name {
margin-left:6px;
}

/* mobile menu */

.header nav {
	display: none;
}

.header,
.content,
.footer {
	text-align: center;
}
.header,
.footer {
	XXXbackground: #4bb5ef;
	font-size: 16px;
	font-weight: bold;
	XXXcolor: #fff;
	line-height: 50px;

	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 50px;
	padding: 0 50px;
}
.header.fixed {
	position: fixed;
	top: 0;
	left: 0;
}
.footer.fixed {
	position: fixed;
	bottom: 0;
	left: 0;
}
.header a {
	display: block;
	XXXwidth: 28px;
width: 50px;
	height: 18px;
	padding: 11px;
	margin: 5px;
	position: absolute;
	top: 0;
	left: 0;
}
.header a:before,
.header a:after {
	content: '';
	display: block;
	background: #fff;
box-shadow: 1px 1px #000;
	height: 2px;
}
.header a span {
	background: #fff;
	display: block;
	height: 2px;
box-shadow: 1px 1px #000;
	margin: 6px 0;
}

.close-drawer {
font-size:20pt;
position:absolute;
right:20px;
top:10px;
display:none;
z-index:999999;
cursor:pointer;
}

/* end mobile menu */

.main_div {
top:6% !important;
}

.tel_fax {
margin-top:0px !important;
}

.banner-white-text {
padding-top:60px !important;
}

.button_inner_shadow {
width:160px;
}

.text_one h1 {
font-size:40pt !important;
}

}

/* screen width smaller than 480px */

@media screen and (max-width: 480px) {


.carrouheader h1 {
font-size:16pt !important;
font-family: meiryo;
}

.carrouheader h2 {
font-size:14pt !important;
font-family: meiryo;
}


.indent12 {
text-indent:0px !important;
}

.indent24 {
text-indent:0px !important;
}

.indent36 {
text-indent:0px !important;
}

.small_mobile {
display:inline-block !important;
}

.address_bar {
height:50px !important;
background:url(../img/address_bg_line.png) left center;
}

.en_banner_header {
font-family: 'Archivo Black', sans-serif !important;
font-size:20pt;
text-shadow: 3px 3px 6px #000000;
}

.banner-white-text {
padding-top:40px !important;
}

.main_div {
top:3% !important;
}

.main_div h1 {
font-size:30pt !important;
margin:0 !important;
}

.main_div h2 {
margin:0 !important;
}

.button_inner_shadow {
width:200px;
}

.inner_shadow {
min-height:470px !important;
}

.list_bg {
background:none;
}

.padding-ten {
padding:3px;
}

.padding-twenty {
padding:5px;
}
.padding-forty {
padding:10px;
}

.link_button {
width:80px;
height:auto;
}

.carousel_font {
font-size:12pt;
padding:10px;
}

.carousel-inner {
padding:20px !important;
}


}