@charset "UTF-8";
/*
* Last Update 2019-11-04
*
* TOP SETTING
*
*/


/*======================================

INDEX

=======================================*/
#contents {padding-top:72px;}

#MainSliderBlock img {width:100%;}
#MainSliderBlock img.visible-tbpc {display: none;}


#ServiceInfoBlock {
border-top:1px solid #9fa0a0;
border-bottom:1px solid #9fa0a0;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-size: 1.8rem;
margin-bottom: 40px;
}
#ServiceInfoBlock h2 {
background: rgb(0,129,204);
background: -webkit-gradient(linear, left bottom, left top, from(rgba(0,129,204,1)), to(rgba(0,64,152,1)));
background: linear-gradient(0deg, rgba(0,129,204,1) 0%, rgba(0,64,152,1) 100%);
color:#fff;
font-size: 1.8rem;
padding-top: .15em;
text-align: center;
width: 160px;
}
#ServiceInfoBlock h2.alert {
background: rgb(255,255,0);
color:#d0121b;
font-weight: bold;
}
#ServiceInfoBlock .inner-section {
line-height:0;
margin-left:1em;
max-width: 100%;
width: 94%;
}

#ServiceMenu #primaryMenu {display: none;}
#ServiceMenu #SPprimaryMenu {display: -webkit-box;display: -ms-flexbox;display: flex;}
#ServiceMenu .cntnav li {
display: table;
margin-bottom: 8px;
text-align: center;
width: 49%;
position:relative;
}
/****20231204追加***/
.sns {
    margin: 1vw 0;
}
.sns a {
   text-decoration: none; 
}
.sns ul {
    margin-top: 0.5vh;
}

#sns-pc {
    display: none;
 }
 #sns-sp {
 display: flex;
 }
 #sns-sp li {
width: 50%;
text-align:center ;
font-size: 1.5em;
 }
/**snsアイコン*/
.icon-fb {
font-size:3rem;
padding-right: .5em;
color:#2f6db6!important;
}
.icon-twitter {
font-size:3rem;
padding-right: .5em;
color:#00aced!important;
}
.icon-youtube {
    font-size:3rem;
    padding-right: .5em;
    color:#f00!important;
    }
 .icon-instagram {
        font-size:3rem;
        padding-right: .5em;
       background: linear-gradient(70deg, #FFDD83, #F26939, #CF2E92, #4C64D3);
       color: #F26939;
       -webkit-background-clip: text;
       -webkit-text-fill-color: transparent
  }
  .icon-x {
	background:url(../fonts/x.svg) center no-repeat;
    font-size:3rem;
    padding-right: .5em;
	color:#000!important;
	background-size: cover;
	display: inline-block;
	height:30px;
	margin-right: .5em;
	width: 30px;
  /*  -webkit-background-clip: text;
    -webkit-text-fill-color: transparent */
}
/****/


/***20231204ここまで***/

#ServiceMenu .cntnav li a {
background: rgb(208,18,27);
background: -webkit-gradient(linear, left bottom, left top, from(rgba(208,18,27,1)), to(rgba(145,0,0,1)));
background: linear-gradient(0deg, rgba(208,18,27,1) 0%, rgba(145,0,0,1) 100%);
border-radius: 5px;
color:#fff;
display: table-cell;
font-size: 1.3rem;
line-height: 0;
height: 90px;
vertical-align: middle;
text-decoration: none;
width:100%;
}
#ServiceMenu .cntnav li a span {
display: block;
font-size:5rem;
margin-bottom: 8px;
}
#ServiceMenu .cntnav li a:hover {
background: none;
background-color: #910000;
}

/*#ServiceMenu #SPprimaryMenu.cntnav li a span {
font-size:6rem;
margin-bottom: 4px;
}
#ServiceMenu #SPprimaryMenu.cntnav .li_tog a span {
margin-bottom: -4px;
}
*/
#ServiceMenu #SPprimaryMenu.cntnav .li_tog span {margin-bottom:-4px;}
#ServiceMenu #SPprimaryMenu.cntnav .li_tog ul li a span {margin-bottom: auto;}
#ServiceMenu #SPprimaryMenu.cntnav .li_tog a {line-height: 1.2;}

/*Dropmenu対応*/
#ServiceMenu .cntnav li ul {
background-color: #fff;
border:2px solid #a0a0a0;
border-radius:5px;
width: 100%;
top:110px;
}
#ServiceMenu .cntnav li ul.wideBox {width:15em;}
#ServiceMenu .cntnav li ul::before {
border-color: transparent transparent #a0a0a0 transparent;
border-style: solid;
border-width: 0 11px 24px 11px;
content: '';
height: 0;
width: 0;
position:absolute;
top:-24px;
left:50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}
#ServiceMenu .cntnav li ul::after {
border-color: transparent transparent #fff transparent;
border-style: solid;
border-width: 0 10px 22px 10px;
content: '';
height: 0;
width: 0;
position:absolute;
top:-18px;
left:50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}
#ServiceMenu .cntnav li ul li {width:100%;}
#ServiceMenu .cntnav li ul li a {
background: none;
line-height: 1;
padding:16px 0 0;
height: auto;
color:#000;
}
#ServiceMenu .cntnav li ul li a span {
color:#d0121b;
display: inline-block;
font-size:1.4rem;
}
#ServiceMenu .cntnav li ul li a:hover {
background: none;
text-decoration: underline;
}

