@charset "utf-8";


/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table.table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table.table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */
html{
	font-size: 62.5%;
	overflow-y:scroll;
}
body {
color:#000;
line-height:1.5;
font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
-webkit-text-size-adjust: 100%;
	border-top:5px solid #0064d2;
font-size:1.4rem;
}
.backimg {
	background-image:url(../images/back.png);
	background-repeat:repeat-y;
	background-size: 100%;
}
.d-n{
	display:none;
}
.imgauto{
	width:auto;
	height:auto;
	max-width:100%;
	max-height:100%;
	vertical-align:middle;
}
.mt50{
	margin-top:50px;
}
.mt100{
	margin-top:100px;
}
.ta-c{
	text-align:center;
}
.f15{
	font-size:1.5rem;
}
.f18{
	font-size:1.8rem;
}
.f30{
	font-size:3rem;
}
.junbi{
	position:relative;
}
.junbi p{
	position:absolute;
	font-size:200%;
	width:100%;
	height:100%;
	background-color: rgba(0,0,0,0.7);
	text-align:center;
	top:0;
	color:#fff;
}
/* リンク設定
------------------------------------------------------------*/
a{color:#000;text-decoration:none;}
a:hover{color:#f00;}
a:active, a:focus {outline:0;}


/* 全体
------------------------------------------------------------*/
#wrapper{
margin:0 auto;
padding:0 1%;
width:98%;
position:relative;
}

.inner{
margin:0 auto;
width:100%;
}


/*************
/* ヘッダー
*************/
#header{
	height:85px;
}

#header h1{
padding:5px 0 10px;
font-weight:normal;
}

/*************
/* ロゴ
*************/
.logo{
float:left;
}

.logo span{display:block;}

/*************
/* 電話番号
*************/
.info{
float:right;
text-align:right;
}
.info ul{
	margin-top:15px;
}
.info ul li{
	display:inline-block;
	padding-left:25px;
	background-image:url(../images/yajirusi_ao.png);
	background-repeat:no-repeat;
	background-position: left center;
	vertical-align:middle;
	margin-right:30px;
}
.info ul li:last-child{
	background-image:none;
	margin-right:0;
	padding-left:0;
}
.info ul li a{
	
}

.info .open{font-size:11px;}


/* ------------------------------
   #menuList
------------------------------ */
#menuList {
	width: 100%;
	height: 55px;
	position: relative;
	z-index: 10;
	padding-top:15px;
	background: linear-gradient(#000 65px, #b3b3b3 5px);
}
 
#menuList ul {
    margin: 0 auto;
    width: 1000px;
    height: 55px;
    text-align: left;
}
 
#menuList ul li {
	width: 166px;
	height: 55px;
	float: left;
	box-sizing: border-box;
	border-bottom:5px solid #b3b3b3;
} 
#menuList ul li:hover, #menuList ul li.act {
	border-bottom:5px solid #0064d2;
	
} 


 
#menuList ul li a {
	height: 55px;
	display: block;
	text-align: center;
	transition: all 0.2s linear;
	color:#fff;
	font-size:0.8rem;
	background-image:url(../images/menub.gif);
	background-repeat:no-repeat;
	background-position:left top;
}
#menuList ul li:first-child a{
	background-image:none;
}
#menuList ul li a strong {
	display: block;
	font-size:1.4rem;
}
 
#menuList ul li:hover > a {
}
 
#contents {
    margin: 0 auto;
    padding: 40px 0;
    width: 800px;
    text-align: left;
}
 
#contents p {
    padding-bottom: 2em;
    font-size: 1em;
    line-height: 2em;
}
 
/* ------------------------------
   MEDIAQUERIES LAYOUT
------------------------------ */
@media only screen and (max-width: 1000px) {
    #menuList ul {
        width: 100%;
    }
 
    #menuList ul li {
        width: 20%;
    }
}
 
/* ------------------------------
   MEDIAQUERIES[SP]LAYOUT
------------------------------ */
@media only screen and (max-width: 999px) {
    #menuList {
        display: none;
    }
 
    #rwdMenuWrap {
        width: 100%;
        border-bottom: #aaa 1px solid;
    }
 
    #rwdMenuWrap #switchBtnArea {
        width: 100%;
        height: 60px;
        background: #3c3c3c;
        position: relative;
    }
 
    #rwdMenuWrap #switchBtnArea #switchBtn {
        top: 10px;
        right: 10px;
        width: 40px;
        height: 40px;
        display: block;
        background: #a7a7a7;
        position: absolute;
        border-radius: 5px;
    }
 
    #rwdMenuWrap #switchBtnArea #switchBtn span {
        left: 20%;
        width: 60%;
        height: 4px;
        display: block;
        position: absolute;
        background-color: #fff;
        border-radius: 5px;
        transition: all 0.2s linear;
    }
    #rwdMenuWrap #switchBtnArea #switchBtn span:nth-of-type(1) {
        top: 10px;
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }
    #rwdMenuWrap #switchBtnArea #switchBtn span:nth-of-type(2) {
        top: 18px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    #rwdMenuWrap #switchBtnArea #switchBtn span:nth-of-type(3) {
        bottom: 10px;
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }
 
    #rwdMenuWrap #switchBtnArea #switchBtn.btnClose span:nth-of-type(1) {
        top: 18px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    #rwdMenuWrap #switchBtnArea #switchBtn.btnClose span:nth-of-type(2) {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    #rwdMenuWrap #switchBtnArea #switchBtn.btnClose span:nth-of-type(3) {
        bottom: 18px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
 
    #rwdMenuWrap ul {
        width: 100%;
        display: none;
    }
 
    #rwdMenuWrap ul li {
        width: 100%;
        border-bottom: #aaa 1px solid;
    }
 
    #rwdMenuWrap ul li a {
        padding: 15px 20px;
        text-align: left;
        display: block;
        background: #ebebeb;
        position: relative;
	font-size:0.8rem;
    }
