@charset "UTF-8";
/* --------------------------------------------

  FileName  : style.css
  Generator : Sass

-------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
@font-face {
	font-family: "icon";
	src: url("./fonts/icon.eot");
	src: url("./fonts/icon.eot?#iefix") format("eot"), url("./fonts/icon.woff") format("woff"), url("./fonts/icon.ttf") format("truetype"), url("./fonts/icon.svg#icon") format("svg");
	font-weight: 400;
	font-style: normal;
	font-display: swipe;
}

/*
html5doctor.com Reset Stylesheet
v1.2
2009-07-15
Author: Richard Clark - http://richclarkdesign.com
*/
*,
*::before,
*::after {
	box-sizing: border-box;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section, menu,
time, mark, audio, video, source {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
	color: #293540;
}

article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section, menu, main {
	display: block;
}

ul, ol {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote::before, blockquote::after,
q::before, q::after {
	content: '';
	content: none;
}

ins {
	background-color: #ff9;
	text-decoration: none;
}

mark {
	background-color: #ff9;
	font-style: italic;
	font-weight: 600;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted #000;
	cursor: help;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1rem 0;
	padding: 0;
}

input, select {
	vertical-align: middle;
}

* {
	box-sizing: border-box;
	min-width: 0;
	min-height: 0;
}

::-moz-selection {
	color: #fff;
	background: #87b1da;
}

::selection {
	color: #fff;
	background: #87b1da;
}

@-ms-viewport {
	width: auto;
}

:root {
	--scroll-bar: 0px;
}

strong {
	font-weight: 700;
}

b {
	font-weight: 900;
}

@page {
	size: A4;
}

/* A4縦 */
html {
	color: #293540;
	font-family: "Noto Sans JP", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 16px;
	font-weight: 500;
	height: 100%;
}

@media only screen and (max-width: 768px) {
	html {
		font-size: 13px;
	}
}

@media print {
	html {
		width: 1240px;
		-webkit-transform-origin: 0 0;
		        transform-origin: 0 0;
		-webkit-transform: scale(0.644, 0.644);
		        transform: scale(0.644, 0.644);
	}
}

@media print and (-ms-high-contrast: none) {
	html {
		-webkit-transform: scale(0.85, 0.85);
		        transform: scale(0.85, 0.85);
	}
}

body {
	position: relative;
	height: 100%;
	font-weight: 400;
	line-height: 1.78;
}

@media print {
	body {
		width: 1240px;
	}
}

a {
	color: #0B59AF;
	text-decoration: underline;
}

@media (pointer: fine) {
	a:hover {
		text-decoration: none;
	}
}

@media (-ms-high-contrast: none) {
	a:hover {
		text-decoration: none;
	}
}

@media (pointer: coarse) {
	a:active {
		text-decoration: none;
	}
}

section > :first-child,
section > :not([class]):first-child,
section > *[class^="sw-"]:first-child,
section > *[class^="-"]:first-child,
aside > :first-child,
aside > :not([class]):first-child,
aside > *[class^="sw-"]:first-child,
aside > *[class^="-"]:first-child,
nav > :first-child,
nav > :not([class]):first-child,
nav > *[class^="sw-"]:first-child,
nav > *[class^="-"]:first-child {
	margin-top: 0;
}

section > :last-child,
section > :not([class]):last-child,
section > *[class^="sw-"]:last-child,
section > *[class^="-"]:last-child,
aside > :last-child,
aside > :not([class]):last-child,
aside > *[class^="sw-"]:last-child,
aside > *[class^="-"]:last-child,
nav > :last-child,
nav > :not([class]):last-child,
nav > *[class^="sw-"]:last-child,
nav > *[class^="-"]:last-child {
	margin-bottom: 0;
}

section:not([class]),
section[class^="sw-"],
section[class^="-"] {
	margin-top: 2.5rem;
	margin-bottom: 1.5rem;
	border-top: 1px solid #ddd;
	padding-top: 2.5rem;
}

section:not([class]).sw-First,
section[class^="sw-"].sw-First,
section[class^="-"].sw-First {
	border-top: 0;
	padding-top: 0;
}

h2:not([class]),
h2[class^="sw-"],
h2[class^="-"] {
	position: relative;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.4285;
	margin-top: 2.5rem;
	margin-bottom: 2rem;
	padding-left: 28px;
}

h2:not([class])::before,
h2[class^="sw-"]::before,
h2[class^="-"]::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 7px;
	border-left: 4px double #0B59AF;
	border-right: 1px solid #0B59AF;
}

@media only screen and (max-width: 768px) {
	h2:not([class]),
	h2[class^="sw-"],
	h2[class^="-"] {
		font-size: 1.53846rem;
		padding-left: 20px;
	}
}

h3:not([class]),
h3[class^="sw-"],
h3[class^="-"] {
	position: relative;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.4285;
	margin-top: 2.5rem;
	margin-bottom: 1.5rem;
	padding-left: 20px;
}

@media only screen and (max-width: 768px) {
	h3:not([class]),
	h3[class^="sw-"],
	h3[class^="-"] {
		font-size: 1.38462rem;
	}
}

h3:not([class])::before,
h3[class^="sw-"]::before,
h3[class^="-"]::before {
	content: '';
	display: block;
	position: absolute;
	top: calc(50% - 7px);
	left: 0;
	width: 14px;
	height: 14px;
	background: transparent;
	border: 4px solid #0B59AF;
	border-radius: 50%;
}

.tp-Route_Contents.-kobe h3:not([class])::before, .tp-Route_Contents.-kobe
h3[class^="sw-"]::before, .tp-Route_Contents.-kobe
h3[class^="-"]::before {
	border-color: #E5137F;
}

.tp-Route_Contents.-wangan-osakako h3:not([class])::before, .tp-Route_Contents.-wangan-osakako
h3[class^="sw-"]::before, .tp-Route_Contents.-wangan-osakako
h3[class^="-"]::before {
	border-color: #1E2087;
}

.tp-Route_Contents.-sakai h3:not([class])::before, .tp-Route_Contents.-sakai
h3[class^="sw-"]::before, .tp-Route_Contents.-sakai
h3[class^="-"]::before {
	border-color: #e3ac47;
}

.tp-Route_Contents.-ikeda h3:not([class])::before, .tp-Route_Contents.-ikeda
h3[class^="sw-"]::before, .tp-Route_Contents.-ikeda
h3[class^="-"]::before {
	border-color: #59B531;
}

.tp-Route_Contents.-moriguchi h3:not([class])::before, .tp-Route_Contents.-moriguchi
h3[class^="sw-"]::before, .tp-Route_Contents.-moriguchi
h3[class^="-"]::before {
	border-color: #F39825;
}

.tp-Route_Contents.-higashiosaka h3:not([class])::before, .tp-Route_Contents.-higashiosaka
h3[class^="sw-"]::before, .tp-Route_Contents.-higashiosaka
h3[class^="-"]::before {
	border-color: #796b57;
}

.tp-Route_Contents.-matsubara h3:not([class])::before, .tp-Route_Contents.-matsubara
h3[class^="sw-"]::before, .tp-Route_Contents.-matsubara
h3[class^="-"]::before {
	border-color: #1AA1E9;
}

h2:not([class]) + h3:not([class]),
h2[class^="sw-"] + h3:not([class]),
h2[class^="-"] + h3:not([class]), h2:not([class]) +
h3[class^="sw-"],
h2[class^="sw-"] +
h3[class^="sw-"],
h2[class^="-"] +
h3[class^="sw-"], h2:not([class]) +
h3[class^="-"],
h2[class^="sw-"] +
h3[class^="-"],
h2[class^="-"] +
h3[class^="-"] {
	margin-top: 0;
}

section > h3:not([class]):first-child, section >
h3[class^="sw-"]:first-child, section >
h3[class^="-"]:first-child {
	margin-top: 0;
}

.c-Grid_Item.-col > h3:not([class]), .c-Grid_Item.-col >
h3[class^="sw-"], .c-Grid_Item.-col >
h3[class^="-"] {
	-webkit-box-flex: 0;
	-webkit-flex: 0 0 auto;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}

h4:not([class]),
h4[class^="sw-"],
h4[class^="-"] {
	position: relative;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.4285;
	background: #eee;
	padding: 0.75rem 15px 0.75rem 30px;
	border-radius: 5px;
	margin-top: 2rem;
	margin-bottom: 1.5rem;
}

h4:not([class])::before,
h4[class^="sw-"]::before,
h4[class^="-"]::before {
	content: '';
	display: block;
	position: absolute;
	top: 12px;
	top: 0.75rem;
	bottom: 12px;
	bottom: 0.75rem;
	left: 15px;
	width: 5px;
	background: #B5CDE7;
}

h3:not([class]) + h4:not([class]),
h3[class^="sw-"] + h4:not([class]),
h3[class^="-"] + h4:not([class]), h3:not([class]) +
h4[class^="sw-"],
h3[class^="sw-"] +
h4[class^="sw-"],
h3[class^="-"] +
h4[class^="sw-"], h3:not([class]) +
h4[class^="-"],
h3[class^="sw-"] +
h4[class^="-"],
h3[class^="-"] +
h4[class^="-"] {
	margin-top: 0;
}

h5:not([class]),
h5[class^="sw-"],
h5[class^="-"] {
	font-size: 1.125rem;
	font-weight: 700;
	color: #0B59AF;
	line-height: 1.4285;
	margin-top: 2rem;
	margin-bottom: 1.5rem;
}


img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
	line-height: 1;
}

