@charset "UTF-8";
@import url("https://use.typekit.net/qbg0vpb.css");

.p-top {
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	 font-feature-settings: "palt";
	 font-size: 14px;
	 background: #F6F6F6;
}

@media screen and (min-width:768px) {
	.p-top {
		font-size: 16px;
	}
}
/*.p-mainv*/
	
.p-mainv {
	text-align: center;
}

@media screen and (max-width:767px) {

	.p-mainv {
		background:url("kv-pc-bg-01.jpg") no-repeat center center;
		background-size: cover;
		padding: 30px 0 70px 0;
		background-size: cover;
	}
	
	.p-mainv h1 {
		max-width: 80%;
		margin: 0 auto 30px auto;

	}
}

@media screen and (min-width:768px) {

	.p-mainv {
		background:url("kv-pc-bg-01.jpg") no-repeat center center;
		height: 425px;
		background-size: cover;
	}
	
	.p-mainv h1 {
		padding: 20px 0 32px;
	}

	.p-mainv h1 img {
		width: 398px;
	}

}

/*.p-mainv-nav*/

.p-mainv-nav {
	background: rgba(0,0,0,0.7);
	color: #fff;
	display: inline-block;
	margin: 0 auto;
	padding: 0 0.5em;
}

.p-mainv-nav  li {
	display: inline-block;
}

.p-mainv-nav  li a {
	padding: 0.7em 0.5em;
	line-height: 1em;
	display: inline-block;
	color: #fff !important;
	text-decoration: none;
	font-family: futura-pt, sans-serif;
}

@media screen and (min-width:950px) {

	.p-mainv-nav  li a {
		padding: 0.7em 1em;
	}

	.p-mainv-nav {
		padding: 0 2em;
	}

	.p-mainv-nav  li a {
		padding: 0.7em 2em;
		font-size: 19px;
	}

}

/*.p-container*/
.p-container {
	padding-left: 20px;
	padding-right: 20px;
	box-sizing: content-box;
	margin-left: auto;
	margin-right: auto;
}


.p-container--w-980 {
	max-width: 980px;
}

.p-container--w-1100 {
	max-width: 1100px;
}

/*p-article*/

.p-article {
	padding:0 0 35px 0;
	margin-top: -70px;
}

.p-article-list-item {
	text-align: left;
	border-radius: 5px;
	background: #fff;
	filter: drop-shadow(0 0 5px rgba(0,0,0,0.15));	
	line-height: 1.4;
	margin-top: 12px;
	position: relative;
}

.p-article-list-item a {
	display: block;
	text-decoration: none;
}


.p-article-list-item-inner-subttl {
	font-size: 70%;
	color: #777;
}

.p-article-list-item-inner-ttl {
	font-weight: bold;
	font-size: 105%;
	padding: 0.1em 0;
	text-align: justify;
}

.p-article-list-item-inner-date {
	font-size: 70%;
	color: #777;
	position: absolute;
	bottom: 10px;
	right: 15px;
}

@media screen and (max-width:575px) {

	.p-article-list-item-inner {
		display: flex;
	}
	
	.p-article-list-item-inner-txt {
		width: 60%;
		box-sizing: border-box;
		padding: 10px 15px 20px 15px;
	}

	.p-article-list-item-inner-img {
		width: 40%;
		padding-top: 30%;
		overflow: hidden;
		z-index:1;
		position: relative;
		border-radius: 5px 0 0 5px;
	}
	

	.p-article-list-item-inner-img img {
		max-width: 120%;
		position: absolute;
		left: -10%;
		top: 0;
	}
	
	.p-article-list-item-inner-img img.__align-sp-right {
		left: auto;
		right: 0;
	}
	
	.p-article-list-item-inner-subttl {
		width: 100% ;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	
	.p-article-list-item-inner-date {
		bottom: 12px;
	}

}

@media screen and (min-width:576px) {

	.p-article-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.p-article-list-item {
		width: 48%;
		padding: 0 15px 23px 15px;
		margin-top: 22px;
	}

	.p-article-list-item-inner-img {
		margin-left: -15px;
		margin-right: -15px;
		padding-bottom: 15px;
		position: relative;
		overflow: hidden;
		padding-top: 80%;
		margin-bottom: 15px;
	}

	.p-article-list-item-inner-img img {
		border-radius: 5px 5px 0 0;
		position: absolute;
		top: 0;
		left: 0;
		width: auto;
		height: 100%;
	}

}

@media screen and (min-width:768px) {

	.p-article-list-item {
		width: 32%;
		padding: 0 15px 25px 15px;
	}

}

@media screen and (min-width:950px) {

	.p-article {
		padding:0 0 80px 0;
		margin-top: -100px;
	}

	.p-article-list-item {
		width: 23.5%;
	}

}

/*.p-seminar*/

.p-seminar {
	padding: 35px 0;
	background: #fff;
}

.p-seminar-list {
	text-align: left;
	display: inline-block;
	margin-left: auto;
	margin-right: auto;
}

.p-seminar-list li {
	line-height: 1.35;
	margin-bottom: 0.6em;
	padding-left: 1em;
	position: relative;
}

.p-seminar-list li:before {
	content: "";
	width: 1em;
	height: 1em;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	background:url("icn-arrow-01.svg") no-repeat center center;
	background-size: 0.3em auto;
}

.p-seminar-list li a {
	text-decoration: none;
	color: #000 !important;
}

.p-seminar-date {
	display: block;
	color: #666;
}

.p-seminar-lead {
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	line-height: 1.7;
	margin-top: 12px;
}

@media screen and (min-width:950px) {

	.p-seminar {
		padding:80px 0;
	}
	
	.p-seminar-date {
		display: inline-block;
		padding-right: 1em;
	}
	
	.p-seminar-lead {
		margin-top: 25px;
	}

}

/*p-ttl*/

.p-ttl-01 img {
	height: 30px;
}

.p-ttl-02 {
	font-size: 20px;
	margin-bottom: 15px;
	line-height: 1;
}

.p-ttl-02 span {
	display: inline-block;
	position: relative;
	padding: 0 25px;
}
.p-ttl-02 span:before,
.p-ttl-02 span:after{
	content: "";
	display: inline-block;
	width: 20px;
	height: 1px;
	background: #000;
	position: absolute;
	top: 50%;
}

.p-ttl-02 span:before {
	left: 0;
}

.p-ttl-02 span:after {
	right: 0;
}

@media screen and (min-width:768px) {

	.p-ttl-01 img {
		height: 49px;
	}

	.p-ttl-02 {
		font-size: 26px;
		margin-bottom: 33px;
	}
	
}


/*.p-special-list*/

.p-special-list {
	margin-top: -100px;
	padding-bottom: 35px;
}

.p-special-list-item {
	text-align: left;
	margin-top: 25px;
	background: #f6f6f6
}

.p-special-list-item a {
	display: block;
	text-decoration: none;;
}

.p-special-list-item-inner-subttl {
	font-size: 80%;
	padding: 0 0 0 0.8em;
	margin: 1em 0 0.5em 0;
	color: #444;
	position: relative;
}

.p-special-list-item-inner-subttl:before {
	content: "";
	display: inline-block;
	width: 0.6em;
	height: 2px;
	position: absolute;
	left: 0;
	top: 0.4em;
	background:#ED1C23 ;
}

.p-special-list-item-inner-ttl {
	font-weight: bold;
	font-size: 125%;
	line-height: 1.35;
	text-align: justify;
}

.p-special-list-item-inner-date {
	font-size: 70%;
	color: #777;
	position: absolute;
	bottom: 10px;
	right: 15px;
}

@media screen and (min-width:768px) {
	
	.p-special-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: -130px;
		padding-bottom: 100px;
	}
	
	.p-special-list-item {
		width: 48%;
		margin-top: 40px;
	}

}


