@charset "utf-8";
/* CSS Document */

/* ----------------------------------------------------------------------------------------
  共通
---------------------------------------------------------------------------------------- */
html {
  font-size: 14px;
}
body {
  font-family: Roboto, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1rem;
}
#wrapper{
  overflow: hidden;
}
p{
  line-height:1.6;
}
ol, ul {
    padding-left: 20px;
}
a,img{
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
hr{
  height:0;
  border-bottom:#aaa dotted 1px;
}
/* スマホのみ */
@media (max-width: 767px) {
  input:not([type]), input[type="text"], input[type="email"], input[type="password"], input[type="tel"], textarea {
    font-size: 1.142rem;
  }
}

/* -------------------------------------
 * button
 * ---------------------------------- */
 /*----various btns, btn03(追加class)----*/
.topicDigestLink,.blogRecentLink{
  margin-top:30px;
  text-align: center;
}
#side .topicDigestLink,#side .blogRecentLink{
  margin-top:12px;
}
.parts_other_bupageTopBox a,.parts_other_buPrintBox a,.returnBu a, a.returnBu,input[type="button"], input[type="submit"],.topicDigestLink a,.blogRecentLink a,a.btn03 {
  display: inline-block;
  padding: 6px 18px;
  border: 1px solid #ccc;
  background:;/*color.css*/
  border-radius: 2px;
  -webkit-box-shadow: none;
  box-shadow: none;
  text-decoration: none;
  font-size: 90%;
  color: #fff;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.parts_other_bupageTopBox a:hover,.parts_other_buPrintBox a:hover,.returnBu a:hover, a.returnBu:hover,input[type="button"]:hover, input[type="submit"]:hover,.topicDigestLink a:hover,.blogRecentLink a:hover,a.btn03:hover {
  cursor: pointer;
  background:;/*color.css*/
  color: #fff;
}

/*----btn02(追加class)----*/
a.btn02{
  display: inline-block;
  border:;/*color.css*/
  background: #fff;
  margin:20px auto;
  padding:10px 20px;
  text-align: center;
  font-weight: bold;
  color:#333;
  text-decoration: none;
  border-radius: 2px;
  width: 100%;
}
a.btn02:before{
  content:"";
  padding:0 12px 0 0;
  background: url(../images/common/linkmark_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 6px;
  height: 9px;
}
a.btn02:hover{
  border:;/*color.css*/
  background:;/*color.css*/
  color:#fff;
}
a.btn02:hover:before {
  content:"";
  padding:0 12px 0 0;
  background: url(../images/common/linkmark_sp_white.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 6px;
  height: 9px;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  a.btn02{
    margin:30px auto 20px;
    padding:18px 30px;
  }
}
/* PC */
@media (min-width: 992px) {
  a.btn02{
    min-width:500px;
    width: auto;
  }
  [col-flex*="1-"] div:not(.lay-col12-lg-12) a.btn02 {
    min-width: 50%;
    max-width: 100%;
  }
  a.btn02:before{
    background: url(../images/common/linkmark.png) no-repeat left center;
  }
  a.btn02:hover:before {
    background: url(../images/common/linkmark_white.png) no-repeat left center;
  }
}

/*----parts_img_type13_box > btn02----*/
.parts_img_type13_box_01 a.btn02,
.parts_img_type13_box_02 a.btn02,
.parts_img_type13_box_03 a.btn02,
.parts_img_type13_box_04 a.btn02{
  min-width: 100%;
  width: 100%;
  border-width: 2px;
  padding:10px 20px;
  margin: 0 auto 10px;
}
.parts_img_type13_box_01 a.btn02:hover,
.parts_img_type13_box_02 a.btn02:hover,
.parts_img_type13_box_03 a.btn02:hover,
.parts_img_type13_box_04 a.btn02:hover{
  border-width: 2px;
}


/* ----------------------------------------------------------------------------------------
  #header
---------------------------------------------------------------------------------------- */
.boxTop ul li.small,
.boxTop ul li.middle,
.boxTop ul li.large{
  color:#fff;
  border-radius:2px;
  border:none;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.boxTop ul li.small:hover,
.boxTop ul li.middle:hover,
.boxTop ul li.large:hover{
  cursor:pointer;
}

#header .container{
  padding: 0;
  margin: 0;
}
#header .box{
  text-align: center;
  margin:0;
}
#header p {
  margin:0;
}
#header #logo{
  width: 100%;
  text-align: center;
  padding: 12px 0;
  margin:0;
}
#header #logo img{
  max-width: 30vw;
}
#header #siteDesc {
  text-align: center;
  padding: 0 15px 5px;
}

#header .left {
  float: none;
}
#header .right {
  float: none;
  display: inline-block;
  padding:5px 0;
  margin:0;
  background:;/*color.css*/
  width:100%;
  text-align: center;
}
#header .right p{
}
#header .right > div{
  width:auto;
}
#header .right > div img{
  vertical-align: -3px;
}
#header .right .fontSize{
  padding: 8px 0 0 !important;
}
#header .right .right{
  padding:0;
  float:none;
  vertical-align: middle;
}

/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  #header {
    z-index:999;
    width: 100%;
    background-color: rgba(255,255,255,0.6);
    box-shadow: 0 4px 4px -4px #aaa;
  }
  #header .container {
    position:relative;
    margin: 0 auto;
    padding: 0 15px;
    width: 100%;
  }
  #header .box{
    text-align: left;
  }

  #header .container p,
  #header .container .box{
    margin:0;
  }
  #header #logo{
    height: auto;
    text-align: left;
  }
  #header #logo img{
      max-height: 90px;
  }
  #header #siteDesc {
    position:absolute;
    top:10px;
    right:0;
  }

  #header .left {
    float: left;
  }
  #header .right {
    float: right;
    padding: 25px 0 0px;
    background: transparent;
    width:auto;
    text-align: right;
  }
  #header .right .fontSize{
    padding:3px 10px 0 0 !important;
  }
  #header .right .right{
    padding:0;
    float:right;
  }
}
/* PC */
@media (min-width: 992px) {
  #header .container {
      width: 970px;
  }
  #header #logo{
    margin: 0;
    vertical-align: middle;
    display: table-cell;
    line-height: 1.2;
    text-align: left;
    width: 170px;
    height: 114px;
  }
  #header #logo img{
    max-width: 100%;
  }
}
/* PC（ワイド） */
@media (min-width: 1200px) {
  #header .container {
    width: 1170px;
  }
  #header #logo {
    width: 220px;
    height: 114px;
  }
}

/* -------------------------------------
 * メインメニュー
 * ---------------------------------- */
 /* スマホ */
