#Outline > #Contents {
	padding: 65px 0 0;
}

/* plist */
#Outline > #Contents > .plist {
	display: flex;
	width: 100%;
}
#Outline > #Contents > .plist > a {
	display: block;
	margin: -45px 0 15px 0;
	line-height: 30px;
	font-size: 1rem;
	color: var(--base-color);
}
#Outline > #Contents > .plist > a > img {
	margin: 0 10px 0 0;
	width: 30px;
	height: 30px;
	vertical-align: top;
}

/* navigation */
#Outline > #Contents > ul.order {
	position: relative;
	margin: 50px 0 0;
	font-size: 0;
}
#Outline > #Contents > ul.order > li {
	display: inline-block;
	position: relative;
	clip-path: polygon(0 0, calc(100% - 15px) 0, 100% 50%, calc(100% - 15px) 100%, 0 100%, 15px 50%);
	margin: 0 -12px 12px 0;
	padding: 0 35px;
	width: auto;
	height: 50px;
	line-height: 50px;
	font-size: 1.1rem;
	background-color: var(--disactive-color);
}
#Outline > #Contents > ul.order > li:first-child {
	clip-path: polygon(0 0, calc(100% - 15px) 0, 100% 50%, calc(100% - 15px) 100%, 0 100%);
	margin-left: -20px;
	padding-left: 20px;
}
#Outline > #Contents > ul.order > li.current {
	background-color: var(--contents-color);
	color: #fff;
}
#Outline > #Contents > ul.order > li > a {
	display: inline-block;
	position: relative;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	color: inherit;
}
#Outline > #Contents > ul.order > li:has(> a:hover) {
	opacity: 0.7;
}

#Outline > #Contents > div.tab {
	display: flex;
	position: relative;
	margin: 40px 0 0;
	border-bottom: 2px solid var(--contents-color);
	width: 100%;
	list-style: none;
	font-size: 0.9rem;
	line-height: 1.2em;
	gap: 5px;
}
#Outline > #Contents > div.tab > div {
	position: relative;
	border-radius: 10px 10px 0 0;
	padding: 6px 10px;
	background-color: var(--disactive-color);
	color: var(--base-color);
}
#Outline > #Contents > div.tab > div:has( > a ) {
	padding: 0;
}
#Outline > #Contents > div.tab > div:has( > a:hover ) {
	opacity: 0.8;
}
#Outline > #Contents > div.tab > div > a {
	display: block;
	padding: 6px 12px;
	width: 100%;
	height: 100%;
	color: inherit;
	box-sizing: border-box;
}
#Outline > #Contents > div.tab > div.current {
	margin-bottom: -2px;
	border: 2px solid var(--contents-color);
	border-bottom: 2px solid #fff;
	background-color: #fff;
	color: var(--contents-color);
}
#Outline > #Contents > div.tab > a.button {
	position: absolute;
	bottom: 10px; right: 0px;
	margin: 0;
	border-radius: 20px;
	padding: 0 20px;
	width: auto;
	min-width: 170px;
	height: 40px;
	line-height: 40px;
	color: #FFF;
	background-color: var(--contents-color);
	box-sizing: border-box;
	cursor: pointer;
	text-align: center;
}

/* #Popup .confirm */
#Outline > #Popup > .pane > .confirm {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	padding: 45px 40px;
	background-color: #fff;
}
#Outline > #Popup > .pane > .confirm.off {
	display: none;
}
#Outline > #Popup > .pane > .confirm dd {
	margin-bottom: 5px;
}

/* hn */
#Outline > #Contents h1,
#Outline > #Contents h2,
#Outline > #Contents h3,
#Outline > #Contents h4,
#Outline > #Contents h5,
#Outline > #Contents h6,
#Outline > #Popup h1,
#Outline > #Popup h2,
#Outline > #Popup h3,
#Outline > #Popup h4,
#Outline > #Popup h5,
#Outline > #Popup h6 {
	letter-spacing: 0.1em;
	font-weight: var(--font-weight-bold);
}

#Outline > #Contents > h1,
#Outline > #Popup > .pane > h1 {
	width: 100%;
	font-size: 2.2rem;
	line-height: 1.4em;
	overflow: hidden;
}
#Outline > #Contents > h2,
#Outline > #Popup > .pane h2 {
	margin: 0;
	border-bottom: 1px solid #1e1e1e;
	padding: 0 0 20px;
	width: 100%;
	font-size: 1.6rem;
	line-height: 1.4em;
	overflow: hidden;
}

