@charset "utf-8";
/* CSS Document */

#contact .logo {margin-top: 50px;}
#contact .txt01 {font-size: 20px; line-height: 1; margin: 20px auto;}
#contact .tel {font-size: 40px; line-height: 1;}
#contact .tel span {font-size: 60px; line-height: 1;}
#contact .title {font-size: 20px; line-height: 1; margin: 80px auto;}
#contact .title::before,#contact .title::after {content: ''; display: block; flex-grow: 1; height: 1px; background: #000;}
#contact .title::before {margin-right: 50px;}
#contact .title::after {margin-left: 50px;}
#contact_form {width:1000px; margin: auto; font-weight: bold; font-size: 16px; border-collapse: separate; border-spacing: 20px 20px;}
#contact_form tr {height: 35px;}
#contact_form tr th {position:relative; width:200px; padding-right: 10px;}
#contact_form tr th,#contact_form tr td {vertical-align: middle;}
#contact_form tr input {width:100%; height:35px; padding: 10px; outline: none; box-sizing: border-box;}
#contact_form tr td label input {height:inherit; width:inherit;}
#contact_form tr .essential {color:#ec0016; align-items: center; position:absolute; top:0; bottom:0; right:0; display: flex;}
#contact_form .form_btn {background: #000; color: #fff; font-size: 18px; padding: 10px 0; width: 500px;}
#contact_form p {text-align:center;}
#contact_form textarea {width:100%; padding: 10px; outline: none; box-sizing: border-box; line-height: 1.5; font-family: 'Noto Serif JP', serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif;}
#contact_form .wpcf7-list-item {margin: 0;}
#contact_form .wpcf7 form .wpcf7-response-output {display: none;}
#contact_form .wpcf7 form.invalid .wpcf7-response-output {border: none; font-size: 16px; color: #ff0000; text-align: center;}
.form_btn {color: #fff; font-size: 18px; border: none; padding: 20px 0; width: 500px; box-sizing: border-box; position: relative; background: url(img/contact/arrow.svg) center left 100px no-repeat; background-color: #000; outline: none; line-height: 1; cursor: pointer; margin-top: 50px;}
#contact .thanks {line-height: 2;}
#contact .ajax-loader {display: none;}
.wpcf7 form.sent .wpcf7-response-output {display: none;}
#contact .btn,#form .btn input {box-sizing: border-box; width: 500px; border: none; border-bottom: 1px solid #000; font-size: 20px; line-height: 1;padding-bottom: 10px; background: url("img/contact/btn_bg.svg")bottom right no-repeat; background-color: #fff; outline: none; font-family: 'Noto Serif JP', serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif; cursor: pointer; display: block; margin: 50px auto 0;}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {color: #ff0000; border: none; text-align: center;}
#contact .caution,#form .caution {margin: 20px 0; color: #ff0000; font-weight: bold;}
.switchItems01 span,.switchItems02 span,.switchItems03 span {height: 0; transition-duration: .5s; overflow: hidden; opacity: 0; visibility: hidden; display: block; cursor: pointer;}
.switchItems01.on span,.switchItems02.on span,.switchItems03.on span {height: auto; opacity: 1; visibility: visible;}


/*news*/
#news .news_list a {box-sizing: border-box; border-right: 1px solid #000; width: 400px; padding: 20px 50px 0;}
#news .news_list a:nth-child(1), #news .news_list a:nth-of-type(4n) {border-left: 1px solid #000;}
#news .news_list a:nth-of-type(n + 4) {margin-top: 80px;}
#news .img {width: 200px; position: relative; margin-bottom: 20px;}
#news .img img {width: 100%; height: 150px; object-fit: cover; object-position: center;}
#news .time {font-size: 14px; line-height: 1;}
#news h3 {font-size: 14px; margin: 10px 0 15px;}
#news .text {font-size: 14px; line-height: 1.5;}
#news .more {position: absolute; width: 139px; box-sizing: border-box; border-bottom: 1px solid #000; bottom: 20px; right: -100px;}
#news .more::after {content: ''; display: block; position: absolute; width: 0; height: 0; border-left: 10px solid #000; border-right: 10px solid transparent; border-top: 10px solid transparent; right: -10px; bottom: 0;}
#news_single .box01 {box-sizing: border-box; background: #f2f2f2; padding: 50px; font-size: 16px; line-height: 2;}
#news_single .time {font-size: 18px; line-height: 1; border-right: 1px solid #000; padding-right: 20px; margin-right: 20px;}
#news_single .tag {font-size: 16px; line-height: 1; background: #000; width: 58px; height: 20px;}
#news_single h2 {font-size: 16px; line-height: 1.5; margin: 20px 0;}

/*blog*/
#blog .blog_list {width: calc(100% - 240px); max-width: 1440px; margin: 50px auto 0;}
#blog .item {box-sizing: border-box; width: calc(33.333% - 40px); margin-right: 50px;}
#blog .item:nth-child(3n) {margin-right: 0;}
#blog .item:nth-child(n + 4) {margin-top: 50px;}
#blog .img {width: 100%; margin-bottom: 20px; overflow: hidden;}
#blog .img img {width: 100%; height: auto; object-fit: cover; object-position: center; transition-duration: 3s; transform: scale(1);}
#blog .img:hover img {transform: scale(1.1);}
#blog .time {font-size: 1vw; line-height: 1; margin-bottom: 20px;}
#blog h3 {font-size: 1vw;}
#blog .btn {box-sizing: border-box; width: 35%; position: relative; border-bottom: 1px solid #000; font-size: .8vw;}
#blog .btn::after {content: ''; display: block; position: absolute; width: 0; height: 0; border-left: 7px solid #000; border-right: 7px solid transparent; border-top: 7px solid transparent; right: -7px; bottom: 0;}

/*about*/
#about h2 {font-size: 25px; position: relative; z-index: 10;}
#about h2::before {content: ''; display: block; flex-grow: 1; height: 1px; margin-right: 50px; background: #000;}
#about h2::after {content: ''; display: block; flex-grow: 1; height: 1px; margin-left: 50px; background: #000;}
#about .min_title {margin: 10px auto 80px; font-size: 14px; color: #6b6b6b;}
#about .box01 .inner {position: relative; font-size: 16px; line-height: 2;}
#about .box01 .inner:nth-of-type(n + 2) {margin-top: 50px;}
#about .box01 .inner .big {font-size: 33px; line-height: 2;}
#about .box01 .inner .img01 {margin-left: 50px; position: relative; z-index: 10;}
#about .box01 .inner .img02 {margin-right: 50px; position: relative; z-index: 10;}
#about .box01 .inner p:nth-child(n + 2) {margin-top: 30px;}
#about .box01 .inner:nth-of-type(1)::after {content: ''; position: absolute; background: url("img/about/box01_icon01.jpg")no-repeat; right: -360px; top: -50px; width: 700px; height: 200px;}
#about .box01 .inner:nth-of-type(2)::before {content: ''; position: absolute; background: url("img/about/box01_icon02.png")no-repeat; left: -235px; top: -135px; width: 418px; height: 271px;}
#about .box01 .inner:nth-of-type(3)::after {content: ''; position: absolute; background: url("img/about/box01_icon03.png")no-repeat; right: -235px; bottom: -50px; width: 449px; height: 296px;}
#about .box01 .under_box {background: url("img/about/box01_under_bg.jpg")center center no-repeat; width: 1200px; height: 490px; font-size: 16px; line-height: 2.5; margin: 80px auto 0;}
#about .box01 h3 {font-size: 35px; line-height: 1; box-sizing: border-box; border: 1px solid #fff; padding: 10px 20px; margin-bottom: 50px; display: inline-block;}
#about .box02 h3 {font-size: 40px; position: relative;}
#about .box02 h3::after {content: ''; display: block; background: #000; width: 250px; height: 1px; margin-left: 50px;}
#about .con01 .inner {margin-top: 80px;}
#about .con01 .img01 {margin-right: 50px;}
#about .con01 .img02 {margin-left: 50px;}
#about .con01 .inner p {margin-top: 40px; font-size: 16px; line-height: 2;}
#about .con01 .inner .big {font-size: 35px; line-height: 1.8; margin: 0;}
#about .con01 .inner:nth-of-type(3) {margin-top: -100px;}
#about .con01 .under_box {background: url("img/about/con01_under_bg.jpg")center center no-repeat; width: 1200px; height: 454px; font-size: 16px; line-height: 2.5; margin: 80px auto 0;}
#about .con01 .under_box h4 {font-size: 35px; line-height: 1; box-sizing: border-box; border: 1px solid #000; padding: 10px 20px; margin-bottom: 50px; display: inline-block;}

#about .con03 h5 {font-size: 35px; margin-bottom: 50px;}
#about .con03 .txt01 {font-size: 16px; line-height: 2.5;margin-bottom: 50px;}
#about .min_title02 {margin: 10px auto 50px; font-size: 14px; color: #6b6b6b;}
#about .con01 .food {font-size: 16px; line-height: 2;}
#about .con01 .food h4{font-size: 25px; line-height: 1; margin-bottom: 30px;}

.swiper-pagination02,.swiper-pagination03 {display: flex; justify-content: flex-end; margin-top: 20px;}
#about .swiper-pagination-bullet-active {background:#000;}
#about .swiper-pagination-bullet {width: 10px; height: 10px; border: 1px solid #000; box-sizing: border-box; margin: 0 8px;}
#about .slide02-inner,#about .slide03-inner,#about .slide04-inner {width: 650px; margin-right: 50px;}

@keyframes slide_anime {
  	0% {opacity: 0; animation-timing-function: ease-in;}
	4.76%{opacity: 1;}
	33.33%{opacity: 1; animation-timing-function: ease-out;}
	42.85%{opacity: 0;}
    100% {opacity: 0;}
}


#about .con01 .food .img{ margin-right: 50px;}
#about .con01 .food .inner01,#about .con01 .food .inner02{margin-top: 50px; position: relative;}
#about .con01 .food .inner01:first-child{margin-top: 0;}
#about .con01 .food .txt_area{width: 890px;}
#about .con01 .food .under_txt{font-size: 14px; line-height: 1; margin-top: 10px;} 
#about .con02 .inner {font-size: 16px; line-height: 2;}
#about .con02 .img_box {position: relative; margin-right: 50px; min-width: 636px;}
#about .con02 .box:nth-of-type(2) .img_box {margin-right: inherit; margin-left: 50px;}
#about .con02 .inner h4 {font-size: 30px; line-height: 1; position: absolute; left: 20px; top: 20px; display: flex; align-items: center;}
#about .con02 .inner h4 span {margin-right: 10px; font-size: 80px;}
#about .con02 .box:nth-of-type(2) .inner h4 {left: inherit; top: inherit; right: 20px; bottom: 20px;}
#about .con02 .box:nth-of-type(2) .inner h4 span {margin-left: 10px;}
#about .con02 .img_list {margin-top: 50px;}
#about .con02 .img_list a {margin-right: 50px;}
#about .con02 .img_list a:nth-child(3) {margin-right: 0;}
#about .con02 .under h4 {font-size: 35px;}
#about .con02 .under .bdr {content: ''; display: block; background: #000; height: 1px; width: 100px; margin: 50px auto;}
#about .con02 .under p {font-size: 16px; line-height: 2; margin-bottom: 70px;}
#about .con03 .gallery h4 {font-size: 25px;}
#about .con01 .gallery h4::after,#about .con03 .gallery h4::before,#about .con03 .gallery h4::after {content: ''; display: block; height: 1px; width: 150px; background: #000;}
#about .con03 .gallery h4::before {margin-right: 50px;}
#about .con03 .gallery h4::after {margin-left: 50px;}
#about .con03 .gallery a {margin-right: 20px;}
#about .con03 .gallery a:nth-child(3n) {margin-right: 0;}
#about .con03 .gallery a:nth-child(n + 4) {margin-top: 50px;}
#about .under_inner .pic_area {margin-top: 50px;}

/*administrator*/

#administrator .access p:nth-child(1){font-size: 25px; padding-left: 10px; box-sizing: border-box; border-bottom: 1px solid #000; padding-bottom: 7px; margin-bottom: 7px;}
#administrator .access h2 {font-size: 30px; padding-left:90px;}
#administrator .access {width:246px;}
#administrator .address p:nth-child(1) {margin-right:75px;} 
#administrator .address {font-size:20px;}
#administrator iframe {width: 100%; height: 500px; border: none; border: 1px solid #000;}
#administrator span #contact_banner {padding:80px 0;}
#administrator .box {border:1px solid #000; width:560px;}
#administrator .box p:nth-child(1) {background:#000; font-size:18px; padding:15px 0;}
#administrator .box p:nth-child(2) {color:#000; font-size: 18px;}
#administrator .box .txt01 {padding:25px 0 ;}
#administrator .box img {margin-top:inherit; margin-right:20px;}
#administrator .box li p {background:#f2f2f2; width: 100%; padding:inherit; padding: 10px 0; padding-left: 10px;}
#administrator .box li:last-child p {color:#fff; background: #0073bd;}
#administrator .box ul {padding: 0 30px 30px;}
#administrator .box li {padding-bottom: 30px;}
#administrator .box span::after {content:''; display: block; background: #0073bd; width: 1px; height: 60px; position: absolute; top: 15px; left: 6px;}
#administrator .box span {width:15px; height:15px; border-radius: 50%; background:#0073bd; position:relative; margin-right:10px;}
#administrator .box li:last-child span::after {display:none;}
#administrator .box02 li {padding-bottom: 55px;} 
#administrator .box li:last-child {padding-bottom:0;}
#administrator .box02 span::after {height:87px;}
#administrator .privacy {width:410px;}
#administrator .terms {width:500px;}
#administrator .terms h2 {padding-left:370px;}
#administrator .about {width:500px;}
#administrator .about h2 {padding-left:225px;}
#administrator .about02 {margin-bottom: 100px;}
#administrator .plan {font-size: 14px; line-height: 1;}
#administrator .plan .con01{width: 285px;}
#administrator .plan .inner01{ padding: 20px; background: #0073bd; line-height: 1.5; margin-bottom: 2px;}
#administrator .plan .inner02{ background: #d6eefe;}
#administrator .plan h2{font-size: 30px; margin-bottom: 10px; line-height: 1; letter-spacing: 2px;}
#administrator .plan table{width: 100%; box-sizing: border-box; border: solid 2px #f2f2f2;}
#administrator .plan th,#administrator .plan td{padding: 20px 0; background: #f2f2f2; text-align: center;}
#administrator .plan td{border-left: #fff solid 2px;}
#administrator .plan .bg_w th,#administrator .plan .bg_w td{background: #fff;}
#administrator .plan .bg_w td{border-left: #f2f2f2 solid 2px;}
#administrator .plan .group01 {padding: 70px 0;}
#administrator .plan .group02 {padding: 50px 0;}
#administrator .plan .group03 {padding: 40px 0;}
#administrator .under_txt{margin: 20px auto 80px;}
#administrator .sponsorinfo p:nth-child(1){font-size: 25px; padding-left: 10px; box-sizing: border-box; border-bottom: 1px solid #000; padding-bottom: 7px; margin-bottom: 7px;}
#administrator .sponsorinfo h2 {font-size: 30px; padding-left:264px;}
#administrator .sponsorinfo .title01 {width:422px;}
#administrator .sponsorinfo .btn01 .btn02 {padding-right: 20px;}
#administrator .c_about {width: 600px; margin-bottom: 50px;}
#administrator .c_about h2 {padding-left: 140px;}
#administrator .c_about02 .area01{width: 386px; height: 200px; background: #f2f2f2;  margin-bottom: 20px;}
#administrator .c_about02 .area02 {background: #fff; box-sizing: border-box; border: solid 2px #f2f2f2;}
#administrator .c_about02 h3 {font-size: 20px; text-align: center; margin-top: 20px;}
#administrator .c_about02 li {font-size: 16px;}
#administrator .item {margin-bottom: 100px}
#administrator .c_about02 .box10 {padding: 20px;}

/*カレンダー*/
#form {padding-bottom: 80px;}
#form fieldset {width: 1000px; margin: auto; box-sizing: border-box; border: 1px solid #ddd; font-weight: 500; padding: 10px;}
#form fieldset:nth-of-type(n + 2) {margin-top: 30px;}
#form fieldset legend {font-size: 18px; font-weight: bold;}
#form fieldset table {width: 100%; max-width: 100%;}
#form fieldset table th,#form fieldset table td {box-sizing: border-box; padding: 20px; border-bottom: 1px solid #ddd; vertical-align: middle; font-size: 16px; font-weight: 500;}
#form fieldset table th {border-right: 1px solid #ddd; width: 300px; min-width: 300px;}
#form .min_txt {font-size: 14px; line-height: 1.5;}
#form fieldset table input {font-weight: 500; outline: none; padding: 10px; margin: 0 5px 0 0;}
#form fieldset .time_txt,#form fieldset .message_txt {font-size: 14px; margin-top: 10px; color: #ff0000; margin-left: 20px;}
#form fieldset .mwform-checkbox-field-text {font-weight: 500;}
#form fieldset .number_inner {text-align: center;}
#form fieldset .number_inner .number_item:nth-child(n + 2) {margin-left: 20px;}
#form fieldset select {min-width: 50px; padding: 5px; outline: none; font-size: 16px; font-family: 'Noto Serif JP', serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif; border: 1px solid #ddd; width: 100%;}
#form fieldset .number_inner .number_item select {margin-top: 5px;}
#form fieldset table td .day_field {position: relative; z-index: -1; border: none; font-family: 'Noto Serif JP', serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif; font-size: 16px;}
#form .contact_sec table td input {width: 100%; font-size: 16px; box-sizing: border-box; font-family: 'Noto Serif JP', serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif; border: 1px solid #ddd;}
#form fieldset .switchItems01,.switchItems02,.switchItems03 {margin-top: 0; display: none;}
#form fieldset .switchItems .switch_inner {padding: 0; transition-duration: .5s;}
#form fieldset .switchItems01 span,#form fieldset .switchItems02 span,#form fieldset .switchItems03 span {transition-duration: .5s; height: 0; display: block; cursor: pointer; visibility: hidden; opacity: 0;}
#form fieldset .switchItems.on .switch_inner {padding-top: 20px;}
#form fieldset .switchItems01.on,#form fieldset .switchItems02.on,#form fieldset .switchItems03.on {margin-top: 10px; display: block;}
#form fieldset .switchItems01.on span,#form fieldset .switchItems02.on span,#form fieldset .switchItems03.on span {opacity: 1; height: auto; visibility: visible;}
#form fieldset .link_txt {line-height: 1; margin-top: 15px; box-sizing: border-box; border-bottom: 1px solid #1e2443; padding: 0 5px 7px; display: inherit; color: #1e2443; font-weight: bold; display: inline-block;}
#form fieldset textarea {width: 100%; font-size: 16px; box-sizing: border-box; font-family: 'Noto Serif JP', serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif; border: 1px solid #ddd; outline: none; padding: 10px;}
#form .required {color: #ff0000; margin-left: 5px;}
#form .required_txt {}
#form .policy_txt01 {display: inline-block; border: 1px solid #000; box-sizing: border-box; padding: 12px 25px; line-height: 1; font-size: 14px; margin-bottom: 20px;}
#form .policy_txt01:nth-of-type(n + 2) {margin-top: 25px;}
#form .policy_txt02 {line-height: 1; margin-bottom: 20px; font-size: 14px;}
#form .policy_txt03 {line-height: 1; font-size: 14px;}
#form .policy_txt03_02 {margin-top: 8px;}
#form .policy_txt03_03 {margin-bottom: 20px;}
#form .message_txt01 {line-height: 1.8; margin-top: 16px; font-size: 14px;}
#form .message_ul li {margin-left: 20px; line-height: 1.8; font-size: 14px;}




/*archive-booking*/
#archive-booking {padding-bottom: 80px;}
#archive-booking .left_box {width: 695px;}
#archive-booking .left_box .left_title {font-size: 20px; box-sizing: border-box; line-height: 1; border: 1px solid #000; padding: 10px 0; text-align: center; font-weight: bold;}
#archive-booking .calendar_month {margin: 50px auto; position: relative;}
#archive-booking .calendar_month #prev {position: absolute; left: 0; top: 0; bottom: 0; margin: auto; font-size: 20px; line-height: 1; font-weight: bold;}
#archive-booking .calendar_month .month_now {font-size: 20px; line-height: 1; font-weight: bold; text-align: center;}
#archive-booking .calendar_month .month_next {position: absolute; right: 0; top: 0; bottom: 0; margin: auto; font-size: 20px; line-height: 1; font-weight: bold;}
#archive-booking #wp-calendar {width: 100%; margin-bottom: 40px; font-size: 16px;}
#archive-booking #wp-calendar th,#archive-booking #wp-calendar td {text-align: center; width: calc(100% / 7); box-sizing: border-box; font-weight: 500; padding-bottom: 20px;}
#archive-booking #wp-calendar th {font-weight: bold;}
#archive-booking #wp-calendar td {height: 80px; padding-bottom: 0;}
#archive-booking #wp-calendar td div {margin-top: 17px; color: #000;}
#archive-booking #wp-calendar tr th:nth-of-type(6),#archive-booking #wp-calendar tr td:nth-of-type(6) {color: #4169e1;}
#archive-booking #wp-calendar tr th:nth-last-of-type(1),#archive-booking #wp-calendar tr td:nth-last-of-type(1) {color: #ff0000;}

#archive-booking .left_box01 {font-weight: 500;}
#archive-booking .left_box01 .txt01 {font-size: 16px; line-height: 2;}
#archive-booking .left_box01 .left_inner {margin: 10px 0;}
#archive-booking .left_box01 .left_inner p {font-size: 16px; line-height: 1;}
#archive-booking .right_box {width: 454px;}
#archive-booking .right_box .box01 {box-sizing: border-box; background: url("img/booking/box01_bg.jpg")center center no-repeat; width: 100%; height: 446px;}
#archive-booking .right_box .box01 .txt01 {font-size: 20px; line-height: 1; box-sizing: border-box; display: table; border: 1px solid #fff; padding: 3px 15px; margin: 0 auto;}
#archive-booking .right_box .box01 .table {margin: 30px auto 50px;}
#archive-booking .right_box .box01 .table th,#archive-booking .right_box .box01 .table td {font-size: 16px; line-height: 1;}
#archive-booking .right_box .box01 .table th {padding-right: 20px;}
#archive-booking .right_box .box01 .table tr:nth-child(n + 2) th,#archive-booking .right_box .box01 .table tr:nth-child(n + 2) td {padding-top: 20px;}
#archive-booking .right_box .box01 ul {font-size: 16px; line-height: 1; margin: 30px auto 0; display: table;}
#archive-booking .right_box .box01 ul li:nth-child(n + 2) {margin-top: 20px; display: table;}
#archive-booking .right_box .box02 {background: url("img/booking/box02_bg.jpg")center center repeat; width: 100%; padding: 50px; box-sizing: border-box; color: #fff; margin: 50px 0 20px;}
#archive-booking .right_box .box02 .txt01 {font-size: 20px; line-height: 1; padding: 3px 0; width: 354px; box-sizing: border-box; border: 1px solid #fff; margin-bottom: 30px;}
#archive-booking .right_box .box02 table {font-size: 16px; line-height: 1; margin: 0 auto;}
#archive-booking .right_box .box02 table th {padding-right: 45px; font-weight: 500;}
#archive-booking .right_box .box02 table tr:nth-child(n + 2) th,#archive-booking .right_box .box02 table tr:nth-child(n + 2) td {padding-top: 17px;}
#archive-booking .right_box .box03 {font-size: 16px; line-height: 2;}
#archive-booking .right_box .box03 li:nth-child(n + 2) {margin-top: 10px;}

#form .box01 {margin-top: 150px; font-weight: 500;}
#form .box01 h2 {display: flex; align-items: center; justify-content: center; font-size: 30px; line-height: 1; font-weight: bold; width: 100%;}
#form .box01 h2::before,#form .box01 h2::after {content: ''; display: block; height: 1px; background: #000; flex-grow: 1;}
#form .box01 h2::before {margin-right: 50px;}
#form .box01 h2::after {margin-left: 50px;}
#form .box01 .txt01 {font-size: 16px; line-height: 2; margin: 0 auto 70px;}
#form .box01 .con01 {margin-top: 50px;}
#form .box01 .con00 {margin-top: 0;}
#form .box01 .con01 h3 {font-size: 20px; font-weight: bold;}
#form .box01 .con01 table {margin-top: 20px;}
#form .box01 .con01 .mgn_t_table {margin-top: 0;}
#form .box01 .con01 table th,#form .box01 .con01 table td {font-size: 16px; font-weight: 500; line-height: 2;}
#form .box01 .con01 .txt02 {font-size: 16px; line-height: 2; margin-top: 30px;}
#form .box01 .con01 .txt02 span {font-size: 18px; font-weight: bold;}
#form .box01 .con01 .txt03 {font-size: 16px; font-weight: 500;}
#form .error_box p {font-size: 16px; line-height: 2; text-align: center; color: #ff0000;}
#form .error_box {margin-top: 80px;}
#form .error_box .error_btn {box-sizing: border-box;
    width: 500px;
    border: none;
    border-bottom: 1px solid #000;
    font-size: 26px;
    line-height: 1;
    padding-bottom: 20px;
    background: url(img/contact/btn_bg.svg)bottom right no-repeat;
    background-color: #fff;
    outline: none;
    font-family: 'Noto Serif JP', serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif;
    cursor: pointer;
    display: block;
    margin: 50px auto 0; text-align: center;}
