@charset "utf-8";
/* CSS Document */
/*================================================
*  CSSリセット
================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav.gnav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav.gnav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
*  一般・共通設定
================================================*/
body {
	font-size: 16px;
	font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	line-height: 1.6;
	-webkit-text-size-adjust: 100%;
}

* {
	min-width: 0;
	min-height: 0;
	box-sizing: border-box;
}

img {
  image-rendering: -webkit-optimize-contrast;
  vertical-align: top;
}

#wrap {
	width: 100%;
	overflow: hidden;
	margin: 0 auto;
}

.contents {
	width: 1000px;
	margin: 0 auto;
}

@media only screen and (max-width: 999px) {
	.contents {
		width: 100%;
		padding: 0 20px;
	}
}
@media only screen and (max-width: 599px) {
	.contents.no-padding {
		width: 100%;
		padding: 0;
	}
}

a { color: #111;}
a:link{ text-decoration: none;}
a:visited{ color: inherit;}


/* pc sp表示切替 */
.pc { display: block !important;  }
.sp { display: none !important; }
@media only screen and (max-width: 599px) {
	.pc { display: none !important; }
	.sp { display: block !important; }
}

.pc480 { display: block !important;}
.sp480 { display: none !important; }
@media only screen and (max-width: 480px) {
	.pc480 { display: none !important; }
	.sp480 { display: block !important; }
}


/*================================================
 *  ヘッダー
 ================================================*/
/* ロゴ */
header h1 img {
	width:15%;
	height: auto;
	margin: 0.5rem 0;
}
@media only screen and (max-width: 480px) {
    header h1 {
        text-align: center;
    }
    header h1 img {
        width:27%;
        height: auto;
    }
}

/* キービジュアル */
.mainvisual {
	margin: 0 auto 2rem;
	text-align: center;
}
@media only screen and (max-width: 999px) {
  .mainvisual {
    margin: 0 auto 1.5rem;
  }
  .mainvisual img {
    width: 100%;
  }
}


/*================================================
 *  コンテンツ
 ================================================*/

h2{
  text-align: center;
  padding: 0.5rem 1rem;
  margin-bottom: 1rem;
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
    border-radius: 5px;
}
@media only screen and (max-width: 480px) {
    h2{
      font-size: 1.2rem;
    }
}

h2.campaign{
  background: linear-gradient(-135deg, #F47736, #BB47A4);
}

h2.knowledge{
  background: linear-gradient(-135deg, #d9cf54, #3f8377);
}

h2.place{
  background: linear-gradient(-135deg, #c686a0, #d22826);
}

.cmt{
    display: block;
    text-align: center;
    font-weight: bold;
    margin: -0.5rem auto 0.5rem;
    color: #D5034B
}

/* リンク先バナー
--------------------------------------*/
.banners{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: row;
    margin-bottom: 3rem;
}
.banners::after{
  content:"";
  display: block;
  width:32%;
}

.banners .item{
    width:32%;
    margin-bottom: 1rem;
}

.banners .item img{
   width:100%;
}
/*スマホ*/@media only screen and (max-width: 599px) {
    .banners{
        flex-direction: column;
        margin-bottom: 2rem;
    }
    .banners .item{
        width:100%;
        margin-bottom: 1rem;
    }
        .banners .item img{
       width:100%;
    }
}


/* キャンペーンバナー */
.bnr_campaign {
	display: block;
	margin: 0 auto 1.5rem;
	text-align: center;


}
.bnr_campaign img{
    width:60%;
}
@media only screen and (max-width: 896px) {
	.bnr_campaign {
		width: 85%;
	}
}
@media only screen and (max-width: 490px) {
    .bnr_campaign {
        margin: -0.5rem auto 1rem;
        width: 100%;
    }
    .bnr_campaign img{
        width:85%;
    }
}


/*================================================
 *  フッター
 ================================================*/
footer {
	clear: both;
	padding-bottom: 30px;
	margin-top: 80px;
	font-size: 0.9rem;
}

.copyright {
	padding: 10px;
	text-align: center;
}

@media screen and (max-width:750px) {
	footer {
		margin-top: 40px;
		padding-bottom: 0;
	}
  .copyright {
    font-size: 0.7rem;
  }
}


/*================================================
 *  ページトップへの戻り
 ================================================*/
#page-top {
	position:fixed;
	bottom:15px;
	right:15px;
	z-index:1;
}
#page-top a {
	display:block;
	text-decoration:none;
}
#page-top img {
	background:#111;
}
#page-top img:hover {
	background:#222;
}
