@charset "utf-8";

/***************************************************************************
*
* top.css
*
***************************************************************************/

.slider{
    margin: 100px auto;
    width: 80%;
}
.slider img{
    height: auto;
    width: 100%;
}
/*slick setting*/
.slick-prev:before,
.slick-next:before {
    color: #000;
}

/*flexbox*/
.hfbox {
	display: flex;
	width: 1080px;
	margin: 0px auto;
	justify-content: space-between;
	flex-wrap: wrap; 
}
.hfbox .hfbox-l {
	width: 65%;
	margin-top: 4%;
	text-align: left;
}
.hfbox .hfbox-l img {
	width:100%;
}
.hfbox .hfbox-r {
	width: 35%;
	margin: 3.5% 0 2% 0;
	text-align: right;
}
.hfbox .hfbox-r img {
	width:100%;
}
.elogo {
	width: 70%;
	height: auto;
	padding: 2% 2%;
}
.hlinkbox {
	display: flex;
	max-width: 100%;
	margin: 10px auto;
	justify-content: space-between;
	flex-wrap: wrap; 
}
.hlinkbox .item {
  width: 25%;
  margin-bottom: 0.5%;
  text-align: right;
}

@media (max-width: 1080px) {
	
	.hfbox {
		margin: 0;
		padding: 0;
		width: 100%;
		text-align: center;
	}
	.hfbox .hfbox-l {
		width: 100%;
		margin-top: 3%;
		text-align: center;
	}
	.hfbox .hfbox-l img{
		width: 85%;
		margin: 10% 3% 0 0;
	}
	.elogo {
		width: 100%;
		height: auto;
	}
	.hfbox .hfbox-r {
		width: 100%;
		margin: 0 auto;
		padding: 0% 1% 2% 1%;
		text-align: center;
	}
	.hfbox .hfbox-r img{
		width: 85%;
		text-align: center;
	}
	.hlinkbox {
		width: 100%;
		margin: 0% auto 0 auto;
		text-align: center;
	}
	.hlinkbox .item {
		width: 25%;
		margin-bottom: 0%
	}
}



/*  バナートップ画像
----------------------------------------------------------- */  

.bn-top {
	max-width: 1080px;
	margin: 20px 0 0 0;
}
.bn-top img {
    width: 100%;
    height: auto;
}

@media (max-width: 767px) {

	.bn-top {
		max-width: 100%;
		margin: 30px 0 0 0;
	}
	.bn-top img {
		width: 100%;
		height: auto;
	}
}

/*  タイトル
----------------------------------------------------------- */  

.t-title {
	max-width: 1080px;
    height: auto;
	text-align: center;
	margin: 0 auto;
	padding: 2% 0%;
}
.t-title img {
	width: 50%;
    height: auto;
}

@media (max-width: 767px) {

	.t-title {
		width: 100%;
		height: auto;
		padding: 1% 0%;
	}
	.t-title img {
		width: 85%;
		height: auto;
		padding: 4% 0%;
	}
}

/*  テキスト
----------------------------------------------------------- */  
.t-text {
	font-size: 20px;
	font-weight:normal;
	letter-spacing: 0.2em;
	line-height: 1.5em;
	text-align:center;
	padding: 0px 0px 0px 0px;
	margin: 10px 0px 20px 0px;
	color: #333;
}
.t-textm {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 32px;
	font-weight:normal;
	letter-spacing: 0.2em;
	line-height: 1.5em;
	text-align:center;
	margin: 0px 0px 40px 0px;
	padding: 20px 0px 20px 0px;
	color: #333;
	background-color: #FFFFFF;
}
.t-textms {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 28px;
	font-weight:normal;
	letter-spacing: 0.2em;
	line-height: 1.5em;
	text-align:center;
	margin: 0px 0px 40px 0px;
	padding: 20px 0px 20px 0px;
	color: #333;
	background-color: #FFFFFF;
}
.t-text1 {
	font-size: 20px;
	font-weight:normal;
	letter-spacing: 0.2em;
	line-height: 1.5em;
	text-align:center;
	padding: 0px 0px 0px 0px;
	margin: 30px 0px 20px 0px;
	color: #333;
}
.t-text2 {
	font-size: 14px;
	font-weight: normal;
	text-align: center;
	padding: 0px 0px 0px 0px;
	margin: 10px 0px 20px 0px;
	color: #333;
}

@media (max-width: 767px) {

	.t-text {
		font-size: 22px;
	}
	.t-text1 {
		font-size: 16px;
		font-weight:normal;
		letter-spacing: 0.2em;
		line-height: 1.5em;
		text-align:left;
		padding: 0px 0px 0px 0px;
		margin: 30px 10px 20px 10px;
	}
	.t-text2 {
		font-size: 12px;
		text-align:left;
		padding: 0px 0px 0px 0px;
		margin: 10px 10px 20px 10px;
		color: #333;
		}
}



/*  SNSボタン
----------------------------------------------------------- */  

.center {
	text-align: center;
	margin-bottom: 50px;  
}
.center2 {
	text-align: center;
	margin-top: 20px; 
	margin-bottom: 20px;
}
.mlink {
  display: inline-block;
  width: 200px;
  height: 44px;
  text-align: center;
  text-decoration: none;
  line-height: 44px;
  outline: none;
}
.mlink::before,
.mlink::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.mlink,
.mlink::before,
.mlink::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.mlink {
  background-color: #eb615a;
  color: #fff;
}
.mlink:hover {
  opacity: 0.7;
  color: #fff;
}

