/*
Theme Name: 栂池 2025 v2
Author: 8litre.com
Description: 栂池スキー学校 web site
Version: 1.1.1
*/

/*------------------------
font
------------------------*/

/* Icons */
@font-face {
  font-family: 'iconFont';
  src:
    url('css/fonts/8litre.ttf?kuw6ii') format('truetype'),
    url('css/fonts/8litre.woff?kuw6ii') format('woff'),
    url('css/fonts/8litre.svg?kuw6ii#8litre') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'iconFont' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon--2:before {
  content: "\e902";
	margin-right:0.25rem;
}
.icon-1:before {
  content: "\e909";
  color: #4b4b4b;
}
.icon-uniE90A:before {
  content: "\e90a";
  color: #4b4b4b;
}
.icon--8:before {
  content: "\e904";
}
.icon--9:before {
  content: "\e905";
}
.icon--10:before {
  content: "\e906";
}
.icon--7:before {
  content: "\e907";
}
.icon--6:before {
  content: "\e908";
}
.icon-facebook:before {
  content: "\e900";
}
.icon-insta:before {
  content: "\e901";
}
.icon-twitter:before {
  content: "\e903";
}


/*------------------------
anti alias
------------------------*/

body {
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
}

@media only screen and 
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
  body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}


p,h1,h2,h3,h4,h5,h6,li{transform: rotate(0.05deg);}
li img, p input,p textarea{transform: rotate(-0.05deg);}

/*------------------------
common
------------------------*/

img { -ms-interpolation-mode: bicubic; max-width:100%;}

