body{
  margin:0;
  background:#ccc;
  font-size:0;
}

.wrapper{
  background:white;
  width:1024px;
  margin:0 auto;
  overflow:hidden;
}

#iframe-head {
  border:none;
  margin: auto;
  display: block;
}

#iframe-foot {
  border:none;
  margin: auto;
  display: block;
}

#header{
  background:#333F50;
  height:55px;
  overflow:hidden;
}

#main-logo{
  float:left;
  width:210px;
  margin:0;
}

#icon{
  display:flex;
  float:right;
  margin:8px 10px 0 0;
}

#icon img:hover{
  opacity:0.5;
}

#header-mypage:hover{
  opacity:0.8;
}

#header-mail:hover{
  opacity:0.8;
}

#header-mail{
  width:140px;
  margin:7px 3px 0 0;
  float:right;
}

#header-mypage{
  width:180px;
  margin:7px 10px 0 0;
  float:right;
}

.menu{
  background:#002060;
  height:28px;
  border-top-color:#4472C4;
  border-top-width:3px;
  border-top-style:solid;
  border-bottom-color:#4472C4;
  border-bottom-width:4px;
  border-bottom-style:solid;
}

ul{
  list-style:none;
}

#menu-contents{
  display:flex;
}

#menu-contents li{
  flex:auto;
  padding:5px 0 0 0;
}

#menu-contents a{
  font-size:16px;
  color:white;
  text-decoration:none;
}

.first-modal-wrapper{
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 10;
  display: none;
  text-align: center;
}

.scene-wrapper{
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 10;
  display: none;
  text-align: center;
}

.modal {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
  padding: 50px 30px 15px 30px;
  border-radius: 10px;
  width: 725px;
  height: auto;
  text-align: center;
  z-index: 10;
}

.fa-times {
  position: absolute;
  top: 4px;
  right: 12px;
  color: rgba(128, 128, 128, 0.46);
  z-index:8;
  cursor: pointer;
}

.fa {
  margin-right:3px;
  margin-top:1px;
  font-size:40px;
  font-weight:bold;
}

#page-1, #page-2, #page-3, #page-4, #page-5, #page-6, #scene{
  width: 100%;
}

#page-1 img, #page-2 img, #page-3 img, #page-4 img, #page-5 img, #page-6 img{
  width: 700px;
}

#page-1 p, #page-2 p, #page-3 p, #page-4 p, #page-5 p, #page-6 p, #scene{
  color: #5f5d60;
  letter-spacing: 1px;
  margin-bottom: 0px;
  margin-left: 35px;
  font-size:19px;
  font-weight:bold;
  line-height:19px;
  text-align:left;
}

#scene img{
  position:absolute;
  width:530px;
  margin:-35px 0 0 160px;
}

#scene p{
  color: #5f5d60;
  font-size:22px;
  font-weight:bold;
}

.scene-flex{
  display:flex;
  padding:10px 0 20px 40px;
}

.scene-flex li{
  margin:0 0 8px 20px;
}

.scene-flex a{
  text-decoration:none;
}

.scene-right{
  margin:0 0 0 100px;
}

.small{
  font-size:16px;
}

.small-12{
  font-size:13px;
}

.big-27{
  font-size:27px;
}

.submit-btn a{
  display: inline-block;
  padding: 10px 50px;
  background-color: #008080;
  border: none;
  border-radius: 3px;
  color: white;
  margin: 10px auto;
  cursor: pointer;
  font-size:20px;
  font-weight:bold;
  text-decoration:none;
}

.submit-btn2{
  text-align:center;
}

.submit-btn2 a{
  display: inline-block;
  padding: 10px 50px;
  background-color: #008080;
  border: none;
  border-radius: 3px;
  color: white;
  cursor: pointer;
  font-size:20px;
  font-weight:bold;
  text-decoration:none;
}

.top-wrapper{
  background: -moz-linear-gradient(to bottom,white,#6bbaf2 50%,white); 
  background: -webkit-linear-gradient(to bottom,white,#6bbaf2 50%,white); 
  background: linear-gradient(to bottom,white,#6bbaf2 50%,white); 
  height:570px;
}

.container{
  width: 1024px;
  padding: 0 40px;
  margin: 0 auto;
}

#main-title h1{
  font-size:46px;
  line-height:45px;
  color:#483D8B;
  text-shadow:
      3px 3px 3px white, -3px -3px 3px white,
      -3px 3px 3px white,  3px -3px 3px white;
}

#main-title a{
  font-size:43px;
  font-weight:bold;
  color:white;
  text-decoration:none;
  border:solid 6px red;
  border-radius:12px;
  position:absolute;
  line-height:43px;
  margin:-148px 0 0 450px;
}

#main-title img{
  position:absolute;
  width:133px;
  margin:-140px 0 0 465px;
  z-index:3;
}

