/*** inport ***/
@import "ress.css";
@import "setting.css";
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);
@import url(https://fonts.googleapis.com/earlyaccess/hannari.css);
@import url(https://fonts.googleapis.com/css?family=Sawarabi+Mincho);
@import url('https://fonts.googleapis.com/css?family=Crimson+Text');

/***********
** LAYOUT **
***********/
.block-top{
	max-width:1280px;
	margin:0 auto;
}

#bt-contact{
	position:fixed;
	top:50%;
	right:0;
	z-index:999;
}
#bt-contact a{
	display: block;
	height: 100%;
	white-space: nowrap;
	position: relative;
	text-indent: 100%;
	overflow:hidden;
	z-index: 9999999;
	
	width:96px;
	height:226px;
	background:url(../img/share/side-contact.png) no-repeat right center;
}


/*============
** NAV **  
============*/
.drawer-nav .sp{
	display:none;
}

@media (max-width: 64em) { 
	.drawer-nav .sp{
		display:block;
	}
	.drawer-nav .sp.top{
		margin:10px;
		background:#f2f2f2;
		border:1px solid #ccc;
	}
	.drawer-nav ul li{
		font-size:1.2rem;
		border-bottom:2px dotted #ccc;
	}
	.drawer-nav ul li ul li{
		background:#f2f2f2;
	}
	.drawer-nav ul li ul li:last-child{
		border:none;
	}
}






/*============
** SLIDER **  
============*/
#slider1{
	position:relative;
}
#slider1 img{
	width:80%;
}

#slider1 .catch{
	position:absolute;
	top:20%;
	right:2%;
	z-index:9;
}



/*============
** CONTAINER **  
============*/
/************
    index
*************/
.notice{
	margin:20px 0 0;
	padding:50px 10px;
	background:#e1e1d7;
	overflow:hidden;
}
.notice .figure{
	width:50%;
	text-align:right;
	margin:0 20px;
	float: right;
	background:url(../img/index/notice-img_bg.png) repeat-x #99cccc;
	transition: .3s;
}
.notice .figure img{
	max-width:100%;
}
.notice .figure p{
	color:#fff;
	font-weight:bold;
	padding:10px;
}
.notice h2{
	font-family: 'Hannari_0';
	font-size:1.7rem;
	letter-spacing:-2px;
	font-weight:normal;
	text-align:right;
	padding:20px;
	transition: .3s;
}
.notice h2 span:before,
.notice h2 span:after{
	content: "\A";
	white-space: pre;
}
.notice .height_line{
	font-size:0.9rem;
	line-height:1.6;
	padding-left:50px;
	background:url(../img/share/dot-line-height.png) repeat-y left center;
	transition: .3s;
}

@media (max-width: 970px) { 
	.notice .figure{
		width:45%;
	}
}
@media (max-width: 870px) { 
	.notice h2{
		text-align:left;
	}
	.notice h2 span:before,
	.notice h2 span:after{
		content: none;
	}
	.notice .figure{
		text-align:left;;
	}
	.notice .height_line{
		padding-left:20px;
	}
}
@media (max-width: 640px) { 
	.notice .figure{
		float:none;
		width:93%;
	}
}


.business {
	
	background:url(../img/page/company-bg.jpg) no-repeat #eeeded;
	-moz-background-size:contain;
background-size:contain;
}
.business.ship{
	background:url(../img/page/shipsection_bg2.jpg) no-repeat #eeeded;
	-moz-background-size:contain;
background-size:contain;
}
.business.land{
	background:url(../img/page/landsection-bg2.jpg) no-repeat #eeeded;
	-moz-background-size:contain;
background-size:contain;
}
.business h2{
	font-family: 'Hannari_0';
	font-size:1.7rem;
	font-weight:normal;
	text-shadow:1px 1px 3px rgba(0,0,0,0.6);
	color:#fff;
	text-align:center;
	padding:6% 0 5%;
}
.business h2 span{
	display:block;
	line-height:1.0;
}
.business h2 span:before{
	content: "\A";
	white-space: pre;
}
.business .block-main{
	margin:100px 0 0;
	padding-top:90px;
	background:url(../img/index/line-philosophy.png) no-repeat center top;
	-moz-background-size:100% auto;
background-size:100% auto;
}


