@charset "UTF-8";
/* ===================================================================
CSS information

 file name  : homepage.css
 author     : Ability Consultant
 style info : コピー
=================================================================== */
.con_intro, .block_h4_title h4, .block_h5_title h5, .block_btn .inner, .block_note .inner, .block_grayline .inner {
	max-width: 1260px;
	width: 92%;
	margin-right: auto;
	margin-left: auto;
}

.txt_center {
	text-align: center;
}

.txt_fsz18 {
	font-size: 113%;
}

@media only screen and (min-width: 1025px) {
	.txt_fsz20 {
		font-size: 125%;
	}
}

@media print {
	.txt_fsz20 {
		font-size: 125%;
	}
}

.ie8 .txt_fsz20 {
	font-size: 125%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.txt_fsz20 {
		font-size: 113%;
	}
}

@media only screen and (max-width: 767px) {
	.txt_fsz20 {
		font-size: 100%;
	}
}

.st_fsz120 {
	font-weight: 400;
}

.st_fsz120 .en {
	font-family: "Julius Sans One", sans-serif;
}

@media only screen and (min-width: 1025px) {
	.st_fsz120 .en {
		font-size: 750%;
	}
}

@media print {
	.st_fsz120 .en {
		font-size: 750%;
	}
}

.ie8 .st_fsz120 .en {
	font-size: 750%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.st_fsz120 .en {
		font-size: 594%;
	}
}

@media only screen and (max-width: 767px) {
	.st_fsz120 .en {
		font-size: 250%;
	}
}

@media only screen and (min-width: 768px) {
	.st_fsz120 .jp {
		font-size: 169%;
	}
}

@media print {
	.st_fsz120 .jp {
		font-size: 169%;
	}
}

.ie8 .st_fsz120 .jp {
	font-size: 169%;
}

@media only screen and (max-width: 767px) {
	.st_fsz120 .jp {
		font-size: 144%;
	}
}

.txt_en {
	font-family: "Hind", sans-serif;
	color: #666666;
}

/* -----------------------------------------------------------
	con_firstview
----------------------------------------------------------- */
body:not(#banquet) .con_firstview {
	margin-bottom: 35px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	body:not(#banquet) .con_firstview {
		margin-bottom: 25px;
	}
}

@media only screen and (max-width: 767px) {
	body:not(#banquet) .con_firstview {
		margin-bottom: 1em;
	}
}

/* -----------------------------------------------------------
	con_intro
----------------------------------------------------------- */
.con_intro {
	text-align: center;
}

.con_intro .txt_fsz20 {
	margin-bottom: 5px;
}

@media only screen and (max-width: 767px) {
	.con_intro .txt_fsz20 {
		margin-bottom: 1em;
	}
}

/* -----------------------------------------------------------
	con_price
----------------------------------------------------------- */
.box_price_group {
	margin-bottom: 200px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.box_price_group {
		margin-bottom: 150px;
	}
}

@media only screen and (max-width: 767px) {
	.box_price_group {
		margin-bottom: 5em;
	}
}

.box_price:last-of-type[style^="background-color"] {
	margin-bottom: 0;
	padding-bottom: 200px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.box_price:last-of-type[style^="background-color"] {
		padding-bottom: 150px;
	}
}

@media only screen and (max-width: 767px) {
	.box_price:last-of-type[style^="background-color"] {
		padding-bottom: 5em;
	}
}