#rwdMenuWrap ul li a strong {
	font-size:1.4rem;
	margin-right:10px;
}
 
    #rwdMenuWrap ul li a:after {
        content: '';
        margin-top: -4px;
        top: 50%;
        right: 15px;
        width: 8px;
        height: 8px;
        color: #888;
        font-size: 1em;
        font-weight: bold;
        line-height: 1.2em;
        display: block;
        position: absolute;
        border-top: 2px solid #b0b0b0;
        border-right: 2px solid #b0b0b0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
 
    #contents {
        width: 100%;
    }
 
    #contents p {
        padding: 0 20px 2em 20px;
    }
}
 
/* ------------------------------
   CLEARFIX ELEMENTS
------------------------------ */
#menuList > ul:before,
#menuList > ul:after {
    content: " ";
    display: table;
}
#menuList > ul:after {clear: both;}
#menuList > ul {*zoom: 1;}







/**************************
/* メイン画像（トップページ+サブページ）
**************************/

.container {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
	width:300px;
}
.button {
	flex: 1 1 auto;
	margin: 10px;
	padding: 12px;
	border: 2px solid #fff;
	text-align: center;
	position: relative;
	overflow: hidden;
	transition: .3s;
	z-index: 0;
	font-size:1.6rem;
	color:#fff;
	letter-spacing:0.8em;
	background-image:url(../images/yajirusi_siro.png);
	background-repeat:no-repeat;
	background-position:95%;
}
.button:after {
  position: absolute;
  transition: .3s;
  content: '';
  width: 0;
  left: 50%;
  bottom: 0;
  height: 3px;
  background: #fff;
  height: 120%;
  left: -10%;
  transform: skewX(15deg);
  z-index: -1;
}
.button:hover {
  cursor: pointer;
  color: #0064d2;
}
.button:hover:after {
  left: -10%;
  width: 120%;
}

.kuro {
	width:auto;
	min-width:160px;
	max-width:240px;
}
.kuro .button {
	background-image:url(../images/yajirusi_kuro.png);
	margin: 0;
	letter-spacing:0.2em;
	color:#000;
	border: 1px solid #000;
	font-weight:bold;
}
.kuro .button:after {
  background: #000;
}
.kuro .button:hover {
  color: #fff;
}
.kuro .button:hover:after {
}

.ao {
	width:350px;
	margin-top:20px;
}
.ao .button {
	background-color:#000;
	background-image:url(../images/yajirusi_siro.png);
	background-repeat:no-repeat;
	background-position:95%;
	margin: 0;
	letter-spacing:0;
	color:#fff;
	font-weight:bold;
	padding: 20px;
	border:none;
}
.ao .button:after {
  background: #0064cf;
}
.ao .button:hover {
}
.ao .button:hover:after {
}
.ac{
	margin-top:30px;
}
.ac .button{
	letter-spacing:0;
}


.b3{
	display: flex;
	flex-wrap:         nowrap;
	justify-content: center;
	margin:100px auto 0;
}
.b3 .kuro{
	max-width: initial; 
	width:28%;
	margin:0 2%;
}
.b3 .kuro .button{
	letter-spacing:0;
	font-weight:normal;
}
.kochira{
	width:auto;
	min-width:initial;
	max-width:initial;
	margin:100px 150px 0;
}
.kochira .button{
	min-width:auto;
	max-width:auto;
	padding:25px 30px;
	font-size:2.5rem;
	letter-spacing:0;
	font-weight:normal;
}

.mainban, .mainban2{
	background-size:cover;
	width:100%;
	background-position:center;
	padding:100px 0;
	text-align:center;
	background-image:url(../images/main_pic1.jpg);
	color:#fff;
}
.mainban2{
	background-image:url(../images/top_about_pic.jpg);
}

