@charset "UTF-8";
/*--------------------------------------------------------------
# Common
# ボタン Btn Button
# Page Default Layout
# Site Header
　　# main-nav
　　# menu-toggle
　　# mobile-nav
# Page Title
# Breadcrumbs パンくずリスト
# 投稿ページ post-type:post
# アーカイブ archive
# 検索結果 search 
# Pagination ページネーション ページャー
# 404
# pageTop ボタン
# fixBnr 追従バナー
# Footer
　　# footer-nav
# Sidebar サイドバー
# Animation
# Accordion
# Loading
# 汎用
--------------------------------------------------------------*/
/*===========================================================*/
/* # Common
/*===========================================================*/
:root {
  --textCl: #000000;
  --pointCl01:#00afa2; /*緑*/
  --pointCl02:#ffce00; /*黄*/
  --pointCl03:#ff60a4; /*桃*/
  --pointCl04:#323232; /*濃グレー*/
  --backgrCl01:#f6f6f6; /*薄グレー*/
  --textSzSp12:clamp(10px, 1.2rem ,14px);
  --textSzSp14:clamp(12px, 1.4rem ,16px);
  --textSzSp15:clamp(13px, 1.5rem ,17px);
  --textSzSp16:clamp(14px, 1.6rem ,18px);
  --textSzSp18:clamp(16px, 1.8rem ,20px);
  --textSzSp20:clamp(18px, 2.0rem ,22px);
}

html {
  background: #fff;
  font-size: 10px;
}
@media screen and (max-width: 1280px) {
  html {
    /*font-size: 0.7142857vw;/* 10px÷1400px */
    font-size: 0.78125vw;/* 10px÷1280px */
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 2.666666vw;/* 10px÷375px */
  }
}
body {
  color: var(--textCl);
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-size: clamp(12px, 1.6rem ,16px);
	line-height: 1.8;
  word-wrap: break-word;
	margin:0!important;
}

.mincho{
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

body.fixed { /*　mobile-nav表示中　*/
}

a:link, a:visited, a:hover, a:active {
  color: #3B83FF;
  text-decoration: none;
  transition: all .3s;
}
a:active, a:focus {
  outline: none;
}
img {
  max-width: 100%;
  height: auto;
	vertical-align:top;
}

@media(max-width:767px) {
	body {
	  font-size: clamp(12px, 1.4rem ,16px);
		line-height: 1.7;
	}
}

/*===========================================================*/
/* ボタン Btn Button
/*===========================================================*/
.btn-anima{
  position: relative;
}
.btn-anima:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.btn-anima::before{
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #000;
  transform: scaleX(0);
  transform-origin: right;
  transition: all 0.3s ease-out;
  transition-property: transform;
}
.btn-anima:hover .btn-text{
  position: relative;
  color:#fff;
}
.btn-anima:hover .btn-icon.change-icon{
  background-image: url("../images/common/icon_arrow_wb.svg");
}

/*===========================================================*/
/* # Page Default Layout 
/*===========================================================*/
#page{
  position: relative;
}
.contents-wrap{
	padding:6rem 5%;
}

body.page .entry-wrap{
	width:118rem;
	max-width:100%;
	margin:0 auto;
}
body.page .entry-content{
  margin-top: 0;
}
body.single .entry-wrap{
	width:840px;
	max-width:100%;
	margin:0 auto;
}
.section-inner{
	width:118rem;
	max-width:100%;
	margin:0 auto;
}
.entry-content > *:first-child {
  margin-top: 0;
}

.entry-content ul,
.entry-content ol{
  margin-left:0;
}

@media(max-width:999px) {
  #page{
  }
  .contents-wrap{
    padding:4rem 5%;
  }
}
@media(max-width:767px) {
  #page{
  }
  .contents-wrap{
    padding:3rem 3rem;
  }
}

/**　全幅固定ページ用 **/
.contents-wrap.wrap100per{
	padding:60px 0;
}
body.page .contents-wrap.wrap100per .entry-wrap{
	width:100%;
}
/**　サイドバー有り投稿用 **/
.with-sidebar .contents-wrap-inner{
	width:1200px;
	max-width:100%;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
}
.with-sidebar .side-contents{
	width:300px;
	max-width: 25%;
}
.with-sidebar .main-contents{
	width:840px;
	max-width: 70%;
}

