@charset "utf-8";

/* basic */

body{
margin: 0;
padding: 0;
font-size: 14px;
color: #333333;
background-color: #fcfcfc;
font-family:'Helvetica', 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
line-height: 1.5em;
-webkit-text-size-adjust: 100%;
min-width: 980px;
overflow-y: scroll;
}

img{
border: none;
}

a:link{
color: #333333;
}

a:visited{
color: #333333;
}

a:active{
color: #333333;
}

a:hover{
color: #333333;
}

ul li{
	list-style: none;
}

.marker{
color: #171c61;
}

.red{
color: #ff0000;
}

.blue{
color: #0000ff;
}

.bold{
font-weight: bold;
}

.txcen{
text-align: center;
}

.txrig{
text-align: right;
}

.mrgn-t15{
margin-top: 15px;
}

.mrgn-t30{
margin-top: 30px;
}

.mrgn-t60{
margin-top: 60px;
}

.mrgn-b15{
margin-bottom: 15px;
}

.mrgn-b30{
margin-bottom: 30px;
}

.mrgn-b60{
margin-bottom: 60px;
}

input,textarea {
  /* background: #f1f4f9; */
  border: 1px solid #d8d8d8;
  border-radius: 2px;
  padding: 4px 6px;
}

::placeholder {
  /* color: #dedede; */
  /* color: #dee0e3; */
  color: #d8d8d8;
}

/* header */

#header{
border-top: solid 10px #171c61;
}

#header #logo-topnavi{
width: 950px;
margin: 0 auto;
font-size: 13px;
line-height: 110%
}

#header h1{
width: 300px;
margin: 0;
padding: 15px 0px 0px 0px;
float: left;
}

/* #header p{
width: 400px;
float: right;
text-align: right;
margin: 15px 0 0 0;
font-size: 13px;
} */

#header #menu-wrapper{
background: url("img/menu_bg.jpg") repeat-x top left;
}

#header #mainmenu{
	margin: 15px auto 0 auto;
	padding: 0px;
	width: 980px;
	height: 40px;
	position: relative;
	overflow: hidden;

}

#header #mainmenu ul{
	margin: 0px;
	padding: 0px;
	position: relative;
	left: 50%;
	float: left;
}

#header #mainmenu li{
	margin: 0px;
	padding: 0px;
	position: relative;
	left: -50%;
	float: left;
}

a:link.menu_link1{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_01.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:visited.menu_link1{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_01.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:hover.menu_link1{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_01.jpg');
	background-repeat: no-repeat;
	background-position: left bottom;
	text-indent: -9999px;
	overflow:hidden;
}

a:link.menu_link2{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_02.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:visited.menu_link2{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_02.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:hover.menu_link2{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_02.jpg');
	background-repeat: no-repeat;
	background-position: left bottom;
	text-indent: -9999px;
	overflow:hidden;
}


a:link.menu_link3{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_03.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:visited.menu_link3{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_03.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:hover.menu_link3{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_03.jpg');
	background-repeat: no-repeat;
	background-position: left bottom;
	text-indent: -9999px;
	overflow:hidden;
}

a:link.menu_link4{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_04.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:visited.menu_link4{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_04.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:hover.menu_link4{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_04.jpg');
	background-repeat: no-repeat;
	background-position: left bottom;
	text-indent: -9999px;
	overflow:hidden;
}

a:link.menu_link5{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_05.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:visited.menu_link5{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_05.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:hover.menu_link5{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_05.jpg');
	background-repeat: no-repeat;
	background-position: left bottom;
	text-indent: -9999px;
	overflow:hidden;
}

a:link.menu_link6{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_06.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:visited.menu_link6{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_06.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:hover.menu_link6{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_06.jpg');
	background-repeat: no-repeat;
	background-position: left bottom;
	text-indent: -9999px;
	overflow:hidden;
}

a:link.menu_link7{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_07.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:visited.menu_link7{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_07.jpg');
	background-repeat: no-repeat;
	background-position: 0px 0px; 
	text-indent: -9999px;
	overflow:hidden;
}

a:hover.menu_link7{
	display: block;
	width: 140px;
	height: 40px;
	background-image:url('img/menu_07.jpg');
	background-repeat: no-repeat;
	background-position: left bottom;
	text-indent: -9999px;
	overflow:hidden;
}

/* contents */
#contents-o{
background-color: #f6f6f6;
width: 980px;
margin: 0 auto;
background-color: #fcfcfc;
box-shadow:0px 0px 20px rgba(113,135,164,0.65);
}

#contents{
width: 950px;
margin: 0 auto;
padding: 15px 15px 30px 15px;
}

#contents #topimg p{
margin: 0 0 15px 0;
padding: 0;
}

#contents .toph2, #contents .o-h3{
margin: 0px 0px 0px 0px;
padding: 0;
border-bottom: 2px solid #1d2088;
}

#contents .toph2-sub{
margin: 0px 0px 0px 0px;
padding: 0;
border-bottom: 2px solid #1d2088;
}

.viewer{
	margin: 0px auto 15px auto;
	padding: 0px;
	width: 950px;
	height: 350px;
	text-align: left;
	overflow: hidden;
}

.viewer ul{
	width: 950px;
	height: 350px;
	margin: 0px auto 0px auto;
	padding: 0px;
	text-align: left;
	overflow: hidden;
	position: relative;
}

.viewer ul li{
	top: 0;
	left: 0;
	width: 950px;
	height: 350px;
	display: none;
	position: absolute;
}

/* sub */

#contents #sub{
width: 240px;
max-height: 640px;
float: left;
border-top: solid 1px #999999;
border-left: solid 1px #999999;
border-right: solid 1px #999999;
background-color: #ffffff;
font-weight: bold;
overflow-y: scroll;
}
#contents #sub::-webkit-scrollbar {

  width: 4px;

}

#contents #sub::-webkit-scrollbar-thumb {

  background: linear-gradient(0deg,#364D9D,#2B3887);

  border-radius: 2px;

}

#contents #sub::-webkit-scrollbar-track {

  background: rgba(100,100,100, .5);

}

#contents #sub ul{
margin: 0;
padding: 0;
}

#contents #sub ul li{
list-style-type: none;
border-bottom: solid 1px #999999;
margin: 0;
text-align: center;
background-color: #e8f4ff;
/*background-color: #e0f0ff;*/
}

#contents #sub ul li a{
display: block;
padding: 10px 0px;
}

#contents #sub ul li a:link{
text-decoration: none;
}

#contents #sub ul li a:visited{
text-decoration: none;
}

