/* ----------------------------------------------------------------------------------------------------------
共通
---------------------------------------------------------------------------------------------------------- */
/* header print対応20210204 */
@media print {
  .l-header {
    position: absolute !important;
  }
}
/* header top */
.l-header {
 width: 100%;
 height: 72px;
 position: fixed;
 z-index: 10;
 background-color: #fff;
 border-bottom: 2px #ccc solid;
 box-sizing: border-box;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header {
 width: 100%;
 height: 62px;
 }
}

.l-header__inner {
 width: 100%;
 position: relative;
 height: 70px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__inner {
 height: 60px;
 }
}

.l-header__inner--logoarea {
 width: 960px;
 margin: 0 auto;
 padding-top: 10px;
 text-align: left;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__inner--logoarea {
 width: 100%;
 padding-left: 10px;
 }
}

.l-header__logo {
 width: 175px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__logo {
 width: 140px;
 }
}

.l-header__link {
 display: inline-block;
 position: absolute;
 top: 20px;
 right: 295px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__link {
 /*display: none;*/
 right: 125px;
 }
}

/* 検索 */
.l-header__search {
 background: #fff;
 -webkit-border-radius: 3px;
 -moz-border-radius: 3px;
 border-radius: 3px;
 width: 180px;
 height: 30px;
 border: solid 1px #ccc;
 box-sizing: border-box;
 position: relative;
 display: block;
 overflow: hidden;
 position: absolute;
 top: 20px;
 right: 80px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__search {
 display: none;
 }
}

.l-header__search input[type="text"]{
 position: absolute;
 right: 0;
 top: 0;
 border: none;
 width: 100%;
 text-align: left;
 height: 30px;
 line-height: 30px;
 box-sizing: border-box;
 padding-left: 5px;
}

.l-header__search input[type="text"]:focus {
  outline: 0;
}

.l-header__search input[type="submit"] {
 cursor: pointer;
 background: url(../images/ic_header_search.png) no-repeat #cc0000;;
 position: absolute;
 width: 40px;
 height: 30px;
 right: 0;
 top: 0;
 outline : none;
 cursor: pointer;
 text-indent: -9999px;
 border-style: none;
 background-position: 50% 45%;
}

.l-header__search input::-webkit-input-placeholder {
 color: #333;
}

.l-header__search input::-moz-placeholder {
 color: #333; opacity: 1;
}

.l-header__search input:-ms-input-placeholder {
 color: #333;
}

/* オープン検索 SPのみ */
.l-header__nav--search__open,
.l-header__nav--search__btn {
 display: none;
 }
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__nav--search__open {
 background: url(../images/btn_nav_search_open.png);
 background-size: cover;
 text-indent: -9999px;
 display: block;
 width: 60px;
 height: 60px;
 position: absolute;
 top: 0;
 right: 60px;
 cursor: pointer;
 border-left: solid 1px #ccc;
 }

 .l-header__nav--search__close { 
 background:url(../images/btn_nav_close.png);
 background-size: cover;
 z-index: 5;
 height: 62px;
 border-bottom: solid 2px #eee;
 }

 .l-header__nav--search__btn {
 border-top: solid 2px #ccc;
 border-bottom: solid 2px #ccc;
 background-color: #eee;
 display: none;
 position: absolute;
 top: 60px;
 right: 0;
 width: 100%;
 box-sizing: border-box;
 }

 .l-header__nav--search__btn--search {
 background: #fff;
 -webkit-border-radius: 3px;
 -moz-border-radius: 3px;
 border-radius: 3px;
 width: 180px;
 height: 30px;
 margin: 20px auto 0;
 border: solid 1px #ccc;
 box-sizing: border-box;
 position: relative;
 display: block;
 overflow: hidden;
 }

 .l-header__nav--search__btn--search input[type="text"]{
 position: absolute;
 right: 0;
 top: 0;
 border: none;
 width: 100%;
 text-align: left;
 height: 30px;
 line-height: 30px;
 box-sizing: border-box;
 padding-left: 5px;
 }

 .l-header__nav--search__btn--search input[type="text"]:focus {
  outline: 0;
 }

 .l-header__nav--search__btn--search input[type="submit"] {
 cursor: pointer;
 background: url(../images/ic_header_search.png) no-repeat #cc0000;;
 position: absolute;
 width: 40px;
 height: 30px;
 right: 0;
 top: 0;
 outline : none;
 cursor: pointer;
 text-indent: -9999px;
 border-style: none;
 background-position: 50% 45%;
 }

 .l-header__nav--search__btn--close {
 padding: 15px 0;
 text-align: center;
 }

