﻿@charset "UTF-8";

/* ===== 共通 ===== */

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
body{
	margin: 0;
	padding: 0;
	color: #333;
	background-attachment: fixed;
	background-size: cover;
	font-family: "Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","Osaka","ＭＳ Ｐゴシック", "MS P Gothic",Verdana,Arial, Helvetica, sans-serif;
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
  font-size: 1.1em;
}
h1,h2,h3,h4,p,div,ul{
	margin: 0;
	padding: 0;
}
.clearfix{
	clear:both;
}
a {
	color: #222;
	position: relative;
}
br.sp{
	display:none;
}
.ColorRed{
	color:#d65a1d;
}



@media screen and (max-width: 736px) {
br.sp{
	display:block;
}
}

@media screen and (max-width: 736px) {
article{

}
}


#page{
		background: url("../img/bg.jpg") no-repeat;
	background-color: #d5f7fd;
background-size:cover auto;
}



.att{
	font-size:85%;
	font-weight:light;
	text-align:left;
	list-style:none;
	margin-left:5%;
	opacity:0.7;
}
ul.att_left50{
	font-size:90%;
	text-align:left;
	list-style:none;
	margin-left:50%;
}
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
@media screen and (max-width: 736px) {
p{
	margin:5%;
}
ul.att{
	width:100%;
	margin-left:0;
}
ul.att_left50{
	margin-left:0;
}

}
div.LeftBox{
	float:left;
	width:46%;
	margin-left:3%;
}
div.RightBox{
	float:right;
	width:46%;
	margin-right:3%;
}
div.CenterBox{
	width:100%;
	margin:auto 2%;
}
div.LeftBox img,div.RightBox img{
	width:100%;
}
@media screen and (max-width: 736px) {
div.LeftBox{
	clear:both;
	display:block;
	width:100%;
	margin:0;
}
div.RightBox{
	clear:both;
	display:block;
	width:100%;
	margin:0;
}
div.LeftBox img,div.RightBox img{
	width:100%;
}
}
div.contact{
	width:95%;
	margin:5% auto 0;
	border-top:3px double #CCC;
	padding:2%;
	clear:both;
	display:block;
}
@media screen and (max-width: 736px) {
div.contact{
	width:100%;
	padding:1%;
}
ul.contact {
	padding:1%;
	margin:0;
}
}
div.contact span{
	font-size:130%;
	font-weight:bold;
}
ul.contact{
	list-style:none;
}
ul li.mail{
	background: url('../images/ico_mail.png') no-repeat 0px 13px;
	height:30px;
	padding:15px 10px 10px 40px;
}
ul li.tell{
	background: url('../images/ico_tell.png') no-repeat 0px 28px;
	height:45px;
	padding:15px 10px 10px 40px;
}

	/* リンクボタン 小*/
.button_s {
	display: inline-block;
	width: 200px;
	height: 45px;
	text-align: center;
	text-decoration: none;
	line-height: 43px;
	outline: none;
}
.button_s::before,
.button_s::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button_s,
.button_s::before,
.button_s::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button_s {
	margin:3% auto;
	/*display:block;*/
	position: relative;
	z-index: 2;
	background-color: rgba(255,255,255,0.8);
	border: 1px solid #b2961e;
	color: #b2961e;
	line-height: 43px;
	overflow: hidden;
}
@media screen and (max-width: 736px) {
.button_s {
	margin:1% auto;
}
}
.button_s:hover {
	color: #fff;
}
.button_s::after {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transform: scale(.5);
	transform: scale(.5);
}
.button_s:hover::after {
	background: #b2961e;
	-webkit-transform: scale(1);
	transform: scale(1);
}
@media screen and (max-width: 736px) {
.button_s {
	width: 95%;
	height:auto;
}
}
	/* サイト内リンクボタン */
