@charset "UTF-8";

/* base
----------------------------------------*/
body {
background: #fff url(background.png)repeat-y center;
margin: 0;
color: #555;
-webkit-text-size-adjust: 100%;
}

a:link,a:visited { text-decoration: underline; font-weight: normal;  }
a:hover { text-decoration: none; }

.j-hr{
padding:15px 0!important;}

.clearfix { zoom: 1; }
.clearfix:after {content:"."; display: block;height:0px; clear:both; line-height:0; visibility:hidden; }

.cc-pagemode-default #sidebar .edit,
.cc-pagemode-overlay #sidebar .edit{/*編集画面用*/
display:none;}


body,p,li,td,input,textarea, figcaption,
h1,h2,h3,h4,h5,h6,
.j-calltoaction-link-style-1,.j-calltoaction-link-style-2,.j-calltoaction-link-style-3,
#g-nav li,#smp-navibtn li,.breadcrumb,#footer,.pc-obi{
font-family: MyHiraginoGothic, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, ＭＳ Ｐゴシック, sans-serif!important;}



/* content
----------------------------------------*/

#content a:hover img {
filter: alpha(opacity=75);
-moz-opacity: 0.75;
opacity: 0.75;
}

#content a:link,
#content a:visited{

}

#content a:hover{

}


/* Layout
----------------------------------------*/
.pc-none{
display:none;}

.inner,#content {
zoom: 1;
width:1040px;
margin: 0 auto;
}

.inner:after { 
content:".";
display: block;
height:0px;
clear:both;
line-height:0;
visibility:hidden;
}

#header {
zoom: 1;
overflow: hidden; 
margin: 0px auto 20px;
padding-top: 15px;
width:1040px;
}

#header:after { 
content:".";
display: block;
height:0px;
clear:both;
line-height:0;
visibility:hidden;
}

#g-nav {
zoom: 1;
margin-top:0px;
background:#CF021C url(bar-navi2.png)repeat top center;
}

#g-nav .inner {
background:#CF021C;
z-index:10000;
}

#g-nav:after {
content:".";
display: block;
height:0;
clear:both;
line-height:0;
visibility:hidden;
}

#image-top {display:none;}

.cc-indexpage #image-top{
display:block;
margin: 0 auto 0;
text-align: center;
}

#content {
padding: 0 0 20px;
margin-top:30px;
}

#main {
float: left;
width: 730px;
margin-bottom: 30px;
}

#side {
float: right;
width: 280px;
margin-bottom: 30px;
}


#footer {
clear: both;
padding: 30px 0;
height:120px;
color:#fff;
background:#cf021c;
}



/* header
----------------------------------------*/

#header .pc-obi {
padding:8px 0;
font-size:15px;
}

#header h1 {
text-align:center;
}

#header h1 a img{
width:550px;
}

#header .top-info img{
width:160px;
}

.inner img{width:100%;}

#wrap .left{float:left;}
#wrap .right{float:right;}

/* nav
----------------------------------------*/
#toggle,.nav-arrow,
#smp-navibtn {
display: none;
}

#g-nav:after {
content: "";
display: block;
clear: both;
}

#g-nav ul {
list-style: none;
margin: 0;
padding: 0;
}

#g-nav ul li {
float: left;
display: -moz-inline-box;
display: inline-block;
/display: inline;
/zoom: 1;
}

#g-nav ul li a {
display: block;
color: #fff;
}


#g-nav ul.cc-nav-level-0 > li > a.cc-nav-current {
background: #FFEFF1;
color: #CF021C;
}

#g-nav ul li a:hover {
background: #FFEFF1;
-moz-opacity: 0.8;
-khtml-opacity: 0.8;
opacity: 0.99;
color:#CF021C;
}

.fixed {
position: fixed;
top: 0;
width: 100%;
z-index: 10000 !important;
opacity: 0.95;
}

/* nav ul.cc-nav-level-0
----------------------------------------*/
#g-nav ul.cc-nav-level-0 {
width: 100%;
*zoom: 1;
text-align: center;
padding: 0;
}

