/*!
Theme Name: Hakago
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.5
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: hakago
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Hakago is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: "Lexend", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

.site,
.site * {
	font-family: "Lexend", sans-serif;
}

.font-lexend {
	font-family: "Lexend", sans-serif !important;
}

.font-montserrat {
	font-family: "Montserrat", sans-serif !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}

a:visited {
	color: #800080;
}



a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Home banner
--------------------------------------------- */
.hakago-home-page {
	background: #fff;
}

.hakago-banner-section {
	background: #fff;
	line-height: 1.2;
}

.hakago-banner-section .section-container,
.hakago-banner-section .container {
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
	width: 100%;
}

.hakago-banner-image {
	display: block;
	height: auto;
	max-width: 100%;
	object-fit: contain;
	width: 100%;
}

.hakago-banner-media {
	aspect-ratio: 1920 / 773;
	height: auto;
	min-height: 400px;
}

.hakago-banner-hero {
	height: 100%;
	z-index: 1;
}

.hakago-banner-bg {
	/* object-fit: contain; */
	z-index: 0;
}

.hakago-banner-logo {
	left: 50%;
	top: 46px;
	transform: translateX(-50%);
	z-index: 2;
}

.hakago-banner-logo img {
	display: block;
	height: auto;
	max-width: 185px;
	width: 100%;
}

.hakago-logo-go,
.hakago-logo-name {
	color: #0024A7;
	display: inline-block;
	font-size: 31px;
	font-weight: 900;
	letter-spacing: -0.06em;
	line-height: 0.9;
}

.hakago-logo-go {
	color: #0024A7;
	font-style: italic;
	margin-right: 4px;
	position: relative;
}

.hakago-logo-go::after {
	background: #ef1c32;
	border-radius: 50%;
	content: "";
	height: 13px;
	position: absolute;
	right: 3px;
	top: 7px;
	width: 13px;
}

.hakago-logo-name {
	letter-spacing: -0.04em;
}

.hakago-banner-logo small {
	color: #0024A7;
	display: block;
	font-size: 7px;
	font-weight: 800;
	letter-spacing: 0;
	margin-top: 1px;
}

.hakago-banner-content {
	padding-top: 180px;
	z-index: 2;
}

.hakago-banner-content h1 {
	color: #0024A7;
	font-size: 64px;
	font-weight: bold;
	letter-spacing: 0.025em;
	line-height: 1;
	margin: 0 0 13px;
	text-transform: uppercase;
}

.hakago-banner-country {
	background: #0024A7;
	border-radius: 8px;
	color: #fff;
	display: inline-block;
	font-size: 24px;
	line-height: 1;
	margin-bottom: 17px;
	max-width: 100%;
	padding: 8px 15px;
	overflow-wrap: anywhere;
	white-space: normal;
	word-break: normal;
}

.hakago-banner-features {
	color: #0024A7;
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 17px !important;
}

.hakago-banner-features li + li {
	margin-top: 7px;
}

.hakago-feature-icon {
	display: block;
	height: 25px;
	margin-right: 20px;
	object-fit: contain;
	width: 25px;
}

.hakago-banner-button,
.hakago-banner-button:visited {
	background: #f5242f;
	border-radius: 8px;
	box-shadow: 0 2px 0 rgba(0, 0, 0, 0.08);
	color: #fff;
	font-size: 24px;
	font-weight: 600;
	gap: 9px;
	letter-spacing: 0.02em;
	line-height: 1;
	margin-bottom: 12px;
	padding: 12px 16px 11px;
	text-transform: uppercase;
	font-family: Montserrat;
}

.hakago-banner-button span {
	font-size: 27px;
	font-weight: 500;
	line-height: 0.55;
}

.hakago-banner-note {
	color: #0024A7;
	font-size: 18px;
	gap: 5px;
}

.hakago-banner-note span {
	background: #0024A7;
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    font-size: 11px;
    height: 16px;
    justify-content: center;
    line-height: 16px;
    width: 16px;
}

.hakago-floating-contact {
	pointer-events: none;
}

.hakago-floating-contact .hakago-banner-chat,
.hakago-floating-contact .hakago-banner-phone {
	pointer-events: auto;
}

.hakago-banner-chat {
	background:  #0c82ff;
	border: 0;
	bottom: 126px;
	box-shadow: 0 0 0 13px rgba(12, 130, 255, 0.31);
	color: #0c82ff;
	font-size: 16px;
	font-weight: 800;
	height: 50px;
	isolation: isolate;
	position: fixed;
	right: 32px;
	z-index: 1050;
	width: 50px;
}

.hakago-banner-chat::before,
.hakago-banner-chat::after,
.hakago-banner-phone span::before,
.hakago-banner-phone span::after {
	background: rgba(12, 130, 255, 0.31);
	border-radius: inherit;
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}

.hakago-banner-chat::before,
.hakago-banner-phone span::before {
	animation: hakago-floating-pulse 1.8s ease-out infinite;
}

.hakago-banner-chat::after,
.hakago-banner-phone span::after {
	animation: hakago-floating-pulse 1.8s ease-out 0.55s infinite;
	background: rgba(12, 130, 255, 0.2);
}

.hakago-banner-chat img {
	display: block;
	height: 30px;
	object-fit: contain;
	width: 30px;
}

.hakago-banner-phone,
.hakago-banner-phone:visited {
	background: #0c82ff;
    border-radius: 999px;
    bottom: 30px;
    box-shadow: 0 12px 26px rgba(12, 130, 255, 0.25);
    color: #fff;
    font-size: 23px;
    font-weight: bold;
    gap: 18px;
    /* min-height: 40px; */
    padding: 5px 15px 5px 5px;
    position: fixed;
    right: 18px;
    z-index: 1050;
}

.hakago-banner-phone {
	isolation: isolate;
}

.hakago-banner-phone span {
	align-items: center;
    background: #d9edff;
    border-radius: 50%;
    box-shadow: none;
    color: #0c82ff;
    display: inline-flex;
    font-size: 14px;
    height: 40px;
	isolation: isolate;
    justify-content: center;
    line-height: 1;
	position: relative;
    width: 40px;
	z-index: 1;
}

.hakago-banner-phone span::before {
	box-shadow: 0 0 0 17px rgba(12, 130, 255, 0.31);
	inset: -1px;
}

.hakago-banner-phone span img {
	display: block;
    height: 20px;
    object-fit: contain;
	position: relative;
    width: 20px;
	z-index: 2;
}

@keyframes hakago-floating-pulse {
	0% {
		opacity: 0.85;
		transform: scale(1);
	}

	100% {
		opacity: 0;
		transform: scale(1.7);
	}
}

.hakago-banner-benefits {
	border-bottom: 1px solid #eef2ff;
	min-height: 76px;
	padding: 20px 0px;
}

.hakago-benefit-item {
	color: #0024A7;
	gap: 10px;
	min-height: 76px;
}

.hakago-benefit-icon {
	display: block;
	height: 30px;
	object-fit: contain;
	width: 30px;
}

.hakago-benefit-item strong {
	color: #0024A7;
    display: block;
    font-size: 24px;
    font-family: 'Montserrat';
    font-weight: Bold;
    line-height: 1;
    text-align: left;

}

.hakago-benefit-item small {
	color: #0024A7;
	display: block;
	font-size: 18px;
	font-weight: 600;
	margin-top: 3px;
}

.hakago-banner-partners {
	background: #0138bd;
	color: #fff;
	min-height: 88px;
	padding: 30px;
}

.hakago-banner-stats {
	gap: 20px;
	min-height: 58px;
}

@media screen and (min-width: 992px) {
	.hakago-banner-stats {
		margin-top: 39px;
	}
}

.hakago-banner-stats div {
	border-right: 1px solid rgba(255, 255, 255, 0.28);
	align-items: center;
	column-gap: 10px;
	display: grid;
	grid-template-columns: 42px auto;
	min-width: 120px;
	padding-right: 17px;
}

.hakago-banner-stats div:last-child {
	border-right: 0;
}

.hakago-banner-stats svg {
	display: block;
	grid-row: 1 / 3;
	height: auto;
	max-height: 40px;
	width: 40px;
}

.hakago-banner-stats strong,
.hakago-banner-stats small {
	display: block;
	line-height: 1;
	margin-left: 0;
}

.hakago-banner-stats strong {
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	margin-top: 0;
}

.hakago-banner-stats small {
	color: #fff;
	font-size: 18px;
	font-weight: 500;
	margin-top: 4px;
}

.hakago-partner-box p {
	color: #fff;
	font-size: 24px;
	font-weight: 600;
	line-height: 1;
	text-align: center;
	margin-bottom: 15px !important;
}

.hakago-partner-logos {
	background: #fff;
	border-radius: 10px;
	gap: 12px;
	min-height: 43px;
	padding: 8px 13px;
}

.hakago-partner-logos img {
	display: block;
	height: 40px;
	max-width: 100px;
	object-fit: contain;
	width: auto;
}

.hakago-partner-slider {
	align-items: center;
	background: #fff;
	border-radius: 10px;
	display: grid;
	gap: 8px;
	grid-template-columns: 28px minmax(0, 1fr) 28px;
	min-height: 43px;
	padding: 8px 10px;
}

.hakago-partner-slider__viewport {
	overflow-x: auto;
	scroll-behavior: smooth;
	scrollbar-width: none;
}

.hakago-partner-slider__viewport::-webkit-scrollbar {
	display: none;
}

.hakago-partner-slider__track {
	display: flex;
	gap: 12px;
	scroll-snap-type: x mandatory;
}

.hakago-partner-slider__item {
	align-items: center;
	display: flex;
	flex: 0 0 calc((100% - 60px) / 6);
	justify-content: center;
	scroll-snap-align: start;
}

.hakago-partner-slider__item img {
	display: block;
	height: 40px;
	max-width: 100px;
	object-fit: contain;
	width: auto;
}

.hakago-partner-slider__button {
	align-items: center;
	background: #0530ce;
	border: 0;
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	font-size: 20px;
	height: 28px;
	justify-content: center;
	line-height: 1;
	padding: 0;
	width: 28px;
}

.hakago-problem-section {
	background: #fff url("assets/images/bg-s.png") center top / cover no-repeat;
	/* border-top: 8px solid #0024a7; */
	overflow: hidden;
	padding: 39px 0 0;
	position: relative;
}


.hakago-problem-title {
	color: #0530ce;
	font-size: 45px;
	line-height: 1;
	margin: 0 0 32px;
	position: relative;
	z-index: 2;
}

.hakago-problem-warning {
	display: none;
	height: 292px;
	position: absolute;
	right: -76px;
	top: -2px;
	width: 292px;
	z-index: 1;
}

.hakago-problem-grid {
	display: grid;
	gap: 36px 20px;
	grid-template-columns: repeat(3, 300px);
	padding-bottom: 72px;
	position: relative;
	z-index: 2;
}

