


.ArticleWrap01 {
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.ArticleWrap02 {
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.SideBnr1 {
    position: fixed;
    z-index: 50;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SideBnr1{
        left: 0;
        width: 50%;
        bottom: -1px;
        background-color: rgba(224,7,27,1.00);
    }
}

.SideBnr2 {
    position: fixed;
    right: 0;
    z-index: 50;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SideBnr2{
        width: 50%;
        bottom: -1px;
        background-color: rgba(224,7,27,1.00);
    }
    .SideBnr1 img, .SideBnr2 img{
        width: 100%;
    }
}
.TrainingVideoSection {
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
  padding: 3em 1em;
  box-sizing: border-box;
  background: #fff;
  border-radius: 1.5em;
  display: flex;
  justify-content: center;
}


.TrainingVideoInner {
    width: 100%;
    display: flex;
    gap: 1em;
    position: relative;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TrainingVideoInner{
        flex-direction: column;
    }
}
.TrainingTextOverlay {
  width: 100%;
  position: static;
  z-index: 1;
  color: rgba(223, 7, 27, 1);
  pointer-events: auto;
}


.TrainingTitle {
    line-height: 1.1;
    margin: 0 0 0.3em 0;
    font-family: 'milantyperev-r';
    font-weight: normal;
    font-size: 1.8rem;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TrainingTitle{
        text-align: center;
    }
}

.TrainingSubCopy {
    font-size: 1.1rem;
    font-weight: 600;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TrainingSubCopy{
        margin-bottom: 1em;
        text-align: center;
        line-height: 1.4;
    }
}
.TrainingLead {
  font-size: 0.85rem;
  text-align: justify;
  line-height: 1.9;
  font-weight: 500;
  width: 100%;
  margin: 0;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TrainingVideoRight{
        order: 1;
        width: 100%;
    }
    .TrainingVideoLeft{
        order: 2;
        width: 100%;
    }
}
.TrainingMainVideoFrame {
  width: 100%;
  aspect-ratio: 9 / 16;
  background: #000;
  border-radius: 1.2em;
  overflow: hidden;
}

.TrainingMainVideo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.TrainingMainVideoCaption {
  margin: .8em 0 0;
  font-size: .9rem;
  text-align: right;
  color: #666;
}


.TrainingThumbGrid {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.8em;
    margin: 0em 0 1em 0;
    width: 100%;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TrainingThumbGrid{
        justify-content: space-between;
    }
}
.VideoThumb {
  position: relative;
  flex: 0 0 calc(25% - 0.6em);
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}


.VideoThumb video {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 9 / 11;
    background-color: rgba(118, 118, 118, 1);
    object-fit: cover;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .VideoThumb video{
        border-radius: 0.4em;
    }
}
.ThumbPlayIcon {
  position: absolute;
  inset: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
}

.ThumbPlayIcon::before {
  content: "";
  width: 2.4em;
  height: 2.4em;
  border-radius: 50%;
  background: rgba(255, 255, 255, .7);
}

.ThumbPlayIcon::after {
  content: "";
  position: absolute;
  margin-left: .3em;
  border-style: solid;
  border-width: .8em 0 .8em 1.3em;
  border-color: transparent transparent transparent rgba(255, 255, 255, 1);
}

.VideoThumb.is-active video {
  outline: 2px solid rgba(228, 0, 43, 1);
  outline-offset: 2px;
}


.TrainingMoreBtn {
    display: table;
    text-align: center;
    text-decoration: none;
    padding: 0.7em 1.4em 0.7em 2.6em;
    font-size: 0.95rem;
    background-color: #e4002b;
    color: #fff;
    font-weight: 500;
    background-image: url(../img/PrtsCmm15.svg);
    background-repeat: no-repeat;
    background-position: left 0.6em center;
    border-radius: 0.5em;
    box-shadow: 0.4em 0.4em rgba(0, 0, 0, 0.15);
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TrainingMoreBtn{
        margin: 0 auto;
    }
}
.TrainingMoreBtn:hover {
  background-color: #99001C;
  color: #fff;
  box-shadow: 0.2em 0.2em rgba(0,0,0,0.15);
}


#LocationWrap {
width: 100%;
	gap: 20px;
	padding: 3em 1em;
	max-width: 1280px;
	margin: 0 auto;
	box-sizing: border-box;
background-image: url(../img/ImgParts01.jpg);
background-repeat: no-repeat;
background-position: center center;
background-size: cover;
}


#LocationWrap-Page {
    width: 100%;
    gap: 20px;
    padding: 3em 1em 1em 1em;
    max-width: 1280px;
    margin: 0 auto;
    box-sizing: border-box;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #LocationWrap-Page{
        background-color: rgba(240,240,240,1.00);
    }
}
.LocationTitle{
text-align: center;
font-family: 'milantyperev-r';
font-weight: normal;
color: rgba(0,0,0,1.00);
font-size: 2.5rem;
margin: 0 ;
}

.LocationLead{
    text-align: center;
    margin: 0 0 2em;
    color: rgba(223,7,27,1.00);
    font-weight: 500;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .LocationLead{
        font-size: 0.8rem;
    }
}

.LocationCnt {
    display: flex;
    gap: 3em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .LocationCnt{
        flex-wrap: wrap;
        justify-content: center;
    }
}

.LocationCntL {
    flex: 0 0 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 4em 0;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .LocationCntL{
        justify-content: center;
    }
}
.LocationCntL img {
  height: auto;
  box-sizing: border-box;
  max-width: 100%; /* 3b: 768〜 の実幅で画像の固有幅により左カラムがはみ出すのを防ぐ */
}
.LocationCntR{
  flex: 1;
  min-width: 0; /* 3b: 768〜 の実幅で内容幅より縮められずはみ出すのを防ぐ */
  display: flex;
  flex-direction: column;
  gap: 1.5em;
}


.LocationCntR-Page{
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.5em;
}
.LocationInfo{
  flex: 1;
  padding: 0.5em;
  box-sizing: border-box;
}

.LocationItem{
    display: flex;
    align-items: stretch;
    gap: 0em;
    background: #ffffff;
    padding: 0em;
    box-sizing: border-box;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .LocationItem{
        flex-wrap: wrap;
    }
}

.LocationItem-Page{
    border: thin rgba(226,69,72,1.00) solid;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .LocationItem-Page{
        display: flex;
        align-items: stretch;
        flex-wrap: wrap;
        gap: 0em;
        background: #ffffff;
        padding: 0em;
        box-sizing: border-box;
    }
}
.LocationPhoto {
flex: 0 0 100%;
position: relative;
overflow: hidden;
aspect-ratio: 16 / 16;
height: 180px;
box-sizing: border-box;
}
.LocationPhoto .swiper,
.LocationPhoto .swiper-wrapper,
.LocationPhoto .swiper-slide {
  width: 100%;
  height: 100%;
}
.LocationPhoto .swiper-slide img,
.LocationPhoto > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.LocationPhotoDate {
position: absolute;
z-index: 20;
right: 0.75em;
bottom: 0.75em;
color: #ffffff;
line-height: 1em;
text-align: center;
flex-wrap: wrap;
justify-content: center;
font-size: 0.75rem;
font-weight: 500;
}
.LocationPhotoDate img {
padding: 0.25em 0 0 0;
}
.LocationTag{
font-size: 0.75rem;
letter-spacing: .08em;
margin: 0 0 .4em 0;
text-align: center;
}
.LocationName{
text-align: center;
font-family: 'milantyperev-r';
font-weight: normal;
color: rgba(223,7,27,1.00);
font-size: 2.5rem;
margin: 0.2em 0 0.2em 0;
}
.LocationNameSub{
display: block;
color: rgba(0,0,0,1.00);
font-size: 1.1rem;
font-weight: 500;
}
.LocationCategory{
  margin-bottom: .8em;
}
.LocationCategory img {
width: 100%;
}
.LocationBtns{
  display: flex;
  align-items: center;
  gap: 1em;
}

.BtnPrimary{
    width: 90%;
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 0.8em;
    font-size: 0.8rem;
    background-color: #e4002b;
    color: #fff;
    font-weight: 500;
    background-image: url(../img/PrtsCmm14.svg);
    background-repeat: no-repeat;
    border-radius: 0.4em;
    background-position: right 0.5em center;
    box-shadow: 0.4em 0.4em rgba(0,0,0,0.15);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .BtnPrimary{
        flex: 3 0 0;
    }
}
.BtnPrimary:hover{
color: #fff;
background-color: #99001C;
box-shadow: 0.2em 0.2em rgba(0,0,0,0.15);
}

.BtnSecondary{
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 0.4em 2em;
    font-size: 0.7rem;
    border: 1px solid #aaa;
    color: rgb(139,139,139);
    border-radius: 0.5em;
    font-weight: 500;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .BtnSecondary{
        flex: 1 0 0;
    }
}
.BtnSecondary:hover{
background-color: rgb(230,230,230);
color: rgb(139,139,139);
}


#TopInlineLink {
    padding: 1.5em 1em 0 1em;
    width: 100%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #TopInlineLink{
        font-size: 1rem;
    }
}

#TopInlineLink p {
    margin: 0 0em;
    color: rgba(205,0,14,1);
    font-weight: 600;
    text-align: left;
    border: 2px solid rgba(205,0,14,1.00);
    border-radius: 0.75em;
    padding: 0.5em 0em 0.5em 2em;
    background-image: url(../img/PrtsCmm01.svg);
    background-repeat: no-repeat;
    background-position: left 0.3em center;
    font-size: 0.9rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #TopInlineLink p{
        line-height: 1.2em;
        background-size: clamp(1.1719rem, 5vw, 4rem);
    }
}
#TopInlineLink a {
color: rgba(205,0,14,1);
}


#TopBannerWrap {
    display: flex;
    gap: 1em;
    padding: 1em 1em;
    max-width: 1280px;
    margin: 0 auto;
    box-sizing: border-box;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #TopBannerWrap{
        flex-wrap: wrap;
        justify-content: center;
    }
}
.TopBanner a {
	display: block;
}
.TopBanner img {
	display: block;
	width: 100%;
	height: auto;
aspect-ratio: 10 / 3;
object-fit: cover;
}
	    

.gmenufixed {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 900;
	box-shadow: 0px 10px 40px -10px rgba(0,0,0,0.3);
}
.MainFloatBntLink a img {
	width: 100%;
	float: left;
	display: table;
	height: auto;
}
.MainFloatBntLink {
	width: 40%;
	position: fixed;
	right: 0px;
	bottom: 0px;
	z-index: 900;
}
.EntryCntTel .EntryTel a {
	color: rgba(207,0,13,1.00);
}
	
	

	
	
	
	

.CalendarWrap {
	color: rgba(0,0,0,1.00);
	width: 100%;
	display: table;
	text-align: center;
	margin-bottom: 15svh;
	margin-top: 5svh;
border-top: 1px solid rgba(224,7,27,1.00);
border-bottom: 1px solid rgba(224,7,27,1.00);
}
.CalendarCnt {
	display: table;
	margin-left: auto;
	margin-right: auto;
	width: 90%;
	margin-top: 3svh;
	margin-bottom: 5svh;
}

.CalendarWrap h2 {
	text-align: center;
	font-family: 'milantyperev-r';
	font-size: 2.5em;
	font-weight: normal;
	color: rgba(224,7,27,1.00);
	margin-top: 3svh;
}

	
	
	
	
	


	
	
	
	

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .S20PageCntTxSp1{
        display: block;
    }
    .S20PageCntTxSp2{
        margin-left: 2.7em;
    }
    .S20PageCntTxSp3{
        display: none;
    }
}
.S20PageHeader {
	color: rgba(0,0,0,1.00);
	width: 100%;
	display: table;
	padding-top: 10svh;
	padding-bottom: 10svh;
	position: relative;
	text-align: center;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.S20PageHeaderTitle {
	position: absolute;
	color: rgba(255,255,255,1.00);
	z-index: 100;
	top: 50%;
	left: 50%;
	margin-right: -50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.S20PageHeader h1 {
	padding: 0.5em;
	font-family: 'milantyperev-r';
	font-size: 1.2rem;
	font-weight: normal;
	margin-top: 1svh;
	background : -moz-linear-gradient(50% 100% 90deg,rgba(107, 0, 7, 1) 0%,rgba(149, 0, 10, 1) 30.68%,rgba(181, 0, 12, 1) 59.35%,rgba(200, 0, 14, 1) 83.43%,rgba(207, 0, 14, 1) 100%);
	background : -webkit-linear-gradient(90deg, rgba(107, 0, 7, 1) 0%, rgba(149, 0, 10, 1) 30.68%, rgba(181, 0, 12, 1) 59.35%, rgba(200, 0, 14, 1) 83.43%, rgba(207, 0, 14, 1) 100%);
	background : -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(107, 0, 7, 1) ),color-stop(0.3068,rgba(149, 0, 10, 1) ),color-stop(0.5935,rgba(181, 0, 12, 1) ),color-stop(0.8343,rgba(200, 0, 14, 1) ),color-stop(1,rgba(207, 0, 14, 1) ));
	background : linear-gradient(0deg, rgba(107, 0, 7, 1) 0%, rgba(149, 0, 10, 1) 30.68%, rgba(181, 0, 12, 1) 59.35%, rgba(200, 0, 14, 1) 83.43%, rgba(207, 0, 14, 1) 100%);
	line-height: 1.2em;
}
.S20PageHeader p {
	font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
	color: rgba(182,156,81,1.00);
}
.S20PageWrap01 {
	background : -moz-linear-gradient(50% 100% 90deg,rgba(107, 0, 7, 1) 0%,rgba(149, 0, 10, 1) 30.68%,rgba(181, 0, 12, 1) 59.35%,rgba(200, 0, 14, 1) 83.43%,rgba(207, 0, 14, 1) 100%);
	background : -webkit-linear-gradient(90deg, rgba(107, 0, 7, 1) 0%, rgba(149, 0, 10, 1) 30.68%, rgba(181, 0, 12, 1) 59.35%, rgba(200, 0, 14, 1) 83.43%, rgba(207, 0, 14, 1) 100%);
	background : -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(107, 0, 7, 1) ),color-stop(0.3068,rgba(149, 0, 10, 1) ),color-stop(0.5935,rgba(181, 0, 12, 1) ),color-stop(0.8343,rgba(200, 0, 14, 1) ),color-stop(1,rgba(207, 0, 14, 1) ));
	background : linear-gradient(0deg, rgba(107, 0, 7, 1) 0%, rgba(149, 0, 10, 1) 30.68%, rgba(181, 0, 12, 1) 59.35%, rgba(200, 0, 14, 1) 83.43%, rgba(207, 0, 14, 1) 100%);
}
.S20PageCntSet {
	margin-top: 0px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 5%;
	padding-right: 5%;
	padding-bottom: 5svh;
	color: rgba(255,255,255,1.00);
	padding-top: 8svh;
	line-height: 2.1em;
}

.S20PageCntSet h2 {
    font-size: 1.3rem;
    font-weight: normal;
    line-height: 1.3em;
    margin-bottom: 0.5em;
    text-shadow: 0px 0px 0.15em rgba(0,0,0,0.70);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .S20PageCntSet h2{
        text-align: center;
    }
}
.S20PageCntSet p {
	text-shadow: 0px 0px 0.15em rgba(0,0,0,0.70);
	font-size: 0.85rem;
	line-height: 2.1em;
}
.S20PageCntEx .Textp2 {
	padding-left: 2em;
	padding-right: 2em;
}
.S20PageCntSet .Youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin-top: 2em;
	margin-bottom: 2em;
}
.S20PageCntSet .Youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

	
	
	

	
	
	
	
.S20PageCntEx {
	background-color: rgba(255,255,255,1.00);
	margin-top: 1em;
	margin-bottom: 1em;
	display: table;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

.S20PageCntEx h3 {
    color: rgba(207,0,14,1.00);
    text-align: center;
    font-size: 1.1rem;
    line-height: 1.2em;
    margin-bottom: 0.5em;
    border-bottom: 1px solid rgba(207,0,14,0.30);
    padding-bottom: 0.5em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .S20PageCntEx h3{
        margin-left: 0.5em;
        margin-right: 0.5em;
    }
}

.S20PageCntEx p {
    text-align: left;
    color: rgba(207,0,14,1.00);
    text-shadow: 0px 0px;
    line-height: 1.6em;
    margin-bottom: 0.5em;
    font-size: 0.85rem;
    font-weight: normal;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .S20PageCntEx p{
        margin-left: 0.5em;
        margin-right: 0.5em;
    }
}
.S20PageCntEx p .Cap {
	font-weight: normal;
	color: rgba(110,110,110,1.00);
	font-size: 0.85rem;
	margin-left: 0em;
	margin-right: 0.4em;
}
.S20PageCntEx p a {
	color: rgba(255,255,255,1.00);
	background-color: rgba(0,0,0,1.00);
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-left: 1.5em;
	padding-right: 1.5em;
	margin-top: 0.5em;
	display: table;
	margin-left: auto;
	margin-right: auto;
	font-size: 0.85rem;
	background-image: url(../img/Parts26.svg);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 80%;
	-webkit-box-shadow: 0.4em 0.4em 0.2em rgba(0,0,0,0.20);
	box-shadow: 0.4em 0.4em 0.2em rgba(0,0,0,0.20);
}
	
.S20PageCntExB {
	margin-top: 1em;
	margin-bottom: 0em;
	display: table;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	border: 1px solid #FFFFFF;
}
.S20PageCntExB h3 {
	color: rgba(255,255,255,1.00);
	text-align: center;
	font-size: 1.1rem;
	line-height: 1.2em;
	margin-bottom: 0.5em;
	border-bottom: 1px solid rgba(254,254,254,0.60);
	padding-bottom: 0.5em;
}

.S20PageCntExB p {
    text-align: left;
    color: rgba(255,255,255,1.00);
    text-shadow: 0px 0px;
    line-height: 1.6em;
    margin-bottom: 0.5em;
    font-size: 0.85rem;
    font-weight: normal;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .S20PageCntExB p{
        margin-left: 0.5em;
        margin-right: 0.5em;
    }
}
.S20PageCntExB p a {
	color: rgba(255,255,255,1.00);
	background-color: rgba(0,0,0,1.00);
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-left: 1.5em;
	padding-right: 1.5em;
	margin-top: 0.5em;
	display: table;
	margin-left: auto;
	margin-right: auto;
	font-size: 0.85rem;
	background-image: url(../img/Parts26.svg);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 80%;
	-webkit-box-shadow: 0.4em 0.4em 0.2em rgba(0,0,0,0.20);
	box-shadow: 0.4em 0.4em 0.2em rgba(0,0,0,0.20);
}
.S20PageCntExB p .Cap {
	font-weight: normal;
	color: rgba(218,218,218,1.00);
	font-size: 0.85rem;
	margin-left: 0em;
	margin-right: 0.4em;
}	
	
	
	
	
	
	
	
	
	
	
	
	
.S20PageCntParts02Set {
	display: table;
	margin-left: auto;
	margin-right: auto;
}
.S20PageCnt02 {
	display: table;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-shadow: inset 0px 30px 30px -20px rgba(0,0,0,0.20);
	box-shadow: inset 0px 30px 30px -20px rgba(0,0,0,0.20);
	background-color: rgba(255,255,255,1.00);
	width: 100%;
	padding-top: 2svh;
	padding-bottom: 7svh;
}
.S20PageCntParts02Set {
	display: table;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}
.S20PageCntParts02 {
	background-color: rgba(170,0,14,1.00);
	float: left;
	width: 29%;
	margin-top: 1%;
	margin-right: 2%;
	margin-left: 2%;
	margin-bottom: 1%;
	padding-top: 3%;
	padding-bottom: 0%;
	color: rgba(253,253,253,1.00);
	display: table;
}
.S20PageCntParts02 h3 {
	color: rgba(255,239,191,1.00);
	background-image: url(../img/Parts10.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 35% auto;
	text-align: center;
	display: table;
	padding-top: 20%;
	padding-right: 0%;
	padding-left: 0%;
	padding-bottom: 5%;
	font-size: 0.8rem;
	margin-left: auto;
	margin-right: auto;
}
.S20PageCntParts02 h3 .Cat {
	padding-top: 4svh;
	width: 100%;
	font-weight: bold;
	font-size: 1.1rem;
	font-family: "Arial Black", Gadget, sans-serif;
}
.S20PageCnt02 .S20PageCntParts02 p {
	color: rgba(253,253,253,1.00);
	font-size: 0.7rem;
	line-height: 1.6em;
	padding-left: 5%;
	padding-right: 5%;
	text-align: center;
	display: table;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 15%;
}
#TopCautionLink {
	background-color: #000000;
	display: table;
	width: 100%;
}
#TopCautionLink p a {
	color: #CE000E;
	text-align: center;
	display: table;
	margin-left: auto;
	margin-right: auto;
	padding: 1em;
	font-size: 1rem;
	font-weight: bold;
	text-decoration: underline;
}
	
#TopCautionLink2 {
	background-color: #FFFFFF;
	display: table;
	width: 100%;
}
#TopCautionLink2 p a {
	color: #CE000E;
	text-align: center;
	display: table;
	margin-left: auto;
	margin-right: auto;
	padding: 1em;
	font-size: 1rem;
	font-weight: bold;
	text-decoration: underline;
}
	
	
	

	
.FloatCenter {
	display: table;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1em;
}
.Color01  {
	color: rgba(170,1,14,1.00);
}
.EntryCntBox02 .FormCaution {
	text-align: justify;
	color: rgba(255,255,255,1.00);
	font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
}

.EventWrap {
	width: 100%;
	display: table;
	margin-left: auto;
	margin-right: auto;
}
.EventHeader {
	background-color: rgba(255,255,255,1.00);
	width: 100%;
	display: table;
	text-align: justify;
	padding-bottom: 1em;
	margin-left: auto;
	margin-right: auto;
	padding-top: 1em;
}

