@charset "utf-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

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-size: 100%;
    /* font: inherit; */
    vertical-align: baseline;
    outline: none;
}.mv-lower-top .text .content-ttl .ttl-img
/* HTML5 display-role reset for older browsers 
------------------------------------------------------------------*/
html {
    width: 100%;
    color: #252525;
    font-size: 10px;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
    -webkit-text-size-adjust: 100%;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
body {
    /* font-family: "メイリオ", Meiryo, Arial, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif; */
    font-family: 'Noto Sans Japanese', sans-serif;
    color: #333;
    width: 100%;
    background: #fff;
}
/* common setting
------------------------------------------------------------------*/
.stop {
	border: 3px solid #e60012;
	padding: 40px 30px;
	margin-bottom: 50px;
}
.stop h3 {
	    text-align: center;
    font-size: 2.6rem;
   		margin: 3.5rem 0 1.5rem 0;
    font-weight: normal;
    letter-spacing: .1em;
}
.stop .large-ttl-style {
	line-height: 1.5;
}
.stop p {
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: .05em;
	margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
	.stop {
		border: 2px solid #e60012;
		padding: 20px;
		margin-bottom: 50px;
	}
	.stop h3 {
	    text-align: center;
		font-size: 2.3rem;
   		margin: 3.5rem 0 1.5rem 0;
		font-weight: normal;
		letter-spacing: .1em;
	}
}
.clear {
    font-size: 0% !important;
    margin: 0px !important;
    padding: 0px !important;
    clear: both !important;
    line-height: 0% !important;
    height: 0px !important;
    width: 0px !important;
    float: none !important;
}
.clearboth {
    clear: both
}
.clearfix:after {
    display: block;
    clear: both;
    height: 0px;
    visibility: hidden;
    content: ".";
}
a {
    text-decoration: none;
}
img {
    padding: 0px;
    margin: 0;
    border: none;
    line-height: 0%;
    vertical-align: none !important;
}
/* margin class */
.mt0 {
    margin-top: 0px !important;
}
.mt5 {
    margin-top: 5px !important;
}
.mt10 {
    margin-top: 10px !important;
}
.mt20 {
    margin-top: 20px !important;
}
.mt25 {
    margin-top: 25px !important;
}
.mt30 {
    margin-top: 30px !important;
}
.mt40 {
    margin-top: 40px !important;
}
.mt50 {
    margin-top: 50px !important;
}
.mb0 {
    margin-bottom: 0px !important;
}
.mb5 {
    margin-bottom: 5px !important;
}
.mb10 {
    margin-bottom: 10px !important;
}
.mb20 {
    margin-bottom: 20px !important;
}
.mb25 {
    margin-bottom: 25px !important;
}
.mb30 {
    margin-bottom: 30px !important;
}
.mb40 {
    margin-bottom: 40px !important;
}
.mb50 {
    margin-bottom: 50px !important;
}

.pc .mb250{
 	margin-bottom: 250px	
}

.pc .mb350{
 	margin-bottom: 350px	
}
.ml0 {
    margin-left: 0px !important;
}
.ml5 {
    margin-left: 5px !important;
}
.ml10 {
    margin-left: 10px !important;
}
.ml20 {
    margin-left: 20px !important;
}
.ml30 {
    margin-left: 30px !important;
}
.ml40 {
    margin-left: 40px !important;
}
.ml50 {
    margin-left: 50px !important;
}
.mr0 {
    margin-right: 0px !important;
}
.mr5 {
    margin-right: 5px !important;
}
.mr10 {
    margin-right: 10px !important;
}
.mr20 {
    margin-right: 20px !important;
}
.mr30 {
    margin-right: 30px !important;
}
.mr40 {
    margin-right: 40px !important;
}
.mr50 {
    margin-right: 50px !important;
}
.mt-20 {
    margin-top: -15px !important;
}
.pt0 {
    padding-top: 0px !important;
}
.pt5 {
    padding-top: 5px !important;
}
.pt10 {
    padding-top: 10px !important;
}
.pt20 {
    padding-top: 10px !important;
}
.pt30 {
    padding-top: 30px !important;
}
.pt40 {
    padding-top: 40px !important;
}
.pt50 {
    padding-top: 50px !important;
}
.pb0 {
    padding-bottom: 0px !important;
}
.pb5 {
    padding-bottom: 5px !important;
}
.pb10 {
    padding-bottom: 10px !important;
}
.pb20 {
    padding-bottom: 20px !important;
}
.pb30 {
    padding-bottom: 30px !important;
}
.pb40 {
    padding-bottom: 40px !important;
}
.pb50 {
    padding-bottom: 50px !important;
}
.pb60 {
    padding-bottom: 60px !important;
}
.pl0 {
    padding-left: 0px !important;
}
.pl5 {
    padding-left: 5px !important;
}
.pl10 {
    padding-left: 10px !important;
}
.pl20 {
    padding-left: 20px !important;
}
.pl30 {
    padding-left: 30px !important;
}
.pl40 {
    padding-left: 40px !important;
}
.pl50 {
    padding-left: 50px !important;
}
.pr0 {
    padding-right: 0px !important;
}
.pr5 {
    padding-right: 5px !important;
}
.pr10 {
    padding-right: 10px !important;
}
.pr20 {
    padding-right: 20px !important;
}
.pr30 {
    padding-right: 30px !important;
}
.pr40 {
    padding-right: 40px !important;
}
.pr50 {
    padding-right: 50px !important;
}

.w160 {
    width:160px !important;
}
.w480 {
	width:480px !important;
}
.text-center {
    text-align: center;
    margin-bottom: 10px;
}

.text-right {
    text-align: right;
    margin-bottom: 10px;
}

.text-red{
	color:#e60012 !important;
}

.sp .w-area,
.sp .img-area img{
	width:100% !important;
}

em{
    font-style: normal
}

html {
    font-size: 10px;
}
body {
    min-width: 320px;
    font-family: 'Noto Sans JP', sans-serif;
    color: #222;
    font-weight: 300;
}
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;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
a.pdflink{
	text-decoration: underline;
	color: #222;
}
a.pdflink:active,a.pdflink:visited{
	color: #222;
}

a.textlink{
	text-decoration: underline;
	color: #e60012;
}

a.textlink:active,a.textlink:visited{
	color: #e60012;
}


/* headeer --------------------------------------------------------- */
header{
    border-bottom: 2px solid #e60012;
}
header .inner{
    width: 1080px;
    margin: 0 auto;
    display: flex;
    justify-content:space-between;
}
header .logo{
    padding-top:21px;
    width: 142px;
}
.pc header .logo a:hover{
    opacity: .8;
}

/* gnav */
#nav-global{
    font-size: 1.4rem;
    display:flex;
    justify-content: flex-end;
    padding:74px 0 15px;
}
#nav-global li{
    text-align: center;
}
#nav-global li+li{
    margin-left:20px
}
#nav-global li a{
    color: #252525;
    display: block;
    padding: 10px 20px;
    font-weight: 600;
}
#nav-global li:last-child a{
    padding-right:0;
}
.pc #nav-global li a:hover,
#nav-global li a.current{
    color: #e60012;
    }
#nav-global li a span{
    display: block;
    font-size:10px;
    color: #e60012;
    padding-bottom:5px;
    font-weight: normal;
}
header nav{
    position: relative;
    width:100%;
}

/* sub-nav */
#nav-sub{
    position: absolute;
    top: 30px;
    right: 0;
}
#nav-sub .links,
#nav-sub .sns{
    float: left;
    display: flex;    
    position: relative;
}
#nav-sub .links{
    top:2px;
}
#nav-sub .links li{
    font-size: 1.2rem;
}
#nav-sub .links li+li{
    margin-left:3.5rem;
}
#nav-sub .links li a{
    color: #252525;
    position: relative;
    padding-left: 15px;
}
.pc #nav-sub .links li a:hover{
    color: #e60012;
}
#nav-sub .links li a:before{
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top:1px solid #999;
    border-right:1px solid #999;
    transform: rotate(45deg);
    position: absolute;
    top:50%;
    left:0;
    margin-top:-3px;
}
#nav-sub .sns{
    margin: 0 20px 0 40px;
    top:-3px;
}
#nav-sub .sns a{
    width: 37px;
    height: 37px;
    text-indent: -999em;
    display: block;
}
#nav-sub .sns li+li{
    margin-left:10px;
}
#nav-sub .sns a.btn-fb{
    background: url(../img/ic_fb.png) 100% 0 no-repeat;
	background-size:37px 84px;
}
#nav-sub .sns a.btn-ing{
    background: url(../img/ic_ing.png) 100% 0 no-repeat;
	background-size:37px 84px;
}
#nav-sub .sns a.btn-tiktok{
	background: url(../img/ic_tik.png) 100% 0 no-repeat;
	background-size:37px 84px;
}
.pc #nav-sub .sns a:hover{
    background-position: 100% 100%;
}
#nav-sub .btn-order{
    float: right;
    font-size: 1.3rem;
    position: relative;
    top: -7px;
	/*display: none!important;*/
}
#nav-sub .btn-order a{
    display: inline-block;
    background:#f5a700;
    color: #fff;
    padding: 9px 20px 8px;
    border-radius: 3px;
}
.pc #nav-sub .btn-order a:hover{
    opacity: .8;
}
#nav-sub .btn-order a span{
    position: relative;
    padding-left:10px;
}
#nav-sub .btn-order a span:before{ 
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top:1px solid #fff;
    border-right:1px solid #fff;
    transform: rotate(45deg);
    position: absolute;
    top:50%;
    left:0;
    margin-top:-3px;
}
.pc .sp{
    display: none;
}
@media only screen and (max-width: 767px){
        .pc .sp{
            display: inherit;
        }    
        .sp .pc{
            display: none;
        } 
        body.rock{
            overflow: hidden;
        }
        .container{
            padding-top:47px;
        } 
        header{
            border-bottom: none;
            width: 100%;
            position: absolute;
            z-index: 9999;
            background: #fff;
        }
        header .inner{
            width: auto;
            margin: 0 auto;
            display: block;
            padding: 5px 0;
            /* height: 47px; */
            box-sizing: border-box;
            border-bottom: 2px solid #e60012;
        }
        header .logo{
            padding:0;
            width:52px;
            margin:0 0 0 3.125%;
        }
        header .logo img{
            width: 100%;
            height: auto;
        }    
        /* gnav */
        header nav{
            height: 0;
            overflow: hidden;
            transition: all .5s ease;
        }
        body.rock header{
            overflow-y: scroll;
            height: 100%;
        }
        body.rock header .inner{
            border: none;
        }    
        #nav-global{
            font-size: 1.4rem;
            display: block;
            padding: 0 4.6875%;
            z-index: 9999;
            width: 100%;
            box-sizing: border-box;
        }
        #nav-global li{
            text-align: center;
        }
        #nav-global li+li{
            margin:0;
            border-top:1px dotted #afafaf;
        }
        #nav-global li a{
            padding: 15px 0;
        }
        #nav-global li:last-child a{
            padding-right:0;
        }
        #nav-global li a.current{
            color: #e60012;
            }
        #nav-global li a span{
            display: block;
            font-size:10px;
            color: #e60012;
            padding-bottom:5px;
            font-weight: normal;
        }
        /* sub-nav */
        #nav-sub{
            position:inherit;
            top: 0;
            right: 0;
            width: 100%;
            padding: 0 4.6875%;
            box-sizing: border-box;
        }
        #nav-sub .links,
        #nav-sub .sns{
            float: none;
            display: block;    
            position: relative;
        }
        #nav-sub .links{
            top:0;
        }
        #nav-sub .links li{
            font-size: 1.2rem;
            margin-top:1.4rem;
        }
        #nav-sub .links li+li{
            margin-left:0;
        }
        #nav-sub .links li a{
            display: block;
            color: #252525;
            position: relative;
            text-align: center;
            padding:10px 0;
            background:#f5f5f5;
        }
        #nav-sub .links li a:before{
            left:1rem;
        }
        #nav-sub .sns{
            margin: 0 0;
            padding: 25px 0;
            top:0;
            text-align: center;
            width: 100%;
            display: table;
        }
        #nav-sub .sns li{
            display: table-cell;
            width: 50%;
            padding: 0 15px;
            box-sizing: border-box;
            text-align: center;
        }
        #nav-sub .sns li+li{
            border-left:1px solid #aaa;
        }    
        #nav-sub .sns a{
            width: auto;
            height: 22px;
            box-sizing: border-box;
            padding-top:3px;
            text-indent:0;
            display: inline-block;
            font-size: 1.4rem;
            padding-left:3rem;
            color: #222;
            text-align: left;
        }
        #nav-sub .sns li+li{
            margin-left:0;
        }
        #nav-sub .sns a.btn-fb{
            background: url(../img/ic_fb.png) 0 100% no-repeat;
			background-size:22px 50px;
        }
        #nav-sub .sns a.btn-ing{
            background: url(../img/ic_ing.png) 0 100% no-repeat;
			background-size:22px 50px;
        }
		#nav-sub .sns a.btn-tiktok{
			background: url(../img/ic_tik.png) 0 100% no-repeat;
			background-size:22px 50px;
		}
        #nav-sub .btn-order{
            float: none;
            font-size: 1.4rem;
            position: relative;
            top: 0;
        }
        #nav-sub .btn-order a{
            display: block;
            background:#f5a700;
            color: #fff;
            padding: 10px 0;
            border-radius: 3px;
            text-align: center;
        }
        #nav-sub .btn-order a span{
            position: relative;
            padding-left:0;
            background: url(../img/ic_ticket.png) 50% 0 no-repeat;
            background-size: 27px 24px;
            padding-top:35px;
            display: block;
        }
        #nav-sub .btn-order a span:before{ 
            display:none;
        }
        .sp-menu,  .sp-menu span {
            display: inline-block;
            transition: all .4s;
            box-sizing: border-box;
        }
        .sp-menu {
            position: absolute;
            width: 47px;
            height: 47px;
            right: 0;
            top: 0;
            padding: 10px;
        }
        .sp-menu span {
            position: absolute;
            right: 4.6875;
            width: 60%;
            height: 3px;
            background-color: #e60012;
            border-radius: 6px;
        }
        .sp-menu span:nth-of-type(1) {
            top: 13px;
        }
        .sp-menu span:nth-of-type(2) {
            top: 50%;
            margin-top:-2px;
        }
        .sp-menu span:nth-of-type(3) {
            bottom: 13px;
        }
        .sp-menu.opend span:nth-of-type(1) {
            -webkit-transform: translateY(9px) rotate(-45deg);
            transform: translateY(9px) rotate(-45deg);
        }
        .sp-menu.opend span:nth-of-type(2) {
            opacity: 0;
        }
        .sp-menu.opend span:nth-of-type(3) {
            -webkit-transform: translateY(-9px) rotate(45deg);
            transform: translateY(-9px) rotate(45deg);
        }
    .sp-menu.opend+nav{
        height: auto;
        overflow: inherit;
    }
}


