@charset "UTF-8";


/* ========================================
  contents
======================================== */
.mainVisual{
	text-align: center;
}
.mainVisual img{
	max-width: 100%;
}
@media screen and (max-width: 768px) {
	.mainVisual{
		background-size: cover;
		background-image: url(/content/sp/shirakami/images/bg_mv_sp.webp);
	}
	.contents img{
		max-width: 100%;
	}
}
@media screen and (min-width: 769px) {
	.mainVisual {
		background: url(/content/sp/shirakami/images/bg_mv.webp) no-repeat center / cover;
		padding: 80px 0 140px;
		margin: 0 0 50px;
		height: 604px;
		box-sizing: border-box;
	}
}



/**/
.contents{
	padding-bottom: 40px;
	font-size: 16px;
	line-height: 1.5;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.contents .intro h3{
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-weight: normal;
	transform: rotate(.03deg);
	position: relative;
	color: #339966;
}
.contents .intro h3 span{
	position: relative;
	z-index: 1;
}
.contents .intro h3:after{
	content: "";
	position: absolute;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,ffffff+20,ffffff+80,ffffff+100&0+0,1+20,1+80,0+100 */
background: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 10%, rgba(255,255,255,1) 90%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,1) 90%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,1) 90%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#00ffffff',GradientType=1 ); /* IE6-9 */
}
.contents::after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.contents .intro .train_box h4{
	color: #fff;
}
.contents .intro{
	background: #f7fef6;
}
.contents .tour{
	background: #f4fded;
}

ul.anchor{
	width: 950px;
	margin: 0 auto 50px;
}
ul.anchor li{
	width: 48%;
	text-align: center;
	float: left;
}
ul.anchor li:last-child{
	float: right;
}
ul.anchor li a{
	display: block;
	padding: 10px 0;
	color: #fff;
	background: #339966 url(/content/sp/shirakami/images/ico_anchor.png) no-repeat 95% center / 18px;
	text-decoration: none;
}
.contents .intro{

}
.contents .intro h2,
.contents .tour h2{
	margin: 0 0 40px;
	padding: 60px 0 0;
	text-align: center;
}
.contents .text{
	text-align: center;
	margin: 0 0 50px;
}
.contents .intro h3{
    font-size: 24px;
    margin: 0 0 40px;
}
.contents .intro h3 + p{
	color: #ff0000;
	margin: -30px 30px 30px;
}
.contents .intro h3:after{
	bottom: 0;
	left: -80px;
	width: 1100px;
	height: 20px;
}
.contents .intro .train_box_wrapper{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
@media screen and (max-width: 768px) {
	.contents .intro .train_box_wrapper{
		flex-flow: column;
	}
}

.contents .intro .train_box{
	/*float: left;*/
	width: 465px;
	margin: 0 0 30px;
}
/*
.contents .intro .train_box:nth-child(2n){
	float: right;
}*/
.contents .intro .train_box h4{
	background: url(/content/sp/shirakami/images/bg_ttl_train.jpg) repeat-x center;
	padding: 10px 20px;
}
.contents .intro .train_box p{
	margin: 10px 0 0;
}
.contents .intro .train_box p span{
	display: block;
	font-size: 12px;
    margin: 10px 0 0;
}
.contents .intro .coment{
	display: block;
	font-size: 12px;
	text-align: right;
	margin: 0 0 60px;
}
.contents .intro div.table{
	padding: 0 0 80px;
}
.contents .intro div.table table{
	width: 100%;
}
.contents .intro div.table th{
	background: #339966;
	color: #fff;
	padding: 10px;
}
.contents .intro div.table th:nth-child(2){
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
}
.contents .intro div.table th:nth-child(3){
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
}
.contents .intro div.table th:nth-child(4){
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
}
.contents .intro div.table td{
	border: solid #339966;
	border-width: 1px 0 0;
	background: #fff;
	text-align: center;
	padding: 10px;
}
.contents .intro div.table td:nth-child(1){
	background: #f7fef6;
	text-align: center;
}
.contents .intro div.table td:nth-child(2){
	border-width: 1px 1px 0;
	width: 180px;
}
.contents .intro div.table td:nth-child(3){
	border-width: 1px 1px 0;
	width: 180px;
}
.contents .intro div.table td:nth-child(4){
	width: 180px;
}
.contents .intro div.table p{
	text-align: right;
	margin: 10px 0 0;
    font-size: 14px;
}
.contents .intro div.table p span{
	float: left;
	color: #ff0000;
}
.contents .intro .facility{
	display: flex;
	margin: 0 0 60px;
}
.contents .intro .facility dt{

}
.contents .intro .facility dd{
	width: 300px;
	margin: 0 20px 0 10px;
}
.contents .intro .facility dd span{
	display: block;
	color: #339966;
	font-weight: bold;
	margin: 0 0 10px;
}
.contents .mailmagazin{
	text-align: center;
	position: relative;
}
.contents .mailmagazin div{
	display: inline-block;
    vertical-align: middle;
    margin: 0 30px 0 0;
}
.contents .mailmagazin div > img{
	display: block;
}
.contents .mailmagazin div a{
	margin: 0 10px;
}
.contents .mailmagazin a.btn_mailmaga{
	display: inline-block;
	vertical-align: middle;
}
.contents .mailmagazin:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 21px;
    height: 21px;
    background: url(/content/sp/shirakami/images/pic_top_left.gif) no-repeat;
}
.contents .mailmagazin:after{
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 21px;
    height: 21px;
    background: url(/content/sp/shirakami/images/pic_top_right.gif) no-repeat;
}
.contents .mailmagazin div:before{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 21px;
    height: 21px;
    background: url(/content/sp/shirakami/images/pic_btm_left.gif) no-repeat;
}
.contents .mailmagazin div:after{
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 21px;
    height: 21px;
    background: url(/content/sp/shirakami/images/pic_btm_right.gif) no-repeat;
}



