@charset "utf-8";
a:hover{ text-decoration: none;}

.btnD {
  display: inline-block;
  position: relative;
  text-decoration: none;
    -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; 
}

.btnD:before {  
  content: " ";
  position: absolute;
  bottom: -12px;
  left: -1px;
  width: 0;
  height: 0;
  border-width: 0 12px 12px 0px;
  border-style: solid;
  border-color: transparent;
  border-bottom-color: #FFF;
}

.btnD:after {  
  content: " ";
  position: absolute;
  top: -1px;
  right: -12px;
  width: 0;
  height: 0;
  border-width: 0px 12px 12px 0px;
  border-style: solid;
  border-color: #FFF;
  border-bottom-color: transparent;
}



/*-------------------------
 #main1
---------------------------*/
#main1 { width: 100%; height: 100vh; position: relative; z-index: 100;}
#main1 *{ -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out;}
#main1 h1{ width: 100%; float: left; line-height: 10vh; font-size: 3vh; letter-spacing: 0.8em; text-align: center;}




#main1 > ul{ width: 100%; float: left; height: 90vh; position: relative;}
#main1 > ul > li{ width: 33%; height: 100%; position: absolute; overflow: hidden;}

#main1 > ul > li#no1{ left: 0; top: 0; background: #f2ddd9;}
#main1 > ul > li#no2{ left: 33%; top: 0%; background: #f2edd9;}
#main1 > ul > li#no3{ width: 34%; right: 0%; top: 0; background: #dff1f7;}

@media screen and (max-width: 900px) {
#main1 > ul > li{ width: 100%; height: 33%;}
#main1 > ul > li#no1{ left: 0; top: 0%;}
#main1 > ul > li#no2{ left: 0%; top: 33%;}
#main1 > ul > li#no3{ width: 100%; right: auto; left: 0; top: 66%; height: 34%;}
}


@media screen and (min-width: 901px) {
#main1 > ul.no1 > li#no1{ width: 60%;}
#main1 > ul.no1 > li#no2{ width: 20%; left: 60%; background: #777;} 
#main1 > ul.no1 > li#no3{ width: 20%; background: #777;}
#main1 > ul.no2 > li#no1{ width: 20%; background: #777;}
#main1 > ul.no2 > li#no2{ width: 60%; left: 20%;}
#main1 > ul.no2 > li#no3{ width: 20%; background: #777;}
#main1 > ul.no3 > li#no1{ width: 20%; background: #777;}
#main1 > ul.no3 > li#no2{ width: 20%; left: 20%; background: #777;}
#main1 > ul.no3 > li#no3{ width: 60%;}
}
@media screen and (max-width: 640px) {
#main1 { height: 90vh;}
#main1 h1{height: 8vh;}
#main1 > ul{ height: 80vh;}


#main1 > ul > li#no1{ background: #363636;}
#main1 > ul > li#no2{ background: #6a6a6a;}
#main1 > ul > li#no3{ background: #363636;}
}

/*- item -*/
#main1 > ul > li .item{ -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out;}

#main1 > ul > li .item{ width: 100%; height: 100%; float: left; position: relative; z-index: 10;}


@media screen and (min-width: 901px) {
#main1 > ul.no1 > li#no2 .item, 
#main1 > ul.no1 > li#no3 .item, 
#main1 > ul.no2 > li#no1 .item, 
#main1 > ul.no2 > li#no3 .item, 
#main1 > ul.no3 > li#no1 .item, 
#main1 > ul.no3 > li#no2 .item{-moz-transform: scale(0.7,0.7); -webkit-transform: scale(0.7,0.7); -o-transform: scale(0.7,0.7); -ms-transform: scale(0.7,0.7); position: relative;}
}



#main1 > ul > li .item h2{ width: 100%; float: left; text-align: center; margin-top: 3vw;}
#main1 > ul > li .item h2 img{ width:auto; height: 15vh; max-height: 260px;}

#main1 > ul > li .item dl { width: 100%; height: 35vh; position:absolute; left: 0; bottom: 0; padding-top: 5vh;}
#main1 > ul > li .item dl > *{ width:100%; float: left; text-align: center;}
#main1 > ul > li .item dl dt{ font-size: 3.6vh; line-height: 1.4em; margin-bottom: 2vh;}
#main1 > ul > li .item dl dd{ font-size: 2.2vh;}
#main1 > ul > li .item dl dd span{ font-size: 2.2vh; font-weight: bold;}

