@charset "utf-8";
/* CSS Document */
#flash02.other{
 background-image: url(../../img/other/main.jpg);
 background-position: center center;
 background-size: cover;
 background-repeat: no-repeat;
}
#flash02.shape{
 background-image: url(../../img/shape/main.jpg);
 background-position: center center;
 background-size: cover;
 background-repeat: no-repeat;
}
#flash02.cut{
	background-image: url(../../img/cut/main.jpg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
#flash02.polish{
 background-image: url(../../img/polish/main.jpg);
 background-position: center center;
 background-size: cover;
 background-repeat: no-repeat;
}
#flash02.polish2{
 background-image: url(../../img/polish/main2.jpg);
 background-position: center center;
 background-size: cover;
 background-repeat: no-repeat;
}
#flash02.company{
 background-image: url(../../img/company/main.jpg);
 background-position: center center;
 background-size: cover;
 background-repeat: no-repeat;
}
#flash02.service{
	background-image: url(../../img/service/main.jpg);
	background-position: left center;
	background-size: cover;
	background-repeat: no-repeat;
}
#flash02.history{
 background-image: url(../../img/history/main.jpg);
 background-position: left center;
 background-size: cover;
 background-repeat: no-repeat;
}

.sub {
 width: 19%;
 float: left;
}
.sub li {
 padding-bottom: 15px;
}
.sub li a {
 display: block;
 border: 1px solid #1b1464;
 color: #1b1464;
 padding: 10px 20px;
 border-radius: 50px;
 font-size: 15px;
 line-height: 1.2em;
 text-align: center;
 text-decoration: none;
}
.sub li a:hover, .sub li.current a {
 border: 1px solid #1b1464;
 background-color: #1b1464;
 color: #fff;
}
.main {
 width: 71%;
 float: right;
}
.newsbox {
 margin-bottom: 50px;
 padding-bottom: 30px;
 border-bottom: 1px solid #6f6f6f;
}
.newsbox .link {
 text-align: right;
}
.newsbox .cate {
 display: inline-block;
 font-size: 14px;
 padding: 4px 10px;
 line-height: 1.8em;
 color: #fff;
 background-color: #1B1464;
 vertical-align: middle;
 margin-bottom: 20px;
}
.newsbox .cate.news {
 background-color: #ff0000;
}
.newsbox .cate.item {
 background-color: #198065;
}
.newsbox .cate.recruit {
 background-color: #0075da;
}
.newsbox .date {
 display: inline-block;
 font-size: 16px;
 padding: 0 10px;
 line-height: 1.8em;
 vertical-align: middle;
 margin-bottom: 20px;
}
.newsbox .sum {
 display: inline-block;
 padding-bottom: 20px;
 padding-right: 10px;
}
.newsbox .sum img {
 height: 250px;
 width: auto;
 max-width: 100%;
}
.sitemap {
 letter-spacing: -1em;
}
.sitemap ul {
 display: inline-block;
 vertical-align: top;
 letter-spacing: 0;
 width: 30%;
 padding-left: 5%;
}
.sitemap ul:first-of-type {
 padding-left: 0;
}
.sitemap li a {
 padding-right: 30px;
 padding-bottom: 15px;
 background-image: url(../img/arrow03.png);
 background-repeat: no-repeat;
 background-position: right 7px;
 display: block;
 color: #1B1464;
 text-decoration: none;
}
.sitemap a.blank {
 background-image: url(../img/outer.png);
}
.photoright01 {
 padding-bottom: 140px;
}
.photoright01 .box {
 width: 45%;
 float: left;
}
.photoright01 .photo {
 width: 53%;
 float: right;
}
.photoright01 .photo img {
 width: 100%;
 height: auto;
}
.busbox {
 margin-bottom: 100px;
 border-bottom: 1px solid #d8d8d8;
 position: relative;
}
.busbox .box {
 width: 63%;
 text-align: left;
 float: left;
 padding-bottom: 90px;
 line-height: 1.6em;
}
.busbox .photo {
 width: 33%;
 float: right;
 padding-bottom: 90px;
}
.busbox .photo img {
 width: 100%;
 height: auto;
}
.busbox .link{
 position: absolute;
 left: 0;
 bottom: 90px;
}
.itemlink {
 text-align: center;
}
.itemlink .box{
 position: relative;
 width: 400px;
 margin-right: 4%;
 letter-spacing: -1em;
 margin-bottom: 35px;
	display: inline-block;
	vertical-align: top;
}

