@charset "UTF-8";

.sp {
	display: none !important;
}


body {
}





header {
	position: fixed;
	width: 100%;
	height: 88px;
	left: 0;
	top: 0;
	z-index: 1000;
	border-radius: 0 0 10px 10px;
	
	background: rgba(255, 255, 255, 0.95);
	box-shadow: 0px 2px 5px rgba(29, 29, 29, 0.1);
	-webkit-backdrop-filter: blur(15px);
	backdrop-filter: blur(15px);
}
.header-inner {
	box-sizing: border-box;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 88px;
	padding: 0 20px 0 24px;
}
.header-inner .logo {
	width: 284px;
}

#menu-button {
	display: none;
}

#menu .menu-inner {
	display: flex;
	align-items: center;
}
#menu ul {
	display: flex;
	align-items: center;
}
#menu li + li {
	margin-left: 15px;
}
#menu ul a {
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	color: #193d73;
}

#menu .tel {
	position: relative;
	margin-left: 40px;
	text-align: center;
	color: #0044a7;
}
#menu .tel dt {
	font-size: 13px;
	font-weight: 700;
}
#menu .tel dd {
	font-size: 19px;
	font-weight: 600;
	font-family: "Montserrat", sans-serif;
	letter-spacing: 6%;
}
#menu .tel::before {
	position: absolute;
	content: "";
	display: block;
	width: 2px;
	height: 48px;
	left: -20px;
	top: calc(50% - 24px);
	background: #0044a7;
	opacity: 0.24;
	transform: scaleX(0.75) rotate(40deg);
}


#menu .form dt {
	display: none;
}

#menu .tool {
	display: flex;
	justify-content: space-between;
	width: 208px;
	margin-left: 20px;
}

#menu .login a {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 56px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	color: #0044a7;
	background: #fff;
	border: 1px solid #0044a7;
	border-radius: 10px;
}
#menu .form a {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 56px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	background: #0044a7;
	border: 1px solid #0044a7;
	border-radius: 10px;
}

#menu .login a span {
	display: block;
}
#menu .login a span:nth-child(1) {
	margin-bottom: 4px;
	font-size: 14px;
}







footer {
	position: relative;
	min-height: 300px;
	z-index: 50;
	padding: 60px 0 25px;
	background: #0044a7;
	border-radius: 10px 10px 0 0;
}
footer a {
	color: #fff;
}

.footer-inner {
	box-sizing: border-box;
	position: relative;
	max-width: calc(1180px + 160px);
	margin: 0 auto;
	padding: 0 80px;
	color: #fff;
}

footer .site-title {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin: 0 0 30px;
	padding: 0 0 20px;
	border-bottom: 1px solid rgba(255,255,255,0.4);
}
footer .site-title dl {
	display: flex;
	align-items: flex-end;
	line-height: 1;
}
footer .site-title dt {
	font-size: 28px;
	font-weight: 500;
}
footer .site-title dd {
	position: relative;
	top: 0;
	margin-left: 10px;
	font-size: 14px;
	font-weight: 500;
}
footer .site-title .address {
	font-size: 12px;
	font-weight: 500;
}


footer .site-links {
	display: flex;
	justify-content: space-between;
}
footer .menu {
	width: calc(100% - 450px - 30px);
	max-width: 720px;
}
footer .tool {
	width: 450px;
}

footer .menu > ul {
	display: grid;
	grid-template-columns: repeat(3, 33.33%);
}
footer .menu > ul > li {
	box-sizing: border-box;
	padding-right: 20px;
}

footer .menu > ul > li:nth-child(1) {
	grid-column: 1 / 2;
}
footer .menu > ul > li:nth-child(2) {
	grid-column: 2 / 3;
}
footer .menu > ul > li:nth-child(3) {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
}
footer .menu > ul > li:nth-child(4) {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
}
footer .menu > ul > li:nth-child(5) {
	grid-column: 3 / 4;
	grid-row: 2 / 3;
}
footer .menu > ul > li:nth-child(n + 3) {
	margin-top: 16px;
}


footer .menu > ul > li > a {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.75;
}

footer .menu ul ul a {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.75;
}

footer .menu ul ul {
	margin: 5px 0 0;
}
footer .menu ul ul li {
	position: relative;
	padding-left: 0.75em;
	text-indent: -0.75em;
}
footer .menu ul ul li::before {
	display: inline-block;
	content: "-";
	width: 0.75em;
	text-indent: 0;
}


footer .tool dt {
	font-size: 13px;
	font-weight: 500;
}
footer .tool dd {
	margin: 10px 0 0;
}
footer .tool .form {
	margin-top: 24px;
}
footer .tool a {
	box-sizing: border-box;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 56px;
	font-size: 15px;
	font-weight: 700;
	border-radius: 10px;
}
footer .tool a::after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 15px;
	right: 26px;
	top: calc(50% - 7px);
}

footer .tel {
	display: none;
}

footer .login a {
	border: 1px solid #fff;
	background: rgba(255,255,255,0.15);
}
footer .form a {
	color: #0044a7;
	border: 1px solid #fff;
	background: #fff;
}

/*
footer .login a::after {
	background: url(../img/arrow_blue.svg) 0 0 no-repeat;
	background-size: 100% auto;
	filter: brightness(0) invert(1);
}
footer .form a::after {
	background: url(../img/arrow_blue.svg) 0 0 no-repeat;
	background-size: 100% auto;
}
*/



footer .extra {
	display: flex;
	justify-content: space-between;
	margin: 50px 0 0;
}
footer .extra ul {
	display: flex;
}
footer .extra li {
	position: relative;
}
footer .extra li + li {
	margin-left: 16px;
}
footer .extra li + li::before {
	position: absolute;
	content: "";
	display: block;
	width: 1px;
	height: 14px;
	left: -8px;
	top: calc(50% - 5px);
	background: rgba(255,255,255,0.5);
}