/* main title --------------------------------------------------------- */
.box-ttl{
    background: #000;
    height:200px;
    position: relative;
    display: table;
    width: 100%;
    z-index: 1;
    margin-bottom:2rem;
    min-width: 1080px;
}
.box-ttl:after{
    content: '';
    display: block;
    position: absolute;
    z-index: 50;
    height: 11px;
    width: 100%;
    left: 0;
    bottom: 0;
    background:url(../img/effect_mv.png) 50% 0 repeat-x;
}
.box-ttl h1{
    display: table-cell;
    width: 100%;
    vertical-align: middle;
    color: #fff;
    text-align: center;
    font-size: 3.2rem;
    font-weight: 500;
    letter-spacing: .1em;
    position: relative;
}
.box-ttl h1 span{
    font-size: 1.4rem;
    display: block;
    letter-spacing: 0;
    padding-bottom:1rem;
}
.box-ttl h1:after{
    content: '';
    display:block;
    height: 1px;
    width: 30px;
    background: #fff;
    margin: 2rem auto 0;
}
/* タイトル_背景指定 */
.box-ttl::before{
    content: '';
    background: url(../../img/bg_dotted.png);
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
}



#fair .box-ttl,
#fair-noside .box-ttl{
    background: url(../../fair/img/mv_fair.jpg) 50% 50% no-repeat;
    background-size: cover;
}
#club .box-ttl{
    background: url(../../club/img/mv_club.jpg) 50% 50% no-repeat;
    background-size: cover;
}
#recipe .box-ttl,
#recipe-sub .box-ttl{
    background: url(../../recipe/img/mv_recipe.jpg) 50% 50% no-repeat;
    background-size: cover;
}

#contact .box-ttl{
    background: url(../../contact/img/mv_contact.jpg) 50% 50% no-repeat;
    background-size: cover;
}
#links .box-ttl,#news .box-ttl{
    background: url(../../img/mv_links.jpg) 50% 50% no-repeat;
    background-size: cover;
}
#errorPage .box-ttl,
#sitemap .box-ttl,
#privacy .box-ttl{
    background: url(../../img/mv_all.jpg) 50% 50% no-repeat;
    background-size: cover;
}

@media only screen and (max-width: 767px){
    .box-ttl{
        height:150px;
        width: 100%;
        z-index: 1;
        margin-bottom:0;
        min-width:320px;
    }
   .box-ttl:after{
        content: '';
        height: 5px;
        background:url(../img/effect_mv.png) 50% 0 repeat-x;
       background-size: 170px auto;
    }
    .box-ttl h1{
        font-size: 2.1rem;
        letter-spacing: 0;
        position: relative;
    }
    .box-ttl h1 span{
        font-size: 1.4rem;
        display: block;
        letter-spacing: 0;
        padding-bottom:1rem;
    }
    .box-ttl h1:after{
        content: '';
        display:block;
        height: 1px;
        width: 20px;
        background: #fff;
        margin: 1.5rem auto 0;
    }
}

/* crumb ---------------------------------------------*/
.crumb{
    width: 1080px;
    margin: 0 auto 4rem;
    font-size: 1.4rem;
}
.crumb li{
    display: inline;
    color: #e60012;
    padding-right:2.5rem;
    position: relative;
}
.crumb li a{
    color: #252525
}
.pc .crumb li a:hover{
    color: #e60012
}
.crumb li+li:before{ 
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top:1px solid #aaa;
    border-right:1px solid #aaa;
    transform: rotate(45deg);
    position: absolute;
    top:50%;
    left:-20px;
    margin-top:-4px;
}
@media only screen and (max-width: 767px){
    .crumb{
        display: none;
    }
}

/* main ---------------------------------------------*/
.wrap-main{
    padding-bottom:10rem;
    margin: 0 auto;
    position: relative;
}
.main{
    width: 80rem;
    font-size: 1.4rem;
    padding-left:280px;
    margin: 0 auto;
}
.main h2.common-style{
    font-size: 2.6rem;
    font-weight: normal;
    padding: 2rem  2rem  1.8rem;
    letter-spacing: .05em;
    border-top:1px solid #e60012;
    background: url(../img/bg_h2_common_style.png) 0 100% repeat-x;
    line-height: 1.1;
    margin-bottom:5rem;
}
.main section+section{
    margin-top:7rem;
}
.main .column+.column{
    margin-top:7rem;
}
.main .column.emphasis{
    background: #f5f5f5;
}
.main .intro-fair{
    display: flex;
    flex-flow: row-reverse    
}
.main .intro-fair .box-text{
    width: 356px;
}
.main .intro-fair h2{
    background: url(../../fair/img/img_fair_name.png) 0 0 no-repeat;
    width: 240px;
    height: 118px;
    text-indent: -999em;
    margin-bottom:3rem;
}
.main .intro-fair .detail{
    letter-spacing: .05em;
    margin-bottom: 4rem;
}
.main .intro-fair .detail li span{
    background: #b3b3b3;
    color: #fff;
    margin-right:1.8rem;
    padding: 5px 1rem;;
}
.main .intro-fair .detail li+li{
    margin-top:2.5rem;
}
.main .column.cell1{
    padding: 30px;
}
.main .column.cell2{
    padding: 10px;
    display: flex;
    flex-flow: row-reverse
}
.main .column.cell2 .box-text{
    width: 500px;
    box-sizing: border-box;
    padding:20px;
}
.main .column.cell2 .box-img{
    width: 282px;
}
.main .column.cell2 .box-img img{
	width: 100%;
	height: auto;
	display: block;
}
.main .column h3{
    font-size: 2.2rem;
    padding:2px 0 0 1.5rem;
    border-left:1px solid #e60012;
    line-height: 1.1;
    margin-bottom:3rem;
    letter-spacing: .05em;
    font-weight: 500
}
.main .column h3 span{
	font-size: 1.4rem;
	margin-left:15px;
	font-weight: nomal;
}
.main .column h3 a{
	color:#e60012;
}
.main .column h3 a:hover{
	color:#000;
}
.main .column h4.common-style{
	font-size: 1.8rem;
	line-height: 1.1;
	margin-bottom: 3rem;
	letter-spacing: .05em;
	font-weight: 500;
}
.main .column p{
    line-height: 1.5;
    letter-spacing: .03em;
}
.main .column *+p{
    margin-top:3rem;
}
@media only screen and (max-width: 767px){
    .wrap-main{
        padding-bottom:10rem;
    }
    .main{
        width: auto;
        padding: 4rem 4.6875% 0;
        font-size: 1.4rem;
        margin: 0 auto;
    }
    .main h2.common-style{
        font-size: 2rem;
        padding: 1rem  1rem  1rem;
        letter-spacing: .05em;
        line-height: 1.1;
        margin-bottom:3rem;
    }
    .main section+section{
        margin-top:6rem;
    }
    .main .column+.column{
        margin-top:3rem;
    }
    .main .column.emphasis{
        background: #f5f5f5;
    }
    .main .intro-fair{
        display: block;
        flex-flow: row-reverse    
    }
    .main .intro-fair .box-img img{
        display: block;
        width: 100%;
        height: auto;
    }
    .main .intro-fair .box-text{
        width: auto;
    }
    .main .intro-fair h2{
        background:none;
        text-indent:inherit;
        margin:2rem 0;
        padding-bottom:1rem;
        border-bottom: 1px dashed #e60012;
        color: #e60012;
        text-align: center;
        font-size: 2.4rem;
        width: auto;
        height: auto;
    }
    .main .intro-fair .detail{
        letter-spacing: .05em;
        margin-bottom: 4rem;
    }
    .main .intro-fair .detail li span{
        background: #b3b3b3;
        color: #fff;
        margin-right:1rem;
        padding: 2px .7rem;
        font-size: 1.1rem;
    }
    .main .intro-fair .detail li+li{
        margin-top:2rem;
    }
    .main .column.cell2{
        padding:2rem 1rem;
        display:block;
    }
    .main .column.cell2 .box-text{
        width: auto;
        box-sizing: border-box;
        padding:20px 0 0;
    }
    .main .column.cell2 .box-img{
        background: #000;
        width: auto;
    }
    .main .column h3{
        font-size: 1.7rem;
        padding:1px 0 0 1rem;
        margin-bottom:2rem;
        letter-spacing: .05em;
    }
    .main .column p{
        line-height: 1.5;
        letter-spacing: .03em;
    }
    .main .column *+p{
        margin-top:2rem;
    }
	.main .column h4.common-style span{
		display: block;
		margin:10px 0 0 0;
	}    
}
.btn a{
    border:1px solid #e60012;
    display: inline-block;
    padding:1px;
    min-width: 170px;
	background: #fff;
}
.btn.important a{
    background: #e60012;
}

