@charset "UTF-8";

/**
 * 全体
----------------------------------------------------------------*/
:root{
	--main:rgb(0,158,65);
	--sub:rgb(239,122,0);
	--black:rgb(84,51,0);
	--green:rgb(0,158,65);
	--orange:rgb(239,122,0);
	--red:rgb(229,0,18);
	--black:rgb(84,51,0);
	--jetblack:rgb(0,0,0);
	--beige:rgb(179,171,150);
	--milk:rgb(238,236,227);
	--yellow:rgb(255,225,0);
	--line:rgb(6,199,85);
	--worange:rgb(251,180,0);
	
	--main9:rgb(25,167,84);
	--sub9:rgb(240,135,25);
	--black9:rgb(101,71,25);
	--green9:rgb(25,167,84);
	--orange9:rgb(240,135,25);
	--red9:rgb(231,25,41);
	--black9:rgb(101,71,25);
	--jetblack9:rgb(25,25,25);
	--beige9:rgb(186,179,160);
	--milk9:rgb(239,237,229);
	--yellow9:rgb(255,228,25);
	--line9:rgb(30,204,102);
	--worange9:rgb(251,187,25);
	
	--main8:rgb(51,177,103);
	--sub8:rgb(242,148,51);
	--black8:rgb(118,91,51);
	--green8:rgb(51,177,103);
	--orange8:rgb(242,148,51);
	--red8:rgb(234,51,65);
	--black8:rgb(118,91,51);
	--jetblack8:rgb(51,51,51);
	--beige8:rgb(194,187,171);
	--milk8:rgb(241,239,232);
	--yellow8:rgb(255,231,51);
	--line8:rgb(55,210,119);
	--worange8:rgb(251,195,51);
	
	--main7:rgb(76,187,122);
	--sub7:rgb(243,161,76);
	--black7:rgb(135,112,76);
	--green7:rgb(76,187,122);
	--orange7:rgb(243,161,76);
	--red7:rgb(236,76,89);
	--black7:rgb(135,112,76);
	--jetblack7:rgb(76,76,76);
	--beige7:rgb(201,196,181);
	--milk7:rgb(243,241,235);
	--yellow7:rgb(255,234,76);
	--line7:rgb(80,215,136);
	--worange7:rgb(252,202,76);
	
	--main6:rgb(101,196,141);
	--sub6:rgb(245,175,101);
	--black6:rgb(152,132,101);
	--green6:rgb(101,196,141);
	--orange6:rgb(245,175,101);
	--red6:rgb(239,101,112);
	--black6:rgb(152,132,101);
	--jetblack6:rgb(101,101,101);
	--beige6:rgb(209,204,192);
	--milk6:rgb(244,243,238);
	--yellow6:rgb(255,237,101);
	--line6:rgb(105,221,153);
	--worange6:rgb(252,210,101);
	
	--main5:rgb(127,206,160);
	--sub5:rgb(247,188,127);
	--black5:rgb(169,153,127);
	--green5:rgb(127,206,160);
	--orange5:rgb(247,188,127);
	--red5:rgb(242,127,136);
	--black5:rgb(169,153,127);
	--jetblack5:rgb(127,127,127);
	--beige5:rgb(217,213,202);
	--milk5:rgb(246,245,241);
	--yellow5:rgb(255,240,127);
	--line5:rgb(130,227,170);
	--worange5:rgb(253,217,127);
	
	--main4:rgb(153,216,179);
	--sub4:rgb(248,201,153);
	--black4:rgb(186,173,153);
	--green4:rgb(153,216,179);
	--orange4:rgb(248,201,153);
	--red4:rgb(244,153,160);
	--black4:rgb(186,173,153);
	--jetblack4:rgb(153,153,153);
	--beige4:rgb(224,221,213);
	--milk4:rgb(248,247,243);
	--yellow4:rgb(255,243,153);
	--line4:rgb(155,232,187);
	--worange4:rgb(253,225,153);
	
	--main3:rgb(178,225,198);
	--sub3:rgb(250,215,178);
	--black3:rgb(203,193,178);
	--green3:rgb(178,225,198);
	--orange3:rgb(250,215,178);
	--red3:rgb(247,178,183);
	--black3:rgb(203,193,178);
	--jetblack3:rgb(178,178,178);
	--beige3:rgb(232,229,223);
	--milk3:rgb(249,249,246);
	--yellow3:rgb(255,246,178);
	--line3:rgb(180,238,204);
	--worange3:rgb(253,232,178);
	
	--main2:rgb(204,235,217);
	--sub2:rgb(251,228,204);
	--black2:rgb(220,214,204);
	--green2:rgb(204,235,217);
	--orange2:rgb(251,228,204);
	--red2:rgb(249,204,207);
	--black2:rgb(220,214,204);
	--jetblack2:rgb(204,204,204);
	--beige2:rgb(239,238,234);
	--milk2:rgb(251,251,249);
	--yellow2:rgb(255,249,204);
	--line2:rgb(205,243,221);
	--worange2:rgb(254,240,204);
	
	--main1:rgb(229,245,236);
	--sub1:rgb(253,241,229);
	--black1:rgb(237,234,229);
	--green1:rgb(229,245,236);
	--orange1:rgb(253,241,229);
	--red1:rgb(252,229,231);
	--black1:rgb(237,234,229);
	--jetblack1:rgb(229,229,229);
	--beige1:rgb(247,246,244);
	--milk1:rgb(253,253,252);
	--yellow1:rgb(255,252,229);
	--line1:rgb(230,249,238);
	--worange1:rgb(254,247,229);
	
}

/* ボディ */
body{
	font-family:var(--mincho);
	font-weight:400;
	font-size:var(--s);
	letter-spacing:.1em;
}
p{ font-family:var(--gothic); }

/* 文字色 */
.main{ color:var(--main); }
.sub{ color:var(--sub); }
.black{ color:var(--black); }
.green{ color:var(--green); }
.orange{ color:var(--orange); }
.red{ color:var(--red); }
.black{ color:var(--black); }
.jetblack{ color:var(--jetblack); }
.beige{ color:var(--beige); }
.milk{ color:var(--milk); }
.yellow{ color:var(--yellow); }
.line{ color:var(--line); }
.worange{ color:var(--worange); }

.gothic{ font-family:var(--gothic); }
.mincho{ font-family:var(--mincho); }

/**
 * プロトタイプ
----------------------------------------------------------------*/
/* reCATPCHA */
.grecaptcha-badge{ visibility:hidden; }

/* 文字装飾 */
.bold{ font-weight:bold; }
.nobold{ font-weight:normal; }
strong{ font-size:120%; }
b{ color:var(--main); }
@media screen and (max-width: 768px){
	.spl{ text-align:left; }
}
.figcaption{
	text-align:center;
	padding-top:10px;
}
.left{ text-align:left; }

/* 改行 */
br.half{
	display:block;
	content:'';
	margin-top:.7em;
}

/* 狭い文字高 */
.narrow{ line-height:1.5; }

/* 日付 */
.date{ color:var(--main); }

/* カード */
.card{ position:relative; }

/* Maps */
.gm > iframe{
	aspect-ratio:16/9;
	width:100%;
	height:auto;
}

/* 背景 */
.bg.-green{ background:var(--main); }
.bg.-milk{ background:var(--milk); }
.bg.-red{ background:var(--red); }
.bg.-photo{ background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/article/index/bg_photo.jpg) no-repeat center top / 100% auto; }
.bg.-visions{ background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/article/about/visions/bg_visions.png) no-repeat right top / contain; }

/* 左右余白 */
.nowrap_layout{ margin-right:var(--gap); }
@media screen and (max-width: 768px){
	.nowrap_layout{ margin:0 var(--gap); }
}

/* キャッチコピー */
.copy{
	font-weight:bold;
	font-size:var(--xxl);
	line-height:1.5;
	margin-top:0;
	margin-bottom:20px;
}
.copy > small{
	color:var(--main);
	font-size:var(--l);
	line-height:1.5;
	display:block;
}
@media screen and (max-width: 768px){
	.copy{ font-size:var(--xl); }
}

/* ボタン */
.buttons.-left{
	justify-content:flex-start;
	margin-left:0;
	margin-right:0;
}
.buttons.-line > a{ border:1px solid var(--main); }
.buttons.-orange > a{ background:var(--orange); }
.buttons.-orange > a:hover{ background:var(--orange7); }
.buttons.-big > a{
	font-size:var(--xl);
	font-weight:bold;
	flex-basis:400px;
}
@media screen and (max-width: 768px){
	.buttons.-big > a{ font-size:var(--m); }
}

