@charset "UTF-8";
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
@import url(https://fonts.googleapis.com/css?family=Lato:Thin);
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
}
html {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
caption, th, td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}
q, blockquote {
    quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none;
}
a img {
    border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block;
}
@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    src: url("https://example.com/MaterialIcons-Regular.eot");
    /* For IE6-8 */
    src: local("Material Icons"), local("MaterialIcons-Regular"), url("https://example.com/MaterialIcons-Regular.woff2") format("woff2"), url("https://example.com/MaterialIcons-Regular.woff") format("woff"), url("https://example.com/MaterialIcons-Regular.ttf") format("truetype");
}
.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    /* Preferred icon size */
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;
    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;
    /* Support for IE. */
    font-feature-settings: 'liga';
}
.mt0 {
    margin-top: 0px !important;
}
.mr0 {
    margin-right: 0px !important;
}
.mb0 {
    margin-bottom: 0px !important;
}
.mr0 {
    margin-left: 0px !important;
}
.pt0 {
    padding-top: 0px !important;
}
.pr0 {
    padding-right: 0px !important;
}
.pb0 {
    padding-bottom: 0px !important;
}
.pl0 {
    padding-left: 0px !important;
}
.mt5 {
    margin-top: 5px !important;
}
.mr5 {
    margin-right: 5px !important;
}
.mb5 {
    margin-bottom: 5px !important;
}
.mr5 {
    margin-left: 5px !important;
}
.pt5 {
    padding-top: 5px !important;
}
.pr5 {
    padding-right: 5px !important;
}
.pb5 {
    padding-bottom: 5px !important;
}
.pl5 {
    padding-left: 5px !important;
}
.mt10 {
    margin-top: 10px !important;
}
.mr10 {
    margin-right: 10px !important;
}
.mb10 {
    margin-bottom: 10px !important;
}
.mr10 {
    margin-left: 10px !important;
}
.pt10 {
    padding-top: 10px !important;
}
.pr10 {
    padding-right: 10px !important;
}
.pb10 {
    padding-bottom: 10px !important;
}
.pl10 {
    padding-left: 10px !important;
}
.mt15 {
    margin-top: 15px !important;
}
.mr15 {
    margin-right: 15px !important;
}
.mb15 {
    margin-bottom: 15px !important;
}
.mr15 {
    margin-left: 15px !important;
}
.pt15 {
    padding-top: 15px !important;
}
.pr15 {
    padding-right: 15px !important;
}
.pb15 {
    padding-bottom: 15px !important;
}
.pl15 {
    padding-left: 15px !important;
}
.mt20 {
    margin-top: 20px !important;
}
.mr20 {
    margin-right: 20px !important;
}
.mb20 {
    margin-bottom: 20px !important;
}
.mr20 {
    margin-left: 20px !important;
}
.pt20 {
    padding-top: 20px !important;
}
.pr20 {
    padding-right: 20px !important;
}
.pb20 {
    padding-bottom: 20px !important;
}
.pl20 {
    padding-left: 20px !important;
}
.mt25 {
    margin-top: 25px !important;
}
.mr25 {
    margin-right: 25px !important;
}
.mb25 {
    margin-bottom: 25px !important;
}
.mr25 {
    margin-left: 25px !important;
}
.pt25 {
    padding-top: 25px !important;
}
.pr25 {
    padding-right: 25px !important;
}
.pb25 {
    padding-bottom: 25px !important;
}
.pl25 {
    padding-left: 25px !important;
}
.mt30 {
    margin-top: 30px !important;
}
.mr30 {
    margin-right: 30px !important;
}
.mb30 {
    margin-bottom: 30px !important;
}
.mr30 {
    margin-left: 30px !important;
}
.pt30 {
    padding-top: 30px !important;
}
.pr30 {
    padding-right: 30px !important;
}
.pb30 {
    padding-bottom: 30px !important;
}
.pl30 {
    padding-left: 30px !important;
}
.mt35 {
    margin-top: 35px !important;
}
.mr35 {
    margin-right: 35px !important;
}
.mb35 {
    margin-bottom: 35px !important;
}
.mr35 {
    margin-left: 35px !important;
}
.pt35 {
    padding-top: 35px !important;
}
.pr35 {
    padding-right: 35px !important;
}
.pb35 {
    padding-bottom: 35px !important;
}
.pl35 {
    padding-left: 35px !important;
}
.mt40 {
    margin-top: 40px !important;
}
.mr40 {
    margin-right: 40px !important;
}
.mb40 {
    margin-bottom: 40px !important;
}
.mr40 {
    margin-left: 40px !important;
}
.pt40 {
    padding-top: 40px !important;
}
.pr40 {
    padding-right: 40px !important;
}
.pb40 {
    padding-bottom: 40px !important;
}
.pl40 {
    padding-left: 40px !important;
}
.mt45 {
    margin-top: 45px !important;
}
.mr45 {
    margin-right: 45px !important;
}
.mb45 {
    margin-bottom: 45px !important;
}
.mr45 {
    margin-left: 45px !important;
}
.pt45 {
    padding-top: 45px !important;
}
.pr45 {
    padding-right: 45px !important;
}
.pb45 {
    padding-bottom: 45px !important;
}
.pl45 {
    padding-left: 45px !important;
}
.mt50 {
    margin-top: 50px !important;
}
.mr50 {
    margin-right: 50px !important;
}
.mb50 {
    margin-bottom: 50px !important;
}
.mr50 {
    margin-left: 50px !important;
}
.pt50 {
    padding-top: 50px !important;
}
.pr50 {
    padding-right: 50px !important;
}
.pb50 {
    padding-bottom: 50px !important;
}
.pl50 {
    padding-left: 50px !important;
}
.mt55 {
    margin-top: 55px !important;
}
.mr55 {
    margin-right: 55px !important;
}
.mb55 {
    margin-bottom: 55px !important;
}
.mr55 {
    margin-left: 55px !important;
}
.pt55 {
    padding-top: 55px !important;
}
.pr55 {
    padding-right: 55px !important;
}
.pb55 {
    padding-bottom: 55px !important;
}
.pl55 {
    padding-left: 55px !important;
}
.mt60 {
    margin-top: 60px !important;
}
.mr60 {
    margin-right: 60px !important;
}
.mb60 {
    margin-bottom: 60px !important;
}
.mr60 {
    margin-left: 60px !important;
}
.pt60 {
    padding-top: 60px !important;
}
.pr60 {
    padding-right: 60px !important;
}
.pb60 {
    padding-bottom: 60px !important;
}
.pl60 {
    padding-left: 60px !important;
}
.mt65 {
    margin-top: 65px !important;
}
.mr65 {
    margin-right: 65px !important;
}
.mb65 {
    margin-bottom: 65px !important;
}
.mr65 {
    margin-left: 65px !important;
}
.pt65 {
    padding-top: 65px !important;
}
.pr65 {
    padding-right: 65px !important;
}
.pb65 {
    padding-bottom: 65px !important;
}
.pl65 {
    padding-left: 65px !important;
}
.mt70 {
    margin-top: 70px !important;
}
.mr70 {
    margin-right: 70px !important;
}
.mb70 {
    margin-bottom: 70px !important;
}
.mr70 {
    margin-left: 70px !important;
}
.pt70 {
    padding-top: 70px !important;
}
.pr70 {
    padding-right: 70px !important;
}
.pb70 {
    padding-bottom: 70px !important;
}
.pl70 {
    padding-left: 70px !important;
}
.mt75 {
    margin-top: 75px !important;
}
.mr75 {
    margin-right: 75px !important;
}
.mb75 {
    margin-bottom: 75px !important;
}
.mr75 {
    margin-left: 75px !important;
}
.pt75 {
    padding-top: 75px !important;
}
.pr75 {
    padding-right: 75px !important;
}
.pb75 {
    padding-bottom: 75px !important;
}
.pl75 {
    padding-left: 75px !important;
}
.mt80 {
    margin-top: 80px !important;
}
.mr80 {
    margin-right: 80px !important;
}
.mb80 {
    margin-bottom: 80px !important;
}
.mr80 {
    margin-left: 80px !important;
}
.pt80 {
    padding-top: 80px !important;
}
.pr80 {
    padding-right: 80px !important;
}
.pb80 {
    padding-bottom: 80px !important;
}
.pl80 {
    padding-left: 80px !important;
}
.mt85 {
    margin-top: 85px !important;
}
.mr85 {
    margin-right: 85px !important;
}
.mb85 {
    margin-bottom: 85px !important;
}
.mr85 {
    margin-left: 85px !important;
}
.pt85 {
    padding-top: 85px !important;
}
.pr85 {
    padding-right: 85px !important;
}
.pb85 {
    padding-bottom: 85px !important;
}
.pl85 {
    padding-left: 85px !important;
}
.mt90 {
    margin-top: 90px !important;
}
.mr90 {
    margin-right: 90px !important;
}
.mb90 {
    margin-bottom: 90px !important;
}
.mr90 {
    margin-left: 90px !important;
}
.pt90 {
    padding-top: 90px !important;
}
.pr90 {
    padding-right: 90px !important;
}
.pb90 {
    padding-bottom: 90px !important;
}
.pl90 {
    padding-left: 90px !important;
}
.mt95 {
    margin-top: 95px !important;
}
.mr95 {
    margin-right: 95px !important;
}
.mb95 {
    margin-bottom: 95px !important;
}
.mr95 {
    margin-left: 95px !important;
}
.pt95 {
    padding-top: 95px !important;
}
.pr95 {
    padding-right: 95px !important;
}
.pb95 {
    padding-bottom: 95px !important;
}
.pl95 {
    padding-left: 95px !important;
}
.mt100 {
    margin-top: 100px !important;
}
.mr100 {
    margin-right: 100px !important;
}
.mb100 {
    margin-bottom: 100px !important;
}
.mr100 {
    margin-left: 100px !important;
}
.pt100 {
    padding-top: 100px !important;
}
.pr100 {
    padding-right: 100px !important;
}
.pb100 {
    padding-bottom: 100px !important;
}
.pl100 {
    padding-left: 100px !important;
}
/* Z-INDEX */
.formError {
    z-index: 990;
}
.formError .formErrorContent {
    z-index: 991;
}
.formError .formErrorArrow {
    z-index: 996;
}
.ui-dialog .formError {
    z-index: 5000;
}
.ui-dialog .formError .formErrorContent {
    z-index: 5001;
}
.ui-dialog .formError .formErrorArrow {
    z-index: 5006;
}
.inputContainer {
    position: relative;
    float: left;
}
.formError {
    position: absolute;
    top: 300px;
    left: 300px;
    display: block;
    cursor: pointer;
    text-align: left;
}
.formError.inline {
    position: relative;
    top: 0;
    left: 0;
    display: inline-block;
}
.formError.inline .formErrorContent {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
    border: none;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -o-border-radius: 0;
}
.formError .formErrorContent {
    width: 100%;
    background: #292b2d;
    position: relative;
    color: #fff;
    min-width: 120px;
    font-size: 11px;
    border: 2px solid #ddd;
    box-shadow: 0 0 6px #000;
    -moz-box-shadow: 0 0 6px #000;
    -webkit-box-shadow: 0 0 6px #000;
    -o-box-shadow: 0 0 6px #000;
    padding: 4px 10px 4px 10px;
    border-radius: 6px;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    -o-border-radius: 6px;
}
.formError .formErrorArrow {
    width: 15px;
    margin: -2px 0 0 13px;
    position: relative;
}
.formError .formErrorArrow div {
    border-left: 2px solid #ddd;
    border-right: 2px solid #ddd;
    box-shadow: 0 2px 3px #444;
    -moz-box-shadow: 0 2px 3px #444;
    -webkit-box-shadow: 0 2px 3px #444;
    -o-box-shadow: 0 2px 3px #444;
    font-size: 0px;
    height: 1px;
    background: #292b2d;
    margin: 0 auto;
    line-height: 0;
    font-size: 0;
    display: block;
}
.formError .formErrorArrow .line10 {
    width: 13px;
    border: none;
}
.formError .formErrorArrow .line9 {
    width: 11px;
    border: none;
}
.formError .formErrorArrow .line8 {
    width: 11px;
}
.formError .formErrorArrow .line7 {
    width: 9px;
}
.formError .formErrorArrow .line6 {
    width: 7px;
}
.formError .formErrorArrow .line5 {
    width: 5px;
}
.formError .formErrorArrow .line4 {
    width: 3px;
}
.formError .formErrorArrow .line3 {
    width: 1px;
    border-left: 2px solid #ddd;
    border-right: 2px solid #ddd;
    border-bottom: 0 solid #ddd;
}
.formError .formErrorArrow .line2 {
    width: 3px;
    border: none;
    background: #ddd;
}
.formError .formErrorArrow .line1 {
    width: 1px;
    border: none;
    background: #ddd;
}
.formError .formErrorArrowBottom {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
    margin: 0px 0 0 12px;
    top: 2px;
}
.formError .formErrorArrowBottom div {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
}
.ajaxSubmit {
    padding: 20px;
    background: #55ea55;
    border: 1px solid #999;
    display: none;
}
.greenPopup .formErrorContent {
    background: #33be40;
}
.blackPopup .formErrorContent {
    background: #393939;
    color: #fff;
}
body[dir="rtl"] .formError .formErrorArrow, body.rtl .formError .formErrorArrow {
    margin: -2px 13px 0 0;
}
.greenPopup .formErrorArrow div {
    background: #33be40;
}
.blackPopup .formErrorArrow div {
    background: #393939;
    color: #fff;
}