footer .extra ul a {
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
}
footer .copyright {
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
}


@media screen and (max-width:1279px) {
	.header-inner .logo {
	}
	
	#menu li + li {
		margin-left: 14px;
	}
	#menu ul a {
		font-size: 14px;
	}
	
	#menu .tel {
		margin-left: 30px;
	}
	#menu .tel::before {
		left: -15px;
	}
	#menu .tel dt {
		font-size: 11px;
	}
	#menu .tel dd {
		font-size: 15px;
	}
	
	#menu .tool {
		width: 188px;
		margin-left: 10px;
	}
	#menu .tool a {
		width: 90px;
	}
	#menu .tool a,
	#menu .tool a * {
		font-size: 12px;
	}
	
	
	footer .menu > ul > li > a {
		font-size: 15px;
	}
	footer .tool {
		width: 350px;
	}
	footer .menu {
		width: calc(100% - 350px);
	}
}



@media screen and (max-width:1139px) {
	#menu .tel {
		display: none;
	}
	
	footer .site-title dl {
		display: block;
	}
	footer .site-title dd {
		top: 0;
		margin: 8px 0 0;
	}
}




#return-top {
	position: fixed;
	width: 30px;
	height: 30px;
	right: 20px;
	bottom: 25px;
	z-index: 1000;
	visibility: hidden;
	opacity: 0;
	transition: all 300ms ease-out;
}
#return-top a {
	display: block;
	height: 30px;
	font-size: 0;
	background: url(../img/arrow_top_blue.svg) 50% 50% no-repeat;
	background-size: 14px auto;
	transition: all 300ms ease-out;
}
body.scrolled #return-top {
	visibility: visible;
	opacity: 1;
}
body.scrolled-footer #return-top a {
	filter: brightness(0) invert(1);
}








/* ---------------------------------------------------------------------------------------------------- */
/* Common */

main {
}


.container-slim {
	box-sizing: border-box;
	max-width: calc(880px + 160px);
	margin: 88px auto 0;
	padding: 80px 80px 120px;
}
.container-slim h1 {
	margin: 0 0 50px;
	font-size: 32px;
	font-weight: 500;
	line-height: 1.7;
}


body.news.detail .container-slim {
	max-width: calc(940px + 160px);
}




.content-header {
	position: relative;
	height: 450px;
	margin: 0 0 -100px;
	overflow: hidden;
}
.content-header .bg {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 1;
}
.content-header .bg::after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 5;
	/*
	background: linear-gradient(to left, rgba(0,68,167,0) 0%, rgba(0,68,167,0.125) 40%, rgba(0,68,167,0.25) 80%);
	*/
}
.content-header .bg img {
	width: 100%;
	height: 450px;
	object-fit: cover;
}
.content-header .title {
	box-sizing: border-box;
	position: relative;
	display: flex;
	align-items: center;
	max-width: calc(1180px + 160px);
	height: 450px;
	z-index: 20;
	margin: 0 auto;
	padding: 0 80px;
}
.content-header .text {
	position: relative;
	min-height: 110px;
	top: -5px;
	color: #fff;
}
.content-header h1 {
	font-size: 44px;
	font-weight: 500;
	line-height: 1;
	text-shadow: 0 0 10px rgba(0, 68, 167, 0.7);
}
.content-header .lead {
	margin: 30px 0 0;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.8;
	text-shadow: 0 0 10px rgba(0, 68, 167, 0.7);
}






.content-nav {
	position: relative;
	z-index: 50;
	background: #e8eaef;
	border-radius: 10px 10px 0 0;
}
.content-nav .inner {
	box-sizing: border-box;
	max-width: calc(880px + 160px);
	margin: 0 auto;
	padding: 24px 80px 34px;
}
.content-nav ul {
	display: flex;
}
.content-nav li + li {
	margin-left: 12px;
	margin-left: 24px;
}
.content-nav a {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 40px;
	/*
	padding-right: 40px;
	*/
	font-size: 16px;
	font-weight: 500;
}
/*
.content-nav a::after {
	position: absolute;
	content: "";
	display: block;
	width: 40px;
	height: 40px;
	right: 0;
	top: calc(50% - 20px);
	background: url(../img/arrow_bottom.svg) 50% 50% no-repeat;
	background-size: 14px auto;
}
*/




.container {
	position: relative;
	z-index: 100;
	margin: -10px 0 0;
	background: #f9f9f9;
	border-radius: 10px 10px 0 0;
}
.container.accent {
	background: #e8eaef;
}


.container .inner {
	box-sizing: border-box;
	max-width: calc(1180px + 160px);
	margin: 0 auto;
	padding: 50px 80px 120px;
}

.container h2 {
	font-size: 28px;
	font-weight: 500;
	line-height: 1.5;
}


.column {
	padding: 70px 0 0;
}
.column + .column {
	margin-top: 60px;
	border-top: 1px solid #bdcee5;
}

.column.multi {
	position: relative;
	box-sizing: border-box;
	max-width: calc(880px + 160px);
	margin: 0 auto;
	padding: 20px 80px 0;
}
.column.multi .title {
}
.column.multi .content {
	position: relative;
	margin: 20px 0 0;
}

.column.multi .title .note {
	margin: 25px 0 0;
	font-size: 14px;
	font-weight: 500;
}


.figure {
	background: #fff;
	border: 1px solid #e0e7f0;
	border-radius: 10px;
}

.column.multi + .column.multi {
	margin-top: 60px;
	padding-top: 60px;
	border: none;
}
.column.multi + .column.multi::before {
	position: absolute;
	content: "";
	display: block;
	width: calc(100% - 160px);
	height: 1px;
	left: 80px;
	top: 0;
	background: #bdcee5;
}






