@charset "utf-8";

@media only screen and (max-width:991px) {}
@media only screen and (max-width:767px) {}
@media only screen and (max-width:374px) {}

/*************************************************

 page common

*************************************************/

/* newsBlock
--------------------------------------*/
.newsBlock {
	margin-bottom: 30px;
	position: relative;
}
@media only screen and (max-width:767px) {
	.newsBlock {
		margin-bottom: 20px;
	}
}
.u-strong{
	font-size: 26px;
}
@media only screen and (max-width:767px) {
	.u-strong{
		font-size: 22px;
	}
}
/* newsBlock
--------------------------------------*/
.popup{
	position: absolute;
	left: 0px;
	top: -70px;
	padding: 8px 30px;
	text-align: center;
	background-color: #fff;
	border: 3px solid #D59F9F;
	/* color: #D59F9F; */
	border-radius: 100px;
	display: flex;
	gap: 4px;
	justify-content: center;
	align-items: center;
}
.popup::after{
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #D59F9F;
}
.popup_sub{
	font-size: smaller;
}
.popup_main{
	font-size: 20px;
}
.popup_main .underline {
	background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FAF188 0%) repeat scroll;
}
@media only screen and (max-width:767px) {
	.popup{
		left: 0px;
		top: -48px;
		padding: 4px 20px;
	}
	.popup::after{
		margin-left: -10px;
		border: 10px solid transparent;
		border-top: 10px solid #D59F9F;
	}
	.popup_main{
		font-size: 15px;
	}
}


/* colorBigTitle
--------------------------------------*/
.colorBigTitle {
	margin-bottom: 30px;
	padding: 20px;
	color: #fff;
	font-size: 30px;
}
.aqua .colorBigTitle {
	background-color: #81B2B2;
}
.sakura .colorBigTitle {
	background-color: #D59F9F;
}
@media only screen and (max-width:767px) {
	.colorBigTitle {
		margin: 0 -20px 30px;
		padding: 10px 20px;
		font-size: 20px;
	}
}


/* schedule
--------------------------------------*/
.schedule {
	display: table;
	width: 100%;
	margin-bottom: 40px;
	font-size: 26px;
	table-layout: fixed;
}
.schedule > * {
	box-sizing: border-box;
	display: table-cell;
	letter-spacing: 0.05em;
}
.schedule .year {
	width: 120px;
	border-right: #707070 solid 1px;
}
.bordernone{
	border-right: none !important;
}
.txtaqua{
	color: #81B2B2;
}
.schedule .list {
	padding-left: 40px;
}
.schedule .list li {
	display: flex;
	flex-wrap: wrap;
}
.schedule .list .day {
	/* width: 4.4em; */
	text-align: right;
}

.schedule .list .day .invisible {
	visibility: hidden;
}

.schedule .list li p {
	font-size: 18px;
}

@media only screen and (max-width:767px) {
	.schedule {
		margin-bottom: 30px;
		font-size: 18px;
	}
	.schedule .year {
		width: 80px;
	}
	.schedule .list {
		padding-left: 16px;
	}
	.schedule .list .day {
		/* width: 4.4em; */
		width: auto;
		text-align: right;
	}
}


/* detail
--------------------------------------*/
.detail .title {
	font-size: 22px;
}
.detail .title {
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: #000 solid 1px;
}
.detail .title_Border_none {
	margin-bottom: 0;
	border-bottom: none;
}

.aqua .detail .title {
	color: #81B2B2;
	border-bottom-color: #81B2B2;
}
.sakura .detail .title {
	color: #D59F9F;
	border-bottom-color: #D59F9F;
}
.detail .dotsList {
	font-size: 14px;
	line-height: 2;
}
.detail .dotsList_has_Border {
	border-bottom: #81B2B2 solid 1px;
	padding-bottom: 20px;
}
.detail .dotsList li {
	position: relative;
	padding-left: 1.7em;
}
.detail .dotsList li:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '○';
}
.detail .dotsList li .listChild {
	padding-left: 0.9em;
}
.detail .dotsList li .listChild__name {
	display: flex;
}.detail .dotsList li .listBold {
	font-weight: 600;
}
.detail .numList {
	font-size: 14px;
	line-height: 1.6;
	counter-reset: number 0;
}
.detail .numList li {
	position: relative;
	padding-left: 1.7em;
}
.detail .numList li + li {
	margin-top: 0.4em;
}
.detail .numList li:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	counter-increment: number 1;
	content: counter(number)'.';
}
.detail .note {
	margin-top: 30px;
	padding: 20px;
	background-color: #F4F3F2;
}
.detail .note li {
	position: relative;
	padding-left: 1em;
	font-size: 16px;
}
.detail .note li + li {
	margin-top: 5px;
}
.detail .note li:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '・';
}
.detail .inBlock {
	display: block;
}
.detail .explain_box{
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	border: 2px solid #81B2B2;
	border-radius: 15px;
	padding-top: 30px;
	padding-bottom: 30px;
}
.detail .explain_title{
	color: #fff;
	font-size: 26px;
	background-color: #81B2B2;
	border-radius: 50px;
	padding-top: 5px;
	padding-bottom: 5px;
	margin: 0 70px 10px 70px;
}
.aqua .detail .explain_box {
	border-color: #81B2B2;
}
.sakura .detail .explain_box {
	border-color: #D59F9F;
}
/* .sakura .detail .explain_box .explain_title{
	background-color: #D59F9F;
} */
.sakura .explain_title{
	background-color: #D59F9F;
}
.stress{
	background-color: #FAF188 !important;
	color: #000 !important;
}
.detail .explain_title h3{
	padding-left: 15px;
	padding-right: 15px;
}
.detail .explain_box h4{
	font-size: 20px;
	/* margin-top: 5px; */
}
.detail .explain_box p{
	font-size: 16px;
}
.detail .explain_box a{
	/* font-size: 20px;
	text-decoration: none;
	color: #000;
	margin: 0 auto; */
	text-decoration: none;
	transition: opacity 0.4s;
}
/* .detail .explain_box a span{
	background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FAF188 0%) repeat scroll;
} */
.detail .explain_box a:hover{
	opacity: .6;
}
.detail .fz_16px{
	font-size: 16px;
}
.fz_16px{
	font-size: 16px;
}



