@charset "utf-8";

.clear:after { clear: both; content: "."; display: block; height: 0; visibility: hidden; }
.clear { display: inline-block; }
/* Hides from IE-mac \*/
* html .clear { height: 1%; }
.clear { display: block; }
/* End hide from IE-mac */


/* -------------------------------------------------------------
 * JQM CSS Overwrite - CSS上書き
 * ------------------------------------------------------------- */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    background: transparent;
}

body {
    display: block;
    margin: 0 !important;
font-family: -apple-system, BlinkMacSystemFont, 'Hiragino Kaku Gothic ProN', 'メイリオ' , sans-serif;
}

li {list-style:none;}
a {text-decoration:none;}

/*ヘッダー*/
.flex_header-box {
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    justify-content:center;
	padding-top: 25px;
}
 
.flex_header-item {
    color: #7c878c;
    margin: 0 10px 10px 10px;
}
.header_catch{
    color: #7c878c;
	font-size:11px;
	line-height:1.5em;
	letter-spacing:0.1em;
}
.header_header_link{
    color:  #333;
	font-size:12px;
	line-height:1.5em;
	letter-spacing:0.1em;
	text-align:right;
}
.header_header_link a{
    color:  #333;
	font-size:12px;
	line-height:1.5em;
	letter-spacing:0.1em;
}
.h_icon{
margin-right:10px;
margin-top: 5px;
}

/*****グローバルメニュー****/
#menu{
    width: 100%;
    margin: 0 auto;
    background: #f2f2f2;/*７*/
	margin-top:10px;
}
#menu-inner{
    width: 1000px;/*１*/
    height: 50px;/*２*/
    margin: 0 auto;
    background: #ffffff;/*８*/
}
#menu-btn{display: none;}
#menu-content{
    padding-left: 0;
    margin: 0;
    width: 100%;
    height: 100%;
    list-style-type: none;
}
#menu-content > li{
    position: relative;
    float: left;
    height: 100%;
    text-align: center;
    width: 20%;
}
#menu-content > li > a{
    position: relative;
    display: block;
    height: 100%;
    width: 100%;/*3*/
    line-height: 50px;/*２*/
    background: #f2f2f2;/*９*/
    color: #333;/*10*/
    font-size: 14px;
    text-decoration: none;
    z-index: 2;
}
#menu-content > li > a:hover{
    background: #dcdcdc;/*11*/
    color: #333;/*12*/
}
#menu-content > li > a > .blogicon-chevron-down{margin-right: 5px;}
/*２階層目*/
#menu-content > li > ul.second-content{
    visibility: hidden;
    position: absolute;
    top: 0;
    margin: 0;
    padding-left: 0;
    list-style-type: none;
    z-index: -1;
}
#menu-content > li:hover > ul.second-content{
    visibility: visible;
    top: 40px;/*2*/
    z-index: 1;
    transition: all .3s;
}
#menu-content > li > ul.second-content > li{
text-align: center;
    width: 200px;
    height: 40px;
    margin: 0 auto;
}
#menu-content > li > ul.second-content > li > a{
display: block;
    line-height: 50px;
    background: #f2f2f2;
    color: #333;
    font-size: 14px;
    text-decoration: none;
    margin-top: 5px;
}
#menu-content > li > ul.second-content > li > a:hover{
    background: #dcdcdc;/*15*/
    color: #333;/*16*/
}
/*******トグルメニュ*********/
@media screen and (max-width:960px){/*19*/
#container{
    margin-top: 40px;
}
#menu-inner{
    position: fixed;
    top: 0;
    z-index: 2;
    width: 100%;
    height: auto;
	background: #f2f2f2;
}
#btn-content{text-align: right;
margin-top: -30px;}
#menu-btn{
    display: inline-block;
    padding: 8px 15px;
    margin: 5px;
    cursor: pointer;
    background: #555;
    color: #fff;
    font-size: 70%;
}
#menu-content{
    display: none;
    width: 100%;
}
#menu-content > li{
    width: 100%;
    height: 40px;
    float: none;
	height: initial;
}

#menu-content > li > a{
    width: 100%;
    line-height: 40px;
    padding: 0;
    text-decoration: none;
}

/*２階層目*/
#menu-content > li:hover > ul.second-content{display: contents;}
#menu-content > li > a > .blogicon-chevron-down{display: contents;}
}

