/*----------------------------------------
　　全体
----------------------------------------*/

* {
    margin: 0;
    padding: 0;
}

body {
    background: #f7d6ea !important;
    /*既存の背景画像を打ち消す為にimportantを付けているので、リニューアル後問題なければはずしても良し*/
    font-size: 16px;
    padding-top: 0;
}

img {
    max-width: 100%;
    height: auto;
}

.wrap {
    width: 100%;
}

/* youtubeアスペクト比 16:9 */

.yt-wrap {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}

.yt-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*iphone実機のみ Twitterタイムラインが横幅を突き抜ける為、対策*/
.twitterBox {
    overflow: hidden;
}

.twitterBox iframe {
    width: calc(100vw - 20px) !important;
}


/*----------------------------------------
　　header
----------------------------------------*/

header {
    width: 100%;
    margin-bottom: 21px;
    padding: 0;
    display: flex;
    align-items: center;
}

header .headerLogo {
    width: 66%;
    margin: 0 auto;
    padding-top: 16px;
    line-height: 42px;
}

header .headerLogo img {
    padding-left: 16px;
}

header .sp-menu {
    padding-right: 16px;
    max-height: 38px;
}

header .sp-menu span {
    font-size: 38px;
    color: #fc8bc5;
    cursor: pointer;
}

/*----------------------------------------
　　.scroll-nav
----------------------------------------*/
.scroll-nav {
    width: 96%;
    margin: 0 auto;
    overflow-x: auto;
    margin-bottom: 8px;
    height: 38px;
}

.scroll-nav>ul {
    width: max-content;
    display: flex;
}

.scroll-nav>ul li a {
    padding: 0 .5em;
}

.scroll-nav>ul li a.active {
    background-color: #ff6ea0;
    color: #FFF;
    border-radius: 30px;
    text-align: center;
    padding: 2px 1.2em;
}


/*----------------------------------------
　　nav
----------------------------------------*/
nav {
    display: none;
    background-color: #fc8bc6;
}

nav>ul li {
    border-bottom: solid 1px #FFF;
}

nav>ul li a {
    line-height: 4em;
    display: block;
    font-family: "M PLUS Rounded 1c";
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    padding-left: 1em;
}

/*----------------------------------------
　　ciaoIndex > topicsArea
----------------------------------------*/

.ciaoIndex .topicsArea {
    padding: 5%;
    background-color: #ffa2c2;
    text-align: center;
    width: calc(100% - 30px);
    margin: 0 auto 16px;
}

.ciaoIndex .topicsArea .tit {
    font-weight: bold;
    font-size: 21px;
    color: #fff;
    letter-spacing: .25em;
    margin-bottom: 10px;
    font-family: "メイリオ";
}

.ciaoIndex .topicsArea .cardBox {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.ciaoIndex .topicsArea .cardBox a:first-child {
    width: 100%;
    height: 220px;
    background-color: #FFF;
    padding: 10px;
    margin-bottom: 16px;
    position: relative;
}

.ciaoIndex .topicsArea .cardBox a:first-child>.card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
}

.ciaoIndex .topicsArea .cardBox a:first-child .card> .cardImgBox{
    width: 180px;
}

.ciaoIndex .topicsArea .cardBox a:first-child>.card .textBox {
    max-width: 10rem;
    margin-left: 8px;
}

.ciaoIndex .topicsArea .cardBox a {
    width: calc(100% / 2 - 4px);
    background-color: #FFF;
    padding: 10px;
    margin-bottom: 16px;
}

.ciaoIndex .topicsArea .cardBox a:last-child {
    display:none;
}

.ciaoIndex .topicsArea .card .cardImgBox{
    overflow: hidden;
    position: relative;
}
.ciaoIndex .topicsArea .card .cardImgBox:before{
    content: '';
    display: block;
    padding-top: calc(180/180*100%);
}
.ciaoIndex .topicsArea .card .cardImgBox>img {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border-radius: 8px;
    margin-bottom: 8px;
    object-fit:cover;
}

.ciaoIndex .topicsArea .card .date {
    font-size: 10px;
    font-family: "メイリオ";
    text-align: left;
    color: #666;
    margin-bottom: 3px;
}

.ciaoIndex .topicsArea .card .text {
    font-size: 12px;
    font-family: "メイリオ";
    text-align: left;
    position: relative;
    line-height: 1.25;
    height: calc(1.25em * 2);
    overflow: hidden;
    background: #FFF;
}

.ciaoIndex .topicsArea .card .text span {
    margin-right: 1em;
}

.ciaoIndex .topicsArea .card .text:before {
    content: "…";
    bottom: 0;
    right: 0;
    position: absolute;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 30%);
    padding-left: 1em;
}

.ciaoIndex .topicsArea .card .text:after {
    content: "";
    width: 100%;
    height: 100%;
    margin-left: -1em;
    position: absolute;
    background: #FFF;
}

.ciaoIndex .topicsArea .topicsAreaLinkBox {
    background: #fff;
    width: 236px;
    margin: 0 auto;
    border-radius: 30px;
    padding: 10px 0 8px;
}

