/***************************************20221128**********************************************************/
.none-221128{
	display: none;
}

/***************************************FTPブログ記事**********************************************************/
.post-571 img,.post-631 img{
	display:block;
    box-shadow: 0px 0px 21px #e5e5e5;
    height: auto;
}
.post-571 p,.post-631 p{
    margin: 20px 0;	
}

/***************************************レンタルPC**********************************************************/
.tab{
	display:none;
	}	
.pc-image{
    text-align: center;	
}
.post-521 .entry-content{
	background-color:#fff000;
}
.rentalpc-contact-wrap{
    text-align: center;
    background-image: url(https://corp-alfred.com/wp-content/themes/alfred_custom/img/pc_lp_bg.jpg);
    background-position: center center;
    background-attachment: fixed;
}
.rentalpc-contact-btn{
border: 9px solid #000;
    color: #000;
    background-color: #fff;
    display: inline-block;
    margin: 100px 0;
    font-size: 180%;
    line-height: 1.5;
    padding: 20px;
    width: 600px;
    box-shadow: 0px 12px 41px #eaeaea;
    position: relative;
    transition: 0.2s;
}
.rentalpc-contact-btn span{
    background-color: #fff000;
    font-weight: bolder;	
}
.rentalpc-contact-btn:before{
    content: "\f344";
    font-family: 'dashicons';
    font-size: 120%;
    position: absolute;
    left: 5%;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform:translateY(-50%);
    -moz-transform: translateY(-50%);
	transition:0.3s;
}
.rentalpc-contact-btn:hover{
	background-color:#000;
	color:#fff000;
	box-shadow:none;
}
.rentalpc-contact-btn:hover.rentalpc-contact-btn span{
    background-color: #000;	
}
.rentalpc-contact-btn:hover:before{
    left: 10%;	
}
.rentalpc-contact-wrap-second{
    text-align: center;
}
.rentalpc-contact-wrap-text{
    font-size: 150%;
    line-height: 2;	
}
.rentalpc-contact-wrap-second .rentalpc-contact-btn{
    margin-bottom: 0;	
}
h2.lp-faq-title{
    font-size: 200%;
    font-weight: bolder;
}
.faq-to-contact{
	color:#C9151D;
	text-decoration:underline;
}
.faq-to-contact:hover{
	text-decoration:none;
}
/************************************************　cloud times　*******************************************************/
.ct-head-image{
    width: 80%;
    margin: 0 auto 100px;	
}
.ct-intro-nayami h2{
    font-size: 250%;
    text-align: center;	
}
.ct-nayami-image{
    max-width: 1000px;
    margin: 0 auto;	
}
.ct-solution{
    font-size: 200%;
    text-align: center;	
}
.ct-shita{
    text-align: center;
    margin-top: 30px;	
}
.ct-shita img{
    width: 100px;	
}
.ct-section-title{
    font-size: 250%;
    text-align: center;	
}
.ct-section-title span{
	border-bottom: 5px solid;	
}
.about-ct-text-title{
	font-size: 150%;
    border-bottom: 2px solid;
    margin-bottom: 15px;
}
.about-ct-text-box{
    background-color: #f5f5f5;
    padding: 40px;
    line-height: 1.5;	
}
.ct-point-ul li{
	display: flex;
    align-items:center;
}
.ct-point-ul li:before{
    content: "\f15e";
    font-family: 'dashicons';
    display: block;
    font-size: 120%;
    margin-right: 10px;
}
.ct-point-ul{
    margin-top: 15px;	
}
.about-ct-image{
    text-align: center;	
}
.ct-operation-small-title{
    font-size: 150%;
    text-align: center;
    margin-bottom: 25px;
}
.ct-operation-small-title span{
    border-bottom: 3px solid;	
}
.ct-flex-child{
	text-align:center;
}
.ct-operation-child-image{
	margin-bottom:20px;
    filter: drop-shadow(2px 4px 3px #ccc);

}
.ct-flex{
	display: flex;
    justify-content: space-between;
	flex-wrap:wrap;
}
.ct-flex-child{
	width:100%;
}
.ct-flex-child:nth-child(-n+2){
    width: 48%;	
}
.ct-operation-text{
    border: 2px solid #C9151D;
    padding: 20px;
}

/***************************************SAFEDEAL**********************************************************/
.safe-logo{
    text-align: center;	
}
.safe-logo img{
	max-width:500px;
}
.safe-nayami{
    max-width: 1000px;
    text-align: center;
    margin: 0 auto;	
}
#safe-deal-top{
	text-align:center;
}
.sms-text{
	font-size:150%;
    position: absolute;
    bottom: 46px;
    left: 0;
    right: 0;
    transform: rotate(
7deg
);
}
.ss-nayami-text{
    font-size: 200%;	
}
.safe-kaiketsu{
    max-width: 1000px;
    margin: 0 auto;	
}
.about-safe-box01{
	margin-bottom:40px;
}
.safe-sms-box{
    text-align: center;
    margin: 50px 0;
	position:relative;
}
#safe-flow{
	text-align:center;
}
.safe-flow-copy{
    font-size: 150%;
    padding-bottom: 10px;
    margin-bottom: 40px;	
}
.keiyaku-img-title{
    font-size: 130%;
    margin-bottom: 20px;
    text-align: center;
}
.keiyaku-img-flex{
    display: flex;
    justify-content: space-between;	
}
.about-safe-title{
}
.about-safe-title span{
	border-bottom: 3px solid;	
}
.keiyaku-img-title span{
	border-bottom: 3px solid;	
}
.safe-touroku-mail{
    filter: drop-shadow(2px 4px 4px #ccc);
    margin-bottom: 40px;
}
.screen-img-img,.keiyaku-img-img{
    filter: drop-shadow(2px 4px 4px #ccc);
    max-width: 1000px;
    margin: 0 auto 40px;
    text-align: center;
}
.keiyaku-img-box{
    width: 48%;	
}
.last-text{
    text-align: center;
    line-height: 2;	
}
.pdf-link-flex{
	display: flex;
    justify-content: space-around;
    margin-top: 20px;
}
.pdf-link-setsumei{
    text-align: center;
    border-bottom: 1px solid;
    padding-bottom: 5px;	
}
div.pdf-link{
    border: 2px solid;
    padding: 20px;	
}

/************************************************　基本設定　*******************************************************/
html body{
	font-size:15px;
	font-family: kozuka-gothic-pro, sans-serif;
	font-weight:bold;
	letter-spacing:1.5px;
    margin-top: 10vh;
}
html {
  visibility: hidden;
}
html.wf-active {
  visibility: visible;
}
.contents-line{
	max-width:1320px;
	padding:0 30px;
	margin:0 auto;
}
.pc{
	display:block;
}
.sp{
	display:none;
}
.sp-s{
	display:none;
}
img{
	max-width:100%;
}
.hiraku{
	display:none;
}
.osu{
	cursor:pointer;
}
.screen-reader-text{
	display: none;	
}
.nav-links{
	display: flex;
    justify-content: space-between;
    margin: 100px 0;
}
.nav-previous{
    padding: 0px 0px 5px 5px;	
}
.nav-previous,.nav-next{
    width: 20%;
    border-bottom: 2px solid;	
}
.nav-next{
    padding: 0px 5px 5px 0px;
	text-align:right;
}
/************************************************　共通設定　*******************************************************/
.link-btn a{
	font-weight:bold;
	transition:0.5s;
}
.text-red{
	color: #C9151D;	
}
.reflect{
    display: block;
    -webkit-box-reflect: below -68px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 42%,rgba(0,0,0,1));
}
.margin{
    height: 200px;	
}
.margin-small{
    height:80px;	
}
.margin-xsmall{
    height:30px;	
}
.margin-m{
    height:100px;	
}
.midashi{
	font-family: toppan-bunkyu-midashi-go-std, sans-serif;	
}
.top-to-kasou a{
	background-color: #000;
    color: #fff;
    width: 250px;
    display: block;
    font-size: 17px;
    padding: 20px 10px;
    text-align: center;
    letter-spacing: 1px;	
}
.top-to-kasou a:hover{
	background-color:#F2F2F2;
	color:#000;
}
.entry-title{
    font-size: 80px;
    text-align: center;
    -webkit-box-reflect: below -30px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 40%,rgba(0,0,0,0.8));
    margin: 195px 0;
	opacity:0;
	transform: translateY(10px);
	transition:1s;
}
.entry-title.head-text-show {
    opacity: 1;
    transform: translateY(0);
}
.indent{
    display: block;
    margin: 20px;	
}
.pjax-title{
    font-size: 40px;
    -webkit-box-reflect: unset;
    margin: 0 0 80px;
	text-align:center;
	display: flex;
    align-items: center;
    justify-content:space-between;
}
.pjax-title span{
    padding: 0 1%;	
}
.pjax-title:before,.pjax-title:after{
	content:"";
	background-color:#000;
	width:35%;
	height:1px;
	display:block;
}
.contact-box{
    text-align: center;
    border: 2px solid #000;
    padding: 40px;	
}
.contact-box-text{
    font-size: 140%;
	line-height:1.5;
}
.contact-box-tell{
    margin: 30px 0;	
}
.contact-box-tell-text{
    font-size: 120%;
    margin-bottom: 20px;	
}
.contact-box-tell a{
    font-size: 200%;
	transition:0.4s;
}
.contact-box-tell a:hover{
    color: #f5f5f5;	
}
.contact-box-tell a:before{
	content: "\f525";
    font-family: 'dashicons';
    vertical-align: text-top;
    margin-right: 10px;
}
.contact-box-btn{
    color: #C9151D;
    border: 1px solid #C9151D;
    padding: 20px 5%;
    display: inline-block;
    font-size: 120%;
	transition:0.4s;
}
.contact-box-btn:hover{
    color: #fff;
	background-color:#C9151D;
}
/*****************フォーム***************/
.required{
    color: #c9151d;
    margin-left: 10px;	
}
.forms{
    font-size: 14px;
    width: 75%;
	margin:0 auto;
}
.forms th{
    width: 30%;
    vertical-align: middle;
}
.forms td{
    width: 70%;	
}
.forms th,.forms td{
    padding: 25px 5px;	
}
.forms input[type="text"],.forms input[type="email"],.forms textarea{
	border: 1px solid;
    border-radius: 3px;
    padding: 3px;
    width: 100%;
}
.forms input{
	font-size:16px;
}
td.form-select-box{
    border: 1px solid;
    width: 200px;
    display: flex;
    align-items: center;
	position: relative;
	padding:0;
    margin: 25px 5px;
}
td.form-select-box select{
    display: block;
    width: 100%;
    padding: 5px;
    cursor: pointer;
}
.form-select-box:after{
	content: "\f347";
	font-family:'dashicons';
    font-size: 15px;
    position: absolute;
    right: 0;
}
.forms label{
	display: inline-flex;	
}
.forms input[type="checkbox"]{
    display: block;	
}
.form-example{
	display: block;
    margin-top: 5px;	
}
.pp-box{
    border-top: 2px solid #c9151d;
    border-bottom: 2px solid #c9151d;
    font-size: 12px;
    padding: 20px 5px;
    height: 185px;
    overflow-y: scroll;
	margin:40px 0;
}
.pp-title{
	font-size: 18px;
    text-align: center;
}
.forms .padding-top-none{
	padding-top:0;
}
.forms .padding-bottom-none{
	padding-bottom:0;
}
.send-box{
    text-align: center;
    line-height: 1.5;	
}
.agree-checkbox{
    margin: 40px 0;	
}
.mwform-checkbox-field-text{
    font-weight: bold;	
}
.send-btn input[type="submit"]{
    background-color: #c9151d;
    color: #fff;
    padding: 15px 30px;
    border: 3px solid #fff;
    box-shadow: 3px 3px #ccc;
	transition:0.4s;
}
.send-btn input[name="submitBack"]{
	background-color: #808080;	
}
.send-btn input[type="submit"]:hover{
	box-shadow:none;
}
.pp-box::-webkit-scrollbar{
    width: 6px;	
}
.pp-box::-webkit-scrollbar-track{
  background:#ccc;
  border: none;
}
.pp-box::-webkit-scrollbar-thumb{
    background: #1a1a1a;
}
.form-under-text{
    text-align: center;	
}
/************************************************　header　*******************************************************/
/*****************header pnlbtn***************/
/*=============================
.btn-trigger
=============================*/
.btn-trigger-wrap{
	z-index:99999;
}
.btn-trigger {
  position: relative;
  width: 50px;
  height: 44px;
  cursor: pointer;
}
.btn-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #C9151D;
}
.btn-trigger.active span{
  background-color: #fff;	
}
.btn-trigger, .btn-trigger span {
  display: inline-block;
  transition: all .5s;
  box-sizing: border-box;
}
.btn-trigger span:nth-of-type(1) {
  top: 0;
}
.btn-trigger span:nth-of-type(2) {
  top: 15px;
}
.btn-trigger span:nth-of-type(3) {
	top: 30px;
}
/*=============================
#btn06
=============================*/
#btn06.active span:nth-of-type(1) {
  -webkit-transform: translateY(15px) rotate(-45deg);
  transform: translateY(15px) rotate(-45deg);
}
#btn06.active span:nth-of-type(2) {
  left: 200%;
  opacity: 0;
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
  -webkit-animation: active-btn06-bar02 .8s forwards;
  animation: active-btn06-bar02 .8s forwards;
}
@-webkit-keyframes active-btn06-bar02 {
  100% {
    height: 0;
  }
}
@keyframes active-btn06-bar02 {
  100% {
    height: 0;
  }
}
#btn06.active span:nth-of-type(3) {
  -webkit-transform: translateY(-15px) rotate(45deg);
  transform: translateY(-15px) rotate(45deg);
}




