/*
* Theme Name: kaitolease
* Description:
* Theme URI: Lino 2024
* Version: 1.0
* Theme Author: ゴーリエム
* Author URI:
* Tags: basic
* Textdomain:
* Languages Folder: /languages
*/
/* Default---------------------------------------------- */
@charset "utf-8";

@font-face {
	font-family: Helvetica;
	src: url("font/HelveticaNowDisplay-Light.ttf") format("opentype");
}
@font-face {
	font-family: Helvetica-B;
	src: url("font/HelveticaNowDisplay-ExtraBold.ttf") format("opentype");
}


html {
	overflow-x: hidden;
	padding: 0;
	margin: 0;
	scroll-behavior: smooth;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
}
h1, h2, h3, h4, h5{
	font-weight: bold;
}
/*menu*/
/* Important stuff here! Look at the bottom!!! (Line 133 to 136) */
*,
*::after,
*::before {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

:root {
	--nav-bg: #000000e8;
	--main-clr: dodgerblue;
	--nav-shadow: 0px 3px var(--main-clr);
}
.st-pusher{
	overflow: hidden;
}
.main-blue-color{
	color: #0092B3;
}
.transition-tranform{
	transition: transform 0.3s ease-in-out;;
}
.header {
	width: 100%;
	position: fixed;
	z-index: 100;
	border-bottom: 10px solid transparent;
	border-image: url('./img/menu-border.svg') 30 round;
}
.header-bg{
	background: #FFFFFF;
}
nav.menu-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 90%;
	margin: auto;
}

nav.menu-top .logo{width: 20%;}
nav.menu-top .logo a{
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	font-size: 7px;
	color: #797979;
	flex-direction: column;
}

nav.menu-top ul {
	--height: 0;
	--padding: 5vw;
	--font-size: 3.5vw;

	flex-direction: column;
	background: var(--nav-bg);
	position: absolute;
	width: 100%;
	left: 0;
	top: 13.5vw;
	height: var(--height);
	transition: 1s cubic-bezier(.68,-0.55,.27,1.55);
	list-style: none;
	display: flex;
	align-items: center;
	font-size: var(--font-size);
	overflow-y: hidden;
	-webkit-box-shadow: 0 5px 7px -6px black;
	-moz-box-shadow: 0 5px 7px -6px black;
	box-shadow: 0 5px 7px -6px black;
}
nav.menu-top ul.active {
	--height: calc((((var(--padding) * 2.5) + (var(--font-size) * 1.5))) * var(--childenNumber));
	transition: 1s ease;
}

nav.menu-top ul li {
	width: 100%;
	text-align: center;
	padding: var(--padding);
}
nav.menu-top ul li a {
	width: 100%;
	text-transform: capitalize;
	color: #fff;
	text-decoration: none;
	position: relative;
	font-size: 4vw;
}
nav.menu-top ul li a::after {
	content: "";
	width: 0%;
	height: 1.7px;
	border-radius: 99px;
	background: var(--main-clr);
	position: absolute;
	bottom: 0;
	left: 0;
	transition: 0.3s ease;
}

nav.menu-top ul li a:hover::after {
	width: 100%;
}

nav.menu-top .menu {
	width: 13.5vw;
	height: 13.5vw;
	cursor: pointer;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	padding: 4vw 3.5vw;
	background: #0092B3;
}
nav.menu-top .active {
	padding: 4vw 2.2vw 4vw 4.2vw;
}

nav.menu-top .menu span {
	width: 100%;
	height: 1vw;
	/*border-radius: 99px;*/
	background: #fff;
	transition: 0.3s ease;
	transform-origin: left;
}

nav.menu-top .menu.active span {
	background: #ffffff;
}

nav.menu-top .menu.active span:nth-child(1) {
	transform: rotate(40deg);
}

nav.menu-top .menu span:nth-child(3) {
	transform-origin: left;
}

nav.menu-top .menu.active span:nth-child(3) {
	transform: rotate(-40deg);
}

nav.menu-top .menu.active span:nth-child(2) {
	transform: scale(0);
}
.menu-right{
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-end;
	height: 100%;
}
.logo-line img{
	height: 13.5vw;
}
.menu-a-pc{
	color: #000000;
	margin-right: 35px;
}
.menu-a-pc:hover{
	color: #FF0000;
}
.box-btn{
	padding-bottom: 20vw;
}
nav.menu-top .logo img {
	width: 175px;
	margin-top: 10px;
}

