@charset "utf-8";
/*reset-------------------------------------------------*/
body,div,h1,h2,h3,h4,h5,h6,p,dl,dt,dd {
  margin: 0;
  padding: 0;
	font-weight:inherit;
	font-size:inherit;
}

* {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  border: none;
  vertical-align: top;
		 -webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

header,section,article,aside,footer,nav {
 display: block;
}

a {
  text-decoration: none;
  cursor: pointer;
  display: block;
	color:inherit;
}

ul,li,ol {
  margin: 0px;
  padding: 0px;
  list-style: none;
}
/*-------------------------------------------------reset*/


/*common-------------------------------------------------*/
html {
  font-size: 10px;
}

body {
	font-size:1.4em;
 color: #000;
	font-family: "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

*::selection {
	background:#d71a28;
	color:#fff;
}

.pc {
	display: block;
}

.sp {
	display: none;
}

/*-------------------------------------------------common*/


@media all and (min-width: 1201px) {
/*------------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------------*/
/*#header {
	position: relative;
	width: 1200px;
	height: 630px;
	margin: 0 auto 42px;
	background: url(../image/ikasatrip/title_back.jpg) no-repeat center center;
}

#header h1 {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 280px);
}
*/

#header {
	position: relative;
	margin: 0 auto 42px;
}

#header h1 {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 280px);
}

#header .image img {
	width: 100%;
	height: auto;
}
	
.box01 {
	width: 1000px;
	padding: 24px;
	margin: 0 auto 40px;
	background-color: #fef9f1;
	border-radius: 16px;
	display: flex;
	justify-content: space-between;
	line-height: 2;
}

.box01 div {
	width: 48%;
}

.box01 h2 {
	font-size: 24px;
}

.box01 h2 img {
	margin: -8px 0 0;
}

.box01 p {
	margin: 0 0 4px;
}

.box01 p.atten {
	margin: 40px 0 0;
}

.box02 {
	position: relative;
	width: 1000px;
	margin: 0 auto;
}

.box02:before {
	position: absolute;
	content: "";
	top: -20px;
	right: -100px;
	width: 529px;
	height: 746px;
	background: url(../image/ikasatrip/box02_back.png) no-repeat;
	z-index: -1;
}

.box02 ol {
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
}

.box02 ol li {
	width: 100%;
	margin: 0 0 6px;
	padding: 0;
	font-size: 24px;
	font-weight: bold;
}

.box02 ol li p {
	padding: 4px 8px;
	display: inline-block;
	background-color: #fef9f1;
}

.cKasaoka {
	color: #f49800;
}

.cIbara {
	color: #00479d;
}

.cYakage {
	color: #996c33;
}

.box02 p.lead {
	line-height: 2;
	margin: 60px 0 100px;
}

.boxTown {
	width: 1000px;
	margin: 0 auto 40px;
}

.boxTown h2 {
	margin: 0 0 40px -20px;
}

.boxTown .column {
	display: flex;
	justify-content: left;
}

.boxTown .column div:nth-of-type(1) {
	width: 34%;
	margin: 0 3% 0 0;
	line-height: 2;
}

.boxTown .column div:nth-of-type(2) {
	width: 30%;
	margin: 0 3% 0 0;
}

.boxTown .column div:nth-of-type(2) {
	width: 30%;
}

.boxTown .column div:nth-of-type(2) img,
.boxTown .column div:nth-of-type(3) img {
	max-width: 100%;
	height: auto;
}

.course {
	padding: 0 0 60px;
	background-color: #fef9f1;
}

.course .inner {
	width: 1000px;
	margin: 0 auto;
	padding: 40px 0 0;
}

.course .inner h2 {
	margin: 0 0 60px;
	background: url(../image/ikasatrip/course_line.png) repeat-x 0 center;
	text-align: center;
}

.course .inner h3 {
	font-size: 48px;
	font-weight: bold;
}

.course .inner p.sub {
	font-size: 24px;
}

.course .inner .route {
	display: flex;
	flex-wrap: wrap;
	padding: 60px 0 0;
}

.course .inner .route .point {
	width: 200px;
	position: relative;
	margin: 0 0 20px;
}