figure {
	text-align: center;
}

figure:not([class]), figure[class^="sw-"], figure[class^="-"] {
	margin-bottom: 1.5rem;
}

figcaption {
	line-height: 1.67;
	text-align: center;
	margin-top: 0.75rem;
}

pre {
	margin-bottom: 1.75rem;
	padding: 1rem 20px;
	font-family: monospace;
	color: #fff;
	background: #666;
	width: 100%;
	overflow-x: auto;
}

sup {
	font-size: smaller;
	vertical-align: super;
}

sub {
	font-size: smaller;
	vertical-align: sub;
}




@-webkit-keyframes ball-scale {
	0% {
		-webkit-transform: scale(0);
		        transform: scale(0);
	}
	100% {
		-webkit-transform: scale(1);
		        transform: scale(1);
		opacity: 0;
	}
}

@keyframes ball-scale {
	0% {
		-webkit-transform: scale(0);
		        transform: scale(0);
	}
	100% {
		-webkit-transform: scale(1);
		        transform: scale(1);
		opacity: 0;
	}
}


.sw-L {
	text-align: left;
}

.sw-C {
	text-align: center;
	margin-top:1em;
    font-size: 16px;
	margin-bottom:2em;
}
.sw-C2 {
	text-align: center;
	font-size: 20px;
	margin-bottom:2em;
}
.sw-C3 {
	text-align: center;
}