.itemlink .box .photo{
 display: inline-block;
 vertical-align: middle;
 padding-left: 20px;
 padding-top: 7px;
 padding-bottom: 7px;
 width: 35%;
}
.itemlink .box .photo img{
 width: 100%;
 height: auto;
}
.itemlink .box .come{
 display: inline-block;
 vertical-align: middle;
 padding-left: 10px;
 letter-spacing: 0;
 padding-bottom: 0;
}
.itemlink .box a{
 display: block;
 color: #1b1464;
 text-decoration: none;
}
.itemlink .box a:hover{
 opacity: 0.8;
}
.itemdetail {
 clear: both;
 background-color: #FFFFFF;
 border-width: 1px;
 border-style: solid;
 margin-top: -80px;
 padding: 20px 30px 10px;
 margin-bottom: 180px;
}
.itemdetail .komidashi {
 padding-bottom: 0px!important;
 margin-bottom: 0px;
}
.itemdetail .box {
 width: 18%;
 float: left;
 padding-right: 2.5%;
 font-size: 14px;
 line-height: 1.6em;
}
.itemdetail .box:nth-of-type(5n) {
 padding-right: 0px;
}
.itemdetail .photo {
 padding-bottom: 4px;
}


.itemdetail .photo img {
 width: 100%;
 height: auto;
}
.companylink {
 padding-bottom: 100px;
}
.companylink ul {
 display: flex;
 flex-wrap: wrap;
}
.companylink li{
 margin-right: 30px;
 width: calc((100% - 60px) / 3);
}
.companylink li:nth-of-type(3n){
 margin-right: 0;
}
.companylink li a{
 border: 1px solid;
 background-color: #FFF;
 padding: 10px;
 display: block;
 text-align: center;
 color: #1b1464;
 text-decoration: none;
}
.companylink li a:after{
 content: " ";
 visibility: visible;
 display: inline-block;
 background-image: url(../img/arrow02.png);
 width: 10px;
 height: 6px;
 vertical-align: middle;
 margin-left: 10px;
}
.companylink li a:hover{
 opacity: 0.8;
}
.rinen .box {
 letter-spacing: -1em;
 padding-bottom: 40px;
 margin-bottom: 40px;
 border-bottom: 1px solid #d8d8d8;
}
.rinen .box:last-of-type{
 margin-bottom: 0px;
 border-bottom: none}
.rinen .box h4 {
 width: 20%;
 letter-spacing: 0;
 font-size: 25px;
 line-height: 1.6em;
 font-weight: bold;
 display: inline-block;
 vertical-align: top;
 padding-right: 1%;
}
.rinen .box .come {
 width: 42%;
 letter-spacing: 0;
 display: inline-block;
 vertical-align: top;
 padding-right: 2%;
}

.rinen .box .come02 {
 width: 79%;
 letter-spacing: 0;
 display: inline-block;
 vertical-align: top;
}
.rinen .box .img {
 width: 33%;
 letter-spacing: 0;
 display: inline-block;
 vertical-align: top;
}
.rinen .box .img img{
 width: 100%;
 height: auto;
}