@media only screen and (max-width: 767px) {
.pc {
    display: none !important;
}
}

@media only screen and (min-width: 768px) {
.sp {
    display: none !important;
}
}
html {
    font-size: 62.5%;
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif;
}
body {
    padding-top: 60px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.8em;
}

@media only screen and (max-width: 767px) {
body {
    padding-top: 0;
}
}
* {
    font-size: 14px;
    font-size: 1.4rem;
    box-sizing: border-box;
}
img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
    width: 100%;
}
a {
    color: inherit;
    text-decoration: none;
}
#notfound main {
    position: relative;
    width: 100vw;
    height: 100vh;
    background: #fafafa;
}
#notfound main section {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    letter-spacing: 0.2em;
    text-align: center;
    font-family: "Lato";
    font-weight: "Thin";
    font-style: normal;
}
#notfound main section h1 {
    font-size: 180px;
    font-size: 18rem;
    line-height: 1;
    margin-top: -0.4em;
}
#notfound main section p {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1;
    margin: 1em 0 0;
}
.clearfix:before, .clearfix:after {
    content: " ";
    display: table;
}
.clearfix:after {
    clear: both;
}
.clearfix {
 *zoom: 1;
}
/*御代田の家 */

#wrapper {
    background-color: #ffffff;
}
header {
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 639px;
    background: url("../img/mv_bg.jpg?2") center / cover no-repeat;
}
header h1 {
    width: 206px;
    margin: 173px auto 0;
}
#main {
    width: 100%;
    background: url("../img/main_img.jpg?2") bottom / cover no-repeat;
    margin-top: 577px;
}
#main .inner {
    width: 261px;
    height: auto;
    margin: 0 0 0 108px;
    padding: 91px 0 60%;
}
#main .inner .left {
    float: left;
	width: 23px;
}
#main .inner .right {
    float: right;
}
#main h2 {
    width: 179px;
    height: auto;
    margin: 0;
}
#main .rsvbtn img {
    width: 84px;
    height: auto;
    margin-top: 10px;
}
.present {
    width: 100%;
    background-color: #999999;
}
.present h3 {
    text-align: center;
    margin: 0 auto;
    padding: 56px 0 10px;
    width: 1050px;
    height: auto;
}
.present .inner {
    width: 580px;
    margin: 0 auto;
    padding-bottom: 65px;
}
.present .inner .left {
    width: 175px;
    float: left;
    margin-right: 55px;
}
.present .inner .right {
    width: 350px;
    float: left;
}
.outline {
    width: 100%;
    background: #fff;
}
.outline .bg {
    background: url("../img/outline_bg.jpg?2") center / cover no-repeat;
    height: auto;
    color: #fff;
}
.outline h3 {
    text-align: center;
    width: 393px;
    height: auto;
    margin: 0 auto;
    padding: 116px 0 100px;
}
.outline .inner {
    width: 765px;
    margin: 0 auto;
}
.outline .inner h4 {
    width: 31px;
    height: auto;
    float: right;
}
.outline .inner .text {
    height: auto;
    width: 724px;
    margin: 0 auto 85px;
}
.outline .detail {
    width: 860px;
    padding: 60px 0 95px 145px;
    border-top: solid 1px #fff;
    margin: 0 auto;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2.0em;
}
.outline .detail dt {
    float: left;
    clear: left;
    width: 50px;
    margin-right: 26px;
}
.outline .detail dd {
    float: left;
}
.outline .slider02 {
    width: 780px;
    margin: 76px auto 0;
}
.outline .outline_img {
    width: 860px;
    margin: 78px auto 86px;
    text-align: center;
}
.outline img {
    width: 100%;
}
.outline .credit {
    width: 870px;
    margin: 0 auto 120px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.5em;
}
.outline .credit .left {
    float: left;
    width: 310px;
}
.outline .credit .center {
    float: left;
    width: 370px;
}
.outline .credit .right {
    float: left;
    width: 190px;
}
.outline .credit h4 img {
    height: 14px;
    width: auto;
    margin-bottom: 23px;
}
.outline .credit h5 {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 20px;
    letter-spacing: 7px;
}
.outline .credit dt {
    float: left;
    clear: left;
    width: 70px;
    margin-right: 26px;
}
.outline .credit dt.spacing {
    letter-spacing: 0.1em;
}
.outline .credit dd {
    float: left;
}
.outline .corona {
    width: 860px;
    padding: 105px 145px 76px 145px;
    border-bottom: solid 1px #000;
    margin: 0 auto;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2.0em;
}
.outline .corona h2 {
    width: 379px;
    margin: 0 auto 105px;
}
.concept {
    width: 100%;
    background-color: #808080;
}
.concept h3 {
    width: 376px;
    height: auto;
    margin: 0 auto 120px;
    padding-top: 170px;
}
.concept img.text {
    display: block;
    width: 780px;
    margin: 0 auto;
}
.concept h4 {
    width: 373px;
    height: auto;
    margin: 156px auto 92px;
}
.concept .conceptbox {
    width: 590px;
    margin: 0 auto;
}
.concept p {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    line-height: 2.0em;
    height: 270px;
    margin: 0 auto 80px;
    color: #ffffff;
    font-size: 15px;
    font-size: 1.5rem;
}
.concept img.conceptimg {
    width: 100%;
    height: auto;
    padding-top: 100px;
}
.schedule {
    width: 100%;
    background: url("../img/schedule_bg.jpg?2") center / cover no-repeat;
    padding: 144px 0 100px;
}
.schedule h3 {
    text-align: center;
    width: 348px;
    height: auto;
    margin: 0 auto;
    padding: 0 0 62px;
}
.schedule .inner {
    width: 675px;
    margin: 0 auto;
}
.schedule .inner h4 {
    width: 31px;
    height: auto;
    float: right;
}
.schedule .inner .text {
    margin-bottom: 141px;
    height: 260px;
    font-size: 16px;
    font-size: 1.6rem;
}
.schedule .inner .text p {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    line-height: 3.0em;
}
.schedule .detail {
    width: 780px;
    padding: 50px 0 50px 100px;
    border-top: solid 1px #fff;
    border-bottom: solid 1px #fff;
    margin: 0 auto;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2.0em;
    color: #fff;
}
.schedule .detail dt {
    float: left;
    clear: left;
    width: 50px;
    margin-right: 26px;
}
.schedule .detail dd {
    float: left;
}
.schedule .slider02 {
    width: 780px;
    margin: 76px auto 0;
}
.schedule .corona {
    width: 860px;
    padding: 60px 145px 60px 145px;
    border-bottom: solid 1px #fff;
    margin: 0 auto;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2.0em;
    color: #fff;
}
.schedule .corona h2 {
    width: 379px;
    margin: 0 auto 58px;
}
#reserve {
    width: 100%;
    background-color: #ffffff;
}
#reserve h3 {
    width: 495px;
    height: auto;
    margin: 110px auto 68px;
}
#reserve .telbox {
    width: 600px;
    margin: 0 auto 30px;
    padding: 40px;
    text-align: center;
    border-top: solid 1px #000000;
    border-bottom: solid 1px #000000;
}
#reserve .notice {
    width: 600px;
    padding-left: 22px;
    margin: 0 auto;
    font-size: 13px;
    font-size: 1.3rem;
}
#reserve p.privacy {
    margin-top: 40px;
    text-decoration: underline;
}
#reserve .notice ul li {
    list-style: disc;
}
#reserve .notice .center {
    text-align: center;
}
#reserve .notice .center h4 {
    color: #c4543a;
    font-size: 1.4rem;
    margin: 43px auto 0;
}
footer {
    width: 100%;
    background-color: #000;
}
footer .container {
    width: 930px;
    margin: 0 auto;
    padding: 36px 0 120px;
    color: #fff;
}
footer .container .left {
    width: 110px;
    height: auto;
    margin-right: 52px;
    float: left;
}
footer .container .right {
    float: left;
    width: 768px;
    color: #ffffff;
}
footer .container .right img {
    height: 13px;
    width: auto;
    margin-top: 73px;
}
#inside {
    width: 100%;
    height: 80px;
    margin: 0 auto;
    background-color: #fcee21;
    position: fixed;
    bottom: 0;
    top: auto;
    left: 0;
    z-index: 1000;
    -webkit-transition: .5s;
    transition: .5s;
    transform: translateY(100%);
    text-align: center;
}
#inside.is-fixed {
    transform: translateY(0);
}
#inside.is-hide {
    transform: translateY(100%);
}
#inside .left .footerbtn {
    width: calc(100% / 3);
    float: left;
    border-right: solid 4px #fff;
    height: 80px;
}
#inside .center .footerbtn {
    width: calc(100% / 3);
    float: left;
    border-right: solid 4px #fff;
    height: 80px;
}
#inside .right .footerbtn {
    width: calc(100% / 3);
    float: left;
    height: 80px;
}
#inside .left .footerbtn img {
    width: 309px;
    height: 80px;
}
#inside .center .footerbtn img {
    width: 259px;
    height: 80px;
}
#inside .right .footerbtn img {
    width: 240px;
    height: 80px;
}
/* ------------------------------------------------------------ */
/* フォーム */
/* ------------------------------------------------------------ */
.formBox {
    padding: 60px 80px 100px;
    max-width: 890px;
    width: 90%;
    margin: 0 auto;
    box-sizing: border-box;
    border-bottom: solid 1px #333;
}
.formBox .caption {
    font-size: .9em;
    margin: 0 auto 50px;
}
.formBox .center {
    text-align: center;
    margin: 0 auto 50px;
}
.formBox dl {
    width: 100%;
    margin: 0 auto 30px;
    box-sizing: border-box;
    overflow: hidden;
}
.formBox dl dt {
    width: 25%;
    float: left;
    padding: 8px 0 0;
}
.formBox dl dt span {
    margin: 0 0 0 10px;
    background: #c4543a;
    padding: 6px 9px;
    border-radius: 2px;
    color: #fff;
    font-size: .9em;
}
.formBox dl dd {
    width: 75%;
    float: left;
}
.formBox dl input {
    height: 40px;
    width: 100%;
    border: solid 1px #ccc;
    font-size: 1.1em;
    padding-left: 10px;
}
.formBox dl.add01 dd {
    position: relative;
}
.formBox dl.add01 dd input {
    width: 40%;
}
.formBox dl.add01 dd input#btn {
    background: #fff;
    color: #000;
    width: 25%;
    height: 40px;
    border: solid 1px #000;
    margin: 0 0 0 5%;
    padding: 2px 0;
    border-radius: 0;
}
input[type="checkbox"] {
    -webkit-appearance: none;
    position: relative;
    display: inline-block;
    width: 16px;
    height: 16px;
    background: #fff;
    background-size: contain;
    border-radius: initial;
    background-repeat: no-repeat;
}
input[type="checkbox"]:checked:before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    display: inline-block;
    width: 16px;
    height: 16px;
    background: url("../img/check_red.svg");
    background-size: 16px 16px;
    background-position: 15px -2px;
}
.formBox dl.add01 dd:before {
    content: '〒';
    margin: 0 .5em 0 -1.5em;
}
.formBox dl.txt {
    margin: 0 auto 45px;
}
.formBox dl.txt dt {
    float: none;
    width: 100%;
    margin: 0 auto 10px;
}
.formBox dl.txt dd {
    width: 100%;
}
.formBox dl.txt dd textarea {
    border: solid 1px #ccc;
    height: 350px;
    width: 100%;
    padding: 10px;
	font-size: 16px;
}
.formBox a.privacy {
    display: block;
    border-bottom: 1px solid #000;
    font-size: 12px;
    text-align: center;
    margin: 45px auto 0;
    width: 130px;
    line-height: 15px;
}
.formBox dl.oncheckbox dt {
    height: 4em;
}
.formBox dl.calendar input {
    width: 44%;
	margin-right: 30px;
	position: relative;
	z-index: 2;
	background: none;
}
.formBox .calendar dd {
    width: 500px;
	display: flex;
	position: relative;
}
.formBox dl.calendar dd::before {
    content: '';
    position: absolute;
    display: block;
	top: 10px;
    left: 190px;
	background: url("../img/calendar.svg") center / cover no-repeat;
	width: 18px;
	height: 20px;
	z-index: 1;
}
.formBox dl.oncheckbox input {
    width: 16px;
    height: 16px;
    margin-right: 5px;
    position: relative;
    top: 8px;
    border-radius: initial;
}
.formBox #hidden p.op_notice {
    color: #c4543a;
    float: left;
}
.formBox #hidden p.op_notice2 {
    color: #c4543a;
    padding-top: 10px;
}
.formBox #hidden .pref-box {
    width: 32%;
    position: relative;
    float: left;
}
.formBox #hidden .pref-box::before {
    content: '';
    position: absolute;
    display: block;
    border-width: 9px 6px 0 6px;
    border-color: #000 transparent transparent transparent;
    border-style: solid;
    top: 16px;
    left: 123px;
}
.formBox #hidden .pref-box select {
    text-align: center;
    padding: 0 0 0 15px;
    -webkit-appearance: none;
    border-radius: 0;
    box-sizing: content-box;
    width: 130px;
    height: 40px;
    border: 1px solid #ccc;
    font-size: 1.1em;
    position: relative;
    z-index: 2;
    background: none;
}
.formBox #hidden span {
    background: none;
    color: #c4543a;
    margin-bottom: 6px;
    line-height: 22px;
}
.formBox #hidden {
    margin-bottom: 35px;
}
.formBox #hidden dl {
    margin-bottom: 0;
    margin-top: 20px;
}
.formBox #hidden span {
    background: none;
    color: #c4543a;
    margin-bottom: 6px;
    line-height: 22px;
}
.formBox #hidden p.op_notice {
    color: #c4543a;
    float: left;
}
#submit {
    max-width: 300px;
    width: 70%;
    margin: 0 auto;
    position: relative;
}
#submit i {
    position: absolute;
    right: 15px;
    font-size: 16px;
    top: 12px;
    z-index: 5;
    color: #fff;
}
#submit i.fa-angle-left {
    left: 15px;
    right: auto;
}
#submit input, #formWrap input {
    width: 100%;
    height: 40px;
    color: #fff;
    background: #c4543a;
    font-size: 16px;
    border: none;
    margin-bottom: 20px;
}
#copyNone {
    display: none!important;
}
#submitBox {
    width: 80%;
    margin: 0 auto;
}
#submitBox input {
    width: 48%;
    height: 40px;
    color: #fff;
    background: #c4543a;
    font-size: 16px;
    border: none;
    float: right;
    margin: 0 1%;
}
#kata h1 {
    text-align: center;
    margin: 0 auto 30px;
}
#att {
    width: 100%;
    box-sizing: border-box;
    background: #e5e5e5;
    padding: 30px 35px 20px;
    margin: 0 auto 50px;
}
#att p {
    margin: 0 0 10px;
    line-height: 1.8em;
}
/*　確認画面　*/
#formWrap {
    width: 70%;
    margin: 0 auto;
    color: #555;
    margin-bottom: 400px;
}
#formWrap h3 {
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    margin-bottom: 40px;
    letter-spacing: 1.0em;
}
#formWrap h4 {
    font-size: 1.2em;
    margin: 0 auto 30px;
}
table.formTable {
    width: 100%;
    margin: 20px auto 50px;
    border-collapse: collapse;
}
table.formTable td, table.formTable th {
    border: 1px solid #ccc;
    padding: 10px;
}
table.formTable th {
    width: 30%;
    font-weight: normal;
    background: #eeeeee;
    text-align: left;
}
p.error_messe {
    margin: 5px 0;
    color: #c4543a;
}
a.tel {
    width: 212px;
    margin: 20px auto 50px;
    display: block;
}
#thanks {
    width: 70%;
    margin: 0 auto;
    color: #555;
    margin-bottom: 400px;
    text-align: center;
}
#thanks h3 {
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    margin-bottom: 60px;
    letter-spacing: 1.0em;
}
#thanks p {
    margin-bottom: 30px;
}
#thanks a {
    text-decoration: underline;
}
/*カレンダー*/
.ui-widget-header {
    background: #c4543a!important;
    color: #fff!important;
}
.ui-icon-circle-triangle-w {
    background: url("../img/icon_pref_off.svg")!important;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 16px!important;
}
.ui-icon-circle-triangle-e {
    background: url("../img/icon_next_off.svg")!important;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 16px!important;
}
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus, .ui-button:hover, .ui-button:focus {
    background: #f6f6f6!important;
}
.ui-widget.ui-widget-content {
    z-index: 100!important;
    border: 1px solid #000!important;
    font-size: 16px;
    width: auto;
}
.ui-datepicker td span, .ui-datepicker td a {
    padding: 10px!important;
    text-align: center!important;
}
.ui-datepicker {
    padding: .5em .4em .2em!important;
}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active {
    color: #fff!important;
    border: 1px solid #c4543a!important;
    background: #c4543a!important;
}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    padding: 5px 10px!important;
}

