* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

a:link {
    text-decoration: none;
}
a:visited { 
    text-decoration: none;
}
a:hover {
    text-decoration: none;
}
a:active { text-decoration: none; color:#222222; }

a:hover { 
    opacity: 0.6;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    transition: all  0.2s ease-in-out;
}


body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {  margin:0;   padding:0;}fieldset,img {    border:0;}address,caption,cite,code,dfn,th,var { font-style:normal;  font-weight:normal;}ol,ul { list-style:none;
}caption,th {   text-align:left;}h1,h2,h3,h4,h5,h6 {    font-size:100%; font-weight:normal;}q:before,q:after {  content:'';
}abbr,acronym {  border:0;}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

table {  
    border-collapse:collapse;   
    border-spacing:0;
    width: 100%;
}
select,
figure{
    margin: 0;
}
.movie{
    margin: 30px 0;
    width: 100%;
    padding-bottom: 56.25%;
    position: relative;
}
    .movie iframe{
        position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
        border: none;
    }
figure{
    line-height:0;
}
    figcaption.menu-caption{
        display: block;
        width: 100%;
        text-align: right;
        margin-top: 11px;
        line-height: 1.833;
    }
    h3.typesquare_tags br,
    figcaption.menu-caption br{
        display: none;
    }
figure img{
    vertical-align:text-bottom;
}

.signature{
    font-size: 11px;
    text-align: right;
}

strong{
    font-weight: bolder;
}

*html body {overflow-y: auto;} /* IE6 */
*:first-child+html body {overflow-y: auto;} /* IE7 */

ul li{
    list-style: none;
}

img {
    border:0;
}
figure img,
p img,
li img{
    max-width: 100%;
    width: auto; /* for ie 8 */
    height: auto;
    vertical-align:text-bottom;
    display: block;
}


html{
  font-size: 62.5%;
}
body{
    background-color: #e7f4f8;
    border: solid 0px #FFFFFF;
    color: #222222;
    font-size: 1.0rem;
    font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    position: relative;
    -webkit-text-size-adjust: 100%;
    word-spacing:normal !important;
    line-height: 1.75;
}

#header{
    padding: 30px 0;
}

.inner {
    padding: 0 15px;
    width: auto;
    max-width: 980px;
    margin: 0 auto;
}
.inner-full {
    padding: 0 0px;
}

.inner-s {
   max-width: 680px;
}

h1 {
    font-size: 2.0rem;
    font-family: 'M PLUS 1p', "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-weight: 300;
    line-height: 1.2;
    opacity: 0.4;
    text-align: center;
}
    h1 .ja {
        font-size: 2.0rem;
    }

h2 {
    font-size: 3.6rem;
    font-family: 'M PLUS 1p', sans-serif;
    font-weight: 300;
    line-height: 1.2;
}
h3 {
    font-size: 2.4rem;
    font-family: 'M PLUS 1p', sans-serif;
    font-weight: 300;
    line-height: 1.2;
}

h3 {
    font-size: 2.4rem;
    font-family: 'M PLUS 1p', sans-serif;
    font-weight: 300;
    line-height: 1.2;
}

h4 {
    font-size: 1.8rem;
    font-weight: 300;
    line-height: 1.5;
}

.font-h3 {
    font-size: 2.4rem;
    font-weight: 300;
    line-height: 1.2;
}