/*****************header pnlbtn おわり***************/
.site-header{
    min-height: 10vh;
    align-items: center;
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background-color: #fff;
    z-index: 1000;
}
.header-wrap{
	padding: 10px 20px;
    width: 100%;
}
.nav-wrap{

}
.header-logo img{
    width: 240px;	
}
.nav-wrap{
    background-color: #7C0D0D;
    height: 100vh;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
	display:none;
    z-index: 999;
}
.main-navigation ul{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-weight: 300;
    font-style: normal;
    width: 60%;
}
.main-navigation li{
    width: 40%;
    font-size: 32px;
    margin: 0 0 7%;
    position: relative;
    font-weight: bold;
}
.main-navigation li:last-child{
	margin:0;
}
.main-navigation ul:after{
	content:"";
	width:34%;
}
.main-navigation li a{
	color:#fff;
    display: inline-block;
}
.main-navigation li:after{
	content:"";
	background-color:#fff;
	display:block;
	height:2px;
	width:0;
	transition:0.5s;
    position: absolute;
    bottom: 0;
}
.main-navigation li:hover:after{
	width:100%;
}
.header-flex{
	display: flex;
    justify-content: space-between;
    align-items: center;
}
.menu-menu-1-container{
    display: grid;
    place-items: center;
    height: 100vh;	
}
.main-navigation li:before{
	display:block;
	font-size:50%;
	color:#fff;
    margin-bottom: 10px;
}
#menu-item-47:before{
	content:"トップページ";
	
}
#menu-item-48:before{
	content:"会社概要";	
}
#menu-item-104:before{
	content:"事業内容";	
}
#menu-item-258:before{
	content:"制作実績";	
}
#menu-item-53:before{
	content:"お知らせ";	
}
#menu-item-54:before{
	content:"採用情報";	
}
#menu-item-237:before{
	content:"ブログ";	
}
#menu-item-49:before{
	content:"お問い合わせ";	
}
/************************************************　index　*******************************************************/
.top-head-text{
	font-size: 42px;
    text-align: center;
    font-weight: 900;
    line-height: 2.5;
	opacity:0;
	transition:2s;
	transform:translateY(10px);
}
.top-head-text.head-text-show{
	opacity:1;
	transform:translateY(0);
}
.top-head{
	display: flex;
    justify-content: center;
    align-items: center;
    height: 90vh;
    position: absolute;
    top: 0;
    width: 100%;
    margin-top: 15vh;
}
.margin.top-margin-top {
	margin-top:100vh;
}
.company-copy-text{
	font-size: 21px;
    text-align: center;
    line-height: 2;	
}
.top-content-block-title{
    font-size: 65px;
    letter-spacing: 4px;
    position: relative;
}
.top-content-right{
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.top-content-left,.top-content-right{
	width:48%;
}
.top-content-left{
	text-align:left;
}
.top-content-flex{
	display: flex;
    justify-content: space-between;	
}
.top-content-flex-reverse{
	flex-direction: row-reverse;	
}
.top-content-text{
    line-height: 1.7;
    margin: 20px 0;
}
.top-content-flex-reverse .top-to-kasou{
    margin-left: auto;	
}
.company-copy{
	position:relative;
	overflow:hidden;
}
.company-copy.bg-show:after{
	right:0;
}
.bg-content:after{
    content: "";
    display: block;
    position: absolute;
	transition:0.4s;
    z-index: -1;
}
.company-copy:after{
    background-color: #f5f5f5;
    height: 200px;
    width: 80vw;
    top: 20px;
    right: -100%;
}
.top-content-block-title:after{
    content: "";
    display: block;
    position: absolute;
    background-color: #C9151D;
    width: 0%;
    height: 12px;
    top: 100%;
	transition:0.4s;
}
.top-content-block-title.bg-show:after{
	width:100%;
}
/*****************index blog***************/
.hover-parent{
	overflow:hidden;
}
.top-content-left .hover-parent {
    box-shadow: 6px 6px 8px rgba(0,0,0,0.3);
}
.blog-box .top-hover-parent:hover{
	transform:translatey(0);
}
.blog-eyecatch{
    width: 100%;
    height: 500px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
	position:relative;
	overflow:hidden;
	transition:0.4s;
}
.blog-eyecatch:hover{
	transform:scale(1.1);
}
.blog-eyecatch:hover:after{
    background-color: rgba(0,0,0,0.7);	
}
.blog-eyecatch:after{
	content:"";
    background-color: rgba(0,0,0,0.6);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
	transition:0.4s;
}
.blog-box{
    position: relative;	
}
.top-blogs-title{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    font-size: 250%;
    width: 100%;
    text-align: center;
    color: #fff;
}
.top-blog-text{
    display: flex;
    justify-content: space-between;
    padding: 0 20px;
    position: absolute;
    bottom: 4%;
    width: 100%;
    color: #fff;

}
.contents-text{
	font-size:14px;
}
.top-blog-text-flex{
    display: flex;	
}
.blog-date{
    margin-right: 10px;
}
.blog-eyecatch-right{
	height: 220px;	
}
.right-blog-box{
    margin-bottom: 25px;	
}
.top-content-right-blog{
	display: flex;
    flex-direction: column;
    justify-content: space-between;	
}
.right-blog-wrap{
	height: 500px;
    overflow-y: scroll;
    box-shadow: 0px 0px 8px 3px #ccc inset;
    padding: 20px;
}
.right-blog-box:last-child{
	margin-bottom:0;
}
.right-blog-wrap::-webkit-scrollbar{
	background-color:#ccc;
	width:8px;
}
.right-blog-wrap::-webkit-scrollbar-thumb{
	background-color:#000;
}
.top-to-blog a{
    font-size: 300%;
    display: flex;
    align-items: baseline;
    background-color: #000;
    color: #fff;
    padding: 35px 0 27px;
	justify-content:center;
	transition:0.5s;
}
.top-to-blog a:before{
	content: "\f522";
	font-family:'dashicons';
	font-size: 74%;
    margin-right: 10px;
}
.top-to-blog a:hover{
	background-color:#F2F2F2;
	color:#000;
}
.top-content-block-title-blog,.top-content-block-title-access{
    margin-bottom: 100px;	
}
/*****************index blog おわり***************/
.top-access-table{
	text-align:left;
	width: 100%;
    line-height: 2;
    border-collapse: separate;
}
.top-access-table th{
    width: 30%;
}
.top-access-table td{
    width: 70%;
    padding-bottom: 8%;
}
/*****************scroll btn***************/
.scroll-btn{
    position: absolute;
	bottom: 20px;
    left: 50%;
    z-index: 2;
    display: inline-block;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-decoration: none;
	opacity:0;
	transition:1s;
}
.scroll-btn.scroll-icon-show{
	opacity:1;
}
.scroll-btn{
  padding-top: 60px;
}
.scroll-btn span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 30px;
  height: 50px;
  margin-left: -15px;
  border: 2px solid #000;
  border-radius: 50px;
  box-sizing: border-box;
}
.scroll-btn span::before {
  position: absolute;
  top: 10px;
  left: 50%;
  content: '';
  width: 6px;
  height: 6px;
  margin-left: -3px;
  background-color: #000;
  border-radius: 100%;
  -webkit-animation: sdb 2s infinite;
  animation: sdb 2s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    -webkit-transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

/*****************scroll btn おわり***************/
/************************************************　CONTACT　*******************************************************/
.contact-intro-text p{
    text-align: center;
    line-height: 2;		
	}
/************************************************　NEWS　*******************************************************/
.news-left-box{
    text-align: right;
	margin-right:25px;
}
p.news-post-date{
    font-size: 35px;
}
.news-post-year,.news-content{
    font-size: 14px;	
}
p.news-post-date,p.news-post-year{
	font-family: futura-pt, sans-serif;
    margin-bottom: 0;
}
.news-right-box{
    padding-top: 5px;	
}
.news-title{
    font-size: 17px;
    margin-bottom: 15px;
}
#news{
	width: 80%;
    margin: 0 auto;	
}
#news li{
    border-bottom: 1px solid #c9151d;
    padding: 30px 40px;	
}
#news li:first-child{
	padding-top:0;
}
#news li a{
    display: flex;
    align-items: center;
	transition:0.4s;
}
#news li a:hover{
	color:#ccc;
}

