@charset "UTF-8";
/* 
Theme Name: つなぐデザインしずおか 14th 2025-2026
Description: ACF 仕様変更に対応
*/

html{
	background: #000;
}

body{
	margin: 0;
	padding: 0;
	line-height: 1.8;
	position: relative;
}

p,ul,ol 			{ margin: 1em 0; }

p:first-child,
ul:first-child,
ol:first-child 		{ margin-top: 0; }

p:last-child,
ul:last-child,
ol:last-child 		{ margin-bottom: 0; }

label{ margin: 0; }

img { vertical-align: bottom; }

figure img{ width: 100%; height: auto; }

a 		{ color: #B40546; }
a:hover { opacity: .8;}


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

.guide-oubo-image{
	width: 400px;
	margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
	.guide-oubo-image{
		width: 100%;
	}
}

img.fit{
	max-width: 100%;
	height: auto;
}

.note{
	color:red;
	font-size:90%;
}

.inner{
	width: 960px;
	margin: 0 auto;
	position: relative;
}

.inner::after,
.clearfix::after{
	content: '';
	display: table;
	clear: both;
	height: 0;
}

.edit-link{
	font-size: 90%;
}


/******************************************************************************************** ページ全体
*/

#page{
	width: 100%;
	margin: 0 auto;
	
	
}

/******************************************************************************************** ヘッダー
*/

#page-header{
	
	text-align: center;
	position: relative;
	z-index: 0;
	overflow: hidden;
	height: 300px;
}


.home #page-header{
	
	color: #fff;
	text-align: center;
	padding: 0;
	margin-bottom: 50px;
	min-height: 800px;
	position: relative;
	z-index: 0;
	overflow: hidden;
}

.home #page-header::after{
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	/*background: rgba(255,255,255,.5);*/
	background: rgba(255,255,255,.2) url(images/filter-w.png) fixed;
	position: absolute;
	top:0;
	left:0;
	
}

.home #page-header .header-content {
    width: 100%;
    position: absolute;
    top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
    padding: 50px 0;
	z-index: 100;
}

.home #page-header .header-title {
	width: 300px;
	
	margin: 30px auto;
}

.home #page-header .description{
	color: #000;
	width: 60%;
	margin: 50px auto 0;
	/*padding: 30px;
	background: rgba(102,0,0,0.74);
	border-radius: 1em;*/
	font-size: 85%;
}

/*
.home #page-header{
	background: url(images/bg-header.jpg) no-repeat 50% 50% fixed;
	background-size: cover;
	color: #fff;
	
	padding: 50px 0;
	
	height: 800px;
	/clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 80%);/
	margin-bottom: 50px;
}




#page-header::before{
	content: '';
	background: inherit;
	-webkit-filter: blur(0);
	-moz-filter: blur(0);
	-o-filter: blur(0);
	-ms-filter: blur(0);
	filter: blur(0);
	transition: filter 1s;
	position: absolute;
	top: -5px;
	left: -5px;
	right: -5px;
	bottom: -5px;
	z-index: -1;
}

#page-header:hover::before{
	
	-webkit-filter: blur(5px);
	-moz-filter: blur(5px);
	-o-filter: blur(5px);
	-ms-filter: blur(5px);
	filter: blur(5px);
	
}
*/

body:not(.home) #page-header .header-title {
	width: 200px;
	height: 210px;
	
	position: absolute;
	top:50%;
	left:50%;
	
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

/*.home #page-header .header-title {
	width: 300px;
	height: 310px;
	top:40%;
	
}*/

#page-header .header-title img{
	width: 100%;
	height: auto;
}


/******************************************************************************************** フッター
*/

#page-footer{
	
	padding: 50px 0;
	background: #B40546;
	/*
	padding: 160px 0 50px;
	clip-path: polygon(0% 0%, 100% 40%, 100% 100%, 0% 100%);*/
}


#page-footer .inner{
	display: table;
	width: auto;
	margin: 0 auto;
}

