@charset "utf-8";

@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Medium");
}

body {
  background: #fff;
  width: 100%;
  min-width: 1300px;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
  font-feature-settings : "palt";
  font-family:"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic M", "YuGothic", sans-serif; 
}

img {
  max-width: 100%;
  width: auto;
  height: auto;
  vertical-align: bottom;
}


/*PC用*/
@media print,screen  {
  .pc { display: block !important }
  .sp { display: none !important }
  .h_menu, #sp_global_nav { display: none; }
}
/* 横幅 */
.g-wrap-xs{width: 1000px; margin-right: auto; margin-left: auto;}
.g-wrap-sm{width: 1030px; margin-right: auto; margin-left: auto;}
.g-wrap-md{width: 1200px; margin-right: auto; margin-left: auto;}
.g-wrap-lg{width: 1318px; margin-right: auto; margin-left: auto;}

.link_blank{padding: 0 21px 0 0; background: url("../../images/src/icon/ico_04.png") no-repeat right center; background-size: 14px auto;}
.maker{display: inline; background:linear-gradient(transparent 60%, #FFE168 60%);}
.maker02{color: #000; font-weight: bold; background: #FFE168;}

.common_tit{margin-bottom: 61px; font-size: 32px; font-weight: bold; line-height: 1;}
.common_tit span{display: block; padding: 0 0 19px; color: #AD1F24; font-size: 18px; font-weight: bold; line-height: 1;}

#header{margin: 0 auto; padding: 20px 0 0; width: 100%; height: 87px; box-sizing: border-box;}
#header .g-wrap-md{align-items: stretch;}
#header .logo{width: 520px;}
#header .logo img{width: 100%; max-width: 377px;}
#header .logo a{justify-content: flex-start; align-items: center;}
#header .logo a span{display: inline-block; padding: 5px 0 0 16px; font-size: 14px; letter-spacing: 0.06em; line-height: 1.5;}
#header .header_info{margin-left: auto; margin-right: 22px; width: 324px; text-align: center; letter-spacing: 0.06em;}
#header .header_info .member{font-size: 16px; font-weight: bold; line-height: 1.2;}
#header .header_info .member small{}
#header .header_info .member span{color: #AD1F24; font-size: 26px; font-weight: bold;}
#header .header_info .member span small{color: #AD1F24; font-size: 16px; font-weight: bold;}
#header .header_info .gift_cg{width: 100%;}
#header .header_info .gift_cg a{display: block; padding: 10px 0; font-size: 14px; line-height: 1; text-align: center; background: #E4E4E4; border-radius: 5px;}
#header .header_info .gift_cg a:hover{color: #fff; background: #3d3d3d;}
#header .btn_contact{width: 320px; position: relative;}
#header .btn_contact{display: block; padding: 23px 0; color: #fff; font-size: 16px; font-weight: bold; line-height: 1; text-align: center; background-color: #AD1F24; border-radius: 50px; background-image: url("../../images/src/icon/ico_01.png"), url("../../images/src/icon/ico_02.png"); background-repeat: no-repeat; background-position: 29px center, right 29px center; background-size: 22px auto, 12px auto; border: 2px solid #AD1F24; cursor: pointer;}
#header .btn_contact.active{background-image: url("../../images/src/icon/ico_01.png"), url("../../images/src/icon/ico_02_on.png");}
#header .btn_contact .dropdown{z-index: 1000; position: absolute; right: 0; top: 80px; width: 468px; display: none; border: 2px solid #000; background-color: #fff; box-shadow: 1px 1px 10px #eee, -1px -1px 10px #eee;}
#header .btn_contact .dropdown li{border-bottom: 1px solid #E4E4E4; background: url("../../images/src/icon/ico_03_on.png") no-repeat right 20px center; background-size: 9px auto; position: relative;}
#header .btn_contact .dropdown li:last-of-type{border-bottom: none;}
#header .btn_contact .dropdown li span{width: 28px; position: absolute; right: 20px; top: -16px;}
#header .btn_contact .dropdown li a{display: block; padding: 27px 0 27px 60px; font-size: 16px; font-weight: bold; line-height: 1; text-align: left; background-repeat: no-repeat; background-position: 23px center;}
#header .btn_contact .dropdown li:hover{background-color: #E4E4E4;}
#header .btn_contact .dropdown li:first-of-type a{background-image: url("../../images/src/icon/ico_05.png"); background-size: 25px auto;}
#header .btn_contact .dropdown li:nth-of-type(2) a{background-image: url("../../images/src/icon/ico_06.png"); background-size: 23px auto;}
#header .btn_contact .dropdown li:nth-of-type(3) a{background-image: url("../../images/src/icon/ico_07.png"); background-size: 21px auto;}

#header .btn_contact_sp,
#header .btn_menu{display: none;}

#gnav{margin: 0 auto; width: 100%;}
#gnav .menu{}
#gnav .menu li{padding: 20px 0 12px; width: calc(100% / 5);border-bottom: 6px solid #fff; position: relative;}
#gnav .menu li a{display: block; padding: 10px 0; font-size: 16px; font-weight: bold; line-height: 1; text-align: center; border-left: 1px solid #E4E4E4;}
#gnav .menu li a span{vertical-align: text-top;}
#gnav .menu li .pulldown{z-index: 1000; position: absolute; left: 0; top: 74px; width: 242px; background-color: #fff;}
#gnav .menu li .pulldown li{padding: 0; width: 100%; border: none; box-shadow: 0px 4px 4px -1px #ccc inset;}
#gnav .menu li .pulldown li a{padding: 15px 20px; text-align: left; border: none; background: url("../../images/src/icon/ico_03_on.png") no-repeat right 20px center; background-size: 7px auto;}
#gnav .menu li .pulldown li a:hover{background-image: url("../../images/src/icon/ico_14.png");}
#gnav .menu li > .pulldown{height: 0; overflow: hidden;}
#gnav .menu li:hover > .pulldown{height: 45px;overflow: visible;}
#gnav .menu li:last-of-type a{border-right: 1px solid #E4E4E4;}
#gnav .menu li:hover{border-bottom: 6px solid #AD1F24;}
#gnav .menu li a:hover{color: #AD1F24;}
#gnav .menu li.current{border-bottom: 6px solid #AD1F24;}
#gnav .menu li.current a{color: #AD1F24;}

#footer{margin: 0 auto; width: 100%;}
#footer .footer_contact{padding: 90px 0 87px; width: 100%; text-align: center; letter-spacing: 0.06em; background: url("../../images/src/common/bg_footer_contact.png") no-repeat center top;}
#footer .footer_contact .common_tit{margin-bottom: 61px;}
#footer .footer_contact .common_tit span{}
#footer .footer_contact .contact_menu{}
#footer .footer_contact .contact_menu li{padding: 80px 0 38px; width: 585px; background: url("../../images/src/common/bg_footer_menu.png") repeat; position: relative; border-radius: 10px;}
#footer .footer_contact .contact_menu li .contact_ico{margin: 0 auto; width: 133px; position: absolute; left: 0; right: 0; top: -87px;}

#footer .footer_contact .contact_menu li .contact_copy{margin-bottom: 19px; font-size: 26px; font-weight: bold; line-height: 1;}
#footer .footer_contact .contact_menu li .contact_lead{margin-bottom: 30px; font-size: 16px; font-weight: bold; line-height: 1;}
#footer .footer_contact .contact_menu li .contact_lead span{color: #AD1F24; font-weight: bold;}
#footer .footer_contact .contact_menu li .contact_btn{margin: 0 auto; width: 346px;}
#footer .footer_contact .contact_menu li .contact_btn a{display: block; padding: 23px 0; color: #fff; font-size: 18px; font-weight: bold; line-height: 1; background-color: #AD1F24; border: 2px solid #AD1F24; background-image: url("../../images/src/icon/ico_03.png"); background-repeat: no-repeat; background-position: right 20px center; background-size: 7px auto;}
#footer .footer_contact .contact_menu li .contact_btn a:hover{opacity: 0.6; filter: alpha(opacity=60); -moz-opacity: 0.6;/*color: #000; background-color: #fff; background-image: url("../../images/src/icon/ico_03_on.png");*/}
#footer .footer_contact .contact_menu li:nth-of-type(2) .contact_lead span{color: #1F4AAD;}
#footer .footer_contact .contact_menu li:nth-of-type(2) .contact_btn a{background-color: #1F4AAD; border: 2px solid #1F4AAD;}
#footer .footer_contact .contact_menu li:nth-of-type(2) .contact_btn a:hover{opacity: 0.6; filter: alpha(opacity=60); -moz-opacity: 0.6;}

#footer .footer_contents{margin: 0 auto; padding: 50px 0 22px; width: 100%; background: #3D3D3D; position: relative;}
#footer .footer_contents .g-wrap-md{padding: 0 0 40px;}
#footer .footer_contents .footer_logo{align-items: center; width: 100%; width: 594px;}
#footer .footer_contents .footer_logo img{width: 100%; max-width: 366px;}
#footer .footer_contents .footer_logo span{padding: 7px 0 0; color: #fff; font-size: 14px; letter-spacing: 0.06em; line-height: 1;}

#footer .footer_contents .footer_menu{width: 562px;}
#footer .footer_contents .footer_menu ul{padding: 0 0 0 30px; width: 260px; border-left: 1px solid #6D6D6D; box-sizing: border-box;}
#footer .footer_contents .footer_menu ul:nth-of-type(2){width: 300px;}
#footer .footer_contents .footer_menu ul li{margin-bottom: 18px; padding: 0 0 0 22px; width: 100%; background: url("../../images/src/icon/ico_03.png") no-repeat left center; background-size: 7px auto;}
#footer .footer_contents .footer_menu ul li:last-of-type{margin-bottom: 0;}
#footer .footer_contents .footer_menu ul li a{display: inline-block; color: #fff; font-size: 16px; line-height: 1;}
#footer .footer_contents .footer_menu ul li a small{display: inline;vertical-align: text-top;}
#footer .footer_contents .footer_menu ul li a:hover{text-decoration: underline;}
#footer .footer_contents small{display: block; width: 100%; color: #ABABAB; font-size: 12px; line-height: 1; text-align: center;}
#footer .pagetop{width: 40px; position: absolute; right: 0; top: -40px;}

#fixed_menu{width: 76px; position: fixed; right: 0; top: 200px;}
#fixed_menu li{}
#fixed_menu li + li{margin-top: 14px;}

/*SP用*/
@media screen and (max-width:640px) {
  .pc { display: none !important }
  .sp { display: block !important }
  img { max-width: 100%; height: auto; width: auto; }
  body { min-width: auto !important; overflow: inherit !important; }
  .sp_tac { text-align: center !important; }
  .sp_tar { text-align: right !important; }
  .sp_mb15 { margin-bottom: 15px !important; }
  .sp_mb20 { margin-bottom: 20px !important; }
  div, p, dd, dl, dt, th, td, span, li { box-sizing: border-box; }
    
    /* 横幅 */
    .g-wrap-xs,
    .g-wrap-sm,
    .g-wrap-md,
    .g-wrap-lg{width: 100%;}
    
    .link_blank{padding: 0 4.685vw 0 0; background: url("../../images/src/icon/ico_04.png") no-repeat right center; background-size: 3.14vw auto;}
    .maker{display: inline; background:linear-gradient(transparent 60%, #FFE168 60%);}
    
    .common_tit{margin-bottom: 16vw; font-size: 5.314vw; font-weight: bold; line-height: 1;}
    .common_tit span{display: block; padding: 0 0 2.5vw; color: #AD1F24; font-size: 3.381vw; font-weight: bold; line-height: 1;}
    
    #header{margin: 0 auto; padding: 2.415vw 3.623vw 2.415vw 2.536vw; width: 100%; height: auto; background: #fff; box-sizing: border-box; position: fixed; z-index: 1000;}
    #header .g-wrap-md{align-items: center;}
    #header .logo{width: 70%;}
    #header .logo img{width: 100%; max-width: 74.588%;}
    #header .logo a{justify-content: flex-start; align-items: center;}
    #header .logo a span{display: inline-block; padding: 0 0 0 1.449vw; font-size: 1.923vw; letter-spacing: 0.06em; line-height: 2.898vw;}
    
    #header .btn_contact_sp{display: block; margin-left: auto; margin-right: 1.69vw; width: 11.583%; cursor: pointer;}
    #header .btn_menu{display: block; width: 11.583%; cursor: pointer;}
    
    /*#header .header_info{display: flex; justify-content: space-between; margin-left: 0; margin-right: 0; padding: 2.415vw 0 0 1.086vw; width: 100%; text-align: center; letter-spacing: 0.06em; box-sizing: border-box;}    
    #header .header_info .member{width: 52%; font-size: 3.623vw; font-weight: bold; line-height: 5.642vw; text-align: left;}
    #header .header_info .member small{display: block; font-size:2.898vw;}
    #header .header_info .member span{color: #AD1F24; font-size: 5.797vw; font-weight: bold;}
    #header .header_info .member span small{display: inline-block; color: #AD1F24; font-size: 3.381vw; font-weight: bold;}
    #header .header_info .gift_cg{width: 47%;}
    #header .header_info .gift_cg a{display: block; padding: 1.811vw 0; font-size: 3.14vw; line-height: 4.227vw; text-align: center; background: #E4E4E4; border-radius: 5px;}
    #header .header_info .gift_cg a:hover{color: #fff; background: #3d3d3d;}*/
    #header .btn_contact{display: none;}
    
    #gnav{}
    
    #footer{margin: 0 auto; width: 100%;}
    #footer .footer_contact{padding: 9vw 6.28vw 12vw; width: 100%; text-align: center; letter-spacing: 0.06em; background: url("../../images/src/common/sp/bg_footer_contact.png") no-repeat center top; background-size: 100% auto; box-sizing: border-box;}
    #footer .footer_contact .common_tit{margin-bottom: 16vw;}
    #footer .footer_contact .common_tit span{}
    #footer .footer_contact .contact_menu{width: 100%;}
    #footer .footer_contact .contact_menu li{padding: 9vw 0 5.314vw; width: 100%;; background: url("../../images/src/common/bg_footer_menu.png") repeat; position: relative; border-radius: 10px;}
    #footer .footer_contact .contact_menu li + li{margin-top: 14.251vw;}
    #footer .footer_contact .contact_menu li .contact_ico{margin: 0 auto; width: 15.579vw; position: absolute; left: 0; right: 0; top: -10.628vw;}
    #footer .footer_contact .contact_menu li .contact_copy{margin-bottom: 3vw; font-size: 4.589vw; font-weight: bold; line-height: 1;}
    #footer .footer_contact .contact_menu li .contact_lead{margin-bottom: 4.227vw; font-size: 3.381vw; font-weight: bold; line-height: 1;}
    #footer .footer_contact .contact_menu li .contact_lead span{color: #AD1F24; font-weight: bold;}
    #footer .footer_contact .contact_menu li .contact_btn{margin: 0 auto; width: 72.463vw;}
    #footer .footer_contact .contact_menu li .contact_btn a{display: block; padding: 4.227vw 0; color: #fff; font-size: 3.623vw; font-weight: bold; line-height: 1; background-color: #AD1F24; border: 2px solid #AD1F24; background-image: url("../../images/src/icon/ico_03.png"); background-repeat: no-repeat; background-position: right 3.623vw center; background-size: 1.086vw auto;}
    #footer .footer_contact .contact_menu li .contact_btn a:hover{opacity: 0.6; filter: alpha(opacity=60); -moz-opacity: 0.6;/*color: #000; background-color: #fff; background-image: url("../../images/src/icon/ico_03_on.png");*/}
    #footer .footer_contact .contact_menu li:nth-of-type(2) .contact_lead span{color: #1F4AAD;}
    #footer .footer_contact .contact_menu li:nth-of-type(2) .contact_btn a{background-color: #1F4AAD; border: 2px solid #1F4AAD;}
    #footer .footer_contact .contact_menu li:nth-of-type(2) .contact_btn a:hover{opacity: 0.6; filter: alpha(opacity=60); -moz-opacity: 0.6;}
    
    #footer .footer_contents{margin: 0 auto; padding: 12.681vw 3.623vw 22vw; width: 100%; background: #3D3D3D; position: relative; box-sizing: border-box;}
    #footer .footer_contents .g-wrap-md{display: block; padding: 0 0 10.386vw;}
    #footer .footer_contents .footer_logo{align-items: baseline; margin: 0 auto 6vw; width: 84.42vw;}
    #footer .footer_contents .footer_logo img{width: 100%; max-width:inherit;}
    #footer .footer_contents .footer_logo span.sp{display: block; padding: 0 0 1.449vw; width: 100%; color: #fff; font-size: 3.14vw; letter-spacing: 0.06em; line-height: 1; text-align: center;}
    
    #footer .footer_contents .footer_menu{width: 100%;}
    #footer .footer_contents .footer_menu ul{padding: 0; width: 100%; border-left: none; border-top: 1px solid #fff; box-sizing: border-box;}
    #footer .footer_contents .footer_menu ul:nth-of-type(2){width: 100%;}
    #footer .footer_contents .footer_menu ul li{margin-bottom: 0; padding: 0; width: 50%; background: url("../../images/src/icon/ico_03.png") no-repeat left center; background-size: 1.086vw auto; border-bottom: 1px solid #fff;}
    #footer .footer_contents .footer_menu ul li:nth-of-type(2n-0){border-left: 1px solid #fff; background-position: 3.623vw center;}
    #footer .footer_contents .footer_menu ul li a{display: block; padding: 5.434vw 0 5.434vw 3.26vw; color: #fff; font-size: 3.381vw; line-height: 3.864vw;}
    #footer .footer_contents .footer_menu ul li:nth-of-type(2n-0) a{padding: 5.434vw 0 5.434vw 6.763vw;}
    #footer .footer_contents .footer_menu ul li:last-of-type{margin-bottom: 0;}
    #footer .footer_contents .footer_menu ul li a:hover{text-decoration: underline;}
    #footer .footer_contents .footer_menu ul li a span{display: inline-block;}
    #footer .footer_contents small{display: block; width: 100%; color: #ABABAB; font-size: 12px; line-height: 1; text-align: center;}
    #footer .pagetop{width: 9.661vw; position: absolute; right: 0; top: -9.661vw;}
    
    #fixed_menu{width: 100%; position: fixed; right: inherit; top: inherit; left: 0; bottom: 0; z-index: 1000;}
    #fixed_menu li{width: 50%;}
    #fixed_menu li + li{margin-top: 0;}   
    
    .drawer{width: 100%; height: 100%; position: fixed;	left: 0; top: 0; overflow: scroll; z-index: 10000; display: none;}
    .drawer_header{align-items: center; margin: 0 auto; padding: 2.415vw 3.623vw 2.415vw 2.536vw; width: 100%; height: auto; background: #fff; box-sizing: border-box;}
    .drawer_header .logo{width: 70%;}
    .drawer_header .logo img{width: 100%; max-width: 74.588%;}
    .drawer_header .logo a{justify-content: flex-start; align-items: center;}
    .drawer_header .logo a span{display: inline-block; padding: 0 0 0 1.449vw; font-size: 1.923vw; letter-spacing: 0.06em; line-height: 2.898vw;}
    .drawer_header .btn_contact_sp{display: block; margin-left: auto; margin-right: 1.69vw; width: 11.583%; cursor: pointer;}
    
    .drawer_02{width: 100%; height: 100%; position: fixed;	left: 0; top: 0; overflow: visible; z-index: 10000; display: none;}
    .drawer_header_02{justify-content: flex-end; align-items: center; margin: 0 auto; padding: 2.415vw 3.623vw 2.415vw 2.536vw; width: 100%; height: auto; box-sizing: border-box;}
    .drawer_header_02 .btn_close_sp{display: block; margin-left: auto; margin-right: 12.5vw; width: 11.583%; cursor: pointer;}
    .dropdown_sp{margin: 0 auto; padding: 0 3.14vw; width: 92.753vw; display: block; box-sizing: border-box; border: 1px solid #000; background-color: #fff; box-shadow: 1px 1px 10px #eee, -1px -1px 10px #eee;}
    .dropdown_sp li{border-bottom: 1px solid #E4E4E4; background: url("../../images/src/icon/ico_03_on.png") no-repeat right center; background-size: 1.2vw auto; position: relative;}
    .dropdown_sp li:last-of-type{border-bottom: none;}
    .dropdown_sp li span{width: 4.1vw; position: absolute; right: 12.3vw; top: -6.6vw; z-index: 10001;}
    .dropdown_sp li a{display: block; padding: 5.797vw 0 5.797vw 7.125vw; font-size: 3.381vw; font-weight: bold; line-height: 1; text-align: left; background-repeat: no-repeat; background-position: 1.2vw center;}
    .dropdown_sp li:hover{background-color: #E4E4E4;}
    .dropdown_sp li:first-of-type a{background-image: url("../../images/src/icon/ico_05.png"); background-size: 3.743vw auto;}
    .dropdown_sp li:nth-of-type(2) a{background-image: url("../../images/src/icon/ico_06.png"); background-size: 3.743vw auto;}
    .dropdown_sp li:nth-of-type(3) a{background-image: url("../../images/src/icon/ico_07.png"); background-size: 3.743vw auto;}
    .drawer_header .btn_close{display: block; width: 11.583%; cursor: pointer;}    
    .drawer_menu{padding: 12vw 3.623vw; width: 100%; background: #3D3D3D; box-sizing: border-box;}
    .drawer_menu ul{width: 100%; border-left: none; border-top: 1px solid #fff;}
    .drawer_menu ul li{margin-bottom: 0; padding: 0; width: 50%; background: url("../../images/src/icon/ico_03.png") no-repeat left center; background-size: 1.086vw auto; border-bottom: 1px solid #fff;}
    .drawer_menu ul li:nth-of-type(2n-0){border-left: 1px solid #fff; background-position: 3.623vw center;}
    .drawer_menu ul li a{display: block; padding: 5.434vw 0 5.434vw 3.26vw; color: #fff; font-size: 3.381vw; line-height: 3.864vw;}
    .drawer_menu ul li a span{vertical-align: baseline;}
    .drawer_menu ul li:nth-of-type(2n-0) a{padding: 5.434vw 0 5.434vw 6.763vw;}
    .drawer_menu ul li:last-of-type{margin-bottom: 0;}
    .drawer_menu ul li a:hover{text-decoration: underline;}
    .drawer_menu ul li a span{display: inline-block;}
}

/* 印刷用 */
@media print {
  body { zoom: 0.6; -webkit-print-color-adjust: exact; }
}

/* 印刷用 IE10以上 */
@media print and (-ms-high-contrast:none) {
@page { size: A4; margin: 12.7mm 9.7mm; }
body { zoom: 1.8; width: 1200px; transform: scale(0.5); transform-origin: 0 0; }}