@charset "utf-8";
/*===Setup default===*/
* { margin: 0; padding: 0; transition: 0.4 all ease-in-out; }
*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
html { font-size: 62.5%; height: 100%; }
body { position: relative; line-height: 1.6; min-width: 320px; height: 100%; }
body, td, th { line-height: 1.6; color: #333; font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "メイリオ", serif; font-size: 1.4rem; }
td, th { vertical-align: baseline; }
img { vertical-align: top; max-width: 100%; height: auto; }
li { list-style: none; }
a { cursor: pointer; color: #333; text-decoration: none; }
a:hover { color: #217701; text-decoration: none; }
/*===clearfix===*/
.clearfix:before, .clearfix:after { display: table; content: " "; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1;
}
/*===共通項目===*/
#wrap_all { position: relative; overflow: hidden; min-height: 100%; }
.wrap { width: 100%; max-width: 1030px; margin: 0 auto; padding: 0px 15px; }
.boxlink { cursor: pointer; }
.f-left { float: left; }
.f-right { float: right; }
.clear { clear: both; }
.no-pd-bottom { padding-bottom: 0 !important; }
.no-pd-top { padding-top: 0 !important; }
.no-pd-left { padding-left: 0 !important; }
.no-pd-right { padding-right: 0 !important; }
.no-mg-bottom { margin-bottom: 0 !important; }
.no-mg-top { margin-top: 0 !important; }
.no-mg-left { margin-left: 0 !important; }
.no-mg-right { margin-right: 0 !important; }
.no-border { border: none !important; }
.no-border-left { border-left: none !important; }
.no-bg { background: none !important; }
.mg-bt5 { margin-bottom: 5px !important }
.mg-bt10 { margin-bottom: 10px !important }
.mg-bt15 { margin-bottom: 15px !important }
.mg-bt20 { margin-bottom: 20px !important }
.mg-bt25 { margin-bottom: 25px !important }
.mg-bt30 { margin-bottom: 30px !important }
.mg-bt35 { margin-bottom: 35px !important }
.mg-bt40 { margin-bottom: 40px !important }
.mg-bt50 { margin-bottom: 50px !important }
.mg-bt55 { margin-bottom: 55px !important }
.mg-bt60 { margin-bottom: 60px !important }
.mg-bt65 { margin-bottom: 65px !important }
.mg-bt70 { margin-bottom: 70px !important }
.mg-center { margin: 0 auto; }
.txt-left { text-align: left; }
.txt-right { text-align: right; }
.txt-center { text-align: center; }
.img-circle img { border-radius: 100%; }
/*image*/
.alignleft { display: inline; float: left; margin-right: 1.62em; }
.alignright { display: inline; float: right; margin-left: 1.62em; }
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }
img.alignleft, img.alignright, img.aligncenter { margin-bottom: 1.62em; background: #fff; }
/*===Header===*/
#hmpslide { position: relative; width: 100%; min-height: 480px; overflow: hidden; background: #000; }
.hm_bnnr { position: absolute; left: 0; bottom: 0; width: 100%; z-index: 1; }
.hm_bnnr img { width: 100%; height: auto; }
#hmpslide .hmpslide_top { position: absolute; top: 0; left: 0; width: 100%; z-index: 99999999; }
.hm_h1 { display: inline-block; margin: 0; color: #fff; font-weight: normal; }
.hm_slidecap { position: absolute; top: 75px; left: 0; width: 100%; text-align: center; z-index: 3; }
.hm_logo { display: none; margin-bottom: 30px; }
.hm_logo img { max-height: 479px; }
.hm_slide_arr { position: absolute; width: 100%; left: 0; bottom: 30px; text-align: center; z-index: 2; }
.hm_slide_arr img { max-height: 40px; animation: 1s ease 0s alternate none infinite running arrowbounce; }
/*追加 20180406 start*/
.hv_nav_social { float:  right; }
.hv_nav_social li {display: inline-block;padding: 0 3px;}
.hv_nav_social li a{display: block;}
.hv_nav_social li a:before {line-height: 0.9;color: #9e9e9e;font-family: "FontAwesome";font-size: 3rem; vertical-align: top;transition: 0.3s all ease-in-out;}
.social_twitter:before {content: "\f081";}
.social_instagram:before {content: "\f16d";}
.hv_nav_social li a:hover:before {color: #ffffff;}
/*追加 20180406 end*/
 @keyframes arrowbounce { 0% {
 transform: translateY(0px);
}
100% {
 transform: translateY(-20px);
}
}
.hv_nav_lang { float: right; text-align: right; }
.hv_nav_lang li { float: left; margin-left: 5px; }
.hv_nav_lang li:first-child { margin-left: 0px; }
.hv_nav_lang li a {display: block;padding: 1px 0;color: #ffffff;text-align: center;transition: 0.3s all ease-in-out;}
.hv_nav_lang li a:hover, .hv_nav_lang li a.active {background: #ffffff; color: #000000;}
#nav { top: 0; left: 0; width: 100%; background: #fff; -webkit-box-shadow: 3px 3px 3px -1px rgba(0,0,0,0.2); -moz-box-shadow: 3px 3px 3px -1px rgba(0,0,0,0.2); box-shadow: 3px 3px 3px -1px rgba(0,0,0,0.2); z-index: 99; }
#nav .hd_nav { overflow: hidden;/* max-width: 605px !important;*/ min-height: 20px; }
.hv_nav_lt li { display: inline-block; }
.hv_nav_lt li a { display: block; font-weight: bold; font-size: 1.4rem; }
/*===Main===*/
#main { position: relative; }
#main:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: rgba(102,102,102,0.2); background: -moz-linear-gradient(top, rgba(102,102,102,0.2) 0%, rgba(255,255,255,0) 100%); background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(102,102,102,0.2)), color-stop(100%, rgba(255,255,255,0))); background: -webkit-linear-gradient(top, rgba(102,102,102,0.2) 0%, rgba(255,255,255,0) 100%); background: -o-linear-gradient(top, rgba(102,102,102,0.2) 0%, rgba(255,255,255,0) 100%); background: -ms-linear-gradient(top, rgba(102,102,102,0.2) 0%, rgba(255,255,255,0) 100%); background: linear-gradient(to bottom, rgba(102,102,102,0.2) 0%, rgba(255,255,255,0) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#666666', endColorstr='#ffffff', GradientType=0 );
z-index: 99; }
/*===Footer===*/
/*#footer { position: absolute; bottom: 0; left: 0; width: 100%; }*/
#footer .ft_nav { background: #fff; padding: 15px 15px; text-align: center; }
#footer .ft_nav li { display: inline-block; border-left: 1px solid #333; line-height: 1.1; }
#footer .ft_nav li:first-child { border-left: none; }
#footer .ft_info { padding: 30px 15px; background: url(../images/common/ft_bg.png) #666 repeat; color: #fff; }
#footer .ft_info .ft_infoin { display: table; width: 100%; max-width: 550px; margin: 0 auto; }
#footer .ft_info .ft_infoleft { display: table-cell; text-align: left; vertical-align: middle; }
#footer .ft_info .ft_infoleft img { width: 192px; height: auto; }
#footer .ft_info .ft_inforight { display: table-cell; text-align: left; vertical-align: middle; }
#footer .ft_info .ft_inforight .ft_infotel {line-height:1.2; font-weight:bold; word-break: break-all; }
#footer .ft_info .ft_inforight .ft_infotel .fa { vertical-align: middle; }
#footer .ft_info .ft_inforight .ft_infotel a { color: #fff !important; }
#footer .ft_info .ft_inforight .ft_infoadd { font-size: 1.5rem; }
#footer .ft_copy { padding: 5px; background: #333333; color: #fff; text-align: center; }
#footer .backtotop { position: fixed; bottom: 80px; right: 10px; width: 50px; height: 50px; transition: 0.5s all linear; z-index: 12; }
#footer .backtotop a { display: block; width: 50px; height: 50px; padding-top: 20px; background: #333333; text-align: center; transition: 0.3s all ease-in-out; }
#footer .backtotop a:hover { background: #333; }
#footer .backtotop a img {height:8px;}
@media only screen and (max-width: 413px) {
#hmpslide .hmpslide_top { font-size: 0.9rem; }
/*.hm_h1 { padding-right: 95px; }*/
.hv_nav_lang { width: 95px; }
.hv_nav_lang li { width: 45px; }
}
@media only screen and (min-width: 413px) and (max-width: 749px) {
#hmpslide .hmpslide_top { font-size: 1.15rem; }
/*.hm_h1 { padding-right: 119px; }*/
.hv_nav_lang { width: 119px; }
.hv_nav_lang li { width: 57px; }
}
 @media only screen and (max-width: 749px) {
#nav { padding: 10px 15px; }
.hd_nav { position: relative; }
.btn_menuwrap { position: absolute; top: 0px; right: 0px; width: 20px; height: 20px; }
#btn_menu {position: relative;width: 12px;height: 12px;}
#btn_menu span {position: absolute;left: 0;background: #000000;width: 100%;height: 2px;-webkit-transition: -webkit-transform 0.35s ease-out 0s, opacity 0.35s ease-out 0.35s, top 0.35s ease-out 0.35s;-moz-transition: -webkit-transform 0.35s ease-out 0s, opacity 0.35s ease-out 0.35s, top 0.35s ease-out 0.35s;-o-transition: -webkit-transform 0.35s ease-out 0s, opacity 0.35s ease-out 0.35s, top 0.35s ease-out 0.35s;transition: -webkit-transform 0.35s ease-out 0s, opacity 0.35s ease-out 0.35s, top 0.35s ease-out 0.35s;}
#btn_menu span.top {top: 1px;}
#btn_menu span.middle {top: 5px;}
#btn_menu span.bottom {top: 9px;}
/*#btn_menu:hover span,*/ #btn_menu.active span { -webkit-transition: top 0.35s ease-out 0s, opacity 0.35s ease-out 0s, -webkit-transform 0.35s ease-out 0.35s; -moz-transition: top 0.35s ease-out 0s, opacity 0.35s ease-out 0s, -webkit-transform 0.35s ease-out 0.35s; -o-transition: top 0.35s ease-out 0s, opacity 0.35s ease-out 0s, -webkit-transform 0.35s ease-out 0.35s; transition: top 0.35s ease-out 0s, opacity 0.35s ease-out 0s, -webkit-transform 0.35s ease-out 0.35s; }
/*#btn_menu:hover span.top,*/ #btn_menu.active span.top { top: 5px; -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
/*#btn_menu:hover span.middle,*/ #btn_menu.active span.middle { opacity: 0; }
/*#btn_menu:hover span.bottom,*/ #btn_menu.active span.bottom { top: 5px; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.hv_navtg { display: none; width: 100%; }
.hv_nav_lt li { width: 48%; text-align: center; }
.hv_nav_lt li a { width: 100%; padding: 10px 20px; }
#hmpslide .hmpslide_top { padding: 15px 15px 10px; }
#footer .ft_nav li a { padding: 0px 10px; }
#footer .ft_info .ft_infoleft { width: 24%; text-align:center; }
#footer .ft_info .ft_infoleft img {height:108px;width:auto; }
#footer .ft_info .ft_inforight { width: 66%; }
#footer .ft_info .ft_inforight .ft_infotel { padding-left: 28px; font-size: 2.3rem; }
#footer .ft_info .ft_inforight .ft_infoadd { padding-left: 25px; }
#footer .ft_copy { font-size: 1.1rem; }
#footer {margin-bottom:56px;}
/*追加 20180406 start*/
.hdall {position:  fixed;top: 0;left:  0;right:  0;bottom: 0;overflow-y: auto;z-index: 99999999;}
.sphiden {display: none !important;}
.hm_h1 {width: 150px;line-height: 1.2;font-size: 1.4rem;}
.hv_nav_social li {vertical-align: top;}
.nav_icmenu {display: flex !important;justify-content:  center;align-items:  center;width: 26px;height: 26px;border-radius: 100%;background: #ffffff;}
/*.nav_icmenu span, .nav_icmenu span:before, .nav_icmenu span:after {position: absolute;width: 12px;height: 2px;background: #333333;transition-timing-function: ease;transition-duration: .15s;transition-property: transform;}
.nav_icmenu span {top: 9px;left: 7px;}
.nav_icmenu span:before {content: "";top: 3px; left: 0;}
.nav_icmenu span:after {content: "";top: 6px; left: 0;}
.navic_active span {top: 2px;background-color: transparent;transition-delay: .22s;}
.navic_active span:before {top: 0;transform: translate3d(0,10px,0) rotate(45deg);}
.navic_active span:after {top: 0; transform: translate3d(0,10px,0) rotate(-45deg);}*/
.nav_icmenu_text {color: #ffffff; font-size: 1rem;}
.nav_show { position: absolute; top: 0; right: 0;left: 0;width: 100%;min-height: 100%;color: #ffffff; z-index: 999999;}
.nav_lbl {padding: 2px 15px;background: #9e9e9e;}
.nav_show_box {height: 100%;position: relative;opacity: 0;transition: all 0.8s ease-in-out 0s;}
.nav_link01, .nav_link03 {display:flex;flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-content: flex-start; align-items: flex-start; padding: 15px;}
.nav_link01 li{display: inline-block; width: calc((100% - 15px) / 2); margin-left: 15px;}
.nav_link01 li:nth-child(2n-1) {margin-left: 0;}
.nav_link01 li a {display: block;padding: 4px; color: #ffffff; font-size: 2rem; text-align: center;}
.nav_link01 li a.nav_link_active01 {border-radius: 20px;background: #ffffff; color: #333333;}
.nav_link02 {padding: 8px 15px;}
.nav_link02 li {display: block; padding: 5px 0;}
.nav_link02 li a {display: block;position: relative; color: #ffffff; font-size: 2rem;}
.nav_link02 li a:after {content: "";position: absolute; top:50%; right: 0; width: 8px; height: 8px; border-top: 1px solid #ffffff; border-right: 1px solid #ffffff; transform-origin: 50% 0; transform: translateY(-50%) rotate(45deg);}
.nav_link_social li a {text-align: left;}
.nav_link_social li a:before {line-height: 0.9;padding-right: 12px;color: #9e9e9e;font-family: "FontAwesome";font-size: 3rem; vertical-align: text-bottom; }
.nav_link03 li{display: inline-block; width: calc((100% - 25px) / 2); margin-left: 25px;}
.nav_link03 li:nth-child(2n-1) {margin-left: 0;}
.nav_link03 li a {display: block;width:100%; height: 40px; padding:9px 5px;box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.45);color:#ffffff;text-align:center; font-size:1.2rem;vertical-align:middle; transition:0.3s all ease-in-out;}
.nav_link03 li .bytel {background: #a6956f;}
.nav_link03 li .byweb {background: #217701;}
.nav_link03 li a:before {content:""; display:inline-block; margin-right:5px; vertical-align:middle;} 
.nav_link03 li .bytel:before {width:18px; height:18px; background:url(../images/common/tel_icon.png) no-repeat; background-size:100% auto;}
.nav_link03 li .byweb:before { width:20px; height:24px; background:url(../images/common/calendar_icon.png) no-repeat; background-size:100% auto;}
.isloaded {position: fixed;top: -30px;right: -30px;width: 25px;height: 25px;border-radius: 50%;background: #333333;opacity: 1;transition: all 0.6s ease-in-out 0s;transform: scale(1);transform-origin: 50% 50%; z-index: -1;}
.showmenu .isloaded {transform: scale(200);}
.showmenu {opacity: 1;}
.footer_en {margin-bottom: 0 !important;}
/*追加 20180406 end*/

}
 @media only screen and (min-width: 750px) {
#hmpslide .hmpslide_top { padding: 30px 15px 0px; }
.hm_h1, #hmpslide .hmpslide_top { font-size: 1.6rem; }
/*.hm_h1 { padding-right: 145px; }*/
#btn_menu { display: none; }
.hv_nav_lt { text-align: center; }
.hv_nav_lt li a { padding: 20px 50px; }
.hv_nav_lang { width: 165px; }
.hv_nav_lang li { width: 80px; }
.hv_nav_lang li a { font-size: 1.5rem; }
#footer .ft_info .ft_infoleft { width: 40%; }
#footer .ft_info .ft_inforight { width: 60%; }
#footer .ft_nav li a { padding: 0px 15px; font-size: 1.6rem; }
#footer .ft_info .ft_inforight .ft_infotel { padding-left: 35px;font-size: 3rem; }
#footer .ft_info .ft_inforight .ft_infoadd { padding-left: 35px; }
/*追加 20180406 start*/
.hv_nav_social {padding-left: 8px;}
.pchiden {display: none !important;}
.nav_show, .nav_icmenu_text {display: none;}
/*追加 20180406 end*/
}

/*追加 20180316 start*/
#wrap_all {opacity: 0; background:#333333; }
.style_load {display:  flex;justify-content:  center;align-items:  center;position:  fixed;top: 0;right:  0;bottom:  0;left:  0;opacity: 1;background: #333333;font-size: 2rem;z-index: 99999999;}
.style_load_img {width: 99px;height: 207px;overflow: hidden;position: relative;padding-bottom: 5px;}
.style_load_img img {position: absolute; top: 220px; right: 0; bottom: 0; left: 0; width: 100%;max-width: 99px;}
.loading_number {color: #ffffff;text-align:  center;}
/*追加 20180316 end*/