.og-btn {
	text-align: right;
}

.og-btn a {
	display: inline-block;
	font-size: 25px;
	line-height: 1;
	padding: 0.5em 0 0.5em 3em;
	position: relative;
	transition: 0.3s;
}

.og-btn a:hover {
	margin-right: -0.5em;
	padding-left: 3.75em;
}

.og-btn a:hover::before {
	height: 2.5em;
	width: 2.5em;
}

.og-btn a::before {
	background-color: #54C7BB;
	background-image: url(../../img/icon/icon_ogBtn-arrow.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-size: 1.25em;
	border-radius: 50%;
	content: "";
	display: block;
	filter: drop-shadow(0px 0px 3px #54C7BB);
	height: 2em;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transform-origin: 50%;
	transition: 0.3s;
	width: 2em;
}

.outlineBtn {
	text-align: right;
}

.outlineBtn a {
	background-color: white;
	border: 3px solid #54C7BB;
	border-radius: 8px;
	color: #54C7BB;
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	min-width: 272px;
	padding: 1em 1.5em;
	text-align: center;
	transition: 0.3s;
}

.outlineBtn a:hover {
	background-color: #54C7BB;
	color: white;
}

.color-btn {
	text-align: center;
}

.color-btn .color-btn__link {
	background: linear-gradient(45deg, #3AD3C9, #3DDFA9);
	border: 1px solid #54C7BB;
	border-radius: 53px;
	color: white;
	display: inline-block;
	font-size: 30px;
	font-weight: bold;
	line-height: 1;
	max-width: 500px;
	padding: 1em 3em;
	position: relative;
	transition: 0.3s;
}

.color-btn .color-btn__link:hover {
	background: #F7FBFE;
	color: #54C7BB;
}

.color-btn .color-btn__link:hover::after {
	background-color: #54C7BB;
}

.color-btn .color-btn__link::after {
	-webkit-mask-position: right;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-image: url("../../img/icon/icon_angle-right.svg");
	background-color: white;
	content: "";
	display: inline-block;
	height: 0.8em;
	mask-image: url("../../img/icon/icon_angle-right.svg");
	mask-position: right;
	mask-repeat: no-repeat;
	mask-size: contain;
	position: absolute;
	right: 1em;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.5s;
	width: 0.8em;
}

.color-btn.--red .color-btn__link {
	background: linear-gradient(45deg, #DF3DA4, #D33A3A);
	border-color: #D34A40;
}

.color-btn.--red .color-btn__link:hover {
	background: #F7FBFE;
	color: #D34A40;
}

.color-btn.--red .color-btn__link:hover::after {
	background-color: #D34A40;
}

.forTop-btn__link {
	background-color: #F0F0F0;
	display: block;
	height: 3em;
	position: relative;
	transition: 0.3s;
	width: 100%;
}

.forTop-btn__link:hover {
	opacity: 0.7;
}

.forTop-btn__link::before {
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-image: url(../../img/icon/icon_arrow-down.svg);
	aspect-ratio: 1;
	background-color: #3B5F77;
	content: "";
	content: "";
	display: inline-block;
	display: inline-block;
	height: auto;
	left: 50%;
	mask-image: url(../../img/icon/icon_arrow-down.svg);
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) rotate(180deg);
	width: 1.5em;
}

#header {
	background-color: #fff;
	position: fixed;
	width: 100%;
	z-index: 100;
}

#header .header-contents {
	align-items: center;
	justify-content: space-between;
	padding-bottom: 10px;
	padding-top: 10px;
}

#header .header-contents .site-logo__wrapper {
	display: flex;
}

#header .header-contents .site-logo {
	height: 40px;
	width: auto;
}

#header .header-contents .site-logo a {
	align-items: flex-end;
	display: flex;
	height: 100%;
	width: auto;
}

#header .header-contents .site-logo img {
	-o-object-position: left;
	height: 100%;
	object-position: left;
	width: auto;
}

#header .header-contents .site-logo .logo-text {
	color: #54C7BB;
	font-size: 23px;
	padding-left: 0.8em;
	white-space: nowrap;
}

#header .header-contents .gnav-container {
	align-items: center;
	display: flex;
}

#header .header-contents .gnav-container > ul {
	align-items: center;
	display: flex;
	justify-content: flex-end;
}

#header .header-contents .gnav-container > ul > li {
	margin-right: 1em;
	position: relative;
}