@media screen and (min-width: 768px) {
.sp {
    display: none !important;
}
}

@media only screen and (max-width: 1023px) {
}

@media screen and (max-width: 767px) {
.pc {
    display: none !important;
}
}

@media only screen and (max-width: 767px) {
header {
    position: relative;
    background: none;
    height: 100vh;
    z-index: initial;
}
header .bg {
    position: fixed;
    background: url("../img/mv_bg_sp.jpg?2") center / cover no-repeat;
    height: 100vh;
    width: 100%;
    z-index: -1;
}
header h1 {
    position: absolute;
    top: 33%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 39%;
}
header a {
    position: absolute;
    bottom: 15%;
    left: 0;
    right: 0;
    margin: 0 auto;
    display: block;
    width: 36px;
}
#wrapper {
    width: 100%;
    overflow: hidden;
    background-color: transparent;
}
#main {
    width: 100%;
    margin-top: 0;
    background: url("../img/main_bg_sp.jpg?2") center no-repeat;
    background-size: cover;
}
#main .inner {
    margin: 0 auto;
    padding: 17% 0 70%;
    width: 50%;
}
#main h2 {
    width: 100%;
    margin-bottom: 25px;
}
#main .rsvbtn img {
    width: 100%;
    margin-top: 0;
}
#main .inner .right {
    width: 65%;
}
#main .inner .left {
    width: 8%;
	margin-top: 2px;
}
.present h3 {
    width: 90%;
    margin-bottom: 20px;
    padding-top: 30px;
}
.present .inner {
    width: 90%;
    padding-bottom: 40px;
}
.present .inner .left {
    width: 32%;
    margin-right: 5%;
}
.present .inner .right {
    width: 63%;
}
.outline .bg {
    background: url("../img/sp_outline_bg.jpg") center / cover no-repeat;
}
.outline .outline_img {
    width: 100%;
    margin: 0 auto 50px;
}
.outline h3 {
    width: 66%;
    padding: 65px 0 55px;
}
.outline img.outlinetext {
    width: 320px;
    max-width: 90%;
    height: auto;
    margin: 0 auto;
    display: block;
}
.outline .inner {
    width: 85%;
    margin-bottom: 46px;
}
.outline .detail {
    width: 90%;
    padding: 45px 0;
    font-size: 13px;
}
.outline .detail dt {
    width: 20%;
    margin-right: 0;
}
.outline .detail dd {
    width: 80%;
}
.outline .slider02 {
    width: 100%;
}
.outline .credit {
    width: 90%;
    line-height: 2.0em;
    margin-bottom: 0;
    padding-bottom: 20px;
}
.outline .credit h5 {
    font-size: 22px;
    font-size: 2.2rem;
}
.outline .credit .left, .outline .credit .center, .outline .credit .right {
    width: 100%;
    margin-bottom: 30px;
}
.outline .credit dt {
    width: 30%;
    margin-right: 0;
}
.outline .credit dd {
    width: 70%;
}
.outline .corona {
    width: 90%;
    padding: 50px 0 35px;
	margin-bottom: 50px;
    font-size: 13px;
}
.outline .corona h2 {
    width: 85%;
    margin: 0 auto 40px;
}
.concept h3 {
    width: 75%;
    padding-top: 45px;
    margin-bottom: 45px;
}
.concept h4 {
    width: 245px;
    ;
    margin-top: 60px;
    margin-bottom: 45px;
}
.concept p {
    width: 100%;
}
.concept img.conceptimg {
    min-width: 100%;
    padding-top: 40px;
}
.concept .conceptbox {
    width: 90%;
}
.concept img.vtext {
    display: block;
    margin: 0 auto 50px;
    width: 320px;
    max-width: 90%;
    height: auto;
}
.schedule {
    padding: 64px 0;
    background: url("../img/schedule_bg_sp.jpg?2") center / cover no-repeat;
}
.schedule h3 {
    width: 50%;
    padding: 0 0 26px;
}
.schedule .inner {
    width: 90%;
    margin-bottom: 46px;
}
.schedule .detail {
    width: 90%;
    padding: 40px 0;
    font-size: 13px;
}
.schedule .detail dt {
    width: 20%;
    margin-right: 0;
}
.schedule .detail dd {
    width: 80%;
}
.schedule .corona {
    width: 90%;
    padding: 50px 0 45px;
    font-size: 13px;
}
.schedule .corona h2 {
    width: 85%;
    margin: 0 auto 40px;
}
#reserve h3 {
    margin: 0 auto;
    width: 52%;
    padding: 55px 0 37px;
}
#reserve .telbox {
    width: 90%;
	padding: 26px 40px;
}
#reserve .notice {
    width: 90%;
}
#reserve .notice .center {
    margin-left: -22px;
}
footer .container {
    width: 100%;
    padding: 36px 0;
}
footer .container .left {
    width: 90%;
    float: none;
    margin: 0 auto 30px;
}
footer .container .left img {
    width: 74px;
}
footer .container .right {
    width: 90%;
    float: none;
    margin: 0 auto;
    font-size: 14px;
}
footer .container .right p {
    margin-bottom: 14px;
}
.footerbtn {
    height: 50px;
}
.inside {
    height: 50px;
}
.inside .left .footerbtn, .inside .center .footerbtn, .inside .right .footerbtn {
    height: 50px;
}
.inside .left .footerbtn {
    height: 50px;
    border-right: solid 4px #000;
}
.inside .center .footerbtn {
    height: 50px;
    border-right: solid 4px #000;
}
.inside .right .footerbtn {
    height: 50px;
}
.inside .left .footerbtn img {
    height: 50px;
}
.inside .center .footerbtn img {
    height: 50px;
}
.inside .right .footerbtn img {
    height: 50px;
}
.formBox dl.calendar dd::before {
    left: 50%;
}
#formWrap h3 {
    margin: 40px auto;
}
#thanks h3 {
    margin: 40px auto;
}
}

