@charset "UTF-8";/*----------------------------------------------------------更新日：2024年7月31日=PC(960以上)=PC & タブレット(960以下)=スマホ(768px以下)-------------------------------------------------------------*//*==================================================================	layout setting===================================================================*//* Wordpress ui fixed */#wpadminbar {	position: fixed !important;	top: auto !important;	bottom: 0 !important;}/*------------------------------------------	Common setting------------------------------------------*/*, *:before, *:after {  box-sizing: border-box;}body {  overflow-x: hidden;	width: 100%;  min-height: 100vh;	background: #12171b;	font-family:"Noto Sans JP", "Noto Sans Japanese", sans-serif;	line-height: 1.6;	font-size: 16px;	font-weight: 500;}.pc { display: inherit; }.sp { display: none; }a, button, img {  text-decoration: none;  color: inherit;}a, button, label { cursor: pointer; }input, textarea, select, button {  outline: none;  font-size: inherit;  font-family: inherit;  font-weight: inherit;}img {  max-width: 100%;  vertical-align:bottom;}@media only screen and (max-width:900px) {  body { font-size: 1.67vw; }}@media only screen and (max-width:768px) {	body { font-size: 4vw; }	.pc { display: none !important; }	.sp { display: inherit!important; }}/*------------------------------------------	#wrap------------------------------------------*/#wrap {	position: relative;	padding-top: 70px;  color: #FFF;}.baseWidth {	max-width: 900px;	margin: 0 auto;}@media only screen and (max-width:900px) {  .baseWidth { padding: 0 1em; }}/*------------------------------------------	#header------------------------------------------*/#header {	position: absolute;	top: 0;	width: 100%;	background: #12171b;	z-index: 9999;}#header.fixed {  position: fixed;	top: 0;	left: 0;  box-shadow: 0 0 6px 0 rgba(0,0,0,0.2);}#header * {	margin: 0;	padding: 0;	text-decoration: none;}#header .inner {	display: flex;	justify-content:space-between;	align-items: center;	width: 100%;	max-width: 900px;	margin: 0 auto;}#header #hLogo {	flex-shrink: 0;	width: 190px;	margin-right: 1em;}#mainNav {	display: flex;	justify-content: flex-end;	align-items: center;}#mainNav li { position: relative; }#mainNav li:not(.child li),#mainNav > li:not(:first-of-type) { margin-left: 2em; }#mainNav a {  font-weight: 600;	transition: 0.2s;}#mainNav a.contact {	display: flex;	justify-content: center;	align-items: center;	width: 140px;	height: 70px;	background: #f20c88;}#mainNav a:hover {	opacity: 0.6;}#mainNav .hLogo a:hover {	opacity: 1;}#mainNav .toggle { display: none; }#mainNav .child {	display: none;  position: absolute;	bottom: 0;  left: 50%;  width: max-content;	background:rgba(251, 16, 88, 1);	transform: translate(-50%,100%);	transition: 0.2s;}#mainNav .child li:not(:last-of-type) { border-bottom:1px solid rgba(0,0,0,0.2); }#mainNav .child a {  display: flex;  justify-content: space-between;  align-items: center;  padding: 0.25em 1em;  font-weight: normal;  color: #FFF;}#mainNav li:hover .child { display: block; }#mainNav .child a:hover {  background: rgba(0,0,0,0.3);}@media only screen and (max-width:900px) {  #mainNav li:not(.child li) { margin-left: 2em; }}@media only screen and (max-width:768px) {  #header {    font-size: 1em;  }	#header .inner {		justify-content: space-between;		height: 14vw;		padding: 0 0 0 1em;  }  #header .hLogo {    width: 15vw !important;		margin-right: 0;  }  #spMenu {    display: flex;    flex-direction: column;    justify-content:center;    align-items: center;    position: relative;    width: 14vw;    height: 14vw;    background: #8dcfd3;  }    #spMenu span,	#spMenu:before,	#spMenu:after {		content: "";		display: inline-block;		position: absolute;		width: 8vw;		height: 2px;    background: #12171b;		transition: 0.2s;	}	#spMenu:before { top: 30%; }	#spMenu:after { bottom: 30%; }	#spMenu.open:before,	#spMenu.open:after {		top: auto;		bottom:auto;	}	#spMenu.open:before { transform: rotate(45deg); }	#spMenu.open:after { transform: rotate(-45deg); }	#spMenu.open span { opacity: 0; }    #gNav {    overflow: auto;    position: fixed;    top: 14vw;    right:0;    width: 100vw;    height: calc(100% - 14vw);    background: #8dcfd3;		transition: 0.2s;    opacity: 0;		transform: translateX(100%);		z-index: 999;  }  #spMenu.open + #gNav {    opacity: 1;		transform: translateX(0%);  }  #mainNav {    display: block;		width: 100%;  }  #mainNav li,  #mainNav li:not(.child li) {    margin: 0;    border-bottom: 1px solid rgba(0,0,0,0.4);  }  #mainNav a,  #mainNav .toggle {    display: block!important;    position: relative;		width: 100% !important;		height: auto!important;    margin: 0;    padding: 3vw 4vw !important;    font-size: 1em !important;		font-weight: 700 !important;    color: #000;  }	#mainNav a:before {		display: none;	}  #mainNav a:after,  #mainNav .toggle:after {    display: block;    position: absolute;    top: 50%;    right: 4vw;    content: "";    width: 2.4vw;    height: 2.4vw;    border-top: 2px solid #000;    border-right: 2px solid #000;    transform:translateY(-50%) rotate(45deg);  }  #mainNav .toggle:after {    transform:translateY(-50%) rotate(135deg);  }  #mainNav .toggle.active { background: #DDD!important; }  #mainNav .toggle.active:after {    transform:translateY(-50%) rotate(-45deg);  }  #mainNav .child {    display: none;    position:static;    width: auto;    background: #FFF;    transform: translate(0);    opacity: 1;    z-index: 1;  }  #mainNav li:hover .child { display:none; }  #mainNav .child a {    display: flex;    justify-content: flex-start;		background:rgba(251, 16, 88, 1);		color: #FFF;  }	#mainNav .child a:after {		border-color: #FFF;	}  #mainNav .child span { color:#343B4B; }}/*------------------------------------------	.breadcrumbs------------------------------------------*/.breadcrumbs,.breadcrumbs a {	white-space: nowrap;	color: rgba(255,255,255,0.5);}.breadcrumbs .current-item {	color: rgba(255,255,255,0.5);}.breadcrumbs {	display: flex;  flex-wrap: wrap;	align-items: center;	position: absolute;	left: 50%;  background: none;  z-index: 10;	width:100%;	max-width: 900px;  padding: 0.5em 0;  font-size: 0.8em;	transform: translateX(-50%);}.breadcrumbs > span + span:before {	content: "\0bb";	margin: 0 0.5em;}.breadcrumbs a { border-bottom: 1px solid; }.breadcrumbs a:hover { border-bottom: 0; }@media only screen and (max-width:900px) {  .breadcrumbs {		padding-left: 1em;    padding-right: 1em;    font-size: 0.6em;  }}@media only screen and (max-width:768px) {  .breadcrumbs {    padding-left: 1em;    padding-right: 1em;  }}/*------------------------------------------	Main parts------------------------------------------*/.youtube {  position: relative;  width: 100%;  height: 0;  padding-top: 56.25%;}.youtube iframe {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;}.new {  display: inline-block;  padding: 0 0.25em;  background: #ebf400;  line-height: 1.2;  font-size: 0.8em;  font-weight: bold;  color: #006db2;}/*.line {  background:linear-gradient(transparent 70%, #FFFA81 70%);  font-weight: 500;  color: #029492;}*/.btnArea {	padding: 5em 0 2em;}.btn {  display: flex;  justify-content: center;  align-items: center;  width: max-content;  max-width: 100%;	min-width: 300px;	margin: 0 auto;  height: 70px;  padding: 0 1em;	background: #f20c88;	font-weight:bold;	transition: 0.2s;}.btn:hover { opacity: 0.6; }@media only screen and (max-width:900px) {}@media only screen and (max-width:768px) {}/* module parts------------------------------------------------------------*/.overflow { overflow: auto; }.overflowX { overflow-x: auto; }.overflowY { overflow-y: auto; }.flex { display: flex; }.center { text-align: center; }.left { text-align: left; }.right { text-align: right; }.decimal,.decimal li { list-style:decimal; }.alpha { list-style: lower-alpha; }.roman { list-style: lower-roman; }.pre {  padding: 1em;  background: #555;  border-radius: 10px;  white-space: pre-wrap;  font-size: 0.875em;  color: #FFF;}a.txtLink:not(:hover) {  border-bottom: 1px solid;  color: #f20c88;}