.btn a span{
    display: block;
    border:1px solid rgba(255,255,255,0);
    position: relative;
    height: 2.5rem;
    line-height:2.5rem;
    padding:  0 2rem;
    text-align: center;
    color: #e60012;
}
input[type="submit"],input[type="reset"],input[type="button"]{
	color: #fff;
	cursor: pointer;
	position: relative;
    height: 4rem;
    line-height: 4rem;
    background: #e60012;
	min-width: 170px;
	font-size: 14px;
	border: 1px solid #e60012;
	margin: 10px;
}
input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
	color: #e60012;
	cursor: pointer;
	position: relative;
    height: 4rem;
    line-height: 4rem;
    background: #fff;
	min-width: 170px;
	border: none;
	border: 1px solid #e60012;
}
.pc .btn a:hover span{
    border:1px solid #e60012;
    display: block;
}
.snav.column_020 .btn a span{
	height: auto;
	padding: 1rem 2rem;
}
.btn.important a span{
    color: #fff;
}
.pc .btn.important a:hover span{
    border:1px solid #fff;
}
.btn a em{
    display: inline-block;
    position: relative;
    padding-left:15px;
	line-height:2rem;
}
.btn a em:before{
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top:1px solid #e60012;
    border-right:1px solid #e60012;
    transform: rotate(45deg);
    position: absolute;
    top:50%;
    left:0;
    margin-top:-4px;
    z-index: 50;
}
.btn.important a em:before{
    border-top:1px solid #fff;
    border-right:1px solid #fff;
}

.btn.gray a{
    background: #d8d8d8;
	border:#d8d8d8 solid 1px;
	color:#000;
	border-radius: 50px;
}
.btn.gray a span{
	color:#000;	
}

.btn.gray a em:before{
    border-top:1px solid #000;
    border-right:1px solid #000;	
}
.pc .btn.gray a:hover{
	background: #e60012;
	border:#e60012 solid 1px;
	color:#fff;
}

.btn.gray a:hover span{
	color:#fff;	
}
.btn.gray a:hover em:before{
    border-top:1px solid #fff;
    border-right:1px solid #fff;	
}
.pc .btn.gray a:hover span{
    border:#e60012 solid 1px;
	border-radius: 50px;
}
.text_icon,
.text_icon_c{
	display: inline-block;
	position: relative;
}

.text_icon_c{
	display: block;
	padding-left: 0;
	text-align: center;
}
.text_icon a,
.text_icon_c a{
	color:#e60012;
	text-decoration: underline;
}
.text_icon a:hover,
.text_icon_c a:hover{
	text-decoration: none;	
}
.text_icon::before,
.text_icon_c::before{
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    transform: rotate(45deg);
    margin-top: -4px;
    z-index: 50;
	border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
	margin-right:10px;
}
.btn_blank a{
	background:#e60012;
	color:#fff;
	display: inline-block;
	padding: 1px;
}
.btn_blank a span{
    display: block;
    border:1px solid rgba(255,255,255,0);
    position: relative;
    height: 2.5rem;
    line-height:2.5rem;
    padding:  2px 3rem;
    text-align: center;
    color: #fff;
}
.pc .btn_blank a:hover span{
    border:1px solid #fff;
    display: block;
}
.btn_blank a em{
    display: inline-block;
    position: relative;
    padding-left:25px;
}
.btn_blank a em:before{
    content: '';
    display: block;
    width: 13px;
    height: 11px;
	background: url(../img/ic_blank_010.png) no-repeat;
	background-size:13px 11px;
    position: absolute;
    top:50%;
    left:0;
    margin-top:-4px;
    z-index: 50;
}
.btn_blank_w a{
    border:1px solid #e60012;
    display: inline-block;
    padding:1px;
    min-width: 170px;
	background: #fff;
}
.btn_blank_w a span{
    display: block;
    border:1px solid rgba(255,255,255,0);
    position: relative;
    height: 2.5rem;
    line-height:2.5rem;
    padding:  0 2rem;
    text-align: center;
    color: #e60012;
}
.pc .btn_blank_w a:hover span{
    border:1px solid #e60012;
    display: block;
}
.btn_blank_w a em{
    display: inline-block;
    position: relative;
    padding-left:25px;
}
.btn_blank_w a em:before{
    content: '';
    display: block;
    width: 13px;
    height: 11px;
	background: url(../img/ic_blank_020.png) no-repeat;
	background-size:13px 11px;
    position: absolute;
    top:50%;
    left:0;
    margin-top:-4px;
    z-index: 50;
}
.w100 a{
	display:block;	
}
@media only screen and (max-width: 767px){
	.btn_blank a{
		display: block;
		padding:10px 0;
	}
	
	.btn_blank_w a{
		padding:8px 0;
	}
	
}

@media only screen and (max-width: 767px){
    .btn a{
        border:1px solid #e60012;
        display: block;
        width: 100%;
        margin: 0 auto;
		padding:8px 0;
    }
    .main .column.cell2 .btn a{
        width: 88%;    
    }
    .btn a span{
        height: auto;
        line-height:auto;
    }
    .btn a em{
        display: inline-block;
        position: relative;
        padding-left:2rem;
    }
    .btn a em:before{
        margin-top:-2px;
    }
}
.caption{
	padding:20px;
	background: #f5f5f5;
}

ul.disc_list,
ul.num_list{
	padding:20px;
}
ul.disc_list li,
ul.num_list li{
	padding-left: 0.5em;
	margin-bottom:15px;
}
ul.disc_list li{
	list-style:disc;
}



ul.num_list li{
	list-style: decimal;
}

ul.disc_list li:last-child,
ul.num_list li:last-child{
	margin-bottom:0;
}
ul.num_list {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
}
ul.num_list li {
  margin-bottom: 10px;
  padding-left: 30px;
  position: relative;
}
ul.num_list li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #bada55;
  color: #222;
  display: block;
  float: left;
  line-height: 22px;
  margin-left: -30px;
  text-align: center;
  height: 22px;
  width: 22px;
  border-radius: 50%;
}

ul.kome-list{
	margin-top:20px;
}
ul.kome-list li{
	list-style:none;
	padding-left: 1em;
    text-indent: -1em;
	margin-bottom:15px;
}
ul.kome-list li:last-child{
	margin-bottom:0;
}

ul.add-caution{
	border: 1px dotted #000;
	margin:20px 0 0 0;
	padding: 15px;
}

ul.add-caution li{
	margin:0 0 10px 0;
}
ul.add-caution li:last-child{
	margin:0;
}

@media only screen and (max-width: 767px){
	ul.disc_list li,
	ul.kome-list li{
		padding-left: 0em;
		text-indent: 0em;
	}
}

.table-area{
	font-size: 1.4rem;
}



.table-area dl{
    display: flex;
	background: #f5f5f5;
	margin-bottom:3px;
}

.table-area dt{
    width: 112px;
    line-height: 1.5;
    letter-spacing: .05em;
    padding-top: 9px;
	font-weight: bold;	
	padding:15px;
}

.table-area dd{
    width: 630px;
    line-height: 1.2;	
	padding:20px;
}

.table-area dd{
	padding-left:0;
}

.table-area-simple,
.table-area-nomal{
	font-size: 1.4rem;
}

.table-area-simple dl,
.table-area-nomal dl,
.table-area-dot dl{
    display: flex;
	margin-bottom:3px;
}

.table-area-simple dt,
.table-area-nomal dt,
.table-area-dot dt{
    width: 112px;
    line-height: 1.5;
    letter-spacing: .05em;
    padding-top: 9px;
	font-weight: bold;	
	padding:15px;
}

.table-area-nomal dt{
	width: 220px;
}
.table-area-nomal dt img{
	width:200px;
}

.table-area-simple dd,
.table-area-nomal dd,
.table-area-dot dd{
    width: 630px;
    line-height: 1;	
	padding:20px;
}
.table-area-nomal dd{
	padding-bottom:40px;
}

.table-area-simple dt,
.table-area-simple dd{
	border-bottom:#afafaf solid 1px;
	background: #fff;
}

.table-area-dot dt,
.table-area-dot dd{
	border-bottom:#afafaf dotted 1px;
	background: #fff;
}




@media only screen and (max-width: 767px){
	.table-area dl{
		display: block;
	}
	.table-area dt,
	.table-area dd{
		width:100% !important;
		box-sizing: border-box;
	}
	.table-area dt,
	.table-area dd{
		padding:20px;
	}
	
	.booth_area .data_box dt,
	.booth_area .company_box dt{
		padding-bottom:10px;
	}	
	.table-area dd{
		padding-top:0;
	}
	.table-area-simple dl,
	.table-area-dot dl{
		display: block;
	}

	.table-area-simple dt,
	.table-area-simple dd,
	.table-area-dot dt,
	.table-area-dot dd{
		width:100%;
		box-sizing: border-box;
	}
	.table-area-simple dt,
	.table-area-simple dd,
	.table-area-dot dt,
	.table-area-dot dd{
		padding:20px;
	}
	
	.table-area-simple dt,
	.table-area-dot dt{
		padding-bottom:10px;
	}
	
	.table-area-simple dd,
	.table-area-dot dd{
		padding-top:0;
	}
	
	.table-area-simple dt,
	.table-area-dot dt{
		border-bottom:none;
		padding-top:10px;
	}
	.table-area-simple dt,
	.table-area-simple dd,
	.table-area-dotdt,
	.table-area-dot dd{
		padding-right:0;
		padding-left:0;
	}
	.table-area-nomal dl{
		display:block;
	}
	.table-area-nomal dt,
	.table-area-nomal dd{
		width: 100%;
		padding:0;
	}
	.table-area-nomal dt img{
		width:200px;
		margin:0 auto;
		padding-bottom:20px;
	}
	
	.booth_area .company_box .btn{
		margin-top:40px
	}

}
/* side ---------------------------------------------*/
.nav-side{
    position: absolute;
    top: 0;
    left: 50%;
    margin-left:-540px;
    z-index: 999;
    width: 230px;
}
.nav-side.fixed{
    position: fixed;
}
@media only screen and (max-width:1080px){
    .nav-side{
        left: 0;
        margin-left:0;        
    }
}
.nav-side ul{
    font-size: 1.4rem;
}
.nav-side li{
    line-height: 1.2;
}
.nav-side li+li{
    margin-top:2.8rem;
}
.nav-side.tight-menu li+li{
	margin-top: 20px;
}
.nav-side li a{
    position:relative;
    padding-left:20px;
    color: #252525;
    display: block;
}
.pc .nav-side li a:hover,
.nav-side li a.current,
.nav-side li.on a{
    color: #e60012;
}
.nav-side li a:before{
    content: '';
    display: block;
    width: 9px;
    height: 9px;
    border-top:1px solid #e60012;
    border-right:1px solid #e60012;
    transform: rotate(45deg);
    position: absolute;
    top:3px;
    left:0;
}

.nav-side li ol{
	background: #f5f5f5;
	padding:15px;
}

.nav-side ol li + li{
	margin-top:1.5rem;
}
.nav-side .sub{
	margin-top:1.5rem;
}
.nav-side li ol li a:before{
	width: 6px;
	height: 6px
}
.nav-side .current{
    display: none;
}
.nav-side .btn{
    margin-bottom:2rem;
}
.nav-side *+.btn{
    margin-top:5.5rem;
}
.nav-side.tight-menu *+.btn{
	margin-top: 25px;
}
.nav-side .btn a{
    font-size: 1.4rem;
    width: auto;
    display: block;
    background: #e60012;
}