.l-header__nav--search__btn--close p {
 display: inline-block;
 -webkit-border-radius: 15px;
 -moz-border-radius: 15px;
 border-radius: 15px;
 height: 30px;
 line-height: 30px;
 color: #808080;
 text-decoration: none;
 background-color: #fff;
 padding: 0 20px 0 40px;
 cursor: pointer;
 }

.l-header__nav--search__btn--close span {
 line-height: 30px;
 color: #808080;
 position: relative;
 }

.l-header__nav--search__btn--close span:before {
 background-image: url(../images/ic_btn_close.png);
 content:"";
 position:absolute;
 top: 50%;
 left: -20px;
 width: 12px;
 height: 12px;
 margin-top: -6px;
 background-repeat: no-repeat;
 background-size: cover;
 }
}

/* オープンメニュー */
.l-header__nav--menu__open {
 background: url(../images/btn_nav_open.png);
 background-size: cover;
 text-indent: -9999px;
 display: block;
 width: 70px;
 height: 70px;
 position: absolute;
 top: 0;
 right: 0;
 cursor: pointer;
 border-left: solid 1px #ccc;
 }
 /********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__nav--menu__open {
 width: 60px;
 height: 60px;
 }
}

.l-header__nav--menu__close { 
 background:url(../images/btn_nav_close.png);
 background-size: cover;
 z-index: 100;
 height: 72px;
 border-bottom: solid 2px #eee;
}
 /********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__nav--menu__close { 
 height: 62px;
 }
}
 
.l-header__nav--menu__btn {
 border-top: solid 2px #ccc;
 border-left: solid 2px #ccc;
 border-bottom: solid 2px #ccc;
 background-color: #eee;
 display: none;
 position: absolute;
 top: 70px;
 right: 0;
 width: 375px;
 box-sizing: border-box;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__nav--menu__btn {
 border-left: none;
 top: 60px;
 right: 0;
 position: fixed;
 overflow-y: scroll;  
 z-index: 99;
 width:100%;
 height:100%;
 -webkit-overflow-scrolling: touch;
 margin-bottom: 60px;
 padding-bottom: 60px;
 }
}

.l-header__nav--menu__btn--ttl {
 padding: 25px 0 5px;
 color: #cc0000;
 text-align: center;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__nav--menu__btn--ttl {
 padding: 20px 0 5px;
 }
}

.l-header__nav--menu__btn ul {
 overflow: hidden;
}
 
.l-header__nav--menu__btn li a {
 float: left;
 width: 50%;
 display: block;
 padding: 8px 10px;
 border-right: solid 1px #ccc;
 border-bottom: solid 1px #ccc;
 background-color: #fff;
 position: relative;
 color: #333;
 text-decoration: none;
}

.l-header__nav--menu__btn li a:after {
 background-image: url(../images/ic_link_arrow.png);
 content:"";
 position: absolute;
 top: 50%;
 right: 5px;
 width: 5px;
 height: 8px;
 margin-top: -4px;
 background-repeat: no-repeat;
 background-size: cover;
}

.l-header__nav--menu__btn .l-header__nav--menu__btn--net li a {
 float: left;
 width: 100%;
 display: block;
 padding: 8px 10px;
 border-right: solid 1px #ccc;
 border-bottom: solid 1px #ccc;
 background-color: #fff;
 position: relative;
 color: #333;
 text-decoration: none;
}

.l-header__nav--menu__btn li a strong {
 font-size: 14px;
}

.l-header__nav--menu__btn li a strong.l-header__nav--menu__btn--name {
 font-size: 11px;
}

.l-header__nav--menu__btn li a span {
 position: relative;
}

.l-header__nav--menu__btn li a span:after {
 background-image: url(../images/ic_link_blank_black.png);
 content:"";
 position:absolute;
 top: 50%;
 right: -13px;
 width: 10px;
 height: 10px;
 margin-top: -5px;
 background-repeat: no-repeat;
 background-size: cover;
}

.l-header__nav--menu__btn li a span.u-linkbtn__pdf:after {
 background-image: none;
 content:"[PDF]";
 position:absolute;
 top: 10px;
 right: -35px;
 width: 30px;
 height: 10px;
 color: #808080;
 font-size: 10px;
}

.l-header__nav--menu__btn--close {
 padding: 20px 0;
 text-align: center;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-header__nav--menu__btn--close {
 padding: 15px 0;
 }
}

.l-header__nav--menu__btn--close p {
 display: inline-block;
 -webkit-border-radius: 15px;
 -moz-border-radius: 15px;
 border-radius: 15px;
 height: 30px;
 line-height: 30px;
 color: #808080;
 text-decoration: none;
 background-color: #fff;
 padding: 0 20px 0 40px;
 cursor: pointer;
}

.l-header__nav--menu__btn--close span {
 line-height: 30px;
 color: #808080;
 position: relative;
}

.l-header__nav--menu__btn--close span:before {
 background-image: url(../images/ic_btn_close.png);
 content:"";
 position:absolute;
 top: 50%;
 left: -20px;
 width: 12px;
 height: 12px;
 margin-top: -6px;
 background-repeat: no-repeat;
 background-size: cover;
}

/* グロナビ */
.l-globalnavi {
 width: 100%;
 padding-top: 72px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-globalnavi {
 display: none;
 }
}