#header .header-contents .gnav-container > ul > li a {
	display: inline-block;
	padding: 0.5em;
	transition: 0.3s;
}

#header .header-contents .gnav-container > ul > li a:hover {
	color: #54C7BB;
}

#header .header-contents .gnav-container > ul > li a:hover::after {
	background-color: #54C7BB;
}

#header .header-contents .gnav-container > ul > li:hover .sub-menu {
	opacity: 1;
	transform: translate(-50%, 0);
	visibility: visible;
}

#header .header-contents .gnav-container > ul > li:not(:first-child) a {
	padding-left: 2em;
	position: relative;
}

#header .header-contents .gnav-container > ul > li:not(:first-child) a:hover::before {
	background-color: #54C7BB;
}

#header .header-contents .gnav-container > ul > li:not(:first-child) a::before {
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	background-color: #3B5F77;
	content: "";
	display: inline-block;
	height: 1em;
	left: 0.5em;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s;
	width: 1em;
}

#header .header-contents .gnav-container > ul > li > .for-setting::before {
	-webkit-mask-image: url("../../img/icon/icon_hand.svg");
	mask-image: url("../../img/icon/icon_hand.svg");
}

#header .header-contents .gnav-container > ul > li > .for-price::before {
	-webkit-mask-image: url("../../img/icon/icon_price.svg");
	mask-image: url("../../img/icon/icon_price.svg");
}

#header .header-contents .gnav-container > ul > li > .for-news::before {
	-webkit-mask-image: url("../../img/icon/icon_megaphone.svg");
	mask-image: url("../../img/icon/icon_megaphone.svg");
}

#header .header-contents .gnav-container > ul > li > .for-faq::before {
	-webkit-mask-image: url("../../img/icon/icon_faq.svg");
	mask-image: url("../../img/icon/icon_faq.svg");
}

#header .header-contents .gnav-container > ul > li .has-subMenu {
	padding-right: 2em;
}

#header .header-contents .gnav-container > ul > li .has-subMenu::after {
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-image: url("../../img/icon/icon_arrow-down.svg");
	background-color: #3B5F77;
	content: "";
	display: inline-block;
	height: 0.8em;
	mask-image: url("../../img/icon/icon_arrow-down.svg");
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	position: absolute;
	right: 0.5em;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s;
	width: 0.8em;
}

#header .header-contents .gnav-container > ul > li .sub-menu {
	background-color: #EEEEEE;
	border-radius: 5px;
	height: auto;
	left: 50%;
	min-width: 200px;
	opacity: 0;
	padding: 1em 0.5em 1em 0.25em;
	position: absolute;
	top: 100%;
	transform: translate(-50%, -10px);
	transition: 0.3s;
	visibility: hidden;
	width: auto;
}

#header .header-contents .gnav-container > ul > li .sub-menu li a {
	padding-left: 1.5em;
}

#header .header-contents .gnav-container > ul > li .sub-menu li a::before {
	background-color: #54C7BB;
	border-radius: 50%;
	height: 6px;
	top: 1.25em;
	width: 6px;
}

#header .header-contents .header-btn__wrapper {
	display: flex;
}

#header .header-contents .header-btn:last-child {
	margin-left: 2em;
}

#header .header-contents .header-btn .header-btn__link {
	border-radius: 11px;
	box-sizing: border-box;
	display: inline-block;
	font-weight: bold;
	line-height: 1;
	min-width: 138px;
	padding: 16px 0.5em;
	text-align: center;
	transition: 0.3s;
	width: auto;
}

#header .header-contents .header-btn .header-btn__link.--bg-white {
	background-color: white;
	border: 1px solid #54C7BB;
	color: #54C7BB;
}

#header .header-contents .header-btn .header-btn__link.--bg-white:hover {
	background: linear-gradient(0deg, #3AD3C9, #3DDFA9);
	color: white;
}

#header .header-contents .header-btn .header-btn__link.--bg-red {
	background: linear-gradient(45deg, #DF3DA4, #D33A3A);
	border: 1px solid #D34A40;
	color: white;
}

#header .header-contents .header-btn .header-btn__link.--bg-red:hover {
	background: white;
	color: #D34A40;
}

#sp-menuBtn,
#sp-menuBtn__close {
	margin-right: 1.2em;
	width: 34px;
}

#sp-menuBtn img,
#sp-menuBtn__close img {
	-o-object-position: center;
	object-position: center;
}