/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width:572px) {
.formBox {
    padding: 40px 8% 50px;
    width: 100%;
}
.formBox dl {
    margin: 0 auto 20px;
}
.formBox dl dt {
    float: none;
    width: 100%;
    margin: 0 auto 5px;
}
.formBox dl dd {
    width: 100%;
}
.formBox dl.add01 dd {
    padding: 0 0 0 2em;
}
#kata h1 {
    width: 100%;
    margin: 0 auto 20px;
}
#att {
    padding: 25px 10px 10px;
    font-size: 12px;
}
.formBox dl.add01 dd input {
    width: 50%;
}
.formBox dl.add01 dd input#btn {
    display: inline-block;
    width: 40%;
}
header ul li {
    margin: 0 5px;
}
#kata h1 img {
    width: 100%;
    height: auto;
}
#formWrap {
    width: 95%;
    margin: 0 auto 100px;
}
table.formTable th, table.formTable td {
    width: auto;
    display: block;
}
table.formTable th {
    margin-top: 5px;
    border-bottom: 0;
}
input[type="submit"], input[type="reset"], input[type="button"] {
    display: block;
    width: 100%;
    height: 40px;
}
input[type="submit"]::-webkit-search-decoration,  input[type="button"]::-webkit-search-decoration {
 display: none;
}
input[type="submit"], input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    ;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
}
#thanks {
    margin-bottom: 100px;
}
}

