body,html{ font-size: 16px; line-height: 1.8em; color: #111; font-family: "Noto Sans JP", sans-serif;}
#wrap{ min-width: 1200px;}
a{}
a:hover{}

.header{ width: 100%; position: fixed; top: 20px; left: 0; z-index: 100;}
.header-navi{ background: #fff; margin: 0 auto; width: 1200px; height: 80px; border-radius: 40px; padding: 20px 30px; position: relative; text-align: right; font-size: 13px; box-shadow: 0 0 12px rgba(0,0,0,0.3);}
.header-navi-logo{ display: inline-block; position: absolute; top: 20px; left: 30px; height: 40px; width: auto;}
.header-navi-menu{ display: inline;}
.header-navi-menu-li { position: relative; line-height: 40px; padding: 0 7px;}
.header-navi-menu-li a{ color: #111; text-decoration: none;}
.header-navi-menu-li a:hover{ color: #1a32ae; text-decoration: underline;}
.sub-menu{ display: none; top: 30px; position: absolute;}
.header-navi-btn-contact{ display: inline-block; background: #1a32ae; border: 1px solid #1a32ae; color: #fff; font-weight: bold; padding: 0 18px; border-radius: 100px; text-decoration: none;}
.header-navi-btn-en{ display: inline-block; background: #fff; border: 1px solid #111; color: #111; font-weight: bold; padding: 0 15px; border-radius: 100px; text-decoration: none; margin-left: 5px;}
.header-navi-btn-contact:hover{ border: 1px solid #1a32ae; background: #fff; color: #1a32ae;}
.header-navi-btn-en:hover{ background: #111; color: #fff;}

footer{ padding: 40px 0; border-top: 1px solid #1a32ae; background: #fff;}
.footer-box{ width: 1200px; margin: 0 auto; padding: 0 20px 0; position: relative; text-align: right;}
.footer-logog{ position: absolute; top: 0; left: 20px;}
.footer-logog-logo{ display: inline-block; margin-right: 10px;}
.footer-logog-btn{ display: inline-block; line-height: 1em; vertical-align: top; text-align: center;}
.footer-logog-btn-contact,.footer-logog-btn-en{ display: inline-block; width: 160px; background: #1a32ae; border: 1px solid #1a32ae; color: #fff; font-weight: bold; line-height: 19px; border-radius: 100px; text-decoration: none; font-size: 11px;}
.footer-logog-btn-en{ background: #fff; border: 1px solid #111; color: #111; margin-top: 5px;}
.footer-nav{ font-size: 13px;}
.footer-nav-ul{ margin: 0; line-height: 1.4em;}
.footer-nav-li{ margin-left: 30px;}
.footer-nav-li a{ color: #111; text-decoration: none;}
.footer-nav-li a:hover{ text-decoration: underline;}
small{ display: block; text-align: center; color: #fff; background: #1a32ae; font-size: 12px; letter-spacing: 2px;}

.btn-link,.btn-link a { display: inline-block; width: 250px; line-height: 40px; text-align: center; text-decoration: none; color: #111; position: relative; border-radius: 40px;}
.btn-link{ border: 1px solid #111; background-color: #fff; margin: 40px auto 0; display: block;}
.btn-link a::before { border-right: 2px solid #111; border-top: 2px solid #111; bottom: 0; content: ""; height: 7px; width: 7px; margin: auto; position: absolute; right: 20px; top: 0; transform: rotate(45deg); transition: right .3s;}
.btn-link:hover{ border-color: #1a32ae;}
.btn-link a:hover{ color: #1a32ae;}
.btn-link a:hover::before { right: 15px; border-color: #1a32ae;}
.btn-link-sq{ margin: 27px auto 0;
border: 1px solid #fff; display: block; width: 180px; line-height: 36px; text-align: center; text-decoration: none; color: #fff; position: relative; font-size: 15px; }
.hoverbox:hover .btn-link-sq{ border: 1px solid #fff; background: #fff; color: #111;}
.hoverbox::before{ content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6); transition: transform 0.5s 0.1s; z-index: 1;}
.hoverbox:hover::before{ transform: translateX(100%) }
.hoverbox span{ z-index: 10; position: relative; text-shadow: rgba(0, 0, 0, 0.4) 1px 1px 2px;}

.contacts{ display: block; width: 1000px; height: 400px; position: relative; overflow-x: hidden; color: #fff; text-align: center; text-decoration: none; padding-top: 123px; background: url("../img/contact-bg.jpg") center center / cover no-repeat; margin: 0 auto;}
.contacts-copy{ font-size: 50px; font-weight: 700; line-height: 1em; letter-spacing: 3px;}

h1.title{ font-size: 42px; line-height: 1.8em; font-weight: 900;}
.h1-subtitle{ font-size: 18px; font-weight: 100;}
h2{ font-size: 32px; line-height: 1.5em; margin-bottom: 40px;}
h2::before { content: ''; width: 50px; display: block; background: #1a32ae; height: 5px; margin: 0 0 15px; line-height: 1;}
.content{ background: #fff; width: 1000px; padding: 40px 0 80px; margin: 0 auto;}
.content-child{ padding-left: 40px; position: relative;}
section+section{ margin-top: 100px;}
section p+p{ margin-top: 1.8em;}

.page-title{ height: 500px; overflow: hidden;}
.page-title-bg{ width: 110%; height: 500px; margin: 0 -5%; border-bottom-left-radius: 1030px 245px; border-bottom-right-radius: 1030px 245px; background: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8)),url("../img/titlebg.png") center center / cover no-repeat;}
.page-title-bg.import-cars{ background: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8)),url("../img/titlebg-import-cars.png") center center / cover no-repeat}
.page-title-bg.import-boat{ background: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8)),url("../img/titlebg-import-boat.png") center center / cover no-repeat}
.page-title-bg.forwarding{ background: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8)),url("../img/titlebg-forwarding.png") center center / cover no-repeat}
.page-title-bg.achievements{ background: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8)),url("../img/titlebg-achievements.png") center center / cover no-repeat}
.page-title-bg.consulting{ background: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8)),url("../img/titlebg-consulting.png") center center / cover no-repeat}
.page-title-bg.prototype{ background: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8)),url("../img/titlebg-prototype.png") center center / cover no-repeat}
.page-title-bg.about{ background: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8)),url("../img/titlebg-aboutus.png") center center / cover no-repeat}
.page-title-text{ z-index: 10; position: absolute; width: 1000px; top: 215px; left: calc(50% - 500px); color: #fff;}
.caution-box{ background: #dce6ff; border-radius: 10px; margin: 1.8em 0 0 30px; padding: 25px 40px;}
.caution-title{ display: block; font-weight: 500; border-bottom: 1px solid #1a32ae; padding-bottom: 8px; margin-bottom: 8px;}

.import-cars-service{ margin-bottom: 40px;}
.import-cars-service-img{ width: 22.857%; height: auto; display: inline-block;}
.import-cars-service-img:nth-child(n+2){ margin-left: 2.8573%;}
.import-cars-flow{ padding: 20px 0 0; border-left: 50px solid #dce6ff;}
.import-cars-flow-inbox{ padding-left: 30px; margin-bottom: 50px;}
.import-cars-flow-midashi{ display: block; width: 240px; margin:0 0 30px -20px; padding: 0 20px; position: relative; height: 50px; line-height: 48px; word-break: break-all; color: #fff; background: #1a32ae; font-size: 24px; font-weight: 500;}
.import-cars-flow-midashi:after { position: absolute; top: 0; right: -40px; width: 0; height: 0; content: ''; border-width: 50px 40px 0 0; border-style: solid; border-color: #1a32ae transparent transparent transparent;}
.import-cars-flow-img{ display: inline-block;}
.import-cars-flow-p{ display: inline-block; margin-left: 40px; width: calc(100% - 360px); vertical-align: top;}

.forwarding-service-li{ display: inline-block; width: 300px; margin: 0 16px; padding-bottom: 50px; vertical-align: top;}
.forwarding-service-midashi{ display: block; font-weight: 500; font-size: 20px; margin-bottom: 10px;}
.forwarding-service-img{ margin-bottom: 20px; width: 100%; height: auto;}

.consulting-copy{ font-size: 27px; font-weight: 700; line-height: 1.5em; margin-bottom: 50px; background: #eef7fd; text-align: center; padding: 20px 25px; border-radius: 20px; color: #1a32ae;}
.consulting-img{ margin: 0 auto 40px;}
.consulting-w-box{ margin: 60px 0 0;}
.consulting-w-title{ display: block; font-size: 24px; font-weight: 700; margin-bottom: 20px; padding-bottom: 12px; border-bottom: 3px solid #1a32ae;}

.prototype-img-l{ position: absolute; top: -20px; left: 30px; border-radius: 20px; box-shadow: 5px 5px 10px rgba(0,0,0,0.3); z-index: 10;}
.prototype-img-l-child{ position: absolute; top: 220px; left: -200px; border-radius: 20px; filter: blur(5px); z-index: 5; opacity: 0.6; box-shadow: 150px 150px 0 rgba(0,0,0,0.15);}
.prototype-img-r{ position: absolute; top: -20px; right: 0; border-radius: 20px; box-shadow: 5px 5px 10px rgba(0,0,0,0.3); z-index: 10;}
.prototype-img-r-child{ position: absolute; top: 220px; right: -200px; border-radius: 20px; filter: blur(5px); z-index: 5; opacity: 0.6; box-shadow: -150px 150px 0 rgba(0,0,0,0.15);}
.prototype-conbox{ padding:0 0 0 540px;}
.prototype-conbox.r{ padding: 0 540px 0 0;}
.prototype-conbox>.caution-box{ margin-left: 0;}

.achievements-li{ display: inline-block; margin:0 10px 40px;}

.hamburger-menu{ display: none;}
.sp{ display: none;}


@media only screen and (max-width: 767px) {
	#wrap{ min-width: inherit;}
	.pc,.header-navi,#menu-btn-check{ display: none;}
	.sp{ display: inline;}
	.header-navi-logo{ top: 10px; left: 10px;}
	.footer-box{ width: auto;}

	.hamburger-menu { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 60px; background: #fff; box-shadow: 0 0 10px rgba(0,0,0,0.3)}
	.menu-btn { position: fixed; top: 10px; right: 10px; display: flex; height: 40px; width: 40px; justify-content: center; align-items: center; z-index: 90; background-color: #1a32ae; border-radius: 5px;}
	.menu-btn span,.menu-btn span:before,.menu-btn span:after { content: '';display: block;height: 3px;width: 20px;border-radius: 3px;background-color: #fff;position: absolute;}
	.menu-btn span:before {bottom: 8px;}
	.menu-btn span:after {top: 8px;}
	#menu-btn-check:checked ~ .menu-btn span {background-color: rgba(255, 255, 255, 0);}
	#menu-btn-check:checked ~ .menu-btn span::before {bottom: 0;transform: rotate(45deg);}
	#menu-btn-check:checked ~ .menu-btn span::after {top: 0;transform: rotate(-45deg);}
	.menu-content { width: 100%; height: 100%; position: fixed; top: 0; left: 100%; z-index: 80; background-color: rgba(9,29,131,0.95);}
	#menu-btn-check:checked ~ .menu-content {left: 0;}
	.menu-content ul {padding: 70px 10px 0;}
	.menu-content ul li {border-bottom: solid 1px #fff;list-style: none;}
	.menu-content ul li a {display: block;width: 100%;font-size: 15px;box-sizing: border-box;color:#fff;text-decoration: none;padding: 9px 15px 10px 0;position: relative;}
	.menu-content ul li a::before {content: "";width: 7px;height: 7px;border-top: solid 2px #ffffff;border-right: solid 2px #ffffff;transform: rotate(45deg);position: absolute;right: 11px;top: 16px;}
	
	.footer-box{ text-align: center; padding: 0;}
	.footer-logog{ position: relative; left: 0;}
	.footer-logog-logo{ margin-right: 15px;}
	.footer-logog-btn-contact,.footer-logog-btn-en{ width: 140px;}
	.footer-nav{ display: none;}

	.contacts{ width: 100%; height: 260px; padding-top: 73px;}
	.contacts-copy{ font-size: 10vw;}

	h1.title{ font-size: 9vw; line-height: 1.4em;}
	.h1-subtitle{ font-size: 18px; font-weight: 100;}
	h2{ font-size: 7vw; margin-bottom: 40px;}
	h2::before { content: ''; width: 50px; display: block; background: #1a32ae; height: 5px; margin: 0 0 15px; line-height: 1;}
	section+section{ margin-top: 100px;}
	section p+p{ margin-top: 1.8em;}
	section+section{ margin-top: 100px;}
	.content{ width: 100%; padding: 40px 15px 80px;}
	.content-child{ padding: 0 10px;}

	.page-title{ height: 300px; overflow: hidden;}
	.page-title-bg{ height: 300px; border-bottom-left-radius: 680px 215px; border-bottom-right-radius: 680px 215px;}
	.page-title-text{ width: calc(100vw - 20px); top: 110px; left: 20px;}
	.page-title-text.one{ top: 135px;}
	.caution-box{ margin-left: 0; padding: 20px 30px;}
	.caution-title{ padding-bottom: 10px; margin-bottom: 10px;}

	.import-cars-service{ margin-bottom: 30px;}
	.import-cars-service-img{ width: 48.5%;}
	.import-cars-service-img:nth-child(2),.import-cars-service-img:nth-child(4){ margin-left: 3%;}
	.import-cars-service-img:nth-child(3){ margin-left: 0;}
	.import-cars-flow{ margin-top: -20px; border-left: 30px solid #dce6ff;}
	.import-cars-flow-inbox{ padding-left: 15px; margin-bottom: 30px;}
	.import-cars-flow-midashi{ margin-left: -10px;}
	.import-cars-flow-midashi:after { right: -39px;}
	.import-cars-flow-img{ display: block; width: 100%; margin-bottom: 15px;}
	.import-cars-flow-p{ display: block; margin-left: 0; width: 100%; padding-bottom: 20px;}

	.forwarding-service-li{ display: block; width: 100%; margin: 0 auto; padding-bottom: 50px;}

	.consulting-copy{ font-size: 20px; font-weight: 700; line-height: 1.5em; margin-bottom: 50px; background: #eef7fd; text-align: center; padding: 20px 25px; border-radius: 20px; color: #1a32ae;}
	.consulting-img{ margin-bottom: 30px;}

	.prototype-img-l,.prototype-img-r{ position: relative; border-radius: 3px; box-shadow: none; top: auto; left: auto; right: auto; margin-bottom: 20px;}
	.prototype-img-l-child,.prototype-img-r-child{ display: none;}
	.prototype-conbox,.prototype-conbox.r{ padding:0;}
}
