/*----------------------------------------
* カスタム目次
------------------------------------------*/
.custom_index nav ul li a::before {
	content: counters(item, '.', decimal) !important;
	margin-right: .5em !important;
	width: 26px;
	height: 26px;
	font-size: 1rem;
	color: #fff;
	text-align: center;
	background: #2040a1;
	border-radius: 3px;
}

/*----------------------------------------
* アンダーライン＆文字色
------------------------------------------*/
.txt_underline {
	/* text-decoration: underline; */
	font-weight: bold;
	border-bottom: 3px solid yellow;
}

.txt_yellow_underline {
	font-weight: bold;
	background: linear-gradient(transparent 70%, yellow 70%);
}

.txt_red {
	color: #c31e1e;
	font-weight: bold;
}



/*----------------------------------------
* 2025-04-14 CTA
------------------------------------------*/
.kouza_order_area {
	margin: 20px auto;
	padding: 3.4em 0 3em 0;
	width: 100%;
	background: #f9f9f9;
}

@media screen and (max-width: 480px) {
	.kouza_order_area {
		margin-top: 10px;
		margin-bottom: 20px;
		padding-bottom: 2em;
	}
}

.kouza_order_area.top {
	margin: 0 auto 30px auto;
}

@media screen and (max-width: 480px) {
	.kouza_order_area.top {
		margin-bottom: 10px;
	}
}

.kouza_order_area .inner_area {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	padding: 0;
	width: 90%;
}

@media screen and (max-width: 480px) {
	.kouza_order_area .inner_area {
		width: 98%;
	}
}

.kouza_order_area .inner_area .document_request_btn {
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 45%;
	height: 70px;
}

@media screen and (max-width: 480px) {
	.kouza_order_area .inner_area .document_request_btn {
		width: 40%;
		height: 34px;
	}
}

.kouza_order_area .inner_area .document_request_btn .doc_fukidashi {
	position: absolute;
	top: -30%;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	width: 40%;
	height: 30px;
	font-size: 0.85rem;
	font-weight: bold;
	color: #fff;
	border-radius: 100vh;
	border: 2px solid #17adbd;
	background: #17adbd;
	z-index: 1;
}

@media screen and (max-width: 480px) {
	.kouza_order_area .inner_area .document_request_btn .doc_fukidashi {
		top: -70%;
		width: 70%;
		height: 24px;
		font-size: 0.75rem;
	}
}

.kouza_order_area .inner_area .document_request_btn .doc_fukidashi::after {
	position: absolute;
	content: "";
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	border: 8px solid transparent;
	border-top: 8px solid #17adbd;
	width: 0;
	height: 0;
}

.kouza_order_area .inner_area .document_request_btn .str_red {
	color: #e62b2b;
}

.kouza_order_area .inner_area .document_request_btn>a {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	font-size: 1.3rem;
	font-weight: bold;
	color: #17adbd;
	letter-spacing: 0.04em;
	border-radius: 100vh;
	border: 3px solid #17adbd;
	background: #fff;
	text-decoration: none !important;
}

.kouza_order_area .inner_area .document_request_btn>a:hover {
	background: #bbf4fa;
	transition: all 0.3s ease-in-out;
	text-decoration: none;
}

@media screen and (max-width: 480px) {
	.kouza_order_area .inner_area .document_request_btn>a {
		font-size: 0.9rem;
	}
}

.kouza_order_area .inner_area .application_request_btn {
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 51%;
	height: 70px;
}

@media screen and (max-width: 480px) {
	.kouza_order_area .inner_area .application_request_btn {
		width: 54%;
		height: 34px;
	}
}

.kouza_order_area .inner_area .application_request_btn .app_fukidashi {
	position: absolute;
	top: -30%;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	width: 40%;
	height: 30px;
	font-size: 0.85rem;
	font-weight: bold;
	color: #ecb500;
	border-radius: 100vh;
	border: 2px solid #ecb500;
	background: #fff;
	z-index: 1;
}

@media screen and (max-width: 480px) {
	.kouza_order_area .inner_area .application_request_btn .app_fukidashi {
		top: -70%;
		width: 70%;
		height: 24px;
		font-size: 0.75rem;
	}
}

.kouza_order_area .inner_area .application_request_btn .app_fukidashi::after {
	content: "";
	position: absolute;
	content: "";
	bottom: -2px;
	left: 50%;
	transform: translateX(-50%);
	width: 12px;
	height: 12px;
	background: #fff;
	border: 3px solid #ecb500;
	rotate: -45deg;
	-webkit-clip-path: polygon(0px 0px, 0px 100%, 100% 100%);
	clip-path: polygon(0px 0px, 0px 100%, 100% 100%);
}

.kouza_order_area .inner_area .application_request_btn>a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	font-size: 1.3rem;
	font-weight: bold;
	color: #000;
	border-radius: 100vh;
	background: #fbc61a;
	text-decoration: none !important;
	border: 2px solid #fbc61a;
}

@media screen and (max-width: 480px) {
	.kouza_order_area .inner_area .application_request_btn>a {
		font-size: 0.85rem;
	}
}

