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

/* (151119)IE11で「background-size」が効かない */
/* 疑似要素はサイズ指定不可の為、実寸表示のみ */


:root
{
	--clear				: 255 255 255 / 0;
	--w					: 255 255 255;
	--bk				: 0 0 0;
	--r					: 204 51 51;
	--or				: 243 151 0;
	--y					: 255 193 7;
	--bl				: 33 150 243;
	--gr				: 139 195 74;
	--dark_brown		: 112 66 44;

	--bg_color			: 0 0 0;
	--bg_color2			: var(--w);
	--border_color		: 0 0 0;
	--alert				: 204 51 51;

	--theme				: 22 90 171;

	--gap				: 3em;
	--margin			: 4vw;
	--padding			: 4vw;
	--padding_tb		: 7em;
	--border_r			: 0.5em;
	--border_w			: 0.5em;
}


/* ====================================================== */
/* ★★★　全デバイス共通・2　★★★ */
/*
@import"../css/test_line.css";
*/

.description	{}
body	{
	padding: 2em 0 0;
	word-break: break-all;
}



/* ------------------------------------------------------------------------------------------------------------
	SNS
------------------------------------------------------------------------------------------------------------ */
.ClassInstagram
{
}

.Index .ClassInstagram
{
}

.Index .ClassInstagram a
{
	aspect-ratio: 750 / 331;
	display: block;
}


/* ============================================================================================================
	<header>
============================================================================================================ */
.Header	{
}
.Header table,
.Header th,
.Header td	{
	background: none;
	border-width: 0;
	padding: 0;
	width: auto;
}
.Header ul	{
	margin: 0;
}

.Header h1	{
	margin: 0;
}




/* ------------------------------------------------------------------------------------------------------------
	logo
------------------------------------------------------------------------------------------------------------ */
.Logo	{
	display: block;
	vertical-align: middle;
}

.LogoImg	{
}
.LogoImg img	{
/*
	height: 70px;
	height: calc((1.5em * 3) * 0.7);
	width: auto;
	max-width: initial;
	vertical-align: middle;
*/
}
.LogoImg.LogoImgMark	{
}
.LogoImg.LogoImgMark img	{
}

.LogoTxt	{
	line-height: 1;
	letter-spacing: 0;
	font-weight: bold;
	font-weight: 900;
}

.SiteName	{}


.HeaderLogo	{
	white-space: nowrap;
	margin: 0px;
	vertical-align: middle;
	border-width: 5px;
	padding: 0 0.5em;
}
.HeaderLogo h1	{
}
.HeaderLogo a	{
	display: block;
	color: inherit;
}
.HeaderLogo .LogoTxt	{
	font-size: 30px;
}
.HeaderLogo small	{
	display: block;
	line-height: 1;
}

.FooterLogo a	{
	color: inherit;
}
.FooterLogo .Logo.LogoImg	{
}
.FooterLogo .Logo.LogoImg img	{
}
.FooterLogo .LogoImg.LogoImgMark	{
}
.FooterLogo .LogoImg.LogoImgMark img	{
}
.FooterLogo .LogoTxt	{
	font-size: 2em;
}

.SiteNameEu	{
}
.SiteCatch	{
}

/* [170415]保留
.Header .SNSSet	{
	font-size: 1.75em;
	line-height: 1;
	margin-top: 0.5rem;
	margin-bottom: 1.5rem;
}
.Header .SNSSet li	{
}
.Header .SNSSet .glyph	{
	padding-right: 0px;
}
.Header .SNSSet span:before	{
	vertical-align: bottom;
}
*/
.Header .UneiTelSet b	{
}
.HeaderAddress .glyph	{
	letter-spacing: 0px;
	padding-left: 0px;
}
.HeaderAddress .glyph:before	{
	border-radius: 10em;
	font-size: 0.8em;
	padding: 0.2em;
	opacity: 1.0;
}



/* メールフォームボタン 
#Header .MailFormBtn li a
{
	font-size: 1.25em;

	display: block;
	padding-top: 0.75em;
	padding-bottom: 0.75em;

	color: rgba(255,255,255,1.0);
	text-align: center;
	line-height: 1;

	border-color: rgba(255,255,255,0.7);

	&:before
	{
		font-family: 'ElegantIcons';
		speak: none;
		font-style: normal;
		font-weight: normal;
		font-variant: normal;
		text-transform: none;
		line-height: 1;
		-webkit-font-smoothing: antialiased;
		padding-right: 0.5em;
		content: "\e076";
	}
}
*/


/* ============================================================================================================
	Main
------------------------------------------------------------------------------------------------------------ */
.Contents	{
	padding-bottom: 7em;
	position: relative;
/*
*/
}
.Main	{
	text-align: left;
}

.Main>.Wrap
{
	display: grid;
	gap: var(--padding_tb);
}


