@charset "utf-8";
/* CSS Document */

.container {
	width: auto;
	overflow-x: hidden;
}

.content {
	width: 1200px;
	margin: 0 auto;
}

/* ---------------------------------------------
　keyvisual
------------------------------------------------ */

.keyvisual {
	background-image: url(../images/bg_keyv_001.jpg);
	width: 100%;
	height: 100%;
	position: relative;
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: cover;
}

.keyvisual .keyvisual-wrapper {
	max-width: 946px;
	width: 95%;
	padding-top: 146px;
	padding-bottom: 220px;
	margin: auto;
}

.keyvisual .contents-list {
	margin-top: 47px;
}

.keyvisual .keyvisual-search {
	display: grid;
	grid-template-columns: auto 1fr;
	border-radius: 10px;
	overflow: hidden;
	margin-top: 30px;
}

.keyvisual .keyvisual-search .keyvisual-search-title {
	font-size: 18px;
	background-color: #ffd700;
	padding: 25px 40px;
	text-align: center;
	font-weight: bold;
}

.keyvisual .keyvisual-search .keyvisual-search-list {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 85px 0 40px;
	background-color: #fff;
}

.keyvisual .keyvisual-search .keyvisual-search-item a {
	position: relative;
	padding-left: 29px;
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	color: #000;
}

.keyvisual .keyvisual-search .keyvisual-search-item a:hover {
	opacity: 1;
	text-decoration: underline;
}

.keyvisual .keyvisual-search .keyvisual-search-item a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-color: #ffd700;
	width: 18px;
	height: 18px;
	border-radius: 50%;
}