/* ---------------------------------------------------------------------------------------------------- */
/* FAQ */

.faq-box {
	box-sizing: border-box;
	padding: 0 8px;
	border-bottom: 1px solid #b1c2dd
}
.faq-box:nth-of-type(1)  {
	border-top: 1px solid #b1c2dd;
}

.faq-box .question a {
	box-sizing: border-box;
	position: relative;
	display: block;
	padding: 18px 40px 18px 0;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.7;
}
.faq-box .question a i {
	position: absolute;
	display: block;
	width: 80px;
	height: 80px;
	right: -20px;
	top: calc(50% - 40px);
	transform: scale(0.5) translate(1px, 1px);
}
.faq-box .question a i::before,
.faq-box .question a i::after {
	position: absolute;
	content: "";
	display: block;
	width: 2px;
	height: 30px;
	left: 39px;
	top: calc(50% - 15px);
	background: #0044a7;
	transition: all 300ms ease-out;
}
.faq-box .question a i::after {
	transform: rotate(90deg);
}
.faq-box.opened .question a i::before {
	transform: scaleY(0);
}


.faq-box .answer {
	overflow: hidden;
	height: 0;
	transition: all 400ms ease-out;
}

.faq-box .answer p {
	box-sizing: border-box;
	position: relative;
	padding: 0 50px 20px 16px;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.7;
}
.faq-box .answer p::before {
	position: absolute;
	content: "";
	display: block;
	width: 8px;
	height: 1px;
	left: 0;
	top: 14px;
	background: rgba(0,68,167,0.24);
}









/* ---------------------------------------------------------------------------------------------------- */
/* Pict column */

.pict-column .box {
	display: flex;
	justify-content: space-between;
	padding-bottom: 40px;
	border-bottom: 1px solid #e0e7f0;
}
.pict-column .box + .box {
	margin-top: 40px;
}
.pict-column .box:last-child {
	padding-bottom: 0;
	border-bottom: none;
}

.pict-column .box .pict {
	width: 72px;
}
.pict-column .box > dl {
}
.pict-column .box > dl >dt {
	padding: 5px 0 0;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.6;
}
.pict-column .box > dl > dd {
	margin: 15px 0 0;
	font-size: 17px;
	font-weight: 500;
	line-height: 2;
}

.pict-column .box dd a {
	text-decoration: underline;
}
.pict-column .box dd a:hover {
	text-decoration: none;
}

.pict-column .box dd .note {
	margin: 15px 0 0;
	font-size: 14px;
}










/* ---------------------------------------------------------------------------------------------------- */
/* News */

.column.news-list {
	padding-top: 20px;
}

.column.news-list li {
	padding-bottom: 30px;
	border-bottom: 1px solid #e5ecf6;
}
.column.news-list li + li {
	margin-top: 30px;
}

.column.news-list li a {
	position: relative;
	display: flex;
	justify-content: space-between;
}
.column.news-list li .date {
	width: 165px;
	font-size: 17px;
	font-weight: 500;
	font-family: "Montserrat", "Zen Kaku Gothic Antique", sans-serif;
	line-height: 1.7;
}
.column.news-list li .summary {
	box-sizing: border-box;
	width: calc(100% - 165px);
	padding-right: 80px;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.7;
}

/*
.column.news-list li a::after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 14px;
	right: 35px;
	top: calc(50% - 7px);
	background: url(../img/arrow_blue.svg) 0 0 no-repeat;
	background-size: 18px auto;
}
*/



body.news.detail main {
	margin-top: 128px;
}

.news-nav {
	box-sizing: border-box;
	max-width: calc(1180px + 160px);
	margin: 0 auto;
	padding: 0 80px;
}
.news-nav a {
	position: relative;
	display: inline-flex;
	align-items: center;
	font-size: 17px;
	font-weight: 500;
}
/*
.news-nav a::before {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 14px;
	left: 0;
	top: calc(50% - 7px);
	background: url(../img/arrow_back.svg) 0 0 no-repeat;
	background-size: 18px auto;
}
*/

body.news.detail .container-slim {
	margin-top: 10px;
}

.entry-header .date {
	font-size: 17px;
	font-weight: 500;
	font-family: "Montserrat", "Zen Kaku Gothic Antique", sans-serif;
}
.entry-header h1 {
	margin-top: 10px;
}

.entry-image {
	border-radius: 10px;
	overflow: hidden;
}

.entry-body {
	margin: 50px 0 0;
}
.entry-body,
.entry-body p {
	font-size: 17px;
	font-weight: 500;
	line-height: 2;
}
.entry-body p + p {
	margin-top: 1em;
}



.pager {
	display: flex;
	justify-content: space-between;
	margin: 40px 0 0;
}
.pager ul {
	display: flex;
}
.pager li + li {
}
.pager li a,
.pager li span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	font-size: 17px;
	font-weight: 500;
	font-family: "Montserrat", sans-serif;
}
.pager li span {
	opacity: 0.5;
}

.pager .prev *,
.pager .next * {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	font-size: 0;
}
.pager .prev * {
	background: url(../img/arrow_back.svg) 50% 50% no-repeat;
	background-size: 18px auto;
}
.pager .next * {
	background: url(../img/arrow_blue.svg) 50% 50% no-repeat;
	background-size: 18px auto;
}
.pager .prev span,
.pager .next span {
	opacity: 0.5;
}







/* ---------------------------------------------------------------------------------------------------- */
/* Business */

#about .content p {
	font-size: 17px;
	font-weight: 500;
	line-height: 2;
}
#about .content dl {
	margin: 25px 0 0;
	font-size: 14px;
	font-weight: 500;
	line-height: 2;
}

#about .content strong {
	color: #d11;
}