.course .inner .route .point2 {
	width: 307px;
	position: relative;
	margin: 0 0 20px;
	text-align: center;
}

.course .inner .route .point4 {
	width: 468px;
	position: relative;
	margin: 0 0 20px;
	text-align: center;
}

.course .inner .point3 {
	width: 354px;
	position: relative;
	text-align: center;
}

.course .inner .point1 {
	position: absolute;
	top: -30px;
	left: 0;
	width: 100%;
	font-weight: bold;
	text-align: center;
}

.course .inner .route .point p,
.course .inner .route .point2 p,
.course .inner .route .point4 p {
	text-align: center;
	line-height: 1.6;
	margin: 4px 0 0;
}

.course .inner .route .point p strong,
.course .inner .route .point2 p strong,
.course .inner .route .point4 p strong {
	font-size: 1.1em;
}

.course .inner .route .arrow {
	width: 66px;
}

.course .inner hr {
	border: none;
	margin: 30px 0 60px;
	height: 6px;
	background: url(../image/ikasatrip/course_line-02.png) repeat-x 0 0;
}

.course .nov {
	background-color: #f39700;
	margin: 0 0 46px;
	padding: 60px 10px 20px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.course .dec {
	background-color: #88ABDA;
	padding: 60px 10px 20px;
	display: flex;
	flex-wrap: wrap;
}

.course .nov div, .course .dec div {
	position: relative;
	text-align: center;
}

.course .nov div.month p.novm {
	font-size: 30px;
	font-weight: bold;
	line-height: 0.8;
	text-align: center;
	padding-right: 16px;
	margin-top: -40px;
}

.course .dec div.month p {
	font-size: 30px;
	font-weight: bold;
	line-height: 0.8;
	text-align: center;
	padding-right: 16px;
	margin-top: 70px;
}

.course .nov div:nth-child(1) .s,
.course .dec div:nth-child(1) .s {
	font-size: 16px;
}

.course .inner .nov .arrow {
	width: 66px;
	margin-top: -40px;
}

.course .nov div p,
.course .dec div p {
	text-align: center;
	line-height: 1.6;
	margin: 4px 0 0;
}

.course .nov div p strong ,
.course .dec div p strong {
	font-size: 1.1em;
}

.course .inner .time {
	width: 296px;
	margin-left: 100px;
}

.course .route .mgn {
	margin-top: 80px !important;
}

.schedule {
	width: 1000px;
	margin: 0 auto;
	padding: 60px 0;
}

.schedule .title {
	display: flex;
}

.schedule .title ul {
	margin: 40px 0 34px 40px;
	padding: 0;
	list-style: none;
	display: flex;
}

.schedule .title ul li {
	position: relative;
	margin: 0;
	padding: 0 0 0 60px;
	font-size: 18px;
}

.schedule .title ul li:before {
	content: "";
	position: absolute;
	top: -16px;
	left: 0;
	width: 54px;
	height: 54px;
}

.schedule .title ul li:nth-child(1) {
	margin-right: 40px;
}

.schedule .title ul li:nth-child(1):before {
	background-color: #f49800;
	border-radius: 100%;
}

.schedule .title ul li:nth-child(2):before {
	background-color: #00479d;
	border-radius: 100%;
}

.schedule .title p {
	margin-left: 40px;
	font-size: 18px;
}

.schedule .calendar {
	display: flex;
	justify-content: space-between;
	width: 920px;
	margin: 60px auto 30px;
}

.wn {
	width: 1000px;
	margin: 0 auto 60px;
}

.wn h2 {
	margin: 0 0 50px;
}

.wn .list {
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	margin-bottom: 60px;
}

.wn .list div {
	width: 200px;
	margin: 0 64px 50px 0;
}

.wn .list div:nth-of-type(4n) {
	margin: 0;
}

.wn .list div dl {
	margin: 4px 0 0;
}

.wn .list div dl dd {
	font-weight: bold;
	line-height: 1.2;
	margin: 4px 0 0;
}

.wn .list a:hover img {
	opacity: .6;
}

.wn .btn a {
	display: block;
	width: 316px;
	border: 1px solid #000;
	border-radius: 8px;
	margin: 0 0 0 auto;
	padding: 20px;
	font-weight: bold;
	text-align: center;
	position: relative;
}

.wn .btn2 a {
	display: block;
	width: 316px;
	border: 1px solid #000;
	border-radius: 8px;
	margin: 0 auto;
	padding: 20px;
	font-weight: bold;
	text-align: center;
	position: relative;
}

.wn .btn a:before,
.wn .btn2 a:before {
	content: ">";
	position: absolute;
	top: calc( 50% - 13px);
	left: 90%;
}

.wn .btn a:hover,
.wn .btn2 a:hover {
	background-color: #fef9f1;
}

.order {
	padding: 60px 0;
	background-color: #FF0000;
}

.order .inner {
	width: 600px;
	margin: 0 auto;
}

.order .inner h2 {
	margin: 0 0 30px;
	color: #FFF;
	font-size: 36px;
	text-align: center;
	font-weight: bold;
}

.order .inner h2 span {
	display: block;
	font-size: 16px;
}

.order .inner .number {
	padding: 30px;
	text-align: center;
	border-radius: 16px;
	background-color: #FFF;
	color: #ff0000;
}

.order .inner .number .free {
	font-size: 48px;
	font-weight: bold;
	margin: 0 0 8px;
}

.order .inner .number .free img {
	vertical-align: -4px;
	margin-right: 8px;
}

.order .inner .number .tel {
	font-size: 36px;
	font-weight: bold;
	line-height: 0.8;
}

.order .inner .number .tel .title {
	font-size: 30px;
	margin-right: 10px;
}

.order .inner .number .tel .s {
	font-size: 18px;
	font-weight: normal;
}

#footer {
	width: 1000px;
	margin: 0 auto;
	padding: 30px 0;
	display: flex;
	justify-content: space-between;
}