@media (min-width: 768px) {
#g-nav ul.cc-nav-level-0 {
display:flex;
justify-content: space-between;
}
}
#g-nav ul.cc-nav-level-0:after {
content: "";
display: block;
clear: both;
}
#g-nav ul.cc-nav-level-0 li {
*zoom: 1;
white-space: nowrap;
}

#g-nav ul.cc-nav-level-0 li ul {
position: absolute;
z-index: 2 !important;
}

#g-nav ul.cc-nav-level-0 li a {
display: block;
padding: 15px 37px;
text-decoration: none;
font-weight: normal;
font-size: 17px;
/*width:208px;*/
}

* html ul.cc-nav-level-0 li a {
zoom: 1;
}

/* g-nav ul.cc-nav-level-0 ul
----------------------------------------*/
#g-nav ul.cc-nav-level-0 li > ul {
visibility: hidden;
}

#g-nav ul.cc-nav-level-0 li:hover > ul {
visibility: visible;
}

#g-nav ul.cc-nav-level-0 li ul li {
clear: left;
display: block;
position: relative;
width: 240px!important;
}

#g-nav ul.cc-nav-level-0 li ul li a {
margin: 0 1px 1px 0;
padding: 0.5em 1em;
text-align: left;
font-size:14px;
}

#g-nav ul.cc-nav-level-1 a {/*第２階層*/
background: #CF021C;
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
-moz-opacity: 0.85;
-khtml-opacity: 0.85;
opacity: 0.85;
text-align: center;
color: #fff;
}

#g-nav ul.cc-nav-level-2 a {/*第３階層*/
background: #FFEFF1;
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
-moz-opacity: 0.85;
-khtml-opacity: 0.85;
opacity: 0.85;
text-align: center;
color: #CF021C;
}

#g-nav ul.cc-nav-level-1 a.cc-nav-current,
#g-nav ul.cc-nav-level-2 a.cc-nav-current{
background: #FFEFF1;
color: #CF021C;
}

/* g-nav ul.cc-nav-level-2
----------------------------------------*/
#g-nav ul.cc-nav-level-0 li ul li ul {
top: 0;
left: 100%;
}

/* image-top
----------------------------------------*/
#image-top p {
margin: 0;
line-height: 0;
}


/* breadcrumb
----------------------------------------*/
#content .breadcrumb{
padding:0 10px 20px;
}

#content .breadcrumb a:link,
#content .breadcrumb a:visited{
color:#555;
text-decoration:none;
}

#content .breadcrumb a:hover{
color:#CF021C;
}

#content .breadcrumb ol{
list-style-type: none;
}

#content .breadcrumb ol li {
float: left;
margin: 0;
font-size: 0.9em;
}

#content .breadcrumb ol li:before {
content:"<";
margin:0 5px;
}

#content .bread-home{
float:left;
font-size: 0.9em;
}

.cc-page-index .breadcrumb{
display:none;
}

/* main
----------------------------------------*/
#main h1 {
  display: flex;
  align-items:center;
  margin-bottom:30px;
font-size:32px;
}

#main h1:before, #main h1:after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background: #333;
    display: block;
}

#main h1:before{margin-right:.4em;}
#main h1:after {margin-left:.4em;}


#main h2 {
margin: 20px 0 10px;
font-weight: normal;
font-size:24px;
border-left: solid 5px #CF021C;
padding:8px 10px;
color:#333;
background-color:#eee;
}

#main h3 {
margin: 0;
color:#333;
padding: 5px;
font-weight: normal;
font-size:20px;
border-bottom:3px dotted #333;
}

#main p {
line-height: 1.6;
}

#content_area ul,
#sidebar ul{
padding-left:10px;
}

#content_area ul li,
#sidebar ul li{
padding-bottom:8px;
}

/* side
----------------------------------------*/
#side h1 {
margin: 0 0 5px 0;
padding: 5px 10px;
font-weight: normal;
font-size:20px;
color:#fff;
text-align:center;
background-color:#CF021C;
border-radius:10px;
}

#side h2 {
margin: 5px 0;
font-weight: normal;
font-size:18px;
border-left: solid 5px #CF021C;
padding:5px 10px;
color:#333;
background-color:#eee;
}


#side h3 {
margin: 0;
color:#333;
padding: 5px;
font-weight: normal;
font-size:18px;
border-bottom:3px dotted #333;
}


