@charset "utf-8";
/*
z-index 説明
10 : #header            //fixedされ、画面上にあるもの
100 : #page.is-extend::before //spでメニューボタンを押した時など、ポップアップされた時ページ暗転カーテン
110 : #side_menu              //spでメニューボタンを押した時表示されるボックス
*/

/* 基本タグスタイル */
body {
  font-size: 18px;
  min-width: 1000px;
  min-height: 80vh;
  margin: 0;
}
ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
ul li {
  list-style: none;
  padding: 0;
  margin: 0;
}
p { margin: 0; }
a,a:hover,a:focus {
  text-decoration: none;
  color: inherit;
}
/* help class */
.center { text-align: center; }


#page {
  position: relative;
  min-height: 100vh;
}
#page.is-extend::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.4);
  z-index: 100;
}
#header {
  position: fixed;
  top: 0;
  width: 100%;
  min-width: 1000px;
  z-index: 10;
  border-bottom: 3px solid black;
  background: rgba(0,0,0,0.7);
  color: white;
}
#header .header_wrapper {
  position: relative;
  text-align: center;
  padding: 10px 0;
}
#header .header_wrapper .header_options .header_nav ul {
  display: inline-block;
  font-size: 0;
}
#header .header_wrapper .header_options .header_nav ul li {
  display: inline-block;
  font-size: 18px;
  border-radius: 8px;
  padding: 0;
  vertical-align: middle;
}
#header .header_wrapper .header_options .header_nav ul li.nav_logo img {
  vertical-align: middle;
}
#header .header_wrapper .header_options .header_nav ul li.nav_logo h1 {
  display: inline-block;
  line-height: 50px;
  font-size: 25px;
  vertical-align: middle;
  padding: 3px 12px 0 12px;
  margin: 0;
}
#header .header_wrapper .header_options .header_nav ul li:not(.nav_logo):hover {
  background-color: black;
}
#header .header_wrapper .header_options .header_nav ul li:not(.nav_logo) a {
  display: block;
  padding: 10px 0;
}
#header .header_wrapper .header_options .header_nav ul li .nav_box {
  border-left: 1px solid #ccc;
  padding: 0 20px;
}
#header .header_wrapper .header_options .header_nav ul li:last-child .nav_box { border-right: 1px solid #ccc; }
#header .header_wrapper .header_options .header_nav ul li:not(.nav_logo):hover .nav_box {
  border-left: 1px solid black;
}
#header .header_wrapper .header_options .header_nav ul li:last-child:not(.nav_logo):hover .nav_box {
  border-left: 1px solid black;
  border-right: 1px solid black;
}

#header .header_wrapper .header_options .header_nav ul li .nav_box .nav_Eng {
  font-weight: bold;
  opacity: 0.8;
  line-height: 1.4;
}
#header .header_wrapper .header_options .header_nav ul li .nav_box .nav_Jap {
  font-size: 15px;
  line-height: 1.1;
}

/* footer */
#footer {
  color: white;
  padding: 15px 0;
  background-color: black;
}
#footer .page-area{
  text-align: center;
}
#footer .page-area .page-list{
	display: inline-block;
	width: 250px;
  font-size: 14px;
  text-align: left;
  vertical-align: top;
	margin-right: 70px;
}
#footer .page-area .page-list:last-child{
	margin-right: 0;
}
#footer .page-area .page-list .head{
	font-weight: 600;
	font-size: 15px;
	padding: 5px 0px;
	border-bottom: 1px dotted;
}
#footer .page-area .page-list ul{
	padding-top: 5px;
}
#footer .page-area .page-list ul li{
	margin: 4px 0px;
}
#footer .copyright {
  text-align: center;
  font-size: 14px;
  padding: 5px 0;
}

