@charset "utf-8";
@import "mp.css";
@import "table.css";

body {
	font-family:'Noto Sans JP','メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','MS UI Gothic',sans-serif;
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom:0px;
	line-height: 2em;	
	color: #333;
	background-color: #fff;
	overflow-x: hidden;
	position: relative;
	font-optical-sizing: auto;
}
/*------googleフォント------*/
.roboto,.aboutustext1,h2,.copy,.engh1{
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}
.jph2{
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

/*-----キーカラー紺rgba(21,57,89,1)------*/
.color-blue,.mainimg-text1,h2{color:#153959;}
h1{color:#153959!important;}
.color-blue-bg,.link-form:hover,#spmenu,.section-aboutus,#footer{background-color:#153959;}

/*-----キーカラー青------*/
.color-blue2,h3{color:#2C6DA5;}
.section-contactbox{background-color:#2C6DA5;}

/*-----キーカラー白------*/
.section-aboutus h2,.section-contactbox h2,#footer{color:#fff;}

/*-----キーカラー赤------*/
.color-aka,.flex-list-i{color:#8C2016;}
.link-form,.link-form:visited{background-color:#8C2016;}

/*-----キーカラーオレンジ------*/
.color-orange{color:#D98556;}

/*-----キーカラーグレー------*/
.color-gray,#flex-news-box-navi{background-color:#F8F8F8;}

/*------h1------*/
#profile-page #h1box{background-image: url("../img/profile/h1.png");}
#products-page #h1box{background-image: url("../img/products/h1.png");}
#csr-page #h1box{background-image: url("../img/csr/h1.png");}
#contact-page #h1box{background-image: url("../img/contact/h1.png");}
#privacy-page #h1box{background-image: url("../img/privacy/h1.png");}
#news-page #h1box{background-image: url("../img/news/h1.png");}


/*------調整------*/
.img-max-w600{width: 100%;margin: 0 auto; max-width: 600px;}
.img-max-w630{width: 100%;margin: 0 auto; max-width: 630px;}
.img-max-w540{width: 100%;margin: 0 auto; max-width: 540px;}
.kakomi1{padding: 30px;border-radius: 10px; background-color: #FFF;}
.kakomi2{padding: 30px;border-radius: 10px; background-color: #FFF;border: 1px solid #CCCCCC;}

/*------bold------*/
.f-bold700{font-weight: 700;}
.f-bold500{	font-weight: 500;}
.f-300{font-weight: 300;}
.font-small{font-size: 0.8em;}
.font-big{font-size: 1.1em;}

.cap{font-size: 0.9em;margin-bottom: 20px;}


/*-----イメージオーバー------*/
.hover-style img {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}
.hover-style img:hover {
	opacity: .6;
	-webkit-opacity: .6;
	-moz-opacity: .6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
}

/*------スマホのみ電話リンク------*/
@media (min-width: 600px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}

/*------位置の共通化------*/
ol{
	padding:0px;
	list-style-type: decimal;
	list-style-position:outside;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 10px;
}
ol li{
	margin-left: 10px;
}
.line-ol ol{	padding:0px;
	list-style-type: decimal;
	list-style-position:inside;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;}
.line-ol ol li{
margin-left: 0px;
	border-bottom: 1px solid #CCCCCC;
    margin-bottom: 10px;padding-bottom: 10px;
     text-indent: -1em;
  padding-left: 1em;
}

ul{
	padding:0px;
	list-style: outside;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 10px;
}
ul li{
	margin-left: 10px;
}

section{
text-align: justify; 
text-justify: inter-character;
}
p{
	margin:  0em;
	text-indent: 0em;
}
p.space{
	margin:  0em;
	text-indent: 1em;
}
.mark{
padding-left: 1em; 
text-indent: -1em; 
}
.mark2{
padding-left: 2em; 
text-indent: -2em; 
}
.mark3{
padding-left: 3em; 
text-indent: -3em; 
}
.mark35{
padding-left: 3.5em; 
text-indent: -3.5em; 
}
.mark4{
padding-left: 4em; 
text-indent: -4em; 
}
.mark45{
padding-left: 4.5em; 
text-indent: -4.5em; 
}

.clear {
	clear:both;
	overflow:hidden;
	height: 1px;
}
.afterclear{
    zoom:1;/*for IE 5.5-7*/
}
.afterclear:after{/*for modern browser*/
    content:".";
    display: block;
    height:0px;
    clear:both;
    visibility:hidden;
}

/*------align------*/
.center {
	text-align: center;
}
.right {
	text-align: right;
}
.left {
	text-align: left;
}

/*------------------------ボタン 大きさ配置は各css------------------------*/
.common-btn01,.common-btn01:visited{
display: inline-block;
  width: 100%;
  color: #fff; /* 文字色 */
  background: #D98556;/* 背景色 */
  padding: 6px 0px 6px 0px;
  font-weight: 400; /* 文字の太さ */
  text-decoration: none;
  text-align: center;
  transition: 0.3s;
  border-radius: 30px;
  cursor: pointer;
}
/* マウスオーバーした際のデザイン */
.common-btn01:hover {
  color: #FFF; /* 文字色 */
  background: #153959; /* 背景色 */
    text-decoration: none;  
	border-radius: 0px;
}
.common-btn02,.common-btn02:visited{
display: inline-block;
  width: 100%;
    color: #FFF; /* 文字色 */
  background: #153959; /* 背景色 */

  padding: 6px 0px 8px 0px;
  font-weight: 400; /* 文字の太さ */
  border: 1px solid #153959; 
  text-decoration: none;
  text-align: center;
  transition: 0.3s;
  border-radius: 0px;
  cursor: pointer;
}
/* マウスオーバーした際のデザイン */
.common-btn02:hover {
  color: #153959; /* 文字色 */
  background: #fff;/* 背景色 */
    border: 1px solid #153959; 
    text-decoration: none;  
	border-radius: 0px;
}

select {background-color: #FFFFFF;border: #e4e4e4 1px solid;border-radius: 5px;padding: 5px 10px;
-moz-appearance: menulist;
  -webkit-appearance: menulist;}
select::-ms-expand {
    display: block;
}
.input100 input,textarea,select{background-color: #FFFFFF;border: #e4e4e4 1px solid; border-radius: 5px; width: 100%;padding: 5px 10px;}
::placeholder{
  color:#999999;
}
caption{display:none}
address {
font-style:normal;
}

/*------リンク------*/
a {
	font-style: normal;
	color: #153959;
	text-decoration:underline;
        	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
a:visited{
	font-style: normal;
	color: #153959;
	text-decoration:underline;
}

a:hover{
	color: #2C6DA5;
	text-decoration:underline;
}
a:active{
 color: #8C2016;
text-decoration:underline;
}

img {
	border: none;
}
.youtube{
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

.flex-head-logo a{
	display: block;
	width: 100%;
	height: 100%;
}

.overlay-image{
  position: absolute;
  display: inline-block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
  opacity: 0.5;
  background-image: url("../img/topVideoOverlay.png");
  background-repeat: repeat;
  z-index: 2;
}