/* 見出し */
.h2{
	margin:0;
	min-height:280px;
	padding:170px var(--gap) 40px;
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/theme/heading.png) no-repeat center top / 120px 320px;
	justify-content:flex-start;
}
.h2 > h2{ font-size:var(--xxl); }
#cont > section:first-of-type > .h2{ margin-top:-30px; }
.h2 > p{
	color:var(--main);
	letter-spacing:0;
	font-size:var(--m);
}
.h2left{
	padding-left:25px;
	position:relative;
	margin:30px var(--gap);
}
.h2left.-nowrap{ margin:30px 0; }
.h2left::before{
	position:absolute;
	content:'';
	display:block;
	top:0;
	bottom:0;
	left:0;
	background:var(--main);
	width:12px;
	border-radius:6px;
}
.h2left > h2,
.h2left > h3,
.h2left > h4,
.h2left > h5,
.h2left > h6{
	font-size:var(--xxl);
	font-weight:bold;
	line-height:1.3;
}
.h2left > p{
	font-family:var(--gothic);
	font-size:var(--l);
	color:var(--main);
	line-height:1.3;
}
.h2square{
	width:fit-content;
	background:var(--black);
	color:white;
	font-weight:bold;
	margin:20px auto;
	font-size:var(--xl);
	padding:0 20px;
}
.h2ex{
	font-size:var(--xxxl);
	line-height:1.5;
	font-weight:bold;
	text-align:center;
	margin:20px 0;
}
.h3.-notop{ margin-top:0; }
.h3green{
	font-size:var(--l);
	color:var(--green);
	font-weight:bold;
	margin-bottom:5px;
	font-family:var(--gothic);
	line-height:1.5;
}
.h3green.-mincho{ font-family:var(--mincho); }
.h3green > small{
	display:block;
	font-size:var(--s);
	color:var(--black);
}
.h4{
	font-size:var(--xl);
	color:var(--green);
	font-weight:bold;
	margin-bottom:5px;
	font-family:var(--gothic);
	line-height:1.5;
	margin-bottom:5px;
}
.h4.-notop{ margin-top:0; }
.h5{
	font-size:var(--m);
	color:var(--green);
	font-weight:bold;
	margin-bottom:5px;
	font-family:var(--gothic);
	line-height:1.5;
	margin-bottom:5px;
}
.h5.-notop{ margin-top:0; }
@media screen and (max-width: 768px){
	.h4{ font-size:var(--l); }
}

/* 概要文 */ 
.summary{
	margin:0 var(--gap);
	text-align:center;
}
.summary.-nowrap{ margin:0; }
@media screen and (max-width: 768px){
	.summary{ text-align:left; }
	.summary br{ display:none; }
}

/* 番号付きリスト */
.numberlist{
	counter-reset:numberlist;
	margin:10px 0;
}
.numberlist > li{
	position:relative;
	counter-increment:numberlist;
	padding-left:30px;
	font-family:var(--gothic);
	margin-bottom:10px 0;
}
.numberlist > li::before{
	position:absolute;
	content:counter(numberlist) '.';
	display:block;
	left:0;
	width:20px;
	font-weight:bold;
}

/* インライン画面幅分岐 */
.inline-pc{ display:inline; }
.inline-pctab{ display:inline; }
.inline-tab{ display:none; }
.inline-sptab{ display:none; }
.inline-sp{ display:none; }
@media screen and (max-width: 960px){
	.inline-pc{ display:none; }
	.inline-tab{ display:inline; }
	.inline-sptab{ display:inline; }
}
@media screen and (max-width: 768px){
	.inline-pctab{ display:none; }
	.inline-tab{ display:none; }
	.inline-sp{ display:inline; }
}

/* アイコン型フレックス */
.iconflex{
	display:flex;
	gap:20px;
}
.iconflex > figure{
	width:110px;
	height:110px;
}
.iconflex > div{ flex:1; }

/* 約束リスト */
.promises{
	counter-reset:promises;
	--base:1px;
}
.promises > li{
	position:relative;
	padding-left:calc(var(--base) * 190);
	padding-top:calc(var(--base) * 40);
}
.promises > li::before{
	counter-increment:promises;
	content:counter(promises);
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/article/about/features/promises.png) no-repeat center center / contain;
	height:calc(var(--base) * 86);
	aspect-ratio:170/86;
	left:0;
	padding:5px calc(var(--base) * 40) 5px calc(var(--base) * 58);
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	position:absolute;
	text-align:center;
	font-weight:bold;
	font-size:calc(var(--base) * 40);
	font-family:var(--gothic);
}
.promises > li > .h4{ margin-top:0; }
@media screen and (max-width: 1200px){
	.promises{ --base:0.08vw; }
}
@media screen and (max-width: 512px){
	.promises{ --base:0.4px; }
}

/* 白枠セクション */
.whitesecs > section{ width:calc((100% - 20px) / 2); }
.whitesecs > section > a{
	height:100%;
	background:white;
	border-radius:10px;
	padding:20px;
	box-shadow:0 0 0 rgba(0,0,0,0);
}
.whitesecs > section > a:hover{
	background:rgba(255,255,255,.8);
	box-shadow:0 0 10px 10px rgba(179,171,150,0.2);
}
.whitesecs > section > a.flex > div{ padding-left:20px; }
.whitesecs > section > a.flex > div{
	letter-spacing:0;
	font-size:var(--xs);
}
@media screen and (max-width: 768px){
	.whitesecs{ flex-direction:column; }
	.whitesecs > section{ width:auto; }
}

/* 丸リスト */
.circlelist > li{
	font-weight:bold;
}
.circlelist > li::before{
	content:'●';
	color:var(--main);
}
.circlelist.-worange > li::before{ color:var(--worange); }

/* テーブル */
.table.-align tbody > tr > th{
	max-width:300px;
	min-width:300px;
	width:300px;
}
.table.-header > table th{
	background:var(--main1);
	color:var(--black);
}
.table > table th{ white-space:normal; }
@media screen and (max-width: 1200px){
	.table.-align tbody > tr > th{
		max-width:30vw;
		min-width:30vw;
		width:30vw;
	}
}

/* 初めての方へテーブル */
.wtable table{
	table-layout:fixed;
	margin:10px 0;
}
.wtable table,
.wtable th,
.wtable td{ border:3px solid var(--worange); }
.wtable th,
.wtable td{
	padding:10px;
	font-family:var(--gothic);
	font-weight:bold;
}
.wtable th{
	background:var(--worange);
	color:white;
	text-align:center;
}
.wtable.-vfield tbody th > span{
	white-space:pre;
	writing-mode:vertical-rl;
	vertical-align:middle;
	display:inline-block;
}
.wtable.-center tr > *{
	vertical-align:middle;
	text-align:center;
}
.wtable thead th{
	font-size:var(--l);
	line-height:1.4;
}
.wtable thead th:not(:last-child){ border-right-color:white; }
.wtable.-vfield thead th:first-child,
.wtable.-hfield thead th:first-child,
.wtable tbody tr:not(:last-child) th{ border-bottom-color:white; }
.wtable tbody th{ line-height:1.4; }
.wtable.-vfield tr > *:first-child{ width:50px; }
@media screen and (max-width: 768px){
	.wtable{ overflow:auto; }
	.wtable > table{ min-width:768px; }
}

