
@media print {
#nav , #footer {
	display:none;
}
}
/*----------------------------------------------------
ハンバーガーメニュー
----------------------------------------------------*/
a.trigger {
	position:absolute;
	display:block;
	box-sizing:border-box;
	width:45px;
	height:45px;
	padding: 5px 0;
	text-align:center;
	font-size:0.5em;
	text-decoration:none;
	color:#FFFFFF;
	border:#21292f 1px solid;
	border-radius:3px;
	top:15px;
	right:18px;
}
a .hamburger-menu {
	width:100%;
	padding: 17px 0 0 0;
	color:#FFFFFF;
	text-align:center;
	font-size:0.5em;
	text-decoration:none;
}
a .hamburger-menu ,
a .hamburger-menu span {
	display: inline-block;
	transition: all .4s;
}
a .hamburger-menu {
	position: relative;
	top:9px;
}
a .hamburger-menu span {
	position: absolute;
	left: 9px;
	width: 26px;
	height: 1.5px;
	background-color: #21292f;
	border-radius: 3px;
}
a .hamburger-menu span:nth-of-type(1) {top: 0;}
a .hamburger-menu span:nth-of-type(2) {top: 7px;}
a .hamburger-menu span:nth-of-type(3) {top: 14px;}
/***  アニメーション  ***/
a .hamburger-menu.active span:nth-of-type(1) {
	-moz-transform: translateY(7px) rotate(-45deg);
	-webkit-transform: translateY(7px) rotate(-45deg);
	transform: translateY(7px) rotate(-45deg);
}
a .hamburger-menu.active span:nth-of-type(2) {opacity: 0;}
a .hamburger-menu.active span:nth-of-type(3) {
	-moz-transform: translateY(7px) rotate(-45deg);
	-webkit-transform: translateY(-7px) rotate(45deg);
	transform: translateY(-7px) rotate(45deg);
}

/*----------------------------------------------------
ナビゲーション
----------------------------------------------------*/
/* sub nav */
.sub_nav,
#nav_pc {
	display:none;
}

/* nav  */
#nav {
	width:100%;
}
#nav > .wrap_wide > ul {
	position: absolute;
	width: 100%;
	top: 70px;
	left: 0;
	background-color:#EBEBEB;
	border-top: #21292f solid 2px;
	z-index: 100;
}
#nav > .wrap_wide > ul > .clearfix > li > a {
	display: block;
	box-sizing: border-box;
	width: 50%;
	padding: 1.5em 0;
	float: left;
	color: #4E4E4E;
	text-align: center;
	text-decoration: none;
	line-height: 1.0;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
	border-bottom: #21292f solid 2px;
}
#nav > .wrap_wide > ul > li > a > img {
	width:70%;
}

/* bungaku acc */
/*
#nav > .wrap_wide > ul > li > a.bungaku_menu {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 1.5em 0;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	line-height: 1.0;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
	border-bottom: #21292f solid 2px;
	background-color:#dd697b;
}
*/
#nav > .wrap_wide > ul > li.op_menu_bungaku {
	box-sizing:border-box;
	border-bottom: #21292f solid 2px;
	cursor:pointer;
	background-color:#dd697b;

}
#nav > .wrap_wide > ul > li > span.bungaku_menu {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 1.5em 0;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	line-height: 1.0;
	background-color:#dd697b;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
}

#nav > .wrap_wide > ul > li.op_menu_bungaku > ul {
	box-sizing: border-box;
	width: 100%;
	color: #FFF;
	background-color:#dd697b;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
}

