@charset "utf-8";

/*------------- PC/SP 出し分け -------------*/

.sp_sp {
      display: none;
}

/* contents
---------------------------------------*/

.title h1 {
    text-align: center;
    width: auto;
    font-size: 44px;
    padding: 0 0 0 104px;
    margin: 45px auto;
    position: relative;
    display: table;
	background: none;
    border-bottom: none;
    font-weight: normal;
}

.icon-safety {
	background: url(../images/ic001.png?20170206) no-repeat 0 0;
    background-size: 88px 88px;
    position: absolute;
    width: 88px;
    height: 88px;
	top: -12px;
    left: -2px;
}

.under-title h1 {
    text-align: center;
    width: auto;
    font-size: 42px;
    margin: 10px auto 35px;
}

.under-title .index-title {
    font-size: 24px;
    padding: 0 0 0 60px;
    margin: 45px auto 0;
    position: relative;
    display: table;
}

.under-title .icon-safety {
    background-size: 46px 45px;
    width: 46px;
    height: 45px;
    top: -6px;
    left: 0;
}

.lead {
    text-align: center;
    padding: 26px 0;
    font-size: 16px;
    background: #ebe9e2;
}

.lead .title {
    font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
}

.box {
   text-align: center;
   padding: 60px 0;
   background: #f6f5f1;
   overflow: hidden;
}

.box.odd {
	background: #ebe9e2;
}

.box h2 {
    color: #e45833;
    font-size: 40px;
    margin: 0 0 18px;
}

.box h3 {
    width: auto;
    font-size: 32px;
    padding: 0 0 0 46px;
    margin: 50px auto 15px;
    position: relative;
    display: table;
}

h3 .icon-note {
    background: url(../images/ic003.png) no-repeat 0 0;
    background-size: 46px 46px;
    position: absolute;
    width: 46px;
    height: 46px;
    left: -5px;
}

.step-guide {
    width: 840px;
    margin: 0 auto;
    overflow: hidden;
    background: #fff;
    padding: 30px 30px 10px;
}

.box .step-guide + h2 {
    margin-top: 30px;
}

.step-guide #f-01,
.step-guide #f-02,
.step-guide #f-03 {
    min-height: 304px;
}

.tab-content {
    overflow: hidden;
}

.step-note {
    margin-top: 10px;
    text-align: left;
}

.tab {
    display: table;
    margin: 0 auto 30px;
	width: 840px;
}

.tab li{
    float: left;
    width: 195px;
	margin: 0 10px;
}

.tab.tri-step li{
    width: 32%;
	margin: 0 2% 0 0;
}

.tab li:first-child{
	margin-left: 0;
}

.tab li:last-child{
	margin-right: 0;
}

.tab a {
    background: #e3e0d6;
    width: 100%;
    height: 50px;
    line-height: 51px;
    float: left;
    text-decoration: none;
    color: #333;
    position: relative;
    font-size: 22px;
	-webkit-box-shadow: 0 1px #bfbfbf;
    -moz-box-shadow: 0 1px #bfbfbf;
    -o-box-shadow: 0 1px #bfbfbf;
    -ms-box-shadow: 0 1px #bfbfbf;
	box-shadow: 0 1px #bfbfbf;
}

.tab a:hover, .tab li.select a{
  background: #fed600;;
}

.tab a::before {
    content: "";
    position: absolute;
    top: 50%;
    background-color: #fff;
    margin-top: -25px;
    border-width: 25px 0 25px 10px;
    border-style: solid;
    border-color: #e3e0d6 #e3e0d6 #e3e0d6 transparent;
    left: -10px;
    -webkit-box-shadow: 0 1px #bfbfbf;
    -moz-box-shadow: 0 1px #bfbfbf;
    -o-box-shadow: 0 1px #bfbfbf;
    -ms-box-shadow: 0 1px #bfbfbf;
    box-shadow: 0 1px #bfbfbf;
}

.tab a:hover::before, .tab li.select a::before {
  border-color: #fed600 #fed600 #fed600 transparent;
}

.tab a::after {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -25px;
    border-top: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 10px solid #e3e0d6;
    right: -10px;
}

.tab li:first-child a::before{
  content: none;
}

.tab li:last-child a::after{
  content: none;
}

.tab a:hover::after, .tab li.select a::after{
  border-left-color: #fed600;
}

.tab .current,
.tab .current:hover{
  font-weight: bold;
  background: none;
}

.tab .current::after,
.tab .current::before{
  content: normal;
}

.tab-5 li {
    width: 152px;
}

.svg-content, .pic-content {
    float: left;
    width: 400px;
    height: 264px;
	position: relative;
}

#car1 {
    animation: animation1 6s linear infinite;
    -webkit-animation: animation1 6s linear infinite;
    position: absolute;
    width: 81px;
    height: 41.6px;
    top: 85px;
    right: 0;
	z-index: 100;
}

@keyframes animation1 {
	0%{
        transform: translate(0,0);
    }
	10% {
		 transform: translate(-30px,0) rotate(0);
	}
	25% {
		 transform: translate(-90px,9px) rotate(-15deg);
	}
	35% {
		 transform: translate(-133px,18px) rotate(0);
	}
	50%{
		 transform: translate(-186px,18px);
    }
	100%{
		 transform: translate(-186px,18px);
    }
}

@-webkit-keyframes animation1 {
	0%{
        -webkit-transform: translate(0,0);
    }
	10% {
		 -webkit-transform: translate(-30px,0) rotate(0);
	}
	25% {
		 -webkit-transform: translate(-90px,9px) rotate(-15deg);
	}
	35% {
		 -webkit-transform: translate(-133px,18px) rotate(0);
	}
	50%{
		 -webkit-transform: translate(-186px,18px);
    }
	100%{
		 -webkit-transform: translate(-186px,18px);
    }
}

.extended-line {
    position: absolute;
    bottom: 20px;
    right: 62px;
	width: 300px;
    height: 150px;
}

.extended-line2 {
    position: absolute;
    bottom: 12px;
    right: 20px;
	width: 300px;
    height: 150px;
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
}

.extended-line3 {
    position: absolute;
    bottom: 12px;
    right: 20px;
	width: 300px;
    height: 150px;
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
}

.extended-line4 {
    position: absolute;
    bottom: -13px;
    right: 11px;
	width: 300px;
    height: 150px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
}


.distance {
    position: absolute;
    bottom: 0;
    right: 0;
	animation: line 6s linear infinite;
    -webkit-animation: line 6s linear infinite;
	opacity: 0;
	width: 300px;
    height: 150px;
}

.distance line {
    fill: none;
    stroke: #d95634;
    stroke-width: 2px;
}

.distance text {
    fill: #d95634;
    font-weight: bold;
    font-size: 12px;
}

@keyframes line {
	0%{
		opacity: 0;
    }
	45%{
		opacity: 0;
    }
	50%{
		opacity: 1;
    }
	100%{
		opacity: 1;
    }
}

@-webkit-keyframes line {
	0%{
		-webkit-opacity: 0;
    }
	45%{
		-webkit-opacity: 0;
    }
	50%{
		-webkit-opacity: 1;
    }
	100%{
		-webkit-opacity: 1;
    }
}

#car2 {
	animation:animation2 10s linear infinite;
	-webkit-animation:animation2 10s linear infinite;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 186px;
	z-index: 100;
}

#car2-bk {
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 186px;
	opacity: 0.75;
}

@keyframes animation2 {
    0%{
        transform: translate(0,0) rotate(0);
    }
	20%{
        transform: translate(0,0) rotate(0);
    }
    40%{
		transform: translate(-22px,-30px) rotate(35deg);
    }
	100%{
		transform: translate(-22px,-30px) rotate(35deg);
    }
}

@-webkit-keyframes animation2 {
	0%{
        -webkit-transform: translate(0,0) rotate(0);
    }
	20%{
        -webkit-transform: translate(0,0) rotate(0);
    }
    40%{
		-webkit-transform: translate(-22px,-30px) rotate(35deg);
    }
	100%{
		-webkit-transform: translate(-22px,-30px) rotate(35deg);
    }
}

#car3 {
	animation:animation3 7s linear infinite;
	-webkit-animation:animation3 7s linear infinite;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 186px;
	z-index: 100;
}

#car3-bk {
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 186px;
	opacity: 0.75;
	transform: translate(-28px,-34px) rotate(35deg);
}

