@charset "utf-8";
.cf:after,
.clr {
	clear: both
}

body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Arial, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.6;
	webkit-text-size-adjust: 100%;
	ms-text-size-adjust: 100%
}

body #set_device {
	display: block;
	float: left;
	width: 0;
	height: 0;
	overflow: hidden;
	margin: 0;
	padding: 0
}

@media screen and (max-width:768px) {
	body #set_device {
		content: 'smp'
	}
}

@media print,
screen and (min-width:769px) {
	body #set_device {
		content: 'pc'
	}
}

ol,
ul {
	list-style: none
}

em {
	font-style: normal
}

img {
	vertical-align: middle
}

.left {
	float: left
}

.right {
	float: right
}

.cf:after,
.cf:before {
	content: "";
	display: table
}

.cf {
	zoom: 1
}

.inb {
	display: inline-block
}

a {
	color: #000;
	text-decoration: none
}

a.line,
a:hover {
	text-decoration: underline
}

a:hover {
	color: #e30031
}

a .arrow {
	margin-right: .5em;
	background: #ae0024;
	color: #fff;
	padding: 0 .3em;
	font-weight: 700;
	-webkit-border-radius: .2em;
	-moz-border-radius: .2em;
	-ms-border-radius: .2em;
	border-radius: .2em
}

a:hover .arrow {
	background: #e30031
}

a.opacity:hover {
	filter: alpha(opacity=60);
	-moz-opacity: .6;
	opacity: .6
}

a.bg_red {
	font-size: 1.4rem;
	color: #fff;
	background: #ae0024;
	-webkit-border-radius: 1.5em;
	-moz-border-radius: 1.5em;
	-ms-border-radius: 1.5em;
	border-radius: 1.5em
}

.f_07,
.f_08,
.f_09,
.f_10 {
	font-size: 10px
}

a.bg_red:hover {
	background: #ca002a;
	text-decoration: none
}

.fuchi3 {
    text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}
.fuchi5 {
    text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}

@media screen and (max-width:768px) {
	img {
		max-width: 100%;
		vertical-align: middle
	}
	a .arrow {
		padding: 0 .3em
	}
	a.bg_red {
		padding: .3em 2em
	}
}

@media print,
screen and (min-width:769px) {
	.pc_cf:after,
	.pc_cf:before {
		content: "";
		display: table
	}
	.pc_cf:after {
		clear: both
	}
	.pc_cf {
		zoom: 1
	}
	.pc_left {
		float: left
	}
	.pc_right {
		float: right
	}
	a .arrow {
		padding: 0 .3em
	}
	a.bg_red {
		padding: 0 2em
	}
}

.d_none {
	display: none
}

.d_block {
	display: block
}

ul.disc li {
	list-style: disc
}

ul.number li {
	list-style: decimal
}

.under_line {
	text-decoration: underline
}

.dot_line {
	padding-bottom: 1em;
	border-bottom: #999 1px dotted
}

.shadow {
	box-shadow: 0 3px 5px 0 #999
}

@media screen and (max-width:768px) {
	p.linkbox,
	ul.linkbox li {
		margin-bottom: .5em
	}
	p.linkbox .arrow,
	ul.linkbox .arrow {
		float: left
	}
	p.linkbox .txt,
	ul.linkbox .txt {
		line-height: 1.3;
		float: left
	}
	.d_noneMOB,
	br.brPC,
	img.imgPC {
		display: none
	}
}

@media print,
screen and (min-width:769px) {
	p.linkbox,
	ul.linkbox li {
		margin-bottom: .5em
	}
	.d_nonePC,
	.imgMOB,
	br.brMOB {
		display: none
	}
}

.f_07 {
	font-size: .7rem
}

.f_08 {
	font-size: .8rem
}

.f_09 {
	font-size: .9rem
}

.f_10 {
	font-size: 1rem
}

.f_11 {
	font-size: 11px;
	font-size: 1.1rem
}

.f_12 {
	font-size: 12px;
	font-size: 1.2rem
}

.f_13 {
	font-size: 13px;
	font-size: 1.3rem
}

.f_14 {
	font-size: 14px;
	font-size: 1.4rem
}

.f_15 {
	font-size: 15px;
	font-size: 1.5rem
}

.f_16 {
	font-size: 16px;
	font-size: 1.6rem
}

.f_18 {
	font-size: 18px;
	font-size: 1.8rem
}

