@charset "UTF-8";


/******************************************************************/
/* COMMON */
/******************************************************************/
@media (min-width:576px){ .container-lg{max-width:540px}}
@media (min-width:768px){ .container-lg{max-width:720px}}
@media (min-width:992px){ .container-lg{max-width:960px}}
@media (min-width:1200px){ .container-lg{max-width:1140px}}
@media (min-width:1400px){ .container-lg{max-width:1140px}}
@media (min-width:576px){ .container-md{max-width:540px}}
@media (min-width:768px){ .container-md{max-width:720px}}
@media (min-width:992px){ .container-md{max-width:960px}}
@media (min-width:1200px){ .container-md{max-width:960px}}
@media (min-width:1400px){ .container-md{max-width:960px}}
@media (min-width:576px){ .container-sm{max-width:540px}}
@media (min-width:768px){ .container-sm{max-width:720px}}
@media (min-width:992px){ .container-sm{max-width:720px}}
@media (min-width:1200px){ .container-sm{max-width:720px}}
@media (min-width:1400px){ .container-sm{max-width:720px}}
body{ font-family:Ryumin Medium KL; font-size:1.1em;}
.arcwrap{ overflow:hidden; margin-bottom:5em;}
.arc{ padding:4em 0 6em 0; color:#FFF; border-bottom-right-radius:2000px 300px; border-bottom-left-radius:2000px 300px; margin-left:-200px; margin-right:-200px; padding-left:200px; padding-right:200px; background:#359AA9; background-size:cover; background-attachment:fixed;}
.arc_2nd{ padding:2em 0 3em 0; color:#FFF; border-bottom-right-radius:2000px 300px; border-bottom-left-radius:2000px 300px; margin-left:-200px; margin-right:-200px; padding-left:200px; padding-right:200px; background:#359AA9; background-size:cover; background-attachment:fixed;}
.arc_grayborder{ box-shadow: 2px 2px 8px #DDD; border-bottom-right-radius:2000px 300px; border-bottom-left-radius:2000px 300px; margin-left:-200px; margin-right:-200px; padding-left:200px; padding-right:200px;}
.hd_white_borderb,.hd_green_borderb{ font-size:2.5em; margin-bottom:0.5em; padding-bottom:0.6em; letter-spacing:0.1em;}
.hd_white_borderb small,.hd_green_borderb small{ font-size:0.4em; margin-left:1em; letter-spacing:0;}
.hd_white_borderb{ border-bottom:1px solid #FFF;}
.hd_green_borderb{ color:#359AA9; border-bottom:1px solid #359AA9;}
.hd_centerline{ position:relative; margin-bottom:1em; text-align:center; color:#359AA9;}
.hd_centerline:before{ position:absolute; top:calc(50% - 1px); left:0; width:100%; height:2px; content:''; background:#359AA9;}
.hd_centerline span{ position:relative; padding:0 1em; background:#fff;}
.hd_centerline span:before,.hd_centerline span:after{ line-height:1; position:absolute; top:calc(50% - .5em);}
.hd_centerline span:before{ left:-0.3em; content:"＜";}
.hd_centerline span:after{ right:-0.3em; content:"＞";}
.hd_orange{ font-size:1.9em; color:#E06F00; font-family:Gothic MB101 Medium; letter-spacing:0.1em; margin-bottom:1em;}
.arch{ color:#359AA9; text-align:center;}
.relative{ position:relative;}
.contentsmargin{ margin-bottom:3em;}
.photopin{ position:absolute; top:-30px; right:-15px; color:#000; font-size:4em;}
.btn-kadomaru_wh{ background:#FFF; color:#505050; border-radius:1.25rem; padding:.155rem 5rem;}
.btn-kadomaru_green{ background:#359AA9; color:#FFF; border-radius:1.25rem; padding:.155rem 5rem;}
.btn-greenbox{ border:1px solid #359AA9; color:#359AA9; font-size:1.3em; display:block; text-align:center;}
.btn-greenbox a{ display:block; color:#359AA9; text-decoration:none; padding:0.5em 1em;}
.btn-greenbox a:hover{ color:#FFF; background:#359AA9;}
.btn-greenbox a:after{ content: url(../images/icon-arrow.png); vertical-align:middle; padding-left:5px;}
.btn-greenbox a:hover:after{ content: url(../images/icon-arrow_hover.png);}
.rounded-9{border-radius:.9rem!important}
.btn-pagemenu{ font-family:Gothic MB101 Medium; color:#FFF; border-color:#FFF; background:#359AA9; margin:1em 0.5em 0 0.5em; padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}
.btn-pagemenu.active,.btn-pagemenu:hover{ color:#359AA9; background-color:#FFF; border-color:#359AA9;}
.hd_koxgothic{ font-size:1.5em; color:#359AA9; font-family:Gothic MB101 Medium; margin-bottom:1em; letter-spacing:0.1em;}
.hd_centerkox,.hd_centerkox_width{ color:#359AA9; font-size:2.2em; text-align:center; line-height:1.7; letter-spacing:0.1em; margin-bottom:1em;}
.hd_centerkox small{ display:block; font-size:0.5em;}
.hd_centerkox_width small{ display:inline; margin-left:1em; font-size:0.4em; letter-spacing:0;}
.bg_lightblue{ background:#d7ebee; padding:2em 0;}
@media (max-width:767.98px){
	.btn-greenbox{ font-size:1.1em;}
	.btn-greenbox a{ padding:0.5em;}
	.btn-pagemenu{ padding:.5rem 0.3rem;font-size:1.1rem;}
	.hd_centerkox,.hd_centerkox_width{ font-size:2em;}
}

.fs-6 span{ display:inline-block;}


/******************************************************************/
/* HEADER */
/******************************************************************/
header{ overflow:hidden; background:#359AA9; color:#FFF;}
header .nav-link{ color:#FFF; text-shadow:0px 0px 15px #000; margin-right:1em; border-bottom:1px solid transparent;}
header .nav-link:hover,.nav-link.current,.nav-link:focus{ border-bottom:1px solid #FFF; color:#FFF;}
.snsicon{ color:#FFF; font-size:1.8em; margin-right:0.2em !important; text-shadow:none !important; padding:0; border-bottom:none !important;}
.snsicon:hover{ color:#FFF;}
#pageimg_2nd{ min-height:100px; border-bottom-right-radius:2000px 300px; border-bottom-left-radius:2000px 300px; padding-top:4em; padding-bottom:10em; margin-left:-200px; margin-right:-200px; padding-left:200px; padding-right:200px; background:url('../images/pageimg_2nd.jpg') no-repeat center;}
h2#pagetitle{ font-size:2.5em; text-align:center; line-height:1.7;}
h2#pagetitle small{ display:block; font-size:0.4em;}
@media (max-width:991.98px){
	#pageimg_2nd{ min-height:initial; padding-top:1em; padding-bottom:5em; background:url('../images/pageimg_2nd.jpg') no-repeat center 50%/contain;}
}
@media (max-width:767.98px){
	.navbar-brand img{ width:100%;}
}


/******************************************************************/
/* FOOTER */
/******************************************************************/
footer{}
.footer-nav{ margin:0; padding:0; font-family:UD Shin Go Light;}
.footer-nav a{ color:#359AA9; text-decoration:none; padding:1em 2em; display:block;}
.footerinfo{ background:#d7ebee; font-size:0.8em; padding:2em 0; font-family:UD Shin Go Regular;}
.footerinfo a{ color:#000;}
.copyright{ font-size:0.8em; text-align:center; padding-top:1em; font-family:UD Shin Go Light;}
#pagetopbox{ display:none; position:fixed; bottom:40px; right:20px; z-index:999999;}
#pagetopbox a{ display:block;}
#pagetopbox a i{ font-size:3em; color:#359AA9; line-height:1;}
@media (max-width:991.98px){
	.footer-nav{ display:none;}
	.footerinfo{ margin-top:1em;}
	.footerinfo img{ margin-bottom:0.5em;}
}
@media (max-width:767.98px){
	footer{ padding-bottom:2.7em;}
	#pagetopbox{ bottom:70px; right:10px;}
	.spfootermenu{ background:rgba(0,0,0,0.8); text-align:center; z-index:10; padding:0.5em; font-size:85%;}
	.spfootermenu:after{ content:""; display:block; clear:both; height:0px; overflow:hidden;}
	.spfootermenu a{ display:block; padding:0.5em; border-radius:10px; color:#FFF; border:2px solid #FFF; text-decoration:none;}
	.spfootermenu .fixBtn1{ background:#005BA2;}
	.spfootermenu .fixBtn2{ background:#359AA9;}
}


/******************************************************************/
/* HAMBURGER */
/******************************************************************/
.input-hidden{ display:none;}
.hamburger-switch{ cursor:pointer; position:absolute; right:3%; top:0; z-index:9999;}
#hamburgermenu:checked ~ .hamburger-switch{ position:fixed;}
.hamburger-icon,.hamburger-icon:before,.hamburger-icon:after{ width:25px; height:3px; background:#FFF; position:absolute; top:50%; left:50%; transition:.3s; content:"";}
.hamburger-icon{ transform:translate(-50%, -50%);}
.hamburger-icon:before{ transform:translate(-50%, -300%);}
.hamburger-icon:after{ transform:translate(-50%, 200%);}
#hamburgermenu:checked ~ .hamburger-switch .hamburger-icon{ width:0;}
#hamburgermenu:checked ~ .hamburger-switch .hamburger-icon:before{ background:#999; transform:rotate(45deg) translate(-40%, 325%);}
#hamburgermenu:checked ~ .hamburger-switch .hamburger-icon:after{ background:#999; transform:rotate(-45deg) translate(-40%, -325%);}
.hamburger-icontitle{ margin-top:50px; font-size:0.8em;}
.hamburger-menuwrap{ position:fixed; height:100%; background:#fafafa; padding:3em 3% 2em; z-index:9998; transition:.3s;	top:0; left:100%; width:70%;}
.hamburger-menuwrap ul{ margin-right:3%; padding-left:5% !important; list-style:none;}
.hamburger-menuwrap ul li a{ text-decoration:none; color:rgba(0,0,0,.9); display:block; padding:.5em 0;}
.hamburger-menuwrap ul li a i{ font-size:1.5em;}

#hamburgermenu:checked ~ .hamburger-menuwrap{ left:30%;}
#hamburgermenu:checked ~ .hamburger-cover{ position:fixed; width:100%; height:100%; top:0; left:0; z-index:9997; background:rgba(3,3,3,.5); display:block;}
@media (min-width: 992px){
	.hamburger-menubox{ display:none;}
}


/******************************************************************/
/* CAROUSEL */
/******************************************************************/
.carousel-item{ position:relative;}
.carousel-inner .carousel-item.active, .carousel-inner .carousel-item-next, .carousel-inner .carousel-item-prev{ display:flex;}
@media (max-width:767.98px){
	.carousel-inner .carousel-item >div{ display:none}
	.carousel-inner .carousel-item >div:first-child{ display:block}
}
@media (min-width: 768px){
	.carousel-inner .carousel-item-end.active, .carousel-inner .carousel-item-next{ transform:translateX(25%)}
	.carousel-inner .carousel-item-start.active, .carousel-inner .carousel-item-prev{ transform:translateX(-25%)}
}
.carousel-inner .carousel-item-end, .carousel-inner .carousel-item-start{ transform:translateX(0)}
.card-img-overlay{ color:transparent; text-align:center; vertical-align:middle;}
.card-img-overlay:hover{ color:#FFF; text-shadow:0px 0px 15px #000; background:rgba(53,154,169,0.7)}
.card-img-overlay div{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:100%;}



/******************************************************************/
/* TOP */
/******************************************************************/
.topcopy{ text-align:center;}
#pageimg_top{ min-height:300px; border-bottom-right-radius:2000px 300px; border-bottom-left-radius:2000px 300px; padding:4em 200px 20em 200px; margin:0 -200px; background:url('../images/top/pageimg.jpg?01') no-repeat center center/cover;}
.challenge{ font-family:FB Sloop Script Two; font-size:6em; line-height:0.6; margin:0.6em 0 0.3em 0; letter-spacing:0.1em;}
@media (max-width:991.98px){
	.navbar-brand img{ width:80%;}
	.topcopy{ text-align:left; text-shadow:0px 0px 15px #000;}
	.topcopy .fs-3{ font-size:0.88em!important;}
	#pageimg_top{ min-height:initial; min-height:auto; padding:1em 100px 6em 100px; margin:0 -100px; background:#c4d3e0 url('../images/top/pageimg_sp.jpg') no-repeat center top/cover;}
	.challenge{ font-size:3.5em; margin:0.1em 1em 0.3em 0;}
}




/******************************************************************/
/* RECRUIT */
/******************************************************************/
dl.recruittbl{ margin-bottom:2em;font-family:Gothic MB101 Regular;}
dl.recruittbl dt,dl.recruittbl dd{ padding:1em 1.5em; margin:1em 0 0 0;}
dl.recruittbl dt{ font-weight:normal; background:#E06F00; color:#FFF; display:inline-flex!important; justify-content:center!important; align-items:center!important;}
dl.recruittbl dd{ background:#fcf2e8;}
@media (max-width:767.98px){
	dl.recruittbl dd{ margin-top:0;}
}


/******************************************************************/
/* BUSINESS */
/******************************************************************/
.photo_nanamecut{ -webkit-clip-path: polygon(15% 0%, 100% 0%, 100% 100%, 0% 100%); clip-path: polygon(15% 0%, 100% 0%, 100% 100%, 0% 100%);}
.shiplist{ font-size:0.8em; text-align:center; margin-bottom:4em;}
.shiplist h3{ font-size:1.8em; border-bottom:1px solid #505050; margin-bottom:0.8em; padding:0.8em 0;}
.shiplist h3 small{ font-size:0.7em; margin-right:1em;}



/******************************************************************/
/* COMPANY */
/******************************************************************/
.philosophy{ background:#359AA9; color:#FFF; text-align:center; margin-bottom:1em; padding:1em; font-size:1.3em; border-radius:10px; font-family:Ryumin Heavy KL;}
@media (min-width: 992px){
	.philosophy span{ display:block; font-size:1.3em;}
}
dl.profiletbl{}
dl.profiletbl dt,dl.profiletbl dd{ padding:1em 1.5em; margin:1em 0 0 0;}
dl.profiletbl dt{ font-weight:normal; background:#c6e2e7; display:inline-flex!important; justify-content:center!important; align-items:center!important;}
dl.profiletbl dd{ background:#eaf5f6;}
@media (max-width:767.98px){
	dl.profiletbl dd{ margin-top:0;}
}