.l-globalnavi__inner {
 width: 100%;
 padding: 10px 0;
 background-color: #cc0001;
}

.l-globalnavi__menu {
 width: 960px;
 margin: 0 auto;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
 border-radius: 5px;
 background-color: #fff;
 overflow: hidden;
}

.l-globalnavi__menu ul {
 font-size: 0;
}

.l-globalnavi__menu li {
 display: inline-block;
 width: 16.66%;
 border-right: 1px #cc0000 solid;
 text-align: center;
 box-sizing: border-box;
}

.l-globalnavi__menu li:last-child {
 border-right: none;
}

.l-globalnavi__menu li a {
 padding: 10px 5px;
 color: #cc0001;
 display: block;
 text-decoration: none;
 box-sizing: border-box;
 width: 100%;
 font-size: 16px;
}

.l-globalnavi__menu li a:hover {
 background-color: #f9e6e6;
}

.l-globalnavi--update--sp, .l-globalnavi--update--sp2 {
 display: none;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-globalnavi--update--sp {
 display: block;
 width: 100%;
 padding-top: 62px;
 }
 
.l-globalnavi--update--sp2 {
 display: none;
 }


.l-globalnavi--update--sp__inner {
 display: -webkit-flex;
 display: -moz-flex;
 display: -ms-flex;
 display: -o-flex;
 display: flex;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 align-content：flex-start;
 width: 100%;
 padding: 4px 3% 6px;
 background-color: #cc0001;
 }
 
 .l-globalnavi--update--sp__inner2 {
 display: none;
 }

.l-globalnavi--update--sp__inner--deta {
 display: -webkit-box;
 display: -ms-flexbox;
 display: -webkit-flex;
 display: flex;
 -webkit-box-align: center;
 -ms-flex-align: center;
 -webkit-align-items: center;
 align-items: center;
 width: 50%;
 font-size: 12px;
 color: #fff;
 }

.l-globalnavi--update--sp__inner--link {
 font-size: 12px;
 color: #fff;
 text-align: right;
 float:right;
 }

.l-globalnavi--update--sp__inner--link .u-linkbtn span {
 color: #fff;
 position: relative;
 text-decoration: underline;
 font-size: 14px;
 }

.l-globalnavi--update--sp__inner--link .u-linkbtn span:before {
 background-image: url(../images/ic_link_circle_white.png);
 content:"";
 position:absolute;
 top: 50%;
 left: -15px;
 width: 10px;
 height: 10px;
 margin-top: -4px;
 background-repeat: no-repeat;
 background-size: cover;
 }

.l-globalnavi--update--sp__inner--link .u-linkbtn__blank span:after {
 background-image: url(../images/ic_link_blank_white.png);
 content:"";
 position:absolute;
 top: 50%;
 right: -15px;
 width: 10px;
 height: 10px;
 margin-top: -4px;
 background-repeat: no-repeat;
 background-size: cover;
 }
}


