@charset "utf-8";

body {
	font-family: "Helvetica", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
	line-height:25px;
	color: #333;
	text-align: left;
	text-decoration: none;
}

/**header*/

header {
	background-color: #778899;
	height: 60px;
	padding:20px 0 0 0;
	margin:0 0 0 0;
}
p {
	text-align: justify;
}
.contianer {
	width: 100%;
	text-align: center;
	background-color: #778;
}
.header-menu {
	width: 1140px;
	margin:0 auto;
	display: flex;
}
.header-left {
	width: 35%;
	margin-right: auto;
}
.header-left img {
	width: 250px;
	padding: 4px 0 0 0;
}
.header-right {
	width: 65%;
	margin-left: auto;
	color: #FFF;
}
.nav-list {
	display: flex;
	justify-content:flex-end;
	list-style-type: none;
}
.nav-list li {
	font-size: 16px;
	padding: 10px 0 0 30px;/*
	letter-spacing: 3px;*/
	font-color: #FFF;
}
.nav-list li:hover {
	color: #ffcc66;
}

/***top***/

.top-wrapper {
	width: 1140px;
	margin:0 auto;
	padding: 0 0 10px 0;
	display: flex;
}
.topimg {
	width: 100%;
	margin:0 auto;
	position: relative;
	display: inline-block;
	padding: 0 0 30px 0;
}

/*トップタイトル*/

