html { height:100%; width:100%; overflow-x:hidden; }
body { height:100%; width:100%; min-width:960px; color:#333; background:#fff; position:relative; font-size:1em; line-height:1.8; letter-spacing:0.05em; -webkit-overflow-scrolling:touch; }


a:link { color:#333; outline-style:none; }
a:visited { color:#333; text-decoration:underline; }
a:hover { color:#d33; text-decoration:underline; }
body.camp a:hover { color:#0a3; }
body.home a:hover { color:#f90; }


.white { color:#fff; }
.red { color:#d33; }
.green { color:#0a3; }
.orange { color:#f90; }
.orange2 { color:#f60 !important; }
.blue { color:#06c; }

.f_l { font-size:1.4em; }
.f_s { font-size:0.8em; }
.f_ss { font-size:0.5em; }

.tr { text-align:right; }
.tc { text-align:center; }
.tl { text-align:left; }

.pc_no { display:none; }
.sp_no { display:block; }
span.sp_no { display:inline; }
br.sp_no { display:inline; }


/*要素が見えたら表示*/
.hide { transition:.1s .3s; }


/*-- ARTICLE/ --*/
.article {
  width:100%;
  max-width:1280px;
  margin:0 auto;
  padding:150px 0 0 0;
  padding:0 0 0 0;
  box-sizing:border-box;
  position:relative;
  z-index:1;
}
body#top .article {  max-width:1500px; }
.full { margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.full_bg { padding-left:calc(50vw - 46%); padding-right:calc(50vw - 46%); }
.contents { position:relative; }
.mceContentBody { /*font-size:1.125em;*/ }
body.top .contents { background:rgba(255,255,255,1); padding-top:5%; padding-bottom:5%; }
.section { background:rgba(255,255,255,1); }

p { position:relative; z-index:1; }

video { position:fixed; right:0; bottom:0; min-width:100%; min-height:100%; width:auto; height:auto; z-index:-1; }


body.top::before, body.temp::before { background:url(../img/main01.jpg) 62% 80px /cover; content:""; display:block; position:fixed; top:0; left:0; width:100%; height:100%; z-index:-1;}
body.top.girl::before { background:url(../img/main02.jpg) 62% 80px /cover; content:""; display:block; position:fixed; top:0; left:0; width:100%; height:100%; z-index:-1;}
body.top a:hover img { opacity:1; }
body.top img { object-fit:cover; font-family:'object-fit:cover;'; vertical-align:top; }

body.camp::before { background:url(../img/main_camp01.jpg) 75% 80px /cover; content:""; display:block; position:fixed; top:0; left:0; width:100%; height:100%; z-index:-1;}
body.home::before { background:url(../img/main_home01.jpg) 85% 80px /cover; content:""; display:block; position:fixed; top:0; left:0; width:100%; height:100%; z-index:-1;}


/*-- HEADER/ --*/
.header { position:fixed; top:0; left:0; width:100vw; background:#fff; box-shadow:0 2px 10px rgba(0,0,0,0.15); z-index:100000; }

.header .logo { display:inline-block; vertical-align:top; padding:20px; margin:0; }
.header .logo a { display:flex; font-size:20px; font-weight:bold; text-decoration:none; }
.header .logo a img { width:96px; height:60px; }
.header .logo a span { display:inline-block; vertical-align:top; line-height:26px; padding:4px 0 4px 1em;  }


/*-- HEADER_MENU/ --*/
.hm { display:inline-block; vertical-align:top; width:calc(100vw - 20em); padding:0 180px 0 0; margin:0 auto; list-style:none; letter-spacing:-.4em; text-align:center; position:relative; }
.hm li { display:inline-block; vertical-align:top; padding:0; margin:0; position:relative; letter-spacing:normal; }
.hm li a { display:block; line-height:20px; margin:0; padding:60px 8px 20px 8px; min-width:6vw; text-decoration:none; position:relative; font-size:0.8em; text-align:center; letter-spacing:0; /*transition:0.5s;*/ }
.hm li a:hover { color:#d33; }

.hm li.camp a { background:url(../img/i_camp01.svg) center 10px /50px no-repeat; }
.hm li.home a { background:url(../img/i_home01.svg) center 10px /50px no-repeat; }
.hm li.car a { background:url(../img/i_car01.svg) center 10px /50px no-repeat; }
.hm li.bike a { background:url(../img/i_bike01.svg) center 10px /50px no-repeat; }
.hm li.truck a { background:url(../img/i_truck01.svg) center 10px /50px no-repeat; }
.hm li.loader a { background:url(../img/i_loader01.svg) center 10px /50px no-repeat; }
.hm li.taxi a { background:url(../img/i_taxi01.svg) center 10px /50px no-repeat; }

.hm li.camp a:hover, .hm li.camp a.active { background:url(../img/i_camp03.svg) center 10px /50px no-repeat; color:#0a3 !important; }
.hm li.home a:hover, .hm li.home a.active { background:url(../img/i_home05.svg) center 10px /50px no-repeat; color:#fa3 !important; }
.hm li.car a:hover, .hm li.car a.active { background:url(../img/i_car02.svg) center 10px /50px no-repeat; }
.hm li.bike a:hover, .hm li.bike a.active { background:url(../img/i_bike02.svg) center 10px /50px no-repeat; }
.hm li.truck a:hover, .hm li.truck a.active { background:url(../img/i_truck02.svg) center 10px /50px no-repeat; }
.hm li.loader a:hover, .hm li.loader a.active { background:url(../img/i_loader02.svg) center 10px /50px no-repeat; }
.hm li.taxi a:hover, .hm li.taxi a.active { background:url(../img/i_taxi02.svg) center 10px /50px no-repeat; }
.hm li a:hover, .hm li a.active { color:#d33; }

body.camp .hm li.camp a:hover, body.camp .hm li.camp a.active { background:url(../img/i_camp03.svg) center 10px /50px no-repeat; }
body.camp .hm li.home a:hover, body.camp .hm li.home a.active { background:url(../img/i_home05.svg) center 10px /50px no-repeat; }
body.camp .hm li.car a:hover, body.camp .hm li.car a.active { background:url(../img/i_car03.svg) center 10px /50px no-repeat; }
body.camp .hm li.bike a:hover, body.camp .hm li.bike a.active { background:url(../img/i_bike03.svg) center 10px /50px no-repeat; }
body.camp .hm li.truck a:hover, body.camp .hm li.truck a.active { background:url(../img/i_truck03.svg) center 10px /50px no-repeat; }
body.camp .hm li.loader a:hover, body.camp .hm li.loader a.active { background:url(../img/i_loader03.svg) center 10px /50px no-repeat; }
body.camp .hm li.taxi a:hover, body.camp .hm li.taxi a.active { background:url(../img/i_taxi03.svg) center 10px /50px no-repeat; }
body.camp .hm li a:hover, body.camp .hm li a.active { color:#0a3; }

body.home .hm li.camp a:hover, body.home .hm li.camp a.active { background:url(../img/i_camp03.svg) center 10px /50px no-repeat; color:#0a3 !important; }
body.home .hm li.home a:hover, body.home .hm li.home a.active { background:url(../img/i_home05.svg) center 10px /50px no-repeat; }
body.home .hm li.car a:hover, body.home .hm li.car a.active { background:url(../img/i_car05.svg) center 10px /50px no-repeat; }
body.home .hm li.bike a:hover, body.home .hm li.bike a.active { background:url(../img/i_bike05.svg) center 10px /50px no-repeat; }
body.home .hm li.truck a:hover, body.home .hm li.truck a.active { background:url(../img/i_truck05.svg) center 10px /50px no-repeat; }
body.home .hm li.loader a:hover, body.home .hm li.loader a.active { background:url(../img/i_loader05.svg) center 10px /50px no-repeat; }
body.home .hm li.taxi a:hover, body.home .hm li.taxi a.active { background:url(../img/i_taxi05.svg) center 10px /50px no-repeat; }
body.home .hm li a:hover, body.home .hm li a.active { color:#fa3; }


body.top .hm li.camp, body.top .hm li.home, body.temp .hm li.camp, body.temp .hm li.home { display:none; }
body.top .hm li.camp.top, body.top .hm li.home.top, body.temp .hm li.camp.top, body.temp .hm li.home.top { display:inline-block; }

body.camp .hm li.home { display:none; }
body.camp .hm li.home.top { display:inline-block; margin-left:2em; }
body.camp .hm li.home.top::before { position:absolute; top:50%; left:-1em; content:""; height:50%; width:1px; border-left:1px solid #ddd; transform:translate(0,-50%) }
body.camp .hm li.camp { display:inline-block; }
body.camp .hm li.camp.top,
body.camp .hm li.camp.car { display:inline-block; }

body.home .hm li.camp { display:none; }
body.home .hm li.camp.top { display:inline-block; }
body.home .hm li.home { display:inline-block; }
body.home .hm li.home.top { margin-left:2em; }
body.home .hm li.home.top::before { position:absolute; top:50%; left:-1em; content:""; height:50%; width:1px; border-left:1px solid #ddd; transform:translate(0,-50%) }

.hm li.qa { width:auto; position:absolute; right:6em; }
.hm li.qa a { padding:15px 15px 15px 30px; background:url(../img/i_qa01.svg) left center /25px no-repeat; text-align:left; min-width:inherit; }
.hm li.contact { width:auto; position:absolute; right:-2em; }
.hm li.contact a { padding:15px 15px 15px 30px; background:url(../img/i_mail01.svg) left center /25px no-repeat; text-align:left; }
.hm li.tel_box { display:block; width:auto; position:absolute; right:0; }
.hm li.tel_box div { transform:skew(-45deg); margin:-50px -5.5em 0 0; background:#d33; }
.hm li.tel_box a { padding:15px 70px 15px 35px ; margin:0; font-weight:bold; transform:skew(45deg); color:#fff !important; font-size:1.6em; }
.hm li.tel_box a span { display:block; /*transform:skew(45deg);*/ }
.hm li.tel_box a::before { content:""; position:relative; display:inline-block; width:20px; height:20px; margin-right:10px; background:url(../img/i_tel01.svg) center center /cover no-repeat; box-sizing:border-box; }

.hm li.qa a:hover, .hm li.qa a.active { background:url(../img/i_qa02.svg) left center /25px no-repeat; color:#d33 !important; }
.hm li.contact a:hover, .hm li.contact a.active { background:url(../img/i_mail02.svg) left center /25px no-repeat; color:#d33 !important; }



/*-- SUB_MENU/ --*/
.sm { width:100%; background:rgba(246,244,240,1); padding:10px 0; margin:0; text-align:center; height:auto; letter-spacing:-.4em; }
.sm li { display:inline-block; vertical-align:top; padding:5px 0; margin-left:-1px; letter-spacing:normal; }
.sm li a { display:block; padding:0 15px; margin:0; border-left:1px solid #ccc; border-right:1px solid #ccc; text-decoration:none; font-size:1.125em; line-height:20px; white-space:nowrap; }
.sm li a.active { color:#d33; }
.sm li:last-child  a{ }

body.camp .hm li.tel_box div { background:#0a3; }
body.home .hm li.tel_box div { background:#f90; }


/*-- MAIN/ --*/
.main { position:relative; width:100vw; min-height:calc(100vh - 150px); z-index:0; }
.main .t_copy { position:absolute; width:90vw; top:65%; left:5vw; color:#f90; transform:translate(0, -50%); transition:0.5s; z-index:20; font-family:'Roboto Condensed', sans-serif; font-weight:700; display:block; font-size:8vw; line-height:0.85; /*text-transform: uppercase;*/ text-shadow:2px 2px 0px rgba(255,255,255,1); }
.en { font-family:'Roboto Condensed', sans-serif; }

body.camp .main .t_copy { /*top:60%;*/ top:50%; color:#fff; transform:translate(0, -60%); font-size:3em; line-height:1.5; z-index:1; text-shadow:2px 2px 0px rgba(0,0,0,0.5); }
body.home .main .t_copy { top:70%; color:#fff; transform:translate(0, -50%); font-size:3em; line-height:1.5; z-index:1; text-shadow:2px 2px 0px rgba(0,0,0,0.5); }

/*-- 合宿コース --*/
body.camp .main_b { width:90vw; max-width:800px; position:relative; position:absolute; position:absolute; bottom:0; left:-1px; z-index:1;}
body.camp .main_b a { display:block; }
body.camp .main_b01 { width:100%; margin:0 0 0 1px; position:relative; z-index:1;}
body.camp .main_b02 { max-width:50%; margin:0 0 0 -2px; }
body.camp .main_b01 img, body.camp .main_b02 img { width:100%;}


a:link[href*='.pdf'][target='_blank']::after,
.pdf::after { display:none !important; }

/*-- 通学コース --*/
body.home .main_b { width:50%; text-align:right; margin:0; z-index:1; top:50%; right:0; transform:translate(0,-35%);}
body.home .main_b a { display:inline-block; text-align:right; }
body.home .main_b01 { width:100%; min-width:300px; max-width:800px; }
body.home .main_b02 { width:300px; max-width:450px; margin:0; }
body.home .main_b01 img, body.home .main_b02 img { width:100%;}




/*-- お知らせ01/ --*/
.info_box01 { position:absolute; bottom:0; left:0; right:0; padding:0.5em 18em 0.5em 1em ; background:rgba(0,0,0,0.5); color:#fff; z-index:10; }
.info_box01 .title { display:inline-block; padding:0 1em 0 0; vertical-align:middle; position:relative; }
.info_box01 .date { display:inline-block; padding:0 1em 0 0; vertical-align:middle; }
.info_box01 .txt { display:inline-block; font-size:1.125em; vertical-align:middle;  }
.info_box01 .txt a { color:#fff; display:block; vertical-align:middle; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}

.hr { border-bottom:1px solid rgba(0,0,0,0.1); margin-top:100px; margin-bottom:100px; position:relative; }


/*-- お電話/ --*/
/*.tel_box { margin-bottom:2.5em; margin:0; padding:1em 0.5em; }
.tel_box span { display:inline-block; vertical-align:middle; line-height:1; padding:0.75em 0.5em 0.75em 0; letter-spacing:normal; }
.tel_box strong { display:inline-block; vertical-align:middle; line-height:1.0; color:#f90; font-size:3em; font-weight:bold; }
.tel_box {}
*/


/*-- 資料請求01/ --*/
.b_join01 { position:absolute; right:0; top:0; display:inline-block; width:14em; height:5em; padding:0.5em 1em 0.5em 0.5em; margin:-2.5em auto 0 auto; transition:.1s ease-in-out; text-align:left; text-decoration:none; color:#fff !important; border:0; border-top:3px solid #f90; border-bottom:3px solid #f90; background:#f90; border-radius:0; box-sizing:border-box; font-size:1.25em; line-height:1.5; letter-spacing:0.05em; z-index:100; }
.b_join01::before, .b_join01::after { position:absolute; z-index:0; display:block; top:calc(14.14% - 1px); width:3.5em; height:3.5em; content:''; transition:.1s ease-in-out; transform:rotate(45deg); border:0; background:#f90; box-sizing:border-box; z-index:-1; }
.b_join01::before { left:-1.75em; border-bottom:3px solid #f90; border-left:3px solid #f90;}
.b_join01::after { right:-1.75em; border-top:3px solid #f90; border-right:3px solid #f90;}
.b_join01:hover::before, .b_join02:hover::after { background:#fff; background:#fa0; }
.b_join01:hover { color:#f90; background:#fff; color:#fff; background:#fa0; text-decoration:none;}
.b_join01 strong {  font-size:1.2em; z-index:1;}
.b_join01 span { font-size:0.9em; letter-spacing:normal; z-index:1; }
.b_join01 strong::after { content:""; position:absolute; display:block; right:0.75em; top:50%; width:14px; height:14px; border-top:4px solid #fff; border-right:4px solid #fff; transform:rotate(45deg) translate(calc(-50% - 3px),0); box-sizing:border-box; }


.b_camp img, .b_home img { width:100%; }
.b_camp:hover, .b_home:hover { opacity:0.8; }


.anchor { /*height:5em; margin:0 0 -2em 0;*/ }

/*-- 利用者満足度 --*/
.voice_box { display:inline-block; vertical-align:top; width:66%; width:100%; }
.chart_box { display:inline-block; vertical-align:top; width:33%; position:relative; text-align:center; font-size:1.2em; margin-bottom:2em; z-index:0; }
.chart_box canvas { margin:0 auto; padding:0; width:290px; height:290px; position:relative; z-index:500; }
.chart_box .total { position:absolute; display:inline-block; left:50%; top:50%; transform:translate(-50%,-50%); line-height:1.1; letter-spacing:normal; vertical-align:middle; border-radius:50%; z-index:600; font-size:0.8em; }
.chart_box .total span { font-weight:bold; font-size:4em; }



/*-- INDEX --*/
.index_box { display:inline-block; position:relative; width:32.7%; padding:1.5%; margin-bottom:1em; vertical-align:top; letter-spacing:normal; box-sizing:border-box; text-align:left; text-decoration:none !important; overflow:hidden; transition:.15s; }
.index_box a { display:block; text-decoration:none; }
.index_box::after { content:"."; display:block; clear:both; height:0; visibility:hidden; border:none !important; }
.index_box .icon { display:block; width:100%; margin:0 0 0.5em 0; background:#f3f6f9 /*url(../img/i_no.jpg) center center /cover no-repeat*/; overflow:hidden; position:relative; }
.index_box .icon img { width:100%; height:100%; max-width:100vw; max-height:100vw; object-fit:cover; object-position:center; font-family:'object-fit:cover;';  }
.index_box .txt { width:85%; position:relative; margin:0; padding:0; left:0%; color:#333; box-sizing:border-box; line-height:1.5; }
.index_box .title { position:relative; z-index:1; display:block; margin:-2em 0 0 -1em; padding:0.75em 1.5em 0.5em 0.8em; background:#fff; color:#d33; font-size:1.5em; transform:skew(45deg); transition:.15s; font-weight:bold; }
.index_box .title span { display:block; transform:skew(-45deg); }
.index_box .title span br { display:none; }

.index_box:hover { text-decoration:none; opacity:1; background:rgba(246,244,240,1); }
.index_box.no_link:hover { background:#fff; }
.index_box:hover a .title { color:#d33; opacity:1; text-decoration:underline; background:rgba(246,244,240,1); }
.index_box .date { position:absolute; top:-1em; right:0; background:#fff; border:1px solid #06c; color:#06c; padding:0 0.5em; text-align:center; font-size:0.65em; border-radius:25px; display:none; }
.index_box p { margin:0; }


.index_box.hotel .icon img { width:100%; height:auto; }

.post_cat { position:absolute; top:-10px; left:3%; display:inline-block; background:#06c; color:#fff; padding:0 0.5em; font-size:0.8em; letter-spacing:0.03em; z-index:2; border-radius:1em; text-transform:uppercase; }

.voice_box .index_box { width:49.5%; padding:0 1.5%; margin:0; transition:none; }
.voice_box .index_box > div { display:flex; padding:1em 0; }
.voice_box .index_box .icon { vertical-align:top; width:120px; height:120px; margin:0 1em 0 0; border-radius:50%; }
.voice_box .index_box .date { flex-grow:1; vertical-align:top; }
.voice_box .index_box .title { display:block; border:none; transform:skew(0) !important; padding:0; margin:0 0 0.5em 0; transition:none; }
.voice_box .index_box .title span { transform:skew(0); }
.voice_box .index_box:hover { background:#fff; }
.voice_box .index_box a:hover { cursor:default; }
.voice_box .index_box:hover .title { text-decoration:none; background:#fff; }
body.temp .voice_box { /*width:100%;*/ }


body.camp .index_box .title { color:#0a3; }

body.camp .index_box.point .txt { width:75%; padding:0; }
body.camp .index_box.point .title { position:relative; z-index:1; display:block; margin:-1.6em 0 0 0; padding:0.5em; background:#0a3; color:#fff; font-size:1.4em; transform:skew(0);}
body.camp .index_box.point .title span { display:inline-block; transform:skew(0); }
body.camp .index_box.point .title::after { position:absolute; z-index:0; display:block; width:1.76em; height:1.76em; content:''; transform:rotate(45deg); border:0; background:#0a3; box-sizing:border-box; z-index:-1; top:calc(14.14% );  right:-0.9em; border-top:3px solid #0a3; border-right:3px solid #0a3;}
body.camp .index_box.point .title img { display:inline-block; width:1.5em; margin:0 0.5em 0 0; }


body.home .index_box .title { color:#f90; }

body.specialist .mceContentBody .index_box { width:24.5%; }

/*-- お知らせ02/ --*/
.info_area { padding-top:10vw; padding-bottom:10vw; background:rgba(246,244,240,1); position:relative; z-index:1; text-align:center; }
.info_area .index_box .date { display:inline-block; }


.info_box { max-width:800px; margin:auto; }
.info_box .info_title { display:inline-block; vertical-align:top; width:29%; text-align:left; white-space:nowrap; position:relative; }
.info_box .info_list { display:inline-block; vertical-align:top; width:70%; }
.info_box dl { padding:15px; line-height:30px; border-top:1px solid rgba(0,0,0,0.1); margin:auto; text-align:left; }
.info_box dl:hover { background:#fff; }
.info_box dl:last-of-type { border-bottom:1px solid rgba(0,0,0,0.1); margin-bottom:3vw; }
.info_box dt { float:left; width:11em; width:7em; position:relative; }
.info_box dd { display:block; margin:0 0 0 11.5em; margin:0 0 0 7.5em; }
.info_box dd a { display:block; }
.info_box .new { left:-1em; top:-0.5em; font-size:0.6em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; position:relative; }

body.top .info_box dd a.camp::before { content:"合宿"; display:inline-block; background:#0a3; color:#fff; padding:0 0.5em; margin:0 0.5em 0 0; }
body.top .info_box dd a.home::before { content:"通学"; display:inline-block; background:#f90; color:#fff; padding:0 0.5em; margin:0 0.5em 0 0; }
body.top .info_box dd a.camphome::before { content:"共通"; display:inline-block; background:#00f; color:#fff; padding:0 0.5em; margin:0 0.5em 0 0; }


body.top .info_box .info_title h4::before { content:""; display:inline-block; vertical-align:middle; width:1.4em; height:1.4em; margin:-0.2em 0.15em 0 -0.5em; background:url(../img/i_info02.svg) center center /cover no-repeat; }
body.camp .info_box .info_title h4::before { content:""; display:inline-block; vertical-align:middle; width:1.4em; height:1.4em; margin:-0.2em 0.15em 0 -0.5em; background:url(../img/i_info03.svg) center center /cover no-repeat; }
body.home .info_box .info_title h4::before { content:""; display:inline-block; vertical-align:middle; width:1.4em; height:1.4em; margin:-0.2em 0.15em 0 -0.5em; background:url(../img/i_info04.svg) center center /cover no-repeat; }


.more { margin:0 auto !important; font-size:1em !important; line-height:30px; letter-spacing:2px; padding:0 0 0 1em; position:relative; text-align:center; z-index:10; transition:0.5s; text-decoration:none; box-sizing:border-box; }
.more:hover { text-decoration:none !important; }
.more::before { content:""; position:absolute; display:inline-block; left:0em; top:50%; width:10px; height:10px; border-top:2px solid #d33; border-right:2px solid #d33; transform:rotate(45deg) translate(calc(-50% - 1px),0); box-sizing:border-box; }

body.camp .more::before { border-top:2px solid #0a3; border-right:2px solid #0a3; }
body.home .more::before { border-top:2px solid #f90; border-right:2px solid #f90; }



/*-- 取得できる免許 --*/
.get_box { width:100%; margin:0 auto; padding:0 0 5vw 0; list-style:none; letter-spacing:-.4em; text-align:center; position:relative; }
.get_box li { display:inline-block; vertical-align:top; letter-spacing:normal; min-width:90px; }
.get_box li a { display:block; width:16vw; height:16vw; margin:1vw; text-decoration:none; position:relative; border-radius:50%; padding:1.5%; /*transition:.25s;*/ border:1vw solid rgba(255,255,255,0); }
.get_box li a img { display:block; margin:0 auto -10% auto; width:75% !important; }
.get_box li a span { display:block; line-height:1.5; }
.get_box li a:hover { /*background:#fff;*/ border:2vw solid rgba(255,255,255,0.8); width:18vw; height:18vw; margin:0; }



/*-- 教習案内 --*/
.guide_box { width:100%; margin:0 auto; padding:0 0 5vw 0; list-style:none; letter-spacing:-.4em; text-align:center; position:relative; }
.guide_box li { display:inline-block;/* border-left:1px solid #ccc; border-right:1px solid #fff;*/ margin:0; vertical-align:top; letter-spacing:normal; width:20%; min-width:90px; }
.guide_box li a { display:block; width:18vw; min-height:18vw; margin:1vw; text-decoration:none; position:relative; padding:2vw 1vw; /*border-radius:20%; transition:.25s;*/ }
.guide_box li a:hover { /*background:#f6f4f0;*/ width:20vw; min-height:20vw; margin:0; box-shadow:2px 2px 10px rgba(0,0,0,0.15); white-space:nowrap; }
.guide_box li a img { display:block; margin:2.5vw auto; width:50% !important; }
.guide_box li a span { display:block; font-size:1.2em; line-height:1.5; padding:0; margin:-1em 0 0 0; white-space:nowrap; }
.guide_box li a span span { font-size:1em; margin:0; }
.guide_box li:last-child a { background:#c22; color:#fff; }
.guide_box li:last-child a:hover { background:#d33; }

body.camp .guide_box li:last-child a { background:#092; color:#fff; }
body.camp .guide_box li:last-child a:hover { background:#0a3; }

body.home .guide_box li:last-child a { background:#e80; color:#fff; }
body.home .guide_box li:last-child a:hover { background:#f90; }


/*-- 資料請求02 --*/
.b_join02 { position:relative; display:block; width:14em; height:4em; padding:1em 0; margin:-2em auto -2em auto; transition:.1s ease-in-out; text-align:center; text-decoration:none; color:#fff !important; border:0; border-top:3px solid #f90; border-bottom:3px solid #f90; background:#f90; border-radius:0; box-sizing:border-box; font-size:1.25em; line-height:1; letter-spacing:0.05em; z-index:1; }
.b_join02::before, .b_join02::after { position:absolute; z-index:0; display:block; top:calc(14.14% - 1px); width:2.8em; height:2.8em; content:''; transition:.1s ease-in-out; transform:rotate(45deg); border:0; background:#f90; box-sizing:border-box; z-index:-1; }
.b_join02::before { left:-1.4em; border-bottom:3px solid #f90; border-left:3px solid #f90;}
.b_join02::after { right:-1.4em; border-top:3px solid #f90; border-right:3px solid #f90;}
.b_join02:hover::before, .b_join02:hover::after { background:#fff; background:#fa0; }
.b_join02:hover { color:#f90; background:#fff; color:#fff; background:#fa0; text-decoration:none;}
.b_join02 strong { font-size:1.5em; z-index:1;}
.b_join02 span { letter-spacing:normal; z-index:1; }
.b_join02 strong::after { content:""; position:absolute; display:block; right:-0.5em; top:50%; width:14px; height:14px; border-top:4px solid #fff; border-right:4px solid #fff; transform:rotate(45deg) translate(calc(-50% - 3px),0); box-sizing:border-box; }

body.top .b_join02,
body.request .b_join02,
body.contact .b_join02,
body.entry .b_join02 { display:none; }

/*-- バナーエリア/ --*/
.b_box { /*background:rgba(246,244,240,0.9);*/ background:rgba(255,255,255,0.9);  padding:60px 0; text-align:center; }
.b_box a { display:inline-block; margin:15px; width:100%; max-width:300px; border:1px solid #ddd; }
.b_box a::after { display:none !important; }
.b_box a img { width:100%; height:auto; }
.b_box a:hover { background:#fff; border:1px solid #fff; }

/*-- facebook/ --*/
.fb_box, .tw_box, .inst_box { position:relative; }
.fb_iframe_widget { position:relative; width:100%; max-width:500px; height:300px; text-align:center; margin:auto; }
.fb_iframe_widget span { width:100% !important; height:400px; }
.fb_iframe_widget iframe[style] { position:relative !important; width:100% !important; }


/*-- YOUTUBE/ --*/
.youtube { position:relative; width:100%; padding-top:56.25%; }
.youtube iframe{ position:absolute; top:0; right:0; width:100%; height:100%; }



/*-- MAP/ --*/
.map_wrapper { width:100%; }
.map_wrapper iframe { width:100%; height:600px; border:none; margin:0 0 -8px 0; padding:0; position:relative; }
#map { position:relative; z-index:100; }


iframe#parentframe { width:100%; }


/*-- FOOT/ --*/
.footer { position:relative; z-index:2; padding-top:20vh; padding-bottom:20vh; text-align:center; color:#fff; line-height:1.5; min-height:calc(100vh - 150px - 0.8em); /*background:url(../img/bg_foot.jpg) center right /cover fixed;*/ box-sizing:border-box; z-index:0; }
.footer::before { position:absolute; z-index:-1; top:0; right:0; left:0; bottom:0; content:""; background:rgba(0,0,0,0.3); }
.footer .logo { position:relative;  display:block; width:96px; height:60px; margin:0 auto 2em auto; background:url(../img/logo02.svg) center center /cover no-repeat; }
.footer strong { font-size:1.25em; }
.footer strong.tel, .footer strong.fax { font-size:1.5em; }
.footer strong.tel a { color:#fff; }
.footer strong.fax a { color:#fff; }
.footer .address { font-size:0.8em; }

.gb { display:block; vertical-align:top; width:90vw; max-width:700px; margin:0 auto; padding:0; list-style:none; letter-spacing:-.4em; }
.gb li { display:inline-block; vertical-align:top; width:48%; margin:1%; letter-spacing:normal; }
.gb li a { display:block; text-align:center; padding:1em 0.5em; letter-spacing:normal; border:1px solid rgba(255,255,255,0.5); position:relative; color:#fff; text-decoration:none; }
.gb li a > span:first-of-type { display:block; font-size:0.8em;  }
.gb li a span.nobr { display:inline-block !important; white-space:nowrap; }
.gb li a span.nobr2 { display:inline-block !important; white-space:nowrap; }
.gb li a:hover { background:#fff; color:#d33; opacity:0.8; text-decoration:none; transition:0.25s; }
.gb li a span.notranslate { display:inline-block; white-space:nowrap;}
.gb li a:link[target="_blank"]::after { display:none; }


.fm { display:block; background:rgba(204,0,0,0.8); margin-top:0; margin-bottom:0; padding:0 1em; color:#fff; list-style:none; letter-spacing:-.4em; position:relative; font-size:0.8em; }
.fm li { display:inline-block; vertical-align:top; padding:20px 1em; line-height:20px; margin:0; letter-spacing:normal; position:relative; }
.fm li a { display:block; color:#fff !important; text-decoration:none; white-space:nowrap; }
.fm li a:hover { text-decoration:underline !important; }
.fm li::after { content:"／"; position:absolute; display:block; right:-0.25em; top:20px; margin:0; width:8px; height:8px;  }
.fm li.copyright { float:right; display:inline-block; margin:auto; text-align:right; z-index:10;  }
.fm li.copyright::after { display:none; }


.pagetop { display:block; position:fixed; bottom:0; left:50%; width:40px; height:80px; background:#fff; z-index:10000; transform:translate(-50%,0); }
.pagetop::before, .pagetop::after { content:""; position:absolute; display:block; bottom:0; width:0; height:0; border:40px solid transparent; border-bottom:40px solid #fff; }
.pagetop::before { left:-80px; border-right:40px solid #fff; }
.pagetop::after { right:-80px; border-left:40px solid #fff; }
.pagetop span::after { content:""; position:absolute; display:block; left:50%; top:40%; width:14px; height:14px; border-top:4px solid #d33; border-right:4px solid #d33; transform:rotate(-45deg) translate(-70%,0); box-sizing:border-box; }
.pagetop:hover { background:#fff; opacity:0.8; cursor:pointer; }

.anchor { height:160px; margin-top:-160px; position:relative; z-index:-1; }

.i_fb img { width:1.25em !important; height:auto !important; margin:-0.25em 0 0 0 !important; vertical-align:middle !important; }
.i_fb::after { display:none !important; }

body.camp .fm { background:rgba(0,170,51,0.8); }
body.camp .pagetop span::after { border-top:4px solid #0a3; border-right:4px solid #0a3; }

body.home .fm { background:rgba(255,153,0,0.8); }
body.home .pagetop span::after { border-top:4px solid #f90; border-right:4px solid #f90; }








/*--  TEMPLARE CONTENTS  --*/

/*-- TEMP HEADER/ --*/
body.temp .hero { color:#fff; min-height:33vw; background-color:#000; background:/*#eee url(../img/h_car.jpg)*/ center center /cover no-repeat; text-align:left; position:relative; z-index:200; }
body.temp .hero h1 { text-align:center; width:50vw; margin:0; /*animation:fadeIn 0.75s ease;*/ background:rgba(221,51,51,0.85); transform:skewX(45deg);  }
body.temp .hero h1 div { height:33vw; width:66vw; transform:skewX(-45deg); display:table-cell; vertical-align:middle; text-align:center; font-size:5vw; }
body.temp .hero h1 div::before { content:""; display:block; background:/*url(../img/i_car04.svg)*/ center center /cover no-repeat;  }

body.camp .hero h1 { background:rgba(0,170,51,0.85); }
body.camp .hero h1 div::before { /*width:10vw; height:10vw; margin:-5vw auto -1vw auto;*/ background-image:url(../img/i_camp04.svg);  }
body.home .hero h1 { background:rgba(255,153,51,0.85); }
body.home .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_home04.svg);  }

body.car .hero { background-image:url(../img/h_car.jpg); }
body.car .hero h1 div::before {width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_car04.svg); }
body.car h3::after, h3.car::after { content:""; position:absolute; right:-0.75em; top:50%; transform:translate(0,-38%); display:inline-block; width:2em; height:2em; vertical-align:middle; background:url(../img/i_car04.svg) center center /cover; opacity:0.3; }

body.bike .hero { background-image:url(../img/carbike.jpg); }
body.bike .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_bike04.svg); }
body.bike h3::after, h3.bike::after { content:""; position:absolute; right:-0.75em; top:50%; transform:translate(0,-38%); display:inline-block; width:2em; height:2em; vertical-align:middle; background:url(../img/i_bike04.svg) center center /cover; opacity:0.3; }

body.truck .hero { background-image:url(../img/h_truck.jpg); }
body.truck .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_truck04.svg); }
body.truck h3::after, h3.truck::after { content:""; position:absolute; right:-0.75em; top:50%; transform:translate(0,-38%); display:inline-block; width:2em; height:2em; vertical-align:middle; background:url(../img/i_truck04.svg) center center /cover; opacity:0.3; }

body.loader .hero { background-image:url(../img/h_loader.jpg); }
body.loader .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_loader04.svg); }
body.loader h3::after, h3.loader::after { content:""; position:absolute; right:-0.5em; top:50%; transform:translate(0,-38%); display:inline-block; width:2em; height:2em; vertical-align:middle; background:url(../img/i_loader04.svg) center center /cover; opacity:0.3; }

body.taxi .hero { background-image:url(../img/h_taxi.jpg); }
body.taxi .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_taxi04.svg); }
body.taxi h3::after, h3.taxi::after { content:""; position:absolute; right:-0.75em; top:50%; transform:translate(0,-38%); display:inline-block; width:2em; height:2em; vertical-align:middle; background:url(../img/i_taxi04.svg) center center /cover; opacity:0.3; }

body.qa .hero { background-image:url(../img/h_qa.jpg); }
body.qa .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_qa04.svg); }

body.contact .hero { background-image:url(../img/h_contact.jpg); }
body.contact .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_mail04.svg); }

body.entry .hero { background-image:url(../img/h_entry.jpg); }
body.entry .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_app01.svg); }

body.contact .footer, body.entry .footer, body.request .footer { min-height:auto; padding-top:10vh; padding-bottom:10vh; }
body.contact .footer .gb, body.entry .footer .gb, body.request .footer .gb { display:none; }

body.selected .hero { background-image:url(../img/h_selected.jpg); }
body.support .hero { background-image:url(../img/h_support.jpg); }
body.support .hero h1 div { font-size:4vw; }

body.guide .hero { background-image:url(../img/h_guide.jpg); }
body.guide.flow .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_flow04.svg); }
body.guide.fee .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_yen04.svg); }

body.voice .hero { background-image:url(../img/h_voice.jpg); }
body.about .hero { background-image:url(../img/h_about.jpg); }
body.about .hero h1 div { font-size:4vw; }
body.access .hero { background-image:url(../img/h_access.jpg); }
body.recruit .hero { background-image:url(../img/h_recruit.jpg); }
body.request .hero { background-image:url(../img/h_request.jpg); }

body.info .hero { background-image:url(../img/h_info.jpg); }
body.info .hero h1 div::before { width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_info01.svg); }

body.attention .hero { background-image:url(../img/h_attention.jpg); }
body.point .hero { /*background-image:url(../img/h_point.jpg);*/ }
body.point .hero h1 div::before { /*width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_star01.svg);*/ }
body.point h2.title div::before { content:""; position:relative; top:auto; left:auto; display:inline-block; vertical-align:middle; width:1em; height:1em; background:url(../img/i_star01.svg) center center /cover; transform:skewX(0); margin:-0.2em 0.25em 0 0; }
body.point h5::before { content:""; display:inline-block; width:1.2em; height:1.2em; vertical-align:middle; background:url(../img/i_star02.svg) center center /cover; margin:-0.2em 3px 0 -0.5em; }
body.hotel .hero { /*background-image:url(../img/h_hotel.jpg);*/ }
body.hotel .hero h1 div::before { /*width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_stay01.svg);*/ }
body.hotel h2.title div::before { content:""; position:relative; top:auto; left:auto; display:inline-block; vertical-align:middle; width:1em; height:1em; background:url(../img/i_stay01.svg) center center /cover; transform:skewX(0); margin:-0.2em 0.25em 0 0; }
body.around .hero { /*background-image:url(../img/h_map.jpg);*/ }
body.around .hero h1 div::before { /*width:10vw; height:10vw; margin:-5vw auto -1vw auto; background-image:url(../img/i_food01.svg);*/ }
body.around h2.title div::before { content:""; position:relative; top:auto; left:auto; display:inline-block; vertical-align:middle; width:1em; height:1em; background:url(../img/i_food01.svg) center center /cover; transform:skewX(0); margin:-0.2em 0.25em 0 0; }
body.campaign .hero { background-image:url(../img/h_campaign.jpg); }
body.campaign .hero h1 div::before { display:none; }

body.link .hero { /*background-image:url(../img/h_link.jpg);*/ }
body.pp .hero { background-image:url(../img/h_pp.jpg); }
body.sitemap .hero { /*background-image:url(../img/h_link.jpg);*/ }


/*-- TEMP/ --*/
img.full { width:calc(100% + 50vw); max-width:100vw; }
img.full + h3 { margin-top:-1em; }
body.temp img { object-fit:cover; font-family:'object-fit:cover; ' }

.navibar { color:#333; z-index:0; }
.navibar ul { text-align:right; width:100%; margin:0; padding:10px 0; font-size:0.8em; line-height:25px;box-sizing:border-box; }
.navibar ul li { list-style-type:none; display:inline; padding:0; }
.navibar ul li em { font-weight:bold; font-style:normal; }
.navibar ul li::before { content:"/"; margin:0 10px; }
.navibar ul li:first-child::before { display:none; }
.navibar a { border:none !important; }
.navibar ul li br { display:none; }



.imgL { display:block; float:left; margin:0 10px 10px 0; }
.imgR { display:block; float:right; margin:0 0 10px 10px; }

img.right, img[align=right] { float:right; margin:0 0 10px 20px; }
img.left, img[align=left] { float:left; margin:0 20px 10px 0; }



h1, h2, h3, h4, h5, h6 { }
h1 { font-size:3.4em; margin:0 auto 1em auto; line-height:1.5; overflow:hidden; box-sizing:border-box; }

h2 { display:table; vertical-align:middle; position:relative; font-size:3em; width:8em; height:3em; padding:0; line-height:1.25; margin:1em auto 1em auto; background:#d33; box-sizing:border-box; text-align:center; color:#fff; }
.section.get  { background:rgba(255,255,255,0.8); }
.section.get h2, .section.get + .section h2, .info_area + h2 { margin:0 auto 1em auto; }


h2::before { content:""; position:absolute; top:0; right:100%; width:0; height:0; border-left:3em solid transparent; border-top:3em solid #d33; }
h2::after  { content:""; position:absolute; top:0; left:100%; width:0; height:0; border-right:3em solid transparent; border-top:3em solid #d33; }
h2 span.f_s { font-size:0.5em; letter-spacing:normal; display:block; line-height:1.5em; }
h2 span.f_s2 { font-size:0.5em; }
h2 span.f_m { font-size:0.85em; }
h2 span.f_l { font-size:1.2em; }
h2 div { display:table-cell; vertical-align:middle; box-sizing:border-box; text-align:center; width:8em; height:3em; margin:auto; overflow:hidden; }
h2 div::before { content:""; position:absolute; top:-0.75em; left:-50vw; width:calc(50vw - 2.25em); height:3em; transform:skew(45deg); background:rgba(187,0,0,0.8); background:#c22; z-index:2; }
h2 div::after  { content:""; position:absolute; top:-0.75em; right:-50vw; width:calc(50vw - 2.25em); height:3em; transform:skew(-45deg); background:rgba(187,0,0,0.8); background:#c22; z-index:2; }
h2 img[src$='.svg'] { vertical-align:middle; margin:-0.25em 0 0 0; }

h3 { font-size:2.6em; color:#fff; margin:0 0 0.5em 0; line-height:1.25; position:relative; background:#111; border-bottom:3px solid #d33; padding:0.2em 0.5em; box-sizing:border-box; }
h3 a { color:#fff !important; }
h4 { font-size:2.2em; color:#d33; margin-bottom:0.5em; line-height:1.25; position:relative; z-index:1; }
h5 { font-size:1.6em; color:#d33; margin-bottom:0.5em; line-height:1.25; position:relative; z-index:1; }
h6 { font-size:1.2em; margin-bottom:0.5em; position:relative; z-index:1; }
h6.link { padding:0.5em 0.5em 0.5em 1.3em;}
h6.link::before { content:""; position:absolute; display:block; left:0.2em; top:1.2em; width:0.5em; height:0.5em; margin:0; border-top:2px solid #ccc; border-right:2px solid #ccc; transform:rotate(45deg); box-sizing:border-box; }

h1 .comment { display:block; font-size:0.5em; font-weight:normal; margin:0; letter-spacing:2px; }
h2 .comment { display:block; font-size:0.4em; font-weight:normal; margin:0; letter-spacing:2px; }
h3 .comment { display:block; font-size:0.4em; font-weight:normal; line-height:1.5; }
h4 .comment { display:block; color:#111; font-size:0.5em; font-weight:normal; line-height:1.5; }
h5 .comment { display:block; color:#111; font-size:0.6em; font-weight:normal; line-height:1.5; }
h6 .comment { display:block; font-size:0.75em; font-weight:normal; line-height:1.5; }

h3.bg, h4.bg, h5.bg { background:#06c; color:#fff; padding:0.25em 0.5em; }
h3.bg.red, h4.bg.red, h5.bg.red { background:#f77; }

h2 a:link, h3 a:link, h4 a:link, h5 a:link, h6 a:link,
h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited { /*color:#06c;*/ }

h4 .en { font-weight:700; }

body.camp h2 { background:#0a3; }

body.camp h2::before { border-top:3em solid #0a3; }
body.camp h2::after  { border-top:3em solid #0a3; }
body.camp h2 div::before { background:#092; }
body.camp h2 div::after  { background:#092; }

body.camp h3, h3.green { border-bottom:3px solid #0a3; }
body.camp h4, body.camp h5 { color:#0a3; }

body.home h2 { background:#f90; }

body.home h2::before { border-top:3em solid #f90; }
body.home h2::after  { border-top:3em solid #f90; }
body.home h2 div::before { background:#e80; }
body.home h2 div::after  { background:#e80; }

body.home h3, h3.orange { border-bottom:3px solid #f90; }
body.home h4, body.home h5 { color:#f90; }




h2.title { display:inline-block; background:rgba(221,51,51,0.85); padding:0.25em 0.25em 0.25em 0.5em ; width:auto; height:auto; margin:10vh 0 0 0; }
h2.title::before { content:""; position:relative; right:auto; border:none !important; margin:0 0.25em 0 0; display:inline-block; vertical-align:middle; width:2em; height:2em; }
h2.title::after  { content:""; position:absolute; top:0; left:100%; width:0; height:0; border:1.25em solid transparent;  border-left:1.25em solid rgba(221,51,51,0.85); }

body.home h2.title { /*position:absolute;*/ }
body.home h2.title::before { background:url(../img/i_home04.svg) center center /cover no-repeat; }

body.camp h2.title { background:rgba(0,170,51,0.85); }
body.camp h2.title::before { background:url(../img/i_camp04.svg) center -0.15em /cover no-repeat; }
body.camp h2.title::after  { content:""; position:absolute; top:0; left:100%; width:0; height:0; border:1.25em solid transparent; border-left:1.25em solid rgba(0,170,51,0.85); }

body.home h2.title { background:rgba(255,153,0,0.85); }
body.home h2.title::before { background:url(../img/i_home04.svg) center -0.15em /cover no-repeat; }
body.home h2.title::after  { content:""; position:absolute; top:0; left:100%; width:0; height:0; border:1.25em solid transparent; border-left:1.25em solid rgba(255,153,0,0.85); }

.contents h2.title { display:block; background:rgba(221,51,51,1); margin:0 calc(50% - 48vw) 0.5em calc(50% - 48vw); padding:0.25em calc(48vw - 50%); overflow:hidden; transform:skew(45deg); }
.contents h2.title::before, .contents h2.title::after { display:none; }
.contents h2.title div { display:block; width:auto; height:auto; transform:skew(-45deg); text-align:left; }
.contents h2.title div::before, .contents h2.title div::after { display:none; }

/*-- 画像回り込みセット/ --*/
.box_l { width:100%; padding:0; margin:0 auto; position:relative; box-sizing:border-box; }
.box_l .photo { float:left; width:100%; max-width:50%; margin:0; padding:0 2% 1em 2%; display:inline-block; position:relative; z-index:2; box-sizing:border-box; }
.box_l .photo img { margin:0; padding:0; width:100%; max-width:100%; height:auto; }
.box_l .txt { float:none; overflow:hidden; padding:0 2% 1em 2%; position:relative; box-sizing:border-box; }

.box_r { width:100%; padding:0; margin:0 auto; position:relative; box-sizing:border-box; }
.box_r .photo { float:right; width:100%; max-width:50%; margin:0; padding:0 2% 1em 2%; display:inline-block; position:relative; z-index:2; box-sizing:border-box; }
.box_r .photo img { margin:0; padding:0; width:100%; max-width:100%; height:auto; }
.box_r .txt { float:none; overflow:hidden; padding:0 2% 1em 2%; position:relative; box-sizing:border-box; }

.box_l::after, .box_r::after { content:"."; display:block; clear:both; height:0; visibility:hidden; }

.box_l.full .photo { margin-left:calc(-50vw + 50%); width:50vw; max-width:50vw; position:relative; padding-left:0; }
.box_r.full .photo  { margin-right:calc(-50vw + 50%); width:50vw; max-width:50vw; position:relative; padding-right:0; }
.box_l + hr { opacity:0; display:none; }
.box_l.full .photo img, .box_r.full .photo img { /*width:50vw; height:25vw; */ }

body.plan .box_l .photo img, body.booking .box_l .photo img { /*height:50vw; max-height:432px; */ }


p.wide { margin:0 -20px 1em -20px; position:relative; }
p.wide img { width:calc(100% + 40px); max-height:100%; }
p.wide::before { content:""; position:absolute; left:0; display:inline-block; width:16vw; height:16vw; transform:translate(-3vw,-3vw); background:rgba(45,40,127,0.07); z-index:-1; overflow:hidden; }
p.wide::after { content:""; position:absolute; right:0; bottom:0; display:inline-block; width:16vw; height:16vw; transform:translate(6vw,3vw); background:rgba(45,40,127,0.07); z-index:-1; overflow:hidden; }



/*-- 2列ボックス/ --*/
.LR_box { display:inline-block; vertical-align:top; width:49%; margin:0; padding:0 2% 1em 2%; box-sizing:border-box; position:relative; }
.LR_box .LR_box { width:45% !important; }
.LR_box .LCR_box { width:32.5% !important; }

/*-- 3列ボックス/ --*/
.LCR_box { display:inline-block; vertical-align:top; width:32.7%; margin:0; padding:0 2% 1em 2%; box-sizing:border-box; letter-spacing:0.1em; }
.LCR_box2 { display:inline-block; vertical-align:top; width:65.4%; margin:0; padding:0 2% 1em 2%; box-sizing:border-box; letter-spacing:0.1em; }
.LR_box img, .LCR_box img { width:100%; object-fit:cover; font-family:'object-fit:cover; '; margin-bottom:1em; }
.LR_box h3, .LR_box h4, .LR_box h5, .LCR_box h3,.LCR_box h4, .LCR_box h5, .LCR_box2 h3,.LCR_box2 h4, .LCR_box2 h5 { margin-bottom:0.5em; white-space:normal; word-break:break-all;  }



/*--キャプション --*/
.photo { position:relative; }
.photo span.caption { position:absolute; left:0; bottom:0; display:inline-block; padding:2px 8px; color:#fff; background:rgba(0,0,0,0.7); }
.LR_box span.caption, .box_l span.caption, .box_r span.caption, .box_l .photo span.caption, .box_r .photo span.caption { position:absolute; left:4%; bottom:4vw; display:inline-block; padding:2px 8px; color:#fff; background:rgba(0,0,0,0.7); }
.LR_box span.caption { bottom:calc(1em + 4vw); }
.LR_box .photo span.caption { bottom:1em; }

.box_r .LCR_box, .box_l .LCR_box { width:32% !important; }

.in_box { border:1px solid #ddd; padding:1em 1.5em; }



a.link { padding:0.5em 0.5em 0.5em 1.3em; margin:0; text-decoration:underline; box-sizing:border-box; position:relative; overflow:hidden; }
a.link::before { content:""; position:absolute; display:block; left:0.2em; top:1em; width:0.5em; height:0.5em; margin:0; border-top:2px solid #d33; border-right:2px solid #d33; transform:rotate(45deg); box-sizing:border-box; }
body.camp a.link::before, a.link.green::before { border-top:2px solid #0a3; border-right:2px solid #0a3; }
body.home a.link::before, a.link.orange::before { border-top:2px solid #f90; border-right:2px solid #f90; }
/*a.link.active::before { border-top:2px solid #fff; border-right:2px solid #fff; transform:rotate(45deg); }*/
a.link.red { color:#d33; }
a.link.green { color:#0a3; }
a.link.orange { color:#f90; }


.index_box a[target='_blank'] .title::after,
.LCR_box a[target='_blank']::after,
body.link .article li a[target='_blank']::after,
body.link .article a:link[target='_blank']::after,
.article a:link[target='_blank']::after
 { content:""; position:relative; display:inline-block; vertical-align:middle; width:1.2em; height:1.2em; margin:0; background:url(../img/i_blank.svg) center bottom /100% no-repeat; }

.index_box[href$='.pdf'] .title::before,
.index_box a[href$='.pdf'] .title::before,
.pdf::before { content:''; display:inline-block; vertical-align:middle; position:relative; width:1.2em; height:1.2em; margin:-0.25em 0.25em 0 0; background:url(../img/i_pdf.svg) center center /cover no-repeat; }
.index_box[href$='.pdf']::after,
.index_box a[target='_blank']::after,
.index_box[href$='.pdf'] .title::after,
.index_box a[href$='.pdf'] .title::after,
a:link[href$='.pdf'][target='_blank']::after,
.pdf::after { display:none !important; }



/*-- テーブルデザイン/ --*/
.table00 { width:100%; margin-bottom:30px; }
.table00 tr { border:none !important; }
.table00 th { padding:0.25em 0.5em !important; border:none !important; text-align:left; vertical-align:top; color:#333; }
.table00 td { padding:0.25em 0.5em !important; border:none !important; /*vertical-align:top;*/ }

.table01 { width:100%; margin-bottom:30px; border-collapse:collapse; position:relative; z-index:1; }
.table01 th, .table01 td { padding:0.5em 0.75em; /*vertical-align:top;*/ }
.table01 thead tr { background:#ddefb1; border-top:1px dashed #ccc; border-bottom:1px dashed #ccc; }
.table01 thead td { font-weight:bold; }
.table01 tr { border-top:1px dashed #ccc; border-bottom:1px dashed #ccc; }
.table01 tbody th { text-align:left; }
.table01 td table { margin-bottom:0; }
.table01 td table { margin-bottom:5px; }

.table02 { width:100%; margin-bottom:30px; border-collapse:collapse; border-top:1px solid #ddd; position:relative; z-index:1; }
.table02 tr { border-top:1px solid #ddd; border-bottom:1px solid #ddd; }
.table02 th, .table02 td { padding:0.5em 0.75em; /*vertical-align:top;*/ }
.table02 caption { padding:0.5em 0.75em; font-weight:bold; }
.table02 thead tr { background:#333; font-weight:bold; }
.table02 thead th { color:#fff; }
.table02 thead td { color:#fff; }
.table02 tbody th { text-align:left; }

.table03, mceContentBody .table03 { width:100%; margin-bottom:20px; border-collapse:collapse; }
.table03 th, .table03 td, mceContentBody .table03 th, mceContentBody .table03 td { padding:0.5em 0.75em; border:1px solid #ddd; /*vertical-align:top;*/ }
.table03 caption { padding:0.5em 0.75em; font-weight:bold; }
.table03 thead tr { font-weight:bold; background:#d33; color:#fff; }
.table03 thead th { border:1px solid #ddd; }
.table03 thead td { font-weight:bold; color:#fff; border:1px solid #ddd; }
.table03 tbody th { text-align:left; border:1px solid #ddd; background:#fff; background:#f6f6f6; color:#333; }
.table03 tbody td { border:1px solid #ddd; letter-spacing:normal; }

.table03 td.bg_red { background:rgba(221,51,51,0.15); }
.table03 td.bg_yellow { background:rgba(255,204,0,0.15); }
.table03 td.price, .table03 td.price_before { font-size:1em; text-align:right; white-space:nowrap; }


body.camp .table03 thead tr { background:#0a3; }
body.home .table03 thead tr { background:#f90; }


body.history table th { color:#f77;}
tr.l_double { border-top:3px double #bbb; }

/*-- FORM/ --*/
form { margin:0; padding:0; border:0; /*outline:0;*/ font-size:100%; vertical-align:middle; background:transparent; }
form label { vertical-align:middle; }

select, input, textarea, button { -webkit-appearance:none; vertical-align:middle; position:relative; line-height:30px; background:#fff; font-size:1.2em; margin:5px 0; padding:3px 10px; /*top:-1px; */ border:1px solid #333; border-radius:0; box-shadow:none; z-index:0; box-sizing:border-box; }
input[type="text"] { margin:5px 5px 5px 0; }
input.long { width:100%; margin:5px 0; position:relative; }
button, .button, input[type="button"], input[type="submit"], input[type="reset"] { display:inline-block !important; vertical-align:middle; -webkit-appearance:none; overflow:visible; width:auto; min-width:240px; min-height:40px; font-size:1.2em; line-height:30px;  margin:10px; padding:10px 40px 10px 20px; background:#c22; border:none; /*border:1px solid #111;*/ color:#fff !important; position:relative; text-decoration:none; /*border-radius:30px;*/ text-align:center; /*outline:none;*/ transition:all .2s; box-sizing:border-box; }

button:hover, .button:hover, input[type="button"]:hover, input[type="submit"]:hover { cursor:pointer; text-decoration:none; background:#d33; /*border:1px solid #d33;*/ color:#fff; }
input[type="reset"], button[type="reset"] { background:#eee !important; /*border:1px solid #111;*/ color:#111 !important; }
input[type="reset"]:hover, button[type="reset"]:hover { background:#ddd !important; }

.button.camp, .button.home { font-weight:bold; font-size:1.4em; }

.button.camp::before { content:""; display:inline-block; width:1.4em; height:1.4em; vertical-align:middle; background:url(../img/i_camp04.svg) center center /cover no-repeat; margin:-0.2em 0.5em 0 0; }
.button.camp:hover { background:#0a3; }
.button.home::before { content:""; display:inline-block; width:1.4em; height:1.4em; vertical-align:middle; background:url(../img/i_home04.svg) center center /cover no-repeat; margin:-0.2em 0.5em 0 0; }
.button.home:hover { background:#f90; }


body.camp .button, body.camp button { background-color:#092;}
body.camp .button:hover, body.camp button:hover { background-color:#0a3;}

body.home .button, body.home button { background-color:#e80;}
body.home .button:hover, body.home button:hover { background-color:#f90;}

.button::after, button::after { content:""; position:absolute; display:block; right:0.5em; top:50%; width:14px; height:14px; border-top:4px solid #fff; border-right:4px solid #fff; transform:rotate(45deg) translate(calc(-50% - 3px),0); box-sizing:border-box; }

option { padding:5px; font-size:1.2em; line-height:1.5; }
input[type="reset"]:hover { background:#ddd; }

button[disabled], a.button[disabled], .button[disabled], input[type="button"][disabled], input[type="submit"][disabled],
button[disabled]:hover, a.button[disabled]:hover, .button[disabled]:hover, input[type="button"][disabled]:hover, input[type="submit"][disabled]:hover { background:#eee; border:none; color:#fff; opacity:1.0; cursor:default; position:relative; }

button.mini, .button.mini { min-width:auto; }


/*-- INPIUT --*/
.imeOff { ime-mode:inactive; }
.inputSS { width:10%; min-width:3em; }
.inputS { width:20%; min-width:4em; }
.inputS2 { width:25%; min-width:5.5em; }
.inputMM { width:30%; min-width:6em; }
.inputM { width:40%; min-width:8em; }
.inputL { width:60%; min-width:12em; }
.inputX { width:80%; min-width:13.5em; }
.inputXX { width:100%; }
textarea { width:100%; resize:vertical; }




/*-- Radio and Checkbox/ --*/
input[type="radio"], input[type="checkbox"] { margin:0 3px 0 0; width:1.25em; height:1.25em; display:none; }
input[type="radio"] + span, input[type="checkbox"] + span { padding-left:1.5em; position:relative; margin-right:1em; display:inline-block; }
/**
input[type="radio"] + span::before{ content:""; display:block; position:absolute; top:0.25em; top:calc(50% - 8px); top:0.25em; left:0; width:1.2em; height:1.2em; border:1px solid #333; border-radius:50%; z-index:5; margin-right:3px; box-sizing:border-box; }**/
/***2022/7/11*下記に修正***/
input[type="radio"] + span:not(.hihyoji)::before { content:""; display:block; position:absolute; top:0.25em; top:calc(50% - 8px); top:0.25em; left:0; width:1.2em; height:1.2em; border:1px solid #333; border-radius:50%; z-index:5; margin-right:3px; box-sizing:border-box; }
/*******/
input[type="radio"]:checked + span, input[type="checkbox"]:checked + span { color:#d33; }
input[type="radio"]:checked + span::after{ content:""; display:block; position:absolute; top:0.45em; left:0.2em; width:0.8em; height:0.8em; background:#d33; border-radius:50%; z-index:10; }
input[type="checkbox"] + span::before { content:""; display:block; position:absolute; top:calc(50% - 8px); top:0.25em; left:0; width:1.2em; height:1.2em; border:1px solid #ccc; border-radius:4px; margin-right:3px;  box-sizing:border-box;}
input[type="checkbox"]:checked + span::after { content:""; display:block; position:absolute; top:calc(50% - 12px); top:0.2em; left:6px; width:9px; height:16px; transform:rotate(40deg); border-bottom:3px solid #d33; border-right:3px solid #d33; box-sizing:border-box; }




button.i_delete { min-width:auto !important; }
button.i_delete::before { display:none; }

/*-- SELECT/ --*/
select { -webkit-appearance:none; -moz-appearance:none; position:relative; z-index:auto !important; border-radius:0; font-size:inherit; text-align:left; background:#fff url(../img/i_pulldown.png) right center /24px no-repeat; border:1px solid #ccc; vertical-align:middle; height:30px; padding:3px 5px; margin:0 2px 0 0; box-sizing:border-box; display:none; display:block; }
select:disabled, select.disabled { border:1px solid #ccc; color:#ccc; color:silver; background:none; z-index:auto; }


/* FORM SELECT Core CSS. Do not edit unless your sure */
.easy-select-box { display:inline-block; position:relative; box-sizing:border-box; }
.select { z-index:10; position:relative; }
.easy-select-box .esb-dropdown { position:absolute !important; top:100%; left:-1px; display:none; width:100% !important; }

/* FORM SELECT Default Presentation CSS. You can edit appearance here or create a custom class below */
.easy-select-box { text-align:left; background:#fff; border:1px solid #111; vertical-align:middle; /*border-radius:3px;*/ }
.easy-select-box .esb-displayer { min-width:3em; background:url(../img/i_pulldown.svg) right center /24px no-repeat; padding:3px 24px 3px 8px; line-height:30px; font-size:1.2em; white-space:nowrap; box-sizing:border-box; }
.easy-select-box:hover, .easy-select-box:focus { /*border:1px solid #356; */ z-index:10000 !important; cursor:pointer; }
.easy-select-box:hover .esb-displayer { text-decoration:none; }
.easy-select-box.disabled { background:none; border:1px solid #111; color:silver; z-index:0 !important; }
.easy-select-box.disabled .esb-displayer,
.easy-select-box:hover.disabled .esb-displayer { background:#f9f3ec; color:#111; color:silver; font-weight:normal; cursor:not-allowed; }
.easy-select-box .esb-dropdown { top:95%; border:1px solid #111; /*border:1px solid #356; */ border-top:none; max-height:200px; overflow:auto !important; background:#FFF; padding:0; z-index:200; /*border-radius:0 0 5px 5px;*/ box-sizing:content-box; }
.easy-select-box .esb-dropdown .esb-item { padding:4px 10px; background:#FFF; cursor:default; }
.easy-select-box .esb-dropdown .esb-item.esb-item-selected { background:rgba(221,52,52,0.2); text-decoration:none; font-weight:bold; }
.easy-select-box .esb-dropdown .esb-item:hover { background:#d33; color:#fff; text-decoration:none; font-weight:bold; }
.easy-select-box .esb-dropdown .esb-item-disabled,.easy-select-box .esb-dropdown .esb-item-disabled:hover { color:#ccc; background:#FFF; cursor:not-allowed; }

.error, .required { color:#d33; }
div.error { border:5px solid #d33; padding:5px 15px; margin:0 0 0.5em 0; }
span.error { background:#d33; color:#fff; padding:2px 5px; display:block; }
.example { color:#777; white-space:nowrap; }
.price { font-size:1.2em; font-weight:bold; }
.price_before { font-size:1.2em; color:#666; }/* 税抜き表示 price_before*/
body.contact p { margin:0; }

.pp_box {/* width:100%;*/ max-width:700px; margin:1.5em auto; border:3px double #ccc; padding:1em !important;}
.pp_box h5 { margin:0; }

/*-- リスト/ --*/
ol { counter-reset:step; list-style:none; margin:1em 0; padding:0; }
ol li{ padding:0 0 0 2em; margin:0 0 1em 0; }
ol > li::before { counter-increment:step; content:counter(step); background:#d33; vertical-align:middle; display:inline-block; width:1.6em; line-height:1.6em; letter-spacing:normal; font-size:1em; font-weight:bold; text-align:center; border-radius:50%; color:#fff; margin:-0.3em 0.4em 0 -2em; }
ol ol { margin:0.5em 0 1em 1em; }
ol li li { padding:0 0 0 1em; margin:0 0 0.25em 0; }
ol li li::before { counter-increment:step; content:counter(step); background:#777 !important; vertical-align:middle; display:inline-block; width:1.5em; line-height:1.5em; letter-spacing:normal; font-size:1em; font-weight:normal; text-align:center; border-radius:50%; color:#fff; margin:-0.3em 0.4em 0 -2em; }
ol > li h4,  ol > li h5,  ol > li h6 { vertical-align:top; display:inline-block; margin:0; line-height:1.5; }
ol li ul { padding:0 0 0 1.2em; }
ol li ul li { padding:0; }
ol li ul li::before { counter-increment:none; content:none; margin:0; }
ol li strong { color:#d33; font-size:1.4em; }
.value { background:#d33; vertical-align:middle; display:inline-block; width:1.6em; line-height:1.6em; font-size:1em; font-weight:bold; text-align:center; border-radius:50%; color:#fff; margin:-0.3em 0.4em 0 0; }

body.camp ol > li::before { background:#0a3; }
body.camp ol li strong { color:#0a3; }
body.home ol > li::before { background:#f90; }
body.home ol li strong { color:#f90; }



ol.faq { counter-reset:q; list-style:none; margin:0; padding:0; }
ol.faq >li { margin-bottom:1em; position:relative; }
ol.faq >li::before { position:absolute; top:1em; counter-increment:q; content:'Q'counter(q); content:'Q'attr(value); background:#d33; vertical-align:middle; display:inline-block; width:2.4em; height:2.4em; line-height:2.2em; font-weight:bold; text-align:center; border-radius:50%; color:#fff; margin:0 0.4em 0 -3em; }
ol.faq >li h5 {  }
ol.faq .a { padding:0.5em 0 0.5em 0.4em; }
ol.faq .a h4 { background:#090; color:#09c; display:inline-block; width:2.4em; height:2.4em; line-height:2.2em; font-weight:bold; text-align:center; border-radius:50%; color:#fff; font-size:1em; margin:0 0.4em 0 -2.8em; }
ol.faq .a::before { content:'A'attr(value); background:#111; vertical-align:top; display:inline-block; width:2em; height:2em; line-height:1.8em; font-weight:bold; text-align:center; border-radius:50%; color:#fff; margin:0 0.4em 0 -2.4em; }
ol.faq li ol { display:inline-block; vertical-align:top; }
ol.faq >li .i_close { color:#d33; }

.q { padding:1em 1.2em 0.5em 0;  position:relative; color:#111; border-top:1px dashed #ccc; }
.m { position:relative; color:#111; padding:0 2.5em 0 0; }
.q::before { content:"Q. "; display:inline-block; margin-right:0.25em; transition:0.25s; color:#d33; }
.q::after, .m::after { content:"＋"; position:absolute; right:0; display:inline-block; transition:0.25s; color:#d33; }
.m::after { font-size:2em; top:0; }
.q.i_close::after, .m.i_close::after { transform:rotate(-45deg); }
.a { margin:0 0 2em 0; }
.a::before { content:"A. "; display:inline-block; font-weight:bold; margin-right:0.25em; transition:0.25s; color:#0a3; font-size:1.4em; }

/*-- アコーディオン/ --*/
.m:hover, .q:hover { cursor:pointer; }


ol.step { display:table; table-layout:fixed; width:calc(100% + 30px); margin:0 -15px 2em -15px; border-collapse:separate; border-spacing:15px 0; }
ol.step > li { display:table-cell; padding:1em; margin:0; background:#f0f3f6; border:none; position:relative; font-size:1.2em; line-height:1.2; /*border-radius:10px;*/ }
ol.step > li:after { content:""; position:absolute; top:50%; right:-2em; left:auto; margin:-1em 0 0 0; width:0; height:0; border:1em solid transparent; border-left:25px solid #f0f3f6; z-index:1; }
ol.step > li:last-child { }
ol.step > li:last-child:after { display:none; }
ol.step > li:before { content:attr(value)"."; font-family:'Roboto Condensed', sans-serif; font-weight:400; font-size:1.25em; background:none; color:#333; width:auto; margin:-0.2em 0.5em 0 0 !important; padding:0; }

ol.step li.active { background:#06c; color:#fff; font-weight:bold; }
ol.step > li.active:before { color:#fff; font-weight:700; }
ol.step > li.active:after { border-left:25px solid #06c;}


/*-- アコーディオン/ --*/
.m:hover, .q:hover { cursor:pointer; }


/*-- WordPress/ --*/
.aligncenter {display:block; margin:0 auto; }
.alignright { float:right; margin:0 0 0 1em; }
.alignleft { float:left; margin:0 1em 0 0; }
img[class*="wp-image-"],
img[class*="attachment-"] { max-width:100%; height:auto; }



.col1 { padding:0 2%; }
.col2 { columns:2; column-gap:2em; padding:0 2%; }
.col3 { columns:3; column-gap:2em; padding:0 2%; }
.break { -webkit-column-break-before:always; break-before:column; }

.col2 ul { margin:0; /*padding:0 0 0 1em;*/ }

.post { color:#d33; }
.name { font-size:1.4em; }
.license { margin-top:0; padding:0 0 0 2em; font-size:0.9em; }


.sub_menu { position:absolute; right:0; top:-160px; background:#d33; padding:10px; z-index:100; }
.sub_menu a { display:block; padding:5px 20px 5px 30px; margin:0; color:#fff; text-decoration:none; box-sizing:border-box; position:relative; }
.sub_menu a::after { content:""; position:absolute; display:block; left:10px; top:calc(50% - 5px); width:7px; height:7px; margin:0; border-top:2px solid #fff; border-right:2px solid #fff; transform:rotate(45deg); box-sizing:border-box; }
.sub_menu a:hover, .sub_menu a.active { background:rgba(0,0,0,0.3); }



/*--スタッフ紹介--*/
staff_box {}
.position { display:block; font-size:0.6em; line-height:1.25; }
h5 .en { display:block; font-size:0.6em; color:#f77; font-family:'Roboto Condensed', sans-serif; font-weight:700;}
ul.staff { list-style:none; letter-spacing:-.4em; margin:0; padding:0; }
ul.staff li { display:inline-block; vertical-align:top; width:20%; letter-spacing:normal; padding:1%; box-sizing:border-box; }
ul.staff li p { line-height:1.5;}

.photo.full { position:relative; }
.photo.full .east { display:inline-block; padding:0.5em; position:absolute; bottom:0; left:1em;/* background:rgba(0,0,0,0.6);*/ color:#fff; opacity:0.8; }
.photo.full .south { display:inline-block; padding:0.5em; position:absolute; bottom:0; left:50%; transform:translate(-50%,0);/* background:rgba(0,0,0,0.6);*/ color:#fff; opacity:0.8; }
.photo.full .west { display:inline-block; padding:0.5em; position:absolute; bottom:0; right:1em;/* background:rgba(0,0,0,0.6);*/ color:#fff; opacity:0.8; }



/*--リンク集 --*/
body.link .contents ul { list-style:none; padding:0; }
body.link .contents ul li { padding:0 0 0 1.5em; }
body.link .contents ul li a { position:relative; }
body.link .contents ul li a::before { content:""; position:absolute; display:block; left:-1.2em; top:0.25em; width:0.5em; height:0.5em; margin:0; border-top:2px solid #d33; border-right:2px solid #d33; transform:rotate(45deg); box-sizing:border-box; }


.notice { /*background:rgba(255,119,119,0.07);*/ margin-bottom:1em; padding:0.5em 1em; border:1px solid #999;}
.notice strong {/* white-space:nowrap;*/ color:#d33; }
.notice .tel { font-size:1.4em}


/*--お問い合わせフォーム--*/
body.contact .table02 {}
body.contact .table02 th { }
button[name="back"] { border:2px solid #99a; color:#778; }
button[name="back"]:hover { border:2px solid #778; background:#778; color:#fff; }
button.red { background:#fff; border:2px solid #d33; color:#d33; }
button.red:hover { background:#d33; color:#fff; }
body.contact .table01 th h6, body.entry .table01 th h6 { margin:0; }


/*入校申し込み*/
table.boarding {}
table.boarding th {}
table.boarding th.area { background:rgba(0,170,51,0.2); background:#f6f6f6;}



/*--スライダー--*/
.bx-wrapper .bx-pager, .bx-wrapper .bx-controls-auto { display:none; }
.bx-wrapper .bx-pager.bx-default-pager a { width:14px; height:14px; border:2px solid #bdc3c7; background:#fff; border-radius:50%; }
.bx-wrapper .bx-pager.bx-default-pager a:hover, .bx-wrapper .bx-pager.bx-default-pager a.active, .bx-wrapper .bx-pager.bx-default-pager a:focus { background:#bdc3c7; }
.bx-wrapper .bx-prev { left:0; margin:-25px 0 0 0 !important; width:50px !important; height:50px !important; background:rgba(221,51,51,0.8);}
.bx-wrapper .bx-next { right:0; margin:-25px 0 0 0 !important; width:50px !important; height:50px !important; background:rgba(221,51,51,0.8); }
.bx-wrapper .bx-prev:hover, .bx-wrapper .bx-next:hover { background:rgba(221,51,51,1); }
.bx-wrapper .bx-prev::after { content:""; position:absolute; display:block; right:15px; top:50%; margin:-6px 0 0 0; width:10px; height:10px; border-bottom:2px solid #fff; border-left:2px solid #fff; transform:rotate(45deg); }
.bx-wrapper .bx-next::after { content:""; position:absolute; display:block; left:15px; top:50%; margin:-6px 0 0 0; width:10px; height:10px; border-top:2px solid #fff; border-right:2px solid #fff; transform:rotate(45deg); }


/*流れ*/
.flow_box { display:flex; margin:0; padding:0; list-style:none; flex-wrap:wrap; text-align:center; }
.flow_box li { margin:0 auto; padding:1em; width:20%; position:relative; min-width:200px; }
.flow_box li img { width:100%; height:auto; }
.flow_box li .text { display:inline-block; background:#fff; vertical-align:middle; width:80%; margin:auto; border:1px solid #eee; padding:0.5em; margin:-1em 0 0 0; box-shadow:1px 1px 10px rgba(0,0,0,0.1); }
.flow_box li::after { content:""; position:absolute; width:0; height:0; top:4em; right:-30px; display:block; border:20px solid transparent; border-left:20px solid #ccc;}
.flow_box li:last-of-type::after { display:none; }

/*宿泊*/
.hotel .icon ul { margin:0; padding:0; }
.hotel .icon ul li { margin:0; padding:0; }
body.camp .hotel .bx-wrapper .bx-caption { bottom:auto; top:0; background:rgba(0,170,51,0.7); width:auto; max-width:100%; }
body.camp .hotel .bx-controls { display:none; }


@media print { html { background:none; height:auto; min-height:auto; }
body { background:none; margin:0; padding:0; }

.covervid-wrapper, .covervid-video, .header, .booking_box { display:none; }

.contents { width:100%; max-width:100%; background:none; padding:0; margin:0; line-height:1.8; }

.head { background:none; height:0; padding:0; margin:0; display:none; }
.side { background:none; height:0; padding:0; margin:0; display:none; }
.chara01, .chara02 { display:none; }

.article { width:100%; padding:0; }
.full { margin-left:0; margin-right:0; padding:20px 0; width:100%; }
body.top .full { padding:20px 0; }
body.top .full_bg { padding-left:0; padding-right:0; }
.box_l.full .photo { margin-left:0; width:50vw; max-width:50vw; }
.box_r.full .photo  { margin-right:0; width:50vw; max-width:50vw; }

.navibar { width:100%; padding:0; }
.navibar ul { padding:0; margin:0; }

h1 { background:none; color:#333; border-bottom:5px solid #ccc; font-weight:normal; }
h2 { font-weight:normal; }
h3, h4, h5, h6 { font-weight:normal; }
.text_box { padding:0; box-shadow:none; }

.index_title { padding:5px 0 5px 0; background:none; }

body.top .foot, .foot { margin:0; border-top:1px solid #ccc; }
.f_sub, .foot .booking, .copyright { display:none; }

.table01 { border:2px solid #ccc; border-collapse:collapse; margin-bottom:20px; }
.table01 th, .table01 td { font-weight:normal; border:2px solid #ccc; }
.table02 th, .table02 td { font-weight:normal; }
.table03 th, .table03 td { font-weight:normal; }

.sns { display:none; }

.b_box, .fm { display:none; }

}