#importantInfoBlock {
border:1px solid #a0a0a0;
border-radius:5px;
font-size:1.5rem;
margin: 64px auto 48px;
padding: 24px 32px;
position: relative;
}
#importantInfoBlock h2 {
border-bottom:1px solid #d0121b;
color:#d0121b;
font-weight: bold;
line-height: 1.6;
margin-left: -5em;
text-align: center;
width: 10em;
position:absolute;
top:-.8em;
left:50%;
z-index: 1;
}
#importantInfoBlock h2::before,
#importantInfoBlock h2::after {
content: "\e902";
font-family: 'icomoon' !important;
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
position: absolute;
top:50%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
#importantInfoBlock h2::after {right:0;}
#importantInfoBlock h2 span {
display: inline-block;
width: 100%;
position: relative;
}
#importantInfoBlock h2 span::before {
background-color: #fff;
content:'';
display: block;
width: 11em;
height: 2em;
position: absolute;
left:-.5em;
z-index: -1;
}

/*#importantInfoBlock ul {margin-top:16px;}*/
#importantInfoBlock iframe {margin-top:16px;}
#importantInfoBlock time + span {
background-color: #7a7a7a;
color:#fff;
display: inline-block;
font-size: 87%;
line-height: 1.4;
margin-left:.4em;
padding: .2em 1em 0;
}
#importantInfoBlock li + li {
border-top:1px dotted #a0a0a0;
margin-top:1em;
padding-top: 1em;
}
#importantInfoBlock li a {color:#d0121b;}


#tab-area input[type="radio"] {display: none;}



#tab-area .tab-box div {
height: 0;
-webkit-box-sizing: border-box;
box-sizing: border-box;
/**2023/1/11変更**スクロールできるようにした*ただし、スクロールはifram.cssでカスタマイズしたので、ここではhiddenで隠す。(スクロールバーが2重になるので)***/
overflow-y: hidden;
/**overflow-x: hidden;**/
opacity: 1;
-webkit-transition: opacity 0.7s;
transition: opacity 0.7s;
}

#tab1:checked ~ .tab-box #tab-content1,
#tab2:checked ~ .tab-box #tab-content2,
#tab3:checked ~ .tab-box #tab-content3,
#tab4:checked ~ .tab-box #tab-content4,
#tab5:checked ~ .tab-box #tab-content5,
#tab6:checked ~ .tab-box #tab-content6,
#tab7:checked ~ .tab-box #tab-content7 {
height: 320px;/**2023/1/11スクロール化のため高さ変更、元々はautoだった**/
opacity: 1;
padding: 10px;


}

#tab-area .tab-box {
border-top:2px solid #a0a0a0;
margin-top: -5px;
padding-top: 16px;

}


#tab-area label {
background-color: #d0121b;
border-radius: 5px 5px 0 0;
color:#fff;
cursor:pointer;
display: inline-block;
line-height: 30px;
padding-top: .3em;
text-align: center;
/**width: 5em;**/
width: 12.5%;
}
#tab-area #tab2 + label {background-color: #ed6c00;}
#tab-area #tab3 + label {background-color: #94252a;}
#tab-area #tab4 + label {background-color: #65b0d4;}
#tab-area #tab5 + label {background-color: #fabe00;}
#tab-area #tab6 + label {background-color: #a0a0a0;}
#tab-area #tab7 + label {background-color: #b5f710}
#tab-area input:checked + label {
line-height: 40px;
position: relative;
top:-5px;
}

/**20231205追加**タブ文字2行*****/
#tab-area #tab3 + label span {
    display: inline-block;
    transform: translateY(25%);
    line-height: 10.7px;
}
/**20231205ここまで***/
.cat_label {
background-color: #d0121b;
color:#fff;
display: inline-block;
font-size: 87%;
line-height: 1.4;
margin-left:.4em;
padding: .2em 1em 0;
}

#tab-area .cat-0 time + span.cat_label {background-color: #ed6c00;}
#tab-area .cat-1 time + span.cat_label {background-color: #94252a;}
#tab-area .cat-2 time + span.cat_label {background-color: #65b0d4;}
#tab-area .cat-3 time + span.cat_label {background-color: #fabe00;}
#tab-area .cat-4 time + span.cat_label {background-color: #a0a0a0;}
#tab-area .cat-5 time + span.cat_label {background-color: #259425;}
#tab-area .cat-8 time + span.cat_label {background-color: #b5f710}

@font-face {
font-family: "Helvetica Neue";
src: local("Helvetica Neue Regular");
font-weight: 300;
}
#topContentsBlock h2 {
font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue";
font-size:1.8rem;
margin-bottom: 8px;
}
#topContentsBlock #newsBlock {width:100%;}
#topContentsBlock #bnrBlock {
margin-top:24px;
width:100%;
}