.top-news-wrap{
	z-index:9999;
	display: flex;
    align-items: center;
	justify-content: space-between;
}
.top-news-box a{
    display: flex;
    align-items: baseline;
	transition:0.4s;
}
.top-news-date-box{
    display: flex;
    align-items: baseline;	
}
.top-news-box a:hover{
	color:#ccc;
}
.top-news-year{
    margin-left: 5px;
    font-family: futura-pt, sans-serif;
}
.top-news-date{
    font-size: 150%;
    font-family: futura-pt, sans-serif;
}
.top-news-title{
    margin-left: 10px;	
}
.top-to-news a{
    font-size: 80%;
    width: auto;
    padding: 10px 10px 8px;
}
.top-news-section{
    background-color: #f5f5f5;
    padding: 5px 0;	
}
/************************************************　RECRUIT　*******************************************************/
.recruit-intro h2{
	font-size: 36px;	
}
.recruit-intro .border-bottom{
	border-bottom:4px solid #000;
	padding: 0 20px;
}
.recruit-intro{
    text-align: center;	
}
.recruit-intro-large{
    font-size: 165%;
    display: block;
    color: #C9151D;
    font-weight: bolder;
}
.recruit-intro-text{
    line-height: 3;
    display: inline-block;
    text-align: left;
}
.recruit-section-title{
    text-align: center;
    font-size: 18px;	
}
.recruit-section-title span{
    border-bottom: 4px solid #000;
    padding: 0 15px;	
}
.recruit-occupation-title{
    font-size: 16px;
    display: flex;
    align-items: center;
    margin: 0 auto;
    border-bottom: 2px solid #4d4d4d;
    padding: 20px;
    width: 700px;
    justify-content: space-between;
	transition:0.5s;
	position:relative;
	overflow-x:hidden;

}
.recruit-occupation-title:before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: -100%;
	transition:0.5s;
	z-index:-1;
}
.recruit-designer .recruit-occupation-title:before{
	background-color:#e24e42;
}
.recruit-coder .recruit-occupation-title:before{
	background-color:#e9b000;
}
.recruit-video-editing .recruit-occupation-title:before{
	background-color:#008f95;
}
.recruit-director .recruit-occupation-title:before{
	background-color:#eb6e80;
}
.recruit-camera .recruit-occupation-title:before{
	background-color:#cfbab0;
}
.recruit-jimu .recruit-occupation-title:before{
	background-color:#f5f5f5;
}
.recruit-jimu .recruit-occupation-title:hover{
	color:#000;
}
.recruit-occupation-title:after{
    content: "\f140";
    font-family: 'dashicons';
    font-size: 20px;
    background-color: #000;
    color: #fff;
    border-radius: 100%;
    width: 23px;
    display: grid;
    height: 23px;
    place-items: center;
    margin-left: 25px;
	transition:0.4s;
}
.recruit-occupation-title:hover:before{
	left:0;
}
.recruit-occupation-title:hover{
	color:#fff;
}
.recruit-occupation-title.closing:after{
	content: "\f142";
    background-color: #ccc;
}
.recruitment-type-box .table-wrap{
    margin: 20px 0px;	
}
.recruit-occupation-table{
    border-collapse: separate;
    border-spacing: 7px;
	width:100%;
}
.recruit-designer .recruit-occupation-table th{
    background-color: #e24e42;
	color:#fff;
}
.recruit-designer .recruit-occupation-table td{
	border:1px solid #e24e42;	
}
.recruit-coder .recruit-occupation-table th{
    background-color: #e9b000;
	color:#fff;
}
.recruit-coder .recruit-occupation-table td{
	border:1px solid #e9b000;	
}
.recruit-video-editing .recruit-occupation-table th{
	background-color: #008f95;
    color: #fff;	
}
.recruit-video-editing .recruit-occupation-table td{
	border:1px solid #008f95;
}
.recruit-director .recruit-occupation-table th{
    background-color: #eb6e80;
    color: #fff;	
}
.recruit-director .recruit-occupation-table td{
	border:1px solid #eb6e80;	
}
.recruit-camera .recruit-occupation-table th{
    background-color: #cfbab0;
    color: #fff;	
}
.recruit-camera .recruit-occupation-table td{
	border:1px solid #cfbab0;	
}
.recruit-occupation-table th{
    width: 30%;
    text-align: center;
    vertical-align: middle;
    background-color: #f5f5f5;
}
.recruit-occupation-table td{
	border:1px solid #ccc;
    padding: 20px;
    line-height: 1.5;
    width: 70%;
}
.job-description-wrap{
	width: 900px;
    margin: 0 auto;	
}
.job-description-table{
    border-collapse: separate;
    border-spacing: 13px;
	margin: 0 auto;
}
.job-description-table th{
    width: 30%;
    text-align: center;
    vertical-align: middle;
    border-right: 2px solid #000;
}
.job-description-table td{
	line-height:1.5;
}
.job-description-table th,.job-description-table td{
    padding: 25px 15px;	
}

