@charset "UTF-8";

/* 次の行から記述して下さい。 */

/*sales_agency*/
html  {scroll-behavior: smooth;}

#title_service_contents,
#title_service_flow,
#title_service_cost,
#title_service_range{
    style="padding:5.4rem 0;
    /* scroll-padding-top: 100px  !important;  */
    /* この要素のみスクロールした時に300px空く */
}

.service_btn_parent{
 justify-content: center;
 padding:10px;
}
.service_btn{
    margin:10px;
}
.service_btn>.btn{
    width:100px;
}
.btn_s{
    display: block;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    width: auto !important;
    font-size: 1.2rem;
    font-weight: 400;
    padding: 1.0rem 0;
    /* background: #0c61a8; */
    border:solid 1px #0c61a8;
    /* background: linear-gradient(30deg, #1e2b5a 0%, #153994 40%, #2585b5 100%); */
    width: 100%;
    height: 100%;
    transition: all 0.4s ease;
    color:#0c61a8;
    text-decoration: none;
}

.btn_s:hover {
  background-color: #19244c;
  color: #fff;
}
/* .btn_s a{
    color:#0c61a8;
    text-decoration: none;
} */


/* .btn_s a:before {
        content: "";
        background: #0c61a8;
        background: linear-gradient(30deg, #1e2b5a 0%, #153994 40%, #2585b5 100%);
        width: 100%;
        height: 100%;
        transform: scale(-1, 1);
        transition: all 0.4s ease;
    } */
.service_box_parent{

    display: flex;
    align-items: stretch;
    padding: 3px !important;

  }

  .service_box{
    flex-grow: 1;
  /* margin-bottom:10px; */
  padding:5px;
  /* border:solid 2px #19244c; */
  background-color:#40528B;

}
.service_box a{
  text-decoration:none;
}

.serviceicon{
    width:35%;
    margin:0 auto;
    padding-top:5px;
  }

  h4.service_box_title{
    text-align:center;
    line-height:20px;
    color:#fff;
    font-size: 1.8rem;
  }

  .service_detail_box{
    margin-top:80px !important;
  }

  .service_detail{
    /* margin-top:60px; */
  }
  .service_contents h4{

    font-weight: 700;
    margin: 0 0 0.8rem;
  }

  .service_contents{
    /* padding:30px 0px; */
  }
  .service_contents>p{
    padding: 2rem 0 0 1.6rem;
    word-break: normal;
  }

  .service_content1,
  .service_content2{
    padding: 2rem 0 0 1.6rem;
  }

.service_contents ul {
    list-style: square;
  }
.service_contents ul li{
  margin-left: 1.6rem;
}

.service_detail_img {
    display: flex;
    justify-content: center;
    align-items: center;
}

.sflow_box{
  padding-top:20px;
}
.sflow_txt{
  padding:20px;
  background-color:#EDEDED;
}
.sflow_txt ol>li{
  font-weight: 600;
  padding-bottom:20px;
}
.sflow_txt ol>li>ul{
  font-weight: normal;
  padding-left:10px;
}

.plan_for_sp{
      display:none;
    }
    .plan_for_pc{
    display: block;
    }
@media screen and (max-width: 559px) {
.plan_for_pc{
    display:none;
    }
.plan_for_sp{
    display:block;
      }
}
.plan_detail{
  padding:30px;
  background-color:#394466;
  color:#fff;
}


/*Strength FAQ*/

.Qa-Box {
  width: 80%;
  margin: 0 auto;
}

.Qa-Box .Qa {
  padding: 20px 0;
  border-bottom: 1px solid #c8c8c8;
}

.Qa-Box .Qa dt,
.Qa-Box .Qa dd {
  display: flex;
  align-items: baseline;
  margin: 15px 0;
}

.Qa-Box .Qa dt p {
  margin: 0;
  padding-left: 15px;
  font-weight: bold;
  width: 100%;
}