/* 初めての方へ流れ */
.wflow{
	margin:0 auto;
	max-width:768px;
	--gap:30px;
	position:relative;
}
.wflow ol{ height:100%; }
.wflow ol li{ position:relative; }
.wflow span{
	display:block;
	border:1px solid var(--main);
	padding:10px;
	height:calc(100%);
	text-align:center;
	color:var(--main);
	font-weight:bold;
	font-size:var(--l);
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	line-height:1.4;
}
.wflow span > .table{
	width:100%;
	margin-top:5px;
}
.wflow span > .table td{
	font-weight:normal;
	text-align:left;
	color:var(--black);
}
.wflow span + span{ margin-top:-1px; }
.wflow .split{
	display:flex;
	gap:20px;
}
.wflow .split > li{ width:50%; }
.wflow .blank{ padding-top:var(--gap); }
.wflow .before,
.wflow .after{ position:relative; }
.wflow .before{ margin-top:var(--gap); }
.wflow .before::before,
.wflow .after::after{
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/summaryarrow_down.png) no-repeat center center / contain;
	height:var(--gap);
	aspect-ratio:4/3;
	content:'';
	display:block;
	margin:0 auto;
	position:absolute;
	left:0;
	right:0;
}
.wflow .before::before{ top:calc(var(--gap) * -1); }
.wflow .after::after{ bottom:calc(var(--gap) * -1); }
.wflow p{
	position:absolute;
	top:10px;
	bottom:10px;
	left:20px;
	width:40px;
	background:rgba(0,158,65,0.9);
	color:white;
	font-weight:bold;
	writing-mode:vertical-rl;
	text-align:center;
	padding:20px 10px;
	font-size:var(--m);
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	border-radius:20px;
	z-index:1;
}
.wflow p + ol > li > p{ margin-left:60px; }
@media screen and (max-width: 768px){
	.wflow p{
		top:5px;
		bottom:5px;
		left:10px;
		padding:10px 5px;
		width:30px;
	}
	.wflow p + ol > li > p{ margin-left:40px; }
	.wflow p + ol > li > span{
		padding-left:90px;
		text-align:left;
		align-items:start;
	}
}
@media screen and (max-width: 768px){
	.wflow{ --gap:20px; }
	.wflow span{
		font-size:var(--2);
		padding:7px;
	}
	.wflow li > ol{ gap:7px; }
}
@media screen and (max-width: 512px){
	.wflow span{ padding:5px; }
	.wflow li > ol{ gap:5px; }
}

/* 初めての方へ流れ(横) */
.vflow{
	display:flex;
	gap:30px;
	margin-bottom:10px;
	letter-spacing:0;
}
.vflow > li{
	flex:1;
	border:1px solid var(--main);
	text-align:center;
	padding:10px;
	font-size:var(--m);
	font-weight:bold;
	font-family:var(--gothic);
	color:var(--main);
	line-height:1.4;
	position:relative;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
}
.vflow > li:not(:last-child)::after{
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/summaryarrow_right.png) no-repeat center center / contain;
	width:30px;
	aspect-ratio:3/4;
	content:'';
	display:block;
	position:absolute;
	right:-30px;
	top:0;
	bottom:0;
}
.vflow > li.result{
	background:var(--main);
	color:white;
}
.vflow > li > small{
	font-size:var(--xs);
	display:block;
	font-weight:normal;
}

/* 脚注 */
.note{
	padding:20px;
	margin:20px 0;
	background:var(--milk);
}
.note > h2,
.note > h3,
.note > h4,
.note > h5,
.note > h6{
	font-size:var(--l);
	color:var(--main);
	font-weight:bold;
	font-family:var(--gothic);
}

/* 前後ナビ */
.anav{ padding:40px 20px; }
.anav > a{
	max-width:512px;
	display:inline-block;
	background:var(--worange);
	border:3px solid var(--worange);
	display:flex;
	margin:0 auto;
	border-radius:512px;
	overflow:hidden;
}
.anav > a:hover{
	border-color:var(--main);
	background:var(--main);
}
.anav > a > *{
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	font-weight:bold;
	padding:10px 20px;
	line-height:1.4;
	width:50%;
	letter-spacing:0;
}
.anav > a > p{
	color:white;
	font-size:var(--s);
}
.anav > a > h3{
	color:var(--worange);
	font-family:var(--gothic);
	background:white;
	font-size:var(--l);
	color:var(--black);
	border-radius:512px;
}
@media screen and (max-width: 768px){
	.anav > a{ max-width:340px; }
	.anav > a > *{ padding:8px 10px; }
	.anav > a > p{
		font-size:var(--xs);
		text-align:center;
	}
	.anav > a > h3{ font-size:var(--m); }
}

/* 注意 */
.caution{
	padding-left:80px;
	margin:20px 0;
	position:relative;
}
.caution::before{
	position:absolute;
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/caution.png) no-repeat center center / contain;
	content:'';
	display:block;
	width:60px;
	height:60px;
	left:0;
}

/* レイアウト */
.layout{
	display:flex;
	gap:20px;
	align-items:flex-start;
	margin:20px 0;
}
.layout > .h5{ margin:0; }
.layout > :first-child{ width:280px; }
.layout > :last-child{ flex:1; }
@media screen and (max-width: 1024px){
	.layout{ display:block; }
	.layout > :first-child{ width:auto; }
}

/* 三角リスト */
.trilist li > a{
	--height:2.1em;
	position:relative;
	border-left:calc(var(--height) * .4) solid rgba(0,0,0,0);
}
.trilist.-min > li > a{ --height:1.5em; }
.trilist li > a::before{
	content:'';
	display:inline-block;
	height:var(--height);
	width:calc(var(--height) * 0.234375);
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/arrow_rblack.png) no-repeat center center / contain;
	position:absolute;
	top:0;
	left:calc(var(--height) * -.4);
}
.trilist.-white li > a::before{ background-image:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/arrow_rwhite.png); }
.trilist.-green li > a::before{ background-image:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/arrow_rgreen.png); }

/* 再生ボタン */
.play{
	position:relative;
	--unit:60px;
}
.play.-big{ --unit:80px; }
.play::before{
	position:absolute;
	inset:0;
	margin:auto;
	content:'';
	display:block;
	width:var(--unit);
	height:var(--unit);
	background:var(--main) url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/play.png) no-repeat center center / contain;
	border-radius:50%;
}
.play:hover::before{ background-color:var(--sub); }
@media screen and (max-width: 1584px){
	.play.-big{ --unit:6.66vw; }
}
@media screen and (max-width: 828px){
	.play.-big{ --unit:10vw; }
}

/* 検索アイコン */
.searchicons{
	position:relative;
	display:flex;
}
.searchicons > div{
	display:none;
	position:absolute;
	background:rgba(0,0,0,.8);
	border-radius:5px;
	padding:5px;
	left:5px;
	right:5px;
	z-index:1;
}
.searchicons.active > div{ display:flex; }
.searchicons > div > .searchicon{
	width:25%;
	display:block;
	aspect-ratio:1/1;
	border-radius:3px;
	/*
	*/
}
.searchicons > div > .searchicon.active{ display:block; }
.searchicons > div > .searchicon.-area{ background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/search_area.png) no-repeat center center / contain; }
.searchicons > div > .searchicon.-station{ background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/search_station.png) no-repeat center center / contain; }
.searchicons > div > .searchicon.-map{ background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/search_map.png) no-repeat center center / contain; }
.searchicons > div > .searchicon.-school{ background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/search_school.png) no-repeat center center / contain; }
.searchicons > div > .searchicon:hover{ background-color:var(--black); }

/* サブタイトル */
.subtit{ color:var(--main); }
.subtit::before{ content:'▶'; }

/* グリッド */
.grid > section figure{ margin-bottom:10px; }
.grid > section h2,
.grid > section h3,
.grid > section h4,
.grid > section h5,
.grid > section h6{
	font-size:var(--m);
	font-weight:bold;
	font-family:var(--gothic);
	line-height:1.4;
	margin:15px 0 10px;
	text-align:justify;
}

/* ラベル */
.label{
	min-width:140px;
	padding:5px 10px;
	margin-bottom:5px;
	text-align:center;
	color:white;
	font-size:var(--m);
	font-family:var(--gothic);
	font-weight:bold;
	line-height:1.5;
	background:var(--main);
	display:inline-block;
}

/* 図表 */
.fig{ margin:20px 0; }

/* ページナビゲーション */
.pagenav > .card > ul{ gap:0; }
.pagenav > .card > ul > li > a{
	width:330px;
	display:block;
	padding:10px;
	height:100%;
}
.pagenav > .card > ul > li > a > figure > img{
	aspect-ratio:3/2;
	object-fit:cover;
}
.pagenav > .card > ul > li > a > h3{ margin-top:10px; }
.pagenav > .card > ul > li > a > p{ letter-spacing:0; }

/**
 * スライダー
----------------------------------------------------------------*/
/* スライダー */
.slick-track{ transition:transform 0s; }
.slick-dots{
	display:flex;
	justify-content:center;
	gap:10px;
	padding:10px;
}
.slick-dots > li > button{
	font-size:0;
	width:15px;
	height:15px;
	border-radius:100%;
	background:var(--black5);
}
.slick-dots > li.slick-active > button{ background:var(--sub); }
.slick-dots > li > button:hover{ background:var(--sub5); }
@media screen and (max-width: 768px){
	.slick-dots{
		gap:5px;
		padding:5px;
	}
	.slick-dots > li > button{
		width:10px;
		height:10px;
	}
}