.nav-side .btn a span{
    color: #fff;
    height: 5.5rem;
    line-height:5.5rem;
    text-align: left;
    padding: 0;
    display: flex;
    align-items: center;
}
.pc .nav-side .btn a:hover span{
    border:1px solid #fff;
    display: flex;
    align-items: center;
}
.nav-side .btn a em{
    padding-left:4rem;
}
.nav-side .btn a em:before{
    left:15px;    
}
.nav-side .btn a em:after{
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top:50%;
    left:10px;
    margin-top:-10px;
    z-index: 1
}
.btn.important a em:before{
    border-top:1px solid #fff;
    border-right:1px solid #fff;
}
@media only screen and (max-width: 767px){
        .nav-side{
            position:inherit;
            top: 0;
            left: auto;
            margin:0 4.6875%;
            z-index: 999;
            width: auto;
            background: #f5f5f5;
            margin-top:-24px;
        }
        .nav-side.fixed{
            position: inherit;
        }

        .nav-side li{
            line-height: 1.2;
            text-align: center;
        }
        .nav-side li+li{
            margin-top:0;
            border-top:1px dotted #afafaf;
        }
        .nav-side li a,.nav-side li .hl{
            padding:15px 0;
            display: block;
        }
        .nav-side li a:before{
            content: '';
            display: block;
            width: 9px;
            height: 9px;
            border-top:1px solid #e60012;
            border-right:1px solid #e60012;
            transform: rotate(45deg);
            position: absolute;
            top:50%;
            margin-top:-4px;
            left: auto;
            right:1.5rem;
        }
	
		.nav-side .sub{
			margin-top:0;
			border-top:none;			
		}
		.nav-side li ol{
			padding-top:0;
		}
		.nav-side li ol li{
			background:#fff;
		}
	
		.nav-side ol li+li{
			border-top:none;
			margin-top:0;
		}
        .nav-side .btn{
            margin-bottom:0;
        }
        .nav-side *+.btn{
            margin-top:0;
        }
        .nav-side .current{
            display: block;
            border-bottom:1px dotted #fff;
        }        
        .nav-side .current a,    
        .nav-side .btn a{
            font-size: 1.4rem;
            width: auto;
            display: block;
            background: #e60012;
            color: #fff;
            text-align: center;
        }
        .nav-side .current a span,    
        .nav-side .btn a span{
            display: block;
            height: auto;
            line-height: normal;
            padding: 15px 0;
            text-align: center;
        }
        .nav-side .btn a em{
            padding-left:0;
            display: block;
        }
        .nav-side .btn a em:before{
            left:auto;
            right: 1.3rem;
        }
        .nav-side .btn a em:after{
            left:auto;
            right: .5rem;
        }
        .nav-side .current a{
            position: relative;
        }
        .nav-side .current a:before{
            content: '';
            display: block;
            width: 9px;
            height: 9px;
            border-bottom:1px solid #fff;
            border-right:1px solid #fff;
            position: absolute;
            top:50%;
            right:15px;
            transform: rotate(45deg);
            margin-top:-7px;
        }
        .nav-side .current.opend a:before{
            transform: rotate(-135deg);
            margin-top:-1px;
        }
        .nav-side .sp-toggle{
            height: 0;
            overflow: hidden;
            transition: all .5s ease;
        }    
        .nav-side .current.opend + .sp-toggle{        
            height: auto;
        }    
}

/* footer ---------------------------------------------*/
footer{
    background: #f5f5f5;    
}
footer .inner{
    width: 1080px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    padding: 17px 0;
}
footer .inner ul{
    display: flex;
    font-size: 1.4rem;
}
footer .inner li{
    padding-right:1rem;
}
footer .inner li+li{
    padding-left:1rem;
    border-left:1px solid #aaa;
}
footer .inner li a{
    color: #252525
}
.pc footer .inner li a:hover{
    color: #e60012
}
footer small{
    font-size:1.4rem;
}
footer .btn-pagetop a{
    display: block;
    background: #e60012;
    color: #fff;
    font-size: 12px;
    text-align: center;
    padding: 28px 0 15px;
    position: relative;
}
.pc footer .btn-pagetop a:hover{
    opacity: .8;
}
footer .btn-pagetop a:before{
    display:inline-block;
    content: '';
    width: 9px;
    height: 9px;
    border-top:1px #fff solid; 
    border-right:1px #fff solid;
    transform: rotate(-45deg);
    position: absolute;
    left: 50%;
    top: 15px;
    margin-left:-7px;
}
@media only screen and (max-width: 767px){
    footer .inner{
        width: auto;
        min-width: 320px;
        display: block;
        padding: 2rem 0;
        text-align: center;
    }
    footer .inner ul{
        display: block;
        text-align: center;
        margin-bottom:1.5rem;
    }
    footer .inner li{
        display: inline;
        padding-right:1rem;
    }
    footer .inner li+li{
        padding-left:1rem;
        border-left:1px solid #aaa;
    }
    footer .inner li a{
        color: #252525
    }
    footer small{
        font-size:1.2rem;
    }
}
.btn-order-fixed{
    display: none;    
    width: 118px;
    height: 118px;
    background: #f5a700;
    border-radius: 50%;
    position: fixed;
    z-index: 10;
    right: 20px;
    bottom:20px;
}

.btn-order-fixed img{ 
    width: 118px;
    height: 118px;
}
.btn-order-fixed.show{
    display:block;
	display: none!important;
}
.pc .btn-order-fixed:hover{
    opacity: .8;
}
.btn-order-fixed.stop{
    bottom:130px;
}
@media only screen and (max-width: 767px){
    .btn-order-fixed{
        display: none;
        width: 70px;
        height: 70px;
        right: 20px;
        bottom:20px;
    }
    .btn-order-fixed img{
        width: 100%;
        height: auto;
    }
    .btn-order-fixed.show{
        display:block;
    }
    .btn-order-fixed.stop{
        bottom:0;
    }
}
/* form_parts */
.wrap-form{
    background:#f5f5f5;
    padding: 30px;
    font-size: 1.4rem;
}
.wrap-form .form-sttl{
    font-size: 2.2rem;
    border-bottom:2px solid #e60012;
    padding-bottom: 15px;
    margin-bottom:2rem;
}

.wrap-form h3.form-sttl{
    font-size: 1.6rem;
	border-bottom:none;
	margin-top: 2.5rem;
	margin-bottom:0;
    padding: 20px 20px 2rem 20px;
	background: #fff;
}

.wrap-form h2.form-sttl .text-supple{
	font-size: 1.4rem;
	margin-left:15px;
	font-weight: nomal !important;
}

.wrap-form a.js-btn-del{
    border:1px solid #e60012;
    display: inline-block;
    padding:1px;
    min-width: 170px;
	background: #fff;
	font-size:1.24rem;
	font-weight: normal;
	float: right;
}
.wrap-form a.js-btn-del span{
    display: block;
    border:1px solid rgba(255,255,255,0);
    position: relative;
    height: 2.5rem;
    line-height:2.5rem;
    padding:  0 2rem;
    text-align: center;
    color: #e60012;	
}

.wrap-form a.js-btn-del span em{
	display: inline-block;
	position: relative;
	padding-left: 15px;
	line-height: 2rem;
}

.wrap-form a.js-btn-del span em:before{
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -4px;
    z-index: 50;
}

.pc .wrap-form a:hover.js-btn-del span{
    border:1px solid #e60012;
    display: block;
}


nav.tab-formselect{
    display: flex;
    justify-content: space-between;
    margin-bottom:3rem;
}
nav.tab-formselect p{
    width: 390px;
    text-align: center;
}
nav.tab-formselect a{
    display: block;
    border: 1px solid #e60012;
    color: #e60012;
    padding:1px;
}
nav.tab-formselect a.current{
    color: #fff;
    background: #e60012;
}
nav.tab-formselect a span{
    display: block;
    padding: 8px 0;    
    border:1px solid rgba(255,255,255,0);
}
.pc nav.tab-formselect a:hover span{    
    border: 1px solid #e60012;
}
nav.tab-formselect a em{
    position: relative;
    padding-left:20px;
}
nav.tab-formselect a em:before{
    display:inline-block;
    content: '';
    width: 8px;
    height: 8px;
    border-top:1px #e60012 solid; 
    border-right:1px #e60012 solid;
    transform: rotate(45deg);
    position: absolute;
    left: 0;
    top: 6px;
}
nav.tab-formselect a.current em:before{
    border-top:1px #fff solid; 
    border-right:1px #fff solid;    
    transform: rotate(135deg);
    top: 2px;
}
.wrap-form p a{
    color: #e60012;
    text-decoration: underline
}
.pc .wrap-form p a:hover{
    color: #252525;
}
.wrap-form dl{
    display: flex;
}

.wrap-form .add-different{
	padding-bottom:20px;
	background:#fff;
	margin-bottom: 2.5rem;
}

.wrap-form .add-different dl{
	background:#fff;
	padding:0 20px;
}
.wrap-form *+dl{
    margin-top:2.5rem;
}
.wrap-form dt span{
    font-size: 1rem;
    color: #e60012;
    padding: 2px 5px;
    border: 1px solid #e60012;
    margin-left:1rem;
}
.wrap-form dt{
    width: 232px;
    line-height: 1.5;
    letter-spacing: .05em;
   /* padding-top:9px;*/
}
.wrap-form dd{
    width: 510px;
    line-height: 1;
}
.wrap-form dd div{
    position: relative;    
}
.wrap-form dd input[type="text"],
.wrap-form dd input[type="password"]{
    width: 100%;
    box-sizing: border-box;
    padding: 9px;
    position: relative;
    z-index: 1;
    border: 1px solid #aaa;
}

.wrap-form dd input.w50[type="text"]{
	width:50%;
	margin:0 10px 0 0;
}
.wrap-form dd input.w20[type="text"]{
	width:20%;
	margin:0 10px 0 0;
}

.wrap-form dd input[name="zip"]{
    width: 95%;
    margin-left:1rem;
}
.wrap-form dd *+input[type="text"],
.wrap-form dd *+input[type="password"]{
    margin-top:8px;
}
.wrap-form dd input[disabled]{
    padding: 9px 0 ;
    border: none;
    background: none;
    width: auto;
}
.wrap-form dd select{
    padding: 9px;
    position: relative;
    z-index: 1;
    border: 1px solid #aaa;
}

.wrap-form dd textarea{
    width: 100%;
    height: 8em;
    padding: 9px;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    resize:none;
    line-height: 1.4;
    border: 1px solid #aaa;
}
.wrap-form input[type="text"]:focus,
.wrap-form input[type="password"]:focus,
.wrap-form textarea:focus,
.wrap-form select:focus{
    border: 1px solid #46a3f2;
    background: #f5faff
}
.wrap-form label{
    margin-right:3rem;
}
.wrap-form dd .balloon-mes{
    position: absolute;
    z-index: 10;
    display: inline-block;
    background: #e60012;
    padding: 7px 15px;
    line-height: 1.4;
    border-radius: 3px;
    color: #fff;
    left:-5px;
    font-size: 1.2rem;
    top: -22px;
    display: none;
}
.wrap-form dd .balloon-mes:before{
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 5px 0 5px;
    border-color: #e60012 transparent transparent transparent;
    position: absolute;
    bottom:-7px;
    left: 15px;
}
.wrap-form input[type=radio],
.wrap-form input[type=checkbox]{
    opacity: 0;
    z-index: -1;
    position: absolute;
}
.wrap-form .btn-radio{
    background: url(../img/ic_radio.png) 0 0 no-repeat;
    display:inline-block;
    height: 38px;
    line-height: 38px;
    padding-left:25px;
}
.wrap-form .btn-checkbox{
    background: url(../img/ic_check.png) 0 0 no-repeat;
    display:inline-block;
    height: 38px;
    line-height: 38px;
    padding-left:25px;
}
input[type=radio]:checked + .btn-radio,
input[type=checkbox]:checked + .btn-checkbox{
    background-position: 0 100%;
}
.wrap-form dd .attend{
    display: block;
    margin-top:8px;
    position: relative;
    line-height: 1.4;
    font-size: 1.2rem;
}
.wrap-form dd .attend .lim-count{
    position: absolute;
    right:0;
    top:0;
    font-size: 1.4rem;
}
.wrap-form dd .attend .lim-count em{
    margin-right:.5rem;
    color: #009e64
}
.wrap-form dd .attend .lim-count em.over{
    color: #e60012
}
.wrap-form .standout{
	font-weight: bold;
}

.wrap-form .other-area{
	border:1px dotted #000;
	padding:15px;
}
.wrap-form .other-area-red{
	border:1px dotted #e60012;
	padding:15px;
}


.wrap-form .other-area h3,
.wrap-form .other-area-red h3{
	border-bottom:1px dotted #000;
	padding:0 0 10px 0;
	font-size:1.6rem;
	font-weight: normal;
}
.btn-submit{
    display: block;
    margin: 3rem auto 0;
    width: 20rem;
    background: #e60012;
    border:1px solid #e60012;
    cursor: pointer;
    padding: 1px;
}
.btn-submit span{
    display: block;
    border:1px solid rgba(255,255,255,0);
    color: #fff;
    height: 4rem;
    line-height: 4rem;
}
.btn-submit span em{
    padding-left:2rem;
    position: relative;
}
.btn-submit span em:before{
    display:inline-block;
    content: '';
    width: 8px;
    height: 8px;
    border-top:1px #fff solid; 
    border-right:1px #fff solid;
    transform: rotate(45deg);
    position: absolute;
    left: 0;
    top: 4px;
}
.pc .btn-submit:hover span{
    border:1px solid #fff;
}

