@charset "utf-8";
/*
Theme Name:
Theme URI:
Author:
*/

/* WP */
/* -------------------------------------------------- */
/* 投稿の画像配置 */
.alignright { display: block; margin: 0 0 10px auto; }/* 配置位置 左 */
.alignleft { display: block; margin: 0 auto 10px 0; }/* 配置位置 右 */
.aligncenter { display: block; margin: 0 auto 10px; }/* 配置位置 中央 */
/* .alignright { float: right; padding: 0px 0 10px 10px; } *//* 後続のテキスト左回り込み */
/*.alignleft { float: left; padding: 0px 10px 10px 0; }*//* 後続テキスト右回り込み */

/* LINK */
/* -------------------------------------------------- */
a:link,
a:visited { text-decoration: none; color: #333333; }
a:hover  { text-decoration: none; color: #B98E31; }
a:active { text-decoration: none; color: #B98E31; }

/* CLEARFIX */
/* -------------------------------------------------- */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    *zoom: 1;
}

/* OUTLINE */
/* -------------------------------------------------- */
html {
	font-size: 62.5%;/* 10px */
}

body {
	font-family: "游明朝" , YuMincho , "ヒラギノ明朝 ProN W3" , "Hiragino Mincho ProN" , “HG明朝E” , "メイリオ", Meiryo, serif;
	line-height: 1.6;
	background: #FFFFFF;
	color: #333333;
	font-size: 14px;
	font-size: 1.4rem;
}

#container {
	position: relative;
}

header {
	position: relative;
    width: 1000px;
    margin: 0 auto;
	padding: 40px 0 25px;
}
#headLogo {
	margin-bottom: 25px;
	text-align: center;
}
ul#headNav {
	width: 660px;
	height: 23px;
	margin: 0 auto;
}
ul#headNav li {
	margin-right: 8%;
	float: left;
}
ul#headNav li:last-child {
	margin-right: 0;
}
ul#headNav li a {
	display: block;
}
#lineBnr {
	position: absolute;
    top: 50px;
    right: 175px;
}

#mv {
	position: relative;
	width: 100%;
	height: 448px;
	margin: 0 auto 33px;
	overflow: hidden;
}
#mv h1 {
	position: absolute;
	top: 20px;
    left: 15%;
	font-size: 26px;
	font-weight: bold;
	/*line-height: 2.4;*/
    letter-spacing: 8px;
    z-index: 9999;
}
#mv #slider1 {
	position: absolute;
	top: 0;
    left: 35%;
    vertical-align: bottom;
}
#mv span {
	display: block;
	margin-bottom: 14px;
    line-height: 2.4;
    text-shadow: 1px 1px 1px #FFF, -1px 1px 1px #FFF, -1px -1px 1px #FFF;
}
#mv span.mvCnt {
    margin: -10px 0 -1px;
	line-height: 1.1;
}
#mv span.maker1 {
	display: table;
	line-height: 1;
	background: linear-gradient(transparent 40%, #ffff00 0%);
}
#mv span.maker2 {
	display: table;
	line-height: 1;
	background: linear-gradient(transparent 40%, #ffff00 0%);
}
#addBer {
	width: 100%;
	padding: 20px 0;
	background: #d6ede6;
}
#addBerInner {
	width: 1000px;
	margin: 0 auto;
}
#navLogo {
	margin-right: 20px;
	float: left;
}
#navAdd {
	margin-right: 60px;
	float: left;
	font-size: 16px;
	line-height: 1.2;
}
#navTel {
	padding-top: 8px;
	float: left;
}
#navBtn {
	float: right;
}

main {
	padding: 80px 0 100px;
}

section.cntArea {
	padding-bottom: 80px;
}

h2.centerTtl {
	margin-bottom: 30px;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 0.9;
}
h2.leftTtl {
	margin-bottom: 30px;
	font-size: 24px;
	font-weight: bold;
	text-align: left;
	line-height: 0.9;
}
h2.centerTtl span, h2.leftTtl span {
	font-size: 12px;
	font-weight: bold;
	color: #04a371;
}

#consultationArea {
	width: 100%;
	padding: 40px 0;
	background: url(../img/top_consultation_back.jpg) no-repeat 0 0;
}
#consultationArea h3 {
	text-align: center;
	color: #fff;
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 5px;
}
#movieArea {
	width: 740px;
	height: 416px;
	margin: 0 auto 30px;
}
ul#consultationInner {
    width: 1000px;
    margin: 0 auto;
    padding: 50px 0;
}
ul#consultationInner li {
    width: 190px;
    margin: 0 80px 60px 0;
    float: left;
    color: #fff;
    text-align: center;
}
ul#consultationInner li:nth-child(4n) {
    margin: 0 0 60px 0;
}
ul#consultationInner li img {
	margin-bottom: 10px;
}
ul#consultationInner li h4 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 4px;
}