/************************************************　SERVICE　*******************************************************/
.service-title{
    font-size: 50px;
    margin-bottom: 50px;
    line-height: 1;
}
.service-flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;	
}
.service-block{
    width: 40%;
    margin-bottom: 200px;
	text-align: center;
}
.service-text{
	display: inline-block;
    text-align: left;
    margin: 50px 0;
	line-height: 1.5;
}
.service-more{
    display: block;
    font-size: 110%;
    margin: 10px 0;
}
.service-to-ws a{
    margin: 0 auto;	
}
.service-image{
	position:relative;
	overflow-x:hidden;
}
.service-image:after{
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
	transition:0.4s;
}
.service-image.bg-show:after{
	left:-100%;
}
/************************************************　WEB SUPPORT　*******************************************************/
.web-support-intro-wrap{
	display: flex;
    justify-content: space-between;
    align-items: center;	
}
.web-support-intro-image{
    width: 40%;
    text-align: center;	
}
.web-support-intro-worry-box{
	width: 60%;
    text-align: center;	
}
.web-support-intro-worry{
    line-height: 2.5;	
	display: inline-block;
    text-align: left;
}
.web-support-intro-worry li:before{
    content: "";
    width: 28px;
    height: 1px;
    display: inline-block;
    background-color: #000;
    vertical-align: middle;
    margin-right: 10px;
}
.web-support-intro-text{
	text-align: center;
    font-size: 18px;
    line-height: 2;
}
.support-title{
    font-size: 21px;
    margin-bottom: 20px;	
}
.web-support-contents .service-text {
    margin: 30px 0;
    line-height: 2;
}
.web-support-contents .service-block {
    margin-bottom: 100px;
}
.web-support-contents .service-block:last-child,.web-support-contents .service-block:nth-last-child(2){
	margin-bottom:0;
}
.faq-icon {
	margin-right:15px;
	flex-shrink: 0;
}
.faq-icon img{
	width:38px;
}
.faq-box-q,.faq-box-a{
    display: flex;
    align-items: center;
    line-height: 1.5;
}
.faq-box-a{
	font-size:13px;
	margin-top:10px;
}
.faq-box{
    border-bottom: 2px solid #000;
    padding: 20px 0;	
}
.faq-box-first{
    border-top: 2px solid #000;	
}
.faq-title{
	font-size: 21px;
    text-align: center;	
}
/************************************************　ABOUT US　*******************************************************/
.alfred-ggr-map{
    border: 14px solid #1a1a1a;
	border-bottom:none;
}
.alfred-access-text{
	color: #fff;
    background-color: #1a1a1a;
    padding: 20px 10px;
    text-align: center;
    line-height: 2;
}
/************************************************　WORKS ARCHIVE　*******************************************************/
.eyecatch-works{
    width: 290px;
    height: 200px;
    background-size: cover;
    background-position: center center;
    box-shadow: 3px 3px 5px #ccc;
    margin: 0px 0px 15px;
	transition:0.4s;
}
.hover-parent{
	transition:0.4s;
}
.hover-parent:hover{
	transform:translatey(-10px);
}
.hover-parent:hover .eyecatch-works{
	box-shadow:none;
}
.post-date{
    margin-bottom: 10px;	
}
.archive-list{
    display: flex;
    justify-content: space-between;
	flex-wrap:wrap;
}
.archive-list li{
	margin-bottom: 100px;
    padding: 0 5px;
}
.archive-list li:nth-last-child(-n+4){
	margin-bottom:0;
}
.archive-tab{
    display: flex;
    justify-content: space-between;	
}
.archive-tab a{
	font-size: 30px;
    background-color: #000;
    color: #fff;
    padding: 20px 10px;
    width: 18%;
    display: block;
    text-align: center;
    transition: 0.4s;
}
a.works-current,.archive-tab a:hover{
    background-color: #f5f5f5;
    color: #000;	
}
.archive-li.is-empty {
  height: 0;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
  width: 290px;
}
.works-post-title{
    margin-bottom: 10px;
    font-size: 120%;
}