/*  スライド
----------------------------------------------------------- */  

#top-slide {
	margin: 0;
	padding: 0;	
}
#top-slide h1 {
	display: none;
}
#top-slide img {
	width: 100%;
	height: auto;
	margin: 0px 0px 0px 0px;
}

.swiper-container {
  padding: 30px 0 50px;
  background: #eeeeee;
}

.s-fade-wrap {
  position: relative;
  margin: 0 auto;
}
.s-fade-text {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  color: white;
  font-size: 4vw;
}

.s-three-wrap {
  position: relative;
  max-width: 640px;
  margin: 0 auto;
}
.s-three-text,
.s-three-sub,
.s-three-button {
  position: absolute;
  width: 100%;
  left: 0;
  text-align: center;
  color: white;
}
.s-three-text {
  top: 35%;
  font-size: 6vw;
}
.s-three-sub {
  top: 55%;
  font-size: 2vw;
}
.s-three-button {
  top: 70%;
  left: calc( 50% - 75px );
  display: block;
  width: 150px;
  padding: 2% 2%;
  box-sizing: border-box;
  background: white;
  color: #535353;
  text-align: center;
  text-decoration: none;
  transition: all .25s ease;
}
.s-three-button:hover {
  background: #535353;
  color: white;
}
.swiper-slide-active .s-three-text {
  animation: slideFromRight 1.5s ease 0s 1 normal;
}
.swiper-slide-active .s-three-sub {
  animation: slideFromRightSub 2.0s ease 0s 1 normal;
}
.swiper-slide-active .s-three-button {
  animation: slideFromRightBtn 2.5s ease 0s 1 normal;
}

@keyframes slideFromRightBtn {
  0%, 65% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
    opacity: 1;
  }
}
@keyframes slideTextFade {
  0%, 25% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* SP
----------------------------------------------------------- */

@media (max-width: 767px) {

	#top-slide img {
		width: 100%;
		text-align: center;
	}
	.s-fade-text {
	font-size: 8vw;
	}
	.s-three-text {
		font-size: 8vw;
	}
	.s-three-sub {
		font-size: 4vw;
	}
	.s-three-button {
		padding: 3% 2%;
	}
}


/*  トップページウィジェットエリア
----------------------------------------------------------- */ 

#toplist{
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}
.toplist ul{
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}
.toplist li{
	font-size: 13px;
	margin: 6px 0px 0px 0px;
	padding: 2px 0px 2px 0px;
	list-style: none;
	border-bottom: 1px dotted #dedede;
}
.toplist li a{
	color:#666;
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}
.toplist li a:hover{
	background-position: 3px 50%;
	color:#999;
}

/* 本文下の広告枠 */

.widget-adspace {
	margin: 30px 0 30px 0px;
}

/*  検索フォーム
----------------------------------------------------------- */

.search fieldset {
margin: -20px 0 20px 0px;
border: 0px solid #eee;
}

.search input {
font: 11px arial, sans-serif;
color: #c0c0c0;
width:80%;
padding: 5px 5px;
vertical-align: middle;
border: none;
background: none;
}

.search button {
width: 15px;
height: 15px;
cursor: pointer;
vertical-align: middle;
border: none;
background: url(images/search.png) no-repeat;
}


/* info/log
---------------------------------------------------- */
.log li.item {
	float: left;
	height: 200px;
	overflow: hidden;
	width: 49%;
	margin: 0 0 20px;
	border: 1px solid #CCCCCC;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.log li.item:nth-child(2n) {
	margin-left: 2%;
}
ul.log::after,.log li.item::after,.log li.voicecomment::after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}
.log li.item .item-img {
	float: left;
	width: 40%;
}
.log li.item .item-title {
	font-family: "Avenir";
	font-size: 21px;
	font-weight: normal;
	color: #808080;
	padding: 20px
}
.log li.item .item-date {
	font-family: "Avenir";
	font-size: 28px;
	font-weight: light;
	float: right;
	padding: 5px;
	width: 60px;
	background-color: #f5f5f5;
	text-align: center;
	margin-top: 10px;
}
.log li.item .item-date div {
	font-size: 22px;
	color: #808080;
}	
.log li.item .item-date div+div {
	font-size: 12px;
	color: #808080;
}
.log li .item-title {
	padding: 0 10px;
	overflow: hidden;
}
.log li .logcomment p {
	font-size: 12px;
	color: #808080;
	width: 54%;
	text-align: left;
	margin: 0 auto;
	overflow: hidden;
}

.logcomment .item-title a {
	font-family: "Avenir";
	font-size: 21px;
	color: #808080;
}

@media screen and (max-width: 480px) {
.log li.item {
	height: auto;
	width: 100%;
}
.log li.item:nth-child(2n) {
	margin-left: 0;
}
.log li.item .item-img {
	float: none;
	width: 100%;
	height: auto;
}
.log li .logcomment p {
	display: none;
}
}
/* アイコン（テンプレート用）
---------------------------------------------------- */
.icon-ai {
	float: none;
	height: 20px;
	background-image: url("img/icon/icon-AI.jpg");
	background-repeat: no-repeat;
	background-position: 125px center;
}

.icon-aiH {
	float: none;
	height: 20px;
	background-image: url("img/icon/icon-AI.jpg");
	background-repeat: no-repeat;
	background-position: 110px center;
}

.icon-id {
	float: none;
	height: 20px;
	background-image: url("img/icon/icon-ID.jpg");
	background-repeat: no-repeat;
	background-position: 120px center;
}

