@charset "UTF-8";

/******************** ALL ********************/
html {
	scroll-behavior: smooth;
}

body {
	line-height: 1.8;
}

.container {
	width: 100%;
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 20px;
}

@media screen and (max-width: 768px) {
	.container {
		padding: 0 15px;
	}
}

/*** --------------- Link --------------- ***/
a {
	color: #0b63d5;
	transition: 0.3s;
}

a:link {
	color: #0b63d5;
}

a:visited {
	color: #6e16ab;
}

a:hover,
a:active {
	color: #cf0c3d;
}

.window {
	margin: 0 10px 5px;
	padding: 2px 8px;
	background: #fff;
	border-color: #a22041;
	vertical-align: middle;
}

/*** --------------- Date --------------- ***/
.date {
	display: block;
	font-size: 100%;
}

/*** --------------- Font --------------- ***/
@font-face {
	font-family: 'GenJyuuGothic';
	font-style: normal;
	font-weight: 500;
	src: url(font/GenJyuuGothic-Medium-sub.ttf) format('truetype'),
		url(font/GenJyuuGothic-Medium-sub.woff) format('woff');
}

/*** --------------- Mask --------------- ***/
.msk_book {
	mask-image: url("img/toshi_mask_book.svg");
	mask-repeat: no-repeat;
	mask-position: 0 0;
	mask-size: auto 100%;
	-webkit-mask-image: url("img/toshi_mask_book.svg");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: 0 0;
	-webkit-mask-size: auto 100%;
}

/******************** ヘッダー ********************/

/*** --------------- 共通ヘッダー --------------- ***/
.h_top_wrap {
	background: #a22041;
	border: none;
	font-size: 87.5%;
}

.h_top {
	padding: 8px 0;
}

.h_top .go_top a {
	color: #fff;
}

.h_top .go_top a:before {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}

.h_top .h_toplist {
	width: 100%;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 10px 20px;
	margin-left: 50px;
}

.h_top .h_toplist>li {
	margin: 0;
}

.h_top .h_toplist>li>a {
	color: #fff;
}

.h_top .h_toplist>li img {
	margin-right: 8px;
}

/* ----- 言語選択 ----- */
.h_toplist>.language .lang_btn {
	background: none;
	border: none;
	border-radius: 0;
}

.h_toplist>.language .lang_btn a {
	padding: 3px 26px 3px 10px;
	background: #a22041;
	border: 1px solid #fff;
	border-radius: 5px;
	color: #fff;
	letter-spacing: 0.1em;
}

.h_toplist>.language .lang_btn a:hover {
	background: #fff;
	color: #a22041
}

.h_toplist>.language .lang_btn.active a {
	background: #fff;
	border-radius: 5px 5px 0 0;
	color: #a22041;
}

.h_toplist>.language .lang_btn a::before {
	right: 8px;
	border-color: #fff transparent transparent transparent;
	transition: 0.3s;
}

.h_toplist>.language .lang_btn a:hover::before {
	border-color: #a22041 transparent transparent transparent;
}

.h_toplist>.language .lang_btn.active a::before {
	border-color: #a22041 transparent transparent transparent;
	transform: rotate(180deg);
}

.h_toplist>.language ul {
	width: calc(100% + 2px);
	border: 1px solid #a22041;
	top: 100%;
	left: -1px;
}

.h_toplist>.language ul li {
	border-bottom: 1px solid #a22041;
}

.h_toplist>.language ul li a {
	padding: 6px 10px;
	color: #a22041;
}

.h_toplist>.language ul li a:hover {
	background: #a22041;
	color: #fff;
}

/* ----- 文字サイズ ----- */
.h_toplist .font_size {
	color: #fff;
}

.h_toplist .font_size .font_list {
	gap: 5px;
	margin-left: 8px;
}

.h_toplist .font_size .font_list li {
	margin: 0;
}

.h_toplist .font_size .font_list li a {
	padding: 3px 8px;
	background: #a22041;
	border: 1px solid #fff;
	border-radius: 5px;
	color: #fff;
}

.h_toplist .font_size .font_list li a:hover {
	background: #fff;
	color: #a22041;
}

/* ----- Google検索 ----- */
.h_toplist .src_box .q {
	width: 150px;
	border: 1px solid #fff !important;
	border-radius: 5px 0 0 5px;
}

#body .h_toplist .src_box input.q[type="text"] {
	padding: 3px 10px;
	font-size: 100%;
}

.h_toplist .src_box #search_button {
	width: auto;
	padding: 3px 15px;
	background: #a22041 !important;
	border: 1px solid #fff;
	border-radius: 0 5px 5px 0 !important;
	font-size: 100%;
	letter-spacing: 0.1em;
	position: relative;
	transition: 0.3s;
}

.h_toplist .src_box #search_button:hover {
	background: #fff !important;
	color: #a22041;
}

.h_toplist .src_box #search_button::before {
	content: '';
	width: 1px;
	height: 100%;
	background: #a22041;
	position: absolute;
	top: 0;
	left: 0;
}

/* ----- ID検索 ----- */
.h_toplist .search_id_box .search_id {
	margin: 0;
}

.h_toplist .search_id_box .search_id a {
	display: inline-block;
	background: #a22041;
	border: 1px solid #fff;
	border-radius: 5px;
	color: #fff;
	padding: 5px 26px 5px 10px;
	text-decoration: none;
}

.h_toplist .search_id_box .search_id a:hover,
.h_toplist .search_id_box .search_id a.active {
	background: #fff;
	color: #a22041;
}

.h_toplist .search_id_box .search_id a::before {
	content: '';
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -2px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 5px 0 5px;
	border-color: #fff transparent transparent transparent;
	transition: 0.3s;
}

.h_toplist .search_id_box .search_id a:hover::before {
	border-color: #a22041 transparent transparent transparent;
}

.h_toplist .search_id_box .search_id a.active::before {
	border-color: #a22041 transparent transparent transparent;
	transform: rotate(180deg);
}

.h_toplist .search_id_box .search_id a.active::after {
	content: '';
	width: 18px;
	height: 18px;
	background: #fff;
	border-top: 1px solid #a22041;
	border-right: 1px solid #a22041;
	transform: rotate(-45deg);
	position: absolute;
	top: calc(100% + 6px);
	right: 55px;
	z-index: 110;
	transition: 0.3s
}

.h_toplist .search_id_box .search_id_lower {
	display: none;
	background: #fff;
	border: 1px solid #a22041;
	border-radius: 5px;
	position: absolute;
	top: calc(100% + 15px);
	right: 0;
	z-index: 100;
}

.h_toplist .search_id_box .search_id_lower .src_box .q {
	width: 78%;
	border: 1px solid #a22041 !important;
}

.h_toplist .search_id_box .src_box #search_button2 {
	width: auto;
	padding: 5px 15px;
	background: #a22041 !important;
	border: 1px solid #a22041;
	border-left: none;
	border-radius: 0 5px 5px 0 !important;
	font-size: 100%;
	letter-spacing: 0.1em;
	position: relative;
	transition: 0.3s;
}

.h_toplist .search_id_box .src_box #search_button2:hover {
	background: #fff !important;
	color: #a22041;
}

/*** --------------- メインヘッダー --------------- ***/
.head_main {
	padding: 50px 0;
}

.head_main .h1 {
	margin: 0;
	text-align: center;
}

.head_main .h1 img {
	width: 510px;
	vertical-align: middle;
}

.head_main .noscript {
	margin-top: 30px;
}

/*** --------------- グローバルナビ --------------- ***/
.g_navi {
	margin-top: 40px;
	overflow: hidden;
	z-index: 1;
	clear: both;
}

.g_navi ul {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 40px;
}

.g_navi ul li {
	margin: 0;
	position: relative;
}

.g_navi ul li:not(:last-of-type)::after {
	content: '';
	width: 6px;
	height: 6px;
	background: #a22041;
	border-radius: 3px;
	position: absolute;
	top: calc(50% - 3px);
	right: -23px;
}

.g_navi li a {
	display: inline-block;
	color: #333;
	font-family: 'GenJyuuGothic';
	font-weight: normal;
	text-decoration: none;
	font-size: 125%;
	padding: 10px 20px;
	margin: 2px 0;
	width: 100%;
	height: 100%;
	position: relative;
}

.g_navi li a::after {
	content: '';
	width: 30px;
	height: 48px;
	background: url(img/toshi_icon_menu.png) center center / contain no-repeat;
	position: absolute;
	top: calc(50% - 24px);
	left: calc(50% - 15px);
	z-index: -1;
	opacity: 0;
	transform: scale(0.5, 0.5);
	transition: 0.3s;
}

.g_navi li a:hover::after,
.g_navi li.active a::after {
	opacity: 1;
	transform: scale(1, 1);
}

/*** --------------- スマホメニュー --------------- ***/
#lang_drop {
	top: 20px;
	right: 85px;
}

#lang_drop a {
	background: #fff url(img/toshi_icon_lang.svg) 5px 6px / 23px auto no-repeat;
	border: 3px solid #a22041;
	border-radius: 5px;
	color: #a22041;
}

#lang_drop a::before,
#lang_drop a::after {
	background: #a22041;
	transition: 0.3s;
}

#lang_drop.active a::after {
	content: '';
	display: block;
	transform: rotate(180deg);
}

.design .lang_detail {
	margin: 15px 0 0;
	padding: 15px;
	background: #fff8f5;
	border-radius: 10px;
}

.design .lang_detail ul {
	gap: 10px;
}

.design .lang_detail ul li {
	margin: 0;
	padding: 0;
}

.design .lang_detail ul li a {
	padding: 5px 10px;
	border: 1px solid #a22041;
	border-radius: 5px;
	color: #a22041;
}

.design .lang_detail ul li a:hover {
	background: #a22041;
	color: #fff;
}

#menu_button {
	margin: 0;
	top: 20px;
	right: 20px;
}

#menu_button a {
	background: #a22041;
	border-radius: 5px;
}

#sidr .close a {
	background: #a22041;
	text-decoration: none;
}

#sidr,
#sidr ul,
#sidr ul li,
#sidr .src_box {
	border-color: #a22041;
}

#sidr ul li::before {
	width: 20px;
	height: 8px;
	margin: 0;
	background: url(img/toshi_icon_arrow2.png) center center / contain no-repeat;
	border: none;
	transform: rotate(0);
	transition: 0.3s;
	top: auto;
	right: 15px;
	bottom: 15px;
}

#sidr ul li:hover::before,
#sidr ul li.active::before {
	right: 10px;
}

#sidr ul li a {
	padding: 12px 40px 12px 12px;
	color: #333;
	font-family: 'GenJyuuGothic';
}

#sidr .sidr_navi li a {
	background: #fff8f5;
}