#scheme .figure {
	padding: 50px 40px;
	text-align: center;
}
#scheme .figure img {
	width: 100%;
	height: auto;
}


#customer .figure {
	box-sizing: border-box;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 416px;
	margin-top: 40px;
	padding: 40px;
}
#customer .figure img {
	width: 240px;
	height: auto;
}
#customer .figure a {
	position: absolute;
	display: block;
	width: 40px;
	height: 40px;
	right: 16px;
	bottom: 16px;
	font-size: 0;
	background: url(../img/icon_zoom.svg) 50% 50% no-repeat;
	background-size: 24px auto;
	transition: all 300ms ease-out;
}
#customer .figure a:hover {
	opacity: 0.6;
}










/* ---------------------------------------------------------------------------------------------------- */
/* Agent */

#guide .box dl dl {
	display: flex;
	font-size: 15px;
	font-weight: 500;
}
#guide .box dl dl dt {
	width: 5em;
}
#guide .box dl dl dd {
	width: calc(100% - 5em);
}




#flow .box {
}
#flow .box + .box {
	margin-top: 40px;
}
#flow .flow-title dl {
	display: flex;
	justify-content: space-between;
}
#flow .flow-title dt {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 32px;
	font-family: "Montserrat", sans-serif;
	line-height: 1;
}
#flow .flow-title dd {
	width: calc(100% - 50px);
	font-size: 22px;
	font-weight: 500;
}

#flow .flow-title dt span {
	font-size: 12px;
	font-weight: 600;
}
#flow .flow-title dt strong {
	margin: 2px 0 0;
	font-size: 24px;
	font-weight: 400;
}

#flow .flow-body {
	margin: 26px 0 0 16px;
	padding-left: 34px;
	border-left: 1px solid #e0e7f0;
}
#flow .flow-body dt {
	font-size: 17px;
	font-weight: 500;
	line-height: 1.8;
}
#flow .flow-body ul {
	margin: 16px 0 0;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
}
#flow .flow-body li {
	padding-left: 1em;
	text-indent: -1em;
}
#flow .flow-body li::before {
	display: inline-block;
	content: "・";
	width: 1em;
	text-indent: 0;
}

#flow .flow-body .note {
	margin: 20px 0 0;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8;
}


#flow .flow-body ul.grid {
	display: grid;
	grid-template-columns: repeat(2, 10em);
	grid-template-rows: repeat(6, 1fr);
	grid-auto-flow: column;
}



.download-list .box + .box {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid #e0e7f0;
}

.download-list h3 {
	font-size: 22px;
	font-weight: 500;
	line-height: 1.6;
}
.download-list ul {
	display: flex;
	flex-wrap: wrap;
	margin: 25px 0 0;
}
.download-list li {
	width: calc((100% - 16px) / 2);
}
.download-list li:nth-child(2n) {
	margin-left: 16px;
}
.download-list li:nth-child(n + 3) {
	margin-top: 16px;
}
.download-list li a {
	box-sizing: border-box;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	min-height: 72px;
	border: 1px solid #e0e7f0;
	border-radius: 10px;
	background: #fff;
}
.download-list li a strong {
	font-size: 18px;
	font-weight: 500;
}
.download-list li a .size {
	margin: 2px 0 0;
	font-size: 13px;
	font-weight: 700;
}

/*
.download-list li a::after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 24px;
	right: 28px;
	top: calc(50% - 12px);
	background: url(../img/arrow_download.svg) 0 0 no-repeat;
	background-size: 18px auto;
}
*/








/* ---------------------------------------------------------------------------------------------------- */
/* Company */

#greeting .content {
	margin-top: 30px;
}
#greeting .content p {
	display: inline-block;
	font-size: 24px;
	font-weight: 600;
	font-family: "Zen Old Mincho", serif;
	line-height: 1.8;
}
#greeting .content p + p {
	margin-top: 1em;
}
#greeting .content dl {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	margin: 70px 20px 0 0;
	font-weight: 600;
	font-family: "Zen Old Mincho", serif;
}
#greeting .content dt {
	position: relative;
	top: 2px;
	font-size: 15px;
	letter-spacing: 1px;
}
#greeting .content dd {
	margin-left: 20px;
	font-size: 24px;
}
#greeting .content dd img {
	width: 160px;
	height: auto;
}





#profile .content {
	margin-top: 30px;
	border-top: 1px solid #bdcee5;
}
#profile dl {
	display: flex;
}
#profile dl + dl {
	border-top: 1px solid #bdcee5;
}
#profile dl:last-child {
	border-bottom: 1px solid #bdcee5;
}
#profile dt {
	box-sizing: border-box;
	width: 16%;
	padding: 10px 15px;
	font-size: 16px;
	font-weight: 500;
	line-height: 2;
	background: #e8eaef;
}
#profile dd {
	box-sizing: border-box;
	width: 84%;
	padding: 10px 15px 10px 20px;
	font-size: 16px;
	font-weight: 500;
	line-height: 2;
}
#profile dd span {
	white-space: nowrap;
}



#history .content {
	margin-top: 30px;
	border-top: 1px solid #bdcee5;
}
/*
#history .content::before {
	position: absolute;
	content: "";
	display: block;
	width: 1px;
	height: calc(100% - 20px);
	left: 5px;
	top: 12px;
	z-index: 1;
	background: #e0e7f0;
}
*/
#history dl {
	position: relative;
	display: flex;
}
/*
#history dl::before {
	box-sizing: border-box;
	position: absolute;
	content: "";
	display: block;
	width: 11px;
	height: 11px;
	left: 0;
	top: 12px;
	z-index: 10;
	background: #fff;
	border: 1px solid #254d87;
	border-radius: 5px;
}
*/
#history dl + dl {
	border-top: 1px solid #bdcee5;
}
#history dl:last-child {
	border-bottom: 1px solid #bdcee5;
}
#history dt {
	box-sizing: border-box;
	width: 16%;
	padding: 10px 15px;
	font-size: 16px;
	font-weight: 500;
	line-height: 2;
	background: #e8eaef;
}
#history dd {
	box-sizing: border-box;
	width: 84%;
	padding: 10px 15px 10px 20px;
	font-size: 16px;
	font-weight: 500;
	line-height: 2;
}




