@charset "utf-8";
/* CSS Document */

.pagecampaign_area {
    width: 100%;
    height: 0;
    position: relative;
}
.campaign_info {
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 2rem;
    text-align: center;
    font-weight: bold;
    color: #fff;
    text-shadow: -4px 3px 0 #fff, -8px 6px 0 #000;
}

.sections {
    width: 100%;
}
.sections,
#section1 {
        background-color: transparent;
}
.live_back_color{
	background-color: black;
	padding: 10px ;
    margin: 10px auto;
	width: 100%;
	box-sizing: border-box;
}
.repeat_item{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin: 20px 0 40px;
}
.title_3{
	width: 100%;
	text-align: center;
        padding: 10px;
        font-size: 1.5rem;
        color:#26174a;
}
.live_text {
    font-size: 1rem;
    line-height: 1.2rem;
    font-weight: bold;
}
.live_text_small {
    font-size: 0.7rem;
}
.live_text_sp {
    display: none;
}
.live_item{
}
.link_canpaign{
    position: absolute;
    top: 65%;
    left: 1%;
    width:100%;
    height:4rem;
}
.link_canpaign img{
    width: 28%;
}
.link_canpaign a{
    display:block;
}
.live_text img{
    width:90%;
}
.item_circle{
	width: 315px;
	height: 315px;
	border: 5px solid #d9e021;
	border-radius: 158px;
	position: relative;
	overflow: hidden;
}
.item_img{
/*	background-color: antiquewhite;*/
}

.item_img img{
	width: 100%;
	height: 100%;
	object-fit:cover;
}
.item_schedule{
	color: white;
	background-color: black;
	position: absolute;
	width: 315px;
	height: 130px;
	top: 200px;
	display: flex;
	justify-content:center;
	align-items: center;
}

.flex_waku{
    display: flex;
    flex-direction: row;  
    flex-wrap: wrap;  
    justify-content: center;
    /*align-items: center;*/
    align-items: baseline;
    margin-top: 8px;
}

.flex_waku_item{
    width:50%;
    flex-wrap: wrap;  
    display: flex;
    align-items: center;
    justify-content: center;    
     padding: 10px 0 40px 0;
     
}
.flex_campaign_logo{
    width:30%;
    flex-wrap: wrap;  
    display: flex;
    align-items: end;
    justify-content: center;    
    padding: 0;
}
.flex_campaign_logo img{
    width:90%;
}
.flex_campaign{
    width:55%;
    flex-wrap: wrap;  
    display: flex;
    align-items: center;
    justify-content: center;    
    padding: 10px 0 40px 0; 
}
.flex_campaign_title img{
    text-align: center;
}
.flex_campaign_text{
    text-align: center;
    font-size: 1.1rem;
    font-weight: 900;
    line-height: 1.3rem;
    color: white;
    /*letter-spacing:0.4em;*/
}

/*.flex_waku_item:first-of-type {
  flex-grow: 1;
}
.flex_waku_item:nth-of-type(2) {
  flex-grow: 1;
}*/
.flex_waku-item_title {
    width:100%;
    text-align: center;    
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 1; 
}
.flex_waku-item_time {
    width:100%;
    text-align: center;
    padding-top: 6px;
    font-size: 1.2rem;
    border-bottom: 0px;    
}
.flex_waku-item_img {
    width:100%;
    text-align: center;
    padding-top: 6px;
    border-bottom: 0px;    
}
.flex_waku-item_m {
    width:100%;
    flex-wrap: wrap;  
    display: flex;
    align-items: center;
    justify-content: center; 
}
a.btn{
  width:45%;
  display:block;
  margin: 5px;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  position: relative;

  padding: 0.5rem 2rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  border-radius: 0.5rem;
}
.btn--orange,
a.btn--orange {
  color: #fff;
  background-color: #e2473b;
}
/* リンク有効時コメント外す
.btn--orange:hover,
a.btn--orange:hover {
  color: #fff;
  background: #fd948d;
}*/
a.btn--radius {
   border-radius: 100vh;
}    

a.btn--no_link{
    background-color: grey;
}



