@charset "utf-8";
/* =========================================================
   Template.css - 心彩テーマ UIレイヤー
   version: 2025.10 optimized
   ---------------------------------------------------------
   ・フォント/変数定義
   ・ベースレイアウト設定
   ・共通パーツ（テーブル / パンくず / アコーディオン）
   ・レスポンシブ構造
========================================================= */


/* =========================================================
   # FONT SETTINGS
========================================================= */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');

body {
	color: #262626;
	font-family: 'Noto Sans JP', "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
	position: relative;
}
/* # =================================================================
#### font-size
# ================================================================= */
/*  */
:root{
	font-size : 16px;

	/* Theme Colors */
	--font-color : #262626;
	--key-color : #0A5774;

	/* Font Sizes */
	--1px : 0.0625rem;
	--2px : 0.125rem;
	--3px : 0.1875rem;
	--4px : 0.25rem;
	--5px : 0.3125rem;
	--6px : 0.375rem;
	--7px : 0.4375rem;
	--8px : 0.5rem;
	--9px : 0.5625rem;
	--10px : 0.625rem;
	--11px : 0.6875rem;
	--12px : 0.75rem;
	--13px : 0.8125rem;
	--14px : 0.875rem;
	--15px : 0.9375rem;
	--16px : 1rem;
	--17px : 1.0625rem;
	--18px : 1.125rem;
	--19px : 1.1875rem;
	--20px : 1.25rem;
	--21px : 1.3125rem;
	--22px : 1.375rem;
	--23px : 1.4375rem;
	--24px : 1.5rem;
	--25px : 1.5625rem
	--26px : 1.625rem;
	--28px : 1.75rem;
	--30px : 1.875rem;
	--31px : 1.9375rem;
	--32px : 2rem;
	--36px : 2.25rem;
}
/* =========================================================
   # TYPOGRAPHY
========================================================= */
h1 {
	font-size: var(--36px);
}
h2 {
	font-size: var(--24px);
}
h3 {
	font-size: var(--20px);
}
h4 {
	font-size: var(--18px);
}
p, a, li, dt, dd, th, td {
	font-size: var(--16px);
}
small {
	font-size: var(--14px);
}
/* =========================================================
   # TABLE
========================================================= */
table{
	border-collapse : collapse;
	width : 100%;
}
th,
td{
	border : 1px solid var(--font-color);
	padding : 10px;
	text-align : center;
}
/* =========================================================
   # COMMON ELEMENTS
========================================================= */
img{
	display :block;
}
img.obj{
	height : 100% !important;
	object-fit : cover;
	object-position : center center;
	font-family : 'object-fit:cover; object-position: center center;';
}
a{
	color : #1D1D1D;
	text-decoration : none;
	transition : 0.5s;
}
a:hover{
	transition : 0.5s;
}
ol li,ul li{
	display : list-item;
	list-style : none;
}
figure{
	margin : 0;
}
:focus{
	outline: none;
}

/* # =================================================================
#### sidebar
# ================================================================= */