.btn-submit.btn_off{
    background: #b3b3b3;
    border:1px solid #b3b3b3;
}

.wrap-form .err input[type="text"],
.wrap-form .err input[type="password"],
.wrap-form .err textarea,
.wrap-form .err select{
    border: 1px solid #e60012;
    background: #ffe4e6;
}
.wrap-form .err:before{
    content: '!';
    color: #fff;
    font-size: 11px;
    z-index: 10;
    position: absolute;
    left: 0;
    top: -3px;
}
.wrap-form .err:after{
    content: '';
    display: block;
    background: #e60012;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    position: absolute;
    z-index: 1;
    left: -8px;
    top: -8px;
}

.mes-err-ajax {
	color: #e60012;
	background: #fff;
	border: 1px solid #e60012;
	padding: 2rem;
	margin-bottom : 5rem;
}

.mes-err-ajax  p{
}

.mes-err{
    color:#e60012;
    position: fixed;
	top:0;
	left:0;
	right:0;
	margin:0;    
	background: #fff;
	padding:20px 0;
	width: 100%;
	z-index: 9999;
	border-bottom:1px solid #eee;
	display: none;
}

.mes-err p{
	position: relative;
	width: 1080px;
	margin:0 auto;
	padding-left:25px;
}

.mes-err p:before{
    content: '!';
    color: #fff;
    font-size: 10px;
    z-index: 10;
    position: absolute;
    left: 7px;
    top: 3px;
}
.mes-err p:after{
    content: '';
    display: block;
    background: #e60012;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    position: absolute;
    z-index: 1;
    left: 0;
    top:-1px;
}
.mes-fin{
    background: #e60012;
    color:#fff;
	padding:10px 0;
	text-align: center;
	font-size:1.8rem;
}
form > p{
    margin: 2rem 0;
}
.upload-img {
	margin-bottom:10px;
}
.upload-img img{
	width:200px;
	height:auto;
}

.required-w{
	background:#fff;
	margin-top:20px;
	padding:5px 20px 20px 20px;
}

.required-w .title{
	font-weight: bold;
	margin-right:20px;
}

.js-disabled {
	opacity : 0.5;
}


@media only screen and (max-width: 767px){
    /* form_parts */
    .wrap-form{
        padding: 2rem 1.5rem;
    }
    .wrap-form .form-sttl{
        font-size: 2rem;
        border-bottom:2px solid #e60012;
        padding-bottom: 1rem;
    }
	
	.wrap-form a.js-btn-del{
		float:none;
		width:100%;
		margin-top:20px;
	}
	
    nav.tab-formselect{
        display: flex;
        justify-content: space-between;
        margin-bottom:3rem;
        font-size: 1.2rem;
    }
    nav.tab-formselect p{
        width: 50%;
    }
    .wrap-form dl{
        display: block;
    }
    .wrap-form *+dl{
        margin-top:3rem;
    }
    .wrap-form dt span{
        font-size: 1rem;
        color: #e60012;
        padding: 2px 5px;
        border: 1px solid #e60012;
        margin-left:1rem;
    }
    .wrap-form dt{
        width: auto;
        line-height: 1;
        padding-top:0;
        border-left:2px solid #e60012;
        padding-left:.7em;
    }
    .wrap-form dd{
        margin-top:1rem;
        width: auto;
        line-height: 1;
    }
    .wrap-form dd input[name="zip"]{
        width: 90%;
        margin-left:1rem;
    }
    .wrap-form dd *+input[type="text"],
    .wrap-form dd *+input[type="password"]{
        margin-top:8px;
    }
    .wrap-form dd select{
        width: 100%;
    }
	
	.wrap-form dd select.w50{
		-webkit-appearance:none;
		width:50%;
		background: #fff;
	}
	.wrap-form dd select.w20{
		-webkit-appearance:none;
		width:15%;
		background: #fff;
	}
    .wrap-form dd .balloon-mes{
        position: absolute;
        z-index: 10;
        display: inline-block;
        background: #e60012;
        padding: 7px 15px;
        line-height: 1.4;
        border-radius: 3px;
        color: #fff;
        left:-5px;
        font-size: 1.2rem;
        top: -22px;
        display: none;
    }
    .wrap-form dd .balloon-mes:before{
        content: '';
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 7px 5px 0 5px;
        border-color: #e60012 transparent transparent transparent;
        position: absolute;
        bottom:-7px;
        left: 15px;
    }
    .wrap-form input[type=radio],
    .wrap-form input[type=checkbox]{
        opacity: 0;
        z-index: -1;
        position: absolute;
    }
    .wrap-form dd .attend br{
        display: none;
    }
    .wrap-form dd .attend .lim-count{
        display: block;
        position:inherit;
        right:0;
        top:0;
        padding-top:5px;
        text-align: right;
        font-size: 1.2rem;
    }
    .btn-submit{
        display: block;
        margin: 3rem auto 0;
        width: 100%;
        background: #e60012;
        border:1px solid #e60012;
        cursor: pointer;
        padding: 1px;
    }
    .btn-submit span{
        display: block;
        border:1px solid rgba(255,255,255,0);
        color: #fff;
        height: 4rem;
        line-height: 4rem;
    }
    .btn-submit span em{
        padding-left:2rem;
        position: relative;
    }
    .btn-submit span em:before{
        display:inline-block;
        content: '';
        width: 8px;
        height: 8px;
        border-top:1px #fff solid; 
        border-right:1px #fff solid;
        transform: rotate(45deg);
        position: absolute;
        left: 0;
        top: 4px;
    }

    .wrap-form .err input[type="text"],
    .wrap-form .err input[type="password"],
    .wrap-form .err textarea,
    .wrap-form .err select{
        border: 1px solid #e60012;
        background: #ffe4e6;
    }
    .wrap-form .err .mes-err{
        display: block
    }

    .mes-err p{
        color:#e60012;
        position: relative;
        padding-left:25px;
		width:85%;
    }
    .mes-err p:before{
        content: '!';
        color: #fff;
        font-size: 10px;
        z-index: 10;
        position: absolute;
        left: 7px;
        top: 3px;
    }
    .mes-err p:after{
        content: '';
        display: block;
        background: #e60012;
        width: 18px;
        height: 18px;
        border-radius: 50%;
        position: absolute;
        z-index: 1;
        left: 0;
        top:-1px;
    }
    form > p{
        margin: 2rem 0;
    } 
	
	.required-w{
		padding-top:25px;
	}
	
	.required-w .title{
		display: block;
	}
	
	.wrap-form h2.form-sttl .text-supple{
		display: block;
		margin-top:10px;
		margin-left:0;
		font-weight: nomal !important;
	}
}

/* lesson_area */
.lesson_area{
	padding-top:30px;
	font-size: 1.4rem;
}
.main .column.lesson_area h3{
	background: #f5f5f5;
	font-weight: normal;
	font-size: 2.4rem;
	padding:20px;
	margin-top: 50px;
	margin-bottom: 20px;
	border: none;
}

.lesson_area h4{
	font-size: 2.2rem;
	padding: 2px 0 0 1.5rem;
	border-left: 1px solid #e60012;
	line-height: 1.1;
	margin-top: 3rem;
	margin-bottom: 2rem;
	letter-spacing: .05em;
	font-weight: 500;
}
.h3_p_bold{
	font-weight:bold;
	font-size:1.4rem;
}

.lesson_area h5{
	font-size: 1.8rem;
	margin-bottom:0;
}

.lesson_area .inner h5{
	margin-bottom:20px;
}

.lesson_area dl{
	padding: 30px;
	border: #afafaf 1px dotted;
}

.lesson_area dl dt figure img,
.lesson_area dl dd figure img{
	object-fit: cover; 
}
.lesson_area dl dt figure{
	width:230px;
	height:180px;
	float:right;
	margin-left:30px;	
}
.lesson_area dl dt figure img{
	max-height: 180px;
	width: auto;
	display: block;
	margin: auto;
	max-width: 230px;
}
.lesson_area dl dd figure{
	width:180px;
	height:180px;
	float:left;
	margin-right:30px;	
}
.lesson_area dl dd figure img{
	max-height: 180px;
	width: auto;
	display: block;
	margin: auto;
	max-width: 180px;
}

.lesson_area dl dt{
	margin-bottom: 30px;
}

.lesson_area dl dd{
	background: #f5f5f5;
    letter-spacing: .05em;
	padding: 20px;
}

.lesson_area dl dd ul{
	float:left;
	width:480px;
}

.lesson_area dl dd li {
    margin-bottom: 10px;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
}

.lesson_area dl dt:after,
.lesson_area dl dd:after,
.lesson_area dl dd li:after {
    display: block;
    clear: both;
    height: 0px;
    visibility: hidden;
    content: ".";
}

.lesson_area dl dd span{
	background: #b3b3b3;
	color: #fff;
	margin-right: 1.4rem;
	padding: 5px 1rem;
	min-width:70px;
	display: block;
	text-align: center;
	float:left;
}

.lesson_area dl dd p{
	overflow: hidden;
	float: left;
	width: 340px;
	margin-top:0 !important;
}

.lesson_area dl dd .name{
	font-weight: bold;
	display: block;

}

.main .lesson_area dt p{
	margin-top:20px;
}

@media only screen and (max-width: 767px){
	.lesson_area{
		padding-top:0;
	}
	.main .column.lesson_area h3{
		align-top: 0;
	}
	.lesson_area dl {
    	padding: 15px;
	}
	.lesson_area dl dt figure,.lesson_area dl dd figure{
		max-height: 100%;
		max-width: 100%;
		width:auto;
		height:auto;
		float:none;
		margin-right:0;	
		margin-left: 0;
	}
	.lesson_area dl dt figure img,
	.lesson_area dl dd figure img{
		width:auto;
		max-width: 100%;
		height: 230px;
		float:none;
		display: block;
		margin:0 auto 10px auto;
	}
	
	.lesson_area dl dd ul{
		width:100%;
	}
	
	.lesson_area dl dd span,
	.lesson_area dl dd em{
		float:none;
		width:100%
	}
	
	.lesson_area dl dd span{
		margin-bottom:10px;
	}
	
	.lesson_area dl dd li{
		margin-bottom:20px;
		display: block;
	}
}

/* booth_area */
.booth_area .bx-wrapper{
	margin:20px 0 80px 0;
}
.booth_area .bxslider li img{
	width: 800px;
	height: 381px;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}
.booth_area ul.menu-area,
.list-area ul.menu-area{
	margin-bottom:20px;
	display: flex;
}

.booth_area .menu-area{
	float:left;
	margin-right:10px;
}

.booth_area ul.menu-area li,
.list-area ul.menu-area li{
	color:#fff;
	font-size:1.3rem;
	margin-right: 10px;
	padding:6px;
	text-align: center;
	width:135px;
	border-radius: 30px;
}

.booth_area .menu-area .type,
.list-area ul.menu-area .type{
	background: #e7537d;
}
.booth_area .menu-area .reserve,
.list-area ul.menu-area .reserve{
	background: #f5a700;
}
.booth_area .menu-area .reserve-more,
.list-area ul.menu-area .reserve-more{
	background:#008af5;
}

.booth_area .data_box,
.booth_area .company_box{
	font-size: 1.4rem;
}

.booth_area .data_box dl,
.booth_area .company_box dl{
    display: flex;
	background: #f5f5f5;
	margin-bottom:3px;
}

.booth_area .data_box dt,
.booth_area .company_box dt{
    width: 180px;
    line-height: 1.5;
    letter-spacing: .05em;
    padding-top: 9px;
	font-weight: bold;	
	padding:15px;
}

.booth_area .data_box dd,
.booth_area .company_box dd{
    width: 630px;
    line-height: 1;	
	padding:20px;
}

.booth_area .data_box dd{
	padding-left:0;
}

.booth_area .highlights{
	border:#afafaf solid 1px;
	padding:30px;
	margin:40px 0 80px 0;	
}

.booth_area .company_box .btn{
	margin-top:80px;	
}
.booth_area .company_box .btn a{
	width:100%;
	display: block;	
}

.booth_area .company_box dt,
.booth_area .company_box dd{
	border-bottom:#afafaf solid 1px;
	background: #fff;
}