/* 各セクション */
.l-secPink {
 width: 100%;
 background-color: #fae5e5;
 padding: 10px 0 15px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-secPink {
 padding: 5px 0 0;
 }
}

.l-wrap-inner {
 width: 960px;
 background-color: #fff;
 margin: 0 auto;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
 border-radius: 5px;
 padding: 40px;
 box-sizing: border-box;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-wrap-inner {
 width: 100%;
 -webkit-border-radius: 0;
 -moz-border-radius: 0;
 border-radius: 0;
 padding: 15px 3%;
 }
}

.l-wrap-inner__date {
 width: 960px;
 background-color: #fff;
 margin: 0 auto;
 -webkit-border-radius: 5px 5px 0 0;
 -moz-border-radius: 5px 5px 0 0;
 border-radius: 5px 5px 0 0;
 padding: 15px 40px 10px;
 box-sizing: border-box;
 margin-bottom: 2px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-wrap-inner__date {
 width: 100%;
 -webkit-border-radius: 0;
 -moz-border-radius: 0;
 border-radius: 0;
 background-color: #fff;
 margin: 0 auto;
 padding: 10px 3%;
 }
}

.l-wrap-inner__main {
 width: 960px;
 background-color: #fff;
 margin: 0 auto;
 -webkit-border-radius: 0 0 5px 5px;
 -moz-border-radius: 0 0 5px 5px;
 border-radius: 0 0 5px 5px;
 padding: 20px 40px 40px;
 box-sizing: border-box;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-wrap-inner__main {
 width: 100%;
 -webkit-border-radius: 0;
 -moz-border-radius: 0;
 border-radius: 0;
 background-color: #fff;
 margin: 0 auto;
 padding: 15px 3%;
 }
}


/* フッター */
.l-secFooter {
 margin-top: 60px;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-secFooter {
 margin-top: 30px;
 }
}

.l-secFooter__pagetop {
 width: 960px;
 margin: 0 auto;
 text-align: right;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-secFooter__pagetop {
 width: 100%;
 text-align: center;
 color: #0063ad;
 background-color: #faf5e5;
 }
}

.l-secFooter__menu {
 width: 100%;
 background-color: #faf5e5;
 overflow: hidden;
 padding: 25px 0;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-secFooter__menu {
 display: none;
 }
}

.l-secFooter__menu__inner {
 /* width: 850px; */
 width: 890px;
 margin: 0 auto;
}

.l-secFooter__menu__inner li,
.l-secFooter__menu__inner li a,
.l-secFooter__menu__inner li a span {
 line-height: 1.6;
}

.l-secFooter__menu__inner--area01 {
 display: inline-block;
 /* width: 150px; */
 width: 190px;
 border-right: 1px #e3decc solid;
}

.l-secFooter__menu__inner--area02 {
 display: inline-block;
 width: 440px;
 padding-left: 35px;
 box-sizing: border-box;
 border-right: 1px #e3decc solid;
 vertical-align: top;
}

.l-secFooter__menu__inner--area02--inner {
 overflow: hidden;
 /*width: 370px;*/
 width: 380px;
 
}

.l-secFooter__menu__inner--area02--inner-l {
 float: left;
 width: 230px;
}

.l-secFooter__menu__inner--area02--inner-r {
 float: left;
 /*width: 140px;*/
 width: 150px;
 
}

.l-secFooter__menu__inner--area03 {
 display: inline-block;
 width: 250px;
 box-sizing: border-box;
 padding-left: 30px;
 vertical-align: top;
}

.l-secFooter__usebox {
 width: 100%;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
 border-radius: 5px;
 background-color: #fff;
 overflow: hidden;
 padding-bottom: 10px;
}

.l-secFooter__usebox--ttl {
 background-color: #cc0000;
 text-align: center;
 padding: 3px 5px;
 color: #fff;
}

.l-secFooter__usebox--inner {
 margin: 10px 0 0 10px;
}

.l-secFooter__company {
 width: 100%;
 background-color: #fff;
 padding: 30px 0;
 text-align: center;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-secFooter__company {
 padding: 15px 0;
 }
}

.l-secFooter__company--access {
 line-height: 1.4;
}

