@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@media (min-width: 768px) {
  .l_container {
    max-width: 100%;
  }
	.bnr_area,
	.lifescene_box,
	.onservice_box,
	.tetsuduki_box{
    max-width: 70%;
		margin: 0 auto;
	}
}

@media (min-width: 1024px) {
  .l_container {
    max-width: 1200px;
  }
}


@media (min-width: 1024px) {
  #tmp_honbun {
    display: block;
  }
}


@media (min-width: 1024px) {
  .top_container {
    position: relative;
    padding: 0;
    overflow-x: hidden;
  }
}


@media (min-width: 1440px) {
  .top_container .slider_top {
    margin-left: -0.3%;
  }
}


.top_mainImgWrap {
  position: relative;
}

@media (min-width: 1024px) {
  .top_mainImgWrap {
    width: 50%;
    -webkit-transform: translate(0.8rem, 7.4rem);
            transform: translate(0.8rem, 7.4rem);
  }
}


.arrow-white::after {
    content: "";
    display: inline-block;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 1em;
}

.btn_blue{
	text-align: center;
    margin: 20px 0;
}
.btn_blue a{
	background: #087bb2;
	color: #fff;
    padding: 10px 20px;
    display: inline-block;
    border-radius: 100px;
    width: 70%;
    max-width: 280px;
}

.h2bg,
#kanren h2{
    border-radius: 8px;
    margin: 30px 0 16px;
	background: url(../img/event_h2_border.jpg);
    padding-top: 10px;
    clear: both;
}
.h2bg h2,
#kanren h2 span{
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    border-radius: 0 0 8px 8px;
    padding: 10px;
    background: #fff;
    border: 1px solid #94bed4;
}
#kanren h2 span{
	display: block;
}
.h2bg.h2_style02{
    background: #bae5f8;
    padding: 0;
    border-radius: 6px;
    margin: 30px 0 16px;
}
.h2bg.h2_style02 h2{
    background: none;
    border: none;
}
.partsstyle_h2{
    border-radius: 8px;
    margin: 30px 0 16px;
    padding-top: 10px;
    clear: both;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    border-radius: 0 0 8px 8px;
    padding: 10px;
    background: #fff;
    border: 1px solid #94bed4;
	position: relative;
}
.partsstyle_h2:before{
	content: "";
	display: block;
    background: url(../img/event_h2_border.jpg);
    width: calc(100% + 2px);
	height: 10px;
	position: absolute;
	top: -10px;
    left: -1px;
    border-radius: 8px 8px 0 0;
}
@media (min-width: 1024px) {
	.h2bg,
#kanren h2{
    margin: 40px 0 20px;
	}
	.h2bg h2,
#kanren h2 span{
    font-size: 140%;
    padding: 12px;
	}
	.partsstyle_h2{
    margin: 40px 0 20px;
    font-size: 140%;
    padding: 12px;
	}
}
.h3bg{
	background-color: #fff;
	border-left: 4px solid #006ea3;
	border-bottom: 2px solid #006ea3;
    padding: 6px 0 6px 8px;
    margin: 24px 0 14px;
    clear: both;
}
.h3bg h3{
    font-size: 16px;
    font-size: 1.6rem;
}
.partsstyle_h3{
	background-color: #fff;
	border-left: 4px solid #006ea3;
	border-bottom: 2px solid #006ea3;
    padding: 6px 0 6px 8px;
    margin: 24px 0 14px;
    clear: both;
    font-size: 16px;
    font-size: 1.6rem;
}
@media (min-width: 1024px) {
	.h3bg{
    margin: 30px 0 20px;
    padding: 10px 0 10px 16px;
	}
	.h3bg h3{
    font-size: 100%;
	}
	.partsstyle_h3{
    margin: 30px 0 20px;
    padding: 10px 0 10px 16px;
    font-size: 100%;
	}
}
.h4bg{
    margin: 16px 0 10px;
	position: relative;
	padding-left: 20px;
    clear: both;
}
.h4bg:before{
	content: "■";
	display: inline-block;
    font-size: 116%;
    color: #357d4f;
    position: absolute;
    left: 0;
    top: 0;
}
.h4bg h4{
    font-size: 16px;
    font-size: 1.6rem;
    color: #000;
    font-weight: bold;
}
.partsstyle_h4{
    margin: 16px 0 10px;
	position: relative;
	padding-left: 20px;
    clear: both;
    font-size: 16px;
    font-size: 1.6rem;
    color: #000;
    font-weight: bold;
}
.partsstyle_h4:before{
	content: "■";
	display: inline-block;
    font-size: 116%;
    color: #357d4f;
    position: absolute;
    left: 0;
    top: 0;
}
@media (min-width: 1024px) {
	.h4bg{
    margin: 30px 0 20px;
	}
	.h4bg:before{
    top: -2px;
	}
	.h4bg h4{
    font-size: 100%;
	}
	.partsstyle_h4{
    margin: 30px 0 20px;
    font-size: 100%;
	}
	.partsstyle_h4:before{
    top: -2px;
	}
}
.h5bg{
    margin: 16px 0 10px;
    clear: both;
}
.h5bg h5{
    font-size: 16px;
    font-size: 1.6rem;
    color: #006ea3;
    border-bottom: 1px solid #006ea3;
    padding-bottom: 4px;
}
.partsstyle_h5{
    margin: 16px 0 10px;
    clear: both;
    font-size: 16px;
    font-size: 1.6rem;
    color: #006ea3;
    border-bottom: 1px solid #006ea3;
    padding-bottom: 4px;
}
@media (min-width: 1024px) {
	.h5bg{
    margin: 30px 0 20px;
	}
	.h5bg h5{
    font-size: 100%;
	}
	.partsstyle_h5{
    margin: 30px 0 20px;
    font-size: 100%;
	}
}