.mainban2 div.lo p{
	margin-bottom:50px;
}
.mainban2 div.lo p:first-child{
	font-size:4rem;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

.mainban3{
	background-size:cover;
	width:100%;
	background-position:center;
	padding:80px 0;
	text-align:center;
	background-image:url(../images/about_vison.jpg);
	margin-top:80px;
}



#mainBanner3{
	background-image:url(../images/top_recruit_pic.jpg);
	background-size:cover;
	background-position:center;
	width:100%;
	height:250px;
	padding-top:40px;
	margin-top:100px;
}
#mainBanner3 div.lo{
	height:auto;
	line-height:1.6;
	text-align:left;
	color:#fff;
	margin:0 auto;
	max-width:1000px;
	padding:0 8px;
}
#mainBanner3 div.lo p{
	margin-bottom:30px;
}
#mainBanner3 div.lo p strong{
	font-size:3rem;
	letter-spacing:0.5rem;
	display:inline-block;
}
#mainBanner3 div.lo p span{
	color:#0064d2;
	display:inline-block;
	margin-bottom:10px;
}
#mainBanner3 div.lo .container{
	margin-left:0;
}

#mainBanner4{
	background-image:url(../images/top_event_pic.jpg);
	background-size:cover;
	width:100%;
	height:250px;
	background-position:center;
	padding-top:40px;
	margin-top:20px;
}
#mainBanner4 div.lo{
	height:auto;
	line-height:1.6;
	text-align:right;
	color:#fff;
	margin:0 auto;
	max-width:1000px;
	padding:0 8px;
}
#mainBanner4 div.lo p{
	margin-bottom:30px;
}
#mainBanner4 div.lo p strong{
	font-size:3rem;
	letter-spacing:0.5rem;
	display:inline-block;
}
#mainBanner4 div.lo p span{
	color:#0064d2;
	display:inline-block;
	margin-bottom:10px;
}
#mainBanner4 div.lo .container{
	margin-right:0;
}

.koushi{
	background-image:url(../images/top_back_gr.jpg);
	padding:50px 0;
}
.flex01{
	display:flex;
	max-width:1000px;
	margin:30px auto;
}
.flex01 > div{
	overflow:hidden;
}
.flex01 img{
	vertical-align:middle;
	object-fit: cover;
	width:auto;
	height:auto;
	transition: 0.3s;
	text-align:center;
}
.flex01 img:hover{
		-webkit-transform: scale(1.1);
		-moz-transform: scale(1.1);
		-ms-transform: scale(1.1);
		-o-transform: scale(1.1);
		transform: scale(1.1);
}
.flex01 dl{
	padding:40px 0;
}
.flex01 dl dt{
	color:#0064d2;
}
.flex01 dl dt strong{
	font-size:3rem;
	display:block;
	letter-spacing:0.2em;
}
.flex01 dl dd{
	color:#999;
	margin-top:30px;
}
.flex01 > div{
	width:50%;
	text-align:center;
	background-color:#fff;
	overflow:hidden;
}

.flex02{
	display:flex;
  justify-content:space-between;
	margin:80px auto;
}
.flex02 div.text{
	width:45%;
}
.flex02 p.big{
	font-size:2.5rem;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	margin-bottom:50px;
}
.flex02 p.ser01{
	font-size:2.5rem;
	margin-bottom:20px;
	font-weight:bold;
	background-image:url(../images/ser.gif);
	background-repeat:no-repeat;
	background-position:left center;
	padding-left:25px;
}
.flex02 p.ser02{
	font-size:2.8rem;
	margin-bottom:50px;
	color:#0064d2;
}
.flex02 div.img{
	width:50%;
}
.flex02 div.img img{
	max-width:100%;
	height:auto;
}