#topCntArea {
	width: 720px;
	margin: 0 auto 30px;
}
.topCntBox {
	width: 220px;
	margin-right: 30px;
	float: left;
	text-align: center;
}
.topCntBox:last-child {
	margin-right: 0px;
}
.topCntBox img {
	margin-bottom: 10px;
}
.topCntBox h3 {
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: bold;
}

#greetingArea {
	position: relative;
	width: 100%;
	height: 589px;
	margin: 0 auto 80px;
	background: url(../img/top_greeting_back.jpg) no-repeat 0 0;
	background-size: cover;
}
#greetingBox {
    position: absolute;
    top: 120px;
    right: 100px;
	width: 489px;
	padding: 30px 50px;
	background-color: rgba(255,255,255,0.8);
}
#greetingBox p {
	margin-bottom: 30px;
	font-size: 14px;
    font-weight: bold;
    line-height: 1.7;
}

section#performance {
	margin-bottom: 80px;
}
#performanceArea {
	width: 1000px;
	margin: 0 auto;
}
.performanceBox {
	width: 232px;
	margin: 0 19px 37px 0;
	display:inline-block;
	vertical-align: top;
    text-align: center;
}
.performanceBox:nth-child(4n) {
	margin: 0 0 37px 0;
}
.performanceBox a{
	display:block;
}
.performanceBox_img{
	height:143px;
	width:100%;
	overflow:hidden;
}

.performanceBox_img img{
	width:100%;
}
section#voice {
	margin-bottom: 80px;
}
#voiceArea {
	width: 1000px;
	margin: 0 auto 30px;
}
.voiceBox {
	width: 176px;
	margin: 0 30px 30px 0;
	float: left;
	text-align: center;
}
.voiceBox:nth-child(5n) {
	margin-right: 0;
}
.voiceBox a{
	display:block;
}
.voiceBox p {
	width: 176px;
	margin-right: 30px;
	float: left;
}
.voiceBox img{
	width:100%;
}

#news_snsArea {
	width: 1000px;
	margin: 0 auto;
}
#newsArea {
	width: 470px;
	float: left;
}
dl#newsFeed {
	margin-bottom: 30px;
}
dl#newsFeed dd {
	margin-bottom: 14px;
    padding-bottom: 12px;
	border-bottom: 1px dotted #000;
}
#snsArea {
	width: 470px;
	float: right;
}

#footBnr {
	width: 728px;
	height: 90px;
	margin: 0 auto 100px;
}

footer {
   	padding: 40px 0 0;
	background: #391006;
	color: #fff;
}
#footLogo {
	margin-bottom: 30px;
	text-align: center;
}
ul#footNav {
	display: table;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 15px;
}
ul#footNav li {
	float:left;
	text-align: center;
}
ul#footNav li a {
	color: #fff;
}
#footAdd {
	margin-bottom: 15px;
	text-align: center;
}
#footTel {
	margin-bottom: 7px;
	text-align: center;
}
#footTime {
	margin-bottom: 15px;
	text-align: center;
}
#other {
	margin-bottom: 30px;
	text-align: center;
}
#other a {
	color: #fff;
}
#cr {
	width: 100%;
	padding: 5px 0;
	background: #000;
	text-align: center;
	color: #fff;
}

.nextBtn {
	width: 118px;
	height: 39px;
	margin: 0 auto;
}


/*SUB_COMMON */
/* -------------------------------------------------- */
#sv {
	width: 100%;
	margin-bottom: 33px;
	padding: 80px 0;
    letter-spacing: 0.3em;
	background: url(../img/sv_back_img.jpg) no-repeat center center;
    background-size: cover;
}
#sv h1 {
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	color: #FFF;
    letter-spacing: 8px;
    text-indent: 0.3em;
    text-shadow: 0 0 15px rgba(0,0,0,1);
}

#subContainer {
	width: 1000px;
	margin: 0 auto;
}

h2.subTtl{
    position: relative;
    overflow: hidden;
    margin-bottom: 35px;
    padding-bottom: 5px;
    font-size: 26px;
    font-weight: bold;
    letter-spacing: 5px;
    text-align: center;
    border-bottom: 3px solid #D8D8D8;
}
/*h2.subTtl::before,
h2.subTtl::after{
	content: "";
	position: absolute;
	bottom: 0;
}
h2.subTtl:before{
	border-bottom: 3px solid #04a371;
	width: 100%;
}
h2.subTtl:after{
	border-bottom: 3px solid #D8D8D8;
	width: 100%;
}*/

