@charset "utf-8";

.main  {
    max-width: 1000px;/*最大幅*/
	margin: 0 auto;
}

/*margin*/
.mt10 {
	margin-top: 10px;
}

.mt20 {
	margin-top: 20px;
}
.mt50{
	margin-top: 50px;
}

.mt100{
	margin-top: 100px;
}

.mb200{
	margin-bottom: 200px;
}



/*トップ*/

.menu a {
 color: #fff;
 text-decoration: none;
}

a img:hover {
  opacity: 0.8;
}
.section_white{
	margin: 50px 0px;
}
.wrap_topimg{
	position: relative;
	width: 100%;
}
.container{
	width: 1000px;
}
.z_1{
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	z-index: 1;
	height: 350px;
}
.top_logo {
	padding-top: 30px;
	width: 250px;
}
.top_message {
	padding-top: 100px;
	width: 600px;
	margin: 0 auto;
}

.roundbutton {
	margin: 0 auto;
    width:200px;
    font-size:18px;
    font-weight:bold;
    text-decoration:none;
    display:block;
    text-align:center;
    padding:5px 0px;
    color:#07399E;
    background-color:#fff;
    border-radius:20px;
}
.roundbutton:hover {
    background: #5FA7FC;
	opacity:0.7;
}
.f12{
	font-size: 12px;
}

.center{
	text-align: center;
}

.boxcenter{
  display: flex;
  justify-content: center;
  align-items: center;;
}

.pcmenu {
	font-size: 14px;
	margin-top: 100px;
	height: 55px;
	text-align: center;
	padding: 6px 60px 4px;
	background: #fff;
	color: #000;
	opacity:0.7;
}

.pcmenu:hover {
	background: #5FA7FC;
	color: #000;
	opacity:0.7;
}

.noline {
  text-decoration:none;
}

.flexmenu {
	margin-left: 300px;
	display: flex;
}
.container{
	margin: 0 auto;
	width: 1200px;
}


.flex {
	display: flex;
}

.z_2{
	position: absolute;
	top: 50%;
	left: 50%;
	width: 500px;
	z-index: 2;
}

.topics {
	width: 1000px;
	margin: 0 auto;
	padding-top: 50px;
	
}

.catalogbk{
 margin-top: 50px;
 background: url("../img/top_bkdownload.png");
  background-size: cover;
  padding: 50px 0;
}

.w400text {
	width: 400px;
	margin: 0 auto;
	text-align: center;
	padding-bottom: 30px;
}


.top_button {
	width: 300px;
}

.flex_topbutton {
	width: 650px;
	display: flex;
	justify-content: space-around;
	margin: 0 auto;
}

.contactbk{
 margin-top: 50px;
 background: url("../img/bk_topcontact.png");
  background-size: cover;
  padding: 70px 0;
}

.wrapper {
}

.footer {
	margin-top: 30px;
	padding: 5px 0px;
	height: 400px;
	font-size: 13px;
	background: #E7E7E7;

}

.footer a {
	text-decoration: none;
	color: #1B3D8C;
}

.h2black {
  font-size: 25px;
  position: relative;
  display: inline-block;
  margin-bottom: 1em;
}

.h2black span {
  font-size: 12px;
  display: block;
}

.h2black:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 60px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #000;
  border-radius: 2px;
}

 .h2white {
  font-size: 25px;
  position: relative;
  display: inline-block;
  margin-bottom: 1em;
  color: #fff;
}

 .h2white span {
  font-size: 12px;
  display: block;
}

 .h2white:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 60px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
  border-radius: 2px;
}

.h4black {
  font-size: 25px;
  position: relative;
  display: inline-block;
}

.h4black span {
  font-size: 12px;
  display: block;
}

.h4black:before {
  content: '';
  position: absolute;
  bottom: -5px;
  display: inline-block;
  width: 80px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #000;
  border-radius: 2px;
}

.title_wp{
	position: fixed;
}

.title_img{
	background: url("../img/title_img.png");
	height: 300px;
	background-position: right 35% bottom 75%;
}