#side p {
margin: 0 0 0 0;
}




/* table
----------------------------------------*/
#main table{
border-collapse: collapse;
} 

/* footer
----------------------------------------*/
#contentfooter p,
#contentfooter a:link,
#contentfooter a:visited{
color:#fff!important;
}



/* j-calltoaction
----------------------------------------*/

#content_area .j-callToAction{margin-bottom:12px;}

.j-calltoaction-link-style-1{
padding:10px 30px;
font-size:16px!important;
}

.j-calltoaction-link-style-1:link,
.j-calltoaction-link-style-1:visited{
background: #fff;
border:1px solid #333;
color:#333!important;
}

.j-calltoaction-link-style-1:hover{
background: #555;
border:1px solid #555;
color:#fff!important;
}

.j-calltoaction-align-2 .j-calltoaction-link{
color:#CF021C;}

.j-calltoaction-link-style-2{
padding:10px 20px!important;
font-size:18px!important;
}

.j-calltoaction-link-style-2:link,
.j-calltoaction-link-style-2:visited{
background: #fff;
border:2px solid #CF021C;
border-radius:100px;
color:#CF021C!important;
}

.j-calltoaction-link-style-2:hover{
background: #CF021C;
color:#fff!important;
}

.j-calltoaction-link-style-3{
padding:10px 20px!important;
font-size:16px!important;
border-radius:10px!important;
}

.j-calltoaction-link-style-3:link,
.j-calltoaction-link-style-3:visited{
background: #CF021C;
color:#ff!important;
border:2px solid #CF021C;
}

.j-calltoaction-link-style-3:hover{
background: #fff;
color:#CF021C!important;
border:2px solid #CF021C;
}

.j-calltoaction-link-style-2::after{
content: '\f35d';
font-family: "Font Awesome 5 Free";
font-weight: 900;
}

#sidebar .j-calltoaction-link-style-1{
padding:5px;
font-size:16px!important;
width:90%
}

#sidebar .j-calltoaction-link-style-1:link,
#sidebar .j-calltoaction-link-style-1:visited{
background: #fff;
border:1px solid #333;
color:#333!important;
}

#sidebar .j-calltoaction-link-style-1:hover{
background: #333;
color:#fff!important;
}

#sidebar .j-calltoaction-link-style-2,
#sidebar .j-calltoaction-link-style-3{
padding:8px 15px!important;
font-size:16px!important;
}



/*blog
----------------------------------------*/
#main .j-blog-post--header h1{
margin: 20px 0 10px;
font-weight: normal;
font-size:28px;
border-left: solid 5px #CF021C;
padding:5px 10px;
color:#333;
background-color:#eee;
border-radius:0;
text-align:left;
}

/*form
----------------------------------------*/
form.cc-m-form .cc-m-form-submit .cc-m-form-view-input-wrapper input:not([name="dataprivacy"]){
margin-top:5px!important;color:#fff;background-color:#333;border:none;
padding:5px 40px;
}

/*rss
----------------------------------------*/
.rssFeedTitle{font-weight:400!important;}


/*cookie-policy
----------------------------------------*/
.j-cookie-policy p,
.j-cookie-settings p{
padding:10px 0 20px!important;
}
.j-cookie-policy h2,
.j-cookie-settings h2,
.j-cookie-policy h3,
.j-cookie-settings h3{
margin-top:30px!important;
}

.j-cookie-policy td:first-child,
.j-cookie-policy th:first-child{
border-right-width: 1px!important;
}

.j-cookie-policy tr:last-child td {
border-bottom-width: 1px!important;
}

/*swiper
----------------------------------------*/
.swiper-container{
text-align: center;
}
.swiper-container .swiper-slide img{
max-width: 100%;
width:100%;
height: auto;
}



/* 1040
-------------------------------------------------------------------*/

@media screen and (max-width: 1040px) {

#header {
padding-top: 0;
margin:0 auto 10px;
}

#content{
width: 90%;
}

.inner,#header  {
width: 90%;
}

#wrap .left,
#wrap .right{/*float打ち消し*/
float:flex;}

.pc-none{
display:flex;}