#sp-menu {
	background-color: #fff;
	box-shadow: 6px 6px 10px rgba(84, 199, 187, 0.5);
	height: auto;
	left: 0;
	opacity: 0;
	padding-bottom: 40px;
	position: fixed;
	top: 0;
	transform: translateX(-105%);
	transition: 0.3s;
	visibility: hidden;
	width: 80%;
	z-index: 100;
}

#sp-menu .site-logo__wrapper {
	align-items: center;
	display: flex;
	height: 71px;
	padding: 15px 20px;
	width: 100%;
}

#sp-menu .site-logo {
	height: 40px;
	width: auto;
}

#sp-menu .site-logo a {
	height: auto;
	width: auto;
}

#sp-menu .site-logo img {
	-o-object-position: left;
	object-position: left;
}

#sp-menu .sp-menu-lists {
	margin-bottom: 21px;
}

#sp-menu .sp-menu-lists > li {
	border-bottom: 1px solid #F2F2F2;
	padding-left: 30px;
	padding-right: 30px;
}

#sp-menu .sp-menu-lists > li a {
	display: block;
	padding: 0.5em;
	padding-right: 1.5em;
	position: relative;
	transition: 0.3s;
}

#sp-menu .sp-menu-lists > li a::after {
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-image: url("../../img/icon/icon_arrow-forward.svg");
	background-color: #C2C2C2;
	content: "";
	display: inline-block;
	height: 0.5em;
	mask-image: url("../../img/icon/icon_arrow-forward.svg");
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	position: absolute;
	right: 0.5em;
	top: 50%;
	transform: translateY(-50%);
	width: 1em;
}

#sp-menu .sp-menu-lists > li:not(:first-child) a {
	padding-left: 2em;
	position: relative;
}

#sp-menu .sp-menu-lists > li:not(:first-child) a::before {
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	background-color: #54C7BB;
	content: "";
	display: inline-block;
	height: 1em;
	left: 0.5em;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1em;
}

#sp-menu .sp-menu-lists > li > .for-setting::before {
	-webkit-mask-image: url("../../img/icon/icon_hand.svg");
	mask-image: url("../../img/icon/icon_hand.svg");
}

#sp-menu .sp-menu-lists > li > .for-models::before {
	-webkit-mask-image: url("../../img/icon/icon_smartphone.svg");
	mask-image: url("../../img/icon/icon_smartphone.svg");
}

#sp-menu .sp-menu-lists > li > .for-price::before {
	-webkit-mask-image: url("../../img/icon/icon_price.svg");
	mask-image: url("../../img/icon/icon_price.svg");
}

#sp-menu .sp-menu-lists > li > .for-news::before {
	-webkit-mask-image: url("../../img/icon/icon_megaphone.svg");
	mask-image: url("../../img/icon/icon_megaphone.svg");
}

#sp-menu .sp-menu-lists > li > .for-faq::before {
	-webkit-mask-image: url("../../img/icon/icon_faq.svg");
	mask-image: url("../../img/icon/icon_faq.svg");
}

#sp-menu .sp-menu-lists > li > .for-contact::before {
	-webkit-mask-image: url("../../img/icon/icon_contact.svg");
	mask-image: url("../../img/icon/icon_contact.svg");
}

#sp-menu .inner {
	padding-left: 30px;
	padding-right: 30px;
}

#sp-menu .header-btn__wrapper {
	display: flex;
	margin-bottom: 1.5em;
	margin-left: auto;
	margin-right: auto;
	max-width: 600px;
}

#sp-menu .header-btn {
	width: calc((100% - 1em) / 2);
}

#sp-menu .header-btn:last-child {
	margin-left: 1em;
}

#sp-menu .header-btn .header-btn__link {
	border-radius: 11px;
	box-sizing: border-box;
	display: inline-block;
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
	padding: 16px 0.5em;
	text-align: center;
	transition: 0.3s;
	width: 100%;
}

#sp-menu .header-btn .header-btn__link.--bg-white {
	background-color: white;
	border: 1px solid #54C7BB;
	color: #54C7BB;
}

#sp-menu .header-btn .header-btn__link.--bg-red {
	background: linear-gradient(45deg, #DF3DA4, #D33A3A);
	border: 1px solid #D34A40;
	color: white;
}

#sp-menu .other-menu-lists li a {
	display: block;
	padding-bottom: 0.25em;
	padding-top: 0.25em;
}

