/* ------------------------------　　
	全体のこと
------------------------------ */

.btn-attention-block-large, .entry-style a.linkBtn, .entry-style a.linkBtn:link, .entry-style a.linkBtn:visited, .linkBtn, .linkBtn:visited{
	border-radius: 8px;	
}

.entry-style h3.bgColor::before{
	background: #DED7F1;
}

.entry-style h3.bgColor:after{
	background: none;
}

.header-item-title a[href^="tel:"]{
	display: inline-block;
	text-align: end;
}

.TopPage .topicpath{
	display: none;
}

.entry-sub-category-display{
	display: none;
}

.UserAuth__administrator .entry-sub-category-display{
	display: block;
}


#bgWhite .AccentOutWrap.safeColor-pale .AccentTitle__text,.IndexPage li.acms-admin-g-col-3 a,.IndexPage li.GroupLink__list a .GroupLink__title{
	font-family: "Noto Serif JP", serif;
	font-weight: 400;
}


li.global-nav-item a.global-nav-link,.footer-group,.topicpath,#bgWhite span.mini,#bgWhite .AccentText__wrap p.AccentText,.question .entry-text-unit p,.entry-style .AccentText,.EntryPage p,.EntryPage table{
	font-family: "Zen Kaku Gothic New","Noto Serif JP", Segoe UI, Roboto, Helvetica Neue, Arial, YuGothic, Yu Gothic, "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
	font-weight: 400;
}

li.global-nav-item a.global-nav-link{
	font-weight: 500;
}

li.global-nav-item .global-nav-link{
}

.TopEntry__outWrap{
	padding-bottom: 0;
}

.footer{
	margin-top: 0;
	border-top: unset;
}

.footer-nav-item a{
	margin-bottom: 3rem;
}

.custom_bgColor.widthVw100_on.cover-cover .AccentOutWrap.-pcLayout1Column,#erea .AccentOutWrap.-mobileLayout1Column{
	box-shadow: 0px 0px 8px #00000029;
	border-radius: 8px;
	padding: 60px;
}

.AccentOutWrap.-pcLayout1Column.whiteColor .AccentContents__wrap{
	margin-top: 45px;
}

.pager-link{
	background:#917BD1;
}

.pager li.cur{
	color:#917BD1;
	border: 2px solid #917BD1;;
}

.pager-link:hover{
	background:#917BD1;
}

.entry-header-time{
	display: none;
}

@media (min-width: 769px) and (max-width: 1024px) {
	.custom_bgColor.widthVw100_on {
		margin-right: calc(50% - 50vw + 8px);
		margin-left: calc(50% - 50vw + 7px);
		padding-right: calc(50vw - 50%);
		padding-left: calc(50vw - 50%);
	}
}

@media (min-width: 820px) and (max-width: 1600px) {
	.acms-container{
		max-width: 60rem;
	}
	.global-navSubWrap li.global-nav-item {
		margin: 0 0.5vw;
	}
}




@media (max-width: 820px){
	.acms-container {
		max-width: 47rem;
	}
	.custom_bgColor.widthVw100_on.cover-cover .AccentOutWrap.-pcLayout1Column,#erea .AccentOutWrap.-mobileLayout1Column{
		padding: 30px;
	}
}

@media (max-width: 63.9988rem) {
.header {
	position: relative;
	}
}


/* ------------------------------　　
	ヘッダー
------------------------------ */
a[href^="tel:"]{
	border-bottom: none;
	line-height: 0;
}

.header{
	box-shadow: unset;
}

.main-visual-box{
	display: none;
}

.main-visual-bg.-showPc{
	background-position: center;
	background-repeat: no-repeat;
}

.header-wrap{
	background: #FFF;
}

.global-navSubWrap {
	display: flex;
	align-items: center;
	height: 100%;
}

.global-navSubWrap .global-nav-item {
		margin: 0 1.5vw;
}


li.global-nav-item .global-nav-link{
		font-size: 18px;
		white-space: nowrap;
}

.global-nav-item:hover > .global-nav-list .global-nav-item a{
		white-space: normal;
}

@media (min-width: 600px) {
	.main-visual-bg.-showPc {
		display: block;
		background-position: center bottom;
		height: 100%;
	}
	.TopEntry__outWrap{
		padding-top: 0;
	}
	.is-expand > .global-nav-link::before{
		display: none;
	}
}