.pc-none h1 a img{
width:90%;
margin:0 auto;}




.cc-indexpage #image-top {
width: 100%;
margin: 0;
}


#main,#side {
float: none;
width: 100%;
}

/* img */
#image-top img {
max-width: 100%;
height: auto !important;
}

/* header */

#header h1 a img {
margin: 0 auto;
text-align: center;
width:540px;
}
#header .top-info img{
width:150px;}

#header p {
float: none;
margin: 0;
text-align: center;
font-size: 1.2em;
}

#header #wrap {
width:100%;
}

#header .pc-obi{
text-align:left;}

#header .top-info img{
width:150px;}

/* g-nav */

.j-nav-variant-nested ul{/*打ち消し*/
    display: block;}

#g-nav ul.cc-nav-level-0 li a {
padding: 15px 0;
font-size:16px;
width:145px;
}

#footer .inner #contentfooter{
width:90%!important;
margin: 0 auto;}
}


/* 768
-------------------------------------------------------------------*/

@media (max-width: 768px) {
body {
overflow-x: hidden;
}

/* h1,h2,h3 */
#main h1{font-size:2em;}
#main h2{font-size:1.8em;}
#main h3{font-size:1.6em;}

#header h1 a img{
width:90%;
margin:10px auto;}

.inner,#header  {
width: 100%;
}

.smp-none{
display:none;}

#header{
margin:0 auto;
}

#header .pc-obi{
display:none;}

/*#header div{
margin:0 10px;}*/

.j-hgrid .cc-m-hgrid-column,
.cc-imagewrapper {
float: none !important;
}

.cc-m-image-resizewrapper img,
.cc-imagewrapper img {
margin: 0 auto 10px;
}

.cc-m-textwithimage .imgright,
.cc-m-textwithimage .cc-m-image-align-2,
.j-textWithImage .imgright,
.j-textWithImage .cc-m-image-align-2 {
margin: 0 !important;
}

.j-hgrid .cc-m-hgrid-column,
.cc-imagewrapper,
table {
width: 100% !important;
}

#image-top img,
#content img {
max-width: 100%;
height: auto !important;
}

/* g-nav */

#g-nav{
margin-top:0;}

#g-nav .inner{
background-color:#CF021C;
}

#g-nav ul {
display: none;
}

#g-nav ul li a:hover{
background: #FFEFF1;
color:"#fff;"
}

#g-nav ul.cc-nav-level-0 li a {
padding: 12px 0;
color:#333;
width:auto;
}

#g-nav ul.cc-nav-level-0 li > ul {
visibility: visible;
display: none;
}

#g-nav ul.cc-nav-level-0 li:hover > ul,
#g-nav ul ul:hover  {
visibility: visible;
display: none;
}


#g-nav ul.cc-nav-level-0 > li > a.cc-nav-current {
background: #FFEFF1;
color: #333;
font-weight:bold;
}

#g-nav ul li {
position: relative;
background: #FFEFF1;
border-bottom: solid 1px #fff;
text-indent: 1.5em;
text-align: left;
width: 100%;
}

#g-nav ul.cc-nav-level-0 li ul {
position: relative;
width: 100%;
font-size: 0.8em;
}

#g-nav ul li a {
background: #FFEFF1;
width: auto;
color: #333;
}

#g-nav ul.cc-nav-level-1 li a,
#g-nav ul.cc-nav-level-2 li a {
background: #fff;
width: auto;
text-indent: 2.25em;
text-align: left !important;
color: #333;
}

#g-nav ul.cc-nav-level-2 li a {
text-indent: 3.25em;
font-weight: normal;
}

#g-nav ul.cc-nav-level-1 a.cc-nav-current,
#g-nav ul.cc-nav-level-2 a.cc-nav-current {
background: #ddd;
color:#333;
}

#g-nav ul.cc-nav-level-0 li ul li {
width: 100% !important;
clear: left;
position: relative;
}

#g-nav ul.cc-nav-level-0 li ul li ul {
width: 100%;
top: 100%;
left: 0;
font-size: 1em;
}

#g-nav ul.cc-nav-level-0 li ul li a {
background: #fff;
margin: 0 1px 1px 0;
padding: 5px 0;
}