@media screen and (max-width:572px) {
.formBox dl.oncheckbox {
    line-height: 3em;
}
.formBox dl.oncheckbox dt {
    height: 3em;
}
.formBox dl.oncheckbox input {
    width: 16px;
    height: 16px;
    margin-right: 5px;
    position: relative;
    top: 8px;
    border-radius: initial;
}
.formBox dl.oncheckbox dd {
    height: 34px;
}
.formBox dl.calendar input {
    width: 60%;
	margin-right: 0;
}
.formBox #hidden p.op_notice {
    display: inline-block;
    float: none;
    margin-top: 0;
}
.formBox .calendar dd {
    margin-top: 0;
    width: 100%;
}
.formBox #hidden dl {
    margin-bottom: 10px;
    margin-top: 0;
}
.formBox #hidden span {
    font-size: .9em;
    display: block;
    margin: 0 0 6px;
    padding: 0;
}
.formBox a.privacy {
    margin: 33px auto 0;
}
input[type="checkbox"] {
    -webkit-appearance: none;
    position: relative;
    display: inline-block;
    width: 16px;
    height: 16px;
    background: #fff;
    background-size: contain;
    border-radius: initial;
    background-repeat: no-repeat;
}
input[type="checkbox"]:checked:before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    display: inline-block;
    width: 16px;
    height: 16px;
    background: url("../img/check_red.svg");
    background-size: 16px 16px;
    background-position: 15px -2px;
}
}
