@charset "UTF-8";

/*------------------------------------------------------------
	mv
------------------------------------------------------------*/

/*  mv
--------------------------------------------- */
.mv {
	overflow: hidden;
	height: calc(100vh - 190px);
	position: relative;
}
.mv:before {
	content: "";
	position: absolute;
	background: url(../images/common/mv_patern.png);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.mv__catch {
	width: 100%;
	max-width: 560px;
	height: 100%;
	padding: 0 40px;
	position: absolute;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

@media screen and (min-width: 768px) {
	.mv {
		height: calc(100vh - 70px);
	}
	.mv__catch {
		width: 28.125%;
		max-width: 100%;
		padding: 0;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1024px) {
	.mv {
		height: calc(100vh - 120px);
	}
} /* ----- media END ----- */

/*  sp_nav
--------------------------------------------- */
.mv_nav {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	margin-bottom: 100px;
}
.mv_nav li {
	width: 50%;
}
.mv_nav li a {
	display: block;
	color: #fff;
	text-align: center;
	padding: 14px 0;
}
.mv_nav li:first-child {
	background: #009b46;
}
.mv_nav li:last-child {
	background: #00753d;
}

@media screen and (min-width: 768px) {
	.mv_nav {
		display: none;
	}
} /* ----- media END ----- */

/*------------------------------------------------------------
	NEWS & PRESS
------------------------------------------------------------*/
.news {
	position: relative;
	display: block;
}
.news__inner {
	max-width: 1800px;
	margin-left: auto;
}
.news__inner--box {
	padding: 80px 0 40px;
}
.news .contentarea__inner {
	position: static;
	max-width: 1560px;
	margin-left: 0;
}

/*  news__btn
--------------------------------------------- */
.news__btn {
	position: absolute;
	width: 215px;
	top: -60px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}
.news__btn a {
	 padding: 35px 0 35px;
}
.news__btn a span {
	display: block;
}
.news__btn--en {
	font-size: 2rem;
}
.news__btn--jp {
	font-size: 1.2rem;
	font-weight: bold;
	margin-top: -5px;
}

/*  news__list
--------------------------------------------- */
.news__list li a {
	color: #636564;
	font-size: 1.2rem;
	display: block;
	padding: 15px 0;
	border-bottom: 1px solid #e7e8e7;
	position: relative;
}
.news__list li a:hover {
	color: #009b46;
}
.news__list li a:after {
	content: "";
	position: absolute;
	width: 0;
	height: 100%;
	top: 1px;
	left: 0;
	border-bottom: 1px solid #009b46;
}
.news__list li a:hover:after {
	width: 100%;
}
.news__list li:first-child a {
	padding-top: 0;
}

@media screen and (max-width: 767px) {
	.news {
		margin-bottom: 0;
	}
	.news__list li:nth-child(4),
	.news__list li:nth-child(5) {
		display: none;
	}
}

@media screen and (min-width: 768px) {
	.news__inner {
		padding-left: 30px;
	}
	.news__inner--box {
		padding: 40px 0;
	}
	.news__btn {
		top: 50%;
		left: 0;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}
	.news__btn a {
		text-align: left;
		padding: 100px 0 99px 20px;
	}
	.news__list {
		margin-left: 185px;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1024px) {
	.news__inner {
		padding-left: 60px;
	}
	.news__inner--box {
		padding: 80px 0;
	}
	.news__btn  a {
		max-width: none;
		width: 300px;
	}
	.news__btn--en {
		font-size: 3rem;
	}
	.news__btn--jp {
		font-size: 1.6rem;
	}
	.news__list {
		margin-left: 240px;
	}
	.news__list li a {
		font-size: 1.4rem;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1280px) {
	.news__inner {
		padding-left: 120px;
	}
	.news__btn a {
		width: 400px;
		padding: 99px 0 100px 60px;
	}
	.news__list {
		margin-left: 280px;
	}
	.news__list li a {
		display: table;
		width: 100%;
		padding: 12px 0;
	}
	.news__list li a p {
		display: table-cell;
	}
	.news__list li a p:first-child {
		width: 150px;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1800px) {
	.news__inner {
		padding-left: 120px;
	}
	.news__inner--box {
		min-height: 400px;
	}
	.news__btn a {
		width: 25vw;
		padding: 99px 0 100px 90px;
	}
	.news__list {
		margin-left: 240px;
	}
	.news__list li a p:first-child {
		width: 180px;
	}
} /* ----- media END ----- */

/*------------------------------------------------------------
   for
------------------------------------------------------------*/
.for {
	display: block;
	margin-bottom: 40px;
}
.for__list li:not(:last-child) {
	margin-bottom: 30px;
}
.for__img {
	margin: 0 -20px 30px;
	text-align: center;
}
.for__box figcaption {
	position: relative;
	background: #fff;
}
.for__subttl {
	font-size: 1.2rem;
	position: relative;
	padding-left: 36px;
	margin-bottom: 5px;
}
.for__subttl:before {
	content: "";
	background: url(../images/top/ico_for.png);
	background-size: cover;
	position: absolute;
	width: 33px;
	height: 14px;
	left: 0;
	top: 50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.for__box figcaption .ttl {
	margin-bottom: 20px;
}
.for__txt {
	margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
	.for__img {
		margin: 0;
		padding-left: 120px;
	}
	.for__list li:nth-child(even) .for__img {
		padding-left: 0;
		padding-right: 120px;
	}
	.for__box {
		margin-bottom: 60px;
	}
	.for__box figcaption {
		width: 50%;
		margin: -20% 0 0 0;
	}
	.for__list li:nth-child(odd) .for__box figcaption {
		padding: 20px 20px 20px 0;
	}
	.for__list li:nth-child(even) .for__box figcaption {
		padding: 20px 0 20px 20px;
		margin: -20% 0 0 auto;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1024px) {
	.for__box {
		margin-bottom: 120px;
	}
	.for__box figcaption {
		padding: 40px 40px 40px 0;
	}
	.for__list li:nth-child(even) .for__box figcaption {
		padding: 40px 0 40px 40px;
	}
	.for__subttl {
		font-size: 2rem;
		padding-left: 62px;
	}
	.for__subttl:before {
		width: 51px;
		height: 22px;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1500px) {
	.for__img {
		padding-left: 240px;
	}
	.for__list li:nth-child(even) .for__img {
		padding-right: 240px;
	}
	.for__box figcaption {
		width: 40.277778%;
		margin-top: -22.5%;
	}
	.for__list li:nth-child(even) .for__box figcaption {
		margin-top: -22.5%;
	}
} /* ----- media END ----- */

@media screen and (min-width: 2500px) {
	.for__box figcaption {
		margin-top: -20%;
	}
} /* ----- media END ----- */

/*------------------------------------------------------------
   info
------------------------------------------------------------*/
.info__left {
	margin-bottom: 35px;
}
.info__ttl {
	font-size: 2rem;
}
.info__ttl > i {
	position: absolute;
	top: 5px;
	right: 5px;
	font-size: 1.6rem;
}
.info__list {
	position: relative;
}
.info__list:after {
	content: "";
	position: absolute;
	background: #e7e8e7;
	width: 9px;
	height: 100%;
	top: 0;
	right: 0;
	z-index: -1;
}
.info__list ul {
	max-height: 190px;
	overflow-y: scroll;
	margin-top: 15px;
}
.info__list ul::-webkit-scrollbar {
	width: 9px;
}
.info__list ul::-webkit-scrollbar-thumb{
	background: #009b46;
}
.info__list ul li {
	padding-right: 25px;
}
.info__list ul li a {
	display: block;
	font-size: 1.2rem;
	padding: 13px 0;
	border-bottom: 1px solid #e7e8e7;
	position: relative;
}
.info__list ul li:first-child a {
	padding-top: 0;
}
.info__list ul li a:hover {
	color: #009b46;
}
.info__list ul li a:after {
	content: "";
	position: absolute;
	width: 0;
	height: 100%;
	top: 1px;
	left: 0;
	border-bottom: 1px solid #009b46;
}
.info__list ul li a:hover:after {
	width: 100%;
}

@media screen and (min-width: 768px) {
	.info__box {
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
	}
	.info__left {
		padding-right: 60px;
		width: 100%;
	}
	.info__ttl .btn {
		position: absolute;
		width: 100%;
		top: 0;
	}
	.info__ttl .btn a {
		font-size: 1.3rem;
	}
	.info__right {
		width: 100%;
		max-width: 280px;
	}
	.info__right .btn a {
		padding: 23px 0;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1024px) {
	.info__left {
		padding-right: 120px;
	}
	.info__ttl {
		font-size: 3rem;
	}
	.info__ttl .btn {
		top: 4px;
	}
	.info__ttl .btn a {
		padding: 7px 0;
	}
	.info__list ul {
		max-height: 250px;
		margin-top: 20px;
	}
	.info__list ul li a {
		font-size: 1.4rem;
	}
	.info__list ul li:first-child a {
		padding-top: 15px;
	}
	.info__right {
		max-width: 330px;
	}
	.info__right .btn a {
		padding: 37px 0;
	}
} /* ----- media END ----- */

/*------------------------------------------------------------
	四国地域のたために
------------------------------------------------------------*/
.tame {
	background-image: url(../images/top/bg_tame_sp.jpg);
	background-size: cover;
	background-position: center;
	color: #fff;
	position: relative;
	margin-bottom: 20px;
	display: block;
}
.tame:before {
	content: "";
	position: absolute;
	background-image: url(../images/top/bg_tame_patern_sp.png);
	background-size: 2px;
	background-repeat: repeat;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.tame__ttl {
	text-align: center;
	font-size: 2.4rem;
}
.tame .btn_02 a {
	color: #fff;
	border-color: #fff;
	max-width: 480px;
	margin: 0 auto;
}
.tame .btn_02 a:hover {
	color: #009b46;
	border-color: #fff;
	background: #fff;
}

@media screen and (min-width: 768px) {
	.tame {
		background-image: url(../images/top/bg_tame_pc.jpg);
		margin-bottom: -15px;
		padding-bottom: 120px;
	}
	.tame__box {
		width: 50%;
		margin-left: auto;
	}
	.tame__ttl {
		text-align: left;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1024px) {
	.tame {
		margin-bottom: -30px;
		padding-top: 160px;
		padding-bottom: 210px;
	}
	.tame__box{
		width: 960px;
		margin: 0 auto;
		text-align: center;
	}
	.tame__ttl {
		font-size: 3.4rem;
		margin-bottom: 50px;
		text-align: center;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1280px) {
	.tame {
		background-position: center -50px;
	}
} /* ----- media END ----- */

/*------------------------------------------------------------
	banner
------------------------------------------------------------*/
.slider {
	padding: 0 30px;
}
.slick-prev:before,
.slick-next:before {
	font-family: 'abi';
	position: absolute;
	top: -4px;
	font-size: 2.5rem;
}
.slick-prev:before {
	content: "\e904";
	left: 17px;
	color: #c4cbc7;
}
.slick-next:before {
	content: "\e907";
	right: 17px;
	color: #9dd335;
}

@media screen and (min-width: 768px) {
	.slider {
		padding: 0 30px;
	}
	.slider:before {
		content: "";
		position: absolute;
		width: calc(100% - 30px);
		height: 63.888889%;
		background: #fff;
		top: -15px;
		left: 50%;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}
	.slick-prev:before,
	.slick-next:before {
		top: -4px;
	}
	.slick-prev:before {
		left: 22px;
	}
	.slick-next:before {
		right: 22px;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1024px) {
	.slider:before {
		top: -30px;
		width: 100%;
	}
	.slick-prev:before,
	.slick-next:before {
		font-size: 4rem;
		top: -15px;
	}
	.slick-prev:before {
		left: -3px;
	}
	.slick-next:before {
		right: -3px;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1280px) {
	.slider {
		padding: 0;
	}
	.slider:before {
		width: calc(100% + 60px);
	}
	.slick-prev:before,
	.slick-next:before {
		top: -20px;
	}
	.slick-prev:before {
		left: -40px;
	}
	.slick-next:before {
		right: -40px;
	}
} /* ----- media END ----- */

/*------------------------------------------------------------
	response
------------------------------------------------------------*/
.response__content {
	color: #fff;
	padding: 40px 20px;
	background: #eabb00;
}
.response__ttl {
	font-size: 2.4rem;
	display: inline-block;
	position: relative;
	margin-bottom: 20px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}
.response__txt {
	font-weight: bold;
}
.response__btn li a {
	border: 1px solid #fff;
	color: #fff;
}
.response__btn li a:hover {
	background: #fff;
	color: #eabb00;
}
.response__mv {
	padding-top: 61.309524%;
	background-image: url(../images/top/bg_response.jpg);
	background-size: cover;
	background-position: center;
}

@media screen and (max-width: 374px) {
	.response__btn li a i {
		right: 10px!important;
	}
} /* ----- media END ----- */

@media screen and (min-width: 768px) {
	.response__box {
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		flex-flow: row-reverse;
	}
	.response__content,
	.response__mv {
		width: 50%;
	}
	.response__ttl {
		left: 0;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
	.response__txt {
		padding: 0;
	}
	.response__mv {
		margin: 0;
		padding-top: 0;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1024px) {
	.response__ttl {
		font-size: 3.4rem;
		margin-bottom: 40px;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1500px) {
	.response__content {
		padding: 95px 60px;
	}
} /* ----- media END ----- */

/*------------------------------------------------------------
	blog
------------------------------------------------------------*/
.blog__ttl {
	font-size: 4rem;
	text-align: center;
}
.blog__ttl span {
	font-size: 1.2rem;
	display: block;
	font-weight: bold;
}
.blog__box > li:not(:last-child) {
	padding-bottom: 30px;
}
.blog__inner li > a {
	padding: 15px 0;
	display: block;
	font-size: 1.2rem;
	border-bottom: 1px solid #e7e8e7;
	position: relative;
}
.blog__inner li > a:hover {
	color: #009b46;
}
.blog__inner li > a:before {
	content: "";
	position: absolute;
	width: 0;
	height: 100%;
	border-bottom: 1px solid #009b46;
	left: 0;
	top: 1px;
}
.blog__inner li > a:hover:before {
	width: 100%;
}

@media screen and (min-width: 768px) {
	.blog__box {
		margin: -30px -30px 0;
	}
	.blog__box > li {
		float: left;
		width: 50%;
		padding: 30px 30px 0;
	}
	.blog__box > li:not(:last-child) {
		padding-bottom: 0;
	}
	.blog__box--ttl {
		margin-bottom: 20px;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1024px) {
	.blog__ttl {
		font-size: 6rem;
	}
	.blog__ttl span {
		font-size: 2.4rem;
	}
	.blog__box {
		margin: -60px -60px 0;
	}
	.blog__box > li {
		padding: 60px 60px 0;
	}
	.blog__inner li > a {
		font-size: 1.6rem;
	}
	.blog__date {
		min-width: 160px;
		margin: 0;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1280px) {
	.blog__inner li > a {
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
	}
} /* ----- media END ----- */


/*------------------------------------------------------------
	operation
------------------------------------------------------------*/
.operation__box {
	padding: 0 20px;
}
.operation__ttl {
	font-size: 2.4rem;
}

@media screen and (min-width: 768px) {
	.operation__box {
		padding: 0;
	}
} /* ----- media END ----- */

@media screen and (min-width: 1024px) {
	.operation__ttl {
		font-size: 3.4rem;
	}
	.operation__box ul {
		margin-right: -30px;
		margin-left: 190px;
	}
	.operation__box ul li {
		padding-right: 0px;
		padding-left: 30px;
	}
} /* ----- media END ----- */


/*------------------------------------------------------------
	abi
------------------------------------------------------------*/

.disp_s{display:none;}

@media screen and (max-width: 750px) {

.disp_p {display:none;}
.disp_s {display:block;}
}


/*  kodogaikokujinzai-archive
--------------------------------------------- */

.kodogaikokujinzai-archive {
  padding: 15px;
  border: 1px solid #e7e8e7;
}
.kodogaikokujinzai-archive + .kodogaikokujinzai-archive {
  margin-top: 30px;
}
.kodogaikokujinzai-archive__title {
  margin-bottom: 20px;
  padding-bottom: 5px;
  border-bottom: 1px solid #e7e8e7;
  color: #009b46;
  font-size: 2rem;
}
.kodogaikokujinzai-archive__list {
  margin-bottom: 25px;
}
.kodogaikokujinzai-archive__link {
  display: block;
  position: relative;
  padding: 5px 0;
  border-bottom: 1px solid #e7e8e7;
}
.kodogaikokujinzai-archive__link:hover {
  color: #009b46;
}
.kodogaikokujinzai-archive__link::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  transform: scale3d(0, 1, 1);
  transform-origin: left top;
  width: 100%;
  height: 1px;
  background: #009b46;
}
.kodogaikokujinzai-archive__link:hover:after {
  transform: scale3d(1, 1, 1);
}
.kodogaikokujinzai-archive__btn {
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .kodogaikokujinzai-archive {
    padding: 30px 60px;
  }
  .kodogaikokujinzai-archive__link {
    display: flex;
  }
  .kodogaikokujinzai-archive__link:hover {
    color: #009b46;
  }
  .kodogaikokujinzai-archive__link::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    transform: scale3d(0, 1, 1);
    transform-origin: left top;
    width: 100%;
    height: 1px;
    background: #009b46;
  }
  .kodogaikokujinzai-archive__link:hover:after {
    transform: scale3d(1, 1, 1);
  }
  .kodogaikokujinzai-archive__date {
    min-width: 140px;
  }
  .kodogaikokujinzai-archive__btn {
    margin-left: auto;
  }
}

@media screen and (min-width: 1024px) {
  .kodogaikokujinzai-archive__title {
    font-size: 3rem;
  }
  .kodogaikokujinzai-archive__link {
    font-size: 2rem;
  }
}
