ul.pagelink{
	width:100%;
	margin:5% auto;
	display: flex;
	justify-content: center;
	list-style:none;
}
@media screen and (max-width: 736px) {
ul.pagelink{
	display:none;
}
}
ul.pagelink li{
	margin:5px;
}
#pagelink-b{
	position: relative;
	display: inline-block;
	padding: 0 5px;
	margin:2%;
	width: auto;
	min-width: 200px;
	height: 50px;
	color: #F6F6F6;
	line-height: 50px;
	text-align: center;
	background: #19283C;
	z-index: 0;
}
#pagelink-b:after{
	content: "";
	position: absolute;
	bottom: -10px; left: 50%;
	margin-left: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #19283C transparent transparent transparent;
}
ul.pagelink li a{
	color:#FFF;
	text-decoration:none;
}
ul.pagelink li:hover{
	opacity:0.7;
}
@media screen and (max-width: 736px) {
div.btn{
	width:100%;
	height:50px;
}
}
.arrow_down{
  position: relative;
  display: inline-block;
  padding-left: 20px;
}
.arrow_down::before{
  content: '';
  width: 30px;
  height: 30px;
  border: 0px;
  border-bottom: solid 2px #b2961e;
  border-right: solid 2px #b2961e;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: 20px;
}
	/* ナビ 上 */
.inner {
    width: 100%;
    margin: 0 auto;
}
.inner:after {
    content: "";
    clear: both;
    display: block;
}
	/* header */
#top-head {
    top: -188px;
    position: absolute;
    width: 100%;
    margin: 0px auto 0;
    padding: 15px 0 15px;
    z-index: 999;
	background: rgba(0,0,0,1);
}
#top-head a,
#top-head {
    color: #ADADAD;
    text-decoration: none;
	margin-top: 188px;
}
#top-head .inner {
    position: relative;
}
#top-head .logo {
    float: left;
	margin:0 5% 0 5%;
}
#top-head .logo img{
}
@media screen and (max-width: 736px) {
#top-head .logo {
	width:110%;
}
#top-head .logo img{
	width:40%;
	text-align: left;
}
}

#top-head_other {
    top: -130px;
    position: absolute;
    width: 100%;
    margin: 150px auto 0;
    padding: 18px 0;
    z-index: 999;
	background: rgba(0,0,0,0.7);
}
#top-head_other a,
#top-head_other {
    color: #fff;
    text-decoration: none;
	margin-top: 180px;
}
#top-head_other .inner {
    position: relative;
}
#top-head_other .logo {
    float: left;
	margin:0 5% 0 2%;
}
#top-head_other .logo img{
	width:35%;
}
@media screen and (max-width: 736px) {
#top-head_other .logo {
	width:110%;
}
#top-head_other .logo img{
	width:45%;
}
}

#global-nav ul {
    list-style: none;
    position: absolute;
    right: 0;
	margin: 0.5%;
}
#global-nav ul li {
    float: left;
}
#global-nav ul li.nav_contact{
	border: 1px solid #f98514;
	border-radius: 5px;
	margin-left: 5px;
}
#global-nav ul li.nav_contact a{
		color: #f98514 !important;
}
#global-nav ul li.nav_contact:hover{
	background: #f98514;
}
#global-nav ul li.nav_contact a:hover{
		color: #fff !important;
}
#global-nav ul li a {
    padding: 0 10px;
	font-size:17px;
}
#global-nav ul li a:hover {
    color:#499CF8;
}
#global-nav ul li.active {
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	background:#dfbc24;
}
@media screen and (max-width: 736px) {
#global-nav ul li.active {
	background:none;
}
}
header li.btn_price{
	background: url('../images/ico_cart.png') no-repeat 10px;
	background-color:#ab0808;
	width:138px;
	height:40px;
	padding-top:10px;
	padding-left:30px;
	margin:-10px 10px 0 15px;
}
@media screen and (max-width: 736px) {
header li.btn_price{
	background:none;
	padding-top:0;
	padding-left: 0;
	margin:0px 10px 10px 0;
}
}
	/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
	background: rgba(0,0,0,0.7);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}
#top-head.fixed .logo {
}
#top-head.fixed #global-nav ul li a {
    color: #ADADAD;
}
 #top-head.fixed #global-nav ul li a:hover {
    color: #499CF8;
}
 	/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #666;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}
