@charset "utf-8";

/* CSS Document */

/* ======================================================
	[layout] header
	@import"../css/test_line.css";
====================================================== */


#Document
{
	min-height: 100%;
}
/*
drowerやら出なくなる
	overflow: hidden;
*/

#Document>.Wrap
{
	margin-left: auto;
	margin-right: auto;
}


#Header
{
}


.GlobalMenu
{
}


#Contents
{
}

#Contents:before
{
}

:where(#Index, #Aboutus, #Menu, #Contact) .Contents
{
	padding-bottom: 0em;
}


.Main
{
	min-height: 30em;
}
/*
	overflow-x: hidden;
*/

.Main>.Wrap
{
}


.sideArea
{
}


.description
{
}


#nav-content
{
	top: calc(var(--drawer_toggle_size) + (1em * 2));
	padding-bottom: 20vh;
}


/* ============================================================================================================
	============================================================================================================
	============================================================================================================ */


/* ============================================================================================================
	<header>
------------------------------------------------------------------------------------------------------------ */
/* <header>固定 */
#Header
{
	position: sticky;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	max-width: 100svw;
	z-index: 500;
}
/*
drowerが出なくなる
	overflow: hidden;
*/

@media print {
	#Header
	{
		position: static;
	}
}

.Header
{
	text-align: left;
}
.scroll_header .Header
{
	background-color: rgb(var(--w) / 0.95);
}
.scroll_h1 .Header
{
}

#Index .Header
{
}
.scroll_header #Index .Header
{
}
.scroll_index_top #Index .Header
{
}
/*
.Header:before
{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-size: cover;
	opacity: 0;
}


.scroll .Header
{
	background-color: rgb(var(--w) / 0.95);
}
*/
/*
.scroll .Header:before
{
	opacity: 0.3;
}
*/

.Header>.Wrap
{
	padding-top: 1em;
	padding-bottom: 1em;
}

.Header>.Wrap>.Wrap
{
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1em;
}


.Header h1
{
	margin: 0;
}

.Header ul
{
	margin: 0;
	list-style: none;
	display: flex;
	align-items: center;
	gap: 1em;
	text-align: inherit;
}

.Header li
{
	margin: 0;
}


.Header .Navi
{
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 1em;
	text-align: right;
	line-height: 1;
}

.Header .Navi>*
{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--gap);
}

.Header .Navi>*>*
{
}

.Header .Navi a
{
}

.Header .Navi .Access
{
	display: inline-flex;
	align-items: center;
	gap: 1em;
	text-align: center;
}
/*
	display: inline-block;


[221026]button不要の為、囲み不要
.Header .Navi.contact_button .Access
{
	display: inline-block;
	text-align: center;
	padding: 1.5em 1em 1em;
	border-width: 1px;
	border-style: dotted;
}
*/

.Header ul li:not(.Icon)
{
}

.Header .Icon
{
}


/* [Header]　左 */
.Header .Left
{
	text-align: left;
}

/* [Header]　右 */
.Header .Right
{
	text-align: right;
}

.Header .Right>.Wrap
{
}

.Header .Menu,
.Header .GlobalMenu
{
}


/* ------------------------------------------------------
	文字サイズ変更 */
/* [pc, tablet, print] */
@media print, screen and (min-width : 480px) {}
#fontSize
{
	vertical-align: bottom;
}

#fontSize li
{
	margin: auto;
	display: inline-block;
	float: none;
}

.changeBtn
{
	letter-spacing: normal;
}

.changeBtn>span
{
	cursor: pointer;
	display: inline-block;
	width: 2em;
	line-height: 2em;
	text-align: center;
	border-width: 1px;
	background-color: rgb(var(--w));
}

.changeBtn :where(.small, .large)
{
	font-size: 1em;
}

.changeBtn .changeText
{
}


/* 選択中 */
.changeBtn .current
{
}


/* ============================================================================================================
	<global menu>
------------------------------------------------------------------------------------------------------------ */
.GlobalMenu
{
	line-height: 1;
	text-align: center;
}

.GlobalMenu>.Wrap
{
}

.GlobalMenu :where(a, .a)
{
	display: flex;
	align-items: center;
	gap: 0.25em;

	height: 100%;

	padding: 1em;
	line-height: 1;
}
/*
	white-space: nowrap;
*/