.bg2{
	background:linear-gradient(90deg,#3985d9 0%,#3985d9 30%,#f3f3f3 30%,#f3f3f3 100%);
}
.flex03{
	display:flex;
	justify-content:space-between;
	align-items:         flex-end;
	margin:0 auto 80px;
	max-width:1000px;
	padding-top:60px;
}
.flex03 div:first-child{
	width:38%;
}
.flex03 div:first-child img{
	max-width:100%;
	height:auto;
	vertical-align:bottom;
}
.flex03 div:last-child{
	width:57%;
	padding-bottom:75px;
}
.flex03 div:last-child dt{
	text-align:center;
	display:inline-block;
	font-size:1.8rem;
}
.flex03 div:last-child dt strong{
	display:block;
	font-size:3.5rem;
	font-weight:bold;
}
.flex03 div:last-child dd{
	margin-top:50px;
}
.flex03 div:last-child dd span{
	margin-top:50px;
	display:block;
	text-align:right;
	font-size:1.7rem;
}
.flex03 div:first-child p:first-child{
	
}

.flex04{
	display:flex;
	justify-content:space-between;
	color:#fff;
	margin-top:30px;
}
.flex04 div{
	background-repeat:no-repeat;
	background-position:10px 10px;
	background-color:#0064cf;
	text-align:center;
	width:33.2%;
	padding:30px 0;
}
.flex04 div:nth-child(1){
	background-image:url(../images/glass_no1.png);
}
.flex04 div:nth-child(2){
	background-image:url(../images/glass_no2.png);
}
.flex04 div:nth-child(3){
	background-image:url(../images/glass_no3.png);
}
.flex04 div p{
	background-color:#0064cf;
	margin-top:10px;
}
.flex04 div p strong{
	font-size:3rem;
	display:block;
	margin-bottom:15px;
}

.flex05{
	display:flex;
	justify-content:space-between;
	color:#fff;
	margin-top:30px;
}
.flex05 div{
	text-align:center;
	width:30%;
	background-color:#0064cf;
}
.flex05 div img{
	width:auto;
	height:auto;
	max-width:100%;
	max-height:100%;
	vertical-align:middle;
}
.flex05 div p{
	padding:15px 0;
}

.flex06{
	display:flex;
	flex-wrap:wrap;
	border:1px solid #fff;
	border-bottom:none;
	margin-top:100px;
}
.flex06 > div{
	display:flex;
	width:50%;
	min-height:200px;
	background-color:#fff;
	border-bottom:1px solid #fff;
	font-size:1.7rem;
}

.flex06 > div:nth-child(2), .flex06 > div:nth-child(3){
	background-color:#f7f7f7;
}
.flex06 > div div:first-child{
	background-color:#0064cf;
	width:20%;
	text-align:center;
	padding:25px 0;
}
.flex06 > div div:first-child img{
	width:auto;
	height:auto;
	max-width:100%;
	max-height:100%;
	vertical-align:middle;
	
}
.flex06 > div div:last-child{
	width:70%;
	padding:40px 5%;
}
.flex06 > div strong{
	display:block;
	color:#0064cf;
	font-size:2.7rem;
	font-weight:bold;
	line-height:1.2;
	margin-bottom:30px;
}
.pro{
	text-align:center;
	background-color:#cfb570;
	padding:80px 2%;
}
.pro img{
	display:inline-block;
	margin-bottom:50px;
}

.flex07{
	width:90%;
	display:flex;
	margin:20px auto 0;
	align-items:baseline;
	justify-content:space-between;
}
.flex07 div{
	width:40%;
}
.flex07 > div:nth-child(2){
	width:8%;
	text-align:center;
}












.contents-wrap {
	display: flex;
	justify-content: space-between;
	margin:80px auto 0;
}
.rev {
	flex-direction: row-reverse;
}
.contents-text {
	width: 45%; /*flex: 2;*/
}
.contents-img {
	width: 50%; /*flex: 1;*/
}
.contents-text p.big{
	font-size:2.5rem;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	margin-bottom:50px;
}
.contents-text p.ser01{
	font-size:2.5rem;
	margin-bottom:20px;
	font-weight:bold;
	background-image:url(../images/ser.gif);
	background-repeat:no-repeat;
	background-position:left center;
	padding-left:25px;
}
.contents-text p.ser02{
	font-size:2.8rem;
	margin-bottom:30px;
	color:#0064d2;
}
.contents-text p.ser02 span{
	font-size:1.5rem;
	color:#000;
	display:block;
}
.contents-text ul{
	margin-left:18px;
	padding-top:10px;
}
.contents-text ul li{
	list-style-position:outside;
	margin-top:2em;
}
.contents-text ul li:before{
	content: '';
	width: 10px;
	height: 10px;
	display: inline-block;
	border-radius: 100%;
	background: #0064d2;
	position: relative;
	left: -8px;
	top: -1px;
	margin-left:-8px;
}

.contents-img img {
	display: block;
	width: 100%;
	height: auto;
}

.mid{
	font-size:2rem;
	margin-bottom:30px;
}
.b3{
	display:flex;
  justify-content:center;
}
.contents-wrap0 {
	display: flex;
	justify-content: space-between;
	margin:80px auto 0;
}
.contents-wrap0 .contents-text {
	width: 55%;
}
.contents-wrap0 .contents-text .mid{
	font-size:1.7rem;
	margin-bottom:50px;
}
.contents-wrap0 .contents-img {
	width: 40%;
}






/* 
.slogan h2{
padding-bottom:5px;
font-size:20px;
}

#subpage #mainBanner{margin-top:0;}
 */

/**************************
/* グリッド
**************************/
.gridWrapper{
padding-bottom:20px;
overflow: hidden;
}

* html .gridWrapper{height:1%;}
	
.grid{
float:left;
}

.box{
padding:10px;
text-align:center;
}

.box img{
max-width:100%;
height:auto;
}

.box h3{padding:10px 0 5px;}

.box h3, .box p{text-align:left;}

.box p.readmore{
padding:10px 5px 5px;
text-align:right;
}

.box p.readmore a{
padding:3px 7px;
border-radius:3px;
color:#fff;
background:#d1ad93;
}

.box p.readmore a:hover{background:#ad8a71;}


/*************
メイン コンテンツ
*************/
section.content article{
padding:20px;
margin-bottom:20px;
border:1px solid #ebebeb;
overflow:hidden;
}

* html section.content article{height:1%;}

section.content p{margin-bottom:5px;}

#h2back, #h2back02, #h2back03, #h2back04, #h2back05, #h2back06, #h2back07{
	background-size:cover;
	width:100%;
	background-position:center;
	padding:180px 0;
}
#h2back{
	background-image:url(../images/about_pic.jpg);
}
#h2back02{
	background-image:url(../images/service_pic.jpg);
}
#h2back03{
	background-image:url(../images/contact_pic.jpg);
}
#h2back04{
	background-image:url(../images/sabu_pic.jpg);
}
#h2back05{
	background-image:url(../images/partsinfo_pic.jpg);
}
#h2back06{
	background-image:url(../images/glassfilm_pic.jpg);
}
#h2back07{
	background-image:url(../images/events_pic.jpg);
}
div.back01{
}
h2{
	text-align:center;
	color:#fff;
}
h2 strong{
	display:block;
	font-size:3.8rem;
	font-weight:normal;
	margin-bottom:10px;
}
h3{
	margin-top:100px;
	text-align:center;
}
h3 strong{
	display:block;
	font-size:3.8rem;
	color:#0064d2;
	margin-bottom:10px;
}
h4{
	font-size:2rem;
	color:#0064d2;
	margin-top:100px;
}
h5{
	font-size:2.5rem;
	background-image:url(../images/ser.gif);
	background-repeat:no-repeat;
	background-position:left center;
	padding-left:25px;
	margin-top:50px;
}
.obi{
	background-color:#cfb570;
	text-align:center;
	color:#fff;
	font-weight:bold;
	font-size:1.8rem;
	padding:25px 10px;
	margin:60px auto 20px;
}
.serif{
	font-size:4rem;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	color:#0064d2;
	text-align:center;
	margin:100px auto 0;
}
.boshu{
	padding:35px 0;
	border-top:1px solid #000;
	border-bottom:1px solid #000;
	margin:100px auto 0;
	font-size:1.8rem;
	display:block;
	text-align:center;
	width:50%;
}
.chu{
	margin-top:20px;
	color:#666;
}
.ser00{
	margin-top:100px;
	line-height:2;
}
.ser00 dt{
	font-size:2.5rem;
	margin-bottom:20px;
	font-weight:bold;
	background-image:url(../images/ser.gif);
	background-repeat:no-repeat;
	background-position:left center;
	padding-left:25px;
}
.ser00 dd strong{
	font-size:2.5rem;
	margin-bottom:30px;
	color:#0064d2;
	display:block;
}