#footer div:nth-of-type(1) a {
	display: inline-block;
	margin: 12px 0 0;
	padding: 8px 40px;
	text-align: center;
	color: #FFF;
	background-color: #868585;
	border-radius: 20px;
	border: 1px solid #868585;
}

#footer div:nth-of-type(1) a:hover {
	background-color: #FFF;
	color: #868585;
}

#footer div:nth-of-type(2) {
	text-align: right;
}

.wnDetail {
	width: 630px;
	margin: 0 auto 60px;
}

.wnDetail h3 {
	font-size: 24px;
	font-weight: bold;
}

.wnDetail p.date {
	font-size: 16px;
	margin-bottom: 40px;
}

.wnDetail .cont p {
	margin: 0 0 30px;
}

}


@media all and (max-width: 1200px) {

.pc {
	display: none;
}

.sp {
	display: block;
}

img {
	max-width: 100%;
	height: auto;
}

body {
	font-size: 16px;
}

.pagetop {
	position: fixed;
	bottom: 10px;
	right: 10px;
}

/*------------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------------*/
#header {
	position: relative;
	width: 100%;
	height: 320px;
	margin: 0 auto 42px;
	background: url(../image/ikasatrip/title_back.jpg) no-repeat center center;
	background-size: cover;
}

#header h1 {
	position: absolute;
	bottom: 0;
	left: calc( 50% - 140px);
}



#header h1 img {
	width: 280px;
	height: auto;
}

.box01 {
	width: 94%;
	padding: 24px;
	margin: 0 auto 40px;
	background-color: #fef9f1;
	border-radius: 16px;
	line-height: 2;
}

.box01 div {
	margin: 0 0 10px;
}

.box01 h2 {
	font-size: 24px;
}

.box01 h2 img {
	margin: -8px 0 0;
}

.box01 p {
	margin: 0 0 4px;
}

.box01 p.atten {
	margin: 10px 0 0;
}

.box02 {
	position: relative;
	width: 94%;
	margin: 0 auto;
}

.box02 ol {
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
}

.box02 ol li {
	width: 100%;
	margin: 0 0 6px;
	padding: 0;
	font-size: 20px;
	font-weight: bold;
}