#access .map {
	position: relative;
	height: 360px;
	background: rgba(0,0,0,0.025);
}
#access .map iframe {
	width: 100%;
	height: 100%;
}
#access .address {
	margin: 35px 0 0;
	font-size: 17px;
	font-weight: 500;
}
#access .address a {
	margin-left: 8px;
	text-decoration: underline;
}
#access .address a:hover {
	text-decoration: none;
}
#access .extra {
	margin: 16px 0 0;
}
#access .extra dl {
	display: flex;
	font-size: 15px;
	font-weight: 500;
	line-height: 2;
}
#access .extra dt {
	width: 5em;
}
#access .extra dd {
	width: calc(100% - 5em);
}




#antisocial p {
	font-size: 17px;
	font-weight: 500;
	line-height: 2;
}
#antisocial ol {
	margin: 30px 0 0;
	counter-reset: order;
}
#antisocial li {
	padding-left: 1em;
	text-indent: -1em;
	counter-increment: order;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.9;
}
#antisocial li::before {
	display: inline-block;
	content: counter(order) ".";
	width: 1em;
	text-indent: 0;
}
#antisocial li + li {
	margin-top: 4px;
}






/* ---------------------------------------------------------------------------------------------------- */
/* Sitemap */

.sitemap-column {
}

.sitemap-column .menu > ul {
	display: grid;
	grid-template-columns: repeat(3, 33.33%);
}
.sitemap-column .menu > ul > li {
	box-sizing: border-box;
	padding-right: 20px;
}

.sitemap-column .menu > ul > li:nth-child(1) {
	grid-column: 1 / 2;
}
.sitemap-column .menu > ul > li:nth-child(2) {
	grid-column: 2 / 3;
}
.sitemap-column .menu > ul > li:nth-child(3) {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
}
.sitemap-column .menu > ul > li:nth-child(4) {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
}
.sitemap-column .menu > ul > li:nth-child(5) {
	grid-column: 3 / 4;
	grid-row: 2 / 3;
}
.sitemap-column .menu > ul > li:nth-child(n + 3) {
	margin-top: 30px;
}


.sitemap-column .menu > ul > li > a {
	font-size: 22px;
	font-weight: 500;
	line-height: 1.75;
}

.sitemap-column .menu ul ul a {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.75;
}

.sitemap-column .menu ul ul {
	margin: 8px 0 0;
}
.sitemap-column .menu ul ul li {
	position: relative;
	padding-left: 0.75em;
	text-indent: -0.75em;
}
.sitemap-column .menu ul ul li::before {
	display: inline-block;
	content: "-";
	width: 0.75em;
	text-indent: 0;
}
.sitemap-column .menu ul ul li + li {
	margin-top: 2px;
}


.sitemap-column .extra {
	margin: 55px 0 0;
	padding: 40px 0 0;
	border-top: 1px solid #bdcee5;
}
.sitemap-column .extra ul {
	display: flex;
}
.sitemap-column .extra li {
	position: relative;
}
.sitemap-column .extra li + li {
	margin-left: 18px;
}
.sitemap-column .extra li + li::before {
	position: absolute;
	content: "";
	display: block;
	width: 1px;
	height: 15px;
	left: -9px;
	top: calc(50% - 6px);
	background: #0044a7;
	opacity: 0.5;
}
.sitemap-column .extra ul a {
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
}






/* ---------------------------------------------------------------------------------------------------- */
/* Privacy policy */

.privacy-column h2 {
	font-size: 22px;
	font-weight: 500;
	line-height: 1.5;
}
.privacy-column h3 {
	font-size: 22px;
	font-weight: 500;
	line-height: 1.5;
}

.privacy-column .intro {
	margin-bottom: 40px;
	padding-bottom: 50px;
	border-bottom: 1px solid #bdcee5;
}
.privacy-column .intro p {
	margin: 24px 0 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 2;
}

.privacy-column .box + .box {
	margin-top: 40px;
}
.privacy-column .box p,
.privacy-column .box li,
.privacy-column .box dl {
	margin-left: 28px;
	font-size: 15px;
	font-weight: 500;
	line-height: 2;
}
.privacy-column .box p {
	margin-top: 12px;
}
.privacy-column .box ol {
	margin-top: 18px;
}
.privacy-column .box dl {
	margin-top: 18px;
}
.privacy-column .box dd {
	margin: 5px 0 0;
	font-size: 14px;
}

.privacy-column .box ol {
	counter-reset: order;
}
.privacy-column .box li {
	counter-increment: order;
	padding-left: 1em;
	text-indent: -1em;
}
.privacy-column .box li::before {
	display: inline-block;
	content: counter(order) ".";
	width: 1em;
	text-indent: 0;
}


.privacy-column .update {
	margin: 60px 0 0;
}
.privacy-column .update p {
	font-size: 15px;
	font-weight: 500;
	line-height: 2;
}








/* ---------------------------------------------------------------------------------------------------- */
/* Contact */

.contact-form .intro p {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.7;
}

.contact-form .form-field {
	margin: 50px 0 0;
}

.form-field dl {
	display: flex;
	justify-content: space-between;
}
.form-field dt {
	width: 130px;
	padding: 10px 0 0;
	font-size: 16px;
	font-weight: 500;
}
.form-field dd {
	width: calc(100% - 130px);
}
.form-field dl + dl {
	margin-top: 24px;
}