.EventHeader h1 {
    text-align: center;
    color: rgba(207,0,14,1.00);
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.2em;
    margin-bottom: 1em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EventHeader h1{
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }
}
.EventHeader p {
	margin-left: auto;
	margin-right: auto;
	font-size: 0.95rem;
	line-height: 2em;
	margin-bottom: 1em;
	display: table;
	width: 90%;
}

.EventDateList   {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EventDateList{
        margin: 2em 0 2em 0;
    }
}

.EventDate  {
    font-size: 1.1rem;
    background-color: rgba(207,0,14,1.00);
    color: rgba(255,255,255,1.00);
    text-align: center;
    padding: 1em;
    line-height: 1.4em;
    border-radius: 0.5em;
    font-weight: 600;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EventDate{
        display: table;
    }
}
.EventMain {
	background : rgba(255, 255, 255, 1);
	width: 100%;
	text-align: justify;
	padding-bottom: 1em;
	margin-left: auto;
	margin-right: auto;
	padding-top: 1em;
}
.EventCntSet {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}

.EventCntSet h2 {
    font-size: 1.2rem;
    font-weight: normal;
    background: -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
    position: relative;
    padding-left: 12%;
    padding-top: 2%;
    padding-bottom: 2%;
    padding-right: 2%;
    color: rgba(255,255,255,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EventCntSet h2{
        line-height: 1.2em;
    }
}
.EventCntSet h2:before {
	content: "";
	position: absolute;
	width: 10%;
	height: 100%;
	top: 0px;
	left: 0px;
	background-color: rgba(207,0,14,1.00);
	background-image: url(../img/Parts08.svg);
	background-repeat: no-repeat;
	background-size: 80% auto;
	background-position: center center;
}
.EventCnt   {
	background-color: rgba(255,255,255,1.00);
	display: table;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	padding-top: 0.5em;
	text-align: justify;
}

.EventCnt h3 {
    background-color: rgba(170,0,14,1.00);
    color: rgba(255,255,255,1.00);
    padding-top: 0.5em;
    font-size: 1rem;
    font-weight: normal;
    padding-bottom: 0.5em;
    padding-left: 1em;
    padding-right: 1em;
    margin-bottom: 0.5em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EventCnt h3{
        text-align: center;
    }
}
.EventCnt p {
	font-size: 0.95rem;
	line-height: 2em;
	margin-bottom: 1em;
}
.EventCnt p strong {
	font-size: 0.95rem;
}
.EventCnt p a {
	border-bottom: 1px solid rgba(170,0,14,1.00);
	line-height: 1em;
}
.EventCnt p a:hover {
	background-color: rgba(170,0,14,0.60);
	color: rgba(255,255,255,1.00);
}

.EventForm {
    background-color: rgba(255,255,255,1.00);
    display: table;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    text-align: justify;
    box-shadow: inset 0px 30px 30px -20px rgba(0,0,0,0.10);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EventForm{
        padding: 2em 0;
    }
}
.EventForm h3 {
	color: rgba(207,0,14,1.00);
	border-bottom: 1px solid #E0071B;
	font-size: 1.4rem;
	font-weight: normal;
	margin-bottom: 1em;
	line-height: 1.6em;
	display: table;
	clear: both;
}
.EventForm h4 {
font-size: 0.95rem;
font-weight: normal;
margin-bottom: 1em;
}

.EventForm p {
    font-size: 0.95rem;
    line-height: 1.8em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EventForm p{
        margin-bottom: 2em;
    }
}

h3.EventFormTitle {
    background-color: rgba(170,0,14,1.00);
    color: rgba(255,255,255,1.00);
    font-size: 1.2rem;
    font-weight: normal;
    margin-bottom: 0.5em;
    line-height: 1em;
    display: block;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    h3.EventFormTitle{
        padding: 0.5em;
    }
}
#Article201901 h1 {
	color: rgba(255,0,0,1.00);
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.2em;
	margin-bottom: 1em;
	margin-top: 1.5em;
}
#Article201901 p {
	font-size: 1.1rem;
	font-weight: normal;
	text-align: justify;
	line-height: 2.2em;
}
.Article201901Index ul {
	display: table;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	margin-bottom: 7em;
}
.Article201901Index ul li {
	display: table;
	float: left;
}
.Article201901Index ul li a {
	background-image: -webkit-linear-gradient(270deg,rgba(129,0,7,1.00) 0%,rgba(72,0,5,1.00) 100%);
	background-image: -moz-linear-gradient(270deg,rgba(129,0,7,1.00) 0%,rgba(72,0,5,1.00) 100%);
	background-image: -o-linear-gradient(270deg,rgba(129,0,7,1.00) 0%,rgba(72,0,5,1.00) 100%);
	background-image: linear-gradient(180deg,rgba(129,0,7,1.00) 0%,rgba(72,0,5,1.00) 100%);
	border: 1px solid rgba(152,12,16,1.00);
	border-radius: 0.5em;
	padding: 1em;
	margin: 0.5em;
	display: table;
	font-size: 1.1rem;
	text-decoration: none;
	text-decoration: none !important;
	text-align: center;
	line-height: 1.4em;
}
.Article201901Index ul li a .Article201901IndexDeco {
	color: rgba(255,249,137,1.00);
	font-size: 1rem !important;
	display: table;
	margin-left: auto;
	margin-right: auto;
	font-family: "Arial Black", Gadget, sans-serif;
	font-weight: normal !important;
	line-height: 1em;
	margin-bottom: 0.5em;
}
#Article201901 h2 {
	font-size: 1.5rem !important;
	font-weight: normal !important;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: rgba(255,255,255,1.00) !important;
	background-image: -webkit-linear-gradient(270deg,rgba(19,19,19,1.00) 0%,rgba(53,53,53,1.00) 100%);
	background-image: -moz-linear-gradient(270deg,rgba(19,19,19,1.00) 0%,rgba(53,53,53,1.00) 100%);
	background-image: -o-linear-gradient(270deg,rgba(19,19,19,1.00) 0%,rgba(53,53,53,1.00) 100%);
	background-image: linear-gradient(180deg,rgba(19,19,19,1.00) 0%,rgba(53,53,53,1.00) 100%);
	padding: 1em !important;
	text-align: center;
	display: block;
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-top: 1em !important;
	margin-bottom: 0.5em !important;
	border-radius: 0em !important;
	border-top: 1px solid rgba(211,1,0,1.00);
}
#Article201901 p {
	display: table;
	line-height: 2.2em;
}
.Article201901Img {
	padding-bottom: 3em !important;
}
.Article201901Img img {
	float: left;
	margin: 10px;
	display: table;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 5px solid rgba(255,255,255,1.00);
}
#article_news #Article201901 .Article201901Matome {
	border-top: 1px solid rgba(211,1,0,1.00);
	border-bottom: 1px solid rgba(211,1,0,1.00);
	padding-top: 1em;
}
.Article201901IndexDecoh2  {
	color: rgba(255,249,137,1.00);
	font-size: 1rem !important;
	display: table;
	margin-left: auto;
	margin-right: auto;
	font-family: "Arial Black", Gadget, sans-serif;
	line-height: 1em;
	margin-bottom: 0.5em;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .NewsListWrap{
        background-color: rgba(255,255,255,1.00);
        color: rgba(0,0,0,1.00);
        width: 100%;
        padding-top: 1em;
        float: left;
        letter-spacing: 0.1em;
        padding: 3em 0;
        border-bottom: solid 1px rgba(224,7,27,1.00);
        margin-bottom: 2em;
    }
}
.NewsListWrap h2 {
	text-align: center;
	font-family: 'milantyperev-r';
	font-size: 2rem;
	font-weight: normal;
	color: rgba(0,0,0,1.00);
}


.NewsListWrap p {
    text-align: center;
    color: rgba(224,7,27,1.00);
    width: 100%;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .NewsListWrap p{
        font-size: 0.8rem;
        margin-bottom: 2em;
    }
}
.NewsListSet {
	width: 90%;
	display: table;
	margin-left: auto;
	margin-right: auto;
}


.NewsList {
    display: table;
    position: relative;
    width: 96%;
    float: left;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .NewsList{
        margin-top: 0.5em;
        margin-right: 2%;
        margin-left: 2%;
        margin-bottom: 0.5em;
    }
}
.NewsList img {
	width: 23%;
	float: left;
	margin-right: 3%;
	overflow-x: hidden;
	overflow-y: hidden;
}
.NewsList .Cate {
	float: left;
	font-size: clamp(0.3047rem, 1.3vw, 1.04rem);
}

.NewsList h3 {
    float: left;
    width: 74%;
    font-size: 0.95rem;
    line-height: 1.2em;
    letter-spacing: normal;
    font-weight: normal;
    margin-bottom: 0.7svh;
    color: rgba(224,7,27,1.00);
    text-align: justify;
    overflow-y: hidden;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .NewsList h3{
        max-height: 2.2em;
    }
}
.NewsList .Date {
	width: 42%;
	float: left;
	color: rgba(153,153,153,1.00);
	font-size: clamp(0.2344rem, 1vw, 0.8rem);
	margin-bottom: 0.2svh;
	line-height: 1em;
}

.NewsList p {
    float: left;
    width: 72%;
    margin-bottom: 0px;
    line-height: 1.6em;
    font-size: clamp(0.2344rem, 1vw, 0.8rem);
    letter-spacing: normal;
    color: rgba(153,153,153,1.00);
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .NewsList p{
        display: none;
    }
}

.ContactCaution {
    width: 90%;
    display: table;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #FFFFFF;
    margin-top: 2em;
    margin-bottom: 2em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .ContactCaution{
        padding-top: 5%;
        padding-right: 5%;
        padding-left: 5%;
    }
}
.ContactCaution h3 {
text-align: center;
font-size: 1rem;
font-weight: normal;
margin-bottom: 0.5em;
margin-top: 0em;
border-bottom: 1px solid #FFFFFF;
display: table;
margin-left: auto;
margin-right: auto;
padding-bottom: 0.2em;
}
.ContactCaution p strong {
padding-left: 0.5em;
padding-right: 0.5em;
text-decoration: underline;
}
.EntryCntBox02 .ContactCaution p  {
text-align: justify;
font-size: 0.75rem;
line-height: 1.6em;
}

.EntryWrap {
color: rgba(0,0,0,1.00);
background-color: rgba(230,230,230,1.00);
width: 100%;
display: table;
text-align: justify;
padding-bottom: 2em;
margin-left: auto;
margin-right: auto;
}
.EntryCntSet {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 1em;
}
.EntryCntSet h1 {
font-size: 1.2rem;
font-weight: normal;
background : -moz-linear-gradient(50% 100% 90deg,rgba(66, 66, 66, 1) 0%,rgba(10, 10, 10, 1) 15%,rgba(40, 40, 40, 1) 85%,rgba(66, 66, 66, 1) 100%);
background : -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
background : -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(66, 66, 66, 1) ),color-stop(0.15,rgba(10, 10, 10, 1) ),color-stop(0.85,rgba(40, 40, 40, 1) ),color-stop(1,rgba(66, 66, 66, 1) ));
background : -o-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
background : -ms-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#424242', endColorstr='#424242' ,GradientType=0)";
background : linear-gradient(0deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#424242',endColorstr='#424242' , GradientType=0);
position: relative;
padding-left: 12%;
padding-top: 2%;
padding-bottom: 2%;
padding-right: 2%;
color: rgba(255,255,255,1.00);
}
.EntryCntSet h1:before {
	content: "";
	position: absolute;
	width: 10%;
	height: 100%;
	top: 0px;
	left: 0px;
	background-color: rgba(207,0,14,1.00);
	background-image: url(../img/Parts08.svg);
	background-repeat: no-repeat;
	background-size: 80% auto;
	background-position: center center;
}
.EntryCntSet h2 {
text-align: center;
color: rgba(207,0,14,1.00);
font-weight: normal;
font-size: 1.1rem;
line-height: 1.2em;
margin-bottom: 1em;
padding-top: 1.5em;
display: table;
margin-left: auto;
margin-right: auto;
border-bottom: 2px solid rgba(207,0,14,1.00);
}
.EntryCntSet img {
display: table;
margin-left: auto;
margin-right: auto;
}
.EntryCntBox {
	padding-bottom: 1em;
}
.EntryCntBox p {
line-height: 1.8em;
font-size: 0.7rem;
width: 90%;
display: table;
margin-left: auto;
margin-right: auto;
}
.EntryCntBox img {
	display: table;
	margin-left: auto;
	margin-right: auto;
}
.EntryCntBox02 {
padding-bottom: 1em;
background-color: rgba(200,200,200,1.00);
/* [disabled]width: 90%; */
margin-left: auto;
margin-right: auto;
padding-left: 5%;
padding-right: 5%;
display: table;
}

.EntryCntBox02 p {
    text-align: center;
    line-height: 1.6em;
    margin-bottom: 1em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EntryCntBox02 p{
        font-size: 0.95rem;
    }
}
.EntryCntBox02 p .EntryCntBox02Link {
	background-color: #FFFFFF;
	padding-top: 0.5em;
	padding-right: 3em;
	padding-left: 3em;
	padding-bottom: 0.5em;
	display: table;
	margin-left: auto;
	margin-right: auto;
	margin-top: 1em;
	margin-bottom: 1em;
}

.EntryCntBox03Link {
    background-color: #FFFFFF;
    padding-top: 0.5em;
    padding-right: 2em;
    padding-left: 2em;
    padding-bottom: 0.5em;
    display: table;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: 1em;
    -webkit-box-shadow: 0.3em 0.3em 0.2em rgba(0,0,0,0.15);
    box-shadow: 0.3em 0.3em 0.2em rgba(0,0,0,0.15);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EntryCntBox03Link{
        min-width: clamp(14.0625rem, 60vw, 48rem);
    }
}
.EntryCntBox .EntryCntTel {
text-align: center;
font-size: 0.7rem;
}
.EntryTel {
	color: rgba(207,0,13,1.00);
	font-weight: bold;
	font-size: clamp(0.7031rem, 3vw, 2.4rem);
}
.EntryTelB {
	color: rgba(207,0,13,1.00);
	font-weight: bold;
	font-size: clamp(0.4688rem, 2vw, 1.6rem);
}
.EntryFormGuide ul {
	list-style-type: none;
}


.EntryFormGuide ul .EFGBlank {
	display: block;
	text-align: center;
	width: 50%;
	float: left;
	color: #E0071B;
	padding-top: 1em;
	padding-bottom: 1em;
	font-size: clamp(0.4688rem, 2vw, 1.6rem);
	font-weight: bold;
	border-left: 1px none #AA000D;
	border-right: 1px solid #AA000D;
	border-bottom: 1px solid #AA000D;
	border-top: 1px none #AA000D;
	box-sizing: border-box;
}
.EntryFormGuide ul li .EFGCap {
	display: block;
	color: #808080;
	font-size: clamp(0.2812rem, 1.2vw, 0.96rem);
	font-weight: normal;
}
.EntryFormGuide ul li .EFGDate {
	font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
	line-height: 1em;
}
.EntryFormGuide ul li .EFGTime {
	display: block;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}

.EntryFormGuide ul li .Limit {
    position: absolute;
    -webkit-transform: translate(-50%, -120%);
    transform: translate(-50%, -120%);
    background-color: rgba(170,1,14,0.70);
    color: rgba(255,255,255,1.00);
    font-size: 0.75rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EntryFormGuide ul li .Limit{
        padding-top: 1.5em;
        padding-right: 0.7em;
        padding-left: 0.7em;
        padding-bottom: 1.5em;
    }
}

.EntryFormGuide ul li .Limit2 {
    width: 90%;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: rgba(170,1,14,0.70);
    color: rgba(255,255,255,1.00);
    font-size: 0.75rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EntryFormGuide ul li .Limit2{
        padding-top: 1em;
        padding-right: 0.25em;
        padding-left: 0.25em;
        padding-bottom: 1em;
    }
}
.EntryFormGuide ul li .NoPointer {
position: relative;
}
.NoPointer {
  pointer-events: none;
}
.EFGBlanc {
	display: block;
	text-align: center;
	width: 50%;
	float: left;
	color: #E0071B;
	padding-top: 1em;
	padding-bottom: 1em;
	font-size: clamp(0.4688rem, 2vw, 1.6rem);
	font-weight: bold;
	border-left: 1px none #AA000D;
	border-right: 1px solid #AA000D;
	border-bottom: 1px solid #AA000D;
	border-top: 1px none #AA000D;
	box-sizing: border-box;
}
.EntryFormGuide ul li a {
	background-color: #FFFFFF;
	display: block;
	text-align: center;
	width: 50%;
	float: left;
	color: #E0071B;
	padding-top: 2em;
	padding-bottom: 2em;
	font-size: 1.1rem;
	font-weight: bold;
	border-left: 1px solid #AA000D;
	border-right: 1px solid #AA000D;
	border-bottom: 1px solid #AA000D;
	border-top: 1px none #AA000D;
	box-sizing: border-box;
}
.EntryFormGuide ul li a .EFGCap {
	display: block;
	color: #808080;
	font-size: 0.8rem;
	font-weight: normal;
}
.EntryFormGuide ul li a .EFGDate {
	font-size: 1rem;
	line-height: 1em;
}

.EntryFormGuide ul li a .EFGTime {
    display: block;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EntryFormGuide ul li a .EFGTime{
        font-size: 1rem;
    }
}
.EntryFormGuide ul li a:hover {
	background-color: rgba(255,255,255,0.70);
}
.EntryFormGuide ul .Day1_2 {
	background-color: #6A0008;
	width: 50%;
	float: left;
	display: block;
	text-align: center;
	padding-top: 1.5em;
	padding-bottom: 1.5em;
	border-right: 1px solid #AA000D;
	box-sizing: border-box;
	font-size: 0.85rem;
}
.EntryFormGuide ul .Day1_2:nth-child(2) {
	border-right: none;
}

.EntryFormGuide ul .Day1_1 {
    background-color: #6A0008;
    display: block;
    text-align: center;
    margin-top: 0.5em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EntryFormGuide ul .Day1_1{
        padding: 0.5em;
        line-height: 1.2em;
        color: #ffffff;
    }
}

.EntryFormGuide ul .Day1_1B {
    background-color: #4A0005;
    display: block;
    text-align: center;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EntryFormGuide ul .Day1_1B{
        padding: 0.5em;
        color: #ffffff;
    }
}
.EntryFormGuide ul .Day1_1C {
	background-color: #6A0008;
	width: 100%;
	float: left;
	display: block;
	text-align: center;
	padding-top: 1.5em;
	padding-bottom: 1.5em;
	box-sizing: border-box;
	font-size: 1.6rem;
}


.SchoolPageWrapB {
    color: rgba(0,0,0,1.00);
    background-color: #FFFFFF;
    width: 100%;
    display: table;
    text-align: justify;
    padding-bottom: 3em;
    margin-left: auto;
    margin-right: auto;
    background-repeat: repeat;
    background-position: center top;
    background-size: 25% auto;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SchoolPageWrapB{
        margin-top: 0svh;
    }
}
.SchoolPagePageWrap {
	color: rgba(255,255,255,1.00);
	background-color: #000000;
	width: 100%;
	display: table;
	text-align: justify;
	margin-top: 0svh;
	padding-bottom: 15svh;
	margin-left: auto;
	margin-right: auto;
	background-image: url(../img/Parts09.svg);
	background-size: 25% auto;
	background-position: right 2% top 20%;
	background-repeat: no-repeat;
}
.SchoolPageWhiteCnt {
	background-color: rgba(255,255,255,1.00);
	margin-top: 0px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 1.5em;
}
.SchoolPageCntSet {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 1em;
}

.SchoolPageCntSet h1 {
    font-size: 1.2rem;
    font-weight: normal;
    background: -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
    position: relative;
    padding-left: 12%;
    padding-top: 2%;
    padding-bottom: 2%;
    padding-right: 2%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SchoolPageCntSet h1{
        color: rgba(255,255,255,1.00);
    }
}
.SchoolPageCntSet h1:before {
	content: "";
	position: absolute;
	width: 10%;
	height: 100%;
	top: 0px;
	left: 0px;
	background-color: rgba(207,0,14,1.00);
	background-image: url(../img/Parts08.svg);
	background-repeat: no-repeat;
	background-size: 80% auto;
	background-position: center center;
}
.SchoolPageCntSet h2 {
text-align: center;
color: rgba(207,0,14,1.00);
font-weight: 600;
font-size: 1.4rem;
line-height: 1.4em;
margin-bottom: 0.5em;
padding-top: 1.2em;
display: table;
margin-left: auto;
margin-right: auto;
/* [disabled]max-width: 80%; */
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SchoolPageCntSet h2 br{
        display: none;
    }
}
.SchoolPageWhiteCnt h2 .H2sub {
color: rgba(0,0,0,1.00);
text-align: center;
display: block;
font-size: 0.9rem;
}

.SchoolPageCntSet p {
    line-height: 2.1em;
    color: rgba(0,0,0,1.00);
    font-size: 0.9rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SchoolPageCntSet p{
        width: 100%;
        text-align: justify;
        display: table;
        margin-left: auto;
        margin-right: auto;
    }
}
.SchoolPageCntSet .SchoolPageCntColumn2 {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10svh;
}