#page-footer .inner > *{
	display: table-cell;
	vertical-align: middle;
}


#page-footer .logo-footer{
	width: 200px;
}
#page-footer .nav-footer{
	padding-left: 50px;
}

#page-footer ul{
	list-style: none;
	margin: 0;
	padding: 0;
	line-height: 1.1;
}

#page-footer ul li{
	margin: 0;
	padding: 0;
}

#page-footer ul li a{
	display: block;
	margin: 0;
	padding: .5em;
	color: #fff;
	text-decoration: none;
}

small{
	display: block;
	color: #fff;
	background: #000;
	text-align: center;
	padding: 2em 1em;
	line-height: 1.3;
}


/******************************************************************************************** バーガーメニュー
*/


#btn-menu{
	outline: 0;
	width: 30px;
	height: 30px;
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	z-index: 100;
	position: fixed;
	top:15px;
	right: 15px;
	
	-webkit-appearance: none;
}

.admin-bar #btn-menu{
	top:45px;
}


#btn-menu .inner{
	display: block;
	width: 30px;
	height: 30px;
	position: relative;
	padding: 0;
}

#btn-menu .bar{
	display: block;
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 30px;
	height: 4px;
	background: #000;
}

#btn-menu .bar:nth-child(1){ top:    2px; }
#btn-menu .bar:nth-child(2){ top:    50%; }
#btn-menu .bar:nth-child(3){ bottom: -2px; }


#btn-menu.open .bar:nth-child(1){
	top:50%;
	transform: translate(-50%, -50%) rotate(45deg);
}

#btn-menu.open .bar:nth-child(2){ display: none; }

#btn-menu.open .bar:nth-child(3){
	top:50%;
	transform: translate(-50%, -50%) rotate(-45deg);
}



/******************************************************************************************** グローバルメニュー
*/

#menu-global{
	position: fixed;
	top: 0;
	right: -320px;
	z-index: 100;
	
	width: 280px;
}

.admin-bar #menu-global{
	top:45px;
}

#menu-global .logo-menu{
	width: 80%;
	margin: 0 auto 30px;
	
}
#menu-global .logo-menu img{
	width: 100%;
	height: auto;
	}

#menu-global .inner{
	padding: 30px;
	width: 100%;
}

#menu-global ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

#menu-global ul li{
	border-bottom: 1px dotted #666;
}

#menu-global ul li a{
	color: #fff;
	display: block;
	padding: 1em 0;
	text-align: center;
	font-size: 80%;
}


/******************************************************************************************** breadcrumbs */

.breadcrumbs{
	width: 100%;
	font-size: 85%;
	background: #ddd;
	padding: .5em 0;
}



/******************************************************************************************** navigation */

.pagination{
    margin:2em 0;
    text-align:center;
}
.pagination .screen-reader-text { display:none; }
.pagination .nav-links {}
.nav-links .page-numbers {
	display:inline-block;
	text-decoration:none;
    border: solid 1px #CCC;
    /*border-radius:5px;*/
    padding:5px 10px;
    margin:0 2px;
	background: #fff;
}
.nav-links .page-numbers.current {
    background: #04c;
    border: solid 1px #16b;
    color: #FFF;
}
.pagination a:hover{
    color: #16b;
    border: solid 1px #16b;
    background-color: #FFF;
}


.nav-links .page-numbers {}
.nav-links .page-numbers.current {}