/* common_table */
table.common_table {
  border: 2px solid #5CACEB;
  margin: 10px 0;
}
table.common_table.mb_30 { margin-bottom: 30px; }
table.common_table tr { border: 2px solid #5CACEB; }
table.common_table th {
  font-weight: bold;
  text-align: center;
  color: #337AB7;
  background-color: #CBEBF1;
}

/* sect 共通 */
.sect { padding: 20px; }
.sect .sect_title {
  text-align: center;
  font-weight: bold;
  margin-bottom: 30px;
 }
.sect .sect_title .sect_title_Eng {
  width: 50%;
  font-size: 40px;
  font-weight: bold;
  line-height: 1.3;
  border-bottom: 4px dotted #413d69;
  margin: 0 auto;
}
.sect .sect_title .sect_title_Jap {
  font-size: 16px;
}
.sect .sect_contents .t_r { text-align: center; }
.sect .sect_contents .t_r .t_h {
  font-weight: bold;
  vertical-align: top;
 }
.sect .sect_contents .t_r .t_h, .sect .sect_contents .t_r .t_d {
  display: inline-block;
  text-align: left;
}

/* #news-button */
#news-button {
  position: fixed;
  top: 100px;
  right: 30px;
  z-index: 10;
}
#news-button a {
  display: block;
  padding: 2px 6px 2px 4px;
  border-radius: 14px;
  background-color: white;
  font-size: 14px;
  box-shadow: 1px 2px grey;
}
#news-button a:hover { background-color: #ddd;}
#news-button img {
  vertical-align: bottom;
  margin-right: 5px;
}
#news-button span {
  vertical-align: bottom;
  font-weight: bold;
}

/* #image-slider */
#image-slider .image-slider-bg ul {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
#image-slider .image-slider-bg ul li {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: scale(1);
  transition: transform 10s,opacity 2s;
}
#image-slider .image-slider-bg ul li.is-disappearing {
  opacity: 0;
  transform: scale(1.1);
}
#image-slider .image-slider-bg ul li.is-active {
  opacity: 1;
  transform: scale(1.1);
  transition: transform 10s,opacity 5s;
}
#image-slider .image-slider-bg ul li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* error ページ */
#error p {
  text-align: center;
  padding: 30px;
  font-weight: bold;
}

/* sect company */
#company .t_r { margin: 20px; }
#company .t_r .t_h { width: 200px; }
#company .t_r .t_d { width: 400px; }

/* sect history */
#history .t_r { margin: 20px; }
#history .t_r .t_h { width: 200px; }
#history .t_r .t_d { width: 500px; }

/* sect business */
#business .contents_wrapper {
  width: 600px;
  margin: 0 auto;
}
#business .contents_wrapper .contents_box {
  padding: 25px 0;
  border-bottom: 1px solid #eaecee;
}
#business .contents_wrapper .contents_box:last-child { border-bottom: 0; }
#business .contents_wrapper .contents_box .head {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 25px;
}
#business .contents_wrapper .contents_box .body {
  font-size: 14px;
  margin-bottom: 25px;
}
#business .contents_wrapper .contents_box a {
  color: #23A558;
}

/* sect disclaimer */
#disclaimer .contents_wrapper {
  width: 600px;
  margin: 0 auto;
}
#disclaimer .contents_wrapper .head {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 10px;
}
#disclaimer .contents_wrapper .body {
  font-size: 14px;
  margin-bottom: 30px;
}

/* sect contact */
#contact .t_r { margin: 20px; }
#contact .t_r .t_h {
  width: 150px;
  vertical-align: middle;
}
#contact .t_r .t_h.top { vertical-align: top; }
#contact .t_r .t_d { width: 600px; }
#contact .required_mark { color: red; }
#contact .hint { font-weight: bold; }
#contact input { width: 100%; }
#contact textarea { width: 100%; }
#contact button[type="submit"] {
  width: 600px;
  padding: 10px 0;
  font-size: 20px;
  color: white;
  background-color: #337AB7;
}

/* news */
#news .contents_wrapper {
  width: 600px;
  margin: 0 auto;
}
#news .contents_wrapper .head {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 10px;
}
#news .contents_wrapper .body {
  font-size: 14px;
  margin-bottom: 30px;
}