.top_search_area .tab {
  background: #404504;
  border-top-right-radius: 20px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 50%;
  height: 50px;
  text-decoration: none;
}

@media (min-width: 1024px) {
  .top_search_area .tab {
    border-radius: 0;
    height: 9rem;
    width: 46%;
  }
}

.top_search_area .tab.active {
  background: #fff;
  color: #000;
}

@media (min-width: 1024px) {
  .top_search_area .tab.active {
    width: 54%;
  }
}

.top_search_area .tab:first-child {
  border-radius: 0;
  border-top-left-radius: 20px;
}

@media (min-width: 1024px) {
  .top_search_area .tab:first-child {
    border-top-left-radius: 6.5rem;
  }
}


@media (min-width: 1024px) {
  .top_search_box_wrap {
    padding: 2.6rem 1.7rem 3.1rem 3.1rem;
  }
}


.top_search_box input::-webkit-input-placeholder {
  color: #c4c4c4;
}

.top_search_box input:-ms-input-placeholder {
  color: #c4c4c4;
}

.top_search_box input::-ms-input-placeholder {
  color: #c4c4c4;
}

.top_search_box input::placeholder {
  color: #c4c4c4;
}

.top_search_box .btn {
  text-align: justify;
  width: 90%;
  padding: 10px 11px 10px 20px;
}

@media (min-width: 1024px) {
  .top_search_box .btn {
    padding: 1.6rem 3rem;
  }
}

.top_search_box .btn:last-child {
  width: 10%;
  padding: 2px 10px 7px 4px;
}