@media screen and (min-width: 737px) and (max-width:1260px){
#top-head .logo img{

}
#global-nav ul {
   	font-size:90%;
}
#global-nav ul li a {
    padding: 0 10px;
}
header li.btn_price{
	width:30px;
}
header li.btn_price span{
	display:none;
}
}
@media screen and (max-width: 736px) {
    #top-head,
    .inner {
        width: 100%;
        padding: 0;
    }
    #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
    }
	/* Fixed reset */
    #top-head.fixed {
        padding-top: 0;
        background: transparent;
    }
    #mobile-head {
        width: 100%;
        height: 56px;
        z-index: 999;
        position: relative;
		background: rgba(0,0,0,0.7);
    }
    #top-head.fixed .logo,
    #top-head .logo {
        position: absolute;
        color: #333;
        font-size: 26px;
		padding-top: 15px;
    }
    #global-nav {
        position: absolute;
		 /* 開いてないときは画面外に配置 */
        top: -500px;
        background: #333;
        width: 100%;
        text-align: left;
        padding: 10px 0;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
    #global-nav ul {
        list-style: none;
        position: static;
        right: 0;
        bottom: 0;
    }
    #global-nav ul li {
        float: none;
        position: static;
		padding-bottom: 3%;
		margin: 3%;
    }
    #top-head #global-nav ul li a,
    #top-head.fixed #global-nav ul li a {
        width: 100%;
        /*display: block;*/
        color: #fff;
        padding: 18px 0;
    }
    #nav-toggle {
        display: block;
    }
	/* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
	/* #global-nav スライドアニメーション */
    .open #global-nav {
		/* #global-nav top + #mobile-head height */
        -moz-transform: translateY(556px);
        -webkit-transform: translateY(556px);
        transform: translateY(556px);
    }
}
	/* ナビ 下 */
footer{
	background: url('../images/footer_bc.jpg') center center no-repeat;
	height:0;
	margin: 0;
	background-size: cover;
	padding-bottom: 55%;
	position: relative;
}
footer nav.nav-footer{
	padding:3% 0 0% 2%;
	width: 100%;
}
footer ul li{
	list-style:none;
	margin:2% 0;
}
footer ul li a{
	color:#FFF;
	text-decoration:none;
}
footer ul li a:hover {
    color: #6e4d08;
}
footer div.title{
	background:#242424;
	color:#FFF;
	padding:1.5%;
	text-align:center;
	border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
}
footer div.col_logo{
	float:left;
	width: 20%;
	margin-right: 2%;
}
footer div.col_logo img{
	width:100%;
}
footer div.col_1{
	float:left;
	width: 25%;
	margin-right: 2%;
}
footer div.col_2{
	float:left;
	width: 25%;
	margin-right: 2%;
}
footer div.col_3{
	float:left;
	width: 20%;
	margin-right: 2%;
	text-align:center;
}
footer div.col_3 a{
	color:#FFF;
	text-decoration:none;
}
footer div.col_3 a:hover {
    opacity:0.5;
}
footer div.btn_price{
	background: url('../images/ico_cart.png') no-repeat 20px;
	background-color:#ab0808;
	font-size:90%;
	height:40px;
	padding:20px 10px 10px 30px;
	margin:0;
}
footer div.btn_catalog{
	background: url('../images/ico_pdf.png') no-repeat 10px;
	background-color:#4d4d4d;
	height:30px;
	padding:15px 10px 10px 30px;
	margin-top: -4%;
	font-size:90%;
	letter-spacing:-0.05em;
}
footer div.btn_contact{
	background: url('../images/ico_mail.png') no-repeat 10px;
	background-color:#4d4d4d;
	height:30px;
	padding:15px 10px 10px 30px;
	margin-top: -4%;
	font-size:90%;
}
footer ul.sns{
	margin:5% auto;
	display: flex;
	justify-content: center;
}
footer ul.sns li{
	list-style:none;
	margin-right:5%;
}
footer p.copy{
	font-size:70%;
	opacity:0.8;
	color:#FFF;
	text-align:center;
	margin:1% auto 5%;
	width:100%;
}
footer p.copy a{
	color:#FFF;
}
@media only screen and (max-width: 736px){
footer{
	height:100%;
	width:100%;
	margin:1% auto;
	display:block;
	clear:both;
	padding-bottom: 10%;
}
footer nav.nav-footer{
	clear:both;
	display:block;
	width:90%;
	height:100%;
	margin:1% auto;
}
footer div.col_logo{
	text-align:center;
}
footer div.col_logo img{
	width: 300%;
}
footer div.title{
	width: 95%;
	margin:1% auto;
	display:block;
	clear;both;
}
footer div.col_1{
	width: 100%;
}
footer div.col_2{
	width: 100%;
}
footer div.col_3{
	width: 100%;
}
}
	/* 前のページに戻るリンク */