.l-secFooter__company--access-txt {
 margin-right: 0.5em;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
.l-secFooter__company--access-txt {
 margin-right: 0;
 display: block;
 }
}

/* コピーライト */
.l-secCopyright {
 padding-top: 35px;
 background: url(../images/bg_footer_top.png) no-repeat;
 background-position: center top;
}

.l-secCopyright__inner {
 width: 100%;
 padding: 1em 0;
 background-color: #cc0001;
}

/* 地方会リンク */
iframe.frametype01 {
 width: 100px;
 height: 25px;
 border: none;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
 iframe.frametype01 {
  width: 100px;
  height: 25px;
  border: none;
 }
}

.r_bnr_fixed {
  position: fixed;
  top: 200px;
  right: 0;
  z-index: 2;
}
.r_bnr_fixed .bnr_fixed {
    display: block;
    width: 50px;
    max-height: 300px;
    background: linear-gradient(0deg, rgba(206,4,4,1) 0%, rgba(222,86,86,1) 100%);
    margin-bottom: 20px;
    padding: 15px 15px 15px 5px;
    border-radius: 10px 0 0 10px;
    -moz-box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 10px;
    -webkit-box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 10px;
    box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 10px;
    white-space: nowrap;
}
.r_bnr_fixed .bnr_fixed .bnr_text {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #fff;
    line-height: 1.2;
    text-align: left;
    margin-left: 7px;
    padding-top: 10px;
}

.b_bnr_fixed{
  display: none;
  background: rgba(255, 255, 255, 0.8);
  text-align: center;
  margin: 0 auto;
  width: 100%;
  height: 55px;
  position: fixed;
  bottom: 0px;
  z-index: 10;
}

.bnr_about > span {
  padding-left:50px;
}

.b_bnr_fixed-hidden{
  display: none !important;
}

.b_bnr_fixed > span,
.bnr_about > span {
  display: inline-block;
  padding-top:5px;
}

.b_bnr_fixed a,
.bnr_about a {
  display: inline-block;
  text-align: center;
  cursor: pointer;
  background: rgb(206,4,4);
  background: linear-gradient(0deg, rgba(206,4,4,1) 0%, rgba(222,86,86,1) 100%);
  transition: 0.25s opacity ease;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 35px;
  outline: none;
  border: 1px solid #cc0001;
  border-radius: 25px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 300px;
  padding-top: 3px;
  padding-right: 10px;
  padding-bottom: 3px;
  /*padding-left: 10px;*/
  margin-top: 0px;
  margin-right: 10px;
  margin-bottom: 0px;
  margin-left: 10px;
}

.b_bnr_fixed a span,
.bnr_about a span {
	color: #ffffff !important;
}

/********* sp *********/
@media only screen and (max-width: 750px) {
  .r_bnr_fixed {
    display: none;
  }
  .b_bnr_fixed{
    display: inline-block;
  }
}

/* ボタン */
.r_bnr_fixed .u-linkbtn2 span,
.b_bnr_fixed .u-linkbtn2 span,
.bnr_about .u-linkbtn2 span {
 margin-left: 15px;
 color:white !important;
}

.r_bnr_fixed .u-linkbtn2 span,
.b_bnr_fixed .u-linkbtn2 span,
.bnr_about .u-linkbtn2 span {
 color: #0063ad;
 position: relative;
 text-decoration: none;
 font-size: 16px;
 font-weight: bold;
}

.r_bnr_fixed .u-linkbtn2 span:before {
 background-image: url(../images/ic_link_circle_white.png);
 content:"";
 position:absolute;
 top: -15px;
 left: 7px;
 width: 10px;
 height: 10px;
 background-repeat: no-repeat;
 background-size: cover;
}

.b_bnr_fixed .u-linkbtn2 span:before {
 background-image: url(../images/ic_link_circle_white.png);
 content:"";
 position:absolute;
 top: 50%;
 left: -15px;
 width: 10px;
 height: 10px;
 margin-top: -4px;
 background-repeat: no-repeat;
 background-size: cover;
}

.bnr_about .u-linkbtn2 span:before {
 background-image: url(../images/ic_link_circle_white.png);
 content:"";
 position:absolute;
 top: 50%;
 left: -15px;
 width: 10px;
 height: 10px;
 margin-top: -4px;
 background-repeat: no-repeat;
 background-size: cover;
}