#Outline > #Contents > h3,
#Outline > #Popup > .pane h3 {
	margin: 100px 0 0;
	width: 100%;
	font-size: 1.4rem;
	line-height: 1.4em;
	overflow: hidden;
}
#Outline > #Contents > h1 + h2,
#Outline > #Contents > h1 + h3 {
	margin-top: 60px;
}
#Outline > #Contents > h2 + h3,
#Outline > #Contents > ul.order + h3,
#Outline > #Popup > .pane > h1 + h3,
#Outline > #Popup > .pane > h2 + h3,
#Outline > #Popup > .pane > ul.order + h3 {
	margin-top: 35px;
}
#Outline > #Contents > .block dl + h3,
#Outline > #Popup > .pane dl + h3 {
	margin-top: 25px;
}
#Outline > #Contents > h4,
#Outline > #Popup > .pane h4 {
	margin: 60px 0 0 0;
	padding: 0 0 0 15px;
	width: 100%;
	font-size: 1.1rem;
	line-height: 1em;
}
#Outline > #Contents > h5,
#Outline > #Popup > .pane h5 {
	margin: 35px 0 0 0;
	padding: 0 0 0 15px;
	width: 100%;
	font-size: 1rem;
	line-height: 1em;
}

#Outline > #Contents > h1 + h4,
#Outline > #Contents > h2 + h4,
#Outline > #Contents > h3 + h4,
#Outline > #Popup > .pane > h1 + h4,
#Outline > #Popup > .pane > h2 + h4,
#Outline > #Popup > .pane > h3 + h4 {
	margin-top: 35px;
}

#Outline > #Contents p + h2,
#Outline > #Contents ol + h2,
#Outline > #Contents .block + h2,
#Outline > #Contents form + h2,
#Outline > #Contents .button + h2 {
	margin-top: 60px;
}
#Outline > #Contents p + h3,
#Outline > #Contents ol + h3,
#Outline > #Contents .block + h3,
#Outline > #Contents form + h3,
#Outline > #Contents .button + h3 {
	margin-top: 60px;
}


/* indicator */
#Outline > #Contents .indicator,
#Outline > #Popup > .pane .indicator {
	position: relative;
	margin: 30px auto 0;
	width: 100%;
	font-size: 1.3rem;
	line-height: 1.4em;
	color: var(--alert-color);
	text-align: center;
}
#Outline > #Contents .indicator:first-child,
#Outline > #Popup > .pane .indicator:first-child {
	margin-top: 0;
}

/* p */
#Outline > #Contents p {
	margin: 15px 0 0;
	font-size: 1.1rem;
	line-height: 1.4em;
}

#Outline > #Contents p.instruction,
#Outline > #Popup > .pane p.instruction {
	margin: 25px 0 0;
	font-size: 1.2rem;
	line-height: 1.7em;
}
#Outline > #Contents > h1 + p.instruction,
#Outline > #Popup > .pane > h1 + p.instruction {
	margin-top: 50px;
}
#Outline > #Contents > h4 + p,
#Outline > #Popup > .pane > h1 + p {
	margin-top: 8px;
	padding: 0 0 0 15px;
}

/* ul */
#Outline > #Contents > ul {
	margin: 20px auto 0;
	padding: 0 20px;
	font-size: 1rem;
	list-style: inside square;
}
#Outline > #Contents > ul li {
	margin: 5px 0 0;
}


/* figure */
#Outline > #Contents figure {
	position: relative;
	margin: 60px auto 100px;
	width: calc(100% - 100px);
	max-width: 800px;
}
#Outline > #Contents figure img {
	width: 100%;
}
#Outline > #Contents figure figcaption {
	margin: 20px 0 0;
	font-size: 1rem;
	text-align: center;
	color: var(--base-color);
}

/* ol */
#Outline > #Contents ol {
	margin: 20px auto 0;
	padding: 0 0 0 30px;
	width: 100%;
	font-size: 1rem;
	line-height: 1.4em;
	box-sizing: border-box;
}
#Outline > #Contents ol > li {
	margin-bottom: 5px;
}