.business .business-dec h3{
	font-family: 'Hannari_0';
	font-size:1.8rem;
	font-weight:normal;
	text-align:center;
}

.business .business-dec .read{
	max-width:80%;
	margin:20px auto;
	padding:15px;
	background:#fff;
}
.business .business-dec .read dt{
	font-size:1.2rem;
	font-weight:bold;
	padding:10px;
	border-bottom:3px dotted #eeeded;
}
.business .business-dec .read dd{
	padding:10px;
}
.business .business-dec section{
	padding:20px;
}
.business .business-dec section section{
	border-bottom:2px dotted #fff;
}

.business .business-dec h4{
	font-size:1.4rem;
}
.business .business-dec .box-parents{
	display:flex;
}
.business .business-dec .box{
	width:45%;
	margin:10px;
	padding:15px;
	background:#fff;
}
.business .business-dec .box h5{
	font-size:110%;
	text-align:center;
	transition: .3s;
}
.business .business-dec .box .img{
	margin-right:15px;
	text-align:center;
}
.business .business-dec .box .img img{
	max-width:100%;
}
.business .business-dec .box p{
	padding:15px;
}
@media (max-width: 970px) { 
	.business .business-dec .box-parents{
		display:block;
	}
	.business .business-dec .box{
		width:100%;
		overflow:hidden;
	}
	.business .business-dec .box .img{
		float:left;
		width:20%;
	}
	.business .business-dec .box h5{
		text-align:left;
	}
}

@media (max-width: 770px) { 
	.business .business-dec .box h5{
		padding-bottom:10px;
	}
	.business .business-dec .box p{
		padding:0;
	}
}

@media (max-width: 640px) { 
	.business .business-dec section{
		padding:10px;
	}
	.business .business-dec .read{
		max-width:100%;
	}
	.business .business-dec .box{
		margin:10px 0;
	}
	.business .business-dec .box .img{
		float:none;
		width:100%;
		text-align:cenrter;
	}
	.business .business-dec .box h5{
		text-align:center;
	}
}


.block-line{
	max-width:1280px;
	margin:20px auto;
	overflow:hidden;
	clear:both;
}
.block-line.block-right:first-child{
	background:url(../img/index/tool-img01.png) no-repeat right bottom;
}
.block-line.block-right:last-child{
	padding-bottom:100px;
	background:url(../img/index/tool-img03.png) no-repeat 30% bottom;
}

.block-line.block-left{
	background:url(../img/index/tool-img02.png) no-repeat left top;
}

.block-line .block-text{
	width:58%;
	padding:30px;
}
.block-line .figure{
	width:42%;
	position:relative;
	padding-bottom:20px;
	padding-left:20px;
}
.block-line .figure img{
	max-width:100%;
}
.block-line .block-text .img{
	text-align:center;
}
.block-line .block-text h3{
	font-family: 'Hannari_0';
	font-size:1.7rem;
	font-weight:normal;
	padding:20px 0;
}
.block-line .block-text p{
	line-height:1.8;
}


.block-line.block-left .block-text{
	float:left;
}
.block-line.block-right .block-text{
	float:right;
}

.block-line.block-right .figure01 img{
	-webkit-clip-path: polygon(4% 5%, 90% 0, 100% 100%, 0 96%);
	clip-path: polygon(4% 5%, 90% 0, 100% 100%, 0 96%);
}
.block-line.block-right .figure01 p{
	position:absolute;
	bottom:-20px;
	left:-5px;
}
.block-line.block-right .figure01 p img{
	max-width:100%;
}