#nav > .wrap_wide > ul > li.op_menu_bungaku > ul > li > a {
	box-sizing: border-box;
	display:block;
	width: 90%;
	margin: 0 5% 1em 5%;
	padding:0.7em 0 0.6em 33px;
	color: #dd697b;
	text-decoration:none;
	border-radius:5px;
	transition:all 0.3s;
	
	background:#FFF url(../img/arrow_bungaku.png) no-repeat left 10px center;
	background-size:15px;
}
#nav > .wrap_wide > ul > li.op_menu_bungaku > ul > li.theme > a {
	width:86%;
	margin: 0 5% 1em 9%;
	padding:0.7em 0 0.6em 30px;
	color:#dd697b;
	line-height: 1.3;
	background:#FFF url(../img/arrow_bungaku_04.png) no-repeat left 5px center;
	background-size:20px;
}

/* rigaku acc */
#nav > .wrap_wide > ul > li.op_menu_rigaku {
	box-sizing:border-box;
	border-bottom: #21292f solid 2px;
	cursor:pointer;
	background-color:#15acc0;

}
#nav > .wrap_wide > ul > li > span.rigaku_menu {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 1.5em 0;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	line-height: 1.0;
	background-color:#15acc0;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
}

#nav > .wrap_wide > ul > li.op_menu_rigaku > ul {
	box-sizing: border-box;
	width: 100%;
	color: #FFF;
	background-color:#15acc0;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
}

#nav > .wrap_wide > ul > li.op_menu_rigaku > ul > li > a {
	box-sizing: border-box;
	display:block;
	width: 90%;
	margin: 0 5% 1em 5%;
	padding:0.7em 0 0.6em 33px;
	color: #15acc0;
	text-decoration:none;
	border-radius:5px;
	transition:all 0.3s;
	
	background:#FFF url(../img/arrow_rigaku.png) no-repeat left 10px center;
	background-size:15px;
}

/* seikan acc */
#nav > .wrap_wide > ul > li.op_menu_seikan {
	box-sizing:border-box;
	border-bottom: #21292f solid 2px;
	cursor:pointer;
	background-color:#7bbb74;
}
#nav > .wrap_wide > ul > li > span.seikan_menu {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 1.5em 0;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	line-height: 1.0;
	background-color:#7bbb74;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
}
#nav > .wrap_wide > ul > li.op_menu_seikan > ul {
	box-sizing: border-box;
	width: 100%;
	color: #FFF;
	background-color:#7bbb74;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
}

#nav > .wrap_wide > ul > li.op_menu_seikan > ul > li > a {
	box-sizing: border-box;
	display:block;
	width: 90%;
	margin: 0 5% 1em 5%;
	padding:0.7em 0 0.6em 33px;
	color: #7bbb74;
	text-decoration:none;
	border-radius:5px;
	transition:all 0.3s;
	
	background:#FFF url(../img/arrow_seikan.png) no-repeat left 10px center;
	background-size:15px;
}





/* kougaku acc */
#nav > .wrap_wide > ul > li.op_menu_kougaku {
box-sizing: border-box;
border-bottom: #21292f solid 2px;
cursor: pointer;
background-color: #F59E2F;
}
#nav > .wrap_wide > ul > li > span.kougaku_menu {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 1.5em 0;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	line-height: 1.0;
	background-color: #F59E2F;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
}
#nav > .wrap_wide > ul > li.op_menu_kougaku > ul {
	box-sizing: border-box;
	width: 100%;
	color: #FFF;
	background-color: #F59E2F;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
}
#nav > .wrap_wide > ul > li.op_menu_kougaku > ul > li > a {
	box-sizing: border-box;
	display:block;
	width: 90%;
	margin: 0 5% 1em 5%;
	padding:0.7em 0 0.6em 33px;
	color: #F59E2F;
	text-decoration:none;
	border-radius:5px;
	transition:all 0.3s;
	
	background:#FFF url(../img/arrow_kougaku.png) no-repeat left 10px center;
	background-size:15px;
}




/* download acc */
#nav > .wrap_wide > ul > li > a.dl_menu {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 1.5em 0;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	line-height: 1.0;
	border-left: #21292f solid 1px;
	border-right: #21292f solid 1px;
	border-bottom: #21292f solid 2px;
	background-color:#007dcd;
}

