@charset "utf-8";




/*===============================================
●画面の横幅が769px以上
===============================================*/
@media screen and (min-width : 769px ){
#pc------------------------------------------- {
}
body {
	background-color: #EADDFE;
}
#catch p {
	font-size: 32px;
	line-height: 1.6em;
	margin-top: 50px;
	margin-bottom: 30px;
}
#pnav div {
	display: flex;
	justify-content: center;
	background-color: #CCA7FF;
}
#catch ul {
	display: flex;
	justify-content: center;
	background-color: #CCA7FF;
	height: 90px;
}
#catch ul li {
	border-right: 2px solid #0C1036;
	margin-top: 10px;
	margin-bottom: 10px;
}
#catch ul li a {
	padding-left: 15px;
	padding-right: 15px;
}
/* 固定時のスタイル */
#pnav.fixed {
  position: fixed;
  top: 100px;
  left: 0;
  width: 100%;
  z-index: 1000;
}
/* ページ上部に余白を持たせるためのダミー */
#pnav-placeholder {
  display: none;
  height: 0;
}
main .inner {
	width: 1100px;
	margin-left: auto;
	margin-right: auto;
}
 h2 {
 	width: 758px;
	margin-left: auto;
	margin-right: auto;
 }
 h2+p {
 	font-size: 32px;
	line-height: 1.6em;
 }
h3 {
	width: 800px;
	background-color: #FEF6A8;
	display: flex;
	font-size: 48px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	margin-top: 30px;
	line-height: 90px!important;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-bottom: 15px;
}
h3.line2 {
	line-height: 1.1em;
}
h3 figure {
}
h3.left {
	text-align: left;
	padding-left: 20px;
}
h3 span {
	margin-left: 15px;
}
h3.left+p {
	text-align: left;
	margin-left: 30px;
	font-size: 32px;
	line-height: 1.5em;
}
h3.right {
	text-align: left;
	margin-left: 300px;
}
h3.right figure {
	margin-left: 20px;
}
h3.right+p {
	text-align: left;
	font-size: 32px;
	line-height: 1.5em;
	margin-left: 300px;
}





#nonbiri {
	padding-top: 50px;
	margin-bottom: 100px;
}
#rekishi {
	background-color: #FFFDEE;
	padding-top: 50px;
	padding-bottom: 100px;
}
#rekishi h3 {
	background-color: #E5D4FE;
}
#night {
	padding-bottom: 100px;
	padding-top: 50px;
}
#rerax {
	background-color: #FFFDEE;
	padding-bottom: 100px;
	padding-top: 50px;
}
#rerax h3 {
	background-color: #E5D4FE;
}
#tanoshimi {
	padding-top: 50px;
}
#tanoshimi .fig01 {
	position: relative;
}
#tanoshimi .fig02 {
	position: relative;
}
#tanoshimi .fig04 {
	position: relative;
}
#tanoshimi .btn a {
	background-color: #CBACFC;
	border-radius: 40px;
	width: 678px;
	height: 120px;
	padding-top: 40px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	font-size: 50px;
	text-decoration: none;
	font-family: 'Noto Serif JP', serif;
	color: #0C1036;
	margin-top: 100px;
	transition: 0.3s;
}
#tanoshimi .btn a:hover {
	opacity: 0.7;
	transition: 0.3s;
}
#tanoshimi .btn a img {
	width: 162px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 25px;
	display: block;
}





#contact {
	color: #0A1335;
	padding-top: 80px;
	padding-bottom: 80px;
}
#contact h2 {
	font-size: 60px;
	color: #0A1335;
	font-family: 'Noto Serif JP', serif;
}
#contact dl {
	text-align: left;
	width: 450px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	line-height: 1.9em;
}
#contact dl::after {
	content: ".";   
  display: block;   
  height: 0;   
  clear: both;   
  visibility: hidden;  
}
#contact dl dt {
	float: left;
	clear: left;
}
#contact dl dd {
	float: left;
}
#contact dl dd a {
	color: #0A1335;
	text-decoration: none;
}
#pagetop {
	text-align: right;
	margin-right: 50px;
	margin-top: -70px;
}
#pagetop img {
	width: 70px;
}

}



/*===============================================
●画面の横幅が768pxまで
===============================================*/
@media screen and (max-width:768px){
	
/*===============================================
●sp-tablet
===============================================*/
#sptablet------------------------------------------- {
}
body {
	background-color: #EADDFE;
}
#catch p {
	font-size: 4.10256410256vw;
	line-height: 1.6em;
	margin-top: 5vw;
	margin-bottom: 3vw;
}
#catch ul {
	display: flex;
	background-color: #CCA7FF;
}
/* 固定時のスタイル */
#pnav.fixed {
  position: fixed;
  top: 13vw;
  left: 0;
  width: 100%;
  z-index: 1000;
}
/* ページ上部に余白を持たせるためのダミー */
#pnav-placeholder {
  display: none;
  height: 0;
}
 h2 {
 	width: 96%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 5vw;
 }
 h2+p {
 	font-size: 4.10256410256vw;
	line-height: 1.6em;
 }