#page-back{
	display:block;
	clear:both;
	width:50%;
	margin:5% auto;
	padding-top:5%;
	text-align:center;
}
	/* トップに戻るリンク */
#page-top{
	width:50%;
	margin:5% auto 0;
	display:block;
	clear:both;
	text-align:center;
}
#page-top span{
	display:block;
	clear:both;
	text-align:center;
	line-height:400%;
    margin-left: -35px;
}
.arrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #855f11;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
.arrow::before,
.arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	content: "";
	vertical-align: middle;
}
.arrow_up::before{
	width: 20px;
	height: 20px;
	margin: 0;
	padding: 0;
	border-top: 2px solid #855f11;
	border-left: 2px solid #855f11;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* メガソフトグローバルナビ */
#header {
  width: 100%;
  min-height: 40px;
  color: #aaa;
  background: #222;
  position: relative;
  z-index: 10005;
}
#header .inner {
  position: static;
}

#logo {
  float: left;
  width: 125px;
  margin: 0 0 0 5%;
}
@media only screen and (max-width: 767px) {
  #logo {
    width: 100px;
    margin: 10px 0 0 10px;
  }
}
#logo a {
  display: block;
  height: 0;
  padding: 40px 0 0;
  overflow: hidden;
  background: url(../img/megalogo.png) no-repeat left center;
  background-size: 100% auto;
}

#hNav {
  float: right;
}
#hNav ul{
	list-style:none;
}
#hNav > ul {
  border-right: 1px solid #333;
  height: 25px;
}
#hNav > ul > li {
  float: left;
	height: 40px;
}
#hNav > ul > li > a {
  color: #fff;
  display: block;
  text-align: center;
  text-decoration: none;
  padding: 0 20px;
	font-size: 90%;
}
#hNav > ul > li > a:hover {
}
#hNav > ul > li > a:before {
  font-family: FontAwesome;
  font-weight: normal !important;
  margin-right: 10px;
  position: relative;
  top: 1px;
}
@media only screen and (max-width: 767px) {
  #hNav > ul > li > a {
    font-size: 7px;
    font-size: 0.7rem;
    padding: 0;
    width: 60px;
    text-align: center;
    line-height: 20px;
	margin-top: -10px;
  }
  #hNav > ul > li > a:before {
    margin: 3px 0 -3px;
    display: block;
    position: relative;
  }
}
@media screen and (max-width: 320px) {
  #hNav > ul > li > a {
    width: 50px;
  }
}
#hNav > ul > li.product > a:before {
  content: "\f0c9";
  font-size: 17px;
}
#hNav > ul > li.learning a:before {
  content: "\f108";
  font-size: 15px;
}
#hNav > ul > li.onlineshop a:before {
  content: "\f07a";
  font-size: 19px;
}
@media only screen and (max-width: 767px) {
  #hNav > ul > li.onlineshop a span {
    display: none;
  }
}