/**
 * テーマ：ヘッダー
----------------------------------------------------------------*/
#hbar{
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/theme/hbar.png) repeat-x center top;
	position:relative;
	--unit:10px;
}
#logo{
	width:calc(var(--unit) * 24);
	position:absolute;
	left:0;
}
#logo::before{
	content:'';
	top:0;
	left:0;
	right:0;
	display:block;
	height:47px;
	background:white;
	position:absolute;
}
#logo > a{
	display:block;
	position:relative;
	z-index:1;
}
#hcontact{
	background:rgba(255,255,255,.9);
	border-radius:5px;
	box-shadow:0 0 6px rgba(0,0,0,.1);
}
#hcontact:hover{ background:rgba(255,255,255,.7); }
@media screen and (min-width: 1301px){
	#mlogo{ display:none; }
	#hcontact{
		position:absolute;
		top:var(--unit);
		right:var(--unit);
		width:calc(var(--unit) * 30);
	}
	#spmenu > div{
		margin-left:calc(var(--unit) * 24 + 20px);
		margin-right:calc(var(--unit) * 31 + 20px);
	}
	#pnav > ul{
		text-align:right;
		padding-top:calc(var(--unit) * 1.1);
		padding-bottom:calc(var(--unit) * .6);
	}
	#pnav > ul > li,
	#pnav > ul > li > a{ display:inline-block; }
	#pnav > ul > li > a{
		color:white;
		height:calc(var(--unit) * 3);
		line-height:calc(var(--unit) * 3);
		font-weight:bold;
	}
	#pnav > ul > li > a:hover{ color:rgba(255,255,255,.7); }
	#pnav > ul > li:not(:last-child) > a{ padding-right:.5em; }
	#gnav{
		display:flex;
		align-items:flex-start;
	}
	#gnav > a{
		display:inline-block;
		width:calc(var(--unit) * 20);
		background:var(--main1);
		border-radius:5px;
		margin-right:.5em;
		position:relative;
		margin-top:calc(var(--unit) * 1.6);
	}
	#gnav > a::after{
		content:'';
		display:block;
		background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/theme/hsearch_arrow.png) no-repeat center center / contain;
		width:calc(var(--unit) * 2);
		height:calc(var(--unit) * 1.5);
		position:absolute;
		left:0;
		right:0;
		margin:0 auto;
	}
	#gnav > a:hover{ background:var(--main2); }
	#gnav > ul{
		padding-top:calc(var(--unit) * 2.3);
		padding-bottom:var(--unit);
		font-family:var(--gothic);
		font-weight:bold;
	}
	#gnav > ul > li{ position:relative; }
	#gnav > ul > li > a{
		padding:0 var(--unit);
		height:calc(var(--unit) * 4);
		line-height:calc(var(--unit) * 4);
		font-size:18px;
		border-radius:6px;
		letter-spacing:0;
	}
	#gnav > ul > li.haschildren > a{ border-radius:6px 6px 0 0; }
	#gnav > ul > li > ul{ display:none; }
	#gnav > ul > li > a:hover + ul,
	#gnav > ul > li > ul:hover{ display:block; }
	#gnav > ul > li > ul{
		position:absolute;
		left:0;
		width:200px;
		background:rgba(255,255,255,.9);
		border:2px solid var(--main);
		padding:15px;
		z-index:1000;
	}
	#gnav > ul > li > ul > li > a{
		display:block;
		padding:4px 0;
	}
	#gnav > ul > li > ul > li:not(:last-child) > a{ border-bottom:1px dashed var(--beige); }
	#gnav > ul > li > ul > li > a:hover{ color:var(--sub); }
	#hsearch{
		background:var(--main);
		color:white;
		height:calc(var(--unit) * 5);
		padding:0 calc(var(--unit) * 4);
	}
	#hsearch > a{ display:none; }
	#hsearch > ul ul,
	#hsearch > ul li,
	#hsearch > ul a{ display:inline; }
	#hsearch > ul{
		padding:calc(var(--unit) * .5);
		line-height:calc(var(--unit) * 4);
		font-family:var(--gothic);
		font-weight:bold;
	}
	#hsearch > ul > li:not(:last-child){ padding-right:5px; }
	#hsearch > ul > li > ul{
		display:inline-block;
		background:rgba(0,0,0,.1);
		border-radius:calc(var(--unit) * 2);
		padding:0 calc(var(--unit) * 2);
	}
	#hsearch > ul a:hover{ color:var(--yellow); }
	#hsearch > ul > li > ul > li:not(:last-child) > a{ padding-right:.5em; }
}
@keyframes slidein{
	0%{
		right:-400px;
	}
	100%{
		right:0;
	}
}
@media screen and (max-width: 1490px){
	#gnav > a{ display:none; }
}
@media screen and (max-width: 1300px){
	body.clicked{ overflow-y:hidden; }
	#close{ position:fixed; }
	#hbar{
		height:calc(var(--unit) * 12 + 3px);
		border-bottom:3px solid var(--main);
	}
	#logo{
		left:0;
		right:0;
		margin:0 auto;
	}
	#open,#close{
		width:calc(var(--unit) * 10);
		top:var(--unit);
		right:calc(var(--unit) * 1);
		background:rgba(255,255,255,.9);
		border-radius:var(--unit);
		box-shadow:0 0 6px rgba(0,0,0,.1);
	}
	#open:hover,
	#close:hover{ background:rgba(204,235,217,0.9); }
	#spmenu{
		background:rgba(255,255,255,.9);
		max-width:400px;
		left:auto;
		padding-top:calc(var(--unit) * 12 + 3px);
		box-shadow:0 0 0 rgba(0,0,0,0);
		animation:.3s ease-in-out 0s slidein;
	}
	body.clicked #spmenu{ box-shadow:0 0 10px rgba(0,0,0,.1); }
	#mlogo{ display:none; }
	#spmenu > div{
		margin:20px;
		display:flex;
		flex-direction:column-reverse;
		gap:5px;
	}
	#pnav > ul > li > a,
	#gnav > ul > li > a{
		background:var(--main);
		color:white;
		font-family:var(--gothic);
		font-weight:bold;
		font-size:var(--m);
		padding:4px 10px;
		border-radius:5px;
		display:block;
		width:100%;
		text-align:center;
	}
	#pnav > ul > li > a:hover,
	#gnav > ul > li > a:hover{ background:var(--sub); }
	#gnav > a{ display:none; }
	#gnav > ul > li:not(:last-child) > a{ margin-bottom:5px; }
	#gnav > ul > li > ul{
		display:flex;
		flex-wrap:wrap;
		margin-bottom:5px;
		align-items:stretch;
	}
	#gnav > ul > li > ul > li{
		width:50%;
		border-bottom:1px solid var(--beige);
	}
	#gnav > ul > li > ul > li > a{
		display:block;
		font-family:var(--gothic);
		font-weight:bold;
		letter-spacing:0;
		padding:3px 0;
		height:100%;
	}
	#gnav > ul > li > ul > li:nth-child(odd) > a{ margin-right:2.5px; }
	#gnav > ul > li > ul > li:nth-child(even) > a{ margin-left:2.5px; }
	#gnav > ul > li > ul > li > a:hover{ background:var(--orange1); }
	#gnav > ul > li > ul > li:last-child,
	#gnav > ul > li > ul > li:nth-child(odd):nth-last-child(2){ border:none; }
	#gnav > ul > li > a + ul{ margin-top:-5px; }
	#pnav > ul{
		display:flex;
		flex-wrap:wrap;
		gap:5px;
		align-items:stretch;
	}
	#pnav > ul > li{ width:calc((100% - 5px) / 2); }
	#pnav > ul > li > a{
		font-size:var(--s);
		height:100%;
		display:flex;
		flex-direction:column;
		justify-content:center;
		align-items:center;
	}
	#hsearch{
		background:var(--milk);
		border-radius:10px;
		margin:20px;
	}
	#hsearch > a{
		display:block;
		max-width:200px;
		margin:0 auto;
		padding-top:10px;
	}
	#hsearch > a:hover{ opacity:.7; }
	#hsearch > ul{ padding:10px; }
	#hsearch > ul > li{
		background:white;
		border-radius:8px;
		padding:0 10px 10px;
	}
	#hsearch > ul > li:not(:last-child){ margin-bottom:10px; }
	#hsearch > ul > li > span{
		display:block;
		padding:4px 0;
		text-align:center;
		font-family:var(--gothic);
		font-weight:bold;
	}
	#hsearch > ul > li > ul{
		display:flex;
		flex-wrap:wrap;
		gap:5px;
		align-items:stretch;
	}
	#hsearch > ul > li > ul > li{ width:calc((100% - 5px) / 2); }
	#hsearch > ul > li > ul > li:nth-child(3){ width:100%; }
	#hsearch > ul > li > ul > li:nth-child(3) > ul{
		display:flex;
		flex-wrap:wrap;
		gap:5px;
		align-items:stretch;
	}
	#hsearch > ul > li > ul > li:nth-child(3) > ul > li{ width:calc((100% - 5px) / 2); }
	#hsearch > ul > li > ul > li a{
		background:var(--sub);
		color:white;
		font-weight:bold;
		font-family:var(--gothic);
		display:block;
		height:100%;
		display:flex;
		flex-direction:column;
		justify-content:center;
		align-items:center;
		padding:4px 10px;
		border-radius:5px;
	}
	#hsearch > ul > li > ul > li a:hover{ background:var(--main); }
	#hcontact{
		margin:20px auto;
		display:block;
		border-radius:10px;
		max-width:345px;
	}
	#hcontact:hover{
		background:rgb(238,236,227);
		box-shadow:0 0 0 rgba(0,0,0,0);
	}
}
@media screen and (max-width: 1200px){
	#hbar{
		--unit:0.833vw;
		background-size:contain;
	}
	#spmenu::before{ background-size:contain; }
}
@media screen and (max-width: 600px){
	#hbar{ --unit:5px; }
	#spmenu{
		padding-top:calc(var(--unit) * 20);
		max-width:none;
		width:100vw;
	}
	#spmenu::before{
		background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/theme/hbar.png) repeat-x center top / contain;
		content:'';
		height:calc(var(--unit) * 12 + 3px);
		display:block;
		position:absolute;
		top:0;
		left:0;
		right:0;
		border-bottom:3px solid var(--main);
	}
	#mlogo{
		display:block;
		width:calc(var(--unit) * 20);
		position:absolute;
		top:0;
		left:0;
		right:0;
		margin:0 auto;
	}
	#mlogo::before{
		content:'';
		top:0;
		left:0;
		right:0;
		display:block;
		height:47px;
		background:white;
		position:absolute;
	}
	#mlogo > a{
		display:block;
		position:relative;
		z-index:1;
	}
}
@media screen and (max-width: 400px){
	#hcontact{ margin:20px; }
}