.ja {
    font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

p {
    font-size: 1.6rem;
    font-weight: 400;
}

p.ja {
    font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    margin: 15px 0;
}
p.en {
    font-family: 'M PLUS 1p', sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
    margin: 15px 0;
}
p.signature {
    text-align: right;
    margin-top: 15px;
}

p a:link,
p a:visited{
    text-decoration: none;
    border-bottom: 1px solid;
    color: #808080;
}
p a:hover {
    border-bottom:0px solid;
}

.text-wrap {
    display: inline-block;
    position: relative;
}

.text-wrap-dots{
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: rgba(255,255,255,1);
    border-radius: 50%;
    display: inline-block;
    width: 14px;
    height: 14px;
}

.text-wrap-dots-s{
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: rgba(255,255,255,1);
    border-radius: 50%;
    display: inline-block;
    width: 8px;
    height: 8px;
}


.period {
    font-family: 'Monda', sans-serif;
    font-weight: 700;
}

.sec {
    padding: 30px 0;
}
.sec-title-faces {
    padding: 30px 0 0;
}
.sec-title-musictoday {
    padding: 0px 0;
}


.sec-info,
.sec-text {
    background-color: #a8d0dc;
    padding: 30px 0;
}

.sec-restart {
    border:0px solid #a8d0dc;
    background-color: #FFFFFF;
    padding:30px 0;
}
.sec-restart p {
    margin-bottom: 2ex;
}

.sec-restart .inner {
}

.sec-header {
    margin-bottom: 30px;
}

.sec-child {
    margin-top: 30px;
}


    .sec-child.sec-child-comment {
        max-width: 680px;
        padding-top: 30px;
    }

    .sec-child-comment-primary {
       padding-top: 0px;
    }

    .sec-child figure {
        display: block;
        line-height: 1.8;
        margin-bottom: 30px;
        font-size: 1.2rem;
    }

    .sec-child figure img {
        display:inline-block;
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: 480px;
    }

.sec-restart-image {
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.sec-restart-image .img-wrap {
    width: 50%;
}

.sec-restart-image .img-wrap img {
    display: block;
    width: 100%;
    height: auto;
}

.sec p{
    color: #808080;
}

.sec-restart p{
    color: #808080;
}

.sec-restart-info p {
    font-size: 1.4rem;
    margin-top: 5px;
}

.sec-restart h4 {
    margin-top: 30px;
    opacity:1;
}

.cal {
    background-color: #a8d0dc;
    border-bottom:1px solid #E8E8E8;
    display: flex;
    flex-wrap: wrap;
    font-family: 'Monda', sans-serif;
    margin: 15px 0px;
}

    .cal li {
        border-top:1px solid #E8E8E8;
        border-right:1px solid #E8E8E8;
        display: block;
        width: 14.2857%;
        position: relative;
    }
        .cal-blank {
            background-color: #E8E8E8;
        }
        .cal .cal-blank .date {
            display: none;
        }
    .cal li .cal-inner {
        width: 100%;
        padding-top: 100%;
    }
    .cal li .date {
        font-size: 2.2rem;
        line-height: 1;
        padding: 5px;
        position: absolute;
        right: 0;
        bottom: 0;
    }
    .dot-faces {
        background-color: #4fadcb;
        border-radius: 3px;
        position: absolute;
        left: 5px;
        top: 5px;
        width: 6px;
        height: 6px;
    }
        .dot-lg-faces {
            background-color: #4fadcb;
            border-radius: 5px;
            display: inline-block;
            width: 10px;
            height: 10px;
        }
    .dot-musictoday {
        background-color: #e7bc0e;
        border-radius: 3px;
        position: absolute;
        right: 5px;
        top: 5px;
        width: 6px;
        height: 6px;
    }
        .dot-lg-musictoday {
            background-color: #e7bc0e;
            border-radius: 5px;
            display: inline-block;
            width: 10px;
            height: 10px;
        }

.sec-title-musictoday {
    text-align: right;
    margin-bottom: 30px;
}

.images {
    border-top: 1px solid #f6fbfc;
}
.images li{
    border-bottom: 1px solid #f6fbfc;
}

.sec-logo .inner {
    padding: 30px 120px 30px 15px;
}


footer {
    padding: 15px 0;
    font-size: 1.1rem;
}
small {
    display: block;
    text-align: right;
    font-size: 1.1rem;
}

.btn-add-cal {
    background-color:rgba(79, 173, 203, 0.6); 
    box-shadow:0px 4px 5px -1px #999896;
    border-radius: 35px;
    position: fixed;
    right: 15px;
    bottom: 85px;
    width: 70px;
    height: 70px;
    text-align: center;
}
    .btn-add-cal .fal {
        line-height: 70px;
        font-size: 3.6rem;
        color: #FFF;
        text-align: center;
    }

    .btn-add-cal p{
        color: #FFF;
        left: 0;
        bottom: 0;
        font-size: 0.9rem;
        position: absolute;
        width: 100%;
        text-align: center;
        line-height: 1.2;
    }

/*===============================================
breakpoint:800
===============================================*/
@media screen and (min-width: 980px){
    .sec-logo img {
        max-width: 245px;
    }
    .text {
        max-width: 680px;
    }
    .inner {
        padding: 0;
    }
    .sec-logo .inner {
    padding: 30px 120px 30px 0px;
    }



.sec-restart-image .img-wrap {
    width: 50%;
    max-width: 480px;
}

    .sec-child.sec-child-comment.sec-child-comment-mt figure {
        text-align: right;
    }

    .sec-child.sec-child-comment.sec-child-comment-mt {
        max-width: 100%;
        padding-left: calc(100% - 680px);
    }
}