.navbar-default{
  background:;/*color.css*/
  border:none;
  margin:0;
}
.navbar-toggle{
  border:none;
  border-radius:0;
}
.navbar-default .navbar-toggle .icon-bar{
  background-color:#fff;
}
.navbar-toggle .icon-bar{
  border-radius:0;
}
.navbar-toggle .icon-bar+.icon-bar{
  margin-top:5px;
}
.navbar-nav{
  margin: 0 0 3px;
}
.navbar-nav li{
  border-bottom:#aaa dotted 1px;
  margin:0 -15px;
  background: #fff;
}
.navbar-nav li:last-child{
  border-bottom:none;
}
.navbar-nav li a b,
.navbar-nav li a > span,
.navbar-nav li div > span {
  float:right;
  color:#999;/*color.css*/
  font-size:80%;
  font-weight: normal;
}
.navbar-default .navbar-toggle:focus, .navbar-default .navbar-toggle:hover{
  background:none;
}
/* スマホ以外 */
@media (min-width: 768px) {
  #header .navbar-default {
    background-color: transparent;
    border:none;
  }
  #header .navbar-collapse {
    padding: 0;
  }
  #header .navbar {
    position: static;
    min-height: auto;
    margin:0;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    z-index: auto;
    float: none;
    text-align: center;
  }
  #header .navbar-nav{
    background: transparent;
    margin: 0;
    float: none;
    text-align: center;
  }
  #header .navbar-nav li{
    background: transparent;
    float: none;
    display: inline-block;
  }
  #header .navbar-collapse > ul > li {
	  position: relative;
    margin: 0 15px;
    text-align: center;
    border: none !important;
  }
  #header .navbar-collapse > ul > li > a,
  #header .navbar-collapse > ul > li > div {
    padding: 0;
    text-decoration: none;
    font-weight: bold;
    display: table-cell;
    height: 64px;
    vertical-align: middle;
    letter-spacing: 1px;
  }
  #header .navbar-collapse > ul > li > a:before {
    position: absolute;
    right: 50%;
    bottom: 0;
    left: 50%;
    height: 3px;
    content:"";
    transition: left 0.3s ease-out, right 0.3s ease-out;
  }
  #header .navbar-collapse > ul > li > a:hover:before,
  #header .navbar-collapse > ul > li > a.menu-selected:before {
    right: 0;
    left: 0;
  }
  #header .navbar-collapse > ul > li > ul {
	  position: absolute;
	  z-index: 10000;
	  top: 100%;
	  left: 0;
	  margin: 0;
  }
 #header .navbar-collapse > ul > li:last-child > ul {
	 left: auto;
	 right: 0;
  }
  #header li.menu-level-0 a:before, #header li.menu-level-0 a.menu-selected:before {
      background:;/*color.css*/
  }
  #header .navbar-collapse > ul > li > a b ,
  #header .navbar-collapse > ul > li > div b,
  #header .navbar-collapse > ul > li > a > span ,
  #header .navbar-collapse > ul > li > div > span {
    display: block;
    font-weight: normal;
    font-size:90%;
    line-height:1;
    float:none;
  }
	
	/* 追加記述 */
	#header .navbar-collapse > ul > li > ul > li {
		overflow: auto;
		display: block;
		height: 0;
		margin: 0;
		border: none;
		visibility: hidden;
		opacity: 0;
		-webkit-transition: all .5s;
		transition: all .5s;
	}
	
	#header .navbar-collapse > ul > li:hover > ul > li {
		height: auto;
		visibility: visible;
		opacity: 1;
	}
	
	#header .navbar-collapse > ul > li > ul > li > a {
		display: block;
		margin: 0 0 1px;
		padding: 12px;
		text-align: left;
		-webkit-transition: all .5s;
		transition: all .5s;
		white-space: nowrap;
	}

	#header .navbar-collapse > ul > li > ul > li ul {
		display: none;
	}
	
}
/* PC */
@media (min-width: 992px) {
  #header .navbar {
    margin-top:-64px;
    padding:0 0 0 190px;
  }
  #header .navbar-nav{
    background: transparent;
    display: table;
    table-layout: fixed;
    margin: 0 -10px;
  }
  #header .navbar-nav li{
    display: table-cell;
    vertical-align: middle;
    border-collapse: separate;
    border-spacing: 10px 0;
  }
  #header .navbar-nav img{
    max-width: 100%;
    max-height: 64px;
  }
  #header .navbar-collapse {
    float: right;
  }
}
/* PC（ワイド） */
@media (min-width: 1200px) {
  #header .navbar {
    padding:0 0 0 230px;
  }
  #header .navbar-nav li{
    border-spacing: 15px 0;
  }
}

/* 追加記述 */
/* スマートフォン */
@media (max-width: 767px) {
	
	.nav > li > div {
		padding: 10px 15px;
		line-height: 20px;
	}
	
	.menu-level-0 > ul {
		margin: 0;
		border-top-style: dotted;
		border-top-width: 1px;
	}
	
	.menu-level-0 > ul > li {
		margin: 0;
	}
	
	.menu-level-0 > ul > li > a {
		display: block;
		padding-left: 36px;
	}
	
	.menu-level-0 > ul > li > ul {
		margin: 0;
		border-top-style: dotted;
		border-top-width: 1px;
	}
	
	.menu-level-0 > ul > li > ul > li {
		margin: 0;
	}
	
	.menu-level-0 > ul > li > ul > li > a {
		display: block;
		padding-left: 72px;
	}
	
}


/* ----------------------------------------------------------------------------------------
  #upper
---------------------------------------------------------------------------------------- */
/* -------------------------------------
 * .upperNavi
 * ---------------------------------- */
.upperNavi{
  background:;/*color.css*/
}
.upperNavi ul {
  display: flex;
  flex-wrap: wrap;
  padding:5px 0;
  justify-content: center;
}
.upperNavi ul li{
  display: flex;
  align-items: center;
  padding:5px 10px;
}
.upperNavi ul li a{
  display: flex;
  align-items: center;
  height:100%;
  color:#fff;
  padding: 10px;
  text-decoration: none;
}
.upperNavi ul li a:hover{
  background:;/*color.css*/
}


/* ----------------------------------------------------------------------------------------
  #topicpath
---------------------------------------------------------------------------------------- */
#topicpath{
  margin-top: -7px;
  padding-top: 7px;
  background: url(../images/common/bg.png) repeat top left;
}
#topicpath.container {
  width: auto;
}
#topicpath .breadcrumb {
  margin: 0 auto;
  padding: 6px;
  text-align: left;
}
/* スマホ以外 */
@media (min-width: 768px) {
  #topicpath .breadcrumb {
      width: 750px;
  }
}
/* PC */
@media (min-width: 992px){
  #topicpath .breadcrumb {
      width: 970px;
  }
}
/* PC(ワイド) */
@media (min-width: 1200px){
  #topicpath .breadcrumb {
      width: 1140px;
  }
}