#sidr .sidr_navi li a:hover,
#sidr .sidr_navi li.active a {
	background: #fff;
}

#sidr ul li.go_top a {
	background: #fff;
	border-top: 2px solid #a22041;
}

#sidr .sidr_navi_lang li .lang_btn2 a::before,
#sidr .sidr_navi_lang li .search_id2 a::before {
	width: 20px;
	height: 8px;
	margin: 0;
	background: url(img/toshi_icon_arrow2.png) center center / contain no-repeat;
	border: none;
	transform: rotate(90deg);
	top: calc(50% - 4px);
	right: 15px;
	transition: 0.3s;
}

#sidr .sidr_navi_lang li .lang_btn2 a.active::before,
#sidr .sidr_navi_lang li .search_id2 a.active::before {
	transform: rotate(-90deg);
}

#sidr .src_box .q {
	border: 1px solid #a22041 !important;
	border-radius: 5px 0 0 5px;
}

#sidr .src_box #search_button_sp,
#sidr .src_box #search_button3 {
	width: auto;
	padding: 3px 15px;
	background: #a22041 !important;
	border-radius: 0 5px 5px 0 !important;
	letter-spacing: 0.1em;
	position: relative;
	transition: 0.3s;
}

@media (max-width: 1200px) {
	.h_top .h_toplist {
		margin-left: 150px;
	}

	.h_toplist .src_box .q {
		width: 200px;
	}
}

@media (max-width: 1000px) {
	.h_top .h_toplist {
		margin-left: 50px;
	}

	.head_main {
		padding: 40px 0 30px;
	}

	.head_main .h1 img {
		width: 450px;
	}

	.g_navi {
		margin-top: 25px;
	}

	.g_navi ul {
		gap: 20px;
	}

	.g_navi li a {
		padding: 10px 15px;
		font-size: 112.5%;
	}

	.g_navi ul li:not(:last-of-type)::after {
		right: -13px;
	}
}

@media (max-width: 900px) {
	.h_top .h_toplist {
		gap: 10px;
		margin-left: 0;
	}
}

@media screen and (max-width: 768px) {
	.head_main {
		padding: 20px 0;
	}

	.head_main .h1 {
		text-align: left;
	}

	.head_main .h1 img {
		width: 400px;
		padding-left: 10px;
	}

	.g_navi {
		display: none;
	}
}

@media screen and (max-width: 576px) {
	.head_main {
		padding: 20px 0 30px;
	}

	.head_main .h1 img {
		width: calc(100% - 120px);
		max-width: 350px;
		padding-left: 0;
	}

	#lang_drop {
		top: 10px;
		right: 70px;
	}

	.design .lang_detail {
		margin: 25px 0 0;
	}

	#menu_button {
		top: 10px;
		right: 10px;
	}
}

/******************** フッター ********************/
.main_footer {
	margin-top: 120px;
}

/*** --------------- フッターメニュー --------------- ***/
.foot_menu {
	padding: 15px 0;
	position: relative;
}

.foot_menu::before {
	content: '';
	width: 100%;
	height: 50px;
	background: url(img/toshi_foot_menu.png) center center / 100% 100% no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -5;
}

.foot_menu::after {
	content: '';
	width: 100%;
	height: 50px;
	background: url(img/toshi_foot_menu.png) center center / 100% 100% no-repeat;
	transform: rotate(180deg);
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: -5;
}

.foot_menu ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 40px;
}

.foot_menu ul li {
	margin: 0;
	position: relative;
}

.foot_menu ul li:not(:last-of-type)::after {
	content: '';
	width: 6px;
	height: 6px;
	background: #a22041;
	border-radius: 3px;
	position: absolute;
	top: calc(50% - 3px);
	right: -23px;
}

.foot_menu li a {
	display: inline-block;
	color: #333;
	font-family: 'GenJyuuGothic';
	font-weight: normal;
	text-decoration: none;
	font-size: 125%;
	padding: 10px 20px;
	width: 100%;
	height: 100%;
	position: relative;
}

.foot_menu li a::after {
	content: '';
	width: 30px;
	height: 48px;
	background: url(img/toshi_icon_menu.png) center center / contain no-repeat;
	position: absolute;
	top: calc(50% - 24px);
	left: calc(50% - 15px);
	z-index: -1;
	opacity: 0;
	transform: scale(0.5, 0.5);
	transition: 0.3s;
}

.foot_menu li a:hover::after,
.foot_menu li.active a::after {
	opacity: 1;
	transform: scale(1, 1);
}

/*** --------------- メインフッター --------------- ***/
.foot_box {
	padding: 60px 0 50px;
	text-align: center;
	position: relative;
}

.foot_logo {
	margin: 0;
}

.foot_logo img {
	width: 680px;
}

.foot_add {
	margin-top: 40px;
	position: relative;
}

.foot_add p {
	text-shadow: 1.5px 1.5px 0 #fff, -1.5px -1.5px 0 #fff,
		-1.5px 1.5px 0 #fff, 1.5px -1.5px 0 #fff,
		0px 1.5px 0 #fff, 0 -1.5px 0 #fff,
		-1.5px 0 0 #fff, 1.5px 0 0 #fff;
	position: relative;
	z-index: 1;
}

.foot_add strong {
	display: inline-block;
	margin-bottom: 10px;
	font-size: 112.5%;
}

.foot_add br {
	display: none;
}

.foot_add a[href^="tel:"] {
	cursor: default;
	color: #333;
	text-decoration: none;
}

.foot_add .foot_contact {
	display: inline-block;
	border: 2px solid #a22041;
	margin-top: 30px;
	padding: 18px 90px 18px 70px;
	border-radius: 10px;
	color: #333;
	font-family: 'GenJyuuGothic';
	text-decoration: none;
	position: relative;
	z-index: 1;
}

.foot_add .foot_contact:hover {
	background: #fff8f5;
}

.foot_add .foot_contact::after {
	content: '';
	width: 52px;
	height: 12px;
	background: url(img/toshi_icon_arrow.png) center center / contain no-repeat;
	position: absolute;
	right: 15px;
	bottom: 15px;
	transition: 0.3s;
}

.foot_add .foot_contact:hover::after {
	right: 10px;
}

/*** --------------- ページトップへ戻る --------------- ***/
.foot_pagetop {
	position: absolute;
	right: 0;
	bottom: 50px;
}

.foot_pagetop a {
	display: inline-block;
	padding: 60px 10px 0;
	color: #333;
	font-family: 'GenJyuuGothic';
	text-align: center;
	text-decoration: none;
	line-height: 1.5;
	position: relative;
}

.foot_pagetop a:hover {
	opacity: 0.8;
}

.foot_pagetop a::before {
	content: '';
	width: 52px;
	height: 12px;
	background: url(img/toshi_icon_arrow.png) center center / contain no-repeat;
	position: absolute;
	top: 25px;
	left: calc(50% - 30px);
	transform: rotate(-90deg);
	transition: 0.3s;
}

.foot_pagetop a:hover::before {
	top: 18px;
}

/*** --------------- 共通フッター --------------- ***/
.foot_link {
	margin: 0;
	background: #a22041;
}

.foot_link ul {
	border-top: none;
	border-bottom: 1px solid #fff;
}

.foot_link ul li a {
	color: #fff;
}

.foot_link ul li a:before {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}

.foot_copy {
	padding: 8px 15px;
	background: #a22041;
}

@media (max-width: 1400px) {
	.foot_menu::before {
		background: url(img/toshi_foot_menu.png) left top / 1400px 40px no-repeat;
	}

	.foot_menu::after {
		background: url(img/toshi_foot_menu.png) left top / 1400px 40px no-repeat;
	}
}

@media (max-width: 1200px) {
	.foot_menu ul {
		gap: 20px;
	}

	.foot_menu li a {
		padding: 10px 15px;
		font-size: 112.5%;
	}

	.foot_menu ul li:not(:last-of-type)::after {
		right: -13px;
	}
}

@media (max-width: 1000px) {
	.main_footer {
		margin-top: 100px;
	}

	.foot_menu {
		padding: 35px 0;
	}

	.foot_menu::before {
		background: url(img/toshi_foot_menu.png) left top / 1050px 30px no-repeat;
	}

	.foot_menu::after {
		background: url(img/toshi_foot_menu.png) left top / 1050px 30px no-repeat;
	}

	.foot_menu li a::after {
		width: 25px;
		height: 40px;
		top: calc(50% - 20px);
		left: calc(50% - 12.5px);
	}

	.foot_logo img {
		width: 600px;
	}
}

@media screen and (max-width: 768px) {
	.main_footer {
		margin-top: 80px;
	}

	.foot_menu {
		padding: 30px 0;
	}

	.foot_menu::before {
		background: url(img/toshi_foot_menu.png) left top / 875px 25px no-repeat;
	}

	.foot_menu::after {
		background: url(img/toshi_foot_menu.png) left top / 875px 25px no-repeat;
	}

	.foot_menu ul {
		gap: 10px;
	}

	.foot_menu ul li:not(:last-of-type)::after {
		width: 5px;
		height: 5px;
		top: calc(50% - 2.5px);
		right: -7px;
	}

	.foot_menu li a {
		padding: 10px;
		font-size: 100%;
	}

	.foot_logo img {
		width: 500px;
	}

	.foot_box {
		padding: 50px 0 40px;
	}

	.foot_add a[href^="tel:"] {
		color: #2b3095;
		text-decoration: underline;
	}

	.foot_add a[href^="tel:"]:hover {
		text-decoration: none;
	}

	.foot_pagetop {
		bottom: 40px;
	}

	.foot_pagetop a {
		padding: 50px 10px 0;
		font-size: 87.5%;
	}

	.foot_pagetop a::before {
		width: 50px;
		height: 10px;
		top: 15px;
	}

	.foot_pagetop a:hover::before {
		top: 10px;
	}
}

@media screen and (max-width: 576px) {
	.main_footer {
		margin-top: 60px;
	}

	.foot_menu::before {
		background: url(img/toshi_foot_menu.png) left top / 700px 20px no-repeat;
	}

	.foot_menu::after {
		background: url(img/toshi_foot_menu.png) left top / 700px 20px no-repeat;
	}

	.foot_menu ul {
		gap: 0;
	}

	.foot_menu ul li {
		width: calc((100% - 20px) / 3);
	}

	.foot_menu ul li:not(:last-of-type)::after {
		right: -2.5px;
	}

	.foot_menu ul li:nth-of-type(3)::after {
		content: none;
	}

	.foot_menu ul li a {
		padding: 8px 0;
		text-align: center;
	}

	.foot_box {
		padding: 30px 0 20px;
	}

	.foot_logo {
		padding: 0 10px;
	}

	.foot_add {
		margin-top: 30px;
	}

	.foot_add strong {
		margin: 0;
		font-size: 100%;
	}

	.foot_add br {
		display: inline-block;
	}

	.foot_pagetop {
		margin-top: 20px;
		position: static;
		text-align: right;
	}

	.foot_pagetop a::before {
		width: 40px;
		height: 10px;
		top: 20px;
		left: calc(50% - 25px);
	}

	.foot_pagetop a:hover::before {
		top: 15px;
	}
}