.Qa-Box .Qa dd p {
  margin: 0;
  padding-left: 15px;
  width: 100%;
}

.Qa-Box .Qa:last-of-type {
  border-bottom: none;
}

.Qa-Box .Qa dt::before {
  content: "Q";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #19244B;
  width: 2em;
  height: 2em;
}

.Qa-Box .Qa dd::before {
  content: "A";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #309DD2;
  width: 2em;
  height: 2em;
}

@media screen and (max-width: 960px) {
  .Qa-Box {
    width: 95%;
  }
}

/*==============================*/
/*目次*/
/*==============================*/
.toc {
	padding: 0;
	margin: 0 auto 30px;
	position: relative;
}
.toc-title {
	display: inline-block;
	padding: 5px 10px;
	margin: 0;
	background: #19244c;
	font-family: "Ubuntu", sans-serif;
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
	color: #fff;
	position: relative;
	top: 15px;
	left: 0;
	z-index: 2;
}
.toc .toc-list {
	padding: 30px;
	margin: 0;
	position: relative;
	list-style: none;
	background: #f4f4f4;
}
.toc .toc-list li ul {
	margin: 10px 0 !important;
	padding: 0 0 0 1.2em;
}
.toc .toc-list li {
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
.toc .toc-list li a {
	display: block;
	padding: 0 0 0 1.3em;
	position: relative;
	text-decoration: none;
	font-weight: bold;
	line-height: 1.6em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
.toc .toc-list li ul li a {
	display: block;
	padding: 0 0 0 1.8em;
	position: relative;
	text-decoration: none;
	font-size: 13px;
	font-weight: lighter;
	line-height: 1.6em;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}
.toc .toc-list li a:hover {
	text-decoration: underline;
	color: #0c61a8;
}
.contentstable-number {
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	font-family: "Ubuntu", sans-serif;
}
.toc .toc-list > li > a > .contentstable-number::after {
	content: '.';
}
.toc-toggle > a {
	display: inline-block;
	font-size: 14px;
	line-height: 1;
	color: #fff;
	text-decoration: none;
}
/*タグ*/
.post-tag {
	margin-top: 5px;
}
.post-tag,
.post-tag a {
	font-size: 14px;
	text-decoration: none;
}
.post-tag a:hover {
	text-decoration: underline;
	color: #0c61a8;
	text-decoration: underline;
}
@media screen and (max-width: 960px) {
	.toc .toc-list {
		padding: 25px 20px 20px;
	}
	/*タグ*/
	.post-tag,
	.post-tag a {
		font-size: 12px;
	}
}
@media screen and (max-width: 559px) {
	.toc .toc-list {
		padding: 25px 20px 20px;
	}
}

/*==============================*/
/*記事詳細（ブログ）（サイドバー）*/
/*==============================*/
.singleWrap {
	width: calc(100%);
	max-width: 1024px;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	display: -webkit-flex;
	flex-wrap: nowrap;
	column-gap: 50px;
}
.singleWrap > .ctt-width-s {
	width: 724px;
	min-width: 724px;
	padding: 0;
	margin: 0;
	position: relative;
}
.singleWrap > .sidebar {
	width: 250px;
	padding: 0;
	margin: 0;
	position: relative;
}

/* - サイドバー */
.sidebar .aside {
	margin-bottom: 40px;
}
.sidebar .aside > header {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	column-gap: 5px;
	padding: 12px;
	margin: 0 auto 10px;
	background: #19244c;
	position: relative;
	z-index: 0;
}
.sidebar .aside > header.mb0 {
	margin-bottom: 0;
}
.sidebar .aside > header > em {
	font-family: "Ubuntu", sans-serif;
	font-size: 18px;
	line-height: 1;
	text-transform: uppercase;
	font-weight: 700;
	font-style: normal;
	color: #fff;
	text-decoration: none;
}
.sidebar .aside > header > h2 {
	font-size: 10px;
	line-height: 1;
	font-weight: 400;
	color: #fff;
}

/* - タグ*/
.sideTags {
	display: flex;
	justify-content: flex-start;
	align-content: flex-start;
	flex-wrap: wrap;
	column-gap: 5px;
	grid-row-gap: 5px;
}
.sideTags .tag {
	display: inline-block;
	padding: 0;
	margin: 0;
	line-height: 1;
}
.sideTags .tag a {
	display: inline-block;
	padding: 5px 8px;
	margin: 0;
	background: #252525;
	font-size: 10px;
	line-height: 1;
	color: #fff;
	font-weight: lighter;
	border-radius: 16px;
	text-decoration: none;
	transition: all 0.3s ease;
}
.sideTags .tag a:hover {
	background: #2585b5;
	text-decoration: none;
	transition: all 0.3s ease;
}

/* - 記事一覧*/
.sid_blogList {
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
}
.sid_blogList > li {
	padding: 15px 0;
	margin: 0 auto;
	border-bottom: 1px dotted #999;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 10px;
	position: relative;
}
.sid_blogList > li > a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.sid_blogList > li figure {
	width: 70px;
	padding: 0;
	margin: 0;
	position: relative;
	text-align: center;
	overflow: hidden;
}
.sid_blogList > li figure::before {
	content: '';
	display: block;
	padding: 50%;
}
.sid_blogList > li figure img {
	width: 100%;
	max-width: unset;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover;
}
.sid_blogList_info {
	width: calc(100% - 70px - 10px);
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
}
.sid_blogList_info > h3 {
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 12px;
	line-height: 1.4em;
	font-weight: 500;
	color: #19244c;
	transition: all 0.3s ease;
}
.sid_blogList_info > .date {
	font-size: 10px;
	line-height: 1;
	color: #999;
}
.sid_blogList > li:hover .sid_blogList_info > h3 {
	text-decoration: underline;
	transition: all 0.3s ease;
	color: #2585b5;
}

@media screen and (max-width: 960px) {
	.singleWrap > .ctt-width-s {
		width: 880px;
		min-width: 880px;
	}
	.singleWrap > .sidebar {
		display: none;
	}
}
@media screen and (max-width: 559px) {
	.singleWrap > .ctt-width-s {
		width: 100%;
		min-width: 100%;
	}
	.singleWrap > .sidebar {
		display: none;
	}
}


/*==============================*/
/*記事詳細（関連記事）*/
/*==============================*/
.relatedPost {
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
}
.relatedPost > header {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	column-gap: 5px;
	padding: 12px;
	margin: 0 auto;
	background: #19244c;
	position: relative;
	z-index: 0;
}
.relatedPost > header > em {
	font-family: "Ubuntu", sans-serif;
	font-size: 18px;
	line-height: 1;
	text-transform: uppercase;
	font-weight: 700;
	font-style: normal;
	color: #fff;
	text-decoration: none;
}
.relatedPost > header > h2 {
	font-size: 10px;
	line-height: 1;
	font-weight: 400;
	color: #fff;
}

/* 記事一覧*/
.relatedList {
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
}
.relatedList > li {
	padding: 20px 0;
	margin: 0 auto;
	border-bottom: 1px dotted #999;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 20px;
	position: relative;
}
.relatedList > li > a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.relatedList > li figure {
	width: 20%;
	padding: 0;
	margin: 0;
	position: relative;
	line-height: 1;
}
.relatedList > li figure img {
	width: 100%;
	height: auto;
}
.relatedList_info {
	width: calc(100% - 20px - 20%);
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 5px;
}
.relatedList_info > h3 {
	padding: 0;
	margin: 0;
	position: relative;
	font-size: 15px;
	line-height: 1.4em;
	font-weight: 500;
	color: #19244c;
	transition: all 0.3s ease;
}
.relatedList_info > .date {
	font-size: 12px;
	line-height: 1;
	color: #999;
}
.relatedList > li:hover .relatedList_info > h3 {
	text-decoration: underline;
	transition: all 0.3s ease;
	color: #2585b5;
}

@media screen and (max-width: 960px) {
	.relatedList_info > h3 {
		font-size: 14px;
	}
	.relatedList_info > .date {
		font-size: 11px;
	}
}
@media screen and (max-width: 559px) {
	.relatedList_info > h3 {
		font-size: 13px;
	}
	.relatedList_info > .date {
		font-size: 10px;
	}
}


/*==============================*/
/*記事詳細（関連記事）*/
/*==============================*/
.editor {
	padding: 0;
	margin: 0 auto 50px;
	position: relative;
}
.editor > header {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	column-gap: 5px;
	padding: 12px;
	margin: 0 auto;
	background: #19244c;
	position: relative;
	z-index: 0;
}
.editor > header > em {
	font-family: "Ubuntu", sans-serif;
	font-size: 18px;
	line-height: 1;
	text-transform: uppercase;
	font-weight: 700;
	font-style: normal;
	color: #fff;
	text-decoration: none;
}
.editor > header > h2 {
	font-size: 10px;
	line-height: 1;
	font-weight: 400;
	color: #fff;
}
.editorBox {
	width: 100%;
	padding: 20px;
	margin: 0;
	background: #fff;
	border: 5px solid #19244c;
	border-top: none;
	position: relative;
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 20px;
}
.editorBox > figure {
	width: 150px;
	padding: 0;
	margin: 0;
	position: relative;
	text-align: center;
	overflow: hidden;
	border-radius: 50%;
}
.editorBox > figure::before {
	content: '';
	display: block;
	padding: 50%;
}
.editorBox > figure img {
	width: 100%;
	max-width: unset;
	height: 100%;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	object-fit: cover
}
.editorBox_info {
	width: calc(100% - 150px - 20px);
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	align-content: center;
	align-items: center;
	grid-row-gap: 5px;
}
.editorBox_info > h3 {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	font-size: 16px;
	line-height: 1.2em;
	font-weight: bold;
}
.editorBox_info > h3 > small {
	font-size: 12px;
	font-weight: lighter;
}
.editorBox_info > p {
	padding: 0;
	margin: 0;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
	font-size: 12px;
	line-height: 1.7em;
}

@media screen and (max-width: 960px) {
	.editorBox > figure {
		width: 100px;
	}
	.editorBox_info {
		width: calc(100% - 100px - 20px);
	}
	.editorBox_info > h3 {
		font-size: 15px;
	}
}
@media screen and (max-width: 559px) {
	.editorBox {
		width: 100%;
		padding: 15px;
		flex-wrap: wrap;
		column-gap: 0;
		grid-row-gap: 10px;
	}
	.editorBox > figure {
		width: 150px;
		padding: 0;
		margin: 0 auto;
	}
	.editorBox_info {
		width: calc(100%);
	}
	.editorBox_info > h3 {
		width: 100%;
		font-size: 15px;
		text-align: center;
	}
}


/*==============================*/
/* 新着情報 */
/*==============================*/
.tags {
	margin-left: 15px;
	display: inline-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 10px;
}
.tags.casetag {
	margin-left: 0;
	display: inline-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 10px;
}
.tags.casetag_single {
	margin-left: 0;
	margin: 0 auto 20px;
	display: inline-flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 10px;
}
.tags > span {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-size: 12px;
	line-height: 1;
	color: #19244c;
}
.post-list .post-ttl {
	width: 100%;
}
.one-case #case-subttl {
	margin-bottom: 10px;
}


@media screen and (max-width: 960px) {
}
@media screen and (max-width: 559px) {
	.tags {
		width: 100%;
		margin-left: 0;
	}
}



/*==============================*/
/* ヘッダーカスタマイズ */
/*==============================*/
#logo--header {
	background: #fff;
	text-decoration: none;
	line-height: 0;
	width: 300px;
	height: 88px;
	padding: 0 30px;
	float: left;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
	grid-row-gap: 7px;
}
#logo--header > h1 {
	width: 100%;
	text-align: left;
	font-size: 10px;
	line-height: 1;
	font-weight: lighter;
	letter-spacing: normal;
}
#logo--header > img {
	width: 100%;
}
@media screen and (max-width: 559px) {
	#hamburger-fixedarea #logo--sp {
		text-decoration: none;
		line-height: 0;
		width: 250px;
		height: 100%;
		margin: 0;
		padding: 0 0 0 10px;
		float: left;
		display: flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		grid-row-gap: 5px;
	}
	#hamburger-fixedarea #logo--sp > h1 {
		width: 100%;
		text-align: left;
		font-size: 10px;
		line-height: 1;
		font-weight: lighter;
		letter-spacing: normal;
	}
	#hamburger-fixedarea #logo--sp > img {
		width: auto;
		height: 25px;
	}
}