/**
 * テーマ：フッター
----------------------------------------------------------------*/
body > footer > #vnav{ margin-bottom:40px; }
#fcard > div{
	display:flex;
	justify-content:center;
	align-items:center;
	padding:var(--gap);
	gap:var(--gap);
}
#flogo{
	max-width:200px;
	margin:0 auto;
}
#fnav li > *{
	font-family:var(--gothic);
	color:white;
	letter-spacing:0;
}
#fnav li > a:hover{ color:var(--yellow); }
#fnav{
	width:100%;
	display:flex;
	gap:20px;
	flex-wrap:wrap;
}
#fnav > ul:not(:last-child){
	width:calc((100% + 20px - 20px * 3) / 4);
	border-right:1px solid white;
}
#fnav > ul:last-child{ width:calc((100% + 20px - 20px * 3) / 4 - 20px); }
#fnav > ul:not(:last-child) > li{ margin-right:20px; }
#fnav > ul > li > a,
#fnav > ul > li > span{ font-weight:bold; }
#fnav > ul.searchbox > li li{ display:inline-block; }
#fnav > ul.searchbox > li li:not(:last-child){ margin-right:10px; }
@media screen and (max-width: 1024px){
	#fcard > div{
		display:block;
		padding-top:0;
	}
}
@media screen and (max-width: 768px){
	#fnav{ gap:0 20px; }
	#fnav > ul:not(:last-child){ border-right:none; }
	#fnav > ul:nth-child(n){ width:calc((100% - 20px) / 2); }
	#fnav > ul:nth-child(n) > li{ margin-right:0; }
}
@media screen and (max-width: 360px){
	#fnav > ul:nth-child(n){
		width:100%;
		text-align:center;
	}
	#fnav > ul:not(.searchbox) > li > ul{ display:none; }
}
#cr{
	background:var(--red);
	color:white;
	font-weight:bold;
	text-align:center;
	padding:4px 10px;
	font-family:var(--gothic);
}

/**
 * テーマ：コンテンツ
----------------------------------------------------------------*/
/* ページ名 */
#pagename{
	min-height:300px;
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/theme/pagename.jpg) no-repeat center center / cover;
	font-size:var(--xxl);
	line-height:1.5;
	font-weight:bold;
	text-align:center;
	padding:30px 20px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	letter-spacing:.1em;
}
#pagename > p{
	text-align:center;
	font-size:var(--l);
}
@media screen and (max-width: 1920px){
	#pagename{ min-height:15.625vw; }
}
@media screen and (max-width: 768px){
	#pagename{ font-size:var(--l); }
}

/* ビジュアルナビゲーション */
#vnav{
	--px:1px;
	background:white;
	padding-top:20px;
}
#vnav li.vnavitem{ margin:calc(var(--px) * 20) calc(var(--px) * 10) 0; }
#vnav li.vnavitem:not(.searchbox) > div > *{ width:calc(var(--px) * 500); }
#vnav li.vnavitem:not(.searchbox) > div > *.half{ width:calc(var(--px) * 500 / 2); }
#vnav li.vnavitem:not(.searchbox) a{ display:block; }
#vnav li.vnavitem:not(.searchbox) > div > ul{
	display:flex;
	flex-direction:column;
	gap:calc(var(--px) * 20);
}
#vnav li.vnavitem:not(.searchbox) > div > ul > li > ul{
	display:flex;
	gap:calc(var(--px) * 20);
}
#vnav li.vnavitem.searchbox > div{
	width:calc(var(--px) * 500);
	height:calc(var(--px) * 500);
	background:var(--milk);
	padding:calc(var(--px) * 20);
	position:relative;
}
#vnav li.vnavitem.searchbox > div > ul{
	position:absolute;
	bottom:0;
	left:calc(var(--px) * 20);
	right:calc(var(--px) * 20);
	bottom:calc(var(--px) * 20);
}
#vnav li.vnavitem.searchbox > div > ul > li{
	margin-top:calc(var(--px) * 20);
	background:white;
	font-family:var(--gothic);
	font-weight:bold;
	font-size:calc(var(--px) * 22);
	text-align:center;
}
#vnav li.vnavitem.searchbox > div > ul > li > span{
	display:block;
	padding:calc(var(--px) * 7) 0;
}
#vnav li.vnavitem.searchbox > div > ul > li > ul{
	padding:0 calc(var(--px) * 10) calc(var(--px) * 10);
	display:flex;
	flex-wrap:wrap;
	gap:calc(var(--px) * 10);
}
#vnav li.vnavitem.searchbox > div > ul > li > ul > li{ width:calc((100% - var(--px) * 10) / 2); }
#vnav li.vnavitem.searchbox > div > ul > li > ul > li:nth-child(3){ width:100%; }
#vnav li.vnavitem.searchbox > div > ul > li > ul > li:nth-child(3) > ul{
	display:flex;
	flex-wrap:wrap;
	gap:calc(var(--px) * 10);
}
#vnav li.vnavitem.searchbox > div > ul > li > ul > li:nth-child(3) > ul > li{ width:calc((100% - var(--px) * 10) / 2); }
#vnav li.vnavitem.searchbox > div > ul > li > ul > li a:not(.searchicon){
	display:block;
	background:var(--sub);
	color:white;
	padding:calc(var(--px) * 7);
	border-radius:calc(var(--px) * 10);
}
#vnav li.vnavitem.searchbox > div > ul > li > ul > li a:not(.searchicon):hover{ background:var(--main); }
@media screen and (max-width: 540px){
	#vnav{ --px:calc(100vw / 560); }
	#vnav li.vnavitem{ margin:calc(var(--px) * 25); }
	#vnav li.vnavitem:not(.searchbox) a:not(.searchicon):hover{ opacity:.7; }
}
#vnav .disabled{
	filter:grayscale(100%);
	transform:scale(.95);
}

/**
 * スポット：TOPページ
----------------------------------------------------------------*/
/* スプラッシュ */
@keyframes splash{
	0%{ opacity:1; bottom:0; }
	70%{ opacity:1; }
	99%{ opacity:0; bottom:0; }
	100%{ opacity:0; bottom:100%; display:none; }
}
@keyframes splash_img{
	0%{ opacity:0; transform:translateY(60px); }
	30%{ transform:translateY(0); }
	60%{ opacity:1; }
}
#spot_index_splash{
	position:fixed;
	z-index:20000;
	inset:0;
	background:white;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	animation:3s ease-in-out 0s splash forwards;
}
#spot_index_splash > img{
	max-width:300px;
	animation:2s ease-in-out 0s splash_img forwards;
}

