@charset "utf-8";

/*reset*/
.inner,
header .logo,
header .banner,
header nav #gnavi,
section#extracontent,
main,
aside,
#top main #pickup ul {
	width: auto;
}

/*common*/
.banner {
	margin-bottom: 20px;
	text-align: center;
}
.banner img {
	margin: 0 auto;
	max-width: 100%;
}
.section {
	margin-bottom: 20px;
}
a.btn {
	max-width: none;
}

/*header*/
header .inner {
	display: block;
}
header .logo {
	padding: 0 50px 0 10px;
}
header .logo a.logoimg {
	width: 120px;
}
header .headertitle {
	font-size: 11px;
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
header nav {
	background: none;
}

header .navbar_toggle {
    position: fixed;
	top: 40px;
	right: 12px;
	display: block;
	z-index:9999;
}
.navbar_toggle_icon {
 position: relative;
 display: block;
 height: 2px;
 width: 30px;
 background: #5c6b80;
 -webkit-transition: ease .5s;
 transition: ease .5s;
}
.navbar_toggle_icon:nth-child(1) {
 top: 0;
}
.navbar_toggle_icon:nth-child(2) {
 margin: 8px 0;
}
.navbar_toggle_icon:nth-child(3) {
 top: 0;
}
/*OPEN時の動き*/
.navbar_toggle.open .navbar_toggle_icon {
	background: #FFF;
}
.navbar_toggle.open .navbar_toggle_icon:nth-child(1) {
 top: 10px;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
}
.navbar_toggle.open .navbar_toggle_icon:nth-child(2) {
 -webkit-transform: translateY(-50%);
 transform: translateY(-50%);
 opacity: 0;
}
.navbar_toggle.open .navbar_toggle_icon:nth-child(3) {
 top: -10px;
 -webkit-transform: rotate(-45deg);
 transform: rotate(-45deg);
}

header nav {
 display: none;
}
header nav #gnavi {
	padding: 0;
}
header nav.open {
	display: block; 
	-webkit-transform:translateX(0);
	transform:translateX(0);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	position: fixed;
	z-index: 10;
	top: 0;
	right: 0;
	width: 100%;
	background: #FFC926;
	box-shadow: 0 5px 10px rgba(0,0,0,0.3);
}
header nav.open ul {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	margin-right: 60px;
	padding: 15px;
	background: #ED6103;
}
header nav #gnavi li {
	display: block;
	margin-bottom: 5px;
	margin-right: 0;
	width: 48%;
	border: 1px solid #FFF;
	border-radius: 5px;
}
header nav #gnavi li:first-child {
	width: 100%;
}
header nav #gnavi li a {
	display: block;
	padding: 10px 0;	
}
#cate header nav #gnavi li.current a,
header nav #gnavi li.current a{
	background: none;
	color: #FFF;
}
header nav #gnavi li a span {
	display: none;
}

header .banner {
	margin-bottom: 0;
}

/*contents*/
#contents {
	padding: 0 0 20px;
}

#contents .inner {
	display: block;
	padding: 0 10px;
}

/*breadcrumbs*/
#breadcrumbs {
	display: none;
}

/*main&aside*/
main .section h2,
aside .section h2 {
	font-size: 20px;
}

main .section ul.articlelist li a figure,
aside .section ul.articlelist li a figure{
    width: 27%;
    height: 20%;
	margin-right: 3%;
    overflow: hidden;
}
main .section ul.articlelist li a img,
aside .section ul.articlelist li a img{
    width: 100%;
	height: auto;
}
main .section ul.articlelist li a .articlebox,
aside .section ul.articlelist li a .articlebox{
	width: 70%;
}

/*main*/
main .section ul.articlelist li a .articlebox h3 {
	font-size: 16px;
}
main .section ul.articlelist li a .articlebox p.description {
	display: none;
}

/*aside*/


/*extracontent*/
#extracontent {
	padding: 0 10px;
}