.GlobalMenu :where(a, .a) [class*="title"]
{
	display: flex;
	flex-direction: column;
	gap: 0.5em;
}

.GlobalMenu :where(a, .a) .name
{
}

.GlobalMenu ul
{
	display: flex;
	margin-left: auto;
	margin-right: 0;
	text-align: inherit;
}
/*
[221026]均等割り付け不要
.GlobalMenu ul
{
	display: table;
	width: 100%;
	table-layout: fixed;
	margin-left: auto;
	margin-right: 0;
	text-align: inherit;
}
*/

.GlobalMenu ul>li
{
	display: flex;
	width: 100%;
}

.Header .GlobalMenu ul>li
{
	width: auto;
}


.GlobalMenu .img
{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}

.GlobalMenu .img img
{
	width: auto;
	height: 100%;
	margin: auto;
	background-repeat: no-repeat;
	background-position: center bottom;
}

.GlobalMenu [class*="title"]
{
}
/*
	margin: auto;
	letter-spacing: normal;
*//*
[221026]文字大きくしない、文字間削除、M体
.GlobalMenu :where([class*="title"])
{
	margin: auto;
	font-size: 1.2em;
	font-weight: bold;
}

	margin-top: calc((100% - 3em) / 2);
*/


/* 今のページ */
.GlobalMenu .MenuOn
{
}


/* 子 */
.GlobalMenu .Child
{
}

.GlobalMenu .Child ul
{
	width: 0;
}

.GlobalMenu .Child :where(a, .a)
{
	justify-content: flex-start;
	gap: 0.5em;
	padding: 0.75em 1em;
	line-height: 1.5;
}

.GlobalMenu .Child :where(a, .a)>span
{
}

.GlobalMenu .Child .Img
{
	width: 3em;
}

.GlobalMenu .Child .Img img
{
	aspect-ratio: 1 / 1;

	width: 100%;
	max-width: initial;
	height: initial;
}

/* [子]	今のページ */
.GlobalMenu .Child .child_MenuOn
{
	font-weight: bold;
}

.GlobalMenu .Child>ul>li.child_MenuOn>*
{
	background-color: rgb(var(--bk) / 0.2);
}


.Header .GlobalMenu .Child
{
	z-index: 150;
}


.Footer .GlobalMenu
{
}

.Footer .GlobalMenu ul
{
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 1.5em 2em;
}

.Footer .GlobalMenu :is(a, .a):not(.ColorBtn)
{
	padding: 0;
}

.Footer .GlobalMenu :is(a, .a)>span
{
	margin: 0;
}

.Footer .GlobalMenu .Child
{
	margin-top: 0.5em;
	margin-left: 2em;
}

.Footer .GlobalMenu .Child>ul
{
	width: auto;
	gap: 0.5em;
}

.Footer .GlobalMenu .Child .title
{
}

.Footer .GlobalMenu .Child .title br
{
	display: none;
}



/* ============================================================================================================
	Contents・本文全体
------------------------------------------------------------------------------------------------------------ */
.Contents
{
}
/*
	padding-bottom: 5em;
*/

.Main
{
}


/* ============================================================================================================
	<page title>
------------------------------------------------------------------------------------------------------------ */
.pagetitle
{
	height: var(--h1_h);
	margin-top: 0;
	margin-bottom: 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;

	line-height: 1;
	overflow: hidden;
}
/*
	margin-bottom: 3em;
*/

.pagetitle>.Wrap,
.pagetitle :where(a, .a)
{
	display: grid;
	align-items: center;
	height: 100%;
}

.pagetitle>.Wrap
{
}
/*
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
*/


.pagetitle span
{
}
/*
	display: flex;
*/

.pagetitle :where(a, .a)
{
}
/*
	flex-direction: column;
	gap: 1em;
*/

.pagetitle .title
{
	display: grid;
	justify-content: center;
	align-items: center;
	gap: var(--gap);
}
/*
	display: grid;
*/

.pagetitle .title .name
{
	font-size: 3em;
	font-weight: inherit;
}

.pagetitle .title .title_sub
{
}

.pagetitle .Img
{
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;

	width: 100vw;
	
	opacity: 0.5;
}

.pagetitle .Img img
{
	width: 100%;
}