#sp-menu .other-menu-lists li:not(:first-child) {
	margin-top: 0.25em;
}

#sp-menu.opened {
	opacity: 1;
	transform: translateX(0);
	visibility: visible;
}

.flex-column__wrapper {
	display: flex;
}

#footer {
	background-color: #fff;
	padding-bottom: 25px;
	padding-top: 38px;
}

#footer .footerMenu-container {
	margin-bottom: 54px;
}

#footer .footerMenu-container ul {
	align-items: flex-start;
	display: flex;
}

#footer .footerMenu-container ul li a {
	color: #54C7BB;
	font-size: 22px;
	font-weight: bold;
	transition: 0.3s;
}

#footer .footerMenu-container ul li a:hover {
	color: #3B5F77;
}

#footer .footerMenu-container ul li:not(:last-child) {
	margin-right: 2em;
}

#footer .footerMenu-container ul li.has-subMenu {
	margin-right: 0.5em;
}

#footer .footerMenu-container ul li:not(:first-child) a {
	padding-left: 2em;
	position: relative;
}

#footer .footerMenu-container ul li:not(:first-child) a:hover::before {
	background-color: #3B5F77;
}

#footer .footerMenu-container ul li:not(:first-child) a::before {
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	background-color: #54C7BB;
	content: "";
	display: inline-block;
	height: 1em;
	left: 0.5em;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s;
	width: 1em;
}

#footer .footerMenu-container ul li:not(:first-child) > .for-setting::before {
	-webkit-mask-image: url("../../img/icon/icon_hand.svg");
	mask-image: url("../../img/icon/icon_hand.svg");
}

#footer .footerMenu-container ul li:not(:first-child) > .for-models::before {
	-webkit-mask-image: url("../../img/icon/icon_smartphone.svg");
	mask-image: url("../../img/icon/icon_smartphone.svg");
}

#footer .footerMenu-container ul li:not(:first-child) > .for-price::before {
	-webkit-mask-image: url("../../img/icon/icon_price.svg");
	mask-image: url("../../img/icon/icon_price.svg");
}

#footer .footerMenu-container ul li:not(:first-child) > .for-news::before {
	-webkit-mask-image: url("../../img/icon/icon_megaphone.svg");
	mask-image: url("../../img/icon/icon_megaphone.svg");
}

#footer .footerMenu-container ul li:not(:first-child) > .for-faq::before {
	-webkit-mask-image: url("../../img/icon/icon_faq.svg");
	mask-image: url("../../img/icon/icon_faq.svg");
}

#footer .footerMenu-container ul li:not(:first-child) > .for-contact::before {
	-webkit-mask-image: url("../../img/icon/icon_contact.svg");
	mask-image: url("../../img/icon/icon_contact.svg");
}

#footer .footerMenu-container ul li .sub-menu {
	display: block;
	height: auto;
	width: auto;
}

#footer .footerMenu-container ul li .sub-menu li {
	margin-left: 0;
	margin-top: 0.25em;
}

#footer .footerMenu-container ul li .sub-menu li a {
	font-weight: normal;
}

#footer .footerMenu-container ul li .sub-menu li a::before {
	-webkit-mask: none;
	border-radius: 50%;
	height: 6px;
	left: 1em;
	mask: none;
	width: 6px;
}

#footer .footer-contents .footer-logo {
	border-bottom: 1px solid #3B5F77;
	height: 40px;
	margin-bottom: 1.5em;
	padding-bottom: 10px;
}

#footer .footer-contents .footer-logo img {
	-o-object-position: left;
	object-position: left;
}

#footer .footer-contents .footer-logo_sp {
	border-top: 1px solid #3B5F77;
	height: 40px;
	margin-bottom: 1em;
	margin-top: 1.5em;
	padding-top: 1em;
}

#footer .footer-contents .footer-logo_sp img {
	-o-object-position: center;
	object-position: center;
}

#footer .footer-contents .footerInformation-columns {
	align-items: center;
	justify-content: space-between;
}

#footer .footer-contents .otherMenu-container ul {
	display: flex;
}

#footer .footer-contents .otherMenu-container ul li:not(:first-child) {
	margin-left: 2em;
}

#footer .footer-contents .otherMenu-container ul li a {
	font-size: 16px;
	position: relative;
	transition: 0.3s;
}

