@charset "UTF-8";
/* CSS Document */

/*********************************************************************
*
* Copyright (c) CUBIC DESIGN INC.
*
* Url : http://www.cubicdesign.co.jp
*
* Built       : 2017/09/06
* Last update : 2018/04/20
* Made by     : Murata Hiroyuki
* Updated by  : Murata Hiroyuki
*
**********************************************************************/


/*************************************************************************************************************************
* 画面幅：680px 以下
*************************************************************************************************************************/

.newsCov{ display: block; width: 100%; margin: 0 0 15px 0; padding: 10px; background: #ffffff; border: 3px solid #ff0000; font-size: 15px; font-weight: bold; line-height: 1.3; color: #333;}
.newsCov span{ display: block; padding: 0 0 5px 0; color: #FF0000;}
@media print, screen and (min-width: 681px){
  .newsCov{ width: 980px; margin: 0 auto 20px auto; text-align: center;}
  .newsCov span{ display: inline; padding: 0;}
}

.youtube{ width: 100%; height: calc(100vh); background: rgba(0,0,0,0.9); position: fixed; top: 0; left: 0; z-index: 999999;}
.youtube video{ width: 800px; height: 450px; position: absolute; left: calc((100vw - 800px) / 2); top: calc((100vh - 450px) / 2); box-shadow: 0px 0px 4px 2px #000; }
.youtube a{ display: block; width: 25px; height: 25px; position: absolute; right: calc((100vw - 800px) / 2); top: calc((100vh - 530px) / 2); }


/* main
**********************************************************************/
main{ background: url(../img/main_bg.svg) no-repeat center bottom/1214px 350px #e7f4f6; padding: 20px 0 100px; position: relative; overflow: hidden;}

main h1{
	color: #363480;
	font-size: 22px;
	text-align: center;
	line-height: 1.3;
	position: relative;
	margin-bottom: 13px;
}
main h1 .hOneSmall{
	font-size: 18px;
}
main h1 .hOneSub{
	display: inline-block;
	font-size: 14px;
	color: #fff;
	position: sticky;
	z-index: 2;
	vertical-align: 30%;
}
main h1 .hOneSub .hOneSmall{
	font-size: 11px;
}
main h1 .hOneSub::after{
	content: "";
	position: absolute;
	top: -10%;
	left: -20%;
	width: 130px; height: 22px;
	background-color: #363480;
	transform: skewX(-22deg);
	z-index: -1;
}

main .slider .slide-item a{ display: block; background: #fff; width: 326px; margin: 0 10px; padding: 4px; box-shadow: 0 0 3px 2px #bbb;}
main .slider .slide-item a.no-link{ cursor: default; pointer-events: none;}

main .back{ z-index: 1;}
main .front{ z-index: 2;}

main .car01{ width: 50px; position: absolute; bottom: 22px; right: -100%; animation: car01 7s linear 0s infinite normal; -webkit-animation: car01 7s linear 0s infinite normal;}
  @-webkit-keyframes car01{ 0%{ right: -20%;} 100%{ right: 120%;} }
  @keyframes car01{ 0%{ right: -20%;} 99.9%, 100%{ right: 120%;} }
  
main .car02{ width: 53px; position: absolute; bottom: 22px; right: -100%; animation: car02 7s linear 3s infinite normal; -webkit-animation: car02 7s linear 3s infinite normal;}
  @-webkit-keyframes car02{ 0%{ right: -10%;} 100%{ right: 110%;} }
  @keyframes car02{ 0%{ right: -10%;} 100%{ right: 110%;} }

main .car03{ width: 39px; position: absolute; bottom: 22px; right: -100%; animation: car03 7s linear 6s infinite normal; -webkit-animation: car03 7s linear 5s infinite normal;}
  @-webkit-keyframes car03{ 0%{ right: -30%;} 100%{ right: 130%;} }
  @keyframes car03{ 0%{ right: -30%;} 100%{ right: 130%;} }

main .car04{ width: 43px; position: absolute; bottom: 6px; left: -100%; animation: car04 10s linear 0s infinite normal; -webkit-animation: car04 10s linear 0s infinite normal;}
  @-webkit-keyframes car04{ 0%{ left: -20%;} 99.9%, to{ left: 120%;} }
  @keyframes car04{ 0%{ left: -20%;} 99.9%, to{ left: 120%;} }

main .car05{ width: 30px; position: absolute; bottom: 6px; left: -100%; animation: car05 10s linear 4s infinite normal; -webkit-animation: car05 10s linear 4s infinite normal;}
  @-webkit-keyframes car05{ 0%{ left: -10%;} 100%{ left: 110%;} }
  @keyframes car05{ 0%{ left: -10%;} 100%{ left: 110%;} }

main .car06{ width: 41px; position: absolute; bottom: 6px; left: -100%; animation: car06 10s linear 8s infinite normal; -webkit-animation: car06 10s linear 8s infinite normal;}
  @-webkit-keyframes car06{ 0%{ left: -30%;} 100%{ left: 130%;} }
  @keyframes car06{ 0%{ left: -30%;} 100%{ left: 130%;} }

  /* slick */
  main .slick-list{ overflow: visible;}
  main .slick-prev,
  main .slick-next{ width: 40px; height: 40px; z-index: 2; border-radius: 3px; transition: background-color .3s linear;}
  main .slick-prev{ background: url(../common/img/slick/icon_prev_l.svg) no-repeat center/10px 18px rgba(0,0,0,.5); left: 0;}
  main .slick-next{ background: url(../common/img/slick/icon_next_l.svg) no-repeat center/10px 18px rgba(0,0,0,.5); right: 0;}
  main .slick-prev:hover,
  main .slick-next:hover{ background-color: rgba(0,0,0,1);}
  main .slick-prev::before,
  main .slick-next::before{ content: '';}
  
  main .slick-dotted.slick-slider{ margin-bottom: 0;}
  main .slick-dots{ bottom: -27px;}
  main .slick-dots li{ margin: 0 3px;}
  main .slick-dots li button{ position: relative;}
  main .slick-dots li button:before{ content: ""; background: rgba(0,0,0,.3); width: 8px; height: 8px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); border-radius: 50%; transition: background .3s linear;}
  main .slick-dots li.slick-active button:before{ background: #ff0000;}
  main .slick-dots li button:hover:before,
  main .slick-dots li button:focus:before{ background: #ff0000;}

@media print, screen and (min-width: 681px){
  main{ background-repeat: repeat-x; background-size: 1700px 490px; padding: 25px 0 125px;}

	main h1{
		font-size: 40px;
		margin-bottom: 16px;
	}
	main h1 .hOneSmall{
		font-size: 31px;
		margin-right: -12px;
	}
	main h1 .hOneSub{
		display: inline-block;
		font-size: 18px;
		padding-top: 1px;
		vertical-align: 30%;
	}
	main h1 .hOneSub .hOneSmall{
		font-size: 14px;
		margin-right: 0

	}
	main h1 .hOneSub::after{
		left: -16%;
		width: 158px; 
		height: 30px;
	}
	main h1 .hOnebr{
		display: none;
	}

  main .slider .slide-item a{ width: 600px; margin: 0 15px; padding: 6px;}
  
  main .car01{ width: 67px; bottom: 32px; animation-duration: 14s; -webkit-animation-duration: 14s;}
  main .car02{ width: 70px; bottom: 32px; animation-duration: 14s; -webkit-animation-duration: 14s;}
  main .car03{ width: 50px; bottom: 32px; animation-duration: 14s; -webkit-animation-duration: 14s;}
  main .car04{ width: 57px; bottom: 8px; animation-duration: 20s; -webkit-animation-duration: 20s;}
  main .car05{ width: 35px; bottom: 8px; animation-duration: 20s; -webkit-animation-duration: 20s;}
  main .car06{ width: 54px; bottom: 8px; animation-duration: 20s; -webkit-animation-duration: 20s;}
  
    /* slick */
    main .slick-prev,
    main .slick-next{ background-size: 15px 26px; width: 55px; height: 55px;}
    main .slick-prev{ margin: 0 0 0 -426px; left: 50%;}
    main .slick-next{ margin: 0 -426px 0 0; right: 50%;}
    main .slick-dots li{ margin: 0 5px;}
}

/* *******************************************************************

service

**********************************************************************/
.service{ background: #ffe100; padding: 13px 0px 0;}

.service .plan h2{ display: table; margin: 40px auto 30px; position: relative; font: 900 24px/30px "heisei-kaku-gothic-std"; color: #dd0716; text-align: center; letter-spacing: -1px;}
.service .plan h2::before,
.service .plan h2::after{ content: ""; width: 20px; height: 35px; position: absolute; bottom: 3px;}
.service .plan h2::before{ background: url(../img/service_h2_l.svg) no-repeat center/contain; left: -20px;}
.service .plan h2::after{ background: url(../img/service_h2_r.svg) no-repeat center/contain; right: -20px;}
.service .plan h2 .subTtl{ display: block; font-size: 16px;}
.service .plan h2 .br{ display: none;}

.service .plan .innerSec{
	background: #Fff;
	padding-bottom: 20px;
	max-width: 980px;
	margin: 0 auto;
}
.service .plan .innerSec h3{
	text-align: center;
	background: #ffc200;
	line-height: 1;
	font-size: 24px;
	padding: 15px 0;
	color: #290000;
	font-weight: bold;
}
.service .plan .innerSec h4{
	padding: 10px 0;
	line-height: 1.4;
	font-size: 18px;
	background: #171717;
	color: #fff;
	font-weight: 700;
	margin: 0 auto 15px;
	width: 80%;
	text-align: center;
	position: relative;
}
.service .plan .innerSec h4::after{
	display: block;
	content: '';
	margin: 0 auto;
	width: 0;
	height: 0;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
	border-top: 10px solid #171717;
	position: absolute;
	bottom: -10px;
	left: 0;
	right: 0;
	transition: all 0.5s ease;
}
.service .plan .innerSec .itemBox {
	padding: 20px 10px;
}
.service .plan .innerSec .itemBox .item{
	margin-bottom: 20px;
}
.service .plan .innerSec .itemBox .item a{
	display: block;
	height: 100%;
	transition: all .4s;
}
.service .plan .innerSec .itemBox .item a:hover{
	opacity: 0.4;
}
.service .plan .innerSec .itemBox .item a.head{
	padding-top: 20px;
}
.service .plan .item .head h5{
	color: #fff;
	font-weight: 700;
	font-size: 26px;
	line-height: 1;
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.service .plan .item .head h5 img{
	margin-right: 10px;
}
.service .plan .innerSec .itemBox .item a.detailBtn{
	height: 40px;
	font: 900 15px/40px "heisei-kaku-gothic-std";
	color: #fff;
	text-align: center;
	background-repeat: no-repeat;
	background-position: right 18px center ;
	background-image: url(../common/img/icon_ext_white.svg);
	background-size:11px;
}
.service .plan .description {
	padding-top: 20px;
}
.service .plan .description .aboutOpenNav {
	border:3px solid #0A0E1F;
	border-bottom:8px solid #0A0E1F;
	border-right:8px solid #0A0E1F;
	background-color:#ffffff;
	border-radius:10px;
	position:relative;
	z-index:2;
	width:90%;
	margin: 0px auto 20px;
}
.service .plan .description .aboutOpenNav li {
	position:relative;
	transition: all .8s ease 0s;
	width:100%;
	border-top:3px solid #0A0E1F;
}
.service .plan .description .aboutOpenNav li:first-child {
	border-top:none;
}
.service .plan .description .aboutOpenNav li::after {
	content:"";
	display:block;
	background:url(/noridoki/about/img/corner.svg) no-repeat 0% 0%;
	border-radius:0 0 0 0;
	position: absolute;
	top:0;
	left:0;
	z-index:2;
	width:60px;
	height:60px;
	background-size:60px auto;
}
.service .plan .description .aboutOpenNav li::before {
	content:"";
	display:block;
	width:20px;
	height:30px;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:20px auto;
	position: absolute;
	top:4px;
	left:8px;
	z-index:3;
}
.service .plan .description .aboutOpenNav li:nth-child(1)::before {
	background-image:url(/noridoki/common/img/parts/point1.svg);
}
.service .plan .description .aboutOpenNav li:nth-child(2)::before {
	background-image:url(/noridoki/common/img/parts/point2.svg);
}
.service .plan .description .aboutOpenNav li:nth-child(3)::before {
	background-image:url(/noridoki/common/img/parts/point3.svg);
}
.service .plan .description .aboutOpenNav li > div{
	padding:15px 10px;
	text-align:center;
	position:relative;
}
.service .plan .description .aboutOpenNav li .midashi{
	margin-bottom:8px;
	font-weight:700;
	transition:all 0.5s ease;
	font-size:18px;
	line-height:1.8em;
}
.service .plan .description .aboutOpenNav li .txt{
	margin-top:10px;
	transition:all 0.5s ease;
	font-size:13px;
	line-height:1.5;
}

@media print, screen and (max-width: 350px){
  .service .plan h2{ font-size: 16px;}
}

@media print, screen and (min-width: 681px){
  .service{ padding-top: 25px;}
  .service .plan h2{ font-weight: 700; letter-spacing: 0;margin: 60px auto 20px;}
  .service .plan h2::before,
  .service .plan h2::after{ bottom: -3px;}
  .service .plan h2::before{ left: -25px;}
  .service .plan h2::after{ right: -25px;}
  .service .plan h2 .subTtl{ margin: 0 0 5px; font-size: 21px;}
	.service .plan h2 .br{ display: inline;}
	.service .plan h2 br{ display: none;}
  .bannerArea ul{ text-align: center;}
  .bannerArea ul li{ display: inline-block;}
  .bannerArea ul li a{ transition: 0.5s; }
  .bannerArea ul li a:hover{ opacity: 0.6; }
  .bannerArea ul li img{ width: 95%; }

	.service .plan .innerSec h3 br{
		display: none;
	}
	.service .plan .innerSec h4{
		width: 100%;
		line-height: 40px;
	}
	.service .plan .innerSec h4 br{
		display: none;
	}
	
	.service .plan .innerSec .itemBox {
		padding: 40px 40px;
	}
	.service .plan .innerSec .itemBox .itemBoxInner{
		display: flex;
		justify-content: space-between;
	}
	.service .plan .innerSec .itemBox .item{
		margin-bottom: 40px;
		width: 48%;
	}
	.service .plan .innerSec .itemBox .itemBoxInner .item a{
		height: auto;
	}
	.service .plan .innerSec .itemBox .item a.detailBtn{
		height: 50px;
		font: 900 16px/50px "heisei-kaku-gothic-std";
	}
	.service .plan .description .aboutOpenNav {
		margin-top:15px;
		margin-bottom: 30px;
		background:#ffffff;
	}
	.service .plan .description .aboutOpenNav li {
		border-left:3px solid #0A0E1F;
	}
	.service .plan .description .aboutOpenNav li:first-child {
		border-left:none;
	}
	.service .plan .description .aboutOpenNav li::after {
		width:72px;
		height:72px;
		background-size:72px auto;
	}
	.service .plan .description .aboutOpenNav li > div{
		padding: 25px 10px 20px;
	}
	.service .plan .description .aboutOpenNav li a {
		font-size:20px;
		line-height:1.2em;
		text-align:center;
	}
	.service .plan .description .aboutOpenNav li::before {
		content:"";
		display:block;
		width:24px;
		height:30px;
		background-repeat:no-repeat;
		background-position:50% 50%;
		background-size:22px auto;
		position: absolute;
		top:8px;
		left:10px;
		z-index:3;
	}
	.service .plan .description .aboutOpenNav li .midashi{
		font-size: 21px;
	}
	.service .plan .description .aboutOpenNav li .txt{
		font-size: 14px;
		letter-spacing: -0.5px;
	}
}

/* -----------------------------
NORIDOKI
------------------------------*/
.service .plan .innerSec .itemBox .item.noridoki a.head{
	background-color: #ff8752;
	background-repeat: no-repeat;
	background-position: center  bottom 20px;
	background-image: url(/noridoki/img/mv_normal_bg.png);
	background-size: contain;
	text-align: center;
	position: relative;
	padding-top: 30px;
	padding-bottom: 20px;
}
.service .plan .innerSec .noridoki h4 span{
	position: absolute;
	top:-40px;
	right: -40px;
	width: 76px;
	height: 76px;
	border-radius: 100%;
	background: #f00;
	transform: rotate(-10deg);
	padding-top: 12px;
	z-index: 2;
}
.service .plan .noridoki .head .komikomi{
	width: 240px;
}
.service .plan .noridoki .head .car{
	width: 300px;
	margin-top: -20px;
}
.service .plan .noridoki .head .logo{
	width: 90px;
	position: absolute;
	left: 50%;
	margin-left: -160px;
	bottom: 10px;
}
.service .plan .noridoki .description {
	background: #FFF1EB;
}
.service .plan .noridoki .description .detailBtn{
	background: #ff8752;
}
@media print, screen and (min-width: 681px){
	.service .plan .innerSec .itemBox .item.noridoki{
		width: 100%;
	}
	.service .plan .innerSec .itemBox .item.noridoki h4{
		width: 60%;
	}
	.service .plan .innerSec .noridoki h4 span{
		top:-40px;
		right: -90px;
		width: 140px;
		height: 140px;
		padding-top: 12px;
		line-height: 140px;
		padding-top: 0;
	}
	.service .plan .innerSec .itemBox .item.noridoki a.head{
		background-position: center bottom 20px;
		background-size: 100%;
		padding-top: 40px;
		padding-bottom: 0;
	}
	.service .plan .noridoki .head h5{
		font-size: 42px;
		margin-bottom: 12px;
		font-weight: 900;
	}
	.service .plan .noridoki .head .komikomi{
		width: 400px;
	}
	.service .plan .noridoki .head .car{
		width: 600px;
		margin-top: -40px;
	}
	.service .plan .noridoki .head .logo{
		width: 100px;
		left: 30px;
		margin-left: 0;
		bottom: 20px;
	}
	.service .plan .noridoki .description .aboutOpenNav {
		display: flex;
		justify-content: space-between;
		width: 96%;
	}
	.service .plan .noridoki .description .aboutOpenNav li {
		width:33.33%;
	}
}

/* -----------------------------
SEVENMAX
------------------------------*/
.service .plan .sevenmax .head{
	background: #45BC90;
}
.service .plan .sevenmax .head h5 img{
	width: 70px;
}
.service .plan .sevenmax .head .carbgTxt{
	width: 290px;
	margin: 0 auto;
	display: block;
	padding-top: 10px;
}
.service .plan .sevenmax .head .car{
	width: 290px;
	margin: -15px auto 0;
}
.service .plan .sevenmax .description{
	background: #F0FAF7;
}
.service .plan .innerSec .itemBox .sevenmax .description .detailBtn{
	background: #45BC90;
}
@media print, screen and (min-width: 681px){
	.service .plan .sevenmax .head{
		padding-bottom: 10px;
	}
	.service .plan .sevenmax .head h5{
		margin-bottom: 0;
	}
}

/* -----------------------------
COMICAL
------------------------------*/
.service .plan .innerSec .itemBox .item.comical a.head{
	background-repeat: no-repeat;
	background-position: left -140px bottom;
	background-image: url(/comical/images/mv.jpg);
	background-size: 170%;
	position: relative;
	height: 215px;
	display: block;
}
.service .plan .comical .head h5{
	color: #DB576C;
	justify-content: end;
	padding-right: 10px;
}
.service .plan .comical .head h5 img{
	width: 120px;
}
.service .plan .comical .head .txtImg,
.service .plan .comical .head .priceImg{
	display: block;
	position: absolute;
	right: 50%;
}
.service .plan .comical .head .txtImg{
	width: 220px;
	top: 65px;
	margin-right: -160px;
}
.service .plan .comical .head .priceImg{
	width: 210px;
	bottom: 30px;
	margin-right: -155px;
}
.service .plan .comical .description{
	background: #fffbc6;
}
.service .plan .innerSec .itemBox .comical .description .detailBtn{
	background: #f298a6;
}
@media print, screen and (min-width: 681px){
	.service .plan .innerSec .itemBox .item.comical a.head{
		height: 225px;
		background-position: left -150px bottom;
		background-size: 155%;
		padding-top: 25px;
	}
	.service .plan .comical .head h5{
		padding-right: 40px;
	}
	.service .plan .comical .head .txtImg{
		width: 240px;
		top: 65px;
		margin-right: -180px;
	}
	.service .plan .comical .head .priceImg{
		width: 230px;
		bottom: 25px;
		margin-right: -178px;
	}
}

/* -----------------------------
ハーフマックス
------------------------------*/
.service .plan .innerSec .itemBox .item.halfmax .head{
	background: #fff8dc;
	height: 215px;
	padding-top: 10px;
}
.service .plan .halfmax .head h5{
	color: #dd0716;
}
.service .plan .halfmax .head h5 img{
	width: 85px;
}
.service .plan .halfmax .head .txtImg{
	width: 270px;
	margin: -10px auto 0;
	display: block;
}
.service .plan .halfmax .head p{
	margin: 10px 0 0;
	font: 900 15px/1 "heisei-kaku-gothic-std";
	color: #009541;
	text-align: center;
	letter-spacing: -.05em;
}
.service .plan .halfmax .head p strong {
	font-weight: 900;
	color: #dd0716;
}
.service .plan .halfmax .description{
	background: #f4f3ef;
}
.service .plan .innerSec .itemBox .halfmax .description .detailBtn{
	background: #dd0716;
}
@media print, screen and (min-width: 681px){
	.service .plan .innerSec .itemBox .item.halfmax .head{
		height: 225px;
	}
	.service .plan .halfmax .head .txtImg{
		width: 300px;
	}
	.service .plan .innerSec .itemBox .halfmax .description .detailBtn{
		margin-top: 75px;
	}
}

/* -----------------------------
乗れMAX
------------------------------*/
.service .plan .innerSec .itemBox .item.noremax .head{
	background-repeat: no-repeat;
	background-position: right -20px bottom -40px;
	background-image: url(/img/noremax_bg.jpg);
	background-size: 130%;
	height: 215px;
	padding-top: 25px;
}
.service .plan .noremax .head p{
	font-size: 16px;
	color: #008080;
	font-weight: 700;
	text-align: center;
	padding-bottom: 10px;
	letter-spacing: 1px;
}
.service .plan .noremax .head h5{
	color: #cb3180;
	letter-spacing: 2px;
	font-size: 32px;
}
.service .plan .noremax .description{
	background: #d8e5e7;
}
.service .plan .innerSec .itemBox .noremax .description .detailBtn{
	background: #008080;
}
.service .plan .noremax .notes{
	font-size: 12px;
	padding: 0 20px 10px;
	text-indent: -1em;
}
@media print, screen and (min-width: 681px){
	.service .plan .innerSec .itemBox .item.noremax .head{
		height: 225px;
		background-position: right -20px bottom -70px;
		background-size: 140%;
	}
	.service .plan .noremax .head p{
		padding-bottom: 6px;
	}
}






.service .plan > div section{ margin: 10px 0 0; box-shadow: 0 1px 3px 1px rgba(0,0,0,.3);}

.service .plan > div section h3{ padding: 10px; font: 900 15px/1.3 "heisei-kaku-gothic-std"; color: #fff; text-align: center; letter-spacing: -.05em;}
.service .plan > div .half-max h3{ background: #dd0716;}
.service .plan > div .seven-max h3{ background: #009541;}
.service .plan > div .nore-max h3{ background: #008080;}
.service .plan > div section h3 > span{ display: block; background: #fff; height: 30px; margin: 0 0 10px; position: relative; border-radius: 15px; font-size: 14px; line-height: 30px;}
.service .plan > div .half-max h3 > span{ color: #dd0716;}
.service .plan > div .seven-max h3 > span{ color: #009541;}
.service .plan > div .nore-max h3 > span{ color: #008080;}
.service .plan > div section h3 > span::before{ content: ""; width: 0; height: 0; position: absolute; bottom: -6px; left: 50%; transform: translateX(-50%); border-style: solid; border-width: 6px 5px 0 5px; border-color: #fff transparent transparent transparent;}
.service .plan > div section h3 > span span{ font-size: 12px;}

.service .plan > div section h4{ display: flex; flex-direction: column; justify-content: center; align-items: center; background: #fff; height: 45px; position: relative; font: 900 16px/1.3 "heisei-kaku-gothic-std"; text-align: center; letter-spacing: -.05em;}
.service .plan > div .half-max h4{ border-bottom: 1px solid #dd0716; color: #dd0716;}
.service .plan > div .seven-max h4{ border-bottom: 1px solid #009541; color: #009541;}
.service .plan > div .nore-max h4{ border-bottom: 1px solid #008080; color: #008080;}
.service .plan > div section h4 span{ display: block; font-size: 12px; letter-spacing: -.1em;}

.service .plan > div .half-max h4::before{ content: ""; background: url(../img/service_plan01_logo.svg) no-repeat 0 0/contain; width: 67px; height: 38px; position: absolute; top: 50%; left: 8px; transform: translateY(-50%);}
.service .plan > div .seven-max h4::before{ content: ""; background: url(../img/service_plan02_logo.svg) no-repeat 0 0/contain; width: 85px; height: 39px; position: absolute; top: 50%; left: 8px; transform: translateY(-50%);}

.service .plan > div section div{ background: #fff8dc; padding: 16px 10px;}
.service .plan > div .half-max div{ border-bottom: 1px solid #dd0716;}
.service .plan > div .seven-max div{ border-bottom: 1px solid #009541;}
.service .plan > div .nore-max div{ border-bottom: 1px solid #008080;}

.service .plan > div .half-max div figure{ width: 290px; margin: -19px auto 0; position: relative;}
.service .plan > div .seven-max div ul{ display: flex; flex-wrap: wrap; justify-content: space-between; align-content: space-between; max-width: 290px; margin: 0 auto;}
.service .plan > div .seven-max div ul li{ width: calc((100% / 3) - 3px); margin: 2px 0;}
.service .plan > div .nore-max div dl{ max-width: 290px; background: #ffe100; margin: 0 auto; padding: 10px;}
.service .plan > div .nore-max div dl dt{ padding: 3px; background: #cb3180; font: 700 13px/1 "heisei-kaku-gothic-std"; color: #fff;}
.service .plan > div .nore-max div dl dt:nth-of-type(2){ margin: 5px 0 0 0;}
.service .plan > div .nore-max div dl dd{ background: url(../img/service_plan03_icon.svg) no-repeat 0 center/12px 11px; margin: 5px 0 0; padding: 1px 0 0 16px; font: 700 12px/1 "heisei-kaku-gothic-std"; color: #ca3180;}
.service .plan > div .nore-max div ul{ max-width: 290px; background: #ffe100; margin: 0 auto; padding: 10px 15px 15px;}
.service .plan > div .nore-max div ul li{ background: url(../img/service_plan03_icon.svg) no-repeat 0 center/12px 11px; margin: 5px 0 0; padding: 1px 0 0 16px; font: 700 12px/1 "heisei-kaku-gothic-std"; color: #ca3180;}

.service .plan > div section div p{ margin: 10px 0 0; font: 900 15px/1 "heisei-kaku-gothic-std"; color: #009541; text-align: center; letter-spacing: -.05em;}
.service .plan > div .nore-max div p{ color: #008080;}
.service .plan > div section div p strong{ font-weight: 900; color: #dd0716;}
.service .plan > div .nore-max div p strong{ color: #ca3180;}
.service .plan > div section > p{ background: #fff; padding: 10px; font-size: 13px; line-height: 1.5;}
.service .plan > div section > a{ display: block; height: 40px; font: 900 15px/40px "heisei-kaku-gothic-std"; color: #fff; text-align: center;}
.service .plan > div .half-max > a{ background: #dd0716;}
.service .plan > div .seven-max > a{ background: url(../common/img/icon_ext_white.svg) no-repeat right 18px center/11px 9px #009541;}
.service .plan > div .nore-max > a{ background: url(../common/img/icon_ext_white.svg) no-repeat right 18px center/11px 9px #008080;}

@media print, screen and (max-width: 350px){
  .service .plan > div .half-max h4::before{ width: 50px; height: 28px;}
  .service .plan > div .seven-max h4::before{ width: 61px; height: 28px;}
}

@media print, screen and (min-width: 681px){
  .service .plan > div{ display: flex; justify-content: space-between; width: 980px; margin: 30px auto 0;}
  .service .plan > div section{ width: 320px; margin: 0;}

  .service .plan > div section h3{ font-size: 18px;}
  .service .plan > div section h3 > span{ height: 40px; border-radius: 20px; font-size: 16px; line-height: 40px;}
  .service .plan > div section h3 > span::before{ bottom: -7px; border-width: 7px 6px 0 6px;}

  .service .plan > div section h4{ height: 56px; font-size: 18px;}
  .service .plan > div section h4 span{ font-size: 13px;}
  .service .plan > div .half-max h4::before,
  .service .plan > div .seven-max h4::before{ display: none;}

  .service .plan > div section div{ height: 247px; padding: 0 15px; position: relative;}
  .service .plan > div .half-max div{ padding-top: 76px;}
  .service .plan > div .seven-max div{ padding-top: 98px;}
  .service .plan > div .nore-max div{ padding-top: 16px;}
  
  .service .plan > div .half-max div::before{ content: ""; background: url(../img/service_plan01_logo.svg) no-repeat 0 0/contain; width: 134px; height: 76px; position: absolute; top: 12px; left: 50%; transform: translateX(-50%);}
  .service .plan > div .seven-max div::before{ content: ""; background: url(../img/service_plan02_newlogo.svg) no-repeat 0 0/contain; width: 149px; height: 68px; position: absolute; top: 15px; left: 50%; transform: translateX(-50%);}
  
  .service .plan > div .half-max div figure{ width: 300px; margin: 0 auto;}
  .service .plan > div .seven-max div ul{ width: 290px; height: 103px;}
  .service .plan > div .nore-max div dl{ max-width: none; padding: 15px;}
  .service .plan > div .nore-max div dl dt{ padding: 7px;}
  .service .plan > div .nore-max div dl dt:nth-of-type(2){ margin: 6px 0 0 0;}
  .service .plan > div .nore-max div dl dd{ margin: 10px 0 0; font-size: 14px;}
  .service .plan > div .nore-max div dl dd:first-of-type{ margin-top: 13px;}

  .service .plan > div section div p{ margin-top: 15px; font-size: 17px;}
  .service .plan > div section > p{ padding: 18px 20px; font-size: 14px; line-height: 1.4;}
  .service .plan > div section > a{ height: 50px; font-size: 16px; line-height: 50px;}
}


.service .ranking{ margin: 20px 0 0;padding: 0 16px;}
.service .ranking h2{ font: 900 24px/30px "heisei-kaku-gothic-std"; color: #2e919e; text-align: center;margin: 40px auto 20px;}
.service .ranking h2 span{ display: block;}

.service .ranking > ul{ margin: 12px 0 0;}
.service .ranking > ul::after{ content: ""; display: block; height: 0; visibility: hidden; clear: both;}

.service .ranking > ul li a{ display: block; width: 33.3333333333%; height: 40px; float: left; border: solid 1px #19857a; font: 700 14px/38px "heisei-kaku-gothic-std"; color: #19857a; text-align: center;}
.service .ranking > ul li:first-child a{ border-right: none;}
.service .ranking > ul li:last-child a{ border-left: none;}

.service .ranking > ul li a.on{ position: relative; color: #fff;}
.service .ranking > ul li a.tab01.on{ background: #F47B45; border-color:#F47B45;}
.service .ranking > ul li a.tab02.on{ background: #009541; border-color:#009541;}
.service .ranking > ul li a.tab03.on{ background: #dd0716; border-color:#dd0716;}

.service .ranking > ul li a.on::before{ content: ""; width: 0; height: 0; position: absolute; bottom: -7px; left: 50%; transform: translateX(-50%); border-style: solid; border-width: 8px 7px 0 7px;}
.service .ranking > ul li a.tab01.on::before{ border-color: #F47B45 transparent transparent transparent;}
.service .ranking > ul li a.tab02.on::before{ border-color: #009541 transparent transparent transparent;}
.service .ranking > ul li a.tab03.on::before{ border-color: #dd0716 transparent transparent transparent;}

.service .ranking > div{ opacity: 0; height: 0; margin: 0 -16px; padding: 0 11px; overflow: hidden; counter-reset: number;}
.service .ranking > div.on{ opacity: 1; height: auto; padding-bottom: 41px;}

/* .service .ranking .tab03 .courseMake{
	display: flex;
	flex-wrap: wrap;
}
.service .ranking .tab03 .slide-item{
	width: 50%;
} */
/* .service .ranking .tab03 .slide-item:nth-child(n + 6){
	display: none;
} */
@media print, screen and (min-width: 681px){
  .service .ranking{ width: 980px; margin: 40px auto 0;padding: 0;}
  
  .service .ranking h2{ position: relative;margin: 80px auto 20px;}
  .service .ranking h2::before,
  .service .ranking h2::after{ content: ""; background: rgba(46,145,158,.5); width: 160px; height: 1px; position: absolute; top: 0px;bottom: 0;margin: auto;}
  .service .ranking h2::before{ left: 0;}
  .service .ranking h2::after{ right: 0;}
  .service .ranking h2 span{ display: inline; margin: 0 8px 0 0;}
  
  .service .ranking > ul{ margin-top: 25px;}
  .service .ranking > ul li a{ height: 45px; float: left; font-size: 18px; line-height: 43px;}
  
  .service .ranking > div{ width: 1016px; margin: 0 -18px; padding: 0 13px;}
  .service .ranking > div.on{ padding-bottom: 65px;}
}

.service .ranking .slide-item a{ display: block; background: #fff; margin: 0 5px; padding: 8px 0 10px; position: relative; box-shadow: 0 1px 3px 1px rgba(0,0,0,.3); color: #333;}
.service .ranking .slide-item a:hover{ box-shadow: none; transform: translateY(1px);}

.service .ranking .slide-item a::before{ counter-increment: number 1; content: counter(number) ""; width: 29px; height: 23px; position: absolute; top: -15px; left: 50%; transform: translateX(-50%); font: 700 12px/32px "din-2014-narrow"; color: #fff; text-align: center; z-index: 3;}
.service .ranking .slide-item:nth-child(1) a::before{ background: url(../img/service_icon_rank01.svg) no-repeat center/contain;}
.service .ranking .slide-item:nth-child(2) a::before{ background: url(../img/service_icon_rank02.svg) no-repeat center/contain;}
.service .ranking .slide-item:nth-child(3) a::before{ background: url(../img/service_icon_rank03.svg) no-repeat center/contain;}
.service .ranking .slide-item:nth-child(n+4) a::before{ background: url(../img/service_icon_rank04.svg) no-repeat center/contain;}

.service .ranking .slide-item a:hover::after{ content: ""; width: calc(100% - 1px); height: calc(100% - 1px); border-style: solid; border-width: 1px; position: absolute; top: 0; left: 0; z-index: 2;}
.service .ranking .tab01 .slide-item a:hover::after{ border-color: #F47B45;}
.service .ranking .tab02 .slide-item a:hover::after{ border-color: #dd0716;}
.service .ranking .tab03 .slide-item a:hover::after{ border-color: #009541;}

.service .ranking .slide-item a img{ display: table; width: 146px; margin: 0 auto;}
.service .ranking .tab01 .slide-item img{width: 136px;}

.service .ranking .slide-item a h3{ background: #f2f2f2; padding: 6px 10px; font-size: 15px; line-height: 15px; text-align: center;}
.service .ranking .slide-item a h3 span{ display: block; font-size: 13px;}

.service .ranking .slide-item a .grade{ padding: 6px 10px; font-size: 11px; line-height: 1; text-align: center;}

.service .ranking .slide-item a .price{ padding: 6px 10px; border-top: solid 1px #ccc; font: 900 13px/1 "heisei-kaku-gothic-std"; text-align: center; letter-spacing: -.05em;}
.service .ranking .tab01 .slide-item a .price{ color: #F47B45;}
.service .ranking .tab02 .slide-item a .price{ color: #009541;}
.service .ranking .tab03 .slide-item a .price{ color: #dd0716;}

.service .ranking .slide-item a .price strong{ font-size: 21px;}
.service .ranking .slide-item a .price span{ text-align: center;}
.service .ranking .slide-item a .price span:first-of-type{ display: block; margin: 0 0 3px; font: normal 11px/1 "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo, Osaka,"ＭＳ Ｐゴシック","MS PGothic","sans-serif";}
.service .ranking .slide-item a .price span:last-of-type{ margin: 0 -.3em; font-weight: 300; font-size: 10px;}

.service .ranking .slide-item a dl{ padding: 6px 10px; border-top: solid 1px #ccc;}

.service .ranking .slide-item a dl dt{ font-size: 12px; }
.service .ranking .slide-item a dl dt::before{ content: "■";}
.service .ranking .tab01 .slide-item a dl dt::before{ color: #F47B45;}
.service .ranking .tab02 .slide-item a dl dt::before{ color: #009541;}
.service .ranking .tab03 .slide-item a dl dt::before{ color: #dd0716;}

.service .ranking .slide-item a dl dd{ font-size: 12px; }
.service .ranking .slide-item a dl dd span{ margin: 0 -.3em; font-size: 11px; }

.service .ranking .slide-item a div{ height: 30px; margin: 0 10px; font-weight: bold; font-size: 12px; line-height: 28px; text-align: center;}
.service .ranking .tab01 .slide-item a div{ border: solid 1px #F47B45; color: #F47B45;}
.service .ranking .tab02 .slide-item a div{ border: solid 1px #009541; color: #009541;}
.service .ranking .tab03 .slide-item a div{ border: solid 1px #dd0716; color: #dd0716;}

.service .ranking .slide-item a:hover div{ color: #fff; transition: background .3s linear, border-color .3s linear;}
.service .ranking .tab01 .slide-item a:hover div{ background: #F47B45;}
.service .ranking .tab02 .slide-item a:hover div{ background: #009541;}
.service .ranking .tab03 .slide-item a:hover div{ background: #dd0716;}


@media print, screen and (max-width: 374px){
  .service .ranking .slide-item a{ width: 200px;}
}

@media print, screen and (min-width: 681px){
  .service .ranking .slide-item a{ padding: 8px 0 15px;}
  .service .ranking .slide-item a::before{ width: 34px; height: 27px; top: -18px; font-size: 14px; line-height: 38px;}
  .service .ranking .slide-item a img{ width: 188px;}
	.service .ranking .tab01 .slide-item img{width: 170px;}
  .service .ranking .slide-item a h3,
  .service .ranking .slide-item a .grade,
  .service .ranking .slide-item a .price,
  .service .ranking .slide-item a dl{ padding-left: 15px;}
  .service .ranking .slide-item a div{ margin: 0 15px;}
}


.service .slick-list{ padding: 27px 0 5px;}
.service .slick-prev,
.service .slick-next{ width: 26px; height: 26px; z-index: 2; transition: background-color .3s linear;}
.service .slick-prev{ background: url(../common/img/slick/icon_prev_s.svg) no-repeat center/6px 8px rgba(0,0,0,.3); left: -11px;}
.service .slick-next{ background: url(../common/img/slick/icon_next_s.svg) no-repeat center/6px 8px rgba(0,0,0,.3); right: -11px;}
.service .slick-prev:hover,
.service .slick-next:hover{ background-color: rgba(0,0,0,1);}
.service .slick-prev::before,
.service .slick-next::before{ content: '';}

.service .slick-dotted.slick-slider{ margin-bottom: 0;}
.service .slick-dots{ bottom: -28px;}
.service .slick-dots li{ margin: 0 3px;}
.service .slick-dots li button{ position: relative;}
.service .slick-dots li button:before{ content: ""; background: rgba(0,0,0,.3); width: 8px; height: 8px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); border-radius: 50%; transition: background .3s linear;}

.service .tab01 .slick-dots li.slick-active button:before,
.service .tab01 .slick-dots li button:hover:before,
.service .tab01 .slick-dots li button:focus:before{ background: #F47B45;}

.service .tab02 .slick-dots li.slick-active button:before,
.service .tab02 .slick-dots li button:hover:before,
.service .tab02 .slick-dots li button:focus:before{ background: #ff0000;}

.service .tab03 .slick-dots li.slick-active button:before,
.service .tab03 .slick-dots li button:hover:before,
.service .tab03 .slick-dots li button:focus:before{ background: #009541;}

@media print, screen and (max-width: 374px){
  .service .slick-list{ padding-top: 27px!important;}
  .service .slick-prev{ left: 0;}
  .service .slick-next{ right: 0;}
  .service .slick-dots li{ margin: 0 1px;}
}

@media print, screen and (min-width: 681px){
  .service .slick-list{ padding-top: 30px;}
  .service .slick-prev{ left: -13px;}
  .service .slick-next{ right: -13px;}
  .service .slick-dots{ bottom: -38px;}
  .service .slick-dots li{ margin: 0 5px;}
}


/* banner
**********************************************************************/
.bnr{ padding: 20px 16px 10px;}
.bnr ul::after{ display: block; content: ""; height: auto; visibility: hidden; clear: both;}
.bnr ul li a{ width: calc(50% - 5px); margin: 0 0 10px; float: right; box-shadow: 0 0 2px 2px #ddd;}
.bnr ul li:first-child a{
	padding: 4px;
	background: #fff;
}
.bnr ul li:nth-child(odd) a{ float: left; clear: both;}
.bnr .ac a{ display: block; width: 100%; margin: 0; box-shadow: 0 0 2px 2px #ddd;}

@media print, screen and (min-width: 681px){
  .bnr{ padding: 45px calc((100% - 980px)/2) 15px;}
  .bnr::after{ display: block; content: ""; height: auto; visibility: hidden; clear: both;}
  .bnr ul{ 
		width: 474px;
		margin: 0 auto;
	}
  .bnr ul li a{ width: 222px; margin: 0 0 30px 0; float: left;}
	.bnr ul li:first-child a{
		padding: 6px;
	}
  .bnr ul li:nth-child(odd) a{ margin: 0 30px 30px 0; clear: none;}
  .bnr ul li:last-child a{ margin-right: 0;}
  .bnr .ac{ width: 474px; float: left;}
}

@media print, screen and (min-width: 768px){
  .bnr ul{
		width: auto;
		max-width: 860px;
		display: flex;
		justify-content: space-around;
	}
	.bnr ul li:nth-child(odd) a {
		margin: 0 ;
		clear: none;
	}
}



/*-----------------------------------------------------------------

	column

-----------------------------------------------------------------*/

.column{
	padding: 40px 0;
}
.column h2 {
	font-size: 24px;
	line-height: 1.5;
	font-weight: 900;
	text-align: center;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	transition: all 0.5s ease;
}
.column .fukidashiBox {
	width: 250px;
	margin: 0 auto 10px;
	padding: 2px;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	font-weight: 700;
	color: #ffffff;
	text-align: center;
	background: #171717;
	position: relative;
	display: block;
}
.column .fukidashiBox::after {
	display: block;
	content: '';
	margin: 0 auto;
	width: 0;
	height: 0;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
	border-top: 10px solid #171717;
	position: absolute;
	bottom: -10px;
	left: 0;
	right: 0;
	transition: all 0.5s ease;
}


.column .columnList {
	width:100%;
	margin:20px 0 5px;
	padding:0 20px 10px;
	overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  display: -ms-flexbox;
  display: flex; 
}
.column .columnList li {
	flex:0 0 70%;
	background:#ffffff;
	border-radius:8px;
	position:relative;
	overflow:hidden;
	margin-right: 10%;
	vertical-align: top;
	display: inline-block;
}
.column .columnList li:last-child{
	margin-right: 0;
}
.column .columnList li .in{
	padding:10px 0px 65px;
}
.column .columnList li .columnimg{
	overflow:hidden;
}
.column .columnList li .columnimg a{
	display: block;
	height: 100%;
}
.column .columnList li .columnimg img{
	vertical-align:bottom;
	transition: all 0.5s ease;
}
.column .columnList li .columnimg:hover img{
	transform: scale(1.1, 1.1);
	opacity:0.6;
}
.column .columnList li .category{
	font-size:14px;
	background:#3C3C3C;
	line-height: 20px;
	display: inline-block;
}
.column .columnList li .category a{
	padding: 0 15px;
	color:#fff;
	transition: all .4s;
}
.column .columnList li .category a:visited{
	color:#fff;
}
.column .columnList li .category a:hover{
	opacity: 0.5;
}
.column .columnList li .subHeading{
	padding:3px 0;
	font-size:18px;
	line-height:1.4;
	font-weight:700;
	letter-spacing: 0;
}
.column .columnList li .subHeading a{
	padding:3px 0;
	color:#171717;
	text-decoration:none;
	transition: all 0.5s ease;
}
.column .columnList li .subHeading a:hover{
	opacity:0.4;
}

.column .columnList li .tag{
	font-size:12px;
	line-height:1.8;
}
.column .columnList li .tag a{
	display:inline-block;
	margin-right:1em;
	text-decoration:none;
}
.column .columnList li .editor {
	padding:20px 25px 20px 80px;
	font-size:12px;
	line-height:1.5;
	position:absolute;
	bottom:0;
	left:0;
}
.column .columnList li .editor figure{
	width:46px;
	height:46px;
	border-radius:100%;
	position:absolute;
	top:22px;
	left:25px;
}
.column .columnList li .editor .date{
	color:#626262;
}
.column .columnList li .editor .name{
	font-weight:700;
	color:#3C3C3C;
}
.column .btn.w400 {
	max-width: 400px;
}
.column .btn {
	display: block;
	width: 85%;
	padding: 0 15px;
	margin: 20px auto 0;
	font-size: 1.4em;
	line-height: 48px;
	font-weight: 700;
	color: #F47B45;
	text-align: center;
	text-decoration: none;
	background: #ffffff;
	border: 2px solid #F47B45;
	border-radius: 10px;
	overflow: hidden;
	position: relative;
	transition: all 0.5s ease;
}
.column .btn:hover{
	opacity: 0.4;
}
.column .btn::after {
	display: block;
	content: '';
	margin: auto;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(
45deg);
	transform: rotate(
45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	right: 5%;
	border-top: 2px solid #F47B45;
	border-right: 2px solid #F47B45;
	transition: all 0.5s ease;
}

/*----------------------------------------------------------
	Display：920px →（ pc ）
----------------------------------------------------------*/

@media screen and (min-width:920px) {
	.column {
		padding-bottom: 60px;
	}
	.column .fukidashiBox {
    width: 250px;
    margin: 0 auto 10px;
    padding: 5px;
	}
	.column .columnList{
		width:90%;
		max-width:1400px;
		margin:30px auto 20px;
		padding:0;
		text-align: center;
		overflow-x: inherit;
	}
	.column .columnList li{
		flex:0 0 20%;
		text-align: left;
		margin-right: 0;
		padding-right: 20px;
		border-radius: 0;
	}
	.column .columnList li:last-child{
		padding-right: 0;
	}
	.column .columnList li .subHeading{
		font-size: 16px;
		padding: 6px 0;
	}
	.column .columnList li .columnimg{
		border-radius: 10px 10px 0 0;
	}
	.column .columnList li .editor {
		padding:25px 30px 25px 59px;
	}
	.column .columnList li .editor figure{
		left: 0;
	}
	.column .btn {
    line-height: 58px;
		margin-top: 40px;
	}
}

/*-----------------------------------------------------------------

	shop

-----------------------------------------------------------------*/
.shop{
	padding: 30px 0 0;
	border-top: 1px solid #ccc;
}
.shop h2{
	line-height: 36px;
	font-size: 18px;
	background: #171717;
	color: #fff;
	font-weight: 700;
	margin: 0 auto;
	width: 320px;
	text-align: center;
	position: relative;
}
.shop h2::after {
	display: block;
	content: '';
	margin: 0 auto;
	width: 0;
	height: 0;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
	border-top: 10px solid #171717;
	position: absolute;
	bottom: -10px;
	left: 0;
	right: 0;
	transition: all 0.5s ease;
}
.shop .subTtl{
	padding: 20px;
}
.shop .subTtl br{
	display: none;
}
.shop .map{
	background: #F1F1F1;
}
.shop .map a{
	padding: 20px 0;
	display: block;
	height: 100%;
	position: relative;
	text-align: center;
	transition: all .4s;
}
.shop .map a:hover{
	opacity: 0.4;
}
.shop .map a p{
	position: absolute;
	top: 50px;
	left: 50%;
	font-size: 14px;
	margin-left: -150px;
	background: #dd0716;
	color: #fff;
	font-weight: 700;
	width: 130px;
	line-height: 30px;
}
.shop .map a p::before {
	content: "";
	background: url(../common/img/icon_arrow_white01.svg) no-repeat center/contain;
	width: 8px;
	height: 11px;
	position: absolute;
	right: 10px;
	top: 0;
	bottom: 0;
	margin: auto;
}
.shop .map a img{
	width: 300px;
}
@media screen and (min-width:920px){
	.shop{
		padding: 60px 0 0;
	}
	.shop h2{
		line-height: 40px;
	}
	.shop .subTtl{
		text-align: center;
		font-size: 16px;
	}
	.shop .subTtl br{
		display: inline;
	}
	.shop .map a{
		width: 500px;
		margin: 0 auto;
		padding: 40px 0;
	}
	.shop .map a p{
		font-size: 18px;
		margin-left: -275px;
		width: 180px;
		line-height: 36px;
		top: 100px;
	}
	.shop .map a img{
		width: 100%;
	}
}

/*-----------------------------------------------------------------
	MVスライダーバナー：ジョイカルアプリ
-----------------------------------------------------------------*/
main .slider .slide-item.joycal-app .pcWrap{
	display: none;
}
main .slider .slide-item.joycal-app {
	display: block;
	background: #fff;
	width: 326px;
	margin: 0 10px;
	padding: 4px;
	box-shadow: 0 0 3px 2px #bbb;
}
main .slider .slide-item.joycal-app .btnArea{
	display: flex;
	justify-content: center;
	gap:13px;
	height: 54px;
	background: #293337;
	text-align: center;
	padding-top: 5px;
}
main .slider .slide-item.joycal-app .btnArea a{
	display: flex;
	justify-content:center;
	align-items:center;
	box-shadow: none;
	border-radius: 5px;
	width: 134.5px;
	height: 40px;
	padding: 0;
	margin: 0;
}
main .slider .slide-item.joycal-app .btnArea a img{
	width: 100px;
}

@media print, screen and (min-width: 768px){
	main .slider .slide-item.joycal-app {
		width: 600px;
		margin: 0 15px;
		padding: 6px;
	}
	main .slider .slide-item.joycal-app .btnArea{
		height: 101px;
		gap: 20px;
	}
	main .slider .slide-item.joycal-app .btnArea a{
		display: flex;
		justify-content:center;
		align-items:center;
		box-shadow: none;
		border-radius: 5px;
		width: 44%;
		height: 80%;
	}
	main .slider .slide-item.joycal-app .btnArea a img{
		width: 80%;
	}
}
@media print, screen and (min-width: 960px){
	main .slider .slide-item.joycal-app .spWrap{
		display: none;
	}
	main .slider .slide-item.joycal-app .pcWrap{
		display: block;
	}
}

/*-----------------------------------------------------------------
	サイト内バナー：ジョイカルアプリ
-----------------------------------------------------------------*/
.bnrApp{
	padding: 30px 20px 0;
}
.bnrApp .pcWrap{
	display: none;
}
.bnrApp .spWrap .btnArea{
	display: flex;
	justify-content: center;
	gap:13px;
	height: 54px;
	background: #293337;
	text-align: center;
	padding-top: 5px;
}
.bnrApp .spWrap .btnArea a{
	display: flex;
	background-color: #fff;
	justify-content:center;
	align-items:center;
	box-shadow: none;
	border-radius: 5px;
	width: 44%;
	height: 40px;
	padding: 0;
	margin: 0;
}
.bnrApp .spWrap .btnArea a img{
	width: 100px;
}
@media print, screen and (min-width: 768px){
	.bnrApp .spWrap{
		width: 600px;
		margin: auto;
	}
	.bnrApp .spWrap .btnArea{
		height: 101px;
		gap: 20px;
	}
	.bnrApp .spWrap .btnArea a{
		display: flex;
		justify-content:center;
		align-items:center;
		box-shadow: none;
		border-radius: 5px;
		width: 44%;
		height: 80%;
	}
	.bnrApp .spWrap .btnArea a img{
		width: 80%;
	}
}
@media print, screen and (min-width: 960px){
	.bnrApp{
		padding: 50px 0 20px;
	}
	.bnrApp .spWrap{
		display: none;
	}
	.bnrApp .pcWrap{
		display: block;
		margin: auto;
		max-width: 980px;
	}
}

/*-----------------------------------------------------------------
	フッターバナー：ジョイカルアプリ
-----------------------------------------------------------------*/
.bnrAppFooter{
	margin-top: 16px;
	border-top: 1px solid #d1d1d1;
	padding: 24px 16px;
}
.bnrAppFooter .pcWrap{
	display: none;
}
.bnrAppFooter .spWrap .btnArea{
	display: flex;
	justify-content: center;
	gap:13px;
	height: 54px;
	background: #293337;
	text-align: center;
	padding-top: 5px;
}
.bnrAppFooter .spWrap .btnArea a{
	display: flex;
	background-color: #fff;
	justify-content:center;
	align-items:center;
	box-shadow: none;
	border-radius: 5px;
	width: 44%;
	height: 40px;
	padding: 0;
	margin: 0;
}
.bnrAppFooter .spWrap .btnArea a img{
	width: 90%;;
}
@media print, screen and (min-width: 768px){
	.bnrAppFooter .spWrap{
		width: 600px;
		margin: auto;
	}
	.bnrAppFooter .spWrap .btnArea{
		height: 101px;
		gap: 20px;
	}
	.bnrAppFooter .spWrap .btnArea a{
		display: flex;
		justify-content:center;
		align-items:center;
		box-shadow: none;
		border-radius: 5px;
		width: 44%;
		height: 70%;
		margin-top: 10px;
	}
	.bnrAppFooter .spWrap .btnArea a img{
		width: 90%;
	}
}
@media print, screen and (min-width: 960px){
	.bnrAppFooter{
		margin-top: 0;
		padding: 50px 0 ;
	}
	.bnrAppFooter .spWrap{
		display: none;
	}
	.bnrAppFooter .pcWrap{
		display: block;
		margin: auto;
		max-width: 762px;
	}
}