/*---------*/

#nav > .wrap_wide > ul > li.wide_list_material > a {
	width:100%;
	color:#FFF;
	background-color:#007dcd;
}
#nav > .wrap_wide > ul li.wide_list_classdata > a {
	width:100%;
	color:#FFF;
	background-color:#02ae86;
}


/*----------------------------------------------------
mainimage
----------------------------------------------------*/

.main_ttl {
	width:45%;
	margin:0 auto;
	top: 0;
	left:0;
	right:0;
	bottom:0;
	box-shadow:0px 0px 21px 2px #191919;
}
.main_ttl img {
	width:100%;
}
.main_text {
	width:90%;
	margin: 3em 5%;
	padding:2em 0;
	background:url(/nyusi/qnyusi/img/main_text_bg.png) no-repeat center center;
	background-size:100% auto;
}
.main_text p {
	color:#21292f;
	text-align:center;
}
/*----------------------------------------------------
contents
----------------------------------------------------*/
.contents {
	width:90%;
	padding: 0 5% 1em 5%;
	background-color:#FFF;
}
.contents:after {
	content: '';
	display: table;
	clear: both;
}
.contents h3.ttl {
	display:block;
	box-sizing:border-box;
	margin: 0 0 1.5em 0;
	padding: 0 0 0 35px;
	font-weight:normal;
	font-size:1.3em;
	background:url(/nyusi/qnyusi/img/arrow_h2_02.png) no-repeat left center;
	background-size:26px;
}
.contents h4.ttl {
	display:block;
	box-sizing:border-box;
	margin: 0 0 0.8em 0;
	padding: 0 0 0 28px;
	font-weight:normal;
	font-size:1.2em;
	background:url(/nyusi/qnyusi/img/arrow_subnav.png) no-repeat left top 0.2em;
	background-size:20px;
}
.contents h5.ttl {
	display:block;
	box-sizing:border-box;
	margin: 0 0 0.8em 0;
	padding: 0;
	font-weight:bold;
	font-size:1.1em;

}
.contents p {
	color:#21292f;
	margin: 0 0 0.5em 0;
}
.contents p a {
	color:#007dcd;
}
.contents p a:hover {
	text-decoration:none;
}