::selection {
	color:#000000;
	background: #e2e6ec;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

.preloadImage{
	position: absolute;
	top: 0;
	left: 0;
	display:none;
	width: 0px;
	height: 0px;
	z-index: -1;
}

html {
	font-size:14px;
}

body {
	width:100%;
	background:#ffffff;
	-webkit-text-size-adjust: 100%;
	font-family:'M PLUS 1p','M PLUS 1p',"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
	font-weight: 400;
	color:#222222;
	line-height:1.71428571;
}

object,embed{
	outline: none;
}
div,nav,main,section,article,ul,li,dl,dt,dd,p,a,span,em{
	box-sizing: border-box;
}

h1,h2,h3,h4,h5,h6{position: relative; font-weight:400; line-height:1.625; }

h1{font-size:300%;}
h2{font-size:228.5%;}
h3{font-size:200%;}
h4{font-size:171.142%;}
h5{font-size:128.571%;}
h6{font-size:114.285%;}
.HighLight{color:#0f206c; font-weight:700;}
h1 em,h2 em,h3 em,h4 em,h5 em,h6 em{font-size:75%;}

/*a{transition:1s;}*/
a:link,a:visited{position:relative; color:#0f206c; text-decoration:none; position:relative;}
a:link:before,a:visited:before{
	content:'';
	position:absolute;
	bottom:-2px;
	left:0;
	display:block;
	width:0;
	height:1px;
	background:#0f206c;
	transition:1s;
	z-index:-1;
}
a:hover{}
.findLink:hover a:before,a:hover:before{width:100%;}
.findLink{cursor:pointer;}
a.noHover:hover:before{width:0;}
a:focus{outline: none;}
a.arw:before{
	content:'? ';
}

input, select, textarea {
    font-size: 100%;
    font-family: Verdana, Helvetica, sans-serif;
    margin: 0 0.5em 0 0;
}

.annotation1{ padding-left: 1em; text-indent: -1em; }
.annotation2{ padding-left: 2em; text-indent: -2em; }
.annotation3{ padding-left: 3em; text-indent: -3em; }
.annotation4{ padding-left: 4em; text-indent: -4em; }
.annotation5{ padding-left: 5em; text-indent: -5em; }
.annotation6{ padding-top: 6em; text-indent: -6em; }

hr{
	border:1px solid #eeeeee;
	border-width:1px 0 0;
	width:100%;
	height:0;
	margin:12px auto;
}

hr.dotted{
	border:1px dotted #eeeeee;
	border-width:1px 0 0;
	width:100%;
	height:0;
	margin:0;
}

hr.void{
	border:none;
	width:100%;
	height:0;
}

hr.underMargin{
	border:none;
	width:100%;
	height:15vh;
	margin:0;
}

div.m36{
	margin:36px;
}

em{ font-style: inherit; font-weight: inherit;}

.mgA{margin:0 auto;}
.mgB0{margin-bottom:0 !important;}
.mgB0-5e{margin-bottom:0.5rem !important;}
.mgB1e{margin-bottom:1rem !important;}
.mgB1eL0{margin-bottom:1rem !important;}
.mgB1eL0:last-child{margin-bottom:0 !important;}
.mgB1-5e{margin-bottom:1.5rem !important;}
.mgB2e{margin-bottom:2rem !important;}
.mgB2-5e{margin-bottom:2.5rem !important;}
.mgB3e{margin-bottom:3rem !important;}
.mgB3-5e{margin-bottom:3.5rem !important;}
.mgB4e{margin-bottom:4rem !important;}
.mgB5e{margin-bottom:5rem !important;}
.mgB6e{margin-bottom:6rem !important;}

.mgT0{margin-top:0 !important;}
.mgT0-5e{margin-top:0.5rem !important;}
.mgT1e{margin-top:1rem !important;}
.mgT1-5e{margin-top:1.5rem !important;}
.mgT2e{margin-top:2rem !important;}
.mgT2-5e{margin-top:2.5rem !important;}
.mgT3e{margin-top:3rem !important;}
.mgT4e{margin-top:4rem !important;}
.mgT5e{margin-top:5rem !important;}
.mgT6e{margin-top:6rem !important;}

.pad0{padding:0rem !important;}
.pad1{padding:1rem;}
.pad2{padding:2rem;}
.pad3{padding:3rem;}

.padL0{padding-left:0 !important;}
.padR6{padding-right:6rem !important;}

.pad1tp{padding-top:1rem !important;}
.pad2tp{padding-top:2rem !important;}
.pad3tp{padding-top:3rem !important;}
.pad4tp{padding-top:4rem !important;}
.pad5tp{padding-top:5rem !important;}

.pad1bt{padding-bottom:1rem !important;}
.pad2bt{padding-bottom:2rem !important;}
.pad3bt{padding-bottom:3rem !important;}
.pad4bt{padding-bottom:4rem !important;}
.pad5bt{padding-bottom:5rem !important;}

.pad0tt{padding-top:0 !important; padding-bottom:0 !important;}
.pad1tt{padding-top:1rem !important; padding-bottom:1rem !important;}
.pad2tt{padding-top:2rem !important; padding-bottom:2rem !important;}
.pad3tt{padding-top:3rem !important; padding-bottom:3rem !important;}

.pad0yk{padding-left:0 !important; padding-right:0 !important;}
.pad0-5yk{padding-left:0.5rem !important; padding-right:0.5rem !important;}
.pad0-75yk{padding-left:0.75rem !important; padding-right:0.75rem !important;}
.pad1yk{padding-left:1rem !important; padding-right:1rem !important;}
.pad2yk{padding-left:2rem !important; padding-right:2rem !important;}
.pad3yk{padding-left:3rem !important; padding-right:3rem !important;}
.pad4yk{padding-left:4rem !important; padding-right:4rem !important;}
.pad5yk{padding-left:5rem !important; padding-right:5rem !important;}
.pad6yk{padding-left:6rem !important; padding-right:6rem !important;}

.pad0L,.pad0L_respo0{padding-left:0 !important;}
.pad1L,.pad1L_respo0,.pad1L_respo_block{padding-left:1rem !important;}
.pad2L,.pad2L_respo0{padding-left:2rem !important;}
.pad3L,.pad3L_respo0{padding-left:3rem !important;}
.pad4L,.pad4L_respo0{padding-left:4rem !important;}
.pad5L,.pad5L_respo0{padding-left:5rem !important;}
.pad6L,.pad6L_respo0{padding-left:6rem !important;}


.ResPad4yk{padding:0 4rem;}

.inlineBlock{display:inline-block;}
.Normal{font-weight:400;}
.Medium{font-weight:500;}
.Bolder{font-weight:bolder;}
.Bold{font-weight:bold;}
.Thinly{opacity:0.6;}
.Onehalf{font-size:50%;}
.Mini{font-size:70%;}
.Small{font-size:84%;}
.Large{font-size:120%;}
.ExLarge{font-size:135%;}
.Normal{font-size:1rem;}
.Caution{color:#e41409; font-weight:500;}
.txWhite{color:#ffffff;}
.txRed{color:#dd0000;}
.alignLeft{text-align:left;}
.alignRight{text-align:right;}
.alignCenter{text-align:center;}
.alignLR{text-align: justify; text-justify: inter-ideograph;}
.Wrap{white-space:normal !important;}
.noWrap{white-space:nowrap !important;}
.LHbst{line-height:2.0}
.Comments{font-size: 0.75rem; vertical-align: baseline; padding: 0 0.125rem;}
/*.mx100{max-width:100vw}*/
.mx800{max-width:800px;}

.viewPC,.onlyPC{display:block;}
.viewSP,.onlySP{display:none;}

.Button,
a.Button,
a:link.Button{
	position:relative;
	display:block;
	width:25%;
	min-width:20rem;
	max-width:640px;
	border:3px solid #0f206c;
	margin:0 auto;
	padding:0.9rem 2rem;
	color:#0f206c;
	background:#ffffff;
	font-size:150%;
	text-align:center;
	line-height:1.0;
	font-weight:500;
	transition:background 0.5s;
}

.Sublink,
a.Sublink,
a:link.Sublink{
	position:relative;
	display:inline-block;
	padding:0.9rem 3rem 0.9em 1.5rem;
	color:#0f206c;
	background:#d5e6f5;
	line-height:1.0;
	font-weight:500;
	transition:background 0.5s;
}

.Button:hover,
a.Button:hover,
a:link.Button:hover{
	color:#ffffff;
	background:#0f206c;
}

.Sublink:hover,
a.Sublink:hover,
a:link.Sublink:hover{
	background:#f0f5f9;
}

.Button:before,
a.Button:before,
a:link.Button:before,
.Sublink:before,
a.Sublink:before,
a:link.Sublink:before{
	content:'\e909';
	position:absolute;
	left:auto;
	right:1rem;
	top:50%;
	bottom:auto;
	width: auto;
	height: auto;
    font-family: 'iconFont';
    font-size: 1.1rem;
    line-height: 1;
	background:none;
	transform:translate(0,-50%);
	z-index: 0;
}

.Button:hover:before,
a.Button:hover:before,
a:link.Button:hover:before{
	width:auto;
	background:none;
	transition:0;
}



.phone_number{
	padding:0 0 0.5em 0;
	line-height: 1;
}

.phone_number img{
	margin:0 0 2px;
	width:1.2em;
}

.tate{
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode:vertical-rl;
	-ms-text-combine-horizontal: digits;
	-webkit-text-combine: 2;
	text-combine-upright: digits;
	white-space: nowrap;
}

.tcy {
  -webkit-text-combine: horizontal;
    -ms-text-combine-horizontal: all;
    text-combine-upright: all;
}

.webfont{
	font-family:'M PLUS 1p','M PLUS 1p';
	font-style: normal;
	font-weight: 400;
}

.normalfont{
	font-family: source-han-sans-japanese, "ヒラギノ角ゴ Pro W3", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体",  "メイリオ", sans-serif;
	font-weight: normal;
}

.darkBg{
	color:#ffffff;
}

.GoogeMap{
	width:40%;
	height: 30vh;
	border: 3px solid #0f206c;
	margin: 0 auto;
}

.GoogeMap iframe{
	width:100%;
	height:100%;
	/*-webkit-filter: grayscale(70%);
	-moz-filter: grayscale(70%);
	-ms-filter: grayscale(70%);
	-o-filter: grayscale(70%);
	filter: grayscale(70%);*/
	vertical-align:bottom;
}



/*------------------------
Loader
------------------------*/
#loader {
	position:fixed;
	display:table;
	width: 100%;
	height:100%;
	margin: 0 auto;
	background:#ffffff;
	color:#cccccc;
	z-index:999999;
}

#loader .innnerContent{
	display:table-cell;
	text-align: center;
	vertical-align:middle;
}

#bar {
	width: 100%;
	height: auto;
	padding: 1px;
	font-size: 1px;
	margin:1rem 0 0 ;
}
#bar span {
	display: block;
	width: 0px;
	height: 1px;
	background: #cccccc;
  	display: block !important;
}

/*------------------------
main section
------------------------*/

main{
	position:relative;
	min-height:60vh;
	margin:0 auto;
	max-width:1400px;
	padding:0 4rem;
	box-sizing:content-box;
	letter-spacing:-0.4rem;
}

main .mainSide{
	width:calc(100% - 300px);
	display:inline-block;
	padding:0 2rem 0 0;
}

section,
article{
	position:relative;
	display:block;
	letter-spacing:normal;
}

section{
	margin-bottom:3rem;

}

/*section.half_block{
	margin-bottom:1rem;
}*/

.container{
	display:table;
}

.container .case{
	display:table-cell;
	vertical-align:top;
}

.container .imz{
	width:50%;
	padding:0 2rem 0 0;
}

.container .text{

}

dl.accordion{
	border:1px solid #eeeeee;
	border-width:1px 0 0 1px;
}

dl.accordion:last-child{
	border-width:1px 0 1px 1px;
}

.accordion dt{
	position:reletive;
	cursor:pointer;
	color:#347135;
	font-size:125%;
	background:#f8f8f8;
	padding:0.25rem 0 0.5rem 3.5rem;
	border:1px solid #eeeeee;
	border-width:0 1px 0 0;
}

.accordion dt p{
	display:inline-block;
}

.accordion dt:before{
	position:absolute;
	left:0.5rem;
	content:'[＋] ';
}

.accordion dt.open:before{
	content:'[－] ';
}

.accordion dd{
	padding:1rem;
	background:#fcfcfc;
	border:1px solid #eeeeee;
	border-width:1px 1px 0 0;
}

ul.list3,
ul.list5{
	margin-bottom:2rem;
}

ul.dotlist li,
ul.list3 li,
ul.list5 li{
	list-style-type:disc;
	margin-left:1.5rem;
}

div.index4{
	border:#dddddd dotted 1px;
	padding:1rem;
}

/*------------------------
aside
------------------------*/

#MainSide{
	width:calc(100% - 300px);
	display:inline-block;
	padding:0 2rem 0 0;
	letter-spacing:normal;
}

aside{
	display:inline-block;
	width:300px;
	height:100%;
	vertical-align:top;
	letter-spacing:normal;
	text-align: center;
}

.sticky{
    position: -webkit-sticky;
    position: sticky;
	top:7.5rem;
}

aside iframe{
	width:100%;
}

.fb-page,
.fb-page > span,
.fb-page iframe {
    width: 100% !important;
}

.fb-page{
    max-width: 500px;
    margin: 0 auto;
}

/*------------------------
header
------------------------*/

header{
	position:relative;
	display:block;
	width:100%;
	height:auto;
	margin-bottom:5rem;
	overflow:hidden;
}

header#Hero{
	height:100vh;
	background:#f8f8f8;
	overflow:hidden;
	margin-bottom:3rem;
}