.next-previous { width:100%; display: table; border-spacing: 15px 0; margin-bottom: 1.5em; box-sizing: border-box;}
.next-previous a { color: #04c; text-decoration: none; }
.next-previous .next,
.next-previous .previous
{
	position: relative;
	display:table-cell;
	text-align: center;
	vertical-align: middle;
	width: 50%;
	/*border: 1px solid #CCC;*/
	background: #baccf0;
	padding: 1em;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	
}
.next-previous .next		{ padding-left: 30px; border-radius: 1em; }
.next-previous .previous	{ padding-right: 30px; border-radius: 1em; }

.next-previous .next-icon,
.next-previous .previous-icon
{
	color: #04c;
	position: absolute;
	top:50%;
	transform:  translateY(-50%);
	-webkit-transform: translateY(-50%);
}
.next-previous .next-icon{ left: 10px;}
.next-previous .previous-icon{ right: 10px;}



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

.navigation{
	margin-top: 50px;
	border-top:1px solid #000;
	padding: 50px 0 0;
}

.pagenav{
	display: table;
	width: 100%;
	
	border-collapse: separate;
	border-spacing: 15px;
}
.pagenav a.pagenav-btn{
	display: table-cell;
	background: #B40546;
	border-radius: 1em;
	padding: 1em .5em;
	text-align: center;
	color: #fff;
	width: 35%;
}
.pagenav a.pagenav-btn p{
	margin: .5em 0 0;
}

.pagenav .btns{
	display: table-cell;
	width: 30%;
}
.pagenav .btns a.pagenav-btn{
	display: block;
	background: #999;
	width: 100%;
}


.pagination{
	
    text-align:center;
}
.pagination .screen-reader-text { display:none; }

.pagination .nav-links {}

.nav-links .page-numbers {
	display:inline-block;
	text-decoration:none;
	border-radius: .5em;
   
    padding:5px 10px;
    margin:0 2px;
	background: #E6E6E6;
}
.nav-links .page-numbers.current {
    color: #FFF;
	background: #000;
}
.pagination a{
	color: #666;
}
.pagination a:hover{
    color: #fff;
    background-color: #B40546;
}




/******************************************************************************************** 内容
*/

#content{}

.list-menu a{
	color: #000;
}

.list-menu ul{
	list-style: none;
	margin: 0;
	padding: 0;
	line-height: 1.1;
	text-align: center;
}
.list-menu ul li{
	margin: .5em 0;
}

.list-menu ul li a{
	display: inline-block;
	padding: .5em 1em;
}

.list-menu ul li.current-list-item a{
	background: #000;
	color: #fff;
	border-radius: 1em;
}


/*サイトへのリンク*/

.list-sites ul{
	list-style: none;
	margin: 0;
	padding: 0;
	line-height: 1.1;
	text-align: left;
}

.list-sites ul li{
	margin: 0;
}

.list-sites ul li a{
	display: inline-block;
	padding: .5em 0;
	color: #000;
}


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

ul.ul-inline{
	list-style: none;
	margin: 0;
	padding: 0;
	line-height: 1.6;
	text-align: left;
}

ul.ul-inline li{
	display: inline-block;
	margin: 0;
	margin-right: -.5em;
}
ul.ul-inline li::after{
	content: '、';
}
ul.ul-inline li:last-child::after{
	content: '';
}

ul.ul-inline li a{
	display: block;
	padding: 0;
	color: #000;
}


/*水平定義リスト*/

dl.dl-holizontal{
	overflow: hidden;
	margin: 1.5rem 0;
}

dl.dl-holizontal:first-child{ margin-top: 0;}
dl.dl-holizontal:last-child{ margin-bottom: 0;}

dl.dl-holizontal dt{
	float: left;
	clear: both;
	width: 150px;
	padding: .5em 0;
}

dl.dl-holizontal dd{
	
	margin-left: 150px;
	padding: .5em 0;
	padding-left: 1em;
}



/* -----------------------------------
固定ページ用　定義リスト
*/

.page dl.dl-holizontal{
	display: flex;
	flex-wrap: wrap;
}

.page dl.dl-holizontal dt,
.page dl.dl-holizontal dd{
	float: none;
	padding: 1.5em 0;
	border-top: 1px dotted #000;
	text-align: left;
	margin: 0;
}

.page dl.dl-holizontal dt{
	width: 25%;
}

.page dl.dl-holizontal dd{
	width: 75%;
}

.page dl.dl-holizontal dd > dl{
	display: flex;
	flex-wrap: wrap;
}

.page dl.dl-holizontal dd > dl dt,
.page dl.dl-holizontal dd > dl dd{
	border: 0;
	padding: .5rem;
	float: none;
}
.page dl.dl-holizontal dd > dl dt{
	width: 35%;
	/* background-image: linear-gradient(to bottom, #fff 50%, #e2e2e2 50%, #e2e2e2 100%); */
}
.page dl.dl-holizontal dd > dl dd{
	margin-left: 0;
	width: 65%;
}

@media screen and (max-width: 767px) {

	.page dl.dl-holizontal,
	.page dl.dl-holizontal dd > dl{
		flex-direction: column;
	}

	.page dl.dl-holizontal dt,
	.page dl.dl-holizontal dd,
	.page dl.dl-holizontal dd > dl dt,
	.page dl.dl-holizontal dd > dl dd{
		width: 100%;
	}

	.page dl.dl-holizontal dt{
		text-align: center;
		font-size: 1.125rem;
		background: #eee;
		padding: .6rem;
		margin-bottom: 1rem;
		margin-top: 1.5rem;
	}

	.page dl.dl-holizontal dd{
		border: 0;
		padding-top: 0;
	}

	.page dl.dl-holizontal dd > dl dt{
		/* display: inline-block; */
		background: #fff;
		font-size: 1rem;
		text-align: left;
		width: auto;
		padding: 0;
		margin: 0;
	}

	.page dl.dl-holizontal dd > dl dd{
		padding-left: 2rem;
	}

}


/******************************************************************************************** アサイド
*/

#aside{
	background: #EAEAEA;
	
	padding: 50px 0;
}



