@charset "UTF-8";
/*main.header.css for easy responshive*/
html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}
::-moz-selection, ::selection {
    background: #b3d4fc;
    text-shadow: none;
}
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}
audio, canvas, iframe, img, svg, video {
    vertical-align: middle;
}
fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}
textarea {
    resize: vertical;
}
.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}
/* ==========================================================================
   Author's custom styles
   ========================================================================== */
/* ==========================================================================
   Helper classes
   ========================================================================== */
.hidden {
    display: none !important;
    visibility: hidden;
}
.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}
.invisible {
    visibility: hidden;
}
.clearfix {
    *zoom: 1;
}
.clearfix:before {
    content: " ";
    display: table;
}
.clearfix:after {
    content: " ";
    display: table;
    clear: both;
}
body {
    min-width: 1110px;
}
.wrap {
    position: relative;
    margin: 0 auto;
    width: 1024px;
}
/*header_main--------------------------------------------------------------*/
#header_pc .header {
    color: #333;
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 'Noto Sans JP', "メイリオ", Meiryo, sans-serif;
    font-size: 14px;
    line-height: 1.4;
}
#header_pc .header a {
    color: #333;
    font-size: 14px !important;
    text-decoration: none;
}
#header_pc .header a:hover {
    text-decoration: underline;
}
#header_pc .header {
    position: relative;
    z-index: 10;
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
}
#header_pc .header p {
    margin: 0 auto;
}
#header_pc .header .logo {
    font-size: 10px;
    padding-top: 6px;
}
#header_pc .header .logo a:hover img {
    opacity: .7;
    filter: alpha(opacity=70);
}
#header_pc .header .hd_upper {
    margin-bottom: 15px;
    padding-top: 15px;
    overflow: hidden;
}
#header_pc .header .hd_upper .siteid {
    float: left;
    width: 532px;
}
#header_pc .header .hd_upper .siteid h1 {
    margin: 0 auto;
    line-height: 1.2;
}
#header_pc .header .hd_upper .siteid p {
    padding-top: 4px;
    font-size: 12.5px;
    line-height: 1.2;
}
#header_pc .header .hd_upper .bnr_box {
    float: right;
    width: 468px;
}
#header_pc .header .nav_block {
    border-top: 1px solid #e5e5e5;
}
#header_pc .header .nav_block ul {
    padding: 0;
    margin: 0;
}
#header_pc .header .nav_block ul li {
    list-style: none;
}
#header_pc .header .nav_block .wrap {
    position: inherit;
}
#header_pc .header .gnav_box {
    float: left;
    margin-right: 2em;
}
#header_pc .header .gnav > li {
    float: left;
    width: 125px;
}
#header_pc .header .gnav > li .gnav_btn {
    display: block;
    font-weight: bold;
    text-align: center;
    border-right: 1px solid #e5e5e5;
    box-sizing: border-box;
}
#header_pc .header .gnav > li .gnav_btn span {
    display: block;
    margin: 0 .3em;
    padding: .8em 0 .6em;
    border-radius: 3px;
}
#header_pc .header .gnav > li .gnav_btn span.triangle {
    padding: 0;
}
#header_pc .header .gnav > li .gnav_btn:hover {
    text-decoration: none;
}
#header_pc .header .gnav > li:hover a, #header_pc .header .gnav > li .gnav_selected {
    color: #fff;
}
#header_pc .header .gnav > li:hover .sub_list a {
    color: #333;
}
#header_pc .header .nav_btn > a {
    outline: none;
}
#header_pc .header .nav_btn .gnav_selected {
    position: relative;
}
#header_pc .header .gnav > li:first-child > a {
    border-left: 1px solid #e5e5e5;
}
#header_pc .header .gnav > li:hover a .btn, #header_pc .header .gnav > li .gnav_selected .btn {
    background: #455258;
}
#header_pc .header .gnav > li.gnav01:hover a .btn, #header_pc .header .gnav > li.gnav01 .gnav_selected .btn {
    background: #6dc706;
}
#header_pc .header .gnav > li.gnav02:hover a .btn, #header_pc .header .gnav > li.gnav02 .gnav_selected .btn {
    background: #009af5;
}
#header_pc .header .gnav > li.gnav03:hover a .btn, #header_pc .header .gnav > li.gnav03 .gnav_selected .btn {
    background: #f5565b;
}
#header_pc .header .btns {
    float: right;
}
#header_pc .header .btns > li {
    display: inline-block;
}
#header_pc .header .btns > li:not(.irregular) {
    padding: 0;
    margin-right: 0;
    position: relative;
}
#header_pc .header .btns > li img {
    margin-right: .4em;
    vertical-align: top;
}
#header_pc .header .btns > li.btn > a {
    position: relative;
    display: block;
    padding: .8em 2.5em .6em;
    color: #fff;
    background: #728791;
    border-radius: 3px;
    height: 38px;
    box-sizing: border-box;
}
#header_pc .header .btns > li.btn > a img{
    width:20px;
    margin-right:0;
}