.SchoolPageWrapA {
	color: rgba(0,0,0,1.00);
	background-color: rgba(255,255,255,1.00);
	width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.SchoolTopCnt {
    width: 90%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SchoolTopCnt{
        margin-left: auto;
        margin-right: auto;
        padding-top: 1em;
        padding-bottom: 3em;
    }
}

.SchoolTopCnt h2 {
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.2em;
    color: #C90C0F;
    font-weight: 600;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SchoolTopCnt h2{
        margin: 1em 0;
    }
}

.SchoolTopCnt p {
    line-height: 2em;
    margin-bottom: 2em;
    font-size: 0.9rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SchoolTopCnt p{
        padding-left: 0%;
        padding-right: 0%;
        text-align: justify;
    }
}

.CourseSet {
    background-color: #C90C0F;
    color: #FFFFFF;
    box-shadow: 10px 10px 5px rgba(0,0,0,0.15);
    background-image: url(../img/Parts25.svg);
    background-repeat: no-repeat;
    background-position: right 3% top 15%;
    width: 100%;
    float: left;
    padding: 1em;
    background-size: 25% auto;
    position: relative;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .CourseSet{
        margin-top: 2%;
        margin-right: 0%;
        margin-left: 0%;
        margin-bottom: 2%;
        box-sizing: border-box;
    }
}
.CourseSet-B {
	background-color: #a50000;
}
.CourseSet-C {
	background-color: #FFFFFF;
	color: #a50000;
border: 1px #a50000 solid;
}

    


.SchoolTopCntImg {
	margin-top: 1em;
}
.CourseSet h3 {
	font-family: 'milantyperev-r';
	font-size: 2.3em;
	text-transform: uppercase;
	font-weight: normal;
	text-align: center;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .CourseSet h3 br{
        display: none;
    }
}
.CourseSet p {
	margin: 0;
	padding: 0;
	text-transform: uppercase;
	font-size: 0.9rem;
}

.CourseSet h4 {
    font-size: 1.5rem;
    text-align: center;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .CourseSet h4{
        margin: 0.75em 0;
    }
}
.CourseSet .SubTitle01 {
	color: #aaaaaa;
	line-height: 1.2em;
	margin-bottom: 0.5em;
	font-size: 0.8rem;
	text-align: center;
}
.CourseSetArrow {
	background-image: url(../img/Parts26.svg);
	width: 10%;
	position: absolute;
	height: 20%;
	top: 2%;
	right: 2%;
	background-repeat: no-repeat;
	z-index: 200;
	background-size: contain;
	background-position: right top;
}

.CourseSet2 {
    background-color: #FFFFFF;
    color: #C90C0F;
    box-shadow: 15px 15px 2px rgba(0,0,0,0.15);
    background-image: url(../img/Parts25.svg);
    background-repeat: no-repeat;
    background-position: right 3% top 15%;
    width: 92%;
    float: left;
    background-size: 25% auto;
    position: relative;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .CourseSet2{
        -webkit-box-shadow: 15px 15px 2px rgba(0,0,0,0.15);
        margin-top: 2%;
        margin-right: 2%;
        margin-left: 2%;
        margin-bottom: 10%;
        padding: 2%;
    }
}

.CourseSet2 h3 {
    font-family: 'milantyperev-r';
    font-size: 1.2rem;
    text-transform: uppercase;
    font-weight: normal;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .CourseSet2 h3{
        text-align: center;
    }
}
.CourseSet2 p {
	padding: 0;
	text-transform: uppercase;
	font-size: 0.8rem;
	color: #C90C0F;
	margin-bottom: 2em;
}

.CourseSet2 .SubTitle01 {
    color: #4D4D4D;
    line-height: 1.2em;
    margin-bottom: 0.5em;
    font-size: 0.8rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .CourseSet2 .SubTitle01{
        text-align: center;
    }
}
.CourseSet3 {
	background-color: #C90C0F;
	color: #FFFFFF;
	-webkit-box-shadow: 15px 15px 2px rgba(0,0,0,0.15);
	box-shadow: 15px 15px 2px rgba(0,0,0,0.15);
	background-image: url(../img/Parts31.svg);
	background-repeat: no-repeat;
	margin: 2%;
	background-position: center top 10%;
	width: 96%;
	float: left;
	background-size: 15% auto;
	position: relative;
	padding-top: 0.75em;
	padding-bottom: 0.75em;
}
.CourseSet3 h3 {
	font-family: 'milantyperev-r';
	font-size: 1.4em;
	text-transform: uppercase;
	font-weight: normal;
	text-align: center;
}

.CourseSet3 p {
    padding: 0;
    text-transform: uppercase;
    font-size: 0.7rem;
    color: #FFFFFF;
    margin-bottom: 1em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .CourseSet3 p{
        line-height: 1.6em;
    }
}
.CourseSet3 .SubTitle01 {
	color: #FFFFFF;
	line-height: 1.2em;
	margin-bottom: 1em;
	font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
	text-align: center;
	font-weight: bold;
}

.CourseSet4 {
    background-color: #FFFFFF;
    color: #C90C0F;
    -webkit-box-shadow: 15px 15px 2px rgba(0,0,0,0.15);
    box-shadow: 15px 15px 2px rgba(0,0,0,0.15);
    margin: 2%;
    width: 96%;
    float: left;
    padding-top: 2%;
    padding-bottom: 2%;
    position: relative;
    border: 1px solid #C90C0F;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .CourseSet4{
        height: auto !important;
    }
}
.CourseSet4 h3 {
	font-size: 0.85rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: normal;
}
.CourseSet4 p {
	padding: 0;
	text-transform: uppercase;
	font-size: 0.8rem;
	color: #C90C0F;
	margin-bottom: 1em;
	margin-left: 5%;
	margin-right: 5%;
	font-weight: bold;
}

.CourseSet4 .SubTitle01 {
    color: #999999;
    line-height: 1.2em;
    margin-bottom: 0.5em;
    font-size: 1.2rem;
    text-align: center;
    font-weight: normal;
    text-transform: uppercase;
    font-family: 'milantyperev-r';
    margin-top: 0em;
    border-bottom: 1px solid #C90C0F;
    margin-left: auto;
    margin-right: auto;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .CourseSet4 .SubTitle01{
        display: block;
        width: 100%;
    }
}
.PageCnt02 .SubTitle02 {
	color: #C90C0F;
	text-align: center;
	font-size: 1.1rem;
	font-weight: normal;
	line-height: 1.2em;
	margin-top: 1em;
}
.PageCnt02 .SubTitle03 {
	color: #C90C0F;
	font-family: 'milantyperev-r';
	font-size: 1.8rem;
	line-height: 1em;
	margin-bottom: 0px;
}

.PageCnt02 .SubTitle04 {
    color: #4d4d4d;
    font-size: 0.75rem;
    line-height: 1em;
    text-align: center;
    font-weight: bold;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCnt02 .SubTitle04{
        margin-bottom: 3em;
    }
}

.SchoolTopBnrWrap {
    width: 100%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SchoolTopBnrWrap{
        float: left;
    }
}
.SchoolTopBnrH1W {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.SchoolPageWrapA h1 {
	font-size: clamp(0.5859rem, 2.5vw, 2rem);
	font-weight: normal;
	background : -moz-linear-gradient(50% 100% 90deg,rgba(66, 66, 66, 1) 0%,rgba(10, 10, 10, 1) 15%,rgba(40, 40, 40, 1) 85%,rgba(66, 66, 66, 1) 100%);
	background : -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
	background : -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(66, 66, 66, 1) ),color-stop(0.15,rgba(10, 10, 10, 1) ),color-stop(0.85,rgba(40, 40, 40, 1) ),color-stop(1,rgba(66, 66, 66, 1) ));
	background : -o-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
	background : -ms-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#424242', endColorstr='#424242' ,GradientType=0)";
	background : linear-gradient(0deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#424242',endColorstr='#424242' , GradientType=0);
	position: relative;
	padding-left: 12%;
	padding-top: 2%;
	padding-bottom: 2%;
	padding-right: 2%;
	margin-bottom: 10svh;
}
.SchoolPageWrapA h1:before {
	content: "";
	position: absolute;
	width: 10%;
	height: 100%;
	top: 0px;
	left: 0px;
	background-color: rgba(207,0,14,1.00);
	background-image: url(../img/Parts08.svg);
	background-repeat: no-repeat;
	background-size: 80% auto;
	background-position: center center;
}

.SchoolTopBnrMenuTitle {
	font-family: 'milantyperev-r';
	float: left;
	height: 25svh;
	width: 16%;
	text-align: left;
	position: relative;
	background-size: 25% 90px;
	background-color: rgba(0,0,0,1.00);
	color: rgba(255,255,255,1.00);
}
.SchoolTopBnrCnt {
	float: left;
	height: clamp(4.6875rem, 20vw, 16rem);
	width: 100%;
	text-align: left;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.SchoolTopBnrCnt p {
	font-family: 'milantyperev-r';
	font-size: 1.6rem;
	font-weight: normal;
	color: rgba(224,7,27,1.00);
}
.SchoolTopBnrCnt h3 {
	font-size: 1rem;
	color: rgba(255,255,255,1.00);
}
.SchoolTopBnrCntGrad {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	background : -moz-linear-gradient(50% 0% -90deg,rgba(0, 0, 0, 0.4) 0%,rgba(0, 0, 0, 0.8) 80%);
	background : -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
	background : -webkit-gradient(linear,50% 0% ,50% 100% ,color-stop(0,rgba(0, 0, 0, 0.4) ),color-stop(0.8,rgba(0, 0, 0, 0.8) ));
	background : -o-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
	background : -ms-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#000000' ,GradientType=0)";
	background : linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000',endColorstr='#000000' , GradientType=0);
}
.SchoolTopBnrCntGrad:hover {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	background : -moz-linear-gradient(50% 0% -90deg,rgba(0, 0, 0, 0.4) 0%,rgba(0, 0, 0, 0.8) 80%);
	background : -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
	background : -webkit-gradient(linear,50% 0% ,50% 100% ,color-stop(0,rgba(0, 0, 0, 0.4) ),color-stop(0.8,rgba(0, 0, 0, 0.8) ));
	background : -o-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
	background : -ms-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#000000' ,GradientType=0)";
	background : linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
	opacity : 0.1;
	filter: alpha(opacity=10) progid:DXImageTransform.Microsoft.Alpha(opacity=10) progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000',endColorstr='#000000' , GradientType=0);
-webkit-transition: 0.6s;
-o-transition: 0.6s;
transition: 0.6s;
}
.SchoolTopBnrCntText {
	position: absolute;
	z-index: 30;
	pointer-events: none;
	top: 50%;
	left: 50%;
	margin-right: -50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	text-align: center;
}
.SchoolTopBnrCntTitleText {
	position: absolute;
	z-index: 30;
	pointer-events: none;
	left: clamp(0.2344rem, 1vw, 0.8rem);
	bottom: clamp(0.2344rem, 1vw, 0.8rem);
	font-family: 'milantyperev-r';
	font-size: clamp(0.8203rem, 3.5vw, 2.8rem);
	font-weight: normal;
	color: rgba(255,255,255,1.00);
}
.SchoolTopBnrCntTitleText h2 {
	font-size: clamp(0.375rem, 1.6vw, 1.28rem);
	color: rgba(255,255,255,1.00);
}
.SchoolTopBnrSubsetWrap {
	background-color: rgba(224,7,27,1.00);
	padding-top: 4svh;
	padding-bottom: 7svh;
	display: block;
	width: 100%;
	float: left;
}
.SchoolTopBnrSubset {
	display: table;
	margin-left: auto;
	margin-right: auto;
	width: 73%;
}
.SchoolTopBnrSubLink {
	position: relative;
	background-color: rgba(0,0,0,1.00);
	display: table;
	color: rgba(255,255,255,1.00);
	float: left;
	padding-top: 5svh;
	padding-bottom: 5svh;
	width: 29%;
	font-size: clamp(0.375rem, 1.6vw, 1.28rem);
	border-left: clamp(0.1172rem, 0.5vw, 0.4rem) solid rgba(255,255,255,1.00);
	margin-left: 1%;
	margin-right: 1%;
	padding-left: clamp(0.2344rem, 1vw, 0.8rem);
	padding-right: clamp(0rem, 0vw, 0rem);
	line-height: 1em;
}


.FaqPageWrap {
	color: #000000;
	background-color: rgba(255,255,255,1.00);
	width: 100%;
	display: table;
	text-align: justify;
	/* [disabled]margin-top: 5vh; */
	padding-bottom: 2em;
	margin-left: auto;
	margin-right: auto;
}
.FaqCntSet {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 1em;
	color: rgba(255,255,255,1.00);
}

.FaqCntSet h2 {
    font-size: 1.2rem;
    font-weight: normal;
    background: -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
    position: relative;
    padding-left: 12%;
    padding-top: 2%;
    padding-bottom: 2%;
    padding-right: 2%;
    color: rgba(255,255,255,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .FaqCntSet h2{
        line-height: 1.2em;
    }
}
.FaqCntSet h2:before {
	content: "";
	position: absolute;
	width: 10%;
	height: 100%;
	top: 0px;
	left: 0px;
	background-color: rgba(207,0,14,1.00);
	background-image: url(../img/Parts08.svg);
	background-repeat: no-repeat;
	background-size: 80% auto;
	background-position: center center;
}

.FaqCnt {
    background-color: rgba(255,255,255,1.00);
    color: rgba(0,0,0,1.00);
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .FaqCnt{
        padding-top: 1em;
        padding-right: 5%;
        padding-left: 5%;
        padding-bottom: 0em;
        margin-bottom: 2em;
        display: table;
    }
}
.FaqCnt h3 {
	color: rgba(207,0,14,1.00);
	font-weight: normal;
	font-size: 1.1rem;
	line-height: 1.6em;
	position: relative;
}
.FaqCnt h3:before {
	content: "Q.";
	position: absolute;
	left: -1em;
	font-size: 1.2rem;
}

.FaqCnt p {
    font-size: 1rem;
    line-height: 1.8em;
    position: relative;
    margin-bottom: 3em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .FaqCnt p{
        display: table;
    }
}
.FaqCnt p a {
	color: rgba(207,0,14,1.00);
	text-decoration: underline;
}
.FaqCnt p:before {
	content: "A.";
	position: absolute;
	left: -1em;
	font-size: 1.1rem;
}


.PhiloPageWrap {
	color: rgba(0,0,0,1.00);
	background-color: rgba(255,255,255,1.00);
	width: 100%;
	display: table;
	text-align: justify;
	margin-top: 0svh;
	padding-bottom: 3em;
	margin-left: auto;
	margin-right: auto;
}
.PhiloCntSet {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 1em;
}

.PhiloCntSet h1 {
    font-size: 1.4rem;
    font-weight: 600;
    background: -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
    background: -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(66, 66, 66, 1) ),color-stop(0.15,rgba(10, 10, 10, 1) ),color-stop(0.85,rgba(40, 40, 40, 1) ),color-stop(1,rgba(66, 66, 66, 1) ));
    background: linear-gradient(0deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
    position: relative;
    color: rgba(255,255,255,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PhiloCntSet h1{
        padding: 0.5em;
        text-align: center;
        line-height: 1.2em;
    }
}

.PhiloCntSet h2 {
    text-align: center;
    color: rgba(207,0,14,1.00);
    font-weight: 600;
    font-size: 1.3rem;
    line-height: 1.4em;
    display: table;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PhiloCntSet h2{
        margin-bottom: 0.5em;
        margin-top: 1em;
        margin-left: auto;
        margin-right: auto;
    }
}

.PhiloCntSet p {
    line-height: 2em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PhiloCntSet p{
        font-size: 0.9rem;
    }
}

.PhiloCntSet .PageCntColumn2 {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 4em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PhiloCntSet .PageCntColumn2{
        font-size: 0.85rem;
    }
}

ul.PhiloCntList {
    list-style-position: outside;
    border-top: 1px solid rgba(207,0,14,1.00);
    border-bottom: 1px solid rgba(207,0,14,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    ul.PhiloCntList{
        padding-left: 1.5em;
        padding-top: 0.5em;
        padding-bottom: 0.5em;
        margin-bottom: 1em;
    }
}

.PageCntColumn1 .PhiloCntList li {
    line-height: 1.8em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCntColumn1 .PhiloCntList li{
        font-size: 0.8rem;
    }
}

.PhiloLicense {
    text-align: center;
    color: rgba(207,0,14,1.00);
    margin-bottom: 2em;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PhiloLicense{
        font-size: 0.8rem;
    }
}
.PageHeader {
	color: rgba(0,0,0,1.00);
	width: 100%;
	display: table;
	padding-top: 4em;
	padding-bottom: 4em;
	position: relative;
	text-align: center;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.PageHeader:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(224,7,27,1.00);
	mix-blend-mode: darken;
	top: 0px;
	left: 0px;
}

.PageHeaderTitle {
    position: absolute;
    color: rgba(255,255,255,1.00);
    z-index: 100;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageHeaderTitle{
        -webkit-transform: translate(-50%, -50%);
    }
}
.PageHeader h1 {
	font-family: 'milantyperev-r';
	font-size: 2.5rem;
	font-weight: normal;
}

.PageHeader p {
    font-size: 0.7rem;
    color: rgba(255,255,255,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageHeader p{
        margin-left: auto;
        margin-right: auto;
        margin-top: 0.5em;
    }
}
.PageCntColumn2 {
	column-count: 1;
	column-gap: 0em;
}
.PageCntColumn2b {
	column-count: 1;
	column-gap: 2em;
	margin-left: 0%;
	margin-right: 0%;
	margin-bottom: 2em;
}

.PageCnt_ul01 {
    color: #000000;
    display: table;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    font-weight: bold;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCnt_ul01{
        font-size: 0.9rem;
        padding-left: 1.5em;
    }
}
.PageCnt_ul01 li {
	line-height: 2.2em;
}
.UnderLine01 {
border-bottom: 2px solid rgba(207,0,14,1.00);
}
.UnderLine02 {
	border-bottom: 2px solid rgba(207,0,14,1.00);
}

.PageCnt01 {
    display: table;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCnt01{
        margin-left: auto;
        margin-right: auto;
    }
}

.PageCntParts01 {
    background-color: rgba(170,0,14,1.00);
    width: 100%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCntParts01{
        float: left;
        margin-bottom: 0.5em;
    }
}
.PageCntParts01 h3 {
	color: rgba(255,239,191,1.00);
	background-image: url(../img/Parts10.png);
	background-repeat: no-repeat;
	background-position: center top 2svh;
	background-size: 25% auto;
	width: 35%;
	text-align: center;
	display: table;
	padding-top: 5%;
	padding-right: 0%;
	padding-left: 0%;
	padding-bottom: 5%;
	float: left;
	font-size: 0.8rem;
}
.PageCntParts01 h3 .Cat {
	padding-top: 4svh;
	width: 100%;
	font-weight: bold;
	font-size: 1rem;
	font-family: "Arial Black", Gadget, sans-serif;
	float: left;
}

.PageCntParts01 ul {
    float: left;
    width: 55%;
    text-indent: -1em;
    list-style-position: inside;
    list-style-type: none;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCntParts01 ul{
        margin-top: 2%;
        margin-right: 5%;
        margin-left: 5%;
        margin-bottom: 2%;
    }
}

.PageCntParts01 ul li {
    margin-left: 1em;
    line-height: 1.2em;
    margin-bottom: 0.5em;
    font-size: 0.75rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCntParts01 ul li{
        color: rgba(255,255,255,1.00);
    }
}
.PageCntParts01 ul li:before {
content: "○";
}
.PageCnt02 {
	display: table;
	margin-left: auto;
	margin-right: auto;
	box-shadow: inset 0px 30px 30px -20px rgba(0,0,0,0.10);
	background-color: rgba(255,255,255,1.00);
	width: 100%;
	padding-top: 00em;
	padding-bottom: 1em;
}
.PageCntParts02 {
	background-color: rgba(170,0,14,1.00);
	float: left;
	width: 46%;
	margin-top: 1%;
	margin-right: 2%;
	margin-left: 2%;
	margin-bottom: 1%;
	padding-top: 3%;
	padding-bottom: 0%;
}
.PageCntParts02 h3 {
	color: rgba(255,239,191,1.00);
	background-image: url(../img/Parts10.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: auto 35%;
	text-align: center;
	display: table;
	padding-top: 17%;
	padding-right: 0%;
	padding-left: 0%;
	padding-bottom: 3%;
	font-size: 1rem;
	margin-left: auto;
	margin-right: auto;
}
.PageCntParts02 h3 .Cat {
	padding-top: 4svh;
	width: 100%;
	font-weight: bold;
	font-size: 2.2rem;
	font-family: "Arial Black", Gadget, sans-serif;
}
.PageCntParts02 p {
	color: rgba(253,253,253,1.00);
	font-size: 0.75rem;
	line-height: 1.6em;
	padding-left: 5%;
	padding-right: 5%;
	text-align: center;
	display: table;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 5%;
}

.PageCnt02 img {
    margin-left: auto;
    margin-right: auto;
    display: table;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCnt02 img{
        width: 90%;
    }
}

.PageCnt02 ul   {
    display: table;
    color: rgba(0,0,0,1.00);
    margin-left: auto;
    margin-right: auto;
    line-height: 2em;
    list-style-type: none;
    text-align: left;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCnt02 ul{
        width: 90%;
    }
}

.PageCnt02 ul li  {
    color: rgba(0,0,0,1.00);
    line-height: 1.6em;
    padding-left: 1.5em;
    list-style-type: none;
    background-image: url(../img/Parts30.svg);
    background-repeat: no-repeat;
    background-position: left center;
    margin-bottom: 1em;
    background-size: auto 1em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCnt02 ul li{
        font-size: 0.9rem;
    }
}

.PageCnt02 .FolwArrow {
    display: table;
    margin-left: auto;
    margin-right: auto;
    padding-top: 1em;
    padding-bottom: 1em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PageCnt02 .FolwArrow{
        width: 20%;
    }
}
.Text01 {
	text-align: center;
	display: table;
	font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
	margin-left: auto;
	margin-right: auto;
}

.Text02 {
    text-align: justify;
    display: table;
    font-size: 0.8rem;
    margin-left: auto;
    margin-right: auto;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .Text02{
        width: 90%;
    }
}
.Text03 {
	text-align: justify;
	display: table;
	font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
	margin-left: auto;
	margin-right: auto;
}

.Text04 {
    color: rgba(207,0,14,1.00);
    text-align: center;
    font-size: 1rem;
    font-weight: normal;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .Text04{
        margin-top: 1.5em;
    }
}
.Text05 {
	display: table;
	font-size: clamp(0.375rem, 1.6vw, 1.28rem);
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.Text06 {
    color: rgba(207,0,14,1.00);
    font-size: 1.1rem;
    line-height: 1.2em;
    text-align: center;
    font-weight: normal;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .Text06{
        width: 80%;
        display: table;
        margin-left: auto;
        margin-right: auto;
    }
}

.Subtitle01 {
    text-align: center;
    color: rgba(0,0,0,1.00);
    display: table;
    font-size: clamp(0.5625rem, 2.4vw, 1.92rem);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .Subtitle01{
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }
}
.Subtitle02 {
	text-align: center;
}
.Subtitle03 {
	text-align: center;
}
.PageCnt02 .ImgSize {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	display: table;
	margin-top: 2em;
	margin-bottom: 1em;
}
.Subtitle04 {
text-align: center;
font-size: 1.2rem;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    p.Subtitle04{
        text-align: center;
        font-size: 1.0rem;
    }
}

p.Subtitle05 {
    text-align: center;
    font-weight: bold;
    font-size: 1.2rem;
    color: rgba(207,0,14,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    p.Subtitle05{
        line-height: 1.2em;
    }
}

h3.Subtitle06 {
    text-align: left;
    font-weight: bold;
    font-size: 1.1rem;
    color: rgba(0,0,0,1.00);
    margin-left: 5%;
    margin-right: 5%;
    margin-top: 1em;
    margin-bottom: 0.5em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    h3.Subtitle06{
        line-height: 1.2em;
    }
}
p.Subtitle07 {
text-align: left;
font-size: 0.95rem;
margin-left: 5%;
margin-right: 5%;
line-height: 1.6em;
margin-bottom: 0.5em;
}


#FooterWrap {
    color: rgba(98,98,98,1.00);
    background-color: rgba(0,0,0,1.00);
    display: table;
    width: 100%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrap{
        margin-top: 0em;
        padding-top: 2em;
    }
}
.FooterCntA {
display: none;
margin-left: auto;
margin-right: auto;
width: 90%;
}
#FooterWrap ul {
	display: block;
	margin-right: auto;
	margin-top: 1em;
	margin-bottom: 1em;
	float: left;
	padding-left: 1%;
	padding-right: 1%;
	color: rgba(255,255,255,1.00);
	margin-left: auto;
	width: -webkit-calc(96%/2);
	width: -moz-calc(96%/2);
	width: calc(96%/2);
	}
#FooterWrap ul li  {
font-size: 1rem;
line-height: 1em;
padding-top: 0.5em;
display: inline-block;
width: 100%;
text-align: center;
padding-bottom: 0.5em;
}
#FooterWrap ul li a:hover {
	background-color: rgba(224,7,27,0.80);
}

#FooterWrap ul li a {
    color: rgba(255,255,255,1.00);
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    font-size: 0.7rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrap ul li a{
        padding-right: 0.3em;
        padding-left: 0.3em;
    }
}
.FooterCntBSet {
	display: table;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 2em;
	padding-top: 2em;
}

.FooterCntB {
    margin-right: auto;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .FooterCntB{
        display: table;
        margin-left: auto;
        text-align: center;
        margin-bottom: 2em;
    }
}

.FooterCntB h3 , .FooterCntC h3{
    color: #FFFFFF;
    font-size: 0.95rem;
    margin-bottom: 1svh;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .FooterCntB h3 , .FooterCntC h3{
        text-align: center;
    }
}
.FooterCntBBtn   {
	background-color: #E0071B;
	color: #FFFFFF;
	display: table;
	float: left;
	margin-right: clamp(0.2344rem, 1vw, 0.8rem);
}
.FooterCntBBtn em {
	display: none;
}
.FooterCntBBtn a {
	background-color: #E0071B;
	width: clamp(2.3438rem, 10vw, 8rem);
	height: clamp(2.3438rem, 10vw, 8rem);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 60% auto;
	display: block;
}
.FooterCntBBtn2   {
	background-color: #E0071B;
	color: #FFFFFF;
	display: table;
	float: left;
	margin-right: clamp(0.2344rem, 1vw, 0.8rem);
}
.FooterCntBBtn2 a {
	background-color: #E0071B;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 60% auto;
	display: table;
	font-size: 0.8rem;
	font-weight: bold;
	color: #FFFFFF;
	padding: 0.5em;
}

.FooterCntC {
    margin-right: auto;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .FooterCntC{
        display: table;
        margin-left: auto;
    }
}
.FooterCntBBtn3 a {
	color: #FFFFFF;
	font-size: 0.9rem;
}
/*ページトップボタン*/
#page-top_btn {
	position: fixed;
	font-size: 77%;
	z-index: 2000;
	width: 100%;
	bottom: 0px;
}
#page-top_btn2 a {
	text-decoration: none;
	color: #fff;
	width: 100px;
	padding-top: 0px;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: 0px;
	text-align: center;
	display: block;
	position: absolute;
	top: -100px;
	right: 10px;
	z-index: 200;
}
#page-top_btn2 a:hover {
	text-decoration: none;
}

