@charset 'UTF-8';

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

	各固定ページ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */



/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	body直下にid名「wrapper」のdivがあります。
	こちらには、固定ページごとに異なるclass名(post-〇)が付与されますので、
	ご活用ください。
	
	【例】
	<body>
	<div id="wrapper" class="post-2 page type-page status-publish has-post-thumbnail hentry">

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */



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

	レイアウト

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

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	#wrapper{
	}

	main.outer_wrap {
		position: relative;
		max-width: none;
		width: auto;
		min-height: 50vh;
		display: block;
		padding: 110px 0 120px;
		margin: 0 auto;
	}

	.inner_wrap {
		position: relative;
		width: 100%;
		margin: 0 auto;
	}

	.elementor-top-section > div {
		padding: 0 20px;
	}
	.title_top h2 {
    position: relative;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.6 !important;
    padding: 0 0 1.2em 0 !important;
    text-align: center;
}
	.top_contact_text {
    font-size: 16px;
    padding: 40px 80px;
    margin: 0 0 40px 0 !important;
    border: 1px solid #cccccc;
}
	.title_top h2 span {
    display: block;
    font-size: 1.6em;
    font-family: "Open Sans Condensed", "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, メイリオ, Meiryo, sans-serif;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
}
	.title_top h2:after {
    position: absolute;
    bottom: 0;
    left: 50%;
    margin: 0 0 0 -15px;
    content: "";
    display: block;
    width: 30px;
    height: 3px;
}
	.title_top {
    margin: 0 0 1.5em 0 !important;
}
	.link_top01 a {
    position: relative;
    display: inline-block;
    padding: 0.8em 4em;
    border: 1px solid;
    font-size: 20px;
    font-weight: 700;
    font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
    letter-spacing: 0.1em;
    line-height: 1;
    text-align: center;
}
	.link_top01 {
    margin-top: 2em;
    text-align: center;
}
.post_wrap ul li {
	display: inline-block;
	vertical-align: top;
	width: 24%;
	margin-left: 2vw;
}
.post_thumb {
	margin: 0 0 0.8vw 0;
}
.post_icon {
	font-size: 90%;
}
.post_title {
	text-align: left;
	line-height: 1.3;
	margin: 0 0 1.3vw 0;
	position: relative;
	padding: 0.5em;
	background: #003375;
	color: white;
}
.post_text {
	font-size: 1.042vw;
	text-align: left;
}
}


/* 小さめ画面
----------------------------------------------- */
@media (min-width: 768px) and (max-width: 1366px) {
	main.outer_wrap {
		margin-left: 200px;
	}
}


/* 大きめ画面
----------------------------------------------- */
@media (min-width: 1367px) {
	main.outer_wrap {
		margin-left: 300px;
	}
}




/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		width: 100%;
		min-height: 50vh;
		padding: 12vw 0 13vw;
	}

	.inner_wrap {
		position: relative;
		width: 100%;
		padding: 0 4vw;
	}
	/* 見出し */
	.title_top {
		margin: 0 0 2em 0 !important;
	}
	.title_top h2 {
		position: relative;
		text-align: center;
		font-size: 4vw;
		font-weight: 600;
		line-height: 1.6 !important;
		padding: 0 0 1.2em 0 !important;
	}
	.title_top h2 span {
		display: block;
		font-size: 1.6em;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
	}
	.title_top h2:after {
		position: absolute;
		bottom: 0;
		left: 50%;
		margin: 0 0 0 -4.2vw;
		content: "";
		display: block;
		width: 8.4vw;
		height: 2px;
	}
	.top-row05 {
		position: relative;
		padding: 12vw 4vw 14vw;
	}
	.top_contact_text {
		padding: 4vw;
		margin: 0 0 6vw 0 !important;
		border: 1px solid #cccccc;
	}
	.top_contact_text h3 {
		font-size: 4vw;
	}
	.post_wrap ul li {
    width: 100%;
    border-bottom: 1px dotted #cccccc;
    padding: 0 0 8vw 0;
    margin-top: 8vw;
}
.post_title {
	text-align: left;
	line-height: 1.3;
	margin: 0 0 2vw 0;
	position: relative;
	padding: 0.5em;
	background: #003375;
	color: white;
}
.post_text {
	font-size: 3.5vw;
	text-align: left;
}
.post_thumb {
	margin: 0 0 4vw 0;
}
.post_icon {
	margin-bottom: 2vw;
}
}






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

	メイン画像

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

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.m-cate_wrap {
		position: relative;
		background-color: #f5f5f5;
		width: auto;
		height: 26vw;
	}
	.m-cate_wrap_in {
		display: table;
		background: url(../img/main_cate.jpg) center top no-repeat;
		background-size: cover;
		width: 100%;
		height: 100%;
	}
	.m-cate_wrap_in h2 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		font-size: 3vw;
		font-weight: 600;
		letter-spacing: 0.05em;
		line-height: 1;
	}
}