.contents .col2 li{float: left; width: 49%; margin-bottom: 10px;}
.contents .col2 li:nth-child(even){float: right; text-align: right;}
.contents .col2:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}


/* contentWidth
---------------------------------------*/
.contentWidth{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin: auto;
}

@media screen and (min-width: 769px) {
	.contentWidth{
		width: 950px;
	}

	section.contentWidth.secBanner{padding: 40px 0 0;}
	.contents .col2 li{float: left; width: 49%; margin-bottom: 10px;}
	.contents .col2 li:nth-child(even){float: right; text-align: right;}
	.contents .col2:after {
		content: ".";
		display: block;
		height: 0;
		clear: both;
		visibility: hidden;
	}
}

/* secSearch
---------------------------------------*/
.secTheme h2{
	background: #339966;
	text-align: left;
	margin-bottom: 20px;
}

.secTheme .tab li{
	float: left;
	background : #f6f4e8;
	padding: 10px 1em;
	cursor: pointer;
}
.secTheme .tab li:first-child{
	background : #dfd5a7;
}

.secTheme .tab_content{
	background : #dfd5a7;
	padding: 1em;
}
.secTheme .tab_content.tabMember{
	background : #f6f4e8;
}
.secTheme .tab_content li{
	display: inline-block;
}
.secTheme .tab_content li:after{
	content: '｜';
	color: #8d7e36;
}
.secTheme .tab_content li a{
	color: #333;
}
section.contentWidth.secBanner{
	padding: 40px 0;
}