@media (min-width: 769px){
	.header-wrap {
		height: auto;
	}
	.header{
		height: auto;
		display: block;
	}
	.header-item-navWrap{
		background: #DED7F1;
		position: relative;
		z-index: 1111;
	}
	.global-nav-list{
		background: #DED7F1;
		width: 100%;
		justify-content: space-between;
	}
	.header-item-title{
		justify-content: space-between;
	}
	.global-navSub .global-nav-list{
		background: none;
	}
	.global-nav-item:hover > .global-nav-list{
		z-index: 100;
	}
	.no-pc{
		display: none;
	}
	.header-item-nav{
		z-index: 1;
	}
	.main-visual-bg.-showPc{
		background-position: top;
	}
}



/* SP版 */

@media (max-width: 769px){
	.no-sp{
		display: none;
	}
	.header-item-title{
		margin-right: 0;
	}
	.header-logo{
		object-fit: contain;
	}
	.main-visual-bg.-showSp{
		background-position: center;
		background-repeat: no-repeat;
	}
}


/* ------------------------------　　
	メインビジュアル　メディアクエリ
------------------------------ */

.main-visual-bg{
	background-size: cover;
}

@media (max-width: 768px) {
	.main-visual{
		height: auto;
	}
	.main-visual-bg.-showSp {
		display: block;
		aspect-ratio: 3 / 4;
		height: 100%;
	}
	.header-logo {
		height: fit-content;
		max-height: 1.5rem;
	}
}

@media (min-width: 769px) and (max-width: 1023px) {
	nav.global-nav.global-navSub {
		display: none;
	}
	header.header{
		height: 3.5rem;
	}
}


@media (max-width: 1023px){
	.header-item-title {
		height: 100%;
		width: 100%;
		justify-content: space-between;
	}
	.header-item-title a[href^="tel:"]{
		height: 100%;
	}
	.global-navSubWrap img {
		height: 100%;
		object-fit: contain;
	}
}

@media (min-width: 769px){
	.main-visual{
		height: auto;
	}
	.main-visual-bg.-showPc{
		aspect-ratio: 16 / 9;
	}
}


/* ------------------------------　　
	コンテンツ
------------------------------ */
#bgWhite{
	background: #FFF;
}

#bgWhite

.unit2898 .GroupLink__textAndLinkWrap,
.unit2901 .GroupLink__textAndLinkWrap,
.unit2897 .GroupLink__textAndLinkWrap{
	border-radius: 8px;
	background: #FFF;
}

#bgBbeige{
	background: #F8F6F0;
}

.section-animation-bg{
	background: #FFF;
}

.card-link{
	background: #FFF;
}

.card-list .card-title,.card-list .card-text,.card-list .card-time{
	padding-left: 24px;
	padding-right: 24px;
}

.card-list li .card-link{
	border-radius: 8px;
	box-shadow: 0px 0px 8px #00000029;
}


.section-vertical-header::after{
	display: none;
}

.Entry__ .GroupLink__linkOut{
	border-radius: 8px;
}

.Entry__ .GroupLink__imgWrap {
	border-radius: 8px 8px 0 0;
}

@media (min-width: 769px){
	.section-vertical-heading,.section-animation-bg:is(h2){
		margin-bottom: 1.5rem;
		font-size: 1.953125rem;
	}
	.section-animation-bg .section-horizontal {
		flex-direction: row-reverse;
	}
}

@media screen and (min-width: 48rem) {
	.section-animation-bg .section-horizontal-header {
		position: inherit;
	}
}


/* エントリー1つ目 */

.unit2893 .GroupLink__noLinkOut{
	border: 1px solid #4E3890;
	border-radius: 8px;
}

.unit2893 .GroupLink__list{
	min-height: 156px;
}


.unit2893 .GroupLink__imgWrap{
	display: flex;
	justify-content: center;
	align-items: center;
}

.unit2893 .GroupLink__noLinkOut .GroupLink__img{
	width: 124px;
	height: 124px;
}

.unit2893 .GroupLink__textAndLinkWrap .GroupLink__title,
.unit2898 .GroupLink__textAndLinkWrap .GroupLink__title,
.unit2901 .GroupLink__textAndLinkWrap .GroupLink__title,
.unit2897 .GroupLink__textAndLinkWrap .GroupLink__title,
.unit2912 .GroupLink__textAndLinkWrap .GroupLink__title{
	color: #4E3890;
}