#aside .aside-item{
	text-align: center;
}

#aside .aside-item .item-header{
	font-weight: bold;
	margin-bottom: 1.5em;
}
#aside .aside-item .item-header .header-title{
	font-size: 120%;
}

/******************************************************************************************** メインコンテンツ
*/

body:not(.parent ) #main .list-menu{
	margin: 50px 0;
	font-weight: bold;
}

#main .main-header{
	text-align: center;
	font-weight: bold;
}
#main .main-header .header-title{
	margin-top: .5em;
}

#main section 				{ margin: 3em 0; }
#main section:first-child 	{ margin-top: 0; }


#main section .inner				{ padding-top: 50px; border-top: 1px solid #000; }
#main section:first-child  .inner	{ padding-top: 0; border-top: 0; }

#main .section-header{
	text-align: center;
	margin-bottom: 2em;
}
#main .section-header .header-title{
	font-size: 140%;
}






/******************************************************************************************** フロントページ
*/

.home #main .header-title{ text-align: center; margin-bottom: 50px; }

#greeting .section-footer{
	margin-left: auto;
	margin-top: 1.5em;
	border-spacing: 0;
	width: 50%;
	margin-left: auto;
}

#greeting .section-footer > * { vertical-align: top; }

#greeting .profile-photo { padding-right: 30px; }


#features .entry{
	float: left;
	width: 33%;
	position: relative;
	padding: 20px;
}
#features .entry a{
	
	display: block;
	min-height: 300px;
	background: #000;
	color: #fff;
	border-radius: 1em;
}
#features .entry .label{
	text-align: center;
	margin: 0;
	width: auto;
	white-space: nowrap;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

#topics ul{
	margin: 0;
	padding: 0;
	list-style: none;
	border-bottom: 1px dotted #666;
}

#topics ul li{
	border-top: 1px dotted #666;
}

#topics ul li a{
	display: block;
	color: #000;
	padding: 1em;
}

#topics .subject{
	font-size: 100%;
	font-weight: bold;
	margin: 0;
	color: #B40546;
}
#topics .date{
	font-size: 85%;
	font-weight: normal;
	margin: 0;
}


/******************************************************************************************** お知らせ
*/