.keyvisual .keyvisual-search .keyvisual-search-item a::after {
	content: "";
	position: absolute;
	left: 5px;
	top: 40%;
	transform: translateY(-50%);
	width: 4px;
	height: 4px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* @-webkit-keyframes keyvslide {
	0%{	transform:translateX(0%); }
	100%{	transform:translateX(-25%); }
}

@keyframes keyvslide { 
	0%{	transform:translateX(0%); }
	100%{	transform:translateX(-25%); }
} */

/* ---------------------------------------------
　content
------------------------------------------------ */

/* important-area */

.important-area {
	border: 3px solid #d41c1c;
	border-radius: 10px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	width: 1200px;
	margin: 0 auto;
	padding: 18px 40px 17px 9px;
	margin-top: -110px;
	width: 1200px;
	background-color: #fff;
	position: relative;
}

.important-area h2 {
	background: url(../images/icon_important_001.png) 50% 0 no-repeat;
	color: #d10808;
	font-size: 113%;
	text-align: center;
	letter-spacing: 0.05em;
	width: 245px;
	margin: 0;
	padding: 30px 0 0;
}

.important-area h2::before {
	display: none;
}

.important-area ul {
	flex: 1;
	margin: 0;
}

.important-area ul li {
	border-top: 1px solid #ddd;
}

.important-area ul li:first-child {
	border-top: none;
}

.important-area ul li a {
	display: block;
	padding: 15px 0 15px 10px;
}

.important-area ul li a:link,
.important-area ul li a:visited,
.important-area ul li a:hover,
.important-area ul li a:active {
	color: #000;
	text-decoration: none;
}

.important-area ul li a dl {
	display: flex;
	letter-spacing: 0.05em;
	line-height: 1.8;
}

.important-area ul li a dl dt {
	width: 10em;
}

.important-area ul li a:hover dl dd,
.important-area ul li a:active dl dd {
	text-decoration: underline;
}

.important-area ul li a dl dd {
	flex: 1;
}

/* news-area */

.news-area {
	margin: 68px 0 80px;
}

.news-area h2 {
	background: transparent;
	font-size: 100%;
	text-align: center;
	margin: 0;
	padding: 0;
}

.news-area h2::before {
	display: none;
}

.news-area h2 span {
	display: block;
}

/* .news-area h2 .en{
  font-family:"BookmanPressSans","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
	font-size:88%;
	font-weight:normal;
	letter-spacing:0.05em;
} */

.news-area h2 .ja {
	font-size: 188%;
	letter-spacing: 0.05em;
}

.news-area .news-tab {
	display: flex;
	justify-content: center;
	margin: 11px 0 0;
	gap: 18px;
}

.news-area .news-tab div {
	cursor: pointer;
	letter-spacing: 0.05em;
	position: relative;
	margin: 0 0.4em;
	padding: 0 0 5px;
}

.news-area .news-tab div.current,
.news-area .news-tab div:hover {
	font-weight: bold;
}

.news-area .news-tab div.current::before,
.news-area .news-tab div:hover::before {
	background: #000;
	content: "";
	height: 2px;
	position: absolute;
	left: -5px;
	right: -5px;
	bottom: 0;
}

.color-blue .news-area .news-tab div.current::before,
.color-blue .news-area .news-tab div:hover::before {
	background: #fbec02;
}

.color-black .news-area .news-tab div.current::before,
.color-black .news-area .news-tab div:hover::before {
	background: #fff;
}

.news-area .news-tab div.current::after,
.news-area .news-tab div:hover::after {
	border-style: solid;
	border-width: 7px 4.5px 0 4.5px;
	border-color: #000 transparent transparent transparent;
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	left: 50%;
	bottom: -7px;
	margin-left: -5px;
	visibility: visible;
}

.color-blue .news-area .news-tab div.current::after,
.color-blue .news-area .news-tab div:hover::after {
	border-color: #fbec02 transparent transparent transparent;
}

.color-black .news-area .news-tab div.current::after,
.color-black .news-area .news-tab div:hover::after {
	border-color: #fff transparent transparent transparent;
}

.news-area .news-content {
	margin: 31px 0 0;
}

.news-area .news-content>div {
	display: none;
}

.news-area .news-content>div.current {
	display: block;
}

.news-area .news-content ul {
	margin: 0;
}

.news-area .news-content ul li {
	border-top: 1px solid #ddd;
}

.news-area .news-content ul li:first-child {
	border-top: none;
}

.news-area .news-content ul li a {
	display: block;
	padding: 14px 20px;
}

.news-area .news-content ul li a:link,
.news-area .news-content ul li a:visited,
.news-area .news-content ul li a:hover,
.news-area .news-content ul li a:active {
	color: #000;
	text-decoration: none;
}

.news-area .news-content ul li a:hover,
.news-area .news-content ul li a:active {
	opacity: 0.6;
}

.news-area .news-content ul li dl {
	display: flex;
	align-items: flex-start;
	letter-spacing: 0.05em;
	line-height: 1.99;
}

.news-area .news-content ul li dl dt {
	width: 9em;
	font-size: 83%;
}

.news-area .news-content ul li dl dd.cat {
	color: #000 !important;
	font-size: 80%;
	text-align: center;
	min-width: 128px;
	margin: 0 0 0 23px;
	padding: 0 5px 0;
	border-radius: 16px;
}

.news-area .news-content ul li dl dd.cat.information {
	background: #69ddff;
}

.news-area .news-content ul li dl dd.cat.course {
	background: #FFDE00;
	color: #000 !important;
}

.color-black .news-area .news-content ul li dl dd.cat.course {
	background: #fff;
	color: #000 !important;
}

.color-yellow .news-area .news-content ul li dl dd.cat.course {
	background: #33ff00;
}

.news-area .news-content ul li dl dd.cat.lending {
	background: #b6f138;
}

.news-area .news-content ul li dl dd.cat.donation {
	background: #ffab98;
}

.news-area .news-content ul li dl dd.cat.recruit {
	background: #c9acf6;
}

.news-area .news-content ul li dl dd.title {
	flex: 1;
	margin: 0 0 0 25px;
	font-size: 16px
}

.news-area .btn {
	letter-spacing: 0.05em;
	line-height: 62px;
	text-align: center;
	width: 320px;
	margin: 27px auto 0;
}

.news-area .btn a {
	background: #FFDE00;
	border-radius: 31px;
	display: block;
	position: relative;
}

.color-black .news-area .btn a {
	background: #fff;
	color: #000 !important;
}

.color-yellow .news-area .btn a {
	background: #000;
	color: #fff !important;
}

.color-blue .news-area .btn a {
	color: #000 !important;
}


.news-area .btn a:link,
.news-area .btn a:visited,
.news-area .btn a:hover,
.news-area .btn a:active {
	color: #000;
	text-decoration: none;
}

.news-area .btn a:hover,
.news-area .btn a:active {
	opacity: 0.6;
}

.color-black .news-area .btn a:link,
.color-black .news-area .btn a:visited,
.color-black .news-area .btn a:hover,
.color-black .news-area .btn a:active {
	color: #000;
}

.news-area .btn a::before {
	background: #000;
	border-radius: 50%;
	content: "";
	width: 18px;
	height: 18px;
	position: absolute;
	top: 50%;
	right: 30px;
	margin-top: -9px;
}

.color-black .news-area .btn a::before {
	background: #000;
}

.news-area .btn a::after {
	border-top: 1px solid #FFDE00;
	border-right: 1px solid #FFDE00;
	content: "";
	width: 5px;
	height: 5px;
	position: absolute;
	top: 50%;
	right: 37px;
	margin-top: -3px;
	transform: rotate(45deg);
}

.color-black .news-area .btn a::after {
	border-color: #fff;
}

/* theme-area */

.theme-area {
	background: url(../images/bg_theme_001.jpg) 0 0 no-repeat;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 80px 0 0;
	padding: 40px 0;
}

.theme-area::after {
	display: none;
}

.theme-area h2 {
	background: transparent;
	font-size: 100%;
	margin: 0 0 0 56px;
	padding: 0;
}

.theme-area h2::before {
	display: none;
}

.theme-area h2 span {
	display: block;
}

.theme-area h2 .en {
	font-family: "BookmanPressSans", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
	font-size: 88%;
	font-weight: normal;
	letter-spacing: 0.05em;
}

.theme-area h2 .ja {
	font-size: 188%;
	letter-spacing: 0.05em;
}

.theme-area ul {
	font-size: 113%;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin: 0;
}

.theme-area ul li {
	background: #fff;
	border-radius: 10px 0 0 10px;
	line-height: 95px;
	margin: 20px 0 0;
}

.theme-area ul li:first-child {
	margin-top: 0;
}

.theme-area ul li a {
	display: block;
	position: relative;
	padding: 0 47px 0 39px;
}

.theme-area ul li a:link,
.theme-area ul li a:visited,
.theme-area ul li a:hover,
.theme-area ul li a:active {
	color: #000 !important;
	text-decoration: none;
}

.theme-area ul li a:hover,
.theme-area ul li a:active {
	opacity: 0.6;
}

.theme-area ul li a::before {
	background: #000;
	border-radius: 50%;
	content: "";
	width: 18px;
	height: 18px;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -9px;
}

.theme-area ul li a::after {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	content: "";
	width: 5px;
	height: 5px;
	position: absolute;
	top: 50%;
	right: 27px;
	margin-top: -3px;
	transform: rotate(45deg);
}

/* calendar */

.calendar {
	position: relative;
	background-color: #fffae8;
	padding-bottom: 80px;
}

.calendar::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	height: 100%;
	background: #fffae8;
	z-index: -1;
}

