@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Yusei+Magic&display=swap');

#main h2{
	font-family: 'Yusei Magic', sans-serif!important;
}

#page .site-header{
	background:#e27fb0;
}

#page .site-header.header-fixed{
	background:#e27fb0;
}

@media screen and (max-width:575px){
	#main-visual .container{
		padding-top: 90px!important;
		padding-bottom: 60px!important;
	}
}

body.home #page .site-header.no-scroll .site-header__inner::after{
	opacity:0;
}

#page .site-header .container{
	position: relative;
	z-index:1;
}

#page .section-title-area .section-title{
	color: #e15588;
}

#page .section-title-area .section-subtitle{
	background: #e15588;
	color: #fff;
	padding: 3px 10px;
	line-height: 1;
	border-radius: 5px;
}

/* INFORMATION */
#page .section-information {
	padding:3em 0;
}

#page .section-information .info-title{
	width:200px;
	margin-right: 3em;
}

#page .section-information .info-title h2{
	background: #dc473f;
	color: #fff;
	text-align: center;
	padding: 5px;
	border-radius: 6px;
	font-size:16px;
}

#page .section-information .info-box{
	flex:1;
	list-style: none;
	padding: 0;
	margin:0;
}

#page .section-information .info-box li{
	display: table;
	width: 100%;
	margin:0 0 10px;
	padding-bottom:10px;
	border-bottom:dotted 1px #ccc;
}

#page .section-information .info-box li:last-child{
	margin-bottom:0;
	padding-bottom:0;
	border-bottom:none;
}

#page .section-information .info-box .info-box__date,
#page .section-information .info-box .info-box__detail{
	display: table-cell;
	text-align: left;
}

#page .section-information .info-box .info-box__detail > *{
	margin-bottom:0;
}

#page .section-information .info-box .info-box__date:first-child{
	width: 100px;
}

#page .section-information .info-box .info-box__attachment{
	margin-top: 5px;
}

#page .section-information .info-box a{
	color: inherit;
}

#page .section-information .info-box a:hover{
	text-decoration: underline;
}

#page .section-information .info-box .attachment{
	display:inline-block;
}

#page .section-information .info-box .attachment i{
	margin-right:.5em;
}

@media screen and (max-width:575px){
	
	#page .section-information .row{
		display: block;
		margin:0;
	}
	
	#page .section-information .info-title{
		display: block;
	}
	
	#page .section-information .info-title h2{
		background: none;
		padding: 0 0 0 6px;
		color: #505050;
		text-align: left;
		border-left: solid 5px #dc473f;
		border-radius: 0;
	}
	
	#page .section-information .info-box li{
		display: block;
	}
	
	#page .section-information .info-box .info-box__date{
		display: block;
		width: auto;
	}
	
	#page .section-information .info-box .info-box__date p{
		font-weight: bold;
		margin-bottom: 5px;
	}
	
	#page .section-information .info-box .info-box__detail{
		display: block;
		width: auto;
	}
}

/* EVENT */
#page .section-event{
	background:#fff;
}

#page .section-event .event-box__wrapper{
	background:#f8f9f9;
	padding:3em;
	width: 100%;
}


#page .section-event .event-box{
	display:flex;
	align-items: center;
	width:100%;
}

#page .section-event .event-box .event-box__image{
	width:33.333%;
	position: relative;
	margin-right:3em;
}

#page .section-event .event-box .event-box__image img{
	display:block;
}

#page .section-event .event-box .event-box__detail{
	flex:1;
}

#page .section-event .event-box__title{
	padding-bottom:10px;
	border-bottom:solid 1px #ccc;
	display:flex;
	width:100%;
	justify-content: space-between;
	margin-bottom: 1em;
}

#page .section-event .event-box__title h3{
	margin-bottom:0;
}

#page .section-event .event-box__title p{
	margin-bottom:0;
}

#page .section-event .event-box__title p i{
	margin-right:.5em;
}

#page .section-event .event-end{
	background: #003748;
	color:#fff;
	font-weight: bold;
	margin-bottom: 0;
	display:inline-block;
	padding:2px 10px;
	border-radius:3px;
}

@media screen and (max-width:575px){
	#page .section-event .row{
		margin:0;
	}
	
	#page .section-event .event-box{
		align-items: flex-start;
	}
	
	#page .section-event .event-box__wrapper{
		background:none;
		padding:0;
	}
	
	#page .section-event .event-box .event-box__image{
		margin-right: 15px;
		width:80px;
	}
	
	#page .section-event .event-box .event-box__title{
		display:block;
	}
}

/* FEATURES */
#page .section-features .feature-item .fa-stack i:first-child{
	color: #2fa8e1
}

@media screen and (max-width:575px){
	#page .section-features .row{
		margin:0;
	}
	
	#page .section-features .col-sm-6{
		max-width:50%;
		padding:0 7px;
	}
	
	#page .section-features .feature-item-content{
		text-align: left;
	}
	
}

/* ABOUT */
.about-list{
	list-style:none;
	padding-left:0;
	margin-bottom:2em;
}