/* ----------------------------------------------------------------------------------------
  #container
---------------------------------------------------------------------------------------- */
#container {
  margin-top:50px;
}


/* ----------------------------------------------------------------------------------------
  #bottom
---------------------------------------------------------------------------------------- */
/* -------------------------------------
 * .bottomNavi
 * ---------------------------------- */
.bottomNavi{
  background:;/*color.css*/
}
.bottomNavi ul {
  display: flex;
  flex-wrap: wrap;
  padding:5px 0;
  justify-content: center;
}
.bottomNavi ul li{
  display: flex;
  align-items: center;
  padding:5px 10px;
}
.bottomNavi ul li a{
  display: flex;
  align-items: center;
  height:100%;
  color:#fff;
  padding: 10px;
  text-decoration: none;
}
.bottomNavi ul li a:hover{
  background:;/*color.css*/
}

/* -------------------------------------
 * .blogRecent
 * ---------------------------------- */
.column1 #bottom .blogRecent{
  background:;/*color.css*/
  margin:50px -15px 0;
}
.column1 #bottom .blogRecent .box{
  padding:0 0 50px !important;
  margin:0 auto;
}
.column1 #bottom .blogRecent .box h2{
  margin:0 !important;
}
.column1 #bottom .blogRecent .blogRecentList{
  background: #fff;
  padding:20px 30px 10px;
  margin:0 15px;
}
.column1 #bottom .blogRecent .blogRecentList a{
  color:#333;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  .column1 #bottom .blogRecent{
    margin:50px -100% 0;
  }
  .column1 #bottom .blogRecent .box{
      width: 750px;
  }
  .column1 #bottom .blogRecent .box h2{
    margin:0 15px !important;
  }
}
/* PC */
@media (min-width: 992px) {
  .column1 #bottom .blogRecent .box{
      width: 970px;
  }
}
/* PC（ワイド） */
@media (min-width: 1200px) {
  .column1 #bottom .blogRecent .box{
      width: 1170px;
  }
}

/* -------------------------------------
 * .blogRecentLink
 * ---------------------------------- */
.column1 #bottom .blogRecent .blogRecentLink{
  margin:30px 15px 0;
  text-align: center;
}
.column1 #bottom .blogRecent .blogRecentLink a{
  display: inline-block;
  border:;/*color.css*/
  background: #fff;
  padding:10px 20px;
  text-align: center;
  font-weight: bold;
  color:#333;
  width: 100%;
  text-decoration: none;
}
.column1 #bottom .blogRecent .blogRecentLink a:before{
  content:"";
  padding:0 12px 0 0;
  background: url(../images/common/linkmark_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 6px;
  height: 9px;
}
.column1 #bottom .blogRecent .blogRecentLink a:hover{
  border:;/*color.css*/
  background:;/*color.css*/
  color:#fff;
}
.column1 #bottom .blogRecent .blogRecentLink a:hover:before {
  content:"";
  padding:0 12px 0 0;
  background: url(../images/common/linkmark_sp_white.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 6px;
  height: 9px;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  .column1 #bottom .blogRecent .blogRecentLink a{
    padding:18px 30px;
    min-width:500px;
    width: auto;
  }
}
/* PC */
@media (min-width: 992px) {
  .column1 #bottom .blogRecent .blogRecentLink a:before{
    background: url(../images/common/linkmark.png) no-repeat left center;
  }
  .column1 #bottom .blogRecent .blogRecentLink a:hover:before {
    background: url(../images/common/linkmark_white.png) no-repeat left center;
  }
}

/* -------------------------------------
 * .topicsDigest
 * ---------------------------------- */
.column1 #bottom .topicsDigest{
  background: url(../images/common/topics_bg.png) no-repeat center top;
  background-size: cover;
  margin:0 -15px;
  padding:0 0 50px;
  overflow: hidden;
  position:relative;
}
.column1 #bottom .topicsDigest h2{
  margin: 0 !important;
}
.column1 #bottom .topicsDigest .box{
    margin: 0 auto;
}
.column1 #bottom .topicsDigest .topicsDigestBox{
  background:rgba(255,255,255,0.75);
  overflow: hidden;
  padding:15px;
  margin:15px;
}
.column1 #bottom .topicsDigest .topicsDigestBox h3{
  font-size:120%;
  line-height:1.4;
  margin: 0 0 10px;
  padding:0 5px 8px;
  background: none;
  border-bottom:;/*color.css*/
}
.column1 #bottom .topicsDigest .topicsDigestBox h3:before{
  display:none;
}

.column1 #bottom .topicsDigest .topicsDigestBox .topicDate{
  margin-top:5px;
}
.column1 #bottom .topicsDigest .topicsDigestBox .topicDigestImgOn .topicDigestPhoto{
  width: 100%;
  max-height:220px;
  overflow: hidden;
}
.column1 #bottom .topicsDigest .topicsDigestBox .topicDigestImgOn .topicDigestPhoto img{
  width: 100%;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  .column1 #bottom .topicsDigest{
    margin:0 -100%;
  }
  .column1 #bottom .topicsDigest .box{
      width: 750px;
  }
  .column1 #bottom .topicsDigest h2{
    margin: 0 15px !important;
  }
  .column1 #bottom .topicsDigest .topicsDigestBox{
    width: 23%;
    height:340px;
    float: left;
    padding:10px;
    margin: 0 1%;
  }
  .column1 #bottom .topicsDigest .topicsDigestBox .topicDigestImgOn{
    position:relative;
  }
  .column1 #bottom .topicsDigest .topicsDigestBox .topicDigestImgOn .topicDigestText{
    padding-top:158px;
  }
  .column1 #bottom .topicsDigest .topicsDigestBox .topicDigestImgOn .topicDigestPhoto{
    position:absolute;
    top:0;
    left:0;
    right:0;
    width: 100%;
    height:158px;
    overflow: hidden;
  }
  .column1 #bottom .topicsDigest .topicsDigestBox .topicDigestImgOn .topicDigestPhoto img{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }
  .column1 #bottom .topicsDigest .topicsDigestBox h3{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    height:3em;
    overflow: hidden;
  }
  .column1 #bottom .topicsDigest .topicsDigestBox h3 + p{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    height: 4em;
    overflow: hidden;
  }
  .column1 #bottom .topicsDigest .topicsDigestBox .topicDigestImgOFF:before{
    content:"";
    display: block;
    width:100%;
    height:158px;
    overflow: hidden;
    background: #ccc;
  }
}
/* PC */
@media (min-width: 992px) {
  .column1 #bottom .topicsDigest .box{
      width: 970px;
  }
}
/* PC（ワイド） */
@media (min-width: 1200px) {
  .column1 #bottom .topicsDigest .box{
      width: 1170px;
  }
}