.btn-sp{
  padding:30px 15px 30px 140px;
  background:#993333;
  color:white;
  display:inline-block;
  opacity:0.8;
  border-radius:4px;
}

.small-cap{
  font-size:33px;
  font-weight:bold;
  line-height:33px;
}

#f-image img{
  width:183px;
  float:left;
}

.number{
  display:flex;
}

.number h2{
  margin:35px 50px 0px 50px;
}

.number p{
  font-family:bookman old style;
  color:#ff367f;
  margin:10px 0 10px 0px;
}

.pattern{
  display:flex;
}

.pattern h2{
  margin:15px 50px 0px 60px;
}

.pattern h3{
  margin:15px 0px 0px 220px;
}

.pattern p{
  position:absolute;
  font-family:bookman old style;
  color:#c71585;
  margin:-7px 0 20px 340px;
}

#description h2{
  font-size:40px;
  color:black;
}

#description h3{
  font-size:40px;
  color:black;
}

#description p{
  font-size:70px;
  font-weight:bold;
  display:inline-block;
}

#description a{
  font-size:35px;
  color:white;
  text-decoration:none;
  border:solid 6px #DBFF71;
  border-radius:12px;
  display:inline-block;
}

.btn{
  padding:15px 97px;
  margin:30px 0px 3px 110px;
  background:navy;
  color:white;
  display:inline-block;
  opacity:0.8;
  border-radius:4px;
}

.btn2{
  padding:0px 79px;
  margin:0px 0px 15px 110px;
  background:#FF4F02;
  color:white;
  display:inline-block;
  opacity:0.8;
  border-radius:4px;
}

.btn:hover, .btn2:hover, .btn3:hover{
  opacity:1;
}

.bord h2 {
  font-size:35px;
  font-weight:bold;
  color:#ff7f50;
  display: inline-block;
  margin:50px 0 20px -85px;
}

.function-wrapper{
  background:white; 
  height:135px;
}

#function{
  text-align:center;
}

#function img{
  width:90%;
  margin:auto;
}

.bord{
  text-align:center;
}

.line-gray{
  font-size:35px;
  font-weight:bold;
  color:gray;
}

.line-darkgreen{
  font-size:35px;
  font-weight:bold;
  color:darkgreen;
}

.line-lightgreen{
  font-size:35px;
  font-weight:bold;
  color:#b3c100;
}

.line-orange{
  font-size:35px;
  font-weight:bold;
  color:#c75e18;
}

.line-blue{
  font-size:35px;
  font-weight:bold;
  color:#23b7e0;
}