.inner{
	max-width: 900px;
	margin: auto;
}

.box-btn-box{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	height: 100%;
}

.box-btn {
	width: 60%;
	margin: auto;
}
.box-btn p {
	font-size: 13px;
	padding-top: 10px;
	padding-left: 25px;
}
.menu-right .box-btn-box a{
	background: #23A6EB;
	color: #ffffff;
	width: 270px;
	height: 100%;
}
.box-btn-l{
	color: #090E18;
	font-size: 12px;
}
.box-btn-l span{
	display: block;
	font-family: 'din';
	color: #469FDB;
	font-size: 27px;
	margin-top: 10px;
}
.box-btn-l span img{
	margin-right: 5px;
}
.box-btn-r{
	font-size: 18px;
	font-weight: 500;
	padding: 25px 35px 30px 35px;
	margin-bottom: 15px;
	margin-left: 15px;
	background: #469FDB;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
	color: #ffffff;
}

/*end menu*/

/*top*/
#primary{
	overflow: hidden;
	margin-top: 105px;
}
.ct1{
	margin-top: 55px;
	position: relative;
	margin-bottom: -120px;
	z-index: 1;
}
.ct1a{
	max-width: 940px;
	margin: auto;
}
.ct1 .ct1-icon{

	width: 450px;

	position: absolute;

	bottom: 0;
}
.ct2{
	background: #63AEE1;
	padding-top: 208px;
	position: relative;
	text-align: center;
}
.ct2-p1{
	font-size: 27px;
	color: #ffffff;
	padding: 30px 20px 80px 20px;
	line-height: 2;
	text-align: left;
}
.ct2-p2{
	font-size: 18px;
	color: #ffffff;
	padding-top: 40px;
	padding-bottom: 120px;
	line-height: 2.2;
	text-align: left;
}

.tooltip-triangle {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-top: 24px solid #63AEE1;
	filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.1));
}
.cmnContact{
	background: #D7EEFC;
	padding: 100px 0;
}
.cmnContact-box{display: flex;flex-direction: column;align-items: center;}
.cmnContact-box p{
	width: 330px;
	text-align: center;
	font-size: 18px;
	padding-bottom: 10px;
	border-bottom: 1px solid #090E18;
	margin-bottom: 25px;
}
.cmnContact-tel{
	color: #469FDB;
	font-size: 60px;
	font-family: 'din';
	text-align: center;
	margin-bottom: 50px;
}
.cmnContact-tel img{
	width: 40px;
	margin-right: 10px;
	margin-bottom: 2px;
}
.cmnContact-tel span{
	font-size: 15px;
	width: 100%;
	display: block;
	margin-top: 10px;
}
.cmnContact-2{
	display: flex;
	justify-content: center;
	align-items: center;
}
.cmnContact-2 a{display: flex;width: 400px;align-items: center;justify-content: center;margin: 0 30px;padding: 35px 0;font-weight: 500;font-size: 26px;color: #ffffff;border-radius: 18px;box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;}
.cmnContact-2 a:nth-child(1){
	background: #469FDB;
}
.cmnContact-2 a:nth-child(2){
	background: #265B7D;
}
.ct3{
	background: #63AEE1;
	padding-top: 125px;
	padding-bottom: 75px;
}
.ct3-title{
	text-align: center;
	color: #ffffff;
	font-size: 34px;
	margin-bottom: 50px;
	font-weight: 400;
}
.ct3 img{
	margin-bottom: 125px;
}
.ct4{
	background: #D7EEFC;
	padding-top: 125px;
	padding-bottom: 10px;
}
.ct4 .ct4-title{
	text-align: center;
	font-size: 34px;
	color: #469FDB;
	padding-bottom: 40px;
	font-family: 'LINESeedJP-bold';
	font-weight: unset;
}
.ct4 h4{
	font-size: 26px;
	padding-left: 30px;
	color: #3C3C3C;
	margin-bottom: 30px;
	font-family: 'LINESeedJP-bold';
	font-weight: unset;
}
.ct4 h4 span{
	padding: 5px 12px 5px 12px;
	background: #3C3C3C;
	color: #ffffff;
	border-radius: 50%;
	margin-right: 20px;
	font-size: 21px;
}
.ct4 p{
	padding: 45px 30px;
	background: #FFFFFF;
	border-radius: 10px;
	margin-bottom: 65px;
	font-size: 30px;
	color: #FFA700;
	font-family: 'LINESeedJP';
}
.ct4 p span{padding: 3px 13px 7px 13px;background: #469FDB;color: #ffffff;border-radius: 50%;margin-right: 20px;font-size: 21px;font-weight: bold;}
footer{
	padding: 85px 0;
}
footer img{
	width: 210px;
	margin-bottom: 30px;
}
footer p{
	font-size: 18px;
	color: #265B7D;
}
#policy_check{
	text-align: center;
	border: 5px solid #469FDB;
	font-size: 16px;
	padding: 25px;
	margin-top: 90px;
	margin-bottom: 20px;
}
#policy_check a{
	color: #0092db;
}