@keyframes animation3 {
    0%{
        transform: translate(-28px,-34px) rotate(35deg);
    }
    50%{
        transform: translate(24px,30px) rotate(90deg);
    }
	100%{
        transform: translate(24px,30px) rotate(90deg);
    }
}

@-webkit-keyframes animation3 {
	0%{
        -webkit-transform: translate(-28px,-34px) rotate(35deg);
    }
    50%{
        -webkit-transform: translate(24px,30px) rotate(90deg);
    }
	100%{
        -webkit-transform: translate(24px,30px) rotate(90deg);
    }
}

.circle {
    position: absolute;
    bottom: 80px;
    right: 146px;
    width: 36px;
    height: 36px;
}

.circle2 {
    position: absolute;
    bottom: 86px;
    right: 130px;
    width: 36px;
    height: 36px;
}

.circle3 {
    position: absolute;
    bottom: 80px;
    right: 69px;
    width: 36px;
    height: 36px;
}

.circle4 {
    position: absolute;
    bottom: 100px;
    right: 105px;
    width: 150px;
    height: 154px;
}

.circle circle,
.circle2 circle,
.circle3 circle,
.circle4 ellipse{
    fill: none;
    stroke: #d95634;
    stroke-width: 2px;
}

div.contents .icon-num {
    width: 20px;
    height: 20px;
    background: #d95634;
    border-radius: 50%;
    text-align: center;
    line-height: 20px;
}

div.contents .icon-num span {
    font-size: 12px;
    color: #fff;
}

div.contents .icon-num#attention_01 {
    position: absolute;
    top: 135px;
    right: 169px;
}

div.contents .icon-num#attention_02 {
    position: absolute;
    top: 38px;
    right: 216px;
}


#car4 {
	animation:animation4 9s linear infinite;
	-webkit-animation:animation4 9s linear infinite;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 186px;
	z-index: 100;
}

#car4-bk {
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 186px;
	opacity: 0.75;
	transform: translate(24px,30px) rotate(90deg);
}

@keyframes animation4 {
    0%{
        transform: translate(24px,30px) rotate(90deg);
    }
	25%{
        transform: translate(24px,30px) rotate(90deg);
    }
    50%{
        transform: translate(24px,78px) rotate(90deg);
    }
	100%{
        transform: translate(24px,78px) rotate(90deg);
    }
}

@-webkit-keyframes animation4 {
    0%{
        -webkit-transform: translate(24px,30px) rotate(90deg);
    }
	25%{
        -webkit-transform: translate(24px,30px) rotate(90deg);
    }
    50%{
        -webkit-transform: translate(24px,78px) rotate(90deg);
    }
	100%{
        -webkit-transform: translate(24px,78px) rotate(90deg);
    }
}

#car5 {
	animation:animation5 9s linear infinite;
	-webkit-animation:animation5 9s linear infinite;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	z-index: 100;
}

#car5_bk {
    opacity: 0.75;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	transform: translate(24px,78px) rotate(90deg);
	-webkit-transform: translate(24px,78px) rotate(90deg);
}

@keyframes animation5 {
    0%{
        transform: translate(24px,78px) rotate(90deg);
    }
    10%{
        transform: translate(24px,78px) rotate(90deg);
    }
	25%{
        transform: translate(24px,78px) rotate(90deg);
    }
    50%{
        transform: translate(24px,30px) rotate(90deg);
    }
	90%{
        transform: translate(24px,30px) rotate(90deg);
    }
	100%{
        transform: translate(24px,30px) rotate(90deg);
    }
}

@-webkit-keyframes animation5 {
    0%{
        -webkit-transform: translate(24px,78px) rotate(90deg);
    }
    10%{
        -webkit-transform: translate(24px,78px) rotate(90deg);
    }
	25%{
        -webkit-transform: translate(24px,78px) rotate(90deg);
    }
    50%{
        -webkit-transform: translate(24px,30px) rotate(90deg);
    }
	90%{
        -webkit-transform: translate(24px,30px) rotate(90deg);
    }
	100%{
        -webkit-transform: translate(24px,30px) rotate(90deg);
    }
}

#car6 {
	animation:animation6 9s linear infinite;
	-webkit-animation:animation6 9s linear infinite;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	z-index: 100;
}

#car6-bk {
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	opacity: 0.75;
	transform: translate(24px,30px) rotate(90deg);
    -webkit-transform: translate(24px,30px) rotate(90deg);
}

@keyframes animation6 {
    0%{
        transform: translate(24px,30px) rotate(90deg);
    }
    10%{
        transform: translate(24px,30px) rotate(90deg);
    }
    30%{
        transform: translate(12px,16px) rotate(70deg);
    }
    55%{
        transform: translate(-12px,-3px) rotate(40deg);
    }
	90%{
        transform: translate(-54px,-30px) rotate(0deg);
    }
	100%{
        transform: translate(-54px,-30px) rotate(0deg);
    }
}

@-webkit-keyframes animation6 {
    0%{
        -webkit-transform: translate(24px,30px) rotate(90deg);
    }
    10%{
        -webkit-transform: translate(24px,30px) rotate(90deg);
    }
    30%{
        -webkit-transform: translate(12px,16px) rotate(70deg);
    }
    55%{
        -webkit-transform: translate(-12px,-3px) rotate(40deg);
    }
	90%{
        -webkit-transform: translate(-54px,-30px) rotate(0deg);
    }
	100%{
        -webkit-transform: translate(-54px,-30px) rotate(0deg);
    }
}

#car7 {
    animation: animation7 7s linear infinite;
    -webkit-animation: animation7 7s linear infinite;
    position: absolute;
    width: 81px;
    height: 41.6px;
    top: 108px;
    right: 134px;
	z-index: 100;
}

@keyframes animation7 {
	0%{
        transform: translate(-30px,-35px);
    }
	10%{
        transform: translate(-30px,-35px);
    }
	40% {
		 transform: translate(-75px,-25px) rotate(-15deg);
	}
	70% {
		 transform: translate(-125px,-10px) rotate(0);
	}
	90%{
		 transform: translate(-180px,-10px);
    }
	100%{
		 transform: translate(-180px,-10px);
    }
}

@-webkit-keyframes animation7 {
	0%{
        -webkit-transform: translate(-30px,-35px);
    }
	10%{
        -webkit-transform: translate(-30px,-35px);
    }
	40% {
		 transform: translate(-75px,-25px) rotate(-15deg);
	}
	70% {
		 -webkit-transform: translate(-125px,-10px) rotate(0);
	}
	90%{
		 -webkit-transform: translate(-180px,-10px);
    }
	100%{
		 -webkit-transform: translate(-180px,-10px);
    }
}

#car8 {
	animation:animation8 9s linear infinite;
	-webkit-animation:animation8 9s linear infinite;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	z-index: 100;
    transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    -o-transform: rotate(270deg);
}

#car8_bk {
    opacity: 0.75;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	transform: translate(24px,78px) rotate(270deg);
    -webkit-transform: translate(24px,78px) rotate(270deg);
}

@keyframes animation8 {
    0%{
        transform: translate(24px,78px) rotate(270deg);
    }
    10%{
        transform: translate(24px,78px) rotate(270deg);
    }
	25%{
        transform: translate(24px,78px) rotate(270deg);
    }
    50%{
        transform: translate(24px,30px) rotate(270deg);
    }
	90%{
        transform: translate(24px,30px) rotate(270deg);
    }
	100%{
        transform: translate(24px,30px) rotate(270deg);
    }
}

@-webkit-keyframes animation8 {
    0%{
        -webkit-transform: translate(24px,78px) rotate(270deg);
    }
    10%{
        -webkit-transform: translate(24px,78px) rotate(270deg);
    }
	25%{
        -webkit-transform: translate(24px,78px) rotate(270deg);
    }
    50%{
        -webkit-transform: translate(24px,30px) rotate(270deg);
    }
	90%{
        -webkit-transform: translate(24px,30px) rotate(270deg);
    }
	100%{
        -webkit-transform: translate(24px,30px) rotate(270deg);
    }
}

#car9 {
	animation:animation9 7s linear infinite;
	-webkit-animation:animation9 7s linear infinite;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	z-index: 100;
    transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    -o-transform: rotate(270deg);
}

#car9-bk {
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	opacity: 0.75;
	transform: translate(24px,30px) rotate(270deg);
    -webkit-transform: translate(24px,30px) rotate(270deg);
}