h1#Typography{
	position:absolute;
	top:3rem;
	left:3rem;
	width:33.3%;
	max-width:540px;
	height:auto;
}

header#Hero .SlideShow{
	width:100%;
	height:100%;
	/*position:absolute;
	left:20%;
	top:50%;

	transform: translate(0,-50%);*/
	transition:left 1s;
}

/*header#Hero.ViewMt h1{opacity:0;}
header#Hero.MaskSmallParts h1{transition: left 1s,opacity 1.5s,top 1s;}
header#Hero.Opening h1{left:50%; transform: translate(-50%,-50%);}
header#Hero.Opening .slideMask,header#Hero.Opening .SlideShow{left:100%;}
header#Hero.Opening .slideMask img{margin:0 0 0 -100%;}
header#Hero.MaskSmallParts .SlideShow ul.slick-dots{opacity:0;}*/


.SlideShow ul.slide{
}


.SlideShow ul li div{
	position:relative;
	overflow:hidden;
}

.SlideShow ul li div:before {
	content: "";
	display: block;
	padding-top: 100vh;
}

.SlideShow ul li div img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: 100%;
	max-width: none;
	transform: translate(-50%,-50%);
}

.SlideShow ul.slick-dots{
	bottom:0;
	left:calc(-25% + 5vw);
	width: auto;
	transition:opacity 1s;
}

.SlideShow ul.slick-dots li{
	margin:0;
}

.SlideShow ul.slick-dots li button:before{
	font-size:30px;
	color: #222222;
}

.SlideShow ul.slick-dots li.slick-active button:before{
	color: #347135;
	opacity:1;
}

header#Hero .OverImage{
	position:absolute;
	top:50%;
	width:100%;
	height:auto;
	transform: translate(0,-50%);
}

header#Hero .OverImage:before{
	content:'';
	position:absolute;
	left:0;
	top:99%;
	width:100%;
	height:50vh;
	background:#ffffff;
	z-index:-1;
}

header#Hero .OverImage img{
	width:100%;
}

#please_scroll{
	display:none;
	position: fixed;
	left: calc(50% - 2rem);
	bottom: 2rem;
	width: 4em;
}


/*------------------------
Sub
------------------------*/


#Sub header{
	overflow:hidden;
	margin:0 0 3rem;
	padding-top:4.5rem;
}

#Sub header:before{
	content:"";
	display: block;
	padding-top:25%;
}

#Sub header img{
	position:absolute;
	left:0;
	top:50%;
	transform:translate(0,-50%);
}

nav.Sub {
    width: 100%;
}

nav.Sub ul {
}

nav.Sub ul li {
    padding: 0 0 0.5rem;
}

nav.Sub ul li:last-child {
    padding: 0;
}

nav.Sub ul li a {
    position: relative;
    padding: 0 0 0 1rem;
}

nav.Sub ul li br{
    display:none;
}

nav.Sub ul li a:after {
    content: "";
    position: absolute;
    left: 0rem;
    top: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.6rem 0.36rem 0 0.36rem;
    border-color: #0f206c transparent transparent transparent;
    transform: translate(0,-50%);
}

/*------------------------
Navigation
------------------------*/


nav#Navigation{
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:4.5rem;
	padding:1rem 0;
	background:rgba(15,32,108,1);
	color:#ffffff;
	z-index: 10;
	transition:transform 1s;
}