#news-wrapper{
  background: -moz-linear-gradient(to bottom,white,#b7b8b6 50%,white); 
  background: -webkit-linear-gradient(to bottom,white,#b7b8b6 50%,white); 
  background: linear-gradient(to bottom,white,#b7b8b6 50%,white); 
  height:710px;
  overflow:hidden;
}

.news-topic{
  display:flex;
  margin-bottom:40px;
}

.topic img{
  width:200px;
  border:2px #b7b8b6 solid;
  margin:0 15px;
  opacity:0.8;
}

.topic img:hover{
  opacity:1.0;
}

.topic p{
  color:black;
  font-size:20px;
  font-weight:bold;
  margin:0 15px;
}

.small-13{
  font-size:13px;
  font-weight:bold;
  line-height:14px;
}

.more-news a{
  font-size:25px;
  font-weight:bold;
  float:right;
  margin:-32px 70px 0 650px;
  position:absolute;
}

.border2-img{
  overflow:hidden;
}

.border2-img img{
  padding:20px 40px;
  width:130px;
  float:left;
  position: relative;
  left: 15%;
}

.border2-img h2{
  color:#ff7f50;
  font-size:35px;
  float:left;
  position: relative;
  left:15%;
}

#reason-wrapper{
  background: -moz-linear-gradient(to bottom,white,#34675c 50%,white); 
  background: -webkit-linear-gradient(to bottom,white,#34675c 50%,white); 
  background: linear-gradient(to bottom,white,#34675c 50%,white); 
  height:260px;
  overflow:hidden;
}

.reason{
  float:left;
}

.three-topic img{
  width:290px;
  border:2px #34675c solid;
  margin:10px 5px 0 5px;
}

.reason a{
  color:black;
  font-size:19px;
  font-weight:bold;
  text-decoration:none;
  display:block;
  margin:0 5px;
  text-align:right;
}

.reason-btn a{
  font-size:35px;
  color:white;
  text-decoration:none;
}

.reason img:hover{
  opacity:0.7;
}

.re-btn{
  padding:8px 15px;
  margin:10 310px;
  background:navy;
  color:white;
  display:inline-block;
  opacity:0.8;
  border-radius:4px;
}

.re-btn:hover{
  opacity:1;
}

#service-wrapper{
  background: -moz-linear-gradient(to bottom,white,#b3c100 50%,white); 
  background: -webkit-linear-gradient(to bottom,white,#b3c100 50%,white); 
  background: linear-gradient(to bottom,white,#b3c100 50%,white); 
  height:570px;
  overflow:hidden;
}

.service-topic-upper{
  overflow:hidden;
}

.in-service-category{
  background:linear-gradient(white,#e3f1db);
  height:240px;
  width:290px;
  border:2px #b3c100 solid;
}

.in-service-category p{
  color:black;
  font-size:33px;
  font-weight:bold;
  margin:0px 0 0px 10px;
}

.full-visual img{
  width:268px;
  margin:0 0 0 10px;
}

.full-visual img:hover{
  opacity:0.7;
}

.silhouette img{
  width:85px;
  height:85px;
  border:2px #b3c100 solid;
  margin:0 2px 0 5px;
}

.silhouette img:hover{
  opacity:0.5;
}

.three-silhouette{
  overflow:hidden;
}

.silhouette{
  float:left;
}

.silhouette a{
  display:block;
  text-align:center;

}

.service-category a{
  color:black;
  font-size:18px;
  font-weight:bold;
  text-decoration:none;
}

.service-category{
  float:left;
  margin:0 10px;
}

#space{
  height:20px;
}

#effect-wrapper{
  background: -moz-linear-gradient(to bottom,white,#c75e18 50%,white); 
  background: -webkit-linear-gradient(to bottom,white,#c75e18 50%,white); 
  background: linear-gradient(to bottom,white,#c75e18 50%,white); 
  height:210px;
  overflow:hidden;
}

.effect{
  float:left;
}

.effect img{
  width:290px;
  border:2px #c75e18 solid;
  margin:0 10px;
}

.effect img:hover{
  opacity:0.7;
}

#use-wrapper{
  background: -moz-linear-gradient(to bottom,white,#23b7e0 50%,white); 
  background: -webkit-linear-gradient(to bottom,white,#23b7e0 50%,white); 
  background: linear-gradient(to bottom,white,#23b7e0 50%,white); 
  height:350px;
  overflow:hidden;
}

.three-topic{
  overflow:hidden;
}

.use{
  float:left;
}

.use img{
  width:290px;
  border:2px #23b7e0 solid;
  margin:0 10px;
}

.use img:hover{
  opacity:0.7;
}

.box{
  height:120px;
  padding:0 30px;
  margin:25px 50px;
  font-size:18px;
  font-weight:bold;
  color:black;
  background:white;
  border:double 10px blue;
  border-radius:10px;
}

.box-contents{
  display:flex;
}

.data a{
  margin:15px 0 0 -20px;
  font-size:30px;
  font-weight:bold;
  color:purple;
  text-decoration:none;
  position:absolute;
}

.data p{
  margin:65px 0 0 5px;
  font-size:20px;
  position:absolute;
}

.data2{
  margin:0px 0 0 500px;
}

.box-img1{
  width:132px;
  border:2px black solid; 
  border-radius:5px;
  display:inline-block;
  margin:5px 10px 5px 490px;
  float:right;
}

.box-img2{
  width:65px;
  height:65px;
  display:inline-block;
  margin:28px 20px 30px 25px;
  float:right;
}

.data a:hover{
  opacity:0.7;
}

.box-img1:hover{
  opacity:0.7;
}

.box-img2:hover{
  opacity:0.7;
}

#footer{
  height:350px;
  background:#333F50;
}

#footer a{
  font-size:20px;
  color:white;
  text-decoration:none;
  margin:20px 170px;
  display:inline-block;
}

#footer img{
  width:400px;
  margin:-40px 0 0 110px;
  position:absolute;
}

.footer-p p{
  font-size:15px;
  color:white;
  margin:110px 0 0 410px;
  position:absolute;
}
