@charset "utf-8";  

/*******************************
*	VIDEO
*******************************/
.wrap-video{
  position:relative; 
  z-index: 10;
 }
.wrap-video video{
  width: 100%;
  height: 100%;
  display: block;
 }
 
.wrap-video:before{
  /* 透過した黒を上から重ねるイメージ */
  background-color: rgba(0,0,0,0.4);
  /* 自由に位置指定 */
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: ' ';
}

.wrap-video .text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); /*上下左右中央寄せ*/  
  width: 100%;
  text-align:center;
  color:#fff;
 }
.wrap-video .text h1,
.wrap-video .text h3{
  font-weight:bold;
 }
@media screen and (max-width: 480px) {
.wrap-video .text p{
  font-size:12px;
 }
}

/* ----- スクロールアイコン ----- */
.header-scr{
  z-index: 3; /*必ず必要*/
    position: absolute;
    width: 150px;
    height: 100px;
    bottom: 0;
    top: 150px;
    left: 50%; 
      -webkit-transform: translate(-50%, -50%);
       transform: translate(-50%, -50%); /*上下左右中央寄せ*/
    color:#fff; 
 }
 .scroll-announce { 
    margin-top:120px;
    font-size:14px;
    color:#fff;
 }
.stickarrow {
  width: 4px;
  height: 40px;
  border-right: 1px solid #fff; 
  transform: translateX(70px) ;
}

@media screen and (min-width: 1200px) {
.header-scr{
    top: 250px;
 }
}
@media screen and (max-width: 767px) {
.header-scr{
    top: 100px;
 }
}

/* ----- スクロールアイコン VIDEO----- */
.video-scr{
  z-index: 3; /*必ず必要*/ 
    position: absolute;
    width: 150px;
    height: 100px; 
    bottom: 0;
    top: 150px;
    left: 50%; 
      -webkit-transform: translate(-50%, -50%);
       transform: translate(-50%, -50%); /*上下左右中央寄せ*/
    color:#fff; 
 }
@media screen and (min-width: 1200px) {
.video-scr{
    top: 250px;
 } 
}
/* --------------------------------------------------スクロールバー */
.scr{
    width: 98%;
    height: 200px;
    overflow-y: scroll;
    overflow-x: hidden;
    background-color:#e3e3e3;
    padding: 10px 40px 20px 10px;
    line-height:1.0;
 }
.scr p{ 
    font-size:14px;
 }

@media screen and (max-width: 480px) {
.scr{ 
    width: 98%;
    height: 140px;
    margin:0 auto;  
    line-height:1.1;
 }
.scr p{ 
    font-size:10px;
 }
}

/*******************************
*	List more
*******************************/ 
.btn-square-little-rich
 {
  position: relative;
  display: block;
  padding: 0.5em 1.0em;
  text-decoration: none;
  margin: 0 0 0 auto;
  color: #FFF;
  background: #03A9F4;/*色*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
  text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}

.btn-square-little-rich:active {
  /*押したとき*/
  border: solid 1px #03A9F4;
  box-shadow: none;
  text-shadow: none;
}


.btn-flat-border {
  display: inline-block;
  padding: 0.3em 1em;
  text-decoration: none;
  color: #67c5ff;
  border: solid 2px #67c5ff;
  border-radius: 3px;
  transition: .4s;
}

.btn-flat-border:hover {
  background: #67c5ff;
  color: white;
}


/*******************************
*	SP NAVI
*******************************/ 
nav.globalMenuSp {  
    position: fixed;  
    z-index: 3000;  
    margin-top:54px;
    top: 0;
    left: 0; 
    right: 0;
    bottom: 0;
    background: #164B9C;
    color: #000;
    text-align: left;
    transform: translateX(-100%);
    transition: all 0.6s;
    width: 100%; 
    overflow-y: auto; 
 }
nav.globalMenuSp .body {
  /* ウィンドウ自体 アニメーションなどで装飾 */
    position: relative;
    left: 0;
    top: 0;  
    width: 90%;
    margin: 18px auto;
    padding: 10px;
    overflow-y: auto;
    z-index: 4000;
 }
nav.globalMenuSp ul {
    margin: 0 auto;
    padding: 0;
    width: 100%; 
    transform: translateY(-20px);
    animation: 200ms modalwindow_body_out;
 }
nav.globalMenuSp ul li {
    font-size: 1.0em;
    list-style-type: none;
    padding: 0;
    width: 100%;
    border-bottom: 1px dotted #191970;
 }
/* 最後はラインを描かない */
nav.globalMenuSp ul li:last-child {
    padding-bottom: 0;
    border-bottom: none;
 }
nav.globalMenuSp ul li a {
    display: block;
    color:#fff;
    padding: 1em 0;
 }

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
    transform: translateX(0%);
 }
.navToggle {
    display: block;
    position:absolute;    /* bodyに対しての絶対位置指定 */
    left: 14px;
    top: 16px;
    width: 30px;
    height: 30px;
    cursor: pointer;
    z-index:3000;
    text-align: center;
 }
.navToggle :hover{
    color: #ff0000;
} 
.navToggle span {
    display: block;
    position: absolute;    /* .navToggleに対して */
    width: 20px;
    border-bottom: solid 2px #666;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 6px;
 }
.navToggle span:nth-child(1) {
    top: 6px;
 }
.navToggle span:nth-child(2) {
    top: 12px;
 }
.navToggle span:nth-child(3) {
    top: 18px;
 }
	
/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
    top: 12px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
 }
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 12px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

/*******************************
*	TEXT
*******************************/
.item-center {text-align:center;}
.contact-net {padding-bottom:30px;}
.contact-net .subTi{padding-left:14px; font-size:24px;}
.textcenter  h1,
.textcenter  h1,
.textcenter  h1 {padding-bottom:80px;}
.bgblue h3 {font-weight: 700;}    
.bgblue h4 {margin-bottom:10px;}     
.textH1{margin-bottom : 80px;}
.textH2 {
  margin-top : 20px;
  margin-bottom : 30px;
 }
.textH3 {margin-bottom : 30px;}
.large_font {font-size: 28px; font-weight:700;}
.small_font {font-size: 14px; line-height: 1.2;} 
.small_font th{padding: 5px 10px; width:100px;}
.small_font td{padding: 5px;}
@media screen and (max-width: 768px) { 
.contact-net {padding-bottom:20px;}
.contact-net .subTi{padding-left:0px; font-size:16px;} 
 .contact-net .subTi:before{
  content: "\A" ;
  white-space: pre;
 }
.textcenter  h1, 
.textcenter  h1,
.textcenter  h1 {padding:20px 0 40px;}
.bggray h4,
.bgblue h4 {margin-bottom:20px;} 
.textH1{margin-bottom : 0;}
.textH2 {
  margin-top : 10px;
  margin-bottom : 20px;
 }
.textH3 {margin-bottom : 0;}
.large_font {font-size: 16px; font-weight:700;}
.small_font {
  padding: 0px 10px;  
  font-size: 10px;
 } 
}

/*******************************
*	NONE
*******************************/ 
.cmpBlockNone .item1-border,
.cmpBlockNone .btn1  {display:none;}

/*******************************
*	OTHER
*******************************/ 
.cmpFtLinkList .fa {padding-left:8px;} 
.cmpBtnList .fa {padding-right:4px;}
.cmpTittle {text-align:center;}
.cmpTittle h3{margin:10px 0 20px 0;} 
.bgwhiteR .title h1{padding-bottom:80px;}
.bgwhiteR .title p{font-size:18px; font-weight:500;}
.accordion_naviR span{font-weight:500; padding-left:10px;}

.cmpMgnLR {
  width: 960px;
 } 
.cmpMgnL {
  margin-right:30px;
 }
.cmpMgnL2 { 
  margin:0 0 0 50px;
 }
.cmpMgnR {
  margin-left:30px;
 }
.bgclear .contact{ 
  font-size:16px;
  color:#483D8B;
 }
.indenttext ul li {
  padding-left: 1.4em;
  text-indent: -1.4em;
  line-height:1.4;
  padding-bottom:10px; 
}
.indenttext h3,
.indenttext h5{
  padding-bottom:10px;
}
.indenttext  ul li h6{
  line-height:1.2; 
  font-weight:400;
  font-size: 14px;
  padding-bottom:10px;
}
.indenttext ul li small{
  line-height:1.2;
}

.rightjustified{
  text-align: right;
  font-size: 14px;
}
.smalltext {
  font-size:12px;
  line-height:1.2;
}
  
@media screen and (min-width: 1200px) {
.cmpMgnLR {  
  width:1100px;
  margin: 0px auto;  
 }
.news_table span{ margin:0 7% 0 5%;}
}
@media screen and (max-width: 767px) {
.cmpMgnLR {
  width:auto;
  margin: 0px 10px;  
 }
.cmpMgnL,
.cmpMgnL2,
.cmpMgnR  {margin: 10px 0 0; width:100%;}
.cmpjpAreaBG-GRAY{
  padding:20px 0;
 }
.bgclear .contact{ font-size:14px;}
.rightjustified{font-size: 10px;} 
.cmpTittle {text-align:left;}
.cmpTittle h3{margin:0;}
.bgwhiteR .title h1{padding: 40px 0;}
.bgwhiteR .title p{font-size:14px; font-weight:500; padding:0 10 0 0;}

.indenttext p{
  padding-left: 1.4em;
  text-indent: -1.4em;
  line-height:1.0;
 }
.indenttext h5{
  padding-bottom:10px;
 }
}

