@charset "UTF-8";
/* CSS Document */
.xs_none{
    display: none!important;
}

.xs_only{
	display: block;
}

.txt50xs {font-size: 50% !important;}
.txt60xs {font-size: 60% !important;}
.txt70xs {font-size: 70% !important;}
.txt80xs {font-size: 80% !important;}
.txt90xs {font-size: 90% !important;}
.txt100xs {font-size: 100% !important;}
.txt110xs {font-size: 110% !important;}
.txt120xs {font-size: 120% !important;}
.txt130xs {font-size: 130% !important;}
.txt140xs {font-size: 140% !important;}
.txt150xs {font-size: 150% !important;}
.txt160xs {font-size: 160% !important;}
.txt170xs {font-size: 170% !important;}
.txt180xs {font-size: 180% !important;}
.txt190xs {font-size: 190% !important;}
.txt200xs {font-size: 200% !important;}
.txt240xs {font-size: 240% !important;}
.txt280xs {font-size: 280% !important;}

.xs_mb0 {margin-bottom: 0 !important;}
.xs_mb05 {margin-bottom: 5px !important;}
.xs_mb10 {margin-bottom: 10px !important;}
.xs_mb20 {margin-bottom: 20px !important;}
.xs_mb30 {margin-bottom: 30px !important;}
.xs_mb40 {margin-bottom: 40px !important;}
.xs_mb50 {margin-bottom: 50px !important;}
.xs_mb60 {margin-bottom: 60px !important;}
.xs_mb80 {margin-bottom: 80px !important;}
.xs_mb100 {margin-bottom: 100px !important;}

.xs_mt0 {margin-top: 0 !important;}
.xs_mt10 {margin-top: 10px !important;}
.xs_mt20 {margin-top: 20px !important;}
.xs_mt30 {margin-top: 30px !important;}
.xs_mt40 {margin-top: 40px !important;}
.xs_mt50 {margin-top: 50px !important;}
.xs_mt60 {margin-top: 60px !important;}
.xs_mt80 {margin-top: 80px !important;}
.xs_mt100 {margin-top: 100px !important;}

.xs_ml0 {margin-left: 0 !important;}
.xs_ml10 {margin-left: 10px !important;}
.xs_mr0 {margin-right: 0 !important;}
.xs_mr10 {margin-right: 10px !important;}

/*------------------------------*/

.breadcrumbs{
    gap: 0 5px;
}

.breadcrumbs li{
    font-size: 1.3rem;
}


.common_h2_title{
	font-size: 2.4rem;
}

.common_h3_title{
	font-size: 1.8rem;
}

.common_h4_title{
	font-size: 1.8rem;
}



.common_dl dl{
    flex-direction: column;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.common_dl dl dt{
    width: 100%;
    margin-bottom: 10px;
}


.page_main{
    padding-top: 40px;
    border-radius: 20px 20px 0 0;
}


.page_title_container{
    padding: 100px 0 60px;
}

.page_title_container .page_title{
    margin-top: 30px;
}

.page_title_container .page_title{
	font-size: 2.8rem;
}

.page_title_container .page_title .en{
	font-size: 1.6rem;
}

.program_table.scroll_table table{
    min-width: 800px;
}
.scroll_table:before{
    content: "表は横にスクロールしてご覧ください。";
    display: block;
    color: var(--red);
    margin-bottom: 5px;
}



.news_list ul li a{
    flex-direction: column;
    padding: 30px 15px;
}

.news_list ul li a .text,
.news_list ul li a .img{
    width: 100%;
}

.news_list ul li a .img{
    margin-bottom: 20px;
    margin-right: 0;
}

.news_list ul li a:after{
    top: auto;
    bottom: 10px;
    transform: translateY(0);

}