#contents #sub ul li a:active{
text-decoration: none;
}

#contents #sub ul li a:hover{
text-decoration: none;
background: #d4eaff;
}

#contents #sub .thispage{
background-color: #b8ddff;
}

#contents #top-sub{
width: 250px;
margin: 2px 0px 0px 0px;
float: right;
}

#contents #top-sub #oikawamaru{
margin: 0px;
border: solid 1px #999999;
}

#contents #top-sub #oikawamaru .toph2{
	background-color: #e0e0e0;
}

#contents #top-sub #telfax{
margin-top: 22px;
border: solid 1px #999999;
}

#contents #top-sub #telfax .toph2{
	background-color: #e0e0e0;
}


/* main */

#contents #main{
width: 685px;
float: right;
}

#contents #top-main{
width: 685px;
float: left;
}

#contents #top-main .cont-in{
/*border: solid 1px #999999;*/
background-color: #ffffff;
}

.title_box{
	margin: 3px 0px 20px 0px; 
	padding-bottom: 1px;
	border-bottom: 1px solid #666666;
}

.title_sub_box{
	padding-bottom: 1px;
	border-bottom: 1px solid #666666;
}

/* toppege */

.top_info {
  display: flex;
  justify-content: flex-end;
  max-width: 400px;
  margin: 15px 0 0 auto;
  font-size: 13px;
  text-align: right;
}

#news{
	margin: 0px 0px 0px 0px;
	font-size: 13px;	
}

#news dl{
	margin: 0;
}

#news dt{
	width: 105px;
	float: left;
	padding: 7px 0 6px 3px;
	line-height: 120%;
	color: #ec6841;
	font-weight: bold;
}

#news dd{
	margin: 0px 0px 5px 0px;
	padding: 7px 3px 6px 6.6em;
	border-bottom: 1px #666666 dotted;
	line-height: 120%;
}

#message{
	margin: 25px 0px 0px 0px;
}

#message .title_box{
	margin: 0px 0px 0px 0px;
}

.message_text{
	margin: 15px;
	padding: 0px;
	/*
	height: 200px;
	background-image: url('img/message_back.jpg');
	background-repeat: no-repeat;
	background-position: bottom right;
	*/
}


/* footer */
#footer{
/*background-color: #f6f6f6;*/
background-color: #e9e9e9;
text-align: center;
font-size: 12px;
}