/* nav-arrow */
#g-nav .nav-arrow {
display: block;
position: relative;
}

#g-nav .nav-arrow a:link,
#g-nav .nav-arrow a:visited{
position: absolute;
top: -48px;
right: 0;
display: block;
background: #CF021C;
height: 23px;
width: 13%;
line-height: 1;
text-align: center;
text-indent: 0;
}


#g-nav .nav-arrow a span:after {
content: url(https://u.jimcdn.com/cms/o/seed6b85e3284989b/userlayout/img/arrow.png?t=1737526735);
color: #fff;
}

/* smp-navibtn */
#smp-navibtn{
display:block;
width: 100%;
background-size: contain;
}
#smp-navibtn ol{
margin:0;
padding:0;
}

#smp-navibtn>ol>li {
float: left;
padding:0;
margin:0;
border-left: 0;
box-shadow: 1px 0 0 #eee inset;
text-align: center;
list-style:none!Important;
background: #CF021C url(bar-navi.png)repeat top;
}

#smp-navibtn>ol .smp-nav02,
#smp-navibtn>ol .smp-nav03,
#smp-navibtn>ol .smp-nav04{
width: 20%!Important;
}

#smp-navibtn>ol .smp-nav05{
width: 21%!Important;
}

#smp-navibtn>ol .smp-nav01{
width: 19%!Important;
}

#smp-navibtn ol .smp-nav05 a span {
letter-spacing: -0.05em;
}

#smp-navibtn ol li:first-child {
  box-shadow: none;
  border-left: 0;
}
#smp-navibtn ol li a{
display: block;
text-decoration: none;
color:#fff;
padding: 0;
font-size: 11px;
list-style:none!Important;
line-height:110%;
}

#smp-navibtn ol li.smp-nav01 a{
background:url(https://u.jimcdn.com/cms/o/seed6b85e3284989b/userlayout/img/icon-menu.png?t=1737526756)no-repeat center 5px;
background-size:contain;
padding-top:59px;
padding-bottom:7px;
}

#smp-navibtn ol li.smp-nav02 a{
background:url(https://u.jimcdn.com/cms/o/seed6b85e3284989b/userlayout/img/icon-school.png?t=1737526872)no-repeat center 5px;
background-size:contain;
padding-top:59px;
padding-bottom:7px;
}

#smp-navibtn ol li.smp-nav03 a{
background:url(https://u.jimcdn.com/cms/o/seed6b85e3284989b/userlayout/img/icon-service.png?t=1737526759)no-repeat center 5px;
background-size:contain;
padding-top:49px;
padding-bottom:5px;
}

#smp-navibtn ol li.smp-nav04 a{
background:url(https://u.jimcdn.com/cms/o/seed6b85e3284989b/userlayout/img/icon-access.png?t=1737526739)no-repeat center 5px;
background-size:contain;
padding-top:49px;
padding-bottom:5px;
}

#smp-navibtn ol li.smp-nav05 a{
/*background:url(https://u.jimcdn.com/cms/o/seed6b85e3284989b/userlayout/img/icon-contact.png?t=1737526742)no-repeat center 5px;*/
background:url(https://u.jimcdn.com/cms/o/seed6b85e3284989b/userlayout/img/icon-home3.png?t=1739170962)no-repeat center 5px;
background-size:contain;
padding-top:59px;
padding-bottom:7px;
}

/* toggle */
#toggle{
display:block;
margin:0;
paddin:0;
background-image:url(https://u.jimcdn.com/cms/o/seed6b85e3284989b/userlayout/img/icon-menu.png?t=1737526756);
background-repeat:no-repeat;
background-position:center 5px;
padding-top:51px;
padding-bottom:5px;
background-size:contain;
}

#toggle {
cursor:pointer;
font-size:12px;
color:#fff;
}

div#toggle.over{
background-color:#fffbc8!important;
box-shadow: 1px 0 0 #fff inset;
}
div#toggle.active{
background-image: url(https://u.jimcdn.com/cms/o/seed6b85e3284989b/userlayout/img/icon-menu.png?t=1737526756)!important;
box-shadow: 1px 0 0 #fff inset;
}
}