.kouza_order_area .inner_area .application_request_btn>a::after {
	content: "\f061";
	position: absolute;
	top: 50%;
	right: 10%;
	transform: translateY(-50%);
	font-family: "Font Awesome 5 Free";
	font-size: 1.3rem;
	color: #000;
}

@media screen and (max-width: 480px) {
	.kouza_order_area .inner_area .application_request_btn>a::after {
		right: 3%;
		font-size: 0.9rem;
	}
}

.kouza_order_area .inner_area .application_request_btn>a:hover {
	background: #dfae10;
	transition: all 0.3s ease-in-out;
	text-decoration: none;
}


/*----------------------------------------
* 2025-04-14 サイドバー目次
------------------------------------------*/
.sidebar_index_area {
	position: sticky;
	top: 20px;
	margin: 20px auto 0 auto;
	padding: 0;
	width: 100%;
	background: #fafaff;
}

@media screen and (max-width: 480px) {
	.sidebar_index_area {
		display: none;
	}
}

.sidebar_index_area .index_title {
	margin: 0 auto;
	padding: 0.6em 1em;
	width: 100%;
	font-size: 0.9rem;
	color: #000;
	background: #e0e0e0;
	box-sizing: border-box;
}

.sidebar_index_area .sidebar_index {
	margin: 0 auto;
	padding: 1.4em 1em !important;
	border: none !important;
	box-sizing: border-box;
}

.sidebar_index .ez-toc-heading-level-2 {
	margin-bottom: 5px !important;
}

.sidebar_index .ez-toc-heading-level-2 > a {
	font-size: 0.94rem;
}

