/*
共通系（フォント指定、改行系）
*/

/*游ゴシック体をmac/winどちらでも反映されるように指定、念の為游ゴシックがない人のために角ゴシック指定*/
body{
  font-family:"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  color:#4b484d;
  margin-right: auto;
  margin-left : auto;
}

/*スマホの時、規定のところで文字が折り返しになるように*/
.br_sp{
  display: inline;
}

@media screen and (max-width: 768px){
.br_sp{
  display: grid;
}
}

a:hover,
.send:hover,
.send3:hover,
.send2:hover,
.send4:hover,
.send5:hover,
.reserve_box:hover{
  opacity: .5;
  transition: .3s;
}

#a1{
  pointer-events: none;
}


/*safari用*/
textarea {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-appearance: none;
    max-width: 100%;
  }

  input[type="text"],
  input[type="tel"]{
      -webkit-appearance: none;
  }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="submit"] {
  -webkit-appearance: button;
}


/*　　　　 　   　　end　　　　　　　   　*/


/*
ファーストビュー
*/

.logo{
  position: absolute;
  width: 30vw;
  top: 1vw;
  left: 35vw;
  z-index: 30;
}

h1{
  position: absolute;
  z-index: 30;
}

.relative{
  position: relative;
  height: 104vw;
}

.fvpc_img{
  display: inline;
  position: absolute;
  width:100%;
  top: 3vw;
  z-index: 10;
}

.fvsp_img{
  display: none;
}

.fv_title{
  position: absolute;
  font-size: 3vw;
  letter-spacing: 0.3vw;
  color: #4b484d;
  top: 44.5vw;
  left: 23.8vw;
  z-index: 20;
}

.fv_title2{
  position: absolute;
  color: #eea840;
  font-size: 5vw;
  width: 40vw;
  top: -1.5vw;
  z-index: 20;
}

/*　　　　　　end　　　　　　*/


/*
アピール
*/

.appeal_text{
  font-size: 2vw;
  text-align: center;
  line-height: 4vw;
  margin:auto;
  margin-top: 4vw;

}

/*　　　　　　end　　　　　　*/


/*
おすすめ
*/

.recommend_title{
  font-size:4vw;
  font-weight: bold;
  text-align: center;
  margin-top: 6vw;
  padding-top: 4vw;
}

.repc_img{
  display: inline;
  width:100%;
  margin-top: -2vw;
}

.resp_img{
  display: none;
}

.rebox{
  width: 100%;
  height: 52vw;
  background: #f7f6f5;
  margin-top: 9vw;
}

/*　　　　　　end　　　　　　*/


/*
予約はこちら
*/

.reserve_box{
  width: 30vw;
  padding: 1vw 3vw;
  background-color:#eea840;
  border-radius: 2vw;
  border-style: none;
  color:#FFF;
  font-size: 2.5vw;
  font-weight: 500;
  text-align: center;
  margin: auto;
  margin-top: 4vw;
  cursor: pointer;
}

.reserve_container1{
  display:flex;
  width: 26vw;
  margin-left: 6vw;
}

.reserve_container2{
  display:grid;
  line-height: 2.7vw;
  margin-top: -0.5vw;
}

.reserve_text1{
  color:#f9eeb2;
  font-size: 1.5vw;
  letter-spacing: 0.5vw;
}

.reserve_next{
  width: 5vw;
  height: 3vw;
  margin-left: 3vw;
  margin-top: 0.8vw;
}

/*　　　　　　end　　　　　　*/


/*
開催スケジュール
*/

/*タイトル*/
#schedule_title{
  font-size: 4.8vw;
  letter-spacing: 0.5vw;
  text-align: center;
  margin-top: 15vw;
}

.schedule_line{
  border: solid 2px;
  width: 14vw;
  margin: -4.5vw auto;
}

/*切替*/
.schedule_pc{
  display: inline;
}

.schedule_sp{
  display: none;
}

/*表*/
table.schedule{
  width: 70%;
  border-collapse: collapse;
  margin: auto;
  margin-top: 8vw;
}