.st-Contents {
	max-width: 1340px;
	margin: 0 auto;
	padding-top: 2.5rem;
}


@media print {
	.st-Contents {
		padding-top: 40px;
	}
}

.st-Contents > :first-child {
	margin-top: 0;
}

.st-Contents > :last-child {
	margin-bottom: 0;
}


.st-Main {
	padding: 0 80px;
	/*min-width: 960px;*/
  	/*width: 1180px;*/
	margin-bottom: 8rem;
}


.st-Page2Top {
	position: fixed;
	right: 2%;
	bottom: 20px;
	z-index: 999;
	opacity: 0;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}


.st-Page2Top.-visible {
	opacity: 1;
}

.st-Page2Top > a {
	position: relative;
	display: block;
	padding-left: 50px;
	width: 0;
	height: 50px;
	text-indent: 100%;
	border-radius: 50%;
	white-space: nowrap;
	overflow: hidden;
	background: rgba(75, 75, 75, .7);
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
}


@media (pointer: fine) {
	.st-Page2Top > a:hover {
		background: rgba(11, 89, 175, .7);
	}
}

@media (-ms-high-contrast: none) {
	.st-Page2Top > a:hover {
		background: rgba(11, 89, 175, .7);
	}
}

@media (pointer: coarse) {
	.st-Page2Top > a:active {
		background: rgba(11, 89, 175, .7);
	}
}

