@charset "UTF-8";
/* CSS Document */

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

/* Common 

====================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,.section,summary,time,mark,audio,video
{
	max-height: 999999px;
	margin:0;
	padding:0;
	border:0;
	outline:none;
	vertical-align:baseline;
	background:transparent;
}
img
{
	margin:0;
	padding:0;
	border:0;
	outline:none;
	vertical-align:baseline;
}
body
{
	position: relative;
	line-height: 1;
	-webkit-text-size-adjust: 100%;
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,.section{display:block}
nav ul{list-style:none}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:none}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;outline:none;}
ins{background-color:#ff9;color:#000;text-decoration:none}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}
del{text-decoration:line-through}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}
table{border-collapse:collapse;border-spacing:0}
hr{display:block;height:1px;border:0;border-top:1px solid #eee;margin:1em 0;padding:0}
input,select{vertical-align:middle}
* {box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-ms-box-sizing: border-box;-o-box-sizing: border-box;}

picture { display: inline-block; }

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

/* html, body 

====================================================*/
html {
  font-size: 62.5%;
  font-size: 10px;
}
body {
	font-size: 1.4rem;
	line-height: 1;
	font-family:'Noto Sans JP','ヒラギノ角ゴ Pro W3','ヒラギノ角ゴ W3', 'メイリオ', 'ＭＳ Ｐゴシック', system-ui, sans-serif;
	color: #4A313C;
	text-align: justify;
	text-justify: inter-ideograph;
	font-feature-settings: "palt" 1;
	position: relative;

	background: rgb(180,0,0.07);
	background: linear-gradient(90deg, rgba(180,0,1,0.07) 0%, rgba(185,149,63,0.07) 100%); 
}
@media screen and (min-width: 768px) {
	body {
		font-size: 3.2rem;
	}
}
* {
	-webkit-transition: .4s;
	-o-transition: .4s;
	transition: .4s;
}

a {
	text-decoration: underline;
	color: #000;
	transition: .4s;
	cursor: pointer;
}
a:hover {
	color: #000;
}
a:hover img {
	opacity:0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
}

.font-mincho {
	font-family:'Noto Serif JP','ヒラギノ角ゴ Pro W3','ヒラギノ角ゴ W3', 'メイリオ', 'ＭＳ Ｐゴシック', system-ui, sans-serif;
}

/* Common：img */
img {
	max-width: 100%;
	height: auto;
	vertical-align:top;
}
.img-fluid {
	max-width: 100%;
	height: auto;
}

/* Common：list */
ul,ol {
	list-style: none;
}


/* --------------------------------------------------

	コンテナ 

-------------------------------------------------- */
.all_wrp {
	width: 100%;
	height: 100%;
	background-image: url(../img/bg.jpg);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	background-attachment: fixed;
}

.container_fluid {
	width: 100%;
	overflow: hidden;
	padding-right: 0;
	padding-left: 0;
	position: relative;
}

.container {
	text-align: center;
	position: relative;
	margin-right: auto;
	margin-left: auto;
	max-width: 750px;
	width: 100%;
	background: #FFF;
	box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .1);
}


/* --------------------------------------------------

	コンテンツ

-------------------------------------------------- */
body {
	--z-index_100: 100;
	--z-index_10: 10;
	--z-index_1: 1;
}

.container>div {
	position: relative;
}

.kv_wrp h2 {
	position: absolute;
	left: 50%;
	bottom: -8%;
	width: 100%;
	transform: translateX(-50%);
	z-index: var(--z-index_100);
}

@media screen and (max-width: 749px) {
	.kv_wrp h2 {
		width: 90%;
	}
}

.c01, .cta {
	background: rgb(235,237,250);
	background: linear-gradient(135deg, rgba(235,237,250,1) 0%, rgba(242,227,244,1) 100%);
	padding-bottom: 100px;
}
.cta {
	margin-top: 120px;
  padding-bottom: 70px;
  margin-bottom: 50px;
}
@media screen and (max-width: 749px) {
	.c01, .cta {
		padding-bottom: 6%;
	}
	.cta {
		margin-top: 20%;
		padding-bottom: 0;
		margin-bottom: 8%;
	}
}

.c01 .c01-1,
.c02 .c02-2 {
	position: relative;
	z-index: var(--z-index_10);
}

.c01 .c01-2 {
	position: relative;
	z-index: var(--z-index_100);
	margin-top: -150px;
}
@media screen and (max-width: 749px) {
	.c01 .c01-2 {
		margin-top: -11vh;
	}
}

.c01 .c01-3,
.cta .c01-3 {
	position: relative;
	margin: 20px 0 40px;
	width: 90%;
}

.c01 .c01-5,
.cta .c01-5 {
	position: relative;
	margin: 20px 0 60px;
}

.c01 a {
	position: absolute;
	left: 50%;
	bottom: -3%;
	width: 90%;
	transform: translateX(-50%);
	z-index: var(--z-index_100);
}

.c02 .c02-2 {
	margin-top: 30px;
	margin-bottom: -5%;
}

.c02 .c02-3 {
	position: relative;
	z-index: var(--z-index_1);
	margin-bottom: 3%;
}

.c02 .c02-4 {
	margin-top: -40px;
}

@media screen and (max-width: 749px) {
	.c01 .c01-2 {
		width: 90%;
	}
}

.c03 {
	margin-top: 30px;
	text-align: left;
	width: 100%;
	height: 100%;
	background-image: url(../img/c03-1.jpg);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
}