/* -------------------------------------
 * .topicDigestLink
 * ---------------------------------- */
.column1 #bottom .topicsDigest .topicDigestLink{
  clear:both;
  padding: 20px 15px 0;
  margin:0 auto;
  text-align: center;
}
.column1 #bottom .topicsDigest .topicDigestLink a{
  display: inline-block;
  background:;/*color.css*/
  padding:10px 20px;
  text-align: center;
  font-weight: bold;
  color: #333;
  width: 100%;
  text-decoration: none;
}
.column1 #bottom .topicsDigest .topicDigestLink a:before{
  content:"";
  padding:0 12px 0 0;
  background: url(../images/common/linkmark_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 6px;
  height: 9px;
}
.column1 #bottom .topicsDigest .topicDigestLink a:hover{
  background:;/*color.css*/
  color:#fff;
}
.column1 #bottom .topicsDigest .topicDigestLink a:hover:before {
  content:"";
  padding:0 12px 0 0;
  background: url(../images/common/linkmark_sp_white.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 6px;
  height: 9px;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  .column1 #bottom .topicsDigest .topicDigestLink{
    padding:40px 0 0;
  }
  .column1 #bottom .topicsDigest .topicDigestLink a{
    padding:18px 30px;
    min-width:500px;
    width: auto;
  }
}
/* PC */
@media (min-width: 992px) {
  .column1 #bottom .topicsDigest .topicDigestLink a:before{
    background: url(../images/common/linkmark.png) no-repeat left center;
  }
  .column1 #bottom .topicsDigest .topicDigestLink a:hover:before {
    background: url(../images/common/linkmark_white.png) no-repeat left center;
  }
}


/* ----------------------------------------------------------------------------------------
  見出し
---------------------------------------------------------------------------------------- */
/* -------------------------------------
 * #contents #footer
 * ---------------------------------- */
#contents h1, #footer h1{
  height:auto;
  margin:0 -15px 20px;
  padding:40px 20px;
  background: url(../images/common/bg.png) repeat top left;
  font-size:170%;
  text-align: center !important;
  letter-spacing: 2px;
  border-top:;/*color.css*/
  border-bottom:;/*color.css*/
}
#footer h1{
  background: none;
}
#contents h2, #footer h2 {
  background: url(../images/common/h2_bar.png) repeat-x left top;
  background-size: auto 7px;
  position: relative;
  text-align: center;
  font-size: 140%;
  font-weight: bold;
  line-height:1.4;
  padding: 50px 0 30px;
  margin:40px -15px 0;
}
#contents h2:before, #footer h2:before {
  background:;/*color.css*/
  content:"";
  display: block;
  position: absolute;
  width: 40%;
  height: 4px;
  top: 7px;
  left: 30%;
}
#contents h3, #footer h3 {
  font-size: 130%;
  background:;/*color.css*/
  margin:30px 0 20px;
  padding:15px 5px 15px 20px;
  display: block;
  position:relative;
}
#footer h3{
  background:;/*color.css*/
}
#contents h3:before, #footer h3:before {
  content: "";
  display: inline-block;
  width: 8px;
  background:;/*color.css*/
  position: absolute;
  top: 12px;
  left:8px;
  bottom: 12px;
}
#footer h3:before {
  background:;/*color.css*/
}
#contents h4, #footer h4 {
  margin:0 0 15px;
  border-bottom:;/*color.css*/
  padding-bottom: 10px;
}
#contents h5, #footer h5 {
  border-left:;/*color.css*/
  font-size: 1.142rem;
  padding:0 0 0 5px;
}
#footer h5 {
  border-left:;/*color.css*/
}
#contents h6, #footer h6 {
  font-size: 1rem;
  font-weight: bold;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  #contents h1, #footer h1{
  margin:0 0 20px;
  }
  #contents h2, #footer h2 {
    background-size: auto;
    background-position: left top;
    padding: 60px 0 40px;
    margin:60px 0 0;
  }
  #contents h2:before, #footer h2:before {
    top: 14px;
  }
  #contents h3, #footer h3 {
    padding:20px 5px 20px 28px;
  }
  #contents h3:before, #footer h3:before {
    width: 10px;
    top: 15px;
    left:10px;
    bottom: 15px;
  }
}

/* -------------------------------------
 * #side #opt
 * ---------------------------------- */
.column2 #side h1, #opt h1{
  border-top:;/*color.css*/
  border-bottom:;/*color.css*/
  font-size:140%;
  padding:12px 0 10px;
  background: url(../images/common/bg.png) repeat top left;
  text-align: center;
}
.column2 #side h2, #opt h2{
  border-top:;/*color.css*/
  border-bottom:;/*color.css*/
  margin-top:-1px;
  display: block;
  font-weight: bold;
  text-indent: -2rem;
  padding: 12px 10px 10px 3rem;
  font-size:110%;
}
.column2 #side h2 div{
  display: inline-block;
  padding-left: 2rem;
}
.column2 #side h2:before, #opt h2:before{
  content: url(../images/common/linkmark_below.png);
  padding: 0 5px 0 0;
}
.column2 #side h3 , #opt h3{
  font-size: 110%;
  background:;/*color.css*/
  padding:10px 5px 10px 20px;
  display: block;
  position:relative;
}
.column2 #side h3:before, #opt h3:before {
  content: "";
  display: inline-block;
  width: 6px;
  background:;/*color.css*/
  position: absolute;
  top: 7px;
  left:8px;
  bottom: 7px;
}
.column2 #side h4, #opt h4{
  font-size: 110%;
  border-bottom:;/*color.css*/
  padding-bottom: 6px;
}
.column2 #side h5, #opt h5 {
  border-left:;/*color.css*/
  font-size:100%;
  padding:0 0 0 5px;
}
.column2 #side h6, #opt h6 {
  font-size: 1rem;
  font-weight: bold;
}


/* ----------------------------------------------------------------------------------------
  .topics
---------------------------------------------------------------------------------------- */
.topicDate {
    border-bottom: none;
    margin-top: 40px;
    padding-bottom:3px;
}
.topicDate + h2,.topicDate + h3 {
  margin-top:0 !important;
}