h3.bgColor span{
	color: #3E3E3E;
	text-shadow: none;
}

.unit2898 a.GroupLink__linkOut,
.unit2901 a.GroupLink__linkOut,
.unit2897 a.GroupLink__linkOut{
	border-radius: 8px;
}

.unit2912 .GroupLink__img{
	background: #4e3890;
	border-radius: 50%;
	border: 5px solid #917bd1;
	max-width: 90%;
}

/* エントリー３つ目 */
#bgWhite div.unit2921 .GroupLink__list{
	box-shadow: 0px 0px 8px #00000029;
	border-radius: 8px;
	padding-left: 0;
	margin-bottom: 80px;
	flex-direction: column;
}


.unit2921 .GroupLink__textAndLinkWrap::after{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-left: 35px solid transparent;
	border-right: 35px solid transparent;
	border-top: 35px solid #DED7F1;
	position: relative;
	top: 52%;
	left: -17%;
	margin: 0 auto;
}

.unit2921 .GroupLink__list:last-child .GroupLink__textAndLinkWrap::after{
	display: none;
}

.unit2921 img{
	height: 224px;
	width: 282px;
}

#bgWhite .unit2921 .GroupLink__imgWrap{
	max-width: 30%;
}

#bgWhite .unit2921 .GroupLink__title{
	color: #4E3890;
}


/* エントリー３つ目 */
.top3info .AccentContents__wrap {
	display: flex;
	flex-direction: column-reverse;
}

.entry-style .question h3{
	margin-bottom: 0;
}

.question h3::before{
	padding-bottom: 5px;
	content: 'Q';
	width: 40px;
	height: 35px;
	display: inline-block;
	color: #FFF;
	background: #917BD1;
	border-radius: 50%;
	margin-right: 10px;
	text-align: center;
}

.question .entry-text-unit p{
	background: #FFF;
	border-top: #9E9E9E 3px solid;
	padding: 20px 20px 50px 20px;;
}

.top3info .AccentTitle__wrap{
	width: 100%;
	background: #4E3890;
}

.top3info .AccentOutWrap{
	padding: 0;
	border-radius: 8px;
	border: 6px solid #4E3890;
	border-style: double;
}

.top3info .AccentContents__photoOutWrap .AccentContents__photoWrap{
	padding: 10px;
}

.top3info .AccentTextHeader.bgNone{
	margin-top: 30px;
}

.top3info .AccentTextHeader.bgNone .big{
	color: #38549B;
	font-weight: 800;
}

.top3info .AccentText{
	text-align: center;
}

#bgWhite span.mini{
	font-size: 18px;
	font-weight: 500;
}



.entry-style .top3info .AccentTitle__wrap .AccentTitle__text span.whiteText{
	font-weight: 100;
}

@media (min-width: 769px){
	.top3info .AccentTextHeader.bgNone{
		white-space: nowrap;
	}
}


/* SP版 */
@media (max-width: 769px){
	.unit2912 .GroupLink__list{
		flex-basis: 50%;
	}
	.unit2921.GroupLink__OutWrap.-imgRow .GroupLink__noLinkOut .GroupLink__textAndLinkWrap{
		flex-basis: 100%;
		max-width: 100%;
	}
	.unit2921.GroupLink__OutWrap.-imgRow .GroupLink__noLinkOut{
		display: block;
	}
	.GroupLink__OutWrap.-imgRow.unit2921 .GroupLink__noLinkOut{
		flex-direction: column;
	}
	.unit2921 img {
		height: auto;
		width: 100%;
		object-fit: cover;
		border-radius: 8px;
	}
	#bgWhite div.unit2921 .GroupLink__list {
		flex-direction: column-reverse;
		margin: 10px;
		margin-bottom: 50px;
	}
	#bgWhite .unit2921 .GroupLink__imgWrap{
		max-width: 100%;
	}
	.unit2921 .GroupLink__textAndLinkWrap::after{
		top: 50px;
		left: inherit;
	}
	.AccentOutWrap.-mobileLayout1Column.accentTitleAlignLeft{
		align-items: center;
	}
	.top3info .AccentOutWrap .AccentContents__photoOutWrap{
		flex-direction: column;
	}
	.unit2893 .GroupLink__noLinkOut .GroupLink__img {
		width: 100px;
		height: 100px;
	}
	.custom_bgColor.widthVw100_on{
		background-position: right;
	}
}