@media screen and (max-width: 768px) {

	ul.anchor{
		margin: 20px 10px 30px;
	    width: auto;
	}
	ul.anchor li{
		width: 48%;
	}
	ul.anchor li:last-child{
		float: right;
	}

	.contents .text{
		margin: 0 0 20px;
	}

	.contents .intro{
	    overflow: hidden;
		padding: 0 10px;
	}
	.contents .intro h3{
		font-size: 20px;
	}
	.contents .intro h3 + p{
		margin: -30px 0 30px 30px;
		font-size: 14px;
	}
	.contents .intro h3 img{
		width: 25px;
	    margin: 0 5px 0 0;
	}
	.contents .intro .train_box h4{
		padding: 8px 10px;
	}
	.contents .intro .train_box{
		max-width: 100%;

	}
	/*
	.contents .intro .train_box:nth-child(2n),
	.contents .intro .train_box{
		float: none;
		width: auto;
	}*/
	.contents .intro .coment{
		margin: 0;
	    text-align: left;
	}
	.contents .intro div.table{
		font-size: 14px;
	}
	.contents .intro div.table th{
		font-size: 12px;
	}
	.contents .intro div.table td:nth-child(2),
	.contents .intro div.table td:nth-child(3),
	.contents .intro div.table td:nth-child(4){
		width: 20%;
	}

	.contents .intro .facility{
		display: inline-block;
		letter-spacing: -5px;
	}
	.contents .intro .facility dt{
		display: inline-block;
		vertical-align: top;
		margin: 0 0 10px;
	}
	.contents .intro .facility dd{
		display: inline-block;
		width: calc(100% - 100px);
		margin: 0 0 10px 10px;
		vertical-align: top;
		letter-spacing: 0;
	}

	.contents .tour{
		padding: 0 10px;
	}
	.contents .tour h3{
		font-size: 15px;
		padding: 10px 10px 10px 20px;
		margin: 0 0 15px;
	}
	.contents .tour h3:before{
		border: 17px solid transparent;
		border-left: 12px solid #f4fded;
	}
	.contents .tour h3:after{
		border: 17px solid transparent;
		border-right: 12px solid #f4fded;
	}
	.contents .tour .pic{
		margin: 0 0 20px;
		float: none;
	}
	.contents .tour .detail{
		float: none;
		width: auto;
	}
	.contents .tour .detail p{
		font-size: 14px;
	}
	.contents .tour .detail p span{
		font-size: 18px;
	}
	.contents .tour .bnr li:last-child,
	.contents .tour .bnr li{
		float: none;
	    margin: 10px 0 0;
	}
	.contents .tour .bnr:last-child{
		padding: 0 0 30px;
	    margin: -50px 0 0;
	}
	.contents .intro div.table p{
		text-align: left;
	    font-size: 12px;
	}
	.contents .intro div.table p span{
		float: none;
		display: block;
	}

	.contents .mailmagazin{
		padding: 20px 30px;
		margin: 0 10px;
	}
	.contents .mailmagazin div{
		display: block;
	    margin: 0 0 20px;
	}
	.contents .mailmagazin div > img {
		display: block;
	    margin: auto;
	}


	.secTheme .tab{font-size: 14px;}
	.secTheme .tab_content{font-size: 14px;}
	.secTheme .tab_content li a{
		padding: 3px 0;
		display: inline-block;
	}
	section.contentWidth {
	    padding: 30px 0 20px;
	}
	.sp_inner {padding: 0 12px;}
	section.contentWidth.secBanner{padding: 40px 12px 20px;}
	.contents .col2 li,
	.contents .col2 li:nth-child(even) {
	    float: none;
	    width: auto;
	    text-align: center;
	}
}

.tour_search {
	text-align:center;
}

.tour_search li {
	display: inline-block;
	margin: 0 auto;
}



 
/* 商品 START*/

