/*************全ページ共通のCSS*************/
/*************初期設定*************/
/** {*/
    /*-webkit-overflow-scrolling: touch;*/
/*}*/

html {
    font-size: 10px;
    font-family: sans-serif;
    -webkit-overflow-scrolling: touch;
}

body {
    font-size: 1.4rem;
    color: #000;
    line-height: 1.6;
}

@media screen and (min-width: 768px) {
    html {
        font-size: 10px;
    }

    body {
        font-size: 1.4rem;
    }
}

.ja {
    /*font-family: 'Noto-Serif','Noto Serif', serif !important;*/
    /*font-family: 'Noto Serif', "Yu Mincho Pr6";*/
    font-family: 'Noto Serif JP', serif;
}

.en {
    font-family: 'Oswald', sans-serif;
    text-transform: uppercase;
    font-weight: bold;
}

h1, h2, h3, h4 {
    font-weight: inherit;
}

.paragraph {
    line-height: 1.6;
}

.c {
    color: #347EC3;
}

.c2 {
    color: #007FEB;
}

.myGlobalNav li:last-of-type {
    margin-bottom: 0;
}

.myMenuContainer {
    width: 100%;
}

.myImg {
    padding-top: 55%;
    overflow: hidden;
    height: 0;
}

@media screen and (min-width: 768px) {
}

/*************追加分*************/
/*デザイン系*/
html {
    /*font-size: 2.66666666667vw;*/
    font-size: 3.125vw;
}

body {
    font-size: 1.5rem;
    font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Segoe UI', YuGothic, 'Yu Gothic Medium', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    height: auto;
    padding: constant(safe-area-inset-top) constant(safe-area-inset-right) constant(safe-area-inset-bottom) constant(safe-area-inset-left);
}

.myBack {
    background: #0070AF;
    color: #fff;
}

.myBack2 {
    background: #007FEB;
    color: #fff;
}

.hamburger {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 35;
    width: 7.4rem;
    height: 9.02rem;
    background: url("/img/ham.png") no-repeat center center;
    background-size: contain;
}

.hamburger.show {
    background: url("/img/hamclose.png") no-repeat center center;
}

.noText {
    text-indent: 300%;
    white-space: nowrap;
    overflow: hidden;
    display: inherit;
}

/*全体共有パーツ*/
header,
.myHeader {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1;
}

p a {
    display: inline;
    text-decoration: underline;
}

.myMainContent h1, .myMainContent h2 {
    margin: 0 0 2rem;
}

/*.myMain {*/
    /*position: relative;*/
    /*top:0;*/
    /*left:0;*/
    /*width: 100vw;*/
    /*height: 100vh;*/
    /*margin: 0;*/
/*}*/

/*.myMainContent {*/
    /*!*height: 100vh;*!*/
    /*padding: 8.5rem 1.5rem 15rem;*/
    /*background: #fff;*/
    /*!*position: absolute;*!*/
    /*width: 100%;*/
    /*!*top: 0;*!*/
    /*!*left: 0;*!*/
    /*transform: translateZ(0);*/
    /*height:100%;*/
    /*overflow: scroll;*/
    /*!*overflow:auto;*!*/
    /*-webkit-overflow-scrolling: touch;*/
/*}*/

/*.myMainContentInner {*/
    /*padding: 2.5rem 1.5rem;*/
    /*background: #fff;*/
    /*min-height: calc(100vh - 6rem);*/
    /*width: 100%;*/
    /*position: absolute;*/
    /*top: 6rem;*/
    /*left: 0;*/
/*}*/


.myMain {
    position: relative;
    top: 0;
    left: 0;
    width: 100vw;
    margin: 6rem 0 0;
    padding: 0;
    min-height: calc(100vh - 6rem);
    z-index: 0;
}

.myMainContent {
    padding: 3.5rem 1.5rem 15rem;
    padding-top: calc(constant(safe-area-inset-top) + 3.5rem);
    padding-top: calc(env(safe-area-inset-top) + 3.5rem);
    background: #fff;
    width: 100%;
    height:auto;
    min-height: calc(100vh - 6rem);
}

.myMainContentInner {
    padding: 2.5rem 1.5rem;
    background: #fff;
    min-height: calc(100vh - 6rem);
    width: 100%;
    position: absolute;
    top: 6rem;
    left: 0;
}


.myItem {
    margin: 0 0 2rem;
}

.myButton {
    background: #0084CF;
    border: none;
    font-size: 1.7rem;
    color: #fff;
    font-weight: bold;
    height: 5rem;
    margin: 0;
    border-radius: 3px;
}

.myButton i {
    margin: 0 0 0 1rem;
}

.myBox {
    margin: 0 0 2rem;
    width: 100%;
    padding: 1.5rem 2.5rem;
    -webkit-box-shadow: 0 0 6px -1px rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 6px -1px rgba(0, 0, 0, 0.2);
}

/*form*/
input[type=checkbox] {
    display: none;
}

.myCheckboxLabel {
    padding-left: 2em;
    position: relative;
    margin-right: 1em;
}

.myCheckboxLabel::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 1em;
    height: 1em;
    border: 1px solid #999;
    border-radius: 4px;
    background: #fff;
}

input[type=checkbox]:checked + .myCheckboxLabel {
    color: #007FEB;
}

input[type=checkbox]:checked + .myCheckboxLabel::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0.6em;
    transform: translate(-50%, -50%) rotate(40deg);
    width: 0.2em;
    height: 0.5em;
    border-bottom: 3px solid #007FEB;
    border-right: 3px solid #007FEB;
}