#form .accordion {box-sizing: border-box; margin-top: 60px; background: #f7f7f7;}
#form .accordion .inner {display: none; margin-bottom: 40px;}
#form .accordion .inner.open {display: block;}
#form .accordion .tab_title {cursor: pointer; font-size: 20px; color: #292c32; position: relative; padding: 30px 0; font-weight: 900;}
#form .accordion .inner li{padding: 10px 0;}
#form .accordion li {padding: 0 30px; box-sizing: border-box; border-bottom: 2px dotted #696666; margin-bottom: 0;  position: relative;}
#form .inner_title {font-size: 20px; line-height: 1; margin: 40px 0 20px;}

/*experience*/
#experience {font-weight: 500;}
#experience .indent_content02 {margin-top: 130px;}
#experience .title {font-size: 30px; line-height: 1; position: relative; margin-bottom: 80px; font-weight: bold;}
#experience .title::before,#experience .title::after {content: ''; position: relative; background: #000; width: 150px; height: 1px;}
#experience .title::before {left: -100px;}
#experience .title::after {right: -100px;}
#experience .box01 {position: relative;}
#experience .box01 .bg {position: relative;}
#experience .box01 .over {position: relative; margin-bottom: 80px;}
#experience .box01 .inner {position: absolute; right: 0; left: 0; margin: auto; top: 50px;}
#experience .box01 .inner .text {font-size: 20px; line-height: 2.5; writing-mode: vertical-rl; position: relative; z-index: 10; margin: 0 auto; letter-spacing: 4px;}
#experience .box01 .inner .text:nth-of-type(n + 2) {margin-right: 50px;}
#experience .box01 .img_box .img02 {margin-top: 10px;}
#experience .box01 .img_box:nth-of-type(n + 2) {margin-top: 10px;}
#experience .box02 .inner {position: relative;}
#experience .box02 .inner02 {margin-top: 80px;}
#experience .box02 .inner .img01 {margin-right: 50px;}
#experience .box02 .inner .txt01 {font-size: 30px; line-height: 1; margin-bottom: 40px;}
#experience .box02 .inner .text {font-size: 18px; line-height: 2;}
#experience .box02 .inner .txt02 {font-size: 40px; line-height: 2; position: absolute; left: 0; letter-spacing: 8px; text-shadow: #fff 1px 1px 5px, #fff -1px 1px 5px, #fff 1px -1px 5px, #fff -1px -1px 5px;}
#experience .box02 .img_box {margin-top: 80px;}
#experience .box02 .img_box a {margin-right: 10px;}
#experience .box02 .img_box a:nth-of-type(5n) {margin-right: 0;}
#experience .box02 .img_box a:nth-of-type(n + 6) {margin-top: 10px;}
#experience .box02 .table {background: #000; color: #fff; padding: 20px; width: 450px; text-align: center; margin: 80px auto 60px; font-size: 18px; line-height: 1; border-radius: 10vw;}
#experience .box02 .table_txt {font-size: 18px; line-height: 1; margin-top: 20px; text-align: center;}
#experience .box03 h2 {font-size: 40px; line-height: 1; margin-bottom: 80px;}
#experience .box03 ul li {font-size: 20px; line-height: 1;}
#experience .box03 ul li:nth-child(n + 2) {margin-top: 30px;}
#experience .box03 .bnr {margin-top: 30px;}
#experience .box03 .img01 {margin-top: 30px;}
#experience .box03 .img_box {margin-top: 80px;}
#experience .box03 .img_box a {margin-right: 10px;}
#experience .box03 .img_box a:nth-child(5n) {margin-right: 0;}
#experience .box03 .img_box a:nth-child(n + 6) {margin-top: 10px;}
#experience .box03 .logo {margin: 200px auto 0;}