#front nav#Navigation{
	position:absolute;
	left:0;
	top:auto;
	bottom:0;
	background:rgba(15,32,108,0.9);
}

#front nav#Navigation.OnMain{
	position:fixed;
	bottom:auto;
	top:0;
	background:rgba(15,32,108,1);
}

nav#Navigation a,
nav#Navigation a:link,
nav#Navigation a:visited,
nav#Mobile a,
nav#Mobile a:link,
nav#Mobile a:visited{
	color:#ffffff;
}

nav#Navigation a:link:before,nav#Navigation a:visited:before,
nav#Mobile a:link:before,nav#Mobile a:visited:before{
	background:#ffffff;
	transition:0.5s;
}

#top nav#Navigation.Opening{
	transform:translate(0,-120%);
}


/*nav#Navigation.inField{
	transform:translate(0,0);
}*/


nav#Navigation .nav_flex,
nav#Mobile .nav_flex{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
	height: 100%;
	max-width:1400px;
	margin:0 auto;
	padding: 0 4rem;
    box-sizing: content-box;
}

nav#Navigation h1,
nav#Mobile h1{
	font-size:171.42%;
	line-height:1;
	padding:0 1rem 0 0;
}

nav#Navigation h1 a,
nav#Mobile h1 a{
	position:relative;
	padding:0 0 0 2em;
}

nav#Navigation h1 a:before,
nav#Mobile h1 a:before{
	display:none;
}

nav#Navigation h1 img,
nav#Mobile h1 img{
	position:absolute;
	left:0;
	top:50%;
	height:1.5em;
	transform:translate(0,-50%);
}

nav#Navigation .menu,
nav#Mobile .menu{
	flex-grow:3;
}

nav#Navigation ul,
nav#Mobile ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

nav#Navigation ul li,
nav#Mobile ul li{
	font-size:114.285%;
	padding:0 2rem 0 0;
	white-space:nowrap;
}

nav#Navigation ul li:last-child,
nav#Mobile ul li:last-child{
	padding:0;
}


.navIcon,
.closeIcon {
	display:none;
    position: absolute;
    right: 5%;
	top:4.3%;
    width: 2rem;
    height: 2rem;
    cursor: pointer;
    z-index: 1;
    box-sizing: content-box;
	transition:transform 0.5s 0.5s;
}

#Sub .navIcon{
	display:none;
}

nav#Navigation .navIcon,
nav#Mobile .navIcon {
	top:auto;
	margin-top:-2px;
}

#top .navIcon.Opening {
	transform:translate(100%,0);
}

.closeIcon {
    position: absolute;
    z-index: 3;
}

.navIcon span,
.closeIcon span{
	position: absolute;
	display: block;
	width: 100%;
	height: 3px;
	top: 50%;
	bottom: 0;
	left: 0;
	right: 0;
	background: #ffffff;
	transition: 0.5s;
	border-radius:10rem;
}

.navIcon span:before, .navIcon span:after,
.closeIcon span:before, .closeIcon span:after {
	content: "";
	position: absolute;
	display: block;
	margin: auto;
	width: 100%;
	height: 3px;
	background: #ffffff;
	transform: translate(0,-0.75rem) rotate(0);
	border-radius:10rem;
	transition: 0.5s;
}

.navIcon span:after,
.closeIcon span:after {
	transform: translate(0,0.75rem) rotate(0);
}

.closeIcon span {
	background: transparent;
}

.closeIcon span:before {
	transform: translate(0,0) rotate(45deg);
}

.closeIcon span:after {
	transform: translate(0,0) rotate(-45deg);
}

/*------------------------
PleaseScroll
------------------------*/

#PleaseScroll {
	position:fixed;
	display:none;
	left:0;
	bottom:2em;
	padding: 0 2em;
	z-index:10;
}

/*a#PleaseScroll.hide {
	display:none;
	transition:1s;
}*/

#PleaseScroll span{
	position:relative;
	display:block;
	width:1px;
	height:2.5em;
	background:#eeeeee;
	opacity:0;
	-webkit-animation: pScr 2s ease infinite;
	animation: pScr 2s ease infinite;
}

#PleaseScroll span:before{
	content:'';
	position:absolute;
	display:block;
	left:1px;
	bottom:0;
	width:0.5em;
	height:1px;
	background:#eeeeee;
	transform: rotate(-45deg);
	transform-origin:left bottom;
}

@keyframes pScr {
  0% {
   margin-bottom: 2em;
    opacity: 0;
  }
  33% {
    opacity: 0.7;
  }
  66% {
	margin-bottom: 0;
    opacity: 0;
  }
  100% {
	margin-bottom: 0;
    opacity: 0;
  }
}

@-webkit-keyframes pScr {
  0% {
   margin-bottom: 2em;
    opacity: 0;
  }
  33% {
    opacity: 0.7;
  }
  66% {
	margin-bottom: 0;
    opacity: 0;
  }
  99.9%,to {
	margin-bottom: 0;
    opacity: 0;
  }
}

/*------------------------
List
------------------------*/

/*flexList*/

ul.flexList{
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 -0.75rem;
}

ul.flexList li{
	position:relative;
	flex:0 0 33.3333%;
	padding:0 0.75rem;
}

ul.flexList li:nth-child(n + 4){
	padding:1.5rem 0.75rem 0;
}

ul.flexList li h6{
	margin-bottom:0.5rem;
}

ul.CalList{
	margin:0 -1rem;
}

ul.CalList li{
	padding:0 1rem;
}

ul.CalList li div{
	position: relative;
	width: 100%;
	overflow:hidden;
	border:3px solid #0f206c;
	border-width:3px 3px 0;
	margin:0 0 3rem;
}


ul.CalList li div:before {
    content:"";
    display: block;
    padding-top: 50%;
}

aside ul.CalList li div:before {
    padding-top: 56.25%;
}

ul.CalList li div img{
    position: absolute;
    top: 50%;
    left: 50%;
	height:auto;
	width:100%;
	max-width:none;
	transform:translate(-50%,-50%) scale(1.05,1.05);
}

ul.CalList li h6{
    position: absolute;
    bottom: 0;
    left: 1rem;
	width:calc(100% - 2rem);
}