section.subSection {
	margin-bottom: 80px;
}
/*WORK */
/* -------------------------------------------------- */
.workArea {
	margin-bottom: 18px;
	padding: 15px 30px 30px 30px;
    border: 1px solid #BFBFBF;
}
.workArea h3{
	position: relative;
	margin-bottom: 20px;
	font-size: 20px;
	font-weight: bold;
	border-bottom:#BFBFBF dotted 1px;
	clear: both;
	text-align: center;
}
.workArea h3:first-letter{
	font-size: 35px;
	color: #04a371;
}
.workArea img {
	width: 30%;
	float: left;
}
.workBox {
	width: 67%;
	float: right;
	text-align: center;
}
.workBox p {
	margin-bottom: 20px;
	text-align: center;
}
.workBox dl {
    display: inline-block;
    margin-left: auto;
    font-size: 20px;
    border-bottom:#BFBFBF dotted 1px;
}
.workBox dl dt {
	float: left;
}
.workBox dl dd {
	padding-left: 50px;
	float: left;
}

.flowBox {
	width: 170px;
	height: 216px;
	float: left;
	margin: 0 10px 20px 0;
	padding: 10px 10px;
	border: 1px solid #dcdcdc;
	text-align: center;
}
.flowBox:nth-child(5n) {
	margin: 0 0px 20px 0;
}
.flowNo {
	margin-bottom: 13px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #dcdcdc;
	color: #feac00;
}
.flowTtl {
    margin-bottom: 10px;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
}

.faqBox {
	width: 100%;
	margin-bottom: 25px;
	text-align: center;
}
.qTtl {
	width: 100%;
	padding: 5px 0 8px;
	border-bottom: 1px solid #dcdcdc;
    padding-left: 2.4em;
    text-indent: -2.3em;
}
.qTtl span {
	margin-right: 10px;
	color: #B20008;
	font-size: 24px;
}
.aTxt {
	width: 100%;
	padding: 5px 0 8px;
	border-bottom: 1px solid #dcdcdc;
    padding-left: 2.4em;
    text-indent: -2.3em;
}
.aTxt span {
	margin-right: 10px;
	color: #4906F8;
	font-size: 24px;
}


/*実績 */
/* -------------------------------------------------- */
.performanceArea {
	width: 700px;
	margin: 0 auto 50px;
	background: url(../img/tnm.png) no-repeat center center;
}
.performanceArea h2 {
	position: relative;
	margin-bottom: 20px;
	text-align: center;
	font-size:24px;
}
.performanceArea h2:before{
	position: absolute;
	top: 50%;
	z-index: 1;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #000;
	background: linear-gradient(-45deg, transparent, #04a371 10%, #04a371 90%, transparent);
}
.performanceArea h2 span{
	position: relative;
	z-index: 2;
	display: inline-block;
	padding: 0 20px;
	background-color: #fff;
	text-align: left;
}
.beforeBox {
	width: 300px;
	float: left;
}
.afterBox {
	width: 300px;
	float: right;
}
.beforeBox img, .afterBox img {
	width: 100%;
	height: auto;
}

.performanceArea_body{
	width: 700px;
	border-bottom:#04a371 solid 1px;
	border-top:#04a371 solid 1px;
	margin: 0 auto;
	padding:15px 5px;
	clear:both;
}

.performance_backBtn{
	text-align:center;
}

.performance_backBtn a{
	display:block;
	width:100px;
	height:40px;
	margin:0 auto;
	transition:.3s;
}

.performance_backBtn a:hover{
	opacity:.7;
}

/*ABOUT */
/* -------------------------------------------------- */
#greetingTxt {
	margin-bottom: 15px;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}
#greetingTxt2 {
	line-height: 2;
	text-align: center;
}
#greetingImg {
    width: 250px;
    margin: 20px auto 0;
    text-align: center;
}
#greetingImg img {
	width: 100%;
	height: auto;
}

#overviewBox {
    width: 55%;
    margin: 0 auto 80px;
}
#overviewBox dt {
	width: 25%;
	padding: 10px 0;
	float: left;
	border-bottom: 1px dotted #dcdcdc;
}
#overviewBox dd {
	width: 75%;
	padding: 10px 0;
	float: left;
	border-bottom: 1px dotted #dcdcdc;
}


/*PRIVACY */
/* -------------------------------------------------- */