.block-line.block-left .figure02{
	float:right;
}
.block-line.block-left .figure02 img{
	-webkit-clip-path: polygon(90% 0, 100% 82%, 49% 100%, 1% 88%, 7% 10%);
clip-path: polygon(90% 0, 100% 82%, 49% 100%, 1% 88%, 7% 10%);
}
.block-line.block-left .figure02 p{
	position:absolute;
	bottom:35px;
	right:20px;
}

.block-line.block-right .figure03 img{
	-webkit-clip-path: polygon(50% 0%, 100% 8%, 84% 92%, 4% 98%, 0 5%);
	clip-path: polygon(50% 0%, 100% 8%, 84% 92%, 4% 98%, 0 5%);
}
.block-line.block-right .figure03 p{
	position:absolute;
	bottom:-30px;
	left:20px;
}
@media (max-width: 770px) { 
	.block-line .block-text{
		width:100%;
	}
	.block-line .figure{
		width:100%;
		text-align:center;
	}
	.block-line .figure img{
		width:70%;
	}
	.block-line.block-left .block-text{
		float:none;
	}
	.block-line.block-right .block-text{
		float:none;
	}
}
@media (max-width: 640px) { 
	.block-line.block-right:first-child{
		background-position:right 50%;
	}
	.block-line.block-right:last-child{
		background-position:-100px bottom;
	}
}

#page .block .TTL{
	height:200px;
}
#page .company .TTL{
	background:url(../img/page/greeting-bg.jpg) no-repeat center top;
}
#page .company.recruit .TTL{
	background:url(../img/page/recruit-bg.jpg) no-repeat center top;
}
#page .greeting .TTL{
	background:url(../img/page/greeting-bg.jpg) no-repeat center top;
}
#page .policy .TTL{
	background:url(../img/page/policy-bg.jpg) no-repeat center top;
}
#page .philosophy .TTL{
	background:url(../img/page/philosophy-bg.jpg) no-repeat center top;
}

#page .block .TTL h2{
	font-family: 'Hannari_0';
	font-size:1.8rem;
	font-weight:normal;
	text-align:center;
	color:#fff;
	padding-top:4%;
	text-shadow:1px 1px 3px rgba(0,0,0,0.8);
}

#page .block .TTL h2 span:before{
	content: "\A";
	white-space: pre;
}

#page .block .block-main{
	margin:0 auto;
	padding:10px;
}


.point{
	position:relative;
}
.point .bg-emboss{
	padding:30px 0;
	background:url(../img/index/point-bg.png) repeat;
}

.point .block-main{
	width:70%;
	text-align:center;
}
.point .block-main .txt{
	text-align:left;
	padding:10px;
}
.point h3{
	font-family: 'Hannari_0';
	font-size:1.7rem;
	color:#5b7399;
	margin:15px 0;
	padding-bottom:10px;
	display:inline-block;
	background:url(../img/index/line-seizou.png) no-repeat center bottom;
}

.point .img-man{
	width:22%;
	position:absolute;
	top:20px;
	right:40px;
}
.point .img-man img{
	max-width:100%;
}
@media (max-width: 640px) { 
	.point .img-man{
		width:40%;
		right:-40px;
	}
}
@media (max-width: 480px) { 
	.point .img-man{
		display:none;
	}
	.point .block-main{
		width:100%;
	}
}

/************
    page
*************/


.company h3{
	font-family: 'Hannari_0';
	font-size:2.2rem;
	font-weight:normal;
	transform: rotate(0.05deg);
	padding-bottom:30px;
}
.company .box{
	max-width:980px;
	padding:20px 0 40px;
	margin:0 auto;
}

.company dl{
	display:flex;
	border-bottom:2px dotted #ccc;
}
.company dl dt,
.company dl dd{
	padding:10px;
}
.company dl dt{
	width:25%;
}

.company .map{
	height:500px;
	transition: .3s;
}
.company .map iframe{
	height:100%;
}
@media (max-width: 640px) { 
	.company dl{
		display:block;
		padding:10px;
	}
	.company dl dt,
	.company dl dd{
		padding:0;
	}
	.company dl dt{
		width:100%;
		font-weight:bold;
	}
	.company .map{
		height:300px;
	}
}