.sp_logo{width: 200px;
    padding-top: 15px;
    padding-bottom: 5px;}
	
.con_box{padding: 0 0 150px 0;}
.inner_box {
	width: 1000px;
	margin: 0 auto;
	padding: 50px 0;
}
.product_inner_box {
	width: 1000px;
	margin: 0 auto;
	padding-top: 50px;
	padding-bottom:30px;
}
.slider{ margin-top:170px;}

/*トップ-事業紹介*/
.top_title{
color:#7c878c;
font-size:27px;
letter-spacing:0.1em;
text-align: center;
font-weight:bold;
margin-top:20px;
}

.aboutitem-list {
  display: flex;
  flex-wrap: wrap;
}
.aboutitem {
width: 32%;
    box-sizing: border-box;
    margin: 6px;
}
.aboutitem-image img {
  width: 100%;
  height: auto;
}

.main{
  display: flex;
  flex-flow: row wrap;
}
.main div{width: 50%;}

.p_about_title a{
color: #444;
font-size:20px;
letter-spacing:0.1em;
text-align: center;
padding:10px 0;
font-weight:bold;
line-height: 2.5em;
}
.p_about_text {
color: #444;
font-size:15px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
margin-bottom: 10px;
} 
.p_about_text a{
color: #444;
font-size:15px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
margin-bottom: 10px;
}

.p_about_link a{
color: #444;
font-size:13px;
letter-spacing:0.1em;
line-height:1.5em;
margin-bottom: 10px;
float: right;
text-decoration:underline;
}

.top_illumi_text{
color: #444;
font-size:15px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
margin-right:20px;
}
.top_illumi_link a{
color: #444;
font-size:15px;
letter-spacing:0.1em;
line-height:2.5em;
text-align: right;
}

.item_img{border:1px solid #f2f2f2;}
.bana_img{ margin-bottom:20px;}

.youtube iframe{
  width: 100%;
}


/*各ページ*/
.page_box{ margin-top:160px;}
.page_title{
color:#7c878c;
font-size:25px;
letter-spacing:0.1em;
text-align: center;
font-weight:bold;
padding: 20px 0;
}
.page_subtitle{
color:#444;
font-size:18px;
letter-spacing:0.1em;
text-align: left;
font-weight:bold;
padding: 20px 0;
}
.youtube_subtitle{
color:#444;
font-size:18px;
letter-spacing:0.1em;
text-align: center;
font-weight:bold;
padding: 10px 0 30px 0;
}
.page_text{
color: #444;
font-size:15px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
margin-bottom: 10px;
}
.pankuzu_text{
color: #444;
font-size:14px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
}
.pankuzu_text a{
color: #444;
font-size:14px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
}

.contact_text{
color: #444;
font-size:15px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:center;
margin: 10px 0;
}
.page_text a{
color: #444;
font-size:15px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
margin-bottom: 10px;
}

table.tbl-company {
border: solid 1px #ccc;
border-collapse: collapse;
width: 100%;
}
.tbl-company th {
  border: solid 1px #ccc;
color:#333333;
font-size:15px;
letter-spacing:0.1em;
text-align:center;
vertical-align:middle;
  padding: 15px;
  width:25%;
  background-color:#f2f2f2;
}
.tbl-company td {
  border: solid 1px #ccc;
  padding: 15px;
color:#333333;
font-size:15px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
}

/*イルミネーション導光板*/
.illumi_inner_box {
	width: 1000px;
	margin: 0 auto;
	padding-bottom: 100px;
}
.illumi_inner_box_end {
	width: 1000px;
	margin: 0 auto;
	padding-bottom: 30px;
}
.illumi_title{
color:#d7195f;
font-size:26px;
letter-spacing:0.1em;
text-align: center;
font-weight:bold;
padding: 10px 0;
}
.illumi_line {
    background: #004ea2;
    padding: 1px 0;
	margin-bottom: 40px;
}
.illumi_catch{
color:#7c878c;
font-size:28px;
letter-spacing:0.1em;
text-align: center;
font-weight:bold;
margin-top:20px;
margin-bottom:20px;
}
.illumi_text_s{
color: #444;
font-size:13px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
}

.illumi_main{
  display: flex;
  flex-flow: row wrap;
}
div .illumi_main_left{width: 35%;}
div .illumi_main_right{width: 65%;}

.illumi_youtube_main{
  display: flex;
  flex-flow: row wrap;
}
.illumi_youtube_main div{width: 32%;
margin: 5px;}



/*画面全体の設定*/
body,
html {
  height: 100%;
  margin: 0 auto;
  letter-spacing: 2px;
  font-size: 10px;
}



/*フッター*/
.footer_menu{
  background-color:#f2f2f2;
  padding: 20px 0;
  text-align:center;
}

.footer_list{
width:1000px;
margin: 0 auto;
}

.footer_list li{
display:inline-block;
margin: 0 20px;
}

.footer_menu a{
color:#333;
font-size:14px;
text-align:center;
line-height:1.5em;
}

.footer_box{
  background-color:#d7195f;
  padding: 8px 0;
  margin-top: auto;
  height: auto;
}

.footertext{
color:#fff;
font-size:13px;
text-align:center;
line-height:1.5em;
}

.copyrigh_text{
color:#fff;
font-size:9px;
text-align:center;
line-height:1.5em;
margin: 10px 0;
}


/* ページトップへ */
#page_top{
position: fixed;
    right: 10px;
    bottom: 40px;
}
#page_top a{
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  text-align: center;
  padding-top: 25%;
}
#page_top a::before{
  position: absolute;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}