.ore{
	color:#f7931e;
	display:inline-block;
	margin-top:10px;
	font-weight:bold;
}
.cha{
	color:#754c24;
	display:inline-block;
	margin-top:10px;
	font-weight:bold;
}




.upscale{
	display: flex;
	justify-content:space-between;
	margin:100px auto;
}
.upscale li{
	width:45%;
}
.upscale li a{
	color:#fff;
	font-size:1.7rem;
}
.upscale span{
	overflow:hidden;
	display:block;
}
.upscale strong{
	display:block;
	background-color:#0064d2;
	text-align:center;
	padding:25px 0;
	background-image:url(../images/yajirusi_siro.png);
	background-repeat:no-repeat;
	background-position:95% center;
}
.upscale img{
	transition: 0.3s;
	vertical-align:middle;
	text-align:right;
	max-width:100%;
	height:auto;
}
.upscale img:hover{
		-webkit-transform: scale(1.1);
		-moz-transform: scale(1.1);
		-ms-transform: scale(1.1);
		-o-transform: scale(1.1);
		transform: scale(1.1);
}

.upscale-event{
	display: flex;
	margin:100px auto;
}
.upscale-event li{
	width:30%;
	margin:1%;
}
.upscale-event li a{
	color:#fff;
	font-size:1.7rem;
}
.upscale-event span{
	overflow:hidden;
	display:block;
}
.upscale-event strong{
	display:block;
	background-color:#0064d2;
	text-align:center;
	padding:25px 0;
	background-image:url(../images/yajirusi_siro.png);
	background-repeat:no-repeat;
	background-position:95% center;
}
.upscale-event img{
	transition: 0.3s;
	vertical-align:middle;
	text-align:right;
	max-width:100%;
	height:auto;
}
.upscale-event img:hover{
		-webkit-transform: scale(1.1);
		-moz-transform: scale(1.1);
		-ms-transform: scale(1.1);
		-o-transform: scale(1.1);
		transform: scale(1.1);
}


.tab {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  margin: 0 auto;
	justify-content:center;
  align-items:         stretch;
	border-bottom: 1px solid #999;
}

.btn {
	border-right: 1px solid #999;
	text-align: center;
	text-transform: uppercase;
	position: relative;
	overflow: hidden;
	transition: .3s;
	width:25%;
}
.tab li:first-child{
	border-left: 1px solid #999;
}
.btn:after {
  position: absolute;
  transition: .3s;
  content: '';
  width: 0;
  left: 50%;
  bottom: 0;
  height: 3px;
  background: #0064d2;
  height: 120%;
  left: -10%;
  transform: skewX(15deg);
  z-index: -1;
}
.btn a{
  padding: 20px;
	display:block;
}
.btn a:hover{
	cursor: pointer;
	color: #fff;
}
.btn a.act {
	color: #fff;
	background-color:#0064d2;
}
.btn:hover:after {
  width: 100%;
  left: 0;
  left: -10%;
  width: 120%;
}