@media screen and (max-width: 559px) {
	#kv {
		background-image: url('https://glosperity.co.jp/wp/wp-content/themes/glosperity/img/front/slideshow--xs.webp');
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
	}
}


/*==============================*/
/* お知らせ一覧カスタマイズ */
/*==============================*/
.post-list-box {
	border-top: 1px dotted #999;
	color: #252525;
	font-size: 1.5rem;
	text-decoration: none;
	padding: 2rem 2.4rem;
	display: flex;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
	column-gap: 15px;
	position: relative;
	transition: all 0.1s ease;
}
.post-list-box:last-of-type {
	border-bottom: 1px dotted #999;
}
.post-list-box > a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.post-list-box > figure {
	width: 100px;
	height: auto;
	padding: 0;
	margin: 0;
	position: relative;
	text-align: center;
	overflow: hidden;
}
.post-list-box > figure::before {
	content: '';
	display: block;
	padding: 50%;
}
.post-list-box > figure img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
}
.post-list-info {
	width: calc(100% - 15px - 100px);
	padding: 0;
	margin: 0;
	position: relative;
}
@media screen and (max-width: 559px) {
	.post-list-box {
		border-top: 1px dotted #999;
		color: #252525;
		font-size: 1.5rem;
		text-decoration: none;
		padding: 1.5rem 0;
		display: flex;
		justify-content: flex-start;
		align-content: flex-start;
		align-items: flex-start;
		column-gap: 15px;
		position: relative;
		transition: all 0.1s ease;
	}
	.post-list-box:last-of-type {
		border-bottom: 1px dotted #999;
	}
	.post-list-box > a {
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
	}
	.post-list-box > figure {
		width: 80px;
	}
	.post-list-info {
		width: calc(100% - 15px - 80px);
	}
}