.page #main,
.post #main {
	padding: 0 0 50px;
}

body:not(.home) #main .entry{
	margin: 30px 0;
	padding: 30px 0 0;
	border-top: 1px solid #000;
}
body:not(.home) #main .entry:first-child 	{ margin-top: 0; }
body:not(.home) #main .entry:last-child 	{ margin-bottom: 0; }

body:not(.home) #main .date{
	margin-top: 0;
	font-size: 85%;
}

body:not(.home) #main .entry-header{
	margin-bottom: 20px;
}

.page #main .entry-header,
.single-post #main .entry-header{
	text-align: center;
	margin-bottom: 50px !important;
	padding-bottom: 30px;
	border-bottom: 1px solid #000;
}

#main .entry-header .header-title{
	margin-bottom: 0;
}


/******************************************************************************************** 「つなぐデザインしずおかについて」
*/

#producer-section .section-content{
	text-align: center;
}


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


.post-type-archive-projects #main section .inner {
    padding-top: 0;
    border-top: 0;
}
.post-type-archive-projects #main .section-content dt{
	width: 150px;
}
.post-type-archive-projects #main .section-content dd{
	margin-left: 151px;
}

.projects-parent .section{
	text-align: center;
	padding-bottom: 20px;
}

.projects-parent .section-content ul{
	list-style: none;
	padding: 0;
	margin: 2em 0;
}

.projects-parent .section-content ul li{
	margin: 1em 0;
}

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

.projects-parent .section-content dd{
	text-align: left;
	border-top: 1px dotted #000;
	margin-left: 301px;
	margin-bottom: 0;
	padding: 1.5em 0;
}

.projects-parent .section-content dd h4{
	border-left: 4px solid #000;
	padding-left: .8em;
	margin-top: 2em;
}

.projects-parent .section-content dd dl{
	overflow: hidden;
	border-bottom: 1px dotted #000;
}

.projects-parent .section-content dd dl dt{
	border-top: 1px dotted #000;
	margin: 0;
	width: 150px;
	padding: .8em 0;
	padding-left: 1em;
}

.projects-parent .section-content dd dl dd{
	text-align: left;
	border-top: 1px dotted #000;
	margin-left: 151px;
	
	padding: .8em 0;
}

.projects-parent .section-content dd ul{
	list-style: disc;
	padding-left: 1.5em;
	margin: 1em 0;
}
.projects-parent .section-content dd ol{
	padding-left: 1.5em;
	margin: 1em 0;
}

.projects-parent .phase-4 img{
	width: 100%;
	height: auto;
}

.projects-parent .phase-4 .book{
	margin: 1.5em;
	padding-bottom: 1.5em;
	border-bottom: 1px solid #000;
	
}
.projects-parent .phase-4 .book:first-of-type{
	margin-top: 0;
}
.projects-parent .phase-4 .book:last-of-type{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
}

/* 子ページ サムネイルリスト */
.projects-parent .list-thumbnail{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.projects-parent .list-thumbnail .list-thumbnail-item{
	width: 30%;
	margin: 15px 0;
	text-align: center;
}

@media screen and ( max-width:480px ){

	.projects-parent .list-thumbnail .list-thumbnail-item{
		width: 50%;
		font-size: 90%;
	}

}

.projects-parent .list-thumbnail .list-thumbnail-item a{
	display: block;
	padding: 15px;
	color: #000;
	font-weight: bold;
	border-radius: 15px;
	transition: background-color .5s ease-in-out;
}

.projects-parent .list-thumbnail .list-thumbnail-item a:hover{
	text-decoration: none;
	color: rgba(0, 0, 0, 0.8);
	/* background-color: #ededed; */
	/* opacity: 1; */
}

.projects-parent .list-thumbnail .list-thumbnail-item .team-title span{
	display: block;
}

/******************************************************************************************** 「プロジェクト」子ページ
*/

.projects-child #page-header{
	
	color: #fff;
	text-align: center;
	padding: 0;
	margin-bottom: 50px;
	height: 100vh;
	position: relative;
	z-index: 0;
	overflow: hidden;
}