/* dl */
#Outline > #Contents dl,
#Outline > #Popup > .pane dl {
	display: flex;
	flex-wrap: wrap;
	margin: 20px auto 0;
	width: calc(100% - 100px);
	max-width: 750px;
	box-sizing: border-box;
	align-items: stretch;
	gap: 5px 20px;
	box-sizing: border-box;
}
#Outline > #Contents dl > dt,
#Outline > #Popup > .pane dl > dt {
	position: relative;
	margin: 0;
	padding: 0;
	width: 270px;
	font-size: 1.1rem;
	line-height: 1.4em;
	box-sizing: border-box;
}

#Outline > #Contents dl > dd,
#Outline > #Popup > .pane dl > dd {
	position: relative;
	margin: 0;
	padding: 0;
	width: calc(100% - 290px);
	font-size: 1.1rem;
	line-height: 1.4em;
	box-sizing: border-box;
}
#Outline > #Contents dl > dd:empty::before {
	content: '未設定';
	color: var(--disabled-color);
}
#Outline > #Contents dl > dd:not(:empty).persons::after {
	margin-left: 5px;
	content: '名';
}
#Outline > #Contents dl > dd:not(:empty).percent::after {
	margin-left: 5px;
	content: '%';
}

#Outline > #Contents dl > dd > img,
#Outline > #Popup > .pane dl > dd > img {
	margin-bottom: 10px;
}
#Outline > #Contents dl > dd.button,
#Outline > #Popup > .pane dl > dd.button {
	margin: 40px 0 0;
	width: 100%;
	text-align: center;
}

#Outline > #Contents dl.minimum > dt,
#Outline > #Popup > .pane dl.minimum > dt {
	width: 100px;
}
#Outline > #Contents dl.minimum > dd,
#Outline > #Popup > .pane dl.minimum > dd {
	width: calc(100% - 120px);
}
#Outline > #Contents dl.short > dt,
#Outline > #Popup > .pane dl.short > dt {
	width: 150px;
}
#Outline > #Contents dl.short > dd,
#Outline > #Popup > .pane dl.short > dd {
	width: calc(100% - 170px);
}
#Outline > #Contents dl.middle > dt,
#Outline > #Popup > .pane dl.middle > dt {
	width: 200px;
}
#Outline > #Contents dl.middle > dd,
#Outline > #Popup > .pane dl.middle > dd {
	width: calc(100% - 220px);
}
#Outline > #Contents dl.long > dt,
#Outline > #Popup > .pane dl.long > dt {
	width: 300px;
}
#Outline > #Contents dl.long > dd,
#Outline > #Popup > .pane dl.long > dd {
	width: calc(100% - 320px);
}
#Outline > #Contents dl.huge > dt,
#Outline > #Popup > .pane dl.huge > dt {
	width: 350px;
}
#Outline > #Contents dl.huge > dd,
#Outline > #Popup > .pane dl.huge > dd {
	width: calc(100% - 370px);
}

#Outline > #Contents dl > dt:has(+ dt),
#Outline > #Popup > .pane dl > dt:has(+ dt) {
	width: 100% !important;
}



/* button */
#Outline > #Contents h1 > a[href],
#Outline > #Contents h2 > a[href],
#Outline > #Contents h3 > a[href] {
	display: inline-block;
	float: right;
	margin: 0.8em 0 0;
	border: none;
	border-radius: 5px;
	padding: 0 26px 0 20px;
	width: auto;
	min-width: 240px;
	height: 28px;
	font-size: 1rem;
	line-height: 28px;
	color: #FFF;
	background-color: var(--contents-color);
	background-image: url('../../../../file/parts/arrow.right.svg');
	background-repeat: no-repeat;
	background-position: right;
	background-size: 24px 12px;
	box-sizing: border-box;
	cursor: pointer;
	text-align: center;
}

#Outline > #Contents .button,
#Outline > #Popup > .pane .button {
	display: flex;
	margin: 40px 0 0;
	width: 100%;
	text-align: center;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 30px;
}
#Outline > #Contents .button > a,
#Outline > #Contents .button > button,
#Outline > #Contents .button > input[type=submit],
#Outline > #Contents .button > input[type=cancel],
#Outline > #Popup > .pane .button > a,
#Outline > #Popup > .pane .button > button,
#Outline > #Popup > .pane .button > input[type=submit],
#Outline > #Popup > .pane .button > input[type=cancel] {
	display: inline-block;
	margin: 0;
	border: 2px solid var(--contents-color);
	border-radius: 25px;
	padding: 0 20px;
	width: auto;
	min-width: 200px;
	height: 50px;
	font-size: 1.2rem;
	line-height: 46px;
	color: #FFF;
	background-color: var(--contents-color);
	box-sizing: border-box;
	filter: drop-shadow(0 2px 0 #e0e0e0);
	cursor: pointer;
	text-align: center;
}