#FooterFloatBtn  {
    color: rgba(255,255,255,1.00);
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    width: 100%;
    display: table;
    box-shadow: 0px 0px 20px rgba(0,0,0,0.40);
    background-image: url(url);
    background-color: rgba(245,245,245,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterFloatBtn{
        -webkit-box-shadow: 0px 0px 20px rgba(0,0,0,0.40);
    }
}
#FooterFloatBtn h1 a {
	padding-top: 0.5em;
	padding-right: 0.5em;
	padding-left: 2.5em;
	padding-bottom: 0.5em;
	float: left;
}
#FooterFloatBtn h1 a em {
	display: none;
}
#FooterFloatBtn p a {
	color: #747474;
	font-size: clamp(0.375rem, 1.6vw, 1.28rem);
	display: table;
	float: right;
	padding-top: 0.5em;
	padding-right: 1em;
	padding-left: 1em;
	padding-bottom: 0.5em;
	line-height: 1em;
}
.FooterBorder {
	background-image: url(../img/Parts23.svg);
	height: 10px;
	background-position: center bottom;
	background-repeat: repeat-x;
}
#FooterWrapB {
	background-color: rgba(0,0,0,1.00);
	position: relative;
	padding-bottom: 2svh;
}

#FooterWrapB h1  {
    display: table;
    width: 70%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrapB h1{
        margin-left: auto;
        margin-right: auto;
    }
}

#FooterWrapB h1 a img {
    display: table;
    width: 60%;
    margin-bottom: 1em;
    padding-bottom: 0px;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrapB h1 a img{
        margin-left: auto;
        margin-right: auto;
    }
}
#FooterWrapB h1 a em {
	display: none;
}

#FooterWrapB small {
    display: table;
    font-size: 0.75rem;
    color: rgba(250,250,250,1.00);
    text-align: center;
    padding-bottom: 2em;
    width: 100%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrapB small{
        padding-top: 2em;
    }
}

#FooterWrapB .Powered a {
    text-align: right;
    position: absolute;
    bottom: clamp(0.2344rem, 1vw, 0.8rem);
    color: rgba(255,255,255,0.10);
    font-size: clamp(0.1875rem, 0.8vw, 0.64rem);
    display: block;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrapB .Powered a{
        left: clamp(0.2344rem, 1vw, 0.8rem);
    }
}
.SupporterWrap {
	color: rgba(0,0,0,1.00);
	width: 100%;
	display: table;
	text-align: center;
	margin-bottom: 3em;
	margin-top: 1em;
}
.SupporterCntA {
	margin-left: auto;
	margin-right: auto;
	width: 90%;
}
.SupporterCntBSet {
width: 90%;
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 0 auto;
text-align: center;
gap: 0.5em;
}
.SupporterCntBSet h3 {
	font-family: 'milantyperev-r';
	font-size: 1.6rem;
	font-weight: normal;
	text-align: center;
	padding-bottom: 0em;
	padding-top: 1.5em;
	text-transform: uppercase;
}
.SupporterCntB {
flex: 1 1 calc(33.33% - 0px);
min-width: 170px;
aspect-ratio: 2 / 0.7;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
box-sizing: border-box;
}
.SupporterCntB:hover {
transition: 0.6s;
}

.SupporterCntCSet {
	width: 100%;
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: center;
align-items: center;
}
.SupporterCntCSet h3 {
	font-family: 'milantyperev-r';
	font-size: 1.6rem;
	font-weight: normal;
	text-align: center;
	padding-bottom: 0svh;
	padding-top: 10svh;
	text-transform: uppercase;
flex-grow: 0;
flex-shrink: 1;
flex-basis: auto;
}

.SupporterCntC {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-top: 1svh;
    margin-bottom: 1svh;
    position: relative;
    object-fit: cover;
    width: clamp(18.75rem, 80vw, 64rem);
    text-align: center;
    overflow: hidden;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SupporterCntC{
        aspect-ratio: 10 / 3;
        display: block;
    }
}
.SupporterCntC:hover {
transition: 0.6s;
}


.TopBnrBWrap {
	color: rgba(0,0,0,1.00);
	width: 100%;
	display: table;
	float: left;
}
.TopBnrBCnt {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	width: -webkit-calc(100%/2);
	width: -moz-calc(100%/2);
	width: calc(100%/2);
	height: 20svh;
	float: left;
	position: relative;
	overflow-x: hidden;
	overflow-y: hidden;
	-webkit-transition: 0.6s;
	-o-transition: 0.6s;
	transition: 0.6s;
}
.TopBnrBCnt:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(224,7,27,1.00);
	mix-blend-mode: darken;
}
.TopBnrBCnt:hover:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(224,7,27,0.00);
-webkit-transition: 0.6s;
-o-transition: 0.6s;
transition: 0.6s;
}

.TopBnrBCntText {
    position: absolute;
    color: rgba(255,255,255,1.00);
    z-index: 100;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrBCntText{
        -webkit-transform: translate(-50%, -50%);
        width: 80%;
        text-align: center;
    }
}
.TopBnrBCntText h3 {
	font-family: 'milantyperev-r';
	font-size: 1.4rem;
	font-weight: normal;
}

.TopBnrBCntText p {
	font-size: 0.7rem;
	color: rgba(224,7,27,1.00);
	background-color: rgba(255,255,255,1.00);
	padding: 0.25em;
	margin-top: 0.25em;
}


.TopBnrCWrap {
color: rgba(0,0,0,1.00);
width: 100%;
display: table;
float: left;
padding-top: 1em;
padding-bottom: 1em;
}

.TopBnrCCnt {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    width: -webkit-calc(100%/3*2);
    width: calc(100%/3*2);
    margin-left: calc(100%/6);
    margin-right: calc(100%/6);
    height: 15svh;
    float: left;
    position: relative;
    overflow-x: hidden;
    overflow-y: hidden;
    transition: 0.6s;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrCCnt{
        -webkit-transition: 0.6s;
    }
}
.TopBnrCCnt:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.80);
	mix-blend-mode: darken;
}

.TopBnrCCnt:hover:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.00);
    transition: 0.6s;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrCCnt:hover:before{
        -webkit-transition: 0.6s;
        -o-transition: 0.6s;
    }
}

.TopBnrCCntText {
    position: absolute;
    color: rgba(255,255,255,1.00);
    z-index: 100;
    top: 50%;
    left: 30%;
    margin-right: -80%;
    transform: translate(-30%, -50%);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrCCntText{
        -webkit-transform: translate(-30%, -50%);
    }
}

.TopBnrCCntText h3 {
    font-family: 'milantyperev-r';
    font-size: 1.4rem;
    font-weight: normal;
    color: rgba(224,7,27,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrCCntText h3{
        text-align: center;
    }
}

.TopBnrCCntText p {
    font-size: 0.7rem;
    color: rgba(224,7,27,1.00);
    background-color: rgba(255,255,255,1.00);
    padding: 0.25em;
    margin-top: 0.25em;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrCCntText p{
        margin-left: auto;
        margin-right: auto;
    }
    .TopNewsWrap{
        background-color: rgba(255,255,255,1.00);
        color: rgba(0,0,0,1.00);
        width: 100%;
        padding: 3em 0;
        float: left;
        letter-spacing: 0.1em;
        padding-bottom: 1em;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
}

.TopNewsWrap h2 {
    text-align: center;
    font-family: 'milantyperev-r';
    font-size: 2.5rem;
    font-weight: normal;
    color: rgba(0,0,0,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopNewsWrap h2{
        margin: 0 0 0.5em 0;
    }
}

.TopNewsCntSet {
    width: 90%;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopNewsCntSet{
        margin: 0.5em;
        padding: 0 0 3em 0;
    }
}

.TopNewsCntL {
    width: 100%;
    position: relative;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopNewsCntL{
        margin-bottom: 1.5em;
    }
    .TopNewsCntSet > .TopNewsCntL:first-of-type{
        display: grid;
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 2fr);
        column-gap: 1rem;
        row-gap: 0.3em;
        align-items: flex-start;
        background-color: #fff;
        box-sizing: border-box;
    }
    .TopNewsCntSet > .TopNewsCntL:first-of-type > img{
        grid-row: 1 / 4;
        grid-column: 1 / 2;
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
        object-fit: cover;
        object-position: center;
        border: 1px solid #ddd;
        box-sizing: border-box;
    }
    .TopNewsCntSet > .TopNewsCntL:first-of-type .TopNewsCntL-L{
        grid-column: 2 / 3;
    }
    .TopNewsCntSet > .TopNewsCntL:first-of-type .TopNewsCntL-L .Cate{
        color: #B69C51;
        font-family: 'milantyperev-r';
        font-size: 0.9rem;
        margin-bottom: 0.25em;
    }
    .TopNewsCntSet > .TopNewsCntL:first-of-type .TopNewsCntL-L h3{
        font-size: 1rem;
        line-height: 1.3;
        font-weight: normal;
        margin-bottom: 0.3em;
        color: rgba(224,7,27,1);
    }
    .TopNewsCntSet > .TopNewsCntL:first-of-type .TopNewsCntL-L .Date{
        font-size: 0.7rem;
        color: rgba(153,153,153,1);
        letter-spacing: 0.1em;
        margin-bottom: 0.3em;
    }
    .TopNewsCntSet > .TopNewsCntL:first-of-type .TopNewsCntL-R{
        grid-column: 2 / 3;
    }
    .TopNewsCntSet > .TopNewsCntL:first-of-type .TopNewsCntL-R p{
        margin: 0;
        font-size: 0.75rem;
        line-height: 1.6;
        color: rgba(153,153,153,1);
    }
    .TopNewsCntSet > .TopNewsCntL:first-of-type .BlockFloatLink{
        position: absolute;
        inset: 0;
        display: block;
        text-indent: -9999px;
    }
}

.TopNewsCntR {
    margin-bottom: 1.5em;
    display: grid;
    position: relative;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopNewsCntR{
        width: 100%;
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 2fr);
        grid-template-rows: auto auto auto auto;
        column-gap: 1rem;
        row-gap: 0.3em;
        align-items: flex-start;
    }
}

.TopNewsCntR img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border: 1px solid #ddd;
    margin: 0;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopNewsCntR img{
        grid-row: 1 / 5;
        grid-column: 1;
    }
}

.TopNewsCntR .Cate {
    color: #B69C51;
    font-size: 0.9rem;
    font-family: 'milantyperev-r';
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopNewsCntR .Cate{
        grid-row: 1;
        grid-column: 2;
        margin: 0;
    }
}

.TopNewsCntR .Date {
    font-size: 0.7rem;
    color: rgba(153,153,153,1);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopNewsCntR .Date{
        grid-row: 2;
        grid-column: 2;
        letter-spacing: 0.1em;
        margin: 0;
    }
}

.TopNewsCntR h3 {
    font-size: 1rem;
    line-height: 1.3;
    color: rgba(224,7,27,1);
    font-weight: normal;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopNewsCntR h3{
        grid-row: 3;
        grid-column: 2;
        margin: 0;
    }
    .TopNewsCntR p:not(.Cate):not(.Date){
        grid-row: 4;
        grid-column: 2;
        font-size: 0.7rem;
        line-height: 1.6;
        color: rgba(153,153,153,1);
        text-align: justify;
        margin: 0;
    }
}

.PastNewsLink {
    color: rgba(224,7,27,1.00);
    display: table;
    font-size: 0.75rem;
    float: right;
    border: 1px solid rgba(224,7,27,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .PastNewsLink{
        padding: 0.5em 1em;
    }
}
.PastNewsLink:hover {
color: rgba(255,255,255,1.00);
background-color: rgba(224,7,27,1.00);
}


.TopEventWrap {
	background-color: rgba(240,240,240,1.00);
	color: rgba(0,0,0,1.00);
	width: 100%;
	padding-top: 3em;
	letter-spacing: 0.1em;
	padding-bottom: 3em;

	display: flex;
	position: relative;
	flex-wrap: wrap;
	justify-content: center;
}
.TopEventWrap h2 {
text-align: center;
font-family: 'milantyperev-r';
font-size: 2.5rem;
font-weight: normal;
	color: rgba(0,0,0,1.00);
width: 100%;
}

.TopEventWrap p {
    text-align: center;
    color: rgba(224,7,27,1.00);
    width: 100%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopEventWrap p{
        font-size: 0.8rem;
    }
}
.TopEventCntSet {
margin-top: 1em;
padding: 0 1em;
width: 100%;
display: flex;
position: relative;
gap: 1em;
flex-wrap: wrap;
justify-content: center;
}
.TopEventCnt {
	width: calc(100%/1);
	float: left;
	padding: 0.5em 1em 1em 1em;
	overflow-x: hidden;
	overflow-y: hidden;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.TopEventCntImg {
	width: 100%;
	text-align: center;
	overflow: hidden;
}
.TopEventCntImg img {
	width: 100%;
	text-align: center;
	overflow: hidden;
aspect-ratio: 41 / 39;
aspect-ratio: 40 / 25;
aspect-ratio: 1 / 0.85;
object-fit: cover;
object-position: center top;
}
.TopEventCntImg img:hover {
	transform: scale(1.1);
transition: 0.6s;
transform-origin: center;
}


.TopEventCntDateWrap {
background-color: rgba(255,255,255,1.00);
color: rgba(0,0,0,1.00);
padding: 0.5em;
margin: 0 1em;
margin: -1em 0 0 0;
z-index: 5;
width: 90%;
}
.TopEventCntDate ul {
	margin: 0;
	display: table;
	padding-left: 0.0em;
	padding-right: 0.0em;
}
.TopEventCntDate ul li {
float: left;
background-color: rgba(255,255,255,1.00);
color: rgba(224,7,27,1.00);
text-align: center;
padding: 0.25em 0.5em;
list-style-type: none;
font-weight: bold;
margin-right: 0.5em;
line-height: 1em;
font-size: 0.7rem;
margin-bottom: 0.5em;
border: 1pt solid rgba(224,7,27,1.00);
border-radius: 0.5em;
}
.TopEventCnt h3 {
	color: rgba(0,0,0,1.00);
	font-size: 1rem;
	margin-top: 0.0em;
	line-height: 1.3em;
	margin-bottom: 0.5em;
	padding-left: 0.0em;
	padding-right: 0.0em;
}
.TopEventCnt .TopEventCntDateArea {
	color: rgba(153,153,153,1.00);
	border-bottom: 1px solid rgba(153,153,153,1.00);
	padding-bottom: 0.25em;
	margin-bottom: 0.0em;
	padding-left: 0.0em;
	padding-right: 0.0em;
	font-size: 0.85rem;
}
.TopEventCnt .TopEventCntDateCap p {
	text-align: left;
	color: rgba(0,0,0,1.00);
font-size: 0.75rem;
	padding: 0.5em;
	letter-spacing: 0em;
}
.TopEventCnt .TopEventCntDateCap2 p {
	text-align: left;
	color: rgba(0,0,0,1.00);
line-height: 1.6em;
font-size: 0.8rem;
	padding: 0.5em;
margin: 0 0 1em 0;
}
.TopEventCntSet .TopEventCnt:hover  {
	background-color: rgba(196,28,31,0.80);
-webkit-transition: 0.6s;
-o-transition: 0.6s;
transition: 0.6s;
}
.EventContact {
background-color: rgba(224,7,27,1.00);
color: rgba(255,255,255,1.00);
padding-top: 0.75em;
padding-right: 0.75em;
padding-left: 0.75em;
padding-bottom: 0.75em;
text-align: center;
margin-top: 1em;
display: table;
margin-left: auto;
margin-right: auto;
font-size: 0.7rem;
letter-spacing: normal;
}

.EventDateBtn{
display: table;
width: 60%;
margin: 0.5em auto;
text-align: center;
text-decoration: none;
padding: 0.7em 2em 0.7em 2.2em;
font-size: 0.7rem;
background-color: #e4002b;
color: #fff;
font-weight: 500;
border-radius: 0.2em;
background-position: left 0.5em center;
box-shadow: 0.4em 0.4em rgba(0,0,0,0.15);
}
.EventDateBtn:hover{
color: #fff;
background-color: #99001C;
box-shadow: 0.2em 0.2em rgba(0,0,0,0.15);
}


#PagetopBorderWrap {
	padding-top: 100px;
}
#PagetopBorder {
	width: 100%;
	background-position: 0%;
	background-color: rgba(255,255,255,1.00);
	top: 0px;
	height: 100px;
	clear: both;
	z-index: 1000;
	position: absolute;
	display: table;
	border-bottom: 1px solid rgba(213,213,213,1.00);
}
#TopGmenuLogo  {
	background-image: url(../img/Parts25.svg);
	width: 20%;
	height: 100px;
	background-position: center center;
	background-repeat: no-repeat;
	display: block;
	background-size: 80% auto;
	position: relative;
}
#TopGmenuLogo em   {
	display: none;
}


#contactform_block {
	margin-right: auto;
	margin-left: auto;
	padding-top: 30px;
	padding-bottom: 30px;
	display: table;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 60%;
	font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
}
#contactform_block p {
	text-align: justify;
	line-height: 2.6em;
	margin-right: auto;
	margin-left: auto;
	color: #666666;
}
#contactform_block p a {
	color: #666666;
	text-decoration: underline;
}
#RecruitWrapD p {
	color: #505050;
	font-size: 1rem;
	line-height: 0.85em;
	text-align: center;
	display: table;
	margin-left: auto;
	padding: 0px;
	margin-right: auto;
	font-weight: bold;
	margin-bottom: 30px;
}