.st-Page2Top > a::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 16px;
	border-top: 3px solid #fff;
	border-left: 3px solid #fff;
	-webkit-transform-origin: 0 0;
	        transform-origin: 0 0;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	        transform: translate(0, -50%) rotate(45deg);
}

.st-TopicPath {
		padding: 1.25rem 0 0;
}

.st-TopicPath_List {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	max-width: 1340px;
	margin: 0 auto;
}

.st-TopicPath_Item {
	font-size: 0.8125rem;
	line-height: 1.4285;
	padding-right: 10px;
	color: #FFF;
}

.st-TopicPath_Item::after {
	font-family: 'icon' !important;
	speak: none;
	font-style: normal;
	font-weight: 400;
	-webkit-font-feature-settings: normal;
	        font-feature-settings: normal;
	font-variant: normal;
	text-transform: none;
	text-indent: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 1;
	content: "＞";
	margin-left: 10px;
	font-size: 10px;
}

.st-TopicPath_Item:last-child {
	padding-right: 0;
}

.st-TopicPath_Item:last-child::after {
	content: none;
}

.st-TopicPath_Item > a {
	display: inline-block;
	text-decoration: underline;
	color: #FFF;
}

.c-Header {
	text-align: center;
	margin-bottom: 2.5rem;
}

.c-Header_Title {
	font-size: 2.625rem;
	line-height: 1.25;
	vertical-align: baseline;
	margin-bottom: 0.5rem;
}

.c-Header_Title:last-child {
	margin-bottom: 0;
}


.c-Header_Title > b {
	display: inline-block;
	line-height: inherit;
	background: -webkit-linear-gradient(top, transparent 0%, transparent 75%, #EFF55E 75.01%, #EFF55E 100%);
	background: linear-gradient(to bottom, transparent 0%, transparent 75%, #EFF55E 75.01%, #EFF55E 100%);
}

.c-Header_Sub {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.4285;
	margin-bottom: 0.5rem;
}


.c-Header_Sub:last-child {
	margin-bottom: 0;
}

.c-Header_Sub > b {
	display: inline-block;
	line-height: inherit;
	/*background: -webkit-linear-gradient(top, transparent 0%, transparent 75%, #EFF55E 75.01%, #EFF55E 100%);
	background: linear-gradient(to bottom, transparent 0%, transparent 75%, #EFF55E 75.01%, #EFF55E 100%);*/
}

.c-Header_Sub2 {
	color: #fff;
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.4285;
	margin-top: 0.5rem;
}





.c-Map_Main {
	background: #fff;
}

.c-Map_Main img {
	display: block;
	width: 100%;
	max-width: none;
	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
}

    .c-Map_Main img {
        width: 700px!important;
        height: 821px!important;
        transform: scale(1) translate(0px, 0)!important;
    }
	.c-Map_Main {
        width: 700px!important;
        height: 821px!important;
    }




.c-Section {
	margin-top: 4rem;
	margin-bottom: 1.5rem;
}
.pgs-Row {
	padding-bottom: 4.5rem;
	border-bottom:1px solid #000;
}
.c-Section-last .pgs-Row {
	border-bottom:0;
}



.img-Row {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	margin-left: -20px;
	margin-right: -20px;
}


.pgs-Header {
	margin-top: 2.5rem;
	margin-bottom: 0.5rem;
	text-align: right;
}

.pgs-Header_Offer {
	padding-left: 24px;
}


.pgs-Iframe {
	display: block;
	width: 100%;
	/*height: 100%;*/
	margin-left: auto;
	margin-right: auto;
}

.pgs-Iframe.-kanjo {
	max-width: 430px;
	min-height: 582px;
}



.pgs-Row {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-left: -20px;
	margin-right: -20px;
}


.pgs-Row_Item {
	width: 430px;
	margin-left: 20px;
	margin-right: 20px;
}
.pgs-Row_Item_map {
	width: 700px;
}

     
main,
header > .inner,
footer .footerTop {
  width: 1340px!important;
}

body{
  background-color: #e9f0f7;
}
main{
  background-color: #FFF;
}

