@charset "UTF-8";
/*!00Basic*/
* {
	font-family: "hiragino-kaku-gothic-pron", sans-serif;
	font-weight: 600;
	font-style: normal;
	letter-spacing: 0.08em;
	line-height: 2em;
}
html {
	width: 100%;
	min-width: 320px;
	height: 100%;
	scroll-behavior: smooth;
}
body {
	background: #f1f3f7;
	height: 100%;
	min-width: 320px;	
}
.wrap {
	height: 100%;
}
img {
	max-width: 100%;
	height: auto;
}
.hover:hover {
	color: #163fa7;
	transition: .2s;
}
/*#bg-wrap0 {
	position: fixed;
	background: #fff;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: -1;	
}
#bg-wrap {
	position: relative;
	bottom: 0;
	width: 100%;
	height: auto;
	z-index: -2;	
}
#bg-wrap video {
	position: relative;
	bottom: 0;
	width: 100%;
}*/
/*フェードイン用 Class*/
/*時間差1 下から*/
.js-fade {
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity 1s,visibility 1s, transform 1s;
}
.scroll {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}
/*時間差2 下から*/
.js-fade2 {
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity 1s,visibility 1s, transform 1s;
	transition-duration: 0.3s;
}
.scroll2 {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}
/*時間差3 下から*/
.js-fade3 {
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity 1s,visibility 1s, transform 1s;
	transition-duration: 0.6s;
}
.scroll3 {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}
/*時間差1 右から*/
.js-fade_x {
	opacity: 0;
	visibility: hidden;
	transform: translateX(48px);
	transition: opacity 1s,visibility 1s, transform 1s;
	transition-duration: 1s;
}
.scroll_x {
	opacity: 1;
	visibility: visible;
	transform: translateX(0px);
}
/*ゆっくり1 下から*/
.js-fade_slow {
	opacity: 0;
	visibility: hidden;
	transform: translateY(32px);
	transition: opacity 2s,visibility 2s, transform 2s;
	transition-duration: 1s;
}

.scroll_slow {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}

/*ゆっくり2 下から*/
.js-fade_slow2 {
	opacity: 0;
	visibility: hidden;
	transform: translateY(32px);
	transition: opacity 2s,visibility 2s, transform 2s;
	transition-duration: 1.5s;
	transition-delay: 0.5s; /* ← ここで開始を遅らせる */
}

.scroll_slow2 {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}

/*ゆっくり3 下から*/
.js-fade_slow3 {
	opacity: 0;
	visibility: hidden;
	transform: translateY(32px);
	transition: opacity 2s,visibility 2s, transform 2s;
	transition-duration: 2s;
	transition-delay: 1s; /* ← ここで開始を遅らせる */
}

.scroll_slow3 {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}






/*!99共通パーツ*/

.pc {
	display: block;
}

/*WIDTH*/
.w80 {
	width: 80px;
}

.w100per {
	width: 100% !important;
}

.w50per {
	width:calc(50% - 24px);
}
.w50per_no_margin {
	width: 50%;
}
.w25per {
	width:calc(25% - 16px);
}

.mw800 {
	width: 100%;
	max-width: 800px !important;
	margin: 0 auto;
}
.mw1200 {
	width: 100%;
	max-width: 1280px !important;
	margin: 0 auto;
}
.mw1600 {
	width: 100%;
	max-width: 1680px !important;
	margin: 0 auto;
}
.mw1500_margin0 {
	width: 100%;
	max-width: 1500px !important;
	margin: 0;
}
.mw1000_margin0 {
	width: 100%;
	max-width: 1000px !important;
	margin: 0;
}


/*froat*/
.f_l {float: left;}
.f_r {float: right;}
/* For modern browsers */
.cf:before,
.cf:after {
	content:"";
	display:table;
}
 
.cf:after {
	clear:both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom:1;
}

/*text-align*/
.tex_c { text-align: center; }
.tex_l { text-align: left; }
.tex_r { text-align: right; }

/*FLEX*/