/******************** 領域共通 ********************/
.main {
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.main h2 {
	color: #333;
	font-family: 'GenJyuuGothic';
	font-size: 200%;
	font-weight: normal;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.2em;
}

.main h2 .line {
	display: inline-block;
	padding: 0 90px 20px 50px;
	position: relative;
}

.main h2 .line::before {
	content: '';
	width: calc(100% - 50px);
	height: 2px;
	background: #a22041;
	border-radius: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}

.main h2 .line::after {
	content: '';
	width: 60px;
	height: 45px;
	background: url(img/toshi_h2_r.png) center center / contain no-repeat;
	position: absolute;
	right: 0;
	bottom: 0;
}

.main h2 a .line {
	text-decoration: underline;
}

.main h2 a:hover .line {
	text-decoration: none;
}

.main h2 a .window {
	font-size: 31%;
	letter-spacing: 0.1em;
	vertical-align: middle;
}

.main li {
	position: relative;
	padding-left: 28px;
}

.main li::before {
	content: '';
	width: 20px;
	height: 8px;
	background: url(img/toshi_icon_arrow2.png) center center / contain no-repeat;
	position: absolute;
	top: 8px;
	left: 0;
}

.main .top_area {
	margin-top: 80px;
	padding-top: 60px;
	position: relative;
}

.main .top_area::before {
	content: '';
	width: 100%;
	height: 50px;
	background: url(img/toshi_line.png) center top / 100% 100% no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -5;
}

@media (max-width: 1400px) {
	.main .top_area::before {
		background: url(img/toshi_line.png) center top / 1400px 40px no-repeat;
	}
}

@media (max-width: 1000px) {
	.main .top_area {
		margin-top: 60px;
		padding-top: 40px;
	}
}

@media screen and (max-width: 768px) {
	.main h2 {
		font-size: 175%;
	}

	.main h2 a .window {
		font-size: 35%;
	}

	.main .top_area::before {
		background: url(img/toshi_line.png) center top / 1050px 30px no-repeat;
	}
}

@media screen and (max-width: 576px) {
	.main h2 {
		font-size: 150%;
	}

	.main h2 a .window {
		font-size: 41%;
	}

	.main h2 .line {
		padding: 0 60px 15px 30px;
	}

	.main h2 .line::before {
		width: calc(100% - 40px);
		height: 1.5px;
	}

	.main h2 .line::after {
		width: 45px;
		height: 34px;
	}

	.main .top_area {
		margin-top: 50px;
		padding-top: 30px;
	}

	.main .top_area::before {
		background: url(img/toshi_line.png) center top / 700px 20px no-repeat;
	}
}

/* ----- アコーディオン ----- */
.ac_display {
	display: none;
}

@media screen and (max-width: 768px) {
	.ac_box {
		width: 100%;
		overflow: hidden;
		position: relative;
	}

	.ac_box h2 {
		padding-right: 70px;
	}

	.ac_box+div,
	.ac_box:not(.open)+ul {
		display: none;
	}

	.ac_display {
		display: inline-block;
		margin: 0;
		background: #a22041;
		border-radius: 5px;
		font-size: 75%;
		position: absolute;
		top: calc(50% - 15px);
		right: 0;
		z-index: 100;
	}

	.ac_display a {
		display: inline-block;
		color: #fff;
		text-decoration: none;
		padding: 4px 10px 4px 25px;
		position: relative;
	}

	.ac_display::before,
	.ac_display::after {
		content: '';
		background: #fff;
		width: 10px;
		height: 2px;
		position: absolute;
		top: calc(50% - 1px);
		left: 8px;
	}

	.ac_display::after {
		transform: rotate(90deg);
		transition: 0.3s;
	}

	.ac_box.active .ac_display::after {
		transform: rotate(180deg);
	}
}

/*** --------------- 分類1階層の説明文 --------------- ***/
.main .category_p01 p {
	margin: 0 0 30px;
}

/*** --------------- 緊急情報 --------------- ***/
.emergency {
	margin-bottom: 40px;
}

.emergency h2 {
	padding: 10px;
	background: #cf0c3d;
	border-radius: 10px 10px 0 0;
	color: #fff;
}

.emergency_lower {
	padding: 20px;
	border: 2px solid #cf0c3d;
	border-top: none;
	border-radius: 0 0 10px 10px;
}

.emergency_lower ul li:first-of-type {
	margin-top: 0;
}

/*** --------------- 画像リスト --------------- ***/
.main .ilist_lower {
	padding-top: 30px;
}

.main .ilist_lower ul {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.main .ilist_lower ul li {
	width: calc((100% - 60px) / 3);
	margin: 0;
	padding: 0;
}

.main .ilist_lower ul li::before {
	display: none;
}

.main .ilist_lower ul li a {
	display: inline-block;
	width: 100%;
	height: 100%;
	background: #fff8f5;
	border-radius: 10px;
	padding: 25px;
	text-decoration: none;
}

.main .ilist_lower ul li .ilist_left img {
	border-radius: 10px;
}

.main .ilist_lower ul li .ilist_title {
	margin-top: 20px;
	font-size: 125%;
	text-align: center;
}

.main .ilist_lower ul li .ilist_text {
	margin-top: 10px;
	color: #333;
}

@media screen and (max-width: 768px) {
	.main .ilist_lower ul {
		gap: 20px;
	}

	.main .ilist_lower ul li {
		width: calc((100% - 20px) / 2);
	}
}

@media screen and (max-width: 500px) {
	.main .ilist_lower ul li {
		width: 100%;
	}
}

/*** --------------- 画像リスト2 --------------- ***/
.main .ilist2_lower {
	padding-top: 30px;
}

.main .ilist2_lower ul {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.main .ilist2_lower ul li {
	width: calc((100% - 60px) / 3);
	margin: 0;
	padding: 0;
}

.main .ilist2_lower ul li::before {
	display: none;
}

.main .ilist2_lower ul li a {
	display: inline-block;
	width: 100%;
	height: 100%;
	background: #fff8f5;
	border-radius: 10px;
	padding: 25px;
	text-decoration: none;
}

.main .ilist2_lower ul li .ilist_in {
	display: flex;
	align-items: center;
	gap: 20px;
}

.main .ilist2_lower ul li .ilist_left {
	width: calc(50% - 10px);
}

.main .ilist2_lower ul li .ilist_left img {
	border-radius: 10px;
}

.main .ilist2_lower ul>li .ilist_right {
	width: calc(50% - 10px);
}

.main .ilist2_lower ul>li .ilist_title {
	margin-top: 0;
}

@media screen and (max-width: 768px) {
	.main .ilist2_lower ul {
		gap: 20px;
	}

	.main .ilist2_lower ul li {
		width: calc((100% - 20px) / 2);
	}
}

@media screen and (max-width: 500px) {
	.main .ilist2_lower ul li {
		width: 100%;
	}
}

/*** --------------- 分類 --------------- ***/
.main .category_lower {
	padding-top: 30px;
}

.main .category_lower>ul>li:first-of-type {
	margin-top: 0;
}

.main .category_3_ul {
	font-size: 87.5%;
}

.main .category_3_ul li {
	padding-left: 22px;
}

.main .category_3_ul li::before {
	width: 15px;
	height: 6px;
	top: 9px;
}

/*** --------------- 催し物・講座 --------------- ***/
.main .event_lower {
	padding-top: 30px;
}

.main .event_lower .event_list {
	padding-top: 20px;
}

.main .event_lower .event_list li {
	padding: 0;
}

.main .event_lower .event_list li:first-of-type {
	margin-top: 0;
}

.main .event_lower .event_list li::before {
	content: none;
}

.main .event_lower .event_list li .eve_cate {
	display: inline-block;
	min-width: 90px;
	margin-right: 10px;
	padding: 3px 10px;
	background: #fff09b;
	border-radius: 5px;
	color: #333;
	font-size: 87.5%;
	text-align: center;
	line-height: 1.5;
}

/* ----- 前月次月 ----- */
.event_month {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
}

.event_month li {
	margin: 0;
	padding: 0;
}

.event_month li::before {
	content: none;
}

.event_month li strong {
	margin-right: 10px;
	font-size: 150%;
}

.event_month img {
	vertical-align: middle;
}

.event_month li.pre a,
.event_month li.next a {
	display: inline-block;
	background: #fff;
	border: 1.5px solid #a22041;
	border-radius: 5px;
	color: #a22041;
	font-size: 87.5%;
	text-decoration: none;
	position: relative;
}

.event_month li.pre a {
	padding: 2px 10px 2px 20px;
}

.event_month li.next a {
	padding: 2px 20px 2px 10px;
}

.event_month li.pre a:hover,
.event_month li.next a:hover {
	background: #fff8f5;
}

.event_month li.pre a::before,
.event_month li.next a::before {
	content: '';
	width: 8px;
	height: 8px;
	border-top: 1.5px solid #a22041;
	border-right: 1.5px solid #a22041;
	transition: 0.3s;
	position: absolute;
	top: calc(50% - 4px);
}

.event_month li.pre a::before {
	transform: rotate(-135deg);
	left: 10px;
}

.event_month li.next a::before {
	transform: rotate(45deg);
	right: 10px;
}

.event_month li.pre a:hover::before {
	left: 7px;
}

.event_month li.next a:hover::before {
	right: 7px;
}

/*** --------------- イベントカレンダー --------------- ***/
.main .calendar_lower {
	padding-top: 30px;
}

.main .calendar .event_month {
	justify-content: space-between;
}

.main .calendar table {
	width: 100%;
	margin-top: 15px;
	text-align: center;
}

.main .calendar caption {
	display: none;
}

.main .calendar th {
	padding: 5px;
	border: 1px solid #d3d3d3;
}

.main .calendar th img {
	vertical-align: middle;
}

.main .calendar td {
	padding: 10px;
	border: 1px solid #d3d3d3;
}

.main .calendar .sat {
	background: #ddeeff;
}

.main .calendar .sun {
	background: #ffe8de;
}

.main .calendar .today {
	background: #fff09b;
}

/*** --------------- 新着情報 --------------- ***/
.main .new_lower {
	padding-top: 30px;
}

.main .new ul li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
	margin-top: 20px;
	padding: 0;
}

.main .new ul li:first-of-type {
	margin: 0;
}

.main .new ul li::before {
	content: none;
}

.main .new ul li.catch_lst .new_img {
	width: 300px;
}

.main .new ul li.catch_lst .new_img img {
	border-radius: 10px;
}

.main .new ul li .new_lst {
	padding-left: 28px;
	position: relative;
}

.main .new ul li.catch_lst .new_lst {
	width: calc(100% - 330px);
}

.main .new ul li .new_lst::before {
	content: '';
	width: 20px;
	height: 8px;
	background: url(img/toshi_icon_arrow2.png) center center / contain no-repeat;
	position: absolute;
	top: 8px;
	left: 0;
}

@media screen and (max-width: 768px) {
	.main .new ul li {
		gap: 20px;
	}

	.main .new ul li.catch_lst .new_img {
		width: 200px;
	}

	.main .new ul li.catch_lst .new_lst {
		width: calc(100% - 230px);
	}
}

@media screen and (max-width: 576px) {
	.main .new ul li {
		gap: 10px;
	}

	.main .new ul li.catch_lst .new_img,
	.main .new ul li.catch_lst .new_lst {
		width: 100%;
	}
}

/*** --------------- トピックス --------------- ***/
.main .topics_lower {
	padding-top: 30px;
}

.main .topics ul li:first-of-type {
	margin: 0;
}

/* ----- 新着情報・トピックス一覧、RSS ----- */
.main .more {
	margin-top: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 20px;
	font-size: 87.5%;
}

.main .more li {
	min-width: 300px;
	padding: 0;
}

.main .new .more li,
.main .topics .more li {
	margin: 0;
}

.main .more li::before {
	content: none;
}

.main .more li a {
	display: inline-block;
	width: 100%;
	height: 100%;
	border: 2px solid #a22041;
	border-radius: 10px;
	padding: 15px 80px 15px 50px;
	color: #333;
	font-size: 112.5%;
	font-family: 'GenJyuuGothic';
	text-align: center;
	text-decoration: none;
	position: relative;
}

.main .more li a:hover {
	background: #fff8f5;
}

.main .more li a::before {
	content: '';
	width: 52px;
	height: 12px;
	background: url(img/toshi_icon_arrow.png) center center / contain no-repeat;
	position: absolute;
	right: 20px;
	bottom: 15px;
	transition: 0.3s;
}

.main .more li a:hover::before {
	right: 15px;
}

.main .more li.rss span {
	padding-left: 20px;
	background: url(img/toshi_rss.svg) left center / 12px 12px no-repeat;
}

@media only screen and (max-width: 480px) {
	.main .more li {
		min-width: 100%;
	}
}

/*** --------------- ピックアップ1 --------------- ***/
.main .pickup_lower {
	padding-top: 30px;
}

.main .pickup_lower .pickup_sub:not(:first-of-type) {
	margin-top: 30px;
}

.main .pickup_lower .pickup_sub h3 {
	padding: 10px 20px;
	background: #fff8f5;
	border-radius: 10px;
	font-size: 112.5%;
}

.main .pickup_lower .pickup_sub p {
	margin-top: 15px;
	padding: 0 15px;
	font-size: 87.5%;
}

/*** --------------- ピックアップ2 --------------- ***/
.main .pickup2_lower {
	padding-top: 30px;
}

.main .pickup2_lower .pickup_sub:not(:first-of-type) {
	margin-top: 30px;
}

.main .pickup2_lower .pickup_sub h3 {
	padding: 10px 20px;
	background: #fff8f5;
	border-radius: 10px;
	font-size: 112.5%;
}

.main .pickup2_lower .pickup_sub p {
	margin-top: 15px;
	padding: 0 15px;
	font-size: 87.5%;
}

/*** --------------- ランキング --------------- ***/
.main .ranking_lower {
	padding-top: 30px;
}

.main .ranking_lower ol {
	margin-left: 25px;
}

.main .ranking_lower ol li {
	list-style-type: decimal;
	padding-left: 0;
}

.main .ranking_lower ol li:first-of-type {
	margin: 0;
}

.main .ranking_lower ol li::before {
	content: none;
}

/*** --------------- 人工・世帯数 --------------- ***/
.main .j_s_lower {
	padding-top: 30px;
}

.main .j_s dl {
	display: flex;
	flex-wrap: wrap;
}

.main .j_s dl dt {
	width: 50px;
	margin-top: 12px;
	font-weight: bold;
}

.main .j_s dl dd {
	width: calc(100% - 50px);
	margin-top: 12px;
}

.main .j_s dl dt:first-of-type,
.main .j_s dl dd:first-of-type {
	margin: 0;
}

.main .j_s li strong {
	margin-right: 8px;
}

.main .j_s p {
	font-size: 85%;
}

/*** --------------- リンク・画像領域（画像） --------------- ***/
.image {
	margin-top: 80px;
}

.main .image h2 {
	text-align: center;
}

.main .image h2 a:hover {
	opacity: 0.8;
}

.image .image_img img {
	border-radius: 10px;
}

@media (max-width: 1000px) {
	.image {
		margin-top: 60px;
	}
}

@media screen and (max-width: 576px) {
	.image {
		margin-top: 50px;
	}
}

/*** --------------- リンク・画像領域（テキスト） --------------- ***/
.link .link_text {
	display: block;
}

/*** --------------- オプション --------------- ***/
.main .option_lower {
	padding-top: 30px;
}

.main .option_lower ul li:first-of-type {
	margin: 0;
}

/*** --------------- バナー広告 --------------- ***/
.bana_lower {
	padding-top: 30px;
}

.bana ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 30px;
}

.bana ul li {
	width: 200px;
	margin: 0;
	padding: 0;
	text-align: center;
}

.bana ul li::before {
	content: none;
}

.bana ul li a {
	display: inline-block;
	width: 100%;
	height: 100%;
}

.bana ul li a img {
	transition: 0.3s;
}

.bana ul li a:hover img {
	transform: scale(1.1, 1.1);
}

.bana li .window {
	margin: 10px 0 0;
}

@media screen and (max-width: 576px) {
	.bana ul {
		gap: 15px;
	}

	.bana ul li {
		max-width: 200px;
		width: calc(50% - 7.5px);
	}
}

/******************** 領域1 ********************/

/*** --------------- メインビジュアル --------------- ***/
.mv_area {
	position: relative;
}

.mv_area::before {
	content: '';
	width: 100%;
	height: 40px;
	background: url(img/toshi_mv_top.png) center center / 100% 100% no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
}

.mv_area::after {
	content: '';
	width: 100%;
	height: 40px;
	background: url(img/toshi_mv_bottom.png) center center / 100% 100% no-repeat;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 10;
}

.mv_area .slider .slider_item {
	overflow: hidden;
	position: relative;
}

.mv_area .slider .slider_item::before {
	content: '';
	display: block;
	padding-top: 800px;
}

.mv_area .slider .slider_item img {
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: cover;
	object-position: 50% 50%;
	position: absolute;
	top: 0;
	left: 0;
}

.mv_area .slider .slider_item a:hover {
	opacity: 0.8;
}

/* ----- スライド共通 ----- */
.slider .slider_item {
	display: block !important;
}

.slider .slick-prev {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 200px;
	height: calc(100% - 120px);
	margin: 0;
	padding: 0;
	opacity: 0.6;
	background: none;
	top: 0;
	left: 0;
}

.slider .slick-next {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 200px;
	height: calc(100% - 120px);
	margin: 0;
	padding: 0;
	opacity: 0.6;
	background: none;
	top: 0;
	right: 0;
}

.slider .slick-prev:hover,
.slider .slick-next:hover {
	opacity: 1;
}

.slider .slick-prev img,
.slider .slick-next img {
	width: 30px;
	padding-top: 120px;
}

.slider .slick-prev::after,
.slider .slick-next::after {
	content: none;
}

.slider .container {
	position: relative;
}

.slider .slick_nav {
	justify-content: flex-end;
	gap: 30px;
	margin: 0;
	padding: 0 20px;
	bottom: 70px;
	left: 0;
}

.slider .slick-dots {
	flex-wrap: wrap;
	gap: 10px;
}

.slider .slick-dots li {
	width: auto;
	height: auto;
	margin: 0 !important;
	padding: 0;
}

#body .slider .slick-dots li button {
	width: auto;
	height: auto;
	min-width: 30px;
	min-height: 30px;
	padding: 5px;
	border: 1.5px solid #a22041;
	border-radius: 5px;
	color: #a22041;
	transition: 0.3s;
	position: static;
}