.form-field input[type="text"],
.form-field input[type="email"],
.form-field textarea {
	margin: 0;
	padding: 12px 18px;
	font-size: 16px;
	font-weight: 500;
	background: #fff;
	border: 1px solid #e0e7f0;
	border-radius: 10px;
}

.form-field input[name="name"],
.form-field input[name="kana"] {
	box-sizing: border-box;
	width: 50%;
}
.form-field input[name="company"],
.form-field input[name="email"],
.form-field textarea {
	box-sizing: border-box;
	width: 100%;
}
.form-field textarea {
	height: 150px;
}

.form-field input[type="text"]::placeholder,
.form-field input[type="email"]::placeholder,
.form-field textarea::placeholder {
	color: #ccc;
}

.form-field input[type="text"]:focus,
.form-field input[type="email"]:focus,
.form-field textarea:focus {
	outline: none;
	border-color: #0044a7;
}


.contact-form .privacy {
	margin: 30px 0 0 130px;
}
.contact-form .privacy a {
	position: relative;
	display: inline-block;
	padding-right: 32px;
	font-size: 16px;
	font-weight: 500;
}
/*
.contact-form .privacy a::after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 14px;
	right: 0;
	top: calc(50% - 7px);
	background: url(../img/arrow_blue.svg) 0 0 no-repeat;
	background-size: 18px auto;
}
*/



.contact-form .agree {
	margin: 20px 0 0 130px;
}
.contact-form .agree p {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.6;
}
.contact-form .agree .checkbox {
	margin: 20px 0 0;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.6;
}
.contact-form .agree label {
	display: flex;
	align-items: center;
}
.contact-form .agree label span {
	position: relative;
	margin: 0 0 0 10px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	cursor: pointer;
}
.contact-form .agree input {
	box-sizing: border-box;
	position: relative;
	appearance: none;
	display: block;
	width: 20px;
	height: 20px;
	margin: 0;
	background: #fff;
	border: 1px solid #0044a7;
	border-radius: 4px;
}
.contact-form .agree input:checked {
	background: #0044a7;
}
.contact-form .agree input:checked::after {
	position: absolute;
	content: "";
	display: block;
	width: 8px;
	height: 5px;
	left: 2px;
	top: 2px;
	border: 0 solid #fff;
	border-width: 0 0 3px 3px;
	transform: rotate(-45deg) translateY(2px);
}

.contact-form .button {
	display: flex;
	margin: 45px 0 0 130px;
	padding: 45px 0 0;
	border-top: 1px solid #d9d9d9;
}
.contact-form .button input,
.contact-form .button button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 155px;
	height: 56px;
	font-size: 16px;
	font-weight: 500;
	color: #fff;
	background: #0044a7;
	border: 1px solid #0044a7;
	border-radius: 10px;
	cursor: pointer;
}
.contact-form .button button {
	color: #0044a7;
	background: #fff;
}
.contact-form .button * + * {
	margin-left: 20px;
}


body .mw_wp_form .error {
	display: block;
	margin: 5px 0 0;
	font-size: 14px;
	font-weight: 500;
	color: #c00;
}
.mw_wp_form_confirm .privacy,
.mw_wp_form_confirm .agree {
	display: none;
}
.mw_wp_form_confirm .form-field dd {
	padding-top: 12px;
	font-weight: 500;
	line-height: 1.6;
}


.contact-form .complete-message h2 {
	margin-bottom: 20px;
	font-size: 24px;
	font-weight: 500;
}
.contact-form .complete-message p {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.7;
}







/* ---------------------------------------------------------------------------------------------------- */
/* Top */

#kv {
	position: fixed;
	width: 100%;
	height: 100vh;
	left: 0;
	top: 0;
	z-index: 10;
}
#kv .slide-item {
	position: absolute;
	width: 100%;
	height: 100%;
}
#kv .slide-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#kv .slide-item video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#kv .cover {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 100;
	background: rgba(0,0,0,0.1);
	pointer-events: none;
}




body.home main {
	position: relative;
	margin: 78px 0 0;
	z-index: 20;
}

#top-intro {
	position: relative;
	height: calc(100vh + 250px);
	/*
	background: linear-gradient(to bottom, rgba(0,68,167,0) 40%, rgba(0,68,167,0.8) 80%, rgba(0,68,167,1.0) 100%);
	*/
}
#top-intro .inner {
	box-sizing: border-box;
	position: relative;
	display: flex;
	align-items: flex-end;
	max-width: calc(1180px + 160px);
	height: 100%;
	margin: 0 auto;
	padding: 0 80px calc(250px + 160px);
	color: #fff;
}
#top-intro dt {
	font-size: 52px;
	font-weight: 500;
	line-height: 1.25;
}
#top-intro dd {
	margin: 20px 0 0;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.5;
}




body.home .container.accent {
	position: relative;
	border-radius: 10px;
}
body.home .container.accent .inner {
	padding-top: 2px;
}

#top-news {
	margin: -130px auto 0;
}
#top-news .news-inner {
	box-sizing: border-box;
	position: relative;
	display: flex;
	justify-content: space-between;
	min-height: 220px;
	padding: 48px 50px;
	background: #fff;
	border-radius: 10px;
}

#top-news .news-inner .title {
	width: 22%;
}
#top-news .news-inner .content {
	width: 78%;
}

#top-news .news-inner .more {
	position: absolute;
	left: 48px;
	bottom: 50px;
}
#top-news .news-inner .more a {
	box-sizing: border-box;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 150px;
	height: 56px;
	padding: 0 24px;
	font-size: 16px;
	font-weight: 500;
	border: 1px solid #e5ecf6;
	border-radius: 10px;
}
/*
#top-news .news-inner .more a::after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 14px;
	right: 20px;
	top: calc(50% - 7px);
	background: url(../img/arrow_blue.svg) 0 0 no-repeat;
	background-size: 18px auto;
}
*/


