/*------------------------------------------------------------------ 	[Index]
------------------------------------------------------------------*/
/* eg: @include user-select(none); */
/* eg: @include rotate(45deg); */
/* eg: @include translate3d(0,0,0); */
/* eg: @include border-radius(3px); */
.main-content { margin-top: 145px; }

#contentsWaper { overflow: hidden; padding-bottom: 100px; }
#contentsWaper2 { overflow: hidden; padding-bottom: 100px; }
#contentsSchool { overflow: hidden; padding-bottom: 100px; }

.arrow { position: relative; display: inline-block; padding-left: 12px !important; }

.arrow::before { content: ''; width: 6px; height: 6px; border: 0px; border-top: solid 2px #E3007F; border-right: solid 2px #E3007F; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; top: 50%; left: -6px; margin-top: -4px; }

h1 { margin: 20px auto; text-align: center; font-size: 28px; letter-spacing: 0.3em; }
h1 span.sml { display: inline-block; font-size: 18px; margin-left: 10px; color: #E3007F; }

h2 { text-align: center; padding: 10px; font-size: 36px; }

.h-one { margin: 20px auto; font-size: 28px; letter-spacing: 0.3em; color: #E3007F; font-weight: 600; width: fit-content; width: -moz-fit-content; line-height: 80px; /*display: inline-block;*/ }
.h-two { text-align: center; padding: 10px; font-size: 36px; color: #E3007F; font-weight: 600; }
.pc-none { display: none; }
.content .fs30 { font-size: 30px; }


/* common */
.ptnone-contain { padding-top: 0px !important; }
.pbnone-contain { padding-bottom: 0px !important; }
.pt50-contain { padding-top: 50px !important; }
.containerO { padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }
@media (min-width: 768px) { .containerO { width: 100%; } }
@media (min-width: 992px) { .containerO { width: 970px; } }
@media (min-width: 1200px) { .containerO { width: 1170px; } }

#contentsWaper { background: url(../img/bg_top_1.png) repeat-y; background-size: 100%; }
#contentsWaper2 { background: url(../img/bg_top_2.png) repeat-y; background-size: 100%; }
#contentsSchool { background: url(../img/bg_school.jpg) repeat-y; background-size: 100%;}
.bg_ex { background: url(../img/bg_top.png) no-repeat !important; background-size: 100% !important; }

.top_bg_aka { background: url(../img/bg_take_aka.jpg) repeat-x; height: 40px; }
.top_bg_midori { background: url(../img/bg_take_midori.jpg) repeat-x; height: 40px; }
.top_bg_ao { background: url(../img/bg_take_ao.jpg) repeat-x; height: 40px; }
.top_bg_murasaki { background: url(../img/bg_take_murasaki.jpg) repeat-x; height: 40px; }
.top_bg_kin { background: url(../img/bg_kin.jpg) no-repeat; height: 10px; background-size: 100%; }
.btm_bg_aka { background: url(../img/bg_take_aka.jpg) repeat-x; height: 40px; transform: rotate(180deg); }
.btm_bg_midori { background: url(../img/bg_take_midori.jpg) repeat-x; height: 40px; transform: rotate(180deg); }
.btm_bg_ao { background: url(../img/bg_take_ao.jpg) repeat-x; height: 40px; transform: rotate(180deg); }
.btm_bg_murasaki { background: url(../img/bg_take_murasaki.jpg) repeat-x; height: 40px; transform: rotate(180deg); }

.bg_aka { background-color: rgba(198, 31, 80, 0.2); }
.bg_midori { background-color: rgba(0, 136, 139, 0.2); }
.bg_ao { background-color: rgba(45, 134, 255, 0.2); }
.bg_murasaki { background-color: rgba(119, 0, 190, 0.2); }

.bg_red {
  animation:slide 3s ease-in-out infinite alternate;
  background-image: linear-gradient(90deg, #D31177 50%, #C60 50%);
  bottom:0;
  left:-50%;
  opacity:.1;
  position:fixed;
  right:-50%;
  top:0;
  z-index:-1;
}

.bg_blue {
  animation:slide 3s ease-in-out infinite alternate;
  background-image: linear-gradient(90deg, #379BFF 50%, #C60 50%);
  bottom:0;
  left:-50%;
  opacity:.1;
  position:fixed;
  right:-50%;
  top:0;
  z-index:-1;
}

.bg_green {
  animation:slide 3s ease-in-out infinite alternate;
  background-image: linear-gradient(90deg, #009498 50%, #C60 50%);
  bottom:0;
  left:-50%;
  opacity:.1;
  position:fixed;
  right:-50%;
  top:0;
  z-index:-1;
}

.bg_purple {
  animation:slide 3s ease-in-out infinite alternate;
  background-image: linear-gradient(90deg, #8329C5 50%, #C60 50%);
  bottom:0;
  left:-50%;
  opacity:.1;
  position:fixed;
  right:-50%;
  top:0;
  z-index:-1;
}

.bg2 {
  animation-direction:alternate-reverse;
  animation-duration:4s;
}

.bg3 {
  animation-duration:5s;
}

@keyframes slide {
  0% {
    transform:translateX(-25%);
  }
  100% {
    transform:translateX(25%);
  }
}

.font-gothic { font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }

/* reset layout */
#template-wrapper b span { font-weight: bold; }
#template-wrapper font span { font-family: inherit; color: inherit; }
#template-wrapper a[href^="tel:"] { font-family: inherit; color: inherit; font-size: inherit; }

/* shopCourse */
#shopCourse ul#shopCource-menu { list-style: none; margin: 0; padding: 0; text-align: center; }
#shopCourse ul#shopCource-menu li { display: inline-block; position: relative; width: 22%; margin-right: 2%; margin-bottom: 20px; }
#shopCourse ul#shopCource-menu li a { display: block; width: 100%; border: 2px solid #000000; padding: 10px; text-align: center; font-size: 20px; color: #000000; }
#shopCourse ul#shopCource-menu li a span.sml { display: inline-block; margin-left: 3px; color: #000000; }
#shopCourse ul#shopCource-menu li img.link-arrow-right { position: absolute; bottom: 0; right: 0; }
#shopCourse ul#shopCource-menu li img.link-red-right { position: absolute; bottom: 0; right: 0; display: none; }
#shopCourse ul#shopCource-menu li:last-child { margin-right: 0; }
#shopCourse ul#shopCource-menu li.active a { border: 2px solid #D31177 !important; color: #D31177 !important; }
#shopCourse ul#shopCource-menu li.active span.sml { color: #D31177; }
#shopCourse ul#shopCource-menu li.active img.link-arrow-right { display: none; }
#shopCourse ul#shopCource-menu li.active img.link-red-right { display: inline-block; }
#shopCourse .shopCource-txt { width: 600px; margin: 20px auto; border: 3px solid #D31177; text-align: center; padding: 10px; }
#shopCourse .shopCource-sub-menu ul { list-style: none; margin: 20px auto; padding: 0; text-align: center; }
#shopCourse .shopCource-sub-menu ul li { display: inline-block; background: url(../img/icon_under_sml.png) no-repeat left center; height: 35px; line-height: 35px; padding-left: 25px; margin: 10px 20px; }
#shopCourse .shopCource-sub-menu-detail dl dt { font-size: 28px; text-align: center; margin: 50px 0 20px; }
#shopCourse .shopCource-sub-menu-detail dl dd { background-color: #FFFFFF; }
#shopCourse .shopCource-sub-menu-detail dl dd .tax-show { text-align: right; font-size: 16px; margin-top: 20px; width: 98%; }
#shopCourse .shopCource-sub-menu-detail dl dd .txt-show { position: relative; padding: 50px 0; }
#shopCourse .shopCource-sub-menu-detail dl dd .txt-show:before, #shopCourse .shopCource-sub-menu-detail dl dd .txt-show:after { content: " "; display: table; }
#shopCourse .shopCource-sub-menu-detail dl dd .txt-show:after { clear: both; }
#shopCourse .shopCource-sub-menu-detail dl dd .txt-show .img-right-show { width: 40%; float: right; }
#shopCourse .shopCource-sub-menu-detail dl dd .txt-show .img-right-show img { width: 100%; }
#shopCourse .shopCource-sub-menu-detail dl dd .txt-show .txt-left-show { width: 58%; text-align: center; position: absolute; top: 50%; left: 0; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
#shopCourse .shopCource-sub-menu-detail dl dd .txt-show .txt-left-show p { margin: 20px; }
#shopCourse .shopCource-sub-menu-detail dl dd .txt-show .txt-only-show { text-align: center; }
#shopCourse .shopCource-sub-menu-detail dl dd .txt-show .txt-only-show p { line-height: 28px; }
#shopCourse .shopCource-sub-menu-detail dl dd .mar-bot-line { border-bottom: 1px #000000 solid; }

/* shopSearch */
#shopSearch 
#shopSearch h2 { color: #000; }
/*#shopSearch .search-title-area { background-size: auto 80px; background-repeat: no-repeat; background-image:url('../img/sushi/img_3.png'), url('../img/sushi/img_1.png'), url('../img/sushi/img_2.png'), url('../img/sushi/img_4.png'); background-position: 0% 0%, 10% 100%, 90% 100%, 100% 0%; }*/
#shopSearch .search-btn-group ul { margin: 0; padding: 0; border: 0; }
#shopSearch .search-btn-group ul li { margin: 0; padding: 0; border: 0; }
#shopSearch .search-btn-group ul { margin: 0 auto; width: 380px; font-size: 0px; }
#shopSearch .search-btn-group ul li { display: inline-block; }
#shopSearch .search-btn-group ul li:first-child { margin-right: 20px; }
#shopSearch .search-header-area .search-header-btn { display: block; margin: 10px auto 50px; font-size: 20px; color: #fff; background: #000; border: 0; padding: 10px 40px; width: 160px; }
#shopSearch .search-header-area .bg-color2 { background: #999; }
#shopSearch .search-header-area p { font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }
#shopSearch .nav-tabs>li>a, .nav-tabs>li>a:focus, .nav-tabs>li>a:hover { border-radius: 0; border: 1px solid #000; border-bottom: 0; margin: 0; font-size: 2rem; background: #FFF; }
#shopSearch .nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover { background: #D31177; border: 1px solid #D31177; color: #FFF; }
#shopSearch .nav-tabs>li.active>a>.sp-none, .nav-tabs>li.active>a:focus>.sp-none, .nav-tabs>li.active>a:hover>.sp-none { color: #FFF; }
#shopSearch .nav-tabs .sp-none { color: #000; font-weight: bold; }
#shopSearch .inner-area { border: 1px solid #000; background: #FFF;	display: inline-block; height: auto; width: 100%; }
#shopSearch .inner-area label { font-weight: normal;}
#shopSearch .inner-area ul { float: left; background: #FFF; }
#shopSearch .inner-area ul li {	float: none; border: 0;	text-align: left; width: 280px;	margin-left: 20px; list-style: none; padding: 10px; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-size: 17px; }
#shopSearch .input-group { float: left;	width: 400px; margin-right: 30px; margin-bottom: 30px; }
#shopSearch .input-group .form-control { border-radius: 0; border: 1px solid #000; padding: 20px; color: #000; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }
#shopSearch .input-group-btn:last-child>.btn { border-radius: 0; color: #FFF; background: #000;	border: 1px solid #000; height: 62px; width: 100px; font-size: 20px; }
#shopSearch .search-group .all { background: #D31177; padding: 18px; width: 150px; height: 62px; font-size: 20px; margin-bottom: 60px; }
#shopSearch .search-text { margin-bottom: 5px; }
#shopSearch .search-btn, .search-btn:hover { display: inline-block; padding: 6px 12px; margin-bottom: 0; font-size: 14px; font-weight: 400; line-height: 1.42857143; text-align: center; white-space: nowrap; vertical-align: middle; color: #FFF; }
#shopSearch .form-control { height: 62px; }
#shopSearch .accordion-menu { text-align: center; }
#shopSearch .accordion-menu .area { font-size: 20px; margin: 0 0 10px 0;  }
#shopSearch .accordion-menu .inner { display: none; padding: 0; }
#shopSearch .accordion-menu .inner li { margin-left: 0; padding-left: 0; }
#shopSearch .accordion-menu .inner.open { display: block; }

/* shopSearch contentsResult */
#contentsResult { padding-top: 0px; padding-bottom: 50px; }
#contentsResult h2 { color: #000; text-align: left;	font-size: 23px; }
#contentsResult .bg-title { color: #FFF; background: #D31177; font-size: 3rem; }
#contentsResult ul li { list-style: none; }
#contentsResult .label-group {	border: 1px solid #000; border-top: 0; border-bottom: 0; padding-top: 20px; }
#contentsResult .label-group2 {	border: 1px solid #000; border-top: 0; border-bottom: 0; padding-top: 20px; }
#contentsResult .label-group3 {	border: 1px solid #000; border-top: 0; border-bottom: 0; padding-top: 20px; }
#contentsResult .label-group ul { display: none; }
#contentsResult .label-group ul li { float: left; background: #E26B95;	border-radius: 4px;	color: #FFF; margin-right: 5px;	margin-bottom: 20px; padding: 2px 4px; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-size: 12px; border: 1px solid #E26B95; }
#contentsResult .label-group ul li.other { background: #FFF; border: 1px solid #E26B95; color: #E26B95; }
#contentsResult .label-group2 ul { padding: 0; }
#contentsResult .label-group2 ul li { float: left; background: #FFF; border-radius: 4px; color: #D31177; margin-right: 5px; margin-bottom: 20px; padding: 2px 4px; list-style: none; border: 1px solid #D31177; }
#contentsResult .label-group3 ul { padding: 0; }
#contentsResult .label-group3 ul li.red { float: left; background: #FFF; border-radius: 4px; color: #333; margin-right: 5px;	margin-bottom: 20px; padding: 2px 4px; list-style: none; border: 2px solid #C00; font-size: 14px; }
#contentsResult .label-group3 ul li.blue { float: left; background: #FFF; border-radius: 4px; color: #333; margin-right: 5px;	margin-bottom: 20px; padding: 2px 4px; list-style: none; border: 2px solid #00C; font-size: 14px; }
#contentsResult .label-group3 ul li.green { float: left; background: #FFF; border-radius: 4px; color: #333; margin-right: 5px; margin-bottom: 20px; padding: 2px 4px; list-style: none; border: 2px solid #0C0; font-size: 14px; }
#contentsResult .border-on { border: 1px solid #000; border-top: 0; padding-bottom: 20px; }
#contentsResult .border-on .image-area { padding: 0; }
#contentsResult .border-on .text-deco { font-size: 1.8rem;	margin-bottom: 20px; line-height: 3rem; }
#contentsResult .border-on .under-line { text-decoration: underline; }
#contentsResult .border-on .text-deco img { margin: 0 0 5px 5px; width: 20px; }
#contentsResult .container-fluid { margin-bottom: 20px; background: #FFF; }
#contentsResult .border-on2 { border-left: 1px solid #000; }
#contentsResult .adr-height { height: auto; }
#contentsResult .adr-height2 { height: 60px; }
#contentsResult .tel-height { height: 52px; }
#contentsResult .acc-height { height: auto; }
#contentsResult .border-on ul li.shop-link { text-align: right; }
#contentsResult .btn-search { text-align: center; margin-top: 50px; }
#contentsResult .btn-search a { background: #000; color: #FFF; padding: 15px 30px; font-size: 2rem; font-weight: bold; }
.ggmap { position: relative; padding-bottom: 30%; padding-top: 30px; height: 0; overflow: hidden;}
.ggmap iframe, .ggmap object, .ggmap embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* shopMenu */
#shopMenu { margin-bottom: 80px; }
#shopMenu h1 { font-size: 36px; }
#shopMenu .app-page-header > * { color: #E3007F; }
#shopMenu .nav-content ul { margin: 0 auto 50px; text-align: center; max-width: 790px; width: 100%; border-bottom: 0; }
#shopMenu .nav-content ul li { border-left: 1px solid #000; float: none; display: inline-block; min-width: 100px; text-align: center; }
#shopMenu .nav-content ul li.ending { border-right: 1px solid #000; }
#shopMenu .nav-content ul li a { font-size: 1.5rem; }
#shopMenu .nav-tabs>li>a, .nav-tabs>li>a:focus, .nav-tabs>li>a:hover { border: 0; background: none; margin: 0; }
#shopMenu .nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover { background: #D31177; color: #FFF; margin: 0; border-radius: unset; }
#shopMenu li { list-style: none; }
#shopMenu ul.top-menu { list-style: none; margin: 0; padding: 0; text-align: center; }
#shopMenu ul.top-menu li { display: inline-block; position: relative; width: 13%; min-width: 225px; margin-left: 1%; margin-right: 1%; margin-bottom: 20px; }
#shopMenu ul.top-menu li a { display: block; width: 100%; border: 2px solid #000000; padding: 10px; text-align: center; font-size: 20px; color: #000000; }
#shopMenu ul.top-menu li a span.sml { display: inline-block; margin-left: 3px; color: #000000; font-weight: bold; }
#shopMenu ul.top-menu li img.link-arrow-right { position: absolute; bottom: 0; right: 0; }
#shopMenu ul.top-menu li img.link-red-right { position: absolute; bottom: 0; right: 0; display: none; }
#shopMenu ul.top-menu li.active a { border: 2px solid #D31177 !important; color: #D31177 !important; }
#shopMenu ul.top-menu li.active span.sml { color: #D31177; font-weight: bold; }
#shopMenu ul.top-menu li.active img.link-arrow-right { display: none; }
#shopMenu ul.top-menu li.active img.link-red-right { display: inline-block; }
#shopMenu .sub-menu-container { margin: 15px 0px; }
#shopMenu .sub-menu-container ul.sub-menu { text-align: center; }
#shopMenu .sub-menu-container ul.sub-menu li { display: inline-block; background: url(../img/icon_under_sml.png) no-repeat left center; height: 35px; line-height: 35px; padding-left: 25px; margin: 5px 20px; }
#shopMenu .sub-menu-container ul.sub-menu li a { font-size: 18px; font-weight: bold; }
#shopMenu .inner-area { width: 100%; }
#shopMenu .tab-content .inner-area { border: 0; height: auto; padding-top: 10px; padding-bottom: 20px; }
#shopMenu .tab-content .menu-title { text-align: center; font-size: 30px; font-weight: bold; padding: 30px 0 0; line-height: .8em; }
#shopMenu .tab-content .menu-title-eng { text-align: center; font-size: 24px; font-weight: bold; margin-bottom: 5px; }
#shopMenu .tab-content .menu-title h1, #shopMenu .tab-content .menu-title h2, #shopMenu .tab-content .menu-title h3, #shopMenu .tab-content .menu-title h4, #shopMenu .tab-content .menu-title h5, #shopMenu .tab-content .menu-title h6, #shopMenu .tab-content .menu-title span { color: #000; font-size: inherit; margin: 0px; }
#shopMenu .tab-content .menu-area2 { margin-bottom: 80px; }
#shopMenu .tab-content .menu-area .container { background: #FFF; }
#shopMenu .tab-content .menu-area .caution-area { text-align: right; padding: 20px 0; }
#shopMenu .tab-content .menu-area .caution-area .caution-text { text-align: left; display: inline-block; }
#shopMenu .tab-content .menu-area dl { float: left; margin: 0 0 30px; padding: 0; border-bottom: 1px solid #000; width: 25%; text-align: center; font-weight: bold; }
#shopMenu .tab-content .menu-area dl dt.menu-flag { display: block; margin-bottom: 5px; }
#shopMenu .tab-content .menu-area dl dt .icon-deco { background: #5B2A80; border: 4px double #FFF; padding: 4px 8px; color: #FFF; height: 37px; display: inline-block; }
#shopMenu .tab-content .menu-area dl dt .icon-deco-none { border: 4px double #FFF; height: 37px; display: block; }
#shopMenu .tab-content .menu-area dl dd .menu-name { text-align: center; font-size: 18px; font-weight: bold; line-height: 100%; height: 44px; }
#shopMenu .tab-content .menu-area dl span { color: #000;}
#shopMenu .tab-content .menu-area dl span.english-name { font-size: 12px; }
#shopMenu .tab-content .menu-area dl dd { margin-bottom: 20px; }
#shopMenu .tab-content .menu-area dl dd.nigiri-area { margin-bottom: 0; }
#shopMenu .tab-content .menu-area dl dd.photo-area { margin-bottom: 0; }
#shopMenu .tab-content .menu-area dl .large-font { font-size: 20px; }
#shopMenu .tab-content .menu-area dl .menu-photo { max-width: 100%; height: 130px; }
@media(max-width: 1400px) { #shopMenu .tab-content .menu-area dl .menu-photo { height: 100px; } }
@media(max-width: 480px) { #shopMenu .tab-content .menu-area dl .menu-photo { height: 70px; } }
#shopMenu .tab-content .menu-area dl .menu-today { width: 55%; height: auto; margin-right: 2%; }
#shopMenu .tab-content .menu-area dl .menu-today2 { width: 35%; vertical-align: bottom; }
/*a#nigiri, a#hosomaki, a#rollmaki, a#set, a#sasimi, a#zensai, a#yakimono, a#musimono, a#dessert { color: #000; }*/
#shopMenu a.black-title { color: #000; }
#shopMenu a.black-title span { font-size: 14px; color: #000; }
#shopMenu .tab-content .bottom-menu dl { border: 0; text-align: left; width: 45%; margin-right: 10%; font-size: 20px; }
#shopMenu .tab-content .bottom-menu dl:nth-child(even) { margin-right: 0; }
#shopMenu .tab-content .bottom-menu dl dt { background: #D31177; color: #FFF; padding: 4px 8px; margin: 0 0 20px; }
#shopMenu .tab-content .bottom-menu dl dd { margin: 0; padding: 0; clear: left; width: 100%; }
#shopMenu .tab-content .bottom-menu dl dd ul { margin: 0; padding: 0; }
#shopMenu .tab-content .bottom-menu dl dd ul li { float: left; font-size: 18px; font-weight: bold; }
#shopMenu .tab-content .bottom-menu dl dd ul .drink-name { margin: 0; padding: 0; text-align: left; clear: both; }
#shopMenu .tab-content .bottom-menu dl dd ul .drink-price { margin: 0; padding: 0; float: right; }
.tab-content .bottom-menu dl dd.right-disc { text-align: right; }
#shopMenu .tab-content .menu-area .recom-menu dl { float: left; margin: 0 0 30px; padding: 0; border-bottom: 1px solid #000; width: 50%; text-align: center; font-weight: bold; }
#shopMenu .tab-content .menu-area .recom-menu dl dd.recom-text { font-size: 17px; padding: 10px; }
#shopMenu .tab-content .menu-area .recom-menu dl dd.recom-image { display: table-cell; vertical-align: bottom; }
#shopMenu .tab-content .menu-area .recom-menu dl dd.recom-image-block { display: block; width: 100%; }
#shopMenu .inner-area .item-card-detail { margin-bottom: 30px; }
#shopMenu { padding-bottom: 0; }
#shopMenu .add-text { margin: 0 auto; width: 50%; text-align: right; margin-top: 10px; }
#shopMenu div.add-text { margin: 10px auto 0; width: 50%; text-align: center; font-weight: bold; font-size: 16px; }
#shopMenu .bottom-menu dl span { color: #FFF; margin-left: 10px; }
#shopMenu .tab-content .bottom-menu dl span.dlink-eng { color: #FFF; }
.print_button a { background: #D31777; color: #FFF; padding: 10px; border-radius: 6px; font-size: 20px; display: block; width: 200px; margin: 20px auto; }
.home_button a { background: #D31777; color: #FFF; padding: 10px; border-radius: 6px; font-size: 20px; display: block; width: 320px; margin: 20px auto; }

#newsAll .news-list { background: #FFF; width: 80%; margin: 0 auto 100px; padding: 2%; height: 1000px; overflow-y: scroll; }
#newsAll .news-list ul { border-bottom: 1px solid #999; margin: 0; padding: 6px 0; }
#newsAll .news-list ul li { list-style: none; display: inline-block; text-align: left; vertical-align: top; }
#newsAll .news-list ul li:first-child { width: 16%; margin-right: 2%; text-align: center; }
#newsAll .news-list ul li:last-child { width: 80%; }
@media (max-width: 480px) { #newsAll .news-list ul li:first-child, #newsAll .news-list ul li:last-child { display: block; width: 100%; font-size: 16px; } #newsAll .news-list ul li a { font-size: 16px; } #newsAll .news-list ul { padding: 6px 0; } }

/* popup */
.popup_wrap input { display: none; }
.popup_overlay { display: none; justify-content: center; overflow: auto; position: fixed; top: 0; left: 0; z-index: 999; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); opacity: 0; transition: opacity 0.5s, transform 0s 0.5s; transform: scale(0); }
.popup_trigger { position: absolute; width: 100%; height: 100%; }
.popup_content { position: relative; align-self: center; width: 90%; max-width: 600px; padding: 30px 30px 15px; box-sizing: border-box; background: #FFF; line-height: 1.4em; transition: 0.5s; }
.close_btn { position: absolute; top: -10px; right: -10px; font-size: 20px; cursor: pointer; background: #D31177; color: #FFF; padding: 10px; margin: 0; border-radius: 100%; }
.popup_wrap input:checked ~ .popup_overlay { display: flex; opacity: 1; transform: scale(1); transition: opacity 0.5s; }
.open_btn { display: flex; justify-content: center; align-items: center; cursor: pointer; transition: .3s ease;	width: 120px; margin: 0 auto; }
.popup_content .popup-menu { width: 100%; height: 22vw; }

/* modal */
.modal-open { padding-right: 0px !important; }
#videoPopup { top: 20%; padding-right: 0px !important; }
#videoPopup .modal-dialog .modal-content { border-radius: 0px; padding: 25px 20px; padding-bottom: 20px; background: #FFF; }
#videoPopup .modal-dialog .modal-content .modal-body { padding-bottom: 56.25%; height: 0; position: relative; }
#videoPopup .modal-dialog .modal-content .modal-body .popup-menu { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
#videoPopup .close-btn { position: absolute; top: -14px; right: -14px; cursor: pointer; background: #D31177; color: #FFF; padding: 4px; margin: 0; z-index: 999; border-radius: 100%; }
#videoPopup .close-btn span { color: #FFF; width: 22px; height: 22px; font-size: 18px; display: block; line-height: 22px; }

.modalArea {
  display: none;
  position: fixed;
  z-index: 10; /*サイトによってここの数値は調整 */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modalBg {
  width: 100%;
  height: 100%;
  background-color: rgba(30,30,30,0.9);
}

.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  width: 70%;
  max-width: 500px;
  padding: 10px 30px;
  background-color: #fff;
}

.closeModal {
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  cursor: pointer;
}


/* 以下ボタンスタイル */
button {
  cursor: pointer;
	border: 0;
	background: none;
	margin: 0;
	padding: 0;
}

#openModal {
}

@media (max-width: 1400px) { .popup_content .popup-menu { height: 28vw; } }
@media (max-width: 1200px) { .popup_content .popup-menu { height: 34vw; } }
@media (max-width: 1000px) { .popup_content .popup-menu { height: 40vw; } }
@media (max-width: 800px) { .popup_content .popup-menu { height: 46vw; } }
@media (max-width: 600px) { .popup_content .popup-menu { height: 52vw; } }
/* popup */

/* shopInfo */
#shopInfo 
#shopInfo h4 { font-size: 36px; color: #000; }
#shopInfo .shop-top-info { width: 100%; padding-bottom: 40px; }
#shopInfo .shop-top-info .top-btn-group { width: 256px; float: right; }
#shopInfo .shop-top-info .top-btn-group dt { width: 256px; padding: 8px 0; background: #D31177; font-size: 20px; text-align: center; margin: 0 0 4px; }
#shopInfo .shop-top-info .top-btn-group dt a { color: #FFF; }
#shopInfo .shop-top-info .top-btn-group dd { float: left; width: 126px; margin-right: 4px; padding: 8px 0; background: #000; text-align: center; font-size: 20px; }
#shopInfo .shop-top-info .top-btn-group dd:nth-child(3) { margin: 0; }
#shopInfo .shop-top-info .top-btn-group dd a { color: #FFF; }
#shopInfo .shop-top-info .label-group ul { padding: 0; text-align: center; }
#shopInfo .label-group ul li { display: inline-block; background: #E26B95; border-radius: 4px; color: #FFF; margin: 0 4px 0 0; padding: 2px 4px; list-style: none; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-size: 12px; }
#shopInfo .label-group ul li.other { background: #FFF; border: 1px solid #E26B95; color: #E26B95; }
#shopInfo .shop-top-info .label-group2 ul { padding: 0; text-align: center; }
#shopInfo .shop-top-info .label-group2 ul li { display: inline-block; background: #FFF; border-radius: 4px; color: #D31177; margin: 0 4px 20px 0; padding: 2px 4px; list-style: none; border: 1px solid #D31177; }
#shopInfo .shop-top-info .label-group3 ul { padding: 0; text-align: center; }
#shopInfo .shop-top-info .label-group3 ul li.red { display: inline-block; background: none; border-radius: 4px; color: #C00; margin: 0 4px 20px 0; padding: 2px 4px; list-style: none; border: 2px solid #C00; font-size: 14px; }
#shopInfo .shop-top-info .label-group3 ul li.blue { display: inline-block; background: none; border-radius: 4px; color: #00C; margin: 0 4px 20px 0; padding: 2px 4px; list-style: none; border: 2px solid #00C; font-size: 14px; }
#shopInfo .shop-top-info .label-group3 ul li.green { display: inline-block; background: none; border-radius: 4px; color: #0C0; margin: 0 4px 20px 0; padding: 2px 4px; list-style: none; border: 2px solid #0C0; font-size: 14px; }
#shopInfo .shop-top-info h2 { clear: right; }
#shopInfo .shop-top-info .shop-text { text-align: center; line-height: 1.6em; margin-bottom: 25px; }
#shopInfo .shop-top-info .slide-area { margin: 0 auto 100px; width: 80%; color: #333; }
.slick-slide { text-align: center; color: #419be0; }
.slick-slide img { width: 100%; }
.slick-prev:before, .slick-next:before { color: #D31177; font-weight: bold; border-radius: 100%; opacity: 1; font-size: 30px; }
.slick-prev { left: -75px; }
.slick-next { right: -50px; }
.slick-dots li img { width: 100%; }
.slick-dots li.slick-active button:before { color: #D31177; }
.slick-dots li button:before { font-size: 16px; }

.fotorama__stage { margin-bottom: 20px; }
#shopInfo .campaign-area { margin-top: 20px; margin-bottom: 40px; min-width: 345px; }
#shopInfo .campaign-area h4 { background: #C8C9CA; padding: 30px 0; text-align: center; margin: 0; }
#shopInfo .campaign-area-content { width: auto; height: 600px; background-color: white; overflow: auto; margin-bottom: 20px; padding-top: 30px; }
#shopInfo .campaign-area-content .pc { display: block !important; }
#shopInfo .campaign-area-content .sp { display: none !important; }
#shopInfo .campaign-area-content div[class*='col-'] { min-width: 560px; }
#shopInfo .campaign-area-content .campaign-item { padding: 20px 10px 20px 30px; font-size: 26px; font-weight: bold; margin: 0; overflow: hidden; }
#shopInfo .campaign-area-content .campaign-item-image { float: left; width: 290px; margin: 0; }
#shopInfo .campaign-area-content .campaign-item-image .campaign-image { width: 290px; }
#shopInfo .campaign-area-content .campaign-item-content { float: left; margin: 0 0 0 20px; }
#shopInfo .campaign-area-content .campaign-item-content .today-recommend { background: #000; color: #FFF; font-size: 20px; padding: 4px; display: inline-block; }

/* menu buttons */
#shopInfo .menu-btn-group ul { padding: 0; margin: 0; }
#shopInfo .menu-btn-group ul li { margin: 0 0 10px 10px; list-style: none; width: 310px; height: 60px; background: #D31177; text-align: center; border-radius: 5px; float: left; }
#shopInfo .menu-btn-group ul li.disabled-menu { background: none; border: 2px solid #AAA; }
#shopInfo .menu-btn-group ul li a { font-size: 26px; color: #FFF; display: block; padding: 12px; }
#shopInfo .menu-btn-group ul li.disabled-menu a { color: #AAA; pointer-events: none; padding: 9px; }
#shopInfo .menu-btn-group ul li.disabled-menu a img { display: none; }
#shopInfo .menu-btn-group ul li a span { font-size: 20px; color: #FFF; font-weight: bold; }
#shopInfo .menu-btn-group ul li.disabled-menu a span { color: #AAA; }
#shopInfo .menu-btn-group ul .btn-grand { margin: 0; width: 500px; height: 270px; background: url(../img/grand_bg.png) no-repeat; }
#shopInfo .menu-btn-group ul .btn-grand a { font-size: 50px; display: block; padding: 20px 0 180px; color: #D31177; }
#shopInfo .menu-btn-group ul .btn-grand a span { font-size: 30px; color: #D31177; }
#shopInfo .menu-btn-group ul .btn-grand a img { margin-left: 10px; }
/*
#shopInfo .menu-btn-group ul li:hover { background: none; border: 2px solid #999; color: #999; }
#shopInfo .menu-btn-group ul li:hover a { color: #999; }
#shopInfo .menu-btn-group ul li:hover a span { color: #999; }
#shopInfo .menu-btn-group ul .btn-grand:hover { background: #D31177; border: 0; }
#shopInfo .menu-btn-group ul .btn-grand:hover a { color: #FFF; }
#shopInfo .menu-btn-group ul .btn-grand:hover a span { color: #FFF; }
*/
#shopInfo .menu-btn-group2 ul { padding: 0; margin: 0; }
#shopInfo .menu-btn-group2 ul li { margin: 0 0 15px 15px; list-style: none; width: 370px; height: 60px; background: #D31177; text-align: center; border-radius: 5px; float: left; }
#shopInfo .menu-btn-group2 ul li.btn-top { margin: 0; }
#shopInfo .menu-btn-group2 ul li a { font-size: 26px; color: #FFF; display: block; padding: 12px; }
#shopInfo .menu-btn-group2 ul li a span { font-size: 20px; color: #FFF; font-weight: bold; }
#shopInfo .menu-btn-group2 ul .btn-grand { margin: 0; width: 370px; height: 135px; }
#shopInfo .menu-btn-group2 ul .btn-grand a { font-size: 40px; display: block; padding: 40px 0; }
#shopInfo .menu-btn-group2 ul .btn-grand a span { font-size: 20px; }
#shopInfo .menu-btn-group2 ul .btn-grand a img { margin-left: 10px; }

#shopInfo .menu-btn-group3 ul { padding: 0; margin: 0; }
#shopInfo .menu-btn-group3 ul li { margin: 0 0 15px 15px; list-style: none; width: 370px; height: 60px; background: #D31177; text-align: center; border-radius: 5px; float: left; }
#shopInfo .menu-btn-group3 ul li.btn-top { margin: 0; }
#shopInfo .menu-btn-group3 ul li a { font-size: 26px; color: #FFF; display: block; padding: 12px; }
#shopInfo .menu-btn-group3 ul li a span { font-size: 20px; color: #FFF; font-weight: bold; }
#shopInfo .menu-btn-group3 ul .btn-grand { margin: 0; width: 370px; height: 135px; }
#shopInfo .menu-btn-group3 ul .btn-grand a { font-size: 40px; display: block; padding: 40px 0; }
#shopInfo .menu-btn-group3 ul .btn-grand a span { font-size: 20px; }
#shopInfo .menu-btn-group3 ul .btn-grand a img { margin-left: 10px; }

/* shop-bottom-info */
#shopInfo .shop-bottom-info { width: 100%; padding-top: 30px; padding-bottom: 20px; }
#shopInfo .bottom-info ul { padding: 0; margin: 0; }
#shopInfo .bottom-info .left-info { float: left; margin-right: 40px; }
#shopInfo .bottom-info .left-info ul { margin-bottom: 36px; }
#shopInfo .bottom-info .left-info ul li { font-size: 2rem; }
#shopInfo .bottom-info ul li { list-style: none; }
#shopInfo .bottom-info .float-button a { border: 2px solid #D31177; color: #D31177; width: 100%; padding: 8px 16px; display: block; font-size: 1.7rem; margin-bottom: 10px; text-align: right; background: #FFF; }
#shopInfo .bottom-info .float-button a img { width: 18px; margin: 0 0 4px 4px; }
#shopInfo .bottom-info .center-info { float: none; font-size: 1.7rem; font-weight: 400; margin-bottom: 36px; color: #000; }
#shopInfo .bottom-info .center-info tr th { background: #002F70; color: #FFF; padding: 13px 16px; border-bottom: 1px solid #FFF; width: 180px; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }
#shopInfo .bottom-info .center-info tr td { padding:8px 64px 8px 16px; border: 1px solid #4D4D4D; background: #FFF; width: 500px; }
#shopInfo .bottom-info .center-info .bottom-row th { border-bottom: 1px solid #4D4D4D; }
#shopInfo .bottom-info .float-button { float: right; }
#shopInfo .bottom-info .right-info { float: right; padding-top: 120px; padding-left: 15px; }
#shopInfo .bottom-info .right-info ul li { font-size: 2rem; }
#shopInfo .bottom-info .right-info ul .list-button { margin-top: 10px; }
#shopInfo .bottom-info .right-info ul .list-button a { background: #D31177; color: #FFF; font-size: 2rem; padding: 4px 8px; border-radius: 5px; }
#shopInfo .bottom-info .ggmap { clear: both; margin-bottom: 50px; }
#shopInfo .bottom-info .ggmap iframe { padding-right: 0; }
#shopInfo h5 { text-align: center; font-size: 26px; margin-bottom: 20px; }
#shopInfo .bottom-back-btn { text-align: center; margin-top: 20px; }

/* schoolPage */
/*#contentsSchool .container { margin: 0 auto 20px; }*/
#schoolPage { background: url(../img/noren.png) no-repeat; background-size: 100%; padding-top: 25vw; }
#schoolPage h1 span { font-size: 70px; color: #D31177; font-weight: bold; }
#schoolPage .yousei-katei { display: block; margin: 0 auto; }
#schoolPage h2 { font-size: 30px; color: #000; }
#schoolPage .noticeListBox { width: 85%; margin: 0 auto; }
#schoolPage .map-link { text-align: center; margin: 30px 0 50px; }
#schoolPage .map-link a { background: #D31177; padding: 12px 24px; border-radius: 5px; color: #FFF; font-size: 20px; font-weight: bold; }
#schoolPage h3 { width: 100%; background: #702476; color: #FFF; text-align: center; font-size: 30px; font-weight: bold; padding: 20px; }
#schoolPage h3 span { color: #FFF; font-size: 50px; font-weight: bold; }
#schoolPage .row-title { position: relative; margin-bottom: 40px; }
#schoolPage .diamond_button { display: block; width: 120px; height: 120px; background: #B79A5B; transform: rotate(-45deg) skew(calc((90deg - 70deg) / 2), calc((90deg - 70deg) / 2)); position: absolute; top: -50px; right: 0; }
#schoolPage .diamond_button .diamond_text { position: absolute; width: 100px; height: 100px; line-height: 30px; font-size: 25px; font-weight: bold; background: transparent; transform: rotate(45deg); top: 30px; left: -10px; text-align: center; letter-spacing: -2px; }
#schoolPage .diamond_button .diamond_text a { color: #FFF; }
.school-content .lead-text p { margin-top: 30px; font-size: 35px; font-weight: normal; letter-spacing: -.08em; }
#schoolPage .school-content dl { width: 100%; }
#schoolPage .school-content dt { float: right; width: 50%; }
#schoolPage .school-content dt img { width: 100%; }
#schoolPage .school-content dd { font-size: 20px; font-weight: bold; margin-bottom: 20px; }
#schoolPage .school-content dd span { font-size: 16px; font-weight: normal; margin-top: 20px; color: #000; display: inline-block; }
#schoolPage .school-content dd.school-label { background: #D31177; color: #FFF; padding: 4px 30px; border-radius: 20px; display: inline-block; }
#schoolPage h4 { width: 100%; color: #FFF; text-align: center; font-size: 30px; font-weight: bold; padding: 20px; }
#schoolPage h5 { text-align: center; font-size: 40px; font-weight: bold; }
#schoolPage h5 img { padding-bottom: 24px; }
#schoolPage .school-title-1 { background: #D31177; }
#schoolPage .school-title-2 { background: #FF8000; }
.school-content .access-map { margin-bottom: 80px; width: 100%; background: #FFF; border-bottom: 10px solid #12225F; }
.school-content .access-map .access-school dt { font-size: 30px; font-weight: bold; color: #12225F; border-bottom: 1px solid #12225F; width: fit-content; width: -moz-fit-content; line-height: 2em; margin-bottom: 10px; }
.school-content .access-map .access-school dd { font-size: 18px; font-weight: bold; line-height: 2em; }
.school-content .access-map .access-school .school-address span.school-tel { font-size: 26px; background: #D31177; color: #FFF; padding: 2px 8px; display: inline-block; }
.school-content .access-map .access-school .school-photo { width: 30%; float: right; text-align: center; margin-left: 10px; }
.school-content .access-map .access-school .school-photo img { width: 100%; }
#schoolPage .ggmap iframe { padding-right: 0; }
#schoolPage .bottom-back-btn { text-align: center; margin-top: 40px; }

#schoolPage .school-area1 { margin: 40px auto 80px; width: 1170px; background: rgb(255,255,255,0.7); padding: 40px; border-bottom: 5px solid #702476; }
#schoolPage .school-area2 { margin: 40px auto 80px; width: 1170px; background: rgb(255,255,255,0.7); padding: 40px; border-bottom: 5px solid #C20D23; }
#schoolPage .school-area3 { margin: 40px auto 80px; width: 1170px; background: rgb(255,255,255,0.7); padding: 40px; border-bottom: 5px solid #00A199; }
@media(max-width: 1400px){ #schoolPage .school-area1,#schoolPage .school-area2,#schoolPage .school-area3 { width: 1040px; padding: 20px; } }
@media(max-width: 990px){ #schoolPage .school-area1,#schoolPage .school-area2,#schoolPage .school-area3 { width: 96%; padding: 2%; } }
.school-content .school-title1 { font-size: 35px; font-weight: bold; margin-bottom: 10px; color: #702476; }
.school-content .school-title2 { font-size: 35px; font-weight: bold; margin-bottom: 10px; color: #C20D23; }
.school-content .school-title3 { font-size: 35px; font-weight: bold; margin-bottom: 10px; color: #00A199; }
#schoolPage .school-lead { font-size: 19px; font-weight: bold; margin-bottom: 40px; }
#schoolPage .school-text-left { float: left; width: 58%; margin-right: 2%; }
#schoolPage .school-image-right { float: right; width: 50%; }
#schoolPage .school-image-right img { width: 100%; }
#schoolPage .school-text-right { float: right; width: 48%; margin-left: 2%; }
#schoolPage .school-image-left { float: left; width: 40%; }
#schoolPage .school-image-left img { width: 90%; }
#schoolPage .school-sub { font-size: 18px; font-weight: bold; margin-top: 40px; }
.school-content .inquiry-text { text-align: center; font-size: 24px; font-weight: bold; margin-bottom: 50px; }
.school-content { padding-top: 20px; padding-bottom: 20px; }
.school-content .map-bg { padding-top: 7px; background: url(../img/top-bar_line.png) repeat-x; background-size: 1200px; }
.school-content .map-title { padding: 10px 0; background: #12225F; }
.school-content .map-title img { margin: 0 auto; display: block; }
.school-content .map-area { background: url(../img/bg_map.jpg) repeat; background-size: 10%; padding: 40px; }
.school-content .map-area .map-inner { width: 1000px; margin: 0 auto; }
.school-content .map-area .map-inner img { width: 100%; }
.school-content .map-address { width: 1170px; margin: 40px auto; }
.school-content .school-inquiry { background: #FFF; border: 5px solid #12225F; }

@media(max-width: 990px){
.school-content .map-area .map-inner { width: 100%; } .school-content .school-title1,.school-content .school-title2,.school-content .school-title3 { font-size: 36px; } .school-content .school-lead { font-size: 20px; } .school-content .map-title img { width: 90%; } .school-content .access-map .access-school .school-photo { float: none; width: 36%; text-align-last: left; } .school-content .map-address { width: 100%; } .school-content .inquiry-text { font-size: 16px; } #schoolPage { background: url(../img/noren_sp.png) no-repeat; background-size: 100% } .school-content .access-map .access-school dt { font-size: 22px; } .school-content .school-inquiry { border: none; }
}

/* Custom Scroll Bar */
.mCS-inset-2-dark.mCSB_scrollTools { margin-right: 8px; }
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar { width: 16px; margin: 2px 2px; }
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail { width: 20px; }
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonUp { margin-left: 1px; background-position: -95px -72px; }
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonDown { margin-left: 1px;  background-position: -95px -92px; }

/* item-card */
.item-card .item-card-title { color: #000; margin: 5px 0px; height: auto; }
.item-card .title-label { text-align: center; }
.item-card .label { font-size: 14px; vertical-align: middle; display: inline-block; }
.item-card .item-card-image img { width: 50%; display: block; margin: 0 auto; }
.menu-area2 .item-card .item-card-image img { background: #FFF; padding: 20px; border: 6px solid #D31177; }
.item-card .item-card-caption { margin-top: 3px; margin-bottom: 3px; }

/* single-blog-post */
h2.blog-category { text-align: left; margin-bottom: 0; margin-top: 20px; padding: 10px 15px 10px 15px; font-size: 30px; background: gray; color: white; }
.d-flex { display: flex!important; }
.single-blog-post { position: relative; z-index: 1; border-bottom: 1px solid #d0d5d8; padding: 20px 0; }
.single-blog-post .post-thumb { -webkit-box-flex: 0; -ms-flex: 0 0 300px; flex: 0 0 300px; max-width: 300px; width: 300px; margin-right: 15px; }
.single-blog-post .post-thumb a { display: block; }
.single-blog-post .post-thumb a img { height: auto; max-width: 100%; }
.single-blog-post .post-data { padding: 5px 0; }
.single-blog-post .post-data .post-category { font-size: 14px; color: #E3007F; text-transform: uppercase; font-weight: 700; margin-bottom: 0px; display: block; }
.single-blog-post .post-data .post-meta .post-title { display: block; color: #000000; }
.single-blog-post .post-data .post-meta .post-title h6 { font-size: 22px; line-height: 1.6; margin-bottom: 10px; font-weight: 700; color: inherit; }
.single-blog-post .post-data .post-meta .post-title h6 a { color: inherit; }
.single-blog-post .post-data .post-meta .post-title p { font-size: 14px; line-height: 1.6; color: inherit; margin-bottom: 10px; }
.single-blog-post .post-data .post-meta .post-date { margin-bottom: 0; line-height: 1; color: #8a8a8a; font-size: 14px; }

/* custom class */
.label-new { background-color: #D31177; }

.content h1 { font-size: 50px; letter-spacing: -.01em; }
.content .h-one { font-size: 40px; letter-spacing: -.01em; background: url(../img/title_ul.png) repeat-x center bottom; margin-bottom: 40px; }
.school-content .h-one { color: #12225F; background: url(../img/school_title_ul.png) repeat-x center bottom; font-size: 35px; }

.policy-text { width: 100%; margin: 0 auto; padding: 20px; background: #FFF; opacity: .8; }
.policy-text ul { margin: 0; padding: 0; }
.policy-text ul li { list-style: none; font-weight: normal; font-size: 18px; }
.policy-text ul li:nth-child(odd) { margin-bottom: 40px; }
.policy-text ul li:nth-child(even) { font-weight: bold; }
.policy-text span { color: #000; }

#couponPage ul { margin: 0; padding: 0; }
.coupon-area span, .coupon-area2 span { color: #000; }
.coupon-area ul { margin: 30px 0; }
.coupon-area ul li { list-style: none; font-weight: normal; }
.coupon-area ul li:nth-child(odd) { font-weight: bold; margin-bottom: 20px; display: flex; }
.coupon-area ul li:nth-child(even) { margin-bottom: 80px; }
/* .coupon-area ul li a { background: #C22E58; color: #FFF; font-size: 26px; margin: 0; padding: 10px; border-radius: 10px; } */
.coupon-area ul li img { width: 30px; vertical-align: text-top; }
.coupon-area2 ul { margin: 30px 0; }
.coupon-area2 ul li { list-style: none; font-weight: normal; }
.coupon-area2 ul li:nth-child(odd) { font-weight: bold; margin-bottom: 20px; display: flex; }
.coupon-area2 ul li:nth-child(even) { margin-bottom: 80px; }
/* .coupon-area2 ul li a { background: #6F3F92; color: #FFF; font-size: 26px; margin: 0; padding: 10px; border-radius: 10px; } */
.coupon-area2 ul li img { width: 30px; vertical-align: text-top; }

.content .book-title { background-image: none; line-height: 1.2em; font-size: 34px; }

/* special button */
.spcbtn-coupon { padding: 10px 0px; display: flex; }
.spcbtn-coupon a { color: #FFF; font-size: 26px; margin: 0; padding: 10px; border-radius: 10px; }
.spcbtn-coupon img { width: 30px; vertical-align: text-top; }
.spcbtn-coupon.spcbtn-coupon-1 a { background: #C22E58; }
.spcbtn-coupon.spcbtn-coupon-2 a { background: #6F3F92; }

/* freepage big title, small title */
.free-big-title { 
  font-size: 28px;
  line-height: 35px;
  padding-bottom: 15px;
  letter-spacing: -.01em;
  background: url(../img/title_ul.png) repeat-x center bottom;
  margin-bottom: 40px;
  margin: 20px auto;
  color: #E3007F;
  font-weight: 600;
  width: fit-content;
}
.free-small-title {
  width: 100%;
  margin: 0 auto;
  border-bottom: 3px double #702476;
  color: #702476;
  text-align: center;
  font-size: 25px;
  font-weight: bold;
  padding: 20px 15px 0;
}
.free-big-title span, .free-small-title span { 
  color: inherit; 
  font-family: inherit; 
  font-weight: inherit;
}
.free-apply-btn-container { width: 100%; text-align: center; margin: 10px 0px; }
.free-apply-btn { background: #D31177; border-radius: 10px; display: inline-block; padding: 5px 15px; }
.free-apply-btn a { padding: 0px 6px; color: #FFF; display: block; font-size: 20px; font-weight: 500; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }
.free-apply-btn a:first-child { padding-top: 6px; }
.free-apply-btn a:last-child { padding-bottom: 6px; }
@media (max-width: 480px) {
  .free-apply-btn a {
    font-size: 14px;
  }
}
.free-note { margin: 10px auto 0; width: 50%; text-align: center; font-weight: bold; font-size: 16px; }

/* freepage table */
table.free-table { margin: 20px 0; width: 100%; }
table.free-table td { border: 1px solid #000; font-size: 18px; padding: 1%; text-align: center; width: 23%; }
table.free-table.divide-two td:last-child { width: 69%; }
table.free-table a, table.free-table span { color: #000; }

@media (max-width: 480px) {
  table.free-table.divide-two td { width: 50%; } 
  table.free-table.divide-four td { display: block; width: 100%; border-bottom: none; } 
  table.free-table.divide-four tr:last-child td:last-child { border-bottom: 1px solid #000; }
}

/* free item card */
.free-item-card .item-card-image img {
  background: #FFF;
  padding: 20px;
  border: 6px solid #D31177;
  width: 50%;
  display: block;
  margin: 0 auto;
}

/* free item card */
.free-item-card.free-item-card-big .item-card-image img {
  width: calc(90% - 20px);
}

@media (max-width: 480px) {
  .free-item-card .item-card-image img {
    border: 2px solid #D31177;
    width: calc(90% - 20px);
  }
}


/* freetext image class */
.img-pc100 { width: 100%; padding: 5px 10px; }
.img-pc90 { width: 90%; padding: 5px 10px; }
.img-pc80 { width: 80%; padding: 5px 10px; }
.img-pc70 { width: 70%; padding: 5px 10px; }
.img-pc60 { width: 60%; padding: 5px 10px; }
.img-pc50 { width: 50%; padding: 5px 10px; }
.img-pc40 { width: 40%; padding: 5px 10px; }
.img-pc30 { width: 30%; padding: 5px 10px; }
.img-pc20 { width: 20%; padding: 5px 10px; }
.img-pc10 { width: 10%; padding: 5px 10px; }

@media (max-width: 1400px) {
  .img-tb100 { width: 100%; padding: 5px 10px; }
  .img-tb90 { width: 90%; padding: 5px 10px; }
  .img-tb80 { width: 80%; padding: 5px 10px; }
  .img-tb70 { width: 70%; padding: 5px 10px; }
  .img-tb60 { width: 60%; padding: 5px 10px; }
  .img-tb50 { width: 50%; padding: 5px 10px; }
  .img-tb40 { width: 40%; padding: 5px 10px; }
  .img-tb30 { width: 30%; padding: 5px 10px; }
  .img-tb20 { width: 20%; padding: 5px 10px; }
  .img-tb10 { width: 10%; padding: 5px 10px; }
}

@media (max-width: 480px) {
  .img-sp100 { width: 100%; padding: 5px 0px; }
  .img-sp90 { width: 90%; padding: 5px 0px; }
  .img-sp80 { width: 80%; padding: 5px 0px; }
  .img-sp70 { width: 70%; padding: 5px 0px; }
  .img-sp60 { width: 60%; padding: 5px 0px; }
  .img-sp50 { width: 50%; padding: 5px 0px; }
  .img-sp40 { width: 40%; padding: 5px 0px; }
  .img-sp30 { width: 30%; padding: 5px 0px; }
  .img-sp20 { width: 20%; padding: 5px 0px; }
  .img-sp10 { width: 10%; padding: 5px 0px; }
}

/* video responsive */
.video-container { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }
/* .video-container iframe, .video-container object, .video-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } */
.video-container iframe, .video-container object, .video-container embed { position: absolute; top: 0; left: 5%; width: 90%; height: 100%; padding: 5px 10px; }

@media (max-width: 1400px) { 
.header .container { width: 1170px; }
#contentsWaper { background: url(../img/bg_top_1ex.png) repeat-y; background-size: 100%; }
#contentsWaper2 { background: url(../img/bg_top_2ex.png) repeat-y; background-size: 100%; }
#shopInfo .menu-btn-group ul li { width: 210px; }
#shopInfo .menu-btn-group ul li a { font-size: 20px; padding: 18px 0; }
#shopInfo .menu-btn-group ul li.disabled-menu a { font-size: 20px; padding: 15px 0; }
#shopInfo .menu-btn-group ul li a span { font-size: 16px; }
#shopSearch .inner-area ul { margin: 0; padding: 0; }
}

/* Media Queries below 991px */
@media (max-width: 1200px) { 
	.header .container { width: 970px; }
    /* menu */
    #shopMenu ul.top-menu li { margin-left: 5px; margin-right: 5px; }

    /* shop */
    #shopInfo .bottom-info .float-button { float: right; }
    #shopInfo .bottom-info .center-info { float: none; }
    #shopInfo .bottom-info .right-info { float: right; padding-top: 195px; }
    #shopInfo .menu-btn-group ul .btn-grand { width: 100%; height: auto; background: #D31177; border: 2px solid #D31177; height: 80px; }
    #shopInfo .menu-btn-group ul .btn-grand a { font-size: 30px; color: #FFF; }
    #shopInfo .menu-btn-group ul .btn-grand a span { color: #FFF; }
    #shopInfo .menu-btn-group ul li { width: 49%; margin: 2% 2% 0 0; height: 80px; }
    #shopInfo .menu-btn-group ul li:nth-child(odd) { margin-right: 0; }
    #shopInfo .menu-btn-group ul li a { font-size: 16px; padding: 18px; }
    #shopInfo .menu-btn-group ul li a span { font-size: 16px; }
	#shopInfo .shop-top-img { width: 70%; }
	#shopInfo .menu-btn-group ul li.disabled-menu a { font-size: 16px; }
    #shopInfo .menu-btn-group ul li.disabled-menu a span {font-size: 13px; }
}

/* Media Queries below 991px */
@media (max-width: 991px) {
	.main-content { margin-top: 135px; }
    #contentsWaper { background: none; }
    #contentsWaper2 { background: none; }
	
    .bg_ex { padding-top: 120px; margin-top: 10px; background: none !important; }

	#languageMenu { width: 100%; background: #D31177; }
	.navbar-fixed-top .navbar-collapse #sysMenu { float: none; margin-bottom: 0; }
	.header #sysMenu .navbar-nav { padding-bottom: 0; }
    .input-group-btn .btn { padding: 14px 12px; }

    /* shop */
    #shopCourse ul#shopCource-menu li { width: 46%; margin: 0; margin-bottom: 20px; }
    #shopCourse ul#shopCource-menu li:nth-child(odd) { margin-right: 2%; }
    .inner-area { height: auto; }
    .nav-tabs>li>a, .nav-tabs>li>a:focus, .nav-tabs>li>a:hover { font-size: 1.5rem; }
    #contentsResult .border-on .text-deco { font-size: 1.4rem; }
    .slick-dots { bottom: -50px; }
    .slick-dots li { width: 120px; }
	#shopSearch .input-group { width: 100%; }
    
    #shopInfo .shop-top-info { padding-bottom: 80px; }
    #shopInfo .shop-top-info .slide-area { padding-bottom: 0; width: 100%; padding: 0; margin: 0; }
    #shopInfo .shop-top-info .slide-area .slick-prev,
    #shopInfo .shop-top-info .slide-area .slick-next { display: none !important; }
    #shopInfo .noticeListBox { padding: 20px; padding-right: 0px; }
    #shopInfo .noticeListBox dl dt { float: none; width: 100%; }
    #shopInfo .noticeListBox dl dd { padding-left: 0; }
    #shopInfo .bottom-info .center-info { clear: both; }
    #shopInfo .bottom-info .right-info { float: left; clear: both; padding-top: 30px; padding-left: 0px; }
	#shopInfo .shop-top-img { width: 100%; }
	#shopInfo .shop-top-info .top-btn-group { display: none; }
	#shopInfo .bottom-info .float-button { float: left; }

    /* menu */
    #shopMenu .nav-content ul { margin: 0 auto 20px; }
    #shopMenu ul.top-menu li { width: 44%; }
	#shopMenu .tab-content .menu-area .recom-menu dl { float: none; width: 100%; }

    /* school */
    #schoolPage  img.yousei-katei { width: 100%; }
    #schoolPage .lead-text p { font-size: 36px; }
    #schoolPage .noticeListBox { padding: 20px; padding-right: 0px; }
    #schoolPage .noticeListBox dl dt { float: none; width: 100%; }
    #schoolPage .noticeListBox dl dd { padding-left: 0; }
	
	/*#contentsSchool { background: none; }*/
	#schoolPage .school-text-left { float: none; width: 100%; margin: 0 0 40px; }
	#schoolPage .school-image-right { float: none; width: 100%; margin: 0; }
	#schoolPage .school-text-right { float: none; width: 100%; margin: 0 0 40px; }
	#schoolPage .school-image-left { float: none; width: 100%; margin: 0; }
	
	.policy-text { width: 90%; padding: 5%; }
}

/* Media Queries below 768px */
@media (max-width: 768px) { 
    /* menu */
    #shopMenu .tab-content .menu-area dl { width: 33.333%; }
    #shopMenu .tab-content .menu-area dl span { font-size: 12px; }

    /* shop */
    #shopInfo .bottom-info .float-button { float: left; }

    /* shop search */
    #shopSearch .search-header-area .search-header-btn { font-size: 18px; }
    #shopSearch .search-title-area { background: none; }
}

/* Media Queries below 640px */
@media (max-width: 640px) {    
    /* shop */
    #shopCourse .shopCource-txt { width: 96%; font-size: 14px; padding: 10px 5px; }
    #shopCourse .shopCource-sub-menu-detail dl dd .txt-show { text-align: center; }
    #shopCourse .shopCource-sub-menu-detail dl dd .txt-show .img-right-show { display: block; width: 98%; float: none; margin-left: auto; margin-right: auto; }
    #shopCourse .shopCource-sub-menu-detail dl dd .txt-show .img-right-show img { width: 100%; }
    #shopCourse .shopCource-sub-menu-detail dl dd .txt-show .txt-left-show { position: static; width: 98%; margin-left: auto; margin-right: auto; -ms-transform: none; -webkit-transform: none; transform: none; }
    #shopCourse .shopCource-sub-menu-detail dl dd .txt-show .txt-only-show { width: 98%; margin-left: auto; margin-right: auto; }
}

@media (max-width: 480px) {
    /* common */
	.content .h-one { font-size: 30px; line-height: 45px; }
	.content .h-two { font-size: 30px; line-height: 45px; margin-bottom: 45px; }
	.content .mb0 { margin-bottom: 0; }
	.content .mb20 { margin-bottom: 20px; }
    .sp-none { display: none; }
	.pc-none { display: block; }

	.navbar-fixed-top .navbar-collapse #sysMenu { float: none; margin-bottom: 0; }
	.header #sysMenu .navbar-nav { padding-bottom: 0; }
    .input-group-btn .btn { padding: 14px 12px; }

    /* shop */
    #shopSearch h2 { font-size: 20px; }
    #shopSearch .nav-tabs>li>a, .nav-tabs>li>a:focus, .nav-tabs>li>a:hover { font-size: 14px; }
    #shopSearch .inner-area ul { padding: 0; }
	#shopSearch .search-btn-group ul { width: 100%; }
	#shopSearch .search-btn-group ul li { display: block; width: 160px; margin: 0 auto; }
	#shopSearch .search-btn-group ul li:first-child { margin: 0 auto; }
	#shopSearch .search-header-area .search-header-btn { margin-bottom: 20px; }
    #contentsResult .image-area { margin-bottom: 20px; }
    #contentsResult .detail-area { padding: 0; }
    #contentsResult .detail-area .text-deco { font-size: 13px; }
    /* menu */
    #shopMenu h1 { font-size: 30px;}
    #shopMenu ul.top-menu li { width: 40%; }
    #shopMenu ul.sub-menu { padding: 0 15px; }
    #shopMenu ul.sub-menu li { margin: 0; padding-left: 20px; }
    #shopMenu ul.sub-menu li a { font-size: 14px; }
    #shopMenu .nav-content { width: 100%; text-align: center; }
    #shopMenu .nav-content ul { width: auto; display: inline-block; }
    #shopMenu .nav-content ul li a { font-size: 1.1rem }
    #shopMenu .nav>li>a { padding: 5px; }
    #shopMenu .tab-content .menu-area dl { width: 50%; }
	#shopMenu .tab-content .bottom-menu dl { width: 90%; margin: 0 5% 10%; }
    #shopMenu .tab-content .menu-area dl dt .icon-deco { float: none; display: inline-block; margin-bottom: 5px;}
    #shopMenu .tab-content .menu-area dl dt .menu-name { float: none; }
    #shopMenu .tab-content .menu-area dl dt .icon-none { padding-bottom: 36px; display: inline-block; }
	.menu-area2 .item-card .item-card-image img { border: 2px solid #D31177; width: 90%; }
	#shopMenu .sub-menu-container ul.sub-menu { text-align: left; }
	#shopMenu .tab-content .menu-area .recom-menu dl { float: none; width: 100%; }
	#shopMenu .tab-content .menu-title { font-size: 24px; padding: 30px 0 0; }
	#shopMenu .tab-content .menu-title-eng { padding: 0 0 20px; }

    .slick-slide img { width: 100%; }
    .slick-dots li { width: 80px; }
    .info-area .top-btn-group { float: none; }

    /* shop */
    #shopInfo h1 { margin: 40px auto 0;}
    #shopInfo h4 { font-size: 30px; }
    #shopInfo .top-contain { padding-bottom: 20px; }
    #shopInfo .pnone-contain { padding: 0; }
    #shopInfo .bottom-info .ggmap { margin-bottom: 0; }
    #shopInfo .info-area h2 { clear: both; }
    /* campaign area content */
    #shopInfo .campaign-area-content .campaign-item { padding: 10px 0 10px 10px; }
    #shopInfo .campaign-area-content div[class*='col-'] { min-width: auto; }
    #shopInfo .campaign-area-content .campaign-item-image { width: 50%; }
    #shopInfo .campaign-area-content .campaign-item-image .campaign-image { width: 100%; }
    #shopInfo .campaign-area-content .campaign-item-content { font-size: 1.8rem; margin-left: 10px; }
    #shopInfo .campaign-area-content .campaign-item-content .today-recommend { font-size: 1.6rem; }
    #shopInfo .info-area .top-btn-group { width: 100%; }
    #shopInfo .info-area .top-btn-group dt { width: 50%; float: left; margin: 0 0 50px 0; font-size: 1.5rem; }
    #shopInfo .info-area .top-btn-group dd { width: 24%; margin: 0 0 0 1%; font-size: 1.5rem; }
    #shopInfo .info-area .top-btn-group dd:nth-child(3) { margin: 0 0 0 1%; }
    #shopInfo .menu-btn-group ul .btn-grand { width: 100%; }
    #shopInfo .menu-btn-group ul .btn-grand a { font-size: 30px; background: #FFF; color: #D31177; padding: 19px; }
	#shopInfo .menu-btn-group ul .btn-grand a span {color: #D31177; font-size: 24px; }
    #shopInfo .menu-btn-group ul li { width: 49%; margin: 2% 2% 0 0; }
    #shopInfo .menu-btn-group ul li:nth-child(odd) { margin-right: 0; }
    #shopInfo .menu-btn-group ul li a { font-size: 19px; padding: 18px; line-height: 1.2em; }
    #shopInfo .menu-btn-group ul li a span { font-size: 13px; }
    #shopInfo .bottom-back-btn { display: none !important; }
	#shopInfo .shop-top-img { width: 100%; }
	#shopInfo .menu-btn-group { width: 100%; }
	#shopInfo .shop-top-info { padding-bottom: 0; }
	#shopInfo .slick ul.slick-dots { display: none !important; }
	#shopInfo .shop-top-info .shop-text { text-align: left; }
    
    /* school */
    #schoolPage h1 { font-size: 26px;}
    #schoolPage h2 { font-size: 26px;}
    #schoolPage h3 { font-size: 12px; }
    #schoolPage h3 span { font-size: 26px; }
    #schoolPage h4 { font-size: 26px; }
    #schoolPage h5 { font-size: 26px; }
    #schoolPage img.yousei-katei { width: 100%; }
    #schoolPage .noticeListBox { width: 100%; }
    #schoolPage .lead-text p { font-size: 20px; padding-top: 30px; font-weight: bold; }
    #schoolPage .diamond_button { width: 80px; height: 80px; top: -30px; right: 70px; }
    #schoolPage .diamond_button .diamond_text { line-height: 20px; font-size: 16px; top: 15px; left: -35px; }
    #schoolPage .school-content dt { float: none; width: 100%; margin-bottom: 20px; }
    #schoolPage .school-content dd { font-size: 16px; }
    #schoolPage .access-map .access-school { float: none; clear: left; width: 100%; }
    #schoolPage .access-map .access-school dd { font-size: 16px; margin-bottom: 20px; }
    #schoolPage .access-map .access-school .school-photo { float: none; width: 50%; margin-left: 0px; }
	#schoolPage .school-image-right img { width: 100%; }
	#schoolPage .school-title1, #schoolPage .school-title2, #schoolPage .school-title3 { font-size: 28px;}
	#schoolPage .school-lead { font-size: 18px; }
	.school-content .school-title1, .school-content .school-title2, .school-content .school-title3 { font-size: 28px;}
	.school-content .h-one { font-size: 24px; }
	.school-content .lead-text p { font-size: 18px; }
	
	.spcbtn-coupon a { font-size: 18px; letter-spacing: -2px; width: 100%; text-align: center; }
	.spcbtn-coupon img { width: 20px; }
}

@media (max-width: 350px) {
	.nav>li>a { padding: 10px; }
	#shopSearch .inner-area ul li { margin-left: 0; }
}

@media print {
  a[href]:after {
    content: "" !important;
  }
}