.projects-child #page-header::after{
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	/*background: rgba(255,255,255,.5);*/
	background: rgba(255,255,255,.2) url(images/filter-w.png) fixed;
	position: absolute;
	top:0;
	left:0;
	
}

.projects-child #page-header .header-eyecatch{
	position: relative;
	overflow: hidden;
	height: 100vh;
}
.projects-child #page-header .header-eyecatch img{
	object-fit: cover;
	width: 100%;
	height: 100vh;
}

.projects-child #page-header .header-content {
    width: 100%;
    position: absolute;
    top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
    padding: 50px 0;
	z-index: 100;
}

.projects-child #page-header .header-title {
	position: static !important;

	/* width: 300px; */
	
	margin: 30px auto !important;
	transform: translate(0,0) !important;
}

.projects-child #page-header .description{
	color: #000;
	width: 60%;
	margin: 50px auto 0;
	/*padding: 30px;
	background: rgba(102,0,0,0.74);
	border-radius: 1em;*/
	font-size: 85%;
}

.projects-child .description{
	padding: 20px;
}
.projects-child .description .sub,
.projects-child .description .heading{
	font-weight: bold;
}
.projects-child .description span{
	display: block;
}
.projects-child .description .description-title
	{
		margin-top: 20px;
	}

.projects-child .products-section .products-description{
	padding: 40px 0px;
}

.home #main iframe,
.projects-child iframe{
	display: block;
	width: 100%;
	min-height: 540px;
}

@media screen and ( max-width:480px ){

	.projects-child .products-section .products-description{
		padding: 0px 5px;
	}

	.home #main iframe,
	.projects-child iframe{
		display: block;
		width: 100%;
		min-height: 240px;
	}

	.projects-child #page-header .header-title {
		width: 150px !important;
		height: 155px !important;
	}
	/* .projects-child #page-header .header-title img{
		width: 100%;
		height: auto;
	} */

	.projects-child .description .description-title
	{
		font-size: 150%;
	}
}

@media screen and ( max-width:320px ){

	.home #main iframe,
	.projects-child iframe{
		display: block;
		width: 100%;
		min-height: 200px;
	}

}

.projects-child ul.photos{
	overflow: hidden;
	margin: 2em 0;
	padding: 0;
	list-style: none;
}


.projects-child .photos .photos-item{
	width: 33.3%;
	float: left;
	padding: 20px;
}

.projects-child .section-footer{
	overflow: hidden;
}

.projects-child .section-footer .profile-photo{
	float: left;
	width: 33.3%;
	padding: 20px;
}

.projects-child .section-footer .profile-content{
	float: left;
	width: 66.6%;
	padding: 20px;
}

.projects-child .section-footer .profile-description{
	font-size: 80%;
}

/* パンフレット */

.projects-child .pamphlet-section img {
	width: 100%;
	height: auto;
}


/*正方形ブロックと、その内容・画像クリップ*/

.square{
	display: block;
	position: relative;
    width: 100%;
	overflow: hidden;
	background: #E6E6E6;
}

.square::before{
	display: block;
    content: '';
    padding-top: 100%;
}

.square .square-content{
	display: block;
	position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
	overflow: hidden;
}
.square .square-content img{
	width: 100%;
    height: 100%;
	object-fit: cover;
}


/******************************************************************************************** 「校正」ページ
*/

.single-proofs #main ul{
	list-style: none;
}

.single-proofs #main ul li{
	border-bottom: 1px dotted #999;
	padding: 1em 0;
}

.single-proofs #main ul li::before{
	display: inline;
	background: #ccc;
	padding: .3em;
	font-size: 65%;
	margin-right: .8em;
}