#privacyTxt{
	margin-bottom: 15px;
    font-size: 20px;
    font-weight: bold;
}

.privacyArea{
	margin:40px auto;
}

.privacyTit{
	font-size:18px;
	border-bottom:rgba(236,236,236,1.00) solid thin;
	margin-bottom: 15px;
}


/*SITEMAP */
/* -------------------------------------------------- */

.sitemap{
	width:100%;
	margin:100px auto;
	border:#ddd solid 1px;
}

.sitemap td{
	vertical-align:top;
	padding:30px;
	line-height:4em;
	width : 33.33333% ;
	width : -webkit-calc(100% / 3) ;
	width : calc(100% / 3) ;
}

/*NEWS */
/* -------------------------------------------------- */

.newsLink{
	margin-bottom:30px;
	border-bottom: 1px dotted #000;
	padding-left:15px;
	padding-bottom:15px;
}

.newsLink a{
	display:block;
}

.newsDate, .newsTit{
	display:inline-block;
}

.newsTit{
	font-size:18px;
	margin-left:15px;
}

.newsBody{
	padding:15px;
	line-height:2em;
}


/*CONTACT */
/* -------------------------------------------------- */
h2.contactTtl {
    position: relative;
    overflow: hidden;
    margin-bottom: 35px;
    padding-bottom: 5px;
    font-size: 26px;
    font-weight: bold;
    letter-spacing: 5px;
    text-align: center;
    border-bottom: 3px solid #dcdcdc;
}
/*h2.contactTtl::before,
h2.contactTtl::after{
	content: "";
	position: absolute;
	bottom: 0;
}
h2.contactTtl:before{
	border-bottom: 3px solid #04a371;
	width: 100%;
}
h2.contactTtl:after{
	border-bottom: 3px solid #D8D8D8;
	width: 100%;
}*/
h3.contactTtl2 {
	position: relative;
	margin-bottom: 20px;
	font-size: 20px;
	font-weight: bold;
	border-bottom:#BFBFBF dotted 1px;
	clear: both;
	text-align: center;
}
h3.contactTtl2:first-letter{
	font-size: 35px;
	color: #04a371;
}

.contactTxt {
	margin-bottom: 35px;
	text-align: center;
}
table#contactTable {
	margin: 0 auto;
}
table#contactTable th {
	width: 25%;
	text-align: left;
	vertical-align: middle;
	border-bottom: 1px dotted #dcdcdc;
}
table#contactTable td {
	width: 75%;
	padding: 15px 0 15px 20px;
	border-bottom: 1px dotted #dcdcdc;
}
span.required {
	display: inline-block;
	padding: 5px 7px;
	background: #feac00;
    float: right;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
}
input[type="text"] {
	width: 300px;
	height: 25px;
}
textarea {
	width: 500px;
	height: 200px;
}
#ppCheck {
    width: 250px;
    margin: 0 auto;
    padding: 25px 0 7px;
}
#submitBtn {
	width: 250px;
	margin: 0 auto;
	background: #feac00;
	font-weight: bold;
	text-align: center;
	color: #fff;
}
#submitBtn a {
	display: block;
	padding: 13px 0;
	color: #fff;
}

#sendBtn {
	width: 530px;
	margin: 0 auto;
}

#backBtn {
	width: 250px;
	margin: 0 auto;
	float: left;
	background: #feac00;
	font-weight: bold;
	text-align: center;
	color: #fff;
}
#backBtn a {
	display: block;
	padding: 13px 0;
	color: #fff;
}
#nextBtn {
	width: 250px;
	margin: 0 auto;
	float: right;
	background: #feac00;
	font-weight: bold;
	text-align: center;
	color: #fff;
}
#nextBtn a {
	display: block;
	padding: 13px 0;
	color: #fff;
}

/*SIMPLE BOOK */
/* -------------------------------------------------- */

.blog_pagenation{
    width: 750px;
	height:50px;
    margin: 100px auto 0;
	position:relative;
}

.prevnext_post,
.next_post{
	width:220px;
	height:42px;
	overflow:hidden;
	line-height:50px;
}

.prevnext_post a,
.next_post a{
	display:block;
	color:#505050;
	transition:.3s;
}

.prevnext_post a:hover,
.next_post a:hover{
	opacity:.5;
}

.prevnext_post{
	background:url(../img/left.png) no-repeat;
	background-position:bottom;
	padding-left:50px;
	position:absolute;
	left:0;
	top:0;
}

.next_post{
	text-align:right;
	padding-right:50px;
	background:url(../img/right.png) no-repeat;
	background-position:bottom;
	position:absolute;
	right:0;
	top:0;
}