#main1 > ul > li .item dl::before{ width: 120px; height: 60px; position: absolute; left: 50%; top: -25px; margin-left: -60px; content: ""; z-index: 10;}


#main1 > ul > li#no1 .item dl { background: rgba(239,212,207,0.8);}
#main1 > ul > li#no2 .item dl { background: rgba(239,233,207,0.8);}
#main1 > ul > li#no3 .item dl { background: rgba(215,237,245,0.8);}

#main1 > ul > li .item dl::after{ width:0; height: 4px; content: ""; position: absolute; left: 50%; top: -3px; -webkit-transition: 0.8s; -moz-transition: 0.8s; -o-transition: 0.8s; transition:0.8s; z-index: 1; }

#main1 > ul > li#no1 .item dl::after{background:#ff6464;}
#main1 > ul > li#no2 .item dl::after{background:#d8b60d;}
#main1 > ul > li#no3 .item dl::after{background:#0081dd;}





@media screen and (min-width: 901px) {
#main1 > ul > li#no1 .item dl::before{background: url(../../img/ribon.png) 50% 50% no-repeat; background-size: 100% auto;}
#main1 > ul > li#no2 .item dl::before{background: url(../../img/ribon2.png) 50% 50% no-repeat; background-size: 100% auto;}
#main1 > ul > li#no3 .item dl::before{background: url(../../img/ribon3.png) 50% 50% no-repeat; background-size: 100% auto;}

}

@media screen and (max-width: 900px) {
#main1 > ul > li .item h2{ display: flex; align-items: center; width:24%; height:100%; margin:0% 0% 0 2%; vertical-align: middle; line-height: 100%;}
#main1 > ul > li .item h2 img{ width:100%; height: auto; vertical-align: middle;}

#main1 > ul > li#no1 .item dl, 
#main1 > ul > li#no2 .item dl, 
#main1 > ul > li#no3 .item dl { background: none;}


#main1 > ul > li .item dl { width: 50%; height:100%; position: relative; left: auto; bottom: auto; padding-top:15px; float: right; display: inline-block; margin-right: 2%;}
#main1 > ul > li .item dl > *{ text-align: left;}
    #main1 > ul > li .item dl dt br{ display: none;}
#main1 > ul > li .item dl dt{ font-size: 3.2vh; line-height: 1.4em; margin-bottom: 10px;}

}


@media screen and (max-width: 640px) {
#main1 > ul > li .item dl dt{ font-size: 3.0vh; color: #fff; font-weight: bold;}
#main1 > ul > li#no1 .item dl dt{ font-size: 3.0vh; line-height: 1.2em; margin-bottom: 0px;}

#main1 > ul > li .item dl dd, 
#main1 > ul > li .item dl dd span{ font-size: 2.0vh; line-height: 1.2em; color: #fff;}
#main1 > ul > li .item dl dd{ margin-bottom: 5px; font-weight: bold;}

#main1 > ul > li .item h2{ width:42%;}
#main1 > ul > li .item h2 img{ margin-top: -20%;}

}












@media screen and (min-width: 901px) {
#main1 > ul.no1 > li#no1 .item dl::after, 
#main1 > ul.no2 > li#no2 .item dl::after, 
#main1 > ul.no3 > li#no3 .item dl::after { width: 100%; left: 0;}

#main1 > ul.no1 > li#no2 .item dl, 
#main1 > ul.no1 > li#no3 .item dl, 
#main1 > ul.no2 > li#no1 .item dl, 
#main1 > ul.no2 > li#no3 .item dl, 
#main1 > ul.no3 > li#no1 .item dl, 
#main1 > ul.no3 > li#no2 .item dl{ opacity: 0.4; border-radius: 20px;}
#main1 > ul.no1 > li#no1 .item dl *, 
#main1 > ul.no2 > li#no2 .item dl *, 
#main1 > ul.no3 > li#no3 .item dl *{ letter-spacing: 0.4em;;}
#main1 > ul.no1 > li#no2 .item dl *, 
#main1 > ul.no1 > li#no3 .item dl *, 
#main1 > ul.no2 > li#no1 .item dl *, 
#main1 > ul.no2 > li#no3 .item dl *, 
#main1 > ul.no3 > li#no1 .item dl *, 
#main1 > ul.no3 > li#no2 .item dl *{ letter-spacing:0px; font-size: 90%;}
}