.tab{overflow:hidden;}
/* .tab li{
	background:#ccc;
	
} */
.tab li.select{background:#0064d2;}
.tab li.select a{color:#fff;}

.hide {display:none;}




.net{
	display:flex;
	flex-wrap:wrap;
	max-width:1000px;
	margin:150px auto 100px;
	background-image:url(../images/top-netbuhinkan_n.png), url(../images/top-netbuhinkan_back.png);
	background-repeat:no-repeat, repeat;
	background-position:top 8px right 10px, left;
	padding:20px 50px;
}
.net div:first-child{
	width:380px;
}
.net div:nth-child(2){
	display:none;
}

.net .container {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
	width:250px;
}
.net .button {
	flex: 1 1 auto;
	margin: 10px;
	padding: 12px;
	border: 2px solid #fff;
	text-align: center;
	text-transform: uppercase;
	position: relative;
	overflow: hidden;
	transition: .3s;
	z-index: 0;
	font-size:1.6rem;
	color:#fff;
	background-image:url(../images/yajirusi_siro.png);
	background-repeat:no-repeat;
	background-position:95%;
	letter-spacing:0;
}
.net .button:after {
  position: absolute;
  transition: .3s;
  content: '';
  width: 0;
  left: 50%;
  bottom: 0;
  height: 3px;
  background: #fff;
  height: 120%;
  left: -10%;
  transform: skewX(15deg);
  z-index: -1;
}
.net .button:hover {
  cursor: pointer;
  color: #0064d2;
}
.net .button:hover:after {
  left: -10%;
  width: 120%;
}

.imgc{
	text-align:center;
	margin:80px auto 0;
}
.imgc img{
max-width:100%;
height:auto;
}

.buhin{
	background-image:url(../images/service_e1_gs.jpg);
	background-size:cover;
	background-position:center;
	padding:60px 0;
	margin-top:100px;
}
.buhin p{
	color:#fff;
	font-weight:bold;
	font-size:2rem;
}
.buhin p a{
	color:#fff;
	font-weight:normal;
	font-size:1.6rem;
}
.buhin ul{
	display: flex;
	flex-wrap:wrap;
}
.buhin ul li{
	background-color:#fff;
	margin:5px;
	width:240px;
}
.buhin ul li a{
	background-repeat:no-repeat;
	background-position:left;
	padding-left:110px;
	height:85px;
	display:block;
}
.buhin ul li a span{
	height:100%;
	display: flex;
	align-items: center;
}
.buhin ul li:nth-child(1) a{
	background-image:url(../images/service_e1_gs1.png);
}
.buhin ul li:nth-child(2) a{
	background-image:url(../images/service_e1_gs2.png);
}
.buhin ul li:nth-child(3) a{
	background-image:url(../images/service_e1_gs3.png);
}
.buhin ul li:nth-child(4) a{
	background-image:url(../images/service_e1_gs4.png);
}
.buhin ul li:nth-child(5) a{
	background-image:url(../images/service_e1_gs5.png);
}
.buhin ul li:nth-child(6) a{
	background-image:url(../images/service_e1_gs6.png);
}
.buhin ul li:nth-child(7) a{
	background-image:url(../images/service_e1_gs7.png);
}
.buhin ul li:nth-child(8) a{
	background-image:url(../images/service_e1_gs8.png);
}


.acdl{
  display: flex;
  flex-wrap: wrap;
}
.acdl dt, .acdl dd{
	margin-top:50px;
}
.acdl dt{
	width:25%;
}
.acdl dt:first-child{
	font-size:1.8rem;
}
.acdl dd{
	width:75%;
}

.policy{
	margin:160px 50px 0;
}
.policy dl dt{
	margin-top:50px;
	color:#0064d2;
	font-size:1.8rem;
}
.policy dl dd{
	margin-top:10px;
}

.site{
	font-size:1.6rem;
	margin:100px auto 0;
}
.site > li{
	display:flex;
	margin-top:30px;
}
.site > li > a{
	background-image:url(../images/yajirusi_kuro.png);
	background-repeat:no-repeat;
	background-position:left 6px;
	padding-left:30px;
	width:12em;
}
.site > li > ul li a{
	color:#666;
}
.site > li > ul li a:hover{
	color:#f00;
}

.bc-b{
	background-color:#0064d2;
	text-align:center;
	padding:30px 0;
	margin-top:80px;
}
.bc-b p{
	color:#fff;
	font-weight:bold;
	display:98%;
	margin:0 auto;
}
.gp01{
	text-align:center;
	font-size:1.7rem;
	margin-top:60px;
}
.gp02{
	margin-top:60px;
}
.sakusei{
	text-align:center;
	font-size:2.5rem;
	margin:150px auto 0;
}

.video{
	position:relative;
	width:100%;
	padding-top:56.25%;
	margin-top:50px;
}
.video iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}



/* 
section.content img{
max-width:90%;
height:auto;
}

.alignleft{
float:left;
clear:left;
margin:3px 10px 10px 0;
}

.alignright{
float:right;
clear:right;
margin:3px 0 10px 10px;
}

#gallery .grid{background:transparent;}

#gallery .grid img,.border{box-shadow:0 0 3px #ccc;}
 */

/*************
テーブル
*************/

.news{
	border-collapse:collapse;
	margin:50px auto;
	width:90%;
}
.news tr{
	border-top:1px dashed #ccc;
	border-bottom:1px dashed #ccc;

}
.news th, .news td{
	font-size:1.6rem;
	font-weight:bold;
	padding-top:20px;
	padding-bottom:20px;
}
.news th{
	text-align:left;
	width:18rem;
}
.news td a{
	color:#0064d2;
}

.enkaku{
	border-collapse:collapse;
    margin: 100px auto 0;
    width: 90%;
	table-layout:fixed;
}
.enkaku tr{
	border-top:1px solid #999;
	border-bottom:1px solid #999;
}
.enkaku th{
	vertical-align:top;
	width: 200px;
	margin: 0;
	text-align:left;
	padding:20px 15px;
	white-space:nowrap;
}
.enkaku td{
	padding:20px 15px;
	text-align:left;
	vertical-align: middle;
	overflow: hidden;
}

table.brwsr2 {
    margin: 100px auto 0;
    width: 90%;
    border: none;
    border-top: solid 1px #999;
    border-bottom: solid 1px #999;
    border-collapse: separate;
    border-spacing: 0 10px;
}
 
table.brwsr2 th {
	vertical-align:top;
	width: 200px;
	border-right: solid 1px #999;
	margin: 0;
	text-align:left;
	padding:15px;
	white-space:nowrap;
}
 
table.brwsr2 td.data {
	margin: 0;
	border: none;
	padding:15px;
	text-align:left;
	vertical-align: middle;
	overflow: hidden;
}
table.brwsr2 td.bar {
    height: 1px;
    width: 100%;
    border-top: solid 1px #999;
}



/* table.table{
border-collapse:collapse;
margin:5px auto 15px auto;
}

table.table td{
border-collapse:collapse;
background-color:#F9F9F9;
text-align:left;
padding:8px;
border:1px solid #D6D6D6;
line-height:20px;
}

table.table th{
background-color:#F5F5F5;
text-align:right;
padding:8px;
white-space:nowrap;
color: #151515;
border-top:1px solid #D4D4D4;
border-right:4px solid #D4D4D4;
border-bottom:1px solid #D4D4D4;
border-left:1px solid #D4D4D4;
font-size:13px;
font-weight:normal;
letter-spacing:1px;
background-repeat:repeat-x;
background-position:top;
} */


/*************
/* サイドバー
*************/
#sidebar ul{padding:10px;}

#sidebar li{
margin-bottom:10px;
padding-bottom:10px;
list-style:none;
border-bottom:1px dashed #ebebeb;
}