/*,p-special-newest*/

.p-special-bg-01 {
	background: url("special-bg-01.png") no-repeat top center #fff;
	background-size: 100%;
}

.p-special-bg-01 {
	text-align: right;
	padding: 15vw 0 25px;
}

.p-special-newest {
	padding: 0 0 100px 0;
	background: #000;
	margin-top: -2px;
}

.p-special-newest a {
	display: block;
	text-decoration: none;
	color: #fff;
}

.p-special-newest-inner-subttl {
	font-size: 80%;
	line-height: 1.35;
	padding: 0 0 0 0.8em;
	margin: 1.4em 0 0.5em 0;
	position: relative;
}

.p-special-newest-inner-subttl:before {
	content: "";
	display: inline-block;
	width: 0.6em;
	height: 2px;
	position: absolute;
	left: 0;
	top: 0.4em;
	background:#ED1C23 ;
}

.p-special-newest-inner-ttl {
	font-weight: bold;
	font-size: 125%;
	line-height: 1.35;
	/*text-align: justify;*/
}

.p-special-newest-inner-date {
	font-size: 70%;
	position: absolute;
	bottom: 10px;
	right: 15px;
}

.p-cpecial-newest-inner-btn {
	display: inline-block;
	font-size: 110%;
	font-weight: bold;
	border-bottom: 2px solid #ddd;
	padding: 0 0.2em 0.5em 1.32em;
	position: relative;
	margin-top: .5em;
	line-height: 1em;
}

.p-cpecial-newest-inner-btn:before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	background: url("icn-arrow-02.svg") no-repeat center center;
	background-size: 0.9em auto;
	position: absolute;
	top: 0;
	left: 0;
}

@media screen and (max-width:767px) {
	.p-special-newest-btn {
		display: none;
	}

}

@media screen and (min-width:768px) {

	.p-special-bg-01 {
		text-align: right;
		padding: 120px 0 46px;
	}

	.p-special-newest {
		padding: 0 0 170px 0;		
	}

	.p-special-newest-inner {
		display: flex;
		justify-content: space-between;
		text-align: left;
	}

	.p-special-newest-inner-img {
		width: 62%;
	}

	.p-special-newest-inner-txt {
		width: 35%;
	}
	.p-special-newest-inner-ttl {
		font-size: 32px;
		line-height: 1.35;
	}
	
	.p-cpecial-newest-inner-btn {
		margin-top: 1.5em;
	}
	
}

/*p-btn-01*/

.p-btn-01 {
	display: inline-block;
	text-align: center;
	margin:0 auto;
	padding: 1.2em 0;
	border-radius: 100px;
	width: 80%;
	max-width: 350px;
	font-weight: bold;
	background: #000;
	color: #fff !important;
	font-size: 105%;
	line-height: 1em;
	text-decoration: none;
	position: relative;
}

.p-btn-01:after {
	content:"";
	display: inline-block;
	width: 1em;
	height: 1em;
	position: absolute;
	right: 1em;
	top: 1.2em;
	background:url("icn-arrow-03.svg") no-repeat center center;
	background-size: 0.5em;
}


/*p-footer*/
.p-footer {	
	background: #000;
	text-align: center;
}

.p-footer img {
	width: 100%;
	max-width: 980px;
}