.calendar .calender-title {
	font-size: 30px;
	font-weight: bold;
	padding-top: 60px;
	margin-top: 0;
}

.calendar .calender-title::before {
	content: none;
}

.calendar #fullcalendar {
	background-color: #fff;
	position: relative;
}

.calendar #fullcalendar .calender-nagomi {
	position: absolute;
	top: -83px;
	right: 64px;
	width: 65px;
}

.calendar #fullcalendar .calender-nagomi img {
	width: 100%;
	height: auto;
	object-fit: contain;
	margin: auto;
}

.calendar #fullcalendar .legend {
	position: absolute;
	top: -85px;
	right: 150px;
	margin: 0;
}

.calendar #fullcalendar .legend .legend-list {
	position: relative;
	display: flex;
	justify-content: center;
	gap: 30px;
	padding: 10px 30px;
	margin: 0;
}

.calendar #fullcalendar .legend .legend-list img {
	position: absolute;
	display: block;
	width: 403px;
	height: 59px;
	content: "";
	bottom: -8px;
	right: 0;
	z-index: 0;
}

.calendar #fullcalendar .legend .legend-list li {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	z-index: 1;
}

.calendar #fullcalendar .legend .legend-list li::before {
	content: "";
	width: 20px;
	height: 20px;
	display: block;
}

