@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Amiri:wght@400;700&family=Noto+Sans+JP:wght@400;500&family=Roboto:wght@500&display=swap");
html {
	font-family: "Amiri", serif;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
}
@media print, screen and (min-width:641px) {
	.headerArea {
		position: fixed;
		top: 0;
	}
}
main {
	background-image: none;
}
main .comBtn01 {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
a {
	color: #3c3c3c;
}
.pc_flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
@media screen and (max-width:640px) {
	.pc_flex {
		display: block;
	}
}
@media print, screen and (min-width:641px) {
	.pb_180 {
		padding-bottom: 180px;
	}
}
@media screen and (max-width:640px) {
	.pb_180 {
		padding-bottom: 60px;
	}
}
@media print, screen and (min-width:641px) {
	.pb_120 {
		padding-bottom: 120px;
	}
}
@media screen and (max-width:640px) {
	.pb_120 {
		padding-bottom: 60px;
	}
}
@media print, screen and (min-width:641px) {
	.pt_120 {
		padding-top: 120px;
	}
}
@media screen and (max-width:640px) {
	.pt_120 {
		padding-top: 60px;
	}
}
@media print, screen and (min-width:641px) {
	.pt_100 {
		padding-top: 100px;
	}
}
@media screen and (max-width:640px) {
	.pt_100 {
		padding-top: 50px;
	}
}
.c-blue {
	color: #003764;
}
.c-red {
	color: #891313;
}
.more_link .link span {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	color: #81cddf;
	text-decoration: underline;
}
.more_link .link span.arrow {
	display: inline-block;
}
.more_link .link span.arrow:before {
	top: 1px;
	bottom: 0;
	margin: auto 0;
	right: -10px;
	border-top: 1px solid #81cddf;
	border-right: 1px solid #81cddf;
}
.no-touchevents .more_link .link:hover span {
	text-decoration: none;
}
.link_wrap {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.link_wrap .bg {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.link_wrap .bg:after {
	position: absolute;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	opacity: 0;
	-webkit-transition: 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995);
	transition: 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995);
	z-index: 10;
}
.link_wrap .bg .img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: "object-fit: cover;";
	background-size: cover;
	background-position: center center;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transition: border-radius 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995), -webkit-transform 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995);
	-webkit-transition: border-radius 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995), -webkit-transform 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995);
	transition: transform 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995), border-radius 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995);
	transition: transform 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995), border-radius 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995), -webkit-transform 0.5s cubic-bezier(0.12, 0.76, 0.475, 0.995);
}
.no-touchevents .link_wrap:hover .bg .img {
	-webkit-transform: scale(1.04);
	transform: scale(1.04);
}
.no-touchevents .link_wrap:hover .bg:after {
	opacity: 0.2;
}
.arrow {
	position: relative;
	display: block;
}
.arrow:before {
	position: absolute;
	content: "";
	display: inline-block;
	border-top: 1px solid #3c3c3c;
	border-right: 1px solid #3c3c3c;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	z-index: 10;
}
@media print, screen and (min-width:641px) {
	.arrow:before {
		width: 7px;
		height: 7px;
		-webkit-transform: rotate(45deg) skew(-25deg, -25deg);
		transform: rotate(45deg) skew(-25deg, -25deg);
	}
}
@media screen and (max-width:640px) {
	.arrow:before {
		width: 6px;
		height: 6px;
		-webkit-transform: rotate(45deg) skew(-15deg, -15deg);
		transform: rotate(45deg) skew(-15deg, -15deg);
	}
}
@media print, screen and (min-width:641px) {
	.no-touchevents a:hover .arrow:before {
		-webkit-transform: rotate(45deg) skew(-25deg, -25deg) translate(3px, -3px);
		transform: rotate(45deg) skew(-25deg, -25deg) translate(3px, -3px);
	}
}
@media screen and (max-width:640px) {
	.no-touchevents a:hover .arrow:before {
		-webkit-transform: rotate(45deg) skew(-15deg, -15deg) translate(3px, -3px);
		transform: rotate(45deg) skew(-15deg, -15deg) translate(3px, -3px);
	}
}
@media print, screen and (min-width:641px) {
	.no-touchevents a:hover .arrow:before {
		-webkit-transform: rotate(45deg) skew(-25deg, -25deg) translate(3px, -3px);
		transform: rotate(45deg) skew(-25deg, -25deg) translate(3px, -3px);
	}
}
@media screen and (max-width:640px) {
	.no-touchevents a:hover .arrow:before {
		-webkit-transform: rotate(45deg) skew(-15deg, -15deg) translate(3px, -3px);
		transform: rotate(45deg) skew(-15deg, -15deg) translate(3px, -3px);
	}
}
.bnr_area {
	margin: 0 auto;
}
@media print, screen and (min-width:641px) {
	.bnr_area {
		max-width: 980px;
	}
}
@media screen and (max-width:640px) {
	.bnr_area {
		max-width: 89%;
	}
}
.bnr_area .bnr_link {
	-webkit-transition: 0.3s;
	transition: 0.3s;
}
.no-touchevents .bnr_area .bnr_link:hover {
	opacity: 0.8;
}
.bnr_area .bnr_link .img {
	width: 100%;
	vertical-align: bottom;
}
@media print, screen and (min-width:641px) {
	.mv_content {
		position: relative;
		display: block;
		height: auto;
		margin-top: 149px;
	}
}
@media print, screen and (min-width:641px) {
	.mvArea {
		margin-bottom: 80px;
	}
}
@media screen and (max-width:640px) {
	.mvArea {
		height: 40vh!important;
	}
}
@media print, screen and (min-width:641px) {
	.title_content {
		position: absolute;
		display: block;
		left: 8%;
		bottom: 6%;
		z-index: 100;
		max-width: 54.6rem;
		width: 100%;
		opacity: 0;
		transition: 1.8s;
	}
}
@media screen and (max-width:640px) {
	.title_content {
		padding: 24px 0 12px;
	}
}
.title_content .title01 {
	top: auto;
	bottom: 90px;
	text-align: left;
	color: #fff;
	text-shadow: 0 0 7px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column-reverse;
}
@media print, screen and (max-height:770px) {
	.title_content .title01 {
		top: auto;
	}
}
@media screen and (max-width:640px) {
	.title_content .title01 {
		text-align: center;
		color: #003764;
		text-shadow: 0 0 4px rgba(0, 0, 0, 0.05);
		flex-wrap: wrap;
		flex-direction: inherit;
	}
}
.title_content .title01 .ttl {
	display: block;
	font-weight: 400;
	font-size: 11rem;
	letter-spacing: 0.02em;
	line-height: 1;
}
@media screen and (max-width:640px) {
	.title_content .title01 .ttl {
		font-size: 13.9vw;
		margin-bottom: 10px;
	}
}
.title_content .title01 .sub_ttl {
	position: relative;
	margin-top: 2rem;
	display: block;
	font-family: source-han-serif-japanese, serif;
	font-weight: 600;
	font-size: 2.6rem;
	letter-spacing: 0.05em;
	line-height: calc(46/26);
}
@media print, screen and (min-width:641px) {
	.title_content .title01 .sub_ttl {
		left: 1.5rem;
		text-shadow: 0px 0px 3px rgba(0, 0, 0, 1), 0px 0px 3px rgba(0, 0, 0, 1), 0px 0px 3px rgba(0, 0, 0, 1);
		white-space: pre;
	}
}
@media screen and (max-width:640px) {
	.title_content .title01 .sub_ttl {
		font-size: 4.8vw;
		line-height: 1.5;
		letter-spacing: 0.2rem;
		margin-top: 0;
		width: 100%;
		order: 2;
	}
}