/* ------------------------------　　
	フッター
------------------------------ */
.footer{
	background: #4E3890;
}

.footer-nav-link{
	color: #FFF;	
}

.floatingBanner_top{
	display: inline-block;
	justify-content: flex-end;
	bottom: 10px;
}

.bannerWrap{
	position: fixed;
	text-align: right;
	flex-direction: column;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	z-index: 11111111;
}

.Banner_free{
	bottom: 15%;
}


.footer-item-title p,
.footer-item-title h2,
.footer-item-title adress,
.footer-copyright-text{
	color: #FFF;
}

.footer-bottom{
	border: none;
}

.footer-group{
	flex-direction: column-reverse;
	padding-bottom: 0;
}

.footer-group .acms-col-md-8{
	width: 100%;
}

.footer-group .acms-grid .acms-col-md-3{
	width: 100%;
}

.footer-group .acms-grid .footer-nav-group{
	display: flex;
	justify-content: space-between;
}

.footer-sns-group{
	display: none;
}

.footer-bottom-inner{
	display: block;
	margin: 0 auto;
}

.footer-copyright-text{
	text-align: center;
	font-weight: 400;
}

.UserAuth__administrator .floatingBanner_top,.UserAuth__contributor .floatingBanner_top{
	display: none;
}

.section-vertical-main .card-img-wrap img:nth-child(2){
	display: none;
}

.footer-nav-item{
	font-weight: 400;
}

@media (min-width: 769px){
	.footer-copyright-text {
		text-align: end;
	}
	.footer-bottom{
		position: relative;
		top: -2rem;
	}
}

/* SP版 */
@media (max-width: 769px){
	.floatingBanner_top img{
		width: 50%;
		position: relative;
		right: -50%;
	}
	.Banner_free {
		bottom: 10%;
	}
}




/* ------------------------------　　
	フォーム
------------------------------ */
.Category__contact .heading-lg.heading-primary::before{
	background: rgba(224,169,14,1);
	width:100%;
}
/* SP版 */



/* ------------------------------　　
	一覧ページ
------------------------------ */
#adminBox, .acms-admin-box{
	margin-top: 50px;
}

.IndexPage,.EntryPage{
	background: #FFF;
}


.page-title-inner{
	background-image: url(../images/bg_category.png);
	height: clamp(150px, 15.8vw, 300px);
	background-size: cover;
}

.page-title-inner .page-title{
	color: #4E3890;
	font-size: clamp(32px, 3vw, 52px);
}

.page-title-inner .page-title-en{
	display: none;
}

.topicpath{
	position: relative;
	z-index: 111;
	background: #917BD1;
}

.topicpath a{
	color: #FFF;
}

.page-title-wrapper{
	margin-bottom: 0;
}

.IndexPage li.acms-admin-g-col-3{
	background: rgba(145, 123, 209, 0.9);
	border-radius: 10px;
}

.IndexPage li.acms-admin-g-col-3 a{
	color: #FFF;
	border-bottom: none;
    font-size: clamp(22px, 2vw, 36px);
	padding: 50px 0%;
	letter-spacing: 1.6px;
}

.IndexPage li.acms-admin-g-col-3 a:hover{
	background: rgba(145, 123, 209, 0.9);
	border-radius: 10px;
}


.IndexPage ul.acms-list-group {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: clamp(100px, 20vw, 140px);
	border-top: unset;
	padding-bottom: clamp(100px, 20vw, 120px);
	border-bottom: 1px solid #D8D8D8;
}

.IndexPage .GroupLink__OutWrap[class*=WidthPc]{
	margin-top: clamp(100px, 20vw, 140px);
}

.custom_bgCtoaWrap {
	padding-top: 50px;
}

.IndexPage li.acms-admin-g-col-3{
	width: 100%;
	text-align: center;
}

#bgWhite .AccentOutWrap.safeColor-pale .AccentTitle__text{
	margin: 10px auto;
	letter-spacing: 1.6px;

}

