@charset "UTF-8";

/*====================================================================

lv2.css

======================================================================

01.index

=====================================================================*/
/*--------------------------------------------------------------------/
	01.level
/--------------------------------------------------------------------*/
*[id*="page-"] .l-cont{
	display : block;
	padding-left : 4%;
	padding-right : 4%;
}

main{
	width : 100%;
	padding : 16px 0;
	padding : 1rem 0;
}

#page-title-lv2 h2{
	font-size : 18.24px;
	font-size : 1.14rem;
	position : relative;
	padding : 10% 4%;
}

.page-nav{
	font-size : 13.76px;
	font-size : .86rem;
	margin-bottom : 16px;
	margin-bottom : 1rem;
	padding-left : 4%;
	padding-right : 4%;
}
.page-nav li{
	display : inline;
}

/*--------------------------------------------------------------------/
	article, section
/--------------------------------------------------------------------*/
.txt:not(:last-child){
	margin-bottom : 16px;
	margin-bottom : 1rem;
}

.txt p{
	margin-bottom : 16px;
	margin-bottom : 1rem;
	letter-spacing : 1px;
}
.txt p:last-child{
	margin-bottom : 0;
}

strong{
	font-weight : bold;
	color : #1066cf;
}

/*--------------------------------------------------------------------/
	common
/--------------------------------------------------------------------*/
/*--------------------------------------------------------------------/
	company
/--------------------------------------------------------------------*/
.greeting .c-txtbox__img img{
	margin-bottom : 16px;
	margin-bottom : 1rem;
}

.greeting__name{
	text-align : center;
	display : block;
}

/*--------------------------------------------------------------------/
	feature
/--------------------------------------------------------------------*/

.feature-contlist__inner:after{
	display : block;
	content : "";
	clear : both;
}

.feature-contlist__list a{
	display : block;
	padding : 8px;
	padding : .5rem;
	margin : 8px 0;
	margin : .5rem 0;
	width : 100%;
	text-decoration : none;
	-webkit-transition : .5s all;
	        transition : .5s all;
}

.feature-contbox{
	counter-reset : count;
}

.feature-cont__inner:after{
	display : block;
	content : "";
	clear : both;
}

.feature-cont__tit:before{
	content : counter(count);
	counter-increment : count;
}

.feature-cont__btnbox li:not(:last-child){
	margin-bottom : 4px;
	margin-bottom : .25rem;
}

/*--------------------------------------------------------------------/
	works
/--------------------------------------------------------------------*/
.works-detail__main{
	padding : 32px 0;
	padding : 2rem 0;
}
.works-detail__main .txt{
	clear : both;
}

.works-detail__main-img{
	clear : both;
	text-align : center;
	margin-bottom : 32px;
	margin-bottom : 2rem;
}

.works-detail__tags{
	display : block;
}
.works-detail__tags li{
	display : inline-block;
	margin-right : 8px;
	margin-right : .5rem;
}
.works-detail__tags a{
	text-decoration : none;
}

.works-detail__gallery{
	padding : 32px 0;
	padding : 2rem 0;
}

.works-detail__c-media-wrap .c-media:not(:last-child){
	margin-bottom : 16px;
	margin-bottom : 1rem;
}

.works-detail__c-media-wrap .txt{
	padding : 8px 0;
	padding : .5rem 0;
}

.works-detail__btn-wrap{
	text-align : right;
	padding-top : 16px;
	padding-top : 1rem;
	padding-bottom : 16px;
	padding-bottom : 1rem;
}

/*--------------------------------------------------------------------/
	contact_form
/--------------------------------------------------------------------*/
.contact-first{
	margin-bottom : 48px;
	margin-bottom : 3rem;
}

.contact-tel{
	margin-bottom : 32px;
	margin-bottom : 2rem;
}