.calendar #fullcalendar .legend .legend-list .worry::before {
	background-color: #ffab98;
}

.calendar #fullcalendar .legend .legend-list .event::before {
	background-color: #69ddff;
}

.calendar #fullcalendar .legend .legend-list .other::before {
	background-color: #a5dc74;
}

.calendar #fullcalendar .legend .legend-list li::after {
	content: none;
}

.calendar table {
	line-height: 1.7;
	margin: 0;
}

.color-blue #fullcalendar .fc-toolbar h2,
.color-blue #fullcalendar table td,
.color-black #fullcalendar .fc-toolbar h2,
.color-black #fullcalendar table td {
	color: #000 !important;
}

/* recruit-area */

.recruit {}

.recruit .recruit-wrapper {
	padding-top: 80px;
	padding-bottom: 40px;
}

.recruit .recruit-box {
	width: 1123px;
	margin: auto;
	padding: 40px 80px;
	border-radius: 10px;
	background-color: #ffde00;
	box-sizing: border-box;
}

.recruit .recruit-box .recruit-content {
	display: flex;
	justify-content: center;
	position: relative;
	gap: 0 40px;
	font-size: 17px;
}

.recruit .recruit-box .recruit-content .recruit-title {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border-width: 0;
}

.recruit .recruit-box .recruit-content .btn {
	letter-spacing: 0.05em;
	line-height: 62px;
	text-align: center;
	width: 320px;
	margin: 0 0 0 auto;
}

.recruit .recruit-box .recruit-content .btn a {
	border-radius: 31px;
	display: block;
	position: relative;
	color: #000;
	text-decoration: none;
	background-color: #fff;
}

.recruit .recruit-box .recruit-content .btn a::before {
	background: #000;
	border-radius: 50%;
	content: "";
	width: 18px;
	height: 18px;
	position: absolute;
	top: 50%;
	right: 30px;
	margin-top: -9px;
}

.recruit .recruit-box .recruit-content .btn a::after {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	content: "";
	width: 5px;
	height: 5px;
	position: absolute;
	top: 50%;
	right: 37px;
	margin-top: -3px;
	transform: rotate(45deg);
}