.box02 ol li p {
	padding: 4px 8px;
	display: inline-block;
	background-color: #fef9f1;
}

.cKasaoka {
	color: #f49800;
}

.cIbara {
	color: #00479d;
}

.cYakage {
	color: #996c33;
}

.box02 p.lead {
	line-height: 2;
	margin: 0 0 60px;
}

.box02 .map {
	text-align: center;
	margin: 30px 20px;
}

.box02 .map img {
	width: 70%;
}

.boxTown {
	width: 94%;
	margin: 0 auto 60px;
}

.boxTown h2 {
	margin: 0 0 20px;
}

.boxTown h2 img {
	width: 237px;
}

.boxTown .column {
}

.boxTown .column div {
	margin: 0 0 10px;
	line-height: 2;
	text-align: center;
}

.boxTown .column div:nth-of-type(1) {
	text-align: left;
}

.course {
	padding: 0 0 60px;
	background-color: #fef9f1;
}

.course .inner {
	width: 94%;
	margin: 0 auto;
	padding: 40px 0 0;
}

.course .inner h2 {
	margin: 0 0 60px;
	background: url(../image/ikasatrip/course_line.png) repeat-x 0 center;
	text-align: center;
}

.course .inner h2 img {
	width: 195px;
}

.course .inner h3 {
	font-size: 24px;
	font-weight: bold;
}

.course .inner p.sub {
	font-size: 18px;
	margin-bottom: 60px;
}

.course .inner .route {
	display: flex;
	flex-wrap: wrap;
}

.course .inner .route .point {
	position: relative;
	margin: 0 0 60px;
	text-align: center;
	width: 40%;
}

.course .inner .route .point2 {
	width: auto;
	position: relative;
	margin: 0 0 20px;
	text-align: center;
}

.course .inner .route .point4 {
	width: 100%;
	position: relative;
	margin: 0 0 20px;
	text-align: center;
}

.course .inner .point3 {
	width: 100%;
	position: relative;
	text-align: center;
}

.course .inner .point1 {
	position: absolute;
	top: -30px;
	left: 0;
	width: 100%;
	font-weight: bold;
	text-align: center;
}

.course .inner .route .point p,
.course .inner .route .point2 p,
.course .inner .route .point4 p {
	text-align: center;
	line-height: 1.6;
	margin: 4px 0 0;
}

.course .inner .route .point p strong,
.course .inner .route .point2 p strong,
.course .inner .route .point4 p strong {
	font-size: 16px;
}

.course .inner .route .arrow {
	width: 10%;
}

.course .inner hr {
	border: none;
	margin: 30px 0 60px;
	height: 6px;
	background: url(../image/ikasatrip/course_line-02.png) repeat-x 0 0;
}

.course .nov {
	background-color: #f39700;
	margin: 0 0 46px;
	padding: 10px;
}

.course .dec {
	background-color: #88ABDA;
	margin: 0 0 46px;
	padding:10px;
}

.course .nov div, .course .dec div {
	position: relative;
	text-align: center;
}

.course .nov div.month p.novm {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 40px;
}

.course .dec div.month p {
	font-size: 20px;
	font-weight: bold;
	line-height: 0.8;
	text-align: center;
	padding-right: 16px;
	margin-bottom: 40px;
}

.course .nov div:nth-child(1) .s,
.course .dec div:nth-child(1) .s {
	font-size: 16px;
}

.course .inner .nov .arrow, .course .inner .dec .arrow {
	width: 100%;
	text-align: center;
	margin: 30px 0 60px;
}

.course .nov div p,
.course .dec div p {
	text-align: center;
	line-height: 1.6;
	margin: 4px 0 0;
}

.course .nov div p strong ,
.course .dec div p strong {
	font-size: 1.1em;
}

.course .inner .time {
	width: 296px;
}

.schedule {
	width: 94%;
	margin: 0 auto;
	padding: 60px 0;
}

.schedule .title {
}

.schedule .title img {
	width: 82px;
}

.schedule .title ul {
	margin: 40px 0 34px;
	padding: 0;
	list-style: none;
}