/***** news *****/
.news {
	margin: 0 0 1em 0;
	padding:2em 0 1em 0;
}
.news > dl > dt {
	display: inline-block;
	margin: 0 0 0.5em 0;
	padding: 0.1em 8px 0 8px;
	font-size: 0.7em;
	background-color: #6A6C6E;
	color: #FFF;
	border-radius: 2px;
}
.news > dl > dd {
	margin: 0 0 1em 0;
	padding: 0 0 1em 0;
	font-size: 0.9em;
	border-bottom: 1px dotted #DCDCDC;
}
.news > dl > dd > a {
	color: #0069BF;
	text-decoration:underline;
}
.news > dl > dd > a:hover {
text-decoration: none;
}
/*----------------------------------------------------
left area
----------------------------------------------------*/
.left_block p {
	margin: 0 0 2em 0;
}
/*----------------------------------------------------
right area
----------------------------------------------------*/
/***** accordion *****/
.accordion {
	width:100%;
	margin: 0 0 1em 0;
	padding:1em 0;
	border-radius:3px;
	cursor:pointer;
}
.accordion a {
	text-decoration:none;
}
.cl {
	background:url(/nyusi/qnyusi/img/arrow_down.png) no-repeat right 15px top 25px;
	background-size:12px 6px;
}
.op {
	background:url(/nyusi/qnyusi/img/arrow_up.png) no-repeat right 15px top 25px;
	background-size:12px 6px;
}
.accordion h3 {
	text-align:center;
	color:#FFF;
	font-size:1.1em;
}
.acc_bungaku {
	background-color:#dd697b;
}
.acc_rigaku {
	background-color:#15acc0;
}
.acc_seikan {
	background-color:#7bbb74;
}
.acc_kougaku {
	background-color: #F59E2F;
}
.accordion > ul {
	margin: 2em 0 0 0;
}
.accordion > ul > li > a {
	display:block;
	box-sizing:border-box;
	width:90%;
	margin: 0 5% 1em 5%;
	padding:0.7em 0 0.6em 33px;
	text-decoration:none;
	border-radius:5px;
	transition:all 0.3s;
}
.accordion > ul > li > a:hover {
	opacity: 0.8;
}
.acc_bungaku > ul > li > a {
	color:#dd697b;
	background:#FFF url(../img/arrow_bungaku.png) no-repeat left 10px center;
	background-size:15px;
}
.acc_bungaku > ul > li.theme > a {
	width:86%;
	margin: 0 5% 1em 9%;
	padding:0.7em 0 0.6em 30px;
	color:#dd697b;
	line-height: 1.3;
	background:#FFF url(../img/arrow_bungaku_04.png) no-repeat left 5px center;
	background-size:20px;
}
.acc_rigaku > ul > li > a {
	color:#15acc0;
	background:#FFF url(../img/arrow_rigaku.png) no-repeat left 10px center;
	background-size:15px;
}
.acc_seikan > ul > li > a {
	color:#7bbb74;
	background:#FFF url(../img/arrow_seikan.png) no-repeat left 10px center;
	background-size:15px;
}
.acc_kougaku > ul > li > a {
	color:#d97a00;
	background:#FFF url(../img/arrow_kougaku.png) no-repeat left 10px center;
	background-size:15px;
}

/***** right menu *****/
.right_menu {
	margin: 0 0 1em 0;
}
.right_menu > a {
display: block;
width:100%;
padding:1em 0;
	border-radius:3px;
	background: #ffffcd;
	border: #fb0065 solid 3px;
	box-sizing: border-box;
	text-align:center;
	text-decoration:none;
	font-size:1.1em;
	color: #fb0065;
	font-weight: bold;
	transition: all .3s
}
.right_menu > a:hover {
opacity: 0.7;
}

/*----------------------------------------------------
contact
----------------------------------------------------*/
.contact {
	box-sizing:border-box;
	width:90%;
	margin: 1em 5% 2.5em 5%;
	padding:2em 5%;
	text-align:center;
	color:#21292f;
	font-size:0.8em;
	border:#21292f 1px solid;
	border-radius:2px;
}
.contact > span {
	font-size:1.4em;
	font-weight:bold;
}
.contact > span > a {
	color:#21292f;
	font-size:1.7em;
	text-decoration:none;
}

/*----------------------------------------------------
footer
----------------------------------------------------*/
#footer {
	width:100%;
	padding:1.5em 0 5em 0;
	background:url(/nyusi/qnyusi/img/footer_bg.png) repeat left top;
}
.footer_logo {
	width:40%;
	margin: 0 30% 1em 30%;
}
.footer_logo img {
	width:100%;
}
.copyright {
	text-align:center;
	color:#BCBCBC;
	font-size:0.6em;
}
/*----------------------------------------------------
fix_link
----------------------------------------------------*/
.fix_link {
	position:fixed;
	width:100%;
	bottom:0;
	padding: 1em 0;
	background:url(/nyusi/qnyusi/img/sp/wh_80.png) repeat left top;
}
.fix_link::after {
	content: '';
	display: table;
	clear: both;
}

.fix_link a.dl_area {
	box-sizing:border-box;
	width:46%;
	float:left;
	margin: 0 2%;
	padding:1.3em 0;
	text-align:center;
	text-decoration:none;
	font-weight:bold;
	color:#FFF;
	font-size:0.9em;
	border-radius: 50px;
	transition:all 0.3s;
}
.fix_link a.dl_area:hover {
	opacity:0.7;
}
.fix_link a.material {
	background-color:#007dcd;
}
.fix_link a.class_data {
	background-color:#02ae86;
}