.single-proofs #main ul li.new::before{
	content:'新規';
	background: #00B2FF;
	color: #fff;
}
.single-proofs #main ul li.update::before{
	content:'修正';
	background: #FF007A;
	color: #fff;
}
.single-proofs #main ul li.finished::before{
	content:'校了';
	background: #30CA2F;
	color: #fff;
}

/******************************************************************************************** メールフォーム
*/


.mw-wp-form_image img{
	width:100%;
	height:auto;
}

form input[type=text],
form input[type=email],
form input[type=url],
form input[type=tel],
form input[type=number],
form textarea
{
	padding:.5em;
	width:90%;
}

form .form-footer{
	display:flex;
	justify-content: center;
	margin:1em 0;
}

.btn
{
	text-align:center;
	text-decoration:none;
	display:inline-block;
	cursor:pointer;
	box-sizing:border-box;
	border:none;
	border-radius:10px;
	background:rgba(180,5,70,0.90);
	color:#fff;
	font-weight:900;
	font-size:140%;
	padding:.5em;
	width:80%;
	margin:0 10px;
}

form .btn,
form .btn-return
{
	-webkit-appearance: none;
	display:block;
	cursor:pointer;
	box-sizing:border-box;
	border:none;
	border-radius:10px;
	background:rgba(180,5,70,0.90);
	color:#fff;
	font-weight:900;
	font-size:140%;
	padding:.5em;
	width:80%;
	margin:0 10px;
}
#container .mw_wp_form_confirm .form-contact dd{
	min-height:5em !important;
}
/*.mw_wp_form_confirm form .btn-submit-application,
.mw_wp_form_confirm form .btn-return-application
{
	width:auto;
}
*/
form .btn-return
{
	background:#777;
	color:#fff;
}

/*.mw_wp_form_confirm,
.mw_wp_form_complete{
	padding:2em;
	background:#FFF;
	border-radius:10px;
}*/

.mw_wp_form .error{
	color:#FFF !important;
	background:#F00;
	display:inline-block !important;
	padding:.3em .6em;
	margin:.5em;
	border-radius:5px;
}

.policy{
	text-align:center;
}


/* 入力画面 */
.mw_wp_form_input .input-hidden{
	display: none;
}
/* 確認画面 */
.mw_wp_form_confirm .confirm-hidden
{
   display: none;
}

.mw_wp_form_input .hide-input,
.mw_wp_form_confirm .hide-confirm,
.mw_wp_form_complete .hide-complete,
.mw_wp_form_preview .hide-preview,
.mw_wp_form_confirm .select-wrap::before
{ 
	display: none;
}

.mw_wp_form_complete .thanks strong{
	font-size: 1.5rem;
}

#form{
	padding-bottom: 50px;
}

.require::after{
	content: '必須';
	background-color: red;
	padding: .3em .5em;
	font-size: 85%;
	font-weight: normal;
	color: #fff;
	display: inline-block;
	margin-left: .5em;
	border-radius: .5em;
	line-height: 1;
}

ul.file-list{
	list-style: none;
	margin: 1em 0;
	padding: 0;
}

ul.file-list li{
	margin: .8em 0;
}

#form dl{
	overflow:hidden;
	border-bottom:1px dotted #777;
}
#form dt{
	border-top:1px dotted #777;
	padding: 1em;
/*	margin-top: 1em;*/
}
#form dd dt{
	
}
#form .form-contact dt{
	
}


#form dd{
	padding: 1em;
	/* padding-top: 0; */
}
#form .form-contact dd{
	
}
#form dd dd{
}

.w20{
	width: 20% !important;
}

#message .message-footer{
	overflow:hidden;
	margin-top:1.5em;
}
#message figure{
	width:200px;
	float:left;
}
#message .message-footer-text{
	text-align:right;
	width:420px;
	float:right;
}
#message .message-footer-text p{
	line-height:2;
	margin-bottom:2em;
}


.mw-wp-form_image img{
	width:100%;
	height:auto;
}