.recruit .recruit-box .recruit-slider {
	margin-top: -25px;
	position: relative;
	z-index: 1;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

@media screen and (max-width:1315px) {
	.recruit .recruit-box .recruit-slider {
		width: 1315px;
		margin-left: -150px;
		margin-right: -150px;
	}
}

.recruit .recruit-box .recruit-slider .recruit-slider-item {
	width: 300px;
	height: 200px;
	margin: 0 15px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translate3d(0, 0, 0);
}

.recruit .recruit-box .recruit-slider .recruit-slider-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* banner-area */

.banner-area {
	margin: 0;
}

.banner-area .banner-area-large {
	display: grid;
	grid-template-columns: repeat(2, auto);
	gap: 38px;
	justify-content: center;
	margin: auto;
}

.banner-area .banner-area-large a {
	width: 350px;
	border-radius: 10px;
	overflow: hidden;
	aspect-ratio: 350 / 160;
	background: none;
	padding: 0;
}

.banner-area .banner-area-large img {
	width: 100%;
	height: auto;
	margin: 0 auto;
	object-fit: contain;
}

.banner-area ul {
	display: flex;
	flex-wrap: wrap;
	margin: 8px 0 0 -34px;
}

.banner-area ul li {
	margin: 20px 0 0 34px;
}

.banner-area ul li a {
	background: none;
	padding: 0;
}

/* btnBorder */

.container .content .btnBorder {}

.container .content .btnBorder a {
	border: none;
	background-color: #f2f2f2;
	border-radius: 20px;
	position: relative;
}


.container .content .btnBorder a::before {
	background: #000;
	border-radius: 50%;
	content: "";
	width: 18px;
	height: 18px;
	position: absolute;
	top: 50%;
	right: 39%;
	margin-top: -9px;
}

.container .content .btnBorder a::after {
	border-top: 1px solid #f2f2f2;
	border-right: 1px solid #f2f2f2;
	content: "";
	width: 5px;
	height: 5px;
	position: absolute;
	top: 50%;
	right: 39.55%;
	margin-top: -3px;
	transform: rotate(45deg);
}

.container .content .btnBorder a:hover {
	opacity: 0.5;
	color: #000;
}

.container .content .btnBorder a:hover::before {
	opacity: 0.5;
}

.container .content .btnBorder a:hover::after {
	opacity: 0.5;
}

/* ---------------------------------------------
 SP
------------------------------------------------ */

.sp .container {
	padding: 0;
}

.sp .content {
	width: auto;
	padding: 0 20px;
	margin-top: -20px;
}

/* ---------------------------------------------
　keyvisual
------------------------------------------------ */

.sp .keyvisual {
	background-image: url(../images/bg_keyv_001_sp.png);
}

.sp .keyvisual .keyvisual-wrapper {
	width: 100%;
	padding: 106px 20px 90px;
	box-sizing: border-box;
}

.sp .keyvisual-title {
	width: 284px;
	margin: 0 auto;
}

.sp .keyvisual .keyvisual-title p.en {
	width: 426px;
	margin: 10px auto 0;
	transform: translate(-10px, 0)
}

.sp .keyvisual .keyvisual-list {
	margin-top: 30px;
	grid-template-columns: 1fr;
	gap: 20px;
}

.sp .keyvisual .keyvisual-list .keyvisual-item .keyvisual-list-wrapper {
	position: relative;
}

.sp .keyvisual .keyvisual-list .keyvisual-item .keyvisual-image-icon {
	position: absolute;
	z-index: 1;
	top: -15px;
	right: 20px;
	margin-top: 0;
}

.sp .keyvisual .keyvisual-list .keyvisual-item .keyvisual-link {
	text-align: center;
}

.sp .keyvisual .keyvisual-search {
	grid-template-columns: 1fr;
}

.sp .keyvisual .keyvisual-search .keyvisual-search-title {
	padding: 15px 40px;
}

.sp .keyvisual .keyvisual-search .keyvisual-search-list {
	padding: 30px 20px;
	flex-wrap: wrap;
	gap: 10px 20px;
	justify-content: center;
}

.sp .keyvisual .keyvisual-title p.ja {
	font-size: 18px;
	letter-spacing: -1px;
	margin: 13px 0 0 -30px;
}

.sp .keyvisual .keyvisual-img .img-wrap .img-unit.unit01 {
	margin-top: 35px;
}

.sp .keyvisual .keyvisual-img .img-wrap .img-unit.unit02 {
	margin-top: 12px;
}

.sp .keyvisual .keyvisual-img .img-wrap .img-unit.unit03 {
	margin-top: 199px;
}

.sp .keyvisual .keyvisual-img .img-wrap .img-unit.unit04 {
	margin-top: 12px;
}

.sp .keyvisual .keyvisual-img .img-wrap .img-unit ul {
	width: 3864px;
}

.sp .keyvisual .keyvisual-img .img-wrap .img-unit ul li {
	width: 149px;
	height: 149px;
	margin: 0 6px;
}


.sp .hamburger-menu .keyvisual-search {
	border: 2px solid #ffd700;
	margin-top: 0;
}


/* ---------------------------------------------
　content
------------------------------------------------ */

/* important-area */

.sp .important-area {
	border-width: 2px;
	border-radius: 5px;
	display: block;
	width: auto;
	margin: 0;
	padding: 20px 28px 6px 18px;
}

.sp .important-area h2 {
	background-size: 16px auto;
	font-size: 16px;
	width: auto;
	padding: 17px 0 0;
}

.sp .important-area ul {
	margin: -6px 0 0;
}

.sp .important-area ul li a {
	padding: 17px 0 14px;
}

.sp .important-area ul li a dl {
	display: block;
	line-height: 1.5625;
}

.sp .important-area ul li a dl dt {
	font-size: 12px;
}

.sp .important-area ul li a dl dd {
	margin: 6px 0 0;
}

/* news-area */

.sp .news-area {
	margin: 54px 0 0;
	padding-bottom: 60px;
}

.sp .news-area h2 .en {
	font-size: 12px;
}

.sp .news-area h2 .ja {
	font-size: 25px;
}

.sp .news-area .news-tab-wrap {
	position: relative;
	overflow-x: auto;
	margin: 23px 0 0;
	padding: 0 0 15px;
}

.sp .news-area .news-tab {
	font-size: 14px;
	justify-content: flex-start;
	white-space: nowrap;
	margin: 0;
	gap: 0;
}

.sp .news-area .news-tab div {
	margin: 0 1em 0 0;
	padding: 0 0 3px;
}

.sp .news-area .news-tab div:last-child {
	margin-right: 0;
}

.sp .news-area .news-tab div.current,
.sp .news-area .news-tab div:hover {
	font-weight: normal;
}

.sp .news-area .news-tab div.current::before,
.sp .news-area .news-tab div:hover::before {
	left: 0;
	right: 0;
}

.sp .news-area .news-tab div.current::after,
.sp .news-area .news-tab div:hover::after {
	border-width: 5px 3px 0 3px;
	bottom: -5px;
	margin-left: -3px;
}

.sp .news-area .news-content {
	margin: -5px 0 0;
}

.sp .news-area .news-content ul li a {
	padding: 16px 0 11px;
}

.sp .news-area .news-content ul li dl {
	display: block;
}

.sp .news-area .news-content ul li dl dt {
	float: left;
	font-size: 12px;
	line-height: 1.6;
}

.sp .news-area .news-content ul li dl dd.cat {
	float: left;
	font-size: 12px;
	line-height: 1.6;
	min-width: 0;
	margin: 0 0 0 9px;
	padding: 0 7px;
}

.sp .news-area .news-content ul li dl dd.title {
	clear: left;
	width: 100%;
	margin: 0;
	padding: 3px 0 0;
}

.sp .news-area .btn {
	line-height: 45px;
	width: auto;
	margin: 1px 0 0;
}

.sp .news-area .btn a {
	border-radius: 22px;
}

.sp .news-area .btn a::before {
	width: 13px;
	height: 13px;
	right: 20px;
	margin-top: -7px;
}

.sp .news-area .btn a::after {
	width: 3px;
	height: 3px;
	right: 25px;
}

/* theme-area */

.sp .theme-area {
	background: url(../images/bg_theme_001_sp.jpg) 0 0 / cover no-repeat;
	display: block;
	margin: 60px -20px 0;
	padding: 117px 0 31px 20px;
}

.sp .theme-area h2 {
	margin: 0;
}

.sp .theme-area h2 .en {
	font-size: 12px;
}

.sp .theme-area h2 .ja {
	font-size: 25px;
}

.sp .theme-area ul {
	font-size: 16px;
	margin: 92px 0 0;
}

.sp .theme-area ul li {
	border-radius: 5px 0 0 5px;
	line-height: 75px;
	margin: 10px 0 0;
}

.sp .theme-area ul li:first-child {
	margin-top: 0;
}

.sp .theme-area ul li a {
	padding: 0 38px 0 28px;
}

.sp .theme-area ul li a::before {
	width: 13px;
	height: 13px;
	margin-top: -7px;
}

.sp .theme-area ul li a::after {
	width: 3px;
	height: 3px;
	right: 25px;
}

.sp .calendar #fullcalendar .legend .legend-list li {
	gap: 5px;
}