/*privacy*/
.privacy-form{
	padding-top: 70px;
	max-width: 1100px;
	margin: auto;
	padding-bottom: 100px;
}
.privacy-form .section-title{
	color: #004B9E;
	padding-bottom: 70px;
	text-align: center;
	padding-top: 120px;
}
.privacy-form .section-title h2 {
	font-size: 40px;
	padding-top: 27px;
	padding-bottom: 5px;
}
.privacy-form .privacy-content{
	border: 1px solid #004B9E;
	padding: 60px 50px;
	margin-bottom: 25px;
}
.privacy-content p{
	font-size: 19px;
	line-height: 1.5;
	padding-bottom: 60px;
	padding-top: 18px;
}
.privacy-content ul{
	padding-left: 20px;
}
.privacy-content ul li{
	font-size: 16px;
}
.privacy-content ul li p{
	font-size: 16px;
}
.privacy-back a{
	width: 95px;
	display: inline-block;
}
.privacy-back img{
	width: 100%;
	margin-right: 10px;
}
.ft-logo{
	font-size: 18px;
	color: #265B7D;
	padding-bottom: 10px;
}
@media screen and (max-width:1800px){
	nav.menu-top {
		max-width: 95%;
	}
	nav.menu-top .logo {
		width: 16%;
	}
	.ct1 .ct1-icon {
		width: 305px;
	}
}
@media (min-width: 1200px) {
}
@media screen and (min-width:737px){
	.is-sp{
		display: none;
	}
}
@media screen and (max-width:737px){
	#primary {
		margin-top: 50px;
	}
	.inner {
		max-width: 90%;
	}
	.is-pc{
		display: none;
	}
	nav.menu-top {
		max-width: 100%;
	}
	nav.menu-top .logo {
		width: 27%;
		margin-left: 15px;
	}
	nav.menu-top .logo img {
		width: 100%;
		margin-top: 0;
	}
	.ct1 {
		margin-bottom: -10vw;
	}
	.ct1 .ct1-icon {
		width: 10%;
		bottom: 10vw;
	}
	.ct2 {
		padding-top: 100px;
	}
	.ct2-p1 {
		font-size: 3.5vw;
		padding: 30px 0 50px 0;
	}
	.ct2-p2 {
		font-size: 3.5vw;
		padding: 30px 0 50px 0;
	}
	.cmnContact {
		padding: 55px 0;
	}
	.cmnContact-box p {
		width: 65%;
		font-size: 3.5vw;
		padding-bottom: 2vw;
		margin-bottom: 5vw;
	}
	.cmnContact-tel {
		font-size: 8vw;
		margin-bottom: 5vw;
	}
	.cmnContact-tel img {
		width: 6vw;
		margin-right: 1vw;
	}
	.cmnContact-tel span {
		font-size: 3vw;
		margin-top: 2vw;
	}
	.cmnContact-2 {
		width: 100%;
	}
	.cmnContact-2 a {
		width: 44%;
		margin: 0 2%;
		padding: 5vw 0;
		font-size: 5vw;
	}
	.ct3 {
		padding: 55px 0;
	}
	.ct3-title {
		font-size: 5vw;
		margin-bottom: 8vw;
	}
	.ct3 img {
		margin-bottom: 15vw;
	}
	.ct4{
		padding: 55px 0;
	}
	.ct4 .ct4-title {
		font-size: 5vw;
		padding-bottom: 8vw;
	}
	.ct4 h4 {
		font-size: 3.5vw;
		padding-left: 3vw;
		margin-bottom: 5vw;
	}
	.ct4 h4 span {
		padding: 0.8vw 2.2vw 0.8vw 2.2vw;
		margin-right: 2vw;
		font-size: 4vw;
	}
	.ct4 p {
		padding: 4vw 3vw;
		margin-bottom: 10vw;
		font-size: 4vw;
		line-height: 1.5;
	}
	.ct4 p span {
		padding: 1.1vw 2.5vw 0.8vw 2.5vw;
		margin-right: 2vw;
		font-size: 4vw;
		float: left;
	}

	footer img {
		width: 50%;
		margin-bottom: 3vw;
	}
	footer p {
		font-size: 3.3vw;
		color: #265B7D;
	}
	footer {
		padding: 85px 0 100px 0;
	}

	.form_cont {
		text-align: center;
		padding-top: 35vw;
		padding-bottom: 5vw;
	}
	.ct1a {
		max-width: 92%;
	}

	.privacy-form .privacy-content{
		padding: 3vw 2vw;
		margin-bottom: 5vw;
	}
	.privacy-content p {
		font-size: 3.5vw;
		padding-bottom: 8vw;
		padding-top: 2vw;
	}
	.privacy-content ul {
		padding-left: 5vw;
	}
	.privacy-content ul li {
		font-size: 3vw;
	}
	.privacy-content ul li p {
		font-size: 3vw;
	}
	.privacy-form .section-title {
		color: #004B9E;
		padding-bottom: 12vw;
		padding-top: 10vw;
	}

	.section-title {
		padding-top: 10vw;
		padding-bottom: 10vw;
	}
	.section-title img{
		width: 10%;
	}
	.privacy-form .section-title h2 {
		font-size: 5vw;
		padding-top: 2vw;
		padding-bottom: 1vw;
	}
	.section-title p {
		font-size: 2.5vw;
	}
	.privacy-form {
		max-width: 95%;
	}

	#policy_check {
		font-size: 3.5vw;
		line-height: 1.8;
		padding: 3vw 0;
		margin-top: 15vw;
		margin-bottom: 5vw;
	}
}
.animate__animated.animate__delay-0_5s {
	-webkit-animation-delay: 0.5s;
	animation-delay: 0.5s;
	-webkit-animation-delay: calc(var(--animate-delay) * 0.5);
	animation-delay: calc(var(--animate-delay) * 0.5)
}
.animate__animated.animate__delay-0_8s {
	-webkit-animation-delay: 0.8s;
	animation-delay: 0.8s;
	-webkit-animation-delay: calc(var(--animate-delay) * 0.8);
	animation-delay: calc(var(--animate-delay) * 0.8)
}
.animate__animated.animate__delay-1_1s {
	-webkit-animation-delay: 1.1s;
	animation-delay: 1.1s;
	-webkit-animation-delay: calc(var(--animate-delay) * 1.1);
	animation-delay: calc(var(--animate-delay) * 1.1)
}
.animate__animated.animate__delay-1_8s {
	-webkit-animation-delay: 1.8s;
	animation-delay: 1.8s;
	-webkit-animation-delay: calc(var(--animate-delay) * 1.8);
	animation-delay: calc(var(--animate-delay) * 1.8)
}
.animate__animated.animate__delay-2_3s {
	-webkit-animation-delay: 2.3s;
	animation-delay: 2.3s;
	-webkit-animation-delay: calc(var(--animate-delay) * 2.3);
	animation-delay: calc(var(--animate-delay) * 2.3)
}
.animate__animated.animate__delay-2_6s {
	-webkit-animation-delay: 2.6s;
	animation-delay: 2.6s;
	-webkit-animation-delay: calc(var(--animate-delay) * 2.6);
	animation-delay: calc(var(--animate-delay) * 2.6)
}
.animate__animated.animate__delay-2_9s {
	-webkit-animation-delay: 2.9s;
	animation-delay: 2.9s;
	-webkit-animation-delay: calc(var(--animate-delay) * 2.9);
	animation-delay: calc(var(--animate-delay) * 2.9)
}