#footer .footer-contents .otherMenu-container ul li a::after {
	background-color: #3B5F77;
	bottom: 0;
	content: "";
	display: block;
	height: 1px;
	left: 0;
	opacity: 0;
	position: absolute;
	transition: 0.3s;
	visibility: 0;
	width: 100%;
}

#footer .footer-contents .otherMenu-container ul li a:hover::after {
	opacity: 1;
	visibility: visible;
}

#footer .footer-contents small {
	font-size: 16px;
	line-height: 1em;
}

.section-title {
	padding-bottom: calc(31px + 1em);
}

.section-title * {
	color: #54C7BB;
	font-size: 83px;
}

.section-title .section-title__inner {
	display: inline-block;
	font-family: "Inter", sans-serif;
	font-weight: 100;
	line-height: 1;
	position: relative;
}

.section-title .section-title__inner .section-title__sub {
	bottom: -0.25em;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 31px;
	font-weight: 300;
	line-height: 1;
	position: absolute;
	right: 0;
	transform: translateY(100%);
	white-space: nowrap;
	word-break: keep-all;
}

.section-title .section-title__inner .section-title__sub img {
	display: inline;
	height: 31px;
	padding-right: 5px;
	width: auto;
}

.simple-title {
	font-size: 28px;
}

.color-title {
	color: #54C7BB;
	font-size: 32px;
}

.tab-title {
	background-color: #F0F0F0;
	border-left: 8px solid #54C7BB;
	font-size: 22px;
	padding: 0.25em calc(0.5em + 8px) 0.25em 0.5em;
}

.underLine-title {
	font-size: 20px;
	margin-bottom: 1em;
	padding: 0.25em 0;
	position: relative;
}

.underLine-title::before {
	background-color: #54C7BB;
	bottom: 0;
	content: "";
	display: inline-block;
	height: 2px;
	left: 0;
	position: absolute;
	width: 4.5em;
}

.underLine-title::after {
	background-color: #D4D4D4;
	bottom: 0;
	content: "";
	display: inline-block;
	height: 2px;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: -1;
}

.pickup-title {
	line-height: 1;
	margin-bottom: 2em;
	text-align: center;
}

.pickup-title * {
	font-family: "Inter", sans-serif;
}

.pickup-title span {
	color: #54C7BB;
	font-size: 60px;
	font-weight: 100;
	line-height: 1;
	padding: 0 0.5em;
	position: relative;
}

.pickup-title span::before,
.pickup-title span::after {
	background-color: #54C7BB;
	bottom: 0.2em;
	content: "";
	display: inline-block;
	height: 0.7em;
	position: absolute;
	width: 1px;
}

.pickup-title span::before {
	left: 0;
	transform: rotate(-40deg);
}

.pickup-title span::after {
	right: 0;
	transform: rotate(40deg);
}

.qa {
	margin-bottom: 2em;
}

.qa:last-child {
	margin-bottom: 0;
}

.qa * {
	font-size: 22px;
}

.qa .qa_q,
.qa .qa_a {
	margin: 10px;
	padding: 1em 3.5em;
	position: relative;
}

.qa .qa_q::before,
.qa .qa_a::before {
	content: "";
	display: block;
	font-family: "Inter", sans-serif;
	font-weight: bold;
	height: 1em;
	left: 1em;
	line-height: 1;
	position: absolute;
	text-align: center;
	top: 1.25em;
	width: 1em;
}

.qa .qa_q {
	border-radius: 22px;
	box-shadow: 10px 10px 10px rgba(204, 211, 216, 0.6), -7px -7px 10px #Fff;
	color: #54C7BB;
	cursor: pointer;
}

.qa .qa_q::before {
	content: "Q";
}

.qa .qa_q::after {
	content: "＋";
	display: block;
	font-weight: bold;
	height: 1em;
	line-height: 1;
	position: absolute;
	right: 1em;
	text-align: center;
	top: 1.25em;
	transition: 0.3s;
	width: 1em;
}

.qa .qa_q.opened::after {
	content: "−";
}

.qa .qa_a {
	display: none;
	opacity: 0;
	padding-bottom: 0;
	transition: opacity 0.3s;
	visibility: hidden;
}

.qa .qa_a::before {
	content: "A";
}

.qa .qa_a.opened {
	opacity: 1;
	visibility: visible;
}

.qa .qa_a a {
	color: #54C7BB;
	text-decoration: underline;
	transition: 0.3s;
}

.qa .qa_a a:hover {
	opacity: 0.8;
}