@media (min-width: 1024px) {
  .top_search_box .btn:last-child {
    width: 8%;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media (min-width: 768px) {
  .top_white {
    background: #fff;
    height: 50px;
  }
}

@media (min-width: 1024px) {
  .top_white {
    height: 11.6rem;
  }
}

.notices_container {
    margin: 30px auto;
}

@media (min-width: 1024px) {
  .notices_container {
    margin: 60px auto;
  }
}

.importantNotices_wrap{
    margin-bottom: 30px;
}

@media (min-width: 1024px) {
  .importantNotices_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
    justify-content: center;
    margin: 0 auto 60px;
    padding: 0 15px;
  }
}

@media (min-width: 1024px) {
  .importantNotices {
    width: 100%;
    display: flex;
    align-items: stretch;
  }
}

.importantNotices_title {
    background-color: #ef0000;
    color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
    padding: 10px 20px;
    border-radius: 26px 26px 0 0;
}

@media (min-width: 1024px) {
  .importantNotices_title {
    width: 240px;
    justify-content: center;
    border-radius: 26px 0 0 26px;
  }
}

.importantNotices_title h2 {
  font-size: 20px;
	font-size: 2.0rem;
  font-weight: bold;
}

@media (min-width: 1024px) {
  .importantNotices_title h2 {
    font-size: 28px;
	font-size: 2.8rem;
    font-size: 174%;
  }
}

.importantNotices_link {
  font-size: 15px;
	font-size: 1.5rem;
}

@media (min-width: 1024px) {
  .importantNotices_link {
    font-size: 18px;
	font-size: 1.8rem;
	font-size: 180%;
  }
}

.importantNotices_list{
    border: 1px solid #ef0000;
    padding: 7px 20px 13px;
    border-radius: 0 0 26px 26px;
    background-color: #fff;
}
.importantNotices_list li {
  font-size: 15px;
	font-size: 1.5rem;
  line-height: 1.33;
  margin-bottom: 7px;
}
.importantNotices_list li a{
    display: block;
    color: #006ea3;
    text-decoration: underline;
    position: relative;
}
.importantNotices_list li a:hover{
    text-decoration: none;
	opacity: 1;
}
/*
.importantNotices_list li a:before{
    content: "";
    display: inline-block;
    border-top: solid 2px #dd1e10;
    border-right: solid 2px #dd1e10;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    left: 0;
    top: 6px;
}
*/

@media (min-width: 1024px) {
	.importantNotices_list li a:before{
    top: 14px;
	}
	.importantNotices_list{
		width: calc(100% - 240px);
    padding: 10px 20px;
    border-radius: 0 26px 26px 0;
	}
  .importantNotices_list li {
    font-size: 16px;
	font-size: 1.6rem;
    font-size: 100%;
    line-height: 2;
  }
}

.importantNotices_list li:first-child {
  padding-top: 13px;
}

.scene_serv_container{
  background-image: url(../img/bg_sakura_L.png),url(../img/bg_sakura_R.png);
	background-position: left -8px top 40px,right -8px top 40px;
    background-size: 30%;
    background-repeat: no-repeat;
}

.bnr_area .bnr_subsite{
    text-align: center;
    padding-top: 10px;
}
.bnr_area .swiper{
    width: 90%;
    margin: 0 auto;
}

.swiper_notices .swiper_control .swiper_prev_notices{
	margin-right: 24px;
}
.swiper_notices .swiper_control .swiper_next_notices{
    margin-left: 24px;
}
.swiper_notices .swiper_control .swiper_prev_notices,
.swiper_notices .swiper_control .swiper_next_notices{
    font-size: initial;
    height: 30px;
	cursor: pointer;
}
.swiper_notices .swiper-pagination-bullet-active{
    background-color: #006ea3;
}
.swiper_notices .swiper_control .swiper_prev_notices i{
  background-image: url(../img/btn_prev_arrow.png);
    width: 30px;
    height: 30px;
    background-size: 100%;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	display: block;
}
.swiper_notices .swiper_control .swiper_prev_notices i:hover{
  background-image: url(../img/btn_prev_arrow_hover.png);
}
.swiper_notices .swiper_control .swiper_prev_notices i:before{
	content: none;
}
.swiper_notices .swiper_control .swiper_next_notices i{
  background-image: url(../img/btn_next_arrow.png);
    width: 30px;
    height: 30px;
    background-size: 100%;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	display: block;
}
.swiper_notices .swiper_control .swiper_next_notices i:hover{
  background-image: url(../img/btn_next_arrow_hover.png);
}
.swiper_notices .swiper_control .swiper_next_notices i:before{
	content: none;
}


.bnrs_container{
    padding: 20px 0;
}
.bnrs_container .bnrs_wrap{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.bnrs_container .bnrs_wrap .bnr_box{
    width: 48%;
	margin-left: 2%;
    text-align: center;
}
.bnrs_container .bnrs_wrap .bnr_box:nth-child(odd){
	margin-left: 0;
}
.bnrs_container .bnrs_wrap .bnr_box:last-child{
	width: 100%;
    display: flex;
	margin-top: 10px;
    justify-content: space-between;
}
.bnrs_container .bnrs_wrap .bnr_box:last-child a{
	width: 48%;
	margin-left: 2%;
}
.bnrs_container .bnrs_wrap .bnr_box:last-child a:first-child{
	margin-left: 0;
}

@media (min-width: 1024px) {
	.bnrs_container .bnrs_wrap{
    justify-content: space-between;
    padding: 0 15px;
	}
	.bnrs_container{
    padding: 40px 0;
	}
	.bnrs_container .bnrs_wrap .bnr_box,
	.bnrs_container .bnrs_wrap .bnr_box:last-child{
    width: 35%;
    margin: 0;
    max-width: 404px;
	}
	.bnrs_container .bnrs_wrap .bnr_box:last-child{
    flex-direction: column;
    width: 30%;
    max-width: 374px;
	}
	.bnrs_container .bnrs_wrap .bnr_box:last-child a{
    width: 100%;
		margin: 0;
	}
	/*
	.bnrs_container .bnrs_wrap .bnr_box:last-child a:first-child{
		margin-bottom: 10px;
	}
	*/
}

.area_topix,
.area_news{
    margin: 30px 15px;
    background: #fff;
    border-radius: 30px;
    padding: 0;
    border: 3px solid #087bb2;
    padding: 0 10px;
}
.area_news h2,
.area_topix h2{
    font-size: 21px;
    font-size: 2.1rem;
    text-align: center;
    font-weight: bold;
    padding: 20px 0;
    color: #222;
}
.area_news ul
.area_topix ul{
	padding: 0 15px;
}
.area_news ul li,
.area_topix ul li{
    display: block;
    border-bottom: 1px solid #9c9d8e;
    padding: 10px 0;
}
.area_news ul li .icon_new{
    font-size: 80%;
    color: #db1f1f;
    margin-right: 8px;
}
.area_news ul li a{
    color: #006ea3;
    text-decoration: underline;
}
.area_topix ul li p{
    width: 100%;
    position: relative;
    padding-left: 50px;
}
.area_topix ul li p .icon_new{
    font-size: 80%;
    color: #db1f1f;
    position: absolute;
    left: 0;
    top: 4px;
}
.area_topix ul li p a{
    color: #006ea3;
    text-decoration: underline;
}
.area_news .tab_inner dl, .area_topix .tab_inner dl{
    display: block;
    border-bottom: 1px solid #9c9d8e;
    padding: 10px 0;
}
.area_topix, .area_news .tab_inner dl .icon_new, .area_topix .tab_inner dl .icon_new{
    font-size: 80%;
    color: #db1f1f;
    margin-right: 8px;
    text-decoration: none !important;
}
.area_topix, .area_news .tab_inner dl a, .area_topix .tab_inner dl a{
    color: #006ea3;
    text-decoration: underline;
}
.area_topix .tab_inner dl dd{
    padding-left: 50px;
    position: relative;
    font-size: 1.4rem;
}
.area_topix .tab_inner dl .icon_new{
    font-size: 80%;
    color: #db1f1f;
    position: absolute;
    left: 0;
    top: 4px;
}
@media (min-width: 1024px) {
	.area_topix, .area_news{
    width: calc(50% - 15px);
        margin: 0;
    padding: 0 20px;
        display: flex;
        flex-direction: column;
	}
	.area_news h2, .area_topix h2{
		text-align: left;
        font-size: 2.8rem;
        padding: 20px 0 0;
	}
	.area_news ul, .area_topix ul{
    flex-grow: 1;
	}
	.area_news ul li, .area_topix ul li{
		display: flex;
	}
	.area_news ul li .date{
        min-width: 12em;
	}
	.area_topix, .area_news .tab_inner, .area_topix .tab_inner{
        flex-grow: 1;
	}
	.area_topix, .area_news .tab_inner dl, .area_topix .tab_inner dl{
		display: flex;
	}
	.area_topix, .area_news .tab_inner dl dt, .area_topix .tab_inner dl dt{
        min-width: 12em;
	}
	.area_topix .tab_inner dl dd{
    font-size: 1.6rem;
	}
}

.newstopics_area{
    position: relative;
    padding-top: 52px;
    margin: 0 15px;
}
.newstopics_area .tab_tit{
    position: absolute;
    top: 0;
	width: 40%;
}
.newstopics_area .tab_news .tab_tit{
    left: 55%;
    /*left: 5%;*/
}
.newstopics_area .tab_topics .tab_tit{
    left: 5%;
    /*left: 55%;*/
}
.newstopics_area .tab_tit a{
    font-size: 16px;
    font-size: 1.6rem;
    display: block;
    text-align: center;
    background-color: #eee;
    padding: 8px 0;
    box-sizing: border-box;
}
.newstopics_area .tab_tit a:hover{
	opacity: 1;
    text-decoration: underline;
}
.newstopics_area .tab_tit a.active{
    border: 2px solid #efefef;
    background-color: #fff;
    border-bottom: 10px solid #fff;
    border-radius: 10px 10px 0 0;
    box-shadow: 0 0px 6px 0 rgb(0 0 0 / 30%);
	position: relative;
}
.newstopics_area .tab_tit a.active:after{
    position: absolute;
    left: -1px;
    right: 0;
    bottom: -20px;
    width: calc(100% + 2px);
    height: 20px;
    background-color: #fff;
    display: block;
    content: "";
    z-index: 1;
}
.newstopics_area .tab_content{
    margin-top: -1px;
}
.newstopics_area .tab_inner{
	background-color: #fff;
    padding: 20px 15px 0;
    font-size: 14px;
    font-size: 1.4rem;
    border: 2px solid #efefef;
    box-shadow: 0 0px 6px 0 rgb(0 0 0 / 30%);
	position: relative;
}
.newstopics_area .tab_inner:after{
    position: absolute;
    left: -1px;
    right: 0;
    bottom: -14px;
    width: calc(100% + 2px);
    height: 14px;
    background-color: #eee;
    display: block;
    content: "";
    z-index: 1;
}
.newstopics_area .tab_inner dl{
    display: block;
    border-bottom: 1px solid #9c9d8e;
    padding: 10px 0;
}
.newstopics_area .tab_inner dl:last-child{
    border-bottom: none;
}
.newstopics_area .tab_inner dl dt{
    width: 100%;
    margin-bottom: 6px;
}
.newstopics_area .tab_inner dl dt .icon_new{
    font-size: 80%;
    color: #db1f1f;
    margin-right: 8px;
}
.newstopics_area .tab_inner dl dd{
    width: 100%;
	position: relative;
}
.newstopics_area .tab_topics .tab_inner dl dd{
    padding-left: 50px;
}
.newstopics_area .tab_inner dl dd .icon_new{
    font-size: 80%;
    color: #db1f1f;
	position: absolute;
	left: 0;
	top: 4px;
}
.newstopics_area .tab_inner dl dd a{
    color: #006ea3;
    text-decoration: underline;
}
.newstopics_area .tab_inner dl dd a:hover{
    text-decoration: none;
	opacity: 1;
}
.newstopics_area .link_all{
    background-color: #eee;
    font-size: 14px;
    font-size: 1.4rem;
    border-radius: 0 0 26px 26px;
    border: 2px solid #efefef;
    box-shadow: 0 0px 6px 0 rgb(0 0 0 / 30%);
}
.newstopics_area .link_all a{
    display: block;
    text-align: center;
    padding: 10px 0;
}
.newstopics_area .link_all .arrow-black{
    display: inline-block;
}
.newstopics_area .link_all .arrow-black::after{
    content: "";
    display: inline-block;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 1em;
}


@media (min-width: 1024px) {
	.newstopics_area{
		width: 56%;
    margin: 0;
	}
	.newstopics_area .tab_tit{
    width: 42%;
	}
	/*.newstopics_area .tab_topics .tab_tit{*/
	.newstopics_area .tab_news .tab_tit{
    left: 53%;
	}
	.newstopics_area .tab_tit a{
    font-size: 110%;
    padding: 20px 0;
    font-weight: bold;
	}
	.newstopics_area .tab_tit a.active{
		border:none;
	}
	.newstopics_area .tab_inner{
    font-size: 100%;
	}
	.newstopics_area .tab_inner dl dt{
    width: 21rem;
    min-width: 21rem;
    font-weight: normal;
		padding-left: 50px;
		position: relative;
	}
.newstopics_area .tab_inner dl dt .icon_new{
    position: absolute;
    left: 0;
    top: 4px;
    margin-right: 0;
}
	.newstopics_area .link_all{
    font-size: 100%;
	}
	.newstopics_area .link_all a:hover span{
		text-decoration: underline;
	}
	.newstopics_area .tab_tit a.active:after{
    left: 0;
    width: 100%;
    bottom: -10px;
	}
	.newstopics_area .tab_inner dl{
    display: flex;
    align-items: flex-start;
	}
	.newstopics_area .tab_inner dl dt{
		margin-bottom: 0;
	}
.newstopics_area .tab_inner dl dd{
    width: 100%;
}
}


.news_container {
    margin: 20px auto;
}

@media (min-width: 1024px) {
  .news_container {
    margin: 80px auto;
    max-width: 1200px;
    padding: 0 15px;
  }
}

@media (min-width: 1024px) {
  .news_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 30px;
        flex-wrap: wrap;
  }
	.news_wrap .news_inner{
    display: flex;
    gap: 30px;
        width: 100%;
	}
}


.event_area {
    margin: 30px 15px;
  background: #fff;
  border-radius: 30px;
  padding: 0;
    border: 3px solid #087bb2;
}
.event_area .text_area h2{
    font-size: 21px;
    font-size: 2.1rem;
    text-align: center;
    font-weight: bold;
    padding: 20px 0;
}

@media (min-width: 1024px) {
  .event_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
    width: 100%;
    margin: 0;
        flex-direction: row;
        padding: 40px 0;
        justify-content: flex-start;
    position: relative;
  }
  .event_area .text_area{
        width: 380px;
        padding: 0 40px;
	}
}