@keyframes animation9 {
    0%{
        transform: translate(24px,30px) rotate(270deg);
    }
    10%{
        transform: translate(24px,30px) rotate(270deg);
    }
    25%{
        transform: translate(24px,15px) rotate(270deg);
    }
    90%{
        transform: translate(55px,-10px) rotate(315deg);
    }
    100%{
        transform: translate(55px,-10px) rotate(315deg);
    }
}

@-webkit-keyframes animation9 {
	0%{
        -webkit-transform: translate(24px,30px) rotate(270deg);
    }
	10%{
        -webkit-transform: translate(24px,30px) rotate(270deg);
    }
    25%{
        -webkit-transform: translate(24px,15px) rotate(270deg);
    }
    90%{
        -webkit-transform: translate(55px,-10px) rotate(315deg);
    }
    100%{
        -webkit-transform: translate(55px,-10px) rotate(315deg);
    }
}

#car10 {
	animation:animation10 5s linear infinite;
	-webkit-animation:animation10 5s linear infinite;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	z-index: 100;
    transform: rotate(315deg);
    -webkit-transform: rotate(315deg);
    -ms-transform: rotate(315deg);
    -o-transform: rotate(315deg);
}

#car10-bk {
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	opacity: 0.75;
	transform: translate(55px,-10px) rotate(315deg);
	-webkit-transform: translate(55px,-10px) rotate(315deg);
}

@keyframes animation10 {
    0%{
        transform: translate(55px,-10px) rotate(315deg);
    }
    10%{
        transform: translate(55px,-10px) rotate(315deg);
    }
    95%{
        transform: translate(10px,0px) rotate(360deg);
    }
    100%{
        transform: translate(10px,0px) rotate(360deg);
    }
}

@-webkit-keyframes animation10 {
    0%{
        -webkit-transform: translate(55px,-10px) rotate(315deg);
    }
    10%{
        -webkit-transform: translate(55px,-10px) rotate(315deg);
    }
    95%{
        -webkit-transform: translate(10px,0px) rotate(360deg);
    }
    100%{
        -webkit-transform: translate(10px,0px) rotate(360deg);
    }
}

#car11 {
	animation:animation11 5s linear infinite;
	-webkit-animation:animation11 5s linear infinite;
	width: 81px;
    height: 41.6px;
	position: absolute;
	top: 103px;
    right: 110px;
	z-index: 100;
}

@keyframes animation11 {
    0%{
        transform: translate(10px,0px);
    }
    25%{
        transform: translate(10px,0px);
    }
    90%{
        transform: translate(-180px,0px);
    }
    100%{
        transform: translate(-180px,0px);
    }
}

@-webkit-keyframes animation11 {
    0%{
        -webkit-transform: translate(10px,0px);
    }
    25%{
        -webkit-transform: translate(10px,0px);
    }
    90%{
        -webkit-transform: translate(-180px,0px);
    }
    100%{
        -webkit-transform: translate(-180px,0px);
    }
}


.handle {
	width: 91px;
    height: 88.6px;
    position: absolute;
	bottom: 15px;
    right: 10px;
}

.handle.departure {
	width: 70px;
    height: 88.6px;
    position: absolute;
	bottom: 0px;
    right: 10px;
}

#handle1 {
	animation:handle1 6s linear infinite;
	-webkit-animation:handle1 6s linear infinite;
}

@keyframes handle1 {
	0%{
        transform:rotate(0deg);
    }
	25% {
		transform:rotate(-20deg);
	}
    35%{
		transform:rotate(0deg);
    }
	100%{
		transform:rotate(0deg);
    }
}

@-webkit-keyframes handle1 {
	0%{
        -webkit-transform:rotate(0deg);
    }
	25% {
		-webkit-transform:rotate(-20deg);
	}
    35%{
		-webkit-transform:rotate(0deg);
    }
	100%{
		-webkit-transform:rotate(0deg);
    }
}

#handle2 {
	animation:handle2 10s linear infinite;
	-webkit-animation:handle2 10s linear infinite;
}

@keyframes handle2 {
	0%{
        transform:rotate(0deg);
    }
	10%{
        transform:rotate(405deg);
    }
	45%{
        transform:rotate(405deg);
    }
	55%{
        transform:rotate(0deg);
    }
	100%{
		transform:rotate(0deg);
    }
}

@-webkit-keyframes handle2 {
	0%{
        -webkit-transform:rotate(0deg);
    }
	10%{
        -webkit-transform:rotate(405deg);
    }
	45%{
        -webkit-transform:rotate(405deg);
    }
	55%{
        -webkit-transform:rotate(0deg);
    }
	100%{
		-webkit-transform:rotate(0deg);
    }
}

#handle3 {
	animation:handle3 7s linear infinite;
	-webkit-animation:handle3 7s linear infinite;
}

@keyframes handle3 {
	0%{
        transform:rotate(0deg);
    }
    50%{
        transform:rotate(-360deg);
    }
	100%{
		transform:rotate(-360deg);
    }
}

@-webkit-keyframes handle3 {
	0%{
        -webkit-transform:rotate(0deg);
    }
    50%{
        -webkit-transform:rotate(-360deg);
    }
	100%{
		-webkit-transform:rotate(-360deg);
    }
}

#handle4 {
	animation:handle4 9s linear infinite;
	-webkit-animation:handle4 9s linear infinite;
}

@keyframes handle4 {
	0%{
        transform:rotate(-360deg);
    }
	15%{
        transform:rotate(0deg);
    }
	100%{
		transform:rotate(0deg);
    }
}

@-webkit-keyframes handle4 {
	0%{
        -webkit-transform:rotate(-360deg);
    }
	15%{
        -webkit-transform:rotate(0deg);
    }
	100%{
		-webkit-transform:rotate(0deg);
    }
}

#handle5 {
	animation:handle5 9s linear infinite;
	-webkit-animation:handle5 9s linear infinite;
}

@keyframes handle5 {
	0%{
        transform: rotate(0deg);
    }
	5%{
        transform: rotate(0deg);
    }
	10%{
		transform: rotate(-500deg);
    }
	100%{
		transform: rotate(-500deg);
    }
}

@-webkit-keyframes handle5 {
	0%{
        -webkit-transform: rotate(0deg);
    }
	5%{
        -webkit-transform: rotate(0deg);
    }
	10%{
		-webkit-transform: rotate(-500deg);
    }
	100%{
		-webkit-transform: rotate(-500deg);
    }
}

#handle6 {
	animation:handle6 7s linear infinite;
	-webkit-animation:handle6 7s linear infinite;
}

@keyframes handle6 {
	0%{
        transform:rotate(-500deg);
    }
	10%{
        transform:rotate(-500deg);
    }
	45%{
		transform:rotate(60deg);
    }
    70% {
		transform:rotate(60deg);
    }
	80%{
		transform:rotate(0deg);
    }
	100%{
		transform:rotate(0deg);
    }
}

@-webkit-keyframes handle6 {
	0%{
        -webkit-transform:rotate(-500deg);
    }
	10%{
        -webkit-transform:rotate(-500deg);
    }
	45%{
		-webkit-transform:rotate(60deg);
    }
    70% {
		-webkit-transform:rotate(60deg);
    }
	80%{
		-webkit-transform:rotate(0deg);
    }
	100%{
		-webkit-transform:rotate(0deg);
    }
}

#handle7 {
	animation:handle7 7s linear infinite;
	-webkit-animation:handle7 7s linear infinite;
}

@keyframes handle7 {
	0%{
        transform:rotate(0deg);
    }
	25%{
        transform:rotate(0deg);
    }
	90%{
		transform:rotate(-390deg);
    }
	100%{
		transform:rotate(-390deg);
    }
}

@-webkit-keyframes handle7 {
	0%{
        -webkit-transform:rotate(0deg);
    }
	25%{
        -webkit-transform:rotate(0deg);
    }
	90%{
		-webkit-transform:rotate(-390deg);
    }
	100%{
		-webkit-transform:rotate(-390deg);
    }
}

#handle8 {
	animation:handle8 5s linear infinite;
	-webkit-animation:handle8 5s linear infinite;
}

@keyframes handle8 {
	0%{
        transform:rotate(-390deg);
    }
	10%{
        transform:rotate(-390deg);
    }
	90%{
		transform:rotate(-240deg);
    }
	100%{
		transform:rotate(-240deg);
    }
}