/* ----------------------------------------------------------------------------------------
  .blogArchiveList
---------------------------------------------------------------------------------------- */
.blogArchiveList dl{
  padding:10px;
  border-bottom: #aaa dotted 1px;
}


/* ----------------------------------------------------------------------------------------
  various List
---------------------------------------------------------------------------------------- */
.albumIndexList > ul > li, .topicsIndexList > ul > li, .blogRecentList > ul > li, .blogMonthlyList > ul > li, .blogCategoryList > ul > li, .blogFeedList > ul > li, .albumIndexBox > ul > li{
  padding:10px;
  border-top: #aaa dotted 1px;
  border-bottom: #aaa dotted 1px;
  margin-top:-1px;
}
.albumIndexList > ul > li:first-child, .topicsIndexList > ul > li:first-child, .blogRecentList > ul > li:first-child, .blogMonthlyList > ul > li:first-child, .blogCategoryList > ul > li:first-child, .blogFeedList > ul > li:first-child, .albumIndexBox > ul > li:first-child{
  padding-top: 0;
  border-top: none;
}
.albumIndexList > ul > li ul li, .topicsIndexList > ul > li ul li, .blogRecentList > ul > li ul li, .blogMonthlyList > ul > li ul li, .blogCategoryList > ul > li ul li, .blogFeedList > ul > li ul li, .albumIndexBox > ul > li ul li{
  padding:10px 0 0;
}
.albumIndexList > ul > li ul li a:before, .topicsIndexList > ul > li ul li a:before, .blogRecentList > ul > li ul li a:before, .blogMonthlyList > ul > li ul li a:before, .blogCategoryList > ul > li ul li a:before, .blogFeedList > ul > li ul li a:before, .albumIndexBox > ul > li ul li a:before{
  content:"└";
  padding:0 5px 0 0;
}
.albumList .albumListBox{
  border-top: #aaa dotted 1px;
  border-bottom: #aaa dotted 1px;
  margin:-1px 0 0 0 !important;
  padding:20px 0;
}
.albumList .albumListBox .albumText{
  overflow: hidden;
  float: none !important;
  width:auto;
}


/* ----------------------------------------------------------------------------------------
  2カラム #container
---------------------------------------------------------------------------------------- */
.column2 #container{
  padding-bottom:30px;
  margin-top: 30px;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  .column2 #container{
    margin-top: 50px;
  }
}


/* ----------------------------------------------------------------------------------------
  2カラム サイド
---------------------------------------------------------------------------------------- */
/*スマホ*/
@media (max-width: 767px) {
  .column2 #side{
    margin-top:30px;
  }
}

.column2 #side .box, .column2 #side .sitemapParts, .column2 #side .categoryIndex .sideBox{
  padding:0;
  margin-bottom: 15px;
}

.column2 #side .row{
  margin:0;
}
.column2 #side .box{
  border:none !important;
  border-radius:0 !important;
}

/* -------------------------------------
 * .topicsDigestBox
 * ---------------------------------- */
.column2 #side .topicsDigestBox{
  border-bottom:#aaa dotted 1px;
}
.column2 #side .topicsDigestBox .topicDate{
  margin: 5px 0 0;
}
.column2 #side .topicsDigestBox .topicLink{
  margin-top:0;
}
.column2 #side .topicDigestPhoto{
  margin:0 0 10px;
}

/* -------------------------------------
 * form
 * ---------------------------------- */
.column2 #side .blogCommentPostBox table th,.column2 #side #mailform_form table th,.column2 #side form table th{
  width:100%;
  display: block;
  border: 1px solid #ccc;
  white-space: normal;
}
.column2 #side .blogCommentPostBox table td,.column2 #side #mailform_form table td,.column2 #side form table td{
  width:100%;
  display: block;
  border: 1px solid #ccc;
}
.column2 #side .mailForm select {
    width: 100%;
}
.column2 #side #mailForm input[type="file"] {
    width: 100%;
}

/* -------------------------------------
 * search
 * ---------------------------------- */
.column2 #side input.siteSearchText,.column2 #side input.blogSearchText{
width: 72%;
}


/* ----------------------------------------------------------------------------------------
  2カラム サイドメニュー
---------------------------------------------------------------------------------------- */
.column2 .sideNavi .boxBottom a{
  border-bottom:#aaa dotted 1px;
}
.column2 .sideNavi .boxBottom > ul > li{
  border:none;
  padding:0;
}
.column2 .sideNavi .boxBottom > ul > li a{
  color:#333;
}
.column2 .sideNavi .boxBottom > ul > li a:hover,
.column2 .sideNavi .boxBottom > ul > li a.menu-selected{
  text-decoration: none;
  background:;/*color.css*/
}
.column2 .sideNavi .boxBottom > ul > li.menu-level-0 > a,
.column2 .sideNavi .boxBottom > ul > li.menu-level-1 > a{
  border-top:;/*color.css*/
  border-bottom:;/*color.css*/
  margin-top:-1px;
  display: block;
  font-weight: bold;
  text-indent: -2rem;
  padding: 12px 10px 10px 3rem;
}
.column2 .sideNavi .boxBottom > ul > li.menu-level-0 > a:before,
.column2 .sideNavi .boxBottom > ul > li.menu-level-1 > a:before{
  content:"";
  padding:0 18px 0 0;
  background: url(../images/common/linkmark_below_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 13px;
  height: 13px;
  vertical-align: -2px;
}
.column2 .sideNavi .boxBottom > ul > li.menu-level-1 b{
  display: none;
}
.column2 .sideNavi .boxBottom > ul > li.menu-level-0 > ul > li.menu-level-1 > a{
  display: block;
  text-indent: -2.5rem;
  padding: 12px 10px 10px 4.5rem;
}
.column2 .sideNavi .boxBottom > ul > li.menu-level-0 > ul > li.menu-level-1 > a:before{
  content:"";
  padding:0 18px 0 0;
  background:url(../images/common/linkmark_right_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 13px;
  height: 13px;
  vertical-align: -2px;
}
.column2 .sideNavi .boxBottom > ul > li > ul li{
  padding:0;
}
.column2 .sideNavi .boxBottom > ul > li > ul li.menu-level-2 a{
  display: block;
  text-indent: -1.2rem;
  padding: 12px 10px 10px 4.5rem;
}
.column2 .sideNavi .boxBottom > ul > li > ul li.menu-level-2 a:before{
  content:"";
  padding:0 12px 0 0;
  background: url(../images/common/linkmark_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 6px;
  height: 9px;
}
.column2 .sideNavi .boxBottom > ul > li > ul li.menu-level-3 > a{
  padding: 12px 10px 10px 6rem;
}
.column2 .sideNavi .boxBottom > ul > li > ul li.menu-level-3 > a:before{
  background: none !important;
  content:"└";
  padding:0 5px 0 0;
}
/* PC */
@media (min-width: 992px) {
  .column2 .sideNavi .boxBottom > ul > li.menu-level-1 > a:before{
    background: url(../images/common/linkmark_below.png) no-repeat left center;
  }
  .column2 .sideNavi .boxBottom > ul > li.menu-level-0 > ul > li.menu-level-1 > a:before{
    background:url(../images/common/linkmark_right.png) no-repeat left center;
  }
  .column2 .sideNavi .boxBottom > ul > li > ul li.menu-level-2 a:before{
    background: url(../images/common/linkmark.png) no-repeat left center;
  }
}


/* ----------------------------------------------------------------------------------------
  ブロックレイアウト #opt
---------------------------------------------------------------------------------------- */
#opt .topicsDigestBox{
  border-bottom:#aaa dotted 1px;
}
#opt .topicsDigestBox .topicDate{
  margin: 10px 0;
}
#opt .topicsDigestBox .topicLink{
  margin-top:0;
}
#opt .topicDigestPhoto{
  margin:0 0 10px;
}
#opt .topicDigestLink,#opt .blogRecentLink{
  margin: 10px 0 0;
}