#FormSetDsgn form table {
	margin-left: auto;
	margin-right: auto;
	display: table;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width: 100%;
}

#FormSetDsgn input {
    font-size: 1.2em;
    width: 100%;
    display: block;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border: 1px solid #CFCFCF;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FormSetDsgn input{
        padding-top: 0.25em;
        padding-bottom: 0.25em;
    }
}

#FormSetDsgn .require {
    font-size: 0.75rem;
    font-weight: bold;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FormSetDsgn .require{
        color: #000000;
    }
}

#FormSetDsgn .subject {
    margin-top: 1em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FormSetDsgn .subject{
        font-size: 0.9rem;
    }
}
#FormSetDsgn form td div textarea {
	font-size: 1em;
	width: 100%;
	border: 1px solid #cfcfcf;
}
#FormSetDsgn form table tbody {
	width: 100%;
	display: table;
}
#FormSetDsgn form table tbody tr {
	display: table;
	width: 100%;
}
#FormSetDsgn form table tbody tr th    {
	display: table;
	width: auto;
}

#FormSetDsgn form table tbody tr th {
    text-align: left;
    font-weight: normal;
    color: #000000;
    white-space: nowrap;
    display: table;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FormSetDsgn form table tbody tr th{
        font-style: 0.9em;
    }
}
#FormSetDsgn form table tbody tr td {
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	color: rgba(255,255,255,1.00);
	line-height: 1.4em;
	display: block;
}
#FormSetDsgn form table tbody tr td .error {
	display: block;
	color: rgba(255,151,184,1.00);
	font-size: 0.8em;
	margin-top: 0.25em;
}
#FormSetDsgn form table tbody tr td .require {
	color: rgba(255,255,255,1.00);
}
#FormSetDsgn form table tbody tr td .mwform-tel-field  {
	color: rgba(255,255,255,1.00);
}
#FormSetDsgn #confirm-button {
	display: table;
	margin-left: auto;
	margin-right: auto;
}
#FormSetDsgn form #confirm-button input {
font-size: 1rem;
color: #FFFFFF;
display: table;
padding-top: 0.5em;
padding-right: 5em;
padding-bottom: 0.5em;
padding-left: 5em;
background-color: rgba(0,0,0,1.00);
-webkit-box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
border: 1px solid rgba(0,0,0,1.00);
margin-top: 1em;
-webkit-transition: 0.6s;
transition: 0.6s;
}
#FormSetDsgn form #back-button input {
	font-size: 0.9em;
	color: #FFFFFF;
	display: table;
	padding-top: 0.5em;
	padding-right: 5em;
	padding-bottom: 0.5em;
	padding-left: 5em;
	background-color: rgba(0,0,0,1.00);
	-webkit-box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
	border: 1px solid rgba(0,0,0,1.00);
	margin-top: 1em;
	margin-left: auto;
	margin-right: auto;
}
.SendTopBtn a {
	display: table;
	margin-left: auto;
	padding: 0.5em;
	margin-right: auto;
	color: rgba(255,255,255,1.00);
	border: 1px solid rgba(255,255,255,1.00);
	margin-top: 38px;
}
#FormSetDsgn label {
	display: inline-block;
	margin-right: 1em;
	margin-bottom: 0.25em;
}
#FormSetDsgn label .mwform-radio-field-text, #FormSetDsgn label .mwform-checkbox-field-text {
	color: rgba(255,255,255,1.00);
}
.FormLabelContactBlank {
	float: left;
	width: 8em;
	font-size: 1.2rem;
	display: table;
}
#contactform_block .ContactH3 {
	text-align: center;
	font-weight: normal;
	color: rgba(255,255,255,1.00);
	font-size: 1.2rem;
	line-height: 1.8em;
	margin-bottom: 40px;
}
#FormSetDsgn .subject1_2 {
	float: left;
	display: table;
	margin-right: 1em
}
#FormSetDsgn .subject1_2 .require {
	font-size: 0.7em;
	color: rgba(255,151,184,1.00);
}
#FormSetDsgn .textsize     {
	border: 1px;
	font-size: 1.2rem;
	float: left;
}
#FormSetDsgn .textsizeFull     {
	border: 1px;
	font-size: 1.2rem;
	float: left;
	width: 100%;
}
#contactform_block p .require {
	color: rgba(255,151,184,1.00);
}
.mw_wp_form_confirm table tr {
	border-bottom: 1px solid #7b99ba;
}
.mw_wp_form_confirm table tr:first-child {
	border-top: 1px solid #7b99ba;
}
.mw_wp_form_confirm table tbody tr th   {
	margin-left: 1em;
	margin-right: 1em;
	font-size: 1rem;
}
.mw_wp_form_confirm table tbody tr td   {
	margin-left: 1em;
	margin-right: 1em;
}
.mw_wp_form_complete  {
	padding-top: 3em;
	border-top: 1px solid rgba(255,255,255,1.00);
}
.mw_wp_form_complete h3 {
	text-align: center;
	font-size: 2rem;
	margin-bottom: 1em;
}
#FormSetDsgn .complete_contacth4 {
	text-align: center;
	font-size: 1.6rem;
	border-top: 1px solid rgba(255,255,255,1.00);
	padding: 1em;
}
.mw_wp_form_complete p {
	font-size: 1.2rem;
	line-height: 1.6em;
}
#FormSetDsgn .complete_contact   {
	text-align: center;
	padding-bottom: 1em;
	border-bottom: 1px solid rgba(255,255,255,1.00);
}

	
	
	
	

#FormSetDsgn01 form table {
margin-left: auto;
margin-right: auto;
display: table;
width: 100%;
text-align: center;
font-size: 1.2rem;
}

.EntryCntBox02 .FormSetDsgn01h2 {
    padding-top: 2em;
    padding-bottom: 0.2em;
    margin-bottom: 0px;
    border-bottom: 1px solid rgba(255,255,255,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .EntryCntBox02 .FormSetDsgn01h2{
        font-weight: bold;
    }
}
.EntryCntBox02 .FormSetDsgn01Cap {
padding-top: 1em;
margin-top: 0px;
font-size: 0.85rem;
}
#FormSetDsgn01 .FormSetCnt .subject   {
border-top: 1px solid #C94D57;
margin-top: 1.5em;
font-weight: bold;
}

#FormSetDsgn01 .FormSetCnt .subject p {
    margin-top: 1.5em;
    margin-bottom: 0.25em;
    font-weight: bold;
    font-size: 1.1rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FormSetDsgn01 .FormSetCnt .subject p{
        text-align: justify;
        font-feature-settings: "palt";
        padding-left: 1.7em;
        text-indent: -1.7em;
    }
}

#FormSetDsgn01 .subject .contents {
    color: #FFFFFF;
    font-weight: normal;
    text-shadow: 0.15em 0.15em 0.1em rgba(0,0,0,0.40);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FormSetDsgn01 .subject .contents{
        line-height: 1.4em;
        white-space: normal;
    }
}

#FormSetDsgn01 .require {
    font-size: 0.8rem;
    color: #FFEC59;
    margin-left: 0.5em;
    line-height: 0.9em;
    font-weight: normal;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FormSetDsgn01 .require{
        white-space: nowrap;
    }
}

#FormSetDsgn01 .wpcf7-form-control-wrap {
    display: table;
    margin-left: 2.5em;
    font-size: 0.95rem;
    text-align: left;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FormSetDsgn01 .wpcf7-form-control-wrap{
        padding-left: 1.1em;
        text-indent: -1.1em;
    }
}
#FormSetDsgn01 .wpcf7-list-item    {
/* [disabled]margin-right: 1.5em; */
margin-bottom: 0.75em;
margin-top: 0.75em;
display: table;
}

#FormSetDsgn01 .SubTitle {
margin-bottom: 0px;
}
#FormSetDsgn01 .FormSetCnt textarea {
width: 100%;
}
#FormSetDsgn01 .FormSetCnt .wpcf7-textarea   {
width: clamp(11.7188rem, 50vw, 40rem);
padding: 0.5em;
font-size: 1.2rem;
}
#FormSetDsgn001 form td div textarea {
	font-size: 1.2em;
	width: 100%;
	border: 1px solid #cfcfcf;
}
#FormSetDsgn01 .error      {
	display: block;
	color: rgba(255,151,184,1.00);
	font-size: 0.8em;
	margin-top: 0.25em;
}
#FormSetDsgn01 #confirm-button {
	display: table;
	margin-left: auto;
	margin-right: auto;
}
#FormSetDsgn01 form #confirm-button input {
	font-size: 1.2em;
	color: #FFFFFF;
	display: table;
	padding-top: 0.5em;
	padding-right: 5em;
	padding-bottom: 0.5em;
	padding-left: 5em;
	background-color: rgba(0,0,0,1.00);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
	border: 1px solid rgba(0,0,0,1.00);
	margin-top: 1em;
	transition: 0.6s;
}
#FormSetDsgn01 form #back-button input {
	font-size: 0.9em;
	color: #FFFFFF;
	display: table;
	padding-top: 0.5em;
	padding-right: 5em;
	padding-bottom: 0.5em;
	padding-left: 5em;
	background-color: rgba(0,0,0,1.00);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
	border: 1px solid rgba(0,0,0,1.00);
	margin-top: 1em;
	margin-left: auto;
	margin-right: auto;
}
#FormSetDsgn01 .wpcf7-not-valid-tip {
color: rgba(255,237,90,1.00);
}

	
	
	


.list_arrow_box {
    width: clamp(7.9688rem, 34vw, 27.2rem);
    display: table;
    padding-top: 1em;
    padding-bottom: 1em;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .list_arrow_box{
        margin-left: auto;
        margin-right: auto;
    }
}
.list_arrow_a_l a, .list_arrow_a_r a {
	background-color: rgba(224,7,27,1.00);
	height: clamp(3.5156rem, 15vw, 12rem);
	width: clamp(3.5156rem, 15vw, 12rem);
	margin-left: clamp(0.2344rem, 1vw, 0.8rem);
	margin-right: clamp(0.2344rem, 1vw, 0.8rem);
	background-repeat: no-repeat;
	background-position: center center;
	display: block;
	text-align: center;
	float: left;
}
.list_arrow_a_l a{
	background-image: url(../img/arrow_l.svg);
	display: table;
}
.list_arrow_a_r a{
	background-image: url(../img/arrow_r.svg);
	display: table;
}
#list_arrow_a_l0 a:hover {
	background-color: rgba(224,7,27,0.50);
	background-image: url(../img/arrow_l.svg);
	background-repeat: no-repeat;
	background-position: left top;
}
#list_arrow_a_r0 a:hover {
	background-color: rgba(224,7,27,0.50);
	background-image: url(../img/arrow_r.svg);
	background-repeat: no-repeat;
	background-position: left top;
}


.BlogSoloWrap {
	color: #000000;
	background-color: rgba(255,255,255,1.00);
	width: 100%;
	display: table;
	text-align: justify;
	padding-bottom: 3em;
	margin-left: auto;
	margin-right: auto;
	padding-top: 2em;
}
.BlogSoloWrap .BlogSoloWrapTitle {
	color: #505050;
	font-size: 2rem;
	line-height: 0.85em;
	font-family: 'function-italic', sans-serif;
	text-align: center;
	border-bottom: 1px solid #505050;
	display: table;
	margin-left: auto;
	padding: 0px;
	margin-right: auto;
	font-weight: normal;
	margin-bottom: 2em;
	text-transform: capitalize;
	margin-top: 1em;
}
.BlogSoloWrap .PageTitle {
	font-family: 'Kranky', cursive;
	font-size: clamp(0.7031rem, 3vw, 2.4rem);
	font-weight: normal;
	text-align: center;
	display: table;
	margin-left: auto;
	margin-right: auto;
	border-bottom: 2px solid rgba(194,194,194,1.00);
	padding-bottom: 0.1em;
	margin-bottom: 1.5em;
}
.ArticleHeader {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0em;
	/* [disabled]margin-bottom: 1em; */
	display: table;
	position: relative;
}
.ArticleHeaderCate a {
	font-size: 0.75em;
	background-color: rgba(80,80,80,1.00);
	display: inline-block;
	padding: 0.5em;
	color: rgba(255,255,255,1.00);
	margin-right: 10px;
}
.ArticleHeaderCate a:hover {
	color: rgba(255,255,255,1.00);
	text-decoration: underline;
}
.ArticleHeaderCate a:visit {
	color: rgba(255,255,255,1.00);
}

.ArticleHeader h1 {
    font-size: 1.2rem;
    font-weight: normal;
    background: -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
    position: relative;
    padding-left: 12%;
    padding-top: 2%;
    padding-bottom: 2%;
    padding-right: 2%;
    color: rgba(255,255,255,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .ArticleHeader h1{
        line-height: 1.2em;
    }
}
.ArticleHeader h1:before {
	content: "";
	position: absolute;
	width: 10%;
	height: 100%;
	top: 0px;
	left: 0px;
	background-color: rgba(207,0,14,1.00);
	background-image: url(../img/Parts08.svg);
	background-repeat: no-repeat;
	background-size: 80% auto;
	background-position: center center;
}
.ArticleHeaderDate {
	color: #000000;
	font-size: 0.8rem;
	line-height: 1em;
	text-align: left;
	display: inline-block;
	margin-top: 10px;
	position: absolute;
	right: 0px;
	top: -2em;
}

.top_article_wrap {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
    padding-top: 0em;
    padding-bottom: 2em;
    background-color: rgba(255,255,255,1.00);
    margin-top: 0em;
    margin-bottom: 2em;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    display: table;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .top_article_wrap{
        padding-left: 5%;
        padding-right: 5%;
    }
}
#article_top_float_img img {
	height: auto;
}
#article_title_overimg00 {
	position: absolute;
	left: 0px;
	top: 120px;
	z-index: 1000;
	color: #FFF;
	font-size: 6em;
	text-align: left;
	padding-top: 50px;
	padding-bottom: 50px;
	padding-left: 50px;
	line-height: 1.1em;
	font-weight: normal;
}
#top_article_header {
	margin-bottom: 50px;
}
#top_article_header000 h1 {
	font-size: 1.8em;
	font-weight: bold;
	color: #004889;
	line-height: 1.4em;
	margin-bottom: 0px;
	text-align: justify;
}
#top_article_header p {
	color: #666;
	font-size: 1.1em;
	font-weight: bold;
}
#cnt_wrap_article {
	width: 980px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 40px;
	margin-bottom: 50px;
	padding-right: 10px;
	padding-left: 10px;
}
#cnt_wrap_article h2 {
	text-align: center;
	font-size: 4em;
	color: #289FE1;
	line-height: 1.6em;
}
#cnt_wrap_article .h2sub {
	text-align: center;
	margin-bottom: 40px;
	color: #289FE1;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1em;
}


#article_box {
    display: table;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #article_box{
        width: 100%;
        margin-bottom: 5em;
    }
}
#blog_article_date {
	color: #b0b0b0;
	font-size: 0.9em;
	line-height: 1em;
	letter-spacing: 0.25em;
	text-align: left;
	padding-left: auto;
	padding-right: auto;
}
#title {
	line-height: 1.3em;
	font-size: 1.5em;
	color: #FFFFFF;
	height: auto;
	width: 700px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	margin-bottom: 50px;
}
#title h3 {
	margin-bottom: 1em;
	margin-top: 0.5em;
	text-align: justify;
	font-weight: normal;
}
#article_cont_block {
	font-size: 0.8rem;
	line-height: 2.6em;
	color: #000000;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	margin-bottom: 30px;
	padding-top: 5%;
}

.news_right_box {
    width: 86%;
    background-color: rgba(250,250,250,1.00);
    padding-top: 2%;
    padding-left: 2%;
    padding-right: 2%;
    padding-bottom: 2%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .news_right_box{
        display: table;
        margin-left: auto;
        margin-right: auto;
        margin-top: 2em;
    }
}

.NewEntry h4 {
    color: rgba(224,7,27,1.00);
    font-size: 1.2rem;
    line-height: 1em;
    font-weight: bold;
    margin-bottom: 5%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .NewEntry h4{
        text-align: center;
    }
}
.NewEntry ul {
	display: table;
}

.NewEntry ul li {
    position: relative;
    float: left;
    padding-bottom: 5%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .NewEntry ul li{
        list-style-image: none;
        list-style-type: none;
        list-style-position: inside;
    }
}
.NewEntry ul li img {
	float: left;
	width: 25%;
	height: auto;
}
.NewEntry ul li p {
	width: 65%;
	float: left;
	margin-left: 5%;
	font-size: 0.75rem;
	line-height: 1.4em;
}
.NewEntry ul li .nrb_newentry_date {
	width: 65%;
	float: left;
	color: rgba(153,153,153,1.00);
	font-size: 0.75rem;
	margin-bottom: 0.3em;
	text-align: left;
}

.NewEntry ul li a {
    display: table;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .NewEntry ul li a{
        position: relative;
    }
}
.NewEntry ul li a:before  {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(224,7,27,0.00);
	mix-blend-mode: darken;
}
/*.NewEntry ul li a:hover:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(224,7,27,1.00);
	-webkit-transition: 0.6s;
	-o-transition: 0.6s;
	transition: 0.6s;
	z-index: 100;
}*/
.arrow_wrap {
	display: table;
	margin-left: auto;
	margin-right: auto;
}
.prev-article {
	height: clamp(3.5156rem, 15vw, 12rem);
	width: clamp(3.5156rem, 15vw, 12rem);
	display: table;
	float: left;
}

.prev-article a {
    text-decoration: none;
    color: #4d4d4d;
    display: table;
    height: clamp(3.5156rem, 15vw, 12rem);
    width: clamp(3.5156rem, 15vw, 12rem);
    background-color: rgba(207,207,207,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .prev-article a{
        text-align: center;
    }
}
.prev-article a:hover {
	text-decoration: none;
	text-align: center;
	background-color: rgba(232,232,232,1.00);
}
.next-article {
	height: clamp(3.5156rem, 15vw, 12rem);
	width: clamp(3.5156rem, 15vw, 12rem);
	display: table;
	float: left;
}
.next-article a {
	text-decoration: none;
	color: #4d4d4d;
	text-align: center;
	display: table;
	height: clamp(3.5156rem, 15vw, 12rem);
	width: clamp(3.5156rem, 15vw, 12rem);
	background-color: rgba(207,207,207,1.00);
}
.next-article a:hover {
	text-decoration: none;
	text-align: center;
	background-color: rgba(232,232,232,1.00);
}


.entry-content a {
word-break: break-all;
text-decoration: underline;
color: rgba(224,7,27,1.00);
}
.entry-content h1 {
	font-size: 1.2rem;
	line-height: 1.8em;
}
.entry-content h2 {
	font-size: 0.95rem;
	line-height: 2em;
	color: rgba(0,0,0,1.00);
}
.entry-content h3 {
	font-size: 1.1em;
	line-height: 2em;
}
.entry-content h4 {
	font-size: 1.1em;
	line-height: 2em;
}
.entry-content h5 {
	font-size: 0.9rem;
	line-height: 2em;
}
.entry-content h6 {
	font-size: 0.8rem;
	line-height: 2em;
}

.entry-content blockquote {
    background: rgba(245, 245, 245, 0.8) none repeat scroll 0px 0px;
    border: 1px solid rgb(255, 255, 255);
    margin: 1em 0px;
    position: relative;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .entry-content blockquote{
        padding-top: 0.5em;
        padding-right: 1em;
        padding-left: 1em;
        padding-bottom: 0.5em;
    }
}
.entry-content blockquote::before { color: rgb(200, 200, 200); content: "“"; font-family: serif; font-size: 300%; left: 0px; line-height: 1em; position: absolute; top: 0px; }
.entry-content blockquote::after { color: rgb(200, 200, 200); content: "”"; font-family: serif; font-size: 300%; line-height: 0; position: absolute; right: 0px; bottom: -0.2em; }

.entry-content ul ul { margin-left: 1em; }
.entry-content dl { margin: 30px 0px; }
.entry-content dt { font-weight: bold; }
.entry-content dd { margin-bottom: 5px; }
.entry-content table { border-collapse: collapse; margin: 15px 0px; }
.entry-content th { border: 1px solid rgb(204, 204, 204); background-color: rgb(238, 238, 238); }
.entry-content td { border: 1px solid rgb(204, 204, 204); }
.entry-content th, .entry-content td { padding: 3px 5px; }
.entry-content ol, .entry-content ul, .entry-content dl {
	line-height: 150%;
	list-style-position: inside;
}
.entry-content pre { background-color: rgb(238, 238, 238); border: 1px solid rgb(204, 204, 204); padding: 7px; overflow: auto; }
.entry-content img {
	max-width: 100%;
	height: auto !important;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .entry-content iframe{
        width: 100%;
    }
}
div.wp_social_bookmarking_light div {
	float: left;
	margin-right: 10px;
}
#title #snsbtn_rfloat_right {
	display: block;
	float: right;
	margin-bottom: 1em;
}


#GmenuWrap {
	width: 100%;
	background-color: rgba(0,0,0,1);
	border-bottom: 1px solid rgba(207,0,14,1);
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#GmenuBox {
	width: 100%;
	max-width: 1280px;
	background-color: rgba(0,0,0,0.70);
	position: relative;
	z-index: 100;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	padding: 0;
}
.GmenuBrand {
	max-width: 9em;
	padding: 0.5em;
	display: flex;
	align-items: center;
}
.SiteTagline {
	display: none;
}
.SiteTitle .BrandLink img {
	display: block;
	height: 44px;
}
#GmenuWrap ul {
list-style: none;
padding: 0;
margin: 0 auto;
display: none;
justify-content: center;
align-items: stretch;
height: 100%;
}
#GmenuWrap li {
	display: flex;
	align-items: stretch;
	line-height: 1;
	text-align: center;
	font-size: 0.8rem;
	border-left: 1px solid rgba(207,0,14,1);
}
#GmenuWrap li:last-child {
	border-right: 1px solid rgba(207,0,14,1);
}
#GmenuWrap li a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 0 1em;
	color: rgba(255,255,255,1);
	text-decoration: none;
	line-height: 1;
}
#GmenuWrap li a:visited {
	color: rgba(255,255,255,1);
}
#GmenuWrap li a:hover {
	background-color: rgba(207,0,14,0.70);
}