.flex {
	display: flex;
	justify-content: flex-start;
	flex-direction: row;
	flex-wrap:wrap;
}
.flex_bet {
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap:wrap;
}
.flex_end {
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	flex-wrap:wrap;
}
.flex_center {
	display: flex;
	justify-content: center;
	flex-direction: row;
	flex-wrap:wrap;
}

/*FLEX高さ合わせない*/
.ai_s {
	align-items: flex-start;
}
/*FLEX縦下に設置*/
.ai_e {
	align-items: flex-end;
}
/*FLEX縦センター*/
.ai_c {
	align-items: center;
}

.ai_st {
	align-items: stretch;
}

/*画像トリミング*/
.tri {
	object-fit: cover;
}
/*画像下の空白を埋める*/
.vab{
vertical-align: bottom;
}

/* line-height */
.lh1 {
	line-height: 1em;
} 
.lh {
	line-height: 1.7em;
}
/*角丸*/
.rounded {
	border-radius: 16px;
	overflow: hidden;
}

/*TABLE*/
.has-fixed-layout {
 width: 100%;
 text-align: left;
 border-collapse: separate;
 border-spacing: 0 16px;
 border-top: none !important;
}

.has-fixed-layout tr {
}
.has-fixed-layout th {
	padding: 32px 24px;
	border: none !important;

	width: 200px !important;
	font-size: 14px;
	background: #06409b;
	color: #fff;
}
.has-fixed-layout td {
 padding: 32px 24px;
 border: none !important;
 width:calc(100% - 200px) !important;
 font-weight: 300;
 background: #fff;
}

.has-fixed-layout tr td:first-child {
	padding: 32px 0;
	border: none !important;
	border-bottom: solid 1px #222 !important;
	width: 200px !important;
	font-weight: 600;
}





/*TABLE FORM*/
.has-fixed-layout2 {
 width: 100%;
 text-align: left;
 border-collapse: separate;
 border-spacing: 0 16px;
 border-top: none !important;
}

.has-fixed-layout2 tr {
}
.has-fixed-layout2 th {
	padding: 16px 24px 12px 24px;
	border: none !important;

	width: 230px !important;
	font-size: 14px;
	background: #06409b;
	color: #fff;
}
.has-fixed-layout2 td {
 padding: 16px 24px 16px 24px;
 border: none !important;
 width:calc(100% - 200px) !important;
 font-weight: 300;
 background: #fff;

}

.has-fixed-layout2 td span {
	font-weight: 300 !important;
}
.has-fixed-layout2 td p {
	font-weight: 300 !important;
}

.has-fixed-layout2 tr td:first-child {
	padding: 8px 0;
	border: none !important;
	border-bottom: solid 1px #222 !important;
	width: 200px !important;
	font-weight: 600;
}
.hissu {
	position: relative;
	left: 8px;
}

textarea {
	height: 128px;
	resize: none;
	width: 100%;
	  box-sizing: border-box;
	  display: block;
	  background: rgba(242, 241, 241, 0.347);
	  border: 1px solid rgba(205, 205, 205, 0.628);
	  padding: 8px;
}

input {
	background: rgba(242, 241, 241, 0.347);
	border: 1px solid rgba(205, 205, 205, 0.628);
	width: 100%;
	  box-sizing: border-box;
	  display: block;
	  font-size: 14px;
	  font-weight: normal;
	  padding-left: 8px;
	  padding-right: 8px;
}

select {
	background: rgba(242, 241, 241, 0.947);
	border: 1px solid rgba(205, 205, 205, 1);
	border-radius: 8px;
	margin: 16px 0;
	padding: 8px 16px;
	font-size: 14px;
}
select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: white;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg width='10' height='6' viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0l5 6 5-6H0z' fill='%23333'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 10px 6px;
  padding-right: 30px;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.datesbox {
	display: flex;
	justify-content: flex-start; /* 左寄せ（start） */
	flex-wrap: wrap;             /* 折り返しあり */
	align-items: center;
	font-size: 14px;
	margin: 8px 0;
}
.datesbox select {
	margin-right: 16px;
}

.bb {
	text-decoration: underline;
}
.bb:hover {
	text-decoration: none;
}

