@charset "utf-8";

@import "base_layout.css";
@import "common_parts.css";


h2{
	padding:75px 0 40px 0;
	font-size:43px;
	text-align:center;
	line-height: 1.2em;
	font-family: "museo_sans500", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
h2 span{
	display:block;
	font-size:15px;
	font-weight:normal;
}
h3{
	padding-right:50px;
	font-size:43px;
	background:url(../../img/common/arrow_title.png) no-repeat right 20px;
	display:inline-block;
	-moz-background-size: 25px auto;
	-webkit-background-size: 25px auto;
	background-size: 25px auto;
	font-family: "museo_sans500", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
h3.white{
	background:url(../../img/common/arrow_title_white.png) no-repeat right 20px;
	color:#FFF;
	-moz-background-size: 25px auto;
	-webkit-background-size: 25px auto;
	background-size: 25px auto;
	font-family: "museo_sans500", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
h3 span{
	font-size:15px;
	display:block;
	font-weight:normal;
}

h3 a{
	text-decoration: none !important;
	color: #000;
}

h3.white a{
	color: #FFF;
}
@media screen and (max-width: 979px) {
h2{
	padding:40px 0 40px 0;
	font-size:30px;
	text-align:center;
	line-height: 1.2em;
	font-family: "museo_sans500", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
h3{
	font-size:30px;
	background:url(../../img/common/arrow_title.png) no-repeat right 20px;
	display:block;
	-moz-background-size: 25px auto;
	-webkit-background-size: 25px auto;
	background-size: 25px auto;
}

h3 a{
	text-align: center;
	display: block;
}
}

/*layout
************************************************************************************/
.article:nth-child(even){
	background:#efefef;
}

.wrap_half{
	width:50%;
	text-align:left;
	float:left;
}
.wrap_half:nth-child(even){
	background:#787878;
}
@media screen and (max-width: 979px) {
.wrap_half{
	width:100%;
	float: none;
}
}
@media screen and (max-width: 768px) {
/*tablet*/
}
@media screen and (max-width: 479px) {
/*sp*/
}

/*frameNews
************************************************************************************/
.frameNews{
	margin: 20px 0;
	width:77%;
	float:left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.frameNews ul{
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.frameNews ul li{
	padding:10px 10px 20px 10px;
	width:33.3%;
	border:1px solid #eaeaea;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.frameNews ul li:nth-child(3n){
	border-right: 0;
}
.frameNews ul li .image{
	width:280px;
	height:200px;
	margin: auto;
	text-align:center;
}
.frameNews ul li .image img{
	margin:0 auto;
	max-width:100%;
	max-height:100%;
	display:block;
}
.frameNews ul li .txt{
	width:280px;
	margin: 10px auto 0;
}
.frameNews ul li .txt .category{
	margin-right: 15px;
	padding: 6px 5px 4px 5px;
	width:8em;
	line-height:1;
	border:1px solid #bababa;
	text-align:center;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
.frameNews ul li .txt .date{
	margin-top: -1.8em;
	text-align: right;
	font-size: 12px;
	color: #5c5c5c;
}
.frameNews ul li .txt .ttl{
	margin-top: 10px;
	height: 2.9em;
	font-weight:bold;
	font-size:110%;
	overflow:hidden;
}
.frameNews ul li .txt a{
	text-decoration: none;
}

@media screen and (max-width: 1180px) {
.frameNews ul li .image{
	width:100%;
	height: auto;
}
.frameNews ul li .txt{
	width: auto;
	margin: 10px auto 0;
}
.frameNews ul li .txt .date{
	margin-top: 5px;
}
.frameNews ul li .txt .ttl{
	margin-top: 5px;
}
}

@media screen and (max-width: 979px) {

}
@media screen and (max-width: 768px) {
/*tablet*/
.frameNews{
	width:100%;
	float: none;
}
.frameNews ul li:nth-child(3n){
	border-right: 1px solid #eaeaea;
}
}
@media screen and (max-width: 620px) {
/*sp*/
.frameNews ul li{
	width: 50%;
}
}
@media screen and (max-width: 479px) {
/*sp*/
.frameNews ul li{
	width: 100%;
}
}


/*frameTopics
************************************************************************************/
.frameTopics{
	margin: 20px 0;
	width:23%;
	float:right;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../../img/common/side_shadow.png) repeat-y left;
}
.frameTopics img{
	margin:0 auto 1px auto;
	max-width:100%;
	display:block;
}
.frameTopics li{
	border-bottom:none;
}
.frameTopics li .title{
	padding-top:25px;
	text-align:center;
	background: url(../../img/common/side_shadow.png) repeat-y left #f6f6f6;
}
.frameTopics li .side_body{
	word-break: break-all;
	word-wrap:break-word;
	padding: 1em 0.8em;
}
.frameTopics li .side_body img{
	margin-bottom: 15px;
}
.frameTopics li .side_body a{
	margin: 0 0 10px 0;
}
.frameTopics li .txt{
	padding:5px;
}
.frameTopics li .txt p{
	margin-bottom:1em;
}
.frameTopics li .txt p:last-child{
	margin-bottom:0;
}


@media screen and (max-width: 768px) {
/*tablet*/
.frameTopics{
	width:100%;
	float:none;
	background: none;
	margin: 20px 0 0 0;
}
.frameTopics li .title{
	background: none #f6f6f6;
	margin-bottom: 15px;
}
.frameTopics li{
	width:100%;
	border-bottom:1px solid #eaeaea;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	padding-bottom: 0.7em;
}
.frameTopics li .txt{
	padding: 5px 20px;
}
}
@media screen and (max-width: 479px) {
/*sp*/
.frameTopics li{
	width:100%;
}
}


/*frameTopics
************************************************************************************/
div.article.frameBerry{
	background-color: transparent;
	background: url(../../img/toppage/berry_bg.png) no-repeat top center;
	-moz-background-size: 100% auto;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
}
div.article.frameBerry h2{
	color: #FFF;
	text-shadow: 1px 1px 0px #000;
}

.frameEvent{
	padding: 50px 0 76px 0;
}
.frameEvent ul{
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.frameEvent ul li{
	padding:15px;
	width:50%;
	background:#fff;
	border:1px solid #eaeaea;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.frameEvent ul li:after {
    content: "";
    display: block;
    clear: both;
    height: 1px;
    overflow: hidden;
}
/*\*/
* html .frameEvent ul li{
    height: 1em;
}
.frameEvent ul li{
    display: block;
}
/* ▲ */
/* for IE7 */
*:first-child+html .frameEvent ul li{
	zoom:1;
}
.frameEvent ul li .image{
	margin-right:15px;
	width:160px;
	float:left;
}
.frameEvent ul li .image img{
	max-width:100%;
	height: auto;
	display:block;
}
.frameEvent ul li .txt{
	margin:10px;
}
.frameEvent ul li .txt .ttl{
	font-weight:bold;
	font-size:18px;
}
.frameEvent ul li .txt .ttl a{
	color: #000;
	text-decoration: none;
}
.frameEvent ul li .txt .cmt{
	margin-top:1em;
}

.frameEvent .btn_detail{
	margin-top:20px;
}
.frameEvent .btn_detail ol{
	display: table;
	margin-left: auto;
}
.frameEvent .btn_detail ol li{
	display: table-cell;
	padding: 2px;
	vertical-align: middle;
}

.frameEvent .btn_detail ol li a{
	margin: 0 5px 0 auto;
	padding:10px 10px 10px 50px;
	width:260px;
	background:#000 url(../../img/common/icon_arw_right_white.png) no-repeat 15px center;
	-moz-background-size: 10px auto;
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	color:#FFF;
	text-decoration:none;
	text-align:left;
	display: block;
}
@media screen and (max-width: 1200px) {
.frameEvent .btn_detail a{
	width:120px;
}
}


@media screen and (max-width: 979px) {
.frameEvent ul{
	margin-left: 1%;
	margin-right: 1%;
}
}

@media screen and (max-width: 768px) {
/*tablet*/
div.article.frameBerry h2{
	color: #000;
	text-shadow: 1px 1px 0px #FFF;
}
.frameEvent ul li{
	padding:10px;
	width:100%;
}
.frameEvent .btn_detail ol{
	display: block;
	margin: auto;
}
.frameEvent .btn_detail ol li{
	display: block;
	padding: 2px;
}
.frameEvent .btn_detail ol li a{
	width: auto;
	margin: auto;
}
}
@media screen and (max-width: 479px) {
/*sp*/
.frameEvent ul li .image{
	margin-right:0;
	width:100%;
	text-align:center;
	float: none;
}
.frameEvent ul li .image img{
	margin:0 auto;
}
}


/*frameProfile
************************************************************************************/
.wrap_half .frameProfile{
	margin:0 0 0 auto;
	padding:60px 30px 20px 5px;
	width: 100%;
	max-width:595px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.frameProfile .frame{
	margin:70px 0 20px 0;
}
.frameProfile .frame img{
	margin-right:20px;
	width:104px;
	float:left;
}
.frameProfile .frame .namae{
	margin-bottom:20px;
	font-size: 24px;
	font-weight:bold;
}
.frameProfile .frame .namae span{
	font-size: 12px;
	font-weight:normal;
}

.frameProfile .box_ad{
	margin-top:50px;
	padding:30px 25px;
	background:#efefef;
}
.frameProfile .box_ad h4{
	margin-bottom:20px;
	font-size:17px;
	line-height:2;
}
.frameProfile .box_ad h4 img{
	vertical-align: middle;
}

.frameProfile .btn_detail a{
	margin-top:20px;
	padding:10px 30px 10px 20px;
	width:16em;
	background:#fff url(../../img/common/icon_arw_right_gray.png) no-repeat right 15px center;
	-moz-background-size: 10px auto;
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	text-decoration:none;
	text-align:left;
	display:block;
}
@media screen and (max-width: 1200px) {
.wrap_half .frameProfile{
	margin:0 auto !important;
	padding:60px 10px 20px 10px !important;
	max-width:none;
}
}
@media screen and (max-width: 768px) {
/*tablet*/
.wrap_half .frameProfile{
	padding:60px 20px 20px 20px !important;
}
.frameProfile .btn_detail a{
	width:auto;
}
}
@media screen and (max-width: 479px) {
/*sp*/
.wrap_half .frameProfile{
	padding:60px 10px 20px 10px !important;
}
}


/*frameMedia
************************************************************************************/
.wrap_half .frameMedia{
	margin:0 auto 0 0;
	padding:60px 5px 60px 50px;
	width: 100%;
	max-width:595px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.frameMedia ul{
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.frameMedia li{
	margin-top:20px;
	width:50%;
}
.frameMedia li.size_l{
	width:100%;
}
.frameMedia li .boxMedia{
	padding:25px 15px 10px 15px ;
	background:#fff;
	border:1px solid #dbdbdb;
}
.frameMedia li .ttl{
	margin-bottom:20px;
	font-size:16px;
	font-weight:bold;
}
.frameMedia li .image{
	margin-right:15px;
	width:100px;
	float:left;
}
.frameMedia li .image img{
	display:block;
	max-width:100%;
	height: auto !important;
}
.frameMedia li .btn_detail{
	text-align:right;
	font-size: 12px;
}
.frameMedia li .btn_detail a{
	margin: -30px 5px 0 auto;
	padding:10px 10px 10px 30px;
	width:105px;
	background:#000 url(../../img/common/icon_arw_right_white.png) no-repeat 10px center;
	-moz-background-size: 10px auto;
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	color:#FFF;
	text-decoration:none;
	text-align:left;
	display:block;
}
.frameMedia li.size_l .btn_detail a{
	padding:10px 10px 10px 50px;
}
@media screen and (max-width: 1200px) {
.wrap_half .frameMedia{
	margin:0 auto !important;
	padding:60px 10px 60px 10px !important;
	max-width: none;
}
.frameMedia li .btn_detail a{
	margin: -10px 5px 0 auto;
	padding:10px 10px 10px 20px;
	width:130px;
}
}
@media screen and (max-width: 768px) {
/*tablet*/
.wrap_half .frameMedia{
	padding:60px 20px 60px 20px !important;
}
}
@media screen and (max-width: 479px) {
/*sp*/
.wrap_half .frameMedia{
	padding:60px 10px 60px 10px !important;
}
.frameMedia li{
	width:100%;
}
}