table.schedule tr{
  border-bottom: solid 2px white;
}

table.schedule tr:last-child{
  border-bottom: none;
}

table.schedule th{
  position: relative;
  text-align: left;
  width: 44%;
  background-color: #096ea4;
  color: white;
  text-align: center;
  padding: 2vw 0;
  font-size: 1.7vw;
}

table.schedule th:after{
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  position: absolute;
  top:calc(50% - 10px);
  right:-10px;
  border-left: 10px solid #096ea4;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

table.schedule td{
  width: 70%;
  text-align: center;
  background-color: #f7f6f5;
  padding: 2vw 0;
  font-size: 1.5vw;
}

/*　　　　　　end　　　　　　*/


/*
当日のスケジュール
*/

.schedule_title2{
  margin-top: 10vw;
  margin-left: 15vw;
  width:70%;
}

.schedule_img{
  display: inline;
  width: 75%;
  height:auto;
  margin-left: 16vw;
  margin-top: 4vw;
}

.schedule_img2{
  display: none;
}

/*　　　　　　end　　　　　　*/


/*
コピーライト
*/

.copy{
  font-size: 1.2vw;
  text-align: center;
  margin-top: 2vw;
}

/*　　　　　　end　　　　　　*/


/*
フォーム
*/

/*タイトル関係*/
#contact_title{
  font-size: 4.8vw;
  letter-spacing: 0.5vw;
  text-align: center;
  margin-top: 20vw;
}

.schedule_line2{
  border: solid 2px;
  width: 18vw;
  margin: -4.5vw auto;
  margin-bottom: 4vw;
}

/*フォームのレイアウト関係*/
.contact_position1{
  margin-left: 14vw;
  font-weight: 500;
  font-size: 1.8vw;
  margin-top: 2vw;
  line-height: 10vw;
  color:#323033;
}

.contact_position2{
  margin-left: 14vw;
  font-weight: 500;
  font-size: 1.8vw;
  margin-top: 6vw;
  color:#323033;
}

.contact_position3{
  margin-left: 14vw;
  font-weight: 500;
  font-size: 1.8vw;
  margin-top: 6vw;
  color:#323033;
}

.contact_position4{
  margin-left: 14vw;
  font-weight: 500;
  font-size: 1.8vw;
  color:#323033;
}

.contact_container{
  display:flex;
}

.contact_container2{
  display: flex;
  margin-left: -3vw;
  margin-top: 1vw;
}

.contact_container2_2{
  display: flex;
  margin-top: 1vw;
}

.contact_container3_2{
  display: flex;
margin-left: 2.3vw;
}

.contact_container3_3{
  display: flex;
margin-left: 2.3vw;
}

.contact_container3{
  display: flex;
  margin-left: 2.3vw;
}

.contact_container4{
  display: flex;
  margin-left: -3vw;
  margin-top: 1vw;
}

.contact_container4_2{
  display: flex;
  margin-left: -1vw;
  margin-top: 1vw;
  margin-bottom: 1.3vw;
}

.contact_container5{
  display: flex;
  margin-left: 2.3vw;
}

.contact_container6{
  display: flex;
  margin-top: 6.5vw;
}

/*フォームのテキストの位置関係*/
.text_position1{
  margin-left: 11.4vw;
}

.text_position2{
  margin-left: 9.6vw;
}

.text_position3{
 margin-left: 11.3vw;
}

.text_position4{
  margin-left: 15.1vw;
  border: solid 0.2em #E2E2E2;
  background-color:#E2E2E2;
  border-radius: 0.2em;
  font-size: 1.8vw;
  word-wrap: break-word;
  width: 48vw;
  height: 26vw;
  font-weight: 300;
}

.text_position5{
  margin-left: 10.1vw;
  border: solid 0.2em #E2E2E2;
  background-color:#E2E2E2;
  border-radius: 0.2em;
  font-size: 1.8vw;
  word-wrap: break-word;
  width: 48vw;
  height: 26vw;
  font-weight: 300;
}