@-webkit-keyframes handle8 {
	0%{
        -webkit-transform:rotate(-390deg);
    }
	10%{
        -webkit-transform:rotate(-390deg);
    }
	90%{
		-webkit-transform:rotate(-240deg);
    }
	100%{
		-webkit-transform:rotate(-240deg);
    }
}

#handle9 {
	animation:handle9 5s linear infinite;
	-webkit-animation:handle9 5s linear infinite;
}

@keyframes handle9 {
	0%{
        transform:rotate(-240deg);
    }
	10%{
        transform:rotate(-240deg);
    }
	25%{
		transform:rotate(-360deg);
    }
	100%{
		transform:rotate(-360deg);
    }
}

@-webkit-keyframes handle9 {
	0%{
        -webkit-transform:rotate(-240deg);
    }
	10%{
        -webkit-transform:rotate(-240deg);
    }
	25%{
		-webkit-transform:rotate(-360deg);
    }
	100%{
		-webkit-transform:rotate(-360deg);
    }
}

.text-area {
    float: left;
    width: 410px;
    margin: 0 0 0 25px;
    text-align: left;
	font-size: 15px;
}

.text-area h4 {
    color: #e45833;
	font-weight: bold;
	font-size: 23px;
}

.text-area .btn-modal {
    color: #0d4080;
    cursor: pointer;
    margin-top: 5px;
}

.advice {
    padding: 20px;
    border: 1px dotted #9f9f9c;
    text-align: center;
    margin: 20px 0 0;
    font-size: 13px;
}

.advice-tl {
    padding: 20px;
    border: 1px dotted #9f9f9c;
    text-align: left;
    margin: 20px 0 0;
    font-size: 13px;
}

.advice-multi {
    padding: 20px;
    border: 1px dotted #9f9f9c;
    margin: 20px 0 0;
    font-size: 13px;
}

.advice-multi .advice-list {
    display: table;
}

.advice-multi .advice-list img {
    vertical-align: top;
    margin-right: 5px;
}

.advice-multi .advice-list img,
.advice-multi .advice-list .advice-txt {
	display: table-cell;
	vertical-align: top;
}


.advice-left {
	text-align: left;
	display: table;
    width: 100%;
    box-sizing: border-box;
}

.advice-left img {
    width: 20px;
}

.advice-left .advice-txt {
    width: 100%;
}

.advice img,
.advice-tl img {
    vertical-align: top;
    margin-right: 5px;
}

.advice-left img,
.advice-left .advice-txt {
	display: table-cell;
	vertical-align: top;
}

.iframe_wrap {
	width: 560px;
    margin: 25px auto;
}

.iframe_box {
	position: relative;
	width: 100%;
	padding-top : 56.25%;
}

.iframe_box iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

.lesson {
    width: 664px;
    margin: 30px auto 20px;
    overflow: hidden;
}

.lesson-left {
    float: left;
    width: 459px;
    margin: 25px 0 0 0;
    text-align: left;
}

.lesson-right {
    float: right;
}

.lesson h4 {
    font-weight: bold;
    font-size: 18px;
    margin: 0 0 10px;
}

.movie {
	max-width: 600px;
	margin:0 auto 30px;
}
.movie dl{
	margin-bottom: 30px;
}
.movie dd iframe{
	vertical-align: bottom;
}
.movie dt {
	font-size: 15px;
	background-color: #fff;
	padding: 6px 10px;
}
.movie dt span{
	color: #999;
}

.lead-txt {
	font-size: 16px;
}

h3.title {
	font-size: 30px;
	padding: 0;
	margin: 36px auto 3px;
}

.catch-copy {
	display: inline-block;
    position: relative;
}

.catch-copy:before {
	content: "";
	background: url(../images/ic004.png) no-repeat 0 0;
	background-size: 20px 35px;
	width: 20px;
	height: 35px;
	position: absolute;
    right: -35px;
    top: 5px;
}

.catch-copy:after {
	content: "";
	background: url(../images/ic005.png) no-repeat 0 0;
	background-size: 20px 35px;
	width: 20px;
	height: 35px;
	position: absolute;
   left: -35px;
    top: 5px;
}

.icon-car {
    background: #e45833;
    font-size: 17px;
    border-radius: 20px;
    padding: 5px 20px;
    color: #fff;
	margin-right: 15px;
	font-weight: bold;
}

.ranking {
	font-size: 50px;
	font-weight: bold;
	vertical-align: middle;
}

.select-car {
    background: #fff;
    width: 800px;
    margin: 0 auto;
    display: table;
    padding: 30px 50px;
}

.select-car .car-photo {
	display: table-cell;
}

.select-car h4 {
    font-size: 40px;
    border-bottom: 1px dotted #9f9f9c;
    margin-bottom: 40px;
    padding-bottom: 5px;
	font-weight: bold;
}

.select-car h4 span {
    font-size: 18px;
	font-weight: normal;
}

.select-car h3 {
	clear: both;
	padding: 0 0 0 62px;
}

.select-car .spec {
	display: table-cell;
	vertical-align: top;
	font-size: 15px;
	text-align: left;
}

.select-car dl {
    margin: 20px 0 25px;
}

.select-car dt {
    background: #e3e0d6;
    line-height: 23px;
    text-align: center;
    margin-right: 5px;
    border-radius: 23px;
    padding: 0 10px;
    font-weight: bold;
    font-size: 13px;
}

.select-car dt, .select-car dd {
	display: inline-block;
  vertical-align: top;
}

.car-detail .bt {
    clear: both;
    float: none;
    text-align: left;
    margin: 0;
}

.car-detail p {
    display: inline-block;
}

.car-detail .car-descri {
    display: inline-block;
    height: 72px;
}

.car-detail .station-btn a {
    display: block;
    text-align: center;
    vertical-align: middle;
    width: 184px;
    height: 50px;
    line-height: 50px;
    padding: 0;
    box-shadow: 0 1px #bfbfbf;
    -moz-box-shadow: 0 1px #bfbfbf;
    -o-box-shadow: 0 1px #bfbfbf;
    -ms-box-shadow: 0 1px #bfbfbf;
    font-size: 15px;
    font-weight: bold;
    position: relative;
    text-decoration: none;
    background: #fed600;
    color: #333 !important;
	margin-right: 10px;
}

.car-detail .move-btn a {
    display: block;
    text-align: center;
    vertical-align: middle;
    width: 184px;
    height: 50px !important;
    line-height: 50px !important;
    padding: 0;
    box-shadow: 0 1px #bfbfbf;
    -moz-box-shadow: 0 1px #bfbfbf;
    -o-box-shadow: 0 1px #bfbfbf;
    -ms-box-shadow: 0 1px #bfbfbf;
    font-size: 15px;
    font-weight: bold;
    position: relative;
    text-decoration: none;
    background: #ebe9e2;
    color: #333 !important;
}

.ic_arrow {
    background: url(/common/images/common_ic008.png) no-repeat 0 0;
    background-size: 7px 10px;
    position: absolute;
    width: 7px;
    height: 10px;
    top: 22px;
    right: 10px;
}

.icon-voice {
	background: url(../images/ic007.png) no-repeat 0 0;
    background-size: 46px 46px;
    position: absolute;
    width: 46px;
    height: 46px;
    left: 6px;
}

.comment {
	display: table;
	margin: 30px auto;
}

.comment li {
    background: #ebe9e2;
    border-radius: 8px;
    padding: 20px;
    float: left;
    width: 290px;
    height: 103px;
    text-align: left;
	position: relative;
}

.comment li:after {
    content: "";
    background: url(../images/ic006.png) no-repeat 0 0;
    background-size: 39px 49px;
    width: 39px;
    height: 49px;
    position: absolute;
    right: 20px;
    bottom: -10px;
}

.comment li:first-child {
	margin-right: 30px;
}

.select-under {
    width: 900px;
    display: flex;
    margin: 0 auto;
}

.select-under .select-second {
	margin-right: 30px;
}

.select-under .select-second:last-child {
	margin-right: 0;
}

.select-under .select-car {
    width: 375px;
    padding: 20px 30px 30px;
	display: block;
}

.select-under .select-car .car-photo {
    display: block;
}

.select-under .select-car .spec {
    display: block;
	padding-left: 0;
}


.select-under .icon-car {
    font-size: 15px;
    border-radius: 20px;
    padding: 5px 20px;
}

.select-under .ranking {
    font-size: 40px;
}

.select-under .select-car h4 {
    margin-bottom: 0;
	font-size: 32px;
}

.icon-car.blue {
	background: #0f83b9;
}