/*===========================================================*/
/* # Site Header
/*===========================================================*/
.site-header{
  width: 83%;
  height: 6.5rem;
	padding: .9rem 4.2rem 1rem 5.4rem;
	background-color: #fff;
  border-radius: 33px;
	position:fixed;
  top:30px;
  left:50%;
  transform: translateX(-50%);
  z-index: 999998;
  transition: top .5s;
}
.site-header-inner{
  height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width:100%;
	margin:0 auto;
  position: relative;
  z-index: 999999;
}
@media(min-width:1000px) {
.site-header.fixed{
  top:3px;
}
.site-header.fixed::before{
  content:"";
  position: absolute;
  top:0;
  left: 0;
  display:block;
  width:100%;
  height:100%;
  border-radius: 33px;
  mix-blend-mode:multiply;
  box-shadow: 0 0 5px 0 rgba(0,0,0,0.25);
  z-index: 999997;
}
}

.site-logo{
	width:13.8rem;
	margin:0!important;
	line-height: 1;
}
.site-logo img.gr{
  display: block;
}
.site-logo img.bk{
  display: none;
}

@media(max-width:999px) {
  .site-header{
    width:100%;
    top:0;
    height: 9rem;
    background-color: var(--pointCl01);
    padding: 2rem 5rem 1.5rem 5rem;
    border-radius:0;
  }
  .site-header.fixed{
    top:0;
  }
  .site-header-inner{
    
  }
  .site-logo img.gr{
    display: none;
  } 
  .site-logo img.bk{
    display: block;
  }
	.search-form{
		display: none;
	}
	
}
@media(max-width:767px) {
	.site-header{
    width:100%;
    height: 6rem;
    padding: 1.5rem 3rem 1rem 3rem;
	}
  .site-logo{
		width:11.2rem;
	}
}

/*===========================================================*/
/* # main-nav
/*===========================================================*/
.main-nav ul{
	list-style: none;
	display: flex;
	padding:0;
	margin:0;
}
.main-nav > ul li{
	margin:0 .8rem;
	position: relative;
}
.main-nav > ul li a{
	display: block;
	padding:1rem;
  color: var(--textCl);
  font-weight: 600;
}

/*-- sub-menu dropdown --*/
  .main-nav .sub-menu{
		position: absolute;
		top:calc(100% - 5px);
		left:-36%;
		margin:0;
		flex-direction: column;
		transform: translateY(-10px) scaleY(0);
		transition: 0.3s;
		transform-origin: center top;
    background-color: var(--backgrCl01);
    padding:2rem 0;
    border-radius: 2rem;
  }
	.main-nav > ul li.menu-item-has-children:hover .sub-menu {
		transform: translateY(0) scaleY(1);
		transform-origin: center top;
  }
.main-nav .sub-menu li{
  padding:0;
  margin:0;
}
.main-nav .sub-menu li a {
  display: block;
  min-width: 8em;
  margin: 0;
  padding: .5rem 7rem .5rem 3.8rem;
  white-space: nowrap;
  background: var(--backgrCl01) url("../images/common/icon_arrow_right01.svg") right 3.8rem top 50% / 1rem no-repeat;
  color:var(--textCl);
}

.main-nav .sub-menu li a:hover{ }

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


@media(max-width:999px) {
	
	.main-nav{
		display: none;
	}
	
}

/*===========================================================*/
/* # menu-toggle
/*===========================================================*/

.menu-toggle{
	display: none;
}

@media(max-width:999px) {
	.menu-toggle{
    display: block;
    z-index: 99999;
    position: fixed;
    top: 3rem;
    right: 3rem;
    width: 30px;
    height: 22.5px;
    transform: translate(0%, 0%);
    cursor: pointer;
    transition: all 0.5s ease;
    border:none;
    background: transparent;
    padding: 0;
	}
	.menu-toggle-wrap{
	  position: relative;
    width: 100%;
    height: 100%;
    transition: all 0.5s ease;
	}
	.menu-toggle-wrap span{
		display: inline-block;
    position: absolute;
    width: 100%;
    height: 2.5px;
    background-color: #fff;
    transition: all 0.5s ease;
	}   
	.menu-toggle-wrap span:nth-of-type(1) {
    top: 0;
    left: 0;
  }
	.menu-toggle-wrap span:nth-of-type(2) {
		top: 10px;
    left: 0;
  }
	.menu-toggle-wrap span:nth-of-type(3) {
		top: 20px;
    left: 0;
  }
	.toggled .menu-toggle-wrap span{
		background-color: #ffffff;
	}
	.toggled .menu-toggle-wrap span:nth-of-type(1) {
    transform: translateY(1.5rem) rotate(-45deg) scaleX(1.2);
  }
	.toggled .menu-toggle-wrap span:nth-of-type(2) {
    transform: scale(0);
  }
	.toggled .menu-toggle-wrap span:nth-of-type(3) {
    transform: translateY(-1.5rem) rotate(45deg) scaleX(1.2);
  }
	
}