.c03 .c03-ttl,
.c03 .c03-next {
	margin: 0 auto;
	display: block;
}

.c03 .c03-1 {
	margin-top: 50px;
	margin-left: 30%;
}

.c03 .c03-2 {
	margin-top: 50px;
	margin-left: 20%;
}

.c03 .c03-3 {
	margin-top: 50px;
	margin-left: 5%;
}

.c03 .c03-4 {
	margin-top: 50px;
	margin-left: 30%;
}

.c03 .c03-5 {
	margin-top: 50px;
	margin-left: 18%;
}

.c03 .c03-next {
	margin-top: 70px;
}

@media screen and (max-width: 749px) {
	.c03 .c03-ttl {
		width: 90%;
	}

	.c03 .c03-1,
	.c03 .c03-2,
	.c03 .c03-3,
	.c03 .c03-4,
	.c03 .c03-5 {
		width: 68%;
		margin-top: 7% !important;
	}

	.c03 .c03-next {
		margin-top: 20px;
		width: 50%;
	}
}

.c04 .c04-1 {
	margin: 6% 0 -5%;
}

.c04 .point {
	background: #FFFBF0;
}

.c04 .point p {
	text-align: left;
	padding: 5% 5% 6%;
	line-height: 2;
}

@media screen and (max-width: 749px) {
	.c04 .c04-1 {
		width: 90%;
	}
}

.cta .cta-1 {
	position: relative;
	margin-top: -100px;
}

.cta .cta-2 {
	width: 100%;
	height: 1200px;
	object-fit: cover;
}

.cta .cta-3 {
	position: absolute;
	left: 50%;
	bottom: -2%;
	transform: translateX(-50%);
	z-index: var(--z-index_100);
}

@media screen and (max-width: 749px) {
	.cta .cta-1 {
		width: 90%;
		margin-top: -7vh;
	}

	.cta .cta-2 {
		width: 100%;
		height: 600px;
		object-fit: cover;
	}

	.cta .cta-3 {
		width: 40%;
		margin-top: -8%;
	}
}


.c06 .map iframe {
	padding: 30px 5% 40px;
	width: 100%;
	height: 450px;
}

.c06 .info {
	font-size: 2.8rem;
	margin: 0 5% 5%;
	text-align: left;
	display: grid;
	gap: 15px;
}

.c06 .info dl {
	display: flex;
	line-height: 1.6;
	border-bottom: 1px solid #BEBEBE;
	margin-bottom: 15px;
	padding-bottom: 20px;
}

.c06 .info dt {
	width: 200px;
	text-align: left;
	flex-shrink: 0;
}

@media screen and (max-width: 749px) {
	.c06 .c06-3 {
		margin-top: 30px;
		width: 90%;
	}

	.c06 .info dl {
		display: inline-block;
	}

	.c06 .info {
		font-size: 1.4rem;
	}

	.c06 .info img {
		width: 70%;
	}
}

.apl {
	margin-top: 15%;
	padding: 5%;
	background: rgb(187, 200, 242, 0.3);
	background: linear-gradient(145deg, rgba(187, 200, 242, 0.3) 0%, rgba(221, 147, 208, 0.3) 100%);
}

.apl .apl-ttl {
	margin-top: -13%;
}

.apl .bt_wrp {
	margin-top: 5%;
	margin-bottom: 5%;
}

.apl p {
	text-align: left;
	line-height: 1.7;
	margin: 5% 0;
}

.apl .box_wrp {
	text-align: left;
	padding: 7% 5%;
	background: #FFF;
	border-radius: 20px;
}

.apl .box_wrp.calender {
	margin-bottom: 30px;
}

.apl .box_wrp.cancel img {
	display: block;
	margin: 0 auto 30px;
}

.apl .box_wrp.cancel h3 {
	margin-bottom: 20px;
}

.apl .box_wrp.cancel h3:not(:first-child) {
	margin-top: 30px;
}

.apl .box_wrp.cancel h4 {
	margin: 20px 0;
}

.apl .box_wrp.cancel ul {

	line-height: 1.5;
}

.apl .box_wrp.cancel ul li {
	position: relative;
	list-style-type: none;
	padding-left: 1em;
	margin-bottom: .5em;
}

.apl .box_wrp.cancel ul li::before {
	position: absolute;
	content: '・';
	display: inline-block;
	width: auto;
	height: auto;
	left: 0;
	top: 0.3em;
	line-height: 1;
}

.apl .box_wrp.cancel .font-s {
	font-size: 2.8rem;
}

@media screen and (max-width: 749px) {
	.apl .box_wrp.cancel .font-s {
		font-size: 1.4rem;
	}

	.apl .box_wrp.cancel img {
		width: 70%;
	}
}

.cta_bt a {
	cursor: pointer;
}

.cta_bt:hover {
	opacity: 0.8;
}

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

/* sticky

====================================================*/
.convertion {
	position: sticky;
	text-align: center;
	margin: 0 auto;
	padding: 0;
	bottom: 0;
	width: 100%;
	z-index: 1000;
}

.convertion_wrp {
	width: 750px;
	margin: 0 auto;
	padding: 0 0 10px;
}

.convertion_bt:hover {
	opacity: 0.8;
}

.convertion_bt img {
	width: 90%;
}

@media screen and (max-width: 749px) {
	.convertion {
		padding: 0;
	}

	.convertion_wrp {
		width: 100%;
		padding: 0 2% 2%;
	}

	.convertion img {
		width: 100%;
	}
}