/* # =================================================================
#### accordion
# ================================================================= */
ul.accordion{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
ul.accordion > li{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
	border-left : solid 1px #DDDDDD;
	border-right : solid 1px #DDDDDD;
}
ul.accordion > li:first-child{
	border-top : solid 1px #DDDDDD;
}
ul.accordion a{
	display : block;
	padding : 5px;
	background-position : 97% center;
	background-repeat : no-repeat;
	text-decoration : none;
	color : var(--font-color);
	border-bottom : solid 1px #DDDDDD;
	transition : 0.8s;
}
ul.accordion a:hover{
	background : var(--key-color);
	color : #573001;
	transition : 0.8s;
}
ul.accordion span.ac{
	position : relative;
	display : block;
	border-bottom : solid 1px #DDDDDD;
	line-height : 1;
	color : var(--font-color);
	padding : 15px 30px;
	transition : 0.8s;
}
ul.accordion span.ac:hover{
	background : var(--key-color);
	color : var(--font-color);
	cursor : pointer;
	transition : 0.8s;
}
ul.accordion ul{
	display : none;
}
ul.accordion > li > p span{
	transition : 0.8s;
}
ul.accordion > li > p span.open{
	transition : 0.8s;
}
ul.accordion > li > p span.open:hover{
	color : #573001;
	transition : 0.8s;
}
ul.accordion > li > ul > li{
	transition : 0.8s;
}
ul.accordion > li > ul > li > p{
	transition : 0.8s;
}
ul.accordion > li > ul > li > a{
	text-indent : 1.5em;
	transition : 0.8s;
}
ul.accordion > li > ul > li > ul > li{
	transition : 0.8s;
}
ul.accordion > li > ul > li > ul > li:last-child{
	border : none;
	transition : 0.8s;
}
ul.accordion span.ac:after{
	content : "";
	position : absolute;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	top : -6px;
	bottom : 0;
	left : auto;
	right : 20px;
	margin : auto;
	border-right : 1px solid var(--font-color);
	border-bottom : 1px solid var(--font-color);
	width : 10px;
	height : 10px;
	transform : rotate(45deg);
	transition : 0.8s;
}
ul.accordion span.ac:hover:after{
	top : 6px;
	transform : rotate(-135deg);
	transition : 0.8s;
}
ul.accordion span.ac.open{
	background : var(--key-color);
}
ul.accordion span.ac.open:after{
	top : 6px;
	transform : rotate(-135deg);
	transition : 0.8s;
}
/* # =================================================================
#### responsive
# ================================================================= */
/* # =================================================================
#### 1366px
# ================================================================= */
@media screen and (max-width: 1366px){

}/*** 1366px ***/
/* # =================================================================
#### 1200px
# ================================================================= */
@media screen and (max-width: 1200px){

}/*** 1200px ***/
/* # =================================================================
#### 1024px
# ================================================================= */
@media screen and (max-width: 1024px){

}/*** 1024px ***/
/* # =================================================================
#### 896px
# ================================================================= */
@media screen and (max-width: 896px){

}/*** 896px ***/
/* # =================================================================
#### 600px
# ================================================================= */
@media screen and (max-width: 600px){
html{
	--1px : calc(0.0625rem * 0.8);
	--2px : calc(0.125rem; * 0.8);
	--3px : calc(0.1875rem * 0.8);
	--4px : calc(0.25rem * 0.8);
	--5px : calc(0.3125rem * 0.8);
	--6px : calc(0.375rem * 0.8);
	--7px : calc(0.4375rem * 0.8);
	--8px : calc(0.5rem * 0.8);
	--9px : calc(0.5625rem; * 0.8);
	--10px : calc(0.625rem * 0.8);
	--11px : calc(0.6875rem * 0.8);
	--12px : calc(0.75rem * 0.8);
	--13px : calc(0.8125rem * 0.8);
	--14px : calc(0.875rem * 0.8);
	--15px : calc(0.9375rem * 0.8);
	--16px : calc(1rem * 0.8);
	--17px : calc(1.0625rem * 0.8);
	--18px : calc(1.125rem * 0.8);
	--19px : calc(1.1875rem * 0.8);
	--20px : calc(1.25rem * 0.8);
	--21px : calc(1.3125rem * 0.8);
	--22px : calc(1.375rem * 0.8);
	--23px : calc(1.4375rem * 0.8);
	--24px : calc(1.5rem * 0.8);
	--26px : calc(1.625rem * 0.8);
	--28px : calc(1.75rem * 0.8);
	--30px : calc(1.875rem * 0.8);
	--31px : calc(1.9375 * 0.8);
	--32px : calc(2rem * 0.8);
	--36px : calc(2.25rem * 0.8);
}
}/*** 600px ***/
/* # =================================================================
#### 480px
# ================================================================= */
@media screen and (max-width: 480px){

}/*** 480px ***/
/* # =================================================================
#### 320px
# ================================================================= */
@media screen and (max-width: 320px){

}/*** 320px ***/