.titleh2 {
	margin-top: 50px;
	font-size: 30px;
	text-align: center;
	color: #fff;
}

.titleh2f12 {
display: block;
  margin-bottom: .2em;
  color: #fff;
  font-size: 16px;
	font-weight: normal;
}

.titleh3 {
	text-align: left;
	padding: 50px 0px 5px;
	border-bottom: #6572a5 1px solid;
}

.titleh3_privacy {
	text-align: left;
	padding: 30px 0px 5px;
	margin-bottom: 10px;
	border-bottom: #6572a5 1px solid;
}


.fa-file-pdf {
	font-size: 30px;
	color: #6572a5;
}
/*ページtop*/
#page_top{
  margin-right: 50px;
  width: 90px;
  height: 90px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #334488;
  opacity: 0.8;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -40px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'TOP';
  font-size: 13px;
  color: #fff;
  position: absolute;
  top: 45px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/*オーダーページ*/
/*ボックス全体*/
.accbox {
    margin: 2em 0 0;
    padding: 0;
    max-width: 100%;/*最大幅*/

}

/*ラベル*/
.accbox label {
    display: block;
    margin: 1.5px 0;
    padding : 13px 12px;
    color: #1876BB;
    font-weight: bold;
    background: #ccc;
    cursor :pointer;
    transition: all 0.5s;
}

/*アイコンを表示*/
.accbox label:before {
    content: '\f054';
    font-family: 'FontAwesome';
    padding-right: 8px;
}

/*ラベルホバー時*/
.accbox label:hover {
    background :#ffe9a9;
}

/*チェックは隠す*/
input {
    display: none;
}
/*テキストボックスは見せる*/
.inputtext {
	display: inline-block;
	border: solid 1px #AFAFAF;
	background: #E9E9E9;
	margin: 5px;
}

/*中身を非表示にしておく*/
.accbox .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.cssacc:checked + label + .accshow {
    height: auto;
    padding: 5px;
    opacity: 1;
}

.accbox .accshow p {
    margin: 15px 10px
}

/*アイコンを入れ替える*/
.cssacc:checked + label:before {
    content: '\f078';
}

/*table*/

.ordertable table{
  background: #eee;
  border-collapse: collapse;
  border-spacing: 0;
  width:100%;
  table-layout: fixed;
}

.ordertable td{
　width: 100%;
  border-bottom: solid 1px #fff;
  background: #eee;

}
.ordertable th{
　width: 100%;
  border-bottom: solid 1px #fff;
  background: #eee;

}


.formtable{
  background: #fff;
  border-spacing: 0;
	width: 100%;
}

.formtable td {
  padding: 10px;
  border-bottom: solid 1px #807E7E;
  background: #fff;

}
.formtable th{
  text-align: left;
　font-weight: normal !important;
  background: #fff;
  border-bottom: solid 1px #807E7E;

}

.w400{
	width: 400px;
}
.w200{
	width: 200px;
}
.w150{
	width: 150px;
}
.w100{
	width: 100px;
}
.w60{
	width: 60px;
}
.redlabel{
	background: #E00C0F;
	color: #fff;
	padding: 2px 10px;
	margin-right: 10px;
	font-weight: normal;
}
.graylabel{
	background: #666;
	color: #fff;
	padding: 2px 10px;
	margin-right: 10px;
	font-weight: normal;
}

.form_w150 {
  width: 150px;
	display: inline-block;
}

.form_check_container{
position: relative;
}

.form_check{
width: 1000px;
font-size: 12px;
text-align: center;
margin-top: 20px;
background: #E9E9E9;
padding: 15px 20px 100px;
}

.form_check02{
top: 90px;
left:400px;
font-size: 12px;
text-align: center;
background: #D4D4D4;
padding: 15px 20px;
position: absolute;
}

/*ダウンロードページ*/