/* -------------------------------------
 * form
 * ---------------------------------- */
#opt .blogCommentPostBox table th,#opt #mailform_form table th,#opt form table th{
  width:100%;
  display: block;
  border: 1px solid #ccc;
  white-space: normal;
}
#opt .blogCommentPostBox table td,#opt #mailform_form table td,#opt form table td{
  width:100%;
  display: block;
  border: 1px solid #ccc;
}
#opt .mailForm select {
    width: 100%;
}
#opt #mailForm input[type="file"] {
    width: 100%;
}

/* -------------------------------------
 * search
 * ---------------------------------- */
#opt  input.siteSearchText,#opt  input.blogSearchText{
width: 80%;
}

/* -------------------------------------
 * opt1Navi,opt2Navi,opt3Navi
 * ---------------------------------- */
#opt .naviBox .boxBottom a{
  border-bottom:#aaa dotted 1px;
}
#opt .naviBox .boxBottom > ul > li{
  border:none;
  padding:0;
}
#opt .naviBox .boxBottom > ul > li a{
  color:#333;
}
#opt .naviBox .boxBottom > ul > li a:hover,
#opt .naviBox .boxBottom > ul > li a.menu-selected{
  text-decoration: none;
  background:#f2f2f2;
}
#opt .naviBox .boxBottom > ul > li.menu-level-0 > a,
#opt .naviBox .boxBottom > ul > li.menu-level-1 > a{
  border-top:;/*color.css*/
  border-bottom:;/*color.css*/
  margin-top:-1px;
  display: block;
  font-weight: bold;
  text-indent: -2rem;
  padding: 12px 10px 10px 3rem;
}
#opt .naviBox .boxBottom > ul > li.menu-level-0 > a:before,
#opt .naviBox .boxBottom > ul > li.menu-level-1 > a:before{
  content:"";
  padding:0 18px 0 0;
  background: url(../images/common/linkmark_below_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 13px;
  height: 13px;
  vertical-align: -2px;
}
#opt .naviBox .boxBottom > ul > li.menu-level-1 b{
  display: none;
}
#opt .naviBox .boxBottom > ul > li.menu-level-0 > ul > li.menu-level-1 > a{
  display: block;
  text-indent: -2.5rem;
  padding: 12px 10px 10px 4.5rem;
}
#opt .naviBox .boxBottom > ul > li.menu-level-0 > ul > li.menu-level-1 > a:before{
  content:"";
  padding:0 18px 0 0;
  background:url(../images/common/linkmark_right_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 13px;
  height: 13px;
  vertical-align: -2px;
}
#opt .naviBox .boxBottom > ul > li > ul li{
  padding:0;
}
#opt .naviBox .boxBottom > ul > li > ul li.menu-level-2 a{
  display: block;
  text-indent: -1.2rem;
  padding: 12px 10px 10px 4.5rem;
}
#opt .naviBox .boxBottom > ul > li > ul li.menu-level-2 a:before{
  content:"";
  padding:0 12px 0 0;
  background: url(../images/common/linkmark_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 6px;
  height: 9px;
}
#opt .naviBox .boxBottom > ul > li > ul li.menu-level-3 > a{
  padding: 12px 10px 10px 5rem;
}
#opt .naviBox .boxBottom > ul > li > ul li.menu-level-3 > a:before{
  background: none !important;
  content:"└";
  padding:0 5px 0 0;
}
/* PC */
@media (min-width: 992px) {
  #opt .naviBox .boxBottom > ul > li.menu-level-1 > a:before{
    background: url(../images/common/linkmark_below.png) no-repeat left center;
  }
  #opt .naviBox .boxBottom > ul > li.menu-level-0 > ul > li.menu-level-1 > a:before{
    background:url(../images/common/linkmark_right.png) no-repeat left center;
  }
  #opt .naviBox .boxBottom > ul > li > ul li.menu-level-2 a:before{
    background: url(../images/common/linkmark.png) no-repeat left center;
  }
}


/* ----------------------------------------------------------------------------------------
  サイトマップ
---------------------------------------------------------------------------------------- */
#tree ul.tree{
  margin:0 !important;
}
#tree ul.tree li{
  padding:10px 0;
}
#tree > ul.tree.level-0 > li > a:first-child{
  font-weight: bold;
  border-bottom:#666 solid 1px;
  padding: 0 0 5px;
  margin:0 0 10px;
  display: inline-block;
}
#tree > ul > li > ul.tree.level-0 > li > a:first-child{
  font-weight: bold;
  border-bottom:#666 solid 1px;
  padding:0 0 5px;
  display: inline-block;
}
#tree > ul > li > ul.tree.level-0 > li > ul.level-1 > li{
  list-style-image: url(../images/common/linkmark.png);
}
#tree > ul > li > ul.tree.level-0 > li > ul.level-1 > li> ul.level-2 > li{
  list-style: disc;
}


/* ----------------------------------------------------------------------------------------
  サイト内検索/ブログコンテンツ内検索
---------------------------------------------------------------------------------------- */
input.siteSearchText,input.blogSearchText {
    width: 86%;
}
.searchLink{
    float: right;
}