#Outline > #Contents .button > button.cancel,
#Outline > #Contents .button > input[type=cancel],
#Outline > #Popup > .pane .button > button.cancel,
#Outline > #Popup > .pane .button > input[type=cancel] {
	color: var(--contents-color);
	background-color: #fff;
}

#Outline > #Contents .button > button.disable,
#Outline > #Contents .button > a.disable,
#Outline > #Contents .button > input[type=submit].disable,
#Outline > #Popup > .pane .button > button.disable,
#Outline > #Popup > .pane .button > a.disable,
#Outline > #Popup > .pane .button > input[type=submit].disable {
	border-color: var(--disabled-color);
	background-color: var(--disabled-color);
	cursor: default;
}

#Outline > #Contents .button > a.external {
	clip-path: polygon(0 0, calc(100% - 15px) 0, 100% 50%, calc(100% - 15px) 100%, 0 100%);
	border-radius: 0;
	padding-right: 30px;
	height: 40px;
	font-size: 1.1rem;
	line-height: 36px;
}


#Outline > #Contents a.mailto {
	display: inline-block;
	margin-left: 10px;
	border-radius: 5px;
	padding: 0 10px;
	color: #fff;
	font-size: 0.8em;
 	background-color: var(--contents-color);
}


/* form  */
#Outline > #Popup > .pane .require::after {
	margin-left: 3px;
	content: '*';
	color: var(--alert-color);
}

#Outline > #Contents textarea,
#Outline > #Popup > .pane textarea,
#Outline > #Contents select,
#Outline > #Popup > .pane select,
#Outline > #Contents input:not([type]),
#Outline > #Popup > .pane input:not([type]),
#Outline > #Contents input[type=text],
#Outline > #Popup > .pane input[type=text],
#Outline > #Contents input[type=date],
#Outline > #Popup > .pane input[type=date],
#Outline > #Contents input[type=number],
#Outline > #Popup > .pane input[type=number],
#Outline > #Contents input[type$=password],
#Outline > #Popup > .pane input[type$=password] {
	appearance: none;
	border: 1px solid #e0e0e0;
	border-radius: 3px;
	padding: 0.4em;
	width: 100%;
	font-size: 1rem;
	line-height: 1.4em;
	box-sizing: border-box;
}
#Outline > #Contents input[type=date],
#Outline > #Popup > .pane input[type=date] {
	width: auto;
}
#Outline > #Contents input.long,
#Outline > #Popup > .pane input.long {
	width: 480px;
}
#Outline > #Contents input.medium,
#Outline > #Popup > .pane input.medium {
	width: 240px;
}
#Outline > #Contents input.short,
#Outline > #Popup > .pane input.short {
	width: 80px;
}
#Outline > #Contents input[type=radio],
#Outline > #Popup > .pane input[type=radio],
#Outline > #Contents input[type=checkbox],
#Outline > #Popup > .pane input[type=checkbox] {
	margin: 0 5px 0 0;
	width: 1.4rem;
	height: 1.4rem;
}
#Outline > #Contents select,
#Outline > #Popup > .pane select {
	max-width: 480px;
	background-image: url("../../../../file/parts/arrow.down.svg");
	background-repeat: no-repeat;
	background-size: 16px auto;
	background-position: right 13px center;
}

#Outline > #Contents span.unit,
#Outline > #Popup > .pane span.unit {
	margin-left: 5px;
}

/* note */
#Outline > #Contents .note,
#Outline > #Popup > .pane .note {
	color: var(--note-color);
	font-size: 0.9em;
}
#Outline > #Contents .note:before,
#Outline > #Popup > .pane .note:before {
	content: '※';
	margin-right: 5px;
}
#Outline > #Contents p.note,
#Outline > #Popup > .pane p.note {
	margin: 20px auto 0;
}
#Outline > #Contents p.note + p.note,
#Outline > #Popup > .pane p.note + p.note {
	margin-top: 5px;
}

/* faq */
#Outline > #Contents .tofaq,
#Outline > #Popup > .pane .tofaq {
	display: inline-block;
	margin: 0 0 0 1px;
	border-radius: 50%;
	padding: 0;
	width: 1.2rem;
	height: 1.2rem;
	line-height: 1.1rem;
	text-align: center;
	color: #FFF;
	background-color: var(--faq-color);
	font-size: 0.9rem;
}