.select-under .select-car dl {
	display: table;
}

.select-under .select-car dt,
.select-under .select-car dd {
	vertical-align: middle;
	display: table-cell;
	    font-size: 14px;
}

.select-under .select-car dt {
    margin-right: 10px;
    display: inline;
    padding: 2px 10px;
}

.car-detail .station-btn a,
.car-detail .move-btn a {
	width: 175px;
}

.annotation {
    margin: 40px auto 0;
    text-align: left;
    width: 900px;
}


.more_know {
    text-align: center;
    padding: 50px 0;
    background: #f6f5f1;
}

.more_know h2 {
    font-size: 20px;
    font-weight: bold;
}

.more_know ul {
	width: 	820px;
	margin: 25px auto 50px;
	display: table;
}

.more_know li {
	float: left;
}

.more_know li:first-child {
    margin-right: 20px;
}

.more_know .btn a {
    display: block;
    text-align: center;
    vertical-align: middle;
    width: 400px;
    height: 65px;
    line-height: 70px;
    box-shadow: 0 1px #bfbfbf;
    -moz-box-shadow: 0 1px #bfbfbf;
    -o-box-shadow: 0 1px #bfbfbf;
    -ms-box-shadow: 0 1px #bfbfbf;
    font-size: 20px;
    font-weight: bold;
    position: relative;
    text-decoration: none;
    background: #fed600;
    color: #333;
}

.more_know .ic_arrow {
    background: url("/common/images/common_ic008.png") no-repeat 0 0;
    background-size: 7px 10px;
    position: absolute;
    width: 7px;
    height: 10px;
    top: 28px;
    right: 10px;
}

/*  TOP  */
.anchor_box {
    width: 940px;
    margin: 0 auto;
    text-align: left;
}

.anchor_box:after {
    content: '';
    clear: both;
    display: block;
}

.anchor_box li {
    width: 280px;
    float: left;
    margin: 0 50px 55px 0;
}

.anchor_box li:nth-child(3n) {
    margin-right: 0;
}

.anchor_box li .detail a {
    font-size: 16px;
    font-weight: bold;
    margin: 5px 0;
    display: block;
	text-align: center;
}

.anchor_box li .detail p{
	text-align: left;
}

.content-navi {
	padding: 40px 0;
}

.content-navi h4 {
    font-weight: bold;
    font-size: 22px;
    text-align: left;
    width: 940px;
    display: table;
    margin: 0 auto 25px;
}

.content-navi-list {
	width: 940px;
    margin: 0 auto;
    text-align: left;
}

.content-navi-list li {
    width: 300px;
    float: left;
    margin: 0 20px 20px 0;
    display: table;
}

.content-navi-list li:nth-child(3n) {
    margin-right: 0;
}

.content-navi-list li img,
.content-navi-list li .navi-img {
	width: 130px;
	height: 74px;
	vertical-align: middle;
}

.content-navi-list li img {
    border: 1px solid #fed600;
}

.content-navi-list li .navi-txt {
	padding-left: 15px;
}

.content-navi-list li .navi-img,
.content-navi-list li .navi-txt {
	display: table-cell;
	vertical-align: middle;
}

.safty-content {
    width: 600px;
    margin: 0 auto 45px;
    padding: 50px 100px;
    background: #fff;
	font-size: 15px;
	text-align: left;
}

.safty-content h3 {
    margin: 0 auto 50px;
    padding: 0 0 0 85px;
}

h3 .icon-safty01 {
    background: url(../images/ic008.png) no-repeat 0 0;
    background-size: 71px 70px;
    position: absolute;
    width: 71px;
    height: 70px;
    top: -10px;
    left: 0;
}

h3 .icon-safty02 {
    background: url(../images/ic010.png) no-repeat 0 0;
    background-size: 71px 70px;
    position: absolute;
    width: 71px;
    height: 70px;
    top: -10px;
    left: 0;
}

h3 .icon-safty03 {
    background: url(../images/ic011.png) no-repeat 0 0;
    background-size: 71px 70px;
    position: absolute;
    width: 71px;
    height: 70px;
    top: -10px;
    left: 0;
}

.safty-point {
    width: auto;
    font-size: 28px;
    padding: 0 0 0 40px;
    margin: 35px auto 25px;
    position: relative;
    display: table;
}

.icon-point {
    background: url(../images/ic009.png) no-repeat 0 0;
    background-size: 26px 26px;
    position: absolute;
    width: 26px;
    height: 26px;
    top: 6px;
    left: 0;
}

.safty-content h4 {
    font-size: 18px;
    font-weight: bold;
    border-left: 6px solid #e45833;
    padding-left: 10px;
    margin: 35px auto 15px;
}

.safty-img {
	overflow: hidden;
}

.safty-img li {
	float: left;
	width: 290px;
	margin-right: 20px;
}

.safty-img li:last-child {
	margin-right: 0;
}

.safty-board {
	border: 1px solid #9f9f9c;
	margin: 40px auto 0;
}

.safty-board dt {
	font-size: 16px;
    font-weight: bold;
	padding: 10px 20px;
	background: #ebe9e2;
}

.safty-board dt span {
    font-size: 13px;
    font-weight: normal;
    margin-left: 15px;
}

.safty-board dd {
	padding: 10px 20px;
}

.notes {
	font-size: 13px;
}

.special {
    clear: both;
    padding: 0;
    margin: 0 auto;
    background-color: #f6f5f1;
    border: #e45833 1px solid;
    width: 800px;
	text-align: left;
	font-size: 15px;
}

.special h3 {
    background-color: #e45833;
    color: #FFF;
    padding: 5px 30px;
    font-weight: bold;
    font-size: 18px;
    margin: 0;
    display: block;
    text-align: left;
}

.special_inner {
    background: #fff;
    padding: 20px 30px;
}

.special-image {
	margin: 30px auto 10px;
	text-align: center;
}

.easy-ride h2, .safety h2 {
    font-size: 38px;
    line-height: 1.3em;
}

.sign-content {
    background: #fff;
    width: 800px;
    margin: 0 auto 35px;
    display: table;
    padding: 0 0 40px;
	position: relative;
}

.sign-content dl {
	display: table;
	margin: 20px;
}

.sign-content dt {
    background: #ebe9e2;
    display: inline-block;
    font-size: 20px;
    border-radius: 5px;
    padding: 5px 10px;
    font-weight: bold;
	display: table-cell;
}

.sign-content dt img {
	vertical-align: middle;
	margin-right: 10px;
	margin-top: -3px;
}

.sign-content dd {
	display: table-cell;
	font-size: 18px;
	font-weight: bold;
	padding-left: 15px;
}

.answer-btn {
    display: block;
    text-align: center;
    vertical-align: middle;
    width: 700px;
    height: 50px;
    line-height: 50px;
    padding: 0;
    box-shadow: 0 1px #bfbfbf;
    -moz-box-shadow: 0 1px #bfbfbf;
    -o-box-shadow: 0 1px #bfbfbf;
    -ms-box-shadow: 0 1px #bfbfbf;
    font-size: 20px;
    font-weight: bold;
    position: relative;
    text-decoration: none;
    background: #fed600;
    color: #333;
    text-decoration: none !important;
    margin: 40px auto 0;
}

.answer {
	display: none;
}

.answer-btn span {
    background: url(../images/ic015.png) no-repeat right center;
}

.answer-btn span.open {
    background: url(../images/ic014.png) no-repeat right center;
}

.answer {
    font-size: 15px;
    text-align: left;
    width: 700px;
    margin: 35px auto 0;
}

.answer-title {
	font-size: 20px;
	font-weight: bold;
}

.sign-content.new {
	background: url(../images/ic013.png) no-repeat right top,#fff;
}

.col-2 {
	width: 700px;
    margin: 35px auto 0;
	display: table;
}

.sign-img, .sign-txt {
	display: table-cell;
    vertical-align: top;
    text-align: left;
    font-size: 15px;
}

.sign-img {
	width: 130px;
}

p.answer-txt {
    float: left;
    width: 540px;
    margin-right: 30px;
}

.movie-btn {
	margin-top: 20px;
}

.movie-btn a {
    display: block;
    text-align: center;
    vertical-align: middle;
    width: 238px;
    height: 54px;
    line-height: 56px;
    margin: 0 auto;
    padding: 0 0 0 30px;
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.3);
    -o-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.3);
    -ms-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.3);
    border: 5px solid #e3e0d6;
    font-size: 16px;
    position: relative;
    text-decoration: none;
    background: #fff;
    color: #000;
}

