@charset "utf-8";

:root
{
	--line-link-display: block;
	--line-link-top: 170px;
}

#page #content #main_panel
{
	padding-top: 91px;
}

.header_btn.lp
{
	display: block;
}

.header_btn.lp .btn_name
{
	display: block;
	margin-top: 12px;
}

.btn_lp
{
	width: 38px;
	height: 38px;
	min-width: 38px;
	padding: 0 0 0 34px;
	margin-left: 10px;
	border: none;
	border-radius: 9999px;
	cursor: pointer;
	display: inline-block;
	background-image: url("../img/icon_info.png");
	background-repeat: no-repeat;
	background-size: 100%;
    background-color: transparent;
	color: #1E469B;
	pointer-events: unset;
}

.ui_panel.layout_horizon.border_bottom
{
	border: unset;
}

#nav
{
	justify-content: flex-end;
}

#nav .balloon
{
	position: relative;
	background-color: #e4f2ff;
	padding: 8px;
	margin-top: 10px !important;
	margin-bottom: 5px;
	color: #1E469B;
	border-radius: 6px;
}

#nav .balloon::before
{
	content: "";
	position: absolute;
	border: 10px solid transparent;
	border-bottom: 20px solid #e4f2ff;
	top: -29px;
	left: calc(100% - 80px);
}

#nav .balloon p
{
	margin: 0;
	padding: 0;
}

#nav .breadcrumb
{
	display: none;
}

h2.search_heading
{
	margin: 32px 0 16px;
	padding: 0 32px 0 56px;
	font-size: 20px;
	background-size: 20px;
	color: #3e3e3e;
	background-image: url("../img/icon_search.svg");
	background-position: 32px 50%;
	background-repeat: no-repeat;
	font-weight: bold;
}

h2.search_heading:not(:nth-of-type(1))
{
	margin-top: 16px;
}

.menu ~ div.title
{
	width: 80%;
	margin: 0 auto 8px auto;
}

.menu ~ div.title h2
{
	font-size: 16px;
	font-weight: 600;
}

.menu.column_button
{
	border-top: 1px solid #ddd;
}

.condition_list
{
	padding: 0 32px 34px;
	border-bottom: 1px solid #ddd;
}

.condition_list .title h3
{
	margin-bottom: 16px;
	text-align: center;
	font-weight: bold;
}

.condition_list .flex
{
	flex-wrap: wrap;
}

.condition_list a
{
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.4em 2em 0.4em 1.3em;
	line-height: normal;
	margin-bottom: 8px;
	width: calc( ( 100% - 16px ) / 3 );
	background-color: #5586ce;
	background-image: url("../img/icon_arrow_white.svg");
	background-repeat: no-repeat;
	background-position: 95%;
	background-size: 0.5em;
	border-radius: 0.9em;
	font-weight: 600;
	color: #fff;
	text-decoration: none;
}

.condition_list a:not(:nth-child(3n))
{
	margin-right: 8px;
}

a#btn_search_akas 
{
	width: unset !important;
	min-width: calc((100% - 32px) / 3);
}

/*	tablet	*/
@media screen and (max-width: 1000px)
{
	:root
	{
		--line-link-width: calc(190px + 8vw);
		--line-link-top: 80vh;
		--close-btn-diameter: calc(19px + 0.5vw);
	}

	#page #content #main_panel
	{
		padding-top: 56px;
	}

	.header_btn.lp .btn_name
	{
		margin-top: 8px;
	}

	#nav .balloon::before
	{
		top: -22px;
	}

	.condition_list
	{
		padding: 0 16px 24px;
	}

	h2.search_heading
	{
		margin: 36px 0 16px 0;
		padding: 0 32px 0 40px;
		background-position: 16px 50%;
	}
}

/*	mobile	*/
@media screen and (max-width: 640px)
{
	:root
	{
		--line-link-width: 242px;;
		--line-link-top: 75vh;
		--close-btn-diameter: 22px;
	}

	#page #content #main_panel
	{
		padding-top: 107px;
	}

	.header_btn.lp
	{
		margin-top: 0;
	}

	.header_btn.lp .btn_name
	{
		display: none;
	}

	.btn_lp
	{
		margin: 0 0 2px 12px;
	}

	#nav .balloon::before
	{
		left: calc(100% - 80px);
	}

	#nav .balloon p
	{
		font-size: 12px;
	}

	.condition_list a
	{
		width: calc(50% - 4px);
	}

	.condition_list a:not(:nth-child(3n))
	{
		margin-right: unset;
	}

	.condition_list a:not(:nth-child(2n))
	{
		margin-right: 8px;
	}

	.condition_list .title h3
	{
		text-align: left;
	}
}

/*	small	*/
@media screen and (max-width: 430px)
{
	:root
	{
		--line-link-width: 210px;
	}

	#page #content #main_panel
	{
		padding-top: 94px;
	}

	#nav .balloon::before
	{
		border-bottom: 16px solid #e4f2ff;
		top: -20px;
		left: calc(100% - 80px);
	}

	.btn_clip
	{
		margin-bottom: 4px;
	}

	.btn_lp
	{
		width: 28px;
		min-width: 28px;
		height: 28px;
		padding: 0 0 0 28px;
		margin: 0 0 4px 12px;
	}
}

@media screen and (max-width: 350px)
{
	#nav .balloon::before
	{
		left: calc(100% - 80px);
	}
}
