@charset "utf-8";

/****************************************
          General Setting
*****************************************/
html,body {
	margin: 0;
	padding: 0;
	font-size: 62.5%; /* 10px */
}
body {
	background: #fff;
	width: 100%;
  color: #333;
	font-size: 1.6rem; /* 16px */
	font-family:  "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  line-height: 1.6;
}

p {
  margin: 0;
  padding: 0;
}

.taR {
  text-align: right !important;
}

@media screen and (min-width: 737px) {
	.tb { display: none !important; }
	.sp { display: none !important;}
	.pc { display: block !important; }
}
@media screen and (min-width:415px) and (max-width: 736px) {
	.pc { display: none !important; }
	.sp { display: none !important; }
	.tb { display: block !important; }
}
@media screen and (max-width: 414px) {
	.tb { display: none !important; }
	.pc { display: none !important;}
	.sp { display: block !important; }
}

/* pagenation */
.pagenation {
		margin: 0;
    padding: 0 20px;
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.pagenation li {
    list-style-type: none;
    margin-bottom: 6px;
}
	@media screen and  (max-width: 736px) {
		.pagenation {
		    display: none;
		}
	}
.pagenation a {
    display: block;
    width: 10px;
    height: 10px;
    border: 1px solid #fff;
    border-radius: 30px;
    background: rgba(0, 0, 0, 0.7);
    cursor: pointer;
}
.pagenation a.active{
    background: #0099ff;
}

/* section */
.section {
  position: relative; /* ズーム用に追加 */
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.section.is-show .section-content {
  opacity: 1;
}

.section-content {
    margin: auto;
    width: 100%;
  text-align: center;
  transition: opacity .5s ease .75s;
}

/* ページ画像設定 */
.section .section-content .pic {
  width: 100%;
  height: 100vh;
}
.section .section-content .pic01 {
  background: #fff url(../images/slide/pic01.jpg) center center no-repeat;
  background-size: contain;
}
.section .section-content .pic02 {
  background: #fff url(../images/slide/pic02.jpg) center center no-repeat;
  background-size: contain;
}
.section .section-content .pic03 {
  background: #fff url(../images/slide/pic03.jpg) center center no-repeat;
  background-size: contain;
}
.section .section-content .pic04 {
  background: #fff url(../images/slide/pic04.jpg) center center no-repeat;
  background-size: cover;
}
.section .section-content .pic05 {
 background: #000 url(../images/slide/pic05.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic06 {
 background: #000 url(../images/slide/pic06.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic07 {
 background: #fff url(../images/slide/pic07.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic08 {
 background: #000 url(../images/slide/pic08.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic09 {
 background: #fff url(../images/slide/pic09.jpg) center center no-repeat;
 background-size: contain;
}
.section .section-content .pic10 {
 background: #fff url(../images/slide/pic10.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic11 {
 background: #000 url(../images/slide/pic11.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic12 {
 background: #000 url(../images/slide/pic12.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic13 {
 background: #000 url(../images/slide/pic13.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic14 {
 background: #000 url(../images/slide/pic14.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic15 {
 background: #000 url(../images/slide/pic15.jpg) center top no-repeat;
 background-size: cover;
}
.section .section-content .pic16 {
 background: #000 url(../images/slide/pic16.jpg) center center no-repeat;
 background-size: contain;
}
.section .section-content .pic17 {
 background: #000 url(../images/slide/pic17.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic18 {
 background: #000 url(../images/slide/pic18.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic19 {
 background: #000 url(../images/slide/pic19.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic20 {
 background: #000 url(../images/slide/pic20.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic21 {
 background: #000 url(../images/slide/pic21.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic22 {
 background: #000 url(../images/slide/pic22.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic23 {
 background: #000 url(../images/slide/pic23.jpg) center center no-repeat;
 background-size: contain;
}
.section .section-content .pic24 {
 background: #000 url(../images/slide/pic24.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic25 {
 background: #000 url(../images/slide/pic25.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic26 {
 background: #000 url(../images/slide/pic26.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic27 {
 background: #000 url(../images/slide/pic27.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic28 {
 background: #000 url(../images/slide/pic28.jpg) center center no-repeat;
 background-size: cover;
}
.section .section-content .pic29 {
 background: #000 url(../images/slide/pic29.jpg) center center no-repeat;
 background-size: cover;
}

.section .section-content .sub {
  position: absolute;
}
.section .section-content .sub29 {
 background-color: rgba(0, 0, 0, 0.2);
 width: auto;
 padding: 10px;
 color: #fff;
 font-size: 1.2em;
 font-weight: bold;
 text-align: left;
 text-shadow: 2px 2px 1px #000;
 letter-spacing: 0.05em;
}

@media screen and (min-width: 737px) {
	.section .section-content .sub29 {
	 top: 22vh;
	 left: 2vw;
	}

}

@media screen and (min-width:415px) and (max-width: 736px) {
	.section .section-content .pic16 {
	  background-size: contain;
	}
}

@media screen and (max-width: 736px) {

.section .section-content .pic09 {
	 background-size: cover;
}

.section .section-content .pic10,
.section .section-content .pic13 {
	background-color: #fff;
  background-size: contain;
}

.section .section-content .pic06 {
  background-position: right 10% center;
}
.section .section-content .pic07 {
  background-position: left 55% center;
}
.section .section-content .pic11 {
  background-position: left 25% center;
}
.section .section-content .pic14 {
  background-position: left 28% center;
}
.section .section-content .pic18 {
  background-position: right 28% center;
}
.section .section-content .pic20 {
  background-position: left 25% center;
}
.section .section-content .pic22 {
  background-position: right 25% center;
}
.section .section-content .pic24 {
  background-position: left 35% center;
}
.section .section-content .pic25 {
  background-position: left 25% center;
}
.section .section-content .pic26 {
  background-position: left 25% center;
}



.section .section-content .sub29 {
  top: 0;
  right: 0vw;
  width: auto;
}

}

@media screen and (max-width: 414px) {

.section .section-content .pic01 {
	 background: #fff url(../images/slide/pic01_sp.jpg) center top no-repeat;
	 background-size: contain;
}
.section .section-content .pic02 {
	 background: #fff url(../images/slide/pic02_sp.jpg) center top no-repeat;
	 background-size: contain;
}

.section .section-content .pic16 {
  background-size: cover;
}

}

@media screen and (max-width: 736px) {

/* 表示・非表示 */
/*ボタン装飾*/
.section-content label {
    position: absolute;
		bottom: 0;
		left: 0;
		border-radius: 0 4px 0 0;
		background-color: rgba(255, 255, 255, 0.75);
		  filter: drop-shadow(1px -1px 1px #ccc);
		padding: 8px 20px;
		color: #0099ff;
		font-size: 1.4rem;
    cursor :pointer;
		transition: .5s;
		z-index: 999;
}
.section-content label:before {
    display: inline-block;
    content: "\f068";
		font-family: FontAwesome;
    transition: 0.2s;
}
.section-content input:checked ~ label:before {
    content: "\f067";
}
/*チェックは見えなくする*/
.section-content input {
    display: none;
}
/*中身を非表示にしておく*/
.section-content .hidden_show {
		height: auto;
		padding: 0;
		opacity: 1;
		transition: 0.8s;
}
/*クリックで中身表示*/
.section-content input:checked ~ .hidden_show {
		height: 0;
    overflow: hidden;
    opacity: 0;
}

} /* 736px以下 */


/* 解説部分 */
.caption{
  position:absolute;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.75);
  width: 100%;
  margin: 0;
  opacity: 0;
}
.caption p {
	background-image: url(../images/slide/logo.png);
  background-repeat: no-repeat;
  background-position: right 20px bottom 20px;
  background-size: auto 48px;
  max-width: 1200px;
	min-height: 48px;
	margin: 0 auto;
	padding: 20px 0;
}
.fire .caption{
  -webkit-animation: box 0.5s ease 0.5s 1 forwards;
  animation: box 0.5s ease 0.5s 1 forwards;
}
@-webkit-keyframes box {
  100% {
    opacity: 1;
  }
}
@keyframes box {
  100% {
    opacity: 1;
  }
}
.slidupttl{
	position:relative;
	overflow:hidden;
	display: block;
  padding: 0 240px 0 20px;
}
.slidupttl span{
	-webkit-transform: translateY(100%);
    transform: translateY(100%);
    transition-delay: 0s;
    display: block;
    text-align: left;
}
.fire .slidupttl span{
	-webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform .8s cubic-bezier(.24,.72,.35,1.01);
    transition: transform .8s cubic-bezier(.24,.72,.35,1.01);
    transition: transform .8s cubic-bezier(.24,.72,.35,1.01),-webkit-transform .8s cubic-bezier(.24,.72,.35,1.01);
    transition-delay: .4s;
}
.fire .slidupttl:nth-child(2) span{transition-delay: .6s;}
.fire .slidupttl:nth-child(3) span{transition-delay: .8s;}
.fire .slidupttl:nth-child(4) span{transition-delay: 1s;}
.fire .slidupttl:nth-child(5) span{transition-delay: 1.2s;}
.fire .slidupttl:nth-child(6) span{transition-delay: 1.4s;}
.fire .slidupttl:nth-child(7) span{transition-delay: 1.6s;}

@media screen and (min-width: 737px) {
.sec29 .caption{
  bottom: 50%;
  right: 50px;
  transform: translateY(50%);
  width: 35%;
  height: auto;
  padding: 20px 0;
}
.sec29 .caption p {
  background-position: right 10px bottom 10px;
	padding-bottom: 80px;
}

.sec29 .caption p {
	 font-size: 1.4rem;
}
.sec29 .slidupttl {
  padding: 0 10px 10px 10px;
}
.sec29 .slidupttl:last-child {
  padding: 0 10px 0 10px;
}

} /* 737以上 */

@media screen and (max-width: 736px) {

.caption {
}
.caption p {
    background-position: right 10px bottom 10px;
    background-size: 120px auto;
		padding-bottom: 40px;
}
.slidupttl {
  padding: 0 10px 0 10px;
  font-size: 1.4rem;
}
}

@media screen and (min-width:415px) and (max-width: 736px) {

.caption p {
    background-position: right 10px bottom 10px;
    background-size: 120px auto;
		padding-bottom: 40px;
}
.slidupttl {
  padding: 0 10px 0 10px;
  font-size: 1.4rem;
}

} /* 415～736 */

@media screen and (max-width: 414px) {

.sec29 .caption {
	position:absolute;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.75);
  width: 100%;
  margin: 0;
  opacity: 0;
}

} /* 414以下 */


/* 閉じる */
.close {
  position: fixed;
  top: 20px;
  left: 20px;
	width: 70px;
	cursor: pointer;

	margin: 0;
	padding: 0;
	text-align: center;
}
.close img {
	width: 100%;
	height: auto;
	filter: drop-shadow(1px 0px 0px #fff);
}

@media screen and (max-width: 736px) {
.close {
	top: 10px;
  left: 10px;
	width: 50px;
}
}
