@charset "utf-8";

/* ---------------------------------------------------------------------------------
base */

*{}

@media(max-width:750px){
	
body{ font-size:140%; }

}

li img{ width:100%;}

img{ vertical-align:bottom;}

a:link{ color:#870043;text-decoration: none;}
a:visited{ color:#870043;text-decoration: none;}
a:active{ color:#ee6fb2;text-decoration:underline;}
a:hover{ color:#ff0000;text-decoration:none;}

#gHeader *{transition: all  0.5s ease;}

body{ background:#fff ; height:100%; width:100%; }

ul li a{transition: all  0.4s ease;}
ul li a:hover{opacity: 0.4;}

@media(max-width:750px){

body{  }
 
}

p{ line-height: 1.8em;}

.hrTac img{ width:100%;}
img{ width:100%;}

body#subPage{ position:relative;}
.backgroundFix{ position:fixed; width: 100%; height: 100%;background:url(/common/images/mainBackground.jpg) no-repeat center top;
background-size: cover;}


@media(max-width:750px){
    .backgroundFix{ position:fixed; width: 100%; height: 100%;background:url(/common/images/mainBackground_sp.jpg) no-repeat center top;
        background-size: cover;}
        
}


.txtGrad{
    background-image: -moz-linear-gradient( 0deg, rgba(128,0,63,0.99608) 0%, rgb(192,4,99) 71%, rgb(202,0,100) 100%);
    background-image: -webkit-linear-gradient( 0deg, rgba(128,0,63,0.99608) 0%, rgb(192,4,99) 71%, rgb(202,0,100) 100%);
    background-image: -ms-linear-gradient( 0deg, rgba(128,0,63,0.99608) 0%, rgb(192,4,99) 71%, rgb(202,0,100) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


/* ---------------------------------------------------------------------------------
contents */

#contents{ }
#contents_inner{padding: 0; margin-bottom: 100px; margin-top: 80px;}

#subPage #contents_inner{padding:0 0 0 0;}


@media(max-width:750px){
#contents_inner{padding: 0; margin-bottom: 100px; margin-top: 120px;}

    
}


.pageHeader{ text-align: center;
padding:60px 0 80px 0;
font-weight: 200;}
.pageHeader h1{ font-weight: 300; font-size: 40px; letter-spacing: 0.08em;}


/* ---------------------------------------------------------------------------------
Btn */


@media(max-width:750px){

    
}

a.dBtn{ 
    display: block;
    position:relative;
    color: #fff;
    text-align: center;
    border-left:5px solid;
    border-image:linear-gradient(to top, rgb(128,0,63), rgb(192,4,99) 71%, rgb(202,0,100) 100%) 1;
    transition: all 0.3s ease-in-out;
}

a.dBtn span{
    display: block;
    padding:  0;
    position: relative;
    z-index: 0;
    height: 50px;
    
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}


a.dBtn span:before{
    content:"";
    width:100%;
    height:100%;
    position:absolute;
    z-index:-1;
    left:0;
    transition:0.8s;
    background-image: -moz-linear-gradient( 0deg, rgba(128,0,63,0.99608) 0%, rgb(192,4,99) 71%, rgb(202,0,100) 100%);
    background-image: -webkit-linear-gradient( 0deg, rgba(128,0,63,0.99608) 0%, rgb(192,4,99) 71%, rgb(202,0,100) 100%);
    background-image: -ms-linear-gradient( 0deg, rgba(128,0,63,0.99608) 0%, rgb(192,4,99) 71%, rgb(202,0,100) 100%);
  }
  
  a.dBtn span:after{
    content:"";
    width:100%;
    height:100%;
    position:absolute;
    z-index:-2;
    left:0;
    background-image: -moz-linear-gradient( 180deg, rgba(128,0,63,0.99608) 0%, rgb(192,4,99) 71%, rgb(202,0,100) 100%);
    background-image: -webkit-linear-gradient( 180deg, rgba(128,0,63,0.99608) 0%, rgb(192,4,99) 71%, rgb(202,0,100) 100%);
    background-image: -ms-linear-gradient( 180deg, rgba(128,0,63,0.99608) 0%, rgb(192,4,99) 71%, rgb(202,0,100) 100%);
  }
  
  a.dBtn span:hover:before{
    opacity:0;
  }




a.dBtn:after{
    content: "";
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    width: 13px; 
    height: 13px; 
    border-top: 1px solid #fff; 
    border-right: 1px solid #fff;
    transform: rotate(45deg);

}

a.dBtn:hover{ 
    display: block;
    position:relative;
}



.linkBtn{}
.linkBtn a{ 
  display: flex;
  justify-content: center;
  align-items: center;
position: relative;
 width: 300px; padding:10px;text-align: center; background: #eee; color: #333; font-size: 14px;}


.linkBtn a:before,
.linkBtn a:after {
  position: absolute;
  top: 60%;
  right: 22px;
  height: 1px;
  background: #343434;
  content: '';
}

.linkBtn a:before {
  width: 30px;
  transform: translateY(-50%);
}

.linkBtn a:after {
  width: 8px;
  transform: translateY(-50%) rotate(45deg);
  transform-origin: right center;
}

@media(max-width:750px){


.linkBtn a{ 
  display: flex;
  justify-content: center;
  align-items: center;
position: relative;
 width: auto; padding:30px;text-align: center; background: #eee; color: #333; font-size: 24px;}


.linkBtn a:before,
.linkBtn a:after {
  position: absolute;
  top: 60%;
  right: 22px;
  height: 1px;
  background: #343434;
  content: '';
}

.linkBtn a:before {
  width: 30px;
  transform: translateY(-50%);
}

.linkBtn a:after {
  width: 8px;
  transform: translateY(-50%) rotate(45deg);
  transform-origin: right center;
}

}


/* ---------------------------------------------------------------------------------
btn */



@media(max-width:750px){



    a.dBtn{ 

        border-left:10px solid;
        border-image:linear-gradient(to top, rgb(128,0,63), rgb(192,4,99) 71%, rgb(202,0,100) 100%) 1;
        transition: all 0.3s ease-in-out;
    }

    a.dBtn span{
        height: 100px;
        font-size: 30px;
    }


    a.dBtn:after{
        content: "";
        margin: auto;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 30px;
        width: 20px; 
        height: 20px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        transform: rotate(45deg);
    }
    
    
}





@media(max-width:750px){


}





/* ---------------------------------------------------------------------------------
top concept */

.topSection{}
.topSection header{ border-top: 2px solid #333;padding: 30px 0 30px;}
.topSection header h2{ letter-spacing: 0.07em;}

.topSection{ width: auto; max-width: 1000px; margin: 0 auto;}

.topSection ul{
    width: auto;
    margin: 0 auto 100px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 30px;
    row-gap: 30px;
}

#top_TOPICS ul li{
overflow: hidden;}

#top_TOPICS ul li .imgArea{margin-bottom: 5px;}
#top_TOPICS ul li p.date{ font-size: 13px; letter-spacing: 0.06em;}
#top_TOPICS ul li h3{ font-size: 16px;}
#top_TOPICS ul li p.text{ font-size: 12px;}
#top_TOPICS ul li .kaisaiDate{ background: #eee;padding: 10px;display: table;width: 100%;margin-top: 10px;}
#top_TOPICS ul li .kaisaiDate h4{ font-size: 13px; display: table-cell; width: 27%;padding: 5px 0 5px 5px;}
#top_TOPICS ul li .kaisaiDate p{ font-size:14px; display: table-cell;padding: 5px 5px 5px 0;}



@media(max-width:750px){

.topSection{padding: 0 20px;}

#top_TOPICS.topSection ul{

    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
    row-gap: 20px;
}

#top_TOPICS ul li {padding: 20px; border: 2px solid #999;border-radius: 10px; }
#top_TOPICS ul li .imgArea{margin-bottom: 5px;}
#top_TOPICS ul li p.date{ font-size: 24px; letter-spacing: 0.06em;}
#top_TOPICS ul li h3{ font-size: 26px;}
#top_TOPICS ul li p.text{ font-size: 20px;}
#top_TOPICS ul li .kaisaiDate{ padding: 10px;display: table;width: 100%;margin-top: 10px;}
#top_TOPICS ul li .kaisaiDate h4{ font-size: 20px; display: table-cell; width: 33%;padding: 5px 0 5px 5px;}
#top_TOPICS ul li .kaisaiDate p{ font-size:24px; display: table-cell;padding: 5px 5px 5px 0; line-height: 1.4em;}

}





#top_Gallery ul li{
width: 100%; overflow: hidden;}

#top_Gallery ul li a{
  width: 100%;
  padding-top: 100%;
overflow: hidden;
display: block;
background-position: center center;
}
#top_Gallery ul li a{background-size: cover;
transform: scale(1.3);}

#top_Gallery ul li a.msg{ transform: scale(1);}


@media(max-width:750px){
	

}



.sectionBody{margin-bottom: 50px;}

/* ---------------------------------------------------------------------------------
onebox */


.cmbBody{ width: 700px; margin: 0 auto;}
.cmbBody h2{ font-size: 22px; font-weight: 400; margin-bottom: 25px;}
.cmbBody p{ font-size:14px; margin-bottom: 50px;}

.wideBody{ width: auto; margin: 0 50px;}
.wideBody h2{ text-align: center; font-weight: 800; font-size: 22px; margin-bottom: 50px;}
.wideBody p{}

.sanbonBashira{
    width: auto;
    margin: 0 auto 100px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 30px;
    row-gap: 30px;
}
.sanbonBashira .imgBox{}
.sanbonBashira p{padding: 20px; font-size: 14px;}

@media(max-width:750px){
	
.cmbBody{ width: auto; margin: 0 30px;}
.cmbBody h2{ font-size: 30px; font-weight: 400; margin-bottom: 25px;}
.cmbBody p{ font-size:24px; margin-bottom: 50px;}

.wideBody{ width: auto; margin: 0 30px;}
.wideBody h2{ text-align: center; font-weight: 800; font-size: 32px; margin-bottom: 50px;}
.wideBody p{}

.sanbonBashira{
    width: auto;
    margin: 0 auto 50px;
    display: block;
    grid-template-columns:auto;
    column-gap: 0;
    row-gap: 0;
}
.sanbonBashira li{ display: table; margin-bottom: 50px;}
.sanbonBashira .imgBox{ display: table-cell; width: 250px; vertical-align: top;}
.sanbonBashira p{display:table-cell;padding: 0 0 0 20px; font-size: 24px; vertical-align: top;}
}





/* ---------------------------------------------------------------------------------
yoko */

.commonArea{ width: 700px; margin: 0 auto;}
.commonArea h3{ border-bottom: 1px solid #ccc ;margin-bottom: 1em; padding-bottom: 5px; font-size: 120%; font-weight: normal;}

.commonArea ul{ list-style:circle;}
.commonArea ul li{margin-left: 1em;}

.commonArea ul li h4 + p{margin-left: 1em;}

.commonArea ul li h4{}
.commonArea p{margin-bottom: 0.7em;padding-bottom: 0;}
.commonArea ul li p{margin-bottom: 0.7em;padding-bottom: 0;}

.commonBlock{margin-bottom: 40px;}

.commonArea p{ font-size: 14px;}

@media(max-width:750px){

.commonArea h3{ border-bottom: 1px solid #999 ;margin-bottom: 1em;padding-bottom: 20px; font-size: 160%;}
.commonArea{ width: auto; margin: 0 30px;}
.commonArea ul li h4{ font-size: 110%;}
.commonArea p{ font-size: 22px;}
}




#PARTNERS{}
#PARTNERS .sectionBody{ max-width: 1000px; margin: 0 50px;}
#PARTNERS h3{ text-align: center;margin-bottom: 20px; font-weight: normal;}
#PARTNERS.topSection ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  padding: 0;
  margin: 0 auto 50px;
  list-style: none;}
#PARTNERS li{display: inline-block; }
#PARTNERS li a{ height: 170px;display: inline-block;border: 1px solid #ccc;}
#PARTNERS li a img{ width: auto; height: 100%;}

@media(max-width:750px){

}












/* ---------------------------------------------------------------------------------
common */


.clear{ clear:both;}
.tac{ text-align:center !important;}

@media(min-width:751px){
.sp{ display:none !important;}
} /* Responsive End */

@media(max-width:750px){
.pc{ display:none !important; }
} /* Responsive End */

@media(max-width:750px){
#commonFooter{ display:none !important; }
}

@media(max-width:750px){
#commonFooter{ display:none !important; }
}


@media(max-width:750px){
.tac_pc{ text-align:left !important;}
.tac_sp{ text-align:center !important;}
}

@media(min-width:751px){
.tac_pc{ text-align:center !important;}
.tac_sp{ text-align:left !important;}
}