/* margin */

.mta {margin-top:auto;}
.mra {margin-right:auto;}
.mba {margin-bottom:auto;}
.mla {margin-left:auto;}

.mt-64 {margin-top:-64px !important;}
.mr-64 {margin-right:-64px !important;}
.mb-64 {margin-bottom:-64px !important;}
.ml-64 {margin-left:-64px !important;}


.mt0 {margin-top:0px !important;}
.mr0 {margin-right:0px !important;}
.mb0 {margin-bottom:0px !important;}
.ml0 {margin-left:0px !important;}

.mt8 {margin-top:8px !important;}
.mr8 {margin-right:8px !important;}
.mb8 {margin-bottom:8px !important;}
.ml8 {margin-left:8px !important;}

.mt16 {margin-top:16px !important;}
.mr16 {margin-right:16px !important;}
.mb16 {margin-bottom:16px !important;}
.ml16 {margin-left:16px !important;}

.mt24 {margin-top:24px !important;}
.mr24 {margin-right:24px !important;}
.mb24 {margin-bottom:24px !important;}
.ml24 {margin-left:24px !important;}

.mt32 {margin-top:32px !important;}
.mr32 {margin-right:32px !important;}
.mb32 {margin-bottom:32px !important;}
.ml32 {margin-left:32px !important;}

.mt40 {margin-top:40px !important;}
.mr40 {margin-right:40px !important;}
.mb40 {margin-bottom:40px !important;}
.ml40 {margin-left:40px !important;}

.mt48 {margin-top:48px !important;}
.mr48 {margin-right:48px !important;}
.mb48 {margin-bottom:48px !important;}
.ml48 {margin-left:48px !important;}

.mt56 {margin-top:56px !important;}
.mr56 {margin-right:56px !important;}
.mb56 {margin-bottom:56px !important;}
.ml56 {margin-left:56px !important;}

.mt64 {margin-top:64px !important;}
.mr64 {margin-right:64px !important;}
.mb64 {margin-bottom:64px !important;}
.ml64 {margin-left:64px !important;}

.mt72 {margin-top:72px !important;}
.mr72 {margin-right:72px !important;}
.mb72 {margin-bottom:72px !important;}
.ml72 {margin-left:72px !important;}

.mt80 {margin-top:80px !important;}
.mr80 {margin-right:80px !important;}
.mb80 {margin-bottom:80px !important;}
.ml80 {margin-left:80px !important;}

.mt88 {margin-top:88px !important;}
.mr88 {margin-right:88px !important;}
.mb88 {margin-bottom:88px !important;}
.ml88 {margin-left:88px !important;}

.mt96 {margin-top:96px !important;}
.mr96 {margin-right:96px !important;}
.mb96 {margin-bottom:96px !important;}
.ml96 {margin-left:96px !important;}

.mt104 {margin-top:104px !important;}
.mr104 {margin-right:104px !important;}
.mb104 {margin-bottom:104px !important;}
.ml104 {margin-left:104px !important;}

.mt112 {margin-top:112px !important;}
.mr112 {margin-right:112px !important;}
.mb112 {margin-bottom:112px !important;}
.ml112 {margin-left:112px !important;}

.mt120 {margin-top:120px !important;}
.mr120 {margin-right:120px !important;}
.mb120 {margin-bottom:120px !important;}
.ml120 {margin-left:120px !important;}

.mt128 {margin-top:128px !important;}
.mr128 {margin-right:128px !important;}
.mb128 {margin-bottom:128px !important;}
.ml128 {margin-left:128px !important;}

/*padding*/
.pt0 {padding-top:0px !important;}
.pr0 {padding-right:0px !important;}
.pb0 {padding-bottom:0px !important;}
.pl0 {padding-left:0px !important;}

.pt8 {padding-top:8px !important;}
.pr8 {padding-right:8px !important;}
.pb8 {padding-bottom:8px !important;}
.pl8 {padding-left:8px !important;}

.pt16 {padding-top:16px !important;}
.pr16 {padding-right:16px !important;}
.pb16 {padding-bottom:16px !important;}
.pl16 {padding-left:16px !important;}