.ic_movie {
    background: url(/tcp_guide/images/join_ic003.gif) no-repeat 0 0;
    background-size: 41px 35px;
    position: absolute;
    width: 41px;
    height: 35px;
    top: 12px;
    left: 20px;
}

.movie_box {
    display: none;
    width: 560px;
    height: 315px;
    position: relative;
}

/*------------- modal -------------*/
#modal-win {
	width: 100%;
	position: absolute;
}
#modal-win-inner {
	box-shadow: 0 0 5px rgba(0, 0, 0, .25);
	margin: 0 auto;
	position: relative;
	z-index: 105;
}
#modal-bg {
	width: 100%;
	height: 100%;
	background-color: #000000;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 104;
	cursor: pointer;
}
.detail_box {
    display: none;
    width: 100%;
    max-width: 580px;
    background: #f5f4ef;
    position: relative;
    font-size: 13px;
	padding: 40px 20px;
    box-sizing: border-box;
}
.detail_box.photo_box {
    background: none;
    padding: 0;
    width: 96%;
    margin: 0 2%;
}
.detail_box.movie_box {
    background: none;
    padding: 0;
    width: 96%;
    margin: 0 2%;
}
.detail_box.movie_box .movie dd iframe {
    width: 100%;
}
.detail_box .modalImg {
    text-align: center;
}
.detail_box .modalImg img {
    vertical-align: text-bottom;
    width: 100%;
    max-width: 400px;
    height: auto;
}
.modal-close {
	cursor: pointer;
	position: fixed;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
	display: block;
	background: url(/common/images/common_ic019.png) no-repeat;
	background-size: 50px 50px;
	color: #fff;
	text-indent: -100px;
	overflow: hidden;
}

#modal-win #modal-win-inner {
    box-shadow: none;
}



.recommendation{
  width:660px;
  padding: 20px;
  margin: 60px auto;
  border: 1px solid #cbcac5;
  background: #ffffff;
  overflow: hidden;
  text-align: left;
}

.recommendation_ti{
  font-size: 15px;
  font-weight: bold;
  color: #e45833;
}
.recommendation_tx{
  width:60%;
  width : -webkit-calc(100% - 220px) ;
  width : calc(100% - 220px) ;
  float: left;
}
.recommendation .cmn_btn{
  width: 200px;
  float: right;
}
.recommendation .cmn_btn a{
  height: 40px;
  line-height: 40px;
  padding: 0;
}
.recommendation .cmn_btn .ic_arrow{
  top: 15px;
}