.download {
	width: 1000px;
	display: flex;
	flex-wrap: wrap;
	
}
.downloadflex {
	display: flex;
	justify-content: space-between;
}
.download_container{
	margin: 15px;
	padding: 20px;
	width: 300px;
	height: 300px;
	text-align: center;
	background: #efefef;
	font-size: 12px;
	color: #334488;
	font-weight: bold;
}

/*仕様のテーブルスライド */
.table-wrapper {/*table全体のラッパー。スクロールを表示する*/
  max-width: 100%;
  width:100%;
  box-sizing: border-box;
  line-height:1.6em;

  -webkit-text-size-adjust: 100%;
}

.table-wrapper table {
  table-layout: fixed;
}

 .table-wrapper table {
  width:100%;
  position: relative;
  border-collapse: collapse;
  
  word-break: break-all;
}
 
.table-wrapper th,.table-wrapper td {
  padding: 20px;
  font-size:14px;
  text-align:left;
}

.table-wrapper th{
width: 200px;
}

 
.table-wrapper th:first-of-type {
  left: 0;
  z-index: 3;
}


/*仕様のテーブルスライドここまで */

.sp {
	display: none;
	}
.total{
	margin: 1.5px 0;
    padding : 13px 12px;
    color: #1876BB;
    font-weight: bold;
	background: #C2D5E9;
}

.submit_button {
	background: url("../img/submit.svg");
	width: 432px;
	height: 90px;
	
}

@media screen and (max-width: 900px) {

img {
	max-width: 100%;
	height: auto;
	}

header,div,article,section,footer{
	width: 100%;
	box-sizing: border-box;
	}
	

/*header,div,article,section,footer{
	width: 100%;
	display: flex;
	padding: 0;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	}*/
	
.spmain {
		padding: 0px 10px;
	}
	
.container,.flexmenu,.wrap_topimg,.nda_logo.svg,.top_message,.topics,.flex_topbutton,.w400text,.form_check {
 width: 100%;
	}
	
	
.flex_topbutton {
	flex-direction: column;
	justify-content: center;
	width: 300px;
}
	
.form_check02{
  top: 50;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 80%;
  height: 3.2rem;
}
	
.top_logo {
	padding-top: 30px;
	width: 200px;
}
.title_img {
	height: 100%;
	padding: 0px 0px;
	}

.titleh2 {
	padding: 10px 0px;
	margin-top: 60px;
	font-size: 25px;
	text-align: center;
	color: #fff;
}

.titleh2f12 {
display: block;
  margin-bottom: .2em;
  color: #fff;
  font-size: 16px;
	font-weight: normal;
}

	
.sp {
	display: block;
	}
	
.flexmenu {
	display: none;
	}
	
	
/*仕様のテーブルスライド */
 .table-wrapper table {
    width:100%;
    position: relative;
    border-collapse: collapse;

  }
  
.table-wrapper th {
    position: sticky;
    top: -1px;
    z-index: 2;
    width:6em;
}


.table-wrapper tbody tr th:first-of-type {/*最初の要素を固定する*/
  position: sticky;
  left: -1px;
  text-align: left;
}

.table-wrapper {/*table全体のラッパー。スクロールを表示する*/
  max-width: 100%;
  width:100%;
  overflow: scroll;
}

.table-wrapper td , .table-wrapper th {
  white-space: wrap;
  padding: 20px;
  text-align: center;
  text-align:left;
  font-size:12px;
}

.scroll-hint.is-right-scrollable,.scroll-hint.is-left-scrollable {
  background:none !important;	
}
	
	
/*お客様情報のテーブル */
	
  .last td:last-child {
    width: 100%;
  }
  .formtable {
   margin-top: 20px;
	  text-align: left;
    width: 100%;
  }
  .formtable th,
  .formtable td {
	border: 1px solid #666;
    display: block;
    width: 100%;
  }
.formtable input {
	width: 100%;
	}
.mt50{
	margin-top: 20px;
}

.mt100{
	margin-top: 30px;
}
.download {
	width: 100%;
	flex-wrap: column;
	justify-content: center;
}
	
}