#top-news li {
	padding-bottom: 15px;
	border-bottom: 1px solid #e5ecf6;
}
#top-news li + li {
	margin-top: 15px;
}
#top-news li a {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#top-news li .date {
	width: 160px;
	padding: 1px 0 0;
	font-size: 17px;
	font-weight: 500;
	font-family: "Montserrat", "Zen Kaku Gothic Antique", sans-serif;
	line-height: 1.7;
}
#top-news li .summary {
	box-sizing: border-box;
	width: calc(100% - 160px);
	font-size: 17px;
	font-weight: 500;
	line-height: 1.7;
	
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;

}
/*
#top-news li a::after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 14px;
	right: 6px;
	top: calc(50% - 7px);
	background: url(../img/arrow_blue.svg) 0 0 no-repeat;
	background-size: 18px auto;
}
*/



.top-column {
	margin-top: 80px;
}
.top-column + .top-column {
	padding-top: 70px;
	border-top: 1px solid #b1c2dc;
}

.top-column-header {
	display: flex;
	justify-content: space-between;
	margin: 0 0 45px;
}
.top-column-header h2 {
	width: calc(100% - 500px);
}
.top-column-header .lead {
	box-sizing: border-box;
	position: relative;
	width: 500px;
	padding-left: 80px;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.6;
}
.top-column-header .lead::before {
	position: absolute;
	content: "";
	display: block;
	width: 1px;
	height: 48px;
	left: 20px;
	top: calc(50% - 24px);
	background: #b1c2dc;
	transform: rotate(25deg);
}


#top-business .content ul {
	display: flex;
	justify-content: space-between;
}
#top-business .content li {
	display: flex;
	width: calc((100% - 32px) / 3);
}
#top-business .content li a {
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	width: 100%;
	padding: 24px 32px;
	font-size: 18px;
	font-weight: 500;
	background: #fff;
	border: 1px solid #e0e7f0;
	border-radius: 10px;
}
#top-business .content li a dd span {
	position: relative;
}
#top-business .content li a dd span::after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	left: 0;
	bottom: 0;
	background: #0044a7;
	transform: scaleX(0);
	transform-origin: left bottom;
	transition: all 300ms ease-out;
}
#top-business .content li a:hover dd span::after {
	transform: scaleX(1);
}

#top-business .content dl {
	width: 100%;
}
#top-business .content dt {
	text-align: center;
}
#top-business .content dt img {
	width: 120px;
	height: 120px;
}
#top-business .content dd {
	position: relative;
	margin: 24px 0 0;
	padding: 18px 0 0;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.5;
	border-top: 1px solid #e0e7f0;
}
/*
#top-business .content dd::after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 14px;
	right: 10px;
	top: calc(50% + 4px);
	background: url(../img/arrow_blue.svg) 0 0 no-repeat;
	background-size: 18px auto;
}
*/



#top-agent .content ul {
	display: flex;
	flex-wrap: wrap;
}
#top-agent .content li {
	width: calc((100% - 16px) / 2);
}
#top-agent .content li:nth-child(2n) {
	margin-left: 16px;
}
#top-agent .content li:nth-child(n + 3) {
	margin-top: 16px;
}

#top-agent .content li a {
	box-sizing: border-box;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 72px;
	font-size: 18px;
	font-weight: 500;
	background: #fff;
	border: 1px solid #e0e7f0;
	border-radius: 10px;
}
/*
#top-agent .content li a::after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 14px;
	right: 28px;
	top: calc(50% - 7px);
	background: url(../img/arrow_blue.svg) 0 0 no-repeat;
	background-size: 18px auto;
}
*/






body.home .container.interlude {
	position: relative;
	margin: -10px 0;
	padding: 110px 0;
	z-index: 5;
	border-radius: 0;
	/*
	background: url(../img/symbol.svg) left 50vw top 50% no-repeat,
	linear-gradient(to top, rgba(0,68,167,0.4) 0%, rgba(0,68,167,0.4) 100%),
	linear-gradient(to top, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.5) 100%);
	
	background-size: 747px 747px, cover, cover;
	*/
	
	background: url(../img/symbol.svg) left 75vw top 50% no-repeat;
	background-size: 747px 747px;
}
body.home .container.interlude .inner {
	box-sizing: border-box;
	position: relative;
	max-width: calc(1180px + 160px);
	margin: 0 auto;
	padding: 0 80px;
	color: #fff;
}


#top-company {
	margin: 0;
}
#top-company h2 {
	color: #fff;
}
#top-company .content {
	margin: 40px 0 0;
}
#top-company .content p {
	font-size: 17px;
	font-weight: 500;
	line-height: 2;
}

#top-company .more {
	margin: 50px 0 0;
}
#top-company .more a {
	box-sizing: border-box;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 150px;
	height: 56px;
	padding: 0 24px;
	font-size: 16px;
	font-weight: 500;
	background: #fff;
	/*
	border: 1px solid #0044a7;
	*/
	border-radius: 10px;
}
/*
#top-company .more a::after {
	position: absolute;
	content: "";
	display: block;
	width: 18px;
	height: 14px;
	right: 20px;
	top: calc(50% - 7px);
	background: url(../img/arrow_blue.svg) 0 0 no-repeat;
	background-size: 18px auto;
}
*/



/* Notfound */

.notfound-column {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.7;
}
.notfound-column .link {
	display: flex;
	margin: 40px 0 0;
}
.notfound-column .link a {
	box-sizing: border-box;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 150px;
	height: 56px;
	padding: 0 24px;
	font-size: 14px;
	font-weight: 700;
	background: #fff;
	border: 1px solid #0044a7;
	border-radius: 10px;
}
.notfound-column .link a + a {
	margin-left: 20px;
}