ul.CalList li h6 a,
ul.CalList li h6 a:link,
ul.CalList li h6 a:visited{
	display:block;
	background:#ffffff;
	border:3px solid #0f206c;
	padding:0.5rem 1rem;
	font-size:125%;
	box-sizing:border-box;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color:#0f206c;
	transition:background 0.5s;
}

ul.CalList li h6 a:hover{
	background:#0f206c;
    color:#ffffff;
}

ul.CalList li span.categorie{
	position:absolute;
	left:0;
	top:1rem;
	width:auto;
	height:auto;
	background:#e41409;
	border:none;
	padding:0.25rem 0.5rem;
	font-size:125%;
	color:#ffffff;
}

ul.CalList li span.categorie.linkout{
	background:#3366ff;
}

ul.newsList{

}

ul.newsList li{
	font-size:128.57%;
	margin:0 0 0.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

ul.newsList li:last-child{
	margin:0;
}


ul.newsList li span{
	display:inline-block;
	font-size:1rem;
	color:#ffffff;
	background:#666666;
	padding:0 0.5rem;
	margin:0 0.5rem 0 0;
	min-width:6rem;
	vertical-align:middle;
}

section.Carousel .slick-prev,
section.Carousel .slick-next {
	top:50%;
	background:rgba(15,32,108,0.7);
	width:3.41rem;
	height:3.41rem;
	border-radius:10rem;
	text-align:center;
	transform:translate(0,-50%);
}

section.Carousel .slick-prev:before,
section.Carousel .slick-next:before {
    top: 50%;
    left: 50%;
    position: absolute;
    font-size: 1.41rem;
	line-height:1;
    color: #fff;
	transform:translate(-66%,-50%);
	opacity:1;
}

section.Carousel .slick-next:before {
	transform:translate(-33%,-50%);
}

section.Carousel .slick-prev:hover,
section.Carousel .slick-prev:focus,
section.Carousel .slick-next:hover,
section.Carousel .slick-next:focus {
	background:rgba(15,32,108,1);
}

/*------------------------
dl dt dd
------------------------*/

dl.phoneNumber{
	display:flex;
	flex-wrap: wrap;
	justify-content: left;
	align-items: left;
	padding:0 0 0 1.5rem;
	line-height:1.6;
}

dl.phoneNumber dt{
	flex:0 0 60%;
	padding:0 1rem 1rem 0;
	border:1px dotted #eeeeee;
	border-width:0 0 1px;
	margin:0 0 1rem;
}

dl.phoneNumber dd{
	flex:0 0 40%;
	padding:0 0 1rem 0;
	border:1px dotted #eeeeee;
	border-width:0 0 1px;
	margin:0 0 1rem;
	text-align:right;
}

dl.phoneNumber dt:last-child,
dl.phoneNumber dt:nth-last-child(2),
dl.phoneNumber dd:last-child{
	padding:0;
	border:none;
	border-width:0;
	margin:0;
}

/*------------------------
aspect
------------------------*/

div.aspect1_1,
div.aspect4_3,
div.aspect3_2,
div.aspect16_9,
div.aspect61,
div.aspectSP {
	position: relative;
	width: 100%;
	overflow:hidden;
}

div.aspect1_1:before,
div.aspect4_3:before,
div.aspect3_2:before,
div.aspect16_9:before,
div.aspect61:before,
div.aspectSP:before {
    content:"";
    display: block;
    padding-top: 100%;
}

div.aspect4_3:before {padding-top: 75%;}
div.aspect3_2:before {padding-top: 66.7%;}
div.aspect16_9:before {padding-top: 56.25%;}
div.aspect61:before {padding-top: 61.6%;}
div.aspectSP:before {padding-top: 360px;}

div.aspect1_1 img,
div.aspect4_3 img,
div.aspect3_2 img,
div.aspect16_9 img,
div.aspect61 img,
div.aspectSP img{
    position: absolute;
    top: 50%;
    left: 50%;
	height:100%;
	width:auto;
	max-width:none;
	transform:translate(-50%,-50%) scale(1.05,1.05);
}

div.aspect3_2 img,
div.aspect16_9 img,
div.aspect61 img {
	height:auto;
	width:100%;
}



/*------------------------------
block_content
------------------------------*/

.wide_block{
	display:block;
	width:100%;
	padding:0 0.8333em;
}

.wide_block .inquiry input{
	display: block;
	margin: 5px auto;
	width: 100%;
	box-sizing: border-box;
	padding: 5px 10px;
}

.wide_block .inquiry textarea{
	display: block;
	margin: 5px auto;
	width: 100%;
	box-sizing: border-box;
	padding: 5px 10px;
}

.inlineParent{
	letter-spacing:-0.4rem;
	margin:0 -1rem;
}

.inlineParent .half_block{
	display:inline-block;
	width:50%;
	padding:0 1rem 2rem;
	vertical-align: top;
	letter-spacing:normal;
}

.half_block ul{
	display:block;
	padding:0.8333em 0 0 1.6667em;
}

.half_block ul li{
	line-height:1.5;
	padding:0 0 0.5em;
}

.half_block ul li:last-child{
	padding:0;
}

.grey_block{
	background:#f5f5f5;
	padding:2em;
	box-sizing:border-box;
}

.seven_block{
	display: inline-block;
	width: 70%;
	vertical-align: top;
	padding: 0 0.8333em;
}

.three_block{
	display: inline-block;
	width: 30%;
	vertical-align: top;
	padding: 0 0.8333em;
}

.full_width{
	width:100%;
}

.full_width img{
	width:100%;
}

hr.Mg,
.articleContent hr.Mg{
	margin: 1.6667em 0;
}

.articleContent hr{
	/*margin: 0.3333em 0;*/
}

.articleContent hr.article_under{
	height: 0.8333em;
}

.articleContent .Attention{
	font-weight:bold;
	font-size:120%;
}

.articleContent .inlineblock{
	display:inline-block;
	padding: 0 1em 0 0;
}

/*------------------------
table
------------------------*/

section table{
	width:100%;
	border:1px solid #eeeeee;
	border-width:1px 0 0 1px;
	margin:0 auto;
	padding:0;
}

section table tbody,
section table tr{
	width:100%;
	border:none;
	margin:0;
	padding:0;
}

section table td,
section table th{
	width:auto;
	border:1px solid #eeeeee;
	border-width: 0 1px 1px 0;
	margin:0;
	padding:0.5rem 1rem;
	text-align:left;
}

section table tr td:first-child,
section table th{
	text-align:center;
}

section table.respo td,
section table.respo th{
	min-width:8rem;
}

section#Course table td:nth-child(2){
	text-align:left;
}