/************************************************************/
/*　資料ダウンロード
/************************************************************/
#request {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: center;
}
#requestMain {
	width: calc(100% - 500px);
	padding: 40px 40px 80px;
	margin: 0;
	background: #f5f5f5;
	position: relative;
	order: 1;
}
#requestForm {
	width: 500px;
	min-width: 500px;
	padding: 40px 40px 40px;
	margin: 0;
	background: #fff;
	position: relative;
}
#requestForm > p {
	font-size: 14px;
}

/*メイン*/
#requestMain > h2 {
	width: 100%;
	max-width: 800px;
	padding: 0;
	margin: 0 auto 40px;
	position: relative;
	border: none;
	background: none;
	font-size: 28px;
	line-height: 1.4em;
	font-weight: 600;
	color: var(--text);
	text-align: center;
}
#requestMain > dl {
	width: 100%;
	max-width: 800px;
	padding: 30px;
	margin: 0 auto;
	position: relative;
	border-radius: 10px;
	background: #fff;
	border: none;
}
#requestMain > dl dt {
	padding: 0;
	margin: 0 auto 15px;
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 600;
	color: var(--text);
	text-align: left;
}
#requestMain > dl dd {
	padding: 0;
	margin: 0;
}
#requestMain .num {
	padding: 0;
	margin: 0;
	position: relative;
	list-style: none;
	counter-reset: num 0;
	display: flex;
	flex-direction: column;
	grid-row-gap: 10px;
}
#requestMain .num > li {
	padding: 0;
	margin: 0;
	display: flex;
	justify-content: flex-start;
	align-items: baseline;
	column-gap: 5px;
	font-family: var(--font-maru);
	font-size: 14px;
	line-height: 1.4em;
	font-weight: 400;
}
#requestMain .num > li::before,
#requestMain .num > li::after {
	display: none;
}
#requestMain .num > li::before {
	counter-increment: num 1;
	content: counter(num) ".";
	display: inline-block;
	padding: 0;
	margin: 0;
	position: relative;
	top: unset;
	left: unset;
	transform: unset;
}