.information-lists {
	margin: auto;
	max-width: 600px;
	width: 100%;
}

.information-list:not(:last-child) {
	margin-bottom: 1.5em;
}

.information-list * {
	font-size: 16px;
	line-height: 1;
}

.information-list a {
	transition: 0.3s;
	white-space: nowrap;
	width: 100%;
}

.information-list a:hover .information-title {
	color: #54C7BB;
}

.information-date,
.information-cat,
.information-title {
	display: inline-block;
	padding-bottom: 0.5em;
	padding-top: 0.5em;
}

.information-date {
	margin-right: 0.5em;
}

.information-cat {
	background-color: #54C7BB;
	border-radius: 16px;
	color: #fff;
	margin-right: 1em;
	padding-left: 0.8em;
	padding-right: 0.8em;
}

.information-title {
	max-width: 60%;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: 0.3s;
	vertical-align: top;
	white-space: nowrap;
}

.og-list {
	border-bottom: 1px solid #d1d1d1;
	padding: 0.5em 1em 0.5em 1.5em;
	position: relative;
}

.og-list::before {
	background-color: #54C7BB;
	border-radius: 50%;
	content: "";
	display: inline-block;
	height: 6px;
	left: 0.5em;
	position: absolute;
	top: 1.25em;
	transform: translate(-50%, -50%);
	width: 6px;
}

.og-list a {
	transition: 0.3s;
}

.og-list a:hover {
	opacity: 0.8;
}

.planCards {
	display: flex;
	flex-wrap: wrap;
}

.planCard {
	height: auto;
	transition: opacity 0.3s, visibility 0.3s;
}

.planCard:nth-child(3n+1) .planCard__link {
	border-color: #54C7BB;
}

.planCard:nth-child(3n+1) .planCard__link .planCard__price {
	color: #54C7BB;
}

.planCard:nth-child(3n+2) .planCard__link {
	border-color: #FDD859;
}

.planCard:nth-child(3n+2) .planCard__link .planCard__price {
	color: #FDD859;
}

.planCard:nth-child(3n) .planCard__link {
	border-color: #8F69A3;
}

.planCard:nth-child(3n) .planCard__link .planCard__price {
	color: #8F69A3;
}

.planCard.vietnam .planCard__img {
	background-position: right center;
}

.planCard.thailand .planCard__img {
	background-position: 25% center;
}

.planCard.singapore .planCard__img {
	background-position: right center;
}

.planCard.indonesia .planCard__img {
	background-position: 70% center;
}

.planCard.china .planCard__img {
	background-position: 30% center;
}

.planCard__link {
	background-color: white;
	border: 1px solid;
	border-radius: 11px;
	display: flex;
	height: 100%;
	overflow: hidden;
	transition: 0.3s;
	width: 100%;
}

.planCard__link:hover {
	opacity: 0.7;
}

.planCard__img,
.planCard__body {
	display: block;
	height: auto;
	width: 50%;
}

.planCard__img {
	background: center/cover no-repeat;
}

.planCard__img img {
	display: none;
	height: 100%;
	width: 100%;
}

.planCard__body {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	padding: 1.5em 0.5em 1.5em 0.5em;
}

.planCard__body p {
	text-align: center;
	width: 100%;
}

.planCard__body .planCard__country {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 0.5em;
}

.planCard__body .planCard__expirydays {
	font-size: 16px;
}

.planCard__body .planCard__price {
	font-size: 33px;
	font-weight: bold;
	margin-bottom: 0.25em;
}

.planCard__body .planCard__traffic {
	font-size: 16px;
}

.price-attention {
	font-size: 20px;
	margin-top: 1em;
	text-align: right;
}

.search-title {
	color: #54C7BB;
	font-size: 37px;
	margin-bottom: 0.5em;
}

.search-items {
	display: flex;
	flex-wrap: none;
	max-width: 700px;
	width: 100%;
}

.search-form,
.search-btn {
	display: inline-block;
	font-size: 22px;
	padding: 0.5em 1em;
}

.search-form {
	background-color: white;
	border: 1px solid #D3D3D3;
	margin-right: 1em;
	width: calc(100% - 6em);
}

.search-form::-moz-placeholder {
	color: #d3d3d3;
}

.search-form::placeholder {
	color: #d3d3d3;
}

.search-btn {
	background-color: #54C7BB;
	border-color: #54C7BB;
	color: white;
	min-width: 5em;
}