section#Lift table td:nth-child(5){
	text-align:left;
}

.bgAccent{
	background:#eeeeee;
}


/*------------------------
footer
------------------------*/

footer{
	text-align: center;
	background:#0f206c;
}

footer a,
footer a:link,
footer a:visited{
	color:#ffffff;
}

footer a:link:before,footer a:visited:before{
	background:#ffffff;
	transition:0.5s;
}

footer h1{
	font-size:171.42%;
	color:#ffffff;
	padding:0 0 2.5rem;
}

footer h1 em{
	line-height:1.33;
}

footer .campany_logo{
	padding:0;
	width:25%;
	max-width:210px;
	margin:0 auto;
	font-size:1rem;
}

footer div.tbl div.logo img{
	width:100%;
}

footer nav ul {
	display:flex;
	justify-content: center;
	flex-wrap: wrap;
	margin:0 -0.5rem;
}

footer nav ul li {
	padding:0 0.5rem;
	font-size:114.285%;
}

footer nav ul li a {
	position:relative;
	padding:0 0 0 1rem;
}

footer ul li a:after {
	content:"";
	position:absolute;
	left:0rem;
	top:50%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.3rem 0 0.3rem 0.6rem;
	border-color: transparent transparent transparent #e41409;
	transform:translate(0,-50%);
}

footer ul li a{
	padding:0 0.5em;
}

footer address {
	color:#ffffff;
}

/*------------------------
article
------------------------*/

article{
	font-size:16px;
	line-height:1.8;
}

/*------------------------
dl
------------------------*/

dl.storeInfo{
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: left;
}

dl.storeInfo dt{
	flex:0 0 30%;
	text-align:right;
	padding-right:1rem;
	border-right:1px solid #cccccc;
	box-sizing:border-box;
	margin:0 0 0.5rem;
}

dl.storeInfo dd{
	flex:0 0 70%;
	padding-left:1rem;
	box-sizing:border-box;
}

dl.menu{
	position:relative;
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: left;
	padding:2rem;
	border:1px solid #979797;
}

dl.menu dt{
	flex:0 0 70%;
	padding-right:1rem;
	box-sizing:border-box;
	margin:0 0 0.5rem;
}

dl.menu dd{
	flex:0 0 30%;
	text-align:right;
	padding-left:1rem;
	box-sizing:border-box;
}

dl.menu dt:last-of-type{
	margin:0;
}



dl.Bullet{
	display:flex;
	flex-wrap: wrap;
	font-size:112.5%
	font-weight:700;
	letter-spacing:-0.4em;
	border:1px solid #eeeeee;
	border-width:1px 0 0 1px;
}

dl.Bullet dt{
	display:inline-block;
	flex:25%;
	padding:1rem;
	box-sizing:border-box;
	vertical-align:top;
	letter-spacing:normal;
	border:1px solid #eeeeee;
	border-width: 0 1px 1px 0;
}

dl.Bullet dd{
	display:inline-block;
	flex:75%;
	padding:1rem;
	box-sizing:border-box;
	vertical-align:top;
	letter-spacing:normal;
	border:1px solid #eeeeee;
	border-width: 0 1px 1px 0;
}

dl.Bullet dd .ButtonArea img.app_badge{
	max-height:3.5rem;
	padding:0;
}

dl.Bullet dt:nth-last-child(2),
dl.Bullet dt:last-child,
dl.Bullet dd:last-child{
	margin:0;
}

.iconSq{}

dl.iconSq{
	margin-bottom:1rem;
}

dl.iconSq dt{
	position:relative;
	font-size:128.571%;
	padding-left:1.25rem;
}

dl.iconSq dt::before{
	content:'';
	position:absolute;
	left:0;
	top:50%;
	width:0.9rem;
	height:0.9rem;
	background:#adc2ae;
	transform:translate(0,-50%);
}

dl.iconSq dd{
	padding-left:1.25rem;
}

/*------------------------
select
------------------------*/

#select {
	border: 1px #dddddd solid;
	padding: 1em 1.5em;
}

#select p{
	font-size:120%;
	padding: 0 0 0.5em;
}

#select .selector{
	padding:0.5em 0 0;
	/*margin:0 0 0 -1em;*/
}

#select .selector label{
	display: inline-block;
	padding:0 0 0.5em;
	width:16.666666%;
	/*width:-webkit-calc(100% / 6);*/
	/*width:calc(100% / 6);*/
	vertical-align:top;
}

#select .selector label.wide{
	width:33.333333%;
	/*width:-webkit-calc(100% / 3);*/
	/*width:calc(100% / 3);*/
	vertical-align:top;
}

#shop_list [class*="hidden-"] {
	display: none;
}

a.Banner img{
	width:100%;
}

/*------------------------
shop_list
------------------------*/

.list_outer{
	/*text-align:center;*/
}

ul.shop_list{
	display:block;
	margin:0 -2em;
}

ul.shop_list li{
	position:relative;
	display:inline-block;
	width:33.33333%;
	/*width:-webkit-calc(100% / 3);
	width:calc(100% / 3);*/
	box-sizing:border-box;
	padding:1.5em 2em;
	text-align: center;
	vertical-align:top;
}

ul.shop_list li div.thumbnail {
	display: block;
	overflow: hidden;
	margin: 0 0 0.5em;
	padding: 2px 2px 5px;
}

ul.shop_list li div.book {
	display: block;
	overflow: hidden;
	margin:0 0 0.83333em;
}

ul.shop_list img{
	width:auto;
	max-width: 100%;
	max-height: 320px;
	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
	margin:0 auto;
}

ul.shop_list li.loadImage img{
	display:none;
}

/*------------------------
sns
------------------------*/


#sns_icons{
	position: absolute;
	right: 0;
	top: 0;
	width:6em;
}

#sns_icons ul{
	margin:0 -0.5em;
}

#sns_icons ul li{
	position:relative;
	display:inline-block;
	width:50%;
	box-sizing:border-box;
	padding:0 0.5em;
	vertical-align: middle;
}

#sns_icons ul li img{
	width:100%;
}