.greeting .block-main{
	overflow:hidden;
}
.greeting h3{
	font-family: 'Hannari_0';
	font-size:1.8rem;
	font-weight:normal;
	padding:15px;
	transform: rotate(0.05deg);
}
.greeting .img{
	max-width:50%;
	float:left;
	padding:15px;
	transition: .3s;
}
.greeting .img img{
	max-width:100%;
}


@media (max-width: 640px) { 
	.greeting .img{
		float:none;
		width:100%;
		max-width:100%;
	}
}


.philosophy .block-line{
	max-width:1200px;
}
.philosophy .block-line .img,
.philosophy .block-line p{
	width:50%;
}
.philosophy .block-left,
.philosophy .block-right{
	display:flex;
}
.philosophy .block-left{
	flex-direction:row-reverse;
}
.philosophy .block-line .img img{
	max-width:100%;
	vertical-align:bottom;
}
.philosophy .block-line p{
	font-family: 'HanaMinA';
	font-size:1.7rem;
	line-height:1.6;
	padding:15px;
	padding-top:12%;
	transition: .3s;
	background:#f2f2f2;
}

@media (max-width: 970px) { 
	.philosophy .block-line p{
		font-size:1.6rem;
		padding-top:10%;
	}
}
@media (max-width: 870px) { 
	.philosophy .block-line p{
		font-size:1.2rem;
	}
}
@media (max-width: 770px) { 
	
}
@media (max-width: 640px) { 
	.philosophy .block-left,
	.philosophy .block-right{
		display:block;
	}
	.philosophy .block-line .img,
	.philosophy .block-line p{
		width:100%;
	}
	.philosophy .block-line p{
		font-size:1.2rem;
		padding:10px 10px 20px;
	}
}


.policy .block-main{
	max-width:1200px;
	font-size:105%;
}
.policy dl{
	padding:10px;
	border-bottom:2px dotted #ccc;
}
.policy dl dt{
	font-weight:bold;
}



/* more */
.block .more a{
	color:#a6a490;
	text-decoration:none;
	font-weight:bold;
	text-align:center;
	padding:8px 70px;
	border:2px solid #d2d1c5;
}
.block .more{
	padding:30px 0 20px;
	text-align:center;
}
.block .more a:before{
	font: 12px 'FontAwesome';
	content: '\f054';
	margin-right:10px;
}
.block.point .more a{
	color:#fff;
	border:2px solid #fff;
}


.contact{
	text-align:center;
	padding:70px 0 30px;
	background:url(../img/index/contact-bg.png) repeat;
}
.contact h2{
	font-family: 'Hannari_0';
	font-size:1.8rem;
	font-weight:normal;
	margin-bottom:20px;
}

.contact .phone{
	width:60%;
	margin:30px auto;
	color:#fff;
	background:#6c9ee4;
	overflow:hidden;
	padding:5px 20px;
	transition: .3s;
}
.contact .phone p{
	float:left;
}
.contact .phone .number{
	font-family: 'Crimson Text', serif;
	font-size:1.9rem;
	padding:0 10px;
	display:inline-block;
}
.contact .phone .number:before{
	content: url(../img/share/tel-white.png);
	margin-right:10px;
}
.contact .phone .small{
	font-size:0.8rem;
	text-align:left;
}
.contact .phone .small .time{
	padding:0 5px;
	overflow:hidden;
	display:block;
}
.contact .phone .small .abbr{
	float:left;
	padding:10px;
}
.contact .phone .small .time span:after{
	content: "\A";
	white-space: pre;
}
@media (max-width: 970px) { 
	.contact .phone{
		width:80%;
	}
}
@media (max-width: 770px) { 
	.contact .phone{
		width:90%;
	}
	
	.contact .phone p{
		float:none;
	}
	.contact .phone .small{
		text-align:center;
	}
	.contact .phone .small .time span:after{
		content: none;
	}
	.contact .phone .small .abbr{
		padding:0;
		float:none;
	}
	.contact .phone .small .time{
		display:inline;
	}
}


