* {
    border-sizing:border-box;
    border-collapse:collapse;
    font-family: "Noto Sans JP","Yu Gothic Medium", sans-serif;
}

html {
    overflow-y: scroll;
    overflow-x: hidden;
    scroll-behavior:smooth;
font-size: 100%;
}

body {
    margin:0 auto;
    padding:0;
    /*overflow-x: hidden;*/
    
}
@media only screen and (max-width: 992px) {
body {
    padding:160px 0 0;
}
}
@media only screen and (max-width: 468px) {
body {
    padding:140px 0 0;
}
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    margin-bottom: 0;
}
a{
    text-decoration:none;
    word-break: break-all;
}

.img-responsive {
    display: inline-block;
    height: auto;
    max-width: 100%;
    margin:0 auto;
    vertical-align:top;
}

div:after,
ul:after {
    content: "";
    display: block;
    clear: both;
}

ul{
    list-style: none;
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
}

li,dt,dd{
    box-sizing: border-box;
}

a img {
    transition: opacity 0.2s linear;
}
a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}


/*汎用*/

.pc { display: block !important; }
.sp { display: none !important; }
@media only screen and (max-width: 992px) {
.pc { display: none !important; }
.sp { display: block !important; }
}
.pc2 { display: block !important; }
.sp2 { display: none !important; }
@media only screen and (max-width: 768px) {
.pc2 { display: none !important; }
.sp2 { display: block !important; }
}
.pc3 { display: inline-block !important; }
.sp3 { display: none !important; }
@media only screen and (max-width: 568px) {
.pc3 { display: none !important; }
.sp3 { display: inline-block !important; }
}

.ggmap {
    position: relative;
    /*padding-bottom: 66.7%;*/
    padding-bottom: 26.67%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media only screen and (max-width: 768px) {
.ggmap {
    padding-bottom: 100%;
}
}

.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}


/*header*/

header{
    position:relative;
    z-index:10;
}
.headerInner{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
    min-height: 100px;
}
.headerInner form{
    box-sizing: border-box;
    width: calc(380px);
}
.headerLogo{
    width:calc(100% - 700px);
    position: relative;
    top: 33px;
}
.headerLogo a{
    line-height: 1em;
}
.headerLogo a h1{
    margin:0;
    padding:0;
    display: inline-block;
    font-size: 16px;
    line-height: 16px;
}


/*文字サイズ*/

.headerFontsize{
    width:calc(320px);
    padding: 15px 40px 0 0;
    box-sizing: border-box;
}


    body {
      font-size: 1rem;/* remで指定（1rem = 16px） */
      line-height: 1;
    }
    .ly_siteWrapper {
      display: flex;
      flex-direction: column;
      min-height: 100vh;
    }
    .ly_header {
      padding: 15px 56px;
    }
    .ly_header_inner {
      display: flex;
      align-items: center;
    justify-content: flex-end;
      width: min(100%, 880px);
      margin: 0 auto;
    }
    .ly_main {
      background-color: #fafafa;
      flex: 1;
      overflow-x: hidden;
    }
    .ly_section {
      padding: 90px 0;
    }
    .ly_section_inner {
      padding: 0 15px;
      text-align: center;
      width: min(100%, 880px);
      margin: 0 auto;
    }
    .bl_headerList {
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
    .bl_headerList > * + * {
      margin-left: 56px;
    }
    .bl_headerList a {
      line-height: 1.5;
      padding: 10px;
    }
    /********************/
    /* ボタンのスタイル */
    /********************/
    .bl_sizeBtn_wrap {
      display: inline-flex;
      align-items: flex-end;
      font-weight: 500;
    }
    .bl_sizeBtn_wrap > span {
        font-size: 16px;
        letter-spacing: 0.05em;
        padding: 0 0 5px;
    }
    .bl_sizeBtn_wrap > * + * {
      margin-left: 10px;
    }
    .bl_sizeBtn {
      background-color: #999;
      border:none;
      color: #666;
      padding: 5px 8px;
      transition: opacity 0.4s;
    }
    .bl_sizeBtn:first-of-type {
      font-size: 13px;
    }
    .bl_sizeBtn:nth-of-type(2) {
      font-size: 16px;
    }
    .bl_sizeBtn:nth-of-type(3) {
      font-size: 19px;
    }
    /* 選択したボタンのスタイル */
    .bl_sizeBtn.is_active {
      background-color: #005fb9;
      color: #fff;
    }
    /****************************/
    /* ボタンのスタイルここまで */
    /****************************/
    .bl_sampleList {
      margin-top: 1em;
    }
    .bl_sampleList li {
      line-height: 1.7;
    }
    .bl_sampleList span {
      font-weight: 700;
      padding: 0 0.3em;
    }
    /* サイズ固定のテキスト */
    .bl_fzPx {
      font-size: 16px;
    }
    .el_lv2Heading {
      font-size: 2rem;
      font-weight: 700;
    }
    @media (hover: hover) and (pointer: fine) {
      .bl_headerList a:hover {
        color: #246a92;
      }
      .bl_sizeBtn:hover {
        opacity: 0.8;
      }
    }

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

.headerInner form{
    width:calc(100%);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.headerFontsize{
    display:none;
}
}

/*headerSearch*/
.headerSearch{
    box-sizing: border-box;
    width: calc(380px);
}


.accordion{
    width: 100%;
    margin: 0px auto 0px;
    padding: 0;
    box-sizing: border-box;
}
/*-----------------------アコーディオン*/
/*question*/
.hidden_box {
    margin: 0;
    padding: 0;
    position:relative;
}


/*ボタン装飾*/
.hidden_box #mainLabel {
    padding: 0;
    max-width: 380px;
    width: 100%;
    min-height: 75px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 0;
    font-weight: bold;
    background: #fff;
    cursor: pointer;
    transition: .5s;
    text-align: center;
    position: relative;
    font-size: 100%;
    color: #fff;
    border: none;
    background-color: #e53b16;
    border-radius:0 0 15px 15px;
}
.hidden_box #mainLabel h2{
    margin:0;
    font-size:1.2rem;
    
}


/*answer*/
.hidden_show{
    position:absolute;
    text-align:left;
    background-color:#fff;
    padding: 10px 15px 18px 75px;
    margin:0 0 20px;
    border: 3px solid #e53b16;
    width: 100%;
    box-sizing: border-box;
}





/*アイコンを表示(+)*/
.hidden_box #mainLabel:before {
    background-image:url(images/svg/icon_search.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:40px;
    height:40px;
    transition: 0.2s;
    z-index: 15;
    position: absolute;
    left: 20px;
}

/*ボタンホバー時*/
.hidden_box #mainLabel:hover {
    color:#fff;
    opacity:0.8;
}

/*アイコンを切り替え(-)*/
.hidden_box #searchSect:checked ~ #mainLabel:after {
/*
     -ms-transform: rotate(180deg);
     -webkit-transform: rotate(180deg);
     transform: rotate(180deg);
*/
}

/*チェックは見えなくする*/
.hidden_box #searchSect {
    display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
    border: 0px solid #e53b16;
}

/*クリックで中身表示*/
.hidden_box #searchSect:checked ~ #mainLabel{
    border-radius:0;
}
.hidden_box #searchSect:checked ~ .hidden_show {
    padding: 0 0;
    /*height: auto;*/
    height: 70vh;
    overflow-y: scroll;
    /**/
    opacity: 1;
    border: 3px solid #e53b16;
}

@media only screen and (max-width: 992px) {
.headerSearch {
    width: calc(100%);
    max-width: calc(730px);
    padding: 0 15px;
}
.hidden_box #mainLabel {
    max-width: 700px;
    min-height: 70px;
    border-radius:15px;
}
}
@media only screen and (max-width: 468px) {
.hidden_box #mainLabel {
    min-height: 50px;
    font-size: 0.8rem;
}
.hidden_box #mainLabel:before {
    width:25px;
    height:25px;
    left: 5px;
}
}


/*-----------------------アコーディオンend*/


/*headerSearchSect*/

.headerSearchSect{
    padding:15px;
}
.headerSearchSect .headerSearchTitle{
    position:relative;
    padding: 10px 0;
}
.headerSearchSect .headerSearchTitle:after{
    content:"";
    display:block;
    width:100%;
    height:1px;
    border-bottom:1px dashed #e53b16;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
}
.headerSearchSect .headerSearchTitle h3{
    font-size: 1.1rem;
    color: #e53b16;
    display: inline-block;
    background-color: #fff;
    margin: 0;
    position: relative;
    z-index: 10;
    padding: 0 5px 0 0;
}

.headerSearchSect .headerSearchWord{}
.headerSearchSect .headerSearchWord input{
    border: 1px solid #999;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    border-radius: 5px;
}

.headerSearchSect .headerSearchCategory{
    display: flex;
    flex-wrap: wrap;
}
.headerSearchSect .headerSearchCategory label{
    width:calc(50%);
}
.headerSearchSect .headerSearchCategory label input{}

.headerSearchSect .headerSearchGenre{
    display: flex;
    flex-wrap: wrap;
}
.headerSearchSect .headerSearchGenre label{
    width:calc(50%);
}
.headerSearchSect .headerSearchGenre label input{}

.headerSearchSect .headerSearchArea{
    display: flex;
    flex-wrap: wrap;
}
.headerSearchSect .headerSearchArea select{
    width:calc(49%);
}
.headerSearchSect .headerSearchArea select:nth-child(1){
    margin-right:2%;
}