/* ページトップへ(スマホ) */
#page_top_smp{
display:none;
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #9d9d9d;
}
#page_top_smp a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top_smp a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

 
/*--------header-----------*/
 
#top-head {
	top: -100px;
	position: absolute;
	width: 100%;
	margin: 100px auto 0;
	line-height: 1;
	z-index: 999;
    background: #fff;
}
 
#top-head a,
#top-head {
    color: #333;
    text-decoration: none;
}
 
#top-head .inner {
    position: relative;
}
#top-head .logo {
    float: left;
    position: relative;
    font-size: 36px;
    height: 50px;
	z-index:9999;
}
 
#top-head .logo a {
  position: absolute;
  width: 100%;
  height: 50px;
}
 
#global-nav ul {
    list-style: none;
    position: absolute;
    top: 20px;
    right: 0;
    font-size: 14px;
}
#global-nav ul li {
    float: left;
    padding:0 30px;
}
#global-nav ul li a {
    /*padding: 5px 5px;*/
    position: relative;
    display: inline-block;
	padding-bottom: 10px;
}
 
#global-nav ul li a::after {
   content: '';
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   height: 2px;
   -webkit-transform: scaleX(0);
   -ms-transform: scaleX(0);
   transform: scaleX(0);
   background-color: #e60012;
   -webkit-transition: all .3s ease;
   transition: all .3s ease;
}
 
#global-nav ul li a:hover::after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}
 
nav span{
    background:#666;
    height:2px;
    display:block;
    position:relative;
    width:50px;
    left:0;
}
 
 
/*--------固定化されたときのCSS-----------*/
 
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
	padding-bottom: 15px;
    background: #fff;
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}
 
#top-head.fixed .logo {
  position: relative;
    font-size: 24px;
    color: #333;
}
 
#top-head.fixed .logo a {
  position: absolute;
  width: 100%;
  height: 30px;
 
}
#top-head.fixed #global-nav ul li a {
    color: #333;
    /*padding: 0 20px;*/
    padding-bottom: 10px;
}


/*引用*/
.siteMaps {
    min-height: calc(100vh - 386px);
    max-height: 100%;
}
.siteMapsLinks{
    margin-top: 30px;
}
.siteMapsLinks > ul > li  {
    list-style-type: none;
    display: inline-table;
    min-width: 120px;
    border-right: 1px solid #ccc;
    padding: 0 20px;
    height: 100%;
}
.siteMapsLinks > ul li:last-child{
    border-right: none;
}
.siteMapsLinks ul li ul {
    padding-left: 30px;
}
.siteMapsLinks ul li ul li {    
    list-style-type: circle;    
    border-right: none;
}




.smp{display: none;}	 
 
/*---------gnav sp--------------*/
/*-----------スマホ-------------*/
@media screen and (max-width: 767px) {

    .head-inner {
      display: none;
    }
 
    .slick-next {
      right: 0;
    }
 
    #top-head,
    .inner {
        width: 100%;
        padding: 0;
    }
    #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
    }
	
	#page_top{display: none!important;}
	#page_top_smp{display: block;}
	

	.list_wrap{width:100%;}
	.check_list li{font-size: 15px;}
}
 