#body .slider .slick-dots li.slick-active button {
	background: #a22041;
	color: #fff;
	cursor: default;
}

#body .slider .slick-dots li:not(.slick-active) button:hover {
	background: #fff8f5;
}

.slider .slick_ps {
	margin-left: 0;
}

.slider .slick_ps a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	padding: 5px;
	border: 1.5px solid #a22041;
	border-radius: 5px;
}

.slider .slick_ps a:hover {
	background: #fff8f5;
}

.slider .slick_ps a img {
	width: 12px;
	vertical-align: middle;
}

@media (max-width: 1200px) {
	.mv_area .slider .slider_item::before {
		padding-top: 700px;
	}
}

@media (max-width: 1000px) {

	.mv_area::before,
	.mv_area::after {
		height: 30px;
	}

	.mv_area .slider .slider_item::before {
		padding-top: 550px;
	}

	.slider .slick-prev,
	.slider .slick-next {
		width: 120px;
	}

	.slider .slick_nav {
		bottom: 60px;
	}
}

@media screen and (max-width: 768px) {

	.mv_area::before,
	.mv_area::after {
		height: 20px;
	}

	.mv_area .slider .slider_item::before {
		padding-top: 400px;
	}

	.slider .slick-prev,
	.slider .slick-next {
		display: flex !important;
		height: calc(100% - 100px);
	}

	.slider .slick-prev img,
	.slider .slick-next img {
		width: 20px;
		padding-top: 100px;
	}

	.slider .slick_nav {
		position: absolute;
		bottom: 40px;
	}
}

@media screen and (max-width: 576px) {

	.mv_area::before,
	.mv_area::after {
		height: 15px;
	}

	.mv_area .slider .slider_item::before {
		padding-top: 250px;
	}

	.slider .slick-prev,
	.slider .slick-next {
		width: 50px;
		height: calc(100% - 60px);
	}

	.slider .slick-prev img,
	.slider .slick-next img {
		padding-top: 60px;
	}

	.slider .slick_nav {
		padding: 0 15px;
		bottom: 20px;
	}
}

/*** --------------- メッセージ --------------- ***/
.message_area {
	background: url(img/toshi_back_message.jpg) left top / cover no-repeat;
	position: relative;
}