.event_area h2 {
    font-size: 21px;
    font-size: 2.1rem;
    text-align: center;
    font-weight: bold;
    padding: 20px 0;
}

@media (min-width: 1024px) {
  .event_area .text_area h2 {
        font-size: 176%;
    padding-bottom: 0;
  }
}

.event_area .event_more {
  background: #eee;
  font-size: 14px;
	font-size: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
    height: auto;
    padding: 10px 0;
  width: 100%;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
}
.event_area .event_more .arrow-black,
.event_area .event_more .arrow-white,
.arrow-white{
    display: inline-block;
}
.event_area .event_more .arrow-black::after {
    content: "";
    display: inline-block;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 1em;
}

@media (min-width: 1024px) {
  .event_area .event_more {
	font-size: 100%;
    display: block;
    text-align: center;
    padding: 0;
  }
	.event_area .event_more a{
    display: block;
    padding: 10px 0;
	}
	.event_area .event_more a:hover span{
		text-decoration: underline;
	}
}

.event_area .slider_event_wrap {
  padding: 1px 30px 19px;
}

.event_area .slider_event_text {
  padding-top: 18px;
    text-align: left;
}

@media (min-width: 1024px) {
  .event_area .slider_event_text {
            padding-left: 20px;
            padding-right: 40px;
  }
}

