@charset "utf-8";

/****************************************

特設ページ（レスポンシブ）2019.4作成

****************************************/

/*リセット
----------------------------------------------------*/

:where(header, footer,#topicpath){
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	color: #fff;
}
/*マウスオーバー*/
a img,.mover{
	-webkit-transition: 0.6s ;
	transition: 0.6s ;
}

a img:hover,.mover:hover{
	-webkit-transition: 0.6s ;
	transition: 0.6s ;
	opacity:0.5;
	filter: alpha(opacity=50);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=50)";  /* ie 8 */
	-moz-opacity:0.5;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.5;              /* Safari 1.x */
}
}

body{
	width:100%;
	min-width:initial;
	padding-top:70px;
}
@media screen and (max-width: 768px) {
	body{
		padding-top:50px;
	}
}
/*共通
----------------------------------------------------*/
.inner980{
	width:980px;
	margin:0 auto;
	position:relative;
}
@media screen and (max-width: 768px) {
.inner980{
		width:100%;
	}
}
@media screen and (max-width: 768px) {
	img {
		max-width:100%;
		height:auto;
	}
}

/*ヘッダー
----------------------------------------------------*/
header{
	background: #000000;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 10000;
	height:70px;
}

header h1{
	position:absolute;
	left:0;
	top:15px;
}

/*ハンバーガーメニュー*/
#h-nav .sub-wrap{
	display:block;
}

.sub-menu{
	position:absolute;
	right:0;
	top:25px;
}

.sub-menu li {
	display:inline-block;
	margin-right: 30px;
}

.sub-menu li:last-child {
	margin-right: 0;
}

.sub-menu li a {
	color:#fff;
	padding: 0;
	text-decoration:none;
}

.sub-menu li a:hover {
	-webkit-transition: 0.6s ;
	transition: 0.6s ;
	opacity:0.5;
	filter: alpha(opacity=50);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=50)";  /* ie 8 */
	-moz-opacity:0.5;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.5;              /* Safari 1.x */
}

.sub-menu li a span {
	padding:0 25px 0 0;
	position: relative;
}

.sub-menu li:nth-child(2) a span {
	padding:0 30px 0 0;
}

.sub-menu li a span:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.sub-menu li:nth-child(1) a span:before {
	width: 15px;
	height: 20px;
	background: url(../img/hd_icon01.png) no-repeat left top;
	background-size: contain;
	right: 0;
}

.sub-menu li:nth-child(2) a span:before {
	width: 20px;
	height: 17px;
	background: url(../img/hd_icon02.png) no-repeat left top;
	background-size: contain;
	right: 0;
}

.sub-menu li:nth-child(3) a span:before {
	width: 20px;
	height: 20px;
	background: url(../img/hd_icon03.png) no-repeat left top;
	background-size: contain;
	right: 0;
}

@media screen and (max-width: 768px) {
	header{
		height:50px;
	}
	header h1{
		left:5px;
		}
	header h1 img{
		width:70%;

	}
	/*	#h-nav　ハンバーガーメニュー*/
#h-nav{
	position:fixed;
	top:10px;
	right:5px;
	z-index:2;
}
#h-nav .sub-wrap{
	display:none;
	position:fixed;
	top:0;
	right:0;
	background-color: rgba(0,0,0,0.7);
	width:100%;
	height:100%;
}

#h-nav ul.sub-menu{
	position:fixed;
	top:50px;
	left:0;
	width:100%;
}

#h-nav ul.sub-menu li{
	display:block;
}
#h-nav ul.sub-menu li a{
	display:block;
	width:100%;
	height:50px;
	line-height:50px;
	color:#fff;
	text-decoration:none;
	text-align:left;
	padding:0 10px;
	box-sizing:border-box;
}
#h-nav ul.sub-menu li:hover{
	background-color: rgba(255,255,255,0.3);
}

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
	z-index:3;
}
.menu-trigger {
	position: relative;
	width: 40px;
	height:24px;
	cursor:pointer;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #fff;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 10px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}

.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(11px) rotate(-45deg);
	transform: translateY(11px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-11px) rotate(45deg);
	transform: translateY(-11px) rotate(45deg);
}
}

/*パンくずエリア
----------------------------------------------------*/
#topicpath{
	min-width: 1023px;
	background: #fff;
	border-bottom: 1px solid #cbc9c8;
}