@media only screen and (max-width: 767px){
	.booth_area .bxslider li img{
		width: 100%;
		height: 200px;
		object-fit: cover;
	}
	
	.booth_area ul.menu-area {
		float:none;
		margin-bottom:10px;
	}
	
	.booth_area ul.menu-area li {
		display: flex;
		justify-content: center;
		align-items: center; 			
	}
	
	.booth_area .demo-area{
		padding:0;
		margin-bottom:20px;
	}

	.booth_area .data_box dl,
	.booth_area .company_box dl{
		display: block;
	}
	.booth_area .data_box dt,
	.booth_area .data_box dd,
	.booth_area .company_box dt,
	.booth_area .company_box dd{
		width:100%;
		box-sizing: border-box;
	}
	.booth_area .data_box dt,
	.booth_area .company_box dt,
	.booth_area .data_box dd,
	.booth_area .company_box dd{
		padding:20px;
	}
	
	.booth_area .data_box dt,
	.booth_area .company_box dt{
		padding-bottom:10px;
	}
	
	.booth_area .data_box dd,
	.booth_area .company_box dd{
		padding-top:0;
	}
	
	.booth_area .company_box dt{
		border-bottom:none;
		padding-top:10px;
	}
	.booth_area .company_box dt,
	.booth_area .company_box dd{
		padding-right:0;
		padding-left:0;
	}
	
	.booth_area .company_box .btn{
		margin-top:40px;
	}
}
/* scroll_area */
.scroll_area{
	height: 300px;
	overflow: auto;
	padding-right: 15px;
}

.scroll_area .column{
	margin-top:3rem;
}

.scroll_area * + p {
    margin-top: 1rem;
}

.scroll_area::-webkit-scrollbar{
	width: 5px;
	background: #eee;
}

.scroll_area::-webkit-scrollbar:horizontal{
	width: 5px;
	background: #eee;
}

.scroll_area::-webkit-scrollbar-thumb{
	background: #e60012;
	border-radius: 2px;
}

.scroll_area::-webkit-scrollbar-thumb:horizontal{
	background: #e60012;
	border-radius: 2px;
}

.scroll_area::-webkit-scrollbar-track-piece:start{
	background: #eee;
}

.scroll_area::-webkit-scrollbar-track-piece:end{
	background: #eee;
}
.scroll_area::-webkit-scrollbar-corner{
	background: transparent;
}
.main section + section.kana-area,
.main section + section.map-area{
	margin-top:4rem;
}
.kana-area h3,
.map-area h3{
	margin-top:0;
}
.type-area ul,
.category-area ul,
.kana-area ul{
	margin-bottom: 20px;
    display: flex;
	flex-wrap: wrap;
}
.type-area ul li,
.category-area ul li,
.kana-area ul li {
	background: #fff;	
	border:#e60012 solid 1px;
	text-align: center;
}

.type-area ul li,
.category-area ul li{
	width: calc(25% - 8px);
	margin: 0 8px 10px 0;
}

.kana-area ul li {
	width: calc(9.8% - 8px);
	margin: 0 8px 10px 0;
}

.type-area ul li:nth-child(4n),
.category-area ul li:nth-child(4n){
	margin-right:0;
}

.kana-area ul li:last-child{
	margin-right:0;
}
.type-area ul li a,
.category-area ul li a,
.kana-area ul li a{
	color:#e60012;
	display: block;
	padding:10px 0;
}
.type-area ul li a:hover,
.category-area ul li a:hover,
.kana-area ul li a:hover{
	color:#fff;
}
.type-area ul li:hover,
.category-area ul li:hover,
.kana-area ul li:hover{
	background:#e60012;
}

.caution{
	margin-top:20px;
}

.list-area{
	margin-top:70px;
}
.list-area table {
    border-collapse: collapse;
    width: 100%;
}

.list-area table tr.title td {
    background: #f7f7f7;
    color: #333;
    padding: 20px 0;
    text-align: center;
    vertical-align: middle;
}

.list-area table tr.title td.kana{
	font-size:2rem;
	font-weight: bold;
}

.list-area table td {
    background: #fff;
    padding:20px 0;
    vertical-align: middle;
	text-align: left;
}

.list-area table tr{
	border-bottom:#afafaf dotted 1px;	
}

.list-area table tr:first-child{
	border-bottom:none;
}

.list-area .menu-area{
	display: block !important;
}

.list-area .menu-area li{
	margin-bottom:5px;	
}

.list-area .menu-area li:last-child{
	margin-bottom:0;
}

.demo-area{
	padding:0 25px;
}

.demo-area:after{
	display: block;
    clear: both;
    height: 0px;
    visibility: hidden;
    content: ".";
}
.demo-area li{
	display: block;	
	margin-bottom:10px;
	overflow: hidden;
}

.demo-area span{
	background: #f5a700;
	color: #fff;
	border:#f5a700 solid 1px;
	padding: 5px 1rem;
	width:170px;
	display: block;
	text-align: center;
	float:left;
}

.demo-area em{
	overflow: hidden;
	float: left;
	padding: 5px 2rem;
	border:#f5a700 solid 1px;	
}

.list-area table figure img{
	width: 200px;
	height: 102px;
	object-fit: cover;
}
.list-area table p{
	padding:0 25px;
}
.list-area table p a{
	color:#e60012;
	font-size:1.8rem;
	margin-bottom:15px;
}

.list-area table p a{
    display: inline-block;
    position: relative;
    padding-left:15px;
}
.list-area table p a:before{
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top:1px solid #e60012;
    border-right:1px solid #e60012;
    transform: rotate(45deg);
    position: absolute;
    top:0;
    left:0;
    margin-top:7px;
    z-index: 50;
}

/*
 協賛リンク用の追記
 mod 2019-04-17
 */
.list-area table p.link-kyousan a{
	font-size : 1.2rem;
}
.list-area table p.link-kyousan a:before{
    margin-top:3px;
}


@media only screen and (max-width: 767px){
	.type-area ul li,
	.category-area ul li{
    	width: calc(50% - 8px);
	}
	.type-area ul li a,
	.category-area ul li a,
	.kana-area ul li a{
    	padding: 15px 0;
	}
	
	.kana-area ul li{
    	width: calc(33.3% - 8px);
	}
	.type-area ul li:nth-child(4n),
	.category-area ul li:nth-child(4n){
		margin-right:8px;
	}
	
	.type-area ul li:nth-child(even),
	.category-area ul li:nth-child(even),
	.kana-area ul li:nth-child(3n){
		margin-right:0
	}	
	
	.list-area table td{
		display: block;
		padding:10px 0 0 0;
	}
	
	.list-area table p,
	.list-area .demo-area{
		padding:0;
	}
	.list-area .demo-area{
		margin-top:10px;
	}
	.list-area table p a{
		margin-bottom:5px;
	}
	.list-area .menu-area{
		display: flex !important;
		   
	}
	.list-area .menu-area li{
		display: flex;
		justify-content: center;
    	align-items: center;
		width: 33.3% !important;
		margin-bottom:0;
	}
	.list-area table figure{
		margin:20px 0 10px 0;
	}
	.list-area table figure img{
		width:100%;
		height: 200px;
	}
	
	.list-area .other{
		display: none;
	}
}

/* school-area */
.main .school-area{
    display: flex;
    flex-flow: row-reverse ;
	margin-top:30px;		
}

.main .school-area .box-text{
    width: 518px;
}
.main .school-area .box-img{
	width:282px;
}
.main .school-area .box-img img{
	margin-bottom:10px;
}
.main .school-area .box-img em{
	font-size:1rem;
}
.main .school-area .detail{
    letter-spacing: .05em;
}
.main .school-area .detail li span{
    background: #b3b3b3;
    color: #fff;
    margin-right:1.8rem;
    padding: 5px 1rem;;
	float: left;
	width:60px;
	text-align: center;
}

.main .school-area .detail li em{
	overflow: hidden;
	float: left;
	width: 340px;
	line-height:2rem;
}

.main .school-area .detail li:after {
    display: block;
    clear: both;
    height: 0px;
    visibility: hidden;
    content: ".";
}
.main .school-area .detail li+li{
    margin-top:1rem;
}

@media only screen and (max-width: 767px){
    .main .school-area{
        display: block;
        flex-flow: row-reverse    
    }
	.main .school-area .box-img,
    .main .school-area .box-img img{
        display: block;
        width: 100%;
        height: auto;

    }
    .main .school-area .box-text{
        width: auto;
		margin-top:20px;
    }
    .main .school-area h2{
        background:none;
        text-indent:inherit;
        margin:2rem 0;
        padding-bottom:1rem;
        border-bottom: 1px dashed #e60012;
        color: #e60012;
        text-align: center;
        font-size: 2.4rem;
        width: auto;
        height: auto;
    }
    .main .school-area .detail{
        letter-spacing: .05em;
        margin-bottom: 4rem;
    }
    .main .school-area .detail li span{
        background: #b3b3b3;
        color: #fff;
        margin:0 0 10px 0;
        padding: 8px 0;
        font-size: 1.4rem;
		width:100%;
    }
	.main .school-area .detail li em{
		float:none;
	}
    .main .school-area .detail li+li{
        margin-top:2rem;
    }
}
/* index */
.snav{
	display: flex;	
	margin-bottom:70px;
}

.snav.column_020{
	margin-top:20px;
}
.snav.column_030 li{
	width: calc(33.3% - 15px);
	margin:0 15px 0 0;
}

.snav.column_060 li{
	width: calc(16.66% - 15px);
	margin:0 15px 0 0;
}

.snav.column_060 li .btn a{
	min-width:auto;
}

.snav.column_020 li{
	width: calc(50% - 15px);
	margin:0 30px 0 0;
}
.snav li:last-child{
	margin:0;
}
.snav li p.btn a{
	display: block;
}

@media only screen and (max-width: 767px){
	.snav li p.btn a{
		min-width:auto;
	}
	.snav li p.btn a span{
		padding:0;
	}
	.btn a em{
		padding-left:1.4rem;
	}
	.snav.column_060{
		flex-wrap:wrap;
	}
	.snav.column_060 li{
		width: calc(33.33% - 15px);
		margin:0 15px 10px 0;
	}
	
	.btn.gray a{
		border-radius: 5px;
	}
	.snav.column_020.spwrap{
		flex-wrap: wrap;
	}
	.snav.column_020.spwrap li{
		width: 100%;
		margin: 0 0 20px 0;
	}
}
/* index */
.mv-index{
    background: url(../../img/bg_main.jpg) 50% 50% no-repeat;
    background-size: cover;
    color: #fff;
    position: relative;
    overflow: hidden;
    height: 540px;
    box-sizing: border-box;
    padding-top:54px;
}
.mv-index .inner:before{
    content: '';
    background: url(../../img/bg_dotted.png);
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
}