.planTable__title {
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent;
	background: linear-gradient(45deg, #3AD3C9, #3DDFA9);
	background-clip: text;
	font-size: 30px;
	font-weight: bold;
	margin-top: 2em;
	text-align: center;
}

.planTable__catch {
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent;
	background: linear-gradient(45deg, #3AD3C9, #3DDFA9);
	background-clip: text;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 0.5em;
	text-align: center;
}

.planTable__catch.totalPlan {
	margin-top: 2em;
}

.planTable__catch.dailyPlan {
	margin-top: 2em;
}

.planTable__catch.excursionPlan {
	margin-top: 2em;
}

.planTable__wrapper {
	width: 100%;
}

.planTable {
	table-layout: fixed;
	width: 100%;
}

.planTable th,
.planTable td {
	font-size: 20px;
	padding: 0.5em 0.25em;
	text-align: center;
}

.planTable th,
.planTable th * {
	color: white;
}

.planTable td {
	background-color: #f5f5f5;
}

.planTable.totalPlanTable th {
	background-color: #54acc7;
}

.planTable.dailyPlanTable th {
	background-color: #54C7BB;
}

.planTable.excursionPlanTable th {
	background-color: #9A70D0;
}

.planTable__attention {
	font-size: 20px;
	margin-top: 0.5em;
	text-align: right;
}

.region__btns {
	display: flex;
	flex-wrap: wrap;
}

.region__btn {
	background-color: rgba(84, 199, 187, 0.22);
	border: none;
	border-radius: 9px;
	cursor: pointer;
	padding: 0.5em;
	transition: 0.3s;
}

.region__btn:hover {
	background-color: #54C7BB;
	color: #fff;
}

.region__btn:nth-child(n+5) {
	border-radius: 9px 9px 0 0;
}

.region__btn.selected {
	background-color: #54C7BB;
	color: #fff;
	cursor: default;
	pointer-events: none;
}

.country__btns {
	border: 1px solid #54C7BB;
	padding: 1.5em 2em;
}

.country__btn {
	cursor: pointer;
	padding-left: 1.5em;
	position: relative;
	transition: 0.3s;
}

.country__btn:hover {
	opacity: 0.7;
}

.country__btn::before {
	border-bottom: 0.4em solid transparent;
	border-left: 0.6em solid #54C7BB;
	border-top: 0.4em solid transparent;
	content: "";
	display: inline-block;
	height: 0.4em;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 0.6em;
}

.country__btn:not(:last-child) {
	margin-bottom: 1em;
}

.country__btn.error {
	cursor: inherit;
	padding-left: 0;
	pointer-events: none;
}

.country__btn.error:hover {
	opacity: 1;
}

.country__btn.error::before {
	display: none;
}

@media screen and (min-width: 768px) and (max-width: 1049px) {

.section-title {
	padding-bottom: calc(18px + 0.25em);
}

.section-title * {
	font-size: 62px;
}

.section-title .section-title__inner .section-title__sub {
	font-size: 18px;
}

.section-title .section-title__inner .section-title__sub img {
	height: 18px;
}

.qa * {
	font-size: 18px;
}

}

@media screen and (min-width: 768px) {

.region__btn {
	width: calc((100% - 1.5em) / 4);
}

.region__btn:not(:nth-child(4n+1)) {
	margin-left: 0.5em;
}

.region__btn:nth-child(n+5) {
	margin-top: 0.5em;
}

}

@media screen and (min-width: 1050px) and (max-width: 1200px) {

#header .header-contents .site-logo .logo-text {
	font-size: 18px;
}

#header .header-contents .gnav-container > ul > li {
	margin-right: 0.5em;
}

#header .header-contents .header-btn:last-child {
	margin-left: 1em;
}

#header .header-contents .header-btn .header-btn__link {
	min-width: 120px;
}

}

@media screen and (min-width: 1050px) {

#sp-menuBtn,
#sp-menuBtn__close {
	display: none;
}

#sp-menu {
	display: none;
}

#footer .footerMenu-container.--sp {
	display: none;
}

#footer .footer-contents .footer-logo_sp {
	display: none;
}

}

@media screen and (max-width: 1049px) {

#header .header-contents .site-logo .logo-text {
	display: none;
}

#header .header-contents .site-logo {
	height: 26px;
}

#header .header-contents .gnav-container {
	display: none;
}

#header .header-contents .header-btn:first-child {
	display: none;
}