/* - ギャラリー*/
#reqGallery {
	max-width: 800px;
	margin: 0 auto 50px;
}
#reqGallery .main-image {
	position: relative;
	margin-bottom: 20px;
}
#reqGallery .main-image img {
	width: 100%;
	display: block;
	opacity: 1;
	transition: opacity 0.3s ease;
}
#reqGallery .nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(16, 29, 50, 0.6);
	border-radius: 50%;
	color: #fff;
	border: none;
	width: 40px;
	height: 40px;
	cursor: pointer;
	font-size: 24px;
	line-height: 40px;
	text-align: center;
}
#reqGallery .nav.prev {
	left: 20px;
}
#reqGallery .nav.prev::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	padding: 0;
	margin: 0;
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
	position: absolute;
	top: 50%;
	left: 55%;
	transform: translate(-50%, -50%) rotate(45deg);
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	transition: var(--ease);
}
#reqGallery .nav.next {
	right: 20px;
}
#reqGallery .nav.next::after {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	padding: 0;
	margin: 0;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	position: absolute;
	top: 50%;
	left: 45%;
	transform: translate(-50%, -50%) rotate(-45deg);
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	transition: var(--ease);
}
#reqGallery .nav:disabled {
	opacity: 0.3;
	cursor: default;
}
#reqGallery .thumbnails {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: flex-start;
	gap: 20px;
	flex-wrap: wrap;
}
#reqGallery .thumbnails > li {
	width: calc((100% - 20px) / 2);
	padding: 0;
	margin: 0;
	position: relative;
}
#reqGallery .thumbnails > li img {
	width: 100%;
	cursor: pointer;
	opacity: 0.7;
	transition: all 0.3s ease;
}
#reqGallery .thumbnails > li img.is-active {
	opacity: 1;
}

