/*
  作成日: 20181205
  作成者: FOIS01
*/
.header { position: fixed; top: 0; left: 0; width: 100%; height: auto; z-index: 99; }
.showsub_nav { display: none; }
.header.fullheader { height: 100vh; background: rgba(0, 0, 0, .8); }
.header_top { background: #482F24; color: #fff; padding: 5px 0; }
.header_top_wrap { }
.head_h1 { font-weight: normal; line-height: 1.4; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.header_top_nav { justify-content: flex-end; width: 210px; }
.header_top_nav li { margin-left: 5px; line-height: 1; }
.header_top_nav li:first-child { margin-left: 0; }
.header_top_nav li img { vertical-align: middle; }
.header_top_nav a { color: #fff; display: inline-block; font-size: 1.3rem; transition: .3s all ease-in-out; vertical-align: middle; }
.header_top_nav_tour { padding-right: 10px; }
.header_top_nav_tour img { display: inline-block; margin-right: 5px; }
.header_top_nav li a:hover { opacity: .7; }
.header_middle { background: #fff; box-shadow: 3px 3px 3px rgba(0,0,0,.1); position: relative; z-index: 2; }
.header_middle_wrap { }
.header_middle_logo { }
.header_middle_logo a { display: block; height: 100%; width: 100%; }
.header_middle_nav { /*	max-width: 654px;
*/  max-width: 620px; min-width: 520px; width: 74%; }
.header_middle_nav a { align-items: center; color: #333; display: flex; height: 80px; text-align: center; width: 100%; }
.has_submenu a { cursor: pointer; padding-right: 20px; position: relative; }
.has_submenu a::after { background-image: url(../image-cmn/ico-arrow-01-down-black.png); background-repeat: no-repeat; background-size: contain; content: ""; height: 6px; position: absolute; top: calc(50% - 3px); right: 0; width: 8px; }
.corp_url img { height: 20px; width: auto; transition: .3s all ease-in-out; }
.corp_url:hover img,
.header_middle_logo:hover { opacity: .7; }
.header_middle_nav a:hover { color: #fa7d1d; }
.header_middle_nav a:hover::after { background-image: url(../image-cmn/ico-arrow-01-down-orange.png); }
.header_bottom { background: url(../image-cmn/bg-leaf-02.png) #fff repeat; padding: 30px 0; }
.header_bottom_wrapout { position: relative; }
.header_bottom_wrap.subnav_row .header_bottom_nav { display: flex; justify-content: flex-start; width: 100%; }
.header_bottom_wrap.subnav_row .header_bottom_nav li { margin-left: 6.5%; width: 29%; }
.header_bottom_wrap.subnav_row .header_bottom_nav li:first-child { margin-left: 0; }
.header_bottom_wrap.subnav_column { display: flex; justify-content: space-between; position: relative; }
.header_bottom_wrap.subnav_column::before,
.header_bottom_wrap.subnav_column::after { background: rgba(102, 51, 0, .1); content: ""; height: 100%; left: calc(100%/3); position: absolute; top: 0; width: 1px; }
.header_bottom_wrap.subnav_column::before { left: calc(100%/3); }
.header_bottom_wrap.subnav_column::before { left: calc(100% - 100%/3); }
.header_bottom_close { background: #d36f3e; border-radius: 100%; cursor: pointer; height: 40px; right: 30px; padding: 8px; position: absolute; top: -20px; text-align: center; width: 40px; z-index: 2; }
.header_bottom_wrap.subnav_column ul { width: 29%; }
.subnav_column .header_bottom_nav li { margin-top: 20px; }
.subnav_column .header_bottom_nav02 li { margin-top: 10px; }
.subnav_column .header_bottom_nav li:first-child { margin-top: 0; }
.header_bottom_wrap ul li a { color: #000; }
.header_bottom_wrap ul li a:hover { color: #f0580c; }
.header_bottom_close img { display: inline-block; height: auto; vertical-align: middle; width: 14px; }
.header_bottom_nav li a { align-items: center; display: flex; line-height: 1.4; width: 100%; }
.header_bottom_nav_ico { background: #fff; border-radius: 100px; height: 40px; margin-right: 15px; padding: 8px 5px; text-align: center; width: 40px; }
.header_bottom_nav_ico img { height: auto; max-height: 24px; max-width: 26px; width: auto; }
.header_bottom_nav .header_bottom_nav_txt span.smalltxt { color: #999; display: block; font-size: 1.3rem; }
.header_bottom_nav02 li a { display: block; padding-left: 20px; position: relative; }
.header_bottom_nav02 li a::before { background-image: url(../image-cmn/ico-arrow-02-right-brown.png); background-repeat: no-repeat; background-size: contain; content: ""; display: inline-block; height: 12px; left: 0; position: absolute; top: 5px; width: 7px; }
.sp_menu_sub_nav_lst li a[target="_blank"]::after , .sp_menu_main_nav a[target="_blank"]::after, .header_middle_nav a[target="_blank"]::after, .header_bottom_wrap a[target="_blank"]::after, .header_bottom_wrap [target="_blank"] .hasafter::after{ background: url(../image-cmn/ico-extendlink-black.png) no-repeat; background-size: contain; content: ""; display: inline-block; height: 14px; margin-left: 5px; vertical-align: middle; width: 15px; }
.header_middle_nav a[target="_blank"]:hover::after, .header_bottom_wrap a[target="_blank"]:hover::after, .header_bottom_wrap a[target="_blank"]:hover .hasafter::after { background-image: url(../image-cmn/ico-extendlink-orange.png);}
.noafter::after {display:none !important;}
.header_middle_nav li .hd_sphide { display: none; }
@media screen and (max-width:840px) {
.header_middle_nav li .hd_sphide { display: block; }
}
@media screen and (max-width:767px) {
.header.fullheader { position: absolute !important;top:0 !important; }
.head_h1 { font-size: 1.1rem; position: relative; z-index: 12; }
.header_middle_wrap { align-items: center; padding-right: 0; }
.header_middle_logo { width: 101px; }
.header_sp_nav { display: flex; width: 40px; }
.header_yoyaku { width: 100px; }
.header_yoyaku a { align-items: center; background: #ffc000; color: #fff; display: flex; font-size: 1rem; justify-content: center; height: 40px; padding: 5px; width: 100%; }
.header_yoyaku a img { display: inline-block; margin-right: 5px; vertical-align: middle; width: 22px; height: auto; }
.header_sp_menu_ico { background: #78192d; cursor: pointer; height: 40px; padding: 5px; text-align: center; width: 40px; }
.sp_menu_hide_ico { display: none; }
.header_sp_menu { background: #f4f4f4; display: none; padding-bottom: 60px; }
.header_sp_menu_in dt { background: #ccc; color: #fff; font-size: 1.5rem; padding: 5px 10px; }
.header_sp_menu_in dd { padding-left: 10px; padding-right: 10px; }
.sp_menu_main_nav { border-bottom: 1px solid #dedede; cursor: pointer; padding: 12px 20px 12px 0; position: relative; }
.sp_menu_main_nav a { color: #333; display: block; padding: 12px 0 12px 0; text-decoration: none; width: 100%; }
.sp_menu_main_nav.sp_menu_open::before { background: url(../image-cmn/ico-arrow-02-down-gray.png) no-repeat; background-size: contain; content: ""; height: 11px; position: absolute; right: 0; top: calc(50% - 5px); width: 18px; }
.header_sp_menu_in dd .sp_menu_wrap:last-child .sp_menu_sub_nav { margin-bottom: 10px; }
.header_sp_menu_in dd .sp_menu_wrap:last-child .sp_menu_main_nav { border-bottom: none; }
.toggle_on { border-bottom: none; }
.toggle_on::before { background-image: url(../image-cmn/ico-arrow-02-up-gray.png) !important; }
.sp_menu_sub_nav { background: #e8e8e8; padding: 10px 20px; }
.sp_menu_sub_nav_ttl { margin-bottom: 5px; margin-top: 20px; }
.sp_menu_sub_nav .sp_menu_sub_nav_ttl:first-child { margin-top: 0; }
.sp_menu_sub_nav_lst li a { color: #333; display: block; padding: 3px 10px 3px 15px; position: relative; text-decoration: none; }
.sp_menu_sub_nav_lst li a::before { background: url(../image-cmn/ico-arrow-02-right-gray.png) no-repeat; background-size: contain; content: ""; display: inline-block; height: 10px; left: 0; position: absolute; top: 9px; width: 7px; }
.sp_menu_nav_horizon { display: flex; padding: 10px 0; }
.sp_menu_nav_horizon li { border-left: 1px solid #dedede; width: 100%; }
.sp_menu_nav_horizon li:first-child { border-left: none; }
.sp_menu_nav_horizon li a { color: #333; display: block; padding: 5px; text-align: center; width: 100%; }
.sp_menu_nav_horizon li a span { display: block; }
.search_method_ico { margin-bottom: 5px; }
.sp_menu_homelink a { border-bottom: 1px solid #dedede; color: #333; display: block; padding: 15px 10px 10px 20px; position: relative; }
.sp_menu_homelink a::before { background: url(../image-cmn/ico-home-black.png) no-repeat; background-size: contain; content: ""; display: inline-block; height: 13px; left: 0; position: absolute; top: 19px; width: 15px; }
.header_sp_sns { margin: 0 auto; max-width: 350px; padding: 10px 10px 0; width: 100% !important; }
.header_sp_sns .ft_menu_sns_box { background: #fff !important; border: 1px solid #e8e8e8; padding: 15px 5% !important; }
.header_sp_sns .ft_menu_sns_reserve { flex-direction: column; }
.header_sp_sns .ft_menu_sns_reserve .btn_common { margin-bottom: 5px; width: 100% !important; }
.header_sp_sns .ft_menu_sns_reserve_note { color: #666 !important; font-size: 1.2rem; width: 100% !important; }
.header_sp_sns .ft_menu_sns_reserve_note br { display: none; }
.header_sp_sns .ft_menu_sns_reserve_freeline::before { background-image: url(../image-cmn/ico-freeline-gray.png) !important; }
.header_sp_sns .ft_menu_sns_reserve_freeline a { color: #666 !important; }
}
@media screen and (min-width:768px), print {
.header.pcfullheader { height: 100vh; background: rgba(0, 0, 0, .8); }
.head_h1 { font-size: 1.3rem; width: calc(100% - 210px); }
.header_middle_logo { padding: 18px 0; width: 171px; }
.header_middle_logo a img { max-height: 53px; }
}