.event_area .slider_event_text p {
  font-size: 14px;
	font-size: 1.4rem;
}

@media (min-width: 1024px) {
  .event_area .slider_event_text p {
    font-size: 100%;
  }
}

.event_area .slider_event_text p.date {
    font-size: 14px;
    font-size: 1.4rem;
  padding-bottom: 6px;
    font-weight: bold;
}

@media (min-width: 1024px) {
  .event_area .slider_event_text p.date {
    font-size: 100%;
  }
}

.scene_serv_area{
	background: linear-gradient(to right, #e3f9ff, #d8f8e5);
    padding: 10px 0;
    border-radius: 20px;
    margin-top: 30px;
}

.information_container{
    margin: 30px auto;
    padding: 0;
}
.information_container h2{
    font-size: 21px;
    font-size: 2.1rem;
    text-align: center;
    font-weight: bold;
    margin: 20px 0 14px;
}
.information_container .info01,
.information_container .info02{
	background-color: #fff;
    border-radius: 30px;
	padding-bottom: 20px;
	margin-bottom: 10px;
    border: 2px solid #efefef;
}
.information_container .info01 .tit,
.information_container .info02 .tit{
	text-align: center;
    text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 14px 0;
}
.information_container .info01 .tit > span,
.information_container .info02 .tit > span{
	position: relative;
    padding-left: 40px;
}
.information_container .info01 .tit span:before{
	content:"";
    width: 34px;
    height: 26px;
	display: inline-block;
    background-image: url(../img/icon_koho.png);
    background-size: 100%;
	background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    margin-top: -13px;
    left: 0;
}
.information_container .info02 .tit span:before{
	content:"";
    width: 34px;
    height: 26px;
	display: inline-block;
    background-image: url(../img/icon_youtube.png);
    background-size: 100%;
	background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    margin-top: -13px;
    left: 0;
}
.information_container .info01 .img,
.information_container .info02 .img{
    padding: 0 10px;
    margin: 0 auto;
    text-align: center;
}
.information_container .info02 .img{
    padding: 0 20px;
}
.information_container .info01 .img img,
.information_container .info02 .img img{
    border: 1px solid #efefef;
    padding: 10px;
}
.information_container .info02 .youtube_tit{
    display: block;
    text-align: left;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    margin-top: 10px;
}
.information_container .info02 .youtube_cap{
    display: block;
    text-align: left;
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 10px;
}
.information_container .info01 .btn,
.information_container .info02 .btn{
	margin-top: 20px;
}
.information_container .info01 .btn a,
.information_container .info02 .btn a{
    display: block;
    max-width: 80%;
    text-align: center;
    margin: 0 auto;
    font-size: 14px;
    font-size: 1.4rem;
    border: 2px solid #efefef;
    padding: 14px 6px;
    border-radius: 50px;
}
.information_container .info01 .btn a span,
.information_container .info02 .btn a span{
    display: inline-block;
}
.information_container .info01 .btn a > span:after,
.information_container .info02 .btn a > span:after{
    content: "";
    display: inline-block;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 1em;
}
.information_container .info03{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.information_container .info03 .info_bnrs{
    width: 49%;
    background-color: #fff;
    border: 4px solid #ececec;
    margin-top: 8px;
}
.information_container .info03 .info_bnrs a{
    display: block;
    text-align: center;
    font-size: 12px;
    font-size: 1.2rem;
	font-weight: bold;
    padding: 10px;
    display: flex;
    align-items: center;
    height: 100%;
}
.information_container .info03 .info_bnrs a > span{
	padding-left: 40px;
    display: block;
    text-align: left;
	position: relative;
}
.information_container .info03 .bnr_LINE a > span:before{
	content:"";
	width: 26px;
	height: 26px;
	display: inline-block;
    background-image: url(../img/icon_line.png);
    background-size: 100%;
    position: absolute;
    top: 50%;
    margin-top: -13px;
    left: 0;
}
.information_container .info03 .bnr_TWI a > span:before{
	content:"";
	width: 26px;
	height: 26px;
	display: inline-block;
    background-image: url(../img/icon_twi.png?date=20231205);
    background-size: 100%;
    position: absolute;
    top: 50%;
    margin-top: -13px;
    left: 0;
}
.information_container .info03 .bnr_INS a > span:before{
	content:"";
	width: 26px;
	height: 26px;
	display: inline-block;
    background-image: url(../img/icon_ins.png);
    background-size: 100%;
    position: absolute;
    top: 50%;
    margin-top: -13px;
    left: 0;
}
.information_container .info03 .bnr_mail a > span:before{
	content:"";
	width: 26px;
	height: 26px;
	display: inline-block;
    background-image: url(../img/icon_citymail.png);
    background-size: 100%;
    position: absolute;
    top: 50%;
    margin-top: -13px;
    left: 0;
}

@media (min-width: 1024px) {
	.information_container{
    margin: 80px auto;
    max-width: 1200px;
    padding: 0 15px;
	}
	.information_container h2{
    font-size: 28px;
    font-size: 2.8rem;
    font-size: 176%;
        padding: 20px 0 0;
        text-align: left;
	}
	.information_container .info_area{
    display: flex;
    justify-content: space-between;
	}
	.information_container .info_area .info_box{
		width: 32%;
		margin: 0;
	}
	.information_container .info01 .tit, .information_container .info02 .tit{
    font-size: 120%;
    padding: 20px 0;
	}
	.information_container .info01 .img{
    padding: 0 60px;
	}
	.information_container .info02 .img{
    padding: 0 30px;
	}
	.information_container .info02 .youtube_tit{
    font-size: 100%;
	}
	.information_container .info02 .youtube_cap{
    font-size: 90%;
	}
	.information_container .info01 .btn a, .information_container .info02 .btn a{
    font-size: 100%;
	}
	.information_container .info01 .btn a:hover span, .information_container .info02 .btn a:hover span{
		text-decoration: underline;
	}
	.information_container .info03{
    flex-direction: column;
    justify-content: flex-start;
    padding: 0;
	}
	.information_container .info03 .info_bnrs{
    width: 100%;
    margin-top: 20px;
	}
	.information_container .info03 .info_bnrs:first-child{
		margin-top: 0;
	}
	.information_container .info03 .info_bnrs a{
    font-size: 100%;
    padding: 40px 30px;
	}
	.information_container .info03 .info_bnrs a > span{
    padding-left: 70px;
	}
.information_container .info03 .bnr_LINE a > span:before,
.information_container .info03 .bnr_TWI a > span:before,
.information_container .info03 .bnr_INS a > span:before,
.information_container .info03 .bnr_mail a > span:before{
	width: 50px;
	height: 50px;
    margin-top: -25px;
}
}



.voice_container{
    padding-bottom: 30px;
}
.voice_container h2{
    font-size: 21px;
    font-size: 2.1rem;
    text-align: center;
    font-weight: bold;
    margin: 20px 0 14px;
}
.voice_container .link_wrap{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    flex-direction: column;
}
.voice_container .link_wrap .voice_btn{
    width: 90%;
    max-width: 360px;
    margin: 6px auto;
    min-height: 80px;
    background: #fff;
    border: 2px solid #efefef;
    box-shadow: 0 0px 6px 0 rgb(0 0 0 / 30%);
    border-radius: 10px;
}
.voice_container .link_wrap .voice_btn:first-child{
	margin-top: 0
}
.voice_container .link_wrap .voice_btn:last-child{
	margin-bottom: 0
}
.voice_container .link_wrap .voice_btn a{
    display: flex;
    padding: 10px;
    text-align: center;
    align-items: center;
    height: 100%;
    min-height: 80px;
    justify-content: space-evenly;
    font-size: 14px;
    font-size: 1.4rem;
	font-weight: bold;
}
.voice_container .link_wrap .voice_btn a .arrow-black{
    flex-direction: column;
    display: block;
    width: 100%;
    position: relative;
    padding: 0 12px;
}
.voice_container .link_wrap .voice_btn a .arrow-black.arrow_small:after{
    content: "";
    display: inline-block;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 6px;
    height: 6px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 5px;
}
.voice_container .link_wrap .voice_btn a .small_txt{
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 4px;
    display: block;
}

@media (min-width: 1024px) {
	.voice_container{
    padding: 40px 0 80px;
	}
	.voice_container h2{
    font-size: 176%;
    padding: 20px 0 30px;
	}
	.voice_container .link_wrap{
    flex-direction: row;
		max-width: 1200px;
		margin: 0 auto;
	}
	.voice_container .link_wrap .voice_btn{
    width: 30%;
	}
	.voice_container .link_wrap .voice_btn a{
    font-size: 110%;
    padding: 0px 4px;
	}
	.voice_container .link_wrap .voice_btn a .small_txt{
    font-size: 70%;
	}
	.voice_container .link_wrap .voice_btn{
		margin: 0 auto;
    width: 30%;
	}
}

.about_container .l_container{
    padding: 0 15px 20px;
    margin: 0 15px;
    background: #087bb2 url(../img/bg_top_bridge.png);
	background-repeat: no-repeat;
    background-position: left -70px bottom;
}
.about_container h2{
    font-size: 21px;
    font-size: 2.1rem;
    text-align: center;
    font-weight: bold;
    padding: 20px 0;
	color: #fff;
	text-align: left;
}
.about_container h2 span{
    font-size: 16px;
    font-size: 1.6rem;
}
.about_container .txt{
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
	color: #fff;
}
.about_container .data{
    display: inline-block;
    padding: 20px;
    border: 1px solid #c9c9c9;
    border-radius: 16px;
    margin: 20px 0;
    width: 100%;
    background: #fff;
}
.about_container .data dl{
    display: flex;
    align-items: center;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal;
}
.about_container .data dt{
    background-color: #cfecfa;
    padding: 4px 20px;
    border-radius: 8px;
}
.about_container .data dd{
    padding-left: 20px;
}
.about_container .data dd span{
    color: #004a91;
    font-weight: bold;
    font-size: 32px;
    font-size: 3.2rem;
    padding-right: 10px;
}
.about_container .data .when{
    font-size: 12px;
    font-size: 1.2rem;
	text-align: right;
    margin-top: 10px;
}
.about_container .img_where{
    text-align: center;
}
.about_container .btns .btn_01,
.about_container .btns .btn_02{
	margin-top: 20px;
}
.about_container .btns .btn_01 a,
.about_container .btns .btn_02 a{
    display: block;
    text-align: center;
    border: 1px solid #bbb;
    padding: 8px 0;
    border-radius: 6px;
    background: #fff;
}
.about_container .btns .btn_01 a > span,
.about_container .btns .btn_02 a > span{
    display: inline-block;
	position: relative;
    padding-left: 40px;
    color: #006ea3;
}
.about_container .btns .btn_01 a:hover > span,
.about_container .btns .btn_02 a:hover > span{
    text-decoration: underline;
}
.about_container .btns .btn_01 a > span:before{
	content: "";
	display: inline-block;
    width: 32px;
    height: 24px;
    background-image: url(../img/icon_about_btn01.png);
    position: absolute;
    background-size: 100%;
    top: 50%;
    margin-top: -13px;
    left: 0;
}
.about_container .btns .btn_02 a > span:before{
	content: "";
	display: inline-block;
    width: 32px;
    height: 24px;
    background-image: url(../img/icon_about_btn02.png);
    position: absolute;
    background-size: 100%;
    top: 50%;
    margin-top: -13px;
    left: 0;
}
.about_container .btns .btn_01 a > span:after,
.about_container .btns .btn_02 a > span:after{
    content: "";
    display: inline-block;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 1em;
}
.about_container .bnr_area{
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
    gap: 5px 0;
}
.about_container .bnr_area + .bnr_area{
	margin-top: 10px;
}
.about_container .bnr_area .bnr_box{
	width: 50%;
    text-align: center;
}
.about_container .bnr_area .bnr_box:first-child{
	width: 100%;
}
.about_container .bnr_area .bnr_box img{
    width: 100%;
	max-width: 174px;
}
.about_container .bnr_area .link_wrap{
    width: 100%;
}
.about_container .bnr_area .link_wrap .voice_btn{
    width: 90%;
    max-width: 360px;
    margin: 16px auto;
    min-height: 80px;
    background: #fff;
    border: 2px solid #efefef;
    box-shadow: 0 0px 6px 0 rgb(0 0 0 / 30%);
    border-radius: 10px;
}
.about_container .bnr_area .link_wrap .voice_btn:last-child{
    margin-bottom: 0;
}
.about_container .bnr_area .link_wrap .voice_btn a{
    display: flex;
    padding: 10px;
    text-align: center;
    align-items: center;
    height: 100%;
    min-height: 80px;
    justify-content: space-evenly;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
}
.about_container .bnr_area .link_wrap .voice_btn a .arrow-black{
    flex-direction: column;
    display: block;
    width: 100%;
    position: relative;
    padding: 0 12px;
}
.about_container .bnr_area .link_wrap .voice_btn a .arrow-black:after{
    content: "";
    display: inline-block;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 6px;
    height: 6px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 5px;
}
.about_container .bnr_area .link_wrap .voice_btn a .small_txt{
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 4px;
    display: block;
}
@media (min-width: 1024px) {
	.about_container .bnr_area{
		display: flex;
		max-width: 1200px;
        margin: 40px auto;
        padding: 0;
        flex-wrap: nowrap;
	}
	.about_container .bnr_area .bnr_box,
	.about_container .bnr_area .bnr_box:first-child{
		width: 33.3%;
	}	
	.about_container .bnr_area .bnr_box img{
        max-width: 100%;
	}
	.about_container .bnr_area .bnr_subsite,
	.about_container .bnr_area .swiper{
    padding: 10px 0;
    width: 100%;
	}
	.about_container .bnr_area .swiper .swiper-wrapper{
		height: auto;
	}
	.about_container{
		width: 100%;
    background: #087bb2 url(../img/bg_top_bridge.png);
    background-repeat: no-repeat;
    background-position: left -70px bottom;
	}
	.about_container .data dd span{
    font-size: 140%;
}
	.about_container .l_container{
        padding: 50px 30px 30px;
    margin: 0 auto;
		background: none;
	}
	.about_container h2{
    font-size: 220%;
        padding: 0;
    line-height: 1.2;
        margin-bottom: 30px;
	}
	.about_container h2 span{
		font-size: 50%;
	}
	.about_container .content_area{
		display: flex;
    justify-content: space-between;
    align-items: flex-end;
	}
	.about_container .content_area .txt_box{
		width: calc(100% - 300px);
        padding-right: 80px;
        display: flex;
        flex-direction: column;
	}
	.about_container .content_area .img_where{
    width: 300px;
    margin-top: -80px;
	}
	.about_container .txt{
    font-size: 100%;
        margin-bottom: 70px;
	}
	.about_container .data{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0;
	}
	.about_container .data dl{
    font-size: 100%;
	}
	.about_container .data .when{
		font-size: 90%;
    margin: 0 0 0 10px;
	}
	.about_container .bnr_area .link_wrap{
		display: flex;
	}
	.about_container .bnr_area .link_wrap .voice_btn{
    margin: 0 auto;
	}
}

.relation_container {
    margin: 30px auto;
}

@media (min-width: 1024px) {
  .relation_container {
    margin: 40px auto 66px;
  }
}

.relation_title {
    font-size: 21px;
    font-size: 2.1rem;
    text-align: center;
    font-weight: bold;
    margin: 20px 0 14px;
}

.section_title {
  font-weight: bold;
  font-size: 21px;
	font-size: 2.1rem;
}

@media (min-width: 1024px) {
  .section_title {
    font-size: 176%;
        padding: 20px 0 10px;
        text-align: left;
        max-width: 1200px;
        margin: 0 auto;
  }
}

.relation_imgWrap {
  color: #000;
}

.relation_box {
  text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

@media (min-width: 768px) {
  .relation_box {
    margin: 0 auto;
  }
}

@media (min-width: 1024px) {
  .relation_box {
    justify-content: flex-start;
  }
}

.relation_item {
  padding-bottom: 11px;
    margin: 0 10px;
    width: calc(50% - 20px);
}
.relation_item a{
    display: block;
    border: 1px solid #ababab;
    border-radius: 10px;
}

.relation_item img {
  width: 93%;
    max-width: 200px;
}

@media (min-width: 1024px) {
  .relation_item img {
    width: 100%;
    max-width: 230px;
  }
}

@media (min-width: 1024px) {
  .relation_item {
    width: calc(20% - 20px);
  }
}

.relation_container .more_links{
    text-align: center;
    display: block;
    padding: 10px 0 0;
}
.relation_container .more_links a{
    font-size: 14px;
    font-size: 1.4rem;
}
.relation_container .more_links a span{
    display: inline-block;
    text-decoration: underline;
}
.relation_container .more_links a > span:after{
    content: "";
    display: inline-block;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 1em;
}

@media (min-width: 1024px) {
.relation_container .more_links a{
    font-size: 100%;
}
	.relation_container .more_links a:hover span{
		text-decoration: none;
	}
}

.ad_container{
    border: 1px solid #efefef;
    background-color: #fff;
    margin: 0 15px;
    box-shadow: 0 0px 6px 0 rgb(0 0 0 / 30%);
    border-radius: 20px;
}
.advert_title {
    font-weight: bold;
    font-size: 21px;
    font-size: 2.1rem;
  text-align: center;
    padding: 20px 0;
}

@media (min-width: 1024px) {
	.ad_container{
    margin: 80px auto;
    max-width: 1200px;
    padding: 0 15px;
	}
  .advert_title {
    font-size: 176%;
        padding: 20px 0 10px;
        text-align: left;
  }
}

.advert_text {
  text-align: center;
}

.advert_text p {
  font-size: 14px;
	font-size: 1.4rem;
  margin-bottom: 13px;
  line-height: 1.5;
}

@media (min-width: 1024px) {
  .advert_text p {
    margin-bottom: 24px;
  }
}

.advert_imgWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -5px;
}

@media (min-width: 1024px) {
  .advert_imgWrap {
    margin: 0 -10px;
  }
}

.advert_imgWrap .advert_img {
  width: auto;
  padding: 5px;
}

@media (min-width: 1024px) {
  .advert_imgWrap .advert_img {
    padding: 5px 10px;
  }
}

.advert_guidance {
    text-align: center;
    display: block;
    padding: 14px 6px;
    font-size: 14px;
    font-size: 1.4rem;
}
.advert_guidance a span{
    display: inline-block;
    color: #006ea3;
}
.advert_guidance a > span:after{
    content: "";
    display: inline-block;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 1em;
}

@media (min-width: 1024px) {
  .advert_guidance {
    padding: 30px 0;
    font-size: 100%;
	}
	.advert_guidance a:hover span{
		text-decoration: underline;
	}
}
/*# sourceMappingURL=top.css.map */