.message_area::after {
	content: '';
	width: 100%;
	height: 50px;
	background: url(img/toshi_line_bottom.png) center center / 100% 100% no-repeat;
	position: absolute;
	right: 0;
	bottom: 0;
}

.message_area .message_box {
	padding: 100px 0 150px;
	position: relative;
}

.message_area .message_box p {
	margin-top: 40px;
	font-size: 125%;
	font-family: 'Shippori Mincho B1';
	text-shadow: 1.5px 1.5px 0 #fff, -1.5px -1.5px 0 #fff,
		-1.5px 1.5px 0 #fff, 1.5px -1.5px 0 #fff,
		0px 1.5px 0 #fff, 0 -1.5px 0 #fff,
		-1.5px 0 0 #fff, 1.5px 0 0 #fff;
	line-height: 2;
	letter-spacing: 0.2em;
	text-align: center;
	position: relative;
	z-index: 10;
}

.message_area .message_box p:first-of-type {
	margin: 0;
}

.message_area .message_box img {
	position: absolute;
}

.message_area .message_box .illust_01 {
	width: 110px;
	top: 30px;
	left: 130px;
}

.message_area .message_box .illust_02 {
	width: 110px;
	top: 160px;
	left: 0;
}

.message_area .message_box .illust_03 {
	width: 180px;
	bottom: 30px;
	left: 30px;
}

.message_area .message_box .illust_04 {
	width: 110px;
	top: 30px;
	right: 130px;
}

.message_area .message_box .illust_05 {
	width: 80px;
	top: 140px;
	right: 0;
}

.message_area .message_box .illust_06 {
	width: 100px;
	right: 80px;
	bottom: 70px;
}

@media (max-width: 1400px) {
	.message_area::after {
		background: url(img/toshi_line_bottom.png) center bottom / 1400px 40px no-repeat;
	}
}

@media (max-width: 1200px) {
	.message_area .message_box .illust_01 {
		top: 0;
		left: 80px;
	}

	.message_area .message_box .illust_03 {
		bottom: 20px;
	}

	.message_area .message_box .illust_04 {
		top: 0;
		right: 80px;
	}

	.message_area .message_box .illust_06 {
		right: 10px;
		bottom: 60px;
	}
}

@media (max-width: 1000px) {
	.message_area .message_box {
		padding: 100px 0 180px;
	}

	.message_area .message_box p {
		font-size: 112.5%;
	}

	.message_area .message_box .illust_01 {
		width: 100px;
		left: 30px;
	}

	.message_area .message_box .illust_02 {
		top: 150px;
	}

	.message_area .message_box .illust_04 {
		width: 100px;
		right: 20px;
	}

	.message_area .message_box .illust_06 {
		width: 90px;
		right: 50px;
		bottom: 50px;
	}
}

@media screen and (max-width: 768px) {
	.message_area::after {
		background: url(img/toshi_line_bottom.png) center bottom / 1050px 30px no-repeat;
	}

	.message_area .message_box {
		padding: 100px 0 150px;
	}

	.message_area .message_box .illust_01 {
		width: 80px;
		left: 30px;
	}

	.message_area .message_box .illust_02 {
		width: 85px;
		top: 10px;
		left: 180px;
	}

	.message_area .message_box .illust_03 {
		width: 150px;
		bottom: 40px;
		left: 30px;
	}

	.message_area .message_box .illust_04 {
		width: 80px;
		right: 80px;
	}

	.message_area .message_box .illust_05 {
		width: 70px;
		top: auto;
		right: 240px;
		bottom: 30px;
	}

	.message_area .message_box .illust_06 {
		width: 80px;
	}
}

@media screen and (max-width: 576px) {
	.message_area::after {
		background: url(img/toshi_line_bottom.png) center bottom / 700px 20px no-repeat;
	}

	.message_area .message_box p {
		margin-top: 20px;
		font-size: 100%;
		text-align: left;
	}

	.message_area .message_box p br {
		display: none;
	}

	.message_area .message_box .illust_01 {
		left: 10px;
	}

	.message_area .message_box .illust_02 {
		left: 120px;
	}

	.message_area .message_box .illust_03 {
		width: 130px;
		bottom: 30px;
		left: 0;
	}

	.message_area .message_box .illust_04 {
		width: 70px;
		right: 0;
	}

	.message_area .message_box .illust_05 {
		width: 60px;
		right: 90px;
		bottom: 50px;
	}

	.message_area .message_box .illust_06 {
		width: 70px;
		right: 0;
		bottom: 50px;
	}
}

/* ----- X ----- */
.message_area .message_box .sns_box {
	margin-top: 30px;
	font-family: 'Shippori Mincho B1';
	text-align: center;
}
.message_area .message_box .sns_box p {
	font-size: 100%;
}
.message_area .message_box .sns_box a {
	display: inline-block;
	margin-top: 15px;
	padding: 12px 25px 10px 60px;
	background: #000;
	border-radius: 10px;
	color: #FFF;
	text-decoration: none;
	position: relative;
}
.message_area .message_box .sns_box a img {
	width: 24px;
	top: calc(50% - 12.5px);
	left: 20px;
}
.message_area .message_box .sns_box a span {
	display: block;
	font-size: 62.5%;
}
.message_area .message_box .sns_box a:hover {
	transform: scale(1.05, 1.05);
}

@media screen and (max-width: 576px) {
	.message_area .message_box .sns_box p,
	.message_area .message_box .sns_box a {
		font-size: 87.5%;
	}
}

/******************** 領域2 ********************/

/*** --------------- お知らせ --------------- ***/
.news_area {
	padding: 80px 0;
}

.news_area h2 span {
	display: inline-block;
	padding-bottom: 15px;
	position: relative;
}

.news_area h2 span::before {
	content: '';
	width: calc(100% + 60px);
	height: 2px;
	background: #a22041;
	border-radius: 1px;
	position: absolute;
	bottom: 0;
	left: -30px;
}

.news_area h2 span::after {
	content: '';
	width: 35px;
	height: 55px;
	background: url(img/toshi_h2_pen.png) center center / contain no-repeat;
	position: absolute;
	right: -75px;
	bottom: 0;
}

.news_area .pickup_lower {
	padding-top: 50px;
}

.news_area .pickup_lower li {
	margin: 0;
	padding: 0;
}

.news_area .pickup_lower li::before {
	content: none;
}

.news_area .pickup_lower li:first-of-type::before {
	content: '';
	width: 100%;
	height: 2px;
	background: #d3d3d3;
	border-radius: 1px;
	top: 0;
	z-index: 5;
}

.news_area .pickup_lower li::after {
	content: '';
	width: 100%;
	height: 2px;
	background: #d3d3d3;
	border-radius: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}

.news_area .pickup_lower li a {
	display: flex;
	flex-wrap: wrap;
	color: #333;
	text-decoration: none;
	position: relative;
}

.news_area .pickup_lower li a:hover {
	background: #fff8f5;
}

.news_area .pickup_lower li a::before {
	content: '';
	width: 52px;
	height: 12px;
	background: url(img/toshi_icon_arrow.png) center center / contain no-repeat;
	position: absolute;
	right: 25px;
	bottom: 20px;
	transition: 0.3s;
}

.news_area .pickup_lower li a:hover::before {
	right: 20px;
}

.news_area .pickup_lower li a p {
	margin: 0;
}

.news_area .pickup_lower li a .news_date {
	width: 250px;
	padding: 20px 50px;
}

.news_area .pickup_lower li a .news_text {
	width: calc(100% - 250px);
	padding: 20px 90px 20px 0;
}

.news_area .btn_box {
	display: flex;
	justify-content: flex-end;
	margin-top: 40px;
}

.news_area .btn_box a {
	display: inline-block;
	width: 300px;
	height: 100%;
	border: 2px solid #a22041;
	border-radius: 10px;
	padding: 15px 80px 15px 50px;
	color: #333;
	font-size: 112.5%;
	font-family: 'GenJyuuGothic';
	text-align: center;
	text-decoration: none;
	position: relative;
}

.news_area .btn_box a:hover {
	background: #fff8f5;
}

.news_area .btn_box a::before {
	content: '';
	width: 52px;
	height: 12px;
	background: url(img/toshi_icon_arrow.png) center center / contain no-repeat;
	position: absolute;
	right: 20px;
	bottom: 15px;
	transition: 0.3s;
}

.news_area .btn_box a:hover::before {
	right: 15px;
}

@media (max-width: 1000px) {
	.news_area {
		padding: 60px 0;
	}

	.news_area .pickup_lower {
		padding-top: 40px;
	}

	.news_area .pickup_lower li a .news_date {
		width: 200px;
		padding: 20px;
	}

	.news_area .pickup_lower li a .news_text {
		width: calc(100% - 200px);
		padding: 20px 90px 20px 0;
	}
}

@media screen and (max-width: 768px) {
	.news_area .pickup_lower li a::before {
		width: 40px;
		height: 10px;
		right: 20px;
	}

	.news_area .pickup_lower li a:hover::before {
		right: 15px;
	}

	.news_area .pickup_lower li a .news_date {
		width: 100%;
		padding: 20px 20px 0;
	}

	.news_area .pickup_lower li a .news_text {
		width: 100%;
		padding: 5px 60px 20px 20px;
	}

	.news_area .btn_box {
		margin-top: 30px;
	}

	.news_area .btn_box a::before {
		width: 40px;
		height: 10px;
		right: 20px;
	}

	.news_area .btn_box a:hover::before {
		right: 15px;
	}
}

@media screen and (max-width: 576px) {
	.news_area {
		padding: 40px 0;
	}

	.news_area h2 span::after {
		width: 25px;
		height: 40px;
		right: -65px;
	}

	.news_area h2 span::before {
		width: calc(100% + 60px);
		height: 1.5px;
	}

	.news_area .pickup_lower {
		padding-top: 30px;
	}

	.news_area .pickup_lower li a::before {
		right: 15px;
		bottom: 15px;
	}

	.news_area .pickup_lower li a:hover::before {
		right: 10px;
	}

	.news_area .pickup_lower li a .news_date {
		padding: 12px 10px 0;
	}

	.news_area .pickup_lower li a .news_text {
		padding: 0 10px 30px;
	}

	.news_area .btn_box a::before {
		right: 15px;
		bottom: 15px;
	}

	.news_area .btn_box a:hover::before {
		right: 10px;
	}

}

/******************** 領域3 ********************/

/*** --------------- ピックアップ --------------- ***/
.pickup_area {
	padding: 120px 0;
	background: url(img/toshi_back_pickup.jpg) center center / 1200px 900px;
	position: relative;
}

.pickup_area::before {
	content: '';
	width: 100%;
	height: 50px;
	background: url(img/toshi_line_top.png) center center / 100% 100% no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}