.TopScrollLink {
display: table;
margin-left: auto;
margin-right: auto;
background-repeat: no-repeat;
background-position: center top 80px;
background-image: url(../img/Parts04.png);
padding-bottom: 70px;
}
.TopBnrWrap {
	background-repeat: repeat-x;
	/* [disabled]height: 21vh; */
	-webkit-box-shadow: 0px 0px 20px rgba(0,0,0,0.15);
	box-shadow: 0px 0px 20px rgba(0,0,0,0.15);
	/* [disabled]display: table; */
}

.TopBnrMenuTitle {
    font-family: 'milantyperev-r';
    text-align: left;
    background-size: 25% 90px;
    background-color: rgba(0,0,0,1.00);
    color: rgba(255,255,255,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrMenuTitle{
        display: block;
        padding-top: 1em;
        padding-bottom: 1em;
    }
}
.TopBnrCnt {
	width: -webkit-calc(100%/3);
	width: -moz-calc(100%/3);
	width: calc(100%/3);
	float: left;
	height: 14svh;
	text-align: left;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.TopBnrCnt p {
	font-family: 'milantyperev-r';
	font-size: 1.2rem;
	font-weight: normal;
	color: rgba(224,7,27,1.00);
}
.TopBnrCnt h3 {
	font-size: 0.7rem;
	color: rgba(255,255,255,1.00);
}

.TopBnrCntGrad {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
    background: -moz-linear-gradient(50% 0% -90deg,rgba(0, 0, 0, 0.4) 0%,rgba(0, 0, 0, 0.8) 80%);
    background: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    background: -webkit-gradient(linear,50% 0% ,50% 100% ,color-stop(0,rgba(0, 0, 0, 0.4) ),color-stop(0.8,rgba(0, 0, 0, 0.8) ));
    background: -o-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    background: -ms-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrCntGrad{
        -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#000000' ,GradientType=0)";
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000',endColorstr='#000000' , GradientType=0);
    }
}

.TopBnrCntGrad:hover {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
    background: -moz-linear-gradient(50% 0% -90deg,rgba(0, 0, 0, 0.4) 0%,rgba(0, 0, 0, 0.8) 80%);
    background: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    background: -webkit-gradient(linear,50% 0% ,50% 100% ,color-stop(0,rgba(0, 0, 0, 0.4) ),color-stop(0.8,rgba(0, 0, 0, 0.8) ));
    background: -o-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    background: -ms-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    opacity: 0.1;
    transition: 0.6s;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrCntGrad:hover{
        -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#000000' ,GradientType=0)";
        filter: alpha(opacity=10) progid:DXImageTransform.Microsoft.Alpha(opacity=10) progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000',endColorstr='#000000' , GradientType=0);
        -webkit-transition: 0.6s;
        -o-transition: 0.6s;
    }
}
.TopBnrCntText {
	position: absolute;
	z-index: 30;
	pointer-events: none;
	left: clamp(0.2344rem, 1vw, 0.8rem);
	bottom: clamp(0.2344rem, 1vw, 0.8rem);
}

.TopBnrCntTitleText {
    z-index: 30;
    pointer-events: none;
    font-family: 'milantyperev-r';
    font-size: 1rem;
    font-weight: normal;
    color: rgba(255,255,255,1.00);
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrCntTitleText{
        text-align: center;
    }
}
.TopBnrCntTitleText h2 {
	font-size: 0.6rem;
	color: rgba(255,255,255,1.00);
}

.TopBnrSubsetWrap {
    background-color: rgba(240,240,240,1.00);
    display: block;
    width: 100%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrSubsetWrap{
        padding-top: 1em;
        padding-bottom: 3em;
        float: left;
    }
}

.TopBnrSubset {
    display: table;
    width: 90%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrSubset{
        margin-left: auto;
        margin-right: auto;
    }
}

.TopBnrSubLink {
    position: relative;
    background-color: rgba(0,0,0,1.00);
    color: rgba(255,255,255,1.00);
    padding: 2em 0;
    width: 100%;
    font-size: 0.75rem;
    line-height: 1em;
    text-align: center;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .TopBnrSubLink{
        display: table;
        float: left;
        margin-top: 0px;
        margin-bottom: 0.5em;
    }
    .TopBnrSubLink h3{
        margin: 0.5em 0 0 0;
    }
}
.TopBnrSubLink .Subtitle {
	font-family: 'milantyperev-r';
	color: #C90C0F;
	text-transform: uppercase;
	font-size: 1.7rem;
	line-height: 1em;
}


.drawer_Title {
background-color: rgba(0,0,0,1.00);
display: block;
}
.drawer_Title img {
width: 13em;
padding-left: 1em;
}
.zdo_drawer_menu * {
	margin: 0;
	padding: 0;
	outline: none;
	border: none;
	font: inherit;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	appearance: none;
	text-align: left;
	text-decoration: none;
	list-style: none;
}
.zdo_drawer_menu a {
	color: inherit;
	text-decoration: none;
}
.zdo_drawer_menu a:visited {
	color: rgba(255,255,255,1.00);
}
.zdo_drawer_menu .zdo_drawer_bg {
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 999;
	background-color: rgba(51, 51, 51, 0.5);
	display: none;
	top: 0;
	left: 0;
}
.zdo_drawer_menu .zdo_drawer_button {
display: block;
background-image: none;
border: 0px solid rgba(255,255,255,1.00);
padding: 5px;
width: 40px;
letter-spacing: 0.1em;
cursor: pointer;
position: fixed;
top: 5px;
right: 5px;
z-index: 1001;
text-align: center;
outline: none;
background-color: #E0071B;
box-sizing: border-box;
box-shadow: 0px 0px 10px rgba(0,0,0,0.50);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar {
	width: 39px;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar1 {
	transform: rotate(30deg);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar2 {
	opacity: 0;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar3 {
	transform: rotate(-30deg);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_menu_text {
	display: none;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_close {
	display: block;
}

.zdo_drawer_menu .zdo_drawer_bar {
    display: block;
    height: 2px;
    transition: all 0.2s;
    transform-origin: 0 0;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .zdo_drawer_menu .zdo_drawer_bar{
        margin: 7px 0;
    }
}
.zdo_drawer_menu .zdo_drawer_text {
	text-align: center;
	font-size: 0.5rem;
}
.zdo_drawer_menu .zdo_drawer_close {
	display: none;
}
.zdo_drawer_menu .zdo_drawer_menu_text {
	display: block;
}
.zdo_drawer_menu .zdo_drawer_nav_wrapper {
	width: 80%;
	height: 100%;
	transition: all 0.2s;
	transform: translate(100%);
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1000;
	background: #E0071B;
}
.zdo_drawer_menu .zdo_drawer_nav_wrapper.open {
	transform: translate(0);
}
.zdo_drawer_menu.left .zdo_drawer_button {
	right: auto;
	left: 32px;
}
.zdo_drawer_menu.left .zdo_drawer_nav_wrapper {
	transform: translate(-30%);
	right: auto;
	left: 0;
}
.zdo_drawer_menu.left .zdo_drawer_nav_wrapper.open {
	transform: translate(0);
}
/*+++ Default Navigation CSS +++*/


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .zdo_drawer_menu .zdo_drawer_nav{
        padding: 112px 24px;
    }
}
.zdo_drawer_menu .zdo_drawer_nav li {
	font-size: 16px;
	margin-bottom: 15px;
}
/*+++ Default Button Color +++*/
.zdo_drawer_menu .zdo_drawer_button {
	color: #ffffff;
}
.zdo_drawer_menu .zdo_drawer_button .zdo_drawer_bar {
	background-color: #ffffff;
}
.zdo_drawer_menu .zdo_drawer_button.active {
	color: #ffffff;
	background-color: #E0071B;
	border-style: none;
	box-shadow: 0px 0px 0;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar {
	background-color: #ffffff;
}


.side-menu__ul {
width: 100%;
height: 100%;
display: block;
overflow: auto;
font-size: 0.85rem;
padding-top: 1em;
padding-bottom: 5em;
}
.side-menu__ul--child {
	display: none;
}
.active .side-menu__ul--child {
	display: block;
}
.side-menu__ul--child li a {
display: block;
padding-top: 1em;
padding-right: 0;
padding-left: 2em;
padding-bottom: 1em;
font-size: 1em;
color: #cccccc;
}
.side-menu__ul > li > a, .side-menu__ul > li h2 {
	display: block;
	padding-top: 0.75em;
	padding-right: 0;
	padding-left: 1em;
	padding-bottom: 0.75em;
	color: #ffffff;
}
.side-menu__ul > li h3 {
	display: block;
	padding-top: 0.75em;
	padding-right: 0;
	padding-left: 1em;
	padding-bottom: 0.75em;
	color: #ffffff;
}
.side-menu__ul h2 {
	cursor: pointer;
	transition: all .5s;
}
.side-menu__ul .drawer_SubList  > li > a {
	display: block;
	padding-top: 0.5em;
	padding-right: 0;
	padding-left: 2em;
	padding-bottom: 0.5em;
	color: #ffffff;
font-size: 0.75rem;
}
.side-menu__ul .drawer_SubList {
	margin-bottom: 1em;
}


.side-menu__ul > li > h2:hover, .side-menu__ul > li a:hover {
	background-color: #3E0005;
	color: #ffffff;
}

#DrawerSns {
	width: 100%;
	display: table;
}
.DrawerSnsCnt a {
	display: table;
	width: calc(100%/3);
	text-align: center;
	float: left;
	height: 2em;
	padding-top: 1em;
	padding-bottom: 1em;
}
.DrawerSnsCnt .FooterCntBBtn {
margin-right: 1em;
}

.side-menu__ul li .drawer_SubList .FooterCntBBtn a {
    margin-left: 0em;
    background-color: #000000;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .side-menu__ul li .drawer_SubList .FooterCntBBtn a{
        width: 2.2em;
        height: 2.2em;
    }
}
.side-menu__ul li .drawer_SubList .FooterCntBBtn {
margin-left: 1em;
	background-color: none;
}
.side-menu__ul--child p {
	color: #FFFFFF;
	padding-left: 32px;
	padding-top: 8px;
	padding-bottom: 8px;
}
.zdo_drawer_button.zdo_drawer_button-Color {
background-color: rgba(212,208,207,1.00);
}
.side-menu__ul li .discli {
	display: none;
}

.drawer_Space {
margin-bottom: 10em;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SliderImg{
        color: rgba(0,0,0,1.00);
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0px;
        display: block;
        left: 0%;
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
    }
    .SliderTitleBox{
        font-size: 1.6em;
        color: #FFFFFF;
        text-shadow: 0px 0px 5px rgba(0,0,0,0.50);
        font-weight: bold;
        z-index: 550;
        visibility: hidden;
    }
    .SliderImg .SliderTitleBox h2{
        font-size: 0.9em;
        margin-top: 10px;
        margin-bottom: 10px;
        background-color: rgba(147,137,134,1.00);
        padding-top: 0.25em;
        padding-right: 2em;
        padding-left: 2em;
        padding-bottom: 0.25em;
        font-weight: normal;
    }
    .SliderLogo{
        z-index: 500;
        top: 0px;
        right: 0px;
        position: absolute;
    }
    .SliderImgBG{
        background: -moz-linear-gradient(0% 50% 0deg,rgba(0, 131, 207, 0.2) 0%,rgba(0, 131, 207, 0.1) 100%);
        background: -webkit-linear-gradient(0deg, rgba(0, 131, 207, 0.2) 0%, rgba(0, 131, 207, 0.1) 100%);
        background: -webkit-gradient(linear,0% 50% ,100% 50% ,color-stop(0,rgba(0, 131, 207, 0.2) ),color-stop(1,rgba(0, 131, 207, 0.1) ));
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0px;
        display: block;
        top: 0px;
    }
    .SliderTitleBox p a{
        font-size: 0.7em;
        padding-top: 0.5em;
        padding-right: 1.5em;
        padding-left: 1.5em;
        padding-bottom: 0.5em;
        color: rgba(255,255,255,1.00);
        border-radius: 10px;
        background-color: rgba(0,0,0,0.30);
        margin-bottom: 0px;
    }
    .SliderTitleBox p a:hover{
        font-size: 0.7em;
        padding-top: 0.5em;
        padding-right: 1.5em;
        padding-left: 1.5em;
        padding-bottom: 0.5em;
        color: rgba(255,255,255,1.00);
        border-radius: 10px;
        background-color: rgba(0,0,0,0.50);
        margin-bottom: 0px;
    }
    #header .slidercatchimg{
        position: absolute;
        z-index: 200;
        left: 50px;
        top: 50px;
    }
    .TopSliderFullimg{
        position: absolute;
        left: 0px;
        top: 100px;
        width: 100%;
        z-index: 500;
    }
    #SliderTitle{
        background-color: rgba(33,112,187,0.80);
        position: absolute;
        z-index: 600;
        left: -50%;
        right: -50%;
        height: 200px;
        width: 50%;
    }
    .TopSliderCatch{
        position: absolute;
        z-index: 100;
        color: rgba(255,255,255,1);
        text-align: left;
        left: 1em;
        bottom: 1em;
        display: flex;
        flex-direction: column;
        gap: 0.4em;
    }
    .TopSliderCatch p{
        background-color: rgba(205,0,14,1);
        padding: 0.65em 0.5em;
        line-height: 1em;
        text-align: left;
        font-size: 0.85rem;
        margin: 0;
    }
}


@media (min-width: 768px){


.SideBnr1 {
        right: -5px;
        top: calc(50% - 190px );
    }
.SideBnr2 {
        right: -5px;
        top: calc(50% );
    }

    
    

.TrainingVideoSection {
        max-width: 1280px;
        padding: 5em 2em;
    }
.TrainingVideoInner {
        width: 80%;
        gap: 2.5em;
    }
.TrainingVideoLeft {
    flex: 0 0 54%;
    color: rgba(223, 7, 27, 1);
}
.TrainingTextOverlay {
        width: 75%;
        position: absolute;
        top: 0;
        left: 0;
        right: 2em;
        z-index: 5;
        pointer-events: none;
    }
.TrainingTitle {
        margin: 1em 0 0.1em 0;
        font-size: 3.7rem;
    }
.TrainingSubCopy {
        font-size: 1.5rem;
        margin: 0 0 1.2em;
    }
.TrainingLead {
        line-height: 2;
        width: 70%;
        margin: 0 0 1.8em;
    }
.TrainingThumbGrid {
        flex-wrap: wrap;
        gap: 1.5em;
        margin: 24em 0 1.5em 0;
        width: 65%;
    }
.VideoThumb {
        flex: 0 0 calc(50% - 1.5em);
    }
.VideoThumb video {
        background-color: rgba(118, 118, 118, 1.00);
    }

.ThumbPlayIcon::before {
        width: 2.8em;
        height: 2.8em;
    }
.ThumbPlayIcon::after {
        margin-left: .35em;
        border-width: .9em 0 .9em 1.4em;
    }

.TrainingMoreBtn{
        padding: 0.7em 1em 0.7em 2.2em;
        font-size: 0.9rem;
        border-radius: 0.4em;
        background-position: left 0.5em center;
    }

.TrainingVideoRight {
    flex: 1;
    display: flex;
    flex-direction: column;
}


    

#LocationWrap {
        gap: 30px;
        padding: 5em 80px;
    }
#LocationWrap-Page {
        gap: 30px;
        padding: 5em 1em 1em 1em;
        background: rgba(240,240,240,1.00);
    }
.LocationTitle{
        font-size: 3.1rem;
    }
.LocationLead{
        margin: 0 0 3em;
    }
.LocationCnt {
        align-items: flex-start;
        gap: 2em;
    }
.LocationCntL {
        flex: 0 0 40%;
        align-items: flex-start;
    }

.LocationCntR{
  flex: 1;
  min-width: 0; /* 3b: 768〜 の実幅で内容幅より縮められずはみ出すのを防ぐ */
  display: flex;
  flex-direction: column;
  gap: 1.5em;
}
.LocationCntR-Page{
  flex: 1;
  display: flex;
  flex-direction: row;
  gap: 1em;
}
.LocationInfo{
        padding: 1em;
    }
.LocationItem{
        gap: 1.5em;
    }
.LocationItem-Page{
        width: calc((100% - 2em) / 3);
    }
.LocationCntR-Page{
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1em;
}
    
    
.LocationPhoto {
        flex: 0 0 52%;
        height: 270px;
    }


.LocationBtns{
        flex-direction: column;
    }


    
    
    

#TopInlineLink {
        max-width: 1280px;
    }
#TopInlineLink p {
        margin: 0 1em;
        padding: 0.5em 2.5em 0.5em 2.5em;
        background-position: left 0.5em center;
        font-size: 1.15rem;
    }


    

#TopBannerWrap {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        padding: 2em 1em;
    }


	

    
    

    
    
    


.MainFloatBntLink {
        width: clamp(3.5156rem, 15vw, 12rem);
    }


	

	
	
	

.CalendarWrap {
        margin-bottom: 5svh;
        background-color: rgba(240,240,240,1.00);
    }
.CalendarInner {
	padding: 2em 1em;
	max-width: 1280px;
}
.CalendarCnt {
        width: 70%;
        margin-top: 5svh;
    }
.CalendarWrap h2 {
        font-size: 3.1rem;
        margin-top: 5svh;
    }

	
	
	
	
	

.S20PageHeader {
        padding-top: 20svh;
        padding-bottom: 20svh;
    }

.S20PageHeader h1 {
        font-size: clamp(0.7031rem, 3vw, 2.4rem);
        margin-top: 7svh;
        background: -moz-linear-gradient(50% 100% 90deg,rgba(107, 0, 7, 1) 0%,rgba(149, 0, 10, 1) 30.68%,rgba(181, 0, 12, 1) 59.35%,rgba(200, 0, 14, 1) 83.43%,rgba(207, 0, 14, 1) 100%);
        background: -webkit-linear-gradient(90deg, rgba(107, 0, 7, 1) 0%, rgba(149, 0, 10, 1) 30.68%, rgba(181, 0, 12, 1) 59.35%, rgba(200, 0, 14, 1) 83.43%, rgba(207, 0, 14, 1) 100%);
        background: -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(107, 0, 7, 1) ),color-stop(0.3068,rgba(149, 0, 10, 1) ),color-stop(0.5935,rgba(181, 0, 12, 1) ),color-stop(0.8343,rgba(200, 0, 14, 1) ),color-stop(1,rgba(207, 0, 14, 1) ));
        background: linear-gradient(0deg, rgba(107, 0, 7, 1) 0%, rgba(149, 0, 10, 1) 30.68%, rgba(181, 0, 12, 1) 59.35%, rgba(200, 0, 14, 1) 83.43%, rgba(207, 0, 14, 1) 100%);
    }

.S20PageWrap01 {
	background : -moz-linear-gradient(50% 100% 90deg,rgba(107, 0, 7, 1) 0%,rgba(149, 0, 10, 1) 30.68%,rgba(181, 0, 12, 1) 59.35%,rgba(200, 0, 14, 1) 83.43%,rgba(207, 0, 14, 1) 100%);
	background : -webkit-linear-gradient(90deg, rgba(107, 0, 7, 1) 0%, rgba(149, 0, 10, 1) 30.68%, rgba(181, 0, 12, 1) 59.35%, rgba(200, 0, 14, 1) 83.43%, rgba(207, 0, 14, 1) 100%);
	background : -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(107, 0, 7, 1) ),color-stop(0.3068,rgba(149, 0, 10, 1) ),color-stop(0.5935,rgba(181, 0, 12, 1) ),color-stop(0.8343,rgba(200, 0, 14, 1) ),color-stop(1,rgba(207, 0, 14, 1) ));
	background : linear-gradient(0deg, rgba(107, 0, 7, 1) 0%, rgba(149, 0, 10, 1) 30.68%, rgba(181, 0, 12, 1) 59.35%, rgba(200, 0, 14, 1) 83.43%, rgba(207, 0, 14, 1) 100%);
}
.S20PageCntSet {
        width: 56%;
        padding-bottom: 10svh;
        max-width: 960px;
    }
.S20PageCntSet h2 {
        font-size: 1.9em;
    }
.S20PageCntSet p {
        text-align: justify;
        font-size: 1.2rem;
        line-height: 2.2em;
    }
.S20PageCntEx {
        margin-top: 2em;
        margin-bottom: 3em;
        padding-top: 1em;
        padding-bottom: 2em;
    }
.S20PageCntEx h3 {
        font-size: 1.4rem;
        line-height: 1em;
        margin-bottom: 1.5em;
    }
.S20PageCntEx p {
        line-height: 1.8em;
        font-size: 1.2rem;
    }

.S20PageCntEx p .Cap {
        font-size: 1rem;
        margin-left: 2em;
        margin-right: 1em;
    }
.S20PageCntEx p a {
        padding-left: 2em;
        padding-right: 2em;
        margin-top: 2em;
        font-size: 1rem;
        background-size: auto 90%;
    }
	
.S20PageCntExB {
        margin-top: 2em;
        padding-top: 1em;
        padding-bottom: 1em;
    }
.S20PageCntExB h3 {
        font-size: 1.4rem;
        line-height: 1em;
    }
.S20PageCntExB p {
        line-height: 1.8em;
        font-size: 1.2rem;
    }
.S20PageCntExB p a {
        padding-left: 2em;
        padding-right: 2em;
        margin-top: 2em;
        font-size: 1rem;
        background-size: auto 90%;
    }
.S20PageCntExB p .Cap {
        font-size: 1rem;
        margin-left: 2em;
        margin-right: 1em;
    }
	


.S20PageCntParts02Set {
        color: rgba(207,0,14,1.00);
    }
.S20PageCnt02 {
        width: 80%;
    }
.S20PageCntParts02Set {
        width: 80%;
    }

