@charset "UTF-8";
.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

.xslider_wrap {
　　　　text-align:center;
	display: flex;
	overflow: hidden;
	width: 640px;
	background: #fff;
	box-shadow: 0 2px 5px #999;
 　　　 margin-left:auto;
  　　　margin-right:auto;
}

.xslider1 , .xslider2 {
	display: inline-flex;
	flex: none;
	animation: xslider 30s 2s linear infinite;
}

.xslider_wrap:hover div {
	animation-play-state: paused!important;
}

.xslider1 div , .xslider2 div {
	flex: none;
	padding: 10px;
}

.xslider1 div:hover , .xslider2 div:hover {
	transform: translateY(-10px);
}

@keyframes xslider {
	0% {
	transform: translateX(0);
	}
	100% {
	transform: translateX(-100%);
	}
}

/*
footerボタン
*/
#wrapper .footer_bnr2021 {
	background-color:#FFF;
	position: fixed;
	display: block;
	width: 100%;
	left: 0px;
	bottom: 0px;
	z-index: 9998;
	text-align: center;
	padding: 1%;
	opacity:0.5;
	height:70px;
}

@media all and (min-width: 1024px) {
#footerFloatingMenu {
	position: fixed;
	display: block;
	width: 100%;
	left: 0px;
	bottom: 0px;
	z-index: 9999;
	text-align: center;
	padding: 1%;
}
#footerFloatingMenu img.fot_img01 {
	max-width: auto;
	max-height: 50px;
}
#footerFloatingMenu img.fot_img02 {
	max-width: auto;
	max-height: 50px;
}
#footerFloatingMenu img.fot_img03 {
	max-width: auto;
	max-height: 50px;
}
#wrapper .footer_bnr2021 {
	height:44px;
}
}

@media  (max-width: 1024px) {
#footerFloatingMenu {
	display: none !important;
 }
 }


/***ステップバーデザイン１***/
.step-wrap1 {
 counter-reset:count;
 margin: 2em 0;
 position: relative;
}
.step-content1 {
 padding: 0 0 1.3em 2em;
 margin: 0;
 position: relative;
}
.step-content1::before {
 content: "";
 display: block;
 width: 13px;
 height: 13px;
 background: #8D7C60;
 border: solid 3px #ffffff;
 border-radius: 50%;
 position: absolute;
 top: 3px;
 left: 3px;
 box-shadow: 0 0 0 2px #8D7C60;
}
.step-content1::after {
 content: "";
 display: block;
 height: calc(100% - 35px);
 border-left: dotted 5px #768888;
 position: absolute;
 top: 30px;
 left: 10px;
}
.step-title1 {
 font-weight: bold;
 font-size: 120%;
}
.step-label1 {
 color: #768888;
 font-weight: bold;
}
.step-label1::after {
 counter-increment:count;
 content:counter(count);
 position: relative;
 left: .3em;
}
.step-body1 {
 margin-top: .5em;
 padding: 0 0 1em;
 border-bottom: dotted 2px #ddd;
}
.step-wrap1 > :last-of-type::after {
 display: none;
}
/***ステップバーデザイン１***/


.zoom-box {
  display: inline-block;
  overflow: hidden;
}
.c-bnr.zoom {
  display: block;
  transition-duration: .4s;
}
.c-bnr.zoom:hover {
  transform: scale(1.1);
}


/*/////////////////////////////////////////////////
//twitter風チャット画面(会話方式)を記事に表示する方法
/////////////////////////////////////////////////*/
.twitter__container {
  padding: 0;
  background: #ffffff;
  overflow: hidden;
  //max-width: 400px;
  margin: 20px auto;
  font-size: 80%;
  border: solid 1px #eeeeee;
}

/* タイトル部分 */
.twitter__container .twitter__title {
  background: #fff;
  padding: 10px;
  text-align: center;
  font-size: 150%;
  color: #2c2c2c;
}


/* タイムライン部分 */
.twitter__container .twitter__contents {
  overflow: hidden;
  position: relative;
  line-height: 135%;
}

.twitter__container .twitter__contents.scroll {
  height: 500px;
  overflow-y: scroll;
}


/* ツイート埋め込みを中央寄せ */
.twitter-tweet {
	margin-left: auto;
	margin-right: auto;
}


/* アコーディオン */
.accordion-003 {
    max-width: 500px;
    margin-bottom: 7px;
    border-bottom: 2px solid #d0d0d0;
}

.accordion-003 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em;
    color: #333333;
    font-weight: 600;
    cursor: pointer;
}

.accordion-003 summary::-webkit-details-marker {
    display: none;
}

.accordion-003 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #333333b3;
    border-right: 3px solid #333333b3;
    content: '';
    transition: transform .3s;
}

.accordion-003[open] summary::after {
    transform: rotate(225deg);
}

.accordion-003 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 2em 1.5em;
    color: #333333;
    transition: transform .5s, opacity .5s;
}

.accordion-003[open] p {
    transform: none;
    opacity: 1;
}