@charset "UTF-8";
/* CSS Document */

/*PC／スマホ表示の切り替え*/
.for-pc{ display: block; }/*PC*/
.for-sp{ display: none;  }/*スマホ*/

/*改行*/
span.br-pc{ display: block; height: 0; line-height: 0; }
span.br-sp{ display: none; }


.float-left{
	float: left;
}
.float-right{
	float: right;
}

.table,
.table-pc
{
	display: table;
}
.table > *,
.table-pc > *
{
	display: table-cell;
	vertical-align: middle;
}

.table-sp,
.table-sp > *{
	display: block;
}


/******************************************************************************************** Media Queries 0〜480px
*/
@media screen and ( max-width:480px ){

body{
	font-size: 90%;
}

#page-header {
    height: 240px;
}

#page-header .header-eyecatch{
	margin-bottom: 0;
}

#page-header .header-title {
	width: 150px;
	height: 155px;
}

.home #page-header {
    min-height: 600px;
	margin-bottom: 0;
}

.home #page-header .header-title {
	width: 240px;
	height: 250px;
	margin: 0 auto;
}

.home #page-header .header-content {
    width: 100%;
    position: relative;
    padding: 20px 0;
	top:0;
	transform: translate(-50%,0);
}
.home #page-header .description {
    width: 90%;
    margin: 20px auto 0;
	font-size: 100%;
}


/*バーガーメニュー*/
#btn-menu{
	display: block;
}

/*改行*/
span.br-pc{ display: none; }
span.br-sp{ display: block; height: 0; line-height: 0; }

.for-pc{ display: none; }
.for-sp{ display: block; }


/*インラインリスト*/

ul.ul-inline{
	text-align: left;
	
}
ul.ul-inline li{
	display: inline;
}

/*水平定義リスト*/

dl.dl-holizontal{
	overflow: hidden;
}

dl.dl-holizontal dt{
	float: none;
	clear: both;
	width: 100%;
	padding: 0;
	text-align: center;
}

dl.dl-holizontal dd{
	
	margin-left: 0;
	padding: 0;
	text-align: center;
}


/* ページナビゲーション
------------------------------------------------------------*/

.navigation {
    padding-top: 30px;
}

.pagenav,
.pagenav .btns,
.pagenav a.pagenav-btn{
	display: block;
	width: 100%;
}

.pagenav .btns,
.pagenav a.pagenav-btn{
	margin: 10px 0;
}


/******************************************************************************************** クラス
*/

.inner{
	width: 100%;
	padding: 10px;
}

.home #main .inner{
	padding: 10px 15px;
}

.float-left,
.float-right{
	float: none;
}

.table-pc,
.table-pc > *{
	display: block;
}

#features .entry {
	float: none;
	width: 100%;
	padding: 20px;
}

#features .entry a{
	height: auto;
	min-height: 100px;
}

#features .entry a .label{
	display: block;
	position: absolute;
	top:50%;
	left: 50%;
	width: 100%;
	transform: translate(-50%, -50%);
}

/************************************************************ ヘッダー・フッター
*/

#main section:last-child 	{ margin-bottom: 0; }


#page-header,
#page-footer{
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.home #page-header::after{ display: none; }


#page-footer{
	padding: 20px;
	text-align: center;
}

#page-footer .inner,
#page-footer .inner > *{
	display: block;
	margin: 0 auto;
	padding: 0;
}

#page-footer .logo-footer{
	margin-bottom: 1em;
	width: 160px;
}

#page-footer .nav-footer {
    padding-left: 0;
}


#main {
	padding: 0 0 20px;
}

.home #main {
	padding: 30px 0 20px;
}

.home #main .header-title,
#main .section-header .header-title{
	font-size: 120%;
}

#greeting .section-footer {
    
    width: 100%;
}


#greeting .profile-photo{ width: 150px; }


/*-----------------------------------------------「お知らせ」

*/

.post #main {
    padding: 0 0 30px;
}

.single-post #main .entry-header {
    margin-bottom: 30px;
}
.single-post #main .entry{
	margin-top: 0;
}


/*-----------------------------------------------「プロジェクト」

*/

#main .main-header .header-title{
	line-height: 1.1;
	margin-top: 1em;
	font-size: 120%;
}

#main .main-header .header-title .title-m,
#main .main-header .header-title .title-d
{
	display: block;
	margin: 0;
	padding: 0;
	line-height: 1.1;
}

.projects-child .description {
    padding: 0;
}

.projects-child .photos .photos-item,
.projects-child .section-footer .profile-photo {
    padding: 5px;
}


.projects-child .section-footer .profile-photo{
	margin-right: 1em;
}

.projects-child .section-footer .profile-content{
	float: none;
	width: 100%;
	padding: 5px;
	padding-top: 1.5em;
}

.projects-child .section-footer .profile-content .subject{

}
.projects-child .section-footer .profile-description{
	clear: both;
	padding-top: 1em;
}

.post-type-archive-projects #main .section-content dt{
	width: 100%;
	
}
.post-type-archive-projects #main .section-content dd{
	margin-left: 0;
}

.projects-parent .section-content dt{
	border-top: 1px dotted #000;
	width: 100%;
	padding: 1em 0 .5em;
}

.projects-parent .section-content dd{
	text-align: center;
	border-top: 0;
	margin-left: 0;
	margin-bottom: 0;
	padding: 0 0 1em;
}
	

#form dt{
	margin-top: 1em;
}

#form dd{
	padding-top: 0;
}
	


}