@media screen and (min-width: 901px) and (max-width: 1200px) {
#main1 > ul > li .item dl dd, 
#main1 > ul > li .item dl dd span { font-size:1.8vh; letter-spacing: 1px;}

}
@media screen and (min-width: 901px) and (max-width: 1000px) {
#main1 > ul > li .item dl dt{ font-size: 3.0vh; letter-spacing: 1px;}
}








/**/
#main1 > ul > li > ul{ width: 100px; position: absolute; left: 100%; top: 46vh; z-index: 10; opacity: 0;}
#main1 > ul > li > ul > li{ width: 100%; height: 100px; line-height: 100px; text-align: center; border-radius: 100%; -moz-border-radius: 100%; -webkit-border-radius: 100%; -o-border-radius: 100%;  font-size: 14px; -webkit-transition: 0.8s; -moz-transition: 0.8s; -o-transition: 0.8s; transition:0.8s; cursor: pointer;}
#main1 > ul > li > ul > li span{ color: #fff;}

@media screen and (min-width: 901px) {
#main1 > ul > li > ul > li:hover{ -moz-transform: rotate(-25deg);
-webkit-transform: rotate(-25deg);
-o-transform: rotate(-25deg);
-ms-transform: rotate(-25deg);
}

#main1 > ul > li#no1 > ul > li{background:#ff6464; color: #fff;}
#main1 > ul > li#no1 > ul > li:hover{background:#ab4444;}
#main1 > ul > li#no2 > ul > li{background:#d8b60d; color: #fff;}
#main1 > ul > li#no2 > ul > li:hover{background:#736000;}
#main1 > ul > li#no3 > ul > li{background:#0081dd; color: #fff;}
#main1 > ul > li#no3 > ul > li:hover{background:#065995;}
#main1 > ul.no1 > li#no1 > ul , 
#main1 > ul.no2 > li#no2 > ul , 
#main1 > ul.no3 > li#no3 > ul { left: 60%; opacity: 1;}
}

@media screen and (max-width: 900px) {
#main1 > ul > li > ul{ width: 100%; height: 100%; left:0%; top: 0; z-index: 1000; opacity: 1;}

#main1 > ul > li > ul > li{ width: 100%; height: 100%; line-height: 100%; text-align: center; border-radius: 0; -moz-border-radius:0; -webkit-border-radius: 0; -o-border-radius: 0;  font-size: 14px; -webkit-transition: 0; -moz-transition: 0; -o-transition: 0; transition:0; cursor: pointer;}

#main1 > ul > li > ul > li::after{ content: "詳細を見る"; display: block; position: absolute; bottom: 5%; left: 48%; background: #fff; color: #333; line-height: 20px; padding: 0 20px; border-radius: 30px; font-size: 12px;}
#main1 > ul > li > ul > li span{ display: none;}
}
@media screen and (max-width: 640px) {
#main1 > ul > li > ul > li::after{line-height: 1.4em; width: 42%; font-size: 10px; left: 2%; bottom: 25%; border-radius: 0; padding: 5px 0 10px; font-size: 12px;}
}


/*--*/
#main1 > ul > li .bk{ width: 110%; height: 110%; position: absolute; left: -5%; top: -5%; right: 5%; bottom: 5%; z-index: 1; opacity: 0.4;}
#main1 ul li .bk img{ width: auto; height:100%;}

#main1 > ul > li#no1 .bk{ background: url(../../img/01/bk.png) 50% 50% no-repeat; background-size:auto 100%;}
#main1 > ul > li#no2 .bk{ background: url(../../img/02/bk.png) 50% 50% no-repeat; background-size: cover;}
#main1 > ul > li#no3 .bk{ background: url(../../img/03/bk.png) 50% 50% no-repeat; background-size: auto 100%;}





@media screen and (min-width: 901px) {
#main1 > ul.no2 > li#no2 .bk{ background: url(../../img/02/bk2.png) 50% 50% no-repeat; background-size: contain;}

#main1 > ul.no1 > li#no1 .bk, 
#main1 > ul.no2 > li#no2 .bk, 
#main1 > ul.no3 > li#no3 .bk{ width: 100%; height: 30vh; top: 23vh; left: 0; opacity:1;}
#main1 > ul.no1 > li#no2 .bk, 
#main1 > ul.no1 > li#no3 .bk, 
#main1 > ul.no2 > li#no1 .bk, 
#main1 > ul.no2 > li#no3 .bk, 
#main1 > ul.no3 > li#no1 .bk, 
#main1 > ul.no3 > li#no2 .bk{ opacity:0.1;}

}


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

