/* ============================================
¹²Í¨
============================================ */

/* init
-------------------------------------------- */
body {
font-family: font-family: -apple-system, BlinkMacSystemFont, Roboto, "ÓÎ¥´¥·¥Ã¥¯Ìå", YuGothic, "Yu Gothic Medium", sans-serif;font-feature-settings: "pkna" 1;}

.clearfix {*zoom: 1;}
.clearfix:before,.clearfix:after {display: table;line-height: 0;content: "";}
.clearfix:after {clear: both;}
a,a img{-webkit-transition: all ease 0.3s;-moz-transition: all ease 0.3s;-o-transition: all ease 0.3s;transition: all ease 0.3s;}
a:hover{opacity:0.7;}
a,a:visited{color: #0000ff;}
footer a,footer a:visited{color:#ffffff;}

/* font
-------------------------------------------- */
/*body {font-family: 'Noto Sans JP', s}font-family: 'Sawarabi Mincho', sans-serif;*/
body {font-family: 'Noto Sans JP', sans-serif;line-height: 2.2em;font-size: 16px;letter-spacing: 0.05em;}
.mincho{font-family: 'Sawarabi Mincho', sans-serif;}
.strong{font-weight: bold;}


div.loading{width:100%;height: 100vh;background: #ffffff;position: fixed;top: 0;left:0;font-size: 100px;z-index: 9999;text-align: center;transition:3s;padding-top:40vh; }
div.loading.active{
	animation-name: anime1;
	animation-duration: 2.5s;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-fill-mode: both;
}
div.loading span{position: absolute;bottom: 0;left: 0;right: 0;margin: auto;width: auto;color: #ffffff;font-size: 10px;letter-spacing: 0.1em;padding-top: 10px;font-weight: 700;}
div.loading span{
	animation-name: anime2;
	animation-duration: 2s;
	animation-delay: 0s;
	animation-iteration-count: 1;
	animation-fill-mode: both;
}
div.loading span img{width:200px;}
@media screen and (min-width:0px) and (max-width:1040px){
div.loading span img{width:50%;}
}
	
@keyframes anime1 {
40% {opacity: 1;}
70% {opacity: 0;}
71%{margin-left: 0;opacity: 0;}	
100% {margin-left: -100%;opacity: 0;}
}

@keyframes anime2 {
0% {opacity: 0;top:43vh;}
70%{top:40vh;}	
100% {opacity: 1;top:40vh;}
}




/* ============================================
PC
============================================ */
/*PC°æ*/
@media screen and (min-width:1041px) {

	div#maincont{overflow: hidden;}
/* cmn
-------------------------------------------- */
.pc{display: block;}
.sp{display: none;}
	
/* tmp
-------------------------------------------- */

	h2.ttl{font-size: 45px;font-weight: 700;letter-spacing: 0.05em;margin-bottom: 50px;line-height: 1.2em;overflow: hidden;}
	h2.ttl span.line{height: 1px; display: block;background: #2c2c2c;margin: 17px 0 8px;position: relative;}
	h2.ttl span.line span{height: 7px;background:#5E4475;display: block;position: absolute;top: -3px;left: 0;width: 450px;}
	h2.ttl strong{font-size: 14px;font-weight:700;color:#5E4475;letter-spacing: 0.05em;display: block;}
	p.rc{font-size: 16px;margin-bottom: 70px;}
	
	div.sec{padding: 90px 0;position: relative;}
	div.inner{width: 1200px; margin: 0 auto;position: relative;}

	div#maincont{padding-top: 80px;width:100%;overflow-x:hidden;}

	
	header{position: fixed;top: 0;z-index: 2000;width: 100%;height: 80px;background:rgba(255,255,255,0.9);}
	header a.mainlogo{display: block;position: absolute;top:25px;left:20px;width: 415px;height: 29px;transition: .8s;}
	header a.mainlogo img{width: 100%;}
	
	header div.btn{}
	header div.btn a{display: block;height: 80px;width: 160px;color: #ffffff;text-align: center;line-height: 1.5em;font-size: 13px; }
	header div.btn01{position: absolute;right: 260px;top: 0;background-color: #ed1c24;}
	header div.btn02{position: absolute;right: 100px;top: 0;background-color: #2c2c2c;}
	header div.btn01 a{padding-top: 21px;}
	header div.btn02 a{padding-top: 30px;}
	
	header div.btn_menu{position:fixed;width: 30px;height: 25px;top: 30px;right: 30px;z-index: 2500;transition: .5s;}
	header div.btn_menu a,
	header div.btn_menu a span {display: inline-block;transition: all .4s;box-sizing: border-box;}
	header div.btn_menu a{display: block;width: 30px;height: 25px;}
	header div.btn_menu a span {position: absolute;left: 0px;width:30px;height: 2px;background-color: #2c2c2c;border-radius: 2px;z-index:100002;}
	header div.btn_menu a span:nth-of-type(1) {top: 0px;}
	header div.btn_menu a span:nth-of-type(2) {top: 8px;}
	header div.btn_menu a span:nth-of-type(3) {top: 16px;}
	header div.btn_menu a.active{background:none;}
	header div.btn_menu a.active span:nth-of-type(1) {top:-4px;left:0px;width:30px;background-color:#fff;-webkit-transform: translateY(10px) rotate(-30deg);transform: translateY(10px) rotate(-30deg);}
	header div.btn_menu a.active span:nth-of-type(2) {opacity: 0;}
	header div.btn_menu a.active span:nth-of-type(3) {left:0px;width:30px;background-color:#fff;-webkit-transform: translateY(-10px) rotate(30deg);transform: translateY(-10px) rotate(30deg);}

	header.opn{background:block;transition: .5s;position: relative;}
	
	header div#nav_list{display: none;width: 100%;height: 100vh;background:rgba(94,68,117,0.95);;position: fixed;top: 0;left: 0;padding:70px 5% 0;}
	header div#nav_list a.mainlogo{opacity: 1;transition: .5s;position:relative;top:0;left:0;margin-bottom: 100px;}
	header div#nav_list ul{width:100%;margin:  0 auto 0 auto;}
	header div#nav_list ul li{width: 31%;height: 225px;margin-right: 3.5%;float: left;}
	header div#nav_list ul li:nth-child(3n){margin-right: 0;}
	header div#nav_list ul li h3{font-weight: bold;color: #fff;border-bottom: 1px solid #fff;font-size: 25px;padding-bottom: 10px; margin-bottom: 10px;}
	header div#nav_list ul li ul{width: 100%;height: auto;overflow: auto;}
	header div#nav_list ul li ul li{margin-bottom: 0;float: none;width: 90%;overflow: none;height: auto;}
	header div#nav_list ul li ul li:before{content: "-¡¡";color: #fff;}
	header div#nav_list ul li ul li a{color: #fff;font-weight: 100;}
	header div#nav_list ul li:last-child ul li{margin-bottom: 15px;}
	header div#nav_list ul li:last-child ul li:before{content: none;}
	header div#nav_list ul li:last-child ul li a{background: #fff;position: relative;color: #2c2c2c;text-align: center;border-radius: 100px;width: 100%;padding: 5px;display: block;}
	header div#nav_list ul li:last-child ul li:last-child a{background: #2c2c2c;color: #fff;}
	header div#nav_list ul li:last-child ul li a:after{content: url("/bunkyocard/common/img/cmnfile/arrow02.png");display: inline-block;transform: scale(0.5);position: absolute;top:6px;right:12px;}
	header div#nav_list ul li:last-child ul li:nth-child(2) a:after{content: url("/bunkyocard/common/img/cmnfile/arrow03.png")}
	

	footer{width:100%;}
	footer div.rec01{background:#5e4475;height: 20px;padding-top: 60px;}
	footer div.rec01 a{display: block;position: relative;text-align: center;height: 22px;width: 400px;margin: 0 auto;}
	footer div.rec01 a img.entry{height: 22px;}
	footer div.rec01 a img.arrow{position: absolute;right: 0;top:0;height: 22px;}
	footer div.rec02{padding: 50px 0;}
	footer div.rec02 ul{width: 1200px;margin: 0 auto;}
	footer div.rec02 ul li{float: left;width: 18%;margin-right: 2.5%;}
	footer div.rec02 ul li:nth-child(1){width: 15%;}
	footer div.rec02 ul li:nth-child(2){width: 21%;}
	footer div.rec02 ul li:last-child{margin-right: 0;}
	footer div.rec02 ul li h3{font-size: 16px;font-weight: bold;color: #5e4475;}
	footer div.rec02 ul li ul.lnk{width: 100%;}
	footer div.rec02 ul li ul.lnk li{float: none;width: 100%;line-height: 1.5em;}
	footer div.rec02 ul li ul.lnk li a{display: block;color: #2c2c2c;font-size: 12px;}
	footer div.rec02 ul li ul.lnk li a:before{content: "?";}
	footer div.rec03{position: relative;height: 80px;}
	footer div.rec03 img{width: 415px;position: absolute;left:40px;top: 0;}
	footer div.rec03 p{font-size: 13px;position: absolute;right: 40px;top: 0;}
}



/* ============================================
SP
============================================ */
@media screen and (min-width:0px) and (max-width:1040px){
html,body{width:100%;overflow-x:hidden;}
.pc{display: none;}
.sp{display: block;}
div#maincont{padding-top: 50px;width:100%;overflow-x:hidden;}

/* tmp
-------------------------------------------- */
	
	
	h2.ttl{font-size: 25px;font-weight: 700;letter-spacing: 0.05em;margin-bottom: 30px;line-height: 1.2em;overflow: hidden;}
	h2.ttl span.line{height: 1px; display: block;background: #2c2c2c;margin: 10px 0 8px;position: relative;}
	h2.ttl span.line span{height: 7px;background:#5E4475;display: block;position: absolute;top: -3px;left: 0;width: 150px;}
	h2.ttl strong{font-size: 12px;font-weight:700;color:#5E4475;letter-spacing: 0.05em;display: block;}
	p.rc{font-size: 13px;margin-bottom: 30px;line-height: 1.8em;}
	
	div.sec{padding: 40px 5%;position: relative;}
	div.inner{width: 100%; margin: 0 auto;position: relative;}
	
	header{position: fixed;top: 0;z-index: 2000;width: 100%;height: 50px;background:rgba(255,255,255,0.9);}
	header a.mainlogo{display: block;position: absolute;top:18px;left:9px;width: 205px;height:auto;transition: .8s;}
	header a.mainlogo img{width: 65%;margin-top:  -6px;}
	
	header div.btn{}
	header div.btn a{display: block;height: 50px;width:50px;color: #ffffff;text-align: center;line-height: 1.5em;font-size: 10px; }
	header div.btn01{position: absolute;right: 50px;top: 0;background-color: #ed1c24;}
	header div.btn02{position: absolute;right: 100px;top: 0;background-color: #2c2c2c;}
	header div.btn01 a{padding-top: 12px;}
	header div.btn02 a{padding-top: 19px;}
	
	header div.btn_menu{position:fixed;width:50px;height: 50px;top: 16px;right: -11px;z-index: 2500;transition: .5s;}
	header div.btn_menu a,
	header div.btn_menu a span {display: inline-block;transition: all .4s;box-sizing: border-box;}
	header div.btn_menu a{display: block;width: 30px;height: 25px;}
	header div.btn_menu a span {position: absolute;left: 0px;width:30px;height: 2px;background-color: #2c2c2c;border-radius: 2px;z-index:100002;}
	header div.btn_menu a span:nth-of-type(1) {top: 0px;}
	header div.btn_menu a span:nth-of-type(2) {top: 8px;}
	header div.btn_menu a span:nth-of-type(3) {top: 16px;}
	header div.btn_menu a.active{background:none;}
	header div.btn_menu a.active span:nth-of-type(1) {top:-4px;left:0px;width:30px;background:#ffffff;-webkit-transform: translateY(10px) rotate(-45deg);transform: translateY(10px) rotate(-30deg);}
	header div.btn_menu a.active span:nth-of-type(2) {opacity: 0;}
	header div.btn_menu a.active span:nth-of-type(3) {left:0px;width:30px;background:#ffffff;-webkit-transform: translateY(-10px) rotate(45deg);transform: translateY(-10px) rotate(30deg);}

	header.opn{background:block;transition: .5s;position: relative;}	
	
	header div#nav_list{display: none;width: 100%;height: 100vh;background:rgba(94,68,117,0.95);position: fixed;top: 0;left: 0;padding:60px 5% 0;}
	header div#nav_list a.mainlogo{width: 100%;position: relative;top:0;left: 0;}
	header div#nav_list a.mainlogo img{width: 100%;}
	header div#nav_list div.rec02{margin:  0 auto 0 auto;overflow-y:auto;height: 80vh;}
	header div#nav_list div.rec02 ul{width:100%;margin-bottom: 10px;}
	header div#nav_list div.rec02 ul li{width: 100%;margin-bottom:3em;}
	header div#nav_list div.rec02 ul li h3{font-weight: bold;font-size: 18px;color: #ffffff;border-bottom: 1px solid #ffffff;margin-bottom: 9px;padding-bottom: 5px;}
	header div#nav_list div.rec02 ul li ul{width: 100%;height: auto;overflow: auto;}
	header div#nav_list div.rec02 ul li ul li{margin-bottom: 0;font-size: 12px;line-height: 1.6em;}
	header div#nav_list div.rec02 ul li ul li:before{content: "- ";color: #ffffff;}
	header div#nav_list div.rec02 ul li ul li a{color: #ffffff;font-weight: 100;}

	header div#nav_list div.rec02 ul li:last-child ul li{margin-bottom: 10px;}
	header div#nav_list div.rec02 ul li:last-child ul li a{background: #fff;color: #000;position: relative;text-align: center;border-radius: 100px;width: 100%;padding: 10px 0;display: block;}
	header div#nav_list div.rec02 ul li:last-child ul li:last-child a{background: #2c2c2c;color: #fff;}
	header div#nav_list div.rec02 ul li:last-child ul li:before{content: none;}
	header div#nav_list div.rec02 ul li:last-child ul li a:after{content: url("/bunkyocard/common/img/cmnfile/arrow02.png");display: inline-block;transform: scale(0.5);position: absolute;top:6px;right:12px;}
	header div#nav_list div.rec02 ul li:last-child ul li:last-child a:after{content: url("/bunkyocard/common/img/cmnfile/arrow03.png")}

	
	
	
	footer{width:100%;}
	footer div.rec01{background:#5e4475;height: 20px;padding-top: 25px;}
	footer div.rec01 a{display: block;position: relative;text-align: center;height: 22px;width: 100%;margin: 0 auto;}
	footer div.rec01 a img.entry{height: 16px;}
	footer div.rec01 a img.arrow{position: absolute;right: 40px;top:0;height: 16px;}
	
	footer div.rec02{padding: 35px 0 25px;}
	footer div.rec02 ul{width: 100%;margin: 0 auto; padding: 0 5%;}
	footer div.rec02 ul li{float: left;width: 47%;margin-right: 6%;margin-bottom: 20px;}
	footer div.rec02 ul li:nth-child(even){margin-right: 0;}
	footer div.rec02 ul li h3{font-size: 12px;line-height: 1.5em; font-weight: bold;color: #5e4475;}
	footer div.rec02 ul li ul.lnk{width: 100%;}
	footer div.rec02 ul li ul.lnk li{float: none;width: 100%;line-height: 1.5em;height: auto;margin-bottom: auto;}
	footer div.rec02 ul li ul.lnk li a{display: block;color: #2c2c2c;font-size: 11px;}
	footer div.rec02 ul li ul.lnk li a:before{content: "?";}
	
	footer div.rec03{position: relative;padding:0 5%;text-align: center;}
	footer div.rec03 img{width: 80%;margin: 0 auto;}
	footer div.rec03 p{font-size: 10px;text-align: center;}
/**/

}