.sp .calendar #fullcalendar .legend .legend-list img {
	bottom: -20px;
}

/* calendar */

.sp .calendar {
	padding-bottom: 60px;
	background-color: #fffae8;
}

.sp .calendar .calender-title {
	padding-bottom: 90px;
	font-size: 25px;
	text-align: center;
}

.sp .calendar #fullcalendar {}

.sp .calendar #fullcalendar .calender-nagomi {
	right: 0px;
}

.sp .calendar #fullcalendar .legend {
	top: -75px;
	right: 74px;
}

.sp .calendar #fullcalendar .legend .legend-list {
	gap: 12px;
	font-size: 12px;
	padding: 0 16px;
}

/* recruit-area */

.sp .recruit .recruit-box {
	width: 100%;
	padding: 20px;
}

.sp .recruit .recruit-box .recruit-content {
	flex-direction: column;
	align-items: center;
	margin-top: -40px;
	font-size: initial;
}

.sp .recruit .recruit-box .recruit-content img {
	translate: -10px 0;
}

.sp .recruit .recruit-box .recruit-content .recruit-text-wrap {}

.sp .recruit .recruit-box .recruit-content .btn {
	width: 100%;
}

/* banner-area */

.sp .banner-area {
	margin: 20px 0 0;
}

.sp .banner-area .banner-area-large {
	grid-template-columns: 1fr;
	grid-template-rows: repeat(2, 1fr);
	gap: 20px;
}