/* attention */
#Outline > #Contents p.attention,
#Outline > #Popup > .pane p.attention {
	margin: 20px auto 0;
	width: 100%;
	font-size: 1rem;
	color: var(--attention-color);
}
#Outline > #Contents p.attention:before,
#Outline > #Popup > .pane p.attention:before {
	content: '※';
	margin-right: 5px;
}
#Outline > #Contents .button + p.attention,
#Outline > #Popup > .pane .button + p.attention {
	text-align: center;
}


/* alert */
#Outline > #Contents .alert,
#Outline > #Popup > .pane .alert {
	color: var(--alert-color);
}

/* block */
#Outline > #Contents > div.block {
	position: relative;
	margin: 40px 0 0;
	border-radius: 10px;
	border: 2px solid var(--base-color);
	padding: 45px 40px;
	box-sizing: border-box;
}
#Outline > #Contents > div.block.offered {
	padding: 30px 40px;
}
#Outline > #Contents > h3 + div.block {
	margin-top: 35px;
}
#Outline > #Contents > div.block > div {
	overflow: hidden;
}
#Outline > #Contents > div.block h4 {
	position: relative;
	margin: 0;
	width: 100%;
	font-size: 1.5rem;
	line-height: 1.4em;
	box-sizing: border-box;
}
#Outline > #Contents > div.block h5 {
	margin: 30px 0 0;
	border-left: 4px solid var(--base-color);
	padding: 0 0 0 6px;
	width: 100%;
	font-size: 1.1rem;
	line-height: 1em;
}
#Outline > #Contents > div.block h5:first-child {
	margin-top: 0;
}
#Outline > #Contents > div.block dl {
	margin-left: 0;
	width: 100%;
	max-width: 100%;
}
#Outline > #Contents > div.block dl > dt {
	text-indent: -20px;
	padding-left: 20px;
	font-size: 1rem;
	box-sizing: border-box;
}
#Outline > #Contents > div.block dl > dt.hidden {
	display: none;
}
#Outline > #Contents > div.block dl > dt:before {
	display: inline-block;
	content: '■';
	margin: 0 5px 0 0;
	width: 15px;
	text-align: right;
	color: var(--contents-color);
	box-sizing: border-box;
}
#Outline > #Contents > div.block dl > dt.sub {
	text-indent: -20px;
	padding-left: 20px;
	box-sizing: border-box;
}
#Outline > #Contents > div.block dl > dt.sub:before {
	display: inline-block;
	content: '-';
	margin: 0 10px 0 0;
	width: 20px;
	text-align: right;
	color: var(--contents-color);
	box-sizing: border-box;
}
#Outline > #Contents > div.block dl > dd {
	font-size: 1rem;
}
#Outline > #Contents > div.block dl > dt.sub,
#Outline > #Contents > div.block dl > dt.sub + dd {
	margin-top: 0;
}
#Outline > #Contents > div.block dl > dd img {
	display: block;
	width: auto;
	max-width: 400px;
	width: 100%;
}
#Outline > #Contents > div.block dl > dd:has(> textarea),
#Outline > #Contents > div.block dl > dd:has(> input) {
	padding: 0;
}
#Outline > #Contents > div.block dl > dd.hidden {
	display: none;
}



#Outline > #Contents > div.block .button {
	text-align: right;
}

/* paging */
#Outline > #Contents > div.paging {
	position: relative;
	margin: 40px 0 0;
	width: 100%;
	overflow: hidden;
}
#Outline > #Contents > div.paging > button {
	display: inline-block;
	border: none;
	width: auto;
	height: 36px;
	line-height: 36px;
	color: var(--contents-color);
	font-size: 1rem;
	background-color: transparent;
}
#Outline > #Contents > div.paging > button > a {
	display: inline-block;
	width: 100%;
	height: 100%;
	color: inherit;
}
#Outline > #Contents > div.paging > button:has(> a:hover) {
	opacity: 0.7;
}
#Outline > #Contents > div.paging > button.prev {
	float: left;
	padding: 0 5px 0 50px;
	background-image: url('../../../../file/parts/button.paging.prev.work.svg');
	background-repeat: no-repeat;
	background-position: top left;
}
#Outline > #Contents > div.paging > button.next {
	float: right;
	padding: 0 50px 0 5px;
	background-image: url('../../../../file/parts/button.paging.next.work.svg');
	background-repeat: no-repeat;
	background-position: top right;
}