.select-under .select-second {
    margin-right: 30px;
    display: flex;
    flex-direction: column;
}
.select-second .select-car {
    flex: 1 0;
}
.k-car .car-descri {
    min-height: calc(4em * 1.6);
}
.c-car .car-descri {
    min-height: calc(4em * 1.6);
}
.select-under .select-car dl {
    height: 45px;
}
.select-under .select-car dd {
    vertical-align: top;
    display: inline-block;
}
@media screen and (max-width: 768px) {
    /* 768px以下用の記述 */

    #d_page {
        font-family: "メイリオ",Meiryo,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif !important;
        background: url(/sp/images/common_bg002.gif)  repeat-x center top !important;
        color: #000;
        clear: both;
        float: none;
        margin: 0;
        padding: 0;
        -webkit-text-size-adjust: 100%;
        min-width: 310px;
    }

    /*------------- PC_SP切り替え -------------*/
    .sp_pc {
        display: none !important;
    }

    .sp_sp {
        display: block !important;
    }

    .sp_tpc {
        display: none !important;
    }

    .pankuzu {
        display: none !important;
    }

    /* ヘッダー ミニ
    ---------------------------------------*/
    .sheader {
        min-width: 310px;
        width: auto;
        margin: 0 auto;
        clear: both;
        font-family: Verdana,Arial,"メイリオ",Meiryo,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif !important;
    }

    .sheader a {
        text-decoration: none !important;
        color: #000 !important;
    }

    .sheader .logo {
        float: left;
        margin: 12px 7px 0 5px;
    }

    .sheader ul {
        float: right;
        margin-top: 12px;
    }

    .sheader ul li {
        margin-right: 4px;
        width: 44px;
        line-height: 1.6;
        display: inline-block;
        text-align: center;
        font-size: 60%;
    }

    .right-contents {
        width: auto !important;
        margin: 0 auto;
        padding: 0;
    }

    .main {
        width: 100%;
        margin: 0;
    }

    header {
        height: 52px;
    }

    /* コンテンツ
    ---------------------------------------*/
    .contents {
        padding: 0 !important;
    }

    /* フッター
        ---------------------------------------*/
    .footer_navi {
        color: #000;
        padding: 10px 5px 5px;
        text-align: center;
        line-height: 175%;
        margin: 0 auto;
        width: auto;
        clear: both;
    }

    .footer_navi a {
        color: #000 !important;
    }

    .base div {
        color: #fff;
        padding: 0 !important;
    }

    .base a {
        color: #000 !important;
    }

    .copyright {
        font-size: 85%;
        padding: 20px 0;
        clear: both;
        background: #272727;
        text-align: center !important;
    }

    /* フッター内 サブナビ
    ---------------------------------------*/
    .sp_subnavi {
        background-color: #f6f5f1;
        clear: both;
        overflow: hidden;
    }
	.sp_subnavi ul {
			margin: 15px 10px;
		}
	.sp_subnavi ul li {
        border-top: 1px solid #cccccc;
        border-left: 1px solid #cccccc;
        border-right: 1px solid #cccccc;
        font-size: 90%;
        background: #ffffff;
    }

    .sp_subnavi ul li:last-of-type {
        border-top: 1px solid #cccccc;
        border-bottom: 1px solid #cccccc;
    }
    .sp_subnavi ul li a {
        color: #000000;
        display: block;
        font-weight: bold;
        line-height: 1.1;
        margin: 0 10px;
        padding: 14px 10px 12px 0;
        text-align: left;
        text-decoration: none;
        text-shadow: 0 0 1px #cccccc;
    }
    .sp_subnavi ul li a.arrow_o {
        background: url(/sp/images/index_ic015.png) no-repeat scroll right center;
        background-size: 7px 11px;
    }
    .sp_subnavi ul li a.arrow_pc {
        background: url(/dynamic/sp/images/common_ic003.gif) no-repeat scroll right center;
    }

    .footer_link {
        border-top: solid 1px #cbcac5;
    }

    .footer_link ul {
        width: 100%;
        display: table;
    }

    .footer_link li {
        background: #ebe9e2;
        border: 1px solid #cbcac5;
        border-width: 0 1px 1px 0;
        width: 50%;
        box-sizing: border-box;
        -webkit-box-sizing: border-box;
        position: relative;
        display: table-cell;
        padding: 15px 25px 15px 10px;
        vertical-align: middle;
        font-size: 0.75em;
    }

    .footer_link li:nth-child(2n) {
        border-width: 0 0 1px 0;
    }


    .footer_link li a {
        color: #333333;
    }

    .main .news {
        margin:0;
    }

    .main .news dl {
        width: 100%;
        border-bottom: 1px solid #cccccc;
        background: url(../../sp/images/index_ic002.gif) no-repeat center right;
    }

    .main .news dl.explain {
        background: url(../../sp/images/index_ic002.gif) no-repeat right #fff5e7;
    }

    .main .news dt {
        width: 96%;
        float: none;
        font-weight: bold;
        color: #f08300;
        padding: 2% 2% 1%;
    }

    .main .news dd {
        width:auto;
        padding: 0 15px 10px 2%;
        border-bottom: none;
        margin-bottom: 0;
    }

    div.sns_bottom {
        width: 100%;
        clear: both;
        background: #e6e6e6;
        border-top: 1px solid #cccccc;
        border-bottom: 1px solid #cccccc;
        text-align: center;
        margin: 10px auto 0;
        padding:4px 0 2px 0;
        overflow: hidden;
    }

    div.pagetop p {
        background:url(../../news/images/ic_arrow001.gif) center left no-repeat;
        float: right;
        padding: 0 5px 0 14px;
        text-align:right;
    }

	.box h2, .more_know h2 {
		background: #474747;
		color: #fff;
		font-size: 17px;
		font-weight: bold;
		padding: 10px 0;
		text-align: center;
		margin: 0;
	}

	.title h1 {
		margin: 0 auto;
		font-size: 22px;
		font-weight: bold;
		line-height: 1.3em;
		padding: 0 0 0 60px;
		margin: 30px auto;
	}

	.icon-safety {
		background-size: 52px 52px;
		position: absolute;
		width: 52px;
		height: 52px;
		top: 0;
	}

	.lead {
		padding: 20px 0;
		font-size: 12px;
	}

	.lead p {
		padding: 0 13px;
	}

	.lead .title {
		font-size: 14px;
		text-align: center;
	}

	.box {
		padding: 0;
	}

	.box.odd {
		background: #f6f5f1;
	}
	.box h3 {
		font-size: 18px;
		margin: 20px auto 15px;
		padding: 0 0 0 34px;
		line-height: 31px;
		background: none;
		color: #444;
	}

	.step-guide {
		padding: 20px;
		margin: 20px auto 40px;

		width: 400px;
	}

	.tab {
		width: 400px;
	}

	.tab li {
		width: 80px;
		margin: 0 10px;
	}

	.tab li:first-child, .tab li:last-child {
		width: 90px;
	}

	.tab-5 li {
		width: 60px;
		margin: 0 10px;
	}

	.tab-5 li:first-child, .tab-5 li:last-child {
		width: 70px;
	}


	.tab li:first-child {
        margin-left: 0;
	}

	.tab li:last-child {
        margin-right: 0;
	}


	.tab.tri-step li {
		width: 34%;
		margin-right: 2%;
        padding-right: 15px;
        box-sizing: border-box;
	}

    .tab.tri-step li:first-child {
        width: 34%;
    }
    .tab.tri-step li:last-child {
        width: 28%;
        margin-right: 0;
        padding-right: 0;
    }



	.tab a {
		width: 100%;
		line-height: 1.5em;
		text-align: center;
		font-size: 14px;
		color: #333 !important;
		height: 45px;
		padding: 5px 0 0;
	}

	.tab a::before {
		border-width: 25px 0 25px 10px;
		left: -10px;
	}

	.tab a::after {
		border-left: 10px solid #e3e0d6;
		right: -10px;
	}

	.step-num {
		display: block;
		font-size: 16px;
		font-weight: bold;
	}

	.svg-content, .pic-content {
		margin: 0 auto 20px;
		float: none;
	}
	.pic-content{
		width: 100%;
		height: auto;
	}
	.pic-content img{
		width: 100%;
		height: auto;
	}
	#tab-01 .svg-content {
		background: url(../images/il001.png) no-repeat top left;
	}

	#tab-02 .svg-content, #tab-03 .svg-content, #tab-04 .svg-content {
		background: url(../images/il002.png) no-repeat top left;
	}

	#f-01 .svg-content {
		background: url(../images/departure_il01.png) no-repeat top right;
	}

	#f-02 .svg-content {
		background: url(../images/departure_il02.png) no-repeat top right;
	}

	#f-03 .svg-content {
		background: url(../images/departure_il02.png) no-repeat top right;
	}

	#b-01 .svg-content {
		background: url(../images/departure_il01.png) no-repeat top right;
	}

	#b-02 .svg-content {
		background: url(../images/departure_il02.png) no-repeat top right;
	}

	#b-03 .svg-content {
		background: url(../images/departure_il02.png) no-repeat top right;
	}

	#b-04 .svg-content {
		background: url(../images/departure_il02.png) no-repeat top right;
	}

	.text-area {
		float: none;
		width: auto;
		margin: 0;
		font-size: 14px;
	}

	h3 .icon-note {
		background-size: 31px 31px;
		position: absolute;
		width: 31px;
		height: 31px;
		left: 0;
	}

	.iframe_wrap {
		width: 90%;
		max-width: 560px;
	}

	.lesson {
		width: 90%;
		margin: 20px auto;
	}

	.lesson-left {
		width: 55%;
		margin-right: 5%;
		margin-top: 0;
	}

	.lesson-right {
		width: 40%;
		margin-top: 2em;
	}

	.lesson-right img {
		width: 100%;
        max-width: 178px;
        height: auto;
	}

	.lesson h4{
		border-left: none;
		padding-left: 0;
	}

	.lesson a {
		text-decoration: underline !important;
	}

	.lead-txt {
		margin: 20px;
		font-size: 14px;
	}

	h3.title {
		padding: 0;
		font-weight: normal;
	}

	.icon-car, .select-under .icon-car {
		font-size: 11px;
		border-radius: 10px;
		padding: 2px 10px;
		margin-right: 10px;
	}

	.ranking, .select-under .ranking {
		font-size: 25px;
		font-weight: bold;
		vertical-align: middle;
	}

	.catch-copy:before {
		background-size: 10px 18px;
		width: 10px;
		height: 18px;
		right: -20px;
		top: 5px;
	}

	.catch-copy:after {
		background-size: 10px 18px;
		width: 10px;
		height: 18px;
		left: -20px;
		top: 5px;
	}

	.select-car, .select-under .select-car {
		background: #fff;
		width: 90%;
		margin: 0 auto;
		padding: 0;
		overflow: hidden;
    height: auto;
	}

	.select-car h3 {
		padding: 0 0 0 45px;
		margin: 40px auto 15px;
	}

	.select-car .car-photo {
		float: none;
		margin: 20px auto;
	}

	.select-car .car-photo img {
		 width: 80%;
	}

	.select-car h4, .select-under .select-car h4 {
		border-left: none;
		text-align: center;
		padding-bottom: 15px;
		font-size: 18px !important;
		margin: 22px;
	}

	.select-car .car-detail {
		float: none;
		width: 90%;
		margin: 0 auto;
	}

  .select-car .car-descri {
    height: auto;
  }

	.spec dl {
		float: left;
		margin-bottom: 20px;
	}

	.spec dl:first-child {
		margin-right: 12px;
	}

	.station-btn {
		float: none;
		clear: both;
		margin-top: 30px;
	}

	.station-btn a {
		width: 100%;
		font-size: 1.5em;
	}

	.icon-voice {
		background-size: 32px 32px;
		position: absolute;
		width: 32px;
		height: 32px;
		top: -2px;
	}

	.comment {
		width: 90%;
		margin: 15px auto 30px;
	}

	.comment li {
		padding: 15px;
		float: none;
		width: auto;
		height: auto;
	}

	.comment li:after {
		content: normal;
	}

	.comment li:first-child {
		margin-right: 0;
		margin-bottom: 20px;
	}


	.select-car .spec {
		display: block;
	}

	.select-car dt {
		margin-bottom: 15px;
	}

	.select-under .select-car dt, .select-under .select-car dd {
		display: inline-block;
		vertical-align: baseline;
	}

	.car-detail .station-btn a, .car-detail .move-btn a {
		border: none;
		margin: 0;
	}

	.station-btn, .move-btn {
		margin: 0 auto 20px;
		width: auto;
		display: table !important;
	}

	.select-under {
		width: auto;
		display: block;
	}

	.select-under .select-second {
		float: none;
		margin-right: 0;
	}

	.annotation {
		margin: 40px 20px 0;
		width: auto;
	}

	.more_know {
		padding: 0 0 30px;
	}

	.more_know ul {
		width: 100%;
		margin: 0 auto;
	}

	.more_know li {
		float: none;
	}

	.more_know li:first-child {
		margin-right: 0;
	}

	.more_know .btn a {
		background: #fff;
		border-bottom: 1px solid #cbcac5;
		border-width: 0 1px 1px 0;
		width: 100%;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		position: relative;
		padding: 15px 25px 15px 10px;
		vertical-align: middle;
		font-size: 12px;
		display: inline-block;
		height: auto;
		line-height: normal;
		text-align: left;
		box-shadow: none;
		-moz-box-shadow: none;
		-o-box-shadow: none;
		-ms-box-shadow: none;
		margin: 0;
		font-weight: normal;
	}

	.more_know .ic_arrow {
		background: url(/sp/images/index_ic015.png) no-repeat 0 0;
		background-size: 7px 11px;
		position: absolute;
		width: 7px;
		height: 11px;
		top: 38%;
		right: 10px;
	}

	.contents .bgarea {
		background: #f5f4ef;
		margin: 0 !important;
		padding: 0 10px 30px !important;
	}
	.contents .box-bgw{
		background-color: #fff;
	}

    .admission {
        float: none;
        clear: both;
        zoom: 1;
        margin: 0 !important;
        vertical-align: center;
        border-right: none;
        padding-right: 0;
    }

    .admission01, .admission02 {
        text-align: center !important;
    }

	.index-title .icon-safety {
		display: none;
	}

	.under-title .index-title {
		font-size: 15px;
		padding: 0;
		margin: 30px auto 0;
	}

	.under-title h1 {
		font-size: 24px;
		margin: 10px auto 30px;
	}

	.content-navi-list {
		width: auto;
		margin: 15px 10px 30px;
	}

	.content-navi-list li .navi-img {
		display: none;
	}

	.content-navi-list li {
		border-top: 1px solid #cccccc;
		border-left: 1px solid #cccccc;
		border-right: 1px solid #cccccc;
		font-size: 90%;
		background: #ffffff;
		width: 100%;
		float: none;
		margin: 0;
	}

	.content-navi-list li:last-child {
		border-bottom: 1px solid #cccccc;
	}

	.content-navi-list li a {
		color: #000000;
		display: block;
		font-weight: bold;
		line-height: 1.1;
		margin: 0 10px;
		padding: 14px 10px 12px 0;
		text-align: left;
		text-decoration: none;
		text-shadow: 0 0 1px #cccccc;
		background: url(/sp/images/index_ic015.png) no-repeat scroll right center;
		background-size: 7px 11px;
	}

	.content-navi-list li .navi-txt {
		padding-left: 0;
		display: block;
	}

	.anchor_box {
		width: auto;
		margin: 0 auto 30px;
	}

	.anchor_box li {
		width: 100%;
		float: none;
		margin: 0;
		display: table;
		padding: 15px 0;
		border-collapse: separate;
		border-spacing: 15px 0;
		background: url(/sp/images/index_ic015.png) no-repeat 98% center #ffffff;
		background-size: 7px 11px;
		border-bottom: 2px solid #ebe9e2;
	}

	.anchor_box .anchor-img,
	.anchor_box .detail {
		display: table-cell;
		width: 50%;
        vertical-align: middle;
	}

	.anchor-img img {
		width: 100%;
		max-width: 280px;
		height: auto;
	}

	.anchor_box li .detail a {
		color: #333333;
		text-align: left;
	}

	.sign-content.new {
		background: #fff;
	}

	.sign-content {
		width: 90%;
		margin: 20px auto;
		padding: 0 0 30px;
	}

	.sign-content dl {
		margin: 0 0 20px;
		    display: block;
	}

	.sign-content dt {
		border-radius: 0;
		padding: 10px;
		display: block;
		text-align: center;
	}

	.sign-content dd {
		display: block;
		padding-left: 0;
		margin: 15px;
		line-height: 1.3em;
		font-size: 16px;
	}

	.question-img img {
		width: 80%;
		max-width: 280px;
		height: auto;
		margin: 0 auto;
	}


	.answer-btn {
		width: 90%;
		text-align: center !important;
	}

	.answer {
		width: auto;
		margin: 25px 15px 0;
	}

	.answer-title {
		margin: 0 0 15px;
		text-align: center !important;
	}

	.col-2 {
		width: 80%;
		margin: 20px auto 0;
	}

	.sign-img, .sign-txt {
		display: inline-block;
	}

	.sign-img {
		width: auto;
		margin: 0 0 20px !important;
	}

	p.answer-txt {
		width: 60%;
        margin-right: 5%;
	}

	.answer-img {
		width: 35%;
		max-width: 100px;
		height: auto;
	}

	.safty-content {
		width: auto;
		margin: 20px 20px 45px;
		padding: 20px;
	}

	h3 .icon-safty01 {
		background: url(../images/ic008.png) no-repeat 0 0;
		background-size: 51px 50px;
		position: absolute;
		width: 51px;
		height: 50px;
		top: -20px;
		left: 50%;
		margin-left: -25px;
	}

	h3 .icon-safty02 {
		background: url(../images/ic010.png) no-repeat 0 0;
		background-size: 51px 50px;
		position: absolute;
		width: 51px;
		height: 50px;
		top: -20px;
		left: 50%;
		margin-left: -25px;
	}

	h3 .icon-safty03 {
		background: url(../images/ic011.png) no-repeat 0 0;
		background-size: 51px 50px;
		position: absolute;
		width: 51px;
		height: 50px;
		top: -20px;
		left: 50%;
		margin-left: -25px;
	}

	.safty-content img {
		width: 100%;
		max-width: 300px;
		height: auto;
		display: table;
		margin: 0 auto;
	}


	.safty-img li {
		float: none;
		width: 290px;
		margin: 15px auto;
	}

	.safty-img li:last-child {
		margin: 15px auto;
	}

	.box .safty-content h3 {
		padding: 40px 0 0 0;
	}

	.safty-point {
		font-size: 20px;
	}

	.icon-point {
		background: url(../images/ic009.png) no-repeat 0 0;
		background-size: 20px 20px;
		position: absolute;
		width: 20px;
		height: 20px;
		top: -4px;
		left: 13px;
	}


	.movie-btn a {
		width: 90%;
		padding: 0;
		font-size: 15px;
	}

	.ic_movie {
		background: url(/tcp_guide/images/join_ic003.gif) no-repeat 0 0;
		background-size: 41px 35px;
		position: absolute;
		width: 41px;
		height: 35px;
		top: 12px;
		left: 20px;
	}

	.ic_movie {
		background: url(/tcp_guide/images/join_ic003.gif) no-repeat 0 0;
		background-size: 31px 25px;
		position: absolute;
		width: 31px;
		height: 25px;
		top: 15px;
		left: 11px;
	}

	.safty-board {
		margin: 20px auto 0;
	}

	.special {
		width: auto;
		margin: 0 20px 20px;
	}

	.box .special h3 {
		background-color: #e45833;
		color: #FFF;
		padding: 5px 30px;
		font-weight: bold;
		font-size: 18px;
		margin: 0;
		display: block;
		text-align: center;
	}

	.special-image img {
		width: 100%;
		max-width: 280px;
		height: auto;
		display: table;
		margin: 0 auto;
	}

	.movie_box {
		display: none;
		width: 100%;
	}

	.movie_box iframe {
		width: 100%;
		height: 100%;
	}

	/* ▼drive-basic
---------------------------------------*/
	.movie{
	padding: 0 15px;
	max-width: 600px;
	}
	.movie dl {
		width: 100%;
		margin-bottom: 30px;
		clear: both;
}
	.movie dl dd{
		position: relative;
		width: 100%;
		padding-top: 56.25%;
	}
	.movie dd iframe{
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		vertical-align: bottom;
}
	.movie dt {
	text-align: center;
	font-size: 14px;
	}
	/* ▲drive-basic
---------------------------------------*/