.hakago-problem-card {
	align-items: center;
	background-image: url("assets/images/frame.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	color: #0530ce;
	display: flex;
	justify-content: center;
	min-height: 160px;
	padding: 22px 24px 16px 18px;
	position: relative;
	text-align: center;
}

.hakago-problem-card::after {
	content: none;
}

.hakago-problem-card p {
	color: #0530ce;
    font-size: 24px;
    line-height: 28px;
    margin: 0;
}

.hakago-problem-card:nth-child(1) {
	grid-column: 1;
}

.hakago-problem-card:nth-child(2) {
	grid-column: 2;
}

.hakago-problem-card:nth-child(3) {
	grid-column: 1;
}

.hakago-problem-card:nth-child(4) {
	grid-column: 2;
}

.hakago-problem-card:nth-child(5) {
	grid-column: 3;
}

.hakago-solution-section {
	overflow: visible;
	padding-bottom: 13px;
}

.hakago-solution-strip {
	background: transparent;
	color: #fff;
	min-height: 73px;
	padding: 25px 42px 25px 120px;
	position: relative;
	width: calc(100% + ((100vw - 100%) / 2));
}

.hakago-solution-strip::before {
	background: #0024a7;
	clip-path: polygon(5.5% 0, 100% 0, 100% 100%, 0 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: 0;
}

.hakago-solution-strip::after {
	background: #ff3043;
	bottom: -10px;
	content: "";
	height: 10px;
	position: absolute;
	right: 0;
	transform: skewX(-28deg);
	width: max(154px, calc(154px + ((100vw - 100%) / 2)));
	z-index: 0;
}

.hakago-solution-heading,
.hakago-solution-list {
	position: relative;
	z-index: 1;
}


.hakago-solution-heading h3 {
	color: #fff;
	font-size: 45px;
	font-weight: 900;
	line-height: 1;
	margin: 0 0 7px;
}

.hakago-solution-heading p {
	color: #fff;
	font-size: 24px;
	font-family: 'Montserrat';
	line-height: 1;
	margin: 0;
}

.hakago-solution-list {
	gap: 54px;
}

.hakago-solution-list div {
	align-items: center;
	color: #fff;
	display: flex;
	font-size: 24px;
	font-family: 'Montserrat';
	gap: 8px;
	line-height: 28px;
	max-width: 300px;
}

.hakago-solution-list i {
	color: #b7cbff;
	font-size: 20px;
	line-height: 1;
}

.hakago-special-goods-section {
	background: #fff;
	padding: 42px 0 55px;
}

.hakago-special-goods-frame-wrap {
	margin-bottom: 31px;
	max-width: 100%;
}

.hakago-special-goods-frame {
	height: auto;
	max-width: 100%;
	width: 100%;
}

.hakago-special-goods-frame-text {
	left: 6.5%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 34%;
	z-index: 1;
}

.hakago-special-goods-frame-text h2 {
	color: #0530ce;
	font-family: "Lexend", sans-serif;
	font-size: 45px;
	font-weight: 800;
	line-height: 1.15;
	margin: 0 0 8px;
}

.hakago-special-goods-frame-text p {
	color: #0530ce;
	font-family: "Montserrat", sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.18;
	margin: 0;
}

.hakago-special-goods-grid {
	row-gap: 35px;
}

.hakago-special-goods-card {
	margin: 0 auto;
	text-align: center;
}

.hakago-special-goods-card__image {
	border-radius: 8px;
	position: relative;
}

.hakago-special-goods-card img {
	border-radius: 8px;
	display: block;
	object-fit: cover;
	width: 100%;
}

.hakago-special-goods-card__label {
	background: #0530ce;
	border-radius: 999px;
	bottom: -16px;
	box-shadow: 0 4px 10px rgba(0, 30, 150, 0.16);
	color: #fff;
	display: inline-flex;
	font-size: 18px;
	justify-content: center;
	left: 50%;
	line-height: 1;
	min-width: 154px;
	padding: 10px 18px 10px;
	position: absolute;
	transform: translateX(-50%);
	white-space: nowrap;
}

.hakago-special-goods-card__label--red {
	background: #ff3043;
}

.hakago-special-goods-card p {
	color: #6f6f6f;
	font-size: 18px;
	font-weight: 400;
	line-height: 24px;
	margin: 28px auto 0;
	max-width: 250px;
}

.hakago-restricted-section {
	background: #0024a7;
	padding: 27px 0;
}

.hakago-restricted-card {
	border-radius: 37px;
	color: #0530ce;
	min-height: 279px;
	padding: 28px 18px;
}

.hakago-restricted-card__image {
	display: block;
	width: 76px;
	height: 76px;
	object-fit: contain;
	margin-bottom: 25px;
}

.hakago-restricted-card p {
	color: #0530ce;
	font-size: 18px;
	font-weight: 400;
	line-height: 25px;
	margin: 0;
	max-width: 214px;
}

.hakago-process-section {
	background: linear-gradient(90deg, #fff 0%, #eef8ff 50%, #dff1ff 100%);
	padding: 56px 0 130px;
}

.hakago-process-section .container {
	max-width: 1024px;
}

.hakago-process-title {
	background: #0530ce;
	border-radius: 999px;
	color: #fff;
	display: table;
	font-size: 45px;
	font-weight: bold;
	line-height: 1;
	margin: 0 auto 48px;
	min-width: 174px;
	padding: 12px 32px 13px;
}

.hakago-process-map {
	height: auto;
	margin-left: auto;
	margin-right: auto;
	max-width: 1024px;
	text-align: center;
}

.hakago-process-image {
	height: auto;
	max-width: 100%;
	width: 100%;
}

.hakago-process-item {
	position: absolute;
	text-align: center;
	width: 148px;
	z-index: 2;
}

.hakago-process-item--1 { left: 78px; top: 0; }
.hakago-process-item--2 { right: 115px; top: 0; }
.hakago-process-item--3 { left: 50%; top: 122px; transform: translateX(-50%); }
.hakago-process-item--4 { left: 0; bottom: 0; }
.hakago-process-item--5 { left: 50%; bottom: 0; transform: translateX(-50%); }
.hakago-process-item--6 { right: 0; bottom: 0; }

.hakago-process-photo {
	background: #fff;
	border-radius: 5px;
	box-shadow: 0 8px 18px rgba(0, 53, 170, 0.12);
	height: 89px;
	overflow: hidden;
	position: relative;
}

.hakago-process-photo::before,
.hakago-process-photo::after {
	content: "";
	position: absolute;
}

.hakago-process-photo--info {
	background:
		linear-gradient(90deg, rgba(255,255,255,0.45), rgba(255,255,255,0)),
		linear-gradient(135deg, #dfe8ef, #fff);
}

.hakago-process-photo--info::before {
	background: linear-gradient(180deg, #ffd2b4 0 22%, #fff 22% 58%, #d7b08b 58%);
	border-radius: 30px 30px 6px 6px;
	height: 74px;
	left: 56px;
	top: 12px;
	width: 38px;
}

.hakago-process-photo--info::after {
	background: #fff;
	border: 3px solid #d0d8e2;
	border-radius: 3px;
	bottom: 8px;
	height: 35px;
	left: 26px;
	width: 70px;
}

.hakago-process-photo--quote {
	background: linear-gradient(135deg, #1d2430, #e9eef5 54%, #ffffff);
}

.hakago-process-photo--quote::before {
	background: #111827;
	border-radius: 6px;
	height: 72px;
	left: 15px;
	top: 8px;
	width: 52px;
}

.hakago-process-photo--quote::after {
	background: #eef7ff;
	border: 4px solid #111827;
	border-radius: 8px;
	height: 68px;
	right: 23px;
	top: 10px;
	width: 39px;
}

.hakago-process-photo--pickup {
	background: linear-gradient(135deg, #f5f5f5, #dce8f6);
}

.hakago-process-photo--pickup::before {
	background: linear-gradient(180deg, #e92833 0 36%, #0638b8 36%);
	border-radius: 8px 8px 0 0;
	height: 76px;
	left: 38px;
	top: 10px;
	width: 42px;
}

.hakago-process-photo--pickup::after {
	background: #c28b52;
	border: 3px solid #a66d35;
	border-radius: 3px;
	bottom: 18px;
	height: 35px;
	right: 30px;
	width: 55px;
}

.hakago-process-photo--paper {
	background: linear-gradient(135deg, #ecf1f5, #fff);
}

.hakago-process-photo--paper::before {
	background: linear-gradient(180deg, #ffd6b8 0 22%, #1e3d6e 22% 60%, #0f172a 60%);
	border-radius: 24px 24px 6px 6px;
	height: 74px;
	left: 38px;
	top: 12px;
	width: 38px;
}

.hakago-process-photo--paper::after {
	background: #fff;
	border: 3px solid #b7c4d6;
	border-radius: 3px;
	height: 48px;
	right: 22px;
	top: 20px;
	width: 48px;
}

.hakago-process-photo--flight {
	background: linear-gradient(180deg, #2da5ec, #e7f8ff);
}

.hakago-process-photo--flight::before {
	background: #fff;
	clip-path: polygon(0 44%, 100% 0, 70% 49%, 100% 100%, 0 58%);
	height: 42px;
	left: 38px;
	top: 23px;
	transform: rotate(-10deg);
	width: 88px;
}

.hakago-process-photo--deliver {
	background: linear-gradient(135deg, #f3f7fb, #fff);
}

.hakago-process-photo--deliver::before {
	background: linear-gradient(180deg, #e92833 0 35%, #0530ce 35%);
	border-radius: 9px 9px 0 0;
	height: 80px;
	left: 38px;
	top: 8px;
	width: 42px;
}

.hakago-process-photo--deliver::after {
	background: linear-gradient(180deg, #ffd4b8 0 28%, #4b5563 28%);
	border-radius: 24px 24px 6px 6px;
	height: 68px;
	right: 32px;
	top: 18px;
	width: 34px;
}

.hakago-process-item span {
	background: #0530ce;
	border-radius: 999px;
	color: #fff;
	display: inline-block;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	margin-top: -9px;
	min-width: 63px;
	padding: 5px 11px;
	position: relative;
	z-index: 3;
}

.hakago-process-item p {
	color: #0530ce;
	font-size: 10px;
	font-weight: 800;
	line-height: 13px;
	margin: 4px 0 0;
}

.hakago-process-line {
	position: absolute;
	z-index: 1;
}

.hakago-process-line::after {
	border-bottom: 6px solid transparent;
	border-left: 8px solid #0530ce;
	border-top: 6px solid transparent;
	content: "";
	position: absolute;
}

.hakago-process-line--top {
	background: #0530ce;
	height: 2px;
	left: 226px;
	top: 54px;
	width: 83px;
}

.hakago-process-line--top::after {
	right: -2px;
	top: -5px;
}

.hakago-process-line--right {
	border: 2px solid #0530ce;
	border-left: 0;
	border-radius: 0 60px 60px 0;
	height: 113px;
	right: 92px;
	top: 54px;
	width: 118px;
}

.hakago-process-line--right::after {
	border-left: 0;
	border-right: 8px solid #0530ce;
	left: -5px;
	top: 104px;
}

.hakago-process-line--middle {
	background: #0530ce;
	height: 2px;
	left: 158px;
	top: 169px;
	width: 185px;
}

.hakago-process-line--middle::after {
	border-left: 0;
	border-right: 8px solid #0530ce;
	left: -3px;
	top: -5px;
}

.hakago-process-line--left {
	background: #0530ce;
	height: 93px;
	left: 65px;
	top: 169px;
	width: 2px;
}

.hakago-process-line--left::after {
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 8px solid #0530ce;
	left: -5px;
	top: 88px;
}

.hakago-process-line--bottom {
	background: #0530ce;
	bottom: 44px;
	height: 2px;
	left: 148px;
	width: 357px;
}

.hakago-process-line--bottom::after {
	right: -2px;
	top: -5px;
}

.hakago-service-commitment-section {
	padding: 43px 0 73px;
    margin-top: -75px;
}

.hakago-service-title {
	background: #fff;
    border-radius: 50px 50px 0 0;
    color: #0530ce;
    display: table;
    font-size: 45px;
    font-weight: 800;
    line-height: 1;
    margin: -21px auto 49px;
    padding: 9px 60px 18px;
}

.hakago-service-flow {
	margin-left: auto;
	margin-right: auto;
}

.hakago-service-flow .col {
	position: relative;
}

.hakago-service-flow .col:not(:last-child)::after {
	background: #0530ce;
	content: "";
	height: 2px;
	position: absolute;
	right: -5px;
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
	z-index: 0;
}

.hakago-service-flow .col:not(:last-child)::before {
	border-bottom: 4px solid transparent;
	border-left: 6px solid #0530ce;
	border-top: 4px solid transparent;
	content: "";
	position: absolute;
	right: -12px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
}

.hakago-service-step {
	background: #fff;
	align-items: center;
	border: 1px solid #93a9d5;
	border-radius: 8px;
	color: #0530ce;
	display: flex;
	justify-content: center;
	min-height: 160px;
	padding: 34px 8px 18px;
	position: relative;
	transition: background-color 0.25s ease;
	cursor: pointer;
}

.hakago-service-step--active,
.hakago-service-step:hover,
.hakago-service-step:focus-within {
	background: #dff3ff;
}

.hakago-service-icon {
	align-items: center;
    left: 50%;
    position: absolute;
    top: -35px;
    transform: translateX(-50%);
    width: 60px;
}

.hakago-service-icon img {
	display: block;
}

.hakago-service-step p {
	font-family: 'Montserrat';
    color: #0530ce;
    font-size: 18px;
    font-weight: 500;
    line-height: 18px;
    text-align: center;
    margin: 0 auto;
}

.hakago-social-proof-section {
	background: #f1f1f7;
	padding: 80px 0 80px;
}


.hakago-proof-title {
	color: #0530ce;
	font-size: 30px;
	font-weight: bold;
	line-height: 1;
	font-family: "Montserrat";
	margin-bottom: 18px;
}

.hakago-review-card {
	background: #fff;
    border: 1px solid #738fcf;
    border-radius: 5px;
	display: flex;
	flex-direction: column;
	min-height: 204px;
    overflow: hidden;
    padding: 15px;
}

.hakago-review-card--link {
	color: inherit;
	text-decoration: none;
}

.hakago-review-card--link:hover {
	color: inherit;
	text-decoration: none;
}

.hakago-review-author {
	gap: 6px;
	margin-bottom: 7px;
}

.hakago-review-author span {
	background: linear-gradient(135deg, #9fc8ff, #815d32);
	border-radius: 50%;
	display: block;
	flex: 0 0 21px;
	height: 21px;
	width: 21px;
}

.hakago-review-avatar {
	border-radius: 50%;
	display: block;
	flex: 0 0 21px;
	height: 21px;
	object-fit: cover;
	width: 21px;
}

.hakago-review-author strong {
	color: #0530ce;
	display: block;
	font-size: 14px;
	line-height: 8px;
}

.hakago-review-author small {
	color: #515b79;
    display: block;
    font-size: 12px;
    font-weight: 500;
    margin-top: 10px;
}

.hakago-review-card p {
	color: #1d2f65;
	font-size: 14px;
	line-height: 16px;
	margin-bottom: 7px;
}

.hakago-review-photo {
	border-radius: 3px;
	display: block;
	height: 108px;
	margin-top: auto;
	object-fit: cover;
	overflow: hidden;
	width: 100%;
}

.hakago-review-slider {
	overflow: hidden;
	position: relative;
}

.hakago-review-slider__viewport {
	overscroll-behavior-x: contain;
	overflow-x: auto;
	scroll-padding-left: 1px;
	scroll-behavior: smooth;
	scrollbar-width: none;
}

.hakago-review-slider__viewport::-webkit-scrollbar {
	display: none;
}

.hakago-review-slider__track {
	display: flex;
	gap: 0;
}

.hakago-review-slide {
	flex: 0 0 auto;
	height: auto;
}

.hakago-review-slider__controls {
	display: flex;
	gap: 10px;
	justify-content: flex-end;
	margin-top: 14px;
}

.hakago-review-slider__button {
	align-items: center;
	appearance: none;
	background: #0530ce;
	border: 0;
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	font-size: 24px;
	font-weight: 700;
	height: 34px;
	justify-content: center;
	line-height: 0;
	padding: 0;
	text-align: center;
	width: 34px;
}

.hakago-review-slider__button:first-child {
	padding-bottom: 2px;
}

.hakago-review-slider__button:last-child {
	padding-bottom: 2px;
}

.hakago-review-photo--one {
	background:
		linear-gradient(90deg, rgba(237, 174, 42, 0.9) 0 48%, transparent 48%),
		linear-gradient(135deg, #ffd15c, #b16d10);
}

.hakago-review-photo--two {
	background:
		repeating-linear-gradient(90deg, rgba(220, 40, 48, 0.7) 0 10px, rgba(247, 204, 66, 0.75) 10px 20px, rgba(20, 137, 82, 0.65) 20px 30px),
		linear-gradient(#fff, #dce9ff);
}

.hakago-review-photo--three {
	background:
		radial-gradient(circle at 70% 32%, #ffce55 0 16px, transparent 17px),
		linear-gradient(135deg, #8b4e2a, #f4d48f 52%, #a6322d);
}

.hakago-press-card {
	align-items: center;
	background: #fff;
	border: 1px solid #738fcf;
	border-radius: 5px;
	display: flex;
	justify-content: center;
	min-height: 204px;
	padding: 29px 35px;
}

.hakago-press-grid {
	align-items: center;
	display: grid;
	gap: 29px 22px;
	grid-template-columns: repeat(3, 1fr);
	justify-items: center;
	width: 100%;
}

.hakago-press-grid img {
	display: block;
	height: 50px;
	max-width: 120px;
	object-fit: contain;
	width: 100%;
}

.hakago-press-logo-button {
	appearance: none;
	background: transparent;
	border: 0;
	cursor: pointer;
	padding: 0;
}

.hakago-press-logo-button:focus-visible {
	outline: 2px solid #0530ce;
	outline-offset: 6px;
}

.hakago-press-popup {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	transition: opacity 0.2s ease;
	z-index: 9999;
}

.hakago-press-popup.is-open {
	opacity: 1;
	pointer-events: auto;
}

.hakago-press-popup__overlay {
	background: rgba(0, 0, 0, 0.55);
	inset: 0;
	position: absolute;
}

.hakago-press-popup__dialog {
	background: #fff;
	border-radius: 18px;
	box-shadow: 0 24px 70px rgba(3, 33, 90, 0.22);
	max-height: calc(100vh - 40px);
	max-width: 850px;
	overflow-y: auto;
	padding: 34px;
	position: relative;
	width: calc(100% - 32px);
	z-index: 1;
}

.hakago-press-popup__dialog h3 {
	color: #0530ce;
	font-family: "Lexend", sans-serif;
	font-size: 28px;
	font-weight: 700;
	margin: 0 44px 24px 0;
}

.hakago-press-popup__close {
	align-items: center;
	appearance: none;
	background: #ec2029;
	border: 0;
	border-radius: 50%;
	color: #fff;
	display: flex;
	font-size: 0;
	height: 38px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: 22px;
	top: 22px;
	width: 38px;
}

.hakago-press-popup__close::before,
.hakago-press-popup__close::after {
	background: #fff;
	border-radius: 999px;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	top: 50%;
	width: 16px;
}

.hakago-press-popup__close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.hakago-press-popup__close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.hakago-press-popup__list {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hakago-press-popup__article {
	background: #f7fbff;
	border: 1px solid #d9e6ff;
	border-radius: 14px;
	color: #1d2f65;
	display: block;
	overflow: hidden;
	text-decoration: none;
}

.hakago-press-popup__article:hover {
	color: #0530ce;
	text-decoration: none;
}

.hakago-press-popup__article img {
	display: block;
	height: 150px;
	object-fit: cover;
	width: 100%;
}

.hakago-press-popup__article strong {
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.35;
	padding: 14px 16px 16px;
}

body.hakago-press-popup-open {
	overflow: hidden;
}

@media (max-width: 575.98px) {
	.hakago-press-popup__dialog {
		padding: 28px 18px;
	}

	.hakago-press-popup__dialog h3 {
		font-size: 22px;
	}

	.hakago-press-popup__list {
		grid-template-columns: 1fr;
	}
	.hakago-partner-box {
		margin-top: 40px;
	}
	.hakago-problem-title {
		font-size: 30px;
	}
	.hakago-problem-card p {
		font-size: 16px;
		line-height: 20px;
	}
	.hakago-problem-card {
		align-items: center;
		background-image: url(assets/images/frame.png);
		background-position: center;
		background-repeat: no-repeat;
		background-size: 100% 100%;
		color: #0530ce;
		display: flex;
		justify-content: center;
		min-height: 100px;
		padding: 10px 24px 16px 18px;
		position: relative;
		text-align: center;
	}
}

.hakago-express-section {
	background: #fff;
	padding: 45px 0 60px;
}


.hakago-express-title {
	color: #0530ce;
	font-size: 45px;
	font-weight: 900;
	line-height: 45px;
	margin: 0 0 23px;
	font-family: "Lexend";
}

.hakago-country-tabs {
    gap: 30px;
    margin-bottom: 30px;
    overflow: visible;
}

.hakago-country-tab {
	text-align: center;
}

.hakago-country-tab span {
	display: block;
	font-size: 35px;
	line-height: 1;
	margin-bottom: 5px;
}

.hakago-country-tab strong {
    color: #0530ce;
    display: block;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    text-transform: uppercase;
}
.hakago-rate-card {
	background: #eef5ff;
	border-radius: 26px;
	padding: 18px 24px 42px;
	position: relative;
	text-align: center;
}

.hakago-rate-head,
.hakago-rate-row {
	align-items: center;
	grid-template-columns: 1fr 1.45fr;
}

.hakago-rate-head {
	gap: 26px;
	margin-bottom: 10px;
}

.hakago-rate-head span {
	background: #0530ce;
	border-radius: 999px;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	line-height: 1;
	padding: 9px 18px;
}

.hakago-rate-head span:first-child {
	background: #c9ecff;
	color: #0530ce;
}

.hakago-rate-row {
	gap: 26px;
	margin-bottom: 7px;
	position: relative;
}

.hakago-rate-row::after {
	background: #a6b9ff;
	content: "";
	height: 1px;
	left: calc(38% + 2px);
	position: absolute;
	top: 50%;
	width: 25px;
}

.hakago-rate-row span {
	background: #c9ecff;
	border-radius: 999px;
	color: #0530ce;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
	padding: 7px 14px;
}

.hakago-express-button,
.hakago-express-button:visited {
	background: #ff3043;
	border-radius: 9px;
	bottom: -20px;
	color: #fff;
	font-size: 24px;
	gap: 10px;
	left: 50%;
	line-height: 1;
	padding: 12px 15px 11px;
	position: absolute;
	text-transform: uppercase;
	transform: translateX(-50%);
	white-space: nowrap;
}

.hakago-express-button span {
	font-size: 25px;
	font-weight: 400;
	line-height: 0.55;
}

.hakago-express-image {
	margin-bottom: 18px;
	max-height: 330px;
	object-fit: contain;
	width: min(100%, 430px);
}

.hakago-crane-box {
	height: 330px;
	position: relative;
}

.hakago-crane-arm {
	background: linear-gradient(135deg, #0b2548, #173c6c);
	border-radius: 0 0 16px 16px;
	height: 160px;
	left: 52%;
	position: absolute;
	top: -45px;
	transform: translateX(-50%) rotate(17deg);
	width: 74px;
}

.hakago-crane-arm::before {
	background: #0b2548;
	border-radius: 10px;
	content: "";
	height: 115px;
	left: -18px;
	position: absolute;
	top: 105px;
	transform: rotate(28deg);
	width: 12px;
}

.hakago-crane-arm::after {
	background: #0b2548;
	border-radius: 10px;
	content: "";
	height: 115px;
	position: absolute;
	right: -18px;
	top: 105px;
	transform: rotate(-28deg);
	width: 12px;
}

.hakago-crane-claw {
	border-left: 28px solid transparent;
	border-right: 28px solid transparent;
	border-top: 72px solid #112a50;
	height: 0;
	left: 52%;
	position: absolute;
	top: 105px;
	transform: translateX(-50%);
	width: 0;
}

.hakago-crane-package {
	background: linear-gradient(135deg, #f3c37e, #d4954c);
	box-shadow: 0 18px 35px rgba(0, 0, 0, 0.18);
	height: 142px;
	left: 52%;
	position: absolute;
	top: 155px;
	transform: translateX(-50%) skewY(-3deg);
	width: 210px;
}

.hakago-crane-package::before {
	background: rgba(255, 255, 255, 0.18);
	content: "";
	inset: 0 50% 0 0;
	position: absolute;
}

.hakago-package-logo {
	color: #0530ce;
	font-size: 18px;
	font-weight: 900;
	left: 28px;
	position: absolute;
	top: 60px;
}

.hakago-package-logo--right {
	left: auto;
	right: 26px;
}

.hakago-express-note {
	color: #ff3043;
	font-size: 24px;
	font-weight: bold;
	margin: -3px 0 10px;
}

.hakago-factor-grid {
	border-top: 1px solid #9eb5ff;
	border-bottom: 1px solid #9eb5ff;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-left: auto;
	margin-right: auto;
}

.hakago-factor-grid div {
	border-left: 1px solid #9eb5ff;
	color: #0530ce;
	min-height: 68px;
	padding: 9px;
	text-align: center;
}

.hakago-factor-grid div:first-child {
	border-left: 0;
}

.hakago-factor-grid i {
	display: block;
	font-size: 40px;
	line-height: 1;
	margin-bottom: 5px;
}

.hakago-factor-grid span {
	display: block;
	font-size: 18px;
	font-family: 'Montserrat';
	line-height: 24px;
}

.hakago-saving-row {
	margin-top: 41px;
}

.hakago-saving-card {
	background: #eef5ff;
	border-radius: 18px;
	gap: 20px;
	min-height: 116px;
	padding: 0 24px 0 20px;
}

.hakago-saving-box {
	align-items: center;
	display: flex;
	flex: 0 0 138px;
	height: 132px;
	justify-content: center;
	margin-top: -17px;
	position: relative;
}

.hakago-saving-box--carton {
	background: linear-gradient(135deg, #f2c27e, #d49a57);
	clip-path: polygon(18% 12%, 64% 0, 100% 24%, 88% 88%, 35% 100%, 0 72%);
}

.hakago-saving-box--wood {
	background:
		linear-gradient(90deg, rgba(123, 77, 34, 0.18) 1px, transparent 1px),
		linear-gradient(rgba(123, 77, 34, 0.18) 1px, transparent 1px),
		linear-gradient(135deg, #f2c990, #c99052);
	background-size: 28px 28px, 28px 28px, auto;
	border: 4px solid #d4a16a;
}

.hakago-saving-box span {
	color: #0530ce;
	font-size: 12px;
	font-weight: 900;
}

.hakago-saving-image {
	flex: 0 0 180px;
	margin-top: -17px;
	object-fit: contain;
	max-width: 180px;
}

.hakago-saving-content {
	align-items: center;
	display: flex;
	flex: 1;
	flex-direction: column;
}

.hakago-saving-label {
	background: #4777ff;
	color: #fff;
	display: block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	margin: 0 auto;
	min-width: 96px;
	padding: 6px 10px;
	text-align: center;
}

.hakago-saving-card h3 {
	background: #0530ce;
	border-radius: 8px;
	color: #fff;
	display: inline-block;
	font-size: 24px;
	line-height: 1;
	margin: 0 0 10px;
	padding: 8px 18px;
}

.hakago-saving-card p {
	color: #0530ce;
	font-size: 24px;
	font-family: 'Montserrat';
	margin: 0;
}

.hakago-saving-card strong {
	font-size: 30px;
}
	
.hakago-why-section {
	background: url("assets/images/Mask group (1).png") center / cover no-repeat;
	padding: 47px 0 52px;
}


.hakago-why-title {
	color: #0530ce;
	font-size: 30px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 30px;
	font-family: "Lexend";
}

.hakago-why-card-row {
	margin-left: auto;
	margin-right: auto;
}

.hakago-why-card {
	background: #fff;
	border-radius: 6px;
	box-shadow: 0 7px 20px rgba(0, 53, 170, 0.07);
	overflow: hidden;
}

.hakago-why-card h3 {
	align-items: center;
	color: #0530ce;
	display: flex;
	font-size: 18px;
	font-weight: bold;
	font-family: "Montserrat";
	justify-content: center;
	line-height: 22px;
	margin: 0;
	min-height: 53px;
	padding: 10px 12px;
	text-align: center;
}

.hakago-why-visual {
	height: 114px;
	position: relative;
}

.hakago-why-card-image {
	display: block;
	height: 195px;
	object-fit: cover;
	width: 100%;
}

.hakago-why-visual--partners {
	align-content: center;
	display: grid;
	gap: 7px 10px;
	grid-template-columns: repeat(2, 1fr);
	justify-items: center;
	padding: 15px 18px 8px;
}

.hakago-why-visual--partners span {
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
}

.hakago-why-visual--partners span:nth-child(1) { color: #1760b8; font-size: 13px; }
.hakago-why-visual--partners span:nth-child(2) { background: #3b2600; border-radius: 4px; color: #ffbd00; padding: 4px 5px; }
.hakago-why-visual--partners span:nth-child(3) { color: #5b3bbf; }
.hakago-why-visual--partners span:nth-child(4) { color: #e21e2d; }
.hakago-why-visual--partners span:nth-child(5) { color: #1688a6; grid-column: 1 / -1; }
.hakago-why-visual--partners span:nth-child(6) { color: #f1ba00; font-style: italic; grid-column: 1 / -1; }

.hakago-why-visual--service,
.hakago-why-visual--consult,
.hakago-why-visual--customs,
.hakago-why-visual--delivery {
	background: linear-gradient(135deg, #eef4f8, #fff);
}

.hakago-why-visual--service::before,
.hakago-why-visual--consult::before,
.hakago-why-visual--delivery::before {
	background: linear-gradient(180deg, #e92833 0 35%, #0530ce 35%);
	border-radius: 12px 12px 0 0;
	content: "";
	height: 96px;
	position: absolute;
	top: 18px;
	width: 48px;
}

.hakago-why-visual--service::before { right: 38px; }
.hakago-why-visual--consult::before { left: 52px; }
.hakago-why-visual--delivery::before { left: 40px; }

.hakago-why-visual--service::after,
.hakago-why-visual--consult::after,
.hakago-why-visual--delivery::after {
	background: linear-gradient(180deg, #ffd2b4 0 24%, #fff 24% 62%, #cfa17e 62%);
	border-radius: 28px 28px 7px 7px;
	content: "";
	height: 88px;
	left: 43px;
	position: absolute;
	top: 22px;
	width: 39px;
}

.hakago-why-visual--consult::after,
.hakago-why-visual--delivery::after {
	left: auto;
	right: 34px;
}

.hakago-why-visual--tracking {
	background: linear-gradient(135deg, #f4f7f8, #fff);
}

.hakago-why-visual--tracking::before {
	background: #111827;
	border-radius: 16px;
	box-shadow: 0 7px 16px rgba(0, 0, 0, 0.12);
	content: "";
	height: 92px;
	left: 58px;
	position: absolute;
	top: 13px;
	transform: rotate(-9deg);
	width: 48px;
}

.hakago-why-visual--tracking::after {
	background:
		radial-gradient(circle at 50% 78%, #ff7b00 0 4px, transparent 5px),
		linear-gradient(#eaf4ff 0 22%, #fff 22%);
	border-radius: 10px;
	content: "";
	height: 75px;
	left: 66px;
	position: absolute;
	top: 21px;
	transform: rotate(-9deg);
	width: 33px;
}

.hakago-why-visual--customs::before {
	background: linear-gradient(180deg, #ffd2b4 0 23%, #193866 23% 64%, #0f172a 64%);
	border-radius: 25px 25px 5px 5px;
	content: "";
	height: 88px;
	left: 51px;
	position: absolute;
	top: 20px;
	width: 38px;
}

.hakago-why-visual--customs::after {
	background: #fff;
	border: 4px solid #c7d2e2;
	border-radius: 4px;
	content: "";
	height: 55px;
	position: absolute;
	right: 31px;
	top: 29px;
	width: 53px;
}

.hakago-why-visual--network {
	background:
		radial-gradient(circle at 28% 42%, #0530ce 0 5px, transparent 6px),
		radial-gradient(circle at 55% 32%, #0530ce 0 4px, transparent 5px),
		radial-gradient(circle at 68% 58%, #0530ce 0 5px, transparent 6px),
		#fff;
}

.hakago-why-visual--network::before {
	background: #0530ce;
	clip-path: polygon(13% 39%, 26% 26%, 43% 30%, 53% 18%, 75% 25%, 90% 45%, 77% 69%, 57% 64%, 45% 80%, 28% 68%);
	content: "";
	inset: 20px;
	position: absolute;
}


.hakago-why-gallery {
	border-radius: 14px;
	display: block;
	object-fit: cover;
	overflow: hidden;
	width: 100%;
}

.hakago-why-gallery--one {
	background:
		repeating-linear-gradient(90deg, rgba(245, 221, 112, 0.92) 0 24px, rgba(205, 93, 51, 0.78) 24px 48px, rgba(76, 145, 94, 0.68) 48px 72px),
		linear-gradient(135deg, #f7f0c6, #d59a55);
}

.hakago-why-gallery--two {
	background:
		linear-gradient(90deg, transparent 48%, #b08243 48% 52%, transparent 52%),
		linear-gradient(#d0a057 0 46%, #8d6b35 46% 52%, #d0a057 52%),
		#f4f4f4;
}

.hakago-why-gallery--three {
	background:
		repeating-linear-gradient(90deg, rgba(244, 231, 196, 0.95) 0 34px, rgba(90, 66, 50, 0.7) 34px 62px, rgba(195, 80, 54, 0.65) 62px 82px),
		linear-gradient(135deg, #ede6d7, #a96d55);
}

.hakago-why-gallery--four {
	background:
		repeating-linear-gradient(0deg, #fff 0 22px, #def3e6 22px 44px),
		repeating-linear-gradient(90deg, rgba(0, 140, 72, 0.35) 0 44px, transparent 44px 88px);
}

.hakago-quote-faq-section {
	background: #fff;
	padding: 63px 0 48px;
}


.hakago-quote-faq-title {
	color: #0530ce;
	font-size: 45px;
	font-weight: bold;
	letter-spacing: -0.02em;
	line-height: 1;
	margin-bottom: 20px;
}

.hakago-quote-faq-form {
	background: linear-gradient(180deg, #0150D9 0%, #013999 100%);
	border-radius: 20px;
	box-shadow: 0 8px 16px rgba(0, 53, 170, 0.12);
	padding: 20px 20px 21px;
}

.hakago-quote-faq-brand {
	color: #fff;
	line-height: 1;
	margin-bottom: 23px;
}

.hakago-quote-faq-brand img {
	display: block;
	height: auto;
	margin: 0 auto;
	max-width: 180px;
	width: 100%;
}

.hakago-quote-faq-grid {
	display: grid;
	gap: 16px 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hakago-quote-faq-grid input,
.hakago-quote-faq-grid textarea {
	background: #f8fbff;
	border: 0;
	border-radius: 7px;
	box-shadow: none;
	box-sizing: border-box;
	color: #1c2b4f;
	font-size: 16px;
	min-height: 27px;
	padding: 8px 14px;
	width: 100%;
}

.hakago-quote-faq-grid input:hover,
.hakago-quote-faq-grid input:focus,
.hakago-quote-faq-grid textarea:hover,
.hakago-quote-faq-grid textarea:focus {
	border: 0;
	box-shadow: none;
	outline: 0;
}

.hakago-quote-faq-grid input:first-of-type,
.hakago-quote-faq-grid input:nth-of-type(n + 4),
.hakago-quote-faq-grid textarea,
.hakago-quote-faq-grid input:last-of-type {
	grid-column: 1 / -1;
}

.hakago-quote-faq-grid textarea {
	resize: vertical;
}

.hakago-quote-faq-grid input::placeholder,
.hakago-quote-faq-grid textarea::placeholder {
	color: #565e72;
	opacity: 1;
}

.hakago-quote-faq-button {
	align-items: center;
	background: #ff3043;
	border: 0;
	border-radius: 8px;
	color: #fff;
	display: flex;
	font-size: 15px;
	gap: 9px;
	justify-content: center;
	line-height: 1;
	margin: 20px auto 0;
	padding: 12px 17px 11px;
	text-transform: uppercase;
}

.hakago-quote-faq-button span {
	font-size: 25px;
	font-weight: 400;
	line-height: 0.55;
}

.hakago-quote-faq-notice {
	border-radius: 7px;
	font-size: 12px;
	font-weight: 700;
	margin-bottom: 10px;
	padding: 10px 12px;
}

.hakago-quote-faq-notice--success {
	background: #dcfce7;
	color: #166534;
}

.hakago-quote-faq-notice--error {
	background: #fee2e2;
	color: #991b1b;
}

.hakago-quote-popup {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	transition: opacity 0.2s ease;
	z-index: 10000;
}

.hakago-quote-popup.is-open {
	opacity: 1;
	pointer-events: auto;
}

.hakago-quote-popup__overlay {
	background: rgba(0, 20, 70, 0.62);
	inset: 0;
	position: absolute;
}

.hakago-quote-popup__dialog {
	background: #fff;
	border-radius: 22px;
	box-shadow: 0 24px 70px rgba(0, 34, 110, 0.28);
	max-height: calc(100vh - 36px);
	max-width: 540px;
	overflow-y: auto;
	position: relative;
	width: calc(100% - 32px);
	z-index: 1;
}

.hakago-quote-popup__title {
	color: #0530ce;
	font-size: 34px;
	font-weight: 800;
	line-height: 1.1;
	margin: 0 54px 20px 0;
}

.hakago-quote-popup__form {
	margin: 0;
}

.hakago-quote-popup__close {
	align-items: center;
	appearance: none;
	background: #ec2029;
	border: 0;
	border-radius: 50%;
	color: #fff;
	display: flex;
	font-size: 0;
	height: 42px;
	justify-content: center;
	position: absolute;
	right: 22px;
	top: 22px;
	width: 42px;
}

.hakago-quote-popup__close::before,
.hakago-quote-popup__close::after {
	background: #fff;
	border-radius: 999px;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	top: 50%;
	width: 18px;
}

.hakago-quote-popup__close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.hakago-quote-popup__close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

body.hakago-quote-popup-open {
	overflow: hidden;
}

.hakago-faq-list {
	position: relative;
}

.hakago-faq-item {
	background: linear-gradient(180deg, #0150D9 0%, #013999 100%);
	border-radius: 13px;
	box-shadow: 0 6px 12px rgba(0, 53, 170, 0.18);
	color: #fff;
	margin-bottom: 11px;
	padding: 18px 21px;
}

.hakago-faq-item--open {
	min-height: 111px;
	padding-bottom: 17px;
}

.hakago-faq-question {
	align-items: center;
	background: transparent;
	border: 0;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	padding: 0;
	text-align: left;
	width: 100%;
}

.hakago-faq-question h3 {
	color: #fff;
	font-size: 18px;
	line-height: 24px;
	margin: 0;
}

.hakago-faq-question span {
	align-items: center;
	background: #ff3043;
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	flex: 0 0 17px;
	font-size: 10px;
	height: 17px;
	justify-content: center;
	width: 17px;
}

.hakago-faq-item p {
	color: rgba(255, 255, 255, 0.86);
	font-size: 14px;
	line-height: 20px;
	margin: 17px 28px 0 0;
}

.hakago-faq-item--fade {
	opacity: 0.42;
	position: relative;
}

.hakago-faq-item--fade::after {
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, #fff 76%);
	border-radius: 13px;
	content: "";
	inset: 0;
	position: absolute;
}

.hakago-faq-expand {
	align-items: center;
	background: #ff3043;
	border: 0;
	border-radius: 999px;
	color: #fff;
	display: flex;
	font-size: 14px;
	font-weight: 800;
	gap: 8px;
	justify-content: center;
	line-height: 1;
	margin: 16px auto 0;
	padding: 12px 24px;
	text-transform: uppercase;
	transition: background-color 0.25s ease, transform 0.25s ease;
}

.hakago-faq-expand:hover,
.hakago-faq-expand:focus {
	background: #ec2029;
	transform: translateY(-1px);
}

.hakago-faq-expand i {
	font-size: 12px;
	transition: transform 0.25s ease;
}

.hakago-faq-expand.is-expanded i {
	transform: rotate(180deg);
}

.hakago-footer-cta-banner {
	background: #fff;
}

.hakago-footer-cta-banner__inner {
	aspect-ratio: 1024 / 263;
	background: url("assets/images/bg-footer.png") center / cover no-repeat;
}

@supports not (aspect-ratio: 1 / 1) {
	.hakago-footer-cta-banner__inner {
		min-height: 25.68vw;
	}
}

.hakago-footer-cta-banner__inner::before {
	content: none;
}





.hakago-footer-cta-banner__content h2 {
	color: #0530ce;
	font-size: 54px;
	font-weight: bold;
	font-family: "Montserrat";
	letter-spacing: -0.04em;
	line-height: 1.12;
	margin: 0 0 12px;
}

.hakago-footer-cta-banner__content p {
	color: #0530ce;
	font-size: 16px;
	font-weight: 700;
	line-height: 15px;
	margin: 0 0 15px;
}

.hakago-footer-cta-banner__button,
.hakago-footer-cta-banner__button:visited {
	background: #ff3043;
    border-radius: 7px;
    color: #fff;
    margin-top: 15px;
    font-size: 18px;
    font-weight: bold;
    gap: 11px;
    line-height: 1;
    padding: 11px 15px 10px;
    text-transform: uppercase;
}

.hakago-footer-cta-banner__button span {
	font-size: 25px;
	font-weight: 400;
	line-height: 0.55;
}

@media screen and (max-width: 991.98px) {
	.hakago-footer-cta-banner__content {
		padding: 42px 24px;
		width: 100%;
	}
}

@media screen and (max-width: 575.98px) {
	.hakago-footer-cta-banner__content h2 {
		font-size: 28px;
	}

	.hakago-express-title {
		color: #0530ce;
		font-size: 30px;
		text-align: center;
	}
	.hakago-rate-head span {
		font-size: 13px;
	}
	.hakago-why-card-image {
		height: auto;
	}
	.hakago-why-title { 
		font-size: 24px;
	}
	.hakago-saving-card h3 {
		font-size: 16px;
		line-height: 18px;
	}
	.hakago-saving-label {
		font-size: 14px;
		line-height: 16px;
	}
	.hakago-saving-card strong {
		font-size: 18px;
	}
	.hakago-saving-card p {
		color: #0530ce;
		font-size: 16px;

	}
	.hakago-factor-grid span {
		font-size: 16px;
		line-height: 18px;
	}
	.hakago-express-button, .hakago-express-button:visited {
		font-size: 16px;
	}
}

.hakago-footer {
	background: #0024a7;
	color: #fff;
	padding: 42px 0 45px;
	position: relative;
}


.hakago-footer__brand {
	color: #fff;
	line-height: 1;
	margin-bottom: 15px;
}

.hakago-footer__brand img {
	display: block;
	height: auto;
	max-width: 243px;
	width: 100%;
}

.hakago-footer h2,
.hakago-footer h3 {
	color: #fff;
	font-weight: 900;
	text-transform: uppercase;
}

.hakago-footer h2 {
    font-weight: bold;
    font-size: 24px;
    font-family: 'Montserrat';
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin-bottom: 20px;
}
.hakago-footer h3 {
	font-weight: 700;
    font-size: 24px;
    font-family: 'Montserrat';
    line-height: 1;
    margin: 18px 0 11px;
}

.hakago-footer p,
.hakago-footer li,
.hakago-footer a {
	color: #fff;
	font-size: 18px;
	line-height: 24px;
	text-decoration: none;
}

.hakago-footer p {
	margin-bottom: 10px;
}

.hakago-footer__checks,
.hakago-footer__contact {
	margin-bottom: 0;
}

.hakago-footer__checks li,
.hakago-footer__contact li {
	align-items: flex-start;
	display: flex;
	gap: 8px;
	margin-bottom: 15px;
	font-weight: 300;
}

.hakago-footer__check-icon {
	display: block;
	flex: 0 0 16px;
	height: 15px;
	margin-top: 2px;
	width: 16px;
}

.hakago-footer__contact-icon {
	display: block;
	flex: 0 0 18px;
	height: 18px;
	margin-top: 2px;
	object-fit: contain;
	width: 18px;
}

.hakago-footer__map {
	
	border: 1px solid rgba(255, 255, 255, 0.2);
	height: 400px;
	margin-left: auto;
	overflow: hidden;
	position: relative;
}

.hakago-footer__map iframe {
	border: 0;
	display: block;
	height: 100%;
	width: 100%;
}

.hakago-footer__map-grid {
	background:
		linear-gradient(90deg, rgba(190, 190, 190, 0.45) 1px, transparent 1px),
		linear-gradient(rgba(190, 190, 190, 0.45) 1px, transparent 1px);
	background-size: 42px 42px;
	inset: 0;
	opacity: 0.45;
	position: absolute;
}

.hakago-map-pin {
	align-items: center;
	background: linear-gradient(135deg, #242424, #8c7a53);
	border: 2px solid rgba(255, 255, 255, 0.75);
	border-radius: 50%;
	box-shadow: 0 2px 7px rgba(0, 0, 0, 0.24);
	color: #fff;
	display: inline-flex;
	font-size: 11px;
	font-weight: 900;
	height: 24px;
	justify-content: center;
	position: absolute;
	width: 24px;
}

.hakago-map-pin--1 { left: 39%; top: 8%; }
.hakago-map-pin--2 { left: 38%; top: 53%; }
.hakago-map-pin--3 { left: 56%; top: 22%; }
.hakago-map-pin--4 { left: 68%; top: 44%; }
.hakago-map-pin--5 { left: 83%; top: 25%; }
.hakago-map-pin--6 { left: 62%; top: 73%; }
.hakago-map-pin--7 { left: 24%; top: 42%; }
.hakago-map-pin--8 { left: 74%; top: 65%; }

.hakago-footer__top {
	background: #ff3043;
	border-radius: 50%;
	color: #fff;
	font-size: 26px;
	height: 45px;
	position: absolute;
	right: 21px;
	text-decoration: none;
	top: 29px;
	width: 45px;
}

.hakago-footer__top:visited,
.hakago-footer__top:hover,
.hakago-footer__top:focus {
	color: #fff;
}

@media screen and (max-width: 991.98px) {
	.hakago-banner-media {
		height: auto;
		min-height: 400px;
	}

	.hakago-banner-hero {
		min-height: 400px;
	}

	.hakago-banner-content {
		padding-top: 80px !important;
		padding: 82px 24px 36px;
		width: min(100%, 520px);
	}

	.hakago-banner-logo {
		left: 50%;
		top: 26px;
	}

	.hakago-banner-chat {
		background:  #0c82ff;
		bottom: 102px;
		box-shadow: 0 0 0 10px rgba(12, 130, 255, 0.31);
		font-size: 13px;
		height: 58px;
		right: 16px;
		width: 58px;
	}

	.hakago-banner-chat img {
		height: 29px;
		width: 29px;
	}

	.hakago-banner-phone,
	.hakago-banner-phone:visited {
		bottom: 28px;
		font-size: 20px;
		gap: 12px;
		min-height: 50px;
		padding: 5px 22px 5px 5px;
		right: 16px;
	}

	.hakago-banner-phone span {
		box-shadow: 0 0 0 12px rgba(12, 130, 255, 0.31);
		font-size: 22px;
		height: 42px;
		width: 42px;
	}

	.hakago-banner-phone span img {
		height: 23px;
		width: 23px;
	}

	.hakago-banner-partners {
		padding: 16px;
	}

	.hakago-partner-box p {
		padding-left: 0;
		text-align: center;
	}

	.hakago-partner-logos {
		flex-wrap: wrap;
	}

	.hakago-partner-slider__item {
		flex-basis: calc((100% - 36px) / 4);
	}

	.hakago-service-flow .col::before,
	.hakago-service-flow .col::after {
		display: none;
	}

	.hakago-process-map {
		display: block;
		height: auto;
	}

	.hakago-process-item {
		position: static;
		transform: none;
		width: auto;
	}

	.hakago-process-line {
		display: none;
	}

	.hakago-problem-title {
		text-align: center;
	}

	.hakago-problem-grid {
		gap: 1.5rem;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hakago-problem-card:nth-child(n) {
		grid-column: auto;
	}

	.hakago-problem-warning {
		opacity: 0.45;
		right: -120px;
	}

	.hakago-solution-strip {
		clip-path: none;
		flex-direction: column;
		gap: 1rem;
		padding: 22px;
		text-align: center;
	}

	.hakago-solution-heading {
		flex: 0 0 auto;
	}

	.hakago-solution-list {
		flex-wrap: wrap;
		gap: 1rem;
		justify-content: center;
	}

	.hakago-special-goods-section .container {
		max-width: 600px;
	}

	.hakago-special-goods-frame-text h2 {
		font-size: 20px;
	}

	.hakago-special-goods-frame-text p {
		font-size: 24px;
	}

	.hakago-proof-title,
	.hakago-proof-title.text-lg-center {
		text-align: center;
	}

	.hakago-press-card {
		margin-right: auto;
	}


	.hakago-footer__map {
		margin-right: auto;
	}

	.hakago-quote-faq-title {
		text-align: center;
	}
}

@media screen and (max-width: 575.98px) {
	.hakago-country-tabs {
		gap: 16px 8px;
		justify-content: center;
	}

	.hakago-country-tab {
		flex: 0 0 calc((100% - 190px) / 3);
		width: auto;
	}

	.hakago-country-tab strong {
		font-size: 16px;
	}

	.hakago-quote-faq-grid {
		grid-template-columns: 1fr;
	}



	.hakago-quote-popup__title {
		font-size: 25px;
		margin-right: 48px;
	}

	.hakago-quote-popup__close {
		height: 36px;
		right: 16px;
		top: 18px;
		width: 36px;
	}

	.hakago-special-goods-section {
		padding: 30px 0 40px;
	}

	.hakago-special-goods-frame-wrap {
		margin-bottom: 24px;
	}

	.hakago-special-goods-frame-text {
		left: 6%;
		width: 60%;
	}

	.hakago-special-goods-frame-text h2 {
        font-size: 18px;
        margin-bottom: 4px;
    }

	.hakago-special-goods-frame-text p {
        font-size: 13px;
        max-width: 160px;
    }

	.hakago-special-goods-grid {
		row-gap: 28px;
	}

	.hakago-review-slider__controls {
		justify-content: center;
		margin-top: 18px;
	}

	.hakago-review-slider__button {
		height: 38px;
		width: 38px;
	}

	.hakago-partner-slider__item {
		flex-basis: calc((100% - 12px) / 2);
	}
	
}

@media screen and (max-width: 375px) {
	.hakago-country-tab {
		flex-basis: calc((100% - 8px) / 2);
	}
}

@media screen and (max-width: 1024px) {
	.hakago-banner-content {
		padding-top: 140px;
	}
}
@media screen and (max-width: 678px) {
	.hakago-solution-strip::before {
		clip-path: none;
	}
	.hakago-footer p, .hakago-footer li, .hakago-footer a {
		font-size: 16px;
	}
	.hakago-rate-row span {
		font-size: 16px;
	}
	.hakago-footer h3, .hakago-footer h2 {
		font-size: 18px;
	}
	.hakago-benefit-item strong {
		font-size: 18px;
	}
	.hakago-express-note {
		font-size: 18px;
	}
	.hakago-benefit-item small {
		font-size: 12px;
	}
	.hakago-banner-benefits {
		padding: 20px 20px !important;
	}
	.hakago-banner-button, .hakago-banner-button:visited { 
		font-size: 18px;
	}
	.hakago-solution-heading h3 {
		font-size: 30px;
	}

	.hakago-solution-list div {
		align-items: center;
		color: #fff;
		display: flex;
		font-size: 14px;
		font-family: 'Montserrat';
		gap: 8px;
		line-height: 28px;
		max-width: 500px;
	}
	.hakago-special-goods-card__label {
		font-size: 14px;
	}
	.hakago-solution-heading {
		margin-right: 0 !important;
	}
	.hakago-restricted-card {
		border-radius: 37px;
		color: #0530ce;
		min-height: 200px;
		padding: 28px 18px;
	}
	.hakago-process-title {
		font-size: 24px;
	}
	.hakago-footer-cta-banner__content.position-relative {
		margin-top: 10px;
		margin-bottom: 100px;
	}
	.hakago-footer-cta-banner__content p {
		color: #0530ce;
		font-size: 18px;
		font-weight: 700;
		line-height: 24px;
		margin: 0 0 15px;
	}
	
	.hakago-footer-cta-banner__button, .hakago-footer-cta-banner__button:visited {
		font-size: 18px;
	}
	.hakago-service-title {
		font-size: 24px;
		margin: -15px auto 49px;
	 }
	 .hakago-quote-faq-title { 
		font-size: 30px;
	 }
	
	.hakago-restricted-card__image {
		display: block;
		width: 50px;
		height: 50px;
		object-fit: contain;
		margin-bottom: 25px;
	}
	.hakago-solution-list {
        flex-wrap: wrap;
        gap: 1rem;
        justify-content: center;
        flex-direction: column;
        align-items: flex-start !important;
    }
	.hakago-solution-strip {
        clip-path: none;
        flex-direction: column;
        gap: 1rem;
        padding: 22px;
        text-align: center;
        align-items: flex-start !important;
    }
	.hakago-solution-heading p {
		color: #fff;
		font-size: 18px;
		font-family: 'Montserrat';
		line-height: 1;
		margin: 0;
	}

	.hakago-service-flow {
		--bs-gutter-y: 2.5rem;
	}

	.hakago-banner-logo {
        left: 10%;
        transform: none;
    }
	.hakago-special-goods-card p {
		font-size: 16px;
	}
	.hakago-why-card h3 {
		font-size: 16px;
	}
	h3.hakago-restricted-title {
		font-size: 30px !important;
	}
	.hakago-restricted-description {
		font-size: 18px !important;
	}
	.hakago-restricted-card p {
		color: #0530ce;
		font-size: 14px;
		font-weight: 400;
		line-height: 17px;
		margin: 0;
		max-width: 214px;
	}
	.hakago-partner-logos img {
		display: block;
		height: 40px;
		max-width: 60px;
		object-fit: contain;
		width: auto;
	}
	.hakago-banner-content h1 {
		font-size: 30px;
	}

	.hakago-banner-country {
		font-size: 14px;
		line-height: 1.35;
		max-width: 360px;
	}

	.hakago-banner-features {
		font-size: 16px;
	}

	.hakago-benefit-item {
		min-height: 66px;
	}

	.hakago-banner-stats {
		flex-direction: row;
		gap: 0;
		justify-content: space-between;
		width: 100%;
	}

	.hakago-banner-stats div {
		border-right: 1px solid rgba(255, 255, 255, 0.28);
		display: block;
		flex: 1 1 0;
		min-width: 0;
		padding: 0 8px;
		text-align: center;
	}

	.hakago-banner-stats svg {
		margin: 0 auto 6px;
		max-height: 28px;
		width: 28px;
	}

	.hakago-banner-stats strong,
	.hakago-banner-stats small {
		margin-left: 0;
	}

	.hakago-banner-stats strong {
		font-size: 16px;
		margin-top: 4px;
	}

	.hakago-banner-stats small {
		font-size: 12px;
	}
}

/* Home template
--------------------------------------------- */
.home-template {
	background: #f8fafc;
	color: #0f172a;
}

.home-template h1,
.home-template h2,
.home-template h3,
.home-template p {
	margin-top: 0;
}

.home-hero,
.home-features,
.home-section,
.home-cta {
	margin-left: auto;
	margin-right: auto;
	max-width: 1180px;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.home-hero {
	display: grid;
	gap: 2rem;
	grid-template-columns: 1fr;
	min-height: 560px;
	padding-bottom: 4rem;
	padding-top: 4rem;
	place-items: center;
}

.home-hero__content {
	max-width: 680px;
}

.home-eyebrow {
	color: #2563eb;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	margin-bottom: 0.75rem;
	text-transform: uppercase;
}

.home-hero h1 {
	font-size: clamp(2.4rem, 7vw, 5rem);
	line-height: 1;
	margin-bottom: 1.25rem;
}

.home-hero__description {
	color: #475569;
	font-size: clamp(1rem, 2vw, 1.25rem);
	line-height: 1.7;
	margin-bottom: 2rem;
}

.home-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.home-button {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-weight: 700;
	justify-content: center;
	padding: 0.9rem 1.35rem;
	text-decoration: none;
	transition: transform 160ms ease, box-shadow 160ms ease;
}

.home-button:hover,
.home-button:focus {
	transform: translateY(-2px);
}

.home-button--primary,
.home-button--primary:visited {
	background: #2563eb;
	box-shadow: 0 14px 30px rgba(37, 99, 235, 0.25);
	color: #fff;
}

.home-button--secondary,
.home-button--secondary:visited {
	background: #fff;
	color: #0f172a;
}

.home-hero__media {
	border-radius: 2rem;
	box-shadow: 0 24px 70px rgba(15, 23, 42, 0.18);
	overflow: hidden;
	width: 100%;
}

.home-hero__media img {
	aspect-ratio: 4 / 3;
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.home-features {
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr;
	margin-bottom: 4rem;
}

.home-feature-card,
.home-post-card,
.home-about__content,
.home-cta {
	background: #fff;
	border: 1px solid rgba(148, 163, 184, 0.28);
	border-radius: 1.5rem;
	box-shadow: 0 18px 50px rgba(15, 23, 42, 0.06);
}

.home-feature-card {
	padding: 1.5rem;
}

.home-feature-card span {
	color: #2563eb;
	display: block;
	font-weight: 800;
	margin-bottom: 1.5rem;
}

.home-feature-card h2 {
	font-size: 1.25rem;
	margin-bottom: 0.75rem;
}

.home-feature-card p,
.home-about__content,
.home-post-card p,
.home-cta p {
	color: #475569;
	line-height: 1.7;
}

.home-section {
	margin-bottom: 4rem;
}

.home-section__header {
	margin-bottom: 1.5rem;
	max-width: 680px;
}

.home-section__header h2,
.home-cta h2 {
	font-size: clamp(1.9rem, 4vw, 3rem);
	line-height: 1.1;
	margin-bottom: 1rem;
}

.home-about__content {
	padding: 1.5rem;
}

.home-about__content > *:last-child {
	margin-bottom: 0;
}

.hakago-quote {
	margin: 0 auto 4rem;
	max-width: 1180px;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.hakago-quote__inner {
	margin: 0 auto;
	max-width: 980px;
}

.hakago-quote h2 {
	color: #123ee8;
	font-size: clamp(2.4rem, 7vw, 4.2rem);
	font-weight: 800;
	letter-spacing: -0.04em;
	line-height: 1;
	margin-bottom: 2rem;
}

.hakago-quote__form {
	background: linear-gradient(145deg, #075cf1 0%, #003f9e 100%);
	border-radius: 1.25rem;
	box-shadow: 0 24px 70px rgba(0, 45, 126, 0.24);
	padding: clamp(2rem, 5vw, 3.5rem);
}

.hakago-quote__brand {
	align-items: baseline;
	color: #fff;
	display: flex;
	flex-wrap: wrap;
	font-weight: 800;
	gap: 0.4rem;
	justify-content: center;
	line-height: 1;
	margin-bottom: 2.5rem;
}

.hakago-quote__brand-mark {
	font-size: clamp(1.9rem, 5vw, 2.7rem);
	font-style: italic;
	letter-spacing: -0.08em;
	text-transform: uppercase;
}

.hakago-quote__brand-name {
	font-size: clamp(1.9rem, 5vw, 2.7rem);
	letter-spacing: -0.04em;
}

.hakago-quote__brand-tagline {
	flex-basis: 100%;
	font-size: 0.75rem;
	font-weight: 500;
	text-align: center;
}

.hakago-quote__grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: 1fr;
}

.hakago-quote__grid input,
.hakago-quote__grid textarea {
	background: #f8fafc;
	border: 0;
	border-radius: 1rem;
	box-sizing: border-box;
	color: #111827;
	font-size: 1rem;
	min-height: 58px;
	padding: 1rem 1.5rem;
	width: 100%;
}

.hakago-quote__grid textarea {
	resize: vertical;
}

.hakago-quote__grid input::placeholder,
.hakago-quote__grid textarea::placeholder {
	color: #27272a;
	opacity: 1;
}

.hakago-quote__button {
	align-items: center;
	background: #ff1f2d;
	border: 0;
	border-radius: 0.9rem;
	box-shadow: 0 18px 34px rgba(255, 31, 45, 0.24);
	color: #fff;
	cursor: pointer;
	display: flex;
	font-size: clamp(1rem, 2vw, 1.35rem);
	font-weight: 800;
	gap: 0.75rem;
	justify-content: center;
	letter-spacing: 0.02em;
	margin: 2.5rem auto 0;
	max-width: 100%;
	padding: 1rem 1.45rem;
	text-transform: uppercase;
	transition: transform 160ms ease, box-shadow 160ms ease;
	width: fit-content;
}

.hakago-quote__button:hover,
.hakago-quote__button:focus {
	box-shadow: 0 20px 38px rgba(255, 31, 45, 0.32);
	transform: translateY(-2px);
}

.hakago-quote__notice {
	border-radius: 0.85rem;
	font-weight: 700;
	margin-bottom: 1rem;
	padding: 1rem 1.25rem;
}

.hakago-quote__notice--success {
	background: #dcfce7;
	color: #166534;
}

.hakago-quote__notice--error {
	background: #fee2e2;
	color: #991b1b;
}

.home-post-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr;
}

.home-post-card {
	margin: 0;
	overflow: hidden;
}

.home-post-card a {
	color: inherit;
	display: block;
	text-decoration: none;
}

.home-post-card img {
	aspect-ratio: 16 / 10;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.home-post-card__content {
	padding: 1.25rem;
}

.home-post-card time {
	color: #64748b;
	display: block;
	font-size: 0.85rem;
	margin-bottom: 0.75rem;
}

.home-post-card h3 {
	font-size: 1.25rem;
	line-height: 1.3;
	margin-bottom: 0.75rem;
}

.home-cta {
	align-items: center;
	display: grid;
	gap: 1.5rem;
	margin-bottom: 4rem;
	padding-bottom: 2rem;
	padding-top: 2rem;
}

.home-cta .home-button {
	justify-self: start;
}

@media screen and (min-width: 48em) {
	.home-features,
	.home-post-grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.hakago-quote__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hakago-quote__grid input:first-of-type,
	.hakago-quote__grid textarea,
	.hakago-quote__grid input:last-of-type {
		grid-column: 1 / -1;
	}

	.home-about__content {
		padding: 2.5rem;
	}

	.home-cta {
		grid-template-columns: minmax(0, 1fr) auto;
		padding: 2.5rem;
	}
}

@media screen and (min-width: 64em) {
	.home-hero {
		grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
	}
}

/* Figma home update
--------------------------------------------- */
.page-template-template-home {
	background: #f5fbff;
}

.page-template-template-home .site {
	background: #f5fbff;
	overflow: hidden;
}

.page-template-template-home .site-header {
	align-items: center;
	background: #fff;
	box-shadow: 0 10px 28px rgba(0, 56, 145, 0.08);
	display: flex;
	gap: 1.5rem;
	justify-content: space-between;
	padding: 0.8rem clamp(1rem, 5vw, 4rem);
	position: relative;
	z-index: 5;
}

.page-template-template-home .site-branding {
	min-width: 150px;
}

.page-template-template-home .site-title {
	font-size: clamp(1.15rem, 2vw, 1.55rem);
	font-weight: 900;
	letter-spacing: -0.04em;
	margin: 0;
}

.page-template-template-home .site-title a,
.page-template-template-home .site-title a:visited {
	color: #0050bf;
	text-decoration: none;
}

.page-template-template-home .site-description {
	color: #64748b;
	font-size: 0.72rem;
	margin: 0.1rem 0 0;
}

.page-template-template-home .main-navigation {
	width: auto;
}

.page-template-template-home .main-navigation ul {
	gap: 1rem;
}

.page-template-template-home .main-navigation a,
.page-template-template-home .main-navigation a:visited {
	color: #12326f;
	font-size: 0.92rem;
	font-weight: 700;
	padding: 0.55rem 0;
}

.page-template-template-home-php {
	background: #f5fbff;
}

.page-template-template-home-php .site {
	background: #f5fbff;
	overflow: hidden;
}

.page-template-template-home-php .site-header {
	align-items: center;
	background: #fff;
	box-shadow: 0 10px 28px rgba(0, 56, 145, 0.08);
	display: flex;
	gap: 1.5rem;
	justify-content: space-between;
	padding: 0.8rem clamp(1rem, 5vw, 4rem);
	position: relative;
	z-index: 5;
}

.page-template-template-home-php .site-branding {
	min-width: 150px;
}

.page-template-template-home-php .site-title {
	font-size: clamp(1.15rem, 2vw, 1.55rem);
	font-weight: 900;
	letter-spacing: -0.04em;
	margin: 0;
}

.page-template-template-home-php .site-title a,
.page-template-template-home-php .site-title a:visited {
	color: #0050bf;
	text-decoration: none;
}

.page-template-template-home-php .site-description {
	color: #64748b;
	font-size: 0.72rem;
	margin: 0.1rem 0 0;
}

.page-template-template-home-php .main-navigation {
	width: auto;
}

.page-template-template-home-php .main-navigation ul {
	gap: 1rem;
}

.page-template-template-home-php .main-navigation a,
.page-template-template-home-php .main-navigation a:visited {
	color: #12326f;
	font-size: 0.92rem;
	font-weight: 700;
	padding: 0.55rem 0;
}

.hakago-home {
	background: linear-gradient(180deg, #eef8ff 0%, #fff 22%, #f4fbff 100%);
	color: #102a59;
	font-family: "Lexend", sans-serif;
}

.hakago-home *,
.hakago-home *::before,
.hakago-home *::after {
	box-sizing: border-box;
}

.hakago-home h1,
.hakago-home h2,
.hakago-home h3,
.hakago-home p {
	margin-top: 0;
}

.hakago-container {
	margin-left: auto;
	margin-right: auto;
	max-width: 1140px;
	padding-left: 1rem;
	padding-right: 1rem;
	width: 100%;
}

.hakago-section {
	padding-bottom: clamp(2.5rem, 6vw, 4.75rem);
	padding-top: clamp(2.5rem, 6vw, 4.75rem);
}

.hakago-kicker {
	color: #e8172f;
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	margin-bottom: 0.55rem;
	text-transform: uppercase;
}

.hakago-section__heading {
	margin: 0 auto 1.75rem;
	max-width: 640px;
	text-align: center;
}

.hakago-section__heading h2,
.hakago-route h2,
.hakago-about h2,
.hakago-final-cta h2 {
	color: #073b91;
	font-size: clamp(1.65rem, 4vw, 2.65rem);
	font-weight: 900;
	letter-spacing: -0.04em;
	line-height: 1.08;
	margin-bottom: 0.85rem;
}

.hakago-button {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-weight: 900;
	justify-content: center;
	line-height: 1;
	padding: 0.9rem 1.35rem;
	text-decoration: none;
	transition: transform 160ms ease, box-shadow 160ms ease;
}

.hakago-button:hover,
.hakago-button:focus {
	transform: translateY(-2px);
}

.hakago-button--danger,
.hakago-button--danger:visited {
	background: #ed1c32;
	box-shadow: 0 14px 30px rgba(237, 28, 50, 0.25);
	color: #fff;
}

.hakago-button--light,
.hakago-button--light:visited {
	background: #fff;
	box-shadow: 0 12px 26px rgba(0, 56, 145, 0.12);
	color: #0746a6;
}

.hakago-hero {
	background:
		radial-gradient(circle at 18% 15%, rgba(255, 255, 255, 0.9) 0 7rem, transparent 7.2rem),
		linear-gradient(120deg, #e8f7ff 0%, #fff 56%, #d8f1ff 100%);
	padding: clamp(2rem, 5vw, 4rem) 0 1.25rem;
	position: relative;
}

.hakago-hero__grid {
	align-items: center;
	display: grid;
	gap: 2rem;
	grid-template-columns: 1fr;
	min-height: 430px;
}

.hakago-hero__content {
	max-width: 570px;
}

.hakago-hero h1 {
	color: #073b91;
	font-size: clamp(2.3rem, 7vw, 4.85rem);
	font-weight: 900;
	letter-spacing: -0.06em;
	line-height: 0.95;
	margin-bottom: 1rem;
	text-transform: uppercase;
}

.hakago-hero__description {
	color: #314b7e;
	font-size: clamp(1rem, 2vw, 1.16rem);
	font-weight: 600;
	line-height: 1.7;
	margin-bottom: 1.5rem;
}

.hakago-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.hakago-hero__visual {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(214, 240, 255, 0.86));
	border-radius: 2rem;
	box-shadow: 0 24px 60px rgba(0, 56, 145, 0.16);
	height: min(68vw, 360px);
	min-height: 260px;
	overflow: hidden;
	position: relative;
}

.hakago-hero__skyline {
	background:
		linear-gradient(#9fd3f0, #9fd3f0) 10% 62% / 9% 28% no-repeat,
		linear-gradient(#77bde5, #77bde5) 24% 48% / 10% 42% no-repeat,
		linear-gradient(#bfdff0, #bfdff0) 40% 57% / 9% 33% no-repeat,
		linear-gradient(#8ecaea, #8ecaea) 55% 50% / 12% 40% no-repeat,
		linear-gradient(#cce9f7, #cce9f7) 72% 60% / 10% 30% no-repeat;
	bottom: 0;
	height: 58%;
	left: 0;
	position: absolute;
	right: 0;
}

.hakago-hero__courier {
	align-items: end;
	bottom: 10%;
	display: flex;
	gap: 1rem;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
}

.hakago-hero__person {
	background: linear-gradient(180deg, #ed1c32 0 22%, #fff 22% 54%, #0057c8 54%);
	border-radius: 999px 999px 0 0;
	box-shadow: inset 0 -24px 0 rgba(0, 80, 191, 0.2);
	display: block;
	height: 190px;
	position: relative;
	width: 74px;
}

.hakago-hero__person::before {
	background: #ffd0a6;
	border-radius: 50%;
	content: "";
	height: 44px;
	left: 15px;
	position: absolute;
	top: 20px;
	width: 44px;
}

.hakago-hero__box {
	background: #d99b54;
	border: 4px solid #b67836;
	border-radius: 0.65rem;
	box-shadow: 0 16px 0 rgba(0, 56, 145, 0.08);
	display: block;
	height: 96px;
	margin-bottom: 18px;
	width: 128px;
}

.hakago-hero__plane {
	border-bottom: 12px solid transparent;
	border-left: 70px solid #0b63ce;
	border-top: 12px solid transparent;
	position: absolute;
	right: 12%;
	top: 18%;
	transform: rotate(-10deg);
}

.hakago-hero__plane::before {
	background: #0b63ce;
	content: "";
	height: 10px;
	position: absolute;
	right: 24px;
	top: -5px;
	transform: rotate(24deg);
	width: 54px;
}

.hakago-quick-services {
	background: #073b91;
	border-bottom: 5px solid #ed1c32;
	box-shadow: 0 16px 34px rgba(0, 56, 145, 0.18);
}

.hakago-quick-services__grid {
	display: grid;
	gap: 0.25rem;
	grid-template-columns: 1fr;
	padding-bottom: 0.75rem;
	padding-top: 0.75rem;
}

.hakago-quick-services a,
.hakago-quick-services a:visited {
	background: rgba(255, 255, 255, 0.08);
	border-radius: 0.75rem;
	color: #fff;
	font-size: 0.92rem;
	font-weight: 800;
	padding: 0.8rem 1rem;
	text-align: center;
	text-decoration: none;
}

.hakago-step-grid {
	display: grid;
	gap: 0.85rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hakago-step-grid article {
	align-items: center;
	background: #fff;
	border: 2px solid #d8e9ff;
	border-radius: 0.85rem;
	box-shadow: 0 12px 28px rgba(0, 56, 145, 0.08);
	color: #073b91;
	display: flex;
	font-size: 0.92rem;
	font-weight: 800;
	gap: 0.7rem;
	min-height: 82px;
	padding: 0.85rem;
}

.hakago-step-grid span {
	align-items: center;
	background: #ed1c32;
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	flex: 0 0 34px;
	font-weight: 900;
	height: 34px;
	justify-content: center;
	width: 34px;
}

.hakago-services {
	background: #fff;
}

.hakago-service-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr;
}

.hakago-service-card {
	background: #fff;
	border: 1px solid #d7e7ff;
	border-radius: 1rem;
	box-shadow: 0 14px 30px rgba(0, 56, 145, 0.09);
	min-height: 150px;
	padding: 1rem;
	position: relative;
}

.hakago-service-card span {
	align-items: center;
	background: #073b91;
	border-radius: 0.8rem;
	color: #fff;
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 900;
	height: 48px;
	justify-content: center;
	margin-bottom: 1rem;
	min-width: 58px;
	padding: 0 0.7rem;
}

.hakago-service-card h3 {
	color: #12326f;
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 0;
}

.hakago-service-card--wide {
	align-items: center;
	background:
		linear-gradient(110deg, rgba(7, 59, 145, 0.94), rgba(0, 96, 209, 0.86)),
		linear-gradient(90deg, #b67836, #e7bd7a);
	color: #fff;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	min-height: 190px;
}

.hakago-service-card--wide p,
.hakago-service-card--wide h3 {
	color: #fff;
}

.hakago-service-card--wide p {
	font-size: 0.8rem;
	font-weight: 800;
	margin-bottom: 0.45rem;
	text-transform: uppercase;
}

.hakago-service-card--wide h3 {
	font-size: clamp(1.25rem, 3vw, 1.8rem);
}

.hakago-service-card--wide span {
	background: #d99b54;
	border: 4px solid rgba(255, 255, 255, 0.65);
	height: 96px;
	width: 116px;
}

.hakago-methods {
	background: #073b91;
	color: #fff;
	padding: 1.5rem 0;
}

.hakago-methods__inner {
	align-items: center;
	display: grid;
	gap: 1.25rem;
	grid-template-columns: 1fr;
}

.hakago-methods h2 {
	color: #fff;
	font-size: clamp(1.35rem, 3vw, 2rem);
	margin-bottom: 0;
}

.hakago-methods .hakago-kicker {
	color: #ffb5bd;
}

.hakago-method-list {
	display: grid;
	gap: 0.8rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hakago-method-list span {
	background: #fff;
	border-radius: 0.8rem;
	color: #073b91;
	font-weight: 900;
	padding: 1rem 0.75rem;
	text-align: center;
}

.hakago-route {
	background: linear-gradient(180deg, #edf8ff, #fff);
}

.hakago-route__grid,
.hakago-about__grid,
.hakago-final-cta__grid {
	align-items: center;
	display: grid;
	gap: 2rem;
	grid-template-columns: 1fr;
}

.hakago-route__visual {
	background:
		radial-gradient(circle at center, rgba(0, 87, 200, 0.12) 0 34%, transparent 34.5%),
		#eef8ff;
	border-radius: 1.5rem;
	box-shadow: inset 0 0 0 1px #d7e7ff;
	display: grid;
	gap: 0.85rem;
	grid-template-columns: repeat(2, 1fr);
	min-height: 300px;
	padding: 1.25rem;
}

.hakago-route__visual span {
	background: linear-gradient(135deg, #fff, #cfeeff);
	border: 1px solid #d7e7ff;
	border-radius: 1rem;
	box-shadow: 0 12px 26px rgba(0, 56, 145, 0.1);
}

.hakago-route p,
.hakago-route li,
.hakago-about__content,
.hakago-final-cta p {
	color: #3d5688;
	font-weight: 600;
	line-height: 1.75;
}

.hakago-route ul {
	list-style: none;
	margin: 1rem 0 0;
	padding: 0;
}

.hakago-route li {
	padding-left: 1.6rem;
	position: relative;
}

.hakago-route li::before {
	background: #ed1c32;
	border-radius: 50%;
	content: "";
	height: 0.55rem;
	left: 0;
	position: absolute;
	top: 0.67rem;
	width: 0.55rem;
}

.hakago-commitments {
	background: #fff;
	padding: 1rem 0;
}

.hakago-commitments__grid {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hakago-commitments article {
	background: #fff;
	border: 1px solid #d7e7ff;
	border-radius: 1rem;
	box-shadow: 0 10px 26px rgba(0, 56, 145, 0.08);
	color: #12326f;
	font-size: 0.9rem;
	font-weight: 800;
	padding: 1rem;
	text-align: center;
}

.hakago-commitments span {
	color: #ed1c32;
	display: block;
	font-size: 1.45rem;
	font-weight: 900;
	margin-bottom: 0.35rem;
}

.hakago-about {
	background: #f8fcff;
}

.hakago-about__content {
	background: #fff;
	border: 1px solid #d7e7ff;
	border-radius: 1.25rem;
	box-shadow: 0 14px 34px rgba(0, 56, 145, 0.08);
	padding: clamp(1.25rem, 4vw, 2rem);
}

.hakago-about__content > *:last-child {
	margin-bottom: 0;
}

.hakago-quote {
	margin-bottom: clamp(2.5rem, 6vw, 4.75rem);
	max-width: none;
	padding-left: 0;
	padding-right: 0;
}

.hakago-quote__inner {
	max-width: 960px;
	padding-left: 1rem;
	padding-right: 1rem;
}

.hakago-quote h2 {
	color: #073b91;
	font-size: clamp(1.9rem, 5vw, 3.4rem);
	letter-spacing: -0.05em;
	text-align: center;
}

.hakago-quote__form {
	background: #073b91;
	border-radius: 1.15rem;
	box-shadow: 0 22px 50px rgba(0, 56, 145, 0.22);
	padding: clamp(1.5rem, 5vw, 2.75rem);
}

.hakago-quote__brand {
	margin-bottom: 1.75rem;
}

.hakago-quote__grid {
	gap: 0.8rem;
}

.hakago-quote__grid input,
.hakago-quote__grid textarea {
	border-radius: 0.55rem;
	min-height: 48px;
	padding: 0.85rem 1rem;
}

.hakago-quote__button {
	background: #ed1c32;
	border-radius: 0.55rem;
	font-size: 1rem;
	margin-top: 1.25rem;
	padding: 0.95rem 1.2rem;
}

.hakago-news {
	background: #fff;
}

.hakago-post-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr;
}

.hakago-post-card {
	background: #fff;
	border: 1px solid #d7e7ff;
	border-radius: 1rem;
	box-shadow: 0 12px 28px rgba(0, 56, 145, 0.08);
	margin: 0;
	overflow: hidden;
}

.hakago-post-card a {
	color: inherit;
	display: block;
	text-decoration: none;
}

.hakago-post-card img,
.hakago-post-card__placeholder {
	aspect-ratio: 16 / 10;
	display: block;
	object-fit: cover;
	width: 100%;
}

.hakago-post-card__placeholder {
	align-items: center;
	background: linear-gradient(135deg, #e8f7ff, #073b91);
	color: #fff;
	display: flex;
	font-weight: 900;
	justify-content: center;
}

.hakago-post-card__content {
	padding: 1rem;
}

.hakago-post-card time {
	color: #ed1c32;
	display: block;
	font-size: 0.78rem;
	font-weight: 800;
	margin-bottom: 0.55rem;
}

.hakago-post-card h3 {
	color: #12326f;
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.35;
	margin-bottom: 0.6rem;
}

.hakago-post-card p {
	color: #4f6694;
	font-size: 0.9rem;
	line-height: 1.6;
	margin-bottom: 0;
}

.hakago-final-cta {
	background:
		linear-gradient(90deg, rgba(7, 59, 145, 0.95), rgba(0, 88, 205, 0.78)),
		linear-gradient(135deg, #dff3ff, #fff);
	color: #fff;
	padding: clamp(2.5rem, 6vw, 4rem) 0;
}

.hakago-final-cta h2,
.hakago-final-cta p,
.hakago-final-cta .hakago-kicker {
	color: #fff;
}

.hakago-final-cta .hakago-button {
	margin-top: 0.5rem;
}

.hakago-map-card {
	background: #fff;
	border-radius: 1.25rem;
	display: grid;
	gap: 0.7rem;
	grid-template-columns: repeat(2, 1fr);
	min-height: 240px;
	padding: 1rem;
}

.hakago-map-card span {
	background:
		radial-gradient(circle, #ed1c32 0 0.35rem, transparent 0.38rem),
		linear-gradient(135deg, #dff3ff, #8ccfff);
	border-radius: 0.9rem;
}

@media screen and (min-width: 37.5em) {
	.page-template-template-home .main-navigation ul,
	.page-template-template-home-php .main-navigation ul {
		align-items: center;
		display: flex;
	}
}

@media screen and (min-width: 48em) {
	.hakago-quick-services__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.hakago-step-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	.hakago-step-grid article {
		align-items: flex-start;
		flex-direction: column;
	}

	.hakago-service-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.hakago-service-card--wide {
		grid-column: span 2;
	}

	.hakago-methods__inner,
	.hakago-route__grid,
	.hakago-about__grid,
	.hakago-final-cta__grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.hakago-method-list,
	.hakago-commitments__grid,
	.hakago-post-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.hakago-post-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media screen and (min-width: 64em) {
	.hakago-hero__grid {
		grid-template-columns: minmax(0, 0.9fr) minmax(380px, 1.1fr);
	}
}

@media screen and (max-width: 47.99em) {
	.page-template-template-home .site-header,
	.page-template-template-home-php .site-header {
		align-items: flex-start;
		flex-direction: column;
	}

	.page-template-template-home .main-navigation,
	.page-template-template-home-php .main-navigation {
		width: 100%;
	}

	.hakago-service-card--wide {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}
h3.hakago-restricted-title {
    font-size: 45px;
    color: #0031E2;
	font-weight: bold;
}
.font-30 {
	font-size: 30px;
	font-weight: bold;
}
.font-24 {
	font-size: 24px;
	font-weight: bold;
}
.font-20 {
	font-size: 20px;
	font-weight: bold;
}
.hakago-footer-cta-banner__content.position-relative {
	margin-top: 120px;
}
ul, ol {
    margin: 0 !important;
}
.hakago-solution-heading {
	margin-right: 110px;
}
.hakago-gallery-section {
	padding: 40px 0;
}
.hakago-restricted-description {
    font-size: 24px;
}
.hakago-country-tab {
    width: 96px;
    text-align: center;
}
.hakago-country-tab img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
}
.hakago-country-tab strong {
	overflow-wrap: anywhere;
	word-break: normal;
}

.hakago-footer-cta-banner__button svg, .hakago-quote-faq-button svg,.hakago-banner-button svg,.hakago-express-button svg{
	height: 15px;
}

/* Cache busting: Updated timestamp */