.sp .banner-area .banner-area-large a {
	width: 100%;
}

.sp .banner-area .banner-area-large img {
	width: 100%;
}

.sp .banner-area ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px 20px;
	width: 100%;
	margin: 40px 0 0;
}

.sp .banner-area ul li {
	width: 100%;
	height: auto;
	aspect-ratio: 177 / 74;
	margin: 0;
}

.sp .banner-area ul li img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.sp .container .content .btnBorder a::before {
	right: 12%;
}

.sp .container .content .btnBorder a::after {
	right: 14%;
}



@media screen and (max-width:375px) {
	/* ---------------------------------------------
	　keyvisual
	------------------------------------------------ */

	.sp .keyvisual .keyvisual-title p.en {
		width: 385px;
	}
}


@media screen and (max-width:320px) {
	/* ---------------------------------------------
	　keyvisual
	------------------------------------------------ */

	.sp .keyvisual .keyvisual-title p.en {
		width: 340px;
	}

	.sp .keyvisual .keyvisual-title p.ja {
		font-size: 15px;
	}
}



.bnr-youyube {
	margin: 35px 0 40px;
}

.bnr-youyube a[target="_blank"] {
	background: none !important;
	padding-right: 0px;
}


/* ---------------------------------------------
 Accessibility
------------------------------------------------ */

.body.color-white .important-area ul a,
.body.color-blue .important-area ul a,
.body.color-yellow .important-area ul a,
.body.color-black .important-area ul a {
	color: #000 !important;
}

.body.color-white .recruit-text,
.body.color-blue .recruit-text,
.body.color-yellow .recruit-text,
.body.color-black .recruit-text {
	color: #000 !important;
}

.body.color-white .recruit-content .btn a,
.body.color-blue .recruit-content .btn a,
.body.color-yellow .recruit-content .btn a,
.body.color-black .recruit-content .btn a {
	color: #000 !important;
}

.body.color-white .btnBorder a,
.body.color-blue .btnBorder a,
.body.color-yellow .btnBorder a,
.body.color-black .btnBorder a {
	color: #000 !important;
}

.body.color-white .legend-list li,
.body.color-blue .legend-list li,
.body.color-yellow .legend-list li,
.body.color-black .legend-list li {
	color: #000 !important;
}

.body.color-blue .copyright {
	color: #fbec02 !important;
}

.body.color-black .copyright {
	color: #fff !important;
}