#footer #address{
width: 100%;
margin: 0;
padding-top: 2px;
font-size: 11px;
border-top: solid 1px #171c61;
}

#footer #address p{
margin: 3px 0 0 0;
padding: 0;
}

#footer_menu{
margin: 3px 0px 3px 0px;
}

#footer #copyright{
background-color: #171c61;
font-size: 11px;
color: #ffffff;
padding: 1px;
margin: 0;
}

/* works */

#contents #main .ship{
border: solid 1px #999999;
background-color: #ffffff;
border-collapse: collapse;
margin-bottom: 15px;
}

#contents #main .ship .ships-in-h, #contents #main .ship td{
border-bottom: solid 1px #999999;
border-right: solid 1px #999999;
}

.ships-in-h{
background-color: #dddddd;
}

#contents #main .ship td{
padding-left: 10px;
}

#contents #main .ship .ships-header{
width: 685px;
height: 40px;
background: url("img/h3_02.png") top left no-repeat;
text-align: left;
font-size: 18px;
color: #171c61;
padding: 0 0 0 10px;
line-height: 1;
}

#contents #main .ship .ship-img{
width: 300px;
padding-left: 0;
}

#contents #main .ship th{
width: 100px;
}

/* new-ships */

#contents #main .new-ship h3{
width: 685px;
height: 40px;
background: url("img/h3_02.png") top left no-repeat;
margin: 0;
padding: 0;
font-size: 18px;
color: #171c61;
padding: 0 0 0 10px;
line-height: 2;
}
#contents #main .new-ship h6{
  color:#e5e5e5;
  font-size: 12px;
  padding: 6px 0;
}

#contents #main .new-ship{
background-color: #ffffff;
border: solid 1px #999999;
}

#contents #main .new-ship .new-ship-in{
padding: 25px 0 10px 15px;
}

#contents #main .new-ship img{
width: 300px;
margin: 0 0 15px 15px;
}

.new_ships_iframe{

}

/* company */

#contents #company{
border: solid 1px #999999;
background-color: #ffffff;
border-collapse: collapse;
margin-bottom: 30px;
width: 950px;
}

#contents #company th{
border-bottom: solid 1px #999999;
border-right: solid 1px #999999;
background-color: #dddddd;
}

#contents #company td{
padding-left: 10px;
border-bottom: solid 1px #999999;
border-right: solid 1px #999999;
}

#contents #company #companyimg{
width: 400px;
padding-left: 0;
}

#contents #history{
border: solid 1px #999999;
background-color: #ffffff;
border-collapse: collapse;
margin-bottom: 30px;
width: 950px;
}

#contents #history th{
border-bottom: solid 1px #999999;
border-right: solid 1px #999999;
padding: 5px;
/*vertical-align: top;*/
background-color: #dddddd;
}

#contents #history td{
border-bottom: solid 1px #999999;
border-right: solid 1px #999999;
padding: 5px;
}

#contents #access{
border: solid 1px #999999;
background-color: #ffffff;
border-collapse: collapse;
margin-bottom: 15px;
width: 950px;
}

#contents #access td{
vertical-align: top;
}

#contents #access p{
margin-left: 10px;
}

#contents #access #map{
width: 427px;
}

#contents #access #map img{
margin-top: 10px;
}

#contents #access #map p{
text-align: right;
margin: 5px 20px 10px 5px;
}


/* contact */

#contents #contact table{
border: solid 1px #999999;
background-color: #ffffff;
border-collapse: collapse;
table-layout: fixed;
max-width: 650px;
}

#contents #contact th, #contents #contact td{
border-bottom: solid 1px #999999;
border-right: solid 1px #999999;
padding: 5px;
}

#contents #contact table th{
width: 140px;
background-color: #dddddd;
}

#contents #contact table input, #contents #contact textarea{
width: 480px;
}

#contents #contact p{
margin: 5px 0 0 250px;
padding: 0;
}

#contents #contact p input{
margin-right: 10px;
}

#telfax{
margin-top: 30px;
}

/* links */

#contents #links dt{
color: #171c61;
font-weight: bold;
}

#contents #links dd{
margin: 0 0 15px 0;
padding: 0;
}

.contact_radio {
  display: flex;
  flex-flow: row wrap;
  gap: 1em;
}

.contact_radio input {
  width: initial !important;
}

.contact_radio label {
  text-align: left;
}

/* clearfix
------------------------------*/
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

/* 追加 */
.chouka_calendar ul li {
	margin: 5px;
}