/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	.m-cate_wrap {
		position: relative;
		background-color: #f5f5f5;
		width: auto;
		height: 50vw;
	}
	.m-cate_wrap_in {
		display: table;
		background: url(../img/main_cate.jpg) center top no-repeat;
		background-size: cover;
		width: 100%;
		height: 100%;
	}
	.m-cate_wrap_in h2 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		font-size: 8vw;
		font-weight: 600;
		letter-spacing: 0.05em;
		line-height: 1;
	}

}





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

	マージンボックス

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

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* 上にマージンを空ける
	----------------------------------------------- */
	.top_long {
		margin-top: 120px;
	}
	.top_middle {
		margin-top: 80px;
	}
	.top_short {
		margin-top: 40px;
	}
	.top_vshort {
		margin-top: 20px;
	}

	/* 下にマージンを空ける
	----------------------------------------------- */
	.bottom_long {
		margin-bottom: 120px;
	}
	.bottom_middle {
		margin-bottom: 80px;
	}
	.bottom_short {
		margin-bottom: 40px;
	}
	.bottom_vshort {
		margin-bottom: 20px;
	}

	/* 両方にマージンを空ける
	----------------------------------------------- */
	.both_long {
		margin-top: 120px;
		margin-bottom: 120px;
	}
	.both_middle {
		margin-top: 80px;
		margin-bottom: 80px;
	}
	.both_short {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.both_vshort {
		margin-top: 20px;
		margin-bottom: 20px;
	}

}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* 上にマージンを空ける
	----------------------------------------------- */
	.top_long {
		margin-top: 16vw;
	}
	.top_middle {
		margin-top: 12vw;
	}
	.top_short {
		margin-top: 8vw;
	}
	.top_vshort {
		margin-top: 4vw;
	}

	/* 下にマージンを空ける
	----------------------------------------------- */
	.bottom_long {
		margin-bottom: 16vw;
	}
	.bottom_middle {
		margin-bottom: 12vw;
	}
	.bottom_short {
		margin-bottom: 8vw;
	}
	.bottom_vshort {
		margin-bottom: 4vw;
	}

	/* 両方にマージンを空ける
	----------------------------------------------- */
	.both_long {
		margin-top: 16vw;
		margin-bottom: 16vw;
	}
	.both_middle {
		margin-top: 12vw;
		margin-bottom: 12vw;
	}
	.both_short {
		margin-top: 8vw;
		margin-bottom: 8vw;
	}
	.both_vshort {
		margin-top: 4vw;
		margin-bottom: 4vw;
	}

}




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

	パディングボックス

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


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* 上にパディングを空ける
	----------------------------------------------- */
	.p_top_long {
		padding-top: 120px;
	}
	.p_top_middle {
		padding-top: 80px;
	}
	.p_top_short {
		padding-top: 40px;
	}
	.p_top_vshort {
		padding-top: 20px;
	}

	/* 下にパディングを空ける
	----------------------------------------------- */
	.p_bottom_long {
		padding-bottom: 120px;
	}
	.p_bottom_middle {
		padding-bottom: 80px;
	}
	.p_bottom_short {
		padding-bottom: 40px;
	}
	.p_bottom_vshort {
		padding-bottom: 20px;
	}

	/* 両方にパディングを空ける
	----------------------------------------------- */
	.row_long {
		padding-top: 120px;
		padding-bottom: 120px;
	}
	.row_middle {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.row_short {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.row_vshort {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* 上にパディングを空ける
	----------------------------------------------- */
	.p_top_long {
		padding-top: 16vw;
	}
	.p_top_middle {
		padding-top: 12vw;
	}
	.p_top_short {
		padding-top: 8vw;
	}
	.p_top_vshort {
		padding-top: 4vw;
	}

	/* 下にパディングを空ける
	----------------------------------------------- */
	.p_bottom_long {
		padding-bottom: 16vw;
	}
	.p_bottom_middle {
		padding-bottom: 12vw;
	}
	.p_bottom_short {
		padding-bottom: 8vw;
	}
	.p_bottom_vshort {
		padding-bottom: 4vw;
	}

	/* 両方にパディングを空ける
	----------------------------------------------- */
	.row_long {
		padding-top: 16vw;
		padding-bottom: 16vw;
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}
	.row_middle {
		padding-top: 12vw;
		padding-bottom: 12vw;
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}
	.row_short {
		padding-top: 8vw;
		padding-bottom: 8vw;
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}
	.row_vshort {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}

	.row_sp {
		width: auto;
		padding-left: 4vw !important;
		padding-right: 4vw !important;
		margin-left: -4vw !important;
		margin-right: -4vw !important;
	}
}





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

	共通見出し

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

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* h2見出し
	----------------------------------------------- */
	.h2_cate {
		border-bottom: 2px solid;
	}
	.h2_cate h2 {
		font-size: 32px;
		font-weight: 500;
		line-height: 1.4 !important;
		text-align: center;
		padding-bottom: 0.3em !important;
	}

	/* h3見出し
	----------------------------------------------- */
	.h3_cate,
	.h3_cate_c {
		border-bottom: 1px dotted;
	}
	.h3_cate h3 {
		font-size: 24px;
		font-weight: 500;
		line-height: 1.4 !important;
		padding-bottom: 0.2em !important;
	}
	.h3_cate_c h3 {
		font-size: 24px;
		font-weight: 500;
		line-height: 1.4 !important;
		text-align: center;
		padding-bottom: 0.2em !important;
	}
}




/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* h2見出し
	----------------------------------------------- */
	.h2_cate {
		border-bottom: 2px solid;
	}
	.h2_cate h2 {
		font-size: 5.5vw;
		font-weight: 500;
		line-height: 1.4 !important;
		padding-bottom: 0.3em !important;
		text-align: center;
	}

	/* h3見出し
	----------------------------------------------- */
	.h3_cate,
	.h3_cate_c {
		border-bottom: 1px dotted;
	}
	.h3_cate h3 {
		font-size: 4.5vw;
		font-weight: 500;
		line-height: 1.4 !important;
		padding-bottom: 0.2em !important;
	}
	.h3_cate_c h3 {
		font-size: 4.5vw;
		font-weight: 500;
		line-height: 1.4 !important;
		text-align: center;
		padding-bottom: 0.2em !important;
	}

}




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

	共通ボタン

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


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* リンクボタン */
	.link_cate01 {
		text-align: center;
	}
	.link_cate01 a {
		position: relative;
		display: inline-block;
		padding: 0.8em 4em;
		border: 1px solid;
		font-size: 24px;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		line-height: 1;
		text-align: center;
	}
	.link_cate01 a:after {
		position: absolute;
		content: "\f105";
		font-family: FontAwesome;
		right: 0.8em;
		top: 0.8em;
	}

}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* リンクボタン */
	.link_cate01 {
		text-align: center;
	}
	.link_cate01 a {
		position: relative;
		display: inline-block;
		padding: 0.8em 4em;
		border: 1px solid;
		font-size: 4vw;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		line-height: 1;
		text-align: center;
	}
	.link_cate01 a:after {
		position: absolute;
		content: "\f105";
		font-family: FontAwesome;
		right: 0.8em;
		top: 0.8em;
	}
}