/*footer*/
footer #footernavi .inner {
	display: block;
	padding: 20px 10px;
}
footer #footernavi .inner .logo {
	margin: 0 auto 15px;
	width: 180px;
}
footer #footernavi .inner nav {
	padding-top: 0;
}
footer #footernavi .inner nav ul {
	text-align: center;
}
footer #footernavi.inner  nav ul li:last-child {
	margin-right: 0;
}
footer #copyright {
	padding: 10px;
	text-align: center;
}

/*top*/
#top main #pickup ul li {
	width: calc(50% - 5px);
	margin-right: 10px;
}
#top main #pickup ul li:nth-child(2n) {
	margin-right: 0;
}

/*cate*/
#cate .catetitle {
	margin-bottom: 20px;
}
#cate .catetitle h1 {
	width: auto;
	padding: 30px 10px;
	font-size: 24px;
}

/*article*/
#article article h1 {
	font-size: 26px;
}

#article article h2 {
	font-size: 22px;
}

#article article h3 {
	font-size: 20px;
}

#article article h4,
#article article .writerdetail p.tit,
#article article dl.route dt {
	font-size: 18px;
}
#article article dl.route dt h2 {
	font-size: 18px;
}
#article article .image.full:first-child {
	margin: 0 -10px 20px;
}
#article article dl.route dd ol li .image {
	width: 100%;
	margin-right: 0;
	margin-bottom: 10px;
}
#article article dl.route dd ol li .image img {
	margin: 0 auto;
}
#article article dl.route dd ol li p.name {
	margin-right: 0;
	text-align: center;
	box-sizing: border-box;
}
#article article dl.route dd ol li .link {
	margin-top: 10px;
	width: 100%;
}
#article article dl.route dd ol li .link a {
	width: 100%;
	max-width: none;
}
#article article dl.route dd ol li p.rate,
#article article dl.route dd ol li:nth-last-child(2) p.rate {
	margin: 10px -15px;
    padding: 10px 10px 10px 50px;
	box-sizing: inherit;
}
#article article dl.route dd ol li p.rate {
	background: url("/img/article/icon_flow_01.png") 15px center no-repeat #F8F8F8;
	background-size: 26px 14px;
}
#article article dl.route dd ol li:nth-last-child(2) p.rate {
	background: url("/img/article/icon_flow_02.png") 15px center no-repeat #F8F8F8;
	background-size: 26px 14px;
}

#article article dl.route dd .summary p.ratedate {
	font-size: 18px;
}
#article article dl.route dt,
#article article dl.route dd,
#article article .attention,
#article article .writerdetail {
	padding: 15px;
}
#article article .wide {
position: relative;
margin-bottom: 20px;
width: 100%;
overflow: auto;
-webkit-overflow-scrolling: touch;
}
#article article .wide:before {
	display: block;
	width: 100%;
	margin-bottom: 10px;
	padding: 2px 10px;
	text-align: center;
	background: #229cd9; /* Old browsers */
	background: -moz-linear-gradient(left, #229cd9 60%, #229cd9 60%, #ffffff 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #229cd9 60%,#229cd9 60%,#ffffff 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #229cd9 60%,#229cd9 60%,#ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#229cd9', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 */
	content: "右にスライドできます";
	font-size: 13px;
	font-weight: bold;
	color: #FFFFFF;
		-webkit-animation:blink 2.5s ease-in-out infinite alternate;
    -moz-animation:blink 2.5s ease-in-out infinite alternate;
    animation:blink 2.5s ease-in-out infinite alternate;
	box-sizing: border-box;
	border-radius: 5px 0 0 5px;
}
@-webkit-keyframes blink{
    0% {opacity:0.3;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0.3;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0.3;}
    100% {opacity:1;}
}
#article article .wide table.common {
width: 590px;
}
#article article .googlemap {
	height: 300px;
}

/*pager*/
main .pager p.servcount {
	display: none;
}
main .pager ul {
	float: none;
	text-align: center;
}

main .pager li {
	display: inline-block;
	float: none;
}