.flex {
    display: flex;
}
.flex-item {
    display: flex;
    align-items: center;
    flex: 1;
    padding: 20px 0;
/*    margin: 0 5px;*/
    font-size: 1.5rem;
    font-weight: 900;
    color: #ffffff;
    justify-content: center;
}
.flex .flex-item:first-of-type {
  flex-grow: 2;
}
.flex .flex-item:nth-of-type(2) {
  flex-grow: 0;
}
.flex .flex-item:last-of-type {
  flex-grow: 1;
}
.item_circle_small{
    width: 270px;
    height: 270px;
    /*border: 6px solid white;*/
    border: 6px solid #ffeb3b;
    border-radius: 158px;
    position: relative;
    overflow: hidden;
}
/* 円３つ */
.item_circle_small_3{
    width: 240px;
    height: 240px;
    /*border: 6px solid white;*/
    border: 6px solid #ffc9db;
    border-radius: 140px;
    position: relative;
    overflow: hidden;
}
/* 円4つ */
.item_circle_small_4{
    width: 180px;
    height: 180px;
    /*border: 6px solid white;*/
    border: 6px solid #ffc9db;
    border-radius: 100px;
    position: relative;
    overflow: hidden;
}
.item_circle_small_x{
    width: 36%;
    height: 100%;
    /*border: 6px solid white;*/
    border: 6px solid #ffc9db;
    border-radius: 100px;
    /*position: relative;*/
    overflow: hidden;
}

.item_hb{
    border: 6px solid #fc270b;
}

.flex-item_title {
    display: flex;
    align-items: center;
    flex: 1;
    padding: 0px;
    margin: 0 5px;
    justify-content: center;
}
.flex .flex-item_title:first-of-type {
  flex-grow: 2;
}
.flex .flex-item_title:nth-of-type(2) {
  flex-grow: 1;
}

.flex-item_title3 {
    display: flex;
    align-items: center;
    flex: 1;
    padding: 0px;
    margin: 0 5px;
    justify-content: center;
}


.box_title{
    padding-top: 10px;
    font-size: 1.5rem;
    font-weight: bold;
/*    color: #ffffff;*/
    display:flex;
    justify-content:center;
    align-items:center;
    line-height: 1;
    border-bottom: 2px #fff solid;
}
.box_title_3{
    width:33%;
    text-align: center;
    padding: 10px 0px;
    font-size: 1.5rem;
    font-weight: bold;
    display:flex;
    justify-content:center;
    align-items:center;
    line-height: 1.2;
    border-bottom: 2px #fff solid;
}


.box_time{
    padding-top: 6px;
    font-size: 1.4rem;
    border-bottom: 0px;
}
.program{
    box-shadow:1px 1px 6px gray;
    padding:4px;
    margin: 10px auto;
}
.linkspace{
    margin: 0 auto;
    text-align: center;
}
.linkspace img{
    text-align: center;
    max-width: 90%;
    width:200px;
}
.live_campaign{
    display: flex;
    padding: 20px 0;
    background-color: transparent;
    margin: 0 auto;
    margin-top: 20px;    
    text-align: center;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    width:98%;
}
.live_campaign_item,
.live_campaign_item2{
    width:75%;
    padding:10px;
}
.live_campaign_item img{
    width:90%;
}
.live_campaign_item2 img{
    width:70%;
}
.live_campaign_item3{
    width:30%;
    padding:4px;
}
.live_campaign_item3 a{
    display:block;
}
.live_campaign_item3 a:hover{
    opacity: 0.5;
}

.live_campaign img{
    text-align: center;
}
.area-live{
    text-align: center;
    color: #e2473b;
    font-weight: bold;
    font-size: 1.3rem;
}

@media only screen and (max-device-width: 480px){
    .flex_waku{
        flex-wrap: wrap;  

        }
    .flex_waku_item{
        flex-wrap: wrap;  
        align-items: center;
        justify-content: center;   
        width:100%;
    }
    .flex{
        flex-wrap: wrap; 
         justify-content: center;   
    }    
    .item_circle_small_3{
        width: 165px;
        height: 165px;
        /*border: 6px solid white;*/
        border: 6px solid #ffc9db;
        border-radius: 140px;
        position: relative;
        overflow: hidden;
    }  
    
    .live_text_sp {
        display: block;
        font-size: 0.8rem;
        line-height: 0.9rem;
        font-weight: bold;
        text-align: center;
    }
    .link_canpaign {
        display: none;
    }
    .title_3 {
        padding: 5px;
        font-size: 1.2rem;
    }
    .flex_waku-item_title {
        font-size: 1.2rem;
    }  
    .live_campaign{
        width:100%;
    }
    .live_campaign_item, .live_campaign_item2, .live_campaign_item3 {
        width: 99%;
        padding: 10px;
    }
    .live_campaign_item2 img {
        width: 100%;
    }    
    .flex_campaign_logo{
        width:90%;
        margin: 0 10px 10px;
    }    
    .flex_campaign a.btn{
      width:70%;
      margin:0.5rem 0 1rem 0;

    }

}