#topContentsBlock #bnrBlock ul {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
#topContentsBlock #bnrBlock li {
margin-bottom:8px;
width:49%;
}
#topContentsBlock #bnrBlock img {
display:block;
margin:auto;
}

#groupBlock li {
-ms-flex-item-align: stretch;
align-self: stretch;
margin-bottom: 16px;
width:48.6%;
}
#groupBlock figcaption {
font-size: 1.05rem;
font-weight: bold;
text-align: center;
text-shadow: none;
width: 100%;
left:0;
right:auto;
bottom:0;
}
#groupBlock a {text-decoration: none;}

.cat-Title {
border-bottom: 1px solid #d0121b;
font-weight: bold;
margin-bottom: 40px;
padding-bottom: .2em;
}
.cat-Title span {
color:#d0121b;
font-size:6rem;
padding-right: .1em;
position: relative;
top:.25em;
}


/*===== for   OVER - 768px =====*/
@media screen and (min-width:768px){
#contents {padding-top:0;}

#MainSliderBlock img.visible-sp {display: none;}
#MainSliderBlock img.visible-tbpc {display: block;}


#ServiceMenu #primaryMenu {display: -webkit-box;display: -ms-flexbox;display: flex;}
#ServiceMenu #SPprimaryMenu {display: none;}
#ServiceMenu .cntnav li,
#ServiceMenu #secondaryMenu li {
margin-bottom: 0;
width: 19.6%;
}
#ServiceMenu .cntnav li a {vertical-align:top;}
/***20231204追加***/
#sns-pc {
   display: flex; 
}
#sns-pc li{
    width: 25%;
    text-align:center ;
    font-size: 1.5em;
}
#sns-sp {
display: none;
}
/***20231204ここまで**/

#topContentsBlock {
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
}
#topContentsBlock h2 {
font-size:2.5rem;
}
#topContentsBlock #newsBlock {width:62.24%;}
#topContentsBlock #bnrBlock {
margin-top:0;
width:32.65%;
}
#topContentsBlock #bnrBlock ul {
display: block;
}
#topContentsBlock #bnrBlock li {width:100%;}

#groupBlock li {width:30.6%;}
#groupBlock figcaption {
font-size: 1.3rem;
bottom:.15em;
}


}

/*===== for   OVER - 990px =====*/
@media screen and (min-width:990px){
#ServiceMenu .cntnav li a {font-size: 1.5rem;}
#ServiceMenu .cntnav li a span {
font-size:7rem;
line-height: 1;
margin-bottom: 0;
}
#ServiceMenu #secondaryMenu li a {font-size: 1.5rem;}
#ServiceMenu #secondaryMenu li a span {font-size:3rem;}

#groupBlock figcaption {
font-size: 1.4rem;
bottom:.2em;
}
}
#tab-area label[for='tab1'] {
    width: 10%;
    }
#tab-area label[for='tab3'] {
/**    width:8em;**/
width: 15%;
}
#tab-area label[for='tab4'] {
/**    width:7em;**/
width: 18%;
}
#tab-area label[for='tab7'] {
    width: 10%;
    }
/*===== for   BELOW - 767px =====*/
@media screen and (max-width:767px) {
#importantInfoBlock {
font-size:1.25rem;
margin: 40px auto;
padding: 8px 24px;

}
/*#importantInfoBlock ul {margin-top:24px;}*/
#importantInfoBlock iframe {margin-top:24px;}



}

/*===== for   BELOW - 489px =====*/
@media screen and (max-width:489px) {
#tab-area label {
font-size:1rem;
/**width: 4em;**/
}

/***20231205全て統一させたのでコメント化
#tab-area label[for='tab3'] {
 width:5em;
}

#tab-area label[for='tab4'] {
   width:6em;
}****/

}
/*===== for   BELOW - 359px =====*/
@media screen and (max-width:359px) {
#tab-area label {
font-size:.9rem;
/**width: 4.4em;**/
/**width:13% ;**/
}

/*****20231205 全て統一させたのでコメント化
#tab-area label[for='tab3'] {
 width:5em;
   }
#tab-area label[for='tab4'] {
width:6em;
}****/

}


/* BXSLIDER OVERWIRGHTS */
.bx-wrapper {
-webkit-box-shadow: none;
box-shadow:none;
border:none;
margin-bottom: 0;
}
.bx-wrapper .bx-controls-direction a {z-index: 2;}

/* DROPDOWN */
.cnt-drop ul {
display: none;
padding: 1em;
z-index: 99;
position: absolute;
left:50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}

.cnt-drop ul li {border-bottom:1px dotted #a0a0a0;}
.cnt-drop ul li a {text-align: left;}


.errMidashi-1 {font-size:2.5rem;}
.errMidashi-1::before {
background-color: #c41b1f;
content: '';
display: inline-block;
height: 1.4em;
margin-right: 8px;
width: 4px;
position: absolute;
top:6.2em; left: .3em;
}
.errMidashi-1::after {
border-top:1px solid #9fa0a0;
content:% '';
display: block;
height:2em;
width: 100%;
}