.schedule .title ul li {
	position: relative;
	margin: 0 0 20px;
	padding: 0 0 0 34px;
	font-size: 18px;
}

.schedule .title ul li:before {
	content: "";
	position: absolute;
	top: -2px;
	left: 0;
	width: 30px;
	height: 30px;
}

.schedule .title ul li:nth-child(1) {
	margin-right: 40px;
}

.schedule .title ul li:nth-child(1):before {
	background-color: #f49800;
	border-radius: 100%;
}

.schedule .title ul li:nth-child(2):before {
	background-color: #00479d;
	border-radius: 100%;
}

.schedule .title p {
	font-size: 18px;
}

.schedule .calendar {
	margin: 60px auto 0;
}

.schedule .calendar div {
	margin: 0 0 60px;
	text-align: center;
}

.schedule .calendar img {
	width: 80%;
}

.wn {
	width: 94%;
	margin: 0 auto 60px;
}

.wn h2 {
	margin: 0 0 50px;
}

.wn h2 img {
	width: 156px;
}

.wn .list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 60px;
}

.wn .list div {
	width: 46%;
	margin: 0 2% 30px;
}

/*.wn .list div:nth-of-type(4) {
	margin: 0;
}*/

.wn .list div dl {
	margin: 4px 0 0;
}

.wn .list div dl dd {
	font-weight: bold;
	line-height: 1.2;
	margin: 4px 0 0;
}

.wn .list img {
	display: block;
	margin: 0 auto;
}

.wn .list a:hover img {
	opacity: .6;
}

.wn .btn a {
	display: block;
	width: 100%;
	border: 1px solid #000;
	border-radius: 8px;
	margin: 0 auto;
	padding: 20px;
	font-weight: bold;
	text-align: center;
	position: relative;
}

.wn .btn2 a {
	display: block;
	width: 100%;
	border: 1px solid #000;
	border-radius: 8px;
	margin: 0 auto;
	padding: 20px;
	font-weight: bold;
	text-align: center;
	position: relative;
}

.wn .btn a:before,
.wn .btn2 a:before {
	content: ">";
	position: absolute;
	top: calc( 50% - 13px);
	left: 90%;
}

.wn .btn a:hover,
.wn .btn2 a:hover {
	background-color: #fef9f1;
}

.order {
	padding: 30px 0;
	background-color: #FF0000;
}

.order .inner {
	width: 90%;
	margin: 0 auto;
}

.order .inner h2 {
	margin: 0 0 30px;
	color: #FFF;
	font-size: 30px;
	text-align: center;
	font-weight: bold;
}

.order .inner h2 span {
	display: block;
	font-size: 16px;
}

.order .inner .number {
	padding: 30px;
	text-align: center;
	border-radius: 16px;
	background-color: #FFF;
	color: #ff0000;
}

.order .inner .number .free {
	font-size: 30px;
	font-weight: bold;
	margin: 0 0 8px;
}

.order .inner .number .free img {
	vertical-align: 0;
	margin-right: 8px;
	width: 42px;
}

.order .inner .number .tel {
	font-size: 26px;
	font-weight: bold;
	line-height: 1;
}

.order .inner .number .tel .title {
	font-size: 24px;
	margin-right: 10px;
}

.order .inner .number .tel .s {
	font-size: 18px;
	font-weight: normal;
}

#footer {
	width: 94%;
	margin: 0 auto;
	padding: 30px 0;
}

#footer div:nth-of-type(1) a {
	display: inline-block;
	margin: 12px 0 0;
	padding: 8px 40px;
	text-align: center;
	color: #FFF;
	background-color: #868585;
	border-radius: 20px;
	border: 1px solid #868585;
}

#footer div:nth-of-type(1) a:hover {
	background-color: #FFF;
	color: #868585;
}

#footer div:nth-of-type(2) {
	margin: 30px 0 0;
}

.wnDetail {
	width: 100%;
	margin: 0 auto 60px;
}

.wnDetail h3 {
	font-size: 20px;
	font-weight: bold;
}

.wnDetail p.date {
	font-size: 16px;
	margin-bottom: 40px;
}

.wnDetail .cont p {
	margin: 0 0 30px;
}

}