.f_20 {
	font-size: 20px;
	font-size: 2rem
}

.fw_normal {
	font-weight: 400
}

.t_left {
	text-align: left
}

.t_right {
	text-align: right
}

.t_center {
	text-align: center
}

.red {
	color: red
}

.gray {
	color: #999
}

.pink {
	color: #f69
}

.key_red {
	color: #ae0024
}

.key_red_hov_01 {
	color: #ca002a
}

.key_red_hov_02 {
	color: #e30031
}

.mb_0 {
	margin-bottom: 0
}

.mb_05em {
	margin-bottom: .5em
}

.mb_1em {
	margin-bottom: 1em
}

.mb_15em {
	margin-bottom: 1.5em
}

.mb_2em {
	margin-bottom: 2em
}

.mb_3em {
	margin-bottom: 3em
}

.mb_4em {
	margin-bottom: 4em
}

.mb_5em {
	margin-bottom: 5em
}

.mr_0 {
	margin-right: 0
}

.mr_5px {
	margin-right: 5px
}

.mr_10px {
	margin-right: 10px
}

.ml_1em {
	margin-left: 1em
}

.mt_05em {
	margin-top: .5em
}

.mt_1em {
	margin-top: 1em
}

.center {
	margin-left: auto;
	margin-right: auto
}

.pad_0205em {
	padding: .2em .5em
}

.pad_05em {
	padding: .5em
}

.v_bottom {
	vertical-align: bottom
}

.v_middle {
	vertical-align: middle
}

.v_baseline {
	vertical-align: baseline
}

.v_t_bottom {
	vertical-align: text-bottom
}

#bnr_area li,
#new_info {
	margin-bottom: .5em
}

#new_info .txt_area,
#urgent {
	font-size: 13px;
	font-size: 1.3rem
}

#urgent {
	border: 1px solid #ffdada;
	margin-bottom: 1em
}

#urgent dt {
	color: red;
	font-weight: 700
}

#urgent dd {
	margin-bottom: .5em;
	padding-bottom: .5em;
	border-bottom: #999 1px dotted
}

#urgent dd:last-child {
	padding-bottom: 0;
	border: none
}

.mCS-my-theme.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-my-theme.mCSB_scrollTools .mCSB_draggerRail {
	-webkit-border-radius: 1px;
	-moz-border-radius: 1px;
	border-radius: 1px
}

@media screen and (max-width:768px) {
	#new_info {
		width: 95%;
		margin: 0 auto
	}
	#new_info .txt_area {
		width: 97%;
		margin-left: 3%;
		margin-bottom: 1.5em;
		height: 150px;
		overflow: hidden
	}
	#new_info .txt_area li {
		margin-bottom: .3em;
		padding-bottom: .3em;
		border-bottom: #ccc 1px dotted
	}
	#new_info .txt_area .date {
		display: block;
		margin-right: 1em
	}
	#new_info #bnr_area {
		margin-bottom: 1em
	}
	#urgent {
		width: 88%;
		margin-left: auto;
		margin-right: auto;
		padding: .5em 1em 0
	}
	.mCS-my-theme.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
	.mCS-my-theme.mCSB_scrollTools .mCSB_draggerRail {
		width: 10px
	}
}

@media print,
screen and (min-width:769px) {
	#urgent {
		padding: 10px 15px 5px
	}
	#urgent dl {
		margin: 5px 15px 0
	}
	#new_info {
		width: 720px
	}
	#new_info .txt_area {
		width: auto;
		height: 120px;
		margin-top: 0;
		margin-bottom: 1em;
		padding-left: 5px;
		overflow: hidden
	}
	#new_info .txt_area li {
		padding-bottom: 3px;
		border-bottom: #ccc 1px dotted;
		margin-bottom: .5em
	}
	#new_info .txt_area li:last-child {
		border: none
	}
	#new_info .txt_area .date {
		width: 90px;
		float: left;
		margin-right: 15px
	}
	#new_info .txt_area .txt {
		width: 550px;
		float: left
	}
	.mCS-my-theme.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
	.mCS-my-theme.mCSB_scrollTools .mCSB_draggerRail {
		width: 8px
	}
}

#new_info h4.list_title {
	background: #ae0024;
	color: #FFF;
	padding: 0 .5rem;
	border-radius: .2rem
}