input[type=radio] {
    display: none;
}

input[type=radio] + .myRadioLabel {
    padding-left: 20px;
    position: relative;
    margin-right: 20px;
}

input[type=radio] + .myRadioLabel::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #999;
    border-radius: 50%;
    background: #fff;
}

input[type=radio]:checked + .myRadioLabel {
    color: #007FEB;
}

input[type=radio]:checked + .myRadioLabel::after {
    content: "";
    display: block;
    position: absolute;
    top: 3px;
    left: 3px;
    width: 11px;
    height: 11px;
    background: #007FEB;
    border-radius: 50%;
}

.myCheckboxLabel,
.myRadioLabel {
    line-height: 2em;
}

/*alert modal*/

/*roster*/

.myUserImg {
    width: 300px;
    margin: 0 auto;
}

.myListImg {
    width: 30px;
}

table {
    margin: 0 auto;
}

tr {
    border: 1px solid;
}

/*setting*/
.withButton {
    display: flex;
    margin: 0 0 1rem;
}

.withButton h2 {
    display: inline-block;
    margin-right: 1rem;
}

.withButton .myButton {
    width: 10rem;
    font-size: 1.3rem;
    height: 3rem;
    line-height: 1;
}

.myButtonsContainer .myButton {
    margin: 0 0 2rem;
}

input, textarea {
    outline: none !important;
    -webkit-appearance: initial !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    max-width: 100%;
}

.myButton {
    display: block;
    align-items: center;
    cursor: pointer;
    line-height: 5rem;
}

.myButton p {
    text-align: center;
    cursor: pointer;
}

.editor img,
img.edi {
    max-width: 100%;
    width: auto;
}

body {
    position: relative !important;
    overflow: visible !important;
}


/*date-picker*/
.vdp-datepicker__calendar header {

    position: relative;
    top: auto;
    left: auto;
}

.vdp-datepicker__calendar {
    max-width: 100%;
}

.vdp-datepicker input,
.el-date-editor input{
    margin: 0;
    background: #fff;
    color: #000;
}

.vdp-datepicker__calendar header .prev, .vdp-datepicker__calendar header .next {
    margin: 0;
}

.el-time-spinner__item {

    text-align: center;
}

.el-time-spinner.has-seconds .el-time-spinner__wrapper:nth-of-type(3) {
    display: none;
}

.el-time-spinner.has-seconds .el-time-spinner__wrapper {
    width: 50%;
}

ons-pull-hook {
    height: 64px !important;
    height: calc(constant(safe-area-inset-top) + 64px) !important;
    height: calc(env(safe-area-inset-top) + 64px) !important;
    line-height: 64px !important;
    padding-top: constant(safe-area-inset-top) !important;
    padding-top: env(safe-area-inset-top) !important;
}


.ptr--ptr {
    position: fixed !important;
    top: 6rem !important;
    top: calc(constant(safe-area-inset-top) + 6rem) !important;
    top: calc(env(safe-area-inset-top) + 6rem) !important;
    left: 0 !important;
    padding-top: 0;
    width: 100% !important;
    z-index: 2;
    box-shadow: unset !important;
    background: #0070AF;
    color: #fff;
}

.ptr--icon {
    color: rgba(255, 255, 255, 1) !important;
}
.ptr--text {
    color: rgba(255, 255, 255, 1) !important;
}


@media screen and (min-width: 1024px) {
    html {
        font-size: 10px;
    }

    body {
        font-size: 1.3rem;
    }

    header, .myHeader {
        z-index: 3;
    }

    /*.myMain {*/
        /*position: relative;*/
        /*width: calc(100% - 190px);*/
        /*z-index: 2;*/
        /*margin: 0 0 0 auto;*/
        /*margin-top: 3.2rem;*/
        /*min-height: calc(100vh - 3.2rem);*/
    /*}*/

    /*.myMainContent {*/
        /*padding: 3.2rem 5rem;*/
        /*height: calc(100vh - 3.2rem);*/
    /*}*/

    .myMain {
        position: relative;
        top:0;
        left:0;
        width: calc(100% - 190px);
        z-index: 2;
        margin: 0 0 0 auto;
        margin-top: 3.2rem;
        height: auto;
        min-height: calc(100vh - 3.2rem);
    }

    .myMainContent {
        /*height: 100vh;*/
        background: #fff;
        /*position: absolute;*/
        width: 100%;
        /*top: 0;*/
        /*left: 0;*/
        /*transform: translateZ(0);*/
        height:100%;
        /*overflow: scroll;*/
        /*overflow:auto;*/
        /*-webkit-overflow-scrolling: touch;*/
        padding: 3.2rem 5rem;
        /*height: calc(100vh - 3.2rem);*/
        min-height: calc(100vh - 3.2rem);
    }


    h1 {
        margin: 0 0 4rem;
    }

    h2 {
        margin: 0 0 2rem;
    }

    .myButton {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -moz-box-pack: center;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .myButtonsContainer {
        display: flex;
        justify-content: center;
    }

    .myButtonsContainer .myButton {
        width: 20rem;
        margin: 0 5rem 0 0;
    }

    .myButtonsContainer .myButton:last-of-type {
        margin-right: 0;
    }

    .withButton {
        margin: 0;
    }

    .ptr--ptr {
        top: 3.2rem !important;
        top: calc(constant(safe-area-inset-top) + 3.2rem) !important;
        top: calc(env(safe-area-inset-top) + 3.2rem) !important;
    }
}