/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	ここから各固定ページ

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */





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

	コンセプト

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


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* キャッチコピー
	----------------------------------------------- */
	.catch_copy {
		background-color: #f5f5f5;
	}
	.catch_copy h2 {
		font-size: 52px;
		font-weight: 500;
		text-align: center;
	}

}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* キャッチコピー
	----------------------------------------------- */
	.catch_copy {
		background-color: #f5f5f5;
	}
	.catch_copy h2 {
		font-size: 6vw;
		font-weight: 500;
		text-align: center;
	}

}





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

	ご宴会

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


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* コース内容項目 */
	.course_list {
		border: 2px dotted;
		padding: 3%;
		margin: 0 0 3% 0 !important;
	}
	.course_list h4 {
		line-height: 1.4 !important;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* コース内容項目 */
	.course_list {
		border: 2px dotted;
		padding: 3%;
		margin: 0 0 3% 0 !important;
	}
	.course_list h4 {
		line-height: 1.4 !important;
	}
}



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

	COMPANY

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


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* 代表者名 */
	.title_ceo {
		text-align: right;
		font-size: 40px;
	}
	.title_ceo span {
		font-size: 20px;
		margin: 0 0.5em 0 0;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* 代表者名 */
	.title_ceo {
		text-align: right;
		font-size: 8vw;
	}
	.title_ceo span {
		font-size: 4vw;
		margin: 0 0.5em 0 0;
	}
}





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

	GALLERY

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


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.gallery_box a {
	}
	.gallery_box a img {
		width: 100%;
		height: 250px;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.elementor-image-gallery .gallery-item {
		width: 50%;
	}
	.gallery_box a {
		dipsly: block;
	}
	.gallery_box a img {
		width: 100%;
		height: 46vw;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}
}





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

	CONTACT

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


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.cate_contact_text {
		padding: 40px 80px;
		margin: 0 0 40px 0 !important;
		border: 1px solid #cccccc;
	}
	.cate_contact_text h3 {
		font-size: 18px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.cate_contact_text {
		padding: 4vw;
		margin: 0 0 6vw 0 !important;
		border: 1px solid #cccccc;
	}
	.cate_contact_text h3 {
		font-size: 4vw;
	}
}