form input[type=text],
form input[type=email],
form input[type=url],
form input[type=tel],
form input[type=number],
form textarea
{
	padding:.5em;
	width:100%;
}

form .form-footer{
	display:flex;
	justify-content: center;
	margin:1em 0;
}


/* -----------------------------------
Slick 
*/

/* slide-box */

.slide-box {
  position: relative;
  margin: 0;
  padding: 0;
}

/* slide */

.slide {
  position: relative;
  margin: 0;
  padding: 0;
}

.slide .item {
  position: relative;
  /* height: 100%; */
}
.slide .item a {
  display: block;
}

/* .slide .item::before {
  display: block;
  padding-top: 39%;
  content: "";
} */

.slide .item .image {
  position: relative;
  overflow: hidden;
}
/*
.slide .item img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
}
.slide > .slick-list,
.slide > .slick-list > .slick-track,
.slide > .slick-list > .slick-track > .slick-slide > div {
  position: relative;
  height: 100%;
}
*/

/* slide-navigation */

.slide-navigation {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
}

.slide-navigation .item {
  position: relative;
  cursor: pointer;
	width: 15%;
}


/* 
.slide-navigation {
  line-height: 0;
  position: relative;
  margin: 0;
  padding: 0;
}
.slide-navigation .item {
  position: relative;
  cursor: pointer;
}
.slide-navigation .item .image {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}
.slide-navigation .item .image::before {
  display: block;
  padding-top: 35%;
  content: "";
}
.slide-navigation .item .image::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  opacity: 0.5;
  background: #000;
}
.slide-navigation .slick-current .image::after {
  opacity: 0;
}
.slide-navigation .item .image {
  position: relative;
  overflow: hidden;
}
.slide-navigation .item .image img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
}
*/
@media screen and (max-width: 767px) {
  .slide-navigation {
    width: 100%;
  }
  .slide-navigation .item .image::before {
    padding-top: 50%;
  }
}

/* slick */

.slick-vertical .slick-slide {
  border: 0 solid transparent;
}
.slick-arrow {
  z-index: 999;
}
.slick-prev {
  top: 25px;
  bottom: 0;
  left: 20px;
  right: auto;
  margin: auto;
}
.slick-next {
  top: 25px;
  bottom: 0;
  left: auto;
  right: 20px;
  margin: auto;
}

.slide-navigation .slick-track {
	transform:unset!important;
}

/******************************************************************************************** エントリーページ（2025追加）
*/

section.step{
	text-align: center;
	margin: 2rem 0;
}

section.step h2{
	margin-bottom: 2rem;
}
.stem-num{
	font-size: 1.5rem;
}

.process{
	display: flex;
	width: 100%;
	gap: 50px;
	margin: 2rem 0;
	padding: 0;
	list-style: none;
}
.process li{
	width: calc( (100% - 100px) / 3 );
	position: relative;
	background-color: #ABE0FF;
	border-radius: 1rem 0 0 1rem;
	min-height: 300px;
	padding: 2rem 1rem;
	font-weight: bold;
	text-align: center;
}
.process li::after{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border: 30px solid #ABE0FF;
	border-right: 0;
	border-top:150px solid transparent;
	border-bottom:150px solid transparent;
	position: absolute;
	left: 100%;
	top: 50%;
	transform: translateY(-50%);
}

.process li:last-child{
	border-radius: 1rem;
}
.process li:last-child::after{
	display: none;
}

@media screen and (max-width: 767px) {
	.process{
		display: flex;
		flex-direction: column;
	}
	.process li{
		width: 100%;
		border-radius: 1rem 1rem 0 0;
		min-height: 0;
	}
	.process li:last-child::after{
		display: none;
	}

	.process li::after{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border: 30px solid #ABE0FF;
	border-bottom: 0;
	border-left:calc( 50vw - 10px ) solid transparent;
	border-right:calc( 50vw - 10px ) solid transparent;
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translateX(-50%);
	}

	.single-proofs #main ul {
    padding: 0;
	}
	
}