.S20PageCntParts02 h3 {
        font-size: clamp(0.2812rem, 1.2vw, 0.96rem);
    }
.S20PageCntParts02 h3 .Cat {
        font-size: 1.6rem;
    }
.S20PageCnt02 .S20PageCntParts02 p {
        font-size: clamp(0.2695rem, 1.15vw, 0.92rem);
    }

#TopCautionLink p a {
        font-size: 1.2rem;
    }
#TopCautionLink p a br {
	display: none;
}
	

#TopCautionLink2 p a {
        font-size: 1.2rem;
    }
#TopCautionLink2 p a br {
	display: none;
}
	
	
	
	
	

.FloatCenter {
        margin-bottom: 3svh;
    }


.EventHeader {
        width: 80%;
        padding-bottom: 5svh;
        padding-top: 7svh;
    }
.EventHeader h1 {
        font-size: 2.2rem;
        margin-bottom: 0.5em;
    }
.EventHeader p {
        font-size: 1.2rem;
        margin-bottom: 3em;
        width: 80%;
    }
.EventDateList   {
        width: auto;
        gap: 2em;
        list-style-type: none;
    }
.EventDate  {
        font-size: 1.6rem;
    }
.EventMain {
        padding-bottom: 5em;
        padding-top: 5em;
    }
.EventCntSet {
        max-width: 1080;
        width: 80%;
    }
.EventCntSet h2 {
        font-size: 2.2rem;
    }

.EventCnt   {
        width: 76%;
        padding-top: 3em;
        padding-left: 2%;
        padding-right: 2%;
    }
.EventCnt h3 {
        font-size: 1.8rem;
    }
.EventCnt p {
        font-size: 1.2rem;
        margin-bottom: 3em;
    }
.EventCnt p strong {
	font-size: 1.2rem;
}


.EventForm {
        width: 76%;
        padding-top: 3em;
        padding-left: 2%;
        padding-bottom: 1em;
        padding-right: 2%;
        -webkit-box-shadow: inset 0px 30px 30px -20px rgba(0,0,0,0.10);
    }
.EventForm h3 {
        font-size: 2rem;
    }
.EventForm h4 {
        font-size: 1.6rem;
    }
.EventForm p {
	font-size: 1.2rem;
	line-height: 2em;
	margin: 0 0 2em 0;
}
h3.EventFormTitle {
        padding-top: 0.5em;
        font-size: clamp(0.4219rem, 1.8vw, 1.44rem);
        padding-bottom: 0.5em;
        padding-left: 1em;
        padding-right: 1em;
    }


.Article201901Index ul li a {
        background-image: -webkit-linear-gradient(270deg,rgba(129,0,7,1.00) 0%,rgba(72,0,5,1.00) 100%);
        background-image: -moz-linear-gradient(270deg,rgba(129,0,7,1.00) 0%,rgba(72,0,5,1.00) 100%);
        background-image: -o-linear-gradient(270deg,rgba(129,0,7,1.00) 0%,rgba(72,0,5,1.00) 100%);
        background-image: linear-gradient(180deg,rgba(129,0,7,1.00) 0%,rgba(72,0,5,1.00) 100%);
        text-decoration: none;
        text-decoration: none !important;
    }

#Article201901 h2 {
        background-image: -webkit-linear-gradient(270deg,rgba(19,19,19,1.00) 0%,rgba(53,53,53,1.00) 100%);
        background-image: -moz-linear-gradient(270deg,rgba(19,19,19,1.00) 0%,rgba(53,53,53,1.00) 100%);
        background-image: -o-linear-gradient(270deg,rgba(19,19,19,1.00) 0%,rgba(53,53,53,1.00) 100%);
        background-image: linear-gradient(180deg,rgba(19,19,19,1.00) 0%,rgba(53,53,53,1.00) 100%);
    }


.NewsListWrap {
	background-color: rgba(255,255,255,1.00);
	color: rgba(0,0,0,1.00);
	width: 100%;
	padding-top: 2em;
	float: left;
	letter-spacing: 0.1em;
	padding-bottom: 4em;
}
.NewsListWrap h2 {
        font-size: 3rem;
    }
.NewsListWrap p {
        color: rgba(224,7,27,1.00);
        width: 100%;
    }
    
    
.NewsListSet {
        margin-top: 2em;
        width: 80%;
    }

.NewsList {
        padding-bottom: 0.5em;
        width: 46%;
        margin: 2%;
        color: rgba(0,0,0,1.00);
    }
.NewsList img {
        width: 55%;
    }
.NewsList .Cate {
        font-size: 0.8rem;
    }
.NewsList h3 {
        width: 42%;
        font-size: 1.2rem;
        margin-bottom: 0.2em;
    }
.NewsList .Date {
        font-size: 0.9rem;
        margin-bottom: 0.2em;
    }
.NewsList p {
        width: 42%;
        font-size: 0.8rem;
        color: rgba(153,153,153,1.00);
        text-align: justify;
    }


.ContactCaution {
        width: 85%;
        padding: 0.5em;
    }
.ContactCaution h3 {
        font-size: 1.2rem;
    }

.EntryCntBox02 .ContactCaution p  {
        font-size: 0.85rem;
        line-height: 2em;
    }
.EntryWrap {
        padding-bottom: 15svh;
    }
.EntryCntSet {
        width: 80%;
        max-width: 960px;
        padding-top: 8svh;
    }
.EntryCntSet h1 {
        font-size: 1.8rem;
        background: -moz-linear-gradient(50% 100% 90deg,rgba(66, 66, 66, 1) 0%,rgba(10, 10, 10, 1) 15%,rgba(40, 40, 40, 1) 85%,rgba(66, 66, 66, 1) 100%);
        background: -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        background: -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(66, 66, 66, 1) ),color-stop(0.15,rgba(10, 10, 10, 1) ),color-stop(0.85,rgba(40, 40, 40, 1) ),color-stop(1,rgba(66, 66, 66, 1) ));
        background: -o-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        background: -ms-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        background: linear-gradient(0deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
    }

.EntryCntSet h2 {
        font-size: 1.8em;
        padding-top: 2em;
    }

.EntryCntBox {
	padding-bottom: 10svh;
}
.EntryCntBox p {
        line-height: 2em;
        font-size: 1rem;
        width: 75%;
    }

.EntryCntBox02 {
        padding-bottom: 5svh;
        width: 80%;
    }
.EntryCntBox02 p {
        margin-bottom: 2svh;
    }

.EntryCntBox03Link {
        display: block;
        font-size: 0.95em;
    }
.EntryCntBox .EntryCntTel {
        font-size: 1rem;
    }
.EntryTel {
        font-size: 1rem;
    }
.EntryTelB {
        font-size: 1rem;
    }


.EntryFormGuide ul .EFGBlank {
        font-size: 2rem;
    }
.EntryFormGuide ul li .EFGCap {
        font-size: 1.2em;
    }
.EntryFormGuide ul li .EFGDate {
        font-size: 1.4rem;
    }

.EntryFormGuide ul li .Limit {
        width: 80%;
        top: 50%;
        left: 50%;
        margin-right: -50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        font-size: 0.85rem;
        padding: 1em;
    }
.EntryFormGuide ul li .Limit2 {
        width: 80%;
        font-size: 0.85rem;
        padding: 1em;
    }


.EFGBlanc {
        font-size: 2rem;
    }
.EntryFormGuide ul li a {
        padding-top: 1em;
        padding-bottom: 1em;
        font-size: 2rem;
        border-left: 1px none #AA000D;
    }
.EntryFormGuide ul li a .EFGCap {
        font-size: 1.2rem;
    }
.EntryFormGuide ul li a .EFGDate {
        font-size: 1.4rem;
    }


.EntryFormGuide ul .Day1_2 {
        font-size: 1.6rem;
    }

.EntryFormGuide ul .Day1_1 {
        width: 100%;
        float: left;
        padding-top: 0.5em;
        padding-bottom: 0.5em;
    }
.EntryFormGuide ul .Day1_1B {
        width: 100%;
        float: left;
        padding-top: 0.5em;
        padding-bottom: 0.5em;
    }

.EntryFormGuide ul li {
    position: relative;
    color: rgba(255,255,255,1.00);
	}


.SchoolPageWrapB {
        color: rgba(255,255,255,1.00);
        padding-bottom: 15svh;
        padding-bottom: 2em;
    }
.SchoolPagePageWrap {
        margin-top: 0;
        padding-bottom: 8em;
    }
.SchoolPageWhiteCnt {
        width: 70%;
        padding-left: 5%;
        padding-right: 5%;
        padding-bottom: 5em;
    }
.SchoolPageCntSet {
        width: 80%;
        max-width: 960px;
        padding-top: 5em;
    }
.SchoolPageCntSet h1 {
        font-size: 2.2rem;
    }

.SchoolPageCntSet h2 {
        font-weight: normal;
        font-size: 2rem;
        line-height: 1.2em;
        margin-bottom: 0.75em;
        padding-top: 1.5em;
    }
.SchoolPageWhiteCnt h2 .H2sub {
        font-size: 1.2rem;
    }
.SchoolPageCntSet p {
        font-size: 1.1rem;
        color: rgba(0,0,0,1.00);
    }
.SchoolPageCntSet .SchoolPageCntColumn2 {
        margin-bottom: 4em;
    }


.SchoolPageWrapA {
        text-align: justify;
        padding: 0 0 0em 0;
    }
.SchoolTopCnt {
	width: 100%;
    max-width: 960px;
	padding: 5em 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.SchoolTopCnt h2 {
        font-size: 2rem;
        font-weight: normal;
        margin-bottom: 1em;
    }
.SchoolTopCnt p {
        width: 80%;
        margin-bottom: 2em;
        font-size: 1.1rem;
    }
.CourseSetWrap {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	justify-content: center;
}
    
    
.CourseSet {
        background-color: #ec2c2c;
        color: #FFFFFF;
        box-shadow: 15px 15px 2px rgba(0,0,0,0.15);
        background-image: url(../img/Parts25.svg);
        background-repeat: no-repeat;
        margin: 2%;
        background-position: right 3% top 15%;
        width: 25%;
        padding: 2%;
        background-size: 25% auto;
    }
.CourseSet h3 {
        font-size: 2.2em;
    }
.CourseSet h4 {
        font-size: 1.6rem;
        margin-top: 0.75em;
        margin-bottom: 0.75em;
    }
.CourseSet p {
        width: 100%;
        margin: 0;
        font-size: 0.9em;
        text-align: justify;
        line-height: 1.8em;
    }
.CourseSet .SubTitle01 {
        font-size: 1rem;
    }
.CourseSet-B {
	background-color: #a50000;
}
.CourseSet-C {
	background-color: #FFFFFF;
	color: #a50000;
	box-shadow: 15px 15px 2px rgba(0,0,0,0.15);
	background-image: url(../img/Parts25.svg);
	background-repeat: no-repeat;
	margin: 2%;
	background-position: right 3% top 15%;
	width: 25%;
	float: left;
	padding: 2%;
	background-size: 25% auto;
	position: relative;
    border: 2px #a50000 solid;
    }

    
    
    
    
.SchoolTopCntImg {
	margin-top: 2em;
}

.CourseSet2Wrap {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	justify-content: center;
}
.CourseSet2 {
        margin: 2%;
        width: 42%;
        padding-top: 2%;
        padding-right: 2%;
        padding-left: 2%;
        padding-bottom: 2%;
    }
.CourseSet2 h3 {
        font-size: clamp(0.6562rem, 2.8vw, 2.24rem);
    }
.CourseSet2 p {
        font-size: clamp(0.2812rem, 1.2vw, 0.96rem);
    }
.CourseSet2 .SubTitle01 {
        font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
    }
.CourseSet3 {
        top: calc(50% - 200px / 2);
        width: -webkit-calc( 100% / 3 - 4% );
        width: -moz-calc( 100% / 3 - 4% );
        width: calc( 100% / 3 - 4% );
        padding-top: 15%;
        padding-right: 2%;
        padding-left: 2%;
        padding-bottom: 2%;
        box-sizing: border-box;
    }
.CourseSet3 h3 {
        font-size: clamp(0.6094rem, 2.6vw, 2.08rem);
    }
.CourseSet3 p {
        font-size: clamp(0.2812rem, 1.2vw, 0.96rem);
    }

.CourseSet4 {
        top: calc(50% - 200px / 2);
        width: -webkit-calc( 100% / 3 - 4% );
        width: -moz-calc( 100% / 3 - 4% );
        width: calc( 100% / 3 - 4% );
        box-sizing: border-box;
    }
.CourseSet4 h3 {
        font-size: clamp(0.4219rem, 1.8vw, 1.44rem);
    }
.CourseSet4 p {
        font-size: clamp(0.2812rem, 1.2vw, 0.96rem);
    }
.CourseSet4 .SubTitle01 {
        margin-bottom: 1em;
        font-size: clamp(0.3047rem, 1.3vw, 1.04rem);
        margin-top: 0.5em;
        padding-bottom: 5%;
        margin-left: 0px;
        margin-right: 0px;
    }
.PageCnt02 .SubTitle02 {
        font-size: clamp(0.5859rem, 2.5vw, 2rem);
    }
.PageCnt02 .SubTitle03 {
        font-size: clamp(1.1719rem, 5vw, 4rem);
    }
.PageCnt02 .SubTitle04 {
        font-size: clamp(0.375rem, 1.6vw, 1.28rem);
    }
.SchoolTopBnrWrap {
        max-width: 1280px;
    }

.SchoolPageWrapA h1 {
        background: -moz-linear-gradient(50% 100% 90deg,rgba(66, 66, 66, 1) 0%,rgba(10, 10, 10, 1) 15%,rgba(40, 40, 40, 1) 85%,rgba(66, 66, 66, 1) 100%);
        background: -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        background: -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(66, 66, 66, 1) ),color-stop(0.15,rgba(10, 10, 10, 1) ),color-stop(0.85,rgba(40, 40, 40, 1) ),color-stop(1,rgba(66, 66, 66, 1) ));
        background: -o-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        background: -ms-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        background: linear-gradient(0deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
    }


.SchoolTopBnrCnt {
        height: 25svh;
        width: -webkit-calc(100%/3);
        width: -moz-calc(100%/3);
        width: calc(100%/3);
    }
.SchoolTopBnrCnt p {
        font-size: 3rem;
    }
.SchoolTopBnrCnt h3 {
        font-size: 1.3rem;
    }
.SchoolTopBnrCntGrad {
        background: -moz-linear-gradient(50% 0% -90deg,rgba(0, 0, 0, 0.4) 0%,rgba(0, 0, 0, 0.8) 80%);
        background: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
        background: -webkit-gradient(linear,50% 0% ,50% 100% ,color-stop(0,rgba(0, 0, 0, 0.4) ),color-stop(0.8,rgba(0, 0, 0, 0.8) ));
        background: -o-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
        background: -ms-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    }
.SchoolTopBnrCntGrad:hover {
        background: -moz-linear-gradient(50% 0% -90deg,rgba(0, 0, 0, 0.4) 0%,rgba(0, 0, 0, 0.8) 80%);
        background: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
        background: -webkit-gradient(linear,50% 0% ,50% 100% ,color-stop(0,rgba(0, 0, 0, 0.4) ),color-stop(0.8,rgba(0, 0, 0, 0.8) ));
        background: -o-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
        background: -ms-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    }


.FaqPageWrap {
        padding-bottom: 5em;
    }
.FaqCntSet {
        width: 80%;
        max-width: 960px;
        margin-top: 4em;
    }
.FaqCntSet h2 {
        font-size: 2.2rem;
    }

.FaqCnt {
        width: 80%;
        padding: 5%;
    }
.FaqCnt h3 {
        font-size: 1.6rem;
        margin-bottom: 0.5em;
    }
.FaqCnt h3:before {
        font-size: 1.6rem;
    }
.FaqCnt p {
        margin-bottom: 4em;
    }

.FaqCnt p:before {
        font-size: 1.6rem;
    }


.PhiloPageWrap {
        padding-bottom: 15svh;
        background-image: url(../img/Parts09.svg);
        background-size: 25% auto;
        background-position: right 2% top 20%;
        background-repeat: no-repeat;
    }
.PhiloCntSet {
        width: 80%;
        max-width: 960px;
        padding-top: 4em;
    }
.PhiloCntSet h1 {
        font-size: 2.2rem;
        font-weight: normal;
        background: -moz-linear-gradient(50% 100% 90deg,rgba(66, 66, 66, 1) 0%,rgba(10, 10, 10, 1) 15%,rgba(40, 40, 40, 1) 85%,rgba(66, 66, 66, 1) 100%);
        background: -webkit-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        background: -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(66, 66, 66, 1) ),color-stop(0.15,rgba(10, 10, 10, 1) ),color-stop(0.85,rgba(40, 40, 40, 1) ),color-stop(1,rgba(66, 66, 66, 1) ));
        background: -o-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        background: -ms-linear-gradient(90deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#424242', endColorstr='#424242' ,GradientType=0)";
        background: linear-gradient(0deg, rgba(66, 66, 66, 1) 0%, rgba(10, 10, 10, 1) 15%, rgba(40, 40, 40, 1) 85%, rgba(66, 66, 66, 1) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#424242',endColorstr='#424242' , GradientType=0);
        padding-left: 12%;
        padding-top: 2%;
        padding-bottom: 2%;
        padding-right: 2%;
    }
.PhiloCntSet h1:before {
	content: "";
	position: absolute;
	width: 10%;
	height: 100%;
	top: 0px;
	left: 0px;
	background-color: rgba(207,0,14,1.00);
	background-image: url(../img/Parts08.svg);
	background-repeat: no-repeat;
	background-size: 80% auto;
	background-position: center center;
}
.PhiloCntSet h2 {
        font-weight: normal;
        font-size: 2rem;
        margin: 1em auto;
    }
.PhiloCntSet p {
	line-height: 2.2em;
}
.PhiloCntSet .PageCntColumn2 {
        width: 80%;
        margin-bottom: 5em;
    }
ul.PhiloCntList {
        display: table;
        list-style-position: inside;
        padding: 1em;
        margin: 0 auto 2em auto;
    }
.PageCntColumn1 .PhiloCntList li {
    line-height: 2em;
}


.PageHeader {
        padding-top: 7em;
        padding-bottom: 7em;
        background-repeat: repeat-x;
    }

.PageHeaderTitle {
        top: calc(50% + 25px);
    }
.PageHeader h1 {
        font-size: 3.1rem;
    }
.PageHeader p {
	font-size: 1rem;
	color: rgba(182,156,81,1.00);
}
.PageCntColumn1 {
    column-count: 1;
    width: 600px;
    margin-left: auto;
    margin-right: auto;
}
.PageCntColumn2 {
	column-count: 2;
	column-gap: 2em;
}
.PageCntColumn2b {
        column-count: 2;
        margin-left: 10%;
        margin-right: 10%;
    }


.PageCnt01 {
    color: rgba(255,255,255,1.00);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1em;
    margin: 0 0 2em 0;
    padding: 0 10%;
}
.PageCntParts01 {
        width: calc((100% - 2em)/2);
    }
.PageCntParts01 h3 {
        font-size: 1rem;
    }
.PageCntParts01 h3 .Cat {
        padding-top: 1em;
        font-size: 2.5rem;
    }
.PageCntParts01 ul {
        margin: 5%;
    }
.PageCntParts01 ul li {
        line-height: 1.4em;
        font-size: 0.9rem;
    }

.PageCnt02 {
        width: 80%;
        padding-top: 2svh;
        padding-bottom: 7svh;
    }
.PageCntParts02 {
        width: 21%;
    }
.PageCntParts02 h3 {
        background-size: 35% auto;
        padding-top: 20%;
        padding-bottom: 5%;
        font-size: clamp(0.2812rem, 1.2vw, 0.96rem);
    }
.PageCntParts02 h3 .Cat {
        font-size: clamp(0.7031rem, 3vw, 2.4rem);
    }
.PageCntParts02 p {
        font-size: clamp(0.2695rem, 1.15vw, 0.92rem);
        padding-bottom: 15%;
    }


.PageCnt02 ul li  {
        line-height: 2em;
        padding-left: 2em;
        background-size: auto 80%;
    }
.PageCnt02 .FolwArrow {
        padding-top: 2em;
        padding-bottom: 2em;
    }
.Text01 {
        font-size: 1.1rem;
    }
.Text02 {
        font-size: clamp(0.2109rem, 0.9vw, 0.72rem);
    }
.Text03 {
        font-size: 1.2rem;
    }
.Text04 {
        font-size: 1.4rem;
        margin: 1.5em 0 0.5em 0;
    }
.Text05 {
        font-size: 1.2rem;
    }
.Text06 {
        font-size: 1.8rem;
    }
.Subtitle01 {
        display: block;
        font-size: 2rem;
    }


.Subtitle05 {
    text-align: center;
    font-weight: bold;
    font-size: 1.4rem;
    color: rgba(207,0,14,1.00);
}
p.Subtitle05 {
        font-weight: bold;
        font-size: 1.4rem;
        color: rgba(207,0,14,1.00);
    }
h3.Subtitle06 {
        font-size: 1.4rem;
        margin-left: 10%;
        margin-right: 10%;
    }
p.Subtitle07 {
        font-size: 1.2rem;
        margin-left: 10%;
        margin-right: 10%;
    }


.FooterCntA {
        display: table;
        width: 100%;
        max-width: 1080px;
    }
#FooterWrap ul {
        margin-top: 3em;
        margin-bottom: 3em;
        width: 18%;
    }
#FooterWrap ul li  {
        font-size: 1.15rem;
    }

#FooterWrap ul li a {
        font-size: 0.85rem;
    }
.FooterCntBSet {
        padding-bottom: 6em;
        padding-top: 4em;
    }
.FooterCntB {
	float: left;
	margin-right: 2.5em;
}
.FooterCntB h3 , .FooterCntC h3{
        font-size: 1.15rem;
        margin-bottom: 0.8em;
    }
.FooterCntBBtn   {
        margin-right: 0.85rem;
    }

.FooterCntBBtn a {
        width: 2.5em;
        height: 2.5em;
    }