#header_pc .header .btns > li.btn > a.gnav_selected, #header_pc .header .btns > li.btn > a:hover {
    background: #455258;
    color: #fff;
    text-decoration: none;
}
/*#header_pc .header .btns > li.btn > a:hover {
  text-decoration: none;
  opacity: 0.8;
  filter: alpha(opacity=80); }*/
#header_pc .header .btns > li.btn > a .badge {
    position: absolute;
    top: -.5em;
    right: -.5em;
    display: block;
    width: 2em;
    height: 2em;
    line-height: 2em;
    text-align: center;
    background: #e73656;
    border-radius: 100%;
}
#header_pc .header .btns a.off {
    color: #bbb;
    cursor: default;
}
#header_pc .header .nav_block ul.btns {
    margin-top: 12px;
    padding: 0;
    /* margin: 0; */
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#header_pc .header .btns li.irregular {
    margin-right: 40px;
}
#header_pc .header .btns li.irregular a {
    width: 140px;
    box-sizing: border-box;
    padding: 0;
    text-align: center;
    background: #fff;
    color: #728791;
    border: solid 2px #728791;
    height: 38px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 13px !important;
    border-radius: 5px;
}
#header_pc .header .btns li.irregular a:hover {
    opacity: 0.8;
    text-decoration: none;
}
#header_pc .header .nav_btn {
    padding: 12px 0 10px;
}
#header_pc .header .nav_btn a span.triangle {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-top: -6px;
    margin-left: -10px;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-bottom-color: #3e4651;
    content: "";
}
#header_pc .header .nav_btn:hover > a {
    position: relative;
}
#header_pc .header .nav_btn:hover > a:hover {
    opacity: 1;
    filter: alpha(opacity=100);
}
#header_pc .header .nav_btn:hover > a .triangle {
    display: none;
}
#header_pc .header .sub_nav {
    position: absolute;
    top: 100%;
    left: 0;
    display: none;
    padding: 2.4em 0;
    width: 100%;
    color: #333;
    background: rgba(52, 60, 72, 0.95);
}
#header_pc .header .sub_nav .inner {
    margin: 0 auto;
    width: 1024px;
}
#header_pc .header .sub_nav .nav_box.mb {
    margin-bottom: 16px;
}
#header_pc .header .sub_nav h2 {
    margin: 0 auto 20px;
    padding-bottom: .4em;
    color: #fff;
    font-size: 185.71429%;
    border-bottom: 1px solid #6b7274;
}
#header_pc .header .sub_nav h3 {
    margin: 0 auto;
    padding: 1em;
    width: auto;
    font-size: 114.28571%;
    background: #fff;
    border-left: 4px solid #b7c5ce;
}
#header_pc .header .sub_nav a {
    display: block;
}
#header_pc .header .gnav01 .sub_nav a.outsite {
    position: relative;
}
#header_pc .header .gnav01 .sub_nav a.outsite::after {
    content: '';
    width: 14px;
    height: 14px;
    background: url(/shingaku/p/img/top/link_outsite_01.svg);
    background-size: contain;
    display: block;
    position: absolute;
    top: 2px;
    right: 2px;
}
#header_pc .header .sub_nav a h3 {
    color: #333333;
}
#header_pc .header .sub_nav a:hover {
    text-decoration: none;
    opacity: 0.7;
    filter: alpha(opacity=70);
}
#header_pc .header .sub_nav a.oth_btn h3, #header_pc .header .sub_nav a.faq_btn h3 {
    color: #333;
}
#header_pc .header .sub_nav a.faq_btn .txt_q {
    margin-right: .2em;
    color: #00a0e6;
    font-size: 128.57143%;
}
#header_pc .header .sub_nav a.faq_btn .txt_a {
    margin: auto .2em;
    color: #ec1e62;
    font-size: 128.57143%;
}
#header_pc .header .sub_nav a.off {
    position: relative;
    cursor: default;
}
#header_pc .header .sub_nav a.off:hover {
    opacity: 1;
    filter: alpha(opacity=100);
}
#header_pc .header .sub_nav .sub_list {
    padding: 0 .8em;
    background: #e8eef0;
}
#header_pc .header .sub_nav .sub_list.mb {
    margin-bottom: 16px;
}
#header_pc .header .sub_nav .sub_list li {
    display: block;
    margin: 0;
    border-top: 1px solid #cbd0d2;
}
#header_pc .header .sub_nav .sub_list li:first-child {
    border-top: none;
}
#header_pc .header .sub_nav .sub_list li a {
    position: relative;
    padding: 1em 0 1em 1.5em;
}
#header_pc .header .sub_nav .sub_list li a.off {
    color: #bbb;
}
#header_pc .header .sub_nav .sub_list li a:before {
    position: absolute;
    top: 50%;
    left: .5em;
    display: block;
    margin-top: -5px;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-left-color: #333;
    content: "";
}
#header_pc .header .sub_nav .sub_list li a:after {
    position: absolute;
    top: 50%;
    left: .3em;
    display: block;
    margin-top: -5px;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-left-color: #e8eef0;
    content: "";
}
#header_pc .header .sub_nav .col {
    float: left;
    margin-right: 16px;
    padding: 0;
    width: 330px;
}
#header_pc .header .sub_nav .col.last {
    margin-right: 0;
}
#header_pc .header .sub_nav .col > li {
    display: block;
    margin-bottom: 16px;
}
#header_pc .header .gnav01 .sub_nav h2 {
    color: #97cc04;
}
#header_pc .header .gnav01 .sub_nav h3 {
    position: relative;
    padding-top: 0;
    padding-bottom: 0;
    height: 60px;
    color: #333;
    line-height: 60px;
    border-left-color: #97cc04;
    box-sizing: border-box;
}
#header_pc .header .gnav01 .sub_nav h3.line2 {
    padding-top: 12px;
    line-height: 1.2;
}
#header_pc .header .gnav01 .sub_nav h3:before {
    position: absolute;
    top: 50%;
    right: .1em;
    display: block;
    margin-top: -6px;
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-left-color: #97cc04;
    content: "";
}
#header_pc .header .gnav01 .sub_nav h3:after {
    position: absolute;
    top: 50%;
    right: .3em;
    display: block;
    margin-top: -6px;
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-left-color: #fff;
    content: "";
}
#header_pc .header .gnav01 .sub_nav li {
    float: left;
    margin-right: 16px;
    width: 192px;
}
#header_pc .header .gnav01 .sub_nav li.last {
    margin-right: 0;
}
#header_pc .header .gnav01 .sub_nav a.off:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    margin: 0;
    padding-top: 90px;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 142.85714%;
    text-align: center;
    line-height: 100%;
    background: rgba(0, 0, 0, 0.8);
    content: "近日公開";
    box-sizing: border-box;
}
#header_pc .header .gnav02 .sub_nav h2 {

    color: #009af5;
}
#header_pc .header .gnav02 .sub_nav h3, #header_pc .header .gnav02 .sub_nav h4 {
    position: relative;
    padding-top: 0;
    padding-bottom: 0;
    height: 60px;
    color: #333;
    line-height: 60px;
    border-left-color: #009af5;
    box-sizing: border-box;
}
#header_pc .header .gnav02 .sub_nav h3.line2, #header_pc .header .gnav02 .sub_nav h4.line2 {
    padding-top: 12px;
    line-height: 1.2;
}
#header_pc .header .gnav02 .sub_nav h4 {
    margin: 0;
    padding: .5em 1em;
    height: auto;
    line-height: 1.4;
    background: #fff;
    border-left: 4px solid #009af5;
}
#header_pc .header .gnav02 .sub_nav a h3:before, #header_pc .header .gnav02 .sub_nav a h4:before {
    position: absolute;
    top: 50%;
    right: .1em;
    display: block;
    margin-top: -6px;
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-left-color: #009af5;
    content: "";
}
#header_pc .header .gnav02 .sub_nav a h3:after, #header_pc .header .gnav02 .sub_nav a h4:after {
    position: absolute;
    top: 50%;
    right: .3em;
    display: block;
    margin-top: -6px;
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-left-color: #fff;
    content: "";
}
#header_pc .header .gnav01 .sub_nav .col01, #header_pc .header .gnav02 .sub_nav .col01 {
    float: left;
    margin-right: 16px;
    width: 244px;
}
#header_pc .header .gnav02 .sub_nav .col01 .nav_box.mb {
    margin-bottom: 16px;
}
#header_pc .header .gnav02 .sub_nav .col01 .sub_list a {
    color: #333;
}
#header_pc .header .gnav02 .sub_nav .col02 {
    float: right;
    width: 504px;
}
#header_pc .header .gnav02 .sub_nav .col02 ul {
    padding: 20px;
    background: #e8eef0;
    overflow: hidden;
}
#header_pc .header .gnav02 .sub_nav .col02 ul li {
    float: left;
    margin-right: 12px;
    margin-bottom: 9px;
    width: 224px;
}
#header_pc .header .gnav02 .sub_nav .col02 ul li:nth-child(2n) {
    margin-right: 0;
}
#header_pc .header .gnav02 .sub_nav .col02 ul li:nth-child(3n), #header_pc .header .gnav02 .sub_nav .col02 ul li:nth-child(3n) {
    margin-bottom: 0;
}
#header_pc .header .gnav02 .sub_nav .col02 ul li h3 {
    padding: .5em 0;
}
#header_pc .header .gnav03 .sub_nav h2 {
    color: #f5565b;
}
#header_pc .header .gnav03 .sub_nav h3 {
    position: relative;
    padding-top: 0;
    padding-bottom: 0;
    height: 60px;
    color: #333;
    line-height: 60px;
    border-left-color: #f5565b;
    box-sizing: border-box;
}
#header_pc .header .gnav03 .sub_nav h3.line2 {
    padding-top: 12px;
    line-height: 1.2;
}
#header_pc .header .gnav03 .sub_nav a h3:before {
    position: absolute;
    top: 50%;
    right: .1em;
    display: block;
    margin-top: -6px;
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-left-color: #f5565b;
    content: "";
}
#header_pc .header .gnav03 .sub_nav a h3:after {
    position: absolute;
    top: 50%;
    right: .3em;
    display: block;
    margin-top: -6px;
    width: 0;
    height: 0;
    border: 6px solid transparent;
    border-left-color: #fff;
    content: "";
}
#header_pc .header .gnav03 .sub_nav .col01 a.off:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    margin: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 142.85714%;
    text-align: center;
    line-height: 100%;
    background: rgba(0, 0, 0, 0.8);
    content: "";
    box-sizing: border-box;
}
#header_pc .header .gnav03 .sub_nav .nav_box .sub_list {
    display: table;
    table-layout: fixed;
    width: 100%;
    height: 76px;
    box-sizing: border-box;
}
.app_order {
    display: block !important;
    position: absolute;
    top: 15px;
    left: 320px;
}
.app_order:hover {
    opacity: 0.5;
}
/* add 20161222 */
.bx-wrapper .bx-controls-direction a {
    z-index: 500;
}
.nav_block.fixed {
    position: fixed;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;






    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
    z-index: 1000000;
}
.nav_block.fixed .wrap {
    position: static !important;
}
#header_pc .header .gnav > li.active a .btn {
    color: #fff;
    background: #455258;
}
#header_pc .header .gnav > li.gnav01.active a .btn {
    background: #97cc04;
}
#header_pc .header .gnav > li.gnav02.active a .btn {
    background: #009af5;
}
#header_pc .header .gnav > li.gnav03.active a .btn {
    background: #f5565b;
}
#header_pc .header .gnav > li:hover a .btn, #header_pc .header .gnav > li .gnav_selected .btn {
    background: #455258;
}
#header_pc .header .gnav > li.gnav01:hover a .btn, #header_pc .header .gnav > li.gnav01 .gnav_selected .btn {
    background: #6dc706;
}
#header_pc .header .gnav > li.gnav02:hover a .btn, #header_pc .header .gnav > li.gnav02 .gnav_selected .btn {
    background: #1085ff;
}
#header_pc .header .gnav > li.gnav03:hover a .btn, #header_pc .header .gnav > li.gnav03 .gnav_selected .btn {
    background: #fc2c44;
}
/* add 20170123 */
#header_pc .header .sub_nav .inner {
    position: relative;
}
#header_pc .header .sub_nav .inner .close_icon {
    position: absolute;
    top: -32px;
    right: 0;
    width: 2em;
    height: 2em;
    box-sizing: border-box;
    color: #000;
    font-weight: bold;
    line-height: 1em;
    text-align: center;
    background: #fff;
    border: 2px solid #000;
    border-radius: 50%;
    transform: rotate(45deg);
    cursor: pointer;
}
#header_pc .header .sub_nav .inner .close_icon::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 0;
    border-top: 2px solid #000;
    box-sizing: border-box;
    transform: translate(-50%, -50%);
}
#header_pc .header .sub_nav .inner .close_icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 12px;
    border-left: 2px solid #000;
    box-sizing: border-box;
    transform: translate(-50%, -50%);
}
#header_pc .header .sub_nav .inner .close_icon:hover {
    opacity: .7;
    transition: all .2s;
}
#header_pc .header {
    z-index: 999;
}
.clear_layer {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 200;
    width: 100%;
    height: 100%;
    content: "";
}
/*-- Materiart add 20171117----------------- */
#header_pc .header .gnav01 .sub_nav h3, #header_pc .header .gnav02 .sub_nav h3, #header_pc .header .gnav03 .sub_nav h3 {
    border-left: 0;
    padding-left: 10px;
    padding-right: 10px;
}
#header_pc .header .gnav01 .sub_nav h3 img, #header_pc .header .gnav02 .sub_nav h3 img, #header_pc .header .gnav03 .sub_nav h3 img {
    margin-right: 5px;
    vertical-align: middle;
}
#header_pc .header .gnav01 .sub_nav h3.line2, #header_pc .header .gnav02 .sub_nav h3.line2, #header_pc .header .gnav03 .sub_nav h3.line2 {
    padding-top: 12px;
    line-height: 1.15;
}
#header_pc .header .gnav01 .sub_nav h3.line2 img, #header_pc .header .gnav02 .sub_nav h3.line2 img, #header_pc .header .gnav03 .sub_nav h3.line2 img {
    float: left;
}
#header_pc .header .gnav01 .sub_nav .col01, #header_pc .header .gnav02 .sub_nav .col01 {
    width: 330px;
}
#header_pc .header .gnav01 .sub_nav h3.nolink, #header_pc .header .gnav02 .sub_nav h3.nolink, #header_pc .header .gnav03 .sub_nav h3.nolink {
    opacity: 0.7;
}
#header_pc .header .gnav01 .sub_nav h3.nolink:hover, #header_pc .header .gnav02 .sub_nav h3.nolink:hover, #header_pc .header .gnav03 .sub_nav h3.nolink:hover {
    opacity: 0.7 !important;
}
/*-- Materiart add 20171127----------------- */
#header_pc .header .gnav01 .sub_nav a h3:before, #header_pc .header .gnav01 .sub_nav a h4:before, #header_pc .header .gnav01 .sub_nav a h3:after, #header_pc .header .gnav01 .sub_nav a h4:after, #header_pc .header .gnav02 .sub_nav a h3:before, #header_pc .header .gnav02 .sub_nav a h4:before, #header_pc .header .gnav02 .sub_nav a h3:after, #header_pc .header .gnav02 .sub_nav a h4:after, #header_pc .header .gnav03 .sub_nav a h3:before, #header_pc .header .gnav03 .sub_nav a h4:before, #header_pc .header .gnav03 .sub_nav a h3:after, #header_pc .header .gnav03 .sub_nav a h4:after {
    border: 0;
}
/* -----------------*/
/*外部から遷移してきた時資料請求BOXに入っていればalart-------------------------180404*/
#cartalert {
    position: absolute;
    top: 50px;
    left: 12px;
    width: 174px;
    height: 120px;
}
#cartalert a {
    display: block;
    text-decoration: none;
    background: #fdffd9;
    border: solid 5px #ff476a;
    box-shadow: 4px 4px 10px #00000073;
    padding-top: 11px;
    padding-bottom: 8px;
    border-radius: 14px;
    z-index: 1000;
    cursor: pointer;
    box-sizing: border-box;
    color: #000;
}
#cartalert a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10px 20px 10px;
    border-color: transparent transparent #ff476a transparent;
    position: absolute;
    top: -19px;
    right: 12px;
}
#cartalert a:hover {
    background: #fff;
    border: solid 5px #ff758e;
}
#cartalert a:hover::after {
    border-color: transparent transparent #ec7d92 transparent;
}
#cartalert a p {
    font-size: 14px;
    text-align: center;
    margin: 0;
    line-height: 1.4em;
    font-family: "ヒラギノ角ゴ ProN W3", "メイリオ", sans-serif;
}
#cartalert a > p > span {
    color: #d80a30;
    font-size: 30px;
    font-weight: bold;
    line-height: 1.1em;
}
#cartalertClose {
    width: 30px;
    height: 30px;
    box-sizing: border-box;
    position: absolute;
    top: -9px;
    left: -12px;
    background: #eee;
    border: solid 3px #BBB;
    border-radius: 50%;
    box-sizing: border-box;
}
#cartalertClose::before, #cartalertClose::after {
    content: '';
    width: 3px;
    height: 20px;
    display: block;
    position: absolute;
    top: 2px;
    left: 11px;
    background: #BBB;
    transform: rotate(45deg);
}
#cartalertClose::after {
    transform: rotate(-45deg);
}
#cartalertClose:hover {
    background: #888;
    border-color: #ddd;
}
#cartalertClose:hover::before, #cartalertClose:hover::after {
    background: #fff;
}
#header_pc .header .btns > li.btn > a.inbox {
    background: #d80a30;
}
#header_pc .header .btns > li.btn > a.inbox:hover {
    background: #ff3258;
}
#header_pc .header .btns > li.btn > a.inbox .badge {
    border: solid 2px #e73656;
    background: #fff;
    color: #e73656;
    font-weight: bold;
}
#header_sp {
    display: none;
}
@media screen and (max-width: 640px) {
    body {
        min-width: auto;
        min-width: unset;
        max-width: 640px;
        width: 100%;
        padding-top: 16vw;
    }
    body.bodyfixed{
        overflow:hidden;
    }
    #header_pc {
        display: none;
    }
    #header_sp {
        display: block;
    }
    #header_sp * {
        font-family: "Noto ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 'Noto Sans JP', "メイリオ", Meiryo, sans-serif;
    }
    #header_sp img {
        width: 100%;
        height: auto;
    }
    #header_sp .header {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 10000;
        width: 100%;
        background: #fff;
        min-height: 16vw;
        padding-bottom: 0 !important;
    }
    #header_sp .header header {
        position: relative;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        width: 100%;
        box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
        /* display: none; */
        /* height: 18vw; */
        padding: 1vw 0;
    }
    #header_sp .header .menu_btn {
        width: 14vw;
        padding: 1vw;
    }

    #header_sp .header a.link_search{
       width: 10vw;
       height: 12vw;
       padding: 0;
       display: block;
       overflow: hidden;
    }
    #header_sp .header a.link_search img{
        width:auto;
        height:100%;
        position: relative;
        left: -1vw;
    }

    #header_sp .header .siteid {

        display: block;
        width: 56vw;
        margin: 0;
        margin: 0 2.5vw;
    }
    #header_sp .header .siteid img {
        width: 100%;
        height: auto;
        display: block;
        margin: auto;
    }
    #header_sp .header .req_box {
        display: block;
        width: 12vw;
        height: 12vw;
        padding-left: 0;
        margin: 0 0;
    }
    #header_sp .header .req_box a {
        display: block;
        color: #fff
    }
    #header_sp .header .req_box a .btn {
        position: relative;
        display: block;
        width: 12vw;
        height: 12vw;
        padding: 0;
        padding-top: 0;
    }
    #header_sp .header .req_box a .btn img{
        /* width:auto; */
        /* height: 71%; */
    }
    #header_sp .header .req_box a:hover {
        text-decoration: none;
        opacity: 0.8;
        filter: alpha(opacity=80)
    }
    #header_sp .header .req_box a .badge {
        position: absolute;
        top: -1vw;
        right: -2vw;
        display: block;
        width: 6vw;
        height: 6vw;
        font-size: 3vw;
        line-height: 6vw;
        text-align: center;
        background: #e73656;
        -webkit-border-radius: 100%;
        -moz-border-radius: 100%;
        -ms-border-radius: 100%;
        border-radius: 100%;
        color: #fff;
    }
    /*drawer menu------------------------------------------*/
    #header_sp .drawer-overlay {
        width: 100%;
        height: 100vh;
        background: rgba(0, 0, 0, 0.6);
        position: fixed;
        z-index: 10001;
        top: 0;
        left: 0;
        height: 100%;
        display: none;
    }
    #header_sp .drawer-overlay:after {
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        width: 18vw;
        height: 18vw;
        color: #fff;
        font-size: 228.57143%;
        font-weight: bold;
        line-height: 1.4em;
        text-align: center;
        content: "×";
    }
    #header_sp .drawer-nav {
        position: fixed;
        top: 0;
        left: -82%;
        width: 82%;
        background: #f0f0eb;
        z-index: 10002;
        overflow: auto;
        height: 100vh;
        transition: left 0.3s ease-out;
    }
    #header_sp .drawer-nav.open {
        left: 0;
    }
    #header_sp .drawer-nav h2.siteid{
        margin:0;
    }
    #header_sp .drawer-nav h2.siteid a{
        display:block;
        padding:0;
        text-align: center;
        padding: 6vw 4vw;
    }
    #header_sp .drawer-nav h2.siteid a img{
        height:auto;10vw;
        width: 50vw;
    }

    #header_sp .drawer-nav > nav {
        padding-bottom: 20vh;
    }
    #header_sp .drawer-nav > nav > ul.drawer-menu {
        margin-top: 0;
    }
    #header_sp .drawer-nav > nav > ul.drawer-menu li.drawer-dropdown {}
    #header_sp .drawer-nav a {
        display: flex;
        align-items: center;
        margin: 0;
        padding: 2vw;
        font-size: 4vw;
        font-weight: 500;
        line-height: 1.6;
        text-decoration: none;
        position: relative;
        color: #000;
        border-bottom: solid 1px #d4d4d4;
    }
    #header_sp .drawer-nav a.drawer-menu-item::before{
        content:'';
        width:8vw;
        height:8vw;
        margin-right:2vw;
        display:block;
    }
    #header_sp .drawer-nav a.gnav01.drawer-menu-item::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav01.svg) no-repeat;
        background-size:contain;
    }
    #header_sp .drawer-nav a.gnav02.drawer-menu-item::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav02.svg) no-repeat;
        background-size:contain;
    }
    #header_sp .drawer-nav a.gnav03.drawer-menu-item::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav03.svg) no-repeat;
        background-size:contain;
    }
    #header_sp .drawer-nav a.gnav04.drawer-menu-item::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav04.svg) no-repeat;
        background-size:contain;
    }
    #header_sp .drawer-nav a.gnav05.drawer-menu-item::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav05.svg) no-repeat;
        background-size:contain;
    }
    
    #header_sp .drawer-nav a.gnav01.drawer-menu-item.open::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav01_w.svg) no-repeat;
        background-size:contain;
    }
    #header_sp .drawer-nav a.gnav02.drawer-menu-item.open::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav02_w.svg) no-repeat;
        background-size:contain;
    }
    #header_sp .drawer-nav a.gnav03.drawer-menu-item.open::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav03_w.svg) no-repeat;
        background-size:contain;
    }
    #header_sp .drawer-nav a.gnav04.drawer-menu-item.open::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav04_w.svg) no-repeat;
        background-size:contain;
    }
    #header_sp .drawer-nav a.gnav05.drawer-menu-item.open::before{
        background:url(/shingaku/res/images/navi_icon/icon_gnav05_w.svg) no-repeat;
        background-size:contain;
    }
    #header_sp .drawer-nav a.drawer-menu-item.open{
        background:#607D8B;
        color:#fff;
    }
    #header_sp .drawer-nav a.gnav01.drawer-menu-item.open{
        background:#6dc706;
        color:#fff;
    }
    #header_sp .drawer-nav a.gnav02.drawer-menu-item.open{
        background:#1085ff;
        color:#fff;
    }
    #header_sp .drawer-nav a.gnav03.drawer-menu-item.open{
        background:#fc2c44;
        color:#fff;
    }
    #header_sp .drawer-nav a img {
        display: block;
        width: 8vw;
        height: auto;
        margin-right: 2vw;
    }
    #header_sp .drawer-nav .item:after {
        content: '';
        width: 3vw;
        height: 3vw;
        display: block;
        border-top: solid 2px #b7b7b7;
        border-right: solid 2px #b7b7b7;
        transform: rotate(135deg);
        position: absolute;
        top: calc(50% - 1.5vw);
        right: 4vw;
    }
    #header_sp .drawer-nav .item.open:after {
        transform: rotate(-45deg);
        border-color:#fff;
        top: calc(50% - 1vw);
    }

    /*acc menu-----------------------------------------*/
    #header_sp .drawer-nav ul.sub_items:not(.open) {
        display: none;
    }

    #header_sp .drawer-nav ul.sub_items.open{
        background:#eceeef;
    }
    #header_sp .drawer-nav ul#green.sub_items.open{
        background:#f6ffed;
    }
    #header_sp .drawer-nav ul#blue.sub_items.open{
        background:#edf6ff;
    }
    #header_sp .drawer-nav ul#red.sub_items.open{
        background:#ffeff1;
    }

    #header_sp .drawer-nav ul.sub_items a {
        font-size: 3.4vw;
        font-weight: 400;
        padding-right: 8vw;
    }
    #header_sp .drawer-nav .sub_items a.ex_link {
        position: relative;
    }
    #header_sp .drawer-nav .sub_items a.ex_link:after {
        position: absolute;
        top: calc(50% - 2vw);
        right: 4vw;
        margin-top: 0;
        width: 4vw;
        height: 4vw;
        content: "";
        background: url(/shingaku/res/images/navi_icon/icon_linkother.svg) center center no-repeat;
        background-size: contain;
    }
    #header_sp .drawer-nav ul.sub_items a span {
        display: flex !important;
        justify-content: flex-start;
        align-items: center;
    }