.about-list li:not(:last-child){
	border-bottom:1px #ccc dotted;
	padding-bottom:5px;
	margin-bottom:5px;
}

.about-list dl{
	display:table;
	width:100%;
	margin-bottom:0;
}

.about-list dl dt,.about-list dl dd{
	display:table-cell;
}

.about-list dl dt{
	width:150px;
}

.about-list a{
	color:inherit;
}

.about-box{
	background: #f8f9f9;
	padding: 2em;
}

@media screen and (max-width:768px){
	#page .section-about .row{
		display: block;
	}
	
	#page .section-about .row .col-lg-6 {
		max-width:100%;
	}
}

@media screen and (max-width:575px){
	#page .section-about .about-image img{
		margin-bottom: 0;
	}
	.about-list dl dt{
		width:110px;
	}
}


/* PRICE */
#page .section-pricing .pricing__item{
	background: #fff;
	border-top-color: #2fa8e1;
	border-top-width:5px;
	border-radius:3px 3px 0 0;
}

#page .section-pricing .pricing__feature-list{
	padding:0.25em 0 0;
}

#page .section-pricing .pricing__price{
	font-family:inherit;
}

#page .section-pricing .pricing__button{
	display: none;
}

.price-menu__title{
	display: flex;
	justify-content: space-between;
	padding: 1em;
	border-bottom: solid 1px #ccc;
	cursor:pointer;
}

.price-menu__title h4{
	margin-bottom: 0;
}

.price-menu__title:hover{
	opacity: .8;
}

.pm-menu-btn{
	font-size:1.5em;
}

.pm-menu-btn.is-active::before{
	content: "\f056";
}

.price-menu__detail{
	background: #fff;
	padding:2em;
	display: none;
}

.pm-column2{
	display:flex;
	justify-content:space-between;
}

.pm-column2 .pm-column2__column{
	width:50%;
	box-sizing:border-box;
	padding-right:2em;
}

.pm-column2 .pm-column2__column:last-child{
	padding:0 0 0 2em;
}

.pm-column2 .pm-column2__column li{
	display:table;
}

.pm-column2 .pm-column2__column .pm-title{
	font-weight: bold;
}

.pm-column2 .pm-column2__column .pm-list{
	padding:0;
	margin-bottom:2em;
}

.pm-column2 .pm-column2__column .pm-list li{
	display:table;
	width:100%;
	border-bottom:dotted 1px #ccc;
}

.pm-column2 .pm-column2__column .pm-list li p{
	display:table-cell;
}

.pm-column2 .pm-column2__column .pm-list li p:last-child{
	text-align: right;
}

.pm-column2 .pm-column2__column .pm-list li p:first-child{
	width:200px;
	text-align: left;
}

.pm-caution{
	list-style:none;
	padding:0;
}

@media screen and (max-width:767px){
	.pm-column2{
		display:block;
	}
	
	.pm-column2 .pm-column2__column{
		width: auto;
		padding:0;
	}
	
	.pm-column2 .pm-column2__column:last-child{
		padding:0;
	}
}

/* STAFF */
#page .section-team  .member-thumb{
	padding-top:100%;
	border-radius:100%;
}

#page .section-team  .member-thumb img{
	object-fit: cover;
	font-family: 'object-fit: cover;';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

#page .section-team .team-member{
	padding:2em;
}

@media screen and (max-width:576px){
	#page .team-members.row .team-member{
		width:50%;
		padding:0 10px;
	}
}

/* ブログリスト用 */
#page .blog-entry .list-article-thumb,
#page .list-article .list-article-thumb{
	width: 300px;
	height: 150px;
	position: relative;
}

#page .blog-entry .list-article-thumb img,
#page .list-article .list-article-thumb img{
	object-fit: cover;
	font-family: 'object-fit: cover;';
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left:0;
}

@media screen and (max-width: 720px) {
	#page .blog-entry .list-article-thumb,
	#page .list-article .list-article-thumb{
		width: 100%;
		height: auto;
		padding-top:50%;
	}
}

/* トップ電話ボタン */
.tel-box{
	position: fixed;
	right:10px;
	bottom:10px;
	z-index:799;
}

.tel-box a{
	display: block;
}

.tel-box a:hover{
	display: block;
	text-decoration: none;
}

.tel-box a i{
	display: flex;
	font-size: 24px;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	margin: 0 auto;
	background: #2fa8e1;
	color: #fff;
	border-radius: 100%;
	margin-bottom: 5px;
}

.tel-box a span{
	display: block;
	background: #2fa8e1;
	padding: 0 5px;
	border-radius: 3px;
	font-size: 10px;
	color: #fff;
}

/* 汎用クラス */
.m-dib{
	display:inline-block!important;
}

.m-lsl{
	letter-spacing:.05em!important;
}

@media screen and (max-width: 720px) {
	.ads-pc{
		display:none;
	}
}

@media screen and (min-width: 721px) {
	.ads-sp{
		display:none;
	}
}