.tour_box {
	margin: 0 auto 70px;
	width: 100%;
	max-width: 950px;
}
.tour_box a{
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	color: #333;
	font-size: 16px;
}
.tour_box figcaption{
	margin: 6px 0 10px;
	text-align: left;
	font-size: 14px;
}
.tour_box .eyeCatching {
	width: 475px;
	text-align: center;
}
.tour_box .eyeCatching img {
	width: 100%;
}
.tour_box .point {
	border:dotted 2px #4ec4d3;
	margin: 20px 0;
	padding: 10px;
	border-radius: 10px;
}
.tour_box .point p{
	text-align: center;
	color: #4ec4d3;
	font-weight: bold;
	position: relative;
	display: inline-block;
	margin: 0 auto 10px;
}
.tour_box .point p::before{
	content: "◆◆◆";
	display: block;
	width: 1em;
	height: 1em;
	position: absolute;
	top: 0;
	left: -3.6em;
}
.tour_box .point p::after{
	content: "◆◆◆";
	display: block;
	width: 1em;
	height: 1em;
	position: absolute;
	top: 0;
	right: -1.6em;
}
.tour_box .pointList li {
	text-indent: -1em;
	margin-left: 1em;
	margin-bottom: 8px;
	text-align: left;
}
.tour_box .pointList li:last-child {
	margin-bottom: 0;
}
.tour_box .detail{
	width: 460px;
}
.tour_box .tag1 {
	font-size: 12px;
}
.tour_box .tag2 {
	font-size: 12px;
}
.tour_box .course {
	border: 1px solid #c9c9c9;
	background: #fffbfa;
	display: inline-block;
	padding: 2px 8px;
	margin: 0 10px 10px 0;
}
.tour_box .day {
	border: 1px solid #93812f;
    color: #93812f;
    background: #fff;
	display: inline-block;
	padding: 2px 8px;
	margin: 0 10px 10px 0;
}
.tour_box .room {
    border: 1px solid #001c58;
    color: #fff;
    background: #001c58;
	display: inline-block;
	padding: 2px 8px;
	margin: 0 10px 10px 0;
}
.tour_box .food {
    border: 1px solid #001c58;
    color: #001c58;
    background: #fff;
	display: inline-block;
	padding: 2px 8px;
	margin: 0 10px 10px 0;
}
.tour_box .subTtl {
	font-size: 16px;
	margin-bottom: 10px;
}
.tour_box .tourTtl {
	font-size: 24px;
	border-bottom: 1px solid #b09f62;
	padding-bottom:16px;
	margin-bottom: 20px;
}
.tour_box .conductor{
	background: #660066;
    color: #fff;
	display: inline-block;
	padding: 2px 8px;
	margin: 0 10px 10px 0;
}
.tour_box .participants {
	background: #104196;
    color: #fff;
	display: inline-block;
	padding: 2px 8px;
	margin: 0 10px 10px 0;
}
.tour_box .children{
	background: #0087cb;
    color: #fff;
	display: inline-block;
	padding: 2px 8px;
	margin: 0 10px 10px 0;



}
.tour_box .departure {
	position:relative;
	margin-left: 1.2em;
}
.tour_box .station{
	position:relative;
	margin-left: 1.2em;
}
.tour_box .fee {
	position:relative;
	margin-left: 1.2em;
}
.tour_box .fee span {
	color:#e60012;
	font-size: 20px;
	font-weight: bold;
}
.tour_box .departure::before,
.tour_box .station::before {
	display: block;
	content: "";
	width:0.8em;
	height: 0.8em;
	background-color: #93812f;
	position:absolute;
	top:5px;
	left: -1.2em;
}
.tour_box .fee::before {
	display: block;
	content: "";
	width:0.8em;
	height: 0.8em;
	background-color: #93812f;
	position:absolute;
	top:9px;
	left: -1.2em;
}
.tour_box .detailBtn{
	width: 460px;
	margin-top: 20px;
}

@media screen and (max-width: 768px) {
	.tour_box a{
		flex-flow: column;
	}
	.tour_box .eyeCatching {
		width: 100%;
		text-align: center;
	}
	.tour_box .detail{
		width: 100%;
	}
	.tour_box .subTtl {
		font-size: 14px;
		margin-bottom: 10px;
	}
	.tour_box .tourTtl {
		font-size: 18px;
		border-bottom: 1px solid #b09f62;
		padding-bottom:16px;
		margin-bottom: 20px;
	}
	.tour_box .detailBtn{
		text-align: center;
		width: 100%;
		max-width: 400px;
	}
	.tour_box .detailBtn img {
		width: 90%;
		margin: 0 auto;

	}
}

/* 商品 END*/