.topicpath-item:not(:last-child)::after{
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
}

.IndexPage .WidthPc50 li.GroupLink__list a{
	border-bottom: none;
	font-size: clamp(22px, 2vw, 36px);
	padding: 50px 0%;
	letter-spacing: 1.6px;
	background: rgba(145, 123, 209, 0.9);
}
	
.IndexPage .WidthPc50 li.GroupLink__list a .GroupLink__title{
	color: #FFF;
	font-size: clamp(22px, 2vw, 36px);
	white-space: nowrap;
}


@media (max-width: 769px){
	.IndexPage .custom_bgColor.cover-cover,.EntryPage .custom_bgColor.cover-cover{
		flex-direction: column;
		align-items: center;
	}
	#bgWhite .AccentOutWrap.safeColor-pale span.textCenter{
		text-align: left;
	} 
}

@media (max-width: 1023px){
	.custom_bgCtoaWrap {
		/* margin-left: -10px; */
		margin-right: calc(env(safe-area-inset-right) - 1rem);
		margin-left: calc(env(safe-area-inset-left) - 1rem);
	}
	.acms-col-md-8.footer-item{
		display: none;
	}

}

@media (min-width: 769px){
	.IndexPage li.acms-admin-g-col-3 {
		width: calc((100% - 20px) / 2);
	}
	.IndexPage .GroupLink__OutWrap.WidthPc50{
		gap: 20px;
	}
	.IndexPage .GroupLink__OutWrap.WidthPc50 li.GroupLink__list {
		width: calc((100% - 20px) / 2);
		margin: 0;
		padding: 0;
		border-radius: 10px;
		margin-bottom: 0;
	}
	.IndexPage .WidthPc50 .GroupLink__linkOut{
		margin: 0;
	}
}

/* ------------------------------　　
	詳細ページ
------------------------------ */
.EntryPage article.entry.clearfix{
	margin-top: clamp(80px, 20vw, 100px);
}

.EntryPage .entry-style h2{
	border-bottom: unset;
}

.EntryPage .entry-style h3{
	border-left: 5px solid #4E3890;
	border-bottom: unset;
	padding-bottom: 3px;
	padding-left: 16px;
}

.EntryPage .entry-style h4{
	color: #4E3890;
	border-bottom: unset;
}

.EntryPage .entry-style h3.bgColor{
	color:#3E3E3E;
	text-shadow:unset;
}
.EntryPage .entry-style h3.bgColor:after{

	background:#F3F0FA ;
}

.EntryPage .entry-style .entry-text-unit a{
	border-bottom: 1px sokid var(--color-link);
}

span.keikou{
	background: linear-gradient(transparent 82%, #87f598 30%);
}

.entry-style .entry-text-unit ul li::before{
	background :#4E3890;
}


/* 親（ol）でカウンターをセット */
.entry-style .entry-text-unit:not(.is-pre) ol {
  list-style: none;          /* 元の数字を消す */
  counter-reset: my-counter; /* カウンター変数を定義 */
  padding-left: 0;           /* 必要に応じて余白リセット */
}

/* 子（li）で数字を作る */
.entry-style .entry-text-unit:not(.is-pre) ol li {
  position: relative;        /* 位置調整のため */
  padding-left: 1.5em;       /* 数字が入るスペースを空ける */
}

.entry-style .entry-text-unit:not(.is-pre) ol li::before {
  counter-increment: my-counter; /* 数字を1増やす */
  content: counter(my-counter) "."; /* 「数字」＋「.」＋「半角スペース」を表示 */
  
  /* --- ここから自由にデザイン --- */
  position: absolute;
  left: 0;
  top: 0;
  color: #007bff;            /* 数字だけ青く！ */
  font-weight: 700;
  background: #FFF;
  color: #4E3890;
  font-size: 1rem;	
}

.entry-style [class^=column-table] table td:first-child{
	white-space: nowrap;
}
.entry-style [class^=column-table] table td{
	padding-right: 0;
}

.entry-style .entry-text-unit table tr, .entry-style [class^=column-table] table tr {
	border-top: 1px solid #917BD1;
	border-bottom: 1px solid #917BD1;
	background: unset;
}

.entry-style .entry-text-unit table, .entry-style [class^=column-table] table{
	border-right: unset;
	border-left: unset;
}