/*
    #header_sp .drawer-nav .sub_items a img {
        border-radius: 5px;
        overflow: hidden;
        background: #666;
        border: solid 1px #666;
    }

    #header_sp .drawer-nav  #green.sub_items a img{
        background:#97cc04;
        border:solid 1px #97cc04;
    }
    #header_sp .drawer-nav  #blue.sub_items a img{
        background:#009af5;
        border:solid 1px #009af5;
    }
    #header_sp .drawer-nav  #red.sub_items a img{
        background:#f5565b;
        border:solid 1px #f5565b;
    }
*/

    #header_sp .drawer-nav a.irregular_link {
        position: relative;
        top: 4vw;
        left: 2vw;
        padding: 1vw 2vw;
        border: solid 2px #000;
        border-radius: 5px;
        text-decoration: none;
        display: block;
        width: 50vw;
        background: #3d3d3d;
        color: #fff;
        padding-right: 0;
        font-weight: 300;
    }
    #header_sp .drawer-nav a.irregular_link::after {
        content: '';
        width: 3vw;
        height: 3vw;
        display: block;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        transform: rotate(45deg);
        position: absolute;
        top: calc(50% - 1.5vw);
        right: 2vw;
    }
    /*外部から遷移してきた時資料請求BOXに入っていればalart-------------------------180404*/
    #header_sp #cartalert_sp {
        position: fixed;
        width: 40vw;
        height: 30vw;
        top: 20vw;
        right: 2vw;
        z-index: 10000;
    }
    #header_sp #cartalert_sp a {
        display: block;
        box-sizing: border-box;
        box-shadow: 3px 3px 7px #00000057;
        padding-top: 3vw;
        padding-bottom: 2vw;
        border-radius: 3vw;
        background: #fdffd9;
        border: solid 5px #e73656;
        text-decoration: none;
    }
    #header_sp #cartalert_sp a::after {
        content: '';
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 10px 20px 10px;
        border-color: transparent transparent #e73657 transparent;
        position: absolute;
        top: -16px;
        right: 3vw;
    }
    #header_sp #cartalert_sp a p {
        font-size: 3.5vw;
        line-height: 1.4em;
        text-align: center;
        margin: 0;
        padding-left: 0.5em;
        color: #000;
        font-family: "", sans-serif;
    }
    #header_sp #cartalert_sp a > p > span {
        color: #d80a30;
        font-size: 7vw;
        line-height: 1.2em;
        /*font-weight:bold;*/
    }
    #header_sp #cartalertClose_SP {
        width: 9vw;
        height: 9vw;
        box-sizing: border-box;
        position: absolute;
        top: -3.2vw;
        left: -3.2vw;
        background: #eee;
        border: solid 0.8vw #BBB;
        border-radius: 50%;
        box-sizing: border-box;
    }
    #header_sp #cartalertClose_SP::before, #cartalertClose_SP::after {
        content: '';
        width: 1.0vw;
        height: 6vw;
        display: block;
        position: absolute;
        top: 0.8vw;
        left: 3.2vw;

        background: #BBB;
        transform: rotate(45deg);
    }
    #header_sp #cartalertClose_SP::after {
        transform: rotate(-45deg);
    }
    #header_sp .header .btns > li.btn > a.inbox {
        background: #d80a30;
    }
    #header_sp .header .btns > li.btn > a.inbox:hover {
        background: #ff3258;
    }
    #header_sp .header .btns > li.btn > a.inbox .badge {
        border: solid 2px #e73656;
        background: #fff;
        color: #e73656;
        font-weight: bold;
    }
} /*@media screen and (max-width: 640px) */