/* ----------------------------------------------------------------------------------------
  #footer
---------------------------------------------------------------------------------------- */
#footer{
  position:relative;
  background:;/*color.css*/
  padding-top:80px;
}


/* -------------------------------------
 * shopInfo
 * ---------------------------------- */
#footer .shopInfo{
  float:none;
  width: 100%;
  margin:30px 0 0;
}
#footer .shopInfo .shopImg img{
  width:100%;
}
#footer .shopInfo h4{
  border-bottom:;/*color.css*/
  padding:10px 0;
}
#footer div[id^="map_"] {
  width:100%;
  padding:0;
}
#googlemap-comment{
  margin:5px 0 40px;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  #footer .container{
    padding:0;
  }
  #footer .shopInfo{
    float:left;
    width: 25%;
  }
  #footer .container > div[id^="map_"],
  #footer .container > div[id^="EDIT-googlemap"] div[id^="map_"] {
    width: 73% !important;
    overflow: hidden !important;
    padding:0 0 0 2%;
    float:right;
    margin:30px 0 5px;
  }
  #footer .container > div[id^="map_"] + *,
  #footer .container > div[id^="EDIT-googlemap"] + * {
    clear: both;
  }
  #googlemap-comment{
    text-align: right;
    clear:both;
  }
}

/* -------------------------------------
 * .footerNavi
 * ---------------------------------- */
#footer .footerNavi {
  background:;/*color.css*/
  clear:both;
  margin:0 -15px 40px !important;
  padding:10px 0 5px;
  text-align: center;
  overflow: hidden;
}
#footer .footerNavi .box{
  margin:0;
}
#footer .footerNavi ul{
  margin: 0;
  width: 100%;
  overflow: hidden;
}
#footer .footerNavi ul > li {
  background-size: 6px 9px;
  margin: 0 5px 5px !important;
}
#footer .footerNavi ul > li a{
  color:;/*color.css*/
  padding:10px;
  display: inline-block;
  text-decoration: none;
}
#footer .footerNavi ul > li a:hover{
  background:;/*color.css*/
  color:#fff;
  border-radius: 2px;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  #footer .footerNavi {
    margin: 0 -100% !important;
  }
  #footer .footerNavi ul {
    width: 750px;
    margin:0 auto;
  }
}
/* PC */
@media (min-width: 992px) {
  #footer .footerNavi ul {
    width: 970px;
  }
}
/* PC（ワイド） */
@media (min-width: 1200px) {
  #footer .sitemapParts > ul.treeLevel0,#footer .footerNavi ul {
      width: 1170px;
  }
}

/* -------------------------------------
 * .sitemapParts
 * ---------------------------------- */
#footer .sitemapParts {
  background:;/*color.css*/
  clear:both;
  margin:0 -15px !important;
}
#footer .sitemapParts > ul.treeLevel0 {
  margin: 0 -15px !important;
  width: 100%;
  padding: 20px 0 10px;
  overflow: hidden;
}
#footer .sitemapParts > ul.treeLevel0 > li > ul.treeLevel0 > li{
  display: block;
  border-bottom:;/*color.css*/
  margin: 0 0 20px 10px;
}
#footer .sitemapParts > ul.treeLevel0 > li > ul.treeLevel0 > li:last-child{
  border:none;
}
#footer .sitemapParts > ul.treeLevel0 ul.treeLevel0 ul li{
  background:;/*color.css*/
  margin: 5px 0 !important;
  padding: 0 0 5px 10px;
  list-style: none;
}
#footer .sitemapParts > ul.treeLevel0 ul.treeLevel0 > li > a:before {
  content:"";
  padding:0 18px 0 0;
  background: url(../images/common/linkmark_below_sp.png) no-repeat left center;
  background-size: contain;
  display: inline-block;
  width: 13px;
  height: 13px;
  vertical-align: -2px;
}
#footer .sitemapParts ul.treeLevel0 ul.treeLevel1 > li {
  background: url(../images/common/linkmark_sp.png) no-repeat 0 3px;
  background-size: 6px 9px;
  margin: 0 10px !important;
  display: list-item;
}
#footer .sitemapParts ul.treeLevel0 ul.treeLevel2 > li{
  list-style: disc !important;
  padding: 0 0 5px !important;
}
#footer .sitemapParts ul.treeLevel0 ul.treeLevel0 ul{
  margin-top: 10px !important;
}
#footer .sitemapParts ul.treeLevel2{
  margin-left:20px;
}
#footer .sitemapParts ul.treeLevel2{
  padding-left:0 !important;
}
#footer .sitemapParts ul.treeLevel0 li a{
  color:#333;
}
#footer .sitemapParts ul.treeLevel0 li a:hover{
  color:;/*color.css*/
}
#footer .sitemapParts ul.treeLevel0 ul.treeLevel0 ul li{
  color:;/*color.css*/
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  #footer .sitemapParts {
    margin: 0 -100% !important;
  }
  #footer .sitemapParts > ul.treeLevel0{
    width: 750px;
    overflow: hidden;
    margin: 0 auto !important;
    padding: 40px 0 30px;
  }
  #footer .sitemapParts > ul.treeLevel0 ul.treeLevel0 li{
    margin: 0 20px !important;
  }
  #footer .sitemapParts > ul.treeLevel0 > li > ul.treeLevel0 > li{
    float:left;
    border-bottom:none;
  }
}
/* PC */
@media (min-width: 992px) {
  #footer .sitemapParts > ul.treeLevel0 {
    width: 970px;
  }
  #footer .sitemapParts > ul.treeLevel0 ul.treeLevel0 > li > a:before {
    background: url(../images/common/linkmark_below.png) no-repeat left center;
  }
  #footer .sitemapParts ul.treeLevel0 ul.treeLevel1 > li {
    background: url(../images/common/linkmark.png) no-repeat 0 4px;
  }
}
/* PC（ワイド） */
@media (min-width: 1200px) {
  #footer .sitemapParts > ul.treeLevel0 {
    width: 1170px;
  }
}

/* -------------------------------------
 * .siteSearch
 * ---------------------------------- */
#footer .siteSearch{
  margin:15px 0 0;
}

/* -------------------------------------
 * .sns_icons
 * ---------------------------------- */
.sns_icons{
  text-align: center;
  margin:30px auto 30px;
}
.sns_icons img{
  margin:0 10px 20px;
  padding:5px;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  .sns_icons img{
    margin:0 15px 20px;
    padding:0;
  }
}

/* -------------------------------------
 * address
 * ---------------------------------- */
#footer address {
  padding:10px 0;
  background:;/*color.css*/
  color:#fff;
  font-size:90%;
}

/* -------------------------------------
 * .pageTop
 * ---------------------------------- */