.pickup_area::after {
	content: '';
	width: 100%;
	height: 50px;
	background: url(img/toshi_line_bottom.png) center center / 100% 100% no-repeat;
	position: absolute;
	right: 0;
	bottom: 0;
}

.pickup_area .slider .slick-slide {
	margin: 50px 75px 40px;
}

.pickup_area .slider .slider_item a {
	display: inline-block;
	color: #333;
	text-decoration: none;
	position: relative;
}

.pickup_area .slider .slider_item a::before {
	content: '';
	width: 52px;
	height: 12px;
	background: url(img/toshi_icon_arrow.png) center center / contain no-repeat;
	position: absolute;
	right: 30px;
	bottom: 30px;
	transition: 0.3s;
}

.pickup_area .slider .slider_item a:hover::before {
	right: 22px;
}

.pickup_area .slider .ilist_in {
	width: 700px;
	padding: 0 50px 50px;
	text-align: center;
	position: relative;
}

.pickup_area .slider .ilist_in::after {
	content: '';
	width: 100%;
	height: calc(100% - 200px);
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 0 30px rgba(162, 32, 65, .25);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.pickup_area .slider .ilist_left {
	position: relative;
	overflow: hidden;
	width: 100%;
}

.pickup_area .slider .ilist_left::before {
	content: '';
	display: block;
	padding-top: 66.6%;
}

.pickup_area .slider .ilist_left img {
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: cover;
	object-position: 50% 50%;
	transition: 0.3s;
	position: absolute;
	top: 0;
	left: 0;
}

.pickup_area .slider a:hover .ilist_left img {
	transform: scale(1.1, 1.1);
}

.pickup_area .slider .ilist_title {
	margin-top: 30px;
	font-size: 175%;
}

.pickup_area .slider .ilist_text {
	margin-top: 20px;
}

.pickup_area .slider .slick-prev {
	justify-content: flex-end;
	width: calc(50% - 350px);
	height: calc(100% - 70px);
}

.pickup_area .slider .slick-prev img {
	margin-right: 50px;
}

.pickup_area .slider .slick-next {
	justify-content: flex-start;
	width: calc(50% - 350px);
	height: calc(100% - 70px);
}

.pickup_area .slider .slick-next img {
	margin-left: 50px;
}

.pickup_area .slider .slick_nav {
	justify-content: center;
	position: static;
}

@media (max-width: 1400px) {
	.pickup_area::before {
		background: url(img/toshi_line_top.png) center top / 1400px 40px no-repeat;
	}

	.pickup_area::after {
		background: url(img/toshi_line_bottom.png) center bottom / 1400px 40px no-repeat;
	}
}

@media (max-width: 1200px) {
	.pickup_area .slider .slick-slide {
		margin: 50px 60px 40px;
	}

	.pickup_area .slider .ilist_in {
		width: 600px;
	}

	.pickup_area .slider .ilist_in::after {
		height: calc(100% - 180px);
	}

	.pickup_area .slider .slick-prev,
	.pickup_area .slider .slick-next {
		width: calc(50% - 300px);
	}
}

@media (max-width: 1000px) {
	.pickup_area {
		padding: 100px 0;
	}

	.pickup_area .slider .slick-slide {
		margin: 50px 40px 40px;
	}

	.pickup_area .slider .ilist_in {
		width: 480px;
		padding: 0 30px 50px;
	}

	.pickup_area .slider .ilist_in::after {
		height: calc(100% - 150px);
	}

	.pickup_area .slider .slick-prev,
	.pickup_area .slider .slick-next {
		width: calc(50% - 240px);
	}

	.pickup_area .slider .slick-prev img {
		margin-right: 30px;
	}

	.pickup_area .slider .slick-next img {
		margin-left: 30px;
	}
}

@media screen and (max-width: 768px) {
	.pickup_area {
		padding: 80px 0;
	}

	.pickup_area::before {
		background: url(img/toshi_line_top.png) center top / 1050px 30px no-repeat;
	}

	.pickup_area::after {
		background: url(img/toshi_line_bottom.png) center bottom / 1050px 30px no-repeat;
	}

	.pickup_area .slider .slick-slide {
		margin: 40px 40px 40px;
	}

	.pickup_area .slider .ilist_in {
		width: 450px;
	}

	.pickup_area .slider .ilist_title {
		margin-top: 20px;
		font-size: 150%;
	}

	.pickup_area .slider .ilist_text {
		margin-top: 10px;
	}

	.pickup_area .slider .slick-prev,
	.pickup_area .slider .slick-next {
		width: calc(50% - 225px);
	}

}

@media screen and (max-width: 576px) {
	.pickup_area {
		padding: 60px 0;
	}

	.pickup_area::before {
		background: url(img/toshi_line_top.png) left top / 700px 20px no-repeat;
	}

	.pickup_area::after {
		background: url(img/toshi_line_bottom.png) center bottom / 700px 20px no-repeat;
	}

	.pickup_area .slider .slick-slide {
		margin: 30px;
	}

	.pickup_area .slider .slider_item a::before {
		width: 40px;
		height: 10px;
		right: 20px;
		bottom: 20px;
	}

	.pickup_area .slider .slider_item a:hover::before {
		right: 15px;
	}

	.pickup_area .slider .ilist_in {
		width: 250px;
		padding: 0 15px 40px;
	}

	.pickup_area .slider .ilist_in::after {
		height: calc(100% - 80px);
	}

	.pickup_area .slider .ilist_title {
		margin-top: 10px;
		font-size: 125%;
	}

	.pickup_area .slider .ilist_text {
		margin-top: 5px;
	}

	.pickup_area .slider .slick-prev,
	.pickup_area .slider .slick-next {
		width: calc(50% - 125px);
	}

	.pickup_area .slider .slick-prev img {
		margin-right: 15px;
	}

	.pickup_area .slider .slick-next img {
		margin-left: 15px;
	}
}

/******************** 領域4 ********************/

/*** --------------- 取り組み --------------- ***/
.work_area {
	padding: 80px 0;
}

.work_area h2 .line {
	padding: 0 50px 20px 90px;
}

.work_area h2 .line::before {
	left: auto;
	right: 0;
}

.work_area h2 .line::after {
	transform: scaleX(-1);
	right: auto;
	left: 0;
}

.work_area .ilist_lower {
	padding-top: 50px;
}

.work_area .ilist_lower ul {
	gap: 50px;
}

.work_area .ilist_lower ul li {
	width: calc((100% - 300px) / 3);
}

.work_area .ilist_lower ul li:nth-of-type(6n+4) {
	margin-left: 200px;
}

.work_area .ilist_lower ul li::after {
	content: none;
	width: 150px;
	height: 220px;
	position: absolute;
	top: calc(50% - 110px);
}

.work_area .ilist_lower ul li:nth-of-type(12n+3)::after {
	content: '';
	background: url(img/toshi_illust_w01.png) center center / contain no-repeat;
	right: -200px;
}

.work_area .ilist_lower ul li:nth-of-type(12n+4)::after {
	content: '';
	background: url(img/toshi_illust_w02.png) center center / contain no-repeat;
	left: -200px;
}

.work_area .ilist_lower ul li:nth-of-type(12n+9)::after {
	content: '';
	background: url(img/toshi_illust_w03.png) center center / contain no-repeat;
	right: -200px;
}

.work_area .ilist_lower ul li:nth-of-type(12n+10)::after {
	content: '';
	background: url(img/toshi_illust_w04.png) center center / contain no-repeat;
	left: -200px;
}

.work_area .ilist_lower ul li a {
	padding: 0;
	background: 0;
	color: #333;
}

.work_area .ilist_lower ul li a::before {
	content: '';
	width: 52px;
	height: 12px;
	background: url(img/toshi_icon_arrow.png) center center / contain no-repeat;
	position: absolute;
	right: 20px;
	bottom: 10px;
	transition: 0.3s;
}

.work_area .ilist_lower ul li a:hover::before {
	right: 10px;
}

.work_area .ilist_lower ul li .ilist_left {
	position: relative;
	overflow: hidden;
	width: 100%;
}

.work_area .ilist_lower ul li .ilist_left::before {
	content: '';
	display: block;
	padding-top: 66.6%;
}

.work_area .ilist_lower ul li .ilist_left img {
	width: 100%;
	height: 100%;
	margin: auto;
	border-radius: 0;
	object-fit: cover;
	object-position: 50% 50%;
	transition: 0.3s;
	position: absolute;
	top: 0;
	left: 0;
}

.work_area .ilist_lower ul li a:hover .ilist_left img {
	transform: scale(1.1, 1.1);
}

.work_area .ilist_lower ul li .ilist_right {
	padding: 20px 20px 35px;
}

.work_area .ilist_lower ul li .ilist_title {
	margin: 0;
	text-align: left;
}

@media (max-width: 1200px) {
	.work_area .ilist_lower ul {
		gap: 40px;
	}

	.work_area .ilist_lower ul li {
		width: calc((100% - 250px) / 3);
	}

	.work_area .ilist_lower ul li:nth-of-type(6n+4) {
		margin-left: 160px;
	}

	.work_area .ilist_lower ul li::after {
		width: 120px;
		height: 176px;
		top: calc(50% - 88px);
	}

	.work_area .ilist_lower ul li:nth-of-type(12n+3)::after {
		right: -160px;
	}

	.work_area .ilist_lower ul li:nth-of-type(12n+4)::after {
		left: -160px;
	}

	.work_area .ilist_lower ul li:nth-of-type(12n+9)::after {
		right: -160px;
	}

	.work_area .ilist_lower ul li:nth-of-type(12n+10)::after {
		left: -160px;
	}

	.work_area .ilist_lower ul li .ilist_right {
		padding: 15px 10px 35px;
	}
}

@media (max-width: 1000px) {
	.work_area {
		padding: 60px 0;
	}

	.work_area .ilist_lower ul li {
		width: calc((100% - 200px) / 2);
	}

	.work_area .ilist_lower ul li:nth-of-type(n) {
		margin-left: 0;
	}

	.work_area .ilist_lower ul li:nth-of-type(4n+3) {
		margin-left: 160px;
	}

	.work_area .ilist_lower ul li:nth-of-type(12n+3)::after,
	.work_area .ilist_lower ul li:nth-of-type(12n+4)::after,
	.work_area .ilist_lower ul li:nth-of-type(12n+9)::after,
	.work_area .ilist_lower ul li:nth-of-type(12n+10)::after {
		content: none;
	}

	.work_area .ilist_lower ul li:nth-of-type(8n+2)::after {
		content: '';
		background: url(img/toshi_illust_w01.png) center center / contain no-repeat;
		left: auto;
		right: -160px;
	}

	.work_area .ilist_lower ul li:nth-of-type(8n+3)::after {
		content: '';
		background: url(img/toshi_illust_w02.png) center center / contain no-repeat;
		left: -160px;
	}

	.work_area .ilist_lower ul li:nth-of-type(8n+6)::after {
		content: '';
		background: url(img/toshi_illust_w03.png) center center / contain no-repeat;
		left: auto;
		right: -160px;
	}

	.work_area .ilist_lower ul li:nth-of-type(8n+7)::after {
		content: '';
		background: url(img/toshi_illust_w04.png) center center / contain no-repeat;
		left: -160px;
	}
}

@media screen and (max-width: 768px) {
	.work_area .ilist_lower ul {
		gap: 30px 20px;
	}

	.work_area .ilist_lower ul li {
		width: calc((100% - 120px) / 2);
	}

	.work_area .ilist_lower ul li:nth-of-type(4n+3) {
		margin-left: 100px;
	}

	.work_area .ilist_lower ul li::after {
		width: 80px;
		height: 120px;
		top: auto;
		bottom: 80px;
	}

	.work_area .ilist_lower ul li:nth-of-type(8n+2)::after {
		content: '';
		background: url(img/toshi_illust_w01.png) center center / contain no-repeat;
		right: -100px;
	}

	.work_area .ilist_lower ul li:nth-of-type(8n+3)::after {
		content: '';
		background: url(img/toshi_illust_w02.png) center center / contain no-repeat;
		left: -100px;
	}

	.work_area .ilist_lower ul li:nth-of-type(8n+6)::after {
		content: '';
		background: url(img/toshi_illust_w03.png) center center / contain no-repeat;
		right: -100px;
	}

	.work_area .ilist_lower ul li:nth-of-type(8n+7)::after {
		content: '';
		background: url(img/toshi_illust_w04.png) center center / contain no-repeat;
		left: -100px;
	}
}

@media screen and (max-width: 576px) {
	.work_area {
		padding: 40px 0;
	}

	.work_area h2 .line {
		padding: 0 30px 15px 60px;
	}

	.work_area .ilist_lower ul li {
		width: calc(100% - 80px);
	}

	.work_area .ilist_lower ul li:nth-of-type(n) {
		margin-left: 0;
	}

	.work_area .ilist_lower ul li:nth-of-type(2n+2) {
		margin-left: 80px;
	}

	.work_area .ilist_lower ul li::after {
		width: 60px;
		height: 88px;
		bottom: 20px;
	}

	.work_area .ilist_lower ul li:nth-of-type(8n+2)::after,
	.work_area .ilist_lower ul li:nth-of-type(8n+3)::after,
	.work_area .ilist_lower ul li:nth-of-type(8n+6)::after,
	.work_area .ilist_lower ul li:nth-of-type(8n+7)::after {
		content: none;
	}

	.work_area .ilist_lower ul li:nth-of-type(4n+1)::after {
		content: '';
		background: url(img/toshi_illust_w01.png) center center / contain no-repeat;
		left: auto;
		right: -80px;
	}

	.work_area .ilist_lower ul li:nth-of-type(4n+2)::after {
		content: '';
		background: url(img/toshi_illust_w02.png) center center / contain no-repeat;
		left: -80px;
	}

	.work_area .ilist_lower ul li:nth-of-type(4n+3)::after {
		content: '';
		background: url(img/toshi_illust_w03.png) center center / contain no-repeat;
		left: auto;
		right: -80px;
	}

	.work_area .ilist_lower ul li:nth-of-type(4n+4)::after {
		content: '';
		background: url(img/toshi_illust_w04.png) center center / contain no-repeat;
		left: -80px;
	}

	.work_area .ilist_lower ul li .ilist_right {
		padding: 15px 10px 20px;
	}

	.work_area .ilist_lower ul li a::before {
		bottom: 0;
	}

	.main .ilist_lower ul li .ilist_text {
		margin-top: 5px;
	}
}

/*** --------------- 関連サイト --------------- ***/
.site_area {
	padding-top: 80px;
	position: relative;
}

.site_area::before {
	content: '';
	width: 100%;
	height: 50px;
	background: url(img/toshi_line.png) center center / 100% 100% no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}

.site_area h2 {
	font-size: 175%;
}

.site_area h2 .line::before {
	background: #d3d3d3;
}

.site_area h2 .line::after {
	background: url(img/toshi_h2_g.png) center center / contain no-repeat;
}

.site_area .bana_lower {
	padding-top: 50px;
}

@media (max-width: 1400px) {
	.site_area::before {
		background: url(img/toshi_line.png) center top / 1400px 40px no-repeat;
	}
}

@media (max-width: 1000px) {
	.site_area {
		padding-top: 60px;
	}

	.site_area .bana_lower {
		padding-top: 40px;
	}
}

@media screen and (max-width: 768px) {
	.site_area::before {
		background: url(img/toshi_line.png) center top / 1050px 30px no-repeat;
	}

	.site_area h2 {
		font-size: 150%;
	}

	.site_area .bana_lower {
		padding-top: 30px;
	}
}

@media screen and (max-width: 576px) {
	.site_area {
		padding-top: 40px;
	}

	.site_area::before {
		background: url(img/toshi_line.png) center top / 700px 20px no-repeat;
	}

	.site_area h2 {
		font-size: 125%;
	}

	.site_area .bana_lower {
		padding-top: 25px;
	}
}

/******************** 中ページ ********************/
.main_naka {
	margin: 0 auto;
}

/*** --------------- ヘッダー --------------- ***/
.naka_header .head_main {
	padding: 50px 0 30px;
}

@media (max-width: 1000px) {
	.naka_header .head_main {
		padding: 40px 0 30px;
	}
}

@media screen and (max-width: 768px) {
	.naka_header .head_main {
		padding: 20px 0;
	}
}

/*** --------------- ぱんくずリスト --------------- ***/
.pankuzu {
	max-width: 100%;
	margin: 0;
	padding: 10px 0;
	background: #fff8f5;
	font-size: 87.5%;
}

.pankuzu ul {
	display: flex;
	flex-wrap: wrap;
}

.pankuzu li {
	padding: 0 50px 0 0;
}

.pankuzu li::after {
	content: '';
	width: 16px;
	height: 6px;
	background: url(img/toshi_icon_arrow2.png) center center / contain no-repeat;
	border: none;
	top: 9px;
	right: 15px;
}

/*** --------------- 中ページ メイン --------------- ***/
.main_naka_h1 {
	margin: 0;
	padding: 0;
	max-width: 100%;
	position: relative;
}

.main_naka_h1::before {
	content: '';
	width: calc(100% - 110px);
	height: 2px;
	background: #a22041;
	position: absolute;
	bottom: 0;
	left: 0;
}

.main_naka_h1::after {
	content: '';
	width: 120px;
	height: 45px;
	background: url(img/toshi_h1_pc.png) center center / contain no-repeat;
	position: absolute;
	right: 0;
	bottom: 0;
}

.main_naka_h1 h1 {
	padding: 25px 20px 15px 0;
	font-size: 200%;
	line-height: 1.5;
}

.main_naka h2 {
	margin: 30px 0 0;
	padding: 12px 20px 12px 70px;
	background: #ffe8de;
	border-radius: 15px;
	font-size: 150%;
	line-height: 1.5;
	position: relative;
}

.main_naka h2::after {
	content: '';
	width: 36px;
	height: 36px;
	background: url(img/toshi_h2_book.png) center center / contain no-repeat;
	position: absolute;
	top: calc(50% - 18px);
	left: 18px;
}

.main_naka h3 {
	margin: 20px 0 0;
	padding: 0 10px 10px;
	font-size: 125%;
	position: relative;
}

.main_naka h3::before {
	content: '';
	width: 100%;
	height: 2px;
	background: #a22041;
	border-radius: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}

.main_naka h3::after {
	content: '';
	width: 100%;
	height: 2px;
	background: #a22041;
	border-radius: 1px;
	position: absolute;
	bottom: 4px;
	left: 0;
}

.main_naka h4 {
	margin: 20px 0 0;
	padding: 0 10px 0 22px;
	font-size: 112.5%;
	position: relative;
}

.main_naka h4::before {
	content: '';
	width: 14px;
	height: 14px;
	background: #a22041;
	border-radius: 10px;
	position: absolute;
	top: calc(50% - 7px);
	left: 0;
}

.main_naka li {
	position: relative;
	padding-left: 28px;
}

.main_naka li::before {
	content: '';
	width: 20px;
	height: 8px;
	background: url(img/toshi_icon_arrow2.png) center center / contain no-repeat;
	position: absolute;
	top: 8px;
	left: 0;
}

.main_naka li p {
	margin-top: 5px;
	font-size: 87.5%;
}

@media (max-width: 1400px) {
	.main_naka_h1 h1 {
		padding: 25px 100px 15px 0;
	}
}

@media (max-width: 1000px) {
	.main_naka_h1::before {
		width: calc(100% - 50px);
	}

	.main_naka_h1::after {
		width: 60px;
		background: url(img/toshi_h1_sp.png) center center / contain no-repeat;
	}

	.main_naka_h1 h1 {
		padding: 25px 45px 15px 0;
	}
}

@media only screen and (max-width: 768px) {
	.main_naka {
		width: 100%;
		padding: 0 15px;
	}
}

/*** --------------- 緊急情報 --------------- ***/
.design .main_naka .emergency {
	margin: 30px 0 0;
}

.design .main_naka .emergency .h2 {
	background: none;
}

.design .main_naka .emergency h2 {
	margin: 0;
	background: #cf0c3d;
	border-radius: 10px 10px 0 0;
	float: none;
}

.design .main_naka .emergency .emergency_lower {
	padding: 20px;
	border: 2px solid #cf0c3d;
}

/*** --------------- 分類 --------------- ***/
.design .main_naka .category_p01 {
	margin-top: 20px;
}

.design .main_naka .cat_new h2::after {
	background: url(img/toshi_h2_book.png) center center / contain no-repeat;
}

.design .main_naka .cat_new ul {
	margin-top: 20px;
}

.design .main_naka .cat_new ul li {
	display: flex;
	flex-wrap: wrap;
}

.design .main_naka .cat_new .date {
	width: 160px;
	margin: 0;
	font-size: 100%;
	float: none;
}

.design .main_naka .cat_new .list {
	width: calc(100% - 160px);
	padding-left: 0;
}

@media screen and (max-width: 768px) {

	.design .main_naka .cat_new .date,
	.design .main_naka .cat_new .list {
		width: 100%;
	}
}

/* ----- サイドメニューあり ----- */
.design .main_naka .page_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.design .main_naka .page_left {
	width: calc(100% - 230px);
	margin: 0;
}

.design .main_naka .page_right {
	width: 200px;
	margin: 0;
}

.design .main_naka .page_right_cat {
	margin-top: 30px;
	padding: 15px 20px 20px;
	background: #fff8f5;

	border-radius: 10px;
}

.design .main_naka .page_right_cat h2 {
	margin: 0;
	padding: 0 10px 10px;
	background: none;
	font-size: 125%;
}

.design .main_naka .page_right_cat h2::before {
	content: '';
	width: 100%;
	height: 2px;
	background: #a22041;
	border-radius: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}

.design .main_naka .page_right_cat h2::after {
	content: none;
}

.design .main_naka .page_right ul {
	margin: 15px 0 0;
	padding: 0;
	background: none;
	border: none;
}

@media screen and (max-width: 768px) {

	.design .main_naka .page_left,
	.design .main_naka .page_right {
		width: 100%;
	}
}

/* ----- 分類 リンク----- */
.design .main_naka .category_01,
.design .main_naka .category_02,
.design .main_naka .category_end {
	width: 100%;
	margin-top: 30px;
}

.design .main_naka .category_01 article,
.design .main_naka .category_02 article,
.design .main_naka .category_end article {
	margin-top: 25px;
}

.design .main_naka .category_01 article:first-of-type,
.design .main_naka .category_02 article:first-of-type,
.design .main_naka .category_end article:first-of-type {
	margin-top: 0;
}

.design .main_naka .category_01 a,
.design .main_naka .category_02 a,
.design .main_naka .category_end a {
	display: inline-block;
	width: 100%;
	padding: 20px 20px 25px;
	border: 2px solid #a22041;
	border-radius: 10px;
	color: #333;
	text-decoration: none;
	position: relative;
}

.design .main_naka .category_01 .date,
.design .main_naka .category_02 .date,
.design .main_naka .category_end .date {
	margin-bottom: 3px;
}

.design .main_naka .category_01 h2,
.design .main_naka .category_02 h2,
.design .main_naka .category_end h2 {
	margin: 0;
	padding: 0;
	background: none;
	font-size: 125%;
}

.design .main_naka .category_01 h2::after,
.design .main_naka .category_02 h2::after,
.design .main_naka .category_end h2::after {
	content: none;
}

.design .main_naka .category_01 h2 .window,
.design .main_naka .category_02 h2 .window,
.design .main_naka .category_end h2 .window {
	font-size: 55%;
}

.design .main_naka .category_01 a:hover,
.design .main_naka .category_02 a:hover,
.design .main_naka .category_end a:hover {
	background: #fff8f5;
}

.design .main_naka .category_01 a::after,
.design .main_naka .category_02 a::after,
.design .main_naka .category_end a::after {
	content: '';
	width: 52px;
	height: 12px;
	background: url(img/toshi_icon_arrow.png) center center / contain no-repeat;
	position: absolute;
	right: 15px;
	bottom: 12px;
	transition: 0.3s;
}

.design .main_naka .category_01 a:hover::after,
.design .main_naka .category_02 a:hover::after,
.design .main_naka .category_end a:hover::after {
	right: 10px;
}

.design .main_naka .category_end p {
	margin-top: 5px;
	font-size: 87.5%;
}

/* ----- 分類 アイキャッチ ----- */
.design .main_naka .catch_list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
}