.headerSearchSect .headerSearchDate{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.headerSearchSect .headerSearchDate input{
    width:calc(40%);
}

.headerSearchSect .headerSearchTarget{
    display: flex;
    flex-wrap: wrap;
}
.headerSearchSect .headerSearchTarget label{
    width:calc(50%);
}
.headerSearchSect .headerSearchTarget label input{}

.headerSearchSect .headerSearchLimit{}
.headerSearchSect .headerSearchLimit label{}
.headerSearchSect .headerSearchLimit label input{}

.headerSearchSect .headerSearchSubmit{
    width:100%;
}
.headerSearchSect .headerSearchSubmit label{
    background-color: #005fb9;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    height: 45px;
    border-bottom: 5px solid #003894;
    margin: 15px 0 0;
}
.headerSearchSect .headerSearchSubmit label input{
  appearance: none;
  -webkit-appearance: none;
    border:none;
    background-color:transparent;
    color:#fff;
    font-size:1.1rem;
}




/*headerLinks*/

.headerLinks{
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    padding: 20px 0 15px;
}

.headerLinks .headerLinkAbout a,
.headerLinks .headerLinkContact a{
    color:#0c8bd2;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin:0 0 0 15px;
}
.headerLinks .headerLinkAbout a:before,
.headerLinks .headerLinkContact a:before{
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:30px;
    height:25px;
    margin:0 5px 0 0;
}
.headerLinks .headerLinkAbout a:before{
    background-image:url(images/svg/icon_textballoon.svg);
}
.headerLinks .headerLinkContact a:before{
    background-image:url(images/svg/icon_mail.svg);
}

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

header {
    position: fixed;
    z-index: 10;
    background-color:#fff;
    width:calc(100%);
    top:0;
    left:0;
    padding: 0 0 15px;
    filter: drop-shadow(0px 5px 6px rgba(0,0,0,0.3));
}
.headerInner{
    padding: 0;
    min-height: 60px;
}
.headerLogo{
    width:calc(100%);
    height: 75px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    flex-wrap: wrap;
    width:calc(100%);
    padding: 5px 60px;
    box-sizing: border-box;
    top: 0px;
}
.headerLogo a h1{
    max-width: 300px;
}
.headerLinks{
    display:none;
}
}



/**/

.headerMenu {
    width:calc(100%);
    background: #0c8bd2;
}
.headerMenu .menu{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
}
.headerMenu .menu ul{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 10px 0px;
    max-width: 100%;
}
.headerMenu .menu ul li{
    padding: 0;
    position:relative;
    border-left:1px solid #fff;
    flex-grow: 1; 
}
.headerMenu .menu ul li:last-child{
    border-right:1px solid #fff;
}
.headerMenu .menu ul li a{
    color: #fff;
    
    position: relative;
    text-align: center;
    font-size: 1.1rem;
    line-height: 1rem;
    font-weight: 500;
    font-family: "Noto Sans JP","Yu Gothic Medium", sans-serif;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    height: 40px;
    padding: 0 15px;
}
.headerMenu .menu ul li a:hover {
    text-decoration:none;
}
.current01 .menu ul li:nth-child(1) a,
.current02 .menu ul li:nth-child(2) a,
.current03 .menu ul li:nth-child(3) a,
.current04 .menu ul li:nth-child(4) a,
.current05 .menu ul li:nth-child(5) a,
.current06 .menu ul li:nth-child(6) a,
.current07 .menu ul li:nth-child(7) a,
.current08 .menu ul li:nth-child(8) a,
.headerMenu .menu ul li a:hover {
    background-color:#b6dcf1;
    color:#005fb9;
}
@media only screen and (max-width: 992px) {
.headerMenu .menu ul li a{
    color: #000;
    font-size:12px;
    height: 40px;
    justify-content: flex-start;
}


}



/**/
.menu-btn {
    position: fixed;
    top: 0px;
    right: 0px;
    display: flex;
    height: 60px;
    width: 60px;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    background: #fff;
    border-bottom: 5px solid #fff;
    box-sizing: border-box;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 3px;
    width: 48px;
    border-radius: 3px;
    background-color: #1d365b;
    position: absolute;
    
}
.menu-btn span:before {
    bottom: 10px;
}
.menu-btn span:after {
    top: 10px;
}
.menu-btn img {
    position:relative;
    bottom:-20px;
}
#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);/*???j?…?[?I?[?v?“???I?^?n’†?I?u?d“§???E?・?e*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
}
#menu-btn-check {
    display: none;
}

.menu-content {
    width: 100%;
    height: 100vh;
    position: fixed;
    padding: 10px 40px 0;
    top: 75px;
    left: -100%;
    z-index: 999;
    background-color: #fff;
    transition: all 0.5s;
    box-sizing: border-box;
}
#menu-btn-check:checked ~ .menu-content {
    left: 0;
}

.textM ,
.textC {
    position: absolute;
    bottom: 10px;
}
.textM {
    opacity:1;
    
}
#menu-btn-check:checked ~ .menu-btn .textM {
    opacity:0;
}
.textC {
    opacity:0;
    
}
#menu-btn-check:checked ~ .menu-btn .textC {
    opacity:1;
}
.menu-content ul {
    padding: 44px 24px 16px;
    margin:0;
}
.menu-content ul li {
    list-style: none;
    background:#fff;
    width:calc(100%);
    border-bottom:1px solid #8c8c8c;
}
.menu-content ul li a::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px #534741;
    border-right: solid 2px #534741;
    position: absolute;
    top:50%;
    transform: translateY(-50%) rotate(45deg);;
    -webkit- transform: translateY(-50%) rotate(45deg);;
    right: 11px;
}
.menu-content #searchSect {
    margin: 0 auto;
    width: 100%;
    text-align: center;
}
.menu-content .searchIcon{
    display:none;
}
@media only screen and (max-width: 992px) {

.menu-content ul li a{
    color:#000;
}
}

.spMenuFooter{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width:calc(100%);
    padding:25px 0 0;
}
.spMenuFooter a{
    background-color:#dadada;
    color:#000;
    font-size:10px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    box-sizing: border-box;
    padding:7px;
    margin:5px
}
/*
.spMenuFooter a:nth-child(1){width:calc(42%); margin-right:2%;}
.spMenuFooter a:nth-child(2){width:calc(27%); margin-right:2%;}
.spMenuFooter a:nth-child(3){width:calc(27%);}
*/


/*mainimage*/

.mainimageOuter{
    background-color:#f3f9fd;
    padding: 0 15px;
}
.mainimageInner{
    position:relative;
    max-width:1200px;
    margin:0 auto;
    padding: 60px 0 105px;
}
.mainimageInner dl{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    margin:0;
    padding:0;
}
.mainimageInner dl dt{
    width:calc(50%);
    margin:0;
    padding:0;
}
.mainimageInner dl dd{
    width:calc(50%);
    margin:0;
    padding:0;
}
@media only screen and (max-width: 992px) {
.mainimageInner{
    padding: 15px 0 50px;
}
.mainimageInner dl dt{
    width:calc(100%);
    padding:0 0 15px;
}
.mainimageInner dl dd{
    width:calc(100%);
}
}

/*topNews*/

.topNewsSect{
    margin-left: 10%;
    background: #fff;
    border-radius: 15px;
    padding: 15px;
    box-sizing: border-box;
    box-shadow: 0 0 30px rgb(0 95 185 / 50%);
    position:relative;
}