/*フォーム*/
.requestForm_form {
	width: 100%;
	padding: 30px 0;
	margin: 0 auto;
	position: relative;
}
.requestForm_form dl {
	width: 100%;
	padding: 0;
	margin: 0 auto 20px;
	position: relative;
	display: flex;
	flex-direction: column;
	grid-row-gap: 8px;
}
.requestForm_form dl dt {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 5px;
	font-size: 14px;
	line-height: 1;
	color: #222;
	font-weight: 600;
}
.requestForm_form dl dt .att {
	display: inline-block;
	padding: 4px 6px;
	background: #D8563B;
	font-size: 10px;
	line-height: 1;
	color: #fff;
	order: -1;
}
.requestForm_form .form-submit input {
	width: fit-content;
	padding: 12px 50px;
	margin: 0 auto;
	text-align: center;
	font-size: 18px;
	line-height: 1;
	font-weight: 600;
	color: #fff;
	border: none;
	box-shadow: none;
	background: #ef8162;
	border-radius: 5px;
	transition: all 0.3s ease;
	cursor: pointer;
}
.requestForm_form .form-submit input:hover {
	filter: brightness(1.1);
	transition: all 0.3s ease;
}

/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#request {
		flex-wrap: wrap;
	}
	#requestMain {
		width: calc(100%);
		padding: 30px;
		order: 0;
	}
	#requestForm {
		width: 100%;
		min-width: 100%;
		padding: 30px;
		order: 1;
	}
	/*メイン*/
	#requestMain > h2 {
		width: 100%;
		max-width: 100%;
		margin: 0 auto 20px;
		font-size: 18px;
	}
	#requestMain > dl {
		width: 100%;
		max-width: 100%;
		padding: 20px;
	}
	#requestMain > dl dt {
		margin: 0 auto 7px;
		font-size: 17px;
	}

	/* - ギャラリー*/
	#reqGallery {
		width: 100%;
		max-width: 100%;
		padding: 0;
		margin: 0 auto 20px;
	}
	#reqGallery .nav.prev {
		left: -20px;
	}
	#reqGallery .nav.next {
		right: -20px;
	}
}
.wpcf7 form.sent .wpcf7-response-output {
	1em;
}

