/*前の月にするためのボタンの設定*/
a.button_A,
a.button_B {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    text-decoration: none;
    width: 120px;
    /*margin: auto;*/
    margin: 0;
    padding: 1rem 4rem 1rem 3rem;
    font-weight: bold;
    background: #27acd9;
    color: #fff;
    border-radius: 100vh;
    position: relative;
    transition: 0.5s;
}

a.button_A::before,
a.button_B::before {
    display: none;
    /*
    content: "";
    position: absolute;
    left: 1rem;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(-135deg);
    */
}

a.button_A:hover,
a.button_B:hover {
    background: #44c6f2;
    color: #fff;
}

/*予定作成ボタンのデザイン*/
a.NewEventButton{
    display: block;
    text-align: center;
    text-decoration: none;
    position: relative;
    width: 120px;
    /*margin: auto;*/
    margin: 0;
    padding: 1rem 4rem;
    font-weight: bold;
    border-radius: 10px;
    color: #27acd9;
    border: 3px solid #27acd9;
    transition: 0.3s ease-in-out;
}

a.NewEventButton:hover{
    box-shadow: none;
    transform: translate(5px,5px);
    color: #27acd9;
}

/*カレンダーの表デザインの設定*/
table{
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
    font-size: 16px;
}

td{
    width: 14.2%;
    border: 1px solid #ccc;
    padding: 10px;
    text-align: center;
    vertical-align: middle;
}

/*カーソル位置に合わせて日付の色を変える*/
td:hover{
    background-color: rgb(122, 249, 190);
    cursor: pointer;
}

td[data-day="0"]:hover{
    background-color: #dbfd41;
    cursor: pointer;
}

td[data-day="6"]:hover{
    background-color: #6d77ff;
    cursor: pointer;
}

/*同じ日付にないときの色変更*/
td.is-disabled{
    color: #8a8a8a;
}

/*土曜、日曜の色分け*/

td[data-day="0"]{
    color: red;
    background-color: #ff9d9d60;
}

td[data-day="6"]{
    color: blue;
    background-color: #9f90ff60;
}

/*土曜、日曜の色を薄くする*/

td[data-day="0"].is-disabled{
    color: rgb(255, 130, 130);
}

td[data-day="6"].is-disabled{
    color: rgb(130, 130, 255);
}

/*今日の日付の強調*/
.today{
    background-color: rgb(252, 255, 62);
    font-weight: bold;
}

.today:hover{
    background-color: #b5ff3d;
    cursor: pointer;
}
/*祝日の設定*/
td.holiday{
    color: #ff2f2f;
    background-color: #ffb0743c;
}

/*祝日かつ今日の場合*/
td.holiday.today{
    background-color: #ff8d41;
    border-color: rgb(193, 42, 42);
    font-weight: bold;
}

/*ボタンを横並びに*/
.button-container{
    display: flex;
    justify-content: center;
    gap: 25px;
    margin-top: 20px;
}

/*
ヘッダーメニューのボタン
基本触るな
*/
a.Btn-header{
    position: relative;
    display: block;
    font-weight: bold;
    overflow: hidden;
    padding: 1.5rem 6rem;
    color: #fff;
    border-radius: 0;
    background: #000;
    text-decoration: none;
    white-space: nowrap;
    line-height: 5em;
    margin: 20px 0;
}

a.Btn-header span{
    position: relative;
}

a.Btn-header:before{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    -webkit-transform: translateX(-96%);
    transform: translateX(-96%);
    background: #32e7ff;
}

a.Btn-header:hover:before{
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}

/*
    ハンバーガーメニューの調整
    この下触るな
*/
.header{
    position: relative;
    padding: 20px;
}

.hamburger{
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 100;
    width: 48px;
    height: 48px;
    border: none;
    background: transparent;
    cursor: pointer;
}

.hamburger_line{
    position: absolute;
    left: 11px;
    width: 26px;
    height: 2px;
    background-color: #333;
    transition: all .4s;
}

.hamburger_line:nth-of-type(1){
    top: 14px;
}
.hamburger_line:nth-of-type(2){
    top: 23px;
}
.hamburger_line:nth-of-type(3){
    top: 32px;
}

/*メニューオープン時*/
.hamburger.active .hamburger_line:nth-of-type(1){
    transform: translateY(9px) rotate(-45deg);
}
.hamburger.active .hamburger_line:nth-of-type(2){
    opacity: 0;
}
.hamburger.active .hamburger_line:nth-of-type(3){
    transform: translateY(-9px) rotate(45deg);
}

.nav{
    position: fixed;
    top: 0;
    left: 0;
    width: 300px;
    height: 100vh;
    background-color: #fff;
    box-shadow: 2px 0 4px rgba(0,0,0,1);
    transform: translateX(-100%);
    transition: transform .4s;
    z-index: 90;
}

.nav.active{
    transform: translateX(0)
}

.nav_list{
    margin: 0;
    padding: 100px 0 0;
    list-style: none;
}

.nav_item{
    padding: 0 20px;
}

.nav_link{
    display: block;
    padding: 0 20px;
    color: #333;
    text-decoration: none;
    border-bottom: 1px solid #eee;
}