/* メインスライド */
#spot_index_mvis{
	background:var(--milk4);
	position:relative;
	--unit:768px;
	max-height:590px;
}
#spot_index_mvis section{
	position:relative;
	transform:translateX(calc((100vw - var(--unit) - 15px * 2) / -2 + 20px));
	padding:30px 15px 0;
	width:calc(var(--unit) + 15px * 2);
}
#spot_index_mvis section > a{
	width:100%;
	display:block;
	border-radius:20px;
	overflow:hidden;
}
#spot_index_mvis section > a:hover{ opacity:.7; }
#spot_index_mvis section a.disabled{ transform:scale(.95); }
#spot_index_mvis > footer{
	position:absolute;
	top:0;
	bottom:0;
	right:0;
}
#spot_index_mvis > footer > img{
	max-width:none;
	height:100%;
}
@media screen and (max-width: 1584px){
	#spot_index_mvis section{ --unit:50vw; }
}
@media screen and (max-width: 828px){
	#spot_index_mvis section{
		padding:20px 20px 0;
		transform:translateX(0);
		width:100vw;
	}
	#spot_index_mvis section > a{ border-radius:3vw; }
	#spot_index_mvis > footer{ display:none; }
}

/* SNS */
#spot_index_sns{
	display:flex;
	gap:20px;
	justify-content:center;
	padding:20px;
}
#spot_index_sns > a{
	display:block;
	border-radius:10px;
	overflow:hidden;
	max-width:200px;
}
#spot_index_sns > a:hover{ opacity:.7; }
@media screen and (max-width: 1200px){
	#spot_index_sns{
		gap:1.66vw;
		padding:1.66vw;
	}
	#spot_index_sns > a{ border-radius:1.66vw; }
}

/* 不動産Search */
#spot_index_search > .base > .searchbox{
	display:flex;
	gap:10px;
	margin-top:20px;
	flex-wrap:wrap;
}
#spot_index_search > .base > .searchbox > li{
	background:white;
	border-radius:10px;
	padding:10px;
}
#spot_index_search > .base > .searchbox > li:nth-child(1){ width:calc((100% - 10px) / 4 * 3); }
#spot_index_search > .base > .searchbox > li:nth-child(2){ width:calc((100% - 10px) / 4 * 1); }
#spot_index_search > .base > .searchbox > li > span{
	font-size:var(--l);
	padding-bottom:10px;
}
#spot_index_search > .base > .searchbox > li > ul{
	display:flex;
	gap:10px;
	justify-content:stretch;
	flex-wrap:wrap;
}
#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li{ width:calc((100% - 10px * 2) / 3); }
#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li > a{ height:100%; }
#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li > ul{
	display:flex;
	flex-direction:column;
	gap:10px;
	flex-wrap:wrap;
}
#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li:not(:nth-child(3)) > a.searchicons > div{
	display:flex;
	position:static;
	background:none;
	padding:0;
	max-width:200px;
	margin:0 auto;
}
#spot_index_search > .base > .searchbox > li:nth-child(2) > ul{ flex-direction:column; }
#spot_index_search > .base > .searchbox > li:nth-child(2) > ul > li{ width:100%; }
#spot_index_search > .base > .searchbox span,
#spot_index_search > .base > .searchbox a:not(.searchicon){
	font-family:var(--gothic);
	font-weight:bold;
	text-align:center;
	border-radius:5px;
	display:block;
	padding:5px 10px;
}
#spot_index_search > .base > .searchbox a:not(.searchicon){
	font-size:var(--m);
	background:var(--sub);
	color:white;
}
#spot_index_search > .base > .searchbox a:not(.searchicon):hover{ background:var(--main); }
@media screen and (max-width: 960px){
	#spot_index_search > .base > .searchbox{
		flex-direction:column;
		gap:10px;
		padding-bottom:20px;
	}
	#spot_index_search > .base > .searchbox > li:nth-child(n){ width:100%; }
	#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li{ width:calc((100% - 10px * 2) / 3); }
	#spot_index_search > .base > .searchbox > li:nth-child(2) > ul{ flex-direction:row; }
	#spot_index_search > .base > .searchbox > li:nth-child(2) > ul > li{ width:calc((100% - 10px) / 2); }
}
@media screen and (max-width: 768px){
	#spot_index_search > .base > header{ gap:10px; }
	#spot_index_search > .base > header > header > h2{
		max-width:50vw;
		margin:0 auto;
	}
	#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li{ width:calc((100% - 10px) / 2); }
	#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li:nth-child(3){ width:100%; }
	#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li:nth-child(3) > ul{ flex-direction:row; }
	#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li:nth-child(3) > ul > li{ width:calc((100% - 10px) / 2); }
	#spot_index_search > .base > .searchbox > li:nth-child(n) a.searchicons > div{
		display:flex;
		position:static;
		background:none;
		padding:0;
		max-width:none !important;
		margin:0 auto;
	}
}
@media screen and (max-width: 600px){
	#spot_index_search > .base > header > header > h2{ max-width:300px; }
}
@media screen and (max-width: 400px){
	#spot_index_search > .base > .searchbox > li:nth-child(1) > ul{ flex-direction:column; }
	#spot_index_search > .base > .searchbox > li:nth-child(1) > ul > li{ width:100%; }
}

/**
 * スポット：私たちについて
----------------------------------------------------------------*/
/* 店舗一覧 */
#spot_about_locations > .flex > section > .alone{ max-width:calc((1200px - var(--gap) * 3) / 2); }
#spot_about_locations > .flex > section:nth-child(odd) > .alone{
	margin:0 0 0 auto;
	padding-right:0;
}
#spot_about_locations > .flex > section:nth-child(even) > .alone{ padding-left:0; }
#spot_about_locations > .flex > section > .alone > h3{ margin-bottom:0; }
#spot_about_locations > .flex > section > .alone > .tel{
	color:var(--sub);
	font-size:var(--xl);
	font-weight:bold;
	line-height:1.5;
}
#spot_about_locations > .flex > section > .alone > .pair{
	font-family:var(--gothic);
	border-collapse:separate;
}
#spot_about_locations > .flex > section > .alone > .pair th{
	background:var(--main);
	color:white;
	text-align:center;
	padding:2px 1em;
	vertical-align:middle;
}
#spot_about_locations > .flex > section > .alone > .pair td{ padding:2px .5em; }
#spot_about_locations > .flex > section > .alone > .buttons.-nowrap{ margin:10px 0 0; }
@media screen and (max-width: 768px){
	#spot_about_locations > .flex > section > .alone{ max-width:none; }
	#spot_about_locations > .flex > section:nth-child(odd) > .alone{
		margin:0;
		padding-right:var(--gap);
	}
	#spot_about_locations > .flex > section:nth-child(even) > .alone{ padding-left:var(--gap); }
}

/**
 * スポット：具体的な事例
----------------------------------------------------------------*/
/* コンテンツ */
#spot_cases_cont > header > p{
	font-size:var(--xl);
	font-family:var(--gothic);
	font-weight:bold;
	line-height:1.5;
	color:var(--main);
}
#spot_cases_cont > header > h2{
	font-size:var(--xxl);
	font-weight:bold;
	line-height:1.5;
}
#spot_cases_cont .wp-block-image{ margin:0; }
#spot_cases_cont h2.wp-block-heading{
	font-size:var(--xl);
	font-family:var(--gothic);
	font-weight:bold;
	color:var(--main);
	margin-bottom:10px;
	line-height:1.5;
	text-align:justify;
}

/* 事例ナビゲーション */
#casenav > .card > ul > li > a{
	width:330px;
	display:block;
	background:white;
	border-radius:20px;
	padding:15px;
	height:100%;
}
#casenav > .card > ul > li > a > figure{
	border-radius:10px;
	overflow:hidden;
	margin-bottom:10px;
}
#casenav > .card > ul > li > a > h3{
	font-size:var(--m);
	font-family:var(--gothic);
	font-weight:bold;
	line-height:1.5;
	text-align:justify;
}
#casenav > .buttons{
	margin:0;
	padding:20px var(--gap);
}