#main1 > ul > li .bk{ width: 16%; height: 90%; position: absolute; left:28%; top: 5%; right:auto; bottom:auto; z-index: 10000; opacity:1; float: left; display: inline-block;}
#main1 > ul > li#no1 .bk{ background: url(../../img/01/bk.png) 50% 50% no-repeat; background-size: 100% auto;}
#main1 > ul > li#no2 .bk{ background: url(../../img/02/bk.png) 50% 50% no-repeat; background-size: 100% auto;}
#main1 > ul > li#no3 .bk{ background: url(../../img/03/bk.png) 50% 50% no-repeat; background-size: 100% auto;}

}
@media screen and (max-width: 640px) {
#main1 > ul > li .bk{ width: 110%; height: 110%; left:-5%; top:-5%; z-index: 1; opacity:0.2; float:none;}
#main1 > ul > li#no1 .bk{ background: url(../../img/01/bk.png) 50% 50% no-repeat; background-size: 100% auto;}
#main1 > ul > li#no2 .bk{ background: url(../../img/02/bk.png) 50% 50% no-repeat; background-size: 100% auto;}
#main1 > ul > li#no3 .bk{ background: url(../../img/03/bk.png) 50% 50% no-repeat; background-size: 100% auto;}

}



/*----------------------------------------------------*/

#main1 > ul > li .box{
display: none;
width: 100%; height: 100%; position: fixed; z-index: 1000010000100001; background: #fff; left: 0%; top: 0%; overflow-x: hidden; overflow-y: auto;
}
#main1 > ul > li .box.view{ display: block;}

#main1 > ul > li .box .innerCont{ width: 100%; margin: 0 auto; max-width: 900px; padding: 20px 20px 100px; overflow-x: hidden; overflow-y: auto;}


#main1 > ul > li .box .innerCont dl, 
#main1 > ul > li .box .innerCont dl dt, 
#main1 > ul > li .box .innerCont dl dd{ width: 100%; float:left;}


#main1 > ul > li .box .innerCont .tab-Close{ width: 60%; line-height: 60px; text-align: center; position: fixed; left: 20%; bottom: 40px; background:#006e52; font-size: 24px; font-weight: bold; cursor: pointer; color: #fff; border-radius:40px; -moz-border-radius: 40px; -webkit-border-radius: 40px; -o-border-radius: 40px; z-index: 111111111111111;}
#main1 > ul > li .box .innerCont .tab-Close:hover{ background: #000;}

@media screen and (max-width: 600px) {
#main1 > ul > li .box .innerCont .tab-Close{ width: 80%; left: 10%; line-height: 50px; bottom: 20px;}

}
@media screen and (max-width: 480px) {
#main1 > ul > li .box .innerCont .tab-Close{ opacity: 0.9;}

}












/*-------------------------
 #main2
---------------------------*/
#main2 { width: 100%; float: left; position: relative; z-index: 1;}
#main2 *{font-family: 'M PLUS 1p', sans-serif;}

#main2 .cf{}
#main2 .cf h2{ width: 70%; float: left; margin: 60px 15% 10px; font-size: 50px;}
#main2 .cf .tit{width: 70%; float: left; margin: 10px 15% 10px; font-size: 24px; border-bottom: double 3px #555; padding-bottom: 20px;}

@media screen and (max-width: 980px) {
#main2 .cf h2{ width: 90%; margin: 40px 5% 10px; font-size: 40px;}
#main2 .cf .tit{width: 90%; margin: 10px 5% 10px; font-size: 20px;}
}
@media screen and (max-width: 600px) {
#main2 .cf .tit{margin: 0px 5% ; font-size: 16px;}

}


/*-----*/

#main2 .cf ul::after{ width: 1px; height: 95.4%; background: #000; position: absolute; display: block; left: 70px; top: 30px; display: block; content: ""; z-index: -1;}

/**/
#main2 .cf ul{ width: 94%; float: left; margin: 30px 3%; position: relative;}
#main2 .cf ul li{ width: 100%; float: left; margin: 30px 0; position: relative; padding-left: 170px;}

#main2 .cf ul li > b{ width:140px; left: 0; top: 0; line-height: 30px; font-size: 18px; text-align: center; border:solid 1px #777; background: #fff; position: absolute; border-radius:40px; -moz-border-radius: 40px; -webkit-border-radius: 40px; -o-border-radius: 40px;}

#main2 .cf ul li span, 
#main2 .cf ul li span *{ font-size: 22px;}