#sns_icons ul li span{
	font-size:0;
	line-height:0;
}

/*------------------------
slider-container
------------------------*/

.slider-container{
	position: relative;
	/*height:100%;*/
	z-index:1;
}

.slider-container ul{
	margin:0 -1rem;
}

.slider-container ul li{
	padding:1rem;
}

.slider-container ul li div{
	position: relative;
	width: 100%;
	padding:0;
	overflow:hidden;
}

.slider-container ul li div:before {
    content:"";
    display: block;
    padding-top: 56.25%; /* 高さを幅の75%に固定 */
}

.responseYposTune{transform: translate(0,-5vh);}

.slider-container ul li div img{
	position: absolute;
	top: 0;
	left: 50%;
	width:auto;
	height:100%;
	transform: translate(-50%,0);
}


.slider-container ul li p{
	padding:0;
}

.slider{
  opacity: 0;
  transition: opacity .3s linear;
}
.slider.slick-initialized{
  opacity: 1;
}

/*------------------------
ContentList
------------------------*/

ul.ContentList{
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 -1rem;
}

ul.ContentList li{
	width: 25%;
	padding:0 1rem 2rem;
}

/*------------------------
back2top
------------------------*/

#back2top{
	position:fixed;
	display:none;
	right:0;
	bottom:2em;
	padding: 0 2em;
	z-index: 1;
	cursor:pointer;
}

#back2top span{
	position:relative;
	display:block;
	width:1px;
	height:2.5em;
	background:#aaaaaa;
}

#back2top span:before{
	content:'';
	position:absolute;
	display:block;
	left:1px;
	top:0;
	width:0.5em;
	height:1px;
	background:#aaaaaa;
	transform: rotate(45deg);
	transform-origin:left top;
}

/*#back2top{
	background:#000000 no-repeat center center;
	opacity:0.4;
	border-radius:20px;
}

#back2top:hover{
	opacity:0.7;
}

#back2top img{
	width:100%;
	font-size: 0;
}*/

/*------------------------
backReturn
------------------------*/

#backReturn{
	/*display:none;*/
	position:fixed;
	bottom:1em;
	left:1em;
	width:30px;
	z-index: 1;
}

#backReturn a{
	display:block;
	background:#000000 no-repeat center center;
	opacity:0.4;
	border-radius:20px;
	font-size: 0;
}

#backReturn a:hover{
	opacity:0.7;
}

#backReturn a img{
	width:100%;
}

#backReturn2 {
	display:none;
	line-height: 1.0;
	position: fixed;
	bottom: 1.6em;
	left: 2em;
	z-index: 1;
	height: 30px;
	overflow: hidden;
	border: 1px solid #222222;
	border-radius: 9999em;
}

#backReturn2 a {
	display:block;
	height:100%;
	background-color:rgba(255,255,255,0.8);
}

#backReturn2 img {
	height:100%;
}

#backReturn2 a:hover{
	background-color:rgba(245,245,245,0.8);
}

/*------------------------
click2prev
------------------------*/

#click2prev{
	display:none;
	position:fixed;
	bottom:28px;
	right:2%;
	width:30px;
}

#click2prev a{
	display:block;
	background:#000000 no-repeat center center;
	opacity:0.4;
	border-radius:20px;
	font-size: 0;
}

#click2prev a:hover{
	opacity:0.7;
}

#click2prev a img{
	width:100%;
}

/*------------------------
form
------------------------*/

.wpcf7{
	position: relative;
	display: block;
}

.wpcf7{
	position: relative;
	display: block;
}

.wpcf7 p{
	font-size:117%;
	margin-bottom:1rem;
}

.wpcf7 input,.wpcf7 select,.wpcf7 textarea {
    margin: 0;
    width: 100%;
    box-sizing: border-box;
	border: 3px solid #0f206c;
}

.wpcf7 input[type="submit"] {
    position: relative;
    display: block;
    width: 25%;
    min-width: 20rem;
    max-width: 640px;
    border: 3px solid #0f206c;
    margin: 0 auto;
    padding: 0.9rem 2rem;
    color: #0f206c;
    background: #ffffff;
	font-family:'M PLUS 1p','M PLUS 1p',"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
    font-size: 150%;
    text-align: center;
    line-height: 1.0;
    font-weight: 500;
    transition: background 0.5s;
	cursor:pointer;
	margin-top:1rem;
}

/*------------------------
response
------------------------*/

@media screen and (min-width: 1920px){
	html { font-size:18px; }
}

@media screen and (min-width: 1600px){
	html { font-size:14px; }
}


@media only screen and (max-width: 1280px){
	html { font-size:12px; }
}

@media only screen and (max-width: 1100px){
	nav#Navigation h6{display:none;}
}

@media only screen and (max-width: 1024px){
	html { font-size:14px; }
	#MainSide{ 	width:calc(100% - 240px);}
	aside{ width:240px; }

	.onlyPC{display:none;}
	.onlySP{display:block;}

	nav#Navigation{
		position:fixed;
		bottom:auto;
		top:0;
		width:100%;
		height:4.5rem;
		padding:1rem 0;
		background:rgba(15,32,108,1);
		transform: translate(0,0);
		transition:transform 1s;
	}

	#front nav#Navigation,
	#front nav#Navigation.OnMain{
		position:fixed;
		left:0;
		top:0;
		bottom:auto;
		background:rgba(15,32,108,1);
		transform: translate(0,-120%);
	}

	#front nav#Navigation.OnMain{
		transform: translate(0,0);
	}

	#front nav#Navigation.Open,
	nav#Navigation.Open {
	    transform: translate(0,-120%) !important;
	}

	nav#Navigation .nav_flex{
		justify-content: center;
	}

	nav#Navigation.OnMain{
		transform: translate(0,0);
	}

	nav#Navigation .menu {display:none;}

	nav#Mobile {
	    position: fixed;
	    left: 100%;
	    top: 0;
		width:auto;
	    height: 100vh;
		background:rgba(15,32,108,1);
	    color: #ffffff;
		font-size:114.28%;
		transition:transform 1s;
		z-index: 11;
	}

	nav#Mobile.Open {
	    transform: translate(-100%,0);
	}

	nav#Mobile a,
	nav#Mobile a:visited,
	nav#Mobile a:visited{color:#ffffff;}
	nav#Mobile h1 {padding:0; font-size:100%;}



	nav#Mobile .nav_flex{
		justify-content: center;
	    align-items: center;
		height: 100%;
		max-width:1400px;
		margin:0 auto;
		padding: 0 4rem;
	    box-sizing: content-box;
	}

	nav#Mobile .nav_flex {position:relative; padding: 0 3.625rem;}
	nav#Mobile ul {display:block; width:100%; padding:2rem 0 0;}
	nav#Mobile ul li img{ left: auto;}
	nav#Mobile ul li,nav#Navigation ul li:last-child{ padding:0 0 1.5rem; text-align:center;}
	nav#Mobile ul li h1{font-size:112.5%; margin:0 0 1rem;}
	#Navigation .navIcon,.closeIcon {display:block;}
}

