@charset "UTF-8";

/* reset----------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin:0; padding:0; border:0; outline:0; font-weight:400;  background:transparent; }
body { line-height:1; }
article,aside,details,figcaption,figure, footer,header,hgroup,menu,nav,section { display:block; }
nav ul { list-style:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content:none; }
a { margin:0; padding:0; vertical-align:baseline; background:transparent; text-decoration: none; }
table { border-collapse:collapse; border-spacing:0; }
hr { display:block; height:1px; border:0; border-top:1px solid #ddd; margin:1em 0; padding:0; }
input, select { vertical-align:middle; }
*, *::before, *::after { box-sizing: border-box; }
/***************** basic ******************/

html{ scroll-behavior: smooth;}
body {
	max-width: 100%;
	font-family: 'Roboto', "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
	font-size:0.875rem;
	line-height:1.5rem;
	font-weight:300;
	letter-spacing: 0.1rem;
}
.for_sp { display: none;}
.for_pc { display: block;}

a { color:#444; text-decoration:none; }
a:hover{ transition: 0.3s; color: #000;}
a:hover img { opacity: 0.7; transition: 0.3s;}
header, main, footer { width: 100%; background-color: #fff; }
section { margin-bottom: 100px!important; margin-top: 40px!important;}
.ctt_out { max-width: 1200px; padding: 0 15px 0; margin: auto;}
h2 { font-size: 2.22rem; font-weight: 900; color: #59595c; padding: 0 0 30px; }
h3 { font-size: 1.125rem; font-weight: 700; color: #59595c; padding: 0 0 10px; margin-bottom: 30px;}

.wrapper { margin: 0 auto 20px;}
header .download { text-align: right;}
header .download a { display: inline-block; background-color: #1fa64a; color: #fff; font-size: 0.875rem; padding: 2px 10px; text-align: center; font-weight: 900;}
header ul { display: flex; }
header ul li a {  font-size: 0.875rem; font-weight: 900; color: #59595c; padding-right: 25px;}
header ul li:last-child a { padding-right: 0; }
.header_in { display: flex; justify-content: space-between; align-items: center;}
.logo { width: 37%; display: flex; justify-content: space-between; align-items: center;}
.logo .bmn_log { width: 85%; }
.logo .nrc_log { width: 160px; }
.logo h1 img { width: 100%; }

/**** end_navi_pc ****/
.toggle_btn { display: none; }

.main_visual { width: 100%;}
.main_visual img { width: 100%;}

section .download a{ display: inline-block; background-color: #1fa64a; color: #fff; font-size: 0.89rem; padding: 3px 15px; text-align: center; font-weight: 900;}
section .download { margin-top: 20px;}
.background_w100 { background-color: #f2f2f2; padding: 70px 0;}
.border { border-bottom: 2px #ddd solid;}
.in_box { background-color: #fff; padding: 20px 25px; width: 30%; border-radius: 10px; box-shadow: 0 4px 7px rgba(0, 0, 0, 0.1);}
.in_box a { display: block;}
.p_img { width: 92%; margin: 0 auto;}
.p_img img { width: 100%;}
.series_ttl { font-size: 1.0rem; font-weight: bold;}
.flex { margin-top: 55px; display: flex; justify-content: space-between;}
.link { margin: 30px auto 20px;}
.link p { padding-bottom: 10px;}
.bowman_link {color: #1fa64a; border-bottom: 1px #1fa64a solid;}
.bowman_link:hover { opacity: 0.7; color: #1fa64a; transition: 0.3s;}
.nireco_link { color: #d00; border-bottom: 1px #d00 solid;}
.nireco_link:hover { opacity: 0.7; color: #d00; transition: 0.3s;}

ol { padding-left: 0; list-style: none; width: 65%;}
ol li { text-indent: -1em; padding-left: 1em; padding-bottom: 10px; }
ol li::before { content: "・"; margin-right: 0.5em; color: #59595c; width: 1em; padding-right: 0;}
.ctt_in_img { width: 30%; }
.ctt_in_img img { width: 100%;}
.nireco_contact { width: 30%; margin-right: 45px;}
.flex_02 { display: flex;}
.nireco_contact a{ width: 100%; display: block; padding: 20px; background-color: #fee; text-align: center; font-weight: bold;}
.nireco_contact a:hover{ opacity: 0.7; transform: 0.3s; color:#d00;}
.tell span { font-weight: bold; font-size: 1.5rem; padding-left: 7px; letter-spacing: 2px;}
.tell {line-height: 30px; }

footer { background: url(../img/footer_back.png) center / cover no-repeat; padding: 15px 0; text-align: center; color: #fff; font-weight: bold;}

#anc_02, #anc_03, #anc_04, #anc_06 { scroll-margin-top: 50px; }


@media screen and (max-width:767px){

	.logo { width: 45%; flex-direction: column; }
	.logo .bmn_log { width: 100%; margin-bottom: 15px;}
	.logo .nrc_log { width: 160px; }
	.header_in { position: relative;}

	.for_sp { display: block;}
	.for_pc { display: none;}
	.flex { flex-direction: column; margin-top: 0;}
	ol { width: 100%; margin-bottom: 20px;}
	.ctt_in_img { width: 100%; }
	.flex_02 { flex-direction: column;}
	.in_box { padding: 20px 27px; width: 100%; margin-bottom: 30px;}
	.p_img { width: 85%; margin: 0 auto;}
	.nireco_contact { width: 100%; margin-right: 0; margin-bottom: 20px;}
	.tell {text-align: center;}
	#navi { display: none; background-color: #212121; padding: 30px 0; }

	.toggle_btn { display: block; transition: top 0.3s ease; width: 55px; height: 55px; background-color: #212121; padding: 18px 15px; border-radius: 5px; margin-left: auto; cursor: pointer; position: absolute; top: 15px; right: 0; }
	.toggle_btn.scrolled { top: 10px; }
	.navbar_toggle_icon { display: block; width: 25px; height: 2px; background: #fff; transition: all 0.5s ease; position: absolute; left: 0; }

	/* 初期位置を中央基準にする */
	.navbar_toggle { position: relative; width: 25px; height: 22px; }

	.navbar_toggle_icon:nth-child(1) { top: 0; }
	.navbar_toggle_icon:nth-child(2) { top: 10px; }

	.navbar_toggle_icon:nth-child(3) { top: 20px; }

	/* ハンバーガーが開いたときの×変形 */
	.navbar_toggle.open .navbar_toggle_icon:nth-child(1) { transform: rotate(45deg); top: 10px; }
	.navbar_toggle.open .navbar_toggle_icon:nth-child(2) { opacity: 0; }
	.navbar_toggle.open .navbar_toggle_icon:nth-child(3) { transform: rotate(-45deg); top: 10px; }
	#navi { position: fixed; top: 0; left: -250px; /* 最初は画面の外に隠れている */ width: 70%; height: 100%; background-color: #212121; color: #fff; transition: left 0.4s ease; z-index: 999; padding-top: 30px;}
	/* 表示状態 */
	#navi.active { left: 0; }
	#navi { list-style: none; padding: 0; }
	#navi li { padding: 15px 20px; }
	#navi li a { color: #fff; }

	.tell a { font-weight: bold; font-size: 1.5rem; padding-left: 7px; letter-spacing: 2px;}

	#navi li:nth-child(1){ padding-top: 50px;}


}