.text_position6{
  margin-left: 17.7vw;
  font-size: 1.2vw;
  word-wrap: break-word;
  width: 47.5vw;
  font-weight: 300;
}

/*送信ボタン関係*/
.send_position{
  text-align: center;
  margin-bottom: 10vw;
}

.send{
  padding: 1vw 2vw;
  font-size: 2.5vw;
  font-weight: 500;
  color:#FFF;
  background-color:#eea840;
  border-radius: 2vw;
  border-style: none;
  margin-top: 10vw;
  width: 30vw;
  text-align: center;
  cursor: pointer;
}

/*その他*/
input[type="text"],
input[type="tel"]{
  border: solid 1px  #E2E2E2;
  background-color:  #E2E2E2;
  border-radius: 0.2em;
  font-size: 1.8vw;
  width: 48vw;
  height: 4vw;
  font-weight: 400;
}

.radio_size{
  height: 2.3vw;
  width: 2.3vw;
  cursor: pointer;
}

.red{
  color: #FF0000;
}

a.privacy, a.privacy:visited{
  color: #707070;
}

a.privacy:hover{
  color:  #eea840;
}

.contact_line{
  border: 1px #707070 solid;
  width: 80vw;
  margin-left: auto;
  margin-right: auto;
  margin-top: 6.4vw;
}

/*お問い合わせフォーム 確認*/
.check_position{
  margin-right:auto;
  margin-left: auto;
  font-weight: 200;
  font-size: 2vw;
  margin-top:3vw;
}

.check_position2 {
    text-align: center;
    margin-top: 10vw;
    margin-bottom: 10vw;
}

.check_text1{
  font-weight: 500;
  font-size: 3vw;
  text-align: center;
  background-color: #eea840;
  color: #FFFFFF;
  border-style: none;
}

.check_text2 {
    font-weight: 400;
    font-size: 2.1vw;
    text-align: center;
    margin-top: 3vw;
}

.send2 {
    padding: 1vw 3vw;
    font-size: 2.7vw;
    font-weight: 500;
    background-color: #eea840;
    border-radius: 2vw;
    color:#FFFFFF;
    border-style: none;
    width: 30vw;
    text-align: center;
    cursor: pointer;
}

.send3 {
  padding: 1vw 3vw;
  font-size: 2.7vw;
  font-weight: 500;
  background-color: #eea840;
  border-radius: 2vw;
  color:#FFFFFF;
  border-style: none;
  width: 30vw;
  text-align: center;
  margin-left: 8vw;
  cursor: pointer;
  }

  table.formTable {
      width: 80%;
      margin: 0 auto;
      border-collapse: collapse;
  }

table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:1.2vw;
}

table.formTable th{
	width:30%;
	font-weight:400;
	background:#E2E2E2;
	text-align:center;
  font-size: 1.8vw;
}


/*フォーム 完了*/
.send4{
  padding: 1vw 3vw;
  font-size: 2.7vw;
  font-weight: 500;
  background-color: #eea840;
  border-radius: 2vw;
  color:#FFFFFF;
  border-style: none;
  width: 24vw;
  text-align: center;
  margin-top: 5vw;
  cursor: pointer;
}

.send5 {
      padding: 1vw 3vw;
      font-size: 2.2vw;
      font-weight: 500;
      background-color: #eea840;
      border-radius: 2vw;
      color:#FFFFFF;
      border-style: none;
      width: 37vw;
      text-align: center;
      margin-top: 3vw;
      cursor: pointer;
}

.finish_text {
    font-weight: 400;
    font-size: 1.6vw;
    text-align: center;
    margin-top: 7vw;
}

.finish_position{
  margin-left: 31vw;
  margin-top: 5vw;
}

p.error_messe{
  font-weight: 500;
  font-size: 1.4vw;
  margin: 1.2vw;
  color:red;
  }

.error_messe1{
  font-weight: 400;
  font-size: 2vw;
  margin-bottom: 4vw;
  margin-top: 4vw;
  }