#product_menu {
  position: absolute;
  left: 0;
  top: 50px;
  width: 100%;
  background: #000;
  color: #fff;
  border-bottom: 1px solid #333;
  line-height: 1;
  box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.7);
  display: none;
}
#product_menu a {
  color: #fff;
  text-decoration: none;
}
#product_menu ul {
  width: 90%;
  overflow: hidden;
	margin:0 auto;
}
#product_menu ul li {
  float: left;
  display: table;
}
#product_menu ul li a {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -ms-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 0.3s;
  -moz-transition-duration: 0.3s;
  -ms-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease;
  -moz-transition-timing-function: ease;
  -ms-transition-timing-function: ease;
  -o-transition-timing-function: ease;
  transition-timing-function: ease;
}
#product_menu ul li a:hover {
  background-color: #111;
}
#product_menu .item {
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
}
@media only screen and (max-width: 767px) {
  #product_menu .item {
    border-bottom-style: none;
  }
}
#product_menu .item > li {
  width: 19%;
  height: 225px;
}
@media only screen and (max-width: 767px) {
  #product_menu .item > li {
    width: 100%;
    height: auto;
  }
}
#product_menu .item a {
  font-size: 100%;
  background-repeat: no-repeat;
  background-position: center 75px;
  background-size: 45px auto;
}
@media only screen and (max-width: 767px) {
  #product_menu .item a {
    padding: 10px 0 10px 40px;
    background-position: 15px center;
    background-size: 30px;
    border-left-style: none;
    border-top: 1px solid #333;
    vertical-align: middle;
    line-height: 20px;
  }
}
#product_menu .item a:hover {
  background-position: center 80px;
}
@media only screen and (max-width: 767px) {
  #product_menu .item a:hover {
    background-position: 17px center;
  }
}
#product_menu .item a.archi10pro {
  background-image: url(images/ico_archi10pro.png);
}
#product_menu .item a.pro9ex {
  background-image: url(images/ico_mdex.png);
}
#product_menu .item a.pro9 {
  background-image: url(images/ico_md.png);
}
#product_menu .item a.neo3 {
  background-image: url(images/ico_id.png);
}
#product_menu .item a.rd2 {
  background-image: url(images/ico_rd.png);
}
#product_menu .item a .lead {
  display: block;
  padding-bottom: 90px;
	font-size:85%;
}
@media only screen and (max-width: 767px) {
  #product_menu .item a .lead {
    padding-bottom: 0;
    margin-bottom: 5px;
  }
}
#product_menu .item a strong {
  display: block;
	font-size:100%;
  font-weight: 400;
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  #product_menu .item a strong {
    vertical-align: text-bottom;
    display: inline-block;
    *display: inline;
    *zoom: 1;
	font-size: 80%;
    margin: 0;
  }
}
#product_menu .search,
#product_menu .pages {
  border-right: 1px solid #333;
}
#product_menu .search > li,
#product_menu .pages > li {
  width: 50%;
  height: 90px;
}
@media only screen and (max-width: 767px) {
  #product_menu .search > li,
  #product_menu .pages > li {
    width: 100%;
    height: auto;
  }
}
#product_menu .search a,
#product_menu .pages a {
	font-size:110%;
}
@media only screen and (max-width: 767px) {
  #product_menu .search a,
  #product_menu .pages a {
    padding: 15px 0;
    border-left-style: none;
  }
}
#product_menu .search a::before,
#product_menu .pages a::before {
  font-family: FontAwesome;
  font-weight: normal !important;
  margin-right: 15px;
}
#product_menu .search a.compare::before,
#product_menu .pages a.compare::before {
  content: "\f0c5";
}
#product_menu .search a.function::before,
#product_menu .pages a.function::before {
  content: "\f002";
}
#product_menu .search a.perspective::before,
#product_menu .pages a.perspective::before {
  content: "\f002";
}
#product_menu .search a.school::before,
#product_menu .pages a.school::before {
  content: "\f19d";
}
#product_menu .search a.guide::before,
#product_menu .pages a.guide::before {
  content: "\f0f6";
}
#product_menu .pages {
  border-top: 1px solid #333;
}
#product_menu .pages > li {
}

/* ---------------------------------------------------- 
	Gナビ
---------------------------------------------------- */
#gNavi {
  width: 100%;
}
#gNavi ul {
  width: 980px;
  margin: 0 auto;
  _zoom: 1;
}
#gNavi ul li {
  float: left;
  word-wrap: normal;
}



/*ぜひ体感してください*/
#experience{
	background: url(../img/experience_back.jpg) center center / cover no-repeat;
	position: relative;
}
.showroom{
	width: 49%;
	float: left;
	padding-left: 1%;
}
.showroom p{
	font-weight: bold;
	font-size: 110%;
	margin-bottom: 0 !important;
}
.tel{
	background: url(../img/tel.png) no-repeat left;
	padding: 5px 0 10px 37px;
	font-size: 220%;
	font-weight: bold;
	color: #0a1464;
	margin: 8px 0;
	display: block;
    cursor: default;
    pointer-events: none;
	text-decoration: none;
}
#experience　.sub {
    width: 1000px;
    margin: 0 auto 40px;
    text-align: center;
    font-size: 100%;
    line-height: 160%;
}

@media screen and (max-width: 768px) {
.showroom{
	width: 96%;
	padding-left: none;
}
}


