*:focus {
 outline: none;
}
button,input[type=submit],input[type=button] {
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
 padding: 0;
 border: none;
 outline: 0;
 background: no-repeat;
}
summary {
 list-style: none;
}
summary::-webkit-details-marker {
 /* Safariで表示されるデフォルトの三角形アイコンを消す */
 display: none;
}
/* 配信カレンダー */
#google-calendar-container {
 position: relative;
 z-index: 1;
}
.thm-page-special .gigaindex .detail {
 width: 100%;
}
.calendar-tile-wrapper {
 margin: 0 auto;
 max-width: 1180px;
}
.calendar-tile-container {
 background-color: #ACC5C1;
 padding: 2px;
}
.calendar-tile-wrapper ul {
 display: grid;
 grid-template-columns: repeat(7, 1fr);
 grid-gap: 1px;
 padding: 0;
}
.calendar-tile-wrapper li {
 display: flex;
 list-style: none;
 margin-left: 0;
}
.calendar-tile-wrapper .weekdays {
 color: #fff;
}
.calendar-tile-wrapper .weekdays li {
 align-items: center;
 justify-content: center;
 font-size: 13px;
 font-weight: 600;
 padding: 0 2px 2px;
}
.calendar-tile-wrapper .day-grid li {
 background-color: #fff;
 min-height: 120px;
 flex-flow: column;
 padding: 5px;
}
.calendar-tile-wrapper .day-grid li.ca-today {
 background-color: #e8f1f0;
}
.calendar-tile-wrapper .day-grid li .ca-day {
 display: block;
 text-align: right;
 width: 100%;
 font-size: 12px;
}
.calendar-tile-wrapper .weekdays abbr[title] {
 border: none;
 text-decoration: none;
}
.calendar-tile-wrapper .day-grid .month-prev, .calendar-tile-wrapper .day-grid .month-next {
 background-color: #f5f5f5;
 color: #999;
}
.calendar-wrapper-navi {
 display: flex;
 flex-flow: wrap;
 -webkit-box-pack: justify;
 justify-content: space-between;
 -webkit-box-align: center;
 align-items: center;
 background-color: #ACC5C1;
 border-bottom: 3px solid #fff;
 padding: 10px 14px;
}
.calendar-wrapper-navi .ico-arrow-left::after, .calendar-wrapper-navi .ico-arrow-right::after {
 content: "";
 display: block;
 height: 20px;
 width: 20px;
 border-radius: 50%;
}
.calendar-wrapper-navi .no-function::after {
 background-color: #ddd;
 opacity: .3;
}
.calendar-wrapper-navi .ico-arrow-left::after {
 background: #fff url("data:image/svg+xml;charset=utf-8,%3Csvg class='heart__icon' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ctitle%3Eframe%3C/title%3E%3Cg%3E%3Cpath fill='%23515151' d='m13.789 7.155c.141-.108.3-.157.456-.157.389 0 .755.306.755.749v8.501c0 .445-.367.75-.755.75-.157 0-.316-.05-.457-.159-1.554-1.203-4.199-3.252-5.498-4.258-.184-.142-.29-.36-.29-.592 0-.23.107-.449.291-.591 1.299-1.002 3.945-3.044 5.498-4.243z' /%3E%3C/g%3E%3C/svg%3E") center center no-repeat;
 background-size: 24px 24px;
}
.calendar-wrapper-navi .ico-arrow-right::after {
 background: #fff url("data:image/svg+xml;charset=utf-8,%3Csvg class='heart__icon' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ctitle%3Eframe%3C/title%3E%3Cg%3E%3Cpath fill='%23515151' d='m10.211 7.155c-.141-.108-.3-.157-.456-.157-.389 0-.755.306-.755.749v8.501c0 .445.367.75.755.75.157 0 .316-.05.457-.159 1.554-1.203 4.199-3.252 5.498-4.258.184-.142.29-.36.29-.592 0-.23-.107-.449-.291-.591-1.299-1.002-3.945-3.044-5.498-4.243z' /%3E%3C/g%3E%3C/svg%3E") center center no-repeat;
 background-size: 24px 24px;
}
.calendar-tile-wrapper .text-month {
 font-size: 1.4em;
 font-weight: 600;
 line-height: 1em;
 font-feature-settings: "palt" 1;
 color: #fff;
}
.calendar-tile-wrapper .modal-open-button {
 display: block;
 padding: 2px 4px;
 color: #fff;
 text-decoration: none;
 cursor: pointer;
 background-color: #689bb5;
 border: none;
 border-radius: 2px;
 font-size: 10px;
 line-height: 1.4em;
}
.calendar-tile-wrapper .modal-overlay {
 position: fixed;
 top: 0;
 left: 0;
 z-index: 1000;
 display: none;
 width: 100%;
 min-height: 100%;
 height: 100vh;
 background-color: rgb(0 0 0 / 30%);
}
.calendar-tile-wrapper details {
 width: 100%;
 margin-top: 1.5px;
}
.calendar-tile-wrapper details[open] .modal-overlay {
 display: block;
}
.calendar-tile-wrapper .modal-wrapper {
 position: absolute;
 z-index: 1001;
 left: 50%;
 width: 96%;
 max-width: 500px;
 overflow: scroll;
 pointer-events: none;
 background-color: #FEFEFE;
 border-radius: 12px;
 transform: translate(-50%, 0);
}
.calendar-tile-wrapper .modal-header {
 display: flex;
 justify-content: flex-end;
 padding-right: 10px;
}
.calendar-tile-wrapper .modal-header .close {
 font-size: 24px;
 line-height: 1.2em;
 text-decoration: none;
 pointer-events: none;
 cursor: pointer;
}
.calendar-tile-wrapper .modal-content {
 padding: 0 20px 20px;
 pointer-events: all;
 color: #333;
}
.calendar-tile-wrapper .modal-content h1 {
 margin: 0;
 font-size: 4rem;
 line-height: 1.2em;
 letter-spacing: -0.02em;
}
.calendar-tile-wrapper summary {
 list-style: none;
 cursor: pointer;
}
.calendar-tile-wrapper summary::marker {
 display: none;
}
.calendar-content-event a {
 color: #689bb5;
 text-decoration: underline;
}
.calendar-tile-container .works-title {
 font-size: 1.4em;
 line-height: 1.4em;
 border-bottom: 1px solid #ACC5C1;
 margin-bottom: 10px;
 padding-bottom: 4px;
}
.calendar-content-event {
 display: flex;
 margin-top: 6px;
}
.calendar-content-event .calendar-content-title {
 white-space: nowrap;
 min-width: 72px;
 opacity: .7;
}
/* color */
.calendar-tile-wrapper .i-netflix {
 background-color: #d70035;
}
.calendar-tile-wrapper .i-hulu {
 background-color: #7EC225;
}
.calendar-tile-wrapper .i-amazon {
 background-color: #668CD9;
}
.calendar-tile-wrapper .i-disney {
 background-color: #f39800;
}
.calendar-tile-wrapper .i-lemino {
 background-color: #ff4500;
}
.calendar-tile-wrapper .i-u-next {
 background-color: #915da3;
}
.calendar-tile-wrapper .i-abema {
 background-color: #b5515d;
}
.calendar-tile-wrapper .i-roadstead {
 background-color: #616161;
}
.calendar-tile-wrapper .i-star-ch {
 background-color: #7b5544;
}
.calendar-tile-wrapper .i-wowow {
 background-color: #e0c240;
}
.calendar-tile-wrapper .i-apple {
 background-color: #aaaab0;
}
@media all and (max-width: 830px) {
 .calendar-tile-wrapper .modal-open-button {
  font-size: 9px;
  font-weight: 600;
 }
 .calendar-wrapper-navi {
  padding: 5px 10px;
 }
 .calendar-tile-wrapper .text-month {
  font-size: 1.1em;
 }
 .calendar-tile-wrapper .weekdays li {
  font-size: 10px;
 }
 .calendar-tile-wrapper .day-grid li {
  padding: 2px;
  min-height: 70px;
 }
 .calendar-tile-wrapper .day-grid li .ca-day {
  font-size: 8px;
 }
 .calendar-tile-wrapper .modal-wrapper {
  top: 5%;
  transform: translate(-50%, 33px);
 }
 .calendar-tile-container {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
 }
 .calendar-tile-inner {
  min-width: 1200px;
 }
 .calendar-tile-container .works-title {
  font-size: 1.2em;
 }
}