.post-text{
    width: 290px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;	
}
/**********************　BLOG ARCHIVE　**************************/
.eyecatch-blog{
    height: 200px;	
}
.blog-post-date{
	margin-top:10px;
}
.blog-archive-tab{
	flex-wrap:wrap;
}
.blog-archive-tab a{
	width:24%;
	margin-bottom:20px;
}
.blog-archive-tab a:nth-last-child(-n+3){
	width:32%;
	margin-bottom:0;
}
h1.jquery-title {
    -webkit-box-reflect: below 5px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 40%,rgba(0,0,0,0.8));
}
/************************************************　WORKS DETAIL　*******************************************************/
.works-image img{
    height: 100%;
	width:100%;
}
.works-image{
    width: 600px;
    margin: auto;
    box-shadow: 0px 0px 10px #ccc;
    margin-bottom: 100px;
}
.works-title{
    font-size: 40px;	
}
.product-category{
	font-size: 18px;
    margin-top: 15px;	
}
.detail-btn{
    background-color: #000;
    color: #fff;
    width: 200px;
    display: block;
    padding: 20px 10px;
    text-align: center;
	transition:0.4s;
    margin: 0 auto 50px;
}
.detail-btn:last-child{
    margin-bottom: 0;	
}
.detail-btn:hover{
    background-color: #f5f5f5;
	color:#000;
}
.detail-btn:after{
    display: inline-block;
    font-family: 'dashicons';
    vertical-align: middle;
    margin-left: 5px;
	font-size:16px;
}
.works-to-site:after{
    content: "\f342";
    transform: rotate(45deg);
}
.to-archive:after{
	content: "\f171";	
}
.works-content p{
	line-height: 2;
    text-align: center;	
}
.works-concept-title{
    font-size: 18px;
    text-align: center;	
}
.works-concept-title:before,.works-concept-title:after{
    content: "";
    width: 35%;
    height: 1px;
    background-color: #000;
    display: inline-block;
    vertical-align: middle;
}
.works-concept-title span{
    padding: 0 15px;	
}
/**********************　BLOG DETAIL　**************************/
.blog-content{
	text-align:left;
    word-break: break-all;
}
/************************************** レスポンシブページネーション ************************************/
.pagination{
  	list-style-type: none;
  	padding-left: 0;
  	margin: 30px 0;
}
.pagination li{
    margin: 0 5px;
}
.pagination li.current{
	font-size:140%;
	border-bottom:2px solid #000;
}
.pagination,.pagination li a {
  	display: flex;
  	flex-wrap: wrap;
  	justify-content: center;
  	align-items: center;
	color: #000;
	transition:0.5s;
    border: none;
}
.pagination a {
  	font-weight: 300;
  	padding-top: 1px;
  	text-decoration:none;
  	border: 1px solid #ddd;
  	border-left-width: 0;
	min-width: 28px;
    min-height: 28px;
  	color: #333;
}
.pagination li:not([class*="current"]) a:hover {
0
}
.pagination li.first,
.pagination li.last,
.pagination li.previous,
.pagination li.next{
	background-color: #fff;	
}
.pagination li.first a,
.pagination li.last a,
.pagination li.previous a,
.pagination li.next a{
	color:#000;	
}
.pagination li:first-of-type a {
  	border-left-width: 1px;
}
.pagination li.first span,
.pagination li.last span,
.pagination li.previous span,
.pagination li.next span {
  /* screen readers only */
  	position: absolute;
  	top: -9999px;
  	left: -9999px;
}
.pagination li.first a::before,
.pagination li.last a::after,
.pagination li.previous a::before,
.pagination li.next a::after {
  	display: inline-block;
  	font-family: Fontawesome;
  	font-size: inherit;
  	text-rendering: auto;
  	-webkit-font-smoothing: antialiased;
  	-moz-osx-font-smoothing: grayscale;
  	transform: translate(0, 0);
}
.pagination li.first a::before {
	content: "\f518";
}
.pagination li.first a::before,.pagination li.last a::after,.pagination li.previous a::before,.pagination li.next a::after{
	font-family:'dashicons';
	font-size:21px;
}
.pagination li.next a::after,.pagination li.previous a::before{
	font-size:35px;	
}
.pagination li.last a::after { 
	content: "\f519";
}
.pagination li.previous a::before {   
	content: "\f141";
}
.pagination li.next a::after {
	content: "\f139";
}
.pagination li.current a {
	cursor: default;
	pointer-events: none;
}