#footer .pageTop {
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:80px;
  overflow: hidden;
}
#footer .pageTop .container{
  width: 100%;
  margin:0;
  padding:0;
}
#footer .pageTop a{
  background:;/*color.css*/
  display: block;
  width: 100%;
  height:80px;
}
#footer .pageTop a:hover{
  background:;/*color.css*/
}
#footer .pageTop a:before{
  content:"";
  display: block;
  background: url(../images/common/pagetop_sp.png) no-repeat center center;
  background-size:37px;
  width: 100%;
  height: 80px;
}
/* PC */
@media (min-width: 992px) {
  #footer .pageTop a:before{
    background: url(../images/common/pagetop.png) no-repeat center center;
  }
}


/* ----------------------------------------------------------------------------------------
  既存コンテンツパーツ
---------------------------------------------------------------------------------------- */
/* -------------------------------------
 * .parts_text_type12
 * ---------------------------------- */
.parts_text_type12{
  height:250px;
}
.parts_text_type12 ul > li{
  border-bottom:#ccc dotted 1px;
  padding:10px 5px;
  list-style: none;
}

/* -------------------------------------
 * .qaList
 * ---------------------------------- */
.qaList{
  margin:0;
}
.qaList dl{
  padding:10px 10px 0;
  border:#dad7d1 solid 1px;
}
.qaList dl dt {
  padding: 10px 0 15px 45px;
  background: url(../images/parts/faq_q.png) no-repeat 5px 5px !important;
}
.qaList dl dd {
  padding: 15px 0 10px 45px;
  background: url(../images/parts/faq_a.png) no-repeat 5px 10px;
}

/* -------------------------------------
 * .foreground
 * ---------------------------------- */
.foreground .element.title, .foreground-triple .element.title{
  font-size:260% !important;
}
.foreground .element.subtitle{
  top:100px !important;
  font-size: 1.214rem !important;
}

/* -------------------------------------
 * .eventDetail
 * ---------------------------------- */
table.eventDetail td .eventImg .calenderIcon{
  margin-right:10px !important;
}
/* PC */
@media (max-width: 991px){
  table.eventDetail td .eventImg .calenderIcon{
    float:none !important;
    margin:0 0 5px !important;
    display: block;
  }
}

/* -------------------------------------
 * .column2 #side
 * ---------------------------------- */
.column2 #side .catalog_random img{
  display: block;
  padding:0 0 5px;
}
.column2 #side .catalog_random .col-xs-12{
  padding:10px 0;
  border-bottom:#aaa dotted 1px;
}

/* -------------------------------------
 * .calender
 * ---------------------------------- */
/*----calender----*/
.eventCalendar table.calendar th, .eventCalendar table.calendar td {
    font-size: 100% !important;
}

/* -------------------------------------
 * parts_h_type, parts_img_type
 * ---------------------------------- */
div[class^="parts_h_type"] h4,
div[class^="parts_img_type"] h4{
  border-bottom:#666 solid 1px;
  padding:5px 0 15px;
}
div[class^="parts_h_type"].left, div[class^="parts_img_type"].left {
    padding: 15px;
}
div[class^="parts_h_type"].right, div[class^="parts_img_type"].right {
    padding: 15px;
}
div[class^="parts_h_type"],div[class^="parts_img_type"] {
    padding-top: 0;
    padding-bottom: 0;
}
div[class^="parts_h_type"] img,div[class^="parts_img_type"] img {
    padding-top: 0;
    padding-bottom: 10px;
}


/* ----------------------------------------------------------------------------------------
  追加フリーパーツ
---------------------------------------------------------------------------------------- */
/* -------------------------------------
 * .TopMainImg
 * ---------------------------------- */
#upper .TopMainImg {
    opacity: 0;
    background: url(../images/main_img.png) no-repeat;
    background-size: cover;
    background-position: center bottom;
    width: 108.8%;
    height: 300px;
    margin: -50px -4.4% 20px;
    position: relative;
}
#upper .TopMainImg .default_visualimage_type09 {
	display: none;
}
#upper .TopMainImg .mainText {
    background:;/*color.css*/
    width: 100%;
    padding: 10px;
    text-align: center;
    position: absolute;
    bottom: 0;
}
#upper .TopMainImg .mainText p{
  color:#fff;
  font-size: 1rem;
  letter-spacing: 2px;
  line-height:1.4;
  margin:0;
}
#upper .MainImgSpacer{
  display: none;
}


/* タブレット以上 */
@media (min-width: 992px) {
    #upper .TopMainImg{
        background-position: center 100%;
        background-attachment: fixed;
    }
}

/* タブレット以下 */
@media (max-width: 991px) {
    #upper .TopMainImg{
        background-position: center;
    }
}

/* スマホ以外 */
@media (min-width: 768px) {
  #upper .TopMainImg{
    position:absolute;
    top:0;
    left:0;
    right:0;
    width: 100%;
    height:580px;
    margin:0;
  }
  #upper .TopMainImg .mainText{
    margin:500px auto 0;
    padding:30px;
    position:relative;
  }
  #upper .TopMainImg .mainText p{
    font-size: 1.4285rem;
    line-height:1.7;
  }
  #upper .MainImgSpacer{
    display: block;
    height:480px;
    text-indent: -9998px;
  }
  #upper .TopMainImg .mainText{
    width: 720px;
  }
}
/* PC */
@media (min-width: 992px){
  #upper .TopMainImg .mainText{
    width: 940px;
  }
}
/* PC(ワイド) */
@media (min-width: 1200px){
  #upper .TopMainImg .mainText{
    width: 1140px;
  }
}

/* -------------------------------------
 * .bg_color
 * ---------------------------------- */
.bg_color{
  background:#f6f6f6;
  margin:50px -15px 0;
}
.bg_color > .box{
  width: 100%;
  padding: 0 15px 40px;
}
.bg_color h2{
  margin:0;
}
.bg_color img {
    max-width: 100%;
}
/* タブレット（スマホ以外） */
@media (min-width: 768px) {
  .bg_color{
    margin:50px -100% 0;
  }
  .bg_color > .box{
    width: 720px;
    margin: 0 auto;
    padding:0 0 40px;
  }
}
/* PC */
@media (min-width: 992px) {
  .bg_color > .box{
      width: 970px;
  }
}
/* PC（ワイド） */
@media (min-width: 1200px) {
  .bg_color > .box{
      width: 1140px;
  }
}


/* ----------------------------------------------------------------------------------------
  コンパネ
---------------------------------------------------------------------------------------- */
.alert_buttons input{
  width: 30% !important;
}