@media(max-width:767px) {
	.menu-toggle{
		top:1.9rem;
    width: 3rem;
    height: 2.25rem;
	}
  .menu-toggle-wrap span{
    height: .25rem;
  }
	.menu-toggle-wrap span:nth-of-type(1) {
    top: 0;
    left: 0;
  }
	.menu-toggle-wrap span:nth-of-type(2) {
		top: 1rem;
    left: 0;
  }
	.menu-toggle-wrap span:nth-of-type(3) {
		top: 2rem;
    left: 0;
  }
	.toggled .menu-toggle-wrap span:nth-of-type(1) {
    transform: translateY(1rem) rotate(-45deg) scaleX(1.2);
  }
	.toggled .menu-toggle-wrap span:nth-of-type(2) {
    transform: scale(0);
  }
	.toggled .menu-toggle-wrap span:nth-of-type(3) {
    transform: translateY(-1rem) rotate(45deg) scaleX(1.2);
  }
}

/*===========================================================*/
/* # mobile-nav
/*===========================================================*/
.mobile-nav{
	display: none;
}

@media(max-width:999px) {
	.mobile-nav{
		display: block;
		position: fixed;
		top:0;
		right:0;
		width:100%;
    /*max-width: 450px;*/
		height:100vh;
		transform: translateX(100%); opacity: 0; /* 右から*/
		/*transform: translateY(-100%);*/ /*  上から*/
		transition: all 0.3s ease;
		z-index: 9999;
	}
	.mobile-nav.toggled{
		transform: translateX(0); opacity: 1; /*右から*/
		/*transform: translateY(0);*/ /*上から*/
	}
	
	.mobile-nav-wrap{
		width:100%;
		height:calc(100% - 9rem);
		background-color: #eee;
    margin-top:9rem;
		padding:0;
    overflow-y: scroll;
	}
	
	.mobile-nav ul{
		list-style: none;
		margin: 2rem 0 0 0;
		padding:0;
		display: flex;
		flex-direction: column;
	}
  .mobile-nav ul li{
    /*border-bottom: #cdcdcd solid 1px;*/
    background-size: 1.2rem;
  }
	.mobile-nav ul li a{
		display: block;
    color: var(--textCl);
    font-size: 1.8rem;
		padding:.8rem 5rem .8rem 3rem;
    position: relative;
	}
  .mobile-nav ul li a::after{
    content: "";
    width:1.2rem;
    height: 1.6rem;
    background: url("../images/common/icon_arrow_right01.svg") 0 0 / contain no-repeat;
    position: absolute;
    right:3rem;
    top:50%;
    transform: translateY(-50%);
  }
  .mobile-nav.toggled li ul.sub-menu{
    border-top:0;
    margin:0;
  }
  /* 親ページがリンク先を持たない場合のみアコーディオン */
  /*.mobile-nav.toggled li a:not([href]) + ul.sub-menu{
    height: 0;
    transition: .3s;
    overflow:hidden;
    border-top:0;
  }*/
  .mobile-nav ul.sub-menu li{
    margin-left: 3.6rem;
    padding-left: 1rem;
    border-bottom: none;
    border-left: #ccc dotted 1px;
  }
  .mobile-nav ul.sub-menu li a {
    width: 100%;
    margin: 0;
    padding:.85rem;
    font-size: 1.3rem;
  }
  .mobile-nav ul.sub-menu li a::after{
    width: .7rem;
    height: .9rem;
    right:3.4rem;
    top:50%;
    transform: translateY(-50%);
  }
  .mobile-nav ul.sub-menu li:last-child{
    margin-bottom:1rem;
  }
	.mobile-nav li.menu-item-has-children{
		position: relative;
		cursor: pointer;
	}
  .mobile-nav li.menu-item-has-children:has( > a:not([href])) > a::after{
    /*transform: rotate(90deg);*/
    display: none;
  }
  /*.mobile-nav li.open.menu-item-has-children:has( > a:not([href])) > a::after{
    transform: rotate(-90deg);
	}*/
	.mobile-nav li.menu-item-has-children.focus::after{
		display: none;
  }
  .mobile-nav li.menu-item-has-children > a{
    padding-bottom:1rem;
  }

  .mobile-nav-contact{
    width: 84%;
    max-width: 375px;
    margin:2rem auto;
    height: 5.3rem;
    border-radius: 2.7rem;
    background: var(--pointCl02);
  }
  .mobile-nav-contact a{
    color: var(--textCl);
    width:100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    font-weight: bold;
    column-gap: 1.1rem;
  }
  .mobile-nav-contact a::after{
    content: "";
    background: url("../images/common/icon_arrow_bw.svg") top left / contain no-repeat;
    width:1.6rem;
    height: 1.6rem;
  }

}