.block.map{
	display:flex;
}
.block.map p{
	font-weight:bold;
}
.block.map .block-left,
.block.map .block-right{
	width:50%;
}
.block.map .block-left{
	padding:10% 0 0;
}

.block.map .block-left .add span{
	margin-right:5px;
}
.block.map .block-left .tel{
	font-family: 'Crimson Text', serif;
	font-size:1.9rem;
	font-weight:normal;
	padding:0 10px;
}
.block.map .block-left .tel:before{
	content: url(../img/share/tel-dark_gray.png);
	margin-right:5px;
}
.block.map .block-right{
	height:450px;
}
.block.map .block-right iframe{
	height:100%;
}

@media (max-width: 770px) { 
	.block.map{
		display:block;
	}
	.block.map .block-left, .block.map .block-right{
		width:100%;
	}
	.block.map .block-right{
		height:250px;
	}
	.block.map .block-left{
		padding:20px 0;
	}
}
@media (max-width: 480px) { 
	.block.map .block-left .add span{
		margin-right:0;
		text-align:left;
	}
	.block.map .block-left .add span:after{
		content: "\A";
		white-space: pre;
	}
	.block.map .block-left .blue{
		font-size:0.9rem;
	}
	.block.map .block-left img{
		max-width:95%;
	}
}


#footer{clear:both;
	width:100%;
	font-size:0.8rem;
	color:#fff;
	text-align:center;
	padding:15px;
	background:#406db0
}




/*****************
*** FORM STYLE ***
*****************/
.form-group{
    width:80%;
    padding: 15px 0;
    background:#fff;
    border-bottom:1px solid #eee;
    display:table;
    box-sizing:border-box;
    transition: .3s;
    margin:0 auto;
}
.form-group .box-cell{
    margin:0;
    padding:15px;
    display:table-cell;
    vertical-align:middle;
    transition: .3s;
}
.form-group .form-control{
	width:80%;
	transition: .3s;
}
.form-group .TTl{
    width:33%;
    color:#666;
}
.form-group .TTl span{
    font-size:13px;
    padding:2px 10px;
    margin-left:10px;
    background:#fff;
}
.form-group .box-body{
    width:67%;
}
/* butto */
.button .btn {
    display: inline-block;
    padding: 8px 20px;
    margin: 20px 10px 0;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    box-shadow: 1px 1px 5px rgba(0,0,0,0.4);
}
.btn-default {
    color: #fff;
    background-color: #818181;
}
.btn-default.focus, .btn-default:focus {
    color: #333;
    background-color: #ccc;
    border-color: #ccc
}
.btn-default:hover {
    color: #fff;
    background-color: #808080;
}
.btn-primary {
    color: #fff;
    background-color: #406db0;
}
.btn-primary.focus, .btn-primary:focus {
    color: #333;
    background-color: #e6e6e6;
    border-color: #fff
}
.btn-primary:hover {
    color: #fff;
    background-color: #6699cc;
}

@media (max-width: 770px) { 
	#contactF input.w60p{
        width:100%;
    }
    .form-group{
    	width:80%;
    }
}
@media (max-width: 640px) { 
    .form-group{
        display:block;
        width:100%;
        margin-bottom:10px;
        padding-bottom:10px;
    }
    .form-group .box-cell{
        width:100%;
        display:block;
        padding: 10px 10px 0;
    }
    .form-group .form-control{
		width:100%;
	}
}



/****************
** BREAKPOINTS **
****************/

/* Large desktop */
@media (min-width: 1200px) { }
@media (max-width: 1150px) and (min-width: 980px) {  
}

@media (max-width: 970px) { 
}
@media (max-width: 870px) { 
}
@media (max-width: 770px) { 
}
@media (max-width: 640px) { 
}
@media (max-width: 480px) { 
}

@media (max-width: 340px) {
}