/* HOVER REVEAL */
.hvr-reveal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
}
.hvr-reveal:before {
  content: "";
  position: absolute;
  z-index:0;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  border-color: #2098D1;
  border-style: solid;
  border-width: 0;
  -webkit-transition-property: border-width;
  transition-property: border-width;
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-reveal:hover:before, .hvr-reveal:focus:before, .hvr-reveal:active:before {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  border-width: 4px;
}
.hb50 {margin-bottom:50px;}
.overlay_imgbg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: cover;
  opacity: 0.3;
} 
#anchor1 {
  margin-top : -80px;
  padding-top : 80px;
}
#anchor2 {
  margin-top : -80px;
  padding-top : 80px;
}
#anchor3 {
  margin-top : -80px;
  padding-top : 80px;
}
#anchor4 {
  margin-top : -80px;
  padding-top : 80px;
}
#anchor5 {
  margin-top : -80px;
  padding-top : 80px;
}
.arrow_white {
  position: absolute;
  top: 40%;
  right: 20px;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  display: block;
  width: 15px;
  height: 15px;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.arrow_gray:after {
  position: absolute;
  content: '';
  width: 6px;
  height: 6px;
  border-top: solid 2px #697b91;
  border-right: solid 2px #697b91;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 15px;
  margin-top: -3px;
}
.arrow_blue {  
  position: absolute;
  bottom: 10px; 
  right:0;
  font-size: 16px;
 }
.arrow_blue:after {
  content:  "\f105";
  font-family: FontAwesome;
  padding: 0 10px 0 6px;
  font-weight: normal;
  color: #0058ff;
  text-decoration: none;
  font-size: 20px;
}
.parent{
  width: 90%;
  height: 80px;
  margin:0 auto;
  position: relative;
  text-align:center;
}
.inner{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  border: 1px solid #ccc;
  margin: auto;
}
.down-arrow{
  margin: 0 auto;
  width: 0;
  height: 0;                                 
  border-style: solid;
  border-width: 50px 50px 0 50px;
  border-color: #F9F9F9 transparent transparent transparent;
 }
.down-arrow2{
  margin: 0 auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 50px 0 50px;
  border-color: #CCE1FF transparent transparent transparent;
}
p.radius {
  border: 2px solid gray;
  border-radius: 8px;
  margin: 0 5px 8px 5px;
  width: 94%;
  padding:5px;
  display: inline-block;
  font-size: 16px;
  text-align:center;
}
p.radius2 {  
  background-color:#F5F5F5; 
  border-radius: 6px;
  margin: 10px auto;
  width: 80%;
  padding:5px;
  display: inline-block;
  font-size: 16px;
}
.cmpphotwidth img{width: 100%;}
.scroll-announceR { margin-top:20%;}
.snsicon {
  display: block;
  text-align: right; 
  width: 98%;
 }
p.radius {
  font-size: 12px;
 }
.cmpglIso14,
.cmpglIso99 {
  margin-left: 12px;
  padding:2px 4px;
  font-size: 12px;
  line-height: 1.2;
  vertical-align:0.2em;
  white-space: nowrap;
 }
.cmpglIso14 { border: 2px solid #88C99C; }
.cmpglIso99 { border: 2px solid #7DCDF4; }

.bgblue,
.bggray,
.bgdarkgray, 
.bgwhite,
.BoxRetatedLinks {padding :80px 0;}

.bgwhiteR {
        padding :80px 0 0;
	box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
	-moz-box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
	-webkit-box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
	-o-box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
	-ms-box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
}
.bgclear {padding-top :50px;}
.BoxRetatedLinks h1{ padding-bottom :80px;}
.bgblue h2,
.bggray h2,
.bgwhite h2 {font-weight: 700;}

@media screen and (max-width: 767px) {
.cmpMgnLR h1.BoxRetatedLinks h1{
  padding-bottom:40px;
 }
.parent{
  width: 70%;
  height: 40px;
 }
.snsicon img{ width: 40px;}
.snsicon { 
  text-align: left;
  padding:10px 0;
 } 
.scroll-announce:after {
  font-size: 30px;
  bottom: -40px;
 }
.cmpglIso14,
.cmpglIso99 {
  margin:4px 0 0 5px;
  padding: 0px 4px;
  font-size: 10px;
  white-space: nowrap;
 }
.cmpglIso14 { border: 1px solid #88c99c; }
.cmpglIso99 { border: 1px solid #7dcdf4; }
.underline {
  border-bottom: solid 3px #87cefa;
 }
.bgblue,
.bggray,
.bgwhite,
.bgdarkgray, 
.BoxRetatedLinks {padding : 40px 0;}
.BoxRetatedLinks h1 {padding-bottom:50px;}
.bgwhiteR {padding : 20px 0 5px;}
.bgclear {padding : 10px 0 15px 0;}   
 }

/* ---------------------------------------------------背景付ボタン */
.TitleBG {
  position: relative;
  padding: 20px;
  overflow: hidden;
  list-style: none;
  background: #fbfbfb;
  width:100%;
 }
.TitleBG  .box{
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  width: 820px;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
 }
.textframe{
    padding: 0.5em 1em;
    color: #2c2c2f;
    background: #fff/*背景色*/
}
.textframe  p {
    margin: 0; 
    padding: 0;
}
.TitleBG  a{
  position: absolute;
  width: 100%;
  height: 100%;
  top:0;
  left: 0;
  text-decoration: none;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
 }
.TitleBG  a:hover{
  opacity:0.6;
  filter: alpha(opacity=60);
  -ms-filter: "alpha( opacity=60 )";
  background: #fff;
 }
@media print, screen and (max-width: 767px){  
.TitleBG  .box{
  width: 90%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
 }
}


/*******************************
*    	SCROLLBAR
*******************************/
div::-webkit-scrollbar{
  width: 10px;
 }
div::-webkit-scrollbar-track{
  background: #fff;
  border: none;
  border-radius: 5px;
  box-shadow: inset 0 0 2px #a0a0a0; 
 }
div::-webkit-scrollbar-thumb{
  background: #ddd;
  border-radius: 10px;
  box-shadow: none;
 }

/*******************************
*    	ACCORDION R
*******************************/

.accordion_naviR h3{
  padding:15px 0 10px 0;
 }
.displayNoneR {
  display: none;
 } 
.accordion_naviR h2:hover{
  color:#fff;
  cursor: pointer;
  background-color:#1e90ff;
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
 }
.switchR {
  cursor:pointer;
  font-weight: bold;
  padding:15px 45px 15px 15px;
  font-size: 24px;
  background: #eee;
  border-bottom: 1px solid #ccc;
  position: relative;
 }
.switchR:after {
  position: absolute;
  top: 60%;
  right: 20px;
  margin-top: -15px;
  content: " \f078";
  font-family: FontAwesome;
  font-size: 18px;
  font-weight: bold;
  color: #FF6685;
 }
.switchR.open:after {
  content: " \f077";
  font-family: FontAwesome;
  right: 19px;
 }
@media screen and (max-width: 767px) {
.accordion_naviR {
  margin-left: 0px;
 }
.accordion_naviR h2{font-size:16px;}
.switchR {
  font-size:14px;
 }
} 

/*******************************
*    	ACCORDION SP
*******************************/

.contentWrap_sp{
  padding:15px 0 10px 10px;
 }
.contentWrap_sp p{
  padding-left:14px;
 }
.displayNone_sp {
  display: none;
 }
.accordion_navi_sp h2:hover{
  color:#fff;
  cursor: pointer;
  background-color:#1e90ff;
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
 }
 .switch_home {
  cursor:pointer;
  padding:10px 45px 10px 10px;  
  color:#fff;
  border-bottom: 1px solid #000;
  position: relative;  
 } 
 .switch_home span{
  color:#fff;
 } 
.switch_sp {
  cursor:pointer;
  padding:15px 45px 15px 10px;
  color:#fff;
  position: relative;
 }
.switch_sp:after {
  position: absolute;
  top: 60%;
  right: 10px;
  margin-top: -15px;
  content: " \f078";
  font-family: FontAwesome;
  font-size: 18px;
  color: #FF6685;
 }
.switch_sp.open:after {
  content: " \f077";
  font-family: FontAwesome;
  right: 10px;
 }
@media screen and (max-width: 767px) {
.accordion_navi_sp  {
  margin-left: 0px;
 }
.accordion_navi_sp h2{font-size:16px;}
.switch_sp {
  font-size:14px;
 }
} 

/*******************************
*    	NETWORK
*******************************/  
.accordion_naviR .clo p{
  border: solid 1px #ccc;
 }
.cmpglDcateHead,
.cmpglDcateGroup,
.cmpglDcateAgent,
.cmpglDcateLicense {
  margin-bottom: 5px;
  padding-top: 10px;
  font-size: 14px;
 }
.cmpglDcateHead:before,
.cmpglDcateGroup:before,
.cmpglDcateAgent:before,
.cmpglDcateLicense:before {
  margin-right: 5px;
  content: " \f0c8";
  font-family: FontAwesome;
 }
.cmpglDcateHead { color: #0000ff; }
.cmpglDcateGroup { color: #e60012; }
.cmpglDcateAgent { color: #009944; }
.cmpglDcateLicense { color: #bc641d; }

p .Fac{color:#ff0000;}
p .Sal{color:#0058ff;}
p .Lic{color:#138659;}
p .Age{color:#c9b11d;}
p .Sto{color:#c421df;}

h5 .tel{padding-right: 12px;}
h5 .fax{padding-right: 22px;}
h5 .adjust{margin-left: 91px;}
      
.network {
  width: 100%;
 }
.network h3{
  font-weight: 700;
  padding-bottom: 0px;
 }
.network th{ 
  padding: 20px 20px 30px 20px;
  text-align: left;
  width: 80%;
 }
.network th p{
  line-height:1.2em;
  margin:10px 0;
  font-weight: normal;
 } 
 .network th small{
  line-height:1.0em;
  margin:0px 10px;
 }
.network td{  
  padding: 20px 0px 0px 0px;
  width: 20%;
 }
.net_btn a{
  display: inline-block;
  margin:5px 0;
  padding: 0.3em 0.5em;
  width: 100px;
  text-decoration: none;
  color: #505050;
  border: solid 2px #505050;
  border-radius: 3px;
  transition: .4s;
 }
.net_btn a:hover {
  background: #505050;
  color: white;
 }
.add {
  text-align: justify;
  line-height: 1.5;
  margin:10px 0;
 }
@media screen and (max-width: 767px) {
.network {
  width: 100%;
  border: 0px solid #999;
  margin: 0 10px;
  }
.network th {
  display: block; 
  margin-bottom:30px;
  padding:10px 0 0 0;
  width: 98%;
  font-weight:blod;
  border:none;
  text-align: left;
  font-size: 14px;
  }
.network td{
  display: block; 
  margin-bottom:30px;
  padding: 0px;
  width:100%;
  border: none;
  border-bottom; 1px solid #999;
  }
.net_btn a{
  display:block;
  margin:5px 0;
  padding: 0.1em 0.5em;
  width: 100%;
  text-decoration: none;
  color: #505050;
  border: solid 2px #505050;
  border-radius: 3px;
  transition: .4s;
 }
.tel{font-weight: 500;}
.fax{font-weight: 500;} 
.network h3{font-size:16px;}
.network h5{font-weight: 700;}
.network th small{
  display: block;
  padding-left: 90.5px;
  padding-bottom: 10px;
  font-weight: 500;
 }
.boxlink img{
  margin: 0px;
 }
.btn_flt{
  display: flex; 
  padding-bottom:30px;
 }
}

/* --------------------------------------FIX-BG*/  
.fixed-bg0 {
  position: relative;
  min-height: 900px;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  z-index: 1;
 }
.fixed-bg0 h2 {padding-top:20px;}  
 
.fixed-bg {
  position: relative;
  min-height: 100vh;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  z-index: 1;
 }
.fixed-bg1 {
  position: relative;
  min-height: 70vh;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  z-index: 1;
 }
.fixed-bg2 {
  position: relative;
  min-height: 50vh;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  z-index: 1;
 }
.fixed-bg2 h1,
.fixed-bg2 p {color:#fff;}
.fixed-bg3 {
  position: relative;
  min-height: 20vh;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  z-index: 1;
 }
.fixed-bgR {
  position: relative;
  min-height: 60px;
  background-size: cover; 
  background-position: center;
  z-index: 1;
 } 
.fixed-bg-content {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  width: 960px;
  margin: 0 auto;   
  padding-top:10px;
  text-align: center;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
 } 
.fixed-bg-box {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
 }
.fixed-bg-content h1{
  font-size: 30px;
  color: #fff;
 }
.fixed-bg-content h2{
  font-size: 2.0rem;
 }
 .fixed-bg-content .scroll-announce{ 
   position: absolute;
  left: 50%;
  top: 80%;
 }
.fixed-bg  li{
  color: #fff;
 }
 .fixed-bg p a{
  color: #fff;
 } 
.scroll-bg-content {
  width: 90%;
  max-width: 768px;
  margin: 0 auto;
 } 
.scroll-bg-content .network img {margin:0 10px;}
.scroll-bg-content .network h3 {padding-top: 20px;}
.scroll-bg-content .network th{ 
  padding-left:0px;
  width: 100%;
 } 
.fixed-bg0 .text {color:#fff;} 
.fixed-bg0 .text h1{text-align:center;}
.fixed-bg0 .text h3{border-bottom: 1px solid #fff;}
.fixed-bg0 .text .left-textbox p {font-size:14px; line-height:1.1}
.fixed-bg0 .text .left-textbox .item img{width:80%; margin-bottom:60px;}
.fixed-bg0 .text .left-textbox .item ul li{padding:0 20px;}
.fixed-bg0 .text .item img{width:30%;}

.bg01 {
  background-image: url(/library/common/img/bg/network-map.jpg);
 }
.bg01sp {
  background-image: url(/library/common/img/SP/network-map-sp.jpg);
 }
.bg02 {
  background-image: url(/library/common/img/bg/RandD.jpg);
 }
.bg02sp {
  background-image: url(/library/common/img/SP/RandD-sp.jpg);
 }
.bg03 {
  background-image: url(/library/global/img/contents/Tech_Support/coatings_support_en.jpg);
 }
.bg03sp {
  background-image: url(/library/common/img/SP/coatings_support_en-sp.jpg);
 }
.bgMC,
.bgYBC,
.bgCC,
.bgPC {
    background-position:center;    /* 画像の表示位置を指定 */
    background-size:cover;         /* 画像のサイズを指定  */
    width:100%;                    /* 横幅のサイズを指定  */
    height:220px;                  /* 縦幅のサイズを指定  */
}
.bgMC {
    background-image:url(/library/common/img/bg/MarineCoatings.jpg);
}
.bgYBC {
    background-image:url(/library/common/img/bg/YBCoatings.jpg);
}
.bgCC {
    background-image:url(/library/common/img/bg/ContainerCoatings.jpg);
}
.bgPC {
    background-image:url(/library/common/img/bg/ProtectiveCoatings.jpg);
}
.bgIC {
    background-image:url(/library/common/img/bg/IndusteialCoatings.jpg); 
    background-position:center top;
    background-size:cover; 
    width:100%;
    height:220px;
}
.bgFC {
    background-image:url(/library/common/img/bg/FunchionalCompounds.jpg);
    background-position:center top;
    background-size:cover;
    width:100%;
    height:220px;
}
.bg04 {
  background-image: url(/library/global/img/bg/bg04.jpg);
 } 
.bg_cmpmap {
  background-image: url(/library/common/img/bg/bg_cmpmap.jpg);
 }
.bg_pdcacysle {
  background-image: url(/library/common/img/bg/bg_pdcacysle.jpg);
  color:#fff;
 }
.bg_voyage {
  background-image: url(/library/common/img/bg/bg_voyage.jpg);
  color:#fff;
 }
.bg-color01 {
  background-color: #e7f0ff;
 }
.bg-color02 {
  background-color: #fbfcff;
 }
.bg-color03 {
  background-color: #202829;
  color: #ccc;
 }
.bg-color04 {
  background-color: #f9f9f9;
 } 
.item1,
.item2,
.item2R,
.item3 {
  display: flex;
  flex-flow: wrap;
  width: 100%;
  justify-content: space-between;
 }
.item1 li .fa {color:#164b9c; padding-right:10px;}
.item2 li .fa {color:#164b9c; padding-right:10px;}
.item2 .box { 
  border: 2px solid #e6e6e6;
  padding:20px 5px;
 }
.item1-border {
  display: flex;
 }
.item1-border >li {
  position: relative;   
  flex: left;
  width: 100%;
  text-align: center; 
  margin: 20px auto;  
  padding: 20px;
  border: 2px solid #e6e6e6;
  background-color:#fff;  
 }
.item1-borderR {
  display: flex;
 }               
.item1-borderR li {
  position: relative;   
  width: 100%;
  text-align: center; 
  margin: 20px 80px;
  border: 2px solid #e6e6e6;  
  background-color:#fff;  
 }
.item1 li{
  position: relative;
  flex: left;
  margin: 10px auto;
  width: 100%;
  text-align: center;
  padding: 20px 10px;
  background-color:#fff;     
 }
.item1C li{
  display: flex;
  position: relative; 
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 10px auto;
  width: 30%;
  text-align: center;   
  padding: 15px 10px; 
  color:#000;
  background-color:#fff;
  border-radius: 50px;
    -webkit-border-radius: 50px;/* for Safari and Chrome 対応*/
    -moz-border-radius: 50px;/* for Firefox 対応*/ 
 }
.item1R li{
  position: relative;
  flex: left;
  margin: 10px 0;
  width: 50%;
  text-align: center;   
  padding: 10px; 
  color:#000;
  background-color:#fff;
  border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
 }
.item2 li{
  position: relative;
  background: #fff;
  border: 1px solid #f7f7f7;
  margin: 10px 0;
  padding: 10px; 
  text-align: center;
  width:47%; 
 }
.item2R li{
  position: relative;
  flex: left;
  margin: 0.45em;
  width: 46%;
  text-align: center;
  padding:10px;
 }
.item3 li{
  position: relative;
  background: #fff;
  border: 1px solid #ccc;
  margin: 5px 0;
  padding: 20px 10px;
  text-align: center;
  width:30%;
 }
 
.hrborder {
  border-top: solid 2px #ddd; 
  padding:20px 0;
 }
.item2 li:nth-child(2n+1):last-child {
  margin-left: auto;
  margin-right: 54%;   
 }
.item3 li:nth-child(3n+2):last-child {
  margin-left: 0;
  margin-right: 33.7%;   
 }

.item4R {
  display: flex;
  flex-flow: wrap;
  width: 100%;
  justify-content: space-between;
 }
.item4R li{
  position: relative; 
  text-align: center;  
  background: #fff;
  border: 1px solid #ddd;
  width: 23%;
  margin-bottom: 10px;
  padding:20px 0;  
  z-index: 1;   
 }
.item4R li a{
  position: absolute;
  padding:20px;
  top: 0;
  left: 0;
  width: 80%;
  height: 70%;
  z-index: 2;   
 }
.item4R li:nth-child(4n+2):last-child {
  margin-left: auto;
  margin-right: 51.2%;
 }
.item4R li:nth-child(4n+3):last-child {
  margin-left: 0;
  margin-right: 25.5%;
 }
.clo li{
    display:inline-block;
}
.clo li a{ 
  display: block;
  position: absolute;
  padding: 10px;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
 } 
 
/* --------------------------------------------------- BUTTON */  

.btn1{
  display: flex;
  width: 100%;
 }
.btn2,            
.btn3,
.btn4 {
  display: flex;
  flex-flow: wrap;
  width: 100%;
  justify-content: space-between;
 }
.btn1 li .fa,
.btn2 li .fa  {color:#164b9c; padding-right:10px;}

.btn1 li{width:100%;} 
.btn2 li{width:48%;} 
.btn3 li{width:32%;}
.btn3 li:nth-child(3n+2):last-child {
  margin-left: 0;
  margin-right: 34%;   
 } 
.btn4 li{width:24%;} 
.btn4 li:nth-child(4n+2):last-child {
  margin-left: auto;
  margin-right: 51.2%;
 }
.btn4 li:nth-child(4n+3):last-child {
  margin-left: 0;
  margin-right: 25.5%;
 }

.btn-mod,
a.btn-mod{ 
    display: block;
    width:100%;
    padding: 20px 10px; 
    margin-bottom: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: #fff;
    border: 2px solid #e6e6e6;
    text-align: center;
    text-transform: none;
    text-decoration: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000);  
    -moz-transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000); 
    -o-transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -ms-transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000); 
    transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000);
}
.btn-mod:hover,
.btn-mod:focus,
a.btn-mod:hover,
a.btn-mod:focus{
    color: #fff;
    background-color:#1e90ff;
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
    text-decoration: none;
    outline: none;
}

.btn-modR,
a.btn-modR{ 
    display: block;
    width:100%;
    padding: 20px 10px; 
    margin-bottom: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #9FA0A0;
    text-align: center;
    text-transform: none;
    text-decoration: none;
    border-radius: 7px;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    -webkit-transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000);  
    -moz-transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000); 
    -o-transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -ms-transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000); 
    transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000);
}
.btn-modR:hover,
.btn-modR:focus,
a.btn-modR:hover,
a.btn-modR:focus{
    color: #fff;
    background-color:#9FA0A0;
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
    text-decoration: none;
    outline: none;
}

@media screen and (max-width: 767px) {  
.fixed-bg0 {min-height: 1000px;}
.fixed-bg-content {width: 100%;} 
.fixed-bg .text .item img{width:50%; padding-bottom:20px;}

.item1 li,
.item2 li,
.item2R li{
  display:block;
  width: 100%;          /* フレックスボックスを解除 */
  padding:10px 20px;
  font-weight:700;
 }
 .item1R li {
  width: 96%;
  text-align: center;   
  padding: 10px;
  font-size:12px;
 }
.item1C li {
  width: 20%;
  padding: 8px; 
 }

.item1-border li {
  padding: 10px;
 }
.item3 li { 
  padding: 10px;
  background-color:#fff;
  font-size: 14px;
  flex: left;
  flex-direction: column;
  flex-flow: row;
  justify-content: space-between;
  width: 100%;
  text-align: center;  
  line-height: 1.2;  
 } 
 
.fixed-bg0{
  padding-top:20px;
 }
.fixed-bg0 img{
  width: 70%;
 } 
.fixed-bg2 {
  min-height: 70vh;
 }
 .fixed-bg3 {
  min-height: 50vh;
 } 
.item3 li:nth-child(3n+2):last-child {
  display:none;  
 }  
 
.item4R li { 
  display:block;
  width:100%; 
  margin: 5px auto;
  padding:10px 0; 
  font-size: 12px;
  line-height: 1.2;  
 }
 
.item4RR li { 
  margin: 5px auto;
  padding:10px 0; 
  width:47%; 
  font-size: 12px;
  line-height: 1.2;  
 }
.item4R li:nth-child(4n+2):last-child {
  margin-left: 0;
  margin-right: 0;
 }
.item4R li:nth-child(4n+3):last-child {
  margin-left: 0;
  margin-right:0;
 }
 
 .btn2 li,
 .btn3 li{
  display:block;
  width: 100%;          /* フレックスボックスを解除 */
  padding:0px;
 }
 .btn3 li:nth-child(3n+2):last-child {
  display:none;  
 }
 .btn4 li{width:48%;} 
 .btn4 li:nth-child(4n+2):last-child {
  margin-left: 0;
  margin-right: 0;
 }
 .btn4 li:nth-child(4n+3):last-child {
  margin-left: 0;
  margin-right: 0;
 }

 .btn-mod,
a.btn-mod{ 
    padding:10px; 
    margin-top:8px;
}
.btn-modR,
a.btn-modR{
   font-size:14px;
}
 
 
}
@media screen and (max-width: 480px) { 
.fixed-bg-content  h1{font-size:20px;}
.item1C li {width: 60%;}  
}

/*******************************
*	TABLE 
*******************************/

/* --------------------------------------------------- TAB */
.bgbottomline{
  background: linear-gradient(transparent 97%, #fff 0%);  
 }
/*タブの中身を初期非表示に*/
.ChangeElem_Panel {
  display: none; 
 }
/*タブを横並べに*/
.ChangeElem_Btn_Content {
  display: flex;
  justify-content: space-around;
  border-bottom: #f0f0f0 5px solid; 
 }
/*通常時のタブ装飾*/
.ChangeElem_Btn {
  border: none;
  box-sizing: border-box;
  color: #666;
  background-color: #fcfcfc;
  cursor: pointer;
  display: inline-block;
  flex: 1;
  font-size: 1.2rem;
  margin: 0 20px;
  padding:20px 2px;
  position: relative;
  transition: all .3s ease-in-out;
  vertical-align: middle;
 }
/*カレントとホバー時のタブ装飾*/
.ChangeElem_Btn:hover,
.ChangeElem_Btn.is-active {
  border-bottom: none;/*下線*/  
  background-color: #fff;
  color: #333;
  outline:none; 
  border-bottom: #1d60c9 5px solid;
 } 
@media screen and (max-width: 767px) {
.ChangeElem_Btn_Content {
  border-bottom: #f0f0f0 2px solid; 
 }
.ChangeElem_Btn {
  border: none;
  box-sizing: border-box;
  color: #666;
  background-color: #fcfcfc;
  cursor: pointer;
  display: inline-block;
  flex: 1;
  font-size: 0.96rem;
  font-weight:600;
  margin: 0 10px;
  padding:10px 2px;
  position: relative;
  transition: all .3s ease-in-out;
  vertical-align: middle;
 }

}

/*******************************
*	TABLE 2
*******************************/
/* --------------------------------------------------- TABLE SCROLL */

@media screen and (max-width: 767px) {
/*tableをスクロールさせる*/
/*tableのセル内にある文字の折り返しを禁止*/
.table-scroll table {
  overflow: auto;
  white-space: nowrap;
  display:block;
  width:auto;
 }
.table-scroll table tbody {
  width: 100%;
  display:table;
 }
/*tableにスクロールバーを追加*/
.table-scroll table::-webkit-scrollbar {
  height: 5px;
 }
/*tableにスクロールバーを追加*/
.table-scroll table::-webkit-scrollbar-track {
  background: #F1F1F1;
 }
/*tableにスクロールバーを追加*/
.table-scroll table::-webkit-scrollbar-thumb {
  background: #BCBCBC;
 }
}
/* --------------------------------------------------- COLUMN */
.boxlink a {
  display: block;
  width: 100%;
  height: 100%;
 }
.boxlink img{
  margin: 10px 0px;
 }
.one{
  float: left;
  width: 30%;
  margin: 0 10% 0 10%;
  padding: 10px 0px 10px;
  background-color: #fff;
  text-align: center;
 }
.two{
  float: left;
  width: 30%;
  margin: 0 10% 0 10%;
  padding: 10px 0px 10px;
  background-color: #fff;
  text-align: center;
 }
@media screen and (max-width: 767px) {
.boxlink img{
  margin: 0px;
 }
.one{
  float: left;
  width: 48%;
  margin: 0 2% 0 0;
  padding: 0px;
  background-color: #fff;
  text-align: center;
 }
.two{
  float: left;
  width: 48%;
  margin: 0 0 0 2%;
  padding: 0px;
  background-color: #fff;
  text-align: center;
 }
}

/* --------------------------------------------------- COLUMN2 */
.boxlink2 {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #f2f2f2;
 }
.boxlink2 img{
  margin: 10px 0px;
 }
.boxlink2 .btn{
  width: 210px;
  text-align: center;
 }
.one2{
  float: left;
  width: 28%;
  padding: 10px 0px 10px;
  text-align: center;
 }
.two2{
  float: left;
  width: 68%;
  margin: 6% 0 0 2%;
  padding: 10px 0px 10px;
  text-align: left;
 }
@media screen and (max-width: 767px) {
.boxlink2 img{
  margin: 10px 0 0;
 }
.boxlink2 .btn{
  width: 100%;
 }
.boxlink2 .ebook{
    display:none;
 }
.one2{
  float: left;
  width: 32%;
  margin: 0 2% 0 0;
  padding: 0px;
  text-align: center;
 }
.two2{
  float: left;
  width: 64%;
  margin: 20px 0 0 2%;
  padding: 0px;
  text-align: left;
 }
}
/* --------------------------------------------------- STANDARD*/
.table_standard{
  border-collapse: collapse;
  width: 100%;   
  line-height:1.2;
 }
.table_standard th,
.table_standard td {
  padding: 10px;
  font-size: 16px;
  border: 1px solid #999;
 }
.table_standard th {
  background-color: #eee;
  text-align: center;
  width: 5%;
 } 
 /* --------------------------------------------------- BASE*/
.tableBase {
  border-collapse: collapse;
  width: 100%; 
  line-height:1.4;
  text-align: left; 
 }
.tableBase th,
.tableBase td  {
  border: #e3e3e3 1px solid;
  padding: 24px;
 }
.tableBase th {
  background-color: #eee; 
 } 
.tableBase .wt10 th {width:10%;} 
.tableBase .wt15 th {width:15%;}
.tableBase .wt20 th {width:20%;}
.tableBase .wt30 th {width:30%;}
.tableBase th.t_top {
  border-top: #be1309 4px solid;
 }
.tableBase td.t_top {
  border-top: #b3b3b3 4px solid;
 }
.tableBase td img {
  width:100%;
 }
.tableBase .cellR {
  font-weight: bold;
  width: 15%;
 }
@media screen and (max-width: 767px) {
.tableBase th {
  display: block;
  border: none;
  padding: 10px;
 }
.tableBase .wt10 th, 
.tableBase .wt15 th,
.tableBase .wt20 th,
.tableBase .wt30 th{width:100%;}
.tableBase td {
  display: block;
  border: none;
  width: 100%;
  margin-bottom:10px;
  padding:5px;
  font-size:14px;
 }
.tableBase th.t_top {
  border-top: none;
 }
.tableBase td.t_top {
  border-top: none;
 }
}
/* --------------------------------------------------- BASE*/
.simpletable {
  border-collapse: collapse;
  width: 100%; 
  line-height:1.4; 
 }
.simpletable th,
.simpletable td  {
  border: #e3e3e3 1px solid;
 }
.simpletable th {
  padding: 28px;
  background-color: #eee;
  text-align:left; 
  width: 14%;
 }
.simpletable td {
  padding: 20px 10px;
 }
.simpletable th.t_top {
  border-top: #be1309 4px solid;
 }
.simpletable td.t_top {
  border-top: #b3b3b3 4px solid;
 }
.simpletable .cellR {
  text-align: left;
  font-weight: bold;
  width: 15%;
 }
@media screen and (max-width: 767px) {
.simpletable th {
  display: block;
  border: none;
  width: 100%; 
  padding: 10px;
 }
.simpletable td {
  display: block;
  border: none;
  width: 100%;
 }
.simpletable th.t_top {
  border-top: none;
 }
.simpletable td.t_top {
  border-top: none;
 }
}
/* --------------------------------------------------- STANDARD-R (th width15) */
.simpletableR {
  border-collapse: collapse;
  width: 100%;
 }
.simpletableR th,
.simpletableR td {
  padding: 10px;
  border: 1px solid #999;
 }
.simpletableR th {
  background-color: #eee;
  text-align: center;
  width: 15%;
 }
.simpletableR .cellR {
  text-align: left;
  font-weight: bold;
  width: 15%;
 }
@media screen and (max-width: 767px) {
.simpletableR {
  border-collapse: collapse;
  width: 100%;
 }
.simpletableR th,
.simpletableR td {
  padding: 5px;
  border: 1px solid #999;
 }
.simpletableR th {
  background-color: #eee;
  text-align: left;
  width: 5%;
 }
.simpletableR  .cellR {
  text-align: left;
  font-size: 15px;
  font-weight: normal;
  width: 8%;
 }
}
/* --------------------------------------------------- DIRECTOR */    
.directors_list {
  width: 100%;
  line-height:1.2;
 }
.directors_list th,
.directors_list td { 
  text-align: left;
  padding: 20px 5px;
  border-bottom: 1px solid #999; 
 }
.directors_list td img{width:20%;}
.directors_list th {
  font-weight: 500;
  width: 20%;
 }
.directors_list .cell {
  font-size:18px;
  font-weight: bold;
  width: 25%;
 }
.directors_list .cellR {
  font-weight: 500;
  width: 55%;
 }
@media screen and (max-width: 767px) {
.directors_list {
  border-top: 0px solid #999;  
 } 
.directors_list th {
  display:block;
  background-color: #eee;
  width: 100%;
  border:none; 
  padding: 2px 5px;
  font-size:14px;
 }
.directors_list td {
  display:block;
  width: 98%;
  border:none;
  padding: 5px 5px;
 }
.directors_list .cell {
  width: 98%;
  font-weight: bold;
  font-size: 1.2em;
  border:none;
 }
.directors_list td img{width:25%; text-align:right;}
.directors_list .cellR {
  width: 90%;
  color: #777;
  font-weight: 500;
  font-size: 1.0em;
  margin-bottom:20px;
  border:none;
 }
}
/* --------------------------------------------------- STANDARD*/
.standard {
  border-collapse: collapse;
  width: 100%; 
  margin: 10px 0;
 }
.standard th,
.standard td {
  padding: 10px 5px 0;
  vertical-align:top;
 }
.standard th {
  text-align: left;
  width: 80px;
 }
.standard td {
  text-align: left;
 }
@media screen and (max-width: 767px) {
.standard th{padding: 0px;}
.standard td{padding: 0 10px 20px 0;}
.standard td {
  display: block;
  border: none;
  width: 100%;
  text-align: left;
 }
.standard th {
  display:block;
  width: 100%;
  text-align: left;
 }
}
/* --------------------------------------------------- ISO */
.iso {
  border-collapse: collapse;
  width: 100%;
  text-align: left;
 }
.iso .center{text-align: center;} 
.iso .col-item img{width: 50%;} 
.iso th,
.iso td {
  padding: 10px 20px;
  border: 1px solid #999;
 }
.iso th {
  background-color: #eee;
  width: 30%;
 }
.iso td {
  width: 70%;
 }
 .iso img{
  border: 1px solid #a0a0a0;
 }
@media screen and (max-width: 767px) {
.iso th,
.iso td {
  display: block;
  border:none; 
  width: 100%;  
  font-size:14px; 
}
.iso th{
  font-weight:400;
  padding: 5px 10px;
 }
.iso td {
  padding: 10px;
 }
.iso .col-item p{line-height:0.9em;} 
}  

/* --------------------------------------------------- ISO list */
.isolist {
  border-collapse: collapse;
  width: 100%;
 }
.isolist .pT10 {padding-top:10px;}
.isolist th,
.isolist td {
  padding: 10px 20px;
  border: 1px solid #999; 
 }
.isolist th {
  background-color: #eee;
  width: 20%;
  text-align: center;
 }

.isolist td .list{
  display: flex;
  width: 100%;
  line-height:1.0em;
 }
.isolist td .item1{width: 80%;}
.isolist td .item2{width: 20%; font-size:14px;}
 
@media screen and (max-width: 767px) { 
.isolist th{
  display: block;
  border:none; 
  width: 100%;
  padding: 5px;  
  text-align: left;
 }
.isolist td {
  border-top:none; 
  border-left:none;
  border-right:none;
  border-bottom:1px solid #999;
  width: 98%;
  display: block;
  padding: 5px; 
 }
.isolist td .list{  display: block;}
.isolist td .item1{
  display: block; 
  width:98%;
  font-weight:700;
 }
.isolist td .item2{
   display: block;
   width:98%;
  text-align: right;
 }
.isolist .pT10 {padding-top:0px;}
} 



/* --------------------------------------------------- RESULTS */
.ir_results  {
  width: 100%;
  background-color: #fff; 
 }
.ir_results th{
  padding: 12px 0px 10px 10px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  text-align: left;
  font-weight:400;
  width: 20%;
 }
.ir_results td{
  padding: 12px 0px 10px 5px;
  border-style: solid; /* 枠の種類 */
  border-color: #cC0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  font-weight:500;
  text-align: left;
 }
.ir_results .large{
  padding: 12px 0px 10px 20px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  font-weight:500;
  font-size:18px;
  text-align: left;
 }
.ir_results.ircell{
  width: 30%;
 }
.ir_results img[src$="icon_ir.png"] {
  width: 35px;
  height: 40px;
 }
@media screen and (max-width: 767px) {
.ir_results {
  border-top: 1px solid #999;
 }
.ir_results th {
  display: block;
  padding: 4px 5px 2px 10px;
  background-color: #fafafa;
  width: 100%;
  font-size: 14px;
  border:none;
 }
.ir_results td {
  display: block;
  padding: 3px 5px 4px 10px;
  text-align: left;
  border-top: none;
  border-bottom; 1px solid #999;
  font-size: 14px;
 }
.ir_results .ircell{
  display: none;
 }
.ir_results img{
    display: none;
 }
}
/* --------------------------------------------------- EARNINGS */ 
.earnings {
  width: 90%;
  background-color: #fff;
}
.earnings th{
  padding: 12px 0px 10px 10px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  text-align: left;
  font-weight:700;
  width: 125px;
}
.earnings td{
  padding: 12px 0px 10px 5px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  font-weight:500; 
  text-align: left;
}
.earnings a{
    display:block;
    width:100%;
    height:100%;
} 
.earnings a:hover {
    color: #f49d9d;
}
.earnings .large{
  padding: 12px 0px 10px 20px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  font-weight:500;
  font-size:18px;
  text-align: left;
}
.earnings .ircell{
  width: 20%;
}

.earnings .ircell a {
    display:block;
    width:100%;
    height:100%;
} 

.earnings img[src$="icon_ir.png"] {
    width: 35px;
    height: 40px;
}

.earnings a[class="pbOpenNewWindow"]:after{
    content: "\f1c1";
    font-family: FontAwesome;
    padding: 0 0 0 10px;
    font-weight: normal;
    color: #cc0000;
    text-decoration: none;
}


@media screen and (max-width: 767px) {
.earnings {  
    width: 100%;
    border-top: 1px solid #999;
  }
.earnings th {
    display: block;
    padding: 4px 5px 2px 10px;
    background-color: #fafafa;
    width: 100%;
    font-size: 14px;
    border:none;
  }
.earnings td {
    display: block;
    padding: 3px 5px 4px 10px;
    text-align: left;
    border-top: none;
    border-bottom; 1px solid #999;
    font-size: 14px;
  }
.earnings .ircell{
    display: none;
  }
.earnings img{
    display: none;
  }
}

/* --------------------------------------------------- IR Calendar */
.ir_calendar {
  width: 100%;
 }
.ir_calendar th{
  padding: 12px 20px 10px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  text-align: left;
  font-weight:700;
  width: 15%;
 }
.ir_calendar td{
  padding: 12px 10px 10px 5px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  font-weight:500;
  text-align: left;
 }
@media screen and (max-width: 767px) {
.ir_calendar {
  width: 100%;
  border: 0px solid #999;
 }
.ir_calendar th {
  display: block;
  margin-top:15px;
  padding: 5px 5px 5px 10px;
  background-color: #eee;
  width: 100%;
  font-size: 17px;
  font-weight:blod;
  border:none;
  text-align: left;
 }
.ir_calendar td{
  display: block;
  padding: 3px 7px 4px 10px;
  width: 96%;
  text-align: left;
  border: none;
  border-bottom; 1px solid #999;
 }
}
/* --------------------------------------------------- TOCOLOGY */
.tecnology {
  width: 100%;
}
.tecnology th{
  padding: 12px 20px 10px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  text-align: left;
  font-weight:700;
  width: 25%;}
.tecnology td{
  padding: 12px 10px 10px 5px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  font-weight:500;
  text-align: left;
 }
.tecnology .tecnologycell{
  width: 10%;
 }
@media screen and (max-width: 767px) {
.tecnology {
  width: 100%;
  border: 0px solid #999;
 }
.tecnology th {
  display: block;
  margin-top:15px;
  padding: 5px 5px 5px 10px;
  background-color: #eee;
  width: 100%;
  font-size: 17px;
  font-weight:blod;
  border:none;
  text-align: left;
 }
.tecnology td{
  display: block;
  padding: 3px 7px 4px 10px;
  width: 96%;
  text-align: left;
  border: none;
  border-bottom; 1px solid #999;
 }
.tecnology .tecnologycell{
  display: none;
 }
}
/* --------------------------------------------------- TOCOLOGY2 */
.tecnology2 {
  width: 100%;
 }
.tecnology2 th{
  padding: 12px 20px 10px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  text-align: left;
  font-weight:700;
  width: 32%;
 }
.tecnology2 td{
  padding: 12px 10px 10px 5px;
  border-style: solid; /* 枠の種類 */
  border-color: #c0c0c0; /* 枠の色 */
  border-width: 1px 0px; /* 枠の幅 */
  font-weight:500;
  text-align: left;
 }
@media screen and (max-width: 767px) {
.tecnology2 th {
  display: block;
  margin-top:15px;
  padding: 5px 5px 5px 10px;
  background-color: #eee;
  width: 100%;
  font-size: 17px;
  font-weight:blod;
  border:none;
  text-align: left;
 }
.tecnology2 td{
  display: block;
  padding: 3px 7px 4px 10px;
  width: 96%;
  border:none;
  text-align: left;
 }
.tecnology2 .bor{
  border-top: 1px solid #999;
 }
}
/* --------------------------------------------------- NETWORK */
.networkadd {
  border-collapse: collapse;
  width: 100%;
 }
.networkadd span{
  padding-right: 24px
 }
.networkadd th,
.networkadd td {
  padding: 10px 20px;
  border: 1px solid #999;
 }
.networkadd th {
  background-color: #eee;
  text-align: center;
  width: 20%;
 }
.networkadd .cell {
  text-align: center;
  font-weight: bold;
  width: 14%;
 }
.networkadd .cell .fa {
  text-align: center;
  font-weight: bold;
  font-size: 1.4em;
 }
.networkadd .cellR {
  text-align: left;
  font-weight: bold;
  width: 10%;
 }
@media screen and (max-width: 767px) {
.networkadd {
  border-top: 0px solid #999;
  width: 97%;
  font-size: 15px;
 }
.css-br:after {
  content: "\A" ;
  white-space: pre;
}
.networkadd td {
  display:block;
  padding: 5px;
  width: 100%;
  border:none;
 }
.networkadd th {
  display:block;
  padding: 5px 10px;
  width: 96%;
  text-align: left;
 }
.networkadd .cell {
  text-align: left;
  font-weight: bold;
  width: 100%;
 }
.networkadd .cellR {
  text-align: right;
  font-weight: bold;
  font-size: 1.2em;
  margin-bottom:30px;
 }
}
/* --------------------------------------------------- GROUP*/
.group_other  {
  width: 100%;
  background-color: #fff;
 }
.group_other th{
  padding: 12px 0px 10px 10px;
  border-style: solid;
  border-color: #c0c0c0;
  border-width: 1px 0px;
  text-align: left;
  font-size: 1.2em;
  font-weight:700;
  width: 88%;
 }
.group_other2 {
  padding: 10px 0px;
  text-align: center;
  font-size: 1.0em;
  width: 100%;
 }
.group_other td{
  padding: 12px 0px 10px 5px;
  border-style: solid;
  border-color: #c0c0c0;
  border-width: 1px 0px;
  font-weight:500;
  text-align: left;
 }
@media screen and (max-width: 767px) {
.group_other {
  border-top: 1px solid #999;
 }
.group_other th {
  display: block;
  padding: 4px 0px 2px 5px;
  background-color: #fafafa;
  width: 100%;
  font-size: 1.0em;
  border:none;
 }
.group_other  td{
  display: block;
  padding: 3px 0px 4px 5px;
  text-align: left;
  font-size: 0.8em;
  border-top: none;
  border-bottom; 1px solid #999;
 }
}
/* --------------------------------------------------- DATASHEET */
.datasheet_box {
  text-align:left;
  margin: 0px auto 100px;
  width:600px;
 } 
.datasheet {
  width: 100%;
  background-color: #fff;
 }
.datasheet th{
  padding: 12px 20px 10px;
  border-style: solid;
  border-color: #c0c0c0;
  border-width: 1px 0px;
  font-size: 16px;
  text-align: left;
  font-weight:700;
  width: 26%;
 }
.datasheet td{
  padding: 10px;
  border-style: solid;
  border-color: #c0c0c0;
  border-width: 1px 0px;
  font-size: 14px;
  font-weight:500;
  text-align: left;
 }
.datasheet .datasheetcell{
  width: 5%;
 }
.datasheet .datasheetcellR {
  width: 34%;
  padding-bottom:20px;
  text-align: center;
 }
.datasheet img{
  width: 35px;
  height: 40px;
 }
@media screen and (max-width: 767px) {
.datasheet_box {
  text-align:left;
  margin: 0px auto 100px;
  width:100%;
 } 
.datasheet {
  width: 98%;
  border: 0px solid #999;
 }
.datasheet th {
  display: block;
  margin-top:14px;
  padding: 4px;
  background-color: #eee;
  width: 100%;
  font-size: 16px;
  font-weight:blod;
  border:none;
  text-align: left;
 }
.datasheet td{
  display: block;
  padding: 1px 0px 2px 5px;
  font-size: 12px;
  text-align: left;
  border: none;
  border-bottom; 1px solid #999;
 }
.datasheet .datasheetcell{
  display: block;
  padding: 3px 0px 4px 5px;
  width: 100%;
  text-align: left;
  border: none;
  border-bottom; 1px solid #999;
 }
.datasheet .datasheetcellR {
  display: block;
  margin: 14px auto;
  padding: 3px 0px 4px 5px;
  width: 100%;
  text-align: center;
  border: none;
  border-bottom; 1px solid #999;
 }
.datasheet img{
  width: 10%;
  height: 10%;
 }
}
/* --------------------------------------------------- SEAJET */
.datasheetR {
  width: 100%;
  background-color: #fff;
  word-break: break-all;
 }
.datasheetR th{
  padding: 12px 20px 10px;
  border-style: solid;
  border-color: #c0c0c0;
  border-width: 1px 0px;
  font-size: 18px;
  text-align: left;
  font-weight:700;
  width: 25%;
 }
.datasheetR td{
  padding: 12px 0px 10px 5px;
  border-style: solid;
  border-color: #c0c0c0;
  border-width: 1px 0px;
  font-weight:500;
  text-align: left;
 }
.datasheetR .datasheetcellR {
  width: 20%;
  padding-bottom:20px;
  text-align: center;
 }
.datasheetR img{
  width: 35px;
  height: 40px;
 }
@media screen and (max-width: 767px) {
.datasheetR {
  width: 98%;
  border: 0px solid #999;
  word-break: break-all;
 }
.datasheetR th {
  display: block;
  margin-top:15px;
  padding: 5px;
  background-color: #eee;
  width: 100%;
  font-size: 14px;
  font-weight:blod;
  border:none;
  text-align: left;
 }
.datasheetR td{
  display: block;
  padding: 3px 0px 4px 5px;
  text-align: left;
  border: none;
  border-bottom; 1px solid #999;
 }
.datasheetR .datasheetcellR {
  display: block;
  padding: 3px 0px 4px 5px;
  width: 100%;
  text-align: left;
  border: none;
  border-bottom; 1px solid #999;
 }
.datasheetR img{
  width: 10%;
  height: 10%;
 }
}
/* ---------------------------------------------------  Fact Sheet */
.factsheet {
  border-collapse: collapse;
  width: 100%;  
 }
.factsheet h3{
  padding-top:10px;
  font-weight:700;
 }
.factsheet th,
.factsheet td {
  padding: 10px 20px;
  border: 1px solid #999;
 }
.factsheet th {
  background-color: #eee;
  text-align: center;
  width: 20%;
  line-height: 1.4;} 
 }
.factsheet th {
  width: 80%;
 }
.factsheet .netsale img{
  text-align: center; 
  padding-top:24px;
  width:80%;
 }
.factsheet th.t_top {
  border-top: #be1309 4px solid;
 }
.factsheet td.t_top {
  border-top: #b3b3b3 4px solid;
 }
.factsheet .textheight{
   margin:10px 0;
 }
@media screen and (max-width: 767px) {
.factsheet {
  border-top: 0px solid #999;
  width: 98%;
  }
.factsheet br{
  display: block;
 }
.factsheet td {
  display:block;
  padding: 10px 15px;
  width: 98%;
  border:none;
 }
.factsheet th {
  display:block;
  padding: 5px 15px;
  width: 98%;
  text-align: left;
  border:none;
 }
.factsheet td.t_top {
  border-top: none;
 }
.factsheet .netsale img{
  width:100%;
 } 
}
/* --------------------------------------------------- New Table */
.responsive {
  border-collapse: collapse;
  width: 100%;
 }
.responsive th,
.responsive td {
  border: 1px solid #ddd;
  background-color: #fff;
  padding: 10px;
  text-align: center;
 }
.responsive .texttittle {
  font-weight:600;
 }
.responsive th p {
  font-weight:400;
  font-size: 14px;
 }
.responsive td .text-center {
  text-align: center;
  padding: 0px 10px;
  width: 200px;
  font-weight:600;
 }
.responsive td.text-left {
  text-align: left;
  padding: 10px;
  width: 200px;
  font-weight:600;
}
.responsive td h3{
  padding-bottom: 20px;
}


@media (max-width: 767px) {
.responsive {
  border-collapse: separate;
  border-spacing: 0  20px;
 }
.responsive thead {
  display: none;
 }
.responsive tr {
  background-color: #f6f6f6;
  padding: 5px;
 }
.responsive td {
  border: none;
  display: block;
  width: 100%;
  box-sizing: border-box;
  border-bottom: 1px solid #ddd;
  text-align: left;
  padding: 5px;
 }
.responsive td.col-6 {
  float: left;
  width: 50%;
 }
.responsive td.text-center {
  text-align: left;
  padding: 10px 5px;
  width: 100%;
  font-size: 18px;
 }
.responsive td.text-left {
  text-align: left;
  padding: 10px 5px;
  width: 100%;
  font-size: 18px;
 }
.responsive td:before {
  content: attr(data-title) " ";
 }
.responsive .clear {
   clear: both;
  }
}

/*******************************
*    	COLUMN
*******************************/ 

/* --------------------------------------TEXTBOTTON*/
.textbtn2{
  display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  width: 200px;
 }
.textbtn2 li {
  position: relative;
  background: #fff;
  border: solid 2px #f7f7f7;
  margin-bottom:5px;
  padding: 20px 10px;
  text-align: center; 
  width: 100%;
 }

@media screen and (max-width: 767px) {  
.textbtn2 {
  width: 96%;
 } 
.textbtn2 li  {
  width: 40%; 
  font-weight:600;
 }
}  
/* --------------------------------------TITTLEBOX*/
.tittlebox3 {
  display: flex;
  flex-flow: wrap;
  width: 100%;
  justify-content: space-between;
 }

.tittlebox3 img {
  width: 100%;
 }
.tittlebox3 li {
  position: relative;
  background: #fff;
  border: 1px solid #ddd;
  margin-bottom: 20px; 
  width: 32%;
 }
.tittlebox3 li a {
  position: absolute;   
  padding:20px;
  top: 0;
  left: 0;
  width: 94%;
  height: 94%;
 }
.tittlebox3 li a:hover{
  width: 94%;
  height: 94%;
  background:rgba(255,255,255,0.2);
 }
.tittlebox3 li h3 {
  padding: 29px 10px;
  font-weight: 700;  
  text-align:center;
 }

@media screen and (max-width: 767px) {
.tittlebox3 li {
  border: 1px solid #ddd;
  margin: 0.2em;
  width: 100%;
 }
.tittlebox3 li a {
  width: 96%;
  height: 96%;
 }
.tittlebox3 li a:hover{
  width: 96%;
  height: 92%; 
 }
}
/* --------------------------------------ITEMBOX*/  
.itembox2,
.itembox3,
.itembox3R,
.itembox4 {
  display: flex;
  flex-flow: wrap;
  width: 100%;
  justify-content: space-between;
 }
.itembox2 li,
.itembox3 li,
.itembox4 li {
  position: relative;
  background: #fff;
  border: 1px solid #ddd;
  margin-bottom: 40px;  
  z-index: 1;   
 }
 .itembox3R li {
  position: relative;
  background: #fff;
  margin-bottom: 40px;  
  z-index: 1;   
 }
.itembox3 li .box{  
  display: flex;
  justify-content: center;
  align-items: center;
  height:100px; 
 }
.itembox3 li .box h3{ 
  display: block;
  width: 90%;
  text-align:center; 
  margin-bottom:10px;
 }
.itembox2 li {width: 46%;}
.itembox3 li,
.itembox3R li {width: 30%;}
.itembox4 li {width: 23%;}  

.itembox2 li a,
.itembox3 li a,
.itembox4 li a{
  position: absolute;   
  padding:20px;
  top: 0;
  left: 0;
  width: 94%;
  height: 94%;
  z-index: 2;   
 }
.itembox2 li a:hover,
.itembox3 li a:hover,
.itembox4 li a:hover{  
  width: 94%;
  height: 94%;
  background:rgba(255,255,255,0.2); 
 }
.itembox2 img,
.itembox3 img,
.itembox3R img,
.itembox4 img{width: 100%;}

.itembox2 li:nth-child(2n+1):last-child {
  margin-left: auto;
  margin-right: 54%;   
 }
.itembox3 li:nth-child(3n+2):last-child {
  margin-left: auto;
  margin-right: 35%;   
 }
 .itembox3R li:nth-child(3n+2):last-child {
  margin-left: auto;
  margin-right: 35%;   
 }
.itembox4 li:nth-child(4n+2):last-child {
  margin-left: auto;
  margin-right: 51.2%;
 }
.itembox4 li:nth-child(4n+3):last-child {
  margin-left: 0;
  margin-right: 25.5%;
 }
.itembox2 li h3,
.itembox3 li h3,
.itembox4 li h3{
  padding: 20px 10px 10px;
  font-weight: 700;
 }
.itembox3 span,
.itembox4 span{
  padding: 30px 10px 0 10px;
  font-weight: 500;
  font-size:14px;
 }
.itembox3 .fa {
  width: 100%;
  text-align:center;
  color: #e0868f;
  font-size: 85px;
}
 
.itembox2 li p,
.itembox3 li p, 
.itembox3R li p,
.itembox4 li p{
  padding: 0 10px;
  line-height: 1.5;
  word-wrap: break-word;
 }

@media screen and (max-width: 767px) { 
.itembox2 li,
.itembox3 li,
.itembox4 li  {
  width: 46%;
  border: 1px solid #ddd;
  margin: 0.6em 0.3em;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2); 
 }
.itembox3R li{
  width: 100%;
 }
.itembox3R p{
  font-size:12px;
 }
 .itembox3 li:nth-child(1n+1):last-child {
  margin-left: auto;
  margin-right: 1%;   
 }
.itembox3 li:nth-child(2n+1):last-child {
  margin-left: auto;
  margin-right: 52%;   
 }
.itembox3 li .box{  
  height:70px; 
 }
.itembox3 li h3,
.itembox4 li h3 {
  font-size: 14px;
  text-align:center; 
 } 
.itembox3 li p,
.itembox4 li p {display: none;} 
.itembox3 li .hb50 ,
.itembox4 li .hb50 {margin-bottom:10px;}

.itembox3 .fa {font-size: 60px;} 
.itembox3 span,
.itembox4 span{
  padding: 20px 10px 0 10px;
 }
.itembox3 li .boxsp{  
  display: flex;
  justify-content: center;
  align-items: center;
  height:70px; 
 }
.itembox3 li .boxsp h3{ 
  display: block;
  width: 90%;
  text-align:center; 
 }
} 
 
/* --------------------------------------FLEXBOX-item*/
.flexboxitem{
  display: flex;  
  flex-direction:row;
 }
.flexboxitem img{
  width: 100%;
 }
.flexboxitem .itembox { 
  position: relative;
  width: 50%;
 }
.flexboxitem .itembox .tR {text-align:left; padding-left:20px;}
.flexboxitem .itembox .tL {text-align:left; padding-right:20px;}
.flexboxitem .itembox .text img{width:50%;}
.flexboxitem .itembox .text,
.flexboxitem .itemL2 .text{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width:80%;
 }

.flexboxitem .itemL2 {     
  position: relative;
  width: 30%;
}
.flexboxitem .itemR2 { 
  position: relative;
  width: 70%;
 }
 @media screen and (max-width: 767px) {
 .flexboxitem{
  display: block;
  } 
.flexboxitem .itembox .tR {padding-left:0;}
.flexboxitem .itembox .tL {padding-right:0;}
.flexboxitem .itembox,
.flexboxitem .itemL2,
.flexboxitem .itemR2 { 
  position: static;
  margin:0; 
  width: 100%;
  }
.flexboxitem .itembox .text,
.flexboxitem .itemL2 .text{
  position: static;
  top: 0%;
  left: 0%;
  transform: translate(0%, 0%);
  -webkit-transform: translate(0%, 0%);
  -ms-transform: translate(0%, 0%); 
  width:100%;
  }
.flexboxitem .itembox{
  margin-bottom:20px;
  }
 }
 /* --------------------------------------FLEXBOX-item2*/
.flexboxitem2{
  display: flex;  
  flex-direction:row-reverse;
 }
.flexboxitem2 img{
  width: 100%;
 }
.flexboxitem2 .itembox { 
  position: relative;
  width: 50%;
 }
.flexboxitem2 .itembox .tR {text-align:left; padding-left:20px;}
.flexboxitem2 .itembox .tL {text-align:left; padding-right:20px;} 
.flexboxitem2 .itembox .tL img,
.flexboxitem2 .itembox .text img{width:50%;}
.flexboxitem2 .itembox .text,
.flexboxitem2 .itemL2 .text{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width:80%;
 }
.flexboxitem2 .itemL2 {     
  position: relative;
  width: 30%;
}
.flexboxitem2 .itemR2 { 
  position: relative;
  width: 70%;
 }
 @media screen and (max-width: 767px) {
 .flexboxitem2{
  display: block;
  } 
.flexboxitem2 .itembox .tR {padding-left:0;}
.flexboxitem2 .itembox .tL {padding-right:0;}
.flexboxitem2 .itembox,
.flexboxitem2 .itemL2,
.flexboxitem2 .itemR2 { 
  position: static;
  margin:0; 
  width: 100%;
  }
.flexboxitem2 .itembox .text,
.flexboxitem2 .itemL2 .text{
  position: static;
  top: 0%;
  left: 0%;
  transform: translate(0%, 0%);
  -webkit-transform: translate(0%, 0%);
  -ms-transform: translate(0%, 0%); 
  width:100%;
  }
.flexboxitem2 .itembox{
  margin-bottom:20px;
  } 
.flexboxitem2 .item1R {width:96%;}
 }
 
/* --------------------------------------FLEXBOX-inlink*/
.flexboxinlink {
  display: flex;  
  flex-direction:row;
  border: 2px solid #ccc;
  padding: 20px;
  margin-bottom: 60px;
 }
.flexboxinlink .item {
  width: 25%;
    margin:25px 0 25px 25px;
 }
 .flexboxinlink .item img{
  display:right;   
  width:150px;
  border: 1px solid #ddd;
  margin:0 auto;
 }
.flexboxinlink .itemleft{
  display:left;   
  width: 75%;
  margin:25px 25px 25px 0;
 } 
.flexboxinlink .itemright{
  display:right;   
  width: 75%;
  margin:2%;
  margin-left:2%;
 }
.flexboxinlink h2{  
  font-size:24px;
  margin-bottom:20px;
  text-align:left;
 }
.flexboxinlink h5{
  padding-bottom:20px;
 }
.flexboxinlink em{ 
  padding-left:10px;
 }
.flexboxinlink p a.inlink{
  float: right;
  display: inline-block;
  margin:10px 10px 0 0;
  padding: 0.6em 0.8em;
  text-decoration: none;
  color: #1C1C1C;
  border: 2px solid #6e6e6e;
  border-radius: 3px;
  transition: .4s;
 }
.flexboxinlink p a.inlink:hover{
  background: #2E2E2E;
  color: #fff;
 }
@media screen and (max-width: 767px) {
.flexboxinlink {
  display: inline-block;;   
  width: 90%; 
  padding: 10px;
 }
.flexboxinlink .item {
  margin:0 auto; 
 }
.flexboxinlink .itemleft {
  width: 90%;
  margin:10px; 
 }
.flexboxinlink .item img {
  width: 90%;
  margin:10px 0 20px 0; 
  text-align:center;
 }
.flexboxinlink h2{  
  font-size:18px;
  margin-bottom:0px;
 }
.flexboxinlink h5{
  line-height:1.4;
  font-size: 12px;
 }
.flexboxinlink p a.inlink{
  float: left;
  font-size: 12px;
  margin: 20px 0 10px 0;
  padding: 0.15;
 }
}
/* --------------------------------------PHOTO*/ 
ul .col-item {text-align:center;}
.col-item img{width:94%;}
.col-item p{font-size: 14px;;}
.col{
  display: flex;
  flex-flow: wrap;
  width: 100%;
  justify-content: space-between; 
  line-height:1.0em;
 }
.row-2 .col-item{width: 50%;}
.row-2r .col-item{width: 50%; margin-left:25%;}
.row-3 .col-item{width: 33.3%;}
.row-3r .col-item{width: 33.3%;}
.row-3r .col-item img{width: 94%;}
.row-3r li:nth-child(3n+2):last-child {
  margin-left: auto;
  margin-right: 33.3%;
 }
.row-4 .col-item{width: 25%;} 
.row-4r .col-item{width: 25%;}
.row-4r .col-item img{width: 94%;}  
.col-item{padding: 15px 0;}
.col-item span{
   font-size: 14px;
 }
@media screen and (max-width: 767px) {
.col-item span{font-size: 12px;}
.col-item p{font-size: 10px; line-height:1.1;}
.row-4r .col-item{width: 50%; line-height:1.1;}
}


/*******************************
*    	MODAL WINDOW
*******************************/

@keyframes modalwindow_body_out {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-20px);
  }
}

.modalwindow {
  /* オーバーレイ＆スクロール領域になるレイヤー */
  display: none;
  position: fixed;
  top: 104px;
  left: 0;
  z-index: 10001;
  width: 100%;
  /* スマホでスワイプして指を離すまでの間下部の背景が無くなるため余分に指定 */
  height: calc(100% + 100px);
  background: rgba(0, 0, 0, 0.1);
  border-bottom: 100px solid transparent;
  cursor: pointer;
  opacity: 1;
 }
.modalwindow.no_overlay_close {
  cursor: default;
 }
.modalwindow.lock .close_modal {
  background: #ccc;
 }
.modalwindow .body {
  /* ウィンドウ自体 アニメーションなどで装飾 */
  position: relative;
  width: 100%;
  overflow: auto;
  margin: 0 auto;
  background: #134086;
  cursor: default;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
  transform: translateY(-20px);
  animation: 200ms modalwindow_body_out;
 }
.modalwindow .body .widthsize{
  position: relative;
  width: 900px;
  margin: 0 auto;
  color: #fff;
  background: #134086;
 }
.modalwindow .body .modal_content {
  padding: 10px 20px 30px;
}
.modalwindow .body ul li .init-right {
  color: #ffffff;
 }
.modalwindow .body > footer {
  padding: 10px;
  background: #fcfcfc;
  border-top: 1px solid #e5e5e5;
 }
.modalwindow.is_visible .body {
  transform: translateY(0px);
  animation: 400ms modalwindow_body_in;
 }
.modalwindow .body > footer {
  padding: 10px;
  background: #fcfcfc;
  border-radius: 0 0 4px 4px;
  border-top: 1px solid #e5e5e5;
 }
@media screen and (max-width: 960px) {
.modalwindow .body {
  position: fixed;
  width: calc(100% - 20px);
  margin: 10px;
  left: 0px;
  overflow: auto;
 }
}

.modalwindow2 {
  /* オーバーレイ＆スクロール領域になるレイヤー */
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20000;
  width: 100%;
  /* スマホでスワイプして指を離すまでの間下部の背景が無くなるため余分に指定 */
  height: calc(100% + 100px);
  background: rgba(0, 0, 0, 0.8);
  border-bottom: 100px solid transparent;
  cursor: pointer;
  opacity: 1;
 }
.modalwindow2.no_overlay_close {
  cursor: default;
 }
.modalwindow2.lock .close_modal {
  background: #ccc;
 }
.modalwindow2 .item1 li{
  text-align:left; 
  padding: 10px 50px;
 }
.modalwindow2 img{width:100%;}
.modalwindow2 .body {
  /* ウィンドウ自体 アニメーションなどで装飾 */
  position: relative;
  left: 0;
  top: 0;
  width: 900px;
  margin: 80px auto 20px;
  padding: 10px 20px 30px;
  background: #fff;
  border-radius: 4px;
  cursor: default;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
  transform: translateY(-20px);
  animation: 200ms modalwindow_body_out; 
  height: 80vh;
  overflow-y: auto;
  z-index: 20002;     
 }
.modalwindow2 .is_visible .body {
  transform: translateY(0px);
  animation: 400ms modalwindow_body_in;
 }
.modalwindow2 .body .title{padding:30px 0 0; font-weight: 700;} 
.modalwindow2 .body h2{padding:20px 0 10px; font-weight: 700;} 
.modalwindow2 .body p{padding-top:20px;}

.modalwindow_header_close {
  /* 右上に表示する×ボタン 面倒なので動的に追加してます */
  position: absolute;
  top: 30px;
  left:50%;
  margin-left: 420px;
  background:  rgba(255,255,255,1.0);
  border: none;
  cursor: pointer;
  width: 60px;
  height: 60px;
  font-size: 35px;
  border-radius: 50%;
  line-height: 62px;
  text-align: center;
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.2);  
  z-index: 20003;
  display: inline-block;
 }
.modalwindow_header_close:before {
  content: "\D7";
  font-size: 40px;
  line-height: 44px;
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
 }

@media screen and (max-width: 767px) {
.modalwindow2 .body {
  width: calc(92% - 30px); 
  margin: auto;
  padding:0 auto 80px;
  top: 30px;                                           
  left: 0;
  height: 82vh;
  overflow-y: auto; 
 } 
.modalwindow2 .body .item1{
  width: 100%;
 }
 .modalwindow_header_close {
  position: fixed;
  top: 87vh;
  left: 86%;
  margin-left: -5px; 
  width: 50px;
  height: 50px;
  font-size: 10px;
  line-height:70px;  
 }
}
@media screen and (max-width: 340px) {
 .modalwindow_header_close {
  position: fixed;
  top: 10px;
  left: 50%;
  margin-top::10px;
  margin-left: 28%;
 }
}


/*******************************
*    	MENU
*******************************/

/* GLOBAL MENU*/ 
.flexbox {  
  margin-top:10px;   
  overflow-y: hidden;
 }
.flexbox ul {
  display: flex;
  flex-flow:wrap;
  justify-content: space-between;
 }
.flexbox ul li {
  position: relative;
  cursor:pointer;
  text-align: center;
  font-weight: 500; 
  padding:10px 5px;
  width: 182px;
  font-size: 16px;  
  color:#fff;
 }
.flexbox ul li:hover{
  color:#FFF;
  background-color:#1e90ff;
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
 }
/*MENU*/
.wrap_block{
  overflow-x: hidden;
  overflow-y: hidden;
  width: 100%;
  margin: 30px auto 10px;
  font-size: 16px;
 }
.main_block{
  float: left;
  width: 30%;
  margin-top: 10px;
 }
.main_block li a{  
  display: block;
  font-size: 18px;
  font-weight: 700; 
  line-height: 36px;
  padding:0 10px;
  color:#fff;
 }
.main_block li a:hover{
  background-color:#1e90ff;
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
 }
.side-menu_block{
  float: left;
  width: 35%;
    -ms-overflow-style: none;    /* IE, Edge 対応 */
    scrollbar-width: none;       /* Firefox 対応  */
 }
.side-menu_block li a{
  display: block;
  height: 36px;
  line-height: 36px;
  padding:0px 10px;
  color:#fff;
 }
.side-menu_block li a:hover{
  background-color:#1e90ff;
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
 }
.side-menu_block2{
  float: left;
  width: 70%;
    -ms-overflow-style: none;    /* IE, Edge 対応 */
    scrollbar-width: none;       /* Firefox 対応  */
 }
.side-menu_block2 li a{
  display: block;
  height: 36px;
  line-height: 36px;
  padding:0px 10px;
  color:#fff;
 }
.side-menu_block2 li a:hover{
  background-color:#1e90ff;
  filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
 }
/* スマホ 767px以下 */
@media only screen and (max-width: 767px) {
.wrap_block{
  width: 100%;
 }
.main_block{
  float: none;
  width: 100%;
  text-align:left;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
 }
.side-menu_block{
/* floatを解除 */
  float: none;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align:left;
 }
a.cp_btn {
  width: 100%;
  padding: 0.1em;
  margin: 5px auto;
 }
}
/*******************************
*    	BUUTUN
*******************************/
.item_btn {
  display: inline-block;
  margin:10px 0;
  padding: 0.3em 1em;
  width: 100%;
  text-decoration: none;
  color: #505050;
  border: solid 2px #505050;
  border-radius: 3px;
  transition: .4s;
 }
.item_btn:hover {
  background: #505050;
  color: white;
 }
/* --------------------------------------ボタンサイズ */
.item_btn.small{
  padding: 6px 17px;
  font-size: 12px;
  letter-spacing: 1px;
 }
.item_btn.medium{
  padding: 8px 37px;
  font-size: 14px;
 }
.item_btn.large{
  padding: 12px 45px;
  font-size: 16px;
 }
@media screen and (max-width: 480px) {
.item.medium{
  padding: 6px 17px;
  font-size: 12px;
 }
}

/*******************************
*      	BROCHURE
*******************************/
.brochure {
  display: flex;  
  position: relative;
  height:172px;
  padding: 20px;
  border: 2px solid #ccc;
  overflow: hidden;
  margin:0 10px 50px 10px;
  list-style: none;
  background: #fbfbfb;
 }
.brochure .itemleft{
  display:left;   
  width: 70%;
  margin:0px 10px 10px 20px;
 }
.brochure .itemleft h3{
  font-weight: 700;
 }
.brochure .day{
  position: absolute;
  bottom:0; 
  padding-bottom:20px;
  font-size: 12px;
 }
.brochure p{
  padding-top:10px;
  line-height:1.2;
 }
.brochure a{
  position: absolute;
  width: 100%;
  height: 100%;
  top:0;
  left: 0;
  text-decoration: none;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
 }
.brochure a:hover{
  opacity: 0.6;
  filter: alpha(opacity80);
  box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.5);
  background: #fff;
 }
@media screen and (max-width: 768px) {
.brochure {
  height:100%;
  margin:0 0 20px 0;
  padding: 10px;
 }
.brochure img{
  width:100%;
 }
.brochure h3{
    font-size: 14px;
 }
.brochure p{
  padding: 4px;
  font-size: 12px;
 }
.brochure .day{
  padding-bottom:10px; 
  font-size: 10px;
 }
}

/*******************************
*      	NEWS
*******************************/
.newsbox,
.newsbox2 {
  display: flex;
  flex-direction:row;
   margin:15px 0;
 }

.newsbox .itemL {
  width: 29%;
 }
.newsbox .itemR {
  width: 71%; 
 }
.newsbox2 .itemL {
  width: 15%;
 }
.newsbox2 .itemR {
  width: 85%; 
 }
.newsbox .itemL span,
.newsbox2 .itemL span{
  float:right;
  margin:0 30px 0 20px;
 }
.newsbox span,
.newsbox2 span{  
  float: right; 
  width:110px;
  padding:4px 0 4px 4px;
  font-size:12px;
  font-weight:400;
  text-decoration:none;
  display:block;
  text-align:center;
  color:#fff;
  border-radius:3px;
  display: inline-block; 
 }
.newsbox a,
.newsbox2 a  {
  display:block;
  width:100%;
  height:100%;
 } 
.newsbox  a:hover,
.newsbox2  a:hover {
  color: #f49d9d;
 }
.newsbox .info1{
  background-color:#aa5554;
 }
.newsbox .info2{
  background-color:#4169e1;
 }
.newsbox .info3{
  background-color:#009b77;
 }
.newsbox .info4{
  background-color:#327a00;
 }
.newsbox .info5{
  background-color:#663366;;
 }
.newsbox .info6{
  background-color:#b56e0a;k
 }
.newsbox .info7{
  background-color:#696969;
 }
.newsbox a[class="pbOpenNewWindow"]:after,
.newsbox2 a[class="pbOpenNewWindow"]:after{
    content: "\f1c1";
    font-family: FontAwesome;
    padding: 0 0 0 10px;
    font-weight: normal;
    color: #cc0000;
    text-decoration: none;
}

@media screen and (min-width: 1200px) {
.newsbox .itemL {
  width: 360px;
 }
.newsbox .itemR {
  width: 100%; 
 }
}
@media screen and (max-width: 767px) {
.newsbox {
   margin-bottom:15px;
 }
.newsbox .itemL {
   background-color:#f0f0f0;
   padding:4px;
   }
.newsbox,
.newsbox .itemL,
.newsbox .itemR,
.newsbox2,
.newsbox2 .itemL,
.newsbox2 .itemR {
  display:block;
  width: 98%; 
  font-size:14px; 
  padding: 5px;
 }
.newsbox .itemR {
  font-weight: 700;
 }
.newsbox .itemL span{
  float:right;
  margin:0 5px 0 0;
 }
.newsbox span{
  font-size:10px;
  font-weight: normal;
  padding:0 0 2px;
  border-radius:2px;
 }
.newsbox .info1,
.newsbox .info2,
.newsbox .info3,
.newsbox .info4,
.newsbox .info5,
.newsbox .info6,
.newsbox .info7 {
  width:70px;
  padding-top: 1px;
 }
}

/*******************************
*    	MARK UP
*******************************/

.datasheet a[href$=".pdf"]:after  {
    content: "\f1c1";
    font-family: FontAwesome;
    padding: 0 0 0 10px;
    font-weight: normal;
    color: #cc0000;
    text-decoration: none;
}

.outlink_blue a[class="pbOpenNewWindow"]:after {
    content:  "\f08e";
    font-family: FontAwesome;
    padding: 0 10px 0 6px;
    font-weight: normal;
    color: #0058ff;
    text-decoration: none;
}
.reload :after {
    content:  "\f0e2";
    font-family: FontAwesome;
    padding: 0 4px 0 6px;
    font-weight: normal;
    color: #0058ff;
    text-decoration: none;
}
.new_window :after {
    content:  "\f2d2";
    font-family: FontAwesome;
    padding: 0 4px 0 6px;
    font-weight: normal;
    color: #808080;
    text-decoration: none;
}
.outlink :after {
    content:  "\f08e";
    font-family: FontAwesome;
    padding: 0 4px 0 6px;
    font-weight: normal;
    color: #808080;
    text-decoration: none;
}
.outlink_blue :after {
    content:  "\f08e";
    font-family: FontAwesome;
    padding: 0 4px 0 6px;
    font-weight: normal;
    color: #0058ff;
    text-decoration: none;
}
.download :after {
    content:  "\f019";
    font-family: FontAwesome;
    padding: 0 4px 0 6px;
    font-weight: normal;
    color: #0058ff;
    text-decoration: none;
}
ul li h5:before {
    content:  "\f046";
    font-family: FontAwesome;
    padding: 0 6px 0 0;
    font-weight: normal;
    color: #808080;
    text-decoration: none;
} text-decoration: none;

.checkmark :after {
    content:  "\f00c";
    font-family: FontAwesome;
    padding: 0 4px 0 6px;
    font-weight: normal;
    color: #808080;
    text-decoration: none;
}
.list_sitemap :before {
    content:  "\f101";
    font-family: FontAwesome;
    padding: 0 6px 0 0;
    font-weight: normal;
    color: #808080;
    text-decoration: none;
}
.pdflink :after {
    content:  "\f1c1";
    font-family: FontAwesome;
    padding: 0 4px 0 6px;
    color: #808080;
}
.item3 .fa {margin-left: 6px;}

.wrap_block ul li a:before {
  font-family: FontAwesome;
  content:  "\f101";
  padding: 0 6px 4px 0;
  font-weight: normal;
  color: #cc0000;;
  text-decoration: none;
 }
.mapmarker:before {
  font-family: FontAwesome;
  content:  "\f041";
  padding: 0 6px 4px 0;
  font-weight: normal;
  color: #808080; 
 }
.mailicon:before{
  font-family: FontAwesome;
  content:  "\f003";
  padding: 0 6px 4px 0;
  font-weight: normal;
  color: #808080;
 }
.mailiconR:before{
  font-family: FontAwesome;
  content:  "\f003";
  padding: 0 6px 4px 0;
  font-weight: normal;
  color: #fff;
  text-decoration: none;
 }
.infoicon :before{
  font-family: FontAwesome;
  content:  "\f101";
  padding: 0 6px 4px 0;
  font-weight: normal;
  color: #808080;
  text-decoration: none;
 }
.homeicon :before{
  font-family: FontAwesome;
  content:  "\f015";
  padding: 0 6px 2px 0;
  font-size:14px;
  color: #808080;
  text-decoration: none;
 }
.sitemapicon :before{
  font-family: FontAwesome;
  content:  "\f0e8";
  padding: 0 6px 4px 0;
  font-weight: normal;
  color: #fff;
  text-decoration: none;
 }

/*******************************
*  LINK HOVER
*******************************/
.news_table .newscell a:hover {
      text-decoration: none;
      color: #cc0000;
}
.ir_results a:hover {
      text-decoration: none;
      color: #cc0000;
}

/*******************************
*	PAGER
*******************************/

.pager  ul.pagination {
  text-align: center;
  margin: 0;
  padding: 0;
}

.pager .pagination li {
  display: inline;
  margin: 0 2px;
  padding: 0;
  display: inline-block;
  background:#9D50BB;
  width: 50px;
  height: 50px;
  text-align: center;
  position: relative;
}

.pager .pagination li a{
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display:table;
  color: #fff;
  text-decoration: none;
}

.pager .pagination li a span{
  display:table-cell;
  vertical-align:middle;
}

.pager .pagination li a:hover,
.pager .pagination li a.active{
  color: #000;
  background: #ccf;
}

@media only screen and (max-width: 767px){
  .pager .pagination li{
    display: none;
  }

  .pager .pagination li.pre,
  .pager .pagination li.next{
    display: inline-block;
    width: 40%;
    height: 50px;
    text-align: center;
  }

  .pager .pagination li.pre a,
  .pager .pagination li.next a{
    width: 100%;
    text-align: center;
  }

  .pager .pagination li.pre span::after{
    content: "Back";
  }

  .pager .pagination li.next span::before{
    content: "Next";
  }
}

/*******************************
*  Lity
*******************************/
/*! Lity - v1.6.6 - 2016-04-22
* http://sorgalla.com/lity/
* Copyright (c) 2016 Jan Sorgalla; Licensed MIT */
.lity {
  z-index: 11000;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  background: #0b0b0b;
  background: rgba(0, 0, 0, 0.9);
  outline: none !important;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
       -o-transition: opacity 0.3s ease;
          transition: opacity 0.3s ease;
}
.lity.lity-opened {
  opacity: 1;
}
.lity.lity-closed {
  opacity: 0;
}
.lity * {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
.lity-wrap {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  outline: none !important;
}
.lity-wrap:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}
.lity-loader {
  z-index: 9991;
  color: #fff;
  position: absolute;
  top: 50%;
  margin-top: -0.8em;
  width: 100%;
  text-align: center;
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
       -o-transition: opacity 0.3s ease;
          transition: opacity 0.3s ease;
}
.lity-loading .lity-loader {
  opacity: 1;
}
.lity-container {
  z-index: 9992;
  position: relative;
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  white-space: normal;
  max-width: 100%;
  max-height: 100%;
  outline: none !important;
}
.lity-content {
  z-index: 9993;
  width: 100%;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
       -o-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 0.3s ease;
       -o-transition: -o-transform 0.3s ease;
          transition: transform 0.3s ease;
}
.lity-loading .lity-content,
.lity-closed .lity-content {
  -webkit-transform: scale(0.8);
      -ms-transform: scale(0.8);
       -o-transform: scale(0.8);
          transform: scale(0.8);
}
.lity-content:after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}
.lity-close {
  z-index: 9994;
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  top: 0px;
  -webkit-appearance: none;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 50px;
  line-height: 50px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.lity-close::-moz-focus-inner {
  top: 0px;
  border: 0;
  padding: 0;
}
.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
  top: 0px;
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 50px;
  line-height: 50px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.lity-close:active {
  top: 0px;
}
/* Image */
.lity-image img {
  max-width: 100%;
  display: block;
  line-height: 35px;
  border: 0;
}
/* iFrame */
.lity-iframe .lity-container {
  width: 100%;
  max-width: 720px;
}
.lity-iframe-container {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: auto;
  pointer-events: auto;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-overflow-scrolling: touch;
}
.lity-iframe-container iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}
.lity-hide {
  display: none;
}