.contact-flow{
	margin-bottom : 16px;
	margin-bottom : 1rem;
}
.contact-flow ol{
	counter-reset : count;
	letter-spacing : -.40em;
	font-size : 0;
}
.contact-flow ol >*{
	display : inline-block;
	letter-spacing : normal;
	font-size : 16px;
	font-size : 1rem;
	vertical-align : top;
}
.contact-flow li{
	background-color : #ddd;
	font-size : 14.88px;
	font-size : .93rem;
	position : relative;
	color : #000;
}
.contact-flow li.now{
	background : #1066cf;
	color : #fff;
}
.contact-flow li.before{
	background : #aaa;
	color : #fff;
}
.contact-flow li:before{
	counter-increment : count;
	content : counter(count);
	font-size : 19.36px;
	font-size : 1.21rem;
	font-weight : bold;
	position : relative;
	top : 1px;
	padding-right : 3px;
	padding-right : 4.8px;
	padding-right : .3rem;
}
.contact-flow li:after{
	content : "";
	display : block;
	position : absolute;
}
.contact-flow li:last-child{
	margin-right : 0;
}
.contact-flow li:last-child:after{
	border : none;
}

.mailform{
	box-sizing : border-box;
	margin-bottom : 16px;
	margin-bottom : 1rem;
	width : 100%;
}
.mailform th, .mailform td{
	font-size : 13.76px;
	font-size : .86rem;
	width : 100%;
	display : block;
	font-weight : normal;
	padding : 8px;
	padding : .5rem;
}
.mailform th{
	text-align : left;
	color : #333;
}
.mailform th span{
	background : #b80804;
	color : #fff;
	margin-left : 10px;
	padding : 0 5px;
	font-size : 11px;
}

.mw_wp_form .error{
	display: inline !important;
}

/* form-parts
----------------------------------------------------------------*/
input, textarea, select{
	background-color : #f6f7f8;
	font-size : 14.88px;
	font-size : .93rem;
	width : 85%;
	margin : 3px 0;
	padding : .5em;
	border : 1px solid #ccc;
	border-radius : 2px;
}
input:focus, textarea:focus, select:focus{
	background-color : #fff;
	box-shadow : rgba(58, 134, 232, .25) 0 0 4px 1px;
}

input::-webkit-input-placeholder, input:-moz-placeholder{
	font-size : 13.76px;
	font-size : .86rem;
	color : #ccc;
}

textarea{
	height : 10em;
}

select{
	width : 40%;
}

input[type="button"], input[type="submit"]{
	display : block;
	width : 15em;
	margin : 0 auto;
	padding : 12.8px;
	padding : .8rem;
	-webkit-transition : .2s all;
	        transition : .2s all;
	letter-spacing : 2px;
}

input[type="submit"][name="submitBack"]{
	color : #333;
	border : 1px solid #333;
}

input[class="short"]{
	width : 10% !important;
	margin-right : 8px !important;
	margin-right : .5rem !important;
}

input[class="middle"]{
	width : 40% !important;
	margin-right : 8px !important;
	margin-right : .5rem !important;
}

input[type="radio"], input[type="checkbox"]{
	width : 2em;
}

/*--------------------------------------------------------------------/
	wordpress
/--------------------------------------------------------------------*/

/* blog
----------------------------------------------------------*/
.blog-list{
	padding-bottom : 16px;
	padding-bottom : 1rem;
	border-bottom : 1px dotted #ddd;
}
.blog-list:not(:last-child){
	margin-bottom : 32px;
	margin-bottom : 2rem;
}
.blog-list p{
	margin-bottom : 16px;
	margin-bottom : 1rem;
}
.blog-list .date{
	text-align : right;
}
.blog-list__btn-wrap{
	text-align : right;
}