/* 
div.ez-toc-widget-container {
    padding: 0;
    position: relative
}

.sidebar_index.ez-toc-light-blue {
    background: #edf6ff
}

.sidebar_index.ez-toc-white {
    background: #fff
}

.sidebar_index.ez-toc-black {
    background: #000
}

.sidebar_index.ez-toc-transparent {
    background: none
}

div.ez-toc-widget-container ul {
    display: block
}

div.ez-toc-widget-container li {
    border: none;
    padding: 0
}

div.ez-toc-widget-container ul.ez-toc-list {
    padding: 10px
}

.sidebar_index ul ul,.ez-toc div.ez-toc-widget-container ul ul {
    margin-left: 1.5em
}

.sidebar_index li,.sidebar_index ul {
    padding: 0
}

.sidebar_index li,.sidebar_index ul,.sidebar_index ul li,div.ez-toc-widget-container,div.ez-toc-widget-container li {
    background: 0 0;
    list-style: none;
    line-height: 1.6;
    margin: 0;
    overflow: hidden;
    z-index: 1
}

.sidebar_index .ez-toc-title {
    text-align: left;
    line-height: 1.45;
    margin: 0;
    padding: 0
}

.ez-toc-title-container {
    display: table;
    width: 100%
}

.ez-toc-title,.ez-toc-title-toggle {
    display: inline;
    text-align: left;
    vertical-align: middle
}

.ez-toc-btn,.ez-toc-glyphicon {
    display: inline-block;
    font-weight: 400
}

.sidebar_index.ez-toc-black a,.sidebar_index.ez-toc-black a:visited,.sidebar_index.ez-toc-black p.ez-toc-title {
    color: #fff
}

.sidebar_index div.ez-toc-title-container+ul.ez-toc-list {
    margin-top: 1em
}

.ez-toc-wrap-left {
    margin: 0 auto 1em 0!important
}

.ez-toc-wrap-left-text {
    float: left
}

.ez-toc-wrap-right {
    margin: 0 0 1em auto!important
}

.ez-toc-wrap-right-text {
    float: right
}

.sidebar_index a {
    color: #444;
    box-shadow: none;
    text-decoration: none;
    text-shadow: none;
    display: inline-flex;
    align-items: stretch;
    flex-wrap: nowrap
}

.sidebar_index a:visited {
    color: #9f9f9f
}

.sidebar_index a:hover {
    text-decoration: underline
}

.sidebar_index a.ez-toc-toggle {
    display: flex;
    align-items: center
}

.ez-toc-widget-container ul.ez-toc-list li::before {
    content: ' ';
    position: absolute;
    left: 0;
    right: 0;
    height: 30px;
    line-height: 30px;
    z-index: -1
}

.ez-toc-widget-container ul.ez-toc-list li.active {
    background-color: #ededed
}

.ez-toc-widget-container li.active>a {
    font-weight: 900
}

.ez-toc-btn {
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.428571429;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none
}

.ez-toc-btn:focus {
    outline: #333 dotted thin;
    outline: -webkit-focus-ring-color auto 5px;
    outline-offset: -2px
}

.ez-toc-btn:focus,.ez-toc-btn:hover {
    color: #333;
    text-decoration: none
}

.ez-toc-btn.active,.ez-toc-btn:active {
    background-image: none;
    outline: 0;
    -webkit-box-shadow: inset 0 3px 5px rgba(0,0,0,.125);
    box-shadow: inset 0 3px 5px rgba(0,0,0,.125)
}

.ez-toc-btn-default {
    color: #333;
    background-color: #fff;
    -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);
    text-shadow: 0 1px 0 #fff;
    background-image: -webkit-gradient(linear,left 0,left 100%,from(#fff),to(#e0e0e0));
    background-image: -webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);
    background-image: -moz-linear-gradient(top,#fff 0,#e0e0e0 100%);
    background-image: linear-gradient(to bottom,#fff 0,#e0e0e0 100%);
    background-repeat: repeat-x;
    border-color: #ccc
}

.ez-toc-btn-default.active,.ez-toc-btn-default:active,.ez-toc-btn-default:focus,.ez-toc-btn-default:hover {
    color: #333;
    background-color: #ebebeb;
    border-color: #adadad
}

.ez-toc-btn-default.active,.ez-toc-btn-default:active {
    background-image: none;
    background-color: #e0e0e0;
    border-color: #dbdbdb
}

.ez-toc-btn-sm,.ez-toc-btn-xs {
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px
}

.ez-toc-btn-xs {
    padding: 1px 5px
}

.ez-toc-btn-default:active {
    -webkit-box-shadow: inset 0 3px 5px rgba(0,0,0,.125);
    box-shadow: inset 0 3px 5px rgba(0,0,0,.125)
}

.btn.active,.ez-toc-btn:active {
    background-image: none
}

.ez-toc-btn-default:focus,.ez-toc-btn-default:hover {
    background-color: #e0e0e0;
    background-position: 0 -15px
}

.ez-toc-pull-right {
    float: right!important;
    margin-left: 10px
}

.sidebar_index label.cssicon,#ez-toc-widget-container label.cssicon {
    height: 30px
}

.ez-toc-glyphicon {
    position: relative;
    top: 1px;
    font-family: 'Glyphicons Halflings';
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    line-height: 1;
    -moz-osx-font-smoothing: grayscale
}

.ez-toc-glyphicon:empty {
    width: 1em
}

.ez-toc-toggle i.ez-toc-glyphicon,label.cssicon .ez-toc-glyphicon:empty {
    font-size: 16px;
    margin-left: 2px
}

.sidebar_index input,.ez-toc-toggle #item {
    position: absolute;
    left: -999em
}

.sidebar_index input[type=checkbox]:checked+nav,#ez-toc-widget-container input[type=checkbox]:checked+nav {
    opacity: 0;
    max-height: 0;
    border: none;
    display: none
}

.sidebar_index .ez-toc-js-icon-con,.sidebar_index label {
    position: relative;
    cursor: pointer;
    display: initial
}

.sidebar_index .ez-toc-js-icon-con,.sidebar_index .ez-toc-toggle label,.ez-toc-cssicon {
    float: right;
    position: relative;
    font-size: 16px;
    padding: 0;
    border: 1px solid #999191;
    border-radius: 5px;
    cursor: pointer;
    left: 10px;
    width: 35px
}

div.sidebar_index .ez-toc-title {
    display: initial
}

.ez-toc-wrap-center {
    margin: 0 auto 1em!important
}

.sidebar_index a.ez-toc-toggle {
    color: #444;
    background: inherit;
    border: inherit
}

.sidebar_index .eztoc-toggle-hide-by-default,.eztoc-hide,label.cssiconcheckbox {
    display: none
}

.ez-toc-widget-container ul li a {
    padding-left: 10px;
    display: inline-flex;
    align-items: stretch;
    flex-wrap: nowrap
}

.ez-toc-widget-container ul.ez-toc-list li {
    height: auto!important
}

.ez-toc-icon-toggle-span {
    display: flex;
    align-items: center;
    width: 35px;
    height: 30px;
    justify-content: center;
    direction: ltr
}

.eztoc_no_heading_found {
    background-color: #ff0;
    padding-left: 10px
}

.term-description .ez-toc-title-container p:nth-child(2) {
    width: 50px;
    float: right;
    margin: 0
} */

.bottom_cta_area {
	margin: 0 auto;
	padding: 1.5em 0;
	width: 96%;
}

.bottom_cta_area .shindan_cta {
	margin: 0 auto;
	padding: 0;
	width: 90%;
	border: 1px solid #ddd;
	overflow: hidden;
}

.bottom_cta_area .shindan_cta > a > img {
	object-fit: contain;
	width: 100%;
	height: auto;
}

.bottom_cta_area .ranking_cta {
	margin: 16px auto 0 auto;
	padding: 0;
	width: 90%;
	overflow: hidden;
}

.bottom_cta_area .ranking_cta > a > img {
	object-fit: contain;
	width: 100%;
	height: auto;
}

.bottom_cta_area .other_ranking_title {
	margin: 16px auto 0 auto;
	padding: 0.4em 0;
	width: 90%;
	font-size: 1rem;
	font-weight: bold;
	color: #666;
	text-align: center;
	background: #f1f1f1;
}

.bottom_cta_area .other_ranking_cta {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 16px auto 0 auto;
	padding: 0;
	width: 90%;
	overflow: hidden;
}

.bottom_cta_area .other_ranking_cta .cta_list {
	margin: 0 0 8px 0;
	padding: 0;
	width: 49%;
}