/* ============================================================================================================
	上へ戻る
------------------------------------------------------------------ ------------------------------------------ */
#Document	{
	position: relative;
}
.FooterBtn	{
	position: fixed;
	font-size: 1em;
	text-align: right;
	z-index: 99;
	letter-spacing: 0px;
	right: 0;
/*
	right: calc(50vw - (2em * 1.5));
	left: 0rem;
	right: 0rem;
	left: calc(50vw - (2em * 1.5));
	width: auto;
*/
}
.FooterBtn>.Wrap	{
	margin-top: 0;
	margin-bottom: 0;
	position: relative;
}
.FooterBtn a	{
	text-decoration: none;
	display: inline-block;
/*
	color: inherit;
	display: block;
*/
}

.BackTop	{
	display:inline-block;
	font-size: 1.5em;
	line-height: 2em;
	text-align: center;
	float: right;
/*
	margin-left: auto;
	margin-right: 0;
	font-size: 2em;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.5em;
*/
}
.BackTop a	{
	display: block;
	position: relative;
	width: 2em;
	height: 2em;
}
.BackTop a:before,
.BackTop a:after	{
	position: absolute;
	content: "";
	display: block;
	top: 0.725em;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
}
.BackTop a:before	{
	width: 0.5em;
	height: 0.5em;
	border-top-width: 1px;
	border-right-width: 1px;
	transform: rotate(-45deg);
}
.BackTop a:after	{
	width: 1px;
	height: 0.75em;
	background-color: rgba(0,0,0,1.0);
}

/*
[200509]
.BackTop a:before	{
	display:block;
	font-family: 'themify';
	content: "\e627";
}


.BackTop a:before	{
	content: "TOP";
	display: block;
}
.BackTopArea {
	position: fixed;
	bottom: 0rem;
	right: 3rem;
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity: 0.7;
	-khtml-opacity: 0.7;
	opacity: 0.7;
	line-height:7;
}

*/

.FooterBackTop	{
	-moz-opacity: 1.0;
	-khtml-opacity: 1.0;
	opacity: 1.0;
	text-align: center;
	padding-top: 1em;
	padding-bottom: 1em;
	margin-top: 3rem;
	margin-bottom: 3rem;
}

.FooterBackTop a	{
	text-decoration: none;
}




/* ============================================================================================================
	<footer>
-------------------------------------------------------------------------------------------------- ---------- */
.Footer	{
	clear: both;
	margin: 0;
	text-align: center;
	font-size: 0.8em;
	padding-top: 1em;
	padding-bottom: 1em;
	border-top-width: 1px;/*
*/
}
.Footer>.Wrap	{
	padding-top: 1px;
/*
	padding-top: 5rem;
	padding-bottom: 3rem;
*/
}
.Footer>.Wrap>.Wrap	{
	margin-top: 2em;
	margin-bottom: 2em;
}


.Footer ul	{
	margin: 0;
	list-style: none;
}
.Footer ul>li	{
	margin: 0;
}

.FooterMenu	{
}
.FooterMenu>ul>li	{
	display: inline-block;
	vertical-align: middle;
}
.FooterMenu>ul>li:not(:first-child)	{
	margin-left: 1em;
}
.FooterMenu>ul>li:not(:last-child)	{
	margin-right: 1em;
}

.FooterMenu li	{
}
.FooterMenu li a:before	{
}


.Footer .SNS	{}
.Footer .SNS a	{
	display: block;
}
.Footer .SNS>ul	{}
.Footer .SNS>ul>li	{
	display: inline-block;
	vertical-align: middle;
}
.Footer .SNS>ul>li:not(:first-child)	{
	margin-left: 1em;
}
.Footer .SNS>ul>li:not(:last-child)	{
	margin-right: 1em;
}
.Footer .SNS .LinkIcon	{
	margin-right: 0.5em;
}
.Footer .SNS .SNSTxt	{
}



.Footer .FooterCopy	{
	text-align: center;
	padding: 2em 0;
/*
	margin-top: 3rem;
	margin-bottom: 3rem;
*/
}
.Footer .FooterCopy a	{
	color: inherit;
}


/* ============================================================================================================
	カテゴリ
------------------------------------------------------------------------------------------------------------ */


/* ============================================================================================================
	[index]
------------------------------------------------------------------------------------------------------------ */
.Index
{
}