.blog-single{
	padding-left : 4%;
	padding-right : 4%;
}
.blog-single__meta{
	margin : -5px auto 10px;
	padding : 5px 0 0 !important;
	width : 100%;
	overflow : hidden;
}
.blog-single__meta:after{
	display : block;
	content : "";
	clear : both;
}
.blog-single__meta .twitter, .blog-single__meta .fb-like.fb_iframe_widget{
	float : right;
	height : 28px !important;
}
.blog-single__meta iframe{
	padding : 0 !important;
	border : none !important;
	width : 119px !important;
	height : 28px !important;
}
.blog-single__meta .fb-like.fb_iframe_widget{
	width : 120px !important;
}
.blog-single__meta .data{
	text-align : right;
}
.blog-single__post-thumbnail{
	margin-bottom : 16px;
	margin-bottom : 1rem;
}
.blog-single .txt{
	margin-bottom : 16px;
	margin-bottom : 1rem;
}
.blog-single__btn-wrap{
	text-align : right;
}

/*-----------------------------------/
サイドバー
------------------------------------*/

/*-----------------------------------/
	widget
------------------------------------*/
.widget-blog-aside:not(:last-child){
	margin-bottom : 16px;
	margin-bottom : 1rem;
}

.widget-blog-aside li{
	list-style-type : none;
}

/*-----------------------------------/
	calendar
------------------------------------*/
#wp-calendar{
	border-collapse : collapse;
	width : 100%;
}
#wp-calendar thead th{
	text-align : center;
	padding : 4px;
	width : auto;
}
#wp-calendar td{
	text-align : center;
	padding : 4px;
}
#wp-calendar caption{
	text-align : center;
}

/*--------------------------------------------------------------------/
	記事部分
/--------------------------------------------------------------------*/

p.wp-caption-text{
	clear : none !important;
	padding : 5px 0 0 !important;
	font-size : 12px !important;
	text-align : center !important;
	line-height : 2.0 !important;
}

/*--------------------------------------------------------------------/
	page_next_prev
/--------------------------------------------------------------------*/
.c-page_next_prev{
	margin-top : 16px;
	margin-top : 1rem;
	padding : 16px 0;
	padding : 1rem 0;
	text-align : center;
}
.c-page_next_prev:after{
	display : block;
	content : "";
	clear : both;
}
.c-page_next_prev a{
	text-decoration : none;
	-webkit-transition : all .2s;
	        transition : all .2s;
}
.c-page_next_prev__inner{
	display : inline-block;
}

.page-numbers{
	padding : .5em;
	-webkit-transition : all .2s;
	        transition : all .2s;
}

.nav-prev{
	float : left;
	margin-top : 24px;
	margin-top : 1.5rem;
}

.nav-next{
	float : right;
	margin-top : 24px;
	margin-top : 1.5rem;
}

/*-----------------------------------/
btn
------------------------------------*/

@media print, screen and (min-width: 481px){
	/*====================================================================/
	/*------------------タブレットスタイル----------------
	/====================================================================*/
	html{
		width : 100%;
	}
	#page-title-lv2 h2{
		font-size : 1.71rem;
	}
	.contact-flow li{
		padding : 20px 10px;
		margin : 0 15px 10px 0;
	}
	.contact-flow li.now:after{
		border-left-color : #1066cf;
	}
	.contact-flow li:after{
		width : 0;
		height : 0;
		border : 10px solid transparent;
		border-left-color : #ddd;
		display : block;
		bottom : 19px;
		right : -20px;
	}
}

