@charset "UTF-8";@-webkit-keyframes glowing{from{-webkit-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);}
50%{-webkit-box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);}
to{-webkit-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);}
}
@-moz-keyframes glowing{from{-webkit-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);}
50%{-webkit-box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);}
to{-webkit-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);}
}
@-o-keyframes glowing{from{-webkit-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);}
50%{-webkit-box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);}
to{-webkit-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);}
}
@keyframes glowing{from{-webkit-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);}
50%{-webkit-box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 16px rgba(44, 154, 219, 0.8), 0px 1px 2px rgba(0, 0, 0, 0.2);}
to{-webkit-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);box-shadow:0px 0px 0px rgba(44, 154, 219, 0.3), 0px 1px 2px rgba(0, 0, 0, 0.2);}
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, 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 {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	list-style: none;
	font-style: normal;
	font-weight: normal;
}
/*paddingによる幅を無くします*/
*{
	-webkit-box-sizing:border-box;
	-mos-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
/*横幅をはみ出た部分は見えなくする*/
html{
	overflow-x: hidden;
}
body {
	width: 100%;
	min-width: 350px;
	min-height: 800px;
	background: #fff;
	color:#4F5D77;
	font-size:13px;
	font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height:1.4;
	overflow: hidden;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
}
a{
	color: #4F5D77;
	text-decoration:none;
	outline:none;
	-webkit-transition-property:color;
	-moz-transition-property:color;
	-o-transition-property:color;
	transition-property:color;
	-webkit-transition-duration:0.3s;
	-moz-transition-duration:0.3s;
	-o-transition-duration:0.3s;
	transition-duration:0.3s;
	transition: 0.3s;
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	text-decoration: none;
}
a:hover{
	opacity: 0.8;
}


/*android版クローム　フォントサイズが大きくなる不具合対策*/
p {
	max-height: 999999px;
}


/* float解除 */
.clear{
	clear:both;
}
header:after,
footer:after,
section:after,
article:after,
aside:after,
main:after,
div:after,
dl:after,
ul:after,
ol:after,
li:after {
	display: block;
	clear: both;
	height: 0;
	content: "";
}


/****************************************
 common (共通スタイル)
****************************************/
/*ページ全体ふわっと表示*/
body {
	animation: fadeIn 3s ease 0s 1 normal;
	-webkit-animation: fadeIn 3s ease 0s 1 normal;
}
@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}

.contents{
	max-width: 1000px;
}
.wrap{
	width: 95%;
	margin: 0 auto;
}

.inner_750{
	width: 95%;
	max-width: 750px;
	margin: 80px auto;
}

/*PC版769pxまでSP版786px〜*/
@media screen and (min-width: 769px) {
	.sp{
		display: none !important;
	}
}
@media screen and (max-width: 768px) {
	/*共通*/
	.pc{
		display: none !important;
	}
}

/************* 共有設定 *************/
/* 上下余白設定 */
.mt5{margin-top:5px;}
.mt10{margin-top:10px;}
.mt15{margin-top:15px;}
.mt20{margin-top:20px;}
.mt25{margin-top:25px;}
.mt30{margin-top:30px;}
.mt35{margin-top:35px;}
.mt40{margin-top:40px;}
.mt45{margin-top:45px;}
.mt50{margin-top:50px;}