.greet {

}
.greet .box {
 width: 64%;
 float: left;
}
.greet .photo {
 width: 32%;
 float: right;
}
.greet .photo img {
 width: 100%;
 height: auto;
}
.companydata {
 margin-bottom: 80px;
}
.companyarea{
 display: flex;
 flex-wrap: wrap;
}
.companyarea .box {
 width: 30%;
 padding-right: 5%;
 padding-bottom: 30px;
 font-size: 15px;
 line-height: 1.6em;
}
.companyarea .box:nth-of-type(3n){
 padding-right: 0;
}
.companyarea .photo img{
width:100%;
height:auto;
}
.servicetop {
padding-bottom: 100px;
}
.servicetop .box {
 width: 66%;
 float: left;
}
.servicetop .photo {
 width: 20%;
 float: right;
 padding-top: 30px;
}
.servicetop .photo img {
 width: 100%;
 height: auto;
}.lineup {
 margin-top: 80px;
 border-top: 1px solid #d8d8d8;
padding-bottom: 200px;
}
.lineup .box {
 border-bottom: 1px solid #d8d8d8;
 letter-spacing: -1em;
}
.lineup a {
 color: #1b1464;
 text-decoration: none;
 padding-top: 30px;
 padding-bottom: 20px;
 display: block;
 position: relative;
}
.lineup a:hover{
 background-color: rgba(27,20,100,0.10); 
}
.lineup a:after{
 content: " ";
 visibility: visible;
 background-image: url(../img/link.png);
 width: 4%;
 height: 100px;
 background-position: center center;
 background-repeat: no-repeat;
 background-size: 100% auto;
 position: absolute;
 right: 0px;
 top: 50%;
 transform: translateY(-50%);
 transition: 0.2s;
}
.lineup a:hover:after{
 right: -2px;
 top: 50%;
 transform: translateY(-50%);
}
.lineup .photo {
 display: inline-block;
 vertical-align: middle;
 width: 42%;
 padding-right: 5%;
}
.lineup .photo img{
	width: 100%;
	border-radius: 10px;
	height: auto;
}
.lineup .come {
 display: inline-block;
 vertical-align: middle;
 width: 46%;
 padding-right: 5%;
 letter-spacing: 0;
 font-size: 15px;
 line-height: 2em;
}
.lineup .come h4{
 font-size: 60px;
 line-height: 1.6em;
 font-weight: 300;
 padding-bottom: 0;
}
.lineup .come h4 .josefin{
 font-size: 30px;
 line-height: 1.6em;
 padding-left: 10px;
}
.support ul ,.support ul li {
 list-style-type: none!important;
}
.historywrap table{
 width: 100%;
}
.historywrap thead td{
 padding: 10px;
 border-bottom: 3px solid #1b1464;
 text-align: center;
 font-weight: bold;
 width: 42%!important;
 font-size: 25px;
}
.historywrap thead td:first-of-type{
 color: #ff0000;
 border-right: 20px solid #f8f5f3;
}
.historywrap thead th{
 color: #000;
 font-size: 25px;
 font-weight: bold;
 padding: 10px;
 border-bottom: 3px solid #1b1464;
 border-right: 20px solid #f8f5f3;
 text-align: center;
 width: 80px!important;
}
.historywrap tbody td{
 letter-spacing: -1em; 
 font-weight: bold;
 padding: 10px;
 border-bottom: 1px solid #b5b5b5;
 width: 42%!important;
 vertical-align: top;
}
.historywrap tbody td:first-of-type{
 color: #ff0000;
 border-right: 20px solid #f8f5f3;
 width: calc((100% - 140px) / 2)!important;
}
.historywrap tbody th{
 color: #000;
 font-size: 16px;
 font-weight: bold;
 padding: 10px;
 border-bottom: 1px solid #b5b5b5;
 border-right: 20px solid #f8f5f3;
}
.historywrap .date{
 width: 15%;
 letter-spacing: 0;
 display: inline-block;
 vertical-align: top;
 padding-bottom: 0;
}
.historywrap .come{
 width: 85%;
 letter-spacing: 0;
 display: inline-block;
 vertical-align: top;
 padding-bottom: 0;
}
