@charset "utf-8";
/* CSS Document */

/**** Clearfix ****/
nav .panel:after, nav#mainNav:after, .payTitle:after, .bg:after,.post:after, ul.post li:after,nav#mainNav .inner:after{content:""; display: table;clear: both;}
nav .panel,nav#mainNav,.payTitle,.bg, ul.post li,nav#mainNav .inner{zoom: 1; background: #333;}

.inner {
    margin: 0 auto;
    width: 1080px;
}

.inner h1{
	font-size: 120%;
	text-align:  center;
}

img.headlogo{
	margin-top:  50px;
	max-width: 320px;
}

nav ul, nav ol {
    list-style: none;
    list-style-image: none;
	margin-top: 0px;
}

/* メインメニュー　PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1025px){
  nav#mainNav{
	clear:both;
	position:relative;
	z-index:200;
	width:100%;
	background-color: #333;
	background-position: bottom;
	}
	
	
  nav#mainNav p{
	  color: #FFF;
	  padding: 10px;
	  max-width: 980px;
	  margin: 0 auto;
	}

		
	nav#mainNav .inner{
	padding-left:1px;
	}

	nav#mainNav ul li{
	float: left;
	position: relative;
	font-size: 140%;
	font-weight: bold;
	border-left:1px dotted #CCC;
padding-left:6px;
margin-left:6px;
display: -moz-inline-box;
display: inline-block;
*display: inline;
*zoom: 1;
	}
		nav#mainNav ul li:first-child{
border-left:none;
}
	
	nav#mainNav ul li a{
	display: block;
	text-align: center;
	_float:left;
	color: #FFF;
	height:45px;
	line-height:45px;
	font-size:90%;
	margin-right:1px;
	text-decoration: none;
	padding: 8px 40px 0;
	}
	
	nav#mainNav ul li a span,nav#mainNav ul li a strong{
	display:block;
	font-size:70%;
	line-height:1.5;
		padding-bottom: 2px;
	}
	
	nav#mainNav ul li a span{
	font-size:50%;
	color: #fde337;
	font-weight:normal;
	font-family:"Times New Roman", Times, serif;
	line-height: 80%;
	}

	nav div.panel{
  display:block !important;
  float:left;
  height: 55px;
  }
  
  a#menu{display:none;}
  
  nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover span, nav#mainNav ul li a:hover, nav#mainNav ul li.current-menu-parent a{
  color:#4c4c4c;
  }
  
  nav#mainNav ul ul{
	width:160px;
	border:1px solid #e0e0e0;
	border-top:0;
	}
  
  nav#mainNav ul li ul{display: none;}
  
  nav#mainNav ul li:hover ul{
  display: block;
  position: absolute;
  top:42px;
  left:-1px;
  z-index:500;
  }
	
  nav#mainNav ul li li{
	margin:0;
  float: none;
  height:40px;
  line-height:40px;
  width:160px;
	background:#fff;
	border-bottom:1px dotted #e0e0e0;
  }
	
	nav#mainNav ul li li:last-child{border:0;}
	
  nav#mainNav ul li li a{
  width:100%;
  height:40px;
	padding:0 0 0 10px;
  line-height:40px;
  font-size:95%;
  text-align:left;
  }
	
	nav#mainNav ul li li.current-menu-item a,nav#mainNav ul li li a:hover{color:#6f6f6f}

}

/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
	nav#mainNav{
	clear:both;
	width:880px;
	margin:0 auto 10px;
	border:1px solid #d5d5d5;
	}
	
	  nav#mainNav p{
	  color: #FFF;
	  padding: 10px;
	  max-width: 980px;
	  margin: 0 auto;
	}

	img.logofoot {
		width: 50%;
	}
	
	nav#mainNav a.menu{
	width:100%;
	display:block;
	height:37px;
	line-height:37px;
	text-align:left;
  background: url(https://secure.snow-kaitori.com/price/images/menuOpen.png) no-repeat 5px 8px;
	}
	
	nav#mainNav a#menu span{padding-left:35px; color: #FFF;}
	
	nav#mainNav a.menuOpen{
	background: url(https://secure.snow-kaitori.com/price/images/menuOpen.png) no-repeat 5px -34px;
	}
	
	nav#mainNav a#menu:hover{cursor:pointer;}
	
	nav .panel{
	display: none;
	width:100%;
	position: relative;
	right: 0;
	top:0;
	z-index: 1;
	}

	nav#mainNav ul{margin:0;padding:0;}

	nav#mainNav ul li{
	float: none;
	clear:both;
	width:100%;
	height:auto;
	line-height:1.2;
	}

	nav#mainNav ul li:first-child{border-top:1px solid #d5d5d5;}
	nav#mainNav ul li li:first-child{border-top:0;}

	nav#mainNav ul li a,nav#mainNav ul li.current-menu-item li a{
	display: block;
	padding:15px 10px;
	text-align:left;
	border-bottom:1px dashed #ccc;
	background:#fff;
		text-decoration: none;
		color: black;
		font-size: 80%;
	}
	
	nav#mainNav ul li:last-child a{border:0;}
	nav#mainNav ul li li:last-child a{border:0;}
	nav#mainNav ul li li:last-child a{border-bottom:1px dashed #ccc;}

 	nav#mainNav ul li a span{display:none;}
 
	nav#mainNav ul li.current-menu-item a,nav#mainNav ul li a:hover,nav#mainNav ul li.current-menu-item a,nav#mainNav ul li a:active, nav#mainNav ul li li.current-menu-item a, nav#mainNav ul li.current-menu-item li a:hover, nav#mainNav ul li.current-menu-item li a:active{
	background:#f6f6f6;
	}

	nav#mainNav ul li li{
	float:left;
	border:0;
	}

	nav#mainNav ul li li a, nav#mainNav ul li.current-menu-item li a, nav#mainNav ul li li.current-menu-item a{
  padding-left:40px;
	background:#fff url(images/sub1.png) no-repeat 20px 18px;}

	nav#mainNav ul li li.current-menu-item a,nav#mainNav ul li li a:hover, nav#mainNav ul li.current-menu-item li a:hover{
		background:#f6f6f6 url(images/sub1.png) no-repeat 20px -62px;}
	
	nav#mainNav ul li li:last-child a{background:#fff url(images/subLast.png) no-repeat 20px 20px;}
	nav#mainNav ul li li:last-child.current-menu-item a,nav#mainNav ul li li:last-child a:hover,nav#mainNav ul li.current-menu-item li:last-child a:hover{background:#f6f6f6 url(images/subLast.png) no-repeat 20px -65px;}
	
	nav div.panel{float:none;}
	
	#mainImg{margin-bottom:20px;}
}


/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
  #wrapper, .inner{width:100%;}

	#header{width:100%;padding:0 2%;}
	
	.contact{padding:10px 0 10px;}

  nav#mainNav{width:100%;}

	nav#mainNav ul{margin:0 auto;}
	nav#mainNav ul ul{padding:0;}

	nav div.panel{float:none;}
	
	#mainImg img{width:98%;height:auto;}

	#content, #sidebar{clear:both;width:100%;float:none;margin:0 auto;padding:0px 0;	}
	
	.banner{width:100%;margin:0 auto;text-align:center;}
  p.banner img{width:100%;height:auto;}
	section.widget_search{text-align:center;}
	#calendar_wrap table{width:260px;}
	
	#footer li{margin-bottom:10px;}
 
 
}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
	#wrapper, .inner{width:100%;}
	nav#mainNav{width:100%;}
	#header{text-align:center;background-image:none;}
	#header h2,.contact{float:none;}
	.contact{padding:0 0 20px;}
	.contact p{text-align:center;}
	#headerInfo{width:250px;margin:0 auto;}
	img.alignright, img.alignleft{display: block;	margin:5px auto;}
	.alignright,.alignleft{float:none;}
	h1.midashi {
	font-size: 240%;
	font-weight: bold;
	padding-bottom: 10px;
	padding-top: 10px !important;
	word-wrap: break-word;
	}
		h1.midashi2 {
	font-size: 120%;
	font-weight: bold;
	padding-bottom: 10px;
	padding-top: 10px !important;
	word-wrap: break-word;
}
	h1.midashi3 {
	font-size: 280%;
	font-weight: bold;
	padding-bottom: 10px;
	padding-top: 10px !important;
	word-wrap: break-word;
	}
}


.footmenu a {
    color: #3E3E3E;
	text-decoration: none;
 }

@media screen and (max-width:767px) {

.column-layout04 {
  height: 45px;
}

.showkaitori {
    margin-bottom: 10px;
	line-height: 100%;
	padding-top: 10px;
	font-size: 18px;
    text-align: center;
	color: #000000;
}

.showkaitori h1 {
	font-size: 18px;
    text-align: center;
	color: #000000;
	font-weight: normal;
	margin: 0px;
}

.showkaitori h2 {
	font-size: 18px;
    text-align: center;
	color: #000000;
	font-weight: normal;
	margin: 0px;
}
.showkaitori h3 {
	font-size: 18px;
    text-align: center;
	color: #000000;
	font-weight: normal;
	margin: 0px;
}
.showkaitori h4 {
	font-size: 18px;
    text-align: center;
	color: #000000;
	font-weight: normal;
	margin: 0px;
}

.showkaitoritext {
display: none;
}


 .footmenu {
    background: #f8f7f5;
	font-size: 90%;
  }
  .footmenu.is_sp, .footmenu_list.is_twoLevel {
    display: none;
    background: #fff
  }
  .footmenu.is_sp {
    margin-top: 0;
    position: fixed;
    height: 100%;
    width: 100%;
    overflow-y: scroll;
    z-index: 2;
    top: 48px
  }
  .footmenu_link span:after, .footmenu_toggleBtn span:after {
    content: "";
    width: 7px;
    height: 12px;
    right: 18px
  }
  .footmenu.is-show .is_bottom {
    margin-bottom: 45px
  }
  .footmenu_wrapper {
    min-width: 320px;
    margin: 0 auto;
    text-align: left
  }
  .footmenu_ttl.is_open {
    display: block;
    background: #f8f7f5
  }
  .footmenu_ttl.is_open .toggleBtn span:after {
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transition: .3s linear;
    transition: .3s linear
  }
  .footmenu_toggleBtn {
    display: block
  }
  .footmenu_toggleBtn span {
    padding: 17px 15px;
    display: block;
    position: relative
  }
  .footmenu_toggleBtn span:after {
    background: url(/img/arrow.png) no-repeat;
    background-size: contain;
    display: inline-block;
    position: absolute;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: .3s linear;
    transition: .3s linear
  }
  .footmenu_toggleBtn small {
    color: #666
  }
  .footmenu_link {
    position: relative
  }
  .footmenu_link a {
    display: block;
    padding: 16px 15px
  }

  .footmenu_link span:after {
    background: url(/img/arrow.png) no-repeat;
    background-size: contain;
    display: inline-block;
    position: absolute
  }
  
  .footmenu_link.is_gray {
    background: #f8f7f5
  }
  .footmenu_linkBtn {
    position: relative
  }
  .footmenu_linkBtn a {
    display: block;
    padding: 16px 0 16px 57px
  }
  .footmenu_linkBtn.to_mail:before, .footmenu_linkBtn:after {
    content: "";
    display: inline-block;
    position: absolute
  }
  .footmenu_linkBtn:last-of-type {
    margin-bottom: 0
  }
  .footmenu_linkBtn:after {
    background: url(/img/arrow.png) no-repeat;
    background-size: contain;
    width: 7px;
    height: 12px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 18px
  }
  .footmenu_linkBtn.to_mail {
    background: #F1E73A
  }
  .footmenu_linkBtn.to_mail:before {
    background: url(/img/footer_mail.png) no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
    left: 14px;
    top: 3px;
    bottom: 0;
    margin: auto;
  }
  .footmenu_linkBtn.to_line:before, .footmenu_linkBtn.is_search:before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 18px;
    top: 3px;
    bottom: 0;
    margin: auto
  }
  .footmenu_linkBtn.to_line {
    background: #3AAE36
  }
  .footmenu_linkBtn.to_line:before {
    background: url(/img/footer_line.png) no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
    left: 14px;
    top: 3px;
    bottom: 0;
    margin: auto;
  }

  .footmenu_link, .footmenu_linkBtn, .footmenu_toggleBtn {
    border-bottom: 1px solid #e5e5e5;
}

 .footmenu ul {
 margin-bottom: 0px;
 margin-top: 0px;
 }

  }
  
  
  @media print, (min-width:768px) {
  .footerBenesse_utility, .footmenu_wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox
  }
  .policy {
    padding: 24px 0 53px
  }
  .policy_txt {
    font-size: 1rem;
    line-height: 1.5
  }
  .footmenu {
    background: #f8f7f5
  }
  .footmenu_wrapper {
    display: flex;
    max-width: 1000px;
    margin: 0 auto
  }
  .footmenu_toggleBtn {
    opacity: 1;
    pointer-events: none;
    display: block
  }
  .footmenu_toggleBtn small {
    font-size: 0.8rem;
    font-weight: 400;
    color: #333
  }
  .footmenu_list {
    padding: 30px 0 27px;
    display: block!important
  }
  .footmenu_list.is_leftSide {
    padding-right: 180px
  }
  .footmenu_list.is_middle {
    padding-right: 131px
  }
  .footmenu_list.is_twoLevel {
    padding: 10px 0 0
  }
  .footmenu_img {
    width: 93px;
    margin: 8px 0 16px
  }
  .footmenu_img img {
    width: 100%
  }
  .footmenu_ttl {
    font-size: 1rem;
    font-weight: 700;
    padding: 8px 0
  }
  .footmenu_ttl.is_support {
    padding-top: 8px
  }
  .footmenu_link {
    font-size: 0.8rem;
    font-weight: 400
  }
  .footmenu_link a {
    display: block;
    padding: 8px 0
  }

  .footmenu_link span:after {
    content: "";
    background: url(/img/arrow.png) no-repeat;
    background-size: contain;
    width: 7px;
    height: 12px;
    display: inline-block;
    margin-left: 8px
  }
  .footmenu_link.is_bold {
    font-size: 1rem;
    font-weight: 700
  }
  .footmenu_linkBtn {
    font-size: 0.8rem;
    font-weight: 700;
    width: 160px;
    height: 36px;
    line-height: 20px;
    margin-bottom: 8px;
    position: relative
  }
  .footmenu_linkBtn a {
    display: block;
    padding: 8px 0 8px 50px
  }
  .footmenu_linkBtn:last-of-type {
    margin-bottom: 0
  }
  .footmenu_linkBtn:after {
    content: "";
    background: url(/img/arrow.png) no-repeat;
    background-size: contain;
    width: 7px;
    height: 12px;
    display: inline-block;
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto
  }
  .footmenu_linkBtn.to_mail {
    background: #F1E73A;
    margin-top: 10px
  }
  .footmenu_linkBtn.to_line:before, .footmenu_linkBtn.is_search:before, .footmenu_linkBtn.to_mail:before {
    display: inline-block;
    position: absolute;
    top: 3px;
    bottom: 0;
    margin: auto;
    content: ""
  }
  .footmenu_linkBtn.to_mail:before {
    background: url(/img/footer_mail.png) no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    left: 7px
  }
  .footmenu_linkBtn.to_line {
    background: #3AAE36
  }
  .footmenu_linkBtn.to_line:before {
    background: url(/img/footer_line.png) no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    left: 7px
  }

    }