@charset "utf-8";

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
html {
	font-size: 6.6667px;
}
body {
	line-height: 1;
	overflow: visible;
	font-size: 16px;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

img {
	max-width: 100%;
	vertical-align: top;
}

/*--------------------------*/
#menu{
	width: 960px;
	margin:0 auto;
	background:#200807;
	position: relative;
	z-index:10;
	text-align:center;
}
#back_wrap {
	background: #fff;
	padding-top: 10px;
}
#back{
	width: 960px;
	margin: 0 auto;
	padding-bottom:0;
	text-align:center;
}
#iframe_wrap {
	background: #fff;
}

/*--------------------------*/
#to_top{
	clear:both;
	padding:20px 50px 20px 50px;
	text-align:right;
}
header {
	position: sticky;
	top: 0;
	z-index: 500;
}
.LyFoot{
	margin-top: 0 !important;
	background: #fff;
}
.backtotop a {
	background-color: transparent !important;
	padding: 0 !important;
	width: 120px;
}
@media screen and (max-width: 749px) {
	.backtotop a {
		width: 60px;
	}
}

/* ----- coolaction ----- */
#coolaction
#coolaction *,
#coolaction *::before,
#coolaction *::after {
	box-sizing: border-box;
}
#coolaction {
	background: url(../img/bg.png) repeat 50% 0;
	background-size: 18px 18px;
	text-align: center;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
#coolaction img {
	max-width: 100%;
	height: auto;
}

.pageInner {
	max-width: 75rem;
	margin: 0 auto;
	padding-bottom: 1px;
}

.shadow {
	display: block;
	box-shadow: 0 0.6rem 0.6rem 0.2rem rgba(0,0,0,0.3);
}

.anchorBtn {
	background-color: #d9f4f5;
	padding: 5rem 4.5rem;
}
.anchorBtn li {
}
.anchorBtn li + li {
	margin-top: 3rem;
}

.fixAnchor {
	position: fixed;
	top: 55px;
	left: 0;
	right: 0;
	z-index: 1000;
	width: 75rem;
	margin: 0 auto;
	display: none;
}
.fixAnchor ul {
	display: flex;
	justify-content: center;
	gap: 0.6rem;
}
.fixAnchor li {
	width: 24.2rem;
	box-shadow: 0 0.6rem 0.6rem rgba(0,0,0,0.2);
	border-radius: 0 0 2.5rem 2.5rem;
	background-color: #fff;
}

.fixBtn {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
	width: 58rem;
	margin: 0 auto;
	background-color: #fff;
	display: none;
}

.itemList {
	background-color: #2896d2;
	padding: 0 4rem 10rem;
}
.itemList > li {
	position: relative;
}
.itemList > li + li {
	margin-top: 10rem;
}
.itemList .btn {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -5rem;
	width: 40rem;
	margin: 0 auto;
	background-color: #fff;
}
.itemList .imgArea {
	position: relative;
}
.itemList .slide {
	overflow: hidden;
}
.itemList .slide ul {
	position: relative;
	display: flex;
}
.itemList .slide li {
	position: relative;
	width: 100%;
	flex-shrink: 0;
}
.itemList .left_btn,
.itemList .right_btn {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 5rem;
	height: 10rem;
	margin: auto 0;
	cursor: pointer;
}
.itemList .left_btn {
	left: 0;
}
.itemList .right_btn {
	right: 0;
}

.modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9100;
	background-color: rgba(0,0,0,0.6);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}
.modal .window {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 70.8rem;
	border: 0.7rem solid #0241a3;
	transform: translateY(-50%);
}
.modal .closeBtn {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
	width: 11rem;
	height: 12rem;
	cursor: pointer;
}
.modal .closeBtn::before,
.modal .closeBtn::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 8rem;
	height: 0.2rem;
	margin: auto;
	background-color: #323232;
	transform: rotate(45deg);
}
.modal .closeBtn::after {
	transform: rotate(-45deg);
}
.modal .scrollArea {
	overflow: hidden;
}
.modal .scrollArea > div {
	position: relative;
	max-height: 90vh;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}
.modal .scrollArea .btnArea {
	background-color: rgba(255,255,255,0.95);
	padding: 0 0 3.5rem;
}
.modal .scrollArea .btnArea a {
	display: block;
	width: 30rem;
	margin: 0 auto;
}

.detail {
	background-color: #d4eaf6;
	padding: 4rem 5rem;
}
.detail .btn01 {
	margin-bottom: 6rem;
}

.contact {
	position: relative;
}
.contact a {
	position: absolute;
	top: 33rem;
	left: 0;
	right: 0;
	width: 56rem;
	margin: 0 auto;
	box-shadow: 0 0.6rem 0.6rem 0.2rem rgba(0,0,0,0.3);
}

.frame {
	position: relative;
}

body a.textLink {
	position: absolute;
	color: #FFF167;
	font-size: 3rem;
	font-weight: bold;
	text-decoration: underline;
}
body a.textLink:hover {
	text-decoration: none;
}
.link01 {
	left: 17.5rem;
	bottom: 28.5rem;
}
.link02 {
	left: 40rem;
	bottom: 26.5rem;
}
.link03 {
	left: 38.5rem;
	bottom: 3rem;
}
.link04 {
	left: 7rem;
	bottom: 3rem;
}

body a.link05 {
	position: absolute;
	top: 90.2rem;
	left: 25rem;
	color: #003ca0;
	font-size: 2.6rem;
	font-weight: bold;
	text-decoration: underline;
}
body a.link05:hover {
	text-decoration: none;
}
body a.link06 {
	position: absolute;
	top: 98.3rem;
	left: 25rem;
	color: #003ca0;
	font-size: 2.6rem;
	font-weight: bold;
	text-decoration: underline;
}
body a.link06:hover {
	text-decoration: none;
}

.btnLink {
	position: absolute;
	background-color: #fff;
}
.btn02 {
	top: 17rem;
	left: 0;
	right: 0;
	width: 38rem;
	margin: 0 auto;
}
.btn03 {
	top: -7.5rem;
	left: 0;
	right: 0;
	width: 58rem;
	margin: 0 auto;
	border-radius: 6.5rem;
}
.btn04 {
	top: 17rem;
	left: 0;
	right: 0;
	width: 38rem;
	margin: 0 auto;
}
.btn05 {
	top: 0;
	left: 0;
	right: 0;
	width: 58rem;
	margin: 0 auto;
	border-radius: 6.5rem;
}

.movieArea {
	width: 68rem;
	margin: 0 auto;
	aspect-ratio: 16 / 9;
}
.movieArea iframe {
	width: 100%;
	height: 100%;
}

.banner01 {
	width: 66rem;
	margin: 0 auto;
}

.banner02 {
	position: absolute;
	top: 16.7rem;
	left: 0;
	right: 0;
	width: 57.4rem;
	margin: 0 auto;
}
.banner02 li + li {
	margin-top: 6rem;
}

.sec01 {
	margin-top: 15%;
}

.cmArea {
	position: relative;
	z-index: 10;
	margin: -8rem 3.5rem 12rem;
}
.cmArea .cm {
	position: relative;
	margin-top: 1rem;
	aspect-ratio: 16 / 9;
}
.cmArea .cm iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