.topimg h1 {
	font-size: min(5vw, 50px);
	font-weight: bold;
	color: #003366;
	position: absolute;
	top:42%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.topimg h2 {
	font-size: min(3vw, 30px);
	font-weight: bold;
	letter-spacing: 5px;
	color: #003366;
	position: absolute;
	top:20%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.topimg h3 {
	font-size: min(2vw, 18px);
	font-weight: middle;
	color: #fff;
	position: absolute;
	top: 10%;
	left: 50%;
	transform: translate(-50%, -50%);
	line-height: 80%;
	padding: 0.8% 1.2%;
	background:#003366;
	border-radius: 30px;
}
.topimg h4 {
	font-size: min(2.5vw, 16px);
	font-weight: bold;
	color: #f00;
	position: absolute;
	top: 28%;
	left:16%;
	transform: translate(-30%, -30%);
}
.topimg h5 {
	font-size: min(5vw, 35px);
	font-weight: bold;
	letter-spacing: 5px;
	color: #003366;
	position: absolute;
	top:40%;
	left: 50%;
	transform: translate(-50%, -50%);
}

/* 点滅 */

.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

/*トップイメージ*/

.topphoto {
	width: 100%;
	display: flex;
	justify-content: center;
	margin:0 auto;
}
.topphoto2 {
	width: 80%;
	height: 120px;
	display: flex;
	justify-content: center;
	margin:0 auto;
}
.topnemu1 {
	width: 18%;
	position: absolute;
	top:32%;
	left: 74%;
}
.topnemu2 {
	width: 18%;
	position: absolute;
	top: 32%;
	left: 52%;
}
.topnemu3 {
	width: 18%;
	position: absolute;
	top: 32%;
	left: 30%;
}
.topnemu4 {
	width: 18%;
	position: absolute;
	top: 32%;
	left: 8%;
}
.hov img:hover {
	opacity: 0.7;
}

/***second***/

.second-wrapper {
	width: 1140px;
	margin:0 auto;
	margin-top: 20px;
}

/***left***/

.section {
	width: 100%;
	margin-right: auto;
}
.section h1 {
	font-size: min(4.5vw, 32px);
	font-weight: normal;
	letter-spacing: 5px;
	text-align: center;
	color: #cc6600;
	padding:10px 0 20px 0;
}
.sectop {
	width: 100%;
	margin-right: auto;
	text-align: center;/*
	background-color: #ffffee;*/
	border: solid 2px #cc9900;
    border-radius: 8px;
	padding:20px 20px 20px 20px;
	margin:0 auto;
}
.sectop p {
	/*font-size: 18px;*/
	font-size: min(3.5vw, 17px);
	line-height: 30px;
	color: #003300;
}
.section-1 {
	width: 100%;
	margin-right: auto;
}
.section-1 h1 {
	font-size: min(3.5vw, 32px);
	font-weight: normal;
	letter-spacing: 5px;
	text-align: center;
	color: #003366;
	padding:10px 0 20px 0;
	border-bottom: solid 1px #888888;
}

.book {
	width: 100%;
	overflow: auto;
	display: flex;
	border-bottom: solid 1px #888888;
	padding: 10px 0 10px 0;
}
.bookleft {
	width: 25%;
	float: left;
	padding: 2% 2% 2% 2%;
	margin: auto;
}
.bookleft img {
	width: 90%;
	padding: 5% 0 5% 0;
}/*
.bookleft img:hover {
	opacity: 0.7;
}*/
.bookright {
	width: 75%;
	float: right;
	padding: 2% 2% 2% 2%;
	margin: auto;
}
.bookright h2 {
	font-size: 28px;
	font-weight: bolder;
	letter-spacing: 5px;
	color: #006699;
	padding: 5px 0 5px 0;
}
.bookright h3 {
	font-size: 20px;
	font-weight: bolder;
	padding: 5px 0 10px 28px;
}
.bookright p {
	margin: 15px 0;
}

/***column***/

.column {
	width: 90%;
	margin:0 auto;
	margin-bottom: 15px;

}
.column h1 {
	font-size: min(4.5vw, 24px);
	font-weight: bolder;
	color: #006699;
	border-bottom: solid 1px;
	padding:30px 0 5px 0;
	margin: 0 0 20px 0;
}
.column h2 {
	font-size: 18px;
	font-weight: bolder;
	text-align: left;
	color: #009999;
	padding: 10px 0 10px 0;
}
.column h3 {
	font-size: 16px;
	font-weight: bolder;
	color: #663366;
	padding: 5px 0 0 0;
}
.column p {
	margin: 15px 0;
}
.column img {
	width: 40%;
	float: right;
	padding: 2% 0 2% 3%;
}

/*会社情報*/

.kaisha {
	width: 70%;
	margin:0 auto;
	margin-bottom: 15px;
}
.gaiyo {
	font-size: 14px;
	width: 100%;
	margin:0 auto;
	margin-bottom: 15px;
	background: #fff;
}
.gaiyo h2 {
	font-size: 17px;
	font-weight: bolder;
	border-bottom: 1px solid #CCC;
	padding: 60px 0 20px 0;
}
.gaiyo h3 {
	font-size: 16px;
	font-weight: bolder;
	/*border-bottom: 1px solid #CCC;*/
	padding: 60px 0 5px 0;
}
.gaiyo img {
	width: 100%;
	padding: 5% 0 5% 0;
}

.ta1 {
	width: 100%;
	margin-bottom: 15px;
	background: #fff;
}
.ta1, .ta1 td, .ta1 th{
	border-bottom: 1px solid #CCC;
	line-height: 2;
}
.ta1 td{
	padding: 15px 15px 15px 30px;
}

.ta1 th{
	font-weight: normal;
	width: 100px;
	padding: 15px 0 15px 30px;
	text-align: left;
	background: #fff;
}
.kaisha img {
	width: 80%;
	margin:0 auto;
	display: flex;
	padding: 30px 0 50px 0;
}
.gaiyo a:hover{
	font-weight: 700;
	color: #6633ff;
}

/*お問い合わせ*/

.form {
	width: 100%;
	padding-top: 50px;
}
.contact-form {
	border: 1px solid #ccc;
	padding: 5%; 
	font-size: 14px;
}

.contact-form .item {
	width: 100%;
	display: block;
	overflow: hidden;
	margin-bottom: 5%;
}
.contact-form .item.no-label {
  padding: 3% 0 0 8%;
}
.contact-form .item .label {
  float: left;
  padding: 2% 0% 5% 0%;
}
.contact-form .item input[type=text],
.contact-form .item input[type=email],
.contact-form .item textarea {
  display: block;
  margin-left: 8%;
  width: 70%;
  padding: 2%;
  border: 1px solid #ccc;
  box-sizing: border-box;
  font-size: 13px;
}
.contact-form .item ::placeholder {
  color: #ccc;
}
.contact-form .item textarea {
  outline: none;
  border: 1px solid #ccc;
  resize: vertical;
}
input[type=submit] {
  border: none;
  outline: none;
  display: block;
  line-height: 30px;
  width: 160px;
  text-align: center;
  font-size: 13px;
  color: #fff;
  background-color: #336699;
  border-bottom: 4px solid #003366;
  cursor:pointer;

  box-sizing: content-box;
  transition:0.3s ease all
}
input[type=submit]:hover{
  border-bottom-width:0;
  transform:translateY(4px)
}

.kaisha h2 {
	font-size: 20px;
	margin-bottom: 10px;
}
.contact-form p {
  margin-bottom: 30px;
}
span {
  color: red;
}

/*footer*/

footer {
	background-color: #778899;
	padding:50px 0 0 0;
	margin:50px 0 0 0;
}

.footer {
	font-size: 15px;
	color: #FFF;
	text-align: center;
	line-height: 120%;
	margin: 0 0 50px 0;
}
.footer-navlist {
	display: flex;
	justify-content:center;
	list-style-type: none;
}
.footer-navlist li {
	font-size: 16px;
	padding: 10px 30px 0 30px;
	font-color: #FFF;
}
.footer-navlist li:hover {
	color: #ffcc66;
}
.copyright {
	font-size: 15px;
	color: #FFF;
	display: flex;
	justify-content:center;
	background: #808080;
	padding: 30px 0 30px 0;
}

/*トップへ戻るボタン*/

#page-top {
    display: block;
    font-weight: bold;
    padding: .7em;
    text-align: center;
    background: #fff;
    color: #666;
    transition: .3s;
}
#page-top:hover {
    background: #666; /*背景色*/
    color: #fff; /*文字色*/
}
/***トップへ戻るボタンここまで***/

/***追従するトップへ戻るボタン***/
#page-top {
    position: fixed;
    right: 10px;
    bottom: 10px;
    font-size: 1.2rem;
    line-height: 1.2rem;
    background: #fff;
    color: #737373;
    padding: 10px;
    border: solid 1px;
    border-radius: 50%;
    box-shadow: 0 2px 10px -6px rgba(0,0,0,.5), 0 3px 10px -4px rgba(0,0,0,.2);
}