/*snsボタン付けた場合用*/

.fb_iframe_widget > span {vertical-align: baseline !important; }
.fb_edge_widget_with_comment span.fb_edge_comment_widget {
    display:none !important;
}

#topicpath ul{
	width:400px;
	margin:0;
}
#topicpath .snslink{
	position:absolute;
	top:7px;
	right:0;
	text-align:right;
}

#topicpath .snslink .snsb{
	float:left;
	margin-right:5px;
}

@media screen and (max-width: 768px) {
	#topicpath{
		height:initial;
		height:auto;
		padding:10px 5px;
		box-sizing:border-box;
	}
	#topicpath ul{
		/*padding-right: 170px;*/
		padding-top:0;
		width:initial;
		width:auto;
	}
	#topicpath ul li {
		font-size: 71%;
		letter-spacing: -.05em;
	}
	#topicpath ul li:nth-of-type(2+n){
		display:none;
	}
	#topicpath .snslink{
		top:-5px;
	}
}

@media screen and (max-width: 768px) {
	#topicpath{
		min-width: auto;
	}
}

@media screen and (max-width: 374px) {
	#topicpath ul li {
		font-size: 2.2vw;
	}
}


/* ページトップ
----------------------------------------------------*/
.l-pagetop {
	width: 80px;
	position: fixed;
	bottom: 24px;
	right: 24px;
	z-index: 11;
	opacity: .8;
}

.l-pagetop img {
	max-width: 100%;
}

@media screen and (max-width: 768px) {
	.l-pagetop {
		width: 50px;
		bottom: 10px;
		right: 10px;
	}
}

/*フッター
----------------------------------------------------*/
#footer {
	min-width: 1023px;
}

@media screen and (max-width: 768px) {
	#ft-inner{
		width:100%;
		padding-bottom:20px;
	}
	#footer #copy{
		text-align:center;
	}
	#footer .ft-nav img{
		width:auto;
		height:17px;
	}
	#footer .ft-nav_02 section:nth-of-type(2) img{
		height:auto;
		width:120px;
	}
	#footer .ft-nav_01 {
		width: 45%;
	}
	#footer .ft-nav_02 {
		width: 45%;
		margin-bottom:25px;
	}
	#footer .ft-nav_03 {
		width: 45%;
		padding-left:7px;
	}
	#footer .ft-nav_04 {
		width: 45%;
	}
	#footer .ft-nav_01,#footer .ft-nav_02,#footer .ft-nav_03{
		margin-right:0;
	}
}

@media screen and (max-width: 768px) {
	#footer {
		min-width: auto;
	}
}

/*ScrollTrigger用
----------------------------------------------------*/

.invisible {
	transition: opacity 0.5s ease;
	opacity: 0.0;
}

.visible {
	transition: opacity 0.5s ease;
	opacity: 1.0;
}
/*css3フェード*/
.fadeInTOP{
animation-name: fadein;
    animation-duration: 1s;
}
@keyframes fadein {
from {
    opacity: 0;
    transform: translateY(20px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

.fadeInL{
animation-name: fadeinL;
    animation-duration: 1s;
}
@keyframes fadeinL {
from {
    opacity: 0;
    transform: translateX(-20px);
}
to {
    opacity: 1;
    transform: translateX(0);
}
}

.fadeInR{
animation-name: fadeinR;
    animation-duration: 1s;
}
@keyframes fadeinR {
from {
    opacity: 0;
    transform: translateX(20px);
}
to {
    opacity: 1;
    transform: translateX(0);
}
}
/*2023.11追加*/

.txtbox dd a{
	color: #add8e6;
   }

/* アジアゾウ画像レスポンシブ対応 */
.elephant_image {
    text-align: center;
}

.elephant_image img {
    max-width: 100%;
    height: auto;
}

/* PC用画像を表示（デフォルト） */
.elephant_image_pc {
    display: block;
}

/* SP用画像を非表示（デフォルト） */
.elephant_image_sp {
    display: none;
}

/* スマートフォン・タブレット用 */
@media screen and (max-width: 768px) {
    .elephant_image_sp {
        display: block;
    }
    
    .elephant_image_pc {
        display: none;
    }
}