.FooterCntBBtn2   {
        margin-right: 0.85rem;
    }
.FooterCntBBtn2 a {
        font-size: 0.95rem;
        padding: 0.85rem;
    }
.FooterCntC {
	float: left;
	margin-right: 0.85rem;
}
.FooterCntBBtn3 a {
        font-size: 1.1rem;
        line-height: 1.6em;
    }
/*ページトップボタン*/


#FooterFloatBtn p a {
        font-size: 1.6rem;
    }

#FooterWrapB {
        padding-bottom: 2em;
    }
#FooterWrapB h1  {
        width: 20%;
        max-width: 300px;
        padding-left: 2em;
        padding-top: 2em;
    }
#FooterWrapB h1 a img {
        width: 100%;
        margin-bottom: 2em;
    }

#FooterWrapB small {
        font-size: 0.9rem;
        padding-bottom: 0px;
        width: 25%;
    }
#FooterWrapB .Powered a {
        right: 0.85rem;
        bottom: 0.85rem;
        color: rgba(255,255,255,0.50);
        font-size: 0.85rem;
    }
	
	
	
	
	


.SupporterWrap {
        margin-bottom: 15svh;
        margin-top: 5svh;
    }.SupporterCntA {
        width: 70%;
    }
    
    
.SupporterCntBSet {
        width: 80%;
        gap: 20px;
    }

.SupporterCntBSet h3 {
        font-size: clamp(0.7031rem, 3vw, 2.4rem);
        width: 100%;
        padding-bottom: 0.5em;
        padding-top: 2em;
    }

.SupporterCntB {
        flex: 1 1 calc(33.33% - 20px);
        min-width: 300px;
    }


    
    
    
    
    
    

.SupporterCntB:hover {
        filter: grayscale(0);
    }
    

.SupporterCntCSet h3 {
        font-size: 3.1rem;
        padding-bottom: 2svh;
    }
.SupporterCntC {
        width: 500px;
        height: 150px;
    }


.TopBnrBCnt {
        width: -webkit-calc(100%/3);
        width: -moz-calc(100%/3);
        width: calc(100%/3);
        height: 25svh;
    }


.TopBnrBCntText {
        left: 30%;
        margin-right: -80%;
        transform: translate(-30%, -50%);
    }
.TopBnrBCntText h3 {
        font-size: clamp(0.7031rem, 3vw, 2.4rem);
    }

.TopBnrBCntText p {
        font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
    }


.TopBnrCWrap {
        padding-top: 2em;
        padding-bottom: 2em;
    }
.TopBnrCCnt {
        width: -webkit-calc(100%/3*2);
        width: calc(100%/3*2);
    }


.TopBnrCCntText h3 {
        font-size: clamp(0.7031rem, 3vw, 2.4rem);
    }
.TopBnrCCntText p {
        font-size: clamp(0.3281rem, 1.4vw, 1.12rem);
    }


.TopNewsWrap {
	background-color: rgba(255,255,255,1.00);
	color: rgba(0,0,0,1.00);
	width: 100%;
	padding-top: 10svh;
	float: left;
	letter-spacing: 0.1em;
	padding-bottom: 10svh;
}
.TopNewsWrap h2 {
        font-size: 3.1rem;
    }
.TopNewsCntSet {
	margin-top: 6svh;
	width: 80%;
	display: table;
	margin-left: auto;
	margin-right: auto;
}
.TopNewsCntL {
        width: 46%;
        float: left;
        margin-left: 2%;
        margin-right: 2%;
    }
.TopNewsCntL img {
	margin-bottom: 1em;
    aspect-ratio: 4 / 4;
    object-fit: cover;
    object-position: center;
    border: 1px solid #dddddd; 
    box-sizing: border-box;
}

.TopNewsCntL .Cate {
	color: #B69C51;
	font-size: 1.2rem;
	font-family: 'milantyperev-r';
	display: table;
	margin-bottom: 0.1em;
    line-height: 1em;
}
.TopNewsCntL-L .Date {
	color: rgba(153,153,153,1.00);
	font-size: 0.9rem;
}
.TopNewsCntL-L {
	float: left;
	width: 46%;
	margin-left: 2%;
	margin-right: 2%;
	text-align: justify;
	margin-bottom: 2svh;
}
.TopNewsCntL-L h3 {
	font-size: 1.2rem;
	line-height: 1.2em;
	letter-spacing: normal;
	font-weight: normal;
	margin-bottom: 0.5em;
	color: rgba(224,7,27,1.00);
}
.TopNewsCntL-R {
    float: left;
    width: 46%;
    text-align: justify;
    margin-right: 2%;
    margin-left: 2%;
    margin-bottom: 0svh;
    line-height: 1.6em;
    font-size: clamp(0.2812rem, 1.2vw, 0.96rem);
    letter-spacing: normal;
    color: rgba(153,153,153,1.00);
}
.TopNewsCntL-R p {
    font-size: 0.9rem;
    text-align: justify;
}
.TopNewsCntR {
        display: table;
        padding-bottom: 0em;
        margin-bottom: 2em;
    }
.TopNewsCntR img {
	width: 50%;
	float: left;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    object-position: center;
    border: 1px solid #dddddd; 
    box-sizing: border-box;
    margin: 0em 1em 0 0;
    }
.TopNewsCntR .Cate {
	float: left;
	color: #B69C51;
	font-size: 1.2rem;
    line-height: 1em;
	font-family: 'milantyperev-r';
}
.TopNewsCntR h3 {
        float: left;
        width: 42%;
        font-size: 1.1rem;
        line-height: 1.2em;
        letter-spacing: normal;
        margin-bottom: 0.25em;
        color: rgba(224,7,27,1.00);
    }
.TopNewsCntR .Date {
	width: 42%;
	float: left;
	color: rgba(153,153,153,1.00);
	font-size: 0.8rem;
	margin-bottom: 0em;
	line-height: 1.6em;
}
.TopNewsCntR p {
	float: left;
	width: 42%;
	margin-bottom: 0px;
	line-height: 1.6em;
	font-size: 0.8rem;
	letter-spacing: normal;
	color: rgba(153,153,153,1.00);
}
.PastNewsLink {
        padding-top: 0.5em;
        padding-right: 1em;
        padding-left: 1em;
        padding-bottom: 0.5em;
        font-size: 0.8rem;
    }
.PastNewsLink:hover {
        padding-top: 0.5em;
        padding-right: 1em;
        padding-left: 1em;
        padding-bottom: 0.5em;
        font-size: 0.8rem;
    }


.TopEventWrap {
        color: rgba(255,255,255,1.00);
        padding-top: 5em;
        padding-bottom: 5em;
    }
.TopEventWrap h2 {
        font-size: 3.1rem;
    }

.TopEventCntSet {
        margin-top: 2em;
        padding: 0 2em;
        max-width: 1280px;
        gap: 2em;
    }
.TopEventCnt {
        width: calc(94%/3);
        padding: 0.5em 0 2em 0;
    }

.TopEventCntImg img {
        aspect-ratio: 41 / 39;
        aspect-ratio: 1 / 1;
        object-position: center;
    }

    
    
.TopEventCntDateWrap {
        padding: 1em;
        margin: 0 1em;
        margin: -4em 0 0 0;
        width: 80%;
    }
.TopEventCntDate ul {
        padding-left: 0.5em;
        padding-right: 0.5em;
    }
.TopEventCntDate ul li {
        margin-right: 1em;
    }
.TopEventCnt h3 {
        font-size: 1.1rem;
        margin-top: 0.4em;
        padding-left: 0.5em;
        padding-right: 0.5em;
    }
.TopEventCnt .TopEventCntDateArea {
        padding-bottom: 0.5em;
        margin-bottom: 0.5em;
        padding-left: 0.5em;
        padding-right: 0.5em;
    }


    
    
    


.EventDateBtn{
        margin: 1.5em auto;
        font-size: 0.9rem;
    }


#FormSetDsgn {
	font-size: 1rem;
	color: #000000;
}

#FormSetDsgn input {
        font-size: 1.4rem;
        padding: 0.25em;
        border-radius: 0.2em;
    }
#FormSetDsgn .require {
        font-size: 0.9rem;
    }
#FormSetDsgn .content {
	font-size: 1.4rem;
    line-height: 1.4em;
    margin-top: 1em;
}
#FormSetDsgn .subject {
    margin-top: 1.5em;
}
#FormSetDsgn form td div textarea {
        font-size: 1.2rem;
    }


#FormSetDsgn form table tbody tr th {
        font-size: 1.6rem;
    }

#FormSetDsgn form table tbody tr td .error {
        font-size: 1rem;
    }


#FormSetDsgn form #confirm-button input {
        font-size: 1.2rem;
    }
#FormSetDsgn form #back-button input {
        font-size: 0.9rem;
    }


#FormSetDsgn .subject1_2 .require {
        font-size: 0.7rem;
    }


	
	


	


.EntryCntBox02 .FormSetDsgn01Cap {
        font-size: 1.1rem;
    }

#FormSetDsgn01 .FormSetCnt .subject p {
        font-size: 1.2rem;
    }

#FormSetDsgn01 .require {
        display: table;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 0.75em;
    }
#FormSetDsgn01 .wpcf7-form-control-wrap    {
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }
#FormSetDsgn01 .wpcf7-list-item    {
        margin-right: 1.5em;
        margin-bottom: 0.25em;
        margin-top: 0.25em;
        float: left;
    }
#FormSetDsgn01 .wpcf7-form-control-wrap label {
    white-space: nowrap;
}


	


.list_arrow_box {
	width: 100%;
	padding-top: 3em;
	padding-bottom: 3em;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.list_arrow_a_l a, .list_arrow_a_r a {
        height: clamp(1.1719rem, 5vw, 4rem);
        width: clamp(1.1719rem, 5vw, 4rem);
    }


.BlogSoloWrap {
        padding-bottom: 5em;
        padding-top: 3em;
    }


.ArticleHeader {
        width: 80%;
    }


.ArticleHeader h1 {
        font-size: 2.2rem;
    }

.ArticleHeaderDate {
        font-size: 0.9rem;
    }
.top_article_wrap {
        max-width: 960px;
        z-index: 200;
        position: relative;
        display: table;
        display: flex;
        flex-direction: column;
        align-items: center;
        align-content: stretch;
    }


#article_cont_block {
        font-size: 0.85em;
    }
.news_right_box {
        width: 30%;
        float: left;
        padding-top: 5%;
        padding-bottom: 5%;
    }
.NewEntry h4 {
        color: rgba(0,0,0,1.00);
        font-size: clamp(0.4688rem, 2vw, 1.6rem);
    }


.NewEntry ul li img {
        width: 30%;
    }
.NewEntry ul li p {
        font-size: clamp(0.2812rem, 1.2vw, 0.96rem);
    }
.NewEntry ul li .nrb_newentry_date {
        font-size: clamp(0.2812rem, 1.2vw, 0.96rem);
        letter-spacing: 0.1em;
    }


/*.NewEntry ul li a:hover:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(224,7,27,1.00);
	-webkit-transition: 0.6s;
	-o-transition: 0.6s;
	transition: 0.6s;
	z-index: 100;
}*/

.prev-article {
        height: 80px;
        width: 70px;
        display: block;
        margin-right: 10px;
        margin-left: 10px;
    }
.prev-article a {
        color: #FFFFFF;
        display: block;
        height: 80px;
        width: 70px;
        float: left;
        margin: 0px;
        padding: 0px;
    }

.next-article {
        height: 80px;
        width: 70px;
        display: block;
        margin-right: 10px;
        margin-left: 10px;
    }
.next-article a {
        display: block;
        height: 80px;
        width: 70px;
    }


.entry-content h1 {
	font-size: 2em;
	line-height: 2em;
}
.entry-content h2 {
        font-size: 1.8em;
    }
.entry-content h3 {
        font-size: 1.6em;
    }
.entry-content h4 {
        font-size: 1.4em;
    }
.entry-content h5 {
        font-size: 1.2em;
    }
.entry-content h6 {
        font-size: 1em;
    }
.entry-content blockquote {
        padding: 20px 55px;
        position: relative;
    }
.entry-content blockquote::before {
        color: rgb(200, 200, 200);
        content: "“";
        font-family: serif;
        font-size: 600%;
        line-height: 1em;
        position: absolute;
    }
.entry-content blockquote::after {
        color: rgb(200, 200, 200);
        content: "”";
        font-family: serif;
        font-size: 600%;
        line-height: 0;
        position: absolute;
        bottom: -16px;
    }


.SiteTitle .BrandLink img {
        height: 64px;
    }
#GmenuWrap ul {
        display: flex;
    }


    

    


.TopBnrWrap {
        height: 21svh;
    }
.TopBnrMenuTitle {
        float: left;
        height: 25svh;
        width: 16%;
        position: relative;
    }
.TopBnrCnt {
        height: 25svh;
        width: 28%;
    }
.TopBnrCnt p {
        font-size: clamp(0.9375rem, 4vw, 3.2rem);
    }
.TopBnrCnt h3 {
        font-size: clamp(0.375rem, 1.6vw, 1.28rem);
    }
.TopBnrCntGrad {
        background: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    }
.TopBnrCntGrad:hover {
        background: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.8) 80%);
    }

.TopBnrCntTitleText {
        position: absolute;
        left: clamp(0.2344rem, 1vw, 0.8rem);
        bottom: clamp(0.2344rem, 1vw, 0.8rem);
        font-size: clamp(0.8203rem, 3.5vw, 2.8rem);
    }
.TopBnrCntTitleText h2 {
        font-size: clamp(0.375rem, 1.6vw, 1.28rem);
    }
    
    
.TopBnrSubsetWrap {
        padding: 1em 0 5em 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
.TopBnrSubset {
	width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.TopBnrSubLink {
        padding: 1em 0;
        width: calc((100% - 3em) /3 );
        font-size: 1.6em;
    }
.TopBnrSubLink .Subtitle {
        font-size: 2rem;
    }


.drawer_Title img {
        width: 10em;
    }
.zdo_drawer_menu * {
        margin: 0;
        padding: 0;
        font: inherit;
        font-family: inherit;
        font-size: 100%;
        font-style: inherit;
        font-weight: inherit;
        -webkit-appearance: none;
        -moz-appearance: none;
        width: auto;
    }


.zdo_drawer_menu .zdo_drawer_button {
        padding: 10px;
        width: 72px;
        top: 8px;
        right: 20px;
    }
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar {
	width: 49px;
}


.zdo_drawer_menu .zdo_drawer_bar {
        margin-top: 10px;
        margin-right: 0;
        margin-left: 0;
        margin-bottom: 10px;
    }
.zdo_drawer_menu .zdo_drawer_text {
        font-size: 0.7rem;
    }
.zdo_drawer_menu .zdo_drawer_close {
        letter-spacing: 0.08em;
    }

.zdo_drawer_menu .zdo_drawer_nav_wrapper {
        width: 30%;
    }


/*+++ Default Navigation CSS +++*/
.zdo_drawer_menu .zdo_drawer_nav {
    padding-top: 112px;
    padding-right: 24px;
    padding-left: 24px;
    padding-bottom: 112px;
}

/*+++ Default Button Color +++*/


.zdo_drawer_menu .zdo_drawer_button.active {
        -webkit-box-shadow: 0px 0px 0;
    }


.side-menu__ul {
        width: 100%;
        font-size: 0.9rem;
        padding-top: 3em;
        padding-bottom: 5em;
    }


.side-menu__ul .drawer_SubList  > li > a {
        padding-left: 2.5em;
        color: #ffffff;
        font-size: 0.85rem;
    }
.side-menu__ul .drawer_SubList {
	margin-bottom: 1.5em;
}


    
    
.side-menu__ul > li > h2:hover, .side-menu__ul > li a:hover {
        color: #ffffff;
    }
    


    
.drawer_Space {
    margin-bottom: 10em;
}
    
    
    
    

  
    
    
    
}


	
@media (min-width: 768px){

    
    
    
    

.SliderImg {
    color: rgba(0,0,0,1.00);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    display: block;
    left: 0%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.SliderTitleBox {
	font-size: 1.6em;
	color: #FFFFFF;
	text-shadow: 0px 0px 5px rgba(0,0,0,0.50);
	font-weight: bold;
	z-index: 550;
	visibility: hidden;
}
.SliderImg .SliderTitleBox h2 {
    font-size: 0.9em;
    margin-top: 10px;
    margin-bottom: 10px;
    background-color: rgba(147,137,134,1.00);
    padding-top: 0.25em;
    padding-right: 2em;
    padding-left: 2em;
    padding-bottom: 0.25em;
    font-weight: normal;
}
.SliderLogo {
	z-index: 500;
	top: 0px;
	right: 0px;
	position: absolute;
}
.SliderImgBG {
	background : -moz-linear-gradient(0% 50% 0deg,rgba(0, 131, 207, 0.2) 0%,rgba(0, 131, 207, 0.1) 100%);
	background : -webkit-linear-gradient(0deg, rgba(0, 131, 207, 0.2) 0%, rgba(0, 131, 207, 0.1) 100%);
	background : -webkit-gradient(linear,0% 50% ,100% 50% ,color-stop(0,rgba(0, 131, 207, 0.2) ),color-stop(1,rgba(0, 131, 207, 0.1) ));
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0px;
	display: block;
	top: 0px;
}
.SliderTitleBox p a {
	font-size: 0.7em;
	padding-top: 0.5em;
	padding-right: 1.5em;
	padding-left: 1.5em;
	padding-bottom: 0.5em;
	color: rgba(255,255,255,1.00);
	border-radius: 10px;
	background-color: rgba(0,0,0,0.30);
	margin-bottom: 0px;
}
.SliderTitleBox p a:hover  {
	font-size: 0.7em;
	padding-top: 0.5em;
	padding-right: 1.5em;
	padding-left: 1.5em;
	padding-bottom: 0.5em;
	color: rgba(255,255,255,1.00);
	border-radius: 10px;
	background-color: rgba(0,0,0,0.50);
	margin-bottom: 0px;
}
#header .slidercatchimg {
	position: absolute;
	z-index: 200;
	left: 50px;
	top: 50px;
}
.TopSliderFullimg {
	position: absolute;
	left: 0px;
	top: 100px;
	width: 100%;
	z-index: 500;
}
#SliderTitle {
	background-color: rgba(33,112,187,0.80);
	position: absolute;
	z-index: 600;
	left: -50%;
	right: -50%;
	height: 200px;
	width: 50%;
}
.TopSliderCatch {
	position: absolute;
	z-index: 100;
	color: rgba(255,255,255,1);
	text-align: left;
	left: 1em;
	bottom: 1em;
	display: flex;
	flex-direction: column;
	gap: 0.4em;
}

.TopSliderCatch p {
	background-color: rgba(205,0,14,1);
	padding: 0.65em 0.5em;
	line-height: 1em;
	text-align: left;
	font-size: 1.3rem;
	margin: 0;
}

    
}


#AAAAAA____PC_SP共通パーツ____AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA {
}

#AAAAAA____common____AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA {
}
.TextHide {
    display: none;
}
.LinkRight {
    border-bottom: 1px solid rgba(0,0,0,1.00);
    display: block;
    float: right;
    line-height: 1.2em;
    font-size: 0.8rem;
    margin-top: 1em;
}
#PageTopSpacer {
	height: 18svh;
	background-image: url(../img/Parts12.png);
	background-position: center top;
}
#PageTopSpacer2 {
	height: 13svh;
	background-image: url(../img/Parts12.png);
	background-position: center top;
	padding-top: 10svh;
}
#PageTopSpacer2 h2 {
	font-family: 'Kranky', cursive;
	font-size: clamp(0.7031rem, 3vw, 2.4rem);
	font-weight: normal;
	text-align: center;
	display: table;
	margin-left: auto;
	margin-right: auto;
	border-bottom: 2px solid rgba(194,194,194,1.00);
	padding-bottom: 0.1em;
	margin-bottom: 0.75em;
	color: #000000;
}
/* fuwafuwaアニメーション */
.fuwafuwa {
	-webkit-animation-name:fuwafuwa;
	-webkit-animation-duration:2s;
	-webkit-animation-iteration-count:infinite;
	-webkit-animation-timing-function:ease;
	
	-moz-animation-name:fuwafuwa;
	-moz-animation-duration:2s;
	-moz-animation-iteration-count:infinite;
	-moz-animation-timing-function:ease;
}
@-webkit-keyframes fuwafuwa {
	0% {-webkit-transform:translate(0, 0);}
	50% {-webkit-transform:translate(0px, 5px);}
	100% {-webkit-transform:translate(0, 0);}
}
@-moz-keyframes fuwafuwa {
	0% {-moz-transform:translate(0, 0);}
	50% {-moz-transform:translate(0px, 5px);}
	100% {-moz-transform:translate(0, 0);}
}


/* colorchangeアニメーション */
.colorchange01 {
	-webkit-animation-name:colorchange;
	-webkit-animation-duration:3s;
	-webkit-animation-iteration-count:infinite;
	-webkit-animation-timing-function:ease;
	
	-moz-animation-name:colorchange;
	-moz-animation-duration:3s;
	-moz-animation-iteration-count:infinite;
	-moz-animation-timing-function:ease;
	
	-ms-animation-name:colorchange;
	-ms-animation-duration:3s;
	-ms-animation-iteration-count:infinite;
	-ms-animation-timing-function:ease;
}
@-webkit-keyframes colorchange {
 0% { background: rgba(255, 221, 0, 0.0); }
  50% { background: rgba(255, 221, 0, 0.3); }
  100% { background: rgba(255, 221, 0, 0.0); }
  }
@-moz-keyframes colorchange {
 0% { background: rgba(255, 221, 0, 0.0); }
  50% { background: rgba(255, 221, 0, 0.3); }
  100% { background: rgba(255, 221, 0, 0.0); }
  }
@-ms-keyframes colorchange {
 0% { background: rgba(255, 221, 0, 0.0); }
  50% { background: rgba(255, 221, 0, 0.3); }
  100% { background: rgba(255, 221, 0, 0.0); }
  }