.mv-index a{
    display: block;
    color: #fff;
    position: relative;
    z-index: 100;
    width: 980px;
    margin: 0 auto;
}
.mv-push{
    width: 980px;
    display: flex;
    background: #e60012;
    box-shadow: 0 0 10px rgba(0,0,0,.33)
}
.pc .mv-index a:hover .mv-push{
    background: #e73643;
}
.mv-push .img{
    width: 50%;
}
.mv-push .img img{
    display: block;
}
.mv-push .text{
    width: 50%;
    padding:2rem 6.5rem 0 6.5rem;
    box-sizing: border-box;
    text-align: center;
}
.mv-push .text h1 span,
.mv-push .text h1:after{
    display: none;
}
.mv-push .text h1{
    background: url(../../img/mv_copy_pc.png) 0 0 no-repeat;
    display: block;
    width: 360px;
    height: 316px;
    text-indent: -9999em;
    margin-bottom:0rem;
}
.box-ttl h1 span{
	padding-bottom:0;
}
.mv-push .text p{
    text-align: center;
    font-size: 1.5rem;
    letter-spacing: .05em;
    line-height: 1.4;
}
.mv-push .text p b{
    font-size: 2.8rem;
}
.mv-push .text p.btn{
    background: #fff;
    margin-top:2.2rem;
    color: #e60012;
    font-size: 1.4rem;
    padding: 12px 0;
    line-height: 1;
}
.mv-push .text p.btn em{
    display: inline-block;
    position: relative;
    padding-left:25px;
}
.mv-push .text p.btn em:before{
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-top:1px solid #e60012;
    border-right:1px solid #e60012;
    transform: rotate(45deg);
    position: absolute;
    top:50%;
    left:0;
    margin-top:-4px;
    z-index: 50;
}
@media only screen and (max-width: 767px){
    .mv-index{
        background: url(../../img/bg_main.jpg) 50% 50% no-repeat;
        background-size: cover;
        color: #fff;
        position: relative;
        overflow: hidden;
        height: auto;
        padding:3rem 0;
    }

    .mv-index a{
        width: 92%;
        margin: 0 auto;
    }
    .mv-push{
        width: 100%;
        display: block;
        box-shadow: 0 0 10px rgba(0,0,0,.33)
    }
    .mv-push .img{
        width: 100%;
    }
    .mv-push .img img{
        display: block;
        width: 100%;
        height: auto;
    }
    .mv-push .text{
        width: 100%;
        padding:2rem 1.5rem 2rem 1.5rem;
        box-sizing: border-box;
        text-align: center;
    }
    .mv-push .text h1:after{
        display: none;
    }
    .mv-push .text h1 span{
        display: block;
        margin-top:10px;
    }
    .mv-push .text h1 span img{
        width: 100%;
        height: auto
    }    
    .mv-push .text h1{
        background: none;
        width: auto;
        height: auto;
        text-indent:inherit;
        margin-bottom:1rem;
        font-size: 1.5rem;
        padding-bottom:0rem;
    }
    .mv-push .text p{
        text-align: center;
        font-size: 1.3rem;
        letter-spacing: 0;
        line-height: 1.4;
    }
    .mv-push .text p b{
        font-size: 1.8rem;
    }
    .mv-push .text p.btn{
        background: #fff;
        margin:1.5rem 0 0;
        color: #e60012;
        font-size: 1.4rem;
        padding: 12px 0;
        line-height: 1;
    }
    .mv-push .text p.btn em{
        display: inline-block;
        position: relative;
        padding-left:25px;
    }
    .mv-push .text p.btn em:before{
        content: '';
        display: block;
        width: 8px;
        height: 8px;
        border-top:1px solid #e60012;
        border-right:1px solid #e60012;
        transform: rotate(45deg);
        position: absolute;
        top:50%;
        left:0;
        margin-top:-4px;
        z-index: 50;
    }    
}

/* index関連リンク */
.link-banners{
    background:#f5f5f5;
    padding: 6.5rem 0; 
}
.link-banners h2{
    font-size: 2.6rem;
    color: #1e1e1e;
    text-align: center;
    font-weight: normal;
    letter-spacing: .05em;
    margin-bottom:4rem;
}
.link-banners ul{
    text-align: center;
}
.link-banners li{
    display: inline;
    margin: 0 15px;
}
.link-banners li a img{
    border: 1px solid #ccc    
}
.pc .link-banners li a:hover img{
    border-color:#e60012    
}
@media only screen and (max-width: 767px){
    .link-banners{
        padding: 3rem 0 1rem; 
    }
    .link-banners h2{
        font-size: 2rem;
        margin-bottom:2rem;
    }
    .link-banners ul{
        text-align: center;
    }
    .link-banners li{
        display: inline-block;
        margin: 5px;
    }
}

/* h2-大見出し */
.large-ttl-style{
    text-align: center;
    font-size: 3.2rem;
    letter-spacing: .05em;
    margin-bottom:5rem;
    color: #e60012;
    line-height: 1;
    position: relative;
    z-index: 10;        
}
.large-ttl-style.txt-small{
	font-size: 2.6rem;
    margin-bottom: 3.5rem;
    font-weight: normal;
    letter-spacing: .1em;
    color: #222;
	margin-top: 70px;
}
.large-ttl-style:after{
    content:'';
    display:block;
    margin: 20px auto 0;
    height: 2px;
    width: 30px;
    background: #e60012;
}
.large-ttl-style.txt-small:after{
    content:'';
    display:block;
    margin: 20px auto 0;
    height: 2px;
    width: 30px;
    background: #222;
}
.large-ttl-style span{
    display: block;
    font-size: 1.4rem;
    letter-spacing: 0;
    margin-bottom:1rem;
    font-weight: normal;
}
.large-ttl-style.white{
    color: #fff;
}
.large-ttl-style.white:after{
    background: #fff;
}
.large-ttl-style+h3{
    text-align: center;
    font-size: 2.6rem;
    margin-bottom:3.5rem;
    font-weight: normal;
    letter-spacing: .1em;
}
.large-ttl-style+h3 span.small {
    font-size: 16px;
	display: inline-block;
	margin-top: 10px;
}
.large-ttl-style+h3+p{
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: .05em;
}
.topimg{
	max-width: 600px;
	width: 100%;
}
.event-area {
	margin:100px auto 0 auto !important;
}
.event-area p{
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: .05em;
}
.event-area h3{
	text-align: center;
    font-size: 2.6rem;
    margin-bottom: 3.5rem;
    font-weight: normal;
    letter-spacing: .1em;
}

.event-area h3 span.small {
    font-size: 16px;
	display: inline-block;
	margin-top: 10px;
}

@media only screen and (max-width: 767px){
	.large-ttl-style+h3 {
		text-align: center;
		font-size: 2.3rem;
		margin-bottom: 3.5rem;
		font-weight: normal;
		letter-spacing: .1em;
	}
    .large-ttl-style{
        font-size: 2.5rem;
        margin-bottom:3rem;
    }
    .large-ttl-style:after{
        content:'';
        display:block;
        margin: 20px auto 0;
        height: 2px;
        width: 20px;
        background: #e60012;
    }
    .large-ttl-style span{
        font-size: 1.1rem;
    }
    .large-ttl-style.white:after{
        background: #fff;
    }
    .large-ttl-style+
	{
        font-size: 2rem;
        line-height: 1.4;
        margin-bottom:2rem;
    }
    .large-ttl-style+h3+p{
        text-align: left;
        line-height: 1.5;
    }
}

.single-column div > .inner{
    width: 1080px;
    margin: 0 auto;
}
@media only screen and (max-width: 767px){
    .single-column div > .inner{
        width: auto;
        margin: 0 auto;
        min-width: 320px;
        box-sizing: border-box;
    }
}
.box-intro{
    padding: 50px 0 70px;    
}
.list-flex{
    display: flex;
    justify-content: space-between;
    margin: 4rem 0 5rem;
}

/* index フェアー-------------------------------------------------------------------*/
.list-index-fair li{
    text-align: center;
}
.list-index-fair li img{
    display: block;
    width: 100%;
    height: auto
}
.list-index-fair li strong{
    display: block;
    font-size: 2.2rem;
    margin: 3rem 0 1rem;
    font-weight: normal;
    letter-spacing: .05em;
	line-height: 2.5rem;
	
    
}
.list-index-fair li span{
    font-size: 1.4rem;
    margin: 3rem 0 1rem;
}
.list-index-fair a{
    display: block;
    position: relative;
    padding-bottom:35px;
    z-index: 1;
    color: #222;
}
.list-index-fair a:before{
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-right:1px solid #e60012;
    border-top:1px solid #e60012;
    transform: rotate(45deg);
    position: absolute;
    left: 50%;
    margin-left:-5px;
    bottom:7px;
}
.list-index-fair a:after{
    content: '';
    display: block;
    width: 21px;
    height: 21px;
    border: 1px solid #e60012;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    margin-left:-10px;
    bottom:-0px;
}
@media only screen and (max-width: 767px){
    .box-intro{
        padding: 4rem 4.6875%;    
    }    
    .list-index-fair{
        display: block;
        margin-bottom:1rem;
    }
    .list-index-fair li{
        text-align: left;
    }
    .list-index-fair li+li{
        margin-top:2px;
    }    
    .list-index-fair li a{
        display: table;
        padding-bottom:0;
        position: relative;
        z-index: 1;
        color: #222;
        background: #f5f5f5;
    }
    .list-index-fair li .img{
        width: 40%;
        display: table-cell;
        border: 5px solid #f5f5f5;
    }
    .list-index-fair li .img img{
        width: 100%;
        height: auto;
        display: block;
    }
    .list-index-fair li div.text{
        width: 60%;
        display: table-cell;
        padding: 0 4rem 0 4% ;
        vertical-align:middle;
        box-sizing: border-box;
    }
    .list-index-fair li strong{
        display: block;
        font-size: 1.6rem;
        line-height: 1.4;
        margin: 0;
        font-weight: normal;
        letter-spacing: 0;
    }
    .list-index-fair li span{
        display: none;
    }
    .list-index-fair a:before{
        content: '';
        display: block;
        width: 8px;
        height: 8px;
        border-right:1px solid #e60012;
        border-top:1px solid #e60012;
        transform: rotate(45deg);
        position: absolute;
        left:inherit;
        right: 18px;
        margin-left:0;
        bottom: auto;
        top: 50%;
        margin-top: -4px;
    }
    .list-index-fair a:after{
        content: '';
        display: block;
        width: 21px;
        height: 21px;
        border: 1px solid #e60012;
        border-radius: 50%;
        position: absolute;
        left: auto;
        right: 8px;
        margin-left:0;
        bottom:auto;
        top: 50%;
        margin-top:-11px;
    }    
}
.btn.wide{
    text-align: center;
}
.btn.wide a{
    width: 500px;
    font-size: 1.4rem;
}
.btn.wide.block a{
	width: auto;
	display: block;
}
.btn.wide a span{
    height: 5rem;
    line-height: 5rem;
}
@media only screen and (max-width: 767px){
    .btn.wide a{
        width: 100%;
        box-sizing: border-box;
        font-size: 1.4rem;
    }
    .btn.wide a span{
        height: 4rem;
        line-height: 4rem;
    }
}
.box-social{
    background: #f5f5f5;
    padding: 70px 0;
}
.box-social .inner{
    display: flex;
    justify-content: space-between;
}
.box-social .box-topics{
    width: 705px;
}
.box-social .box-topics ul{
    border-top:1px solid #b9b9b9;
    border-bottom:1px solid #b9b9b9;
    font-size: 1.4rem;
    line-height: 1;
}
.box-social .box-topics li .article{
    display: flex;
    vertical-align: middle;
    padding: 29px 0;
    background: url(../../img/line_dotted.png) 0 100% repeat-x;
}
.box-social .box-topics li:last-child .article{
    background: none;
}
.box-social .box-topics li a{
    color: #222;
}
.pc .box-social .box-topics li a:hover{
    color: #e60012;
}