#new_info .list_main {
	max-height: 120px;
	height: auto;
	margin: 0 0 1em;
	padding-left: 5px;
	overflow: hidden;
	border-bottom: #999 1px solid
}

#new_info .list_morelink {
	text-align: right
}

#new_info .list_morelink a {
	color: #FFF;
	border-radius: 2rem;
	padding: 0 .6em
}

#new_info .list_morelink a:hover {
	color: #FFF
}

.mCS-my-theme.mCSB_scrollTools .mCSB_draggerRail {
	background-color: #000;
	background-color: rgba(0, 0, 0, .15)
}

.mCS-my-theme.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
	background-color: #ae0024;
	background-color: rgba(174, 0, 36, 1)
}

.mCS-my-theme.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-my-theme.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-my-theme.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
	background-color: rgba(238, 29, 72, 1)
}

.mCS-my-theme.mCSB_scrollTools .mCSB_buttonUp {
	background-position: -80px 0
}

.mCS-my-theme.mCSB_scrollTools .mCSB_buttonDown {
	background-position: -80px -20px
}

.mCS-my-theme.mCSB_scrollTools .mCSB_buttonLeft {
	background-position: -80px -40px
}

.mCS-my-theme.mCSB_scrollTools .mCSB_buttonRight {
	background-position: -80px -56px
}

div.tothetop a {
	display: block;
	font-weight: 700;
	color: #fff;
	text-decoration: none;
	background: #ca1e43;
	-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	transition: .2s ease-in-out
}

div.tothetop a:hover {
	background: #eb1745
}

@media screen and (max-width:768px) {
	div.tothetop {
		position: fixed;
		right: 1.8em;
		bottom: 2.5em;
		z-index: 1500
	}
	div.tothetop a {
		padding: 1.8em 1em;
		-webkit-border-radius: 2.5em;
		-moz-border-radius: 2.5em;
		-ms-border-radius: 2.5em;
		border-radius: 2.5em
	}
}

@media print,
screen and (min-width:769px) {
	div.tothetop {
		position: fixed;
		bottom: 10px;
		z-index: 1500;
		right: 30px
	}
	div.tothetop a {
		padding: 19px 9px;
		font-size: .8rem;
		display: block;
		font-weight: 700;
		color: #fff;
		text-decoration: none;
		-webkit-border-radius: 2.5em;
		-moz-border-radius: 2.5em;
		-ms-border-radius: 2.5em;
		border-radius: 2.5em;
		filter: alpha(opacity=85);
		moz-opacity: .85;
		opacity: .85
	}
}



#event {
	width: 100%;
	overflow-x: hidden !important;
}
#event #breadcrumbs ul.primary li {
	padding: 0 ;
}
#event #breadcrumbs ul.primary li:last-child a {
	background: none;
}
#contents {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	position: relative;
	font-size: 1.0rem;
}
.innerBox {
	width: 94%;
	max-width: 1200px;
	margin: auto;
	padding: 30px 0;
	position: relative;
}
.sa {
  opacity: 0;
  transition: all 1.2s ease;
}

.sa.show {
  opacity: 1;
  transform: none;
}

.sa-lr {
  transform: translate(-80px, 0);
}

.sa-rl {
  transform: translate(80px, 0);
}

.sa-up {
  transform: translate(0, 80px);
}

.sa-down {
  transform: translate(0, -80px);
}

.sa-scaleUp {
  transform: scale(.7);
}

.sa-scaleDown {
  transform: scale(1.5);
}

.sa-rotateL {
  transform: rotate(180deg);
}

.sa-rotateR {
  transform: rotate(-180deg);
}