.ciaoIndex .topicsArea .topicsAreaLinkBox a {
    text-decoration: none;
    color: #fc8bc5;
    font-weight: bold;
    letter-spacing: .125em;
}

/*----------------------------------------
　　ciaoIndex > ciaoComiArea
----------------------------------------*/

.ciaoIndex .ciaoComiArea {
    padding: 5%;
    background: linear-gradient(150deg, #d7dcf2, #f1b3d9);
    text-align: center;
    width: calc(100% - 30px);
    margin: 0 auto 16px;
}

.ciaoIndex .ciaoComiArea .tit {
    font-weight: bold;
    font-size: 21px;
    color: #fff;
    letter-spacing: .25em;
    margin-bottom: 10px;
    font-family: "メイリオ";
}

.ciaoIndex .ciaoComiArea .ciaoComi-tit {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 4px;
    letter-spacing: .125em;
}

.ciaoIndex .ciaoComiArea .boardBanner {
    margin-bottom: 16px;
}

.ciaoIndex .ciaoComiArea .ciaoComiBox {
    margin-bottom: 20px;
}

.ciaoIndex .ciaoComiArea .ciaoComiLinkBox {
    background: #fff;
    width: 236px;
    margin: 0 auto;
    border-radius: 30px;
    padding: 10px 0 8px;
}

.ciaoIndex .ciaoComiArea .ciaoComiLinkBox a {
    text-decoration: none;
    color: #fc8bc5;
    font-weight: bold;
    letter-spacing: .125em;
}

.ciaoIndex .ciaoComiArea .ciaoComiLinkBox .material-icons {
    vertical-align: middle;
    font-size: 18px;
}

.ciaoIndex .ciaoComiArea .ciaoComi_rank .tit-rank {
    color: #FFF;
    font-family: "メイリオ";
    font-weight: bold;
    margin-bottom: 8px;
}

.ciaoIndex .ciaoComiArea .ciaoComi_rank .ciaoComi_rankBox {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.ciaoIndex .ciaoComiArea .ciaoComi_rank .ciaoComi_rankThumbnail {
    min-width: 80px;
    margin-right: 10px;
}

.ciaoIndex .ciaoComiArea .ciaoComi_rank .ciaoComi_rankText {
    text-align: left;
    line-height: 1.2;
    width: 100%;
}

.ciaoIndex .ciaoComiArea .ciaoComi_rank .ciaoComi_rankText p {
    font-size: 14px;
    font-family: "メイリオ";
    line-height: 1.5;
}

.ciaoIndex .ciaoComiArea .ciaoComi_rank .ciaoComi_rankText .authorName {
    text-align: right;
    margin-top: 10px;
}


/*----------------------------------------
　　ciaoIndex > ciaoChannelArea
----------------------------------------*/

.ciaoIndex .ciaoChannelArea {
    padding: 5%;
    background: linear-gradient(-30deg, #d8bdf1, #f2b2d8);
    text-align: center;
    width: calc(100% - 30px);
    margin: 0 auto 16px;
}

.ciaoIndex .ciaoChannelArea .tit {
    font-weight: bold;
    font-size: 21px;
    color: #fff;
    letter-spacing: .25em;
    margin-bottom: 10px;
    font-family: "メイリオ";
}

.ciaoIndex .ciaoChannelArea .mov-tit {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 4px;
}

.ciaoIndex .ciaoChannelArea .movBox {
    margin-bottom: 20px;
}

.ciaoIndex .ciaoChannelArea .movLinkBox {
    background: #fff;
    width: 236px;
    margin: 0 auto;
    border-radius: 30px;
    padding: 10px 0 8px;
}

.ciaoIndex .ciaoChannelArea .movLinkBox a {
    text-decoration: none;
    color: #fc8bc5;
    font-weight: bold;
    letter-spacing: .125em;
}

.ciaoIndex .ciaoChannelArea .movLinkBox .material-icons {
    vertical-align: middle;
    font-size: 18px;
}

.ciaoIndex .ciaoChannelArea .mov_rank .tit-rank {
    color: #FFF;
    font-family: "メイリオ";
    font-weight: bold;
    margin-bottom: 8px;
}

.ciaoIndex .ciaoChannelArea .mov_rank .mov_rankBox {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.ciaoIndex .ciaoChannelArea .mov_rank .mov_rankThumbnail {
    min-width: 142px;
    margin-right: 10px;
    position: relative;
}

.ciaoIndex .ciaoChannelArea .mov_rank .mov_rankThumbnail .rankStar {
    position: absolute;
    top: -12px;
    left: -12px;
}

.ciaoIndex .ciaoChannelArea .mov_rank .mov_rankThumbnail .rankStar img {
    width: 40px;
}

.ciaoIndex .ciaoChannelArea .mov_rank .mov_rankText {
    text-align: left;
    line-height: 1.2;
}

.ciaoIndex .ciaoChannelArea .mov_rank .mov_rankText p {
    font-size: 12px;
    font-family: "メイリオ";
    line-height: 1.5;
}



/*----------------------------------------
　　ciaoIndex > featureBox
----------------------------------------*/
.ciaoIndex .featureBox {
    background-color: #5dcea8;
    border-top: solid 2px #FFF;
    border-bottom: solid 2px #FFF;
    box-sizing: border-box;
    text-align: center;
    position: relative;
    padding: 4px 0;
    width: calc(100% - 30px);
    margin: 0 auto 16px;
}

.ciaoIndex .featureBox>p {
    color: #fff;
    position: absolute;
    top: 24px;
    left: 50%;
    transform: translatex(-50%);
    font-family: "メイリオ";
    font-weight: bold;
    width: 100%;
}

.ciaoIndex .featureBox .featureBox-inner {
    background-color: #5dcea8;
    border-top: solid 5px #FFF;
    border-bottom: solid 5px #FFF;
    background-image: radial-gradient(#8ed1bc .8px, transparent 33%),
        radial-gradient(#8ed1bc .8px, transparent 33%);
    background-size: 20px 20px;
    background-position: 0 0, 30px 30px;
    background-repeat: repeat;
    padding: 14% 3% 3% 3%;
}

.ciaoIndex .featureBox .featureBox-inner>p {
    font-family: "Yu Gothic UI";
    font-weight: bold;
}

.ciaoIndex .featureBox .featureBox-inner>p a {
    background-color: #FFF;
    color: #5dcea8;
    padding: 1% 0;
    text-align: center;
    margin-top: 8px;
    display: inline-block;
    border-radius: 18px;
    width: 236px;
    letter-spacing: .125em;
}

/*----------------------------------------
　　ciaoIndex > featureBox
----------------------------------------*/
.ciaoIndex .latestNewsBox {
    background-color: #FC8BC5;
    border-top: solid 2px #FFD7EB;
    border-bottom: solid 2px #FFD7EB;
    box-sizing: border-box;
    text-align: center;
    position: relative;
    padding: 4px 0;
    width: calc(100% - 30px);
    margin: 0 auto;
}

.ciaoIndex .latestNewsBox p {
    color: #fff;
    position: absolute;
    top: 24px;
    left: 50%;
    transform: translatex(-50%);
    font-family: "M PLUS Rounded 1c";
    font-weight: bold;
    width: 100%;
    font-style: italic;
}

.ciaoIndex .latestNewsBox .cmcSlider {
    background-color: #FC8BC5;
    border-top: solid 5px #ffe1f0;
    border-bottom: solid 5px #ffe1f0;
    background-image: radial-gradient(#ffa4d3 .8px, transparent 33%),
        radial-gradient(#ffa4d3 .8px, transparent 33%);
    background-size: 20px 20px;
    background-position: 0 0, 30px 30px;
    background-repeat: repeat;
    padding: 14% 1% 3% 7%;
}

.ciaoIndex .latestNewsBox .cmcSlider ul {
    margin-left: 1px;
}

.ciaoIndex .latestNewsBox .cmcSlider li {
    margin-right: 20px;
}

.ciaoIndex .latestNewsBox .cmcSlider img {
    width: 92px;
    border: 1px solid #DCDCDC;
}


/*----------------------------------------
　　ciaoIndex > footLogoArea
----------------------------------------*/
.ciaoIndex .footLogoArea {
    margin-bottom: 20px;
}

.ciaoIndex .footLogoArea ul {
    list-style-type: none;
    display: flex;
    justify-content: center;
    margin: 40px 0;
}

.ciaoIndex .footLogoArea li {
    margin-right: 30px;
}

.ciaoIndex .footLogoArea li:last-child {
    margin-right: 0;
}

.ciaoIndex .footLogoArea li img {
    max-width: 60px;
}

.ciaoIndex .footLogoArea div {
    text-align: center;
}

.ciaoIndex .footLogoArea div img {
    width: 180px;
}

/*----------------------------------------
　　rightCol
----------------------------------------*/

.rightCol {
    background-color: #fbbbdc;
    padding: 5%;
}

.rightCol .twitterBox .tit, .rightCol .latestInfo .tit {
    color: #fff;
    font-weight: bold;
    letter-spacing: .125em;
    text-align: center;
    line-height: 42px;
    margin-top: 10px;
    font-family: "M PLUS Rounded 1c";
}

.rightCol .latestInfo ul {
    border-top: solid 2px #fc8bc6;
    list-style-type: none;
    margin-bottom: 20px;
}

.rightCol .latestInfo li {
    border-bottom: solid 2px #fc8bc6;
    padding: 14px 2px 10px;
    line-height: 1.2;
    color: #333;
    font-size: 12px;
}

/*----------------------------------------
　　footer
----------------------------------------*/

footer {
    padding: 5%;
    background-color: #fff;
    text-align: center;
    font-size: 12px;
}

footer .abjArea {
    margin-bottom: 16px;
}

footer .abjArea img {
    width: 100px;
    margin-bottom: 16px;
}

footer .abjArea p a {
    color: #a89c9c;
    text-decoration: none;
}

footer ul {
    margin-bottom: 16px;
}

footer ul li {
    list-style: none;
    margin-bottom: 4px;
}

footer .copyRightArea p {
    margin-bottom: 2px;
}