.topNewsTitle{
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    flex-wrap: wrap;
    border-bottom:1px solid #005fb9;
}
.topNewsTitle h2{
    padding: 10px;
    margin:0;
    font-size:1.2rem;
    color:#005fb9;
}
.topNewsTitle span{
    font-size:0.8rem;
    color:#e53b16;
    padding:0 5px;
}
.topNewsMore{
    position:absolute;
    top: 20px;
    right: 15px;
}
.topNewsMore a{
    color:#005fb9;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.topNewsMore a:after{
    background-image:url(images/svg/item_arrow-circle_blue.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:30px;
    height:30px;
    margin:0 0 0 5px;
}

.newsList{}
.newsList ul{
    margin:0 auto;
    padding: 0 0 15px;
}
.newsList ul li{
    background-image : linear-gradient(to right, #005fb9 1px, transparent 1px);
    background-size: 7px 1px;
    background-repeat: repeat-x;
    background-position: left bottom;
}
.newsList ul li a{
    color:#333333;
    display:block;
    padding: 23px 5px;
    position:relative;
    
    background:rgba(100,100,100,0.0);
}
.newsList ul li a:hover{
    background:rgba(100,100,100,0.1);
}
.newsList ul li a h3{
    margin:0 0 5px;
    font-size:1rem;
}
.newsList ul li a p{
    margin:0;
    font-size:0.8rem;
}

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

.topNewsSect{
    margin-left: 0%;
}
}

/*topIntro*/

.topIntroOuter{
    background-image:url(images/svg/bg_town.svg);
    background-position:bottom center;
    background-size:contain;
    background-repeat:no-repeat;
    padding:60px 15px 100px;
}
.topIntroInner{}
.topIntroTitle{
    text-align:center;
}
.topIntroInner p{
    text-align:left;
    font-size: 1rem;
    line-height: 1.8rem;
    margin: 40px auto;
    max-width: 900px;
}
.topIntroInner ul{
    margin: 20px auto;
    max-width: 900px;
}
.topIntroInner ul li{
    padding:5px 0;
}
@media only screen and (max-width: 992px) {
.topIntroInner p{
    font-size: 0.8rem;
    line-height: 1.8rem;
    margin: 40px 0;
}
}

/*topSearch*/

.topSearchOuter{
    background-color:#cee8f6;
    padding:50px 15px;
}
.topSearchInner{
    max-width:1200px;
    margin:0 auto;
}
.searchTypeSect{
    display: flex;
    flex-wrap: wrap;
}
.searchCategory{
    width:calc(100% - 400px);
    padding: 30px 100px 0 0;
    box-sizing: border-box;
}
.searchCategory h3{
    padding:0 10px;
    font-size:1.5rem;
}
.searchCategory ul{
    display: flex;
    flex-wrap: wrap;
}
.searchCategory ul li{
    width:33%;
    padding: 10px;
}
.searchCategory ul li a{
    background: #fff;
    border: 3px solid #005fb9;
    border-bottom: 8px solid #005fb9;
    border-radius: 12px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    position:relative;
    
    padding: 10px;
}
.searchCategory ul li a:hover{
    background-color:#005fb9;
    opacity:1;
}
.searchCategory ul li a .categoryA,
.searchCategory ul li a .categoryB{
    
}
.searchCategory ul li a .categoryA{}
.searchCategory ul li a .categoryB{
    position:absolute;
    opacity:0;
}
.searchCategory ul li a:hover .categoryA{
    opacity:0;
}
.searchCategory ul li a:hover .categoryB{
    opacity:1;
}
.searchCategory ul li a:hover .categoryB img{
    opacity:1;
}

.searchCalendar{
    width:400px;
    padding:30px 10px 0;
    box-sizing: border-box;
}
.searchCalendar h3{
    padding:10px 0;
    font-size:1.5rem;
}
.calendarHeader{
    background-color:#e53b16;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    height:75px;
    position: relative;
}
.calendarHeader h4{
    order:2;
    font-size:1rem;
    color:#fff;
    margin:0;
    width:calc(100% - 120px);
    text-align:center;
}
.calendarHeader h4 span{
    order:2;
    font-size:1.5rem;
}
.calendarHeader .btnPrev{
    left: 0;
}
.calendarHeader .btnNext{
    right: 0;
}
.calendarHeader .btnPrev,
.calendarHeader .btnNext{
    background-color:#e53b16;
    border:none;
    width: 60px;
    position: absolute;
    top: 25px;
}

.calendarContainer{
    background-color:#fff;
    border-bottom:12px solid #e53b16;
    padding: 15px 10px;
    box-sizing: border-box;
}
.calendarContainer table{
    width:calc(100%);
}
.calendarContainer table tr{}
.calendarContainer table tr th{
    padding: 10px 0;
}
.calendarContainer table tr td{
    text-align:center;
}
.calendarContainer table tr td p,
.calendarContainer table tr td a{
    width:45px;
    height:60px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    background-color:#efece8;
    margin:0 auto;
    position:relative;
}
.calendarContainer table tr td p{
    opacity:0.5;
}
.calendarContainer table tr td a{
    color:#333;
}
.calendarContainer table tr td a:after{
    border-bottom:2px solid #333;
    content:"";
    display:block;
    width:0.8rem;
    height:1px;
    position:absolute;
    bottom:13px;
}


.searchArea{
    width: 100%;
    padding:0 0 100px;
}
.searchArea h3{
    padding: 30px 10px 15px;
    font-size:1.5rem;
}
.searchArea ul{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.searchArea ul li{
    width:calc(100% / 7);
    padding:10px;
}
.searchArea ul li a{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    background-color:#fff;
    border-radius:7px;
    font-size:1.5rem;
    height:65px;
    
}
.searchArea ul li a:hover{
    color:#fff;
}



@media only screen and (max-width: 1100px) {
.searchCategory{
    width:calc(100% - 400px);
    padding: 30px 30px 0 0;
}
}
@media only screen and (max-width: 992px) {
.searchCategory{
    width:calc(100%);
    padding: 30px 0px 0 0;
    order:1;
}
.searchCategory h3{
    text-align:center;
    padding: 0px 10px 15px;
}
.searchCalendar{
    width:100%;
    order:3;
}
.searchCalendar h3{
    text-align:center;
    padding: 0px 10px 15px;
}
.searchCalendar{
    width:100%;
    order:3;
}
.calendarHeader{
    max-width:calc(400px);
    margin:0 auto;
}
.calendarContainer{
    max-width:calc(400px);
    margin:0 auto;
}
.calendarContainer table tr td p, .calendarContainer table tr td a {
    width: 100%;
}
.searchArea{
    width: 100%;
    padding:0 0 0px;
    order:2;
}
.searchArea h3{
    text-align:center;
}
.searchArea ul{
    display: flex;
    justify-content: flex-start;
}
.searchArea ul li{
    width:calc(100% / 4);
    padding:10px;
}
.searchArea ul li a{
    font-size:1.0rem;
    height:40px;
}
}
@media only screen and (max-width: 578px) {
.topSearchOuter {
    padding: 50px 10px;
}
.searchCategory ul li{
    width:33%;
    padding: 5px;
}
.searchArea ul li{
    width:calc(100% / 3);
    padding:5px;
}
}

.cat01 a{border:3px solid #f15a24; color:#f15a24;}
.cat02 a{border:3px solid #86b81b; color:#86b81b;}
.cat03 a{border:3px solid #00958d; color:#00958d;}
.cat04 a{border:3px solid #d7004a; color:#d7004a;}
.cat05 a{border:3px solid #8a017c; color:#8a017c;}
.cat06 a{border:3px solid #0071bc; color:#0071bc;}
.cat07 a{border:3px solid #2e3192; color:#2e3192;}
.cat01 span{border:1px solid #f15a24; color:#f15a24;}
.cat02 span{border:1px solid #86b81b; color:#86b81b;}
.cat03 span{border:1px solid #00958d; color:#00958d;}
.cat04 span{border:1px solid #d7004a; color:#d7004a;}
.cat05 span{border:1px solid #8a017c; color:#8a017c;}
.cat06 span{border:1px solid #0071bc; color:#0071bc;}
.cat07 span{border:1px solid #2e3192; color:#2e3192;}

.cat01 a:hover{background-color:#f15a24;}
.cat02 a:hover{background-color:#86b81b;}
.cat03 a:hover{background-color:#00958d;}
.cat04 a:hover{background-color:#d7004a;}
.cat05 a:hover{background-color:#8a017c;}
.cat06 a:hover{background-color:#0071bc;}
.cat07 a:hover{background-color:#2e3192;}

span.cat00 {border:1px solid #333333; color:#333333;}
span.cat01 {border:1px solid #f15a24; color:#f15a24;}
span.cat02 {border:1px solid #86b81b; color:#86b81b;}
span.cat03 {border:1px solid #00958d; color:#00958d;}
span.cat04 {border:1px solid #d7004a; color:#d7004a;}
span.cat05 {border:1px solid #8a017c; color:#8a017c;}
span.cat06 {border:1px solid #0071bc; color:#0071bc;}
span.cat07 {border:1px solid #2e3192; color:#2e3192;}


/*topEvent*/

.topEventOuter{
    padding:100px 15px;
}

.topEventInner{
    max-width:1245px;
    margin:0 auto;
    padding:0
}

.eventList{
    margin: 0;
    padding: 20px 0;
}

.eventSlide{}
.eventNotSlide{
    display: flex;
    flex-wrap: wrap;
}
.eventSlide li{
    padding: 22.5px;
    box-sizing: border-box;
}
.eventNotSlide li{
    width:calc(100% / 3);
    padding: 15px;
    box-sizing: border-box;
}
.eventSlide li a,
.eventNotSlide li a{
    display: block;
    border: 1px solid #005fb9;
    background: #fff;
    max-width:370px;
    margin:0 auto;
    padding:15px 25px 10px;
    color:#333333;
    box-sizing: border-box;
    min-height: 295px;
    
    opacity:1.0;
    position:relative;
}
.eventSlide li a:hover,
.eventNotSlide li a:hover{
    opacity:0.8;
}
.eventSlide li a:after,
.eventNotSlide li a:after{
    background-image:url(images/svg/item_arrow-circle_blue.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:30px;
    height:30px;
    margin:0;
    position:absolute;
    bottom:10px;
    right:5px;
}

.eventBoxOuter{}
.eventBoxInner{}

.eventBoxCategory{}
.eventBoxCategory span{
    width:82px;
    height:33px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    color:#4d4d4d;
    font-size:1.05rem;
    position:absolute;
    top:15px;
    left:25px;
    z-index:5;
}
.ct01 span{background-color:#8cc63f;}
.ct02 span{background-color:#fbb03b;}

.eventBoxImage{
    position: relative;
    background-color:#e6e6e6;
}
.eventBoxImage:before{
    content: "";
    display: block;
    padding-top: 100%;
}
.eventBoxImage img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: contain;
}
.eventBoxTitle{
    font-size:1.2rem;
    color:#e53b16;
    font-weight:normal;
    padding:10px 0px;
    font-weight:500;
}
.eventBoxText{
    font-size:0.95rem;
    line-height: 1.5rem;
    color:#4d4d4d;
    margin :0 0 15px;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}
.eventDate{
    color:#666666;
    display: flex;
    justify-content: baseline;
    align-items: center;
    flex-wrap: wrap;
    padding:0 0 5px;
}
.eventDate:before{
    background-image:url(images/svg/icon_date.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:21px;
    height:20px;
    margin:0 5px 0 0;
}
.eventBoxStatus{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    padding:0 15px 0 0;
}
.eventBoxStatus .categoryItem{}
.eventBoxStatus .categoryItem span{
    border:1px solid;
    border-radius:8px;
    font-size:0.8rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    height:29px;
    padding:0 10px;
    margin:5px 0 0 5px;
}

.slick-dots li {
    margin: 0 -1px!important;
}

@media only screen and (max-width: 992px) {
.eventSlide li{
    padding: 10px;
}
.eventSlide li a{
    padding:10px 15px 10px;
}
.eventBoxStatus{
    padding:0 25px 0 0;
}
.eventNotSlide li{
    width:calc(100% / 2);
}
}
@media only screen and (max-width: 678px) {
.eventNotSlide li{
    width:calc(100% / 1);
    padding: 15px 0px;
}
/*
.eventNotSlide li a{
    padding: 10px 15px 10px;
}
.eventBoxInner{
    display: flex;
    flex-wrap: wrap;
}
.eventBoxImage{
    width:calc(40%);
}
.eventBoxText{
    width:calc(60%);
}*/
}


/*topEntry*/

.topEntryOuter{
    background-image:url(images/bg_top-entry.jpg);
    background-position:center;
    background-size:cover;
    padding:100px 15px;
}
.topEntryInner{}
.topEntryTitle{
    text-align:center;
    filter: drop-shadow(0px 4px 6px white);
}
.topEntryText{}
.topEntryText p{
    text-align:center;
    line-height:1.8rem;
    filter: drop-shadow(0px 4px 6px white);
}


/*topMovie*/

.topMovieOuter{
    background-image:url(images/bg_top-movie.png);
    background-position:center;
    background-size:cover;
    padding:100px 15px;
}
.topMovieInner{
    max-width:1230px;
    margin:0 auto;
}

.topMovieList{
    display: flex;
    flex-wrap: wrap;
    padding:30px 0;
}
.movieItem{
    width:calc(100% / 3);
    padding:15px;
    box-sizing: border-box;
}
.movieItem h3{
    font-size:1.1rem;
    color:#e53b16;
}
@media only screen and (max-width: 992px) {
.movieItem{
    width:calc(100% / 2);
}
}

/*topBannerList*/

.topBannerList{}
.topBannerList ul{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
    padding: 50px 0;
}
.topBannerList ul li{
    width:calc(100% / 5);
    padding: 15px;
    box-sizing: border-box;
}
.topBannerList ul li a{
    max-width:207px;
    border:1px solid #1a1a1a;
    box-sizing: border-box;
    display: block;
    margin: 0 auto;
}
@media only screen and (max-width: 768px) {
.topBannerList ul li{
    width:calc(100% / 3);
    padding: 5px;
}
}

/*footer*/

footer{
    background-color:#005fb9;
    color:#fff;
}
.footerInner{
    display: flex;
    flex-wrap: wrap;
    max-width:1100px;
    margin:0 auto;
    position:relative;
}
.footerInfo{
    width:calc(300px);
    padding:25px 15px;
    box-sizing: border-box;
}
.footerInfo p{
    font-size: 1rem;
    line-height:1.4rem;
    color: #fff;
    font-weight: 400;
    margin: 10px 0;
    display:block;
    
}
.footerInfo .telLink{}
.footerInfo .telLink a{
    font-size:1.1rem;
    color:#fff;
    pointer-events:none;
}

.snsLinks{
    display: flex;
    flex-wrap: wrap;
    padding:15px 0 0;
}
.snsLinks a{
    display:block;
    max-width:50px;
    margin:0 10px 0 0;
}
.snsLinks a img{
    border-radius:50px;
}

.footerMenu{
    width:calc(100% - 300px);
}
.footerMenu ul{
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    height: 280px;
    padding: 90px 0px 0px 50px;
    box-sizing: border-box;
}
.footerMenu ul li{
    line-height:14px;
}
.footerMenu ul li a{
    font-size: 0.9rem;
    line-height:1.1rem;
    color: #fff;
    padding: 0 0 0 15px;
    margin: 0 0 20px;
    position: relative;
    display: inline-block;
}
.footerMenu ul li a:before{
    background-image:url(images/svg/item_arrow_w.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    position:absolute;
    top:5px;
    left:0;
    width:5px;
    height:9px;
}
.footerMenu ul li .typeCon:after,
.footerMenu ul li .typeExt:after{
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:14px;
    height:11px;
    position:absolute;
    right: -18px;
    top: 5px;
}
.footerMenu ul li .typeCon:after{background-image:url(images/svg/icon_mail_w.svg);}
.footerMenu ul li .typeExt:after{background-image:url(images/svg/item_arrow-external_w.svg);}




/*totop*/

.active {
    opacity: 1!important;
    visibility: visible!important;
}
.totop {
    position: fixed;
    bottom: 15px;
    right: 15px;
    width: auto;
    z-index: 30;
    opacity: 0;
    visibility: hidden;
    
}


.copyrights{
    background: #005fb9;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    min-height:43px;
    padding:0;
}
.copyrights p{
    color:#fff;
    text-align:center;
    font-size:0.7rem;
    line-height:1rem;
    max-width:1000px;
    width:100%;
    margin:0 auto;
}



@media only screen and (max-width: 992px) {
footer{
    padding:0 15px 60px;
}
.footerInfo{
    width:calc(100%);
    margin:0 auto;
    text-align:center;
    padding: 25px 15px 0;
}

.footerInfo dl{
    justify-content: center;
    padding:5px 0;
}
.footerInfo dl dd a{
    text-decoration:underline;
    pointer-events:auto;
}
.snsLinks{
    justify-content: center;
    align-items: center;
}
.footerMenu{
    width:calc(100%);
}
.footerMenu ul{
    height: auto;
    padding: 30px 0px 10px;
    flex-direction: initial;
}
.footerMenu ul li{
    line-height:14px;
    width:calc(100% / 3);
}
.footerMenu ul li:last-child{
    width:calc(100%);
}
.footerMenu ul li a{
    font-size: 0.9rem;
    line-height:1.1rem;
    color: #fff;
    padding: 0 0 0 15px;
    margin: 0 10px 10px 0;
    position: relative;
    display: inline-block;
}
.copyrights{
    padding:20px 0 0;
}
.totop{
    width:45px;
}
}
@media only screen and (max-width: 578px) {
.footerMenu ul li{
    width:calc(100% / 2);
}
}




/*base & subpage*/

.baseTitle{
    text-align:center;
}
.baseTitle h2{
    font-size:2.3rem;
    font-weight:bold;
    color:#333333;
    margin:0;
}
.baseTitle span{
    font-size:0.8rem;
    font-weight:bold;
    color:#e53b16;
    padding:10px 0 0;
    display:block;
}



.baseSubTitle{
}
.baseSubTitle h3{
    font-size:1.5rem;
    font-weight:400;
    background-color:#005fb9;
    color:#ffffff;
    margin:0;
    text-align:left;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    min-height: 60px;
    padding:10px 10px 10px 50px;
}

.baseText{}
.baseText p{
    margin: 15px 0 50px;
    line-height: 1.8rem;
}
.baseIntro{}
.baseIntro p{
    line-height: 1.8rem;
    text-align:center;
}

@media only screen and (max-width: 992px) {
.baseSubTitle h3{
    padding:10px 10px 10px 10px;
}
}



.baseLink{
    width:100%;
    max-width:600px;
    height:67px;
    position:relative;
    margin:0 auto;
}
.baseLink:before{
    background:transparent;
    content:"";
    display:block;
    width:100%;
    height:100%;
    border-left:2.5px solid rgba(0,0,0,0.25);
    border-right:2.5px solid rgba(0,0,0,0.25);
    border-bottom:5px solid rgba(0,0,0,0.25);
    border-radius:100px;
    position:absolute;
    top:5px;
    left:0;
    z-index:1;
    box-sizing: border-box;
    mix-blend-mode: multiply;
}
.baseLink a{
    width:100%;
    max-width:600px;
    height:67px;
    font-size:1.8rem;
    border:3px solid #4d4d4d;
    border-radius:100px;
    color:#4d4d4d;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin:0 auto;
    opacity:1.0;
    
    position:relative;
    background-color:#fff;
    z-index:5;
    box-sizing: border-box;
}
.baseLink a:hover{
    opacity:0.8;
}
.baseLink a:after{
    background-image:url(images/svg/item_arrow_gray.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:15px;
    height:27px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    right:10px;
    z-index:10;
}

.subpageOuter{
    background-image: url(images/bg_subpage.jpg);
    background-position: bottom center;
    background-size: contain;
    padding: 0 15px;
    background-repeat: no-repeat;
}
.subpageInner{
    max-width:1000px;
    margin:0 auto;
}

.subpageTitle{}
.subpageTitle h2{
    text-align: center;
    padding: 10px 0 30px;
    color: #534741;
    font-weight: 600;
}

.basePager{
    padding:30px 0 100px;
}
.basePager ul{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.basePager ul li{
    font-size:0.8rem;
    line-height:0.8rem;
    font-weight:500;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding:5px;
}
.basePager ul li p,
.basePager ul li a{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width:31px;
    height:31px;
    text-align:center;
    
    margin: 0;
}
.basePager ul li a{
    background-color:#ffffff;
    border:1px solid #cccccc;
    color:#808080;
}
.basePager ul li p{
    background-color:#e53b16;
    border:1px solid #e53b16;
    color:#fff;
}
.prevArrow a,
.prevArrow p,
.nextArrow a,
.nextArrow p{
    background-color: transparent!important;
    border:none!important;
}
.prevArrow p,
.nextArrow p{filter: grayscale(1); opacity:0.5;}

.basePager ul li a:hover{
    background-color:#e53b16;
    border:1px solid #e53b16;
    color:#fff;
}
.basePager ul li span{}



.eng{
    font-family: 'Outfit', sans-serif;
}

.pageCount{}
.pageCount p{
    color:#333333;
    font-size:1rem;
}
.pageCount p span{
    color:#e53b16;
    font-size:1.1rem;
}


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

.baseTitle h2{
    font-size:1.7rem;
}
.baseTitle span{
    font-size:0.6rem;
}
.baseTitle h3{
    font-size:1.5rem;
    padding:10px 10px 10px 15px;
}

/*
.baseLink{
    max-width:200px;
    height:42px;
}*/

.baseLink a{
/*
    max-width:200px;
    height:42px;
*/
    font-size:0.9rem;
}
.basePager ul li p,
.basePager ul li a{
    width:25px;
    height:25px;
}
}



/*subpage*/

.breadcrumb{
    padding:0 15px;
    background-color:#f5f5fa;
}
.breadcrumb ul{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    max-width:1000px;
    margin: 0 auto;
    height: 30px;
}
.breadcrumb ul li{}
.breadcrumb ul li a,
.breadcrumb ul li p{
    margin:0;
    font-size:0.8rem;
    line-height:0.8rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    position:relative;
}
.breadcrumb ul li a{
    color:#1d365b;
}
.breadcrumb ul li a:before{
    background-color:#1d365b;
    content:"";
    display:block;
    width:calc(100% - 2em);
    height:1px;
    position:absolute;
    bottom:-5px;
    left:0;
}
.breadcrumb ul li a:after{
    content:"＞";
    padding: 0 0.5em;
}
.breadcrumb ul li p{
    color:#333333;
}
@media only screen and (max-width: 992px) {
.breadcrumb{
    border-top:1px solid #7e7e7e;
    border-bottom:1px solid #7e7e7e;
}
.breadcrumb ul{
    margin: 0 auto;
    height: auto;
    padding: 5px 0;
}
.breadcrumb ul li a,
.breadcrumb ul li p{
    font-size:10px;
    line-height:10px;
    margin:5px 0;
}


}

.subheaderOuter{
    background-color:#fff;
    filter: drop-shadow(0px 5px 6px rgba(0,0,0,0.2));
}
.subheaderInner{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    height:90px;
}
.subheaderTitle{
    text-align:center;
}
.subheaderTitle h2{
    margin:0;
    padding:0;
    color:#333333;
    text-align:center;
    font-size:2rem;
    font-weight:500;
}
.subheaderTitle span{
    color:#e53b16;
    font-size:0.9rem;
    font-weight:bold;
    padding:5px 0 0;
    display:block;
}

.baseOuter{
    padding: 50px 15px;
    background-color:#f5f5fa;
}
.bgLightBlue{
    background-color:#E7F3FA;
}
.baseInner{
    max-width:1000px;
    margin:0 auto;
}
.baseInnerLong{
    max-width:1200px;
    margin:0 auto;
}

.detailText{
    padding: 30px 0;
    /*font-size:1.25rem;*/
    line-height:2rem;
}
.detailText p{
}
.detailText a{
    color:#1a73e8;
    text-decoration:underline;
}
.detailText img{
    display: inline-block;
    height: auto;
    max-width: 100%;
    margin:0 auto;
    vertical-align:top;
}
.detailText ul{
    list-style: initial;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 40px;
}


@media only screen and (max-width: 992px) {
.subheaderInner{
    height:135px;
}
}



/*searchOption*/
.ui-datepicker{
    border-left:1px solid #e53b16!important;
    border-right:1px solid #e53b16!important;
    border-bottom:8px solid #e53b16!important;
    padding:0!important;
    z-index: 10!important;
    position:relative;
    margin-top:15px;
}
.ui-datepicker::before{
    background-image:url(images/svg/item_arrow_windowtale.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:20px;
    height:13px;
    position:absolute;
    top:-13px;
    left: 48px;
}
.ui-widget-header {
    border: none!important;
    background-color:#e53b16!important;
    color:#fff!important;
    border-radius:0px!important;
}
.ui-datepicker-title{
}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button{
    border: none!important;
    background: #efece8;
    margin: 3px!important;
    text-align: center!important;
    padding: 10px 0!important;
}
.ui-datepicker-prev-hover,
.ui-datepicker-next-hover{
    background-color: #e53b16!important;
    border-color: #e53b16!important;
    opacity:0.7;
}
.ui-state-active {
    background: #e53b16!important;
}
.ui-datepicker table {
    width: calc(100% - 20px)!important;
    margin: 0 10px 0.4em!important;
}


.ui-icon-circle-triangle-w,
.ui-icon-circle-triangle-e{
    background-position:center center!important;
}
.ui-icon-circle-triangle-w{
    background-image:url(images/svg/item_arrow_prev.svg)!important;
}
.ui-icon-circle-triangle-e{
    background-image:url(images/svg/item_arrow_next.svg)!important;
}

.help_area {
    position: relative;
    text-align: center;
    margin:0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.help_area a {
    padding: 3px 35px 3px 5px;
    height:32px;
    display: flex;
    /*justify-content: center;*/
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    box-sizing: border-box;
    position: relative;
    text-decoration: none;
    color: #999;
    font-weight: 400;
    background: #FFFFFF;
    border: solid 1px #333333;
    font-size: 1.0rem;
    border-radius: 5px;/*
    transition: 0.3s ease-in-out;*/
    margin: 0 0 0 20px;
    white-space: nowrap;
    overflow: hidden;
    width:calc(100%);
}
.help_area a:after{
    background-image:url(images/svg/item_arrow_select.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:14px;
    height:10px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    right:5px;
}
.tooltip {
    position: absolute;
    background-color: rgb(255 255 255);
    color: #333;
    border: 2px solid #e53b16;
    border-radius: 0.3em;
    padding: 0;
    margin: 0.3em 0 0 0;
    display: none;
    top: 40px;
    left: 50%;
    transform: translateX(-50%);
    animation-name: fade-in;
    animation-duration: 0.5s;
    z-index: 9;
}
.positionTop{
    top: auto;
    bottom: 45px;
}
.tooltip:after {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    margin-left: -10px;
    border: 10px solid transparent;
    border-bottom: 15px solid rgb(229 59 22);
}
.positionTop:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -10px;
    border: 10px solid transparent;
    border-top: 15px solid rgb(229 59 22);
}
.tooltip_inner {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 15px 20px 15px;
    flex-wrap: wrap;
    width: 300px;
}
.tooltip_inner label{
    width:calc(50%);
    text-align:left;
}

@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@media only screen and (max-width: 992px) {
.help_area a {
    margin: 0;
    width: 100%;
    justify-content: flex-start;
}
}
@media only screen and (max-width: 768px) {

.tooltip {
    top: 40px;
    left: auto;
    right:0;
    transform:none;
    width: calc(200% + 30px);
    box-sizing: border-box;
}
.tooltip:after {
    left: auto;
    right: 30px;
}
.positionTop {
    top: auto;
    bottom: 45px;
    right: 0;
    transform: none;
    left: 0;
    width: calc(200% + 30px);
    box-sizing: border-box;
}
.positionTop:after {
    left: 30px;
    right:auto;
}
.positionLeft {
    left: 0;
    width: calc(200% + 30px);
}
.positionLeft:after {
    left: 30px;
    right:auto;
}
.tooltip_inner {
    width: 100%;
}
.tooltip_inner label{
    width:calc(33%);
}
}
@media only screen and (max-width: 478px) {
.tooltip_inner {
    padding: 15px 10px 15px;
}
.tooltip_inner label{
    width:calc(50%);
}
}

.searchOptionSettings{
    display: flex;
    flex-wrap: wrap;
    position: relative;
    z-index: 9;
    max-width: 910px;
    margin: 0 auto;
}
.searchOptionTitle{
    order:1;
    width: 175px;
}
.searchOptionWord{
    order:2;
    width: calc(100% - 435px);
}
.searchOptionCategory{
    order:3;
    width: 175px;
}
.searchOptionDate{
    margin: 10px 0 0;
    order:5;
    width: 255px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.searchOptionArea{
    margin: 10px 0 0 20px;
    order:6;
    width: 200px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.searchOptionGenre{
    margin: 10px 0 0;
    order:7;
    width: 175px;
}
.searchOptionTarget{
    margin: 10px 0 0 0;
    order:8;
    width:calc(100% - 650px);
}
.searchOptionLimit{
    margin: 10px 0 0 20px;
    order:9;
    width:calc(100%);
}
.searchOptionSubmit{
    order:4;
    width: 85px;
}

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

.searchOptionTitle{
    order:1;
    width:calc(100%);
    text-align:center;
}
.searchOptionWord{
    order:2;
    width:calc(100%);
    margin:0 0 5px;
}
.searchOptionCategory{
    order:3;
    width:calc(50% - 15px);
    margin:0 30px 5px 0;
}
.searchOptionGenre{
    margin:0 0 5px;
    order:4;
    width:calc(50% - 15px);
}
.searchOptionDate{
    margin:0 0 5px;
    order:5;
    width:calc(100%);
}
.searchOptionArea{
    margin:0 0 5px;
    order:6;
    width:calc(100%);
}
.searchOptionTarget{
    margin: 0 30px 5px 0;
    order: 7;
    width: calc(50% - 15px);
}
.searchOptionLimit{
    margin:0;
    order:9;
    width:calc(100%);
}
.searchOptionSubmit{
    order: 8;
    width: calc(50% - 15px);
    justify-content: flex-end;
    display: flex;
}

}





.searchOptionTitle h3{
    color: #005fb9;
    font-size: 1rem;
    margin: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    height: 32px;
}
.searchOptionWord input {
    width: calc(100%);
    height: 32px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    border: 1px solid #333;
    border-radius: 5px;
    font-size: 1rem;
}
.searchOptionDate label{
    position:relative;
}
.searchOptionDate label:before{
    background-image:url(images/svg/icon_calendar.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:14px;
    height:14px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    left:5px;
}
.searchOptionDate label input{
    width:7em;
    height: 32px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    border: 1px solid #333;
    border-radius: 5px;
    font-size: 1rem;
    text-align: right;
}
.searchOptionDate span{
    width: calc(30px);
    text-align: center;
    display: block;
}
.searchOptionArea{}
.searchOptionArea select:first-child{
    margin-right:5px;
}
.searchOptionArea select{
    height: 32px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    border: 1px solid #333;
    border-radius: 5px;
    font-size: 1rem;
}
.searchOptionArea select{
    color:#333;
}
.searchOptionLimit{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
}
.searchOptionLimit label{}
.searchOptionLimit label span{
    font-size:0.9rem;
}
.searchOptionSubmit label{
    background-color:#005fb9;
    border-radius:5px;
    width:65px;
    height:32px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin:0 0 0 20px;
}
.searchOptionSubmit label input{
  appearance: none;
  -webkit-appearance: none;
    border: none;
    background-color: transparent;
    color: #fff;
}

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

.searchOptionTitle h3{
    text-align:center;
    width:calc(100%);
    justify-content: center;
}
.searchOptionDate label{
    width:calc(50% - 15px);
}
.searchOptionDate label input{
    width:calc(100%);
    text-align: left;
    padding: 0 25px;
}
.searchOptionArea select{
    width:calc(50% - 15px);
}
.searchOptionArea select:first-child{
    margin-right:30px;
}
}


/*eventDetail*/

.eventDetailBase{
    display: flex;
    flex-wrap: wrap;
    max-width: 1100px;
    margin: 0 auto;
}

.eventDetailIntro,
.eventDetailOutro,
.detailBottomInfo{
    width:calc(100%);
}
.eventDetailText,
.eventDetailSlide,
.eventDetailContact,
.eventDetailBase .instructorCardLink{
    width:calc(50%);
    position: relative;
}
.eventDetailText{
    padding: 0 30px 0 0;
    box-sizing: border-box;
}
@media only screen and (max-width: 992px) {


.eventDetailIntro{order:1;}
.eventDetailSlide{order:2;}
.eventDetailText{order:3; padding: 0 0 0 0;}
.eventDetailContact{order:4; margin:30px 0 0; padding: 0 0 0 0;}
.eventDetailOutro{order:5;}
.detailBottomInfo{order:6;}
.eventDetailBase .instructorCardLink{order:7; margin: 0 0 30px;}

.eventDetailIntro,
.eventDetailOutro,
.detailBottomInfo{
    width:calc(100%);
}
.eventDetailText,
.eventDetailSlide,
.eventDetailContact,
.eventDetailBase .instructorCardLink{
    width:calc(100%);
}
}



.baseSubTitle h3 span{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width:55px;
    height:35px;
    font-size: 16px;
    line-height:1rem;
    margin:0 0 0 10px;
}

.titleNewIcon{
    color:#333333;
    background-color: #FCEE21;
}
.titleAcceptable{
    color:#333333;
    background-color: #8cc63f;
}
.titleDeadline{
    color:#333333;
    background-color: #e53b16;
}
.titleEndIcon{
    color:#ffffff;
    background-color: #4d4d4d;
    border: 1px solid #999;
}

.eventDetailIntro{
    padding:0 0 20px;
}
.eventDetailIntro p{
    line-height:1.8rem;
}

.infoIcons{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    box-sizing: border-box;
    padding: 0 140px 0 0;
    margin: 0 0 0 -5px;
}
.infoIcons span{
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 0 10px;
    margin: 5px;
    border-radius: 5px;
}
.iconKenmin{
    background-color:#005FB9;
    color:#ffffff;
}
.iconNotKenmin{
    background-color:#e7f3fa;
    color:#005fb9;
    border: 1px solid #005fb9;
}

.goodBtn{
    position: absolute;
    right: 30px;
    top: 5px;
}
.goodBtn a{}
.goodBtn a dl{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    border:1px solid #999999;
    border-radius: 2px;
    width:calc(135px);
    box-sizing: border-box;
    margin: 0;
    height: 36px;
}
.goodBtn a dl dt{
    width: calc(84px);
    background-color: #FF6699;
    color: #ffffff;
    margin: 0;
    padding: 0 10px 0 5px;
    height: 34px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    font-size: 16px;
}
.goodBtn a dl dd{
    width:calc(49px);
    box-sizing: border-box;
    color:#000000;
    margin:0;
    padding: 4px;
    text-align: right;
}
@media only screen and (max-width: 992px) {
.goodBtn{
    right: 0px;
}
}


.eventDetailList{
    box-sizing: border-box;
}
.eventDetailList dl{
    border-top:1px dashed #808080;
    margin:0;
    padding: 19px 0;
    display: flex;
    flex-wrap: wrap;
}
.eventDetailList dl:last-child{
    border-bottom:1px dashed #808080;
}
.eventDetailList dl dt{
    margin:0;
    padding:0;
    width:calc(110px);
    color:#005FB9;
}
.eventDetailList dl dd{
    margin:0;
    padding:0 10px;
    width:calc(100% - 110px);
    box-sizing: border-box;
    color:#333;
}
.linkTypeArrow{
    color:#333;
    display: flex;
    flex-wrap: wrap;
}
.linkTypeArrow:after{
    background-image:url(images/svg/item_arrow_orange.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:9px;
    height:16px;
    margin:0 0 0 5px;
}
.linkTypeURL{
    text-decoration:underline;
    color:#333;
}

.eventDetailSlide{
    margin:0 0 30px;
}
.eventDetailSlideImage{
    position: relative;
    background-color: #e6e6e6;
}
.eventDetailSlideImage:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.eventDetailSlideImage img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: contain;
}

.eventDetailContact{
    padding: 0 30px 0 0;
    box-sizing: border-box;
}
.eventDetailContact dl{
    border:1px solid #333333;
    background-color:#005FB9;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    box-sizing: border-box;
    margin:0;
    padding:0;
}
.eventDetailContact dl dt{
    width:calc(125px);
    color:#fff;
    margin:0;
    padding:0;
    text-align:center;
}
.eventDetailContact dl dd{
    width:calc(100% - 125px);
    color:#333;
    margin:0;
    padding:7px;
    background-color:#fff;
}
.eventDetailContact dl dd p{
    margin:10px 0;
    font-size:0.9rem;
}
.eventDetailContact dl dd p span{
    color:#005FB9;
    font-size: 1rem;
    font-weight: 500;
    width: 5rem;
    display: inline-block;
}
.eventDetailContact dl dd p a{
    font-size:1.4rem;
    color:#333;
    pointer-events:none;
    font-weight:bold;
}

.fileLink{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin:30px 0;
}
.fileLink a{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width:300px;
    height:60px;
    font-size:1.2rem;
    color:#005FB9;
    border:2px solid #005FB9;
    border-radius:2px;
    position:relative;
    background: #fff;
}
.pdfIcon a:before{
    background-image:url(images/svg/icon_pdf.svg);
}
.excelIcon a:before{
    background-image:url(images/svg/icon_excel.svg);
}
.wordIcon a:before{
    background-image:url(images/svg/icon_word.svg);
}
.fileLink a:before{
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:22px;
    height:24px;
    margin:0;
    position:absolute;
    left:15px;
}
.fileLink a:after{
    background-image:url(images/svg/item_arrow_blue.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:10px;
    height:16px;
    margin:0;
    position:absolute;
    right:15px;
}

.eventDetailOutro{
    margin: 10px 0 50px;
}

.eventDetailBase .detailBottomInfo{

}

.snsMiniBtn{}
.snsMiniBtn ul{
    display: flex;
    flex-wrap: wrap;
    margin:20px 0 0;
}
.snsMiniBtn ul li{}
.snsMiniBtn ul li a{
    margin:0 15px 0 0;
}
@media only screen and (max-width: 992px) {
.eventDetailContact{
    padding:0;
}
.eventDetailContact dl dd p a{
    pointer-events: auto;
    font-weight: bold;
    position: relative;
    display: inline-block;
    background: #4cd862;
    color: #fff;
    width: 11.2rem;
    padding: 5px 5px;
    text-align: right;
    border-radius: 5px;
}
.eventDetailContact dl dd p a:after{
    background-image:url(images/svg/icon_tel.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:16px;
    height:20px;
    margin:0;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    left:10px;
}
}
@media only screen and (max-width: 578px) {

.eventDetailContact dl dt{
    width:calc(100%);
    padding:10px;
}
.eventDetailContact dl dd{
    width:calc(100%);
}
}


/*detailBottomInfo*/

.detailBottomInfo{
    margin: 30px 0 50px;
}
.tagsLink{}
.tagsLink ul{
    display: flex;
    flex-wrap: wrap;
}
.tagsLink ul li{}
.tagsLink ul li a{
    color:#E53B16;
    margin:0 15px 0 0;

}
.latestDate{}
.latestDate p{
    text-align: right;
    font-size: 0.9rem;
}

/*instructor*/

.instructorList{
    display: flex;
    flex-wrap: wrap;
}
.instructorList .instructorCardLink{
    width:calc(50%);
    padding:15px;
    box-sizing: border-box;
}

.instructorCardLink a{
    border: 2px solid #005FB9;
    background-color: #fff;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 5px 35px 5px 5px;
    position: relative;
    min-height: 175px;
}
.instructorCardLink a:after {
    background-image: url(images/svg/item_arrow-circle_blue.svg);
    background-size: cover;
    background-position: center;
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    position:absolute;
    right:0;
    bottom:0;
}
.nodata{
    pointer-events:none;
    min-height: auto!important;
}
.nodata:after{
    display:none!important;
}
.instructorCardLink a dl{
    display: flex;
    flex-wrap: wrap;
    margin:0;
    padding:0;
    width:calc(100%);
}
.instructorCardLink a dl dt{
    width:calc(100px);
    margin:0;
    padding:0;
}
.instructorCardLink a dl dd{
    width:calc(100% - 100px);
    margin:0;
    padding: 10px;
}
.instructorCardLink a dl dd .instructorAffiliation{
    margin:0 0 8px;
}
.instructorCardLink a dl dd .instructorAffiliation span{
    color:#005FB9;
    font-size:0.9rem;
}
.instructorCardLink a dl dd .instructorName{
    color:#333333;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.instructorCardLink a dl dd .instructorName h4{
    margin:0;
    font-size:1.6rem;
    line-height:1.8rem;
}
.instructorCardLink a dl dd .instructorName span{
    font-size:0.9rem;
    padding: 0 0 0 10px;
}
.instructorCardLink a dl dd .instructorComment{
    color:#333333;
    padding:8px 0 0;
}
.instructorCardLink a dl dd .instructorComment p{
    margin:0;
    font-size:0.9rem;
    line-height:1.4rem;
}
@media only screen and (max-width: 992px) {
.current03 .searchOptionCategory {
    width: calc(100% - 85px);
    margin: 0 0px 5px 0;
}
.current03 .positionTop {
    width: calc(100% + 85px);
}
.instructorList .instructorCardLink{
    width:calc(100%);
    padding:15px 0;
}
}


.instructorDetailBase{
    display: flex;
    flex-wrap: wrap;
    position:relative;
}
.instructorDetailBase .instructorDetailB{
    position:absolute;
    top:0;
    left:0;
}
.instructorDetailBase .instructorImage{
    width:calc(200px);
}
.instructorDetailBase .instructorText{
    width: calc(100%);
    box-sizing: border-box;
    padding: 0 0 0 240px;
}

.instructorDetailName{}
.instructorDetailName h3{
    color:#333333;
    font-size:2rem;
    margin:0 0 20px;
}
.instructorDetailCategory{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.instructorDetailCategory span{
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 0 10px;
    margin: 5px;
    border-radius: 5px;
    border:1px solid #333;
    color:#333;
}
.instructorDetailCategory p{
    margin:0;
}
.instructorDetailComment{
    line-height:1.5rem;
    margin:15px auto;
}
.instructorDetailComment p{
}

.instructorDetailList{}
.instructorDetailList dl{
    display: flex;
    flex-wrap: wrap;
    border-top:1px dashed #4D4D4D;
    margin:0;
    padding: 10px 0;
    min-height: 70px;
    box-sizing: border-box;
}
.instructorDetailList dl:last-child{
    border-bottom:1px dashed #4D4D4D;
}
.instructorDetailList dl dt{
    width:calc(130px);
    margin:0;
    padding: 15px 0 0;
}
.instructorDetailList dl dt span{
    font-size:0.6rem;
}
.instructorDetailList dl dd{
    width:calc(100% - 130px);
    margin:0;
    padding:0 0 0 20px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    box-sizing: border-box;
    line-height:1.5rem;
    word-break: break-all;
}
.instructorDetailList dl dd span{
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 0 10px;
    margin: 5px;
    border-radius: 5px;
}
.instructorDetailContact{
    margin:30px 0 0;
}
.instructorDetailContact h4{
    padding: 10px;
    background: #f5f5fa;
    max-width: 5rem;
    text-align: center;
    position: relative;
    margin: 0 0 -15px 20px;
}
.instructorDetailContact dl{
    border: 1px solid #005FB9;
    padding: 15px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin:0;
}
.instructorDetailContact dl dt{}
.instructorDetailContact dl dd{
    padding: 10px 0;
}
.instructorDetailContact dl dd a{
    pointer-events:none;
    font-weight:bold;
    color:#333;
}

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

.instructorDetailContact dl dd a{
    pointer-events: auto;
    font-weight: bold;
    position: relative;
    display: inline-block;
    background: #4cd862;
    color: #fff;
    width: 11.2rem;
    padding: 5px 5px;
    text-align: right;
    border-radius: 5px;
}
.instructorDetailContact dl dd a:after{
    background-image:url(images/svg/icon_tel.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:16px;
    height:20px;
    margin:0;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    left:10px;
}
}

@media only screen and (max-width: 768px) {
.instructorDetailBase .instructorText{
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}
.instructorDetailBase .instructorDetailA{
    width:calc(58%);
    order:2;
}
.instructorDetailBase .instructorDetailB{
    position:relative;
    width:calc(42%);
    order:1;
}
.instructorDetailBase .instructorImage{
    width:calc(100%);
    padding: 0 15px 0 0;
    box-sizing: border-box;
}
.instructorDetailBase .instructorImage img{
    width:calc(100%);
}
.instructorDetailBase .instructorDetailC{
    order:3;
    width:calc(100%);
}
.instructorText .instructorDetailContact{order:4;}
.instructorText .detailBottomInfo{order:5;}
}

/*movie*/
.movieList{
    display: flex;
    flex-wrap: wrap;
}
.movieList .movieItem{
    width:calc(50%);
}

@media only screen and (max-width: 992px) {
.current05 .searchOptionCategory {
    width: calc(100% - 85px);
    margin: 0 0px 5px 0;
}
.current05 .positionTop {
    width: calc(100% + 85px);
}
.movieList .movieItem{
    width:calc(100%);
    padding:15px 0;
}
}



/*activity*/

.activityCardLink{}
.activityCardLink a{
    border:3px solid #005FB9;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 30px 0;
    background-color:#fff;
    box-sizing: border-box;
    padding: 5px 35px 5px 5px;
    position:relative;
}
.activityCardLink a:after {
    background-image: url(images/svg/item_arrow-circle_blue.svg);
    background-size: cover;
    background-position: center;
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    position:absolute;
    right:0;
    bottom:0;
}

.activityCardLink .activityCardInner{
    width: 100%;
    min-height: 150px;
}

.activityCardLink .activityCardInner .activityTitle{
    padding:0 0 0 210px;
}
.activityCardLink .activityCardInner .activityTitle h4{
    margin: 10px 0 0px;
    font-size: 1.3rem;
    line-height:1.8rem;
    color:#E53B16;
}
.activityCardLink .activityCardInner .activityImage{
    position: absolute;
    top: 10px;
    left: 10px;
    /*background-color:#e6e6e6;*/
    width:190px;
}
.activityCardLink .activityCardInner .activityImage:before{
    content: "";
    display: block;
    padding-top: 73%;
}
.activityCardLink .activityCardInner .activityImage img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: contain;
    object-position: top;
}
.activityCardLink .activityCardInner .activityInfo{
    margin:0;
    padding:0 0 0 210px;
    color:#666666;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.activityCardLink .activityCardInner .activityInfo span{
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 0 10px;
    margin: 5px;
    border-radius: 5px;
    border: 1px solid #666666;
    color: #666666;
}
.activityCardLink .activityCardInner .activityComment{
    padding:8px 0 10px 210px;
    color:#333333;
    margin:0;
    font-size:0.9rem;
    line-height:1.4rem;
}
.activityCardLink .activityCardInner .activityComment p{
}

/*
.activityCardLink a dl{
    display: flex;
    flex-wrap: wrap;
    margin:0;
    padding:0;
    width:calc(100%);
}
.activityCardLink a dl dt{
    width:calc(190px);
    margin:0;
    padding:0;
}
.activityCardLink a dl dd{
    width:calc(100% - 190px);
    margin:0;
    padding: 10px;
}*/

@media only screen and (max-width: 992px) {
.current06 .searchOptionCategory {
    width: calc(100% - 85px);
    margin: 0 0px 5px 0;
}
.current06 .positionTop {
    width: calc(100% + 85px);
}
}
@media only screen and (max-width: 768px) {
.activityCardLink .activityCardInner{
    display: flex;
    flex-wrap: wrap;
}
.activityCardLink .activityCardInner .activityTitle{
    padding:0;
    width: calc(100% + 35px);
    order: 1;
    margin: 0 -30px 5px 0px;
}
.activityCardLink .activityCardInner .activityImage{
    position:relative;
    top: 0px;
    left: 0px;
    width:45%;
    padding:0;
    order:2;
    box-sizing: border-box;
}
.activityCardLink .activityCardInner .activityComment{
    width:55%;
    order:3;
    padding:8px 0 10px 15px;
    box-sizing: border-box;
}
.activityCardLink .activityCardInner .activityInfo{
    margin:0;
    padding:0;
    box-sizing: border-box;
    width:100%;
    order:4;
}
}

/*register & contact*/

.registerIntro,
.contactIntro{
    text-align:center;
    max-width:800px;
    margin:0 auto;
}
.registerIntro h3{
    font-size:1.8rem;
    font-weight:500;
    color:#005FB9;
}
.registerIntro p,
.contactIntro p{
    font-size:1.15rem;
    line-height:1.8em;
}
.registerIntro span,
.contactIntro span{
    margin:10px 0;
    display: block;
}
.registerIntro span em,
.contactIntro span em{
    color:#E53B16;
    font-style: normal;
}
@media only screen and (max-width: 992px) {

.registerIntro p,
.contactIntro p{
    text-align:left;
}
.registerIntro span,
.contactIntro span{
    text-align:left;
}
}

/*formDetail*/

.formDetail{
    max-width:800px;
    margin: 50px auto;
}
.formDetail em{
    color:#E53B16;
    font-style: normal;
}
.formDetail dl{
    display: flex;
    flex-wrap: wrap;
    margin:0 0 27px;
    padding:0;
}
.formDetail dl dt{
    width:calc(245px);
    margin:0;
    padding: 7px 0;
}
.formDetail dl dd{
    width:calc(100% - 245px);
    margin:0;
    padding:0;
}
.formDetail dl dd input[type="text"],
.formDetail dl dd input[type="number"],
.formDetail dl dd input[type="tel"],
.formDetail dl dd input[type="email"],
.formDetail dl dd textarea{
    border:1px solid #B3B3B3;
    border-radius:5px;
    background-color:#F3F3F3;
    padding: 7px;
    box-sizing: border-box;
}
.formDetail dl dd input[type="text"],
.formDetail dl dd input[type="tel"],
.formDetail dl dd input[type="email"],
.formDetail dl dd textarea{
    width: 100%;
}
.formDetail dl dd input[type="number"]{
    width: 5rem;
    margin: 0 10px 0 0;
}

.privacyCheck{
    margin:0 0 30px;
}
.privacyCheck label{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width:100%;
    height:60px;
    border:1px solid #B3B3B3;
    background-color:#fff;　
}
.privacyCheck label a{
    color:#0071BC;
    text-decoration:underline;
}


.submitLink{
    width:100%;
    max-width:600px;
    height:67px;
    position:relative;
    margin:0 auto;
}
.submitLink:before{
    background:transparent;
    content:"";
    display:block;
    width:100%;
    height:100%;
    border-left:2.5px solid rgba(0,0,0,0.25);
    border-right:2.5px solid rgba(0,0,0,0.25);
    border-bottom:5px solid rgba(0,0,0,0.25);
    border-radius:100px;
    position:absolute;
    top:5px;
    left:0;
    z-index:1;
    box-sizing: border-box;
    mix-blend-mode: multiply;
}
.submitLink label{
    width:100%;
    max-width:600px;
    height:67px;
    border:3px solid #4d4d4d;
    border-radius:100px;
    color:#4d4d4d;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin:0 auto;
    opacity:1.0;
    
    position:relative;
    background-color:#fff;
    z-index:5;
    box-sizing: border-box;
}
.submitLink label:hover{
    opacity:0.8;
}
.submitLink label:after{
    background-image:url(images/svg/item_arrow_gray.svg);
    background-size:cover;
    background-position:center;
    content:"";
    display:block;
    width:15px;
    height:27px;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
    right:10px;
    z-index:10;
}

.submitLink label input[type="submit"]{
  appearance: none;
  -webkit-appearance: none;
    position: relative;
    z-index: 10;
    border:none;
    background:transparent;
    font-size:1.8rem;
    color:#333;
}


@media only screen and (max-width: 992px) {
.submitLink label input[type="submit"]{
    font-size:0.9rem;
}
}
@media only screen and (max-width: 678px) {
.formDetail dl dt{
    width:calc(100%);
}
.formDetail dl dd{
    width:calc(100%);
}
}


/*facility*/

.current04{}
.current04 .searchOptionSettings {
    justify-content: center;
    align-items: center;
}
.current04 .searchOptionArea {
    width: auto;
    order:2;
    margin: 0;
}
@media only screen and (max-width: 992px) {
.current04 .searchOptionSettings {
    justify-content: flex-end;
}
.current04 .searchOptionArea {
    width:calc(100%);
    margin:0 0 10px;
}
}

.facilityList{
    display: flex;
    flex-wrap: wrap;
    margin:30px 0 0;
}
.facilityCardLink{
    width:calc(50%);
    padding: 15px;
    box-sizing: border-box;
}
.facilityCardLink a{
    border: 3px solid #005FB9;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 0px;
    background-color: #fff;
    box-sizing: border-box;
    padding: 5px 35px 5px 5px;
    position: relative;
    min-height: 200px;
}
.facilityCardLink a:after {
    background-image: url(images/svg/item_arrow-circle_blue.svg);
    background-size: cover;
    background-position: center;
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    position:absolute;
    right:0;
    bottom:0;
}
.facilityCardLink a dl{
    display: flex;
    flex-wrap: wrap;
    margin:0;
    padding:0;
    width:calc(100%);
}
.facilityCardLink a dl dt{
    width:calc(190px);
    margin:0;
    padding:0;
}
.facilityCardLink a dl dd{
    width:calc(100% - 190px);
    margin:0;
    padding: 10px;
}
.facilityCardLink a dl dd .facilityName h4{
    margin:0;
    font-size:1.5rem;
    line-height:1.8rem;
    color:#333333;
}
.facilityCardLink a dl dd .facilityInfo{
    margin:0 0 8px;
    color:#666666;
}
.facilityCardLink a dl dd .facilityInfo{
    color:#333333;
    padding:8px 0 0;
}
.facilityCardLink a dl dd .facilityInfo p{
    margin:0;
    font-size:0.9rem;
    line-height:1.4rem;
    display: flex;
    flex-wrap: wrap;
}
.facilityCardLink a dl dd .facilityInfo span{
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 0 10px;
    margin: 5px;
    border-radius: 5px;
    border: 1px solid #666666;
    color: #666666;
}
@media only screen and (max-width: 992px) {
.facilityCardLink {
    width: calc(100%);
    padding: 15px 0;
}
}

.facilityDetailBase{
    display: flex;
    flex-wrap: wrap;
    margin:50px 0 0;
}

.facilityImage{
    width:calc(50%);
    margin:0;
    padding:0 40px 0 0;
    box-sizing: border-box;
}
.facilityImage img{
    width:calc(100%);
}
.facilityText{
    width:calc(50%);
}
.facilityDetailBottom{
    width:calc(100%);
}
@media only screen and (max-width: 768px) {
.facilityCardLink a dl dt{
    width:calc(100px);
}
.facilityCardLink a dl dd{
    width:calc(100% - 100px);
}
.facilityImage{
    width:calc(100%);
    padding: 0 5% 30px;
}
.facilityText{
    width:calc(100%);
}
}

.facilityDetailText{}
.facilityDetailText dl{
    border-bottom:1px dashed #4D4D4D;
    padding:10px 0;
    margin:0;
    display: flex;
    flex-wrap: wrap;
}
.facilityDetailText dl:last-child{
    border-bottom:none;
}
.facilityDetailText dl dt{
    width:calc(120px);
    padding:0;
    margin:0;
}
.facilityDetailText dl dd{
    width:calc(100% - 120px);
    padding:0;
    margin:0;
}


.facilityDetailInfo,
.facilityDetailMap{
    max-width:900px;
    margin:0 auto 30px;
}
.facilityDetailInfo h4,
.facilityDetailMap h4{
    border-left: 8px solid #005fb9;
    border-bottom: 2px solid #005fb9;
    padding: 5px 10px 10px;
    font-size: 1.3rem;
    margin: 50px 0 20px;
}
.facilityDetailInfo dl{
    display: flex;
    flex-wrap: wrap;
    background-color:#b3cfea;
    padding:0;
    margin:0;
    border-top:1px solid #333333;
    border-left:1px solid #333333;
    border-right:1px solid #333333;
}
.facilityDetailInfo dl:last-child{
    border-bottom:1px solid #333333;
}
.facilityDetailInfo dl dt{
    padding:10px;
    margin:0;
    width:calc(150px);
    border-right:1px solid #333333;
}
.facilityDetailInfo dl dd{
    background-color:#ffffff;
    padding:10px;
    margin:0;
    width:calc(100% - 150px);
}

@media only screen and (max-width: 578px) {
.facilityDetailInfo dl dt{
    width:calc(100%);
    border-right:none;
}
.facilityDetailInfo dl dd{
    width:calc(100%);
}
}






#joken{
	margin-top:20px;
}
#joken span{
	color:#0000FF;
}
#joken div{
	display:inline-block;
	border:1px solid #999999;
	border-radius:7px;
	padding:7px;
	margin-bottom:10px;
	font-size:13px;
}
#joken div.black{
	width:90%;
	border:none;
	text-align:right;
}
#joken div button{
	width:=30px;
	padding-top:0px;
	padding-bottom:0px;
	border:none;
	cursor:pointer;
	background-color:transparent;
}
#joken div.black button{
	background-color:#000000;
	color:#FFFFFF;
	width:150px;
	padding:5px;
	border-radius:7px;
}
#joken span{
	display:inline-block;
	padding-right:30px;
	font-weight:bold;
	color: #005fb9;
}


/*linksList*/
.linksList dl{
    border-top:1px dashed #808080;
    margin:0;
    padding: 19px 0;
    display: flex;
    flex-wrap: wrap;
}
.linksList dl:last-child{
    border-bottom:1px dashed #808080;
}
.linksList dl dt{
    margin:0;
    padding:0;
    width:calc(320px);
    color:#005FB9;
}
.linksList dl dd{
    margin:0;
    padding:0 10px;
    width:calc(100% - 320px);
    box-sizing: border-box;
    color:#333;
}
.linksList dl dd a{
    color:#333;
    text-decoration:underline;
}
@media only screen and (max-width: 992px) {
.linksList dl dt{
    width:calc(100%);
}
.linksList dl dd{
    width:calc(100%);
    padding: 10px;
}
}