@media only screen and ( max-width: 680px ) {
  .pagination li.first,
  .pagination li.last {
    /* screen readers only */
	  position: absolute;
	  top: -9999px;
	  left: -9999px;
	}
.pagination li.previous a { border-left-width: 1px; }
	}
 
@media only screen and ( max-width: 500px ) {
	.pagination li {
    /* screen readers only */
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
 
	.pagination li.current,.pagination li.first,.pagination li.last,.pagination li.previous,.pagination li.next{
		position: initial;
		top: initial;
		left: initial;
	}
 
	.pagination li.previous a { border-left-width: 0; }
	} 
@media only screen and ( max-width: 400px ) {
	.pagination li.first,
	.pagination li.last {
    /* screen readers only */
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	.pagination li.previous a { border-left-width: 1px; }
	}
 
@media only screen and ( max-width: 240px ) { /* For watches? */
	.pagination li { width: 50%;}
	.pagination li.current {
	  	order: 2;
	  	width: 100%;
	  	border-left-width: 1px;
	}
}
/************************************************　footer　*******************************************************/
.site-footer{
    margin-bottom: 100px;	
}
.footer-logo img{
    width: 300px;		
}
.footer-logo{
    margin: 0 20px;	
}
.footer-contactbtn a{
    width: 220px;
    display: block;
    color: #C9151D;
    border: 1px solid #C9151D;
    padding: 15px;
    text-align: center;
}
.footer-contactbtn a:hover{
	background-color:#C9151D;
	color:#fff;
}
.footer-contents-box {
    display: flex;
    justify-content: space-between;
    align-items: center;	
}
div.footer-sns-block{
    width: 220px;
    display: flex;
    justify-content: center;	
}
div.footer-sns-block a{
	transition:0.3s;
}
div.footer-sns-block a:hover{
	transform:translatey(-5px);
}
.footer-twitter{
    margin: 0 12%;	
}
.footer-copyright{
    font-size: 14px;
    color: #C9151D;
    text-align: center;
    margin-top: 23px;
    letter-spacing: 1px;
}


/************************************************　shirakami css　*******************************************************/
.price-tab{
    display: flex;
    justify-content: space-between;	
}
.price-tab a{
	font-size: 24px;
    background-color: #000;
    color: #fff;
    padding: 20px 10px;
    width: 18%;
    display: block;
    text-align: center;
    transition: 0.4s;
	margin-bottom: 1em;
}
a.works-current,.price-tab a:hover{
    background-color: #f5f5f5;
    color: #000;	
}
.price-contents-line{
	max-width: 700px;
	margin: 0 auto;
}
.price-content-block-title{
    font-size: 40px;
    letter-spacing: 4px;
    position: relative;
	margin-bottom: 37.5px;
}
.price-content-block-title:after{
    content: "";
    display: block;
    position: absolute;
    background-color: #C9151D;
    width: 100%;
    height: 5.54px;
    top: 100%;
	transition:0.4s;
	margin-top: 10px;
}
p.price-post-date {
    font-size: 25px;
}
.price-post-year,.news-content{
    font-size: 15px;	
}
#price li {
	display: flex;
	justify-content: space-between;
}
.price-right-box {
	margin-left: 20px;
}
.price-left-box {
	margin-right: 20px;
}

#price {
	margin-bottom: 70px;
}
#price-box li {
	display: flex;
	justify-content: space-between;
}
.price-date {
	margin-bottom: 27.5px;
}
.price-title {
    font-size: 30px;
}
.price-bgc {
	background-color: #ffffff;
	padding: 20px 0;
}
.price-bgc:nth-child(even) {
	background-color: #f5f5f5;
	padding: 20px 0;
}
.non-bgc {
	margin-top: 30.5px;
}
.red-color {
	color: #C9151D;
}
.fz30 {
	font-size: 30px;
}
.price-red {
	color: #C9151D;
	margin-left: 20px;
}
.price-footer {
	margin: 70px 0;
}
.price-footer p {
	margin-bottom: 20px;
}
.recruit-occupation-title.closing {
	background-color: #e24e42;
	color: #ffffff;
}
.hiraku.price {
	border-bottom: 2px solid #4d4d4d;
	margin: 0px;
}
.price-title span {
	font-size: 20px;
}
.fz20 {
	font-size: 20px;
}
.price-padding {
	padding: 5px 0;
}
.fz15-20 {
	font-size: 20px;
}
.fz12-20 {
	font-size: 20px;
}