#dl-message {
	text-align: center;
}
#dl-message p {
	padding: 0;
	margin: 0 auto 50px;
	text-align: center;
}

.dlBtn > a {
	display: inline-flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: nowrap;
	column-gap: 8px;
	padding: 20px 60px 20px;
	margin: 0;
	background: #ef8162;
	border-radius: 70px;
	font-size: 30px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
	text-decoration: none;
	transition: all 0.3s ease;
	position: relative;
	box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.1);
}
.dlBtn > a:hover {
	filter: brightness(1.1);
	transition: all 0.3s ease;
	position: relative;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	#dl-message p {
		padding: 0;
		margin: 0 auto 30px;
		text-align: center;
	}

	.dlBtn > a {
		display: inline-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
		flex-wrap: nowrap;
		column-gap: 8px;
		padding: 12px 20px 12px;
		margin: 0;
		background: #ef8162;
		border-radius: 40px;
		font-size: 16px;
		font-weight: 600;
		line-height: 1;
		color: #fff;
		text-decoration: none;
		transition: all 0.3s ease;
		position: relative;
		box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.1);
	}
}




/*==============================*/
/* 動画一覧カスタマイズ */
/*==============================*/
.movie-wrap .post-eyecatch {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	position: relative;
	overflow: hidden;
}
.movie-wrap .post-eyecatch::before {
	content: '';
	display: block;
	padding-top: 56.25%;
}
.movie-wrap .post-eyecatch img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) scale(1);
	transform-origin: center;
	object-fit: cover;
	transition: all 0.3s ease;
}
.movie-wrap .post-eyecatch img:hover {
	transform: translate(-50%,-50%) scale(1.05);
	transform-origin: center;
	transition: all 0.3s ease;
}
/*lightbox*/
#movie-lightbox{
	display:none;
	position:fixed;
	inset:0;
	z-index:99999;
}
.movie-overlay{
	position:absolute;
	inset:0;
	background:rgba(0,0,0,.8);
}
.movie-content{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:90%;
	max-width:900px;
	aspect-ratio:16/9;
}
.movie-content iframe{
	width:100%;
	height:100%;
	border:none;
	background:#000;
}
.movie-close{
	position:absolute;
	top:-60px;
	right:-60px;
	color:#fff;
	font-size:40px;
	cursor:pointer;
}
/*== スマホ・タブレット対応 ==*/
@media only screen and (max-width: 768px){
	.movie-wrap .col-xs-9 {
		width: 100%;
		margin: 0 auto 5px;
	}
	.movie-wrap .col-xs-9 img {
		width: 100%;
	}
	.movie-close{
		position:absolute;
		top: -50px;
		right: 0;
		color:#fff;
		font-size: 30px;
		cursor:pointer;
	}
}