.design .main_naka .catch_list .cat_img {
	width: 300px;
}

.design .main_naka .catch_list .cat_img img {
	border-radius: 10px;
}

.design .main_naka .catch_list .cat_lst {
	width: calc(100% - 330px);
	margin: 0;
}

@media (max-width: 1000px) {
	.design .main_naka .catch_list {
		gap: 20px;
	}

	.design .main_naka .catch_list .cat_img {
		width: 200px;
	}

	.design .main_naka .catch_list .cat_lst {
		width: calc(100% - 230px);
	}
}

@media screen and (max-width: 576px) {
	.design .main_naka .catch_list {
		gap: 10px;
	}

	.design .main_naka .catch_list .cat_img,
	.design .main_naka .catch_list .cat_lst {
		width: 100%;
	}
}

/* ----- 分類 関連項目 ----- */
.design .main_naka .kanrencon {
	width: 100%;
	margin-top: 30px;
	padding: 15px 20px 20px;
	background: #fff8f5;
	border-radius: 10px;
}
.design .main_naka .kanrencon h2 {
	margin: 0;
	padding: 0 10px 10px;
	background: none;
	font-size: 125%;
}
.design .main_naka .kanrencon h2::before {
	content: '';
	width: 100%;
	height: 2px;
	background: #a22041;
	border-radius: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}