.mb5{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb25{margin-bottom:25px;}
.mb30{margin-bottom:30px;}
.mb35{margin-bottom:35px;}
.mb40{margin-bottom:40px;}
.mb45{margin-bottom:45px;}
.mb50{margin-bottom:50px;}

/* フォントサイズ */
.fs_05em{font-size: 0.5em;}
.fs_08em{font-size: 0.8em;}
.fs_12em{font-size: 1.2em;}
.fs_15em{font-size: 1.5em;}
.fs_20em{font-size: 2em;}

/* フォント太さ */
.fw_b{font-weight: bold;}

/* フォントカラー */
.color_01{color: #FFFDD0;}
.color_pink{color: #F09CC2;}
.color_purple{color: #D994D9;}
.color_gray{color: #7584A0;}

/* マーカー線 */
.border_01 {background: linear-gradient(transparent 55%, #f7e6e9 55%);}

/* line-height */
.lh_14{
	line-height: 1.4;
	display: inline-block;
}

/* センタリング */
.center{text-align: center;}

/* 背景色 */
.bg_pink{
	background: #F09CC2;
	padding: 2px 5px;
	color: #fff;
	font-weight: bold;
}
.bg_point{
	background: #effbff;
	padding: 10px;
}


/* h2設定 */
.contents h2 {
	font-weight: bold;
	border-bottom: 2px solid #F09CC2;
	padding: 0.3em;
	margin-bottom: 30px;
	color: #4F5D77;
	font-size: 18px;
	text-align: left;
}

/************* index_header *************/
h1{
	position: absolute;
	top: 0;
	right: 0;
	font-size: 11px;
	color: #fff;
}
.main{
	width: 100%;
	background: #f4d8e5;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
.main img{
	width: 100%;
	max-width: 1000px;
}

.txt_box{
	width: 80%;
	max-width: 500px;
	margin: 50px auto;
	text-align: center;
	background: #F09CC2;
	padding: 10px;
	opacity: 0.8;
}
.txt_box .frame{
	width: 100%;
	border: 1px solid #fff;
	padding: 15px;
	color: #fff;
	line-height: 1.8;
}
/* ヘッダーバナー */
.header_bnr_area{
  display: flex;
  justify-content: center;
  width: 100%;
  background: #fc73c2;
  overflow: hidden;
	line-height: 0;
}
.header_bnr_area img {
  width: 1000px;
  height: auto;
}
@media screen and (max-width: 768px){
  .header_bnr_area img {
    width: 100%;
  }
}

/************* PC用エリアマップ *************/
.contents_map{
	margin: -100px auto 0;
	padding: 100px 10px 10px;
	background: #F9FAFC;
}

/* エリアボタン */
.contents_map ul li{
	width: calc(100% / 3 - 15px);
	height: 80px;
	display: inline-block;
	margin: 5px;
	border: 1px solid #F09CC2;
	background: #fff;
	text-align: center;
}
.contents_map ul li a{
	display: block;
	padding: 17px 0;
	font-size: 16px;
	position: relative;
	transition: 0.3s;
}
.contents_map ul li a:after{
	content: "\f061";
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	position: absolute;
	right: 10px;
	top: 22%;
	color: #cdd8ea;
	font-size: 40px;
	opacity: 0;
	transition: 0.3s;
}
.contents_map ul li a:hover:after{
	opacity: 1;
	right: 5px;
}
.contents_map ul li a span{
	font-weight: 900;
}


@media screen and (max-width: 768px) {
	/*共通*/
	.contents_map ul li{
		width: calc(98% / 3 - 15px);
		vertical-align: top;
	}
	.contents_map ul li span.fs_08em{
		font-size: 0.5em;
	}
	.contents_map ul li a::before{
		bottom: -8px;
		right: -10px;
	}
	.contents_map ul li a::after{
		bottom: -10px;
		right: -10px;
	}
}

/************* コンテンツバナー *************/
.contents_link{
	margin: 50px auto 0;
	text-align: center;
}
.contents_link li{
	display: inline-block;
	width:  100%;
	max-width: 450px;
}
.contents_link img{
	width: 100%;
	max-width: 450px;
}

.bnr_box{
  position: relative;
	display: block;
}
.bnr_box.z_01{
	z-index: 2;
}
.bnr_box.z_02{
	z-index: 1;
}
.bnr_box .circle{
  position: absolute;
  bottom: -20px;
  right: -20px;
  width: 120px;
  height: 120px;
  z-index: 2;
}
.bnr_box .circle img{
  position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
  animation: 15s linear infinite circle;
}
@keyframes circle {
  0% { transform: rotateZ(0);}
  100% { transform: rotateZ(360deg); }
}
.bnr_box .before_hover{
  opacity: 1;
  transition: 0.2s;
  z-index: 1;
}
.bnr_box .after_hover{
  opacity: 0;
  transition: 0.2s;
  z-index: 2;
}
.bnr_box:hover .before_hover{
  opacity: 0;
}
.bnr_box:hover .after_hover{
  opacity: 1;
  z-index: 2;
}
.bnr_box .circle::after{
  content: "\f061";
  font-family: FontAwesome;
  position: absolute;
  /* right: 30px; */
  /* bottom: 53px; */
	top: 40%;
	left: 50%;
	translate: -50% -50%;
  font-weight: 600;
  font-size: 20px;
  transition: 0.2s;
  color: #dc439b;
  z-index: 2;
}
.bnr_box:hover .circle::after{
  color: #43d3dc;
}


/************* コラム *************/
.contents_column{
	margin: 60px auto 0;
	text-align: center;
}
.contents_column .wrap{
	border: 1px solid #f09cc3;
	padding: 50px 10px 30px;
	position: relative;
}
.contents_column .title{
	width: 260px;
	position: absolute;
	top: -20px;
	left: -3px;
	background: #fff;
}
.contents_column .wrap img{
	width: 250px;
}
/* アコーディオン設定 */
.acd-check{
	display: none;
}
.acd-label{
	position: relative;
	display: block;
	border-bottom: 1px solid #bababa;
	padding: 10px 20px 10px 10px;
	text-align: left;
	font-size: 16px;
	font-weight: bold;
}
.acd-label:after{
	content: "\f0dd";
    font-family: FontAwesome;
    position: absolute;
	font-size: 11px;
    right: 5px;
    bottom: 40%;
	transition: 0.3s;
}
.acd-content{
	background: #F9FAFC;
	height: 0;
	opacity: 0;
	padding: 0 10px;
	transition: 0.3s;
	visibility: hidden;
	margin-bottom: 10px;
}
.acd-check:checked + .acd-label + .acd-content{
	height: auto;
	opacity: 1;
	padding: 20px;
	visibility: visible;
	text-align: left;
	font-size: 14px;
	line-height: 1.8;
}

.acd-check:checked + .acd-label:after{
	transform:rotate(180deg);
}

@media screen and (max-width: 768px){
  .acd-label{
  	font-size: 14px;
  }
}


/************* What's PJ? *************/
.contents_discription{
	margin: 50px auto 0;
}
.contents_discription .title{
	width: 100%;
	max-width: 500px;
}
.contents_discription .title img{
	width: 100%;
}
.contents_discription p a{
	color: #F09CC2;
}

/************* footer *************/
.footer{
	background: #3B4352;
	margin-top: 50px;
	color: #fff;
}
.footer .wrap{
	width: 95%;
	max-width: 1000px;
	padding: 50px 10px;
	margin: 0 auto;
}
.footer .foot-logo{
	display: block;
	margin: 0 auto 40px;
	width: 100%;
	max-width: 350px;
}
.footer .foot-logo img{
	width: 100%;
	height: auto;
}

.footer .nav_wrap {
	display: grid;
	grid-template-areas:
		"btn"
		"area"
		"bottom";
	/* grid-template-columns: auto 280px; */
	/* grid-template-rows: auto auto; */
	justify-items: center;
	gap: 40px 20px;
	/* width: fit-content; */
	margin-inline: auto;
}
.footer .nav_area_link{
	grid-area: area;
	display: grid;
	grid-auto-flow: column;
	grid-template-rows: repeat(4, 1fr);
	gap: 1em 20px;
}
/* .footer .nav_area_link a{
	margin-bottom: 1em;
} */
/* .footer .btn_box:after, .footer .btn_box:after *:after{ display: none;} */
.footer .btn_box{
	grid-area: btn;
	display: flex;
	justify-content: center;
	gap: 8px;
	width: 100%;
	text-align: center;
	margin: 0 auto;
}
.footer .btn_box a{
	display: block flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	width: 100%;
	max-width: 280px;
	border: 1px solid #fff;
	border-radius: 30px;
	padding: 10px 20px;
	color: #fff;
	transition: 0.3s;
	/* margin-right: 5px; */
	/* margin-bottom: 8px; */
}
.footer .btn_box a.btn_member img{
	filter: invert(100%) sepia(7%) saturate(3%) hue-rotate(84deg) brightness(105%) contrast(100%);
}
.footer .btn_box a:first-of-type{
	background: #fff;
	color: #3B4352;
}
.footer .btn_box a:first-of-type img{
	filter: invert(24%) sepia(25%) saturate(471%) hue-rotate(181deg) brightness(90%) contrast(88%); /* ネイビー */
}
/* .footer .btn_box a.btn_member:hover{
	color: #3B4352;
	background: #fff;
	opacity: 1;
} */
.footer .btn_box a.btn_sns:hover{
	border: 1px solid #3B4352;
	color: #3B4352;
	background: #fff;
	opacity: 1;
}
.footer .nav_bottom{
	grid-area: bottom;
	justify-items: start;
	display: flex;
	gap: 15px;
}
.footer .nav_bottom .other{
  padding-left: 15px;
  border-left: 1px solid #7c7d81;
}
.footer .nav_wrap:after, .footer ul li:after { display: none;}

/* .footer ul{
	display: block;
	text-align: center;
	margin-bottom: 20px;
} */
/* .footer ul li{
	display: inline-block;
	margin: 0 5px 5px 0px;
	vertical-align: bottom;
} */
.footer ul li a{
	display: block;
	/* padding-left: 10px; */
	text-align: left;
	color: #fff;
}
.footer .copy{
	text-align: center;
	padding: 10px 0;
	font-size: 11px;
}

@media screen and (max-width: 620px) {
	.footer .nav_area_link{
		grid-template-rows: repeat(6, 1fr);
		gap: 1em;
		width: 100%;
	}
	.footer .nav_bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5em;
		width: 100%;
  }
  .footer .nav_bottom .other {
    padding: 0;
    border: none;
  }
}