@charset 'UTF-8';

.page-ttl h2{
    font-size: 40px;
    font-weight: bold;
    color: #db1a1f;
}

.page-ttl p{
    margin:1.6vh 0 0 0;
    font-size: 24px;
    font-weight: bold;
    color: #db1a1f;
}

.timeline{
    display:flex;
    display: flex;
    justify-content: space-around;
    -webkit-justify-content: space-around;
    align-items: center;
    width: 37%;
    margin: 3vh auto 6vh auto;
}

.timeline li {
    width:10vw;
    padding:1.8vh 0;
    border:solid 1px #db1a1f;
    font-size:1.0vw;
    text-align:center;
    color: #db1a1f;
    position:relative;
}

.timeline .active{
    background:#db1a1f;
    color:#fff;
}

.timeline li:after{
    font-family: 'FontAwesome';
    content:'\f0da';
    position:absolute;
    top:50%;
    right:-1.4vw;
    color:#db1a1f;
    font-size:28px;
    transform:translate(0%, -50%);
    -webkit-transform:translate(0%, -50%);
}

.timeline li:last-of-type:after{
    content:"" !important;
}

.page-ttl3{
    padding: 5vh 0 4vh 0;
    text-align: center;
    font-size: 3vw;
    font-weight: bold;
    color: #db1a1f;
    border-top: solid 4px;
    width:75%;
    margin:0 auto;
}

.mailform{
    width:70%;
    margin:0 auto;
    border-collapse: collapse;
    border-top:solid 1px #db1a1f;
    border-bottom:solid 1px #db1a1f;
    border-right: solid 1px #db1a1f;
}

.mailform th{
    width:40%;
    background:#db1a1f;
    font-size:1.2vw;
    padding:2vh 2vw;
    border-bottom:solid 1px #fff;
}

.mailform th p{
    color:#fff;
}

.mailform th p span{
    display:block;
    font-size:0.8vw;
}

.mailform td{
    border-bottom:solid 1px #db1a1f;
    padding:2vh 2vw;
}

.mailform td *{
    font-size:1.0vw;
    border-color:#db1a1f;
}

.mailform td p, .mailform td label{
    color:#db1a1f;
}

.mailform input, .mailform button, .mailform textarea, .mailform select {
	background: none;
	border:solid 1px #db1a1f;
	border-radius: 0;
	outline: none;
}

.right_td {
    position: relative;
    color:#db1a1f;
    font-size:1vw;
}
.right_td p {
    font-size: 1vw;
    padding-top: 5px;
}
.trans + label {
    display: inline-block;
    height: 18px;
    margin-right: 16px;
    margin-bottom: 6px;
    padding-left: 25px;
    cursor: pointer;
    background-image: url('/img/common/icon_sprite_radio.png');
    background-repeat: no-repeat;
    background-position: 0 bottom;
}

.bt_kakunin{
    padding:8vh 0;
    text-align:center;
}

.page-ttl3-2 {
    padding: 0vh 0 1.3vh 0;
    text-align: center;
    font-size: 2.0vw;
    color: #db1a1f;
    border-bottom: solid 4px;
    width: 75%;
    margin: 0 auto;
}

.reserve_warning{
    font-size: 1.0vw;
    color: #db1a1f;
    width: 75%;
    margin: 1vh auto 5vh;
}

.reserve_warning li{
    padding:1.5vh 0.3vw;
    color: #db1a1f;
    border-bottom:dotted 1px;
}

.notmailcase{
    width: 80%;
    margin: 5vh auto 5vh;
    display:flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
}

.notmailcase .case_pc , .notmailcase .case_sp{
    width:47%;
}

.notmailcase [class*="case_"] h4{
    color: #db1a1f;
    border:solid 1px;
    font-size:1.1vw;
    padding:0.6vh 0;
    text-align:center;
}

.notmailcase [class*="case_"] h4 i{
    vertical-align:middle;
    margin:0 0.8vw 0 0;
}

.notmailcase [class*="case_"] p{
    color: #db1a1f;
    margin:1.8vh 0 0;
    font-size:0.9vw;
    line-height:2.0;
}

.notmailcase [class*="case_"] h5{
    color: #db1a1f;
    border-left:solid 6px;
    border-bottom:solid 1px;
    font-size:0.8vw;
    margin:2vh 0 0 0;
    padding:0 0 0 0.6vw;
}

.notmailcase .carrerlink{
    display:flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    margin:2vh 0;
}

.notmailcase .carrerlink li{
    width:32%;
}

.notmailcase .carrerlink li a{
    background:#db1a1f;
    border:solid 1px;
    text-align:center;
    width:100%;
    display:block;
    text-decoration:none;
    color:#fff;
    font-size:1.2vw;
    padding:1vh 0;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.notmailcase .carrerlink li a:hover {
    background: #fff;
    color: #e60012;
    text-decoration: none;
    border: 1px solid #e60012;
}

.domain{
}

.bt_summary{
    background:#db1a1f;
    border:solid 1px;
    text-align:center;
    width:100%;
    display:block;
    text-decoration:none;
    color:#fff;
    font-size:1.2vw;
    padding:1.5vh 0;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    width:60%;
    margin:3vh auto;
}

.bt_summary:hover {
    background: #fff;
    color: #e60012;
    text-decoration: none;
    border: 1px solid #e60012;
}

.bt_summary i{
    vertical-align: middle;
    font-size: 1.0vw;
}

/*======================================
  確認ページ
 ======================================*/

.botan{
    text-align:center;
    padding:5vh 0 8vh;
}

/*======================================
  サンキューページ
 ======================================*/

.unfinishedMsg{
    padding:0vh 0 8vh;
    width:80%;
    margin:0 auto;
    text-align:center;
}

.unfinishedMsg p{
    font-size:1.6vw;
    line-height:1.8;
    color:#db1a1f;
}

.uf__attentionKome{
    font-weight:bold;
}

.article_area{
    padding:0vh 0 8vh;
    width:50%;
    margin:0 auto;
    text-align:center;
}

.article_area .thanks, .article_area .honbun{
    font-size:1.6vw;
    line-height:1.8;
    color:#db1a1f;
}


/*======================================
  未完了、予約エラーページ
 ======================================*/

/*======================================
  予約エラーページ
 ======================================*/

.article_area .caution{
    font-size:1.6vw;
    line-height:1.8;
    color:#db1a1f;
}

.article_area .style{
    margin:2vh 0;
    font-size:1.0vw;
    line-height:1.8;
    color:#db1a1f;
}

/*======================================
  完了済ページ
 ======================================*/

.completed{
    font-size:1.6vw;
    line-height:1.8;
    color:#db1a1f;
}