.design .main_naka .kanrencon h2::after {
	content: none;
}
.design .main_naka .kanrencon ul {
	margin-top: 15px;
}

/* ----- 分類 バナー ----- */
.design .main_naka .bana {
	margin-top: 40px;
	padding: 30px 20px;
	background: #eee;
	border-radius: 10px;
	text-align: center;
}

.design .main_naka .bana h2 {
	margin: 0;
	padding: 0;
}

.design .main_naka .bana h2 {
	background: none;
	color: #333;
}

.design .main_naka .bana .bana_lower {
	padding-top: 20px;
}

.design .main_naka .bana li {
	width: 200px;
	margin: 0;
}

@media screen and (max-width: 576px) {
	.design .main_naka .bana ul {
		gap: 15px;
	}

	.design .main_naka .bana ul li {
		max-width: 200px;
		width: calc(50% - 7.5px);
	}
}

/*** --------------- 分類カスタマイズ --------------- ***/
.design .main_naka .cate_custom {
	width: 100%;
}

.design .main_naka .cate_custom .category_end {
	margin: 0;
}

.design .main_naka .cate_custom .category_end li {
	margin-top: 25px;
	padding: 0;
	border: none;
}

.design .main_naka .cate_custom .category_end h3 {
	margin: 0;
	padding: 0;
}

.design .main_naka .cate_custom .category_end h3::before,
.design .main_naka .cate_custom .category_end h3::after {
	content: none;
}

.design .main_naka .cate_custom .category_end h3 .window {
	font-size: 55%;
}

/* ----- アコーディオン ----- */
.cate_ac_title {
	width: 100%;
	position: relative;
	cursor: pointer;
}

.cate_ac_title:hover {
	opacity: 0.8;
}

.cate_ac_title h2 {
	padding-right: 70px;
}

.cate_ac_btn {
	display: inline-block;
	margin: 0;
	background: #a22041;
	border: none;
	border-radius: 5px;
	font-size: 70%;
	transition: 0.3s;
	position: absolute;
	top: calc(50% - 12px);
	right: 15px;
	z-index: 100;
}

.cate_ac_btn::before,
.cate_ac_btn::after {
	content: '';
	background: #fff;
	width: 10px;
	height: 2px;
	position: absolute;
	top: calc(50% - 1px);
	left: 5px;
}

.cate_ac_btn::after {
	transform: rotate(90deg);
	transition: 0.3s;
}

.cate_ac_title.active .cate_ac_btn::after {
	transform: rotate(180deg);
}

.cate_ac_btn a {
	display: inline-block;
	color: #fff;
	text-decoration: none;
	padding: 2px 5px 2px 20px !important;
	position: relative;
}

.cate_ac_box {
	display: none;
}

.cate_custom article:first-of-type .cate_ac_box {
	display: block;
}

/*** --------------- 新着情報 --------------- ***/
.innew .design .main_naka .new_post ul li {
	margin-top: 0;
	padding: 20px 0;
	border-bottom: 2px dashed #d3d3d3;
}

.innew .design .main_naka .new_post ul li.catch_lst {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
}

.innew .design .main_naka .new_post ul li.catch_lst .new_img {
	width: 300px;
}

.innew .design .main_naka .new_post ul li.catch_lst .new_img img {
	border-radius: 10px;
}

.innew .design .main_naka .new_post ul li .new_lst {
	margin: 0;
	padding-left: 28px;
	position: relative;
}

.innew .design .main_naka .new_post ul li.catch_lst .new_lst {
	width: calc(100% - 330px);
}

.innew .design .main_naka .new_post ul li .new_lst::before {
	content: '';
	width: 20px;
	height: 8px;
	background: url(img/toshi_icon_arrow2.png) center center / contain no-repeat;
	position: absolute;
	top: 8px;
	left: 0;
}

@media screen and (max-width: 768px) {
	.innew .design .main_naka .new_post ul li.catch_lst {
		gap: 20px;
	}

	.innew .design .main_naka .new_post ul li.catch_lst .new_img {
		width: 200px;
	}

	.innew .design .main_naka .new_post ul li.catch_lst .new_lst {
		width: calc(100% - 230px);
	}
}

@media screen and (max-width: 576px) {
	.innew .design .main_naka .new_post ul li.catch_lst {
		gap: 10px;
	}

	.innew .design .main_naka .new_post ul li.catch_lst .new_img,
	.innew .design .main_naka .new_post ul li.catch_lst .new_lst {
		width: 100%;
	}
}

/* ----- ページャー ----- */
.main_naka .page_head {
	margin-top: 30px;
	padding: 8px 20px 20px;
	background: #fff8f5;
	border-radius: 10px;
	font-size: 87.5%;
}

.main_naka .page_head .pager {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-top: 15px;
}

.main_naka .page_head .pager p {
	margin: 0;
}

.main_naka .page_head .pager ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.main_naka .page_head .pager ul li {
	border: none;
	margin: 0;
	padding: 0;
}

.main_naka .page_head .pager ul li.active {
	display: inline-block;
	padding: 2px 8px;
	background: #a22041;
	border-radius: 5px;
	color: #fff;
	text-decoration: none;
}

.main_naka .page_head .pager ul li::before {
	content: none;
}

.main_naka .page_head .pager a {
	display: inline-block;
	padding: 2px 8px;
	background: #fff;
	border: 1.5px solid #a22041;
	border-radius: 5px;
	color: #a22041;
	text-decoration: none;
}

.main_naka .page_head .pager a:hover {
	background: #fff8f5;
}

/* ----- コンテンツなし ----- */
.design .main_naka .no_post {
	margin-top: 20px;
}

/*** --------------- ピックアップ --------------- ***/
.design .main_naka .pickup_post li {
	display: flex;
	flex-wrap: wrap;
}

.design .main_naka .pickup_post li .date {
	width: 160px;
	margin: 0;
	font-size: 100%;
	float: none;
}

.design .main_naka .pickup_post li a {
	display: inline-block;
	width: calc(100% - 160px);
	padding-left: 0;
}

@media screen and (max-width: 768px) {

	.design .main_naka .pickup_post li .date,
	.design .main_naka .pickup_post li a {
		width: 100%;
	}
}
