@charset "utf-8";
/* CSS Document */

.wrap {
	margin: 5% auto;
}
h3 {
	padding: .25em 0 .25em .75em;
	border-left: 4px solid #ccc;
	margin-top: 20px;
	margin-bottom: 10px;
	font-size: 18px;
	color: #666;
}
.workBlock {
	background: url(../img/work_bg.png) no-repeat right center;
	background-size: auto auto;
	background-size: cover;
	padding: 50px;
}
.fukuokaBlock {
	background: url(../img/fukuoka_bg.png) no-repeat right center;
	background-size: auto auto;
	background-size: cover;
	padding: 50px;
}
.fukuokaBlock h1, .fukuokaBlock p {
	color: #000;
}
.workBlock h1 {
	color: #fff;
}
.workBlock p {
	color: #fff;
}
.commonBlock h1:before, .commonBlock h1:after {
	background: #fff;
}
.work ul li span.small {
	display: block;
	line-height: 1.4;
	font-size: 80%;
}
.work ul li span.orenge {
	border: 1px solid #e47930;
	color: #e47930;
	font-size: 81%;
	padding: 1px 12px;
	border-radius: 50px;
	margin-top: 10px;
}
.entry {
	background: url(../img/contact_bg.png) no-repeat;
	padding: 50px;
	background-size: cover;
}
.entry h3 {
	font-weight: 100;
	font-size: 27px;
	color: #e47930;
	text-align: center;
	padding: 20px 0 30px;
}
.entry .inner {
	text-align: center;
}
.entry .btn {
	width: 390px;
	margin: 30px auto;
}
/*******************************
/* メイン画像
*******************************/

.main {
	position: relative;
	height: 350px;
	width: 100%;
}
.marquee {
	display: inline-block;
	overflow: hidden;
	top: 0;
	right: 0px;
	position: absolute;
}
.marquee::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	background: #e66c00;
	animation-name: marquee;
	animation-timing-function: ease;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	width: 815px;
	height: 480px;
}
.main_text {
	display: inline-block;
	overflow: hidden;
	font-size: 390%;
	font-weight: bold;
	position: absolute;
	top: 115px;
	left: 12%;
	font-family: 'Josefin Sans', sans-serif;
	z-index: 2;
}
.main_text::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	background: #e66c00;
	animation-name: marquee;
	animation-timing-function: ease;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-delay: 1s;
}
.main_text span {
	font-size: 28%;
	font-weight: normal;
	line-height: 1.7;
	display: block;
	margin-top: 15px;
	margin-left: 10px;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif
}
 @keyframes text {
 from {
transform: translate(0%);
}
 99%, to {
transform: translate(100%);
}
}
.marquee img {
	width: 815px;
	height: 350px;
	object-fit: contain;
	text-align: right;
	display: block;
	object-fit: cover;
}
 @keyframes marquee {
 from {
transform: translate(0%);
}
 99%, to {
transform: translate(100%);
}
}
.mainimg {
	padding-top: 70px;
	height: 700px;
	width: 100%;
	position: relative;
}
.mainimg img {
	width: 100%;
	height: 700px;
	object-fit: cover;
	transform: scale(1);
	transition-duration: 4s;
	transition-timing-function: cubic-bezier(.075, .82, .165, 1);
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
}
.logo_bg {
	position: absolute;
	left: 5%;
	top: 15%;
	display: inline-block;
}
.logo_bg img {
	width: 300px;
	height: auto;
	animation: in 3s ease 0s 1 forwards;
}
/*---------------------------
/*コンテンツ 共通箇所
---------------------------*/
.workCotents {
	width: 800px;
	margin: 0 auto;
	padding: 80px 0;
}
/*---------------------------
/*ヒアリング
---------------------------*/
.Bflex {
	display: flex;
}
.imgBlock {
	width: 40%;
	margin-left: 6%;
}
.imgBlock img {
	width: 100%;
}
.txtBlock {
	width: 60%;
}
.txtBlock h1 {
	font-size: 1rem;
	padding-bottom: 7px;
	border-bottom: 1px solid #000;
	margin-bottom: 15px;
}
.imgbox {
	padding: 35px;
}
h2 {
	position: relative;
	margin-top: 50px;
	margin-bottom: 20px;
	padding-bottom: 20px;
	font-size: 20px;
	color: #666;
}
p {
	line-height: 1.8;
	padding: 0 40px;
}
.ncms-mod-price-box__detail p {
	font-size: 14px;
	font-weight: normal;
	padding: 0;
	line-height: 1.5;
}
.plan .ncms-mod-price-box__detail {
	background-color: #fff;
	margin: 0;
	padding: 15px;
}
.box--type2 {
	height: 345px;
}
h2::before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 80px;
	border-top: 3px solid #666;
}
.txtBlock p {
	font-size: 0.8rem;
	line-height: 1.9;
}
table {
	font-size: 0.8rem;
}
table th {
	width: 20%;
	text-align: left;
}
.plan h3 {
border-left: none;

padding: 0;

margin: 0;
}
.entry h3 {
border-left: none;
}
/*------------------------------------------------------------
	スマホ版
------------------------------------------------------------*/
@media all and (min-width: 0) and (max-width: 767px) {
.workCotents {
	width: auto !important;
	padding: 40px 0;
}
.wrap {
	margin: 5% 3%;
}
.workBlock {
	padding: 15px;
}
.workBlock h1 {
	font-size: 125%;
}
.Bflex {
	display: block;
}
.imgBlock {
	width: 80%;
	margin: 0 auto;
}
.imgBlock img {
	width: 100%;
}
.txtBlock {
	width: 80%;
	margin: 0 auto 7%;
}
.main {
	line-height: 0;
}
.main, .main img {
	width: 100%;
	height: auto;
}
.marquee {
	position: inherit;
	width: 100%;
	margin-top: 0;
}
.entry {
	background: url(../img/contact_bg.png) no-repeat;
	padding: 10px;
	background-size: cover;
}
.entry h2 {
	font-weight: 100;
	font-size: 27px;
	color: #e47930;
	text-align: center;
	padding: 20px 0 30px;
}
.plan h3 {
border-left: none;

padding: 0;

margin: 0;
}
.entry h3 {
border-left: none;
}
.entry .inner {
	text-align: center;
}
.entry .btn {
	width: 90%;
	margin: 30px auto;
}
.entry .btn a {
	padding: 13px 20px;
}
.fukuokaBlock {
	padding: 15px;
}
.fukuokaBlock p {
	display: none;
}
}
.grayBlock {

    background:#333;
	color:#fff;
    text-align: center;
    padding: 40px 0;
    font-size: 80%;
    line-height: 1.5;
}
.grayBlock div {
	width:1000px;
	margin:0 auto;
}
.grayBlock h2 {
	margin:0;
	color:#fff;
	font-size:140%;
	padding-bottom:5px;
}
.grayBlock h3 {
	border-left:none;
	color:#fff;
}
.grayBlock h2::before {
	border-top:none;
}


 @media all and (min-width: 768px) and (max-width: 1100px) {
	 .grayBlock div {
		 width:90%;
		 margin:0 auto;
	 }
	 h2 {
		 margin-left:30px;
	 }
 }