@media(max-width:767px) {
	.mobile-nav-wrap{
		margin-top:6rem;
    height:calc(100% - 6rem);
	}
  .mobile-nav ul li a{
    font-size: var(--textSzSp14);
  }
}
/*===========================================================*/
/* # Page Title
/*===========================================================*/
.page-header{
	height: 26rem;
	background-color: var(--pointCl01);
	padding-top:15rem;
}
.page-title{
	font-size: 4.4rem;
  line-height: 1;
	font-weight: 700;
	color:#fff;
	margin:0;
	text-align: center;
  letter-spacing: .08em;
  text-shadow: 0 .07em 0 rgba(0,0,0,0.85);
}
.page-title .sub-text{
  font-size: 2.4rem;
}
@media(max-width:767px){
  .page-header{
	  height: 13.5rem;
	  padding-top:7.5rem;
  }
  .page-title{
    font-size: 3rem;
  }
  .page-title:has( > .sub-text ){
    margin-top: -1rem;
  }
  .page-title .sub-text{
    display: block;
    font-size: 1.8rem;
    margin-top:.5rem;
  }
}
/*===========================================================*/
/* # Breadcrumbs
/*===========================================================*/
.breadcrumbs.bg-gray{
  background-color: var(--backgrCl01);
}
.breadcrumbs-inner{
  width:118rem;
  margin: 0 auto;
  padding: 1.5rem 4rem;
  line-height: 1;
  font-size: 1.2rem;
}
.breadcrumbs a{
  color: var(--textCl);
}
@media(max-width:767px){
  .breadcrumbs{
    display: none;
  }
}

/*===========================================================*/
/* # 投稿ページ post-type:post
/*===========================================================*/
.cat-list{
	list-style: none;
	padding:0;
	margin:20px 0;
}
.cat-list li{
	display: inline-block;
	margin-right:5px;
}
.cat-list li a{
	font-size: 0.75rem;
	color:#fff;
	background-color: #555;
	padding:3px 5px;
}

/*===========================================================*/
/* # アーカイブ archive 
/* 投稿タイプ追加の際はここを調整
/* 投稿タイプにスタイルを変える場合は丸ごとコピーして変更
/*===========================================================*/
.posts-list{
	display: flex;
	flex-wrap: wrap;
}
.posts-list-item{
	width:calc(373 / 1200 * 100%);
	margin-bottom:calc(40 / 1200 * 100%);
}
.posts-list-item:not(:nth-child(3n-2)) {
  margin-left: calc(40 / 1200 * 100%);
}

@media(max-width:767px){
	.posts-list-item{
		width:100%;
		margin-right:0;
	}
}


/*===========================================================*/
/* news list
/*===========================================================*/

.news-list{
  max-width:100%;
	margin:0 auto;
	padding:0;
	border-top:#a4a4a4 solid 1px;
}
.news-list-item {
	border-bottom:#a4a4a4 solid 1px;
	list-style: none;
}
.news-list-item a {
	color:#333;
	line-height: 1.5;
  display: flex;
  padding:30px;
  column-gap: 2em;
}
.news-list-item p{
  margin:0;
}
@media screen and (max-width:767px) {
	.news-list-item a {
    display: block;
  }
  .news-list-item .posted-date{
    margin-bottom:1em;
  }
	
}

/*===========================================================*/
/* Search 検索結果
/*===========================================================*/