@media (min-aspect-ratio: 16/9) {
	.SlideShow ul li div img {
		height: auto;
		max-width: none;
	}

}

@media (max-aspect-ratio: 3/2) {

}

@media (max-aspect-ratio: 4/3) {
	header#Hero{height:auto;}
	.SlideShow ul li div:before {padding-top: 56.25%;}
}

@media (max-aspect-ratio: 5/4) {

	h1#Typography{width:50%;}
	
	/*header#Hero.Opening h1{top:50%;}
	header#Hero.Opening .slideMask,header#Hero.Opening .SlideShow{left:0; opacity:0;}
	header#Hero.MaskSmallParts .SlideShow ul.slick-dots{opacity:0;}*/

}

@media (max-aspect-ratio: 1/1) {
	h1#Typography{width:45%; left:5vw; top:5vw;}
}

@media (max-aspect-ratio: 3/4) {
	.viewPC{display:none;}
	.viewSP{display:block;}
	/*.SlideShow ul li div:before {padding-top: 125%;}*/
}

@media (max-aspect-ratio: 2/3) {
	h1#Typography{width:42%; max-width:640px;}
}

@media (max-aspect-ratio: 9/16) {

}

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

	html { font-size:13px; }

	/*h1{font-size:2.0rem;}
	h2{font-size:1.5rem;}
	h3{font-size:1.33rem;}
	h4{font-size:1.2rem;}
	h5{font-size:1.1rem;}
	h6{font-size:1.0rem;}*/

	.pad1L_respo0,
	.pad2L_respo0,
	.pad3L_respo0,
	.pad4L_respo0,
	.pad5L_respo0,
	.pad6L_respo0{padding-left:0 !important;}

	.pad1L_respo_block{display:block; padding-left:0 !important;}

	main {padding: 0 2rem;}

	#MainSide{ 	width:100%; padding:0 0 5rem 0;}
	aside{ width:100%; }

	ul.ContentList li {width: 50%;}

	ul.flexList li,ul.flexList li:nth-child(n + 4){flex: 0 0 100%; padding:0 0.75rem 3rem;}
	ul.flexList li:last-child{flex: 0 0 100%; padding:0 0.75rem;}
	ul.flexList li h6{font-size:125%;}

	.inlineParent .half_block{
		width:100%;
	}

	article{font-size:14px;}

	section table.respo,
	section table.respo2{
		display: block;
		border: none;
	}

	section table.respo tbody,
	section table.respo2 tbody {
		display: block;
	}
	
	section table.respo tr,
	section table.respo2 tr  {
		display: block;
		margin:0 0 0.5rem;
	}
	
	section table.respo td {
		display: block;
		text-align: left;
		border: none;
		padding: 0.25rem 0 0.25rem 1.25rem;
	}
	
	section table.respo2 tr td {
		display: inline-block;
		text-align: left;
		border: none;
		padding: 0.25rem 0 0.25rem 1.25rem;
	}
	
	section table.respo2 tr td:nth-child(1) {
		float: left;
		padding-right:1rem;
	}
	
	section table.respo2 tr td.bgAccent:nth-child(1) {
		float: none;
		padding-right:0;
	}
	
	section table.respo2 tr td:nth-child(2) {
		display: block;
	}
	
	section table.respo th,
	section table.respo2 th {
		display: none;
	}
	
	section table.respo td:empty, section table.respo th:empty,
	section table.respo2 td:empty, section table.respo2 th:empty {
	    display: none;
		/*background:#cccccc;*/
	}
	
	section table.respo td:first-child::before,
	section table.respo2 td:first-child::before {
		content: '-';
		position: absolute;
		left: 0;
	}
	
	section table.respo td.bgAccent:first-child::before,
	section table.respo2 td.bgAccent:first-child::before {
		content: '';
	}
	
	section table.respo td.bgAccent,
	section table.respo2 td.bgAccent {
		display: block;
		text-align: left;
		border: none;
		padding: 0.25rem 0 0.25rem 1.25rem;
	}
	
	td.Adult,
	td.Junior,
	td.Senior{
		font-weight:500;
	}
	
	td.Adult:before,
	td.Junior:before,
	td.Senior:before{
		content:'大人';
		display:inline-block;
		width:3em;
		box-sizing:content-box;
		font-size:70%;
		background:#eeeeee;
		border-radius:1rem;
		padding:0 1em;
		margin:0 0.5rem 0 0;
		font-weight:500;
		text-align:center;
	}
	
	td.Junior:before{content:'小人';}
	td.Senior:before{content:'シニア';}
	
	td.CourseLevel:before,
	td.CourseLength:before,
	td.CourseWidth:before,
	td.CourseAngle:before{
		content:'難易度';
		display:inline-block;
		box-sizing:content-box;
		font-size:70%;
		background:#eeeeee;
		border-radius:1rem;
		padding:0 1em;
		margin:0 0.5rem 0 0;
		font-weight:500;
		text-align:center;
	}
	
	td.CourseLevel:before{content:'難易度';}
	td.CourseLength:before{content:'全長';}
	td.CourseWidth:before{content:'幅';}
	td.CourseAngle:before{content:'斜度（最大）';}
	
	.half_block{width:100%; padding-bottom:0;}
	
	
	footer h2{
		width:50%;
	}

	footer nav ul{
		/*justify-content: start;*/
		text-align:left;
	}

	footer nav ul li {
		/*min-width: 33.3%;*/
	}


}

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

}

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

}

@media only screen and (max-width: 400px){
	html { font-size:12px; }
}
