/*************************************************
	全体レスポンシブ
**************************************************/
/*PC*/
@media screen and (min-width: 639px) {
  .is-mob {
    display: none !important;
  }
}
/*スマホ*/
@media screen and (max-width: 639px) {
  .is-pc {
    display: none !important;
  }
}
/************************
Common Style
************************/
body{
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Helvetica, Arial, sans-serif;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    color:#333;
}
a {
  text-decoration: none;
  outline:none;
}
p{
  line-height: 1.4em;
}

/************************
Common Style
************************/
.flex-row-box{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}
.logo-big{
  width: 250px;
}

.message{
  color:#00aeef;
  font-size: .8em;
  font-weight: bold;
  margin: .5em 0;
}
.message2{
  font-size: .8em;
  margin: 1em 0;
}

.message3{
  color:#fff;
  background-color: #ff1493;
  width: 100%;
  padding: 5px;
  font-size: 1em;
  font-weight: bold;
  margin: .5em 0;
}

.cent{
  text-align: center;
}

h2{
  font-size:1.2em;
  width: 100%;
  padding-bottom: .5em;
  border-bottom:1px solid #ddd;
  margin-bottom: 1em;
  /*margin-top: 2em;*/
}
.margin_bottom{
  margin-bottom: 10px;
}
h2.bookdetail{
  margin-top: 2em;
  border:0;
  font-weight: bold;
  margin-bottom: .5em;
}

.link{
  color:#4169e1;
  cursor:pointer;
}
button:hover{
  opacity:.6;
}
.small, .sml{
  font-size: .8em;
}
.row {
  display: flex;
  flex-direction:row;
  align-items: center;
  justify-content: center;
}
.bold{
  font-weight: bold;
}

div.w30{
  flex: 0 0 30px;
}

div.w50{
  flex: 0 0 50px;
}
 div.w100{
  flex: 0 0 100px;
}
div.w130{
 flex: 0 0 130px;
}
div.w150{
 flex: 0 0 150px;
}
div.w200{
 flex: 0 0 200px;
}
 div.w250,
 label.w250{
  flex: 0 0 250px;
}
div.w220{
 flex: 0 0 220px;
}
div.w220{
 flex: 0 0 220px;

}
 div.free{
  flex: 1 1 auto;
}
@media screen and (max-width: 639px) {
  div.w200{
    flex: 1
   }
}

@media screen and (max-width: 639px) {
  .flex-row-box{
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
  }

}
/************************
Layout
************************/
.wrap{
  width: 100%;
  background-color: #fff;
}
#base-info, #calendar, #plan{
  width: 1000px;
}


/************************
Input
************************/
input[type="text"], input[type="password"],input[type="email"] ,input[type="number"] ,textarea {
  /*display: block;*/
  width: 100%;
  border: 1px solid #e6e6e6;
  color: #000;

  background: #f9f9f9;
  box-sizing: border-box;
  -webkit-appearance: none;
  box-shadow: none;
  font-size: .6em;
  padding: 1.5em;
}
input[type="text"].sml, input[type="number"].sml{
  width: 5em;
}
textarea {
  height: 10em;
}
button, input[type="submit"]{
  margin: 1em  ;
  border: 0;
  padding:1em 1.75em;
  font-weight: bold;
  cursor: pointer;
  background-color: #00aeef;
  color:#fff;
}
button.big, input[type="submit"].big{
  width: 200px;
  font-size: 1.1em;
}
button.huge, input[type="submit"].big{
  width: 300px;
  font-size: 1.1em;
}
button.white, input[type="submit"].white{
  color:#777;
  font-weight: normal;
  background-color: #fff;
  border:1px solid #ddd;
}
.button-box{
    width: 100%;
    text-align: center;
}
button.with-border{
  border-bottom:1px solid #ff1493;
}
button i{
  font-size:.5 em;
}
.icon-btn{
  color:#ffa500;
  cursor: pointer;
}
.btn-area-big{
  width: 200px;
  text-align: center;
  margin: 1.5em auto;
}

.btn-area-small button{
  font-size:.8em;
}
.m-stat-bg {
    -webkit-transition: .3s ease;
    /* transition: .3s ease; */
}
.m-select_stat::before, .m-select_stat:hover::before, .m-select_stat:active::before, .m-select_stat::after, .m-select_stat:hover::after, .m-select_stat:active::after {
    color: #fff;
}
.m-select_stat::before, .m-select_stat:hover::before, .m-select_stat:active::before, .m-select_stat::after, .m-select_stat:hover::after, .m-select_stat:active::after {
    color: #fff;
}

.m-select_group{
  position: relative;
}
.m-select_group::before {
    top: 18px;
    content: "\f0d7";
}
.m-select_group::after {
    top: 3px;
    content: "\f0d8";
}

.m-select_group::before, .m-select_group::after {
    position: absolute;
    right: 10px;
    font-family: fontawesome;
    font-size: .5em;
    cursor: pointer;
    pointer-events: none;
    color:#666;
    font-size: 1.3em
}


.m-select {
  -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    border: none;
    border-radius: 0;
    background: none;
    box-shadow: none;
    resize: none;

    width: 100%;
    height: 100%;
    padding: 0 1em;
    font-size: .8em;
    cursor: pointer;
    border-radius: 0;
}

.m-select-sml {
    width: 100px;
}
.m-form{
  display: block;
    width: 100%;
    min-height: 40px;
    max-height: 40px;
    line-height: 1;
    color: #55595c;
    background-color: #fff;
    background-image: none;
    border: .0625rem solid #dde7eb;
    border-radius: .25rem;
    /* vertical-align: middle; */
    -webkit-transition: .1s ease;
    transition: .1s ease;
}
.text-right{
  text-align: right;
}

.alert-window{
  position: fixed;
  top:0;
  left:0;
  width: 100vw;
  height: 100vh;
  z-index: 200;
}
.alert-window div.background{
  background-color: #000;
  opacity: .9;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top:0;
  left:0;
}
.alert-window div.content{
  position: relative;
  display: flex;
  flex-direction: row;
  width: 100vw;
  height: 100vh;

  align-items: center;
  justify-content: center;
}