/*共通 */
:root {
	--color-default: #457e9c;
	--bgcolor-default: #e8f0c5;
	--light-green: #a6df14;
	--leaf-green: #9cd113;
	--yellow-green: #95c036;
	--mos-green: #486109;
	--blue-gray: #447e9c;
	--sky-blue: #13d9e7;
	--light-blue: #5eb0d9;
	--shadow-blue: #4795bd;
	--dark-blue: #32637c;
	--vivid-blue: #1359d1;
	--light-purple: #d73cf6;
	--dark-gray: #212529;
	--shadow-green: #76b354;
	--light-gray: #d1d1d1;
	--neutral-gray: #9e9e9e;
}

@font-face {
	font-family: 'Roboto';
	src: url('../fonts/Roboto-Black.ttf') format('truetype');
	font-style: normal;
	font-weight: 900;
	font-display: swap;
}
@font-face {
	font-family: 'Roboto';
	src: url('../fonts/Roboto-Bold.ttf') format('truetype');
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}
@font-face {
	font-family: 'Roboto';
	src: url('../fonts/Roboto-Medium.ttf') format('truetype');
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}
@font-face {
	font-family: 'Roboto';
	src: url('../fonts/Roboto-Regular.ttf') format('truetype');
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

html {
	font-size: 16px;
	margin-top: 0;
	touch-action: manipulation;
}

a {
	transition: all 0.3s;
	opacity: 1;
	text-decoration: none;
}

a:hover {
	text-decoration: none;
	opacity: 0.6;
}

.main {
	display: flex;
	flex-direction: column;
	max-width: 640px;
	margin: 0 auto;
}
@media (min-width: 961px) {
	.main {
		flex-direction: row;
		gap: 20px;
		max-width: 1300px;
		width: fit-content;
	}
}

body {
	color: var(--color-default);
	background-color: #9cd113;
	font-family: Roboto, Arial, sans-serif, 'Hiragino Kaku Gothic ProN', Meiryo, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans';
	font-kerning: normal;
	font-size: 18px;
	line-height: 1.88;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}

/*--------------
busmo UI
----------------*/

button.sbtn {
	flex-grow: 1;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	display: inline-block;
	padding: 5px 10px;
	margin: 5px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	letter-spacing: 0.1em;
	color: #212529;
	border-radius: 100vh;
}

button.sbtn.disable {
	background-color: #d1d1d1;
	color: #9e9e9e;
}

button.btn--lightblue-w {
	color: #fff;
	background: #5eb0d9;
	box-shadow: 0 5px 0 #4795bd;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

button.btn--lightblue-w:hover {
	background: #65bde9;
}

button.btn--green-w {
	color: #fff;
	background-color: var(--leaf-green);
	box-shadow: 0 5px 0 var(--shadow-green);
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

button.btn--green-w:hover {
	color: #fff;
	background: var(--light-green);
}

button.btn--blue-w {
	color: #fff;
	background: #447e9c;
	box-shadow: 0 5px 0 #32637c;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

button {
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}

.button-full {
	width: 100%;
}

button.btn--marineblue-w {
	color: #fff;
	background-color: #1359d1;
	box-shadow: 0 5px 0 #0c3884;
}

button.btn--marineblue-w:hover {
	background-color: #1669f7;
}

button.btn--blue-w:hover {
	color: #fff;
	background: #5092b4;
}

button.btn--radius {
	border-radius: 100vh;
}

/* favorite star */
.btn--favoritestar {
	margin: 5px;
	opacity: 1;
}

.span--favoritestar-text-gray {
	font-size: 12px;
	font-weight: 600;
	color: #9e9e9e;
}

.span--favoritestar-text-blue {
	font-size: 12px;
	font-weight: 600;
	color: #447e9c;
}

.btn--favoritestar:hover {
	opacity: 0.6;
}

/* bus fromto select */
.button--fromto-box {
	-webkit-appearance: none;
	appearance: none;
	position: relative;
	background-image: url(../img/modal_search_icon.svg?20230623);
	background-size: 25px;
	background-repeat: no-repeat;
	background-position-x: 400px;
	background-position-y: 5px;
	background-color: #fff;
	vertical-align: middle;
	box-sizing: border-box;
	height: 44px;
	width: 100%;
	padding-left: 44px;
	font-size: 16px;
	font-weight: 600;
	border: 3px solid #5eb0d9;
	border-radius: 44px;
	outline: 0;
	-webkit-border-radius: 44px;
}

.label--from-icon {
	position: absolute;
	left: 9px;
	top: 7px;
	width: 30px;
	height: 30px;
	background: url(../img/from_tag.png) no-repeat 0 0;
	background-size: cover;
}

.label--to-icon {
	position: absolute;
	left: 9px;
	top: 7px;
	width: 30px;
	height: 30px;
	background: url(../img/to_tag.png) no-repeat 0 0;
	background-size: cover;
}

.span--time-icon {
	position: absolute;
	left: 9px;
	top: 7px;
	width: 30px;
	height: 30px;
	background: url(../img/time_tag.png) no-repeat 0 0;
	background-size: cover;
}

/* favorite busstop button */
.btnset--favorite-busstop {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 10px 0 0;
}

.btnset--favorite-busstop button {
	flex-basis: 18%;
	background-color: #fff;
	height: 60px;
	padding: 0.8rem 0.5rem;
	margin: 0 4px 10px;
	font-size: 12px;
	font-weight: 600;
	text-align: center;
	border-radius: 10px;
	line-height: 1.4;
	opacity: 1;
}

.btnset--favorite-busstop button.disabled {
	flex-basis: 18%;
	background-color: #eee;
}

.btnset--favorite-busstop button:hover {
	opacity: 0.6;
}

/* bus datetime select */
.select--datetime-box {
	-webkit-appearance: none;
	appearance: none;
	position: relative;
	background-color: #fff;
	vertical-align: middle;
	box-sizing: border-box;
	height: 44px;
	width: 100%;
	padding-left: 45px;
	padding-right: 45px;
	font-size: 16px;
	font-weight: 600;
	border: 3px solid #5eb0d9;
	border-radius: 44px;
	outline: 0;
	-webkit-border-radius: 44px;
}

.input--search-box {
	appearance: none;
	-webkit-appearance: none;
	background-color: #fff;
	border: 5px solid #5eb0d9;
	box-sizing: border-box;
	font-size: 24px;
	font-weight: 400;
	height: 70px;
	line-height: 1;
	outline: 0;
	padding: 10px 45px 10px 65px;
	position: relative;
	width: 100%;
}
.input--search-box::placeholder {
	color: #ccc;
}
.input--search-box:focus {
	font-size: 28px;
}

input[type='datetime-local' i]::-webkit-calendar-picker-indicator {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	padding: 0;
	background: transparent;
	color: transparent;
	cursor: pointer;
	width: 100%;
}

/* search settime button */
.btnset--search-settime {
	display: flex;
	margin: 10px 0;
}

.btnset--search-settime input {
	display: none;
}

.btnset--search-settime label {
	flex: 1;
	background-color: #d1d1d1;
	color: #9e9e9e;
	padding: 0.6rem 0.5rem;
	margin: 0 5px;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-align: center;
	border-radius: 50px;
	line-height: 1.4;
	vertical-align: middle;
	-webkit-transition: all 0.1s;
	transition: all 0.1s;
}

.btnset--search-settime label:hover {
	background-color: #dedddd;
	color: #9e9e9ec4;
}

.btnset--search-settime input[type='radio']:checked + label {
	background-color: var(--leaf-green);
	color: var(--mos-green);
}

.btnset--search-settime input[type='radio']:checked + label:hover {
	color: var(--mos-green);
	background: var(--light-green);
}

.favorite-sorting-chosen {
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.5);
}

.favorite-sorting-ghost {
	opacity: 0;
}

.favoritestar-wrap {
	text-align: center;
}

.purupuru {
	-webkit-animation: purupuru_move 1s 1;
	-moz-animation: purupuru_move 1s 1;
	animation: purupuru_move 1s 1;
}

@keyframes purupuru_move {
	0% {
		will-change: transform;
		transform: translate(0, 0);
	}
	5% {
		will-change: transform;
		transform: translate(-5px, -0);
	}
	10% {
		will-change: transform;
		transform: translate(5px, 0);
	}
	15% {
		will-change: transform;
		transform: translate(-5px, -0);
	}
	20% {
		will-change: transform;
		transform: translate(5px, 0);
	}
	25% {
		will-change: transform;
		transform: translate(-5px, -0);
	}
	30% {
		will-change: transform;
		transform: translate(0, 0);
	}
	100% {
		will-change: transform;
		transform: translate(0, 0);
	}
}

/*共通 */

.bg-white {
	background-color: #fff;
}

.search-content-area {
	background-color: #e8f0c5;
	padding: 0 37px 40px;
}

.search-container {
	background: white;
	display: flex;
	flex-direction: column;
	align-self: flex-start;
	min-width: 430px;
}

@media (min-width: 961px) {
	.search-container {
		width: 520px;
	}
}

.pr-container {
	flex: 2;
	display: flex;
	flex-direction: column;
	margin: 10px 25px;
	align-self: flex-start;
	min-width: 250px;
}

.pr-container a:hover {
	text-decoration: none;
	opacity: 0.8;
}

.pr-container p {
	font-size: small;
	text-align: center;
}

.c-indent--1em {
	text-indent: 1em;
}

.c-cols {
	display: flex;
	gap: 10px;
}
.c-cols--2cols .c-cols__item {
	width: 278px;
}
.c-cols--3cols .c-cols__item {
	width: 182px;
}
.c-cols--4cols .c-cols__item {
	width: 134px;
}
.c-cols--5cols .c-cols__item {
	width: 105px;
}
.c-cols--nogap {
	gap: 0;
}

.c-button--border {
	align-items: center;
	display: flex;
	border-color: #447e9c;
	border-width: 2px;
	color: #447e9c;
	font-size: 24px;
	height: 70px;
	justify-content: center;
	line-height: 1.2;
	width: 100%;
	padding: 0 20px;
}

.c-button--border:hover {
	background: #447e9c;
	color: white;
}

@media (min-width: 961px) {
	.c-button--border {
		font-size: 15px;
		height: 35px;
		padding: 0;
	}
	.bus-select-company-content .c-button--border {
		border-radius: 30px;
		font-size: 24px;
		height: 55px;
	}
}

.c-button--border.selected {
	background-color: #447e9c;
	color: white;
	font-weight: bold;
}

.c-button--all {
	align-items: center;
	display: flex;
	background-color: #447e9c;
	border-color: #447e9c;
	border-width: 2px;
	color: white;
	height: 70px;
	justify-content: center;
	font-size: 24px;
	line-height: 1.2;
	width: 100%;
}

@media (min-width: 961px) {
	.c-button--all {
		border-radius: 30px;
		font-size: 24px;
		height: 55px;
	}
}
.c-button--all.disabled {
	border: none;
}
.c-button__bus-stop-toggle {
	font-size: 30px;
	line-height: 1.1;
}

.c-bottun__select {
	background-color: #65bde9;
	color: white;
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 1;
	padding: 15px 15px 15px 20px;
	clip-path: polygon(20% 0%, 100% 0%, 100% 100%, 20% 100%, 0% 50%, 0% 50%);
}

@media (min-width: 961px) {
	.c-bottun__select {
		font-size: 18px;
		line-height: 1;
		padding: 10px 10px 10px 15px;
	}
}

.c-button__icon {
	align-items: center;
	display: flex;
	padding-left: 56px;
}

.c-button__icon img {
	max-width: 36px;
	max-height: 36px;
}

@media (min-width: 961px) {
	.c-button__icon {
		padding-left: 25px;
		height: 45px;
	}
	.c-button__icon img {
		max-width: 25px;
		max-height: 25px;
	}
}

.c-button__bus-stop-shortcuts {
	display: flex;
	flex-wrap: wrap;
	font-size: 22px;
	gap: 10px;
}
.c-button__bus-stop-shortcuts button {
	background-color: white;
	color: #447e9c;
	line-height: 1.5;
	padding: 7px 10px 10px;
	width: 278px;
	height: 45px;
}
.c-button__bus-stop-shortcuts button:hover {
	background: #65bde9;
	color: white;
}
@media (min-width: 961px) {
	.c-button__bus-stop-shortcuts button {
		font-size: 15px;
		height: 35px;
		padding: 0 10px;
		width: 218px;
	}
}

.c-button__bus-stop-shortcuts button.favorite_unallocated::before {
	width: 100%;
	height: 25px;
	color: #ccc;
	content: '+ Add bus stop';
	pointer-events: none;
}

.c-button__bus-stop-shortcuts button.favorite_unallocated:hover::before {
	color: white;
}

.c-button__set-current-datetime {
	align-items: center;
	background-color: #5eb0d9;
	clip-path: polygon(20% 0%, 100% 0%, 100% 100%, 20% 100%, 0% 50%, 0% 50%);
	color: white;
	display: flex;
	font-size: 22px;
	font-weight: bold;
	justify-content: center;
	line-height: 1;
	padding-left: 20px;
	width: 146px;
}
@media (min-width: 961px) {
	.c-button__set-current-datetime {
		font-size: 18px;
	}
}

.c-button__search {
	background: #5eb0d9 url(../img/search_icon_white.svg) center 20px / 60px no-repeat;
	border-radius: 15px;
	color: white;
	font-size: 40px;
	font-weight: bold;
	height: 150px;
	line-height: 1;
	padding-top: 65px;
	text-align: center;
	width: 566px;
}
.c-button__search:hover {
	background-color: #9cd113;
}
@media (min-width: 961px) {
	.c-button__search {
		background: #5eb0d9 url(../img/search_icon_white.svg) center 15px / 50px no-repeat;
		font-size: 30px;
		height: 120px;
		padding-top: 65px;
		width: 100%;
	}
}

.p-button__set-default,
.p-button__swap-stops,
.p-button__search-history {
	position: relative;
}

.p-button__set-default::before {
	background: url(../img/kiroku_btn.svg) 0 0/ 40px no-repeat;
	content: '';
	width: 40px;
	height: 40px;
	display: block;
	position: absolute;
	left: 17px;
	top: 18px;
	pointer-events: none;
}
.p-button__set-default:hover::before {
	background: url(../img/kiroku_btn_white.svg) 0 0/ 40px no-repeat;
}

.p-button__swap-stops::before {
	background: url(../img/exchange_btn.svg) 0 0/ 40px no-repeat;
	content: '';
	width: 40px;
	height: 40px;
	display: block;
	position: absolute;
	left: 17px;
	top: 18px;
	pointer-events: none;
}
.p-button__swap-stops:hover::before {
	background: url(../img/exchange_btn_white.svg) 0 0/ 40px no-repeat;
}

.p-button__search-history::before {
	background: url(../img/rireki_btn.svg) 0 0/ 40px no-repeat;
	content: '';
	width: 40px;
	height: 40px;
	display: block;
	position: absolute;
	left: 17px;
	top: 18px;
	pointer-events: none;
}
.p-button__search-history:hover::before {
	background: url(../img/rireki_btn_white.svg) 0 0/ 25px no-repeat;
}

@media (min-width: 961px) {
	.p-button__set-default::before,
	.p-button__swap-stops::before,
	.p-button__search-history::before {
		background-size: 25px;
		width: 25px;
		height: 25px;
		left: 23px;
		top: 11px;
	}
}

.c-contents__title {
	color: #5eb0d9;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
	margin: 40px auto 10px;
	width: 566px;
}

@media (min-width: 961px) {
	.c-contents__title {
		font-size: 21px;
		margin: 20px auto 10px;
		/* width: 480px; */
	}

	.result-container .c-contents__title {
		font-size: 21px;
		margin: 20px auto 10px;
		width: 480px;
	}
}

.c-contents__title--green {
	color: #cde18f;
	margin-top: 20px;
}

.c-result {
	background-color: white;
	border-left: 5px solid #5eb0d9;
	border-right: 5px solid #5eb0d9;
	color: #203a48;
	margin: 0 auto;
	width: 566px;
}

@media (min-width: 961px) {
	.c-result {
		width: 480px;
	}
}

.result-container {
	background-color: #e8f0c5;
	display: flex;
	flex-direction: column;
	padding: 0 37px 40px;
	position: relative;
	width: 640px;
}

@media (min-width: 961px) {
	.result-container {
		padding: 20px 0;
		width: 520px;
		background: #e8f0c5 url(../img/result_waiting_msg.png) center 300px/ 450px no-repeat;
	}
}

.result-container section:first-of-type {
	border-top: 5px solid #5eb0d9;
}

.result-container section:last-of-type {
	border-bottom: 5px solid #5eb0d9;
}

/* バス検索エリア */

.busmo-logo-space {
	width: 50px;
}

.busmo-logo {
	width: 70%;
}

.c-input-container {
	border: 5px solid #5eb0d9;
	background: white;
	padding: 10px;
}

.c-input-container__datetime {
	background: white url(../img/icon_datetime.svg) right 10px center / 36px no-repeat;
	color: #447e9c;
	flex: 1;
	font-size: 24px;
	font-weight: bold;
	position: relative;
}
.c-input-container__datetime input {
	opacity: 0;
	width: 100%;
}

.c-input-container__datetime p {
	position: absolute;
	top: 13px;
	left: 10px;
	pointer-events: none;
}

@media (min-width: 961px) {
	.c-input-container {
		border: 4px solid #5eb0d9;
		padding: 5px;
	}
	.c-input-container__datetime {
		background: white url(../img/icon_datetime.svg) right 10px center / 30px no-repeat;
		font-size: 18px;
		font-weight: normal;
	}
	.c-input-container__datetime p {
		top: 9px;
		left: 15px;
	}
}

.p-bus-select__select {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
}

.p-bus-select__disp-bus-stop-name--en {
	font-size: 24px;
	line-height: 1.5;
	margin-left: 10px;
	max-width: 435px;
	word-wrap: break-word;
}

@media (min-width: 961px) {
	.p-bus-select__disp-bus-stop-name--en {
		font-size: 18px;
		max-width: 315px;
	}
}

.p-bus-select__disp-bus-stop-name--ja {
	border-top: 1px solid #cddfe9;
	font-size: 24px;
	line-height: 1.5;
	padding-left: 10px;
	padding-top: 12px;
}

@media (min-width: 961px) {
	.p-bus-select__disp-bus-stop-name--ja {
		font-size: 16px;
	}
}

.p-favorite-star {
	align-items: center;
	display: flex;
	font-size: 21px;
	gap: 10px;
	margin: 20px;
}
.p-favorite-star img {
	display: block;
	width: 40px;
}

.p-search-method__item {
	position: relative;
}

.p-search-method input[type='radio'] {
	display: none;
}
.p-search-method input[type='radio'] + label {
	align-items: center;
	cursor: pointer;
	display: flex;
	position: absolute;
	justify-content: center;
	font-size: 24px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

@media (min-width: 961px) {
	.p-search-method input[type='radio'] + label {
		font-size: 18px;
		font-weight: normal;
	}
}

/* irekae&kiroku button */
.btn--irekae,
.btn--kiroku {
	display: flex;
	align-items: center;
	line-height: 1.1;
	font-size: 14px;
	font-weight: normal;
	transition: all 0.3s;
	opacity: 1;
}

.btn--irekae img,
.btn--kiroku img {
	height: 40px;
}

.btn--irekae span,
.btn--kiroku span {
	vertical-align: text-bottom;
}

.btn--irekae:hover,
.btn--kiroku:hover {
	opacity: 0.6;
}

.show-history-btn {
	display: flex;
	align-items: center;
	font-size: 14px;
	margin: 15px 10px;
	cursor: pointer;
	line-height: 1.1;
}
.show-history-btn img {
	height: 40px;
}

.bus-select-company-content {
	display: flex;
	width: 566px;
	margin: auto;
}

/* @media (min-width: 961px) {
	.bus-select-company-content {
		width: 480px;
	}
} */

.bus-selected-company-content {
	display: flex;
	font-size: 24px;
	width: fit-content;
	margin-top: 10px;
}

@media (min-width: 961px) {
	.bus-selected-company-content {
		font-size: 15px;
	}
}

.bus-selected-company-list {
	display: flex;
	flex-wrap: wrap;
	flex: 2;
}

.bus-selected-company-list div {
	padding: 0 7px;
}

.bus-from-select,
.bus-to-select {
	position: relative;
}

.bus-from-select .disabled,
.bus-to-select .disabled {
	color: #ccc;
}

.bus-fromto-irekae,
.bus-fromto-kiroku {
	text-align: center;
	margin: 15px 10px;
}

.datetime-title {
	margin-top: 10px;
	margin-left: 10px;
}

.bus-search-datetime {
	position: relative;
	flex: 7;
	margin-top: 30px;
	background-color: white;
	border: 3px solid #5eb0d9;
	border-radius: 44px;
	-webkit-border-radius: 44px;
}

.bus-search-datetime .span--time-icon {
	z-index: 1;
	position: absolute;
	left: 9px;
	top: 4px;
	width: 30px;
	height: 30px;
	background: url(../img/time_tag.png) no-repeat 0 0;
	background-size: cover;
}

.span--select-icon {
	position: absolute;
	box-sizing: border-box;
	height: 42px;
	width: 38px;
	right: -6px;
	top: 14px;
	background: url(../img/select_icon.png) no-repeat 0 0;
	background-size: 15px 15px;
}

.bus-search-datetime .span--select-icon {
	z-index: 2;
	position: absolute;
	box-sizing: border-box;
	height: 42px;
	width: 38px;
	right: -6px;
	top: 11px;
	background: url(../img/select_icon.png) no-repeat 0 0;
	background-size: 15px 15px;
}
.bus-search-datetime .select--datetime-box {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 3;
	height: 38px;
	background-color: inherit;
	border: none;
	text-align: center;
	padding: 0;
}

.bus-search-datetime-now {
	flex: 1;
	text-align: center;
}

/* 検索結果エリア */

.p-result-content {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 0 auto 40px;
	width: 566px;
}

@media (min-width: 961px) {
	.p-result-content {
		margin: 0 auto 20px;
		width: 480px;
	}
}

.p-result-content dl {
	display: flex;
	gap: 10px;
}

.p-result-content dt {
	align-items: center;
	background-color: #65bde9;
	color: white;
	display: flex;
	font-size: 21px;
	font-weight: bold;
	justify-content: center;
	width: 110px;
}

.p-result-content dd {
	align-items: center;
	display: flex;
	gap: 15px;
	color: #203a48;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.5;
}

.p-result-content dd .p-result-content__result-time {
	font-size: 40px;
}

.p-result-content dd .p-result-content__result-bus-stop {
	font-size: 21px;
	line-height: 1.2;
}

.p-result-content dd .p-result-content__result-bus-stop--en {
	max-width: 300px;
	font-weight: normal;
	word-break: break-all;
}

.p-result-content dd .p-result-content__result-bus-stop--ja {
	color: #65bde9;
}

@media (min-width: 961px) {
	.p-result-content dt {
		font-size: 16px;
		font-weight: normal;
		width: 90px;
	}

	.p-result-content dd {
		font-size: 21px;
	}

	.p-result-content dd .p-result-content__result-time {
		font-size: 28px;
	}

	.p-result-content dd .p-result-content__result-bus-stop--en {
		font-size: 15px;
		width: 270px;
	}

	.p-result-content dd .p-result-content__result-bus-stop--ja {
		font-size: 15px;
		font-weight: normal;
	}
}

.result-fromto-content {
	font-weight: 600;
	line-height: normal;
	margin-bottom: 5px;
	padding: 10px 20px;
	border: solid 8px;
	font-size: 24px;
	text-align: center;
}

.fromto-text {
	display: flex;
	align-items: center;
	color: #203a48;
	font-size: 18px;
	text-align: left;
	margin-bottom: 5px;
}

.fromto-text-icon-wrapper {
	display: flex;
	width: 30px;
	height: 30px;
	font-size: 20px;
	justify-content: center;
	align-items: center;
	line-height: 1;
	padding: 0px;
	background: #203a48;
	color: #fff;
	margin-right: 10px;
}

.result-time {
	margin-top: 0px;
	margin-left: 5px;
	font-size: 22px;
	color: #203a48;
	text-align: left;
}

.result-description-area {
	display: flex;
	font-size: 15px;
	justify-content: space-between;
	align-items: center;
	margin-top: 5px;
	border-top: 3px solid #d0e3ea;
	padding-top: 10px;
}

.result-bus-company {
	align-self: flex-start;
	margin-bottom: 5px;
}

.result-bus-company div {
	color: #fff;
	font-size: 21px;
	font-weight: normal;
	line-height: 1;
	margin-right: 3px;
	padding: 5px 10px;
	width: fit-content;
}

@media (min-width: 961px) {
	.result-bus-company div {
		font-size: 18px;
	}
}

.result-bus-company div.ex {
	background-color: var(--leaf-green);
}

.result-bus-company div.community {
	background-color: #5eb0d9;
}

.result-bus-company div.shuttle {
	background-color: #d73cf6;
	width: 110px;
}

.result-bus-company div.lo {
	background-color: #1359d1;
}

.result-bus-company div.ship {
	background-color: #13d9e7;
}

.result-bus-info {
	justify-content: space-between;
	color: #447e9c;
	font-size: 16px;
	line-height: 1.6;
	font-weight: 600;
	padding: 10px 20px 10px 30px;
	width: 80%;
}

.result-bus-info-busname {
	display: flex;
	flex-direction: column;
	font-size: 21px;
	font-weight: normal;
	justify-content: space-between;
	margin-bottom: 5px;
}

.result-bus-info-time {
	padding-top: 5px;
}

.result-bus-info-company-price {
	border-top: 2px solid #dfecf1;
	display: flex;
	font-size: 24px;
	flex-direction: row;
	justify-content: space-between;
}

@media (min-width: 961px) {
	.result-bus-info-busname {
		font-size: 18px;
	}
	.result-bus-info-company-price {
		font-size: 21px;
	}
}

.result-bus-info-price {
	text-align: center;
	align-self: flex-end;
	padding-right: 6px;
	padding-top: 5px;
}

.result-bus-info-norikae {
	display: flex;
	align-items: center;
	font-size: 6px;
	padding: 10px 5px;
	border: 1px solid #fff;
	margin-right: 10px;
	font-weight: normal;
}

.result-busstop {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #d1d1d185;
	padding: 10px 20px;
}

.arrival-time {
	width: 105px;
	font-weight: bold;
	font-size: 40px;
	margin-right: 20px;
}

@media (min-width: 961px) {
	.arrival-time {
		font-size: 28px;
		width: 75px;
	}
}

.result-transit-wrapper {
	margin: 20px 0;
	background: linear-gradient(to right, white 110px, #d1e7f0 110px 117px, white 117px);
}

.result-transit-bus-stop {
	display: flex;
	padding: 10px;
	font-size: 16px;
	cursor: pointer;
}

.busmo-bus-icon {
	color: #457e9c;
	font-size: 21px;
	font-weight: bold;
	line-height: 1.4em;
	padding-top: 39px;
	text-align: center;
	width: 100px;
}

.busmo-bus-icon img {
	width: 35px;
}

.bus-stop-circle {
	display: flex;
	font-size: 21px;
	background-image: url(../img/circle.svg);
	background-size: 18px;
	background-repeat: no-repeat;
	background-position: 85px 10px;
	padding-left: 15px;
	word-break: break-all;
}

@media (min-width: 961px) {
	p.bus-stop-circle {
		font-size: 18px;
		background-position: 85px 8px;
	}
}
.bus-stop-circle__time {
	padding-top: 2px;
	white-space: nowrap;
}
@media (min-width: 961px) {
	.bus-stop-circle__time {
		padding-top: 2px;
	}
}

.bus-stop-circle__space {
	display: inline-block;
	width: 57px;
	height: 30px;
}
.bus-stop-circle__name--ja {
	display: block;
	width: 360px;
	padding-left: 124px;
	font-size: 20px;
	color: #5eb0d9;
	margin-bottom: 10px;
}
@media (min-width: 961px) {
	.bus-stop-circle__name--ja {
		font-size: 18px;
		padding-left: 116px;
	}
}

.result-busname {
	align-items: center;
	display: flex;
	font-size: 21px;
	font-weight: 600;
	color: #222222;
	line-height: normal;
}

.result-busname .bus-stop-name {
	word-break: break-all;
	font-size: 20px;
	width: 325px;
	color: #5eb0d9;
	margin-top: 5px;
}

@media (min-width: 961px) {
	.result-busname .bus-stop-name {
		font-size: 14px;
		width: 266px;
	}
}

.result-googlemap {
}

.result-googlemap img {
	width: 50px;
}

@media (min-width: 961px) {
	.result-googlemap img {
		width: 36px;
	}
}

.result-busstop-middle {
	font-size: 14px;
	padding: 10px 20px;
	line-height: 1.8;
}

.result-busstop-middle-work {
	display: flex;
	align-items: center;
	margin: 10px 20px;
	padding: 10px;
}
.result-busstop-middle-work div:first-child {
	border-right: dotted 8px #d1e7f0;
	padding-right: 4px;
}

.result-busstop-middle-work div:nth-child(2) {
	padding-left: 17px;
}

.result-busstop-middle-work img {
	width: 42px;
	margin-right: 20px;
	margin-left: 10px;
}

.result-date-time {
	display: flex;
	align-items: center;
	padding-bottom: 5px;
}

.result-date-wrapper {
	display: flex;
	align-items: center;
	padding: 0px 2px;
	margin-right: 5px;
	color: #203a48;
	width: fit-content;
	height: 30px;
}

.icon-calendar {
	margin-right: 10px;
	width: 30px;
	height: 30px;
	line-height: 1;
}

.icon-calendar img {
	width: 100%;
}

.result-date {
	vertical-align: middle;
	display: table-cell;
	font-size: 14px;
}

.bus-search-next-content {
	display: flex;
	gap: 10px;
	justify-content: center;
	background-color: var(--bgcolor-default);
}

.no-result-area {
	text-align: left;
	font-size: 24px;
	padding: 15px;
	height: 150px;
}

/* 検索履歴 */

.show-history-modal-content {
	position: fixed;
	display: flex;
	flex-direction: column;
	top: 50%;
	left: 50%;
	will-change: transform;
	transform: translate(-50%, -50%);
	background: #fff;
	overflow-y: hidden;
	z-index: 11;
	width: 500px;
	height: 95%;
	padding: 30px;
	overflow-y: auto;
}

.show-history-modal-content h1 {
	font-size: 28px;
}

.bt-show-history-close-wrapper {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom: 1px solid #447e9c;
}

.history-content {
	font-size: 20px;
	border-bottom: 1px dotted #447e9c;
	padding: 10px 0;
	cursor: pointer;
}

.history-fromto-text {
	text-align: left;
	display: flex;
	margin-bottom: 6px;
	line-height: normal;
}

.history-fromto-text-icon-wrapper {
	display: table;
	width: 110px;
	padding: 0px;
	background: #447e9c;
	color: #fff;
	margin-right: 8px;
}

.history-fromto-text-icon-wrapper div {
	display: table-cell;
}
.history-fromto-bus-stop-name {
	width: 280px;
}

.history-fromto-text-icon {
	text-align: center;
	vertical-align: middle;
}

.history-result-date-time {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: -2px;
}

.history-result-date-wrapper {
	display: flex;
	margin-right: 5px;
}

.history-result-time {
	margin-left: 1em;
}
.history-totalprice {
	margin-left: 1em;
}

/* 広告表示エリア */
.pr-container div {
	text-align: right;
}

.pr-container div + div {
	margin-top: 20px;
}

.pr-container img {
	width: 250px;
}

.now-loading {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 9999999;
	display: none;
}

.now-loading div:first-child {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5);
	width: 100%;
	height: 100%;
}

.now-loading div:first-child img {
	position: absolute;
	box-sizing: border-box;
	top: 50%;
	left: 50%;
	will-change: transform;
	transform: translate(-50%, -50%);
	width: 200px;
}

.next-day-notice {
	font-size: 20px;
	color: #5eb0d9;
}

.past-from-notice {
	font-size: 18px;
	color: red;
	font-weight: normal;
}

.functional-icon {
	align-items: center;
	border-top: 1px solid #d1e7f0;
	display: flex;
	font-weight: bold;
	justify-content: flex-end;
	gap: 20px;
	margin-left: auto;
	padding-bottom: 5px;
	padding-top: 10px;
	text-align: right;
}
.set-history-btn {
	background-image: url(../img/icon_keep.svg);
	background-position-y: center;
	background-repeat: no-repeat;
	background-size: 36px;
	height: 34px;
	font-size: 21px;
	font-weight: normal;
	text-align: right;
	width: 95px;
}
.share-result-btn {
	background-image: url(../img/icon_share.svg);
	background-position-y: center;
	background-size: 28px;
	background-repeat: no-repeat;
	font-size: 21px;
	font-weight: normal;
	height: 34px;
	text-align: right;
	width: 95px;
}

.functional-icon .tooltip-information {
	display: inline-flex;
	z-index: 9;
}

@media (min-width: 961px) {
	.set-history-btn {
		background-size: 28px;
		font-size: 18px;
		height: 31px;
		width: 80px;
	}
	.share-result-btn {
		background-size: 22px;
		font-size: 18px;
		height: 31px;
		width: 80px;
	}
}

.functional-icon .tooltip-information .tooltip-description {
	display: flex;
	flex-direction: column;
	line-height: 2;
	margin-bottom: 20px;
}
.functional-icon .tooltip-information .tooltip-description span {
	display: flex;
	align-items: center;
	justify-content: left;
	margin-right: auto;
	margin-left: 15px;
	margin-top: 10px;
}

.share-result-modal-content {
	border-radius: 20px;
	position: fixed;
	display: flex;
	flex-direction: column;
	top: 50%;
	left: 50%;
	will-change: transform;
	transform: translate(-50%, -50%);
	background: #fff;
	overflow-y: hidden;
	z-index: 11;
	width: 500px;
	height: 70%;
	padding: 30px;
	overflow-y: auto;
	max-height: 500px;
}

.bt_share_result_close_wrapper {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding-bottom: 5px;
	margin-bottom: 20px;
	border-bottom: 1px solid #447e9c;
}

.white-space {
	width: 40px;
}
.share-result-close-btn {
	width: 25px;
	padding-bottom: 4px;
}

.share-result-modal-content h1 {
	width: 300px;
	text-align: center;
	font-size: 22px;
}

.share-result-radio-btn {
	text-align: center;
	font-size: 18px;
}

.result-url {
	color: #447e9c;
	border: 1px solid #447e9c;
	margin-top: 19px;
	width: 100%;
	font-size: 20px;
	padding: 0 14px;
}

.result-url::-webkit-scrollbar {
	display: none;
}

.favorite-toggle-area {
	display: flex;
}

.sns-icons {
	display: flex;
	justify-content: center;
	margin: 20px 0;
	font-size: 16px;
}

.sns-icons li {
	text-align: center;
	width: 130px;
}
.sns-icons li img {
	width: 50px;
}

.qrcode-wrapper {
	display: flex;
	align-items: center;
}

.qrcode {
	text-align: center;
}

.qrcode img {
	width: 150px;
}

.qrcode-download {
	margin: 20px auto;
	border: 1px solid #447e9c;
	border-radius: 50px;
	padding: 5px 20px;
	text-align: center;
	font-size: 16px;
	height: 41px;
}

.share-result-radio-btn label {
	padding-left: 30px;
	margin: 0 10px;
	width: 300px;
	height: 30px;
	background-repeat: no-repeat;
	background-image: url(../img/check_off.svg);
}

.share-result-radio-btn #share_result_index_0:checked + label {
	background-image: url(../img/check_on.svg);
}
.share-result-radio-btn #share_result_index_1:checked + label {
	background-image: url(../img/check_on.svg);
}

.bt-share img {
	width: 105px;
}

.bt-reload img {
	width: 105px;
}

.hisotry-fromto-area {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.bt-history-delete {
	width: 30px;
}

.bt-history-all-clear {
	text-align: center;
	font-size: 26px;
	padding: 10px;
	margin-top: 10px;
	/* cursor: pointer; */
}

.bt-history-all-clear button {
	border: solid 1px;
	border-radius: 50px;
	padding: 10px 20px;
}

.p-result__priority-routes {
	margin-top: 15px;
	border-bottom: 3px solid #5eb0d9;
	display: flex;
	gap: 10px;
	width: 566px;
	margin: 40px auto 0;
}

@media (min-width: 961px) {
	.p-result__priority-routes {
		width: 480px;
	}
}

.p-result__priority-route {
	color: #5eb0d9;
	background-color: #d1e7f0;
}

.p-result__priority-route.selected {
	color: #fff;
	background: #5eb0d9;
	cursor: default;
}

.p-result__priority-route.selected .tooltip {
	color: #d1e7f0;
}

.p-result__priority-route-label {
	padding: 0 10px;
	font-size: 26px;
}

@media (min-width: 961px) {
	.p-result__priority-route-label {
		font-size: 18px;
	}
}

.p-result__priority-route-features {
	display: flex;
	gap: 5px;
	padding: 0 5px;
	font-size: 24px;
}
@media (min-width: 961px) {
	.p-result__priority-route-features {
		font-size: 18px;
	}
}

.p-result__priority-route-feature.tooltip {
	text-align: center;
}

.wrapper {
	padding-top: 60px;
}

.header {
	background-color: #9cd113;
	height: 60px;
	padding-top: 10px;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 11;
}

.main.column {
	display: block;
}
.main.stack {
	pointer-events: none;
}

.spots-top-container {
	display: flex;
}

.logo-content-area {
	margin-top: 40px;
}

@media (min-width: 961px) {
	.logo-content-area {
		margin: 40px auto 0;
		width: 480px;
	}
}

.logo-content-area.spots {
	flex: 4;
	display: flex;
	flex-direction: column;
	margin: 10px 25px;
	align-self: flex-start;
	min-width: 430px;
}

.slider-container {
	display: none;
}

/* バス検索エリア */

.logo-content {
	padding-left: auto;
	justify-content: center;
	text-align: center;
	display: block;
}

.logo-content img {
	width: 250px;
}

.c-tab {
	display: flex;
	justify-content: center;
	margin: 20px 0 0;
	gap: 10px;
	border-bottom: 10px solid #8bc53f;
}

/* @media (min-width: 961px) {
	.c-tab {
		display: none;
	}
} */

.c-tab__button {
	background: #cde18f 35px center no-repeat;
	color: #6dbb58;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	font-size: 24px;
	font-weight: bold;
	height: 82px;
	line-height: 1.2;
	width: 278px;
}

.c-tab__button--busstop {
	background-image: url(../img/tab_bus_icon.svg);
	background-size: 44px;
	padding: 15px 0 15px 110px;
}
.c-tab__button--busstop.selected {
	background-image: url(../img/tab_bus_icon_selected.svg);
}

.c-tab__button--spot {
	background: #cde18f url(../img/tab_map_icon.svg) 13px center / 45px no-repeat;
	padding: 15px 0 15px 65px;
}
.c-tab__button--spot.selected {
	background-image: url(../img/tab_map_icon_selected.svg);
}

@media (min-width: 961px) {
	.c-tab__button {
		background-position-x: 29px;
		font-size: 20px;
		height: 74px;
		padding: 15px 0 0 97px;
		width: 235px;
	}
	.c-tab__button--spot {
		background-position-x: 13px;
		padding: 15px 0 0 65px;
	}
}

.c-tab__button.selected {
	background-color: #8bc53f;
	color: #006837;
}

/* レイヤー */
.result-busmo-trip-info-a .need_book {
	background-color: red;
	color: white;
	text-align: center;
	padding: 10px;
	font-size: 20px;
	font-weight: bold;
}

.booking-link-area {
	display: flex;
	align-items: center;
}
.booking-link-area a {
	padding: 10px;
	width: 50%;
	text-align: center;
	border-radius: 10px;
	color: #fff;
	margin-top: 5px;
}
.booking-link-area a.local-payment {
	background-color: #5eb0d9;
	margin-right: 10px;
}
.booking-link-area a.web-payment {
	background-color: #ee9527;
}

.bus-search-datetime-now img {
	height: 44px;
	transition: all 0.3s;
	opacity: 1;
}

.bus-search-datetime-now img:hover {
	opacity: 0.6;
}

.bus-search-datetime-area {
	display: flex;
	align-items: flex-end;
	margin-top: -20px;
}

.bt-hisotry-set {
	font-size: 14px;
	font-weight: bold;
	padding: 0px 8px;
	border-radius: 20px;
	color: var(--mos-green);
	background: var(--yellow-green);
}

.img--favoritestar-icon {
	height: 30px;
}

.btn--search {
	background-color: #5eb0d9;
	border-radius: 20px;
	color: white;
	font-size: 40px;
	font-weight: 700;
	margin-top: 40px;
	padding: 20px;
	text-align: center;
	text-decoration: none;
	transition: all 0.3s;
	user-select: none;
	vertical-align: middle;
	width: 100%;
	-webkit-transition: all 0.3s;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}

@media (min-width: 961px) {
	.btn--search {
		font-size: 24px;
		max-width: 380px;
	}
}

/* search next button */
.btn--busbefore-search,
.btn--busnext-search {
	align-items: center;
	background-color: #5eb0d9;
	color: white;
	display: flex;
	font-size: 24px;
	font-weight: bold;
	height: 70px;
	justify-content: center;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 180px;
}

@media (min-width: 961px) {
	.btn--busbefore-search,
	.btn--busnext-search {
		font-size: 21px;
		height: 50px;
		width: 150px;
	}
}

.btn--busbefore-search {
	padding-left: 10px;
	clip-path: polygon(15% 0%, 100% 0%, 100% 100%, 15% 100%, 0% 50%);
}
.btn--busnext-search {
	padding-right: 10px;
	clip-path: polygon(0% 0%, 85% 0%, 100% 50%, 85% 100%, 0% 100%);
}

.btn--busbefore-search:hover,
.btn--busnext-search:hover {
	color: var(--mos-green);
	background: var(--light-green);
}

.tooltip {
	cursor: pointer;
	padding: 0 5px;
	font-size: 0.9em;
	color: #4682b4;
	position: relative;
}

.tooltip-information {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	font-size: 18px;
	font-weight: bold;
	padding: 2px;
	border: 2px solid #427995;
	border-radius: 11px;
	position: relative;
	width: 22px;
	height: 22px;
}

.tooltip-information span {
	gap: 20px;
}

.tooltip-information img {
	height: 40px;
	margin-right: 5px;
	display: inline-block;
	background-color: white;
	padding: 2px;
}

@media (min-width: 961px) {
	.tooltip-information img {
		height: 22px;
	}
}

.tooltip-description {
	background-color: #666;
	border-radius: 10px;
	color: #fff;
	display: block;
	font-size: 24px;
	font-weight: normal;
	left: 50%;
	line-height: 2;
	margin-top: 8px;
	opacity: 0;
	padding: 15px;
	position: fixed;
	text-align: left;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: 0.5s all;
	visibility: hidden;
	max-width: 470px;
	width: 90%;
	z-index: 1000;
}

@media (min-width: 961px) {
	.tooltip-description {
		font-size: 18px;
	}
}

.tooltip:hover .tooltip-description {
	top: 50%;
	visibility: visible;
	opacity: 1;
}

.bus-fromto-bt-set-wrapper {
	display: flex;
	align-items: center;
}

.bus-fromto-bt-set {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 0 5px;
	flex-grow: 2;
}

.bus-fromto-bt-set-wrapper .tooltip-information {
	margin-left: auto;
	margin-right: 10px;
}

.bus-fromto-bt-set-wrapper .tooltip-description {
	display: flex;
	flex-direction: column;
	z-index: 100;
	font-size: 16px;
}

.bus-fromto-bt-set-wrapper .tooltip-description span {
	display: flex;
	align-items: center;
	text-align: left;
}

.bus-fromto-bt-set-wrapper .space-adjust {
	width: 40px;
}

.result-priority-route .tooltip-information {
	margin-left: auto;
	margin-top: auto;
	margin-bottom: auto;
}

/* bus info area */
.bus-info-area {
	border-top: solid 1px #76b354;
	border-bottom: solid 1px #76b354;
	width: 566px;
	margin: auto;
}

@media (min-width: 961px) {
	.bus-info-area {
		width: 480px;
		margin-bottom: 40px;
	}
}

.bus-info-area ul li {
	padding: 10px;
}

.bus-info-area ul li:nth-child(n + 2) {
	border-top: 1px solid #6dbb58;
}
.bus-info-title-wrapper {
	display: flex;
	align-items: flex-start;
	cursor: pointer;
}
.bus-info-date {
	font-size: 18px;
	line-height: 1.8em;
	width: 130px;
	color: #486109;
}
.bus-info-title {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.8em;
	width: 470px;
	color: #333333;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}
@media (min-width: 961px) {
	.bus-info-title {
		font-size: 16px;
		font-weight: normal;
	}
}

.bus-info-title.alert {
	color: #e11111;
}
.bus-info-content {
	font-size: 12px;
}
.bus-info-content span {
	font-weight: bold;
}

/* footer */
.footer {
	color: #fff;
	text-align: center;
}

.copyright {
	font-size: 18px;
}

.footer-function {
	margin-top: 40px;
	display: none;
	justify-content: space-around;
}

.footer-banner {
	display: flex;
	flex-direction: column;
	gap: 40px;
	margin: 40px auto;
	justify-content: center;
	width: 566px;
	font-size: 24px;
}

@media (min-width: 961px) {
	.footer-banner {
		width: 480px;
	}
}
.footer-banner img {
	width: 80%;
}

.footer-logo {
	margin: 0;
}

.footer-logo h2 {
	font-weight: bold;
	font-size: 30px;
}

.footer-name-list {
	align-items: flex-start;
	flex-direction: column;
	display: flex;
	font-size: 21px;
	gap: 20px;
	line-height: 1;
	margin: 20px auto 0;
	width: 480px;
}

.footer-name-list > div {
	margin: auto;
}

.footer-logo img {
	width: 300px;
	margin: 10px 0;
}

.footer-info-content {
	padding: 50px 0 80px;
	background-color: #95c036;
	letter-spacing: 0.1em;
}

.footer-info-links {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	font-size: 28px;
	gap: 30px;
	line-height: 1;
	margin: 30px auto 60px;
	width: 566px;
}

@media (min-width: 961px) {
	.footer-info-links {
		width: 480px;
	}
}

.footer-info-links a {
	display: block;
}

@supports (-webkit-touch-callout: none) {
	html {
		height: -moz-available;
		height: -webkit-fill-available;
		height: fill-available;
	}

	body {
		min-height: 100vh;
		height: -moz-available;
		height: -webkit-fill-available;
		height: fill-available;
	}
}

.u-mt--10 {
	margin-top: 10px;
}

.u-mt--40 {
	margin-top: 40px;
}

.u-ml--20 {
	margin-left: 20px;
}

@media (min-width: 961px) {
	.u-mt--40 {
		margin-top: 20px;
	}
}

.hide {
	display: none;
}

.blur {
	filter: blur(10px);
}