#sidebar li:last-child{
border:0;
margin-bottom:0px;
}

#sidebar li a{
display:block;
}

#sidebar ul.list li{
clear:both;
margin-bottom:5px;
padding:5px 0;
overflow:hidden;
border:0;
}

ul.list li{height:1%;}

ul.list li img{
float:left;
margin-right:10px;
}

ul.list li{
font-size:12px;
line-height:1.35;
}

iframe{
	vertical-align:bottom;
}
/*************
/* フッター
*************/
.p-top{
	position:fixed;
	right: 15px;
	bottom: 0;
	z-index: 1500;
}
#footer{
	clear:both;
	background-color:#333;
	color:#fff;
	padding-top:60px;
	padding-bottom:20px;
}

#footer .inner{
overflow:hidden;
}

* html #footer .inner{height:1%;}

.footflex{
	display:flex;
  flex-wrap:wrap;
  align-items: flex-start;
}
.footflex > div{
	margin-right:50px;
}
.footflex > div strong{
	display:block;
	font-size:1.8rem;
	margin:20px 0;
}
.footflex ul{
	margin-left:50px;
	border-left:2px dotted #06c;
	padding-left:30px;
}
.footflex ul li{
	margin:5px 0px;
}
.footflex ul li a{
	color:#fff;
}










#footer .grid{
margin:0;
}

#footer #info .logo, #footer #info .info{float:none;}

#footer #info .info{
clear:both;
text-align:left;
}

#footer .logo{font-size:18px;}

#footer .info .tel,#footer .info .tel span,#footer #info .open{
font-size:12px;
}

ul.footnav{
float:right;
width:630px;
padding:10px 0;
}

ul.footnav li{
float:left;
margin-bottom:10px;
padding:0 7px 0 8px;
border-right:1px solid #ebebeb;
}

address{
	clear:both;
	font-style:normal;
	font-size:12px;
	color:#fff;
	margin-top:70px;
}


/* PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1000px){
	#wrapper,#header,.inner{
	width:1000px;
	padding:0;
	margin:0 auto;
	}
	
	#wrapper{padding-bottom:20px;}


	#main{
	float:right;
	width:680px;
	padding:15px 0 0 0;
	}
	
	#sidebar{
	float:left;
	width:250px;
	padding:15px 0 0 0;
	overflow:hidden;
	}
	
	#sidebar article{
	padding:7px;
	margin-bottom:20px;
	border:1px solid #ebebeb;
	overflow:hidden;
	}
	
	/* グリッド全体 */
	.gridWrapper{
	width:990px;
	margin:0 0 0 -30px;
	}
	
	#gallery article{padding:10px 0 10px 10px;}
	
	/* グリッド */
	.grid{
	float:left;
	width:300px;
	margin-left:30px;
	}
	
	#subpage .grid{width:auto;}
	
  #gallery .grid{
	width:auto;
	margin:10px 0 2px 10px;
	}
	
	#footer .inner{
	width:940px;
	padding:10px;
	}