.title_content .title01 .ph img {
	width: 100%;
	height: auto;
}
@media print, screen and (min-width:641px) {
	.title_content .title01 .ph img {
		filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.5));
	}
}
@media screen and (max-width:640px) {
	.title_content .title01 .ph {
		display: none;
		width: 100%;
		order: 1;
	}
}
@media print, screen and (min-width:641px) {
	.title_content .title01 .ph {
		max-width: 54.6rem;
		margin-left: -1.5rem;
		position: absolute;
		left: 0;
		top: -21.4rem;
		width: 100%;
	}
}
@media screen and (max-width:640px) {
	.title_content .title01 .ph img {
		width: 90%;
		height: auto;
	}
}
@media screen and (max-width:640px) {
	.title_content .title_pic {
		margin: 24px auto 0;
		width: 23rem;
		height: 9.5rem;
	}
}
@media screen and (min-width:641px) {
	.title_content .title_pic {
		display: none;
	}
}
@media screen and (max-width:640px) {
	.title_content .title_pic img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

@media print, screen and (min-width:641px) {
	.information {
		position: absolute;
		padding: 15px 70px 10px 20px;
		bottom: 5%;
		right: 0;
		background-color: #FFF;
		z-index: 1;
	}
}
@media screen and (max-width:640px) {
	.information {
		padding: 22px 30px 10px;
		margin-bottom: 40px;
		-webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
		box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
	}
}
@media print, screen and (min-width:641px) {
	.information .link_wrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
}
.no-touchevents .information .link_wrap:hover:before {
	-webkit-transform: rotate(45deg) skew(-25deg, -25deg) translate(3px, -3px);
	transform: rotate(45deg) skew(-25deg, -25deg) translate(3px, -3px);
}
@media print, screen and (min-width:641px) {
	.information .link_wrap:before {
		top: 0;
		bottom: 0;
		right: -17px;
		margin: auto 0;
	}
}
@media screen and (max-width:640px) {
	.information .link_wrap:before {
		right: 0;
		bottom: 10px;
	}
}
.information .info_ttl {
	font-weight: 700;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	line-height: 1;
	color: #003764;
}
@media screen and (max-width:640px) {
	.information .info_ttl {
		font-size: 3.3vw;
		letter-spacing: 0.05em;
	}
}
.information .info_txt {
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.76;
}
@media print, screen and (min-width:641px) {
	.information .info_txt {
		padding-left: 20px;
		letter-spacing: 0.1em;
	}
}
@media screen and (max-width:640px) {
	.information .info_txt {
		padding-top: 5px;
		font-size: 3.6vw;
	}
}
.topicsArea {
	background-image: none;
}
@media print, screen and (min-width:641px) {
	.topicsArea {
		padding-top: 0;
	}
}
@media screen and (max-width:640px) {
	.topicsArea {
		padding-bottom: 60px;
	}
}
@media screen and (max-width:640px) {
	.topicsArea .comBtn01 {
		margin-top: 40px;
	}
}
.top_info_area {
	margin: 0 auto;
}
@media print, screen and (min-width:641px) {
	.top_info_area {
		max-width: 82rem;
	}
}
@media screen and (max-width:640px) {
	.top_info_area {
		width: 90%;
		margin-bottom: 30px;
	}
}
@media screen and (max-width:640px) {
	/*.top_info_area .recommend {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}*/
	.top_info_area .recommend {
		display: block;
	}
}
.top_info_area .recommend .recommend_ttl {
	text-align: center;
	font-weight: 400;
	font-size: 2.4rem;
	letter-spacing: 0.05em;
	line-height: 1;
	color: #bca06b;
}
@media screen and (max-width:640px) {
	.top_info_area .recommend .recommend_ttl {
		text-align: center;
		font-size: 5vw;
	}
}
@media print, screen and (min-width:641px) {
	.top_info_area .recommend .linK_content {
		padding-top: 20px;
	}
}
@media screen and (max-width:640px) {
	.top_info_area .recommend .linK_content {
		padding-left: 4%;
	}
}
@media print, screen and (min-width:641px) {
	.top_info_area .recommend .link_list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		max-width: 82rem;
		margin: 0 auto;
	}
}
@media print, screen and (min-width:641px) {
	.top_info_area .recommend .list {
		width: 49%;
		border-bottom: 1px solid #bca06b;
	}
}
@media screen and (max-width:640px) {
	.top_info_area .recommend .list+.list {
		padding-top: 25px;
	}
	.top_info_area .recommend .list>a {
		width: auto;
		padding-right: 20px;
	}
}
.top_info_area .recommend .list.online a {
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
}
@media screen and (max-width:640px) {
	.top_info_area .recommend .list.online a {
		letter-spacing: 0.02em;
	}
}
.top_info_area .recommend .list.newstyle a {
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
}
@media screen and (max-width:640px) {
	.top_info_area .recommend .list.newstyle span {
		position: relative;
		display: inline-block;
	}
}
.top_info_area .recommend .link_wrap {
	display: block;
	letter-spacing: 0.1em;
}
@media print, screen and (min-width:641px) {
	.top_info_area .recommend .link_wrap {
		display: inline-block;
		width: auto;
		left: 50%;
		-webkit-transform: translateX(calc(-50% + -15px));
		transform: translateX(calc(-50% + -15px));
		text-align: center;
		font-weight: 700;
		font-size: 1.6rem;
		line-height: 2.36;
	}
}
@media screen and (max-width:640px) {
	.top_info_area .recommend .link_wrap {
		padding: 0 7px;
		border-bottom: 1px solid #bca06b;
		font-size: 3.6vw;
		line-height: 1.4;
	}
}
.no-touchevents .top_info_area .recommend .link_wrap:hover:before {
	-webkit-transform: rotate(45deg) skew(-25deg, -25deg) translate(3px, -3px);
	transform: rotate(45deg) skew(-25deg, -25deg) translate(3px, -3px);
}
.top_info_area .recommend .link_wrap:before {
	top: 41%;
	right: -17px;
}
@media screen and (max-width:640px) {
	.top_info_area .recommend .link_wrap:before {
		top: 21%;
		right: 5%;
	}
}
@media print, screen and (min-width:641px) {
	.fair_area[data-slidearea01-bridalFair] {
		padding-top: 4rem;
	}
	.fair_area[data-slidearea01-bridalFair][data-slidearea01-slidelimit] .slidearea01_link.dammy {
		opacity: 0;
	}
	.fair_area[data-slidearea01-bridalFair].type01 {
		position: relative;
		max-width: 110.7rem;
		margin: 0 auto;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_wrap {
		margin: auto;
		width: 100%;
		overflow: hidden;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns {
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		width: 100%;
		height: 100%;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns button {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 4.5rem;
		height: 4.5rem;
		z-index: 1;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns button:after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		width: 4.5rem;
		height: 1rem;
		border-bottom: 2px solid #003764;
		-webkit-transition: all 0.3s, width 0.3s, height 0.3s, -webkit-transform 0.3s;
		transition: all 0.3s, width 0.3s, height 0.3s, -webkit-transform 0.3s;
		transition: all 0.3s, transform 0.3s, width 0.3s, height 0.3s;
		transition: all 0.3s, transform 0.3s, width 0.3s, height 0.3s, -webkit-transform 0.3s;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns button.next {
		right: -6vw;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns button.next:after {
		-webkit-transform: skew(45deg);
		transform: skew(45deg);
		border-right: 2px solid #003764;
		-webkit-transform-origin: left bottom;
		transform-origin: left bottom;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns button.prev {
		left: -6vw;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns button.prev:after {
		-webkit-transform: skew(-45deg);
		transform: skew(-45deg);
		border-left: 2px solid #003764;
		-webkit-transform-origin: right bottom;
		transform-origin: right bottom;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns button.disabled {
		pointer-events: none;
		opacity: 0.3;
	}
	.no-touchevents .fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns button.next:hover:after {
		opacity: 0.8;
	}
	.no-touchevents .fair_area[data-slidearea01-bridalFair].type01 .slidearea01_btns button.prev:hover:after {
		opacity: 0.7;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_wrapin {
		padding: 0;
		width: calc(100% - 73.5%);
		margin: 0 -3.1%;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_wrapin.type01 {
		padding: 0;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_wrapin.type01 .slidearea01_link .link_wrap {
		margin: 0;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_wrapin.type01 .slidearea01_link .link_wrap img {
		height: 700px;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_content {
		position: relative;
		display: table;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_content.disableTrs {
		-webkit-transition: none!important;
		transition: none!important;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_link {
		display: table-cell;
		top: 0;
		left: 0;
		height: 100%;
		-webkit-transition: 0.3s;
		transition: 0.3s;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_link .link_wrap {
		width: auto;
		margin: 0 11.5%;
		-webkit-transition: 0.3s;
		transition: 0.3s;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_link .link_wrap img {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
		font-family: "object-fit: cover;";
		background-size: cover;
		background-position: center center;
	}
	.no-touchevents .fair_area[data-slidearea01-bridalFair].type01 .slidearea01_link:hover {
		opacity: 0.8;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_pager {
		text-align: center;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_pager button {
		width: 40px;
		height: 40px;
		position: relative;
		display: inline-block;
		vertical-align: top;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_pager button:after, .fair_area[data-slidearea01-bridalFair].type01 .slidearea01_pager button:before {
		content: "";
		display: block;
		width: 10px;
		height: 10px;
		background-color: #DDD;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		margin: auto;
		border-radius: 50%;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_pager button:after {
		-webkit-transition: 0.2s;
		transition: 0.2s;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_pager button.active:after, .no-touchevents .fair_area[data-slidearea01-bridalFair].type01 .slidearea01_pager button:hover:after {
		background-color: #000;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_pager button.active {
		cursor: default;
		pointer-events: none;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_imgpager {
		margin-top: 20px;
		text-align: center;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_imgpager_btn {
		width: 50px;
		height: 50px;
		position: relative;
		display: inline-block;
		vertical-align: top;
		cursor: pointer;
		-webkit-transition: opacity 0.2s;
		transition: opacity 0.2s;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_imgpager_btn:after {
		content: "";
		position: absolute;
		display: block;
		top: 3px;
		left: 3px;
		right: 3px;
		bottom: 3px;
		border: 2px solid #FFF;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		opacity: 0;
		-webkit-transition: 0.2s;
		transition: 0.2s;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_imgpager_btn+.photogallery01_btn {
		margin-left: 10px;
	}
	.no-touchevents .fair_area[data-slidearea01-bridalFair].type01 .slidearea01_imgpager_btn:hover {
		opacity: 0.6;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_imgpager_btn.active {
		cursor: default;
		pointer-events: none;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_imgpager_btn.active:after {
		opacity: 1;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_count {
		text-align: center;
		font-size: 1.6rem;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_count_now {
		display: inline-block;
	}
	.fair_area[data-slidearea01-bridalFair].type01 .slidearea01_count_total {
		display: inline-block;
	}
	.fair_post .imgarea {
		position: relative;
		height: 18rem;
	}
	.fair_post .imgarea .label_top {
		position: absolute;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		top: 0;
		left: 0.8rem;
		width: 5.6rem;
		height: 3.8rem;
		background-position: top;
		background-repeat: no-repeat;
		background-size: contain;
		color: #FFF;
		line-height: 50px;
	}
	.fair_post .imgarea .label_top span {
		display: inline-block;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.2rem;
		letter-spacing: -0.04em;
		line-height: 1;
		padding-bottom: 0.6rem;
	}
	.fair_post .imgarea .label_top.label01 {
		background-image: url("../common/img/fair_label01.svg");
	}
	.fair_post .txt_box .data {
		line-height: 1;
		padding: 3rem 0 2rem;
	}
	.fair_post .txt_box .fair {
		font-size: 2.4rem;
		letter-spacing: 0.05em;
	}
	.fair_post .txt_box time .box {
		font-family: source-han-serif-japanese, serif;
		font-weight: 500;
		font-size: 2rem;
		letter-spacing: 0.05em;
	}
	.fair_post .txt_box time .row02 {
		position: relative;
		bottom: 0.1rem;
		font-size: 1.6rem;
	}
	.fair_post .txt_box .ttl {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.4rem;
		letter-spacing: 0.05em;
		line-height: 1.85;
		padding-bottom: 7.8rem;
	}
}
@media screen and (max-width:640px) {
	.fair_area {
		width: 90%;
		margin: 0 auto;
	}
	.fair_area .fair_post+.fair_post {
		padding-top: 25px;
	}
	.fair_area .fair_post:nth-of-type(n+5) {
		display: none;
	}
	.fair_area .fair_post .in {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.fair_area .imgarea {
		position: relative;
		display: block;
		width: 34%;
		height: auto;
	}
	.fair_area .imgarea:before {
		content: "";
		display: block;
		padding-top: 100%;
	}
	.fair_area .imgarea .label_top {
		position: absolute;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		top: 0;
		left: 5px;
		width: 4.1rem;
		height: 3rem;
		background-position: top;
		background-repeat: no-repeat;
		background-size: contain;
		color: #FFF;
		line-height: 50px;
	}
	.fair_area .imgarea .label_top span {
		display: inline-block;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 2.8vw;
		letter-spacing: -0.04em;
		line-height: 1;
		padding-bottom: 0.5rem;
	}
	.fair_area .imgarea .label_top.label01 {
		background-image: url("../common/img/fair_label01.svg");
	}
	.fair_area .imgarea .bg {
		position: absolute;
		display: block;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: none!important;
	}
	.fair_area .imgarea .bg:after {
		height: auto;
	}
	.fair_area .imgarea .bg .img {
		height: auto;
	}
	.fair_area .txt_box {
		width: 66%;
		padding: 0 0 0 15px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.fair_area .txt_box .data .fair {
		font-weight: 400;
		font-size: 5vw;
		letter-spacing: 0.05em;
		line-height: 1;
	}
	.fair_area .txt_box .data .box {
		padding-left: 2%;
		font-family: source-han-serif-japanese, serif;
		font-weight: 500;
		letter-spacing: 0.05em;
		line-height: 1;
	}
	.fair_area .txt_box .data .row01 {
		font-size: 4.2vw;
	}
	.fair_area .txt_box .data .row02 {
		font-size: 3.6vw;
	}
	.fair_area .txt_box .ttl {
		padding-top: 6px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		text-align: justify;
		font-size: 3.6vw;
		letter-spacing: 0.05em;
		line-height: 1.9;
	}
	.topicsArea .comBtn01:after {
		display: none;
	}
}
.sec_ttl {
	text-align: center;
	color: #003764;
}
@media print, screen and (min-width:641px) {
	.sec_ttl {
		margin-bottom: 65px;
	}
}
.sec_ttl .en {
	font-weight: 400;
	letter-spacing: 0.05em;
	font-size: 4rem;
}
@media screen and (max-width:640px) {
	.sec_ttl .en {
		display: block;
		margin-bottom: 10px;
		font-size: 9.7vw;
	}
}
.sec_ttl .ja {
	display: block;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
}
@media print, screen and (min-width:641px) {
	.sec_ttl .ja {
		padding-top: 15px;
	}
}
@media screen and (max-width:640px) {
	.sec_ttl .ja {
		font-size: 3.6vw;
	}
}
@media print, screen and (min-width:641px) {
	.sec_concept .top_area {
		position: relative;
		display: block;
		margin-bottom: 140px;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .top_area {
		position: relative;
		display: block;
		padding-bottom: 45px;
		z-index: 1;
	}
	.sec_concept .top_area:after {
		position: absolute;
		content: "";
		display: block;
		left: 0;
		right: 0;
		margin: 0 auto;
		bottom: 0;
		-webkit-transform: translateY(50%);
		transform: translateY(50%);
		width: 1px;
		height: 30px;
		background-color: #81cddf;
		z-index: 1;
	}
}
.sec_concept .top_bg_area {
	background-size: cover;
}
@media print, screen and (min-width:641px) {
	.sec_concept .top_bg_area {
		max-width: 1500px;
		height: 780px;
		margin: 0 auto;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .top_bg_area {
		width: 100%;
		height: calc(100vw * .618);
		margin-bottom: 35px;
	}
}
@media print, screen and (min-width:641px) {
	.sec_concept .top_txt_box {
		position: absolute;
		display: block;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(18%, -50%);
		transform: translate(18%, -50%);
		max-width: 490px;
		max-height: 515px;
		padding: 4%;
		background-color: rgba(255, 255, 255, 0.8);
	}
}
.sec_concept .top_txt_box .sec_ttl {
	margin-bottom: 25px;
}
.sec_concept .top_txt_box .concept_catch {
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	font-size: 2.4rem;
	letter-spacing: 0.1em;
	line-height: 1.6;
	color: #003764;
}
@media print, screen and (min-width:641px) {
	.sec_concept .top_txt_box .concept_catch {
		margin-bottom: 30px;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .top_txt_box .concept_catch {
		margin-bottom: 8px;
		font-size: 5vw;
	}
}
.sec_concept .top_txt_box .concept_txt {
	text-align: center;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	line-height: 1.85;
}
@media print, screen and (min-width:641px) {
	.sec_concept .top_txt_box .concept_txt {
		margin-bottom: 35px;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .top_txt_box .concept_txt {
		margin-bottom: 25px;
		font-size: 3.6vw;
	}
}
.sec_concept .top_txt_box .concept_btn {
	text-align: center;
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_main_area {
		justify-content: center;
		gap: 40px;
		width: 100%;
		max-width: 1160px;
		margin: 0 auto 40px;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_main_area {
		width: 78%;
		margin: 0 auto;
		padding-top: 45px;
	}
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_main_area .detail {
		width: 31%;
		-webkit-box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.07);
		box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.07);
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_main_area .detail {
		-webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
		box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
	}
	.sec_concept .concept_main_area .detail+.detail {
		margin-top: 20px;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_main_area .detail .link_wrap {
		height: auto;
	}
}
.sec_concept .concept_main_area .detail .link_wrap.arrow:before {
	top: 77%;
	right: 89%;
	width: 8px;
	height: 8px;
	border-top: 1px solid #003764;
	border-right: 1px solid #003764;
}
.no-touchevents .sec_concept .concept_main_area .detail .link_wrap:hover .txt_box {
	opacity: 0.8;
}
.sec_concept .concept_main_area .detail .bg {
	height: 240px;
}
@media screen and (max-width:640px) {
	.sec_concept .concept_main_area .detail .bg {
		height: calc((100vw * .78) * .66);
	}
}
.sec_concept .concept_main_area .detail .txt_box {
	text-align: center;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_main_area .detail .txt_box {
		padding: 40px 0 30px;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_main_area .detail .txt_box {
		padding: 25px 0 30px;
	}
}
.sec_concept .concept_main_area .detail .ttl {
	font-weight: 400;
	font-size: 3.4rem;
	letter-spacing: 0.05em;
	line-height: 1;
	color: #003764;
}
@media screen and (max-width:640px) {
	.sec_concept .concept_main_area .detail .ttl {
		margin-bottom: 7px;
		font-size: 8.3vw;
	}
}
.sec_concept .concept_main_area .detail .subttl {
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1;
	color: #003764;
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_main_area .detail .subttl {
		margin-top: 12px;
		font-size: 1.4rem;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_main_area .detail .subttl {
		margin-top: 0.1rem;
		font-size: 3.6vw;
	}
}
.sec_concept .concept_main_area .detail .subttl:before {
	top: 0;
	left: 90%;
	border-top: 1px solid #003764;
	border-right: 1px solid #003764;
}
.sec_concept .concept_main_area .detail .txt {
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 2.14;
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_main_area .detail .txt {
		font-size: 1.4rem;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_main_area .detail .txt {
		font-size: 1.1rem;
		line-height: 1.7;
	}
}
.sec_concept .concept_main_area .detail .mm_txt {
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 2.14;
	color: #bca06b;
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_main_area .detail .mm_txt {
		padding-top: 25px;
		font-size: 1.4rem;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_main_area .detail .mm_txt {
		padding-top: 20px;
		font-size: 1.1rem;
		line-height: 1.7;
	}
}
.sec_concept .concept_menu_area {
	margin: 0 auto;
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_menu_area {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		max-width: 1160px;
		width: 100%;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_menu_area {
		width: 78%;
		padding: 20px 0;
	}
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_menu_area .detail {
		width: 31%;
		height: 150px;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_menu_area .detail {
		width: 100%;
		height: calc(100vw * .78 * .46);
	}
	.sec_concept .concept_menu_area .detail+.detail {
		margin-top: 10px;
	}
}
.sec_concept .concept_menu_area .link_wrap:before {
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_menu_area .link_wrap:before {
		top: 0;
		bottom: 0;
		margin: auto 0;
		left: 90%;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_menu_area .link_wrap:before {
		top: 0;
		right: 7%;
		bottom: 0;
		margin: auto 0;
	}
}
.sec_concept .concept_menu_area .menu_ttl {
	position: absolute;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	text-align: center;
	color: #FFF;
}
.sec_concept .concept_menu_area .menu_ttl .ttl {
	font-weight: 400;
	font-size: 3.4rem;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-bottom: 12px;
}
@media screen and (max-width:640px) {
	.sec_concept .concept_menu_area .menu_ttl .ttl {
		margin-bottom: 7px;
		font-size: 8.3vw;
	}
}
.sec_concept .concept_menu_area .menu_ttl .subttl {
	display: block;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1;
}
@media print, screen and (min-width:641px) {
	.sec_concept .concept_menu_area .menu_ttl .subttl {
		font-size: 1.4rem;
	}
}
@media screen and (max-width:640px) {
	.sec_concept .concept_menu_area .menu_ttl .subttl {
		font-size: 3.6vw;
	}
}
.planArea {
	-webkit-box-shadow: none;
	box-shadow: none;
	background-image: url(../img/texture_bg.webp);
}
@media print, screen and (min-width:641px) {
	.planArea {
		padding-bottom: 115px;
		background-size: 100px;
		background-repeat: repeat;
	}
}
@media screen and (max-width:640px) {
	.planArea {
		background-repeat: repeat;
		background-size: 50px;
	}
}
.planArea .sec_ttl {
	margin-bottom: 30px;
}
@media print, screen and (min-width:641px) {
	.planArea .content01 {
		overflow: initial;
	}
}
@media screen and (max-width:640px) {
	.planArea .slidearea {
		padding: 0 8%;
	}
}
.planArea .slidearea button {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
}
@media print, screen and (min-width:641px) {
	.planArea .slidearea button {
		width: 4.5rem;
		height: 4.5rem;
	}
}
@media screen and (max-width:640px) {
	.planArea .slidearea button {
		width: 22px;
		height: 22px;
	}
}
.planArea .slidearea button:after {
	display: none;
}
.planArea .slidearea button:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	border-bottom: 1px solid #003764;
	-webkit-transition: all 0.3s, width 0.3s, height 0.3s, -webkit-transform 0.3s;
	transition: all 0.3s, width 0.3s, height 0.3s, -webkit-transform 0.3s;
	transition: all 0.3s, transform 0.3s, width 0.3s, height 0.3s;
	transition: all 0.3s, transform 0.3s, width 0.3s, height 0.3s, -webkit-transform 0.3s;
}
@media print, screen and (min-width:641px) {
	.planArea .slidearea button:after {
		width: 4.5rem;
		height: 1rem;
	}
}
@media screen and (max-width:640px) {
	.planArea .slidearea button:after {
		width: 100%;
		height: 5px;
	}
}
@media print, screen and (min-width:641px) {
	.planArea .slidearea button.next {
		right: -1.2vw;
	}
}
@media screen and (max-width:640px) {
	.planArea .slidearea button.next {
		right: -5%;
	}
}
.planArea .slidearea button.next:after {
	-webkit-transform: skew(45deg);
	transform: skew(45deg);
	border-right: 1px solid #003764;
	-webkit-transform-origin: left bottom;
	transform-origin: left bottom;
}
@media print, screen and (min-width:641px) {
	.planArea .slidearea button.prev {
		left: -1.4vw;
	}
}
@media screen and (max-width:640px) {
	.planArea .slidearea button.prev {
		left: -6%;
	}
}
.planArea .slidearea button.prev:after {
	-webkit-transform: skew(-45deg);
	transform: skew(-45deg);
	border-left: 1px solid #003764;
	-webkit-transform-origin: right bottom;
	transform-origin: right bottom;
}
.planArea .slidearea button.disabled {
	pointer-events: none;
	opacity: 0.3;
}
.no-touchevents .planArea .slidearea button.next:hover:after {
	opacity: 0.8;
}
.no-touchevents .planArea .slidearea button.prev:hover:after {
	opacity: 0.7;
}
@media print, screen and (min-width:641px) {
	.planArea .slide {
		margin-bottom: 40px;
	}
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontentWrap {
		padding: 0 4%;
	}
}
@media print, screen and (min-width:641px) {
	.planArea .slide .plancontentWrapIn {
		z-index: 1;
	}
	.planArea .slide .plancontentWrapIn:before {
		position: absolute;
		content: "";
		display: block;
		top: -10px;
		left: -20px;
		width: 100px;
		height: 120px;
		background-image: url(../img/top_plan_bestrate.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
		z-index: 1;
	}
}
@media print, screen and (min-width:641px) {
	.planArea .slide .plancontent {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		min-height: 400px;
		padding: 40px;
	}
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent {
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 8% 7%;
	}
}
.planArea .slide .plancontent .img_box {
	position: relative;
	display: block;
	height: auto;
}
@media print, screen and (min-width:641px) {
	.planArea .slide .plancontent .img_box {
		width: 36%;
	}
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .img_box {
		margin-bottom: 25px;
	}
}
.planArea .slide .plancontent .img_box:before {
	content: "";
	display: block;
	padding-top: 100%;
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .img_box:before {
		padding-top: 80%;
	}
}
.planArea .slide .plancontent .img_box span {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: "object-fit: cover;";
	background-size: cover;
	background-position: center center;
}
.planArea .slide .plancontent .img_box span img {
	height: auto;
	max-width: 100%;
}
@media print, screen and (min-width:641px) {
	.planArea .slide .plancontent .txt_box {
		width: calc(100% - 36% - 40px);
	}
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .txt_box {
		margin-bottom: 5px;
	}
}
@media print, screen and (min-width:641px) {
	.planArea .slide .plancontent .title {
		margin-bottom: 25px;
	}
}
.planArea .slide .plancontent .title span {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
	color: #bca06b;
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .title span {
		font-size: 3.3vw;
	}
}
.planArea .slide .plancontent .title b {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 2rem;
	letter-spacing: 0.05em;
	line-height: 1.5;
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .title b {
		font-size: 4.2vw;
	}
}
.planArea .slide .plancontent .price {
	margin-bottom: 20px;
}
.planArea .slide .plancontent .price dt {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	letter-spacing: 0.05em;
}
@media print, screen and (min-width:641px) {
	.planArea .slide .plancontent .price dt {
		width: 17%;
		font-size: 1.2rem;
	}
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .price dt {
		font-size: 3.3vw;
	}
}
@media print, screen and (min-width:641px) {
	.planArea .slide .plancontent .price dd {
		margin-left: 20%;
		padding-left: 0;
	}
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .price dd {
		margin-left: 27%;
	}
}
.planArea .slide .plancontent .price dd b {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 2.4rem;
	letter-spacing: 0.05em;
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .price dd b {
		font-size: 4.2vw;
	}
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .price strong {
		font-size: 1.4vw;
	}
}
.planArea .slide .plancontent .txt {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	line-height: 1.85;
}
@media print, screen and (min-width:641px) {
	.planArea .slide .plancontent .txt {
		margin-bottom: 35px;
	}
}
@media screen and (max-width:640px) {
	.planArea .slide .plancontent .more_link {
		text-align: center;
	}
	.planArea .slide .plancontent .more_link span {
		font-size: 3.6vw;
	}
}
.planArea .slide .plancontent .link a {
	position: static;
	width: auto;
	height: auto;
	max-width: auto;
}
@media screen and (max-width:640px) {
	.planArea .more {
		padding-top: 10px;
	}
}
@media print, screen and (min-width:641px) {
	.planArea .bnr_area {
		padding-top: 60px;
	}
}
@media screen and (max-width:640px) {
	.planArea .bnr_area {
		padding-top: 30px;
	}
}
.no-touchevents .topReport {
	background-attachment: initial;
}
.topPresent {
	-webkit-box-shadow: none;
	box-shadow: none;
}
@media screen and (max-width:640px) {
	.topPresent .sec_ttl {
		margin-bottom: 30px;
	}
}
@media print, screen and (min-width:641px) {
	.topPresent .present_wrap {
		max-width: 980px;
		margin: 0 auto 20px;
	}
}
@media screen and (max-width:640px) {
	.topPresent .present_wrap {
		margin: 0 auto;
		max-width: 89%;
	}
}
@media print, screen and (min-width:641px) {
	.topPresent .present_box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 40px;
		-webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.15);
		box-shadow: 0 0 4px rgba(0, 0, 0, 0.15);
	}
}
@media screen and (max-width:640px) {
	.topPresent .present_box {
		-webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
		box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
	}
}
.topPresent .present_box:not(:last-child) {
	margin-bottom: 10px;
}
@media print, screen and (min-width:641px) {
	.topPresent .present_box .img_box {
		width: 20%;
	}
}
.topPresent .present_box .img_box .img {
	width: 100%;
	height:auto;
	vertical-align: bottom;
}
.topPresent .present_box .img_box.wrap {
	border: 1px solid #dcdcdc;
}
@media print, screen and (min-width:641px) {
	.topPresent .present_box .txt_box {
		width: calc(100% - 20% - 40px);
	}
}
@media screen and (max-width:640px) {
	.topPresent .present_box .txt_box {
		width: auto;
		padding: 30px 6% 20px;
	}
}
.topPresent .present_box .list_ttl {
	position: relative;
	display: block;
	letter-spacing: 0.05em;
	text-align: left;
	color: #bca06b;
	z-index: 1;
	font-family: source-han-serif-japanese, serif;
	font-weight: 700;
}
@media print, screen and (min-width:641px) {
	.topPresent .present_box .list_ttl {
		padding-left: 32px;
		margin-bottom: 10px;
		font-size: 2rem;
	}
}
@media screen and (max-width:640px) {
	.topPresent .present_box .list_ttl {
		margin-bottom: 15px;
		padding-left: 10%;
		font-size: 5vw;
	}
}
.topPresent .present_box .list_ttl:before {
	background: url(../img/top_present_ttl_before.png) no-repeat;
	background-size: cover;
	position: absolute;
	content: "";
	display: block;
	left: 0;
	z-index: 1;
}
@media print, screen and (min-width:641px) {
	.topPresent .present_box .list_ttl:before {
		top: -1px;
		height: 21px;
		width: 21px;
	}
}
@media screen and (max-width:640px) {
	.topPresent .present_box .list_ttl:before {
		top: 0;
		width: 7%;
		height: 100%;
	}
}
.topPresent .present_box .txt {
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 1.4rem;
	line-height: 1.85;
}
@media screen and (max-width:640px) {
	.topPresent .present_box .txt {
		font-size: 3.6vw;
		letter-spacing: 0.05em;
	}
}
@media print, screen and (min-width:641px) {
	.topPresent .present_box .more_link {
		padding-top: 10px;
	}
}
@media screen and (max-width:640px) {
	.topPresent .present_box .more_link span {
		font-size: 3.6vw;
		line-height: 1.85;
	}
}
.topPresent .small_area {
	margin-top: 20px;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	color: #6f6f6f;
}
@media screen and (max-width:640px) {
	.topPresent .small_area {
		margin-top: 10px;
	}
}
.topPresent .small_area dd, .topPresent .small_area dt {
	font-size: 1.2rem;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
@media screen and (max-width:640px) {
	.topPresent .small_area dd, .topPresent .small_area dt {
		font-size: 3.3vw;
	}
}
.topPresent .small_area .period, .topPresent .small_area .period_dd {
	display: inline;
}
.topPresent .small_area .note_dd {
	display: block;
}
.topPresent .present_box.contract .small_area {
	margin-top: 12px;
}
@media screen and (max-width:640px) {
	.topPresent .present_box.contract .small_area {
		margin-top: 8px;
	}
}
.topPresent .in .note {
	margin: 0 auto;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.83;
}
@media print, screen and (min-width:641px) {
	.topPresent .in .note {
		max-width: 980px;
		font-size: 1.2rem;
	}
}
@media screen and (max-width:640px) {
	.topPresent .in .note {
		margin-bottom: 0;
		padding-top: 15px;
		font-size: 3.3vw;
	}
}
.topFair {
	background-color: #e8f3f3;
	background-attachment: initial;
	-webkit-box-shadow: none;
	box-shadow: none;
}
@media screen and (max-width:640px) {
	.topFair .sec_ttl {
		margin-bottom: 30px;
	}
}
.sec_fair .slidearea {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .in {
		padding: 0;
		max-width: 89%;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .in .contentWrap {
		width: 100%;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .caption {
		width: 11%;
	}
}
.sec_fair .slidearea .caption span {
	font-weight: 700;
	font-size: 1.8rem;
	letter-spacing: 0.08em;
	line-height: 1.4;
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .caption span {
		font-weight: 500;
		font-size: 3.1vw;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .plancontent>.link.fair {
		-webkit-transition: 0.3s;
		transition: 0.3s;
		width: 100%;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .plancontent .label {
		height: 46px;
		font-size: 2.5vw;
		letter-spacing: -0.04em;
		line-height: 3.4;
	}
}
@media print, screen and (min-width:641px) {
	.sec_fair .slidearea .plancontent .row01 {
		margin-bottom: 10px;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .plancontent .row01 .left {
		top: 28%;
	}
}
.sec_fair .slidearea .plancontent .row01 .right .title {
	font-weight: 400;
}
@media print, screen and (min-width:641px) {
	.sec_fair .slidearea .plancontent .row01 .right .title {
		margin-bottom: 0;
		font-size: 1.4rem;
		line-height: 1.85;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .plancontent .row01 .right .title {
		font-weight: 400;
		text-align: justify;
		font-size: 3.6vw;
		letter-spacing: 0.05em;
		line-height: 1.76;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .plancontent .row01 .right .datetime {
		height: auto;
	}
}
@media print, screen and (min-width:641px) {
	.sec_fair .slidearea .plancontent .row01 .right .datetime .date {
		margin-bottom: 10px;
		font-size: 1.4rem;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .slidearea .plancontent .row01 .right .datetime .date {
		font-size: 3.6vw;
		letter-spacing: 0.05em;
	}
}
@media print, screen and (min-width:641px) {
	.sec_fair .slidearea .plancontent .txt {
		font-size: 1.4rem;
		line-height: 1.8;
	}
}
.sec_fair .slidearea .comBtn07Wrap .comBtn07 {
	border: 1px solid #81cddf;
}
@media print, screen and (min-width:641px) {
	.sec_fair .slidearea .comBtn07Wrap .comBtn07 {
		width: 60px;
	}
}
.sec_fair .slidearea .comBtn07Wrap .comBtn07:before {
	width: 100%;
}
.sec_fair .slidearea .comBtn07Wrap .comBtn07:after {
	border-top: 1px solid #81cddf;
}
@media print, screen and (min-width:641px) {
	.sec_fair .slidearea .comBtn07Wrap .comBtn07.next, .sec_fair .slidearea .comBtn07Wrap .comBtn07.prev {
		right: -90px;
	}
}
.sec_fair .slidearea .comBtn07Wrap .comBtn07.prev:after {
	border-left: 1px solid #81cddf;
}
.sec_fair .slidearea .comBtn07Wrap .comBtn07.next:after {
	border-right: 1px solid #81cddf;
}
.sec_fair .slidearea .comBtn07Wrap .comBtn07:hover:after {
	border-top: 1px solid #FFF;
}
.sec_fair .slidearea .comBtn07Wrap .comBtn07:hover.next:after {
	border-right: 1px solid #FFF;
}
.sec_fair .slidearea .comBtn07Wrap .comBtn07:hover.prev:after {
	border-left: 1px solid #FFF;
}
@media screen and (max-width:640px) {
	.sec_fair .links .tpbdf {
		display: none;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .more_top_sp {
		position: relative;
		display: block;
		width: 95%;
		height: 35px;
		border: 1px solid #81cddf;
		-webkit-transition: 0.3s;
		transition: 0.3s;
	}
	.sec_fair .more_top_sp.active {
		background-color: #81cddf;
	}
	.sec_fair .more_top_sp.active:before {
		border-left: 1px solid #FFF;
		border-bottom: 1px solid #FFF;
		top: 13px;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	.sec_fair .more_top_sp:before {
		position: absolute;
		content: "";
		display: block;
		top: 5px;
		left: 0;
		right: 0;
		margin: 0 auto;
		width: 15px;
		height: 15px;
		border-left: 1px solid #81cddf;
		border-bottom: 1px solid #81cddf;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		-webkit-transition: 0.3s;
		transition: 0.3s;
	}
}
.sec_fair .prt_txtLink span {
	display: inline-block;
	letter-spacing: 0.05em;
}
@media print, screen and (min-width:641px) {
	.sec_fair .prt_txtLink span {
		font-size: 1.4rem;
	}
}
@media screen and (max-width:640px) {
	.sec_fair .prt_txtLink span {
		display: block;
		text-align: right;
		font-size: 3.6vw;
	}
}
.sec_fair .prt_txtLink span:after {
	position: static;
	display: none;
}
.sec_fair .prt_txtLink span.arrow:before {
	top: 4px;
	right: -10px;
	border-top: 1px solid #81cddf;
	border-right: 1px solid #81cddf;
}
.topReport {
	-webkit-box-shadow: none;
	box-shadow: none;
	background-image: none;
}
@media screen and (max-width:640px) {
	.topReport {
		padding-bottom: 40px;
	}
}
@media screen and (max-width:640px) {
	.topReport .sec_ttl {
		margin-bottom: 30px;
	}
}
@media print, screen and (min-width:641px) {
	.topReport .slidearea .in {
		max-width: 1160px;
	}
}
@media screen and (max-width:640px) {
	.topReport .slidearea .in {
		margin-bottom: 30px;
	}
}
@media screen and (max-width:640px) {
	.topReport .slidearea .in .comBtn03Wrap {
		bottom: 0;
	}
}
@media screen and (max-width:640px) {
	.topReport .slidearea .in .btns01 button {
		width: 22px;
		height: 22px;
	}
}
@media screen and (max-width:640px) and (max-width:640px) {
	.topReport .slidearea .in .btns01 button {
		top: 35%;
		bottom: auto;
	}
}
@media screen and (max-width:640px) {
	.topReport .slidearea .in .btns01 button:after, .topReport .slidearea .in .btns01 button:before {
		display: none;
	}
}
@media screen and (max-width:640px) {
	.topReport .slidearea .in .btns01 button:after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		border-top: none;
		border-bottom: 1px solid #003764;
		-webkit-transition: all 0.3s, width 0.3s, height 0.3s, -webkit-transform 0.3s;
		transition: all 0.3s, width 0.3s, height 0.3s, -webkit-transform 0.3s;
		transition: all 0.3s, transform 0.3s, width 0.3s, height 0.3s;
		transition: all 0.3s, transform 0.3s, width 0.3s, height 0.3s, -webkit-transform 0.3s;
		width: 100%;
		height: 5px;
	}
}
@media screen and (max-width:640px) {
	.topReport .slidearea .in .btns01 button.next {
		right: -5%;
	}
	.topReport .slidearea .in .btns01 button.next:after {
		-webkit-transform: skew(45deg);
		transform: skew(45deg);
		border-right: 1px solid #003764;
		-webkit-transform-origin: left bottom;
		transform-origin: left bottom;
	}
}
@media screen and (max-width:640px) {
	.topReport .slidearea .in .btns01 button.prev {
		left: -6%;
	}
	.topReport .slidearea .in .btns01 button.prev:after {
		-webkit-transform: skew(-45deg);
		transform: skew(-45deg);
		border-left: 1px solid #003764;
		-webkit-transform-origin: right bottom;
		transform-origin: right bottom;
	}
}
@media print, screen and (min-width:641px) {
	.topReport .slide .plancontentWrap {
		width: 31%;
		padding: 0;
		-webkit-box-sizing: content-box;
		box-sizing: content-box;
	}
}
@media print, screen and (min-width:641px) {
	.topReport .slide .original+.original {
		padding-left: 3.5%;
	}
}
.topReport .slide .plancontent {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}
@media screen and (max-width:640px) {
	.topReport .slide .plancontent .user {
		margin-top: 28px;
	}
}
.topReport .slide .plancontent .user dt span {
	letter-spacing: 0.05em;
}
@media print, screen and (min-width:641px) {
	.topReport .slide .plancontent .user dt span {
		margin-bottom: 10px;
		font-size: 1.8rem;
	}
}
@media screen and (max-width:640px) {
	.topReport .slide .plancontent .user dt span {
		margin-bottom: 12px;
		font-size: 4.2vw;
	}
}
.topReport .slide .plancontent .user dt time {
	letter-spacing: 0.05em;
}
@media print, screen and (min-width:641px) {
	.topReport .slide .plancontent .user dt time {
		font-size: 1.2rem;
	}
}
@media screen and (max-width:640px) {
	.topReport .slide .plancontent .user dt time {
		margin-bottom: 18px;
		font-size: 3.6vw;
	}
}
.topReport .slide .plancontent .link {
	text-align: center;
}
.topReport .slide .plancontent .link span {
	display: inline-block;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	color: #81cddf;
	text-decoration: underline;
}
@media screen and (max-width:640px) {
	.topReport .slide .plancontent .link span {
		font-size: 4.2vw;
	}
}
.topReport .slide .plancontent .link .arrow:before {
	top: 4px;
	right: -10px;
	border-top: 1px solid #81cddf;
	border-right: 1px solid #81cddf;
}
.topReport .slide .plancontent:hover span {
	text-decoration: none;
}
@media screen and (max-width:640px) {
	.topReport .slide .plancontent .img {
		background-position: center top;
	}
}
.ie .top_info_area .recommend .link_wrap {
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}







#topAccess {

}

#topAccess .tel_layout .txt .tel_txt {
	letter-spacing: 0.03em;
	color: #bca06b;
	font-family: "Amiri", serif, source-han-serif-japanese, serif, "游明朝", YuMincho, "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
}
#topAccess .tel_layout .txt .tel {
	color: #bca06b;
	font-family: "Amiri", serif, source-han-serif-japanese, serif, "游明朝", YuMincho, "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
}
@media print, screen and (min-width:641px) {
	#topAccess .flex_area {
		display: flex;
		width: 98rem;
		margin: 0 auto;
		justify-content: space-between;
	}
	#topAccess .flex_area .map_box {
		width: 100%;
		max-width: 49.4rem;
	}
	#topAccess .flex_area .map_box iframe {
		width: 100%;
	}
	#topAccess .flex_area .txt_box {
		width: 100%;
		max-width: 40.2rem;
	}
	#topAccess .txt_box dl {
		display: flex;
		margin-top: 2rem;
	}
	#topAccess .txt_box dt {
		font-size: 1.4rem;
		position: relative;
		padding-left: 2.1rem;
		line-height: calc(22/14);
		max-width: 8rem;
		width: 100%;
	}
	#topAccess .txt_box dt::before {
		content: "■";
		position: absolute;
		left: 0;
		top: 0;
		color: #bfa473;
	}
	#topAccess .txt_box dd {
		font-size: 1.4rem;
		line-height: calc(22/14);
	}
	#topAccess .tel_layout {
		margin-top: 2.7rem;
	}
	#topAccess .tel_layout .txt {
		font-size: 1.6rem;
		line-height: 1;
		display: flex;
		justify-content: space-between;
		align-items: center;
		align-items: baseline;
	}
	#topAccess .tel_layout .txt .tel_txt {
		font-size: 2.2rem;
	}
	#topAccess .tel_layout .txt .tel {
		font-size: 3.2rem;
	}
	#topAccess .more {
		text-align: center;
		margin-top: 5rem;
	}
}
@media screen and (max-width:640px) {
	#topAccess .content01 {
		margin-top: 3rem;
	}

	#topAccess .flex_area .map_box {
		width: 100%;
		max-width: 89%;
		margin: 0 auto;
	}
	#topAccess .flex_area .map_box iframe {
		width: 100%;
		height: 56.94vw;
	}
	#topAccess .txt_box {
		width: 83.5%;
		padding-left: 11%;
		padding-right: 5.5%;
	}
	#topAccess .txt_box dl {
		display: flex;
		margin-top: 1.7rem;
		justify-content: center;
	}
	#topAccess .txt_box dt {
		font-size: 1.2rem;
		position: relative;
		line-height: calc(38/24);
		padding-left: 1.6rem;
		max-width: 8rem;
		width: 100%;
		box-sizing: border-box;
	}
	#topAccess .txt_box dt::before {
		content: "■";
		position: absolute;
		left: 0;
		top: 0;
		color: #bfa473;
	}
	#topAccess .txt_box dd {
		font-size: 1.2rem;
		line-height: calc(38/24);
		max-width: 21.2rem;
		width: 100%;
	}
	#topAccess .tel_layout {
		margin-top: 2.7rem;
	}


	#topAccess .tel_layout .txt {
		font-size: 1.1rem;
		line-height: 1;
		display: flex;
		justify-content: space-between;
		align-items: baseline;
		max-width: 26rem;
		width: 100%;
	}
	#topAccess .tel_layout .txt .tel_txt {
		font-size: 1.5rem;
	}
	#topAccess .tel_layout .txt .tel {
		font-size: 2rem;
		letter-spacing: 0;
	}

	#topAccess .more {
		text-align: center;
		margin-top: 2.3rem;
	}

	#topAccess .more .comBtn01.type02{
		width: 26rem;
	}
}








#topGust {
}
#topGust > .in {
	position: relative;
	width: 100%;
	max-width: 115.7rem;
	margin: 0 auto;
}
#topGust > .in::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: calc(100% - 4rem);
	height: calc(100% - 4rem);
	margin: auto;
	border: 1px solid #4a7191;
	pointer-events: none;
}
@media print, screen and (min-width:641px) {
	#topGust > .in {
		padding-top: 8rem;
		padding-bottom: 8rem;
	}
	#topGust .sec_ttl {
		margin-bottom: 48px;
	}
}
@media screen and (max-width:640px) {
	#topGust {
		width: 89%;
		margin: 0 auto;
	}
	#topGust > .in {
		padding-top: 5rem;
		padding-bottom: 7rem;
	}
	#topGust .textarea .txt_box {
		margin-top: 3rem;
	}
	#topGust > .in::before {
		width: calc(100% - 3rem);
		height: calc(100% - 3rem);
	}
}
#topGust .textarea .txt_box .txt {
}
@media print, screen and (min-width:641px) {
	#topGust .textarea .txt_box .txt {
		font-size: 1.7rem;
		line-height: calc(40/17);
		letter-spacing: 0.05em;
		text-align: center;
	}
}
@media screen and (max-width:640px) {
	#topGust .textarea .txt_box .txt {
		font-size: 1.4rem;
		line-height: calc(49/28);
		letter-spacing: 0.05em;
		text-align: center;
	}
}

#topGust .textarea .more {
	text-align: center;
}
@media print, screen and (min-width:641px) {
	#topGust .textarea .more {
		margin-top: 4rem;
	}
}
@media screen and (max-width:640px) {
	#topGust .textarea .more {
		margin-top: 3rem;
	}
}

#topGust .bgBlock {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
#topGust .bgBlock .figure_img {
  width: 100%;
  height: 100%;
}
#topGust .bgBlock img {
  vertical-align: bottom;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}




#topMovie .movie img {
	width: 100%;
    height: 100%;
    object-fit: cover;
	vertical-align: bottom;
}

@media print, screen and (min-width:641px) {
	#topMovie .movie {
		max-width: 96rem;
		margin: 0 auto;
		text-align: center;
		margin-top: 8.4rem;
		cursor: pointer;
	}
}
@media screen and (max-width:640px) {
	#topMovie .movie {
		margin: 0 auto;
		margin-top: 4rem;
		width: calc(100vw - 4rem);
	}
	#topMovie .movie iframe {
		height: calc((100vw - 4rem) * 0.603);
	}
}


@media print, screen and (min-width:641px) {
	.mvArea .opening {
		position: fixed;
	}
}