/**
 * スポット：サービス
----------------------------------------------------------------*/
/* メインビジュアル */
#spot_service_mvis{
	background:var(--milk) url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/theme/bg_grid.png) repeat center center;
	overflow:hidden;
	position:relative;
	padding-top:80px;
	padding-bottom:140px;
}
#spot_service_mvis > header{
	font-size:90px;
	font-weight:bold;
	text-align:center;
	line-height:.8;
	word-break:keep-all;
	white-space:nowrap;
	position:absolute;
	top:0;
	width:1200px;
	left:50%;
	margin-left:-600px;
	color:var(--beige5);
	pointer-events:none;
}
#spot_service_mvis > .base > .alone > h2{
	font-size:var(--xxxl);
	color:var(--orange);
	font-weight:bold;
	text-align:center;
	line-height:1.3;
	margin-bottom:30px;
	position:relative;
	z-index:1;
	padding-top:100px;
}
#spot_service_mvis > .base > .alone > h2 > small{
	font-size:var(--xxl);
	font-weight:bold;
	color:var(--black);
	display:block;
	line-height:1.3;
}
#spot_service_mvis > .base > .alone > h2::before{
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/article/services/bg_home.png) no-repeat center center / contain;
	width:140px;
	height:140px;
	display:block;
	position:absolute;
	content:'';
	top:0;
	left:0;
	right:0;
	margin:0 auto;
	z-index:-1;
}
@media screen and (max-width: 1200px){
	#spot_service_mvis > header{
		font-size:7.5vw;
		width:100%;
		left:0;
		right:0;
		margin:0 auto;
	}
}

/* こんなお悩みありませんか */
#spot_service_troubles{
	margin-top:-150px;
	z-index:2;
	position:relative;
}
#spot_service_troubles > .base > div{
	border:8px solid var(--main);
	border-radius:var(--gap);
	overflow:hidden;
	margin-bottom:40px;
}
#spot_service_troubles > .base > div > h2{
	background:var(--main);
	color:white;
	font-weight:bold;
	text-align:center;
	font-size:var(--xxl);
	padding:0 10px 4px;
	line-height:1.5;
}
#spot_service_troubles > .base > div > ul{
	background:white url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/theme/bg_grid.png) repeat center center;
	padding:var(--gap) var(--gap) 220px;
	position:relative;
}
#spot_service_troubles > .base > div > ul::after{
	width:460px;
	height:200px;
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/article/services/troubles.png) no-repeat center center / contain;
	content:'';
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	margin:0 auto;
}
#spot_service_troubles > .base > div > ul > li{
	--height:46px;
	font-size:var(--xl);
	font-family:var(--gothic);
	font-weight:bold;
	color:var(--main);
	line-height:var(--height);
	padding-left:calc(var(--height) + 10px);
	position:relative;
	width:fit-content;
	line-height:1.5;
}
#spot_service_troubles > .base > div > ul > li:not(:last-child){ margin-bottom:10px; }
#spot_service_troubles > .base > div > ul > li::before{
	width:var(--height);
	height:var(--height);
	content:'';
	display:block;
	position:absolute;
	top:0;
	left:0;
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/interfaces/icons/checkbox.png) no-repeat center center / contain;
}
#spot_service_troubles > footer{
	background:var(--main);
	color:var(--yellow);
	font-weight:bold;
	font-size:var(--xxxl);
	text-align:center;
	position:relative;
	padding:80px 20px 20px;
	line-height:1.5;
}
#spot_service_troubles > footer::before{
	content:'';
	display:block;
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:0 auto;
	display:block;
	width:0;
	height:0;
	border-top:45px solid white;
	border-right:60px solid transparent;
	border-left:60px solid transparent;
	border-bottom:0 solid transparent;
}
#spot_service_troubles > footer > small{
	color:white;
	font-size:var(--xl);
	display:block;
	line-height:1.5;
}
@media screen and (max-width: 768px){
	#spot_service_troubles > .base > div{
		border-width:2px;
		margin-bottom:0;
	}
	#spot_service_troubles > .base > div > h2{
		font-size:var(--l);
		padding:10px;
	}
	#spot_service_troubles > .base > div > ul{ padding:var(--gap) var(--gap) 110px; }
	#spot_service_troubles > .base > div > ul::after{
		width:230px;
		height:100px;
	}
	#spot_service_troubles > .base > div > ul > li{
		--height:30px;
		font-size:var(--l);
		letter-spacing:0;
	}
	#spot_service_troubles > footer{
		font-size:var(--xl);
		padding:40px 20px 20px;
	}
	#spot_service_troubles > footer::before{
		border-top-width:30px;
		border-right-width:40px;
		border-left-width:40px;
	}
	#spot_service_troubles > footer > small{ font-size:var(--m); }
}

/* ご利用の流れ */
#spot_service_flow > section:last-child{ padding-top:20px; }
#spot_service_flow > section > h3{
	font-weight:bold;
	color:white;
	font-size:var(--xl);
	background:var(--main);
	padding:0 10px;
	margin:20px 0;
}
#spot_service_flow > section > ul > section > ul{ counter-reset:flow; }
#spot_service_flow > section > ul > li{
	counter-increment:flow;
	position:relative;
	padding-left:120px;
	min-height:100px;
	margin-bottom:20px;
}
#spot_service_flow > section > ul > li::before{
	position:absolute;
	left:0;
	top:0;
	content:counter(flow);
	background:var(--main);
	color:white;
	text-align:center;
	font-size:var(--xxl);
	width:100px;
	height:100px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	line-height:100px;
	border-radius:50%;
	font-weight:bold;
}
#spot_service_flow > section > ul > li > h4{
	font-size:var(--xl);
	font-weight:bold;
	padding-top:20px;
}
@media screen and (max-width: 768px){
	#spot_service_flow > section > ul > li{
		padding-left:90px;
		min-height:80px;
	}
	#spot_service_flow > section > ul > li::before{
		width:80px;
		height:80px;
	}
	#spot_service_flow > section > ul > li > h4{ padding-top:5px; }
}

/* よくあるご質問 */
#spot_service_faqs > ul.alone{ padding-top:0; }
#spot_service_faqs > ul.alone > li:not(:last-child){ margin-bottom:20px; }
#spot_service_faqs > ul.alone > li > h3::before{ content:'Q.'; }

/* CTA */
.spot_service_cta > .flex > a{
	border-radius:10px;
	overflow:hidden;
	display:block;
}
.spot_service_cta > .flex > a:nth-child(1){
	background:white;
	border:2px solid var(--main);
}
.spot_service_cta > .flex > a:nth-child(2){
	background:rgb(242,252,246);
	border:1px solid var(--line);
}
.spot_service_cta > .flex > a:nth-child(1):hover{ background:var(--main1); }
.spot_service_cta > .flex > a:nth-child(2):hover{ background:var(--line1); }

/**
 * スポット：はじめての方へ
----------------------------------------------------------------*/
/* はじめての方へナビ */
.wnav{
	padding:var(--gap);
	font-size:0;
}
.wnav > a{
	display:block;
	border-radius:20px;
	overflow:hidden;
	width:fit-content;
	margin:0 auto;
}
.wnav > a:not(:last-child){ margin-bottom:20px; }
.wnav.-min{
	display:flex;
	gap:10px;
	justify-content:center;
	max-width:calc(360px * 3 + 10px * 2);
	margin:0 auto;
}
.wnav.-min > a{
	max-width:360px;
	border-radius:10px;
}
.wnav.-min > a:not(:last-child){ margin-bottom:0; }
.welcome_buying{ background-color:rgb(242,215,225); }
.welcome_selling{ background-color:rgb(215,229,242); }
.welcome_akiya{ background-color:rgb(242,238,215); }
a.welcome_buying:hover{ background-color:rgb(242,197,213); }
a.welcome_selling:hover{ background-color:rgb(197,220,242); }
a.welcome_akiya:hover{ background-color:rgb(242,235,197); }
@media screen and (max-width: 512px){
	.wnav.-min{ padding:10px; }
}

/* 見出し */
.spot_welcome_heading{
	background-image:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/article/welcome/bg_banner.png)	background-repeat:no-repeat
	background-position:right top;
}