.video{
	width:80%;
	padding-top:45%;
	margin:50px auto 0;
}
.tyu_01 {
width: 94%;
margin: 0 auto;
padding: 100px 0;
max-width: 801px;
}
.tyu_02 {
text-align: center;
}
.tyu_02 img {
max-width: 100%;
}
.tyu_03 {
font-size: 120%;
line-height: 28px;
padding: 20px 0;
}
.tyu_04 {
font-size: 110%;
line-height: 26px;
padding: 0 0 20px 0;
}
.tyu_04 span {
display: block;
font-weight: bold;
}




}


@media only screen and (max-width:999px){
	*{
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
	}
	
	#header{padding:0 10px;}

#h2back, #h2back02, #h2back03, #h2back04, #h2back05, #h2back06, #h2back07{
	padding:10vw 0;
}

.net div:first-child{
	width:100%;
}

.footflex > div{
	margin-right:auto;
	width:100%;
	text-align:center;
	margin-bottom:30px;
}


.kochira{
	margin:100px auto 0;
}
.kochira .button{
	font-size:2.0rem;
}
.btn {
	width:33.3%;
}
.w50 .btn{
	width:50%;
}
table.brwsr2 {
    width: 100%;
}
.enkaku{
    width: 100%;
}


.acdl{
	display:block;
}
.acdl dt{
	margin-top:50px;
	width:auto;
}
.acdl dd{
	margin-top:15px;
	margin-left:2em;
	width:auto;
}

.policy{
	margin:100px auto 0;
}

.b3{
	display:block;
}
.b3 .kuro{
	width:80%;
	margin:2% 10%;
}

.flex07{
	width:100%;
}
.tyu_01 {
width: 94%;
margin: 0 auto;
padding: 50px 0;
max-width: 801px;
}
.tyu_02 {
text-align: center;
}
.tyu_02 img {
max-width: 100%;
}
.tyu_03 {
padding: 20px 0;
}
.tyu_04 {
padding: 0 0 20px 0;
}
.tyu_04 span {
display: block;
font-weight: bold;
}
}


/* スマートフォン 横(ランドスケープ) */
@media only screen and (max-width:640px){
	#header{
	height:auto;
	padding-bottom:20px;
	}
	
	#header h1,.logo,.info{text-align:center;}
	
	.logo,.info{
	clear:both;
	width:100%;
	float:none;
	margin:0;
	}
	
	.box img{
	float:left;
	margin-right:5px;
	}
	
	.box h3{padding-top:0;}

  .alignleft,.alignright{
	float:none;
	display:block;
	margin:0 auto 10px;
	}
	
	#gallery .grid{float:left;}



	.contents-wrap, .contents-wrap0,
	.contents-wrap:nth-child(odd)  {
		flex-direction: column;
	}
	.contents-text,
	.contents-img ,
	.contents-wrap0 .contents-text,
	.contents-wrap0 .contents-img{
		width: 100%;
	}
	.contents-wrap0 .contents-img{
	margin-top:15px;
	text-align:center;
}
	.contents-text {
		padding: 2rem;
	}

h2 strong{
	font-size:2rem;
}
h3 strong{
	font-size:2.5rem;
}

.serif{
	font-size:2rem;
}
.mainban2 div.lo p:first-child{
	font-size:2rem;
}

.enkaku th{
    width: 160px;
}

.info li:last-child{
	margin-top:15px;
}

.boshu{
	width:80%;
}

.site > li{
	display:block;
	margin-top:30px;
}
.site > li > a{
	width:auto;
}
.site > li ul{
	padding-left:50px;
}


.upscale-event{
	display:block;
}
.upscale-event li{
	width:100%;
	margin:15px 0;
}
.upscale-event li img{
	width:100%;
}

.news{
	width:100%;
}
.news th, .news td{
	font-size:1.5rem;
	display:block;
}
.news th{
	padding-top:20px;
	padding-bottom:5px;
	width:auto;
}
.news td a{
	padding-top:5px;
	padding-bottom:20px;
}

.flex04{
  flex-direction:         column;
}
.flex04 div{
	width:100%;
	margin-bottom:2px;
}

.flex06 > div{
	width:100%;
}
.flex06 > div:nth-child(3){
	background-color:#fff;
}
.flex06 > div:nth-child(4){
	background-color:#f7f7f7;
}

.tyu_01 {
width: 94%;
margin: 0 auto;
padding: 50px 0;
max-width: 801px;
}
.tyu_02 {
text-align: center;
}
.tyu_02 img {
max-width: 100%;
}
.tyu_03 {
padding: 20px 0;
}
.tyu_04 {
padding: 0 0 20px 0;
}
.tyu_04 span {
display: block;
font-weight: bold;
}






}

/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px){
	.grid{width:100%;}

.upscale{
	display:block;
	margin:100px auto;
}
.upscale li{
	width:auto;
	margin:20px auto;
}
}