.box-social .box-topics li .article .label{
    width: 87px;
}
.box-social .box-topics li .article .label b{
    display: block;
    text-align: center;
    color: #fff;
    padding: 4px 0;
    font-size: 12px;
    line-height: 1;
}
.box-social .box-topics li .article .label.fair b{ background: #f5a700}
.box-social .box-topics li .article .label.club b{ background: #008af5}
.box-social .box-topics li .article .label.recipe b{ background: #e7537d}

.box-social .box-topics li .article .label.topics b{ background: #a0a0a0}

.box-social .box-topics li .article time{
    width: 80px;
    padding: 0 2rem;
    text-align: center;
}
.box-social .box-topics li .article .text{
    overflow: hidden;
    white-space: nowrap;
    width: 49rem;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;   
	padding-left:2rem;
}
.box-social .box-topics h2{
    font-size: 2.6rem;
    margin-bottom:1.5rem;
    font-weight: normal;
}
.box-social .box-fb{
    width: 330px;
}




/* index トピックス 20180611追記 -------------------------------------------------------------------*/

.box-social .box-topics .titlerink{
	display:flex;
	justify-content:space-between;
	align-items: flex-end;
}

.box-social .box-topics .textrink {

	
}

.box-social .textrink em {
	position:relative;
	font-size: 1.4rem;
	padding-left:15px;
	margin-bottom: 1.5rem;
}

.box-social .textrink {
	height:1.4rem;
	margin-bottom: 1.5rem;
}
.box-social .textrink a{
	color: #252525;
}
.box-social .textrink a:hover {
	color: #e60012;
}

.box-social .textrink em:before {
	content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -4px;
    z-index: 50;
}


@media only screen and (max-width: 767px){
    .box-social{
        padding: 4rem 4.6875%;
    }
    .box-social .inner{
        display: block;
        justify-content: space-between;
    }
    .box-social .box-topics{
        width: auto;
    }
    .box-social .box-topics ul{
        border-top:1px solid #b9b9b9;
        border-bottom:1px solid #b9b9b9;
        font-size: 1.4rem;
        line-height: 1;
    }
    .box-social .box-topics li .article{
        display: flex;
        flex-wrap: wrap;
        vertical-align: middle;
        padding: 1.5rem 0;
    }
    .box-social .box-topics li .article .text{
        width: 100%;
        box-sizing: border-box;
        margin-top:5px;
		padding-left:0;
    }
    .box-social .box-topics h2{
        font-size: 2rem;
    }
    .box-social .box-fb{
        transform: scale(0.95);
        padding: 3rem 0 0;
        margin: 0 auto;
    } 
}
/* index インスタグラム-------------------------------------------------------------------*/
.box-insta {
	padding: 0 0 7rem 0;
}
.box-insta h3 {
	text-align: center;
    font-size: 2.6rem;
    margin-bottom: 3.5rem;
    font-weight: normal;
    letter-spacing: .1em;
}
.box-insta h3 .sub-tit{
	display: block;
	font-size: 14px;
	text-align: center;
	margin-bottom: 10px;
}
.box-insta h3 .sub-tit:before{
	content: '';
	background: url(../img/ic_tit.png) no-repeat;
	background-size: 100%;
	width: 22px;
	height: 22px;
	display: inline-block;
	margin: -5px 10px;
}
.box-insta p.txt{
	text-align: center;
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: .05em;
}
.box-insta .btn_blank_w a{
    max-width: 500px;
	margin: auto;
}
.box-insta .btn_blank_w a span{
	height: 5rem;
    line-height: 5rem;
	font-size: 14px;
}
.box-insta ul#instafeed{
	display: flex;
	flex-wrap: wrap;
	margin: 4rem 0 5rem;
}
.box-insta ul#instafeed li{
	width: 212px;
	margin: 0 5px 5px 0;
}
.box-insta ul#instafeed li:nth-child(5n){
	margin-right: 0;
}
.box-insta ul#instafeed li img{
	cursor: pointer;
	width: 100%;
	display: block;
}
.box-insta ul#instafeed li img:hover,.box-insta ul#instafeed li label:hover{
	opacity: 0.7;
}
.box-insta ul#instafeed li label{
	width: 212px;
    height: 212px;
    display: block;
    cursor: pointer;
}
.box-insta ul#instafeed li .modal-wrap {
    width: 420px;
    top: 94px;
    position: absolute;
    margin: auto;
    right: 0;
    left: 0;
	background: #fff;
    padding: 20px;
	line-height: 1.3;
}
.box-insta ul#instafeed li .modal-wrap a{
	overflow: hidden;
    display: block;
	font-size: 14px;
	color: #000;
}
.box-insta ul#instafeed li .modal-wrap .namelikes{
	padding: 20px 0;
}
.box-insta ul#instafeed li .modal-wrap .namelikes .likes{
	float: right;
	display: inline-block;
}
.box-insta ul#instafeed li .modal-wrap .namelikes .likes:before{
	content: '';
	display: inline-block;
	width: 13px;
	height: 11px;
	background: url(../img/ic_likes.png) no-repeat;
	background-size: 100%;
	margin-right: 10px;
}
.box-insta ul#instafeed li .modal-wrap .caption{
	background: #fff;
	padding: 0;
	clear: both;
}
.box-insta ul#instafeed li .modal .modal-overlay .close {
	position: absolute;
    right: 0px;
    top: -60px;
	width: 50px;
	height: 50px;
}
@media only screen and (max-width: 767px){
	.box-insta{
		padding: 4rem 4.6875%;
	}
	.box-insta ul#instafeed {
		justify-content: center;
	}
	.box-insta .btn_blank_w a span{
		height: 4rem;
		line-height: 4rem;
	}
	.box-insta ul#instafeed li,.box-insta ul#instafeed li label{
		width: 100px;
		height: 100px;
	}
	.box-insta ul#instafeed li:nth-child(5n){
		margin-right: 5px;
	}
	.box-insta ul#instafeed li:nth-child(3n){
		margin-right: 0;
	}
	.box-insta ul#instafeed li:nth-child(10n){
		display: none;
	}
	.box-insta ul#instafeed li .modal-wrap {
		width: calc(90% - 40px);
		top: 94px;
		position: absolute;
		margin: auto;
		right: 0;
		left: 0;
		background: #fff;
		padding: 20px;
	}
}

/* index 倶楽部 -------------------------------------------------------------------*/
.box-club{
    background: url(../../img/bg_club.jpg) 50% 50% no-repeat;
    background-size: cover;
    padding: 7rem 0;
    color: #fff;
    position: relative;
    overflow: hidden;
}
.box-club .inner{
    display: flex;
    justify-content: space-between;
    flex-flow: row-reverse;
    align-items: center;
}
.box-club .inner:before{
    content: '';
    background: url(../../img/bg_dotted.png);
    width: 1000%;
    height: 100%;
    position: absolute;
    z-index: 0;
    left: 0;
    top: 0;
}
.box-club .text{
    width: 500px;
    position: relative;
    z-index: 10;
}
.box-club .text h3{
    font-size: 2.6rem;
    line-height: 1.5;
    letter-spacing: .05em;
    font-weight: normal;
    margin-bottom: 4rem;
}
.box-club .text p{
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: .05em;
    margin: 3.5rem 0;
}
.box-club .push{
    width: 540px;
    position: relative;
    z-index: 10;    
}
.box-club .push .box-push{
    display: block;
    padding: 30px;
    background: #fff;
    color: #222;
}
.box-push+.box-push{
    margin-top:2rem;
}
.box-club .push .box-push h3{
    font-size: 2.2rem;
    line-height: 1;
    border-left:2px solid #e60012;
    padding-left:1.5rem;
    font-weight: normal;
}
.box-club .push .box-push p{
    font-size: 1.4rem;
    line-height: 1.5;
}
.box-club .push .box-push *+p{
    margin-top:2rem;
}
.box-club .push .btn .wrap{
    border:1px solid #e60012;
    display: block;
    padding:1px;
    width: 170px;
}
.box-club .push .btn .wrap span{
    display: block;
    border:1px solid rgba(255,255,255,0);
    position: relative;
    height: 2.5rem;
    line-height:2.5rem;
    text-align: center;
    color: #e60012;
}
.pc .box-club .push a:hover .wrap span{
    border:1px solid #e60012;
    display: block;
}
.box-club .push .btn em{
    display: inline-block;
    position: relative;
    padding-left:15px;
}
.box-club .push .btn em:before{
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top:1px solid #e60012;
    border-right:1px solid #e60012;
    transform: rotate(45deg);
    position: absolute;
    top:50%;
    left:0;
    margin-top:-4px;
    z-index: 50;
}
@media only screen and (max-width: 767px){
    .box-club{
        padding: 4rem 4.6875%;;
    }
    .box-club .inner{
        display: block;
        align-items: center;
    }
    .box-club .inner:before{
        content: '';
        background: url(../../img/bg_dotted.png);
        width: 1000%;
        height: 100%;
        position: absolute;
        z-index: 0;
        left: 0;
        top: 0;
    }
    .box-club .text{
        width: auto;
        margin-top:4rem;
    }
    .box-club .text h3{
        font-size: 2rem;
        line-height: 1.5;
        letter-spacing: 0;
        font-weight: bold;
        margin-bottom: 2rem;
    }
    .box-club .text p{
        font-size: 1.4rem;
        line-height: 1.5;
        letter-spacing: .05em;
        margin: 0;
    }
    .box-club .text *+p{
        margin-top:3rem;
    }    
    .box-club .push{
        width: auto;
    }
    .box-club .push .box-push{
        display: block;
        padding: 3rem 2.4rem;
        background: #fff;
        color: #222;
    }
    .box-push+.box-push{
        margin-top:.5rem;
    }
    .box-club .push .box-push h3{
        font-size: 1.8rem;
        line-height: 1;
    }
    .box-club .push .btn .wrap{
        width: auto;
    }
	
	.box-club .push .btn .wrap{
    	padding:8px 0;
	}
}

/* index レシピ -------------------------------------------------------------------*/
.box-recipe{
    padding: 7rem 0;
}
.list-recipe{
	justify-content:center;
}
.list-recipe li{
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.5;
    position: relative;
	width:255px;
	margin-right:50px;
}

.list-recipe li:last-child{
	margin-right:0;
}
.list-recipe li.new:before{
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top:0;
    z-index: 10;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 52px 52px 0 0;
    border-color: #e60012 transparent transparent transparent;    
}
.list-recipe li.new:after{
    content: 'NEW';
    position: absolute;
    left: 5px;
    top: 5px;
    z-index: 10;
    font-size: 11px;
    color: #fff;
}
.list-recipe li a{
    color: #222;
}
.list-recipe .img{
    overflow: hidden;
    height: 255px;
    margin-bottom:1rem;
    position: relative;
    z-index: 1;
}
.list-recipe .img img{
    width: 100%;
    height: auto;
    display:block
}

.pc .list-index-fair a:hover,
.pc .list-recipe a:hover{
    color: #e60012;
}
.pc .list-index-fair a:hover img,
.pc .list-recipe a:hover img{
    opacity: .8;
}
@media only screen and (max-width: 767px){
    .box-recipe{
        padding: 4rem 4.6875%;
    }
    .list-recipe{
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom:0;
    }
    .list-recipe li{
        width: 48%;
        font-size: 1.3rem;
        line-height: 1.2;
        margin-bottom:4rem;
		margin-right:4%;
    }
	.list-recipe li:nth-child(even){
		margin-right:0%;	
	}
    .list-recipe .img{
        overflow: hidden;
        height: auto;
        margin-bottom:1rem;
        position: relative;
        z-index: 1;
    }
}
section.form{
	min-height: 500px;
}
span.formmidashi{
    font-size: 20px;
}
span.midashibg {
    background: #da2525;
    color: #fff;
    display: inline-block;
    padding: 5px 30px;
    border-radius: 20px;
}
#fair-noside .main{
	width: 1080px;
	margin: 0 auto 4rem;
	font-size: 1.4rem;
	padding-left:0;
}
section.form ul li{
	padding: 10px 0;
}
th.xf_field{
	width: 220px;
}
textarea {
    width: 557px;
}
.koma{
	display: flex;
	margin-bottom: 10px;
}
.koma .checkbox{
	width: 340px;
}
.koma input[type="text"] {
    width: 100px;
}
.spbr{
	display: none;
}
.hitokoma{
	display: inline-block;
    font-size: 12px;
    line-height: 1;
}
.xf_block tr:nth-child(25) th.xf_field,.xf_block tr:nth-child(25) td.xf_input{
	border-bottom: 2px solid #e60012;
}
.xf_block tr:nth-child(26) th.xf_field{
	border-left: 2px solid #e60012;
}
.xf_block tr:nth-child(27) th.xf_field{
	border-left: 2px solid #e60012;
	border-bottom: 2px solid #e60012;
}
.xf_block tr:nth-child(26) td.xf_input{
	border-right: 2px solid #e60012;
}
.xf_block tr:nth-child(27) td.xf_input{
	border-right: 2px solid #e60012;
	border-bottom: 2px solid #e60012;
}

@media only screen and (max-width: 767px){
	section.form{
		min-height: 0px;
	}
	#fair-noside .main{
		width: auto;
        padding: 4rem 4.6875% 0;
        margin: 0 auto;
	}
	textarea {
		width: 100%;
	}
	.koma{
		flex-wrap: wrap;
	}
	.koma .checkbox{
		width: 100%;
	}
	span.formmidashi{
		font-size: 18px;
	}
	.spbr{
		display: inline;
	}
	
	.pcbr{
		display: none;
	}
	span.midashibg {
		margin-top: 5px;
	}
	.hitokoma{
		margin-bottom: 5px;
	}
}

/*201907*/
.btn.school_link a span{
    height: 50px;
    line-height: 50px;
}