#main2 .cf ul li span{ display:inline-block;}
#main2 .cf ul li span.full{ width: 100%; float: left;}
#main2 .cf ul li span.left{ width: 25%; float: left;}
#main2 .cf ul li span.right{ width: 70%; float: right;}
#main2 .cf ul li span.pb40{ padding-bottom: 30px; margin-bottom: 30px; border-bottom: dotted 1px #aaa;}

#main2 .cf ul li span > img{ width: 100%; height: auto;}

#main2 .cf ul li span p{ width: 100%; float: left;}
#main2 .cf ul li span p b{ display: block;}
#main2 .cf ul li span p .link{ width: auto; display:inline-block; color:none; background: #fff; margin: 10px 0; text-decoration: none;}
#main2 .cf ul li span p .link span{ background: #cb6868; border-radius:20px; -moz-border-radius: 20px; -webkit-border-radius: 20px; -o-border-radius: 20px; display: inline-block; padding: 4px 10px; font-size: 12px; color: #fff; margin:0 0 10px 10px;}
#main2 .cf ul li span p .link:hover span{ padding: 4px 30px;}
#main2 .cf ul li span p .link:hover{ background: #cb6868;}
#main2 .cf ul li span .tw_umekomi, 
#main2 .cf ul li span p .img4{ width:auto; height: 90px; display: inline-block; margin: 5px;}
#main2 .cf ul li span p .img2{ width: 30%; height: auto; margin: 10px 2%;}

#main2 .cf ul li span .fukuko{ padding:15px 20px; margin: 20px 0; background: #feefef; border-radius:10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -o-border-radius: 10px; font-size: 16px; line-height: 1.4em;}
#main2 .cf ul li span .fukuko.mt0{ margin-top: 0px;}
#main2 .cf ul li span .fukuko b{ color:#cb6868; font-size: 18px; padding: 5px 0;}



@media screen and (max-width: 1100px) {
#main2 .cf ul li span, 
#main2 .cf ul li span *{ font-size: 20px;}
}


@media screen and (max-width: 960px) {
#main2 .cf ul li{ padding:40px 0 0;}

#main2 .cf ul li span, 
#main2 .cf ul li span *{ font-size: 18px;}
#main2 .cf ul li span .fukuko{ font-size: 14px;}
#main2 .cf ul li span .fukuko b{ font-size: 16px;}

#main2 .cf ul li span.spright, 
#main2 .cf ul li span .fukuko{ width: 80%; float: right;}
#main2 .cf ul li span.right{ width: 67%; float: right;}

#main2 .cf ul li span .fukuko2{ width: 100%; float: left;}

#main2 .cf ul li span.left{ width: 30%; float: left;}
#main2 .cf ul li span.pb40{ border-bottom: none;}

#main2 .cf ul li span p .img4{ width:23%; height: auto; margin: 5px 1%;}

}

@media screen and (max-width: 600px) {
#main2 .cf ul::after{ left: 3%}

#main2 .cf ul li span.spright, 
#main2 .cf ul li span .fukuko, 
#main2 .cf ul li span.right, 
#main2 .cf ul li span.left{ width: 92%; float: right; margin-bottom: 20px;}
#main2 .cf ul li span.left{ margin-bottom: 10px;}

#main2 .cf ul li span.left img { border: solid 1px #ccc; box-shadow: 0px 3px 8px #888;}
#main2 .cf ul li span .fukuko { margin: 10px 0;}
#main2 .cf ul li span .fukuko2{ width: 100%;}



#main2 .cf ul li span, 
#main2 .cf ul li span *{ font-size: 14px;}
#main2 .cf ul li span .fukuko{ font-size: 14px; padding: 10px;}
#main2 .cf ul li span .fukuko b{ font-size: 14px;}

#main2 .cf ul li span.pb40{ padding-bottom: 15px; margin-bottom: 15px;}

#main2 .cf ul li{ margin: 10px 0 40px;}


#main2 .cf ul li > b { left: -8%; background: #000; border: solid 1px #000; color: #fff;}
#main2 .cf ul li span p .link span{ font-size: 10px;}
}




















.snsBtn{ position: fixed; right: 20px; bottom: 20px; z-index: 10000; border-radius: 8px; border-bottom: solid 8px #0a70af; background:#0a70af;}
.snsBtn:hover{border-bottom: solid 0px #0a70af; margin-top: 8px;}
.snsBtn img{ width: 100px; height: auto; border-radius: 8px; overflow: hidden;}


@media screen and (max-width: 500px) {
.snsBtn{ right: 10px; bottom: 10px;}
.snsBtn img{ width: 70px; }

}