/*----------------------------------------------------
to top
----------------------------------------------------*/
.totop {
	position:fixed;
	width:100%;
	bottom:0;
}
.totop > a {
	display:block;
	width:100%;
	padding:2em 0;
	text-decoration:none;
	background-color:#920783;
	color:#FFF;
	font-size:0.8em;
	font-weight:bold;
	text-align:center;
}

.super {
vertical-align: super;
font-size: 0.8em;
}

@media screen and (min-width:768px){
/*----------------------------------------------------
mainimage
----------------------------------------------------*/
.main_ttl {
	width:40%;
	margin:0 auto 3em auto;
}
.main_text {
	background:url(/nyusi/qnyusi/img/main_text_bg.png) no-repeat center center;
	background-size:50% auto;
}
/*----------------------------------------------------
contents
----------------------------------------------------*/
/***** news *****/
.news {
	width:90%;
	margin: 0 5% 1em 5%;
}

/*----------------------------------------------------
right area
----------------------------------------------------*/
/***** accordion *****/
.accordion {
	width:90%;
	margin: 0 5% 1.5em 5%;
	padding:1.2em 0 1em 0;
}
.cl {
	background:url(/nyusi/qnyusi/img/arrow_down.png) no-repeat right 20px top 28px;
	background-size:12px 6px;
}
.op {
	background:url(/nyusi/qnyusi/img/arrow_up.png) no-repeat right 20px top 28px;
	background-size:12px 6px;
}

/***** right menu *****/
.right_menu {
margin: 0 5% 1.5em 5%;
}
.right_menu > a {
width:90%;
	padding:1.2em 0 1em 0;
}


/* ipad用 */
.acc_bungaku {
	background-color:#dd697b;
}
.acc_rigaku {
	background-color:#15acc0;
}
.acc_seikan {
	background-color:#7bbb74;
}
.acc_kougaku {
	background-color: #F59E2F;
}
/* ここまで */
/*----------------------------------------------------
contact
----------------------------------------------------*/
.contact {
	width:81%;
	margin: 1em 9.5% 2.5em 9.5%;
}
/*----------------------------------------------------
footer
----------------------------------------------------*/
.footer_logo {
	width:30%;
	margin: 0 35% 1.5em 35%;
}
}


@media print, screen and (min-width:1024px){


/*----------------------------------------------------
ハンバーガーメニュー
----------------------------------------------------*/
a.trigger {
	display:none;
}
/*----------------------------------------------------
ナビゲーション
----------------------------------------------------*/
/* sub nav */
.sub_nav {
	display:block;
	box-sizing:border-box;
	width:40%;
	padding:15px 15px 0 0;
	float:right;
}
.sub_nav ul li a {
	float:right;
	margin: 0 5px;
	padding:0.5em 10px 0.4em 28px;
	font-size:0.7em;
	color: #4E4E4E;
	text-decoration:none;
	background: url(/nyusi/qnyusi/img/arrow_subnav.png) no-repeat left 10px center;
	background-size:10px;
	transition:all 0.2s;
}
.sub_nav ul li a:hover {
	opacity:0.7;
}

/* nav */
#nav {
	display:none;
}
#nav_pc {
	display:block;
	width:100%;
}
#nav_pc > .wrap_wide_pc {
width: 100%;
height: 100px;
}
#nav_pc > .wrap_wide_pc > ul {
	width: 100%;
	float:left;
	margin: 15px 15px 25px 30px;
	background-color: inherit;
	border-top: none;
}
#nav_pc > .wrap_wide_pc > ul > li > a {
	display:block;
	margin: 0 15px 0 0;
	padding:0 1em;
	color:#21292f;
	border:#b09c53 solid 2px;
	float:left;
	background-color: #FFF;
	text-decoration:none;
	font-weight:bold;
	font-size: 1.1em;
	transition: all 0.3s;
}
#nav_pc > .wrap_wide_pc > ul > li > a:hover {
	background: #b09c53;
	color: #FFF;
}
#nav_pc > .wrap_wide_pc > ul > li.nav_bk {
	display:none;
}