@media only screen and (max-width:767px) {
	.detail .title {
		font-size: 18px;
	}
	.detail .title {
		margin-bottom: 15px;
		padding-bottom: 7px;
	}
	.detail .title_Border_none {
		margin-bottom: 0;
	}
	.detail .note {
		padding: 15px;
	}
	.detail .note li {
		position: relative;
		padding-left: 1em;
		font-size: 13px;
	}
	.detail .note li + li {
		margin-top: 5px;
	}
	.detail .note li:before {
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		content: '・';
	}

	.detail .explain_box{
		padding-top: 25px;
		padding-bottom: 25px;
	}
	.detail .explain_title{
		font-size: 22px;
		border-radius: 25px;
		padding-top: 5px;
		padding-bottom: 5px;
		margin: 0 15px 23px 15px;
	}
	.detail .explain_title h3{
		padding-left: 15px;
		padding-right: 15px;
	}
	.detail .explain_box h4{
		font-size: 16px;
		margin-top: 0;
	}
	.detail .explain_box p{
		font-size: 16px;
		margin: 0 15px 5px 15px;
	}
	.detail .explain_box a{
		font-size: 16px;
		margin: 0 15px 5px 15px;
	}
	.displaynone_sp{
		display: none;
	}
}


/* incontacts
--------------------------------------*/

.incontacts .txt {
	margin-bottom: 5px;
	font-size: 18px;
	line-height: 1.9;
}
.incontacts .txt .underline {
	background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FAF188 0%) repeat scroll;
}
.bordernone .underline {
	background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FAF188 0%) repeat scroll;
}
/* .incontacts a {
	color: #000;
	font-size: 14px;
	text-decoration: none;
} */
.incontacts strong {
	font-size: 28px;
	font-weight: 500;
}
.incontacts .txt .fa-regular{
	font-size: 20px;
}
@media only screen and (max-width:767px) {

	.incontacts .txt {
		font-size: 16px;
	}
}

.downloadBtn a {
	position: relative;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	/* width: 100%; */
	max-width: 370px;
	padding: 10px 30px;
	color: #fff;
	text-decoration: none;
	background-color: #D59F9F;
	border-radius: 30px;
	font-size: 18px;
	margin: auto;
}
.downloadBtn a:before {
	position: absolute;
	top: 0;
	right: 30px;
	display: block;
	content: '';
	width: 17px;
	height: 100%;
	background: url(../images/common/icon-download.svg) no-repeat center center / 100% auto;
}
@media only screen and (max-width:767px) {
	.downloadBtn a {
		/* width: 	100%; */
		text-align: left;
	}
	.downloadBtn a:before {
		right: 20px;
	}
}

.txt a{
	color: #D59F9F;
	transition: opacity 0.4s;
}
.txt a:hover{
	opacity: 0.6;
}

/* ----------追加文言--イベントニュースセクション------------- */
.eventItem{
	margin-top: 32px;
}
.eventItem .eventTxt{
	display: inline-block;
	padding: 16px 24px;
	padding-bottom: 20px;
	border-radius: 16px;
	background: #e8f1ec;
}
.eventItem .eventTxt p{
	/* margin-bottom: 12px; */
	font-size: 20px;
}
.eventItem a{
	text-decoration: none;
	color: #fff;
	padding: 8px 24px;
	border-radius: 100px;
	background: #D59F9F;
	display: inline-block;
	transition: 0.3s;
}
.eventItem a:hover{
	opacity: 0.6;
}

.eventItem .undo{
	filter: grayscale(100%);
  pointer-events: none;
  cursor: default;
	opacity: 0.5;
}

.eventBtn{
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	align-items: center;
}
.eventBtnInner{
	display: flex;
	gap: 16px;
	align-items: center;
}
.eventBtnInner .fa-regular{
	font-size: 20px;
}
.eventBtnInner img{
	width: 20px;
}
@media only screen and (max-width:767px) {
	.eventItem .eventTxt p{
		/* margin-bottom: 12px; */
		font-size: 16px;
	}
	.eventItem .eventTxt{
		display: inline-block;
		padding: 12px 16px;
		padding-bottom: 16px;
		border-radius: 16px;
		background: #e8f1ec;
	}
	.eventBtn{
		flex-direction: column;
		align-items: flex-start;
	}
}
.u-line{
	text-decoration: underline;
  text-decoration-thickness: 5px; 
  text-decoration-color: #D59F9F; 
  text-underline-offset: 8px; 
  text-decoration-skip-ink: none; 
}
@media only screen and (max-width:767px) {
	.u-line{
		text-decoration: underline;
		text-decoration-thickness: 4px; 
		text-decoration-color: #D59F9F; 
		text-underline-offset: 8px; 
		text-decoration-skip-ink: none; 
	}
}
.lineWrap{
	display: flex;
	align-items: center;
}
.lineItem{
	width: 30px;
	flex-shrink: 0;
	height: 30px;
	margin-left: 8px;
}
@media only screen and (max-width:767px) {
	.lineItem{
		width: 40px;
		height: 40px;
	}
}