/* Hover & Current */

#menu li a {
	position: relative;
	display: inline-block;
}
#menu li a::before {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	left: 0;
	bottom: -5px;
	background: #193d73;
	transform: scaleX(0);
	transform-origin: left bottom;
	transition: all 300ms ease-out;
}
#menu li a:hover::before {
	transform: scaleX(1);
}

body.home #menu li.top a,
body.news #menu li.news a,
body.business #menu li.business a,
body.agent #menu li.agent a,
body.company #menu li.company a
{
	color: #0044a7;
}
body.home #menu li.top a::before,
body.news #menu li.news a::before,
body.business #menu li.business a::before,
body.agent #menu li.agent a::before,
body.company #menu li.company a::before
{
	background: #0044a7;
	transform: scaleX(1);
}


#menu .login a {
	transition: all 300ms ease-out;
}
#menu .login a:hover {
	color: #fff;
	background: #0044a7;
}

#menu .form a {
	transition: all 300ms ease-out;
}
#menu .form a:hover {
	color: #0044a7;
	background: #fff;
}



footer li a {
	position: relative;
}
footer li a::after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	left: 0;
	bottom: -2px;
	background: #fff;
	transform: scaleX(0);
	transform-origin: left bottom;
	transition: all 300ms ease-out;
}
footer li a:hover::after {
	transform: scaleX(1);
}


footer .login a {
	transition: all 300ms ease-out;
}
footer .login a::after {
	transition: all 300ms ease-out;
}
footer .login a:hover {
	color: #0044a7;
	background: #fff;
}
footer .login a:hover::after {
	filter: brightness(1) invert(0);
}


footer .form a {
	transition: all 300ms ease-out;
}
footer .form a::after {
	transition: all 300ms ease-out;
}
footer .form a:hover {
	color: #fff;
	background: rgba(255,255,255,0.15);
}
footer .form a:hover::after {
	filter: brightness(0) invert(1);
}





.content-nav a {
	position: relative;
}
.content-nav a::before {
	position: absolute;
	content: "";
	display: block;
	width: calc(100%);
	height: 1px;
	left: 0;
	bottom: 8px;
	background: #111;
	transform: scaleX(0);
	transform-origin: left bottom;
	transition: all 300ms ease-out;
}
.content-nav a:hover::before {
	transform: scaleX(1);
}



.download-list li a {
	transition: all 300ms ease-out;
}
.download-list li a::after {
	transition: all 300ms ease-out;
}
.download-list li a:hover {
	color: #fff;
	background: #0044a7;
}
.download-list li a:hover::after {
	filter: brightness(0) invert(1);
}




.faq-box .question a:hover {
	text-decoration: underline;
}



.news-list li a:hover .summary {
	text-decoration: underline;
}


.news-nav a {
	transition: all 300ms ease-out;
}
.news-nav a::after {
	position: absolute;
	content: "";
	display: block;
	width: calc(100%);
	height: 1px;
	left: 0;
	bottom: -1px;
	background: #111;
	transform: scaleX(0);
	transform-origin: left bottom;
	transition: all 300ms ease-out;
}
.news-nav a:hover::after {
	transform: scaleX(1);
}




#top-news .news-inner .more a,
#top-company .more a,
#top-agent .content li a {
	transition: all 300ms ease-out;
}
#top-news .news-inner .more a::after,
#top-company .more a::after,
#top-agent .content li a::after {
	transition: all 300ms ease-out;
}
#top-news .news-inner .more a:hover,
#top-company .more a:hover,
#top-agent .content li a:hover {
	color: #fff;
	background: #0044a7;
}
#top-news .news-inner .more a:hover::after,
#top-company .more a:hover::after,
#top-agent .content li a:hover::after {
	filter: brightness(0) invert(1);
}

#top-business .content li a {
	transition: all 300ms ease-out;
}
#top-business .content li a:hover {
	color: #fff;
	background: #0044a7;
}


.contact-form .button input,
.contact-form .button button {
	transition: all 300ms ease-out;
}
.contact-form .button button:hover {
	color: #fff;
	background: #0044a7;
}
.contact-form .button input:hover {
	color: #0044a7;
	background: #fff;
}



.contact-form .privacy a::before {
	position: absolute;
	content: "";
	display: block;
	width: calc(100% - 30px);
	height: 1px;
	left: 0;
	bottom: -1px;
	background: #111;
	transform: scaleX(0);
	transform-origin: left bottom;
	transition: all 300ms ease-out;
}
.contact-form .privacy a:hover::before {
	transform: scaleX(1);
}



.sitemap-column a {
	position: relative;
}
.sitemap-column a::after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	left: 0;
	bottom: -1px;
	background: #193d73;
	transform: scaleX(0);
	transform-origin: left bottom;
	transition: all 300ms ease-out;
}
.sitemap-column a:hover::after {
	transform: scaleX(1);
}



.notfound-column .link a {
	transition: all 300ms ease-out;
}
.notfound-column .link a:hover {
	color: #fff;
	background: #0044a7;
}




/* KV motion */

#kv {
	opacity: 0;
	transition: opacity 600ms ease-out;
}
#kv.ready {
	opacity: 1;
}

#kv .slide-item {
	transition: all 2000ms ease-out;
}
#kv .slide-item.hidden {
	opacity: 0;
	visibility: hidden;
}
#kv .slide-item.image.zoom img {
	transform: scale(1.15);
	transition: transform 11s ease-out;
}











/* Fix */

#top-business .content ul {
	max-width: 932px;
}
#top-agent .content ul {
	max-width: 616px;
}

#greeting .content p {
	font-size: 17px;
	font-weight: 500;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	line-height: 2;
}


.content-header h1 {
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
}
.content-header .lead {
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
}





#menu .tool.compact {
	width: 100px;
}



