/*===========================================================*/
/* Pagination ページネーション ページャー
/*===========================================================*/
.pagination{
	width: 100%;
  margin: 0 auto;
  text-align: center;
  padding-top: 20px;
}
.pagination ul{
	padding:0;
	margin:0;
	list-style: none;
}
.pagination ul li{
	display: inline-block;
	margin:0 5px;
}
.pagination ul li a,
.pagination ul li span{
	display: block;
  border: #999999 1px solid;
  background-color: #fff;
  width: 30px;
  line-height: 30px;
  font-size: 13px;
  text-align: center;
  color: #333;
  text-decoration: none;
}
.pagination ul li span.current{
	background-color: #999;
  color: #fff;
}
.pagination ul li span.dots{
	border: none;
  width: auto;
  color: #333;
  background: none;
}

/*===========================================================*/
/* # 404
/*===========================================================*/

@media(max-width:767px){
}


/*===========================================================*/
/* # pageTop ボタン
/*===========================================================*/
#page-top {
	position:fixed;
	bottom:0;
	right:0;
	z-index: 99999;
  opacity: 0; 
  transition: opacity 350ms ease;
}
#page-top a{
	display:block;
	width:80px;
	height:80px;
	background:#aaaaaa;
	opacity: .8;
	position: relative;
}
#page-top a:hover{
	opacity: 1;
}
#page-top a::before{
	font-family:"Line Awesome Free","Line Awesome Brands";
	content: "\f062";
	font-weight:900;
	font-size: 16px;
	color:#fff;
	position:absolute;
	top:50%; 
	left:50%;
	transform: translate(-50%,-50%);
	z-index:1;
}


@media(max-width:767px){
  #page-top{
    display: none;
  }
  
	#page-top a{
	  width:60px;
	  height:60px;
  }
 #page-top a::before{
	 font-size: 13px;
  }
	
}

/*===========================================================*/
/* # fixBnr 追従バナー
/*===========================================================*/
#fix-bnr{
	position:fixed;
	top:15.8rem;
	right:0;
	z-index: 99999;
  opacity: 1;
  transition: opacity .3s;
}
.fix-contact-btn{
  width:4.9rem;
  height: 22.7rem;
  background: var(--pointCl02);
}
.fix-contact-btn a{
  writing-mode: vertical-rl;
  color: var(--textCl);
  width:100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  column-gap: 1.1rem;
}
.fix-contact-btn a::after{
  content: "";
  width:2.1rem;
  height: 2.1rem;
  background: url("../images/common/icon_arrow_bw.svg") top left / contain no-repeat;
}
#fix-bnr.pcbnr-hidden{
  opacity: 0;
}
@media(max-width:767px) {
  #fix-bnr{
    bottom:1.2rem;
    right: 1.7rem;
    top:auto;
    opacity: 0;
    transition: .3s opacity;
  }
  #fix-bnr.fixed{
    opacity: 1;
  }
  .fix-contact-btn{
    width: 20rem;
    height: 5.3rem;
    border-radius: 2.7rem;
  }
  .fix-contact-btn a{
    writing-mode:initial;
    font-size: 1.3rem;
    font-weight: bold;
    column-gap: 1.1rem;
  }
  .fix-contact-btn a::after{
    width:1.6rem;
    height: 1.6rem;
  }
}

/*===========================================================*/
/* # Comment コメント
/*===========================================================*/
.comments-area{
	
}
.comment-list{
	margin-left:0;
}

@media(max-width:767px){
}

/*===========================================================*/
/* # Footer
/*===========================================================*/
.footer-wrap{
  width:100%;
  display: flex;
  position: relative;
}
.footer-info-block{
  width: calc(50% - 59rem + 25.6rem);
  background-color: var(--pointCl01);
  padding: 8rem 0 6rem;
}
.footer-info-inner{
  width:25.6rem;
  margin-left: auto;
}
.footer-logo{
  width:19.8rem;
}
.footer-sns-links{
  margin-top:4.8rem;
  display: flex;
  align-items: center;
}
.footer-sns-item:nth-child(1){
  margin-right: 2.4rem;
}
.footer-sns-item:nth-child(2){
  margin-right: 1.3rem;
}
.footer-sns-item a.footer-sns-x {
  display: block;
  width: 2.6rem;
}
.footer-sns-item a.footer-sns-insta {
  display: block;
  width: 2.9rem;
}
.footer-sns-item a.footer-sns-note {
  display: block;
  width: 9.2rem;
}