#header .header-contents .header-btn:last-child {
	margin-left: 1em;
}

#sp-menu .site-logo {
	height: 26px;
}

#footer .footerMenu-container {
	width: 100%;
}

#footer .footerMenu-container.--pc {
	display: none;
}

#footer .footerMenu-container ul {
	display: block;
}

#footer .footerMenu-container ul li {
	width: 100%;
}

#footer .footerMenu-container ul li a {
	font-size: 18px;
}

#footer .footerMenu-container ul li:not(:last-child) {
	margin-bottom: 0.5em;
	margin-right: 0;
}

#footer .footer-contents .footer-logo {
	display: none;
}

#footer .footer-contents .footerInformation-columns {
	display: block;
}

#footer .footer-contents .otherMenu-container {
	width: 100%;
}

#footer .footer-contents .otherMenu-container ul {
	flex-wrap: wrap;
	margin-bottom: 30px;
	width: 100%;
}

#footer .footer-contents .otherMenu-container ul li {
	text-align: center;
	width: 100%;
}

#footer .footer-contents .otherMenu-container ul li:not(:first-child) {
	margin-left: 0;
	margin-top: 0.5em;
}

#footer .footer-contents small {
	display: block;
	text-align: center;
	width: 100%;
}

.section-title .section-title__inner .section-title__sub {
	left: 0;
	right: initial;
}

.simple-title {
	font-size: 22px;
}

.search-title {
	font-size: 22px;
}

.planTable th,
.planTable td {
	font-size: 18px;
}

}

@media screen and (max-width: 767px) {

.og-btn a {
	font-size: 17px;
}

.outlineBtn {
	text-align: center;
}

.outlineBtn a {
	min-width: 200px;
}

.color-btn .color-btn__link {
	font-size: 19px;
	max-width: calc(100% - 60px);
	padding: 1em 3em;
}

#header .header-contents {
	flex-wrap: nowrap;
}

#header .header-contents .header-btn .header-btn__link {
	font-size: 15px;
	min-width: 7em;
	padding: 0.8em 0.5em;
}

.section-title {
	padding-bottom: calc(13px + 0.25em);
}

.section-title * {
	font-size: 38px;
}

.section-title .section-title__inner .section-title__sub {
	font-size: 13px;
}

.section-title .section-title__inner .section-title__sub img {
	height: 13px;
}

.underLine-title {
	font-size: 18px;
}

.pickup-title {
	margin-bottom: 1em;
}

.pickup-title span {
	font-size: 40px;
}

.qa * {
	font-size: 16px;
}

.information-list a {
	white-space: inherit;
}

.information-cat {
	padding-left: 1em;
	padding-right: 1em;
}

.information-title {
	line-height: 1.5em;
	max-width: initial;
	overflow: inherit;
	text-overflow: inherit;
	white-space: inherit;
}

.planCard__link {
	flex-wrap: wrap;
}

.planCard__img,
.planCard__body {
	height: auto;
	width: 100%;
}

.planCard__img {
	aspect-ratio: 4/3;
}

.planCard__body {
	padding: 1em 0.5em;
}

.planCard__body .planCard__country {
	margin-bottom: 0;
}

.planCard__body .planCard__price {
	font-size: 28px;
	margin-bottom: 0.125em;
}

.price-attention {
	font-size: 14px;
}

.search-form,
.search-btn {
	font-size: 16px;
}

.planTable__title {
	font-size: 24px;
}

.planTable__catch {
	font-size: 18px;
}

.planTable__wrapper {
	overflow-x: scroll;
}

.planTable {
	width: 900px;
}

.planTable .not-found {
	padding-left: 1em;
	padding-right: 1em;
	text-align: left;
}

.planTable__attention {
	font-size: 14px;
	width: 900px;
}

.planTable__attention.planTable__attention_end {
	width: 100%;
}

.region__btns__wrapper {
	overflow-x: scroll;
	width: 100%;
}

.region__btns {
	flex-wrap: nowrap;
	width: 45em;
}

.region__btn {
	border-radius: 9px 9px 0 0 !important;
	width: 6em;
}

.region__btn:nth-child(n+2) {
	margin-left: 0.5em;
}

.region__btn:nth-child(n+5) {
	border-radius: 9px;
}

}

@media screen and (max-width: 374px) {

#header .header-contents .header-btn .header-btn__link {
	padding-left: 0.5em;
	padding-right: 0.5em;
}

}

