@charset "utf-8";

/* CSS Document */

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

:root
{
/*	--font				: clamp(1rem, calc(0.75rem + 1vw), 1.5rem);*/
/*	--font				: clamp(1rem, 1rem + 0vw, 1rem); 16 - 16px*/
/*	--font				: clamp(0.75rem, 0.6rem + 0.5vw, 1rem); 12 - 16px */
/*	--font				: clamp(0.875rem, 0.8rem + 0.25vw, 1rem); 14 - 16px */
	--font				: clamp(0.75rem, 0.583rem + 0.56vw, 1rem);/* 12 - 16px */
/*	--font				: clamp(0.75rem, 0.625rem + 0.42vw, 0.938rem); 12 - 15px */

	--logo_h				: 2.25em;
	--h1_h					: 50vw;
	--drawer_toggle_size	: 3em;

	--padding				: 5vw;
}
/*
	--padding				: 7vw;
*/


body:not(#Index) .Main .WrapM
{
	max-width: initial;
}


.Header .search_box_script,
.PageNavi
{
	position: absolute;
	display: none;
	opacity: 0;
}

.WrapL
{
	max-width: initial;
	width: 100%;
	padding-left: var(--padding);
	padding-right: var(--padding);
}
/*
.Wrap :is(.WrapL, .WrapM, .WrapS)
{
	margin-left: initial;
	margin-right: initial;
	max-width: initial;
	padding-left: 0;
	padding-right: 0;
}
*/

.wave_border
{
	--wave_box_h			: 30svw;
}

body:not(#Index) .Header::before,
body:not(#Index) .Header .wave_border .scroll_loop.img
{
	font-size: 0.75em;
}
body:not(#Index) .Header .wave_border
{
}

.Footer .weve_bottom
{
	top: -0.5em;
}

.lead
{
	font-size: inherit;
}

.memo
{
}
/*
	padding: calc(var(--gap) + (var(--memo_head_h) / 2)) var(--gap) var(--gap);
*/

.Notes
{
	padding-top: calc(var(--gap) * 2);
}

.Main:is(.Convenient, .Useful)>.Wrap>.Wrap
{
	gap: calc(var(--padding_tb) * 2);
}


/* 誓約 */
.seiyaku
{
	margin-top: calc(var(--gap) * 2);
	margin-bottom: calc(var(--gap) * 2);
}


/* ------------------------------------------------------------------------------------------------------------
	<a>
*/
/* [250402-0930/250403]修正　もっとスリムに */
.ColorBtn
{
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

.ColorBtn::after
{
	height: calc(var(--padding_lr) * 0.5);
}


/* ------------------------------------------------------
	<a>	カテゴリボタン
*/
.NaviBtn
{
	--num				: 2;
	font-size: 0.8em;
}

.Access .guide .NaviBtn
{
	--num				: 2;
}


.NaviBtn.link_main
{
	font-size: inherit !important;
	padding: 0 !important;
	width: 100%;
	max-width: initial;
}
.NaviBtn.link_main>*
{
	width: 100%;
	max-width: initial;
}


.Access .link_main
{
	margin-top: var(--gap);
}
.Access .ID_anything .NaviBtn.link_main .title
{
	display: flex;
	align-items: center;
	gap: 0.5em;
}

/* ------------------------------------------------------
	工事中です
*/
.maintenance
{
	min-width: 15em;
}

.maintenance>*::before,
.maintenance>*>*::before,
.maintenance>*::after,
.maintenance>*>*::after
{
	font-size: 0.7em;
}


/* ------------------------------------------------------------------------------------------------------------
	<文字>
*/
.pagetitle
{
	height: 30svw;
}
/*
[250117/250124]校正　上下節約
	height: 40svw;
*/
.pagetitle .title>*:first-child.name
{
	font-size: 1.5em;
}
/*
[250117/250124]校正　上下節約
	font-size: 1.75em;
*/
.pagetitle .title>*:first-child
{
	font-size: 1.5em;
}
/*
[250117/250124]校正　上下節約
	font-size: 2em;
*/
.pagetitle .title>*:not(:first-child)
{
	font-size: 1.2em;
}

.pagetitle::before,
.pagetitle::after
{
	--w_size			: 35svw;
}


:is(h2, .h2)
{
	--h2_gap			: 0.5em;
}

:is(h2, .h2)>b,
.BlogOldBacknumber .detail h2
{
	font-size: 1.5em;
	padding: var(--h2_gap) calc(var(--h2_gap) * 2);
}
:is(h2, .h2)>b
{
	min-width: initial;
	width: 100%;
}

h2.mini
{
	width: 100%;
}
h2.mini>b
{
}

:is(h3, .h3,.Blog.Detail .post .post-title)
{
	width: 100%;
}
/*
	margin-bottom: var(--padding_tb);
*/
:is(h3, .h3)>b,
.Blog.Detail .post .post-title
{
	font-size: 1.3em;
	padding: 0;
}

:is(h4, .h4)
{
}
:is(h4, .h4)>b
{
	font-size: 1.2em;
}


/* ------------------------------------------------------------------------------------------------------------
	<table>
*/
th
{
	padding: 0.5em 1em;

	background-color: rgb(var(--gradation2_gr) / 0.2);
	border-bottom-width: 0;
}

.spotdata-detail th
{
	padding: 0.5em 1em;
}

td
{
	padding: 1em 1em 3em;
}

td:not(:last-of-type)
{
	padding-bottom: 0;
	border-bottom-width: 0;
}


tr[data-label]>:is(th, td)
{
}

tr[data-label]::before
{
	content: attr(data-label);
	display: block;

	padding: 0.5em 1em;
	background-color: rgb(var(--gradation2_gr) / 0.2);

	font-size: inherit;
	font-weight: bold;
}


/* ------------------------------------------------------------------------------------------------------------
	<header>
*/
#Document
{
	overflow: hidden;
}
/*
	overflow: initial;
*/

#Header
{
	height: 4em;
}
/*
[241225]　色を潜らせる為、fixed指定
	position: sticky;
*/

#Index #Contents
{
	margin-top: 4em;
}


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

.Header>.Wrap>.Wrap
{
}
/*
[260122-1139]　多言語対応が増えたので可変に
	grid-template-columns: 1fr;

*/
.Header>.Wrap>.Wrap>.Logo
{
	width: auto;
}
.Header>.Wrap>.Wrap>.Navi
{
}
.Header>.Wrap>.Wrap>.search_box_script
{
}


/* ============================================================================================================
	<global menu>
------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------
	[260122-1139]　多言語対応
*/
.Header .GlobalMenu.language_box
{
	display: block;
	opacity: unset;

	width: auto;
	height: auto;
	overflow: visible;
}


.Footer .Info .menu .footer_small
{
	display: grid;
	grid-template-columns: repeat(2, auto);
	width: initial;
	height: initial;
	opacity: 1;

	gap: 1em;
}
/*
	gap: 1em 3em;
*/
.Footer .Info .menu .footer_small>li:not(:last-of-type)::after
{
	content: none;
}

/* ------------------------------------------------------------------------------------------------------------
	<main>
*/
#Contents
{
}
/*
	padding-top: 5em;
*/


/* ------------------------------------------------------------------------------------------------------------
	ページ送り
*/
.sort_navi
{
	font-size: inherit;
}


/* ------------------------------------------------------------------------------------------------------------
	<sideArea>
*/
.Footer
{
	padding-bottom: 5em;
}

.sideArea
{
	--widget_w				: 316px;
	--icon_size				: 3em;

	position: fixed;
	top: initial;
	left: 0;
	right: 0;
	bottom: 0;

	padding-bottom: 0.5em;
}

.sideArea::before
{
	top: 0;
	left: 50%;
	right: initial;
	
	translate: -50% -0%;

	width: 150%;
	height: 150%;

	opacity: 0.85;
}

.sideArea .rotate
{
	rotate: initial;
	aspect-ratio: initial;
}

.sideArea>.Wrap
{
	display: grid;
	grid-template-columns: repeat(2, 50%);
	justify-content: center;
	justify-items: center;
	align-items: center;
}
.sideArea .Item
{
	display: grid;
	justify-content: center;
	justify-items: center;
	align-items: center;
}
.sideArea .Item>*
{
	justify-content: center;
}


.sideArea .temperature
{
	margin-right: -3em;
}
.sideArea .temperature .data
{
	top: -0.5em;

	height: 3em;
}
.sideArea .temperature .data :is(a, iframe)
{
}


.sideArea .sunset
{
	top: initial;

	display: grid;
	grid-template-areas:
		"icon head"
		"icon time"
	;
	grid-template-columns: var(--icon_size) 1fr;
}
.sideArea .sunset .head
{
	grid-area: head;
}
.sideArea .sunset .time
{
	grid-area: time;

	margin: auto;
}
.sideArea .sunset .icon
{
	grid-area: icon;

	top: initial;
}



/* ------------------------------------------------------------------------------------------------------------
	<drawer>
*/
/*
.Drawer .toggle
{
	height: auto;
	top: 1.25em;
}

	height: calc(var(--drawer_toggle_size) / 1);
*/

.Drawer .toggle .Btn>span
{
	height: auto;
}
/*
[250310-0920/250312]校正　
	height: 0.75em;
*/
/*
.Drawer .toggle .Btn>span img
{
	filter: drop-shadow(0px 0px 0em rgb(var(--bk)));
}
*/
.Drawer .List>.Wrap
{
	display: grid;
	gap: var(--gap);
}

.Drawer .List>.Wrap>ul
{
	grid-template-columns: repeat(1, 1fr);
	gap: 0;
}
.Drawer .List>.Wrap>ul>li
{
	border-width: 0;
	border-radius: 0;
}

.Drawer .List .content_list :where(a, .a)
{
	grid-template-columns: 1.75em 1fr;
}

.Drawer .Change .details input.switch:checked ~ label ~ .detail
{
	position: relative;
	left: initial;
	right: initial;
	top: initial;
	bottom: initial;
	translate: none;
	
	width: 100%;

	margin-top: 0em;
	border-width: 0;

	padding-left: 2em;

	border-radius: 0;
}


.Drawer .List .Child ul
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 0.5em;
}
/*
	grid-template-columns: repeat(2, 1fr);
	gap: 0 1em;
*/
.Drawer .List .Child ul>li
{
	min-width: calc(((100% - (0.5em * 1)) / 2) * 0.93);
}


.Drawer .List>.Wrap .Child li :where(a, .a)
{
	padding-left: 0;
	padding-right: 0;
}

.Drawer .Ex
{
	display: inline-grid;
	grid-template-columns: 1fr;

	width: auto;
	margin-left: auto;
	margin-right: auto;
}

/*
.Drawer :is(.ClassConvenient, .ClassUseful) .summary
{
	display: grid;
	opacity: 1.0;
}
.Drawer :is(.ClassConvenient, .ClassUseful) :is(a, .a)
{
	grid-template-columns: 1fr;
}
.Drawer :is(.ClassConvenient, .ClassUseful) :is(a, .a) .Img
{
	display: none;
	opacity: 0;
}
*/


/* ------------------------------------------------------
	[250704-1059]　任意の順番、色変え
*/
body:not(.type_design_original) .Drawer .List>.Wrap>ul
{
	display: grid;
}
body:not(.type_design_original) .Drawer .List>.Wrap>ul>li
{
	width: 100%;
}

body:not(.type_design_original) .Drawer .Change :is(.ClassIndex, .ClassContact, .ClassPamphlet) .details input.switch:checked ~ label ~ .detail
{
	padding: 0;
}
body:not(.type_design_original) .Drawer .List :is(.ClassIndex, .ClassContact, .ClassPamphlet) .Child li :where(a, .a)
{
	padding-left: var(--gap);
}

body:not(.type_design_original) .Drawer .List>.Wrap>ul>li:is(.ClassContact, .ClassPamphlet)
{
	width: 100%;
	margin-top: 0.5em;
}
/*
	margin-left: calc(0em - var(--padding));
	margin-right: calc(0em - var(--padding));
	width: calc(100% + (var(--padding) * 2));
*/

body:not(.type_design_original) .Drawer .List>.Wrap>ul>li:is(.ClassPamphlet)
{
}

/* ------------------------------------------------------------------------------------------------------------
	<footer>
*/
.Footer
{
}

.Footer::before
{
	background-size: 250vw;
}

.Footer>.Wrap
{
	gap: calc(var(--gap) * 2);
}

.Footer .Info>.Wrap
{
	padding-left: 0;
	padding-right: 0;
}
/*
	padding-left: 4vw;
	padding-right: 4vw;
*/

.Footer .Info .sns>ul
{
	grid-template-columns: repeat(2, 1fr);
}

.Footer .Info .sns a
{
	display: block;
	width: 100%;
}

.Footer .Info .menu .footer_btn
{
	width: initial;
	height: initial;
	opacity: inherit;
}

.Footer .Info .menu .footer_btn li>.Wrap,
.Footer .Info .menu .footer_btn :is(a, .a)
{
	height: 100%;
}

.Footer .Info .menu .footer_btn :is(a, .a)
{
	aspect-ratio: initial;

	display: grid;
	justify-content: center;
	justify-items: center;
	gap: 0.5em;

	padding: 0.25em 0.25em 0.5em 0.25em;
}

.Footer .GlobalMenu :is(a, .a)>span,
.Footer .GlobalMenu :is(a, .a)>span *
{
	display: block;
	white-space: initial;
	text-align: center;
}

.Footer .Info .menu .footer_btn .icon
{
	position: relative;
	top: initial;
	left: initial;
	right: initial;
	bottom: initial;
	transform: none;
	translate: none;
}
.Footer .Info .menu .footer_btn .title_set
{
	font-size: 0.9em;
}


.Footer .Info .menu .footer_small a
{
}
/*
[250310-0920/250312]校正　背景k0.01
	background-color: transparent;
*/

/*
[250408-1015]修正　文字大きく
[250117/250123]校正
*/
.Footer .Navi
{
	font-size: 1.2em;

	display: inline-grid;
	grid-template-columns: 1fr;

	margin-top: 0;
	padding-left: 0;
	padding-right: 0;
}
/*
	gap: calc(var(--gap) * 2);
*/

.Footer .Navi>.Wrap
{
	display: inline-grid;
	display: grid;
	justify-content: start;
}

/* [250408-1015]修正　文字大きく */
.Footer .Navi .data:not(.tilte)
{
	font-size: inherit;

	display: inline-flex;
	flex-wrap: wrap;
}

.Footer .Navi .data :is(.Open, .tel)
{
}
.Footer .Navi .data :is(.Open, .tel)>*:first-child
{
}
/*
	width: calc(var(--em) * 4);
*/

.Footer .Navi>.Wrap .data.address>*
{
	display: grid;
}


/* --- 【sp】----------------------- 
[250521]効かない
@media screen and (max-width: calc(var(--em) * 21)) {
	.Footer .Navi .data :is(.Open, .tel)
	{
		color: red;
		width: calc(var(--em) * 21);
	}
}
*/



/* [250117/250123]校正による調整 */
.Footer .Copy
{
	position: relative;
	left: initial;
	top: initial;
	right: initial;
	bottom: inherit;
}



/* ============================================================================================================
	SliderGallery・共通
------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------
	<Gallery>
*/
.Gallery.Slider
{
	--gallery_dot_w				: 5vw;
}
/*
	max-width: calc(100vw - (var(--padding) * 2)) !important;
	margin-left: auto;
	margin-right: auto;
*/
.Gallery.Slider>.Wrap
{
	padding: var(--gap) 0;
}

.Gallery.Slider .slider
{
}

.Gallery.Slider .slick-arrow,
.Gallery.Slider .slick-dots
{
	font-size: 0.8em;
}


.Gallery.Slider .Time
{
	font-size: 0.9em;

	grid-template-areas:
		"b"
		"dates"
	;
	align-items: center;
	gap: 0;
}
.Gallery.Slider .Time>.dates
{
	margin-left: 1em;
}

:is(#Index, #FurusatoNouzei) .Gallery.Slider .slider
{
	grid-template-columns: 1fr auto 1fr;
}
/*
*/


/* ------------------------------------------------------------------------------------------------------------
	<SNS>
*/


/* ------------------------------------------------------------------------------------------------------------
	お知らせ
*/
.News .List .data
{
	grid-template-areas:
		"day ct_icon"
		"title title"
	;
	grid-template-columns: 5.5em 1fr;
	justify-content: start;
}

.News .List .ct_icon
{
	justify-self: start;
	width: 7em;
}

.News .List .NewMark
{
	scale: 0.8;
	
	bottom: calc(100% - 1.5em);
}


.Index .News .WrapS
{
	max-width: initial;
	padding-left: var(--gap);
	padding-right: var(--gap);
}

#Index .Index .News .body
{
	display: block;
}

#Index .Index .News .body .footer
{
	display: grid;
	margin-top: var(--gap);
}


.NewsDetail .footer>.Back
{
	width: 100%;
}


/* ======================================================
	おすすめスポット / 特集
	[original] special
	@import"../css/test_line.css";
====================================================== */
/* ------------------------------------------------------
	一覧
	special/index.php
------------------------------------------------------ */
.SpecialIndex .Gallery .List
{
	grid-template-columns: repeat(2, 1fr);
}


/* ============================================================================================================
	一覧
	イベント(event/index.php)
------------------------------------------------------------------------------------------------------------ */
.event_calendar
{
	gap: var(--padding_tb);
}

/*
.event_calendar .head>.yy
{
	grid-template-columns: auto 1fr auto;
}
*/

.event_calendar .head .yy
{
}

.event_calendar .head .yy :is(.PrevNen, .NextNen)
{
	width: 8em;
}

.event_calendar .head .yy :is(.PrevNen, .NextNen) a::before
{
	width: 1.5em;
}


.event_calendar .head .mm
{
	grid-template-columns: repeat(6, 1fr);
}


.event_calendar .head b
{
	font-size: 1.2em;
}

.event_calendar .head>.mm a
{
	display: grid;
	align-items: center;

	padding: 0.5em 0;
	width: 100%;
	height: 100%;

	letter-spacing: normal;
	line-height: 1;

}
/*
[250124-2009]　縦書きにしなくても、縦になる
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	text-orientation: upright;
*/

.event_calendar .head>.mm a>span>b
{
	text-combine-upright: all;
}


.event_calendar .main
{
	grid-template-columns: repeat(1, 1fr);
	gap: var(--padding_tb);
}
.event_calendar .main .Item a
{
	grid-template-columns: 40% 1fr;
	align-items: start;
}
.event_calendar .main .Item .data
{
	text-align: left;
}

/* ------------------------------------------------------
	イベント(event/detail.php)
------------------------------------------------------ */
.EventIndex.Spot.ArticleDetail article .head .h3
{
	margin-bottom: var(--gap);
}

.EventIndex.Spot.ArticleDetail article .head
{
	grid-template-areas:
		"h2"
		"Gallery"
		"spotname-wrapper"
	;
	grid-template-columns: 1fr;
	justify-content: stretch;

}

.EventIndex.Spot.ArticleDetail article .head .spotname-wrapper
{
	justify-self: stretch;
	justify-content: initial;
}

/* ============================================================================================================
	フォトコンテスト
	special/contest/index.php
------------------------------------------------------------------------------------------------------------ */
.Contest .Top .head
{
	grid-template-areas:
		"h2"
		"Img"
		"detail"
	;
	grid-template-columns: repeat(1, 1fr);
}

.Contest .Top .head>.Img,
.Contest .Top .head>.detail
{
	padding-left: var(--padding);
	padding-right: var(--padding);
}


.Contest .Top .main .Item .prize
{
	display: grid;
	justify-content: start;
	gap: 0;

	font-size: 0.8em;
}

.Contest .Top .main .Item .prize>.th
{
	width: 12em;
}
.Contest .Top .main .Item .prize>.th>b
{
}

.Contest .Top .main .Item .prize>.th br
{
	display: none;
}

.Contest .Top .main .Item .prize>.td
{
	padding: var(--gap);
}

.Contest .Top .main .data
{
	display: grid;
}

.Contest .Top .main .Item .button .List
{
	--num		: 1;
}

.Contest .Top .main .oubo_kitei>.Wrap
{
	column-count: 1;
}


.Contest .back_number_list .List
{
	grid-template-columns: repeat(1, 1fr);
}


/* ============================================================================================================
	一覧表示
	フォトコンテスト  バックナンバー(photo_contest_award.php)
	スポット(spot/index.php)
------------------------------------------------------------------------------------------------------------ */
.ArticleList .List
{
	grid-template-columns: repeat(1, 1fr);
}

.ArticleList .List .Item>.Wrap
{
	gap: 0;
}

.ArticleList .List .Item h2
{
}
/*
	margin-bottom: 1em;
*/

.ArticleList .List .Item h2>b
{
	height: initial;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
/*
	min-height: 3em;
	height: auto;
*/

.ArticleList .List .Item .detail
{
	grid-template-columns: repeat(2, 1fr);
	align-items: start;
	gap: 0;
}

.ArticleList .List .Item h3.sub_title
{
	text-align: justify;
}
.ArticleList .List .Item h3.sub_title>b
{
	line-height: 1.5;
	-webkit-line-clamp: 3;
}


.ArticleList .List .Item .EX
{
	margin-top: 1em;
}

.ArticleList .List .Item .EX h3
{
	margin-bottom: 1em;
}



/* ============================================================================================================
	一覧
	スポット(spot/index.php)
------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------
	[共通]　検索BOX
------------------------------------------------------ */
.search_box form
{
	grid-template-columns: 1fr;
}

.search_box .search_item
{
	display: grid;
	grid-template-columns: repeat(1, 1fr);
}
/*
[250310-0920/250312]校正・削除　『詳細条件』されたら、奇数になった
	grid-template-columns: repeat(2, 1fr);

*/
/*
[2412226/241227]　デザイン変えろ
.search_box
{
	margin-top: calc(0em - var(--gap));
}

.search_box form
{
	display: grid;
	grid-template-areas:
		"search_category search_area"
		"Btn Btn"
	;
	gap: 1em;
}
.search_box form>.search_category
{
	grid-area: search_category;
}
.search_box form>.search_area
{
	grid-area: search_area;
}
.search_box form>.Btn
{
	grid-area: Btn;
}

.search_box form>*
{
	display: grid;
	gap: 1em;
}

.search_box form .title
{
	padding: 0.25em 0;
}
.search_box form .title::before
{
	--arrow_w					: 1em;
	--arrow_h					: 0.75em;
	--arrow_position_l			: 1em;

	left: 50%;
	top: 0;
	translate: -50% -0%;
	width: 100%;
	height: calc(100% + var(--arrow_h));

	clip-path: polygon(
		0 0,
		100% 0,
		100% calc(100% - var(--arrow_h)),
		calc(var(--arrow_position_l) + var(--arrow_w)) calc(100% - var(--arrow_h)),
		calc(var(--arrow_position_l) + (var(--arrow_w) / 2)) 100%,
		var(--arrow_position_l) calc(100% - var(--arrow_h)),
		0 calc(100% - var(--arrow_h))
	);
}

.search_box form .Btn a
{
	justify-content: center;
}
*/


.SpotIndex .body .List
{
	grid-template-columns: repeat(2, 1fr);
}

.SpotIndex .body .Item .detail
{
	grid-template-columns: repeat(1, 1fr);
}

.SpotIndex .body .Item h2>b
{
	height: 5em;
}


/* ============================================================================================================
	詳細
	スポット(spot/spot.php)
	[241209am]　スライダー+ライトボックスへ変更
------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------
	[詳細]　<head>
------------------------------------------------------ */
.Spot.ArticleDetail .head
{
	display: grid;
}

#Category .Spot.ArticleDetail .Gallery.Slider .slider+.thumbnail img
{
	width: 100%;
	height: initial;
}

/* タグ */
.Spot.ArticleDetail .head .spotname-wrapper .tag-wrapper
{
}


/* ------------------------------------------------------
	[詳細]　近所のスポット
------------------------------------------------------ */
.spotdata-nearspot .nearspot-list
{
	--num					: 3;
}

.spotdata-nearspot .nearspot-list .nearspot-name
{
	line-height: 1.5;
}



/* ============================================================================================================
	モデルコース
	model/index.php
------------------------------------------------------------------------------------------------------------ */
.ModelIndex .body .List
{
	grid-template-columns: repeat(1, 1fr);
	align-items: start;
	gap: var(--padding_tb);
}

.ModelIndex .body .List :is(a, .a)
{
	grid-template-columns: 40% 1fr;
	align-items: start;
}


.ModelDetail .Step
{
	--step_num_sise				: 3.5em;
}

.ModelDetail .step::before
{
	left: calc(var(--padding) + (var(--num_size) / 2));
}

.ModelDetail .step li
{
	gap: var(--padding_tb);
}

.ModelDetail .step li:not(.goal)
{
	padding-bottom: var(--padding_tb);
}
.ModelDetail .step li>:is(.Wrap, a)::before
{
	height: calc(100% + var(--padding_tb));
}

.ModelDetail .step li>:is(.Wrap, a) .detail
{
	display: grid;
	grid-template-columns: 1fr;
	width: 100%;
}

.ModelDetail .step .course_stay+.stay_icon,
.ModelDetail .step li
{
}
/*
	padding-left: calc(var(--num_size) + var(--num_gap));
	padding-left: calc(var(--num_size) + (var(--num_gap) / 2));
*/

.ModelDetail .step .title>.kana
{
	font-size: 0.9em;
	bottom: calc(100% - 0.5em);
}

.ModelDetail .step .ColorBtn
{
	justify-self: end;
	width: auto;
}


/*
	# 伊良湖温泉
	# [241224/250203]　『伊良湖温泉は、いくつかの施設では入れるので、イメージ画像を掲載し、伊良湖温泉サイトへ遷移する』
*/
.ModelDetail .footer.step_spring
{
}

.ModelDetail .footer.step_spring .photo img
{
	aspect-ratio: 16/ 9;
}
.ModelDetail .footer.step_spring .txt
{
	left: -1em;
	width: 22em;

	padding: 0;
}

.ModelDetail .footer.step_spring .txt .ColorBtn
{
	width: auto;
}


/* ============================================================================================================
	お問合せ
	contact.php
------------------------------------------------------------------------------------------------------------ */
.Contact .form .main
{
}


/* ============================================================================================================
	地図
------------------------------------------------------------------------------------------------------------ */
.Map
{
	aspect-ratio: 1;
	width: 100svw;
}


/* ------------------------------------------------------
	[250314-1142]校正・追加
	マイマップ
------------------------------------------------------*/
.my_map
{
}

.my_map iframe
{
	aspect-ratio: 1;
}



/* ============================================================================================================
	アクセス
	access.php
------------------------------------------------------------------------------------------------------------ */
.Access .Ct1 .map_bg
{
	font-size: 0.8em;
}

.Access .Ct1 .main
{
	font-size: inherit;
}
.Access .Ct1 .main h3
{
	width: auto !important;
}
.Access .Ct1 .main h3>b
{
	font-size: 2.5em;
}

.Access .Ct1 .map_tahara
{

	right: 0;
	width: 50%;
}
.Access .Ct1 .map_tahara .Item3 .Caption
{
	font-size: 1.2em;
}
.Access .Ct1 .map_tahara .Item4
{
	right: -10%;
}


.Access .guide .NaviBtn
{
	font-size: 0.8em;
	padding-left: var(--padding);
	padding-right: var(--padding);
}

.Access .guide .navi_main .item_title .icon img
{
	width: 3em;
}

.Access .guide .navi_main h4>b
{
	display: grid;
	grid-template-areas:
		"icon b"
	;
	justify-content: center;
	align-items: center;
	gap: 0.5em;
}
.Access .guide .navi_main h4>b>b
{
	grid-area: b;
}
.Access .guide .navi_main h4 .icon
{
	grid-area: icon;

	font-size: 0.8em;
	
	position: relative;
	top: initial;
	bottom: initial;
	left: initial;
	right: initial;
	translate: none;
	transform: none;

	width: initial;
	height: 0;

	margin-left: -3em;
}
/*
[250402-0930/250403]修正　『10、アクセスのところのアイコンが文字にかぶっていました。』
	font-size: 0.8em;
	
	top: 0;
	bottom: 100%;
	left: -1em;
	right: initial;
	translate: none;
	transform: none;
	width: initial;

*/


.Access .guide .navi_main .route>.Wrap
{
	font-size: 0.9em;
	grid-template-columns: repeat(2, 4.5em 1fr);
}
/*
[250402-0930/250403]修正　『10、また、各スポットの□を小さくする。コンパクトにする。』
	grid-template-columns: repeat(2, 5.5em 1fr);


*/

.Access .guide .navi_main .route .data.guide>*
{
	text-align: center;
}

.Access .guide .navi_main .link_main
{
	grid-template-columns: 1fr;
}

/* [250402-0930/250403]修正　『10、また、各スポットの□を小さくする。コンパクトにする。』
	[アクセス](access.php)	道案内　ゴール
*/
.Access .guide .navi_main .route .data.goal
{
	font-size: inherit;
	border-width: 1px;
}
.Access .guide .navi_main .route .data.goal:after
{
	border-width: 0px;
}

/* [250117/250122]校正・追加　豊橋まで23号のみ(120分)
[アクセス](access.php)	道案内・個別　「お車をご利用の場合」　大阪・名古屋方面から */
/* start　大阪、名古屋 */
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_1
{
	order: 1;
}
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_2
{
	order: 2;
}
/* 豊橋まで23号のみ(120分) */
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_2_5
{
	order: 5;
}
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_3
{
	order: 3;
}
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_4
{
	order: 4;
}
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_5
{
	order: 5;
}
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_6
{
}
/* 豊橋 */
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_7
{
	order: 6;

	aspect-ratio: 1;
	grid-row: initial;
}
/* 259号線　約30分、42号線　約30分 */
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_8
{
	order: 7;
	grid-row: initial;
}
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_9
{
	order: 9;
}
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_10
{
	order: 10;
}
.Access .guide .navi_main>.Item[class*="car"] .route.oosaka .data_ID_11
{
	order: 11;
}



/* ============================================================================================================
	写真撮影・ドローン空撮申請
	request.php
	------------------------------------------------------
	[250520-1524/250611-1126]　全文差し替え
------------------------------------------------------------------------------------------------------------ */
.Request
{
}

.Request .List .Item .body
{
	grid-template-areas: none;
	grid-template-columns: 1fr;
}
.Request .List .Item .body>*[class]
{
	grid-area: initial;
}

.Request .List :is(.ID_id1) .drone .tr
{
	justify-content: initial;
}
.Request .List :is(.ID_id1) .drone .td
{
}
.Request .List :is(.ID_id1) .Btn
{
	justify-content: initial;
}
.Request .List :is(.ID_id1) .Btn .rd_Item
{
	grid-template-columns: 1fr;
}

/*
[250520-1524/250611-1126]　全文差し替え
#Request .pagetitle .title .name br
{
	display: none;
}

.Request .Ct1
{
	padding-top: 0;
}


.Request ol
{
	margin-left: 0;
}

.Request .Ct2 .main1>div:not(.name)
{
	font-size: inherit;
}
/
.Request .Ct2 .main1>div:not(.name)
{
	margin: 0;
	display: grid;

	text-align: left;
}

.Request .Ct2 .main1>div:not(.name)>*:first-of-type
{
	width: initial;
	text-align: inherit;
}
/

.Request .Ct2 .Step>ol
{
	display: grid;
}
.Request .Ct2 .Step>ol>li:not(:last-of-type)::after
{
	top: calc((100% + (6em / 2)) - ((1.5em * 2) / 2));
	left: 50%;
	translate: -50% -0%;
	rotate: none;
}
*/


/* ============================================================================================================
	パンフレットダウンロード
	pamphlet.php
------------------------------------------------------------------------------------------------------------ */
.Pamphlet
{
}

.Pamphlet.ArticleList .List
{
}

.Pamphlet.ArticleList .List .Item
{
}

.Pamphlet.ArticleList .List .Item>.Wrap
{
	gap: 1em;
}

.Pamphlet.ArticleList .List .Item .detail
{
	display: grid;
	grid-template-columns: unset;
}
/*
	grid-template-columns: 1fr;
*/

.Pamphlet.ArticleList .List .Item h2
{
	justify-self: center;
	margin-bottom: calc(var(--gap) * 1) !important;
}

.Pamphlet.ArticleList .List .Item h2>b
{
	padding-top: 0;
	padding-bottom: 0;
}

.Pamphlet.ArticleList .form table .list
{
	grid-template-columns: 1fr;
}



/* ============================================================================================================
	画像ダウンロード
	download.php
------------------------------------------------------------------------------------------------------------ */
.Download
{
}

/* [260923]新規　画像のご利用について */
.Download .riyou_guide .form_download .detail
{
	flex-direction: column;
	width: 100%;
}

.Download .riyou_guide .form_download .ColorBtn
{
	flex: none;
	width: 100%;
}

.Download .riyou_guide .teishutsu
{
	grid-template-columns: repeat(1, 1fr);
	gap: 0.5em;
}

.Download .riyou_guide .teishutsu .address :is(.addr_gap, .addr_gap_s)
{
	margin-left: 0;
}

.Download .kiyaku .riyou_credit
{
	grid-template-columns: repeat(1, 1fr);
	gap: 0;
}

.Download .ArticleList .List
{
	grid-template-columns: repeat(1, 1fr);
}

.Download .ArticleList .List .Item .data .download_button .ColorBtn
{
	padding-left: 1em;
	padding-right: 3em;
}
.Download .ArticleList .List .Item .data .download_button .ColorBtn>div
{
	text-align: justify;
}

/* ============================================================================================================
	便利なサービス
	convenient.php
------------------------------------------------------------------------------------------------------------ */
.Convenient
{
}


/* [便利なサービス]　レンタサイクル・EVモビリティ　[2510129]原稿着 */
.Convenient .Ct.rental_bike
{
}

.Convenient .Ct.rental_bike .fee_icon_list
{
	flex-wrap: wrap;
}

.Convenient .Ct.rental_bike .NaviBtn.AnchorBtn
{
	font-size: inherit;
	justify-content: stretch;
	display: grid;
}
.Convenient .Ct.rental_bike .NaviBtn.AnchorBtn>*
{
	width: 100%;
	max-width: initial;
}
.Convenient .Ct.rental_bike .NaviBtn.AnchorBtn .title
{
	display: flex;
	align-items: center;
	gap: 0.5em;
}

/* [便利なサービス]　コインロッカー　[250127]原稿着 */
.Convenient .Ct.locker
{
}


.Convenient .Ct.locker .main_Item>.Wrap
{
	grid-template-areas:
		"title"
		"photo1"
		"detail"
	;
	grid-template-columns: 1fr;

}

.Convenient .Ct.locker .detail .td>.Wrap
{
}

.Convenient .Ct.locker .main_Item .photo1 .Caption
{
	font-size: inherit;
	left: 1em;
	right: initial;
	bottom: calc(100% - 1em);
}


/* ============================================================================================================
	お役立ち情報
	useful.php
------------------------------------------------------------------------------------------------------------ */
.Useful
{
}

.Useful .touristinfo>.Wrap.Layout .address
{
	display: grid;
	gap: 0;
}
.Useful .touristinfo>.Wrap.Layout .address>*:not(:first-child)
{
	padding-top: 0;
}
.Useful .touristinfo>.Wrap.Layout .address>*:not(:last-child)
{
	padding-bottom: 0;
}


/* [お役立ち情報]　日の出・日の入 */
.Useful .sun_rises_sunset
{
}

.Useful .sun_rises_sunset .list
{
	grid-template-columns: repeat(2, 1fr);
}

.Useful .sun_rises_sunset .list .day .day_head
{
	font-size: inherit;
	grid-template-columns: 2em 1fr;
}


/* [お役立ち情報]　もしもの災害に */
.Useful .disaster
{
}

.Useful .disaster .body
{
	grid-template-columns: repeat(1, 1fr);
}

.Useful .disaster .body .ID_1
{
	grid-column: initial;
}
.Useful .disaster .body .ID_1 .detail
{
	grid-template-columns: repeat(1, 1fr);
}


/* ============================================================================================================
	後援申請
	suport.php
------------------------------------------------------------------------------------------------------------ */
.Suport
{
}

.Suport .ct2 .Layout
{
	grid-template-columns: 1fr;
}


/* ============================================================================================================
	観光ビューローについて
	aboutus.php
------------------------------------------------------------------------------------------------------------ */
.Aboutus
{
}

/* [250411-1313]追加　「観光ビューローについて」のページの赤〇のあたり（ご入会お待ちしておりますの後のあたり）に、「会員申込み」のページへ飛べるようなボタンを追加 */
.Aboutus .gaiyou
{
}

.Aboutus .gaiyou .ClassMember
{
	text-indent: 0;
	display: block;

	position: relative;
	right: initial;
	top: initial;
	translate: none;

	margin-top: var(--gap);
}



/* ============================================================================================================
	会員一覧
	member_list.php
------------------------------------------------------------------------------------------------------------ */
.MemberList .head
{
	position: relative;
	left: initial;
	top: initial;
	right: initial;
	bottom: initial;

	margin-top: var(--padding_tb);
}

.MemberList .List
{
	grid-template-columns: 1fr;
	margin-top: var(--gap);
}

.MemberList .List article:nth-child(2n+2)
{
	margin-top: 0;
	margin-bottom: 0;
}

.MemberList .List .footer
{
	right: 0.5em;
	bottom: 0.25em;
}


/* ------------------------------------------------------
	[会員募集]　入会方法
*/
.Member .body .Ct .syurui thead
{
	position: absolute;
	display: none;
	opacity: 0;
}


.Member .body .Ct .nyukai_houhou .main .detail
{
	width: 100%;
	
	display: grid;
	justify-content: initial;
}
/*
	grid-template-columns: 1fr;
*/
.Member .body .Ct .nyukai_houhou .main .detail .Item
{
	width: 100%;
}


.Member .body .Ct .jigyo_naiyou .main
{
	display: inline-grid;
	grid-template-columns: 1fr;

	margin-left: 1.5em;
}


.Member .body .Ct .footer .main .unei
{
	font-size: inherit;
}
.Member .body .Ct .footer .main .tel_fax
{
	font-size: inherit;
}


/* ============================================================================================================
	サイトマップ
	sitemap.php
============================================================================================================ */
.Sitemap .body>ul
{
	grid-template-columns: 1fr;
}

.Sitemap .body>ul>li>.Wrap>:is(a, .a)
{
	font-size: inherit;
}

.Sitemap .body .Child>ul
{
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em 0;
}
/*
	grid-template-columns: repeat(auto-fit, minmax(calc((100% - 0.5em) / 2), 1fr));
	grid-template-columns: 1fr;
*/
.Sitemap .body .Child>ul>li
{
	min-width: 50%;
}

.spotdata-relation .spot-list-wrapper
{
	--num				: 2;
}

.area-tag-tahara
{
	font-size: 0.9em;
}


/* ============================================================================================================
	ブログ
------------------------------------------------------------------------------------------------------------ */

/* ------------------------------------------------------
	[ブログ]　バックナンバ―ボタン
*/
.backnumber_btn
{
	width: 100%;
}
.backnumber_btn .main
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	justify-content: stretch;
}
.backnumber_btn .main>*
{
	width: 100%;
}


/* ------------------------------------------------------
	[ブログ]　バックナンバ―　埋め込み本文
*/

.BlogOldBacknumber .NaviBtn
{
	--num				: 3;

	font-size: inherit;
	gap: 0.5em;
}

.BlogOldBacknumber .NaviBtn a
{
	padding: 0.5em 0.25em;
}