.block_h4_title {
	margin-top: 100px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_h4_title {
		margin-top: 80px;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title {
		margin-top: 4em;
	}
}

.block_h4_title:first-of-type {
	margin-top: 0;
}

.block_h4_title[style^="background-color"] {
	padding-top: 100px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_h4_title[style^="background-color"] {
		padding-top: 80px;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title[style^="background-color"] {
		padding-top: 4em;
	}
}

.block_h4_title h4 {
	padding: 3px 0px;
	font-weight: normal;
	display: block;
	position: relative;
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4 {
		padding: 0.5em 1em;
	}
}

.block_h4_title h4::before {
	top: 0;
	left: -20px;
	right: -20px;
	content: "";
	width: calc(100% + 40px);
	height: 2px;
	background: #aaaaaa;
	position: absolute;
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4::before {
		top: 0;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4::before {
		left: 0;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4::before {
		right: 0;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4::before {
		width: 100%;
	}
}

.block_h4_title h4::after {
	left: -20px;
	right: -20px;
	bottom: 0;
	content: "";
	width: calc(100% + 40px);
	height: 1px;
	background: #aaaaaa;
	position: absolute;
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4::after {
		left: 0;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4::after {
		right: 0;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4::after {
		bottom: 0;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4::after {
		width: 100%;
	}
}

.block_h4_title h4 .jp {
	margin-right: 15px;
}

@media only screen and (min-width: 1025px) {
	.block_h4_title h4 .jp {
		font-size: 225%;
	}
}

@media print {
	.block_h4_title h4 .jp {
		font-size: 225%;
	}
}

.ie8 .block_h4_title h4 .jp {
	font-size: 225%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_h4_title h4 .jp {
		font-size: 188%;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4 .jp {
		font-size: 169%;
	}
}

.block_h4_title h4 .txt_en {
	color: #777777;
	vertical-align: super;
}

@media only screen and (min-width: 1025px) {
	.block_h4_title h4 .txt_en {
		font-size: 138%;
	}
}

@media print {
	.block_h4_title h4 .txt_en {
		font-size: 138%;
	}
}

.ie8 .block_h4_title h4 .txt_en {
	font-size: 138%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_h4_title h4 .txt_en {
		font-size: 125%;
	}
}

@media only screen and (max-width: 767px) {
	.block_h4_title h4 .txt_en {
		font-size: 113%;
	}
}

.block_h4_title + .block_btn {
	margin-top: 45px;
}

@media only screen and (max-width: 767px) {
	.block_h4_title + .block_btn {
		margin-top: 2em;
	}
}

.block_h4_title + .block_btn[style^="background-color"] {
	margin-top: 0;
	padding-top: 45px;
}

@media only screen and (max-width: 767px) {
	.block_h4_title + .block_btn[style^="background-color"] {
		padding-top: 2em;
	}
}

.block_h4_title + .block_note {
	margin-top: 30px;
}

@media only screen and (max-width: 767px) {
	.block_h4_title + .block_note {
		margin-top: 2em;
	}
}

.block_h5_title {
	margin-top: 60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_h5_title {
		margin-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_h5_title {
		margin-top: 2em;
	}
}

.block_h5_title[style^="background-color"] {
	margin-top: 0;
	padding-top: 60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_h5_title[style^="background-color"] {
		padding-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_h5_title[style^="background-color"] {
		padding-top: 2em;
	}
}

.block_h5_title h5 {
	font-weight: normal;
}

.block_h5_title h5 i {
	font-size: 80%;
	vertical-align: super;
	color: #aa002b;
	margin-right: 10px;
}

.block_h5_title h5 .jp {
	color: #aa002b;
	margin-right: 10px;
}

@media only screen and (min-width: 1025px) {
	.block_h5_title h5 .jp {
		font-size: 169%;
	}
}

@media print {
	.block_h5_title h5 .jp {
		font-size: 169%;
	}
}

.ie8 .block_h5_title h5 .jp {
	font-size: 169%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_h5_title h5 .jp {
		font-size: 157%;
	}
}

@media only screen and (max-width: 767px) {
	.block_h5_title h5 .jp {
		font-size: 144%;
	}
}

.block_h5_title h5 .txt_en {
	color: #bf8493;
	font-weight: 400;
	font-size: 113%;
}

.block_h5_title + .block_note {
	margin-top: 20px;
}

@media only screen and (max-width: 767px) {
	.block_h5_title + .block_note {
		margin-top: 1em;
	}
}

.block_h5_title + .block_note[style^="background-color"] {
	padding-top: 20px;
}

@media only screen and (max-width: 767px) {
	.block_h5_title + .block_note[style^="background-color"] {
		padding-top: 1em;
	}
}

.block_btn {
	margin-top: 20px;
}

@media only screen and (max-width: 767px) {
	.block_btn {
		margin-top: 1em;
	}
}

.block_btn[style^="background-color"] {
	padding-top: 20px;
	padding-bottom: 60px;
	margin-top: 0;
}

@media only screen and (max-width: 767px) {
	.block_btn[style^="background-color"] {
		padding-top: 1em;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_btn[style^="background-color"] {
		padding-bottom: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_btn[style^="background-color"] {
		padding-bottom: 2em;
	}
}

.block_btn[style^="background-color"] + .block_grayline[style^="background-color"], .block_btn[style^="background-color"] + .block_note[style^="background-color"] {
	margin-top: -60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_btn[style^="background-color"] + .block_grayline[style^="background-color"], .block_btn[style^="background-color"] + .block_note[style^="background-color"] {
		margin-top: -40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_btn[style^="background-color"] + .block_grayline[style^="background-color"], .block_btn[style^="background-color"] + .block_note[style^="background-color"] {
		margin-top: -2em;
	}
}

.block_btn .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.block_btn .inner .btn_normal {
	background: #23384b;
	width: 300px;
	padding: 0px;
}

@media only screen and (max-width: 767px) {
	.block_btn .inner .btn_normal {
		width: 100%;
	}
}

@media only screen and (min-width: 768px) {
	.block_btn .inner .btn_normal {
		margin-right: 10px;
	}
}

@media print {
	.block_btn .inner .btn_normal {
		margin-right: 10px;
	}
}

.ie8 .block_btn .inner .btn_normal {
	margin-right: 10px;
}

@media only screen and (max-width: 767px) {
	.block_btn .inner .btn_normal {
		margin-bottom: 1em;
	}
}

.block_btn .inner .btn_normal a {
	color: #fff;
	position: relative;
	display: block;
	padding: 0.9em 1.5em 0.9em 1em;
}

@media only screen and (max-width: 767px) {
	.block_btn .inner .btn_normal a {
		padding: 1.2em 0.5em;
	}
}

.block_btn .inner .btn_normal a span {
	position: relative;
}

.block_btn .inner .btn_normal a span::after {
	top: 50%;
	content: "\f1c1";
	font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
	z-index: 2;
	position: absolute;
	left: -1.5em;
	right: auto;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media only screen and (max-width: 767px) {
	.block_btn .inner .btn_normal a span::after {
		top: 40%;
	}
}

.block_btn + .block_note {
	margin-top: 60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_btn + .block_note {
		margin-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_btn + .block_note {
		margin-top: 2em;
	}
}

.block_note[style^="background-color"] {
	padding-top: 60px;
	padding-bottom: 60px;
	margin-top: 0;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_note[style^="background-color"] {
		padding-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_note[style^="background-color"] {
		padding-top: 2em;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_note[style^="background-color"] {
		padding-bottom: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_note[style^="background-color"] {
		padding-bottom: 2em;
	}
}

.block_note[style^="background-color"] + .block_grayline[style^="background-color"] {
	margin-top: -60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_note[style^="background-color"] + .block_grayline[style^="background-color"] {
		margin-top: -40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_note[style^="background-color"] + .block_grayline[style^="background-color"] {
		margin-top: -2em;
	}
}

@media only screen and (min-width: 768px) {
	.block_note .inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
}

@media print {
	.block_note .inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
}

.ie8 .block_note .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.block_note .inner .box_left {
	width: 41.26984%;
	position: relative;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_note .inner .box_left {
		width: 41.26984%;
	}
}

@media only screen and (max-width: 767px) {
	.block_note .inner .box_left {
		width: 100%;
	}
}

@media only screen and (max-width: 767px) {
	.block_note .inner .box_left {
		padding-bottom: 1em;
		margin-bottom: 1em;
	}
}

.block_note .inner .box_left::after {
	content: "";
	position: absolute;
	height: 100%;
	width: 1px;
	right: -2em;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_note .inner .box_left::after {
		right: -2em;
	}
}

@media only screen and (max-width: 767px) {
	.block_note .inner .box_left::after {
		right: 0px;
	}
}

@media only screen and (min-width: 1025px) {
	.block_note .inner .box_left::after {
		border-left: 1px dotted #aaaaaa;
		top: 0;
	}
}

@media print {
	.block_note .inner .box_left::after {
		border-left: 1px dotted #aaaaaa;
		top: 0;
	}
}

.ie8 .block_note .inner .box_left::after {
	border-left: 1px dotted #aaaaaa;
	top: 0;
}

@media only screen and (max-width: 767px) {
	.block_note .inner .box_left::after {
		border-bottom: 1px dotted #aaaaaa;
		height: 1px;
		width: 80%;
		left: 0px;
		right: 0px;
		margin: 0 auto;
		bottom: 0em;
	}
}

.block_note .inner .box_left .txt {
	margin-bottom: 10px;
}

@media only screen and (max-width: 767px) {
	.block_note .inner .box_left .txt {
		margin-bottom: 0.5em;
	}
}

.block_note .inner .box_left .txt:last-child {
	margin-bottom: 0px;
}

.block_note .inner .box_left .txt span {
	margin-left: -1em;
}

.block_note .inner .box_right {
	width: 52.38095%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_note .inner .box_right {
		width: 52.38095%;
	}
}

@media only screen and (max-width: 767px) {
	.block_note .inner .box_right {
		width: 100%;
	}
}

.block_note .inner .box_right .txt {
	margin-bottom: 5px;
	color: #888888;
	font-family: "Hind", sans-serif;
}

@media only screen and (max-width: 767px) {
	.block_note .inner .box_right .txt {
		margin-bottom: 0.5em;
	}
}

.block_note .inner .box_right .txt:last-child {
	margin-bottom: 0px;
}

.block_note .inner .box_right .txt span {
	margin-left: -1em;
}

.block_grayline {
	margin-top: 60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_grayline {
		margin-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_grayline {
		margin-top: 2em;
	}
}

.block_grayline[style^="background-color"] {
	margin-top: 0;
	padding-top: 60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_grayline[style^="background-color"] {
		padding-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_grayline[style^="background-color"] {
		padding-top: 2em;
	}
}

.block_grayline .inner .line {
	width: calc(100% + 40px);
	margin-left: -20px;
	border-top: 1px dotted #aaaaaa;
}

@media only screen and (max-width: 767px) {
	.block_grayline .inner .line {
		width: 100%;
	}
}

@media only screen and (max-width: 767px) {
	.block_grayline .inner .line {
		margin-left: 0;
	}
}

.block_grayline + .block_h4_title[style^="background-color"] {
	margin-top: 0;
}

.block_grayline + .block_btn {
	margin-top: 60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_grayline + .block_btn {
		margin-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_grayline + .block_btn {
		margin-top: 2em;
	}
}

.block_grayline + .block_btn[style^="background-color"] {
	margin-top: 0;
	padding-top: 60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_grayline + .block_btn[style^="background-color"] {
		padding-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_grayline + .block_btn[style^="background-color"] {
		padding-top: 2em;
	}
}

.block_grayline + .block_note {
	margin-top: 60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_grayline + .block_note {
		margin-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_grayline + .block_note {
		margin-top: 2em;
	}
}

.block_grayline + .block_note[style^="background-color"] {
	margin-top: 0;
	padding-top: 60px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.block_grayline + .block_note[style^="background-color"] {
		padding-top: 40px;
	}
}

@media only screen and (max-width: 767px) {
	.block_grayline + .block_note[style^="background-color"] {
		padding-top: 2em;
	}
}