/*------------タブレット用------------------*/
 
@media screen and (max-width: 1024px) {
	.pc{display: none!important;}
	.smp{display: block;}	
	.bana_img{ width:100%;}

.con_box{padding: 0 20px 50px 20px;}
.inner_box {
	width: 100%;
	margin: 0 auto;
	padding: 30px 0;
}
.product_inner_box{
	width: 100%;
	margin: 0 auto;
	padding-bottom:initial;
}
.inner_box ul {
	width: 100%;
	margin: 0 auto;
	display:block!important;
}


.footer_menu{
  padding: 10px 0;
  text-align:center;
}

.footer_list{
width:100%;
}

.footer_list li{
display: block;
}

.footer_menu a{
font-size: 12px;
    text-align: left;
    line-height: 1.8em;
}


/*２階層目
#menu-content > li > ul.second-content{
visibility: initial;
    position: initial;
    text-align: -webkit-center;
}
#menu-content > li:hover > ul.second-content{
visibility: initial;
    top: 40px;
    z-index: 1;
    transition: all .3s;
}
#menu-content > li > ul.second-content > li{
    text-align: center;
    width: 200px;
    height: 40px;
}
#menu-content > li > ul.second-content > li > a{
display: block;
    line-height: 50px;
    background: #f2f2f2;
    color: #333;
    font-size: 14px;
    text-decoration: none;
    margin-top: 5px;
}
#menu-content > li > ul.second-content > li > a:hover{
    background: #dcdcdc;
    color: #333;
}*/

.aboutitem {
  display: contents;
}

.aboutitem-image img {
  max-width: 100%!important;
}

.top_illumi_text{
font-size:15px;
letter-spacing:0.1em;
line-height:1.5em;
margin-right:-10px;
margin-bottom:15px;
}

  .main{display: block;}
  .main div{width: 100%;}

.slider{ margin-top:100px;}
.page_box{ margin-top:80px;
padding: 0 20px 50px 20px;}

.top_title{
font-size:20px;
font-weight:bold;
margin-top:20px;
}
.pankuzu_text{
color: #444;
font-size:12px;
letter-spacing:0.1em;
line-height:1.5em;
text-align:left;
}

.illumi_con_box {padding: 0 20px;}
.illumi_inner_box {
	padding-bottom: 80px;
	width: 100%;
}
.illumi_inner_box_end {
	padding-bottom: 30px;
	width: 100%;
}
.illumi_title{
font-size:20px;
padding: 10px 0;
}

.illumi_catch{
font-size:20px;
margin-top:-20px;
margin-bottom:20px;
}

.illumi_main{display: block;}
.illumi_main div{width: 100%;}

.illumi_youtube_main{display: block;}
.illumi_youtube_main div{width: 100%;}

  .head-inner {
    display: none;
  }
 
  #top-head,
  .inner {
      width: 100%;
      padding: 0;
  }
  #top-head {
      top: 0;
      position: fixed;
      margin-top: 0;
  }

table.tbl-company {
    width: 100%;
    margin: 0 auto;
}
.tbl-company th {
font-size:14px;
letter-spacing:0.1em;
  padding: 15px;
  width:25%;
}
.tbl-company td {
  padding: 15px;
font-size:14px;}


.sm_img{max-width: 100%;
height: auto;
margin: 0 auto;
}
.list_wrap{
width:90%;
}

/*引用*/
.siteMapsLinks > ul > li  {
    display: block;
    border-right: none;
}

.price-box table tr,td {
    border: 1px solid #ddd;
}
.price-box table tr td {
    padding: 15px!important;
    text-align:  center;
	    font-size:  14px;
}
.price-box table tr td:nth-child(1) {
    text-align:  left;
padding: 10px;
    width: 13%!important;
	    font-size:  14px;
}
.price-box table tr td:nth-child(2) {
    width:  25%!important;
	    font-size:  14px;
}
.price-box table tr td:nth-child(3) {
    width:  25%!important;
	    font-size:  14px;
}
.price-box table tr td:nth-child(4) {
    width:  25%!important;
	    font-size:  14px;
}
.price-box table tr:nth-child(1) {
    font-size:  14px;
}
.price-box table tr:nth-child(2) {
    font-size:  14px;
}
.pricing-table p {
	    font-size:  12px;
}

 
}