/* ////////// mobile ////////// */
@media screen and (max-width: 768px) {
    .innerBox {
        padding: 40px 0;
        width: 92%;
    }
	.shortPadding {
        padding: 15px 0;
	}
}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
    .innerBox {
        padding: 60px 0;
    }
	.shortPadding {
        padding: 25px 0;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:959px) {
    .innerBox {
        padding: 50px 0;
    }
}
figure {
    position: relative;
}
figure:after {
    position: absolute;
    display: block;
    content:'';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.flexBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    align-items: stretch;
}
.flexCenter {
    justify-content: center;
    align-items: center;
}
.flexWrap {
    flex-wrap: wrap;
}
#contents img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	display: block;
	margin: auto;
}
.small {
	font-size: .8em;
}
.mw700 {
	max-width: 700px;
	margin: auto;
}
.mw960 {
	max-width: 960px;
	margin: auto;
}
.inb {
	display: inline-block;
}
.linkBtn {
    color: #9b0032 !important;
    background: #fff;
    display: block;
    width: 90%;
    max-width: 300px;
    border: solid 2px;
    border-color:#9b0032;
    line-height: 1.3;
    padding: .5em;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    border-radius: 100px;
    margin: 30px auto;
    -webkit-transition: 0.2s ease-in-out;  
       -moz-transition: 0.2s ease-in-out;  
         -o-transition: 0.2s ease-in-out;  
            transition: 0.2s ease-in-out;
    font-size: 1.2em;
    text-align: center;
	position: relative;
}
.btn-L {
    max-width: 700px;
    font-size: 1.8rem;
    font-weight: bold;
    border: solid 3px;
}
.btn-Color {
    background: #9b0032;
    color: #fff;
    border-color: #9b0032;
}
.btn-Color .linkIcon:after {
    border-left-color: #fff;
}
.linkIcon {
    position: relative;
    padding-left: 1.5em;
    display: inline-block;
    line-height: 1.2;
}
.linkBtn .linkIcon {
    -webkit-transition: none;
       -moz-transition: none;
         -o-transition: none;
            transition: none;
}
.linkIcon:before, .linkIcon:after {
    position: absolute;
    content: '';
    display: block;
    top: -.1em;
    bottom: 0;
    left: 0;
    margin: auto;
    -webkit-transition: 0.2s ease-in-out;  
       -moz-transition: 0.2s ease-in-out;  
         -o-transition: 0.2s ease-in-out;  
            transition: 0.2s ease-in-out;
}
.linkIcon:before {
    width: 1.2em;
    height: 1.2em;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    border-radius: 100px;
    background: #fff;
    border: solid thin;
    border-color: #9b0032;
}
.linkIcon:after {
    width: 0;
    height: 0;
    bottom: 0;
    left: .43em;
    margin: auto;
    border: solid .5em transparent;
    border-top: solid .3em transparent;
    border-bottom : solid .3em transparent;
    border-left-color: #9b0032;
}
.linkIcon.bottom:after {
    width: 0;
    height: 0;
    top: .5em;
    left: .3em;
/*	top: 0;*/
	bottom: 0;
    margin: auto;
    border: solid .5em transparent;
    border-left: solid .3em transparent;
    border-right : solid .3em transparent;
    border-top-color: #9b0032;
}
.linkBtn .linkIcon.bottom:after {
    top: 0;
}
.linkBtn .linkIcon:before {
    display: none;
}
.linkBtn:hover, a:hover .linkBtn {
	background: #9b0032;
	border-color: #9b0032;
	color: #fff;
}
a.btn-Color:hover {
	background: #ff3b3b;
	border-color: #ff3b3b;
}
a:hover {
	color: #9b0032;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
a:hover .linkIcon:before, .linkBtn:hover .linkIcon:before {
	background: #9b0032;
}
a:hover .linkIcon:after, .linkBtn:hover .linkIcon:after {
	border-left-color: #fff;
}
a:hover .linkIcon.bottom:after {
	border-top-color: #fff;
	border-left-color: transparent;
}
.linkBtn:hover .linkIcon {
	color: #fff
}
a.uLine:hover {
	border-color: #9b0032;
}
ul.markList li {
    position: relative;
    padding-left: 1.2em;
    line-height: 1.4;
    margin: .2em 0
}
ul.markList li:before {
    position: absolute;
    display: block;
    left: 0;
    top: 0;
}
ul.markList.musicNote li:before {
    content: '\266A';
    font-size: 1.1em;
}
ul.markList.attentionMark li:before {
    content: '\203B';
}
ul.markList.dot li:before {
    content: '\30FB';
}

.circleMark {
    display: inline-block;
    border: solid 1px;
    font-size: .9em;
    line-height: 1.0;
    padding: .3em .5em .2em;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    border-radius: 100px;
    margin-top: -2em;
    vertical-align: 0;
}
.squareMark {
    display: inline-block;
    border: solid 1px;
    font-size: .9em;
    line-height: 1.0;
    padding: .3em .5em .2em;
/*    margin-top: -2em;*/
    vertical-align: 0;
}
i {
	font-style: normal;
}