.Index :is(.IndexViewer, #viewer)
{
	aspect-ratio: 750 / 422;
	width: 100%;
}


/* ============================================================================================================
	[about]
------------------------------------------------------------------------------------------------------------ */
.about_list,
.about_list *
{
	position: relative;
}

.about_list
{
}

.about_list ul
{
	list-style: none;
	margin: 0;

	width: 100%;

	display: grid;
	gap: var(--gap);
}

.about_list ul>li
{
	margin: 0;
	padding-left: 1em;
}

.about_list ul>li>.Wrap
{
	display: grid;
	grid-template-columns: 30em 1fr;
	gap: 0;


	border-width: 1px;
}

.about_list .Img
{
	top: -1em;
	left: -1em;

	z-index: -1;
}

.about_list .main
{
	padding: calc(var(--gap) / 3) calc(var(--gap) / 2);
}

.about_list .main h2
{
	margin: 0;
	margin-bottom: 1em;
	padding-bottom: 0.5em;

	text-align: center;
}



/* ============================================================================================================
	[200508]wp→php
	blog.php
------------------------------------------------------------------------------------------------------------ */
.Blog	{}

.Blog .article	{
}
.Blog .side	{
}


/* title　※高さ max2行 */
.Blog .ImgList .title,
.Blog .TextList .title	{
	height: 3em;
	overflow: hidden;
	position: relative;
	margin-top: 0;
	margin-bottom: 1em;
	width: calc(100% + 1em);
	font-weight: bold;
	font-size: 1.2em;
}
.Blog .title.over	{
	padding-right: 1em;
}
.Blog .title.over:after	{
	content: "...";
	display: block;
	position: absolute;
	right: 0em;
	bottom: 0em;
}

/* pic */
.BlogList .Img	{
	margin-bottom: 1em;
}

/* time */
.BlogList .Time	{
	text-align: right;
	margin-bottom: 0.5em;
}

/* text */
.Blog .BlogText	{
	margin-bottom: 0.5em;
}

/* button */
.Blog .Btn	{
	text-align: center;
	display: block;
}


.Blog .article h2	{
	margin-top: 0px;
}


/* サムネイル無し */
.Blog.TextList	{
	margin-top: 0px;
	margin-bottom: 2em;
}
.Blog.TextList a	{
	padding: 0.5em 0;
	display: block;
}
.Blog.TextList ul	{}
.Blog.TextList ul>li	{
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}
.Blog.TextList ul>li>.Wrap	{
}
.Blog.TextList .Txt	{
	position: relative;
	margin-left: 10em;
}
.Blog.TextList .Time	{
	position: absolute;
	top: 0em;
	margin-left: -10em;
	width: 10em;
	text-align: left;
	margin-bottom: 0px;
	text-decoration: underline;
}
.Blog.TextList .title	{
	height: auto;
	max-height: 2em;
	font-size: 1em;
	text-align: left;
	font-weight: normal;
	margin-bottom: 0px;
	margin-top: 0px;
	text-decoration: underline;
	width: 100%;
}
.Blog.TextList .title.over	{
	padding-right: 1.5em;
}
.Blog.TextList .title.over:after	{
}



/* .side */
.Blog .side	{
	line-height: 1.5;
	font-size: 0.8em;
}
.Blog .side h2	{
	margin-bottom: 0px;
	padding-bottom: 0.5em;
}
.Blog .side h2>b	{
	font-size: 1.2em;
}
.Blog .side .title	{
}
.Blog .side ul	{
	margin: 0px;
	list-style: none;
	border-bottom-width: 1px;
}
.Blog .side ul:not(:last-child)	{
	margin-bottom: 3em;
}
.Blog .side ul>li	{
	margin: 0;
}
.Blog .side ul>li:not(:first-child)	{
	border-top-width: 1px;
	border-top-style: dotted;
}
.Blog .side ul>li a	{
	display: block;
	padding-top: 1em;
	padding-bottom: 1em;
}
.Blog .side ul>li .title b	{
	font-weight: normal;
}

.Blog .footer .Ct	{
	font-size: 0.8em;
	opacity: 0.75;
	background-color: rgba(0,0,0,0.1);
	padding: 0.5em 1em;
/*
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-style: dotted;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
*/
}
.Blog .footer .Ct>ul	{
	margin: 0;
	list-style: none;
}
.Blog .footer .Ct>ul>li	{
	margin: 0;
	display: inline-block;
}
.Blog .footer .Ct>ul>li:not(:first-child)	{
}
.Blog .footer .Ct>ul>li:not(:last-child)	{
}
.Blog .footer .Ct>ul>li:not(:last-child) .CtName:after	{
	content: "、";
	display: inline;
}

/* .side 子カテゴリ */
.Blog .side .Ct	{
}
.Blog .side .Ct:not(:last-child)	{
	margin-bottom: 3em;
}
.Blog .side .Ct h2	{
}




/* ============================================================================================================
	[200508]wp→php
	blog_detail.php
------------------------------------------------------------------------------------------------------------ */
.BlogDetail	{
}
.BlogDetail .Wrap>article	{
	margin-top: 0px;
	margin-bottom: 0px;
}

.BlogDetail .article	{
}
.BlogDetail .side	{
}


.BlogDetail .article h2	{
	margin-top: 0px;
	margin-bottom: 0px;
	height: auto;
	min-height: initial;
}
.BlogDetail .article .title,
.BlogDetail .side .title	{
	margin-top: 0px;
	height: auto;
	min-height: initial;
}
.BlogDetail .side .title	{
	width: 100%;
}

.BlogDetail .Time	{
	margin-top: 0.5em;
}

.BlogDetail .main	{
}

.BlogDetail .footer	{
}
.BlogDetail .footer .Ct	{
	text-align: right;
}


/* ============================================================================================================
	index
------------------------------------------------------------------------------------------------------------ */
#Index	{}
.Index	{}




.Index .Category	{
}

.Index .Category a	{
	display: block;
}





/* ============================================================================================================
	お知らせ用
	------------------------------------------------------
	共通
------------------------------------------------------------------------------------------------------------ */
/* newアイコン */
.NewsIcon	{
	font-size: 0.8em;
}
.NewMark	{
	display: block;
	font-size: 0.8em;
	font-weight: normal;
	margin-top: -2em;
}
h2 .NewMark	{
	font-size: calc(1.4rem * 0.8);
}
/*
.NewMark:before	{
	content: "NEW";
	display: block;
}
.NewsList .NewMark:before	{
}
.Information .NewMark:before	{
	display: inline-block;
}
*/


/* 時間 */
.NewsDateTime	{
	font-weight: normal;
/*
	opacity: 0.7;
	font-size: 0.8em;
	text-align: center;
*/
}
h2 .NewsDateTime	{
	display: block;
	font-size: 1.2rem;
	margin-top: 1em;
}
.NewsList ul .NewsDateTime	{
	display: inline-block;
	margin-bottom: 0.5em;
/*
	text-decoration: underline;
*/
}
.NewsList .NewsDateTime:before,
.NewsList .NewsDateTime:after	{
	display: inline;
}
.NewsList .NewsDateTime:before	{
}
.NewsList .NewsDateTime:after	{
}
.NewsList .NewsDateTime span	{
	border-radius: 0.2em;
}

.NewsDetail .NewsDateTime	{
	display: block;
}
.NewsDetail .NewsDateTime:before	{
	content: "(";
	display: inline;
}
.NewsDetail .NewsDateTime:after	{
	content: ")";
	display: inline;
}
.Information .NewsDateTime	{
	display: inline-block;
}



/* タイトル */
.NewsTitle	{
}
.NewsList .NewsTitle	{
	font-weight: normal;
	padding: 0;
	font-size: inherit;
	border-width: 0;
	background: none;
	color: inherit;
	margin-bottom: 0;
	margin-top: 0;
}
.NewsList .NewsTitle:before,
.NewsList .NewsTitle:after	{
	content: none;
}
.List .NewsTitle	{
	max-height: 6em;
	overflow: hidden;
	text-align: left;
	margin-top: 1em;
	margin-bottom: 1em;
	height: auto;
}


/* 本文 */
.NewsNaiyo	{
	text-align: left;
}
.Information .NewsNaiyo a	{
	display: inline;
}


/* 画像 */
.NewsImg	{}
.NewsImg:before	{}
.NewsImg>ul a	{
	display: block;
}
.NewsImg li	{
	text-align: center;
}
.NewsList .NewsImg ul	{
	margin-top: 0em;
}
.NewsList .NewsImg ul li	{
	margin-top: 1em;
}
.NewsDetail .NewsImg ul	{
	margin-top: 1em;
}




/* ------------------------------------------------------------------------------------------------------------
	news/index.php
------------------------------------------------------------------------------------------------------------ */
.IndexNews	{
	text-align: center;
}
.IndexNews .News>.Wrap	{
}
.IndexNews .News .NewsHeader	{
}
.IndexNews .News .NewsList	{
	margin-top: 5rem;
}

/*一覧へボタン*/
.NewsListBtn	{
	position: relative;
}
.NewsListBtn .Icon	{
	position: absolute;
	top: 0px;
	right: 0px;
	font-size: 0.8em;
}
.NewsListBtn .Icon:before	{
	content: "\35";
}



/* ------------------------------------------------------------------------------------------------------------
	一覧
------------------------------------------------------------------------------------------------------------ */
.NewsList	{
}
.NewsList *	{
}
.Index .NewsList	{
	text-align: left;
}

.NewsList a,
.NewsList .NewsTitle b	{
	text-decoration: underline;
}

/* <ul>で一覧 
.NewsList	{
}
.NewsList:not(.Column)>ul	{
	list-style: none;
	margin-left: 0;
	margin-top: 0em;
	width: 100%;
}
.NewsList:not(.Column)>ul>li	{
	display: table;
	border-bottom-style: dotted;
	border-bottom-width: 1px;
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
	margin-left: 0;
	margin-top: 0em;
	width: 100%;
}
.NewsList a,
.NewsList .NewsTitle b	{
	text-decoration: underline;
}

.NewsList ul .NewsDateTime	{
	display: table-cell;
	width: 9em;
}
.NewsList ul .NewsTitle	{
	display: table-cell;
}
.NewsList ul .NewsNaiyo	{
}
.Information .NewsList>ul>li	{
	border-top-width: 1px;
	margin-top: 3em;
	padding-top: 3em;
}
*/

/* <table>で一覧 
.NewsList table,
.NewsList th,
.NewsList td	{
	border-width: 0;
	background: none;
	padding: 0.5em 0;
}
.NewsList table	{
	width: auto;
}
.NewsList table .NewsImg	{
}
.NewsList table .NoImg	{
	line-height: 15em;
}
.NewsList th,
.NewsList td	{
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}
.NewsList th	{
	width: auto;
	vertical-align: top;
	padding-right: 1em;
}
.NewsList td	{
	font-weight: normal;
	vertical-align: top;
}
.NewsList td .AnchorBtn	{
	display: block;
	text-align: right;
	margin-top: 0;
	margin-bottom: 0;
}
*/


/* ------------------------------------------------------------------------------------------------------------
	news/news_list.php
------------------------------------------------------------------------------------------------------------ */
.NewsList	{}
.NewsList ul	{
}
.NewsList ul>li	{
}


/* ------------------------------------------------------------------------------------------------------------
	news_detail.php
------------------------------------------------------------------------------------------------------------ */
.NewsDetail	{
}
.NewsDetail h2	{
	position: relative;
}
.NewsDetail h2>b	{
}
.NewsDetail .NewMark	{
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
}
.NewsDetail	{
}
.NewsDetail h2 img	{
}
.NewsDetail .NewsDateTime	{ }

.NewsDetail .NewsImg	{}
.NewsDetail .NewsImg ul	{}
.NewsDetail .NewsImg ul>li	{
	margin-bottom: 0;
}


.NewsDetail .NewsNaiyo	{
	margin-top: 5rem;
	margin-bottom: 5rem;
	display: inline-block;
}








/* ============================================================================================================
	[251117-0940/251203-1051]構成変更　Topic削除、Voice WP→システム化
	------------------------------------------------------
	[221205/221207]修正　日付の要らない場合がある
	------------------------------------------------------
	[200827/201006]修正　『お知らせ』→wp『TOPICS』へ差し替え
	TOPICS
	index.php
	------------------------------------------------------
	[201006]『USER VOICE』も同じレイアウトかも
	USER VOICE
	user_voice.php
------------------------------------------------------------------------------------------------------------ 
.Topics	{}
.Voice	{}

.Index .Topics	{}
.Index .Topics .NewsList	{}
.Index .Topics .NewsList.Column	{
}

.NewsList,
.NewsList *	{
	position: relative;
}

.Index .Topics .NewsList>ul,
.UserVoice .Voice .NewsList>ul
{
	display: block;
	width: 100%;
	margin: 0;
	list-style: none;
}

.Index .Topics .NewsList>ul>li,
.UserVoice .Voice .NewsList>ul>li
{
	display: block;
	width: 100%;
	margin-top: 1em;
	margin-left: 0em;
	padding-bottom: 1em;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}

.Index .Topics .NewsList>ul>li>.Wrap,
.UserVoice .Voice .NewsList>ul>li>.Wrap
{
}

.Index .Topics .NewsList a,
.UserVoice .Voice .NewsList a
{
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	width: 100%;
	padding-right: 2em;
}

.Index .Topics .NewsList a:after,
.UserVoice .Voice .NewsList a:after
{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 0.5em;
	height: 0.5em;
	border-width: 1px 1px 0 0;
	transform: translateY(-50%) rotate(45deg);
}

.Index .Topics .NewsList a>*,
.UserVoice .Voice .NewsList a>*
{
	display: initial;
	display: flex;
	margin-bottom: 0;
}

.Index .Topics .NewsList .NewsDateTime,
.UserVoice .Voice .NewsList .NewsDateTime
{
	width: 9em;
	order: 1;
}

.Index .Topics .NewsList .title,
.UserVoice .Voice .NewsList .title
{
	font-size: 1em;
	margin-bottom: 0;
	order: 2;
}

.Index .Topics .NewsList .ImgCover,
.UserVoice .Voice .NewsList .ImgCover
{
	display: block;
	float: left;
	width: 20%;
	margin-right: 2em;
}

.Index .Topics .NewsList .ImgCover,
.UserVoice .Voice .NewsList .ImgCover
{
	display: block;
	float: left;
	width: 20%;
	margin-right: 2em;
}

.Index .Topics .NewsList .description,
.UserVoice .Voice .NewsList .description
{
}

*//*
:is(.Index .Topics, .UserVoice .Voice) .NewsList,
:is(.Index .Topics, .UserVoice .Voice) .NewsList *	{
	position: relative;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList>ul	{
	display: block;
	width: 100%;
	margin: 0;
	list-style: none;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList.Column>ul>li	{
	display: block;
	width: 100%;
	margin-top: 1em;
	margin-left: 0em;
	padding-bottom: 1em;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList.Column>ul>li>.Wrap	{
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList a	{
	display: block;
	padding-right: 2em;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList a:after	{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 0.5em;
	height: 0.5em;
	border-width: 1px 1px 0 0;
	transform: translateY(-50%) rotate(45deg);
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList a>*	{
	margin-bottom: 0;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .NewsDateTime	{
	width: 9em;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .title	{
	font-size: 1em;
	margin-bottom: 0;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .ImgCover	{
	display: block;
	float: left;
	width: 20%;
	margin-right: 2em;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .ImgCover	{
	display: block;
	float: left;
	width: 20%;
	margin-right: 2em;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .description	{
}

/ 投稿日表示の有無 /
li.time_none	{}

.NewsList li:not(.time_none)	{}
.NewsList li:not(.time_none) a	{
	padding-left: 9em;
}
.NewsList li:not(.time_none) .NewsDateTime	{
	position: absolute;
	left: 0;
	top: 0;
}


:is(.Index .Topics, .UserVoice .Voice) .NewsList.Column>ul	{
	margin-top: 0;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList.Column>ul>li	{
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	margin-top: 1em;
	padding-bottom: 1em;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList.Column>ul>li>.Wrap	{
	position: relative;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList a
	{
	padding-left: 9em;
	padding-right: 2em;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList a:after	{
	content: "";
	display: block;
	width: 0.5em;
	height: 0.5em;
	border-width: 1px 1px 0 0;
	position: absolute;
	right: 0;
	top: calc((100% - 0.5em) / 2);
	transform: rotate(45deg);
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .NewsDateTime	{
	position: absolute;
	left: 0em;
	top: 0;
	display: block;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .title	{
	font-size: 1em;
	margin-bottom: 0;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .ImgCover	{
	display: block;
	float: left;
	width: 20%;
	margin-right: 2em;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .ImgCover	{
	display: block;
	float: left;
	width: 20%;
	margin-right: 2em;
}

:is(.Index .Topics, .UserVoice .Voice) .NewsList .description	{
}
[221205/221207]修正　日付の要らない場合がある

.Index .Topics .NewsList.Column>ul,
.UserVoice .Voice .NewsList.Column>ul	{
	margin-top: 0;
}

.Index .Topics .NewsList.Column>ul>li,
.UserVoice .Voice .NewsList.Column>ul>li	{
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	margin-top: 1em;
	padding-bottom: 1em;
}

.Index .Topics .NewsList.Column>ul>li>.Wrap,
.UserVoice .Voice .NewsList.Column>ul>li>.Wrap	{
	position: relative;
}

.Index .Topics .NewsList a,
.UserVoice .Voice .NewsList a	{
	padding-left: 9em;
	padding-right: 2em;
}
.Index .Topics .NewsList a:after,
.UserVoice .Voice .NewsList a:after	{
	content: "";
	display: block;
	width: 0.5em;
	height: 0.5em;
	border-width: 1px 1px 0 0;
	position: absolute;
	right: 0;
	top: calc((100% - 0.5em) / 2);
	transform: rotate(45deg);
}
.Index .Topics .NewsList .NewsDateTime,
.UserVoice .Voice .NewsList .NewsDateTime	{
	position: absolute;
	left: 0em;
	top: 0;
	display: block;
}
.Index .Topics .NewsList .title,
.UserVoice .Voice .NewsList .title	{
	font-size: 1em;
	margin-bottom: 0;
}
.Index .Topics .NewsList .ImgCover,
.UserVoice .Voice .NewsList .ImgCover	{
	display: block;
	float: left;
	width: 20%;
	margin-right: 2em;
}
.Index .Topics .NewsList .description,
.UserVoice .Voice .NewsList .description	{
}
*/


/* ============================================================================================================
	[251117-0940/251203-1051]構成変更　indexへ移植した
	ABOUT
	about.php
------------------------------------------------------------------------------------------------------------ */
.About	{}

.About .Category	{}
.About .Category h2	{
	margin-top: 0;
	margin-bottom: 0.75em;
	text-align: center;
}

.About .Category>ul>li	{
	margin-top: 5em;
	margin-bottom: 5em;
}



/* ============================================================================================================
	[251117-0940/251203-1051]構成変更　WP→システム化
	USER VOICE
	user_voice.php
------------------------------------------------------------------------------------------------------------ */
.UserVoice
{
}
.UserVoice .List,
.UserVoice .List *
{
	position: relative;
}


.UserVoice .List
{
	display: grid;
	gap: var(--padding_tb);
}

/* 基準の高さ */
.UserVoice .List .l1
{
	position: absolute;
	left: 100%;
	top: 100%;

	width: 0;
}


.UserVoice .List .item
{
	display: grid;
	gap: var(--gap);

	padding: var(--gap);

	background-color: rgb(var(--w));
	border-width: 1px;
	filter: drop-shadow(1em 1em 0em rgb(var(--theme) / 0.2));
}


.UserVoice .List .head h2
{
	margin: 0;
}


.UserVoice .List .head
{
}

.UserVoice .List .head .star
{
	font-size: 1.5em;
	color: rgb(var(--or));
	font-weight: bold;
}

.UserVoice .List .Img
{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: calc(var(--gap) / 2);
}
.UserVoice .List .Img img
{
	aspect-ratio: 1;
	object-fit: contain;
}


/* ------------------------------------------------------
	本文テキスト
*/
.UserVoice .List .main
{
	justify-self: start;
	display: inline-block;
}
/*
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
*/

.UserVoice .List .Txt input[id*="check"]
{
	display:none;
}


/* ------------------------------------------------------
	[本文テキスト]　2行以下
*/
.UserVoice .List .Txt:not(.over)
{
}
.UserVoice .List .Txt:not(.over) .button
{
	aspect-ratio: 1;

	position: absolute;
	left: 100%;
	top: 100%;

	width: 0;
	margin: 0;
	padding: 0;
	border-width: 0;
	overflow: hidden;
}


/* ------------------------------------------------------
	[本文テキスト]　3行以上
*/
.UserVoice .List .Txt.over
{
	display: grid;
	gap: 1em;
}

.UserVoice .List .Txt.over .button
{
	order: 2;
	justify-self: start;
}
.UserVoice .List .Txt.over #txt
{
	order: 1;
}


.UserVoice .List .Txt.over>.Wrap
{
}

.UserVoice .List .Txt.over input:not(:checked) + #txt
{
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.UserVoice .List .Txt.over input:checked + #txt
{
}

.UserVoice .List .Txt.over:has(input:checked) .button
{
	display: none;
}



/* ============================================================================================================
	[251117-0940/251203-1051]構成変更　削除
	ORIGINAL GARAGE
	original_garage.php
------------------------------------------------------------------------------------------------------------ */
.OriginalGarage	{}

/*
[200827/201006]修正　地域別・規格別をやめる
.OriginalGarage .CategoryBtn	{}
.OriginalGarage .CategoryBtn h3	{
	margin: 0;
	font-weight: bold;
}
.OriginalGarage .CategoryBtn ul	{
	margin-top: -3em;
}
.OriginalGarage .CategoryBtn ul>li	{
	border-width: 1px;
	margin-top: 3em;
}
.OriginalGarage .CategoryBtn a	{
	text-align: center;
	display: block;
	padding: 3em 0;
	position: relative;
}
.OriginalGarage .CategoryBtn a.IconT:before	{
	content: "\e628";
	position: absolute;
	right: 0.5em;
	bottom: 0.5em;
	margin: 0;
	width: 1em;
	height: 1em;
	line-height: 1em;
	border-radius: 0em;
	color: rgba(255,255,255,1.0);
	padding: 0.25em;
}
*/



/* ------------------------------------------------------
	[ORIGINAL GARAGE]　詳細
------------------------------------------------------ */
/* 外観 */
.ShopImg	{
	margin-bottom: 1.5rem;
	text-align: center;
}



/* ============================================================================================================
	会社概要
	aboutus.php
------------------------------------------------------------------------------------------------------------ */
.Aboutus .Aisatsu	{
}
.Aboutus .Aisatsu .Img	{
	width: 22.5%;
	float: left;
	margin-right: 1em;
}
.Aboutus .Aisatsu .Img img	{
	border-radius: 100%;
}

.Aboutus .AbutusData td	{}
.Aboutus .AbutusData td ul	{
	margin-top: 0;
}
.Aboutus .AbutusData td li	{
	margin-top: 0;
	margin-bottom: 0;
}
.Aboutus .AbutusData td li:before	{
	content: "●";
	display: inline-block;
	width: 2em;
	font-size: 0.5em;
	vertical-align: middle;
}



.AboutusTel table,
.AboutusTel th,
.AboutusTel td	{
	border-width: 0;
	padding-top: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}
.AboutusTel th	{
	font-weight: normal;
	background: none;
}

.AboutusTel ul	{
	list-style: none;
	margin-left: 0px;
	margin-top: -0.3rem;
	margin-bottom: -0.2rem;
}
.AboutusTel li	{}

.TableLayout.UneiMini	{
	margin-left: 0;
	margin-right: auto;
}
.TableLayout.UneiMini th,
.TableLayout.UneiMini td	{
	vertical-align: middle;
}





/* ============================================================================================================
	地図
------------------------------------------------------------------------------------------------------------ */
.AccessMapDsp	{
	position: relative;
	width: 100%;
	height: 500px;
	background-color: rgba(255,255,255,1.0);
	color: #000;
/*
	margin-top: 3rem;
	margin-bottom: 3rem;
*/
}

/* フラグの空き調整 */
.AccessMapDsp *	{
	border: 0;
	font-size: 1em;
}


#Footer .AccessMapDsp	{
	margin-top: 0rem;
}

.AccessMapNaviBtn	{
	text-align: center;
	margin-top: 3rem;
}

.MapNaviBtn	{
	margin-right: 1em;
}
.MapNaviBtn a:before	{
	font-family: 'ElegantIcons';
	content: "\e01d";
	display: inline-block;
}
.MapBtn	{}
.MapBtn a:before	{
	font-family: 'ElegantIcons';
	content: "\e005";
	display: inline-block;
	margin-right: 0.5em;
	background-color: transparent;
}

.APPDownload	{
	text-align: center;
	margin-top: 3rem;
}
.APPDownload a	{
	display: inline-block;
	vertical-align: middle;
}






/* ============================================================================================================
	リンク
	link.php
------------------------------------------------------------------------------------------------------------ */
.Link table,
.Link th,
.Link td	{
	width: auto;
}




/* ============================================================================================================
	よくあるご質問
	qa.php
------------------------------------------------------------------------------------------------------------ */
.Qa	{
}
.Qa dl	{
	text-align: left;
}
.Qa dt	{
	font-size: 1.2em;
	margin-bottom: 1em;
/*
	border-top-width: 1px;
	border-style: dashed;
	padding-top: 2em;
*/
}
.Qa dt>h2,
.Qa dt>h3	{
	margin: 0;
	background-color: transparent;
}
.Qa dt:first-child	{
}
.Qa dd	{
	margin-left: calc((1.4rem * 1.5) * 3);
	margin-bottom: 5em;
}
.Qa dd>.Wrap	{
}
.Qa dd ul	{
	text-indent: 0rem;
	padding-left: 0rem;
}

.Question,
.Answer	{
	font-size: calc(1.4rem * 1.5);
	display: inline-block;
	width: 2.5em;
	height: 2.5em;
	line-height: 2.5em;
	color: inherit;
	border-radius: 100em;
	text-align: center;
	vertical-align: middle;
	margin-right: 0.5em;
	text-indent: 0em;
	padding-left: 0em;
	font-weight: 900;
}
.Answer	{
	margin-left: -2.5em;	
}
/*
.Question	{
	background-color: rgba(85,172,238,0.5);
}
.Answer	{
	background-color: rgba(204,51,51,0.3);
}
*/

.Question+b,
.Answer+b	{
	display: inline-block;
	text-indent: 0em;
	padding-left: 0em;
	vertical-align: middle;
}

.Question+b	{
	width: calc(100% - ((1.4rem * 1.5) * 3));
}
.Answer+b	{
	width: calc(100% - 4rem);
}

.GuideQa dd .UneiMini	{
	margin-left: 0;
}




/* ============================================================================================================
	お問い合わせ
------------------------------------------------------------------------------------------------------------ */
.MainContact th,
.MainContact th:first-child	{
	padding-left: 1.5em;
}
.MainContact th.Required	{
	text-indent: -1em;
}
/*
.MainContact th,
.MainContact th:first-child	{
	padding-left: 1em;
}
.MainContact th.Required	{
	text-indent: -1em;
}
*/
.MainContact td ul	{
	list-style: none;
	margin-left: 0em;
	margin-top: 0px;
}
.MainContact td li	{
	display: inline;
	margin-right: 1em;
	margin-top: 0px;
	margin-bottom: 0px;
	white-space: nowrap;
}

.ContactAddressTel	{
/*
	text-align: center;
*/
}
.ContactAddressTel address	{
	display: inline-block;
}
.ContactAddressTel .big	{
	font-size: 2em;
}


.TableLayout.UneiMini	{
/*
	margin-left: auto;
	margin-right: auto;
*/
}
.TableLayout.UneiMini th,
.TableLayout.UneiMini td	{
	vertical-align: middle;
}
.TableLayout.UneiMini .UneiClosed	{
	display: block;
}

.l .UneiMini,
.Law .TableLayout.UneiMini,
.GuideLaw .TableLayout.UneiMini	{
	margin-left: 0;
	margin-bottom: 0;
}


.ContactEnd .TableLayout.UneiMini	{
}





/* ============================================================================================================
	プライバシーポリシー
	privacy.php
------------------------------------------------------------------------------------------------------------ */
.Privacy dl	{
	text-align: left;
	font-size: 0.8em;
}
.Privacy dt	{
	background: none;
	border-width: 0;
	padding-left:0px;
	font-weight:bold;
}
.Privacy dd	{}

.Privacy ul,
.Privacy ol	{
	text-align: left;
}





/* ============================================================================================================
	サイトマップ
	sitemap.php
------------------------------------------------------------------------------------------------------------ */
.Sitemap
{
}

.Sitemap>.Wrap
{
	gap: var(--gap);
}


.Sitemap .Big,
.Sitemap .big
{
	text-align: center;
}

.Sitemap .main
{
	display: grid;
	justify-items: center;
}

.Sitemap .main>ul
{
}

.Sitemap .main li:is(
	[class*="Instagram"],
	[class*="ClassColorSun"],
	[class*="ClassColorShine"],
	[class*="ClassColorBlack"],
	[class*="ClassColorBlonde"],
	[class*="ClassColorTwotone"],
	[class*="ClassWpTopics"],
	[class*="ClassWpVoice"]
)
{
	list-style: none;

	margin-left: -1.5em;
}

/*
.Sitemap .FigureLayout	{
	margin-top: 1em;
}
.Sitemap figure	{
	display: inline-block;
	vertical-align: top;
}
.Sitemap figure:not(:first-child)	{
	margin-left: 2em;
}
.Sitemap figure:not(:last-child)	{
	margin-right: 2em;
}
.Sitemap figure ul	{
	text-align: left;
	margin-top: 0px;
	list-style: none;
}
.Sitemap figure>ul	{
	margin-left: 0px;
}
.Sitemap li	{
}
.Sitemap .LinkIcon	{
	margin-right: 0.5em;
}
.Sitemap .glyph a	{
	text-decoration: none;
}
.Sitemap .FigureLayout br	{
	display: none;
}
*//*

.Sitemap section	{
	margin-top: 0px;
}
.Sitemap h2	{}
.Sitemap h2 b	{
	display: block;
	font-size: 1.5em;
}
.Sitemap h2 small	{
	display: block;
}

*/



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



/* ============================================================================================================
	box
------------------------------------------------------ */
#Footer>.Wrap,
.Footer .FooterWrap,
.SortNavi,
.Aboutus .Aisatsu,
.IndexCategory ul
	{ zoom: 1; }

#Footer>.Wrap:after,
.Footer .FooterWrap:after,
.SortNavi:after,
.Aboutus .Aisatsu:after,
.IndexCategory ul:after
	{
	content: ""; 
	display: block; 
	clear: both;
}