.pt24 {padding-top:24px !important;}
.pr24 {padding-right:24px !important;}
.pb24 {padding-bottom:24px !important;}
.pl24 {padding-left:24px !important;}

.pt32 {padding-top:32px !important;}
.pr32 {padding-right:32px !important;}
.pb32 {padding-bottom:32px !important;}
.pl32 {padding-left:32px !important;}

.pt40 {padding-top:40px !important;}
.pr40 {padding-right:40px !important;}
.pb40 {padding-bottom:40px !important;}
.pl40 {padding-left:40px !important;}

.pt48 {padding-top:48px !important;}
.pr48 {padding-right:48px !important;}
.pb48 {padding-bottom:48px !important;}
.pl48 {padding-left:48px !important;}

.pt56 {padding-top:56px !important;}
.pr56 {padding-right:56px !important;}
.pb56 {padding-bottom:56px !important;}
.pl56 {padding-left:56px !important;}

.pt64 {padding-top:64px !important;}
.pr64 {padding-right:64px !important;}
.pb64 {padding-bottom:64px !important;}
.pl64 {padding-left:64px !important;}

.pt72 {padding-top:72px !important;}
.pr72 {padding-right:72px !important;}
.pb72 {padding-bottom:72px !important;}
.pl72 {padding-left:72px !important;}

.pt80 {padding-top:80px !important;}
.pr80 {padding-right:80px !important;}
.pb80 {padding-bottom:80px !important;}
.pl80 {padding-left:80px !important;}

.pt88 {padding-top:88px !important;}
.pr88 {padding-right:88px !important;}
.pb88 {padding-bottom:88px !important;}
.pl88 {padding-left:88px !important;}

.pt96 {padding-top:96px !important;}
.pr96 {padding-right:96px !important;}
.pb96 {padding-bottom:96px !important;}
.pl96 {padding-left:96px !important;}

.pt104 {padding-top:104px !important;}
.pr104 {padding-right:104px !important;}
.pb104 {padding-bottom:104px !important;}
.pl104 {padding-left:104px !important;}

.pt112 {padding-top:112px !important;}
.pr112 {padding-right:112px !important;}
.pb112 {padding-bottom:112px !important;}
.pl112 {padding-left:112px !important;}

.pt120 {padding-top:120px !important;}
.pr120 {padding-right:120px !important;}
.pb120 {padding-bottom:120px !important;}
.pl120 {padding-left:120px !important;}

.pt128 {padding-top:128px !important;}
.pr128 {padding-right:128px !important;}
.pb128 {padding-bottom:128px !important;}
.pl128 {padding-left:128px !important;}

.pt160 {padding-top:160px !important;}

/*FONT*/

.font_w {
	color: #fff !important;
}
.font_b span {
	color: #2e2b2b !important;
	display: inline-block;
	background: #fff;
	padding-left: 4px;
	padding-right: 4px;
}

.bold {
	font-weight: bold !important;
}

.font12 {font-size: 12px !important;}
.font14 {font-size: 14px !important;}
.font16 {font-size: 16px !important;}
.font18 {font-size: 18px !important;}
.font24 {font-size: 24px !important;}
.font32 {font-size: 32px !important;}
.font48 {font-size: 48px !important;}
.font64 {font-size: 64px !important;}
.font80 {font-size: 80px !important;}
.font88 {font-size: 88px !important;}

/*可変*/
.font48_sps {
	font-size: 48px !important;
}

.fatfrank {
	font-family: "fatfrank", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.Hiragino3 {
	font-family: "hiragino-kaku-gothic-pron", sans-serif;
	font-weight: 300;
	font-style: normal;
}
.Hiragino6 {
	font-family: "hiragino-kaku-gothic-pron", sans-serif;
	font-weight: 600;
	font-style: normal;
}

@media screen and (max-width: 799px){
	.mt24sp {
		margin-top: 24px !important;
	}
	.mt-64 {
		margin-top: 16px !important;
	}
	.font64 {
		font-size: 48px !important;
	}
}