.recommendation{
  width:auto;
  padding: 20px 15px;
  margin: 0 10px 30px;
}

.recommendation_tx{
  width:100%;
  margin: 10px 0;
  float: none;
}
.recommendation .cmn_btn{
  width: 100%;
  margin: 0 auto;
  float: none;
}
.recommendation .cmn_btn a{
  height: 45px;
  line-height: 45px;
  color: #000000;
}
.recommendation .cmn_btn .ic_arrow{
  top: 18px;
}
.select-under .select-car dl{
    height: auto;
}
.c-car .car-descri, .k-car .car-descri {
    min-height: auto;
}

}

@media screen and (max-width: 468px) {
  .step-guide {
	  padding: 15px;
	  width: auto;
	  margin: 20px 15px 40px;
  }

  .tab {
	  width: 100%;
	  margin: 0 auto 20px;
  }

  .tab li {
	  width: 20%;
	  margin: 0 3%;
  }

  .tab li:first-child, .tab li:last-child {
	  width: 21%;
  }

  .tab-5 li {
	  width: 14%;
	  margin: 0 3%;
  }

  .tab-5 li:first-child, .tab-5 li:last-child {
	  width: 17%;
  }
  .svg-content {
	  width: auto;
  }

  #tab-01 .svg-content {
	  background: url(../images/il001.png) no-repeat top right;
  }

  #tab-02 .svg-content, #tab-03 .svg-content, #tab-04 .svg-content {
	  background: url(../images/il002.png) no-repeat top right;
  }
}

@media screen and (max-width: 320px) {
  .step-guide {
	  margin: 20px 0 40px;
  }

  .tab a::before {
	  border-width: 25px 0 25px 8px;
	  left: -8px;
  }

  .tab a::after {
	  border-left: 8px solid #e3e0d6;
	  right: -8px;
  }
}