/*----------------------------------------------------
mainimage
----------------------------------------------------*/
.main_ttl {
	width:100%;
	box-shadow:none;
}
.main_ttl img {
	display:block;
	width:380px;
	margin: 0 auto 2em auto;
	box-shadow:0px 0px 21px 2px #191919;
}

.main_text {
	position:relative;
	width:800px;
	margin: 70px auto 30px auto;
	background:none;
}
.main_text:before,
.main_text:after {
	position:absolute;
	width:25px;
	height:116px;
	top:20px;
}
.main_text:before {
	content:url(/nyusi/qnyusi/img/main_text_before.png);
	left:0;
}
.main_text:after {
	content:url(/nyusi/qnyusi/img/main_text_after.png);
	right:0;
}

/*----------------------------------------------------
contents
----------------------------------------------------*/
.contents {
	width:90%;
	margin: 0 auto;
	padding: 0 5% 1em 5%;
}
.contents h2 {
	margin: 0 0 40px 0;
	font-size:1.4em;
}

/***** news *****/
.news {
	width:100%;
	margin: 0;
	padding:1em 0;
	float:left;
}
.news > dl > dt {
	margin: 0 0 5px 0;
	font-size:0.8em;
}
.news > dl > dd {
	margin: 0 0 15px 0;
	padding: 0 0 10px 0;
	font-size:1em;
	border-bottom: 1px dotted #DCDCDC;
}
/*----------------------------------------------------
left area
----------------------------------------------------*/
.left_block {
	width:64%;
	float:left;
}

/*----------------------------------------------------
right area
----------------------------------------------------*/
.right_block {
	width:33%;
	float:right;
}

/***** accordion *****/
.accordion {
	width:100%;
	margin: 0 0 20px 0;
}
.accordion h3 {
	font-weight:normal;
	font-size:1.3em;
}

/***** right menu *****/
.right_menu {
margin: 0 0 20px 0;
}
.right_menu > a {
width:100%;
}

/*----------------------------------------------------
contact
----------------------------------------------------*/
.contact {
	width:994px;
	margin: 20px auto 40px auto;
	padding:1.5em 0;
	font-size:1.0em;
}
.contact > span {
	font-size:1.7em;
	font-weight:normal;
}

/*----------------------------------------------------
footer
----------------------------------------------------*/
#footer {
	padding:30px 0 60px 0;
}
.footer_logo {
	width:300px;
	margin: 0 auto 20px auto;
}

/*----------------------------------------------------
to top
----------------------------------------------------*/
.fix_link {
	padding: 1.5em 0;
}
.totop > a {
	position:fixed;
	width:auto;
	padding: 20px 1em;
	border-radius:500px;
	right:30px;
	bottom:30px;
	transition:all 0.3s;
}
.totop > a:hover {
	opacity:0.7;
}
}
@media print, screen and (min-width:1280px){
#nav_pc > .wrap_wide_pc {
	width:1200px;
	margin: 0 auto;
}
/*----------------------------------------------------
contents
----------------------------------------------------*/
.contents {
	width:1120px;
	margin: 0 auto;
	padding:0 0 1em 0;
}
/*----------------------------------------------------
to top
----------------------------------------------------*/
.fix_link {
	position:fixed;
	width:100%;
	background:url(/nyusi/qnyusi/img/sp/wh_80.png) repeat left top;
	bottom:0;
}
.fix_link_wrap {
	width:1024px;
	margin: 0 auto;
}
/*----------------------------------------------------
footer
----------------------------------------------------*/
#footer {
	padding:30px 0 60px 0;
}
}