h3 {
	width: 70.5128205128vw;
	height: 16.6666666667vw;
	background-color: #FEF6A8;
	display: flex;
	font-size: 6.15384615385vw;
	line-height: 16.6666666667vw;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	margin-top: 3vw;
}
h3.line2 {
	line-height: 1.1em;
}
h3.line2 span {
	padding-top: 1.5vw;
}
h3 + p {
	letter-spacing: 0.05em;
}
h3 figure {
	width: 11.5384615385vw;
	padding-top: 2.8vw;
}
h3.left {
	text-align: left;
	padding-left: 5vw;
}
h3.left span {
	margin-left: 1vw;
}
h3.left+p {
	text-align: left;
	margin-left: 5vw;
	font-size: 4.10256410256vw;
	line-height: 1.5em;
	margin-top: 1vw;
}
h3.right {
	margin-left: 25.5vw;
	text-align: left;
}
h3.right figure {
	margin-left: 2vw;
	margin-right: 1vw;
}
h3.right+p {
	text-align: left;
	margin-left: 25.5vw;
	font-size: 4.10256410256vw;
	line-height: 1.5em;
	margin-top: 1vw;
}





#nonbiri {
	margin-bottom: 15vw;
}
#rekishi {
	background-color: #FFFDEE;
	padding-top: 1vw;
	padding-bottom: 10vw;
	margin-bottom: 2vw;
}
#rekishi h3 {
	background-color: #E5D4FE;
}
#rekishi .fig01 {
	width: 23.4615384615vw;
	position: relative;
	top: 1vw;
}
#rekishi .fig02 {
	width: 8.07692307692vw;
	margin-right: 3vw;
}
#rekishi .fig03 {
	position: relative;
	top: 1vw;
}
#night {
	padding-bottom: 15vw;
}
#rerax {
	background-color: #FFFDEE;
	
	padding-bottom: 10vw;
}
#rerax h3 {
	background-color: #E5D4FE;
}
#tanoshimi .fig01 {
	width: 13.0769230769vw;
	position: relative;
	top: 0.5vw;
}
#tanoshimi .fig02 {
	width: 9.48717948718vw;
	position: relative;
	top: 0.5vw;
}
#tanoshimi .fig04 {
	width: 7.82051282051vw;
	position: relative;
	top: 0.5vw;
}
#tanoshimi .btn a {
	display: block;
	width: 86.9230769231vw;
	height: 16.0769230769vw;
	padding-top: 5vw;
	background-color: #CBACFC;
	margin-left: auto;
	margin-right: auto;
	border-radius: 6.41025641026vw;
	font-size: 6.41025641026vw;
	text-decoration: none;
	font-family: 'Noto Serif JP', serif;
	color: #0C1036;
	font-weight: 500;
	margin-top: 12vw;
}
#tanoshimi .btn a img {
	width: 20.7692307692vw;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2vw;
}





#contact {
	color: #fff;
	padding-top: 7vw;
	padding-bottom: 7vw;
	color: #0A1335;
}
#contact h2 {
	font-size: 6.41025641026vw;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
}
#contact dl {
	text-align: left;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2vw;
}
#contact dl::after {
	content: ".";   
  display: block;   
  height: 0;   
  clear: both;   
  visibility: hidden;  
}
#contact dl dt {
	float: left;
	clear: left;
	font-weight: 500;
}
#contact dl dd {
	float: left;
	font-weight: 500;
}
#contact dl dd a {
	color: #0A1335;
	text-decoration: none;
}
#pagetop {
	text-align: right;
	margin-right: 5vw;
	margin-top: -7vw;
}
#pagetop img {
	width: 8.97435897436vw;
}
}



/*===============================================
●画面の横幅が400pxまで
===============================================*/
@media screen and (max-width:400px){
/*===============================================
●sp400
===============================================*/
#sp400------------------------------------------- {
}
}



/*===============================================
●画面の横幅が320pxまで
===============================================*/
@media screen and (max-width:320px){
/*===============================================
●sp320
===============================================*/
#sp320------------------------------------------- {
}
}



/*===============================================
●画面の横幅が481pxから768pxまで
===============================================*/
@media screen and (min-width:481px) and (max-width:768px) {
/*===============================================
●tablet
===============================================*/
#tab------------------------------------------- {
}
}