@media print, screen and (min-width: 768px){
	/*====================================================================/
	/*-------------------小さいPCスタイル----------------
	/====================================================================*/
	html{
		width : 100%;
	}
	main{
		padding : 2rem 0;
	}
	#page-title-lv2 h2{
		font-size : 2.29rem;
	}
	.page-nav{
		margin-bottom : 1.5rem;
	}
	.feature-contlist{
		padding-bottom : 4rem;
	}
	.feature-contlist__inner{
		padding : 2rem;
	}
	.feature-contlist__tit{
		width : 55.41%;
	}
	.feature-contlist .txt{
		margin-top : 2rem;
	}
	.feature-contlist__list{
		width : 55.41%;
		float : left;
	}
	.feature-contlist__list a{
		font-size : 1.29rem;
	}
	.feature-contlist__img{
		width : 38.75%;
		float : right;
	}
	.contact-flow li{
		margin : 0 1.5625% 10px 0;
		width : 18.73%;
	}
	.mailform{
		display : table;
	}
	.mailform th, .mailform td{
		display : table-cell;
		width : auto;
		vertical-align : middle;
	}
	.mailform th{
		width : 25%;
	}
	input[type="submit"][name="submitBack"]{
		position : absolute;
	}
	aside{
		width : 25%;
	}
	.contents.blog{
		float : right;
		width : 72.91%;
	}
	.blog-list__post-thumbnail{
		float : left;
		width : 30%;
		padding-right : 2%;
	}
	.page-blog .contents{
		width : 72.08%;
		float : right;
	}
	.page-blog aside{
		float : left;
		width : 25%;
	}
	.alignright{
		float : right;
		margin : 0 0 1rem 1rem;
	}
	.alignleft{
		float : left;
		margin : 1rem 1rem 0 0;
	}
	.aligncenter{
		display : block;
		margin : 0 auto 1rem;
	}
}

@media print, screen and (min-width: 980px){
	/*====================================================================/
	/*-------------------PCスタイル-------------------
	/====================================================================*/
	html{
		width : 100%;
	}
	*[id*="page-"] .l-cont{
		padding-left : 0;
		padding-right : 0;
	}
	.header__inner{
		width : 960px;
		margin : 0 auto;
	}
	#page-title-lv2{
		padding-left : 0;
		margin : 0;
		height : 300px;
	}
	#page-title-lv2 h2{
		padding : 0;
		margin : 0 auto;
		position : 0;
		width : 960px;
		top : 50%;
		-webkit-transform : translateY(-50%);
		        transform : translateY(-50%);
	}
	.page-nav{
		width : 960px;
		padding : 0;
		margin : 0 auto 1.5rem;
	}
	aside{
		width : 240px;
	}
	.blog-single{
		padding-left : 0;
		padding-right : 0;
	}
	.page-blog{
		width : 690px;
	}
	.page-blog aside{
		width : 240px;
	}
}

@media screen and (max-width: 767px){
	/*====================================================================/
	/*------------------スマホタブレット共通スタイル---------
	/====================================================================*/
	html{
		width : 100%;
	}
	.greeting .c-txtbox__img img{
		max-height : 400px;
	}
	.feature-contlist{
		padding-bottom : 2rem;
	}
	.feature-contlist__inner{
		padding : 1rem;
	}
	.feature-contlist .txt{
		margin-top : 1rem;
	}
	.feature-contlist__img{
		display : none;
	}
	input[type="submit"][name="submitBack"]{
		margin-bottom : 1rem;
	}
	.tablepress td, .tablepress th{
		display : block;
		width : 100%;
	}
	.tablepress .column-1{
		background-color : #ddd;
	}
	aside{
		display : none;
	}
	.blog-list{
		padding : 4%;
	}
	.blog-list__post-thumbnail{
		margin-bottom : 1rem;
	}
	.alignright{
		display : block;
	}
	.alignleft{
		display : block;
	}
	.aligncenter{
		display : block;
	}
}

@media screen and (max-width: 480px){
	/*====================================================================/
	/*------------------スマホのみスタイル----------------
	/====================================================================*/
	html{
		width : 100%;
	}
	.page-nav{
		display : none;
	}
	.contact-flow li{
		width : 100%;
		padding : .5rem;
		margin-bottom : 1rem;
		text-align : center;
	}
	.contact-flow li.now:after{
		border-top-color : #1066cf;
	}
	.contact-flow li:after{
		width : 0;
		height : 0;
		border : 10px solid transparent;
		border-top-color : #ddd;
		display : block;
		bottom : -18px;
		right : 0;
		left : 0;
		margin : 0 auto;
	}
}
