@charset "UTF-8";
/******************************* Preface ***************************************/
a:hover { color: #E50012; }

/********************************* body ***************************************/
body { /******************************** header **************************************/ /***********************************  footer ********************************/ }

body header.header_type2 .inner { padding: 1rem 1rem; }

body header.header_type2 .inner .f-warp { display: block; padding-right: 0; }

body header.header_type2 .inner .f-warp .logo_area .jr_logo { width: 21.5%; max-width: 90px; margin-right: 1.6rem; padding-right: 1.8rem; margin-top: .2%; }

body header.header_type2 .inner .f-warp .logo_area .hayabin_logo { width: 28.5%; max-width: 100px; }

body header.header_type2 .inner .f-warp .logo_area .header_btn { display: none; }

body header.header_type2 .inner .funa2_nav { display: none; }

body header.header_type2 .inner .menu-wrapper { display: block; }

body header.header_type2 .inner .menu-wrapper .gnav { position: fixed; top: 0; right: -100%; bottom: 0; width: 100%; padding-top: 5rem; background: #fff; overflow-x: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; transition: all .5s; opacity: 0; z-index: -1; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_inr { width: 100%; height: 100%; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_inr .menu-container { background: #E50012; padding: 0 1.5rem; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_inr .menu-container .menu li { width: 100%; border-bottom: solid 1px #fff; position: relative; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_inr .menu-container .menu li:last-of-type { border-bottom: 0; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_inr .menu-container .menu li a { display: block; color: #fff; padding: 1.5rem 3rem 1.5rem 1rem; transition: .3s; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_inr .menu-container .menu li::after { content: ''; display: inline-block; width: 16px; height: 16px; background: url("../img/nav_arrow.png") no-repeat center center; background-size: contain; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_inr .gnav_logo { width: 40%; margin: 2rem auto 0 auto; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_inr .gnav_logo_ttl { text-align: center; font-weight: bold; margin-top: .5rem; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_btn_wrap { display: flex; padding: 1.5rem 4%; justify-content: space-between; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_btn_wrap .gnav_btn { width: 48%; text-align: center; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_btn_wrap .gnav_btn a { background: #222; display: block; font-size: 1rem; border: solid 1px #222; border-radius: 999px; padding: .6rem .5rem .7rem .5rem; color: #fff; }

body header.header_type2 .inner .menu-wrapper .gnav .gnav_btn_wrap .gnav_btn.active a { border: solid 1px #E50012; background: #E50012; }

body header.header_type2 .inner .menu-wrapper .toggle-btn { position: absolute; top: 50%; right: 1rem; width: 45px; height: 45px; transition: all .5s; cursor: pointer; z-index: 999; transform: translateY(-50%); background: #E50012; border-radius: 999px; }

body header.header_type2 .inner .menu-wrapper .toggle-btn span { display: block; position: absolute; left: 0; width: 20px; height: 2px; background-color: #fff; transition: all .5s; }

body header.header_type2 .inner .menu-wrapper .toggle-btn span:nth-child(1) { top: 15px; left: 0; right: 0; margin: 0 auto; }

body header.header_type2 .inner .menu-wrapper .toggle-btn span:nth-child(2) { top: 22px; left: 0; right: 0; margin: 0 auto; }

body header.header_type2 .inner .menu-wrapper .toggle-btn span:nth-child(3) { bottom: 14px; left: 0; right: 0; margin: 0 auto; }

body header.header_type2 .inner .menu-wrapper.menu-open .gnav { top: 0; right: 0; opacity: 1; }

body header.header_type2 .inner .menu-wrapper.menu-open .toggle-btn { margin-top: 0; }

body header.header_type2 .inner .menu-wrapper.menu-open .toggle-btn:hover span { background-color: #fff; }

body header.header_type2 .inner .menu-wrapper.menu-open .toggle-btn span { background-color: #fff; }

body header.header_type2 .inner .menu-wrapper.menu-open .toggle-btn span:nth-child(1) { -webkit-transform: translateY(6px) rotate(-315deg); transform: translateY(6px) rotate(-315deg); }

body header.header_type2 .inner .menu-wrapper.menu-open .toggle-btn span:nth-child(2) { opacity: 0; }

body header.header_type2 .inner .menu-wrapper.menu-open .toggle-btn span:nth-child(3) { -webkit-transform: translateY(-8px) rotate(315deg); transform: translateY(-8px) rotate(315deg); }

body footer.footer { background: #222; padding: 1.5rem; }

body footer.footer .inner { max-width: 100%; display: block; }

body footer.footer .inner .copyright { font-size: .8rem; }

body footer.footer .inner .left { display: flex; justify-content: center; }

body footer.footer .inner .left .jr_logo { max-width: 15%; margin-right: 0; margin-bottom: 1rem; }

body footer.footer .inner .left .f-link { display: none; }

body footer.footer.footer-top { padding: 1rem 1.5rem; background: #fff; }

body footer.footer.footer-top .copyright { color: #222; }

body footer.footer.footer-top .footer_news a { font-size: .9rem; font-weight: 500; }

body footer.footer.footer-top .footer_news a .data { margin-right: 1rem; }

body footer.footer.footer-top .footer_news a i { margin-left: 1rem; }

#page-top a { width: 40px; height: 40px; }

#page-top a #page-top a:hover { background: #E50012; color: #000; }

/*リンクを右下に固定*/
#page-top { position: fixed; right: 20px; bottom: 40px; z-index: 2; opacity: 0; transform: translateY(100px); }