/* 流れ */
.spot_welcome_flow{
	padding:40px 80px;
	margin:0 auto;
	max-width:1920px;
	position:relative;
}
.spot_welcome_flow > .summary{ margin:30px 0; }
.spot_welcome_flow > h2{
	text-align:center;
	font-size:var(--xxxl);
	color:var(--main);
	font-weight:bold;
	padding:10px 0;
}
.spot_welcome_flow > ol{
	display:flex;
	flex-wrap:wrap;
	gap:40px;
	position:relative;
}
.spot_welcome_flow > ol::before{
	content:'';
	display:block;
	position:absolute;
	inset:0;
	background:url(https://daitojisho.jp/wp-content/themes/daitojisho/images/article/welcome/leadvis.png) no-repeat center center / contain;
	opacity:.2;
	z-index:-1;
}
.spot_welcome_flow > ol > li{
	width:calc((100% - 2 * 40px) / 3);
	background:rgba(251,180,0,0.8);
	border-radius:30px;
	padding:20px 20px 20px 200px;
	position:relative;
}
.spot_welcome_flow > ol > li:not(:last-child)::after{
	position:absolute;
	content:'';
	display:block;
	width:0;
	height:0;
	top:0;
	bottom:0;
	margin:auto 0;
	right:-40px;
	border-top:20px solid transparent;
	border-bottom:20px solid transparent;
	border-right:0 solid transparent;
	border-left:40px solid rgba(251,180,0,0.8);
}
.spot_welcome_flow > ol > li > img{
	width:160px;
	position:absolute;
	top:20px;
	left:20px;
}
.spot_welcome_flow > ol > li > header{
	font-weight:bold;
	color:var(--main);
	font-family:var(--gothic);
	font-size:var(--xl);
	line-height:1.2;
}
.spot_welcome_flow > ol > li > header > span{
	line-height:1.4;
	background:var(--main);
	color:white;
	font-size:var(--xxs);
	padding:0 .5em;
	display:inline-block;
	margin-right:.3em;
}
.spot_welcome_flow > ol > li > h3{
	font-size:var(--xl);
	font-weight:bold;
	line-height:1.4;
	margin-bottom:5px;
}
.spot_welcome_flow > ol > li > p{ letter-spacing:0; }
@media screen and (max-width: 1536px){
	.spot_welcome_flow{ padding:40px var(--gap); }
	.spot_welcome_flow > ol{ gap:20px; }
	.spot_welcome_flow > ol > li{ width:calc((100% - 20px) / 2); }
	.spot_welcome_flow > ol > li:not(:last-child)::after{
		right:-20px;
		border-top-width:20px;
		border-bottom-width:20px;
		border-left-width:20px;
	}
}
@media screen and (max-width: 1200px){
	.spot_welcome_flow > ol > li{ padding:10px 15px 10px 165px; }
	.spot_welcome_flow > ol > li > img{
		width:140px;
		top:10px;
		left:10px;
	}
}
@media screen and (max-width: 768px){
	.spot_welcome_flow > ol > li{ width:100%; }
	.spot_welcome_flow > ol > li:not(:last-child)::after{
		top:auto;
		right:0;
		left:0;
		margin:0 auto;
		bottom:-20px;
		border-bottom-width:0;
		border-top:20px solid rgba(251,180,0,0.8);
		border-right-width:20px;
		border-left:20px solid transparent;
	}
}
@media screen and (max-width: 450px){
	.spot_welcome_flow > ol > li{ padding-left:125px; }
	.spot_welcome_flow > ol > li > img{ width:100px; }
}

/**
 * お問い合わせ
----------------------------------------------------------------*/
/* LINE登録ボタン */
#spot_contact_line > .base > footer{ text-align:center; }
#spot_contact_line > .base > footer > a{
	display:inline-block;
	background:rgb(6,199,85);
}
#spot_contact_line > .base > footer > a:hover{ background:rgb(5,166,71); }

/**
 * フォーム
----------------------------------------------------------------*/
/* ContactForm7: RichFormスマホ対応 */
.richform legend{
	font-size:16px;
	font-weight:bold;
}
.richform [type="file"]{
	font-size:inherit;
	background:#f5f5f5;
	padding:10px;
	display:block;
	width:100%;
	box-sizing:border-box;
	border:var(--border-width) solid var(--gray);
	border-radius:var(--border-radius);
	transition:background .2s;
}
.richform [type="file"]:hover{
	background:#eee;
	border-color:var(--black);
}
.richform [type="file"]:focus{ border-color:var(--blue); }
.richform [type="text"],
.richform [type="number"],
.richform [type="search"],
.richform [type="tel"],
.richform [type="url"],
.richform [type="email"],
.richform [type="password"],
.richform [type="datetime"],
.richform [type="date"],
.richform [type="month"],
.richform [type="week"],
.richform [type="time"],
.richform [type="datetime-local"],
.richform [type="file"],
.richform textarea{ font-family:inherit; }
@media screen and (max-width: 768px){
	.richform label,
	.richform .em-wide{ width:100%; }
	.richform .em-mid{ width:calc((100% - .5em + 2px) / 2); }
	.richform .em-narrow{ width:100px; }
	.richform [type="text"],
	.richform [type="number"],
	.richform [type="search"],
	.richform [type="tel"],
	.richform [type="url"],
	.richform [type="email"],
	.richform [type="password"],
	.richform [type="datetime"],
	.richform [type="date"],
	.richform [type="month"],
	.richform [type="week"],
	.richform [type="time"],
	.richform [type="datetime-local"],
	.richform [type="file"],
	.richform textarea{ font-size:16px; }
}

/* ContactForm7: 送信ボタン */
.wpcf7-form footer{
	text-align:center;
	font-size:20px;
	margin:40px 20px;
}
.wpcf7-form footer p{ text-align:center; }
.wpcf7-form footer [type="submit"]{
	width:240px;
	padding:14px;
	font-weight:bold;
	font-family:inherit;
	letter-spacing:.1em;
}

/* ContactForm7: 上下エラー文 */
.wpcf7 form .wpcf7-response-output{
	background:steelblue;
	padding:20px;
	color:white;
	margin:10px 0;
	border:0;
}
.wpcf7 form.init .wpcf7-response-output{ display: none; }
.wpcf7 form.sent .wpcf7-response-output{
	background:steelblue;
	padding:20px;
	color:white;
	margin:10px 0;
	border:0;
}
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output{
	background:crimson;
	padding:20px;
	color:white;
	margin:10px 0;
	border:0;
}
.wpcf7 .screen-reader-response{ color:crimson; }
.wpcf7 .screen-reader-response > ul > li{ list-style:inside square; }

/* ContactForm7: 入力部品ごとのエラー文 */
.wpcf7-not-valid-tip{
	color:crimson;
	display:block;
}



/**
 * 本文
----------------------------------------------------------------*/
/* 段落 */
.content p + p{ margin-top:10px; }

/* リンク */
.content a:not(.wp-block-button__link){ color:var(--sub); }
.content a:not(.wp-block-button__link):hover{ color:var(--main); }

/* 見出し */
.content h2,
.content h3,
.content h4,
.content h5,
.content h6{
	font-weight:bold;
	margin:5px 0;
}
.content h2{
	font-size:var(--xl);
	line-height:1.4;
	color:var(--main);
	margin:10px 0;
}
.content h3{
	font-size:var(--l);
	color:var(--main);
}
.content h4{ font-size:var(--m); }
.content h5{ font-size:var(--s); }
.content h6{ font-size:var(--xs); }

/* リスト */
.content ul,
.content ol{ margin:10px 0; }
.content ul > li::before{
	content:'●';
	color:var(--main);
}
.content ol{ counter-reset:content-ol; }
.content ol > li::before{
	content:counter(content-ol)". ";
	counter-increment:content-ol;
	color:var(--sub);
	font-weight:bold;
}

/* カラム */
.wp-block-columns{ margin:40px 0; }

/* ボタン */
.wp-block-buttons{}
.wp-block-button__link{
	display:block;
	padding:var(--gap-quarter) var(--gap-half);
	background:var(--main) !important;
	color:white;
	position:relative;
	letter-spacing:.2em;
	text-align:center;
	vertical-align:middle;
	font-size:var(--s);
	margin:20px 0;
	border-radius:3em;
	padding:var(--gap-half);
	font-family:var(--gothic);
	font-weight:bold;
}
.wp-block-button__link:hover{ background:var(--sub) !important; }

/* 画像 */
.wp-block-image{ margin:20px 0; }

/* テーブル */
.wp-block-table{ padding:20px 0; }
.wp-block-table > table td{ border:none; }
.wp-block-table > table tr:first-child > td{ border-top:2px solid var(--main); }
.wp-block-table > table tr:last-child > td{ border-bottom:2px solid var(--main); }
.wp-block-table > table tr:nth-child(even) > td{ background:rgb(242,250,245); }