.footer-nav-block{
  width: calc(50% - 59rem + 92.4rem);
  background-color: var(--backgrCl01);
  padding: 8rem 0 6rem 7rem;
}
.footer-nav-inner{
  width:85.4rem;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.footer-nav{
  display: flex;
}
.footer-nav ul:nth-child(1){
  width:18rem;
  margin-right: 3rem;
}
.footer-nav ul{
	list-style: none;
	margin:0;
	padding:0;
}
.footer-nav ul li{
	margin:0 0 .8rem 0;
}
.footer-nav ul li a{
  color: var(--textCl);
}
.footer-nav ul li.child-page{
  padding-left: 1em;
  margin-top:-0.5rem;
}
.footer-nav ul li.child-page::before{
  content: "-";
  margin-right: .6em;
}
.footer-contact-btn{
  width:36.4rem;
  height: 10rem;
  border-radius: 5rem;
  overflow: hidden;
}
.footer-contact-btn a{
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 2rem;
  width:100%;
  height: 100%;
  font-size: 2rem;
  font-weight: bold;
  color:#fff;
  background: var(--pointCl01);
}
.footer-contact-btn a .btn-icon{
  content: "";
  position: relative;
  width:2.7rem;
  height: 2.7rem;
  background: url("../images/common/icon_arrow_wg.svg") top left / contain no-repeat;
}

.footer-copyright{
  position: absolute;
  bottom:6rem;
  right: calc(50% - 59rem);
	text-align: center;
}
.footer-copyright p{
  margin:0;
  line-height: 1;
}
.footer-copyright a{
  color: var(--textCl);
}

@media(max-width:767px){
  .footer-info-block{
    width: 100%;
    padding: 5rem 3rem 15rem;
  }
  .footer-info-inner{
    width: 100%;
    margin:0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .footer-sns-links{
    margin-top:5rem
  }
  .footer-nav-block{
    display: none;
  }
  .footer-copyright{
    bottom:8.5rem;
    right:50%;
    transform: translateX(50%);
    white-space: nowrap;
  }
  .footer-copyright p,
  .footer-copyright a{
    color: #fff;
  }
}


/*===========================================================*/
/* # Sidebar サイドバー
/*===========================================================*/

@media(max-width:767px){
}

/*===========================================================*/
/* # Animation
/*===========================================================*/
.fade-up {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 1.5s, transform 1s;
}.fade-up.is-in {
	opacity: 1;
	transform: translateY(0px);
}
.fade-left {
	opacity: 0;
	transform: translateX(30px);
	transition: opacity 1.5s, transform 1s;
}.fade-left.is-in {
	opacity: 1;
	transform: translateX(0px);
}
.fade-right {
	opacity: 0;
	transform: translateX(-30px);
	transition: opacity 1.5s, transform 1s;
}.fade-right.is-in {
	opacity: 1;
	transform: translateX(0px);
}

/*===========================================================*/
/* # Accordion
/*===========================================================*/
.accordion{
  border:#666 solid 1px;
}
.accordion-details-summary{
  display: block; /*デフォルトの三角形を削除*/
  padding:15px 45px 15px 15px;
  cursor: pointer;
  position: relative;
}
.accordion-details-summary::-webkit-details-marker {
  display: none;
}
/*
.accordion-details-summary::before{
  content: "";
  width:15px;
  height: 1px;
  background-color: #333;
  position: absolute;
  top:50%;
  right:15px;
  transition: .3s;
}
.accordion-details-summary::after{
  content: "";
  width:1px;
  height: 15px;
  background-color: #333;
  position: absolute;
  top:calc(50% - 7px);
  right:22px;
  transition: .3s;
}
.open .accordion-details-summary::before{
  transform: scaleX(0);
}
.open .accordion-details-summary::after{
  transform: rotate(90deg);
}*/

.accordion-details:not(:first-child){
  border-top:#666 solid 1px;
}
.accordion-details-content{
  border-top:#ccc solid 1px;
  overflow: hidden;
}
.accordion-details-content .inner{
  padding:15px;
}
.accordion-details-content p{
  margin-top:0;
}
.accordion-details-content p:last-child{
  margin-bottom:0;
}
/*===========================================================*/
/* # 汎用
/*===========================================================*/
@media(min-width:768px){
	.sp{
		display: none;
	}
}
@media(max-width:767px){
	.pc{
		display: none;
	}
}
@media (min-width: 768px) and (max-width: 999px) {
	.no-tb{
		display: none;
	}
}