@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Sans+TC:wght@100..900&display=swap');

/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/

html,body{	height:100%;}
html{
	font-size:62.5%;
}

.all_wrap{
	overflow-x: hidden;
	position: relative;
	width: 100%;
	max-width: 100%;
	/* height: 100vh; */
}

.all_wrap::-webkit-scrollbar{
	display: none;
}



body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form,figure,textarea,input{
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100%;
	list-style-type: none;
	font-style: normal;
	font-weight: normal;
	font-family:"Noto Sans JP", sans-serif,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	color:#222;
	font-feature-settings: "palt"
}

input[type=text] {
	font-size: 100%;
}

textarea {
	font-size: 100%;
	font-family:"Noto Sans JP", sans-serif,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
}

.-ja { font-family:"Noto Sans JP", sans-serif,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif!important; }
.-en { font-family: "sofia-pro",sans-serif!important; }
.-ch { font-family: "Noto Sans TC", sans-serif!important; }

::-webkit-input-placeholder{
    font-family: "Noto Sans JP", sans-serif;
}
:-moz-placeholder {
    font-family: "Noto Sans JP", sans-serif;
}

a{
	text-decoration: none;
}

a img {
 transition: opacity 0.3s ease-out;
}

img{
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

.ab img{
	position: absolute;
}

button[type="button"] {
	appearance: none;
	-webkit-appearance: none;
	color: #000;
	margin-left: 0;
}

button{
	background: none;
	border: none;
}

.tit_h1{
	font-size: 9rem;
    font-weight: 900;
	font-family: "sofia-pro",sans-serif;
}

.tit_h1 span {
	display: inline-block;
}

.pc{ display: block;}

.sp{ display: none;}

@media screen and (max-width: 999px){
	.tit_h1{
		font-size: 6rem;
	}

	.pc{
		display: none;
	}

	.sp{
		display: block;
	}
}

/* 全体 横幅 */
.wrapper{
	max-width: 1080px;
	width: 90%;
	margin: 0 auto;
}

@media screen and (max-width: 768px){
	.wrapper{
		width: calc(100% - 6rem);
	}
}

/* 背景グラデーション */
.css-selector {
    background: linear-gradient(236deg, #fbfdb9, #ffffff);
    background-size: 400% 400%;

    -webkit-animation: AnimationName 5s ease infinite;
    -moz-animation: AnimationName 5s ease infinite;
    animation: AnimationName 5s ease infinite;
}

@-webkit-keyframes AnimationName {
    0%{background-position:0% 83%}
    50%{background-position:100% 18%}
    100%{background-position:0% 83%}
}
@-moz-keyframes AnimationName {
    0%{background-position:0% 83%}
    50%{background-position:100% 18%}
    100%{background-position:0% 83%}
}
@keyframes AnimationName {
    0%{background-position:0% 83%}
    50%{background-position:100% 18%}
    100%{background-position:0% 83%}
}

@keyframes poyon {
0%   { transform: scale(1.0, 1.0) translate(0%, 0%); }
15%  { transform: scale(0.9, 0.9) translate(0%, 3%); }
30%  { transform: scale(1.1, 0.86) translate(0%, 10%); }
50%  { transform: scale(0.8, 1.1) translate(0%, -10%); }
70%  { transform: scale(1.05, 0.9) translate(0%, 5%); }
100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}

/* ----------------------------------------------------------------------------------------------------
*  ヘッダー
* --------------------------------------------------------------------------------------------------*/
header .hd_logo{
	position: fixed;
	z-index: 7;
	width: 20rem;
	left: 4rem;
	top: 4rem;
	transition: .3s;
}

header .hd_logo:hover{
	animation: gaming 2s linear infinite;
}

@media screen and (max-width: 999px){
	header .hd_logo{
		width: 13rem;
		left: 2rem;
		top: 2rem;
	}	
}

.work_relative{
	position: relative;
	width: 100%;
}

.work_fig p{
	position: absolute;
	transition: 1.5s;
	opacity: 0;
}

.work_fig .icon01{
	right: -50%;
	top: 0;
	width: 13rem;
	z-index: 3;
}

.work_fig .icon02{
	left: -100%;
	top: 53rem;
	width: 80rem;
	z-index: 1;
}

.work_fig .icon03{
	right: -100%;
	top: 134rem;
	width: 56rem;
	z-index: 1;
}

.work_fig .icon04{
	left:-50%;
	top: 134rem;
	width: 13rem;
	z-index: 1;
}

.work_fig .isShow.icon01{
	right: 0;
	opacity: 1;
}

.work_fig .isShow.icon02{
	left: -37.5rem;
	opacity: 1;
}

.work_fig .isShow.icon03{
	right: -22rem;
	opacity: 1;
}

.work_fig .isShow.icon04{
	left: 0;
	opacity: 1;
}


@media screen and (max-width: 768px){
	.work_fig .icon01{
		top: 45vw;
		width: 5rem;
	}
	.work_fig .icon02{
		top: 200vw;
		width: 40rem;

	}
	
	.work_fig .icon03{
		top: 400vw;
		width: 46rem;
	}
	
	.work_fig .icon04{
		top: 400vw;
		width: 5.5rem;
	}

	.work_fig .isShow.icon02{
		left: -19rem;
	}
	
	.work_fig .isShow.icon03{
		right: -16rem;
	}
	
	
	.work{
		overflow-x: hidden;
	}
}

@media screen and (max-width: 488px){
	.work_fig .icon04{
		top: 550vw;
	}
}

/* ----------------------------------------------
	ハンバーガーメニュー 
----------------------------------------------*/
.hum_bg{
	width: 100%;
	height: 100%;
	background: url(../images/common/hamburger_bg.png);
	position: fixed;
	z-index: 2;
	background-size: cover;
}

.hum_icon{
	width: 8rem;
	height: 8rem;
	background-size: cover;
	position: fixed;
	z-index: 99;
	right: 0;
	top:0;
	transition: 1s;
	overflow: hidden;
	background:rgba(0, 0, 0, 0.92);
}

.hum_icon:before{
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	z-index: 99;
	background:url(../images/common/hum_icon.svg) no-repeat;
}

.hum_icon::after{
	z-index: 9;
	content: "";
	display: block;
	width: 40px;
	height: 50px;
	background: url(../images/kuma.png)no-repeat;
	background-size: contain;
	position: absolute;
	left: -30px;
	bottom: -30px;
	transition: .3s;
}

.hum_icon:hover::after{
	left: 30px;
	bottom: 20px;
	transform: rotate(15deg);
}

.hum_icon.expanded {
	transition: width 1s, height 1s;
	width: 170vw!important;
	height: 170vw!important;
}
main {
	transition: opacity 1s ease;
}

.hum_icon{
	cursor: pointer;
}

.hum{
	position: fixed;
	z-index: 9;
	display: none;
}

.home-kv__kv {
	position: relative;
	z-index: 2;
	background-color: #F2F2F2;
}

.home-kv__movie {
	overflow: hidden;
	pointer-events: none;
	position: relative;
	top: 0;
	left: 50%;
	z-index: 0;
	transform: translateX( -50%);
	height: 100vh;
	max-height: 1000px;
	min-height: 700px;
}
.home-kv__movie::before {
	content: '';
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
}

.home-kv__movie-video {
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hum_menu{
	display: flex;
	flex-wrap: wrap;
	left: 0;
	right: 0;
	max-width: 1380px;
	margin: 0 auto;
	justify-content: center;
	gap: 2.2rem 3rem;
	position: fixed;
	bottom: 3rem;
	z-index: 99999;
}

.hum_menu li a{
	padding: 0 1rem 1rem;
	display: block;
	line-height: 0.9;
	font-size: 10rem;
	font-weight: 900;
	color: #00FF04;
	background: #fff;
	font-family: "sofia-pro",sans-serif;
	position: relative;
	overflow: hidden;
}

.hum_menu li{
	position: relative;
}

.hum_menu li.current:after{
	content: "";
	display: block;
	background: url(../images/kuma.png)no-repeat center;
	background-size: contain;
	position: absolute;
	top: calc(50% - 2.5rem);
	left: 0;
	right: 0;
	width: 5rem;
	height: 5rem;
	margin: 0 auto;
	animation: gaming 2s linear infinite;
}


@keyframes gaming {
	0% { background-color: Magenta; }
	33% { background-color: yellow; }
	66% { background-color: Cyan; }
	100% { background-color: Magenta; }
}

.hum_menu li.current a:before,
.hum_menu li.current a:after{
	display: none!important;
}


.hum_menu li a:before{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: -100%;
	height: 100%;
	width: 100%;
	background: linear-gradient(to bottom right, rgba(255, 39, 255, 0.9), rgba(79, 201, 70, 0.9));
	transition: .5s;
}

.hum_menu li a:hover:before{
	left: 0;
}

.hum_menu li a:after{
	opacity: 0;
	background: url(../images/common/icon_01.svg)no-repeat;
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 1.5rem);
	left: 0;
	right: 0;
	width: 3rem;
	height: 3rem;
	margin: 0 auto;
	transition: .3s;
}

.hum_menu li:nth-child(1) a:after{
	background: url(../images/common/icon_01.svg)no-repeat;
}
.hum_menu li:nth-child(2) a:after{
	background: url(../images/common/icon_02.svg)no-repeat;
}
.hum_menu li:nth-child(3) a:after{
	background: url(../images/common/icon_03.svg)no-repeat;
}
.hum_menu li:nth-child(4) a:after{
	background: url(../images/common/icon_04.svg)no-repeat;
}
.hum_menu li:nth-child(5) a:after{
	background: url(../images/common/icon_05.svg)no-repeat;
}
.hum_menu li:nth-child(6) a:after{
	background: url(../images/common/icon_06.svg)no-repeat;
}

.hum_menu li a:hover:after{
	opacity: 1;
}

@media screen and (max-width: 999px){
	.hum_menu{
		display: flex;
		max-width: 1380px;
		margin: 0 auto;
		left: 2rem;
		justify-content: left;
		gap: 1rem 1rem;
		bottom: auto;
		top: 19rem;
	}
	
	.hum_menu li a{
		padding: 0 1rem 0.8rem;
		font-size: 5rem;
	}

	.hum_menu li.current:after{
		top: calc(50% - 1.5rem);
		width: 3rem;
		height: 3rem;
	}
}


@media screen and (max-width: 768px){
	.hum_icon{
		width: 5rem;
		height: 5rem;
	}

	.hum_menu{
		gap: 1rem 100rem;
	}
		
	.hum_icon.expanded {
		transition: 0.8s;
		width: 300vw!important;
		height: 300vw!important;
	}

	.hum_icon:hover::after{
		left: 18px;
		bottom: 5px;
		transform: rotate(15deg);
	}	

	.hum_icon::after{
		width: 3rem;
		height: 4rem;
	}

	.hum_bg{
		background: url(../images/common/hamburger_bg_sp.png) center;
		background-size: 100%;
	}	
}

@media screen and (max-width: 480px){
	.hum_icon{
		transition: .6s;
	}

	.hum_icon.expanded {
		transition: 0.6s;
		width: 280vw!important;
		height: 280vw!important;
	}

}

/* ------------------------------
    KV
------------------------------ */
.top{
	overflow: hidden;
	height: 100%;
}

#top_KV{
	overflow: hidden;
}

#top_KV figure{
	position: relative;
    background: linear-gradient(236deg, #fbfdb9, #ffffff);
    background-size: 400% 400%;
    -webkit-animation: AnimationName 5s ease infinite;
    -moz-animation: AnimationName 5s ease infinite;
    animation: AnimationName 5s ease infinite;
	height: 67.48vw;
}

#top_KV img{
	/* mix-blend-mode:multiply; */
	width: 100vw;
}

#top_KV .fv_sp{
	display: none;
}

@media screen and (max-width: 999px){
	#top_KV .fv_pc{
		display: none;
	}

	#top_KV .fv_sp{
		display: block;
	}

	#top_KV figure{
		height: 127.77vw;
	}
}

.scroll-inf_wp{
	max-width: 800px;
	margin: 0 auto;
	position: relative;
	z-index: 99;
}

.scroll-inf:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -20px;
	margin-top: -10px;
	border: 10px solid transparent;
	border-right: 10px solid #E7E7E7;
}

.scroll-inf{
	padding: 4rem 2rem;
	/* overflow: hidden; */
	position: relative;
	z-index: 99;
	box-sizing: border-box;
	background: #E7E7E7;
	margin: 0 auto;
	border-radius: 3rem;
}

.top_btm{
	padding: 3.5rem 0 0;
	background: url(../images/common/grid_bg.svg);
	background-size: 40px;
	position: relative;
	width: 100%;
}

.updown {
    animation-name: updown1;
    animation-delay: 0s;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite; 
}

/* ----------------------------------------------
	アニメーション 
----------------------------------------------*/
/* ふわふわ */
@keyframes updown1 {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20px);
  }
  100% {
    transform: translateY(0);
  }
}
.staraaa {
	animation: flashing 0.9s infinite;
}
/* 星のチカチカ */
@keyframes flashing {
	0% {
		opacity: 1;
	}

	30% {
		opacity: 0.2;
	}

	60% {
		opacity: 1;
	}

	90% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.hona_secret .scroll-infinity__item img{
	animation: hurueru .01s  infinite;
}

.buruburu {
    display: inline-block;
    animation: hurueru .1s  infinite;
}

.buruburu02 {
    display: inline-block;
    animation: hurueru 1s  infinite;
}


.buruburu03 {
    display: inline-block;
    animation: hurueru03 1s  infinite;
}

/* ブルブル */
@keyframes hurueru {
    0% {transform: translate(0px, 0px) rotateZ(0deg)}
    25% {transform: translate(2px, 2px) rotateZ(1deg)}
    50% {transform: translate(0px, 2px) rotateZ(0deg)}
    75% {transform: translate(2px, 0px) rotateZ(-1deg)}
    100% {transform: translate(0px, 0px) rotateZ(0deg)}
}

@keyframes hurueru {
    0% {transform: translate(0px, 0px) rotateZ(0deg)}
    25% {transform: translate(6px, 6px) rotateZ(1deg)}
    50% {transform: translate(0px, 6px) rotateZ(0deg)}
    75% {transform: translate(6px, 0px) rotateZ(-1deg)}
    100% {transform: translate(0px, 0px) rotateZ(0deg)}
}

@keyframes hurueru03 {
    0% {transform: translate(0px, 0px) rotateZ(0deg)}
    25% {transform: translate(1px, 0px) rotateZ(0.5deg)}
    50% {transform: translate(0px, 1px) rotateZ(0deg)}
    75% {transform: translate(0px, 0px) rotateZ(-0.5deg)}
    100% {transform: translate(0px, 0px) rotateZ(0deg)}
}

.target {
	animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
  }
  @keyframes floating-x {
	0% {
	  transform: translateX(-5%);
	}
	100% {
	  transform: translateX(5%);
	}
  }
  @keyframes floating-y {
	0% {
	  transform: translateY(-10%);
	}
	100% {
	  transform: translateY(10%);
	}
  }

.hayakuchi {
	display: flex;
	overflow: hidden;
}

.hayakuchi .scroll-infinity__left {
	animation: infinity-scroll-left 15s infinite linear 0s both;
}

.scroll-infinity__item--text {
	/* width:1550px; */
	line-height: 2;
	font-size: 1.8rem;
	color: #222;
	white-space: nowrap;
}

.fast_talking p{
	font-size: 1.8rem;
	/* white-space: nowrap; */
}

.top_btm_company{
	position: relative;
	padding: 2rem 0;
	margin-top: 4.5rem;
}

.top_btm_company:after{
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	background: linear-gradient(to right, 
    rgba(255, 175, 185, 0.7), 
    rgba(213, 219, 178, 0.7), 
    rgba(183, 233, 172, 0.7));
	z-index: -1;
}

.top_btm_company h2{
	position: relative;
	z-index: 99;
	text-align: center;
}

/*　トップ 画像　一覧 */
.fast_talking_fig{
	position: static;
	z-index: -1;
}

.fast_talking_fig .wave{
	left: -25rem;
	top: 3.5rem;
	z-index: 3;
}
.fast_talking_fig .kuma{
	left: -16rem;
	top: -2.5rem;
	width: 130px;
	z-index: 4;
}

.ab_fig .cream{
	right: 0;
	bottom: 0;
	z-index: 16;
}

.ab_fig .star{
	bottom:15.5rem;
	right: .7rem;
	z-index: 31;
}

.ab_fig .cloud_l{
	left: -20rem;
	bottom: 10rem;
	z-index: 3;
}

.ab_fig .cloud_r{
	right: -14rem;
	top: -10rem;
	z-index: 15;
}


@media screen and (max-width: 999px){
	.top_btm_company h2{
		margin: 0 2rem;
	}

	.scroll-inf_wp{
		width: calc(100% - 4rem);
		padding-left: 8.5rem;
		box-sizing: border-box;
	}

	.fast_talking_fig .kuma{
		width: 6.2rem;
		left: 0;
		top: -1rem;
	}

	.ab_fig .cloud_r{
		width: 19rem;
		right: -2.5rem;
		top: -2.5rem;
	}

	.ab_fig .cloud_l{
		width: 32rem;
		left: -11.2rem;
		bottom: 2.5rem;
	}

	.scroll-inf{
		padding: 2rem 0.8rem;
		border-radius: 1.2rem;
	}

	.ab_fig .star{
		width: 5rem;
		bottom:3rem;
		right: -1.8rem;
	}

	.fast_talking_fig .wave{
		width: 14.5rem;
		left: -3.5rem;
		top: 0.5rem;
	}
}


@media screen and (max-width: 768px){
	.ab_fig .cream{
		width: 16rem;
		right: -2.5rem;
	}

	.top_btm{
		padding-top: 2rem;
	}

	.top_btm_company{
		margin-top: 2rem;
	}
}


/* ------------------------------
ニュース
------------------------------ */
.video-wrap {
    position: fixed;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
	z-index: -1;
}

.video-wrap video {
    /* position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%); */
    width: 100%;
    height: 100%;
	object-fit: cover;
}

.news{
	padding: 19.5rem 0 19rem;
}

.news h1{
	/* color: #fff; */
	margin-bottom: 10rem;
	text-align: right;
	font-weight: 900;
}

ul.news_cate{
	display: flex;
	gap: 0 1rem;
	margin: 10rem 0 4rem;
}

ul.news_cate li.current a{
	background: #FF4D93;
}

ul.news_cate li a{
	font-size: 1.4rem;
	font-weight: bold;
	color: #fff;
	padding:0.8rem 1.2rem 1rem;
	background: #47DE9F;
	display: block;
	text-decoration: none;
}

ul.news_list li{
	margin-bottom: 1rem;
}

ul.news_list li:last-child{
	margin-bottom: 0;
}

ul.news_list li a{
	display: block;
	padding: 5rem;
	background: linear-gradient(to right, rgba(79, 201, 70, 0.8), rgba(255, 189, 189, 0.8));
}

ul.news_list li.en_news a{
	background: linear-gradient(to right, rgba(88, 227, 219, 0.8), rgba(79, 201, 70, 0.8));
}

ul.news_list li p:after{
	content: "日";
}
ul.news_list li.en_news p:after{
	content: "E";
}
ul.news_list li.ch_news p:after{
	content: "繁";
}

ul.news_list li.ch_news a{
	background: linear-gradient(to right, rgba(103, 146, 235, 0.8), rgba(239, 236, 71, 0.8));
}

ul.news_list li.en_news a h2,
ul.news_list li.en_news a p{
	font-family: "sofia-pro",sans-serif;
}

ul.news_list li.ch_news a h2,
ul.news_list li.ch_news a p{
	font-family: "Noto Sans TC", sans-serif;
}

ul.news_list li h2,
ul.news_list li p{
	color: #fff;
}

ul.news_list li h2{
	font-size: 3rem;
	line-height: 1.45;
	font-weight: 900;
}

ul.news_list li p{
	font-size: 1.6rem;
	font-weight: 900;
	margin-top: 1rem;
}

@media screen and (max-width: 999px){
	.news{
		padding: 13rem 0;
	}

	.news h1{
		margin-bottom: 6rem;
		padding-right: 2rem;
	}

	ul.news_cate{
		margin: 6rem 0 3rem;
	}

	ul.news_list li a{
		padding: 3rem 2rem;
	}

	ul.news_list li h2{
		font-size: 2.3rem;
		line-height: 1.3;
		margin-bottom: 1rem;
	}
}


/* ページャー */
.program__paginationWrap {
    padding-top: 7rem;
}

.pagination {
    display: flex;
	justify-content: center;
    flex-wrap: wrap;
    gap: 1.5rem 1.5rem;
}

.page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 8rem;
    height: 8rem;
    border-radius: 50%;
    font-family: "sofia-pro",sans-serif; 
    font-size: 3rem;
    font-weight: 700;
    color: #000;
	font-style: italic;
    background-color: #EDEDED;
    transition: color .18s ease, background-color .2s ease;
}

.page-numbers.current,
.page-numbers:hover {
	color: #fff;
    background: url(../images/common/apple.png)no-repeat;
	background-size: cover;
}


@media screen and (max-width: 999px){
	.page-numbers{
		width: 6rem;
		height: 6rem;
		font-size: 2.5rem;
	}

	.program__paginationWrap{
		padding-top: 6.5rem;
	}

	.pagination{
		gap: 2rem;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
アバウト
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* タイトル */
.about_tit{
	max-width: 1050px;
	width: 90%;
	margin: 0 auto;
	position: relative;
	z-index: 8;
}

.about_tit h1{
	text-align: center;
	margin: 19rem 0 10rem;
}

.about_tit p{
	font-size: 3rem;
	line-height: 1.5;
	font-weight: bold;
}

.en_tit{
	margin: 3rem 0 1.2rem;
	padding-bottom: 2rem;
}

.en_tit::after{
	content: "";
	display: inline-block;
	width: 5rem;
	height: 0.8rem;
	background: #30FF92;
	margin-top: 2.5rem;
}

.en_tit h2{
	font-size: 3rem;
	margin-bottom: 1.2rem;
	font-weight: bold;
	font-family: "sofia-pro",sans-serif; 
}

.en_tit p{
	font-family: "sofia-pro",sans-serif;
	font-size: 1.5rem;
	line-height: 1.46;
	font-weight: bold;
}

.ch_tit h3{
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 1.2rem;
	font-family: "Noto Sans TC", sans-serif;
}

.ch_tit p{
	font-size: 1.5rem;
	line-height: 1.46;
	font-family: "Noto Sans TC", sans-serif;
}

@media screen and (max-width: 999px){
	.en_tit{
		margin: 2rem 0;
		padding-bottom: 0;
	}

	.en_tit h2{
		font-size: 2.3rem;
	}

	.ch_tit h3{
		font-size: 1.8rem;
	}
}

/* 業務内容 */
.about_business{
	background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(242,249,16,1) 55%);
	padding: 22rem 0 17rem;
	position: relative;
	width: 100vw;
	max-width: 100%;
}

.about_business_con{
	position: relative;
	z-index: 2;
}

.hona_fig .ho{
	top: -9rem;
	left: -5.5rem;
	width: 67rem;
	z-index: 1;
	animation: floating-y 10s ease-in-out infinite alternate-reverse;
}

.hona_fig .na{
	bottom: -32rem;
	right: -16.5rem;
	/* width: 72rem;
	z-index: 1; */
	animation: floating-x 10s ease-in-out infinite alternate-reverse;
}

.about_business_con{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.about_business_con li{
	width: calc(25% - 3rem);
}


/* hona */
.hona_fig .ho{
	top: -9rem;
	left: -5.5rem;
	width: 67rem;
	z-index: 1;
}
	
.hona_fig .na{
	bottom: -32rem;
	right: -165px;
	width: 72rem;
	z-index: 1;
}

@media screen and (max-width: 999px){
	.about_tit h1{
		margin: 13rem 0 6rem;
	}

	.about_business_con{
		gap: 4rem 2rem;
	}

	.kuma_wp{
		height: auto!important;
		padding-bottom: 9rem;
	}

	.about_business_con li{
		width: calc(50% - 1rem);
	}
}

@media screen and (max-width: 768px){
	.about_tit p{
		font-size: 2.3rem;
	}

	.about_business{
		padding: 18rem 0 15rem;
	}

	.hona_fig .ho{
		top: -5rem;
		left: auto;
		right: -6rem;
		width: 34rem;
		z-index: 1;
		animation: floating-y 10s ease-in-out infinite alternate-reverse;
	}
	
	.hona_fig .na{
		width: 36rem;
		bottom: -16rem;
		right: auto;
		left: -5.5rem;
		animation: floating-x 10s ease-in-out infinite alternate-reverse;
	}
}

.contact_btn_wp{
	background: url(../images/about/sky.jpg)no-repeat top center;
	padding-top: 35rem;
	background-size: 2000px;
	transition: .4s;
}

.night .contact_btn_wp{
	background: url(../images/about/night.jpg)no-repeat top center;
	background-size: 2000px;
	padding-top: 35rem;
}


.contact_btn_con{
	background: url(../images/about/ranch.png)no-repeat top center;
	background-size: cover;
	padding:13rem 0 14rem;
}

.work_btn{
	display: flex;
	justify-content: center;
	gap: 0 12rem;
}

.work_btn li a{
	gap: 0 2.5rem;
	display: flex;
	align-items: center;
	position: relative;
	text-decoration: none;
	padding-right: 7.2rem;
}

.work_btn li a::after{
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 40%;
	width: 5rem;
	height: 4rem;
	background: url(../images/common/btn_arrow.svg)no-repeat center center;
	background-size: 100%;
}

.work_btn li p{
	font-family: "sofia-pro",sans-serif;
	font-size: 6rem;
	color: #ffffff;
	font-weight: 900;
}

@media screen and (max-width: 999px){
	.work_btn{
		display: block;
	}

	.work_btn li{
		display: block;
		max-width: 100%;
	}

	.work_btn li:nth-child(1){
		margin-bottom: 1.5rem;
	}

	.work_btn li figure img{
		width: 6rem;
	}

	.work_btn li p{
		font-size: 4.5rem;
	}

	.work_btn li a::after{
		width: 3rem;
		height: 2.5rem;
	}

	.work_btn li a{
		justify-content: center;
		padding: 0;
		gap: 0 1.3rem;
	}

	.work_btn li a::after{
		position: relative;
	}
}

@media screen and (max-width: 768px){
	.contact_btn_wp{
		background: url(../images/about/sky_sp.jpg)no-repeat top center;
		background-size:800px;
		padding-top: 26rem;
	}	

	.night .contact_btn_wp{
		background: url(../images/about/night_sp.jpg)no-repeat top center;
		padding-top: 26rem;
		background-size:800px;
	}
}



/* 業務内容 */
.info{
	background: #30FF92;
	padding: 20rem 0 41rem;
	position: relative;
	overflow: hidden;
	z-index: 1;
	display: block;
}

.info .wrapper{
	display: flex;
	justify-content: space-between;
}

.info_r{
	max-width: 70rem;
	width: 100%;
	border-top: 1px solid #000;
	position: relative;
	z-index: 99;
}

.info .info_r dl{
	border-bottom: 1px solid #000;
	padding: 3rem 0;
}

.info .info_r dt,
.info .info_r dd{
	font-family: "sofia-pro",sans-serif; 
	color: #000;
	font-weight: bold;
}

.info .info_r dd a{
	color: #000;
	text-decoration: underline;
	transition: .3s;
}

.info .info_r dd a:hover{
	opacity: .8;
	text-decoration: none;
}

.info .info_r dt{
	font-size: 3rem;
	margin-bottom: 1.5rem;
}

.info .info_r dd{
	font-size: 1.8rem;
}

.info_btn{
	position: relative;
	width: 27rem;
	height: 27rem;
	margin-right: 0;
	margin-left: auto;
	margin-top: 9rem;
}

.contact_star{
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(../images/info/contact_star.svg)no-repeat center;
	background-size: 100%;
	background-size: cover; 
  	animation: rotateBackground 5s linear infinite; 
}

.info_btn a{
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 9;
}

.info_btn a img{
	position: absolute;
	width: 15rem;
	top: 50%;
	left: 50%;
	margin-right: -50%;
	transform: translate(-50%, -50%)
}

@keyframes rotateBackground {
	0% {
	  transform: rotate(0deg);
	}
	100% {
	  transform: rotate(360deg);
	}
}

/* 動きアニメーション */
.info .negi{
	position: absolute;
	bottom: -4.5rem;
	left: -1.5rem;
	z-index: 1;
}

.info .negi a{
	display: block;
}

.info .splash{
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
.info .wave{
	position: absolute;
	top: -25px;
	left: -200px;
	z-index: 1;
}


@media screen and (max-width: 999px){
	.info .wrapper{
		display: block;
	}

	.info .info_r dl{
		padding: 2rem 0;
	}

	.info .info_r dt{
		font-size: 2.3rem;
		margin-bottom: 1rem;
	}
	
	.info .info_r dd{
		font-size: 1.6rem;
		line-height: 1.5;
	}

	.info_r{
		margin: 6rem 0 0;
		max-width: 100%;
	}

	.info{
		padding: 13rem 0 23rem;
	}

	.negi{
		width: 16rem;
	}

	.info_btn {
		width: 15rem;
		height: 15rem;
		margin-top: 4.5rem;
	}

	.info_btn a img{
		width: 9.2rem;
	}
	

	.info .splash{
		max-width: 50%;
	}
}


@media screen and (max-width: 480px){
	.info .negi{
		z-index: 99;
	}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝

お問い合わせ 

＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.contact{
	position: relative;
	padding: 13rem 0 5.5rem;
	box-sizing: border-box;
	min-height: 100vh;
}

.contact table{
	width: 100%;
	border-collapse: collapse;
	border-bottom: solid 1px #000;
}

.contact_fig{
	position: absolute;
	width: 47rem;
	top: 2rem;
	left: 2rem;
}

.contact table th{
	min-width: 20rem;
	vertical-align: top;
	text-align: left;
	font-weight: bold;
}

.contact table td{
	width: 100%;
}

.contact table tr{
	border-top: solid 1px #000;
    padding: 2rem 0 2.2rem;
	display: block;
}

.contact table th,
.contact table td{
	font-size: 1.6rem;
    font-weight: 700;
	line-height: 1.5;
}

.contact table td input,
.contact table td textarea{
	width: 100%;
	box-sizing: border-box;
	font-size: 1.6rem;
	border: none;
	line-height: 1.5;
	color: #000;
	font-weight: normal;
}

.contact .contact_r{
	max-width: 54rem;
	width: 100%;
	margin-right: 0;
	margin-left: auto;
}

.contact .contact_r button{
	text-align: center;
	width: 16rem;
	display: block;
	margin: 0 auto;
	cursor: pointer;
}

.contact .contact_r button.submitButton.disabled{
    cursor: unset;
    opacity: .6;
}

.contact_top{
	margin-top: 2rem!important;
}

.contact .contact_r button.submitButton{
    opacity: 1;
}

.contact .contact_r h1{
	font-size: 5rem;
	margin-bottom: 5.8rem;
}

.contact table th.req:after{
	display: inline-block;
	content: "*Required";
	color: #EE0000;
	margin-left: 0.2em;
}

::placeholder{
  color: #000;
  font-weight: bold;
  font-size: 1.6rem;
}

@media screen and (max-width: 999px){
	.contact{
		padding: 22rem 0 13rem;
	}

	.contact_fig{
		max-width: calc(100% - 4rem);
		left: 1rem;
		top: 0.8rem;
	}

    .contact .contact_r{
		width: 100%;
		max-width: 100%;
	}

    .contact .contact_r h1{
        font-size: 4.5rem;
        margin-bottom: 3.6rem;
    }

    .contact table tr {
        padding: 1.5rem 0;
    }
}


@media screen and (max-width: 768px){
	.contact table th, .contact table td{
		display: block;
	}

	.contact table td{
		margin-top: 0.5em;
	}
}


/* confirm ページ */
.contact.confirm .contact_r > p{
    margin-bottom: 5rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
}

.contact.confirm .contact_r .buttons{
    display: flex;
    align-items: start;
	position: relative;
    gap: 13rem;
    margin-top: 2rem;
}

.contact.confirm .contact_r .buttons button.returnButton {
    display: inline-block;
    width: auto;
    margin: 1rem 0 0;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
	position: absolute;
	padding: 0;
	left: 0;
	top: 0;
}

.contact.confirm .contact_r .buttons button.submitButton {
    display: inline-block;
    margin: 0 auto;
}


@media screen and (max-width: 999px){
    .contact.confirm .contact_r > p{
        margin-bottom: 3.8rem;
    }
}
/* confirm ページ　ここまで */


/* thanks ページ */
.contact.thanks .contact_r p{
    padding: 3.8rem 0 4.9rem;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
}

.contact.thanks .contact_r a{
    display: inline-block;
    margin-top: 4.3rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
    color: #000;
}

@media screen and (max-width: 999px){
    .contact.thanks .contact_r p{
        padding: 3.2rem 0 4rem;
    }

    .contact.thanks .contact_r a{
        margin-top: 2.7rem;
    }
}
/* thanks ページ　ここまで */


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

	お知らせ　シングルページ

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.news_single{
	min-height: 100vh;
}

.single_head p{
	font-size: 1.6rem;
	margin-bottom: 3rem;
	font-weight: 900;
}

.single_head p:after{
	content: "日";
}


.en .single_head p:after{
	content: "E";
}

.ch .single_head p:after{
	content: "繁";
}

.single_head h1{
	font-size: 3.3rem;
	border-bottom: 5px solid #47DE9F;
	padding: 0 0 3rem;
	margin-bottom: 3rem;
	box-sizing: border-box;
	font-weight: 900;
}

.news_single_con{
	background: #fff;
	max-width: 1080px;
	width: 90%;
	margin: 0 auto;
	height: 80vh;
	overflow-x: scroll;
	position: fixed;
	top: 10vh;
	left: 0;
	right: 0;
}

.news_single .signle_inr{
	margin-bottom: 0;
}

.news_single_con h1{
	line-height: 1.55;
}

.signle_inr{
	width: 90%;
	max-width: 80rem;
	margin: 0 auto;
	padding: 11rem 0 12.5rem;
}


/* シングル配色　デフォ */
.single_head h1,
.single_head p,
.mbtk-block-editor p,
.mbtk-block-editor h1, 
.mbtk-block-editor h2, 
.mbtk-block-editor h3, 
.mbtk-block-editor h4, 
.mbtk-block-editor h5, 
.mbtk-block-editor h6,
.mbtk-block-editor p > a, 
.mbtk-block-editor li > a, 
.mbtk-block-editor blockquote > a, 
.mbtk-block-editor cite > a, 
.mbtk-block-editor td > a, figcaption > a,
.mbtk-block-editor ul li,
.mbtk-block-editor ol li,
.mbtk-block-editor ol li::before,
.mbtk-block-editor table tbody tr td,
.mbtk-block-editor table tbody tr th{
	color: #47DE9F;
}

.mbtk-block-editor hr{
	border-bottom: 1px solid #47DE9F;
}

/* シングル配色　デフォ */
.en .single_head h1,
.en .single_head p,
.en .mbtk-block-editor p,
.en .mbtk-block-editor h1, 
.en .mbtk-block-editor h2, 
.en .mbtk-block-editor h3, 
.en .mbtk-block-editor h4, 
.en .mbtk-block-editor h5, 
.en .mbtk-block-editor h6,
.en .mbtk-block-editor p > a, 
.en .mbtk-block-editor li > a, 
.en .mbtk-block-editor blockquote > a, 
.en .mbtk-block-editor cite > a, 
.en .mbtk-block-editor td > a, figcaption > a,
.en .mbtk-block-editor ul li,
.en .mbtk-block-editor ol li,
.en .mbtk-block-editor ol li::before,
.en .mbtk-block-editor table tbody tr td,
.en .mbtk-block-editor table tbody tr th{
	color: #FC9266;
	font-family: "sofia-pro",sans-serif;
}
.en .single_head h1 {
	border-color: #FC9266;
}

.en .mbtk-block-editor hr{
	border-bottom: 1px solid #FC9266;
}


/* シングル配色　デフォ */
.ch .single_head h1,
.ch .single_head p,
.ch .mbtk-block-editor p,
.ch .mbtk-block-editor h1, 
.ch .mbtk-block-editor h2, 
.ch .mbtk-block-editor h3, 
.ch .mbtk-block-editor h4, 
.ch .mbtk-block-editor h5, 
.ch .mbtk-block-editor h6,
.ch .mbtk-block-editor p > a, 
.ch .mbtk-block-editor li > a, 
.ch .mbtk-block-editor blockquote > a, 
.ch .mbtk-block-editor cite > a, 
.ch .mbtk-block-editor td > a, figcaption > a,
.ch .mbtk-block-editor ul li,
.ch .mbtk-block-editor ol li,
.ch .mbtk-block-editor ol li::before,
.ch .mbtk-block-editor table tbody tr td,
.ch .mbtk-block-editor table tbody tr th{
	color: #30C6DD;
	font-family: "Noto Sans TC", sans-serif;
}

.ch .single_head h1 {
	border-color: #30C6DD;
}


.ch .mbtk-block-editor hr{
	border-bottom: 1px solid #30C6DD;
}

.mbtk-block-editor ul, .mbtk-block-editor ol{
	padding-top: 0;
}



.mbtk-block-editor table tbody th {
    padding: var(--mbtk--th_td-padding);
    text-align: left;
    font-size: var(--mbtk--text-base-fz);
    font-weight: 700;
    line-height: var(--mbtk--text-base-lh);
    color: #47DE9F;
}
.mbtk-block-editor table tbody tr:first-child th {
    border-top: var(--mbtk--table-border-width) solid #47DE9F;
    border-bottom: var(--mbtk--table-border-width) solid #47DE9F;
}
.mbtk-block-editor table tbody tr:first-child td {
    border-top: var(--mbtk--table-border-width) solid #47DE9F;
    border-bottom: var(--mbtk--table-border-width) solid #47DE9F;
}
.mbtk-block-editor table tbody tr:not(:first-child) th {
    border-bottom: var(--mbtk--table-border-width) solid #47DE9F;
}
.mbtk-block-editor table tbody tr:not(:first-child) td {
    border-bottom: var(--mbtk--table-border-width) solid #47DE9F;
}

.mbtk-block-editor a.wp-block-button__link:hover {
    color: #FFF;
    background-color: #47DE9F;
}


/* 英語 */
.en .mbtk-block-editor table tbody th {
    padding: var(--mbtk--th_td-padding);
    text-align: left;
    font-size: var(--mbtk--text-base-fz);
    font-weight: 700;
    line-height: var(--mbtk--text-base-lh);
    color: #FC9266;
}
.en .mbtk-block-editor table tbody tr:first-child th {
    border-top: var(--mbtk--table-border-width) solid #FC9266;
    border-bottom: var(--mbtk--table-border-width) solid #FC9266;
}
.en .mbtk-block-editor table tbody tr:first-child td {
    border-top: var(--mbtk--table-border-width) solid #FC9266;
    border-bottom: var(--mbtk--table-border-width) solid #FC9266;
}
.en .mbtk-block-editor table tbody tr:not(:first-child) th {
    border-bottom: var(--mbtk--table-border-width) solid #FC9266;
}
.en .mbtk-block-editor table tbody tr:not(:first-child) td {
    border-bottom: var(--mbtk--table-border-width) solid #FC9266;
}

.en .mbtk-block-editor a.wp-block-button__link:hover {
    color: #FFF;
    background-color: #FC9266;
}

/* 中国語 */
.ch .mbtk-block-editor table tbody th {
    padding: var(--mbtk--th_td-padding);
    text-align: left;
    font-size: var(--mbtk--text-base-fz);
    font-weight: 700;
    line-height: var(--mbtk--text-base-lh);
    color: #30C6DD;
}
.ch .mbtk-block-editor table tbody tr:first-child th {
    border-top: var(--mbtk--table-border-width) solid #30C6DD;
    border-bottom: var(--mbtk--table-border-width) solid #30C6DD;
}
.ch .mbtk-block-editor table tbody tr:first-child td {
    border-top: var(--mbtk--table-border-width) solid #30C6DD;
    border-bottom: var(--mbtk--table-border-width) solid #30C6DD;
}
.ch .mbtk-block-editor table tbody tr:not(:first-child) th {
    border-bottom: var(--mbtk--table-border-width) solid #30C6DD;
}
.ch .mbtk-block-editor table tbody tr:not(:first-child) td {
    border-bottom: var(--mbtk--table-border-width) solid #30C6DD;
}

.ch .mbtk-block-editor a.wp-block-button__link:hover {
    color: #FFF;
    background-color: #30C6DD;
}



.single_btn{
	font-size: 3.3rem;
	width: 100%;
	display: block;
	margin-top: 6rem;
}

.single_btn a{
	display: block;
	background: #000;
	color: #fff;
	width: 100%;
	line-height: 1;
	text-align: center;
	padding: 2rem 0;
	font-weight: 900;
}

.single_btn a:before{
	display: inline-block;
	content: "";
	width: 3rem;
	height: 2.5rem;
	background: url(../images/single/arw.png)no-repeat center;
	margin-right: 15px;
	background-size: contain;
}

.mbtk-block-editor ol li::before{
	top: 0!important;
}

.mbtk-block-editor ul li::before{
	top: 0.5em;
}

@media screen and (max-width: 999px){
	.single_head h1{
		font-size: 2.6rem;
		border-bottom: 5px solid;
		padding: 0 0 3rem;
		margin-bottom: 3rem;
		box-sizing: border-box;
	}

	.signle_inr{
		padding: 6rem 0 7rem;
	}

	.single_btn a{
		font-size: 2rem;
	}
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ 
	
WORK

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.work{
    background: url(../images/common/grid_bg.svg);
    background-size: 40px;
	font-weight: 900;
    position: relative;
    width: 100%;
	padding: 19rem 0 21rem;
	overflow: hidden;
}

.work h1{
	text-align: center;
	margin-bottom: 10rem;
}

.work_cate{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
	margin-bottom: 6rem;
}

.work_cate li a{
	background: #47DE9F;
	color: #fff;
	font-weight: bold;
	font-size: 1.5rem;
	padding: 1rem;
	display: block;
	font-family: "sofia-pro",sans-serif;
	transition: .3s;
}

.work_cate li a:hover{
	background: #FF4D93;
}

.work_cate li.current a{
	background: #FF4D93;
}

.work_cate li.active a{
	background: #FF4D93;
}


.work_list{
	display: flex;
	flex-wrap: wrap;
	gap: 6rem 4rem;
	position: relative;
	z-index: 2;
}

.work_list li{
	width: calc(25% - 3rem);
	cursor: pointer;
}

.work_list li a{
	transition: .3s;
}

.work_list li figure{
	position: relative;
}

.work_list li figure:after{
	content: "";
	display: block;
	position: absolute;
	right: 5px;
	bottom: 5px;
	width: 3rem;
	height: 3rem;
	background: url(../images/work/pinch.svg)no-repeat center;
	opacity: 0;
	transition: .3s;
}

.work_list li a figure img{
	transition: .3s;
}

.work_list li a:hover figure img{
	filter:grayscale(100%);
}

.work_list li a:hover figure::after{
	opacity: 1;
}

.work_list li a h2{
	font-size: 1.4rem;
	line-height: 1.77;
	font-weight: 500;
	margin:1.5rem 0 0.5rem;
}

.work_list li a p{
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 2;
	color: #555555;
}

.work .program__paginationWrap{
	padding-top: 15rem;
}



@media screen and (max-width: 999px){
	.single_btn a:before{
		width: 2rem;
		height: 1.5rem;
		margin-right: 10px;
	}

	.single_btn{
		margin-top: 4rem;
	}

	.work{
		padding: 13rem 0 20rem;
	}

	.work h1{
		margin-bottom: 6rem;
	}

	.work_cate{
		justify-content: left;
		margin-bottom: 3rem;
	}

	.work_list{
		gap: 3.5rem 2rem;
	}

	.work_list li{
		width: calc(50% - 1rem);
	}

	.work .program__paginationWrap{
		padding-top: 5.5rem;
	}
}

/* 404 */
.notfound{
	height: 100%;
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
}

.notfound_tit{
	text-align: center;
}

.notfound_tit h1{
	font-size: 30rem;
	color: #30FF92;
	font-weight: 900;
}

.notfound_tit p{
	font-size: 10rem;
	color: #30FF92;
	font-weight: 900;
}

.back_btn a{
	color: #fff;
	font-weight: 900;
	background: #000;
	font-size: 3.3rem;
	display: inline-block;
	line-height: 1;
	padding: 1.8rem 0;
	width: 28rem;
	margin-top: 8rem;
	position: relative;
}

.back_btn a::after {
    content: "";
    display: block;
    position: absolute;
    right: 5%;
    top: 35%;
    width: 3rem;
    height: 2.5rem;
    background: url(../images/common/btn_arrow.svg) no-repeat center center;
    background-size: 100%;
}

@media screen and (max-width: 999px){
	.notfound_tit h1{
		font-size: 15rem;
	}

	.notfound_tit p{
		font-size: 5rem;
	}

	.back_btn a{
		font-size: 2rem;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 24rem;
		margin: 6rem auto 0;
		text-align: center;
	}

	.back_btn a::after{
		position: static;
		width: 2rem;
		height: 1.5rem;
		margin-left: 1rem;
	}
}

/*
	フッター
*/
.copy{
	position: absolute;
	right: 1.2rem;
	bottom: 1.5rem;
	z-index: 1;
}

.copy small{
	font-size: 0.9rem;
}

/* modal */
.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99999;
	left: 0;
}
.modal__bg{
    opacity: 0;
    background: rgba(48,255,146,0.8);
    height: 100vh;
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    z-index: -1;
    transition: .3s;
}

body.modal-open .modal__bg{
    opacity: 1;
    z-index: 1;
}

body.modal-open header{
    z-index: 0;
}

.modal__content{
    left: 50%;
    position: absolute;
	width: 100%;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 99;
}


.modal__content h3{
	text-align: center;
	font-size: 1.6rem;
	margin-top: 4rem;
	line-height: 1.625;
}

.modal__content_inr{
    position: relative;
    padding: 3rem 9rem;
    max-width: 920px;
	width: 90%;
	margin: 0 auto;
	background: #fff;
	border-radius: 3rem;
}

.modal_slide{
	width: 960px;
}

.modal_slide img{
	max-height: 60vh;
	object-fit: contain;
	margin: 0 auto;
}

.m_c_btn{
    position: absolute;
    right: 4rem;
    top: 4rem;
    transition: .3s;
	z-index: 999;
	width: 65px;
	cursor: pointer;
}

.m_c_btn:hover{
    opacity: 0.8;
}

body.modal-open {
    position: fixed;
    width: 100%;
    height: 100%;
}

.modal_unreg_con{
    position: relative;
    width: 900px;
}

.modal_unreg_flex{
    display: flex;
}

.modal_slide .slide-arrow{
	position: absolute;
    width: 8.5rem;
    bottom: calc(50% - 30px);
	z-index: 9;
	cursor: pointer;
	transition: .3s;
}

.modal_slide .slide-arrow:hover{
	opacity: .7;
}

.modal_slide .slide-arrow.prev-arrow{
    left: -20rem;
}

.modal_slide .slide-arrow.next-arrow{
    right: -20rem;
}

.modal_slide.slick-dotted.slick-slider{
    margin-bottom: 0;
    padding-bottom: 50px;
}

.modal_slide .slick-dots{
    bottom: 20px;
}

.slick-slide{
	padding: 0 2rem;
	box-sizing: border-box;
}

@media screen and (max-width: 1040px){
    .modal_slide{
        width: 100%;
    }

	.modal_slide img{
		max-height: 40vh;
		margin: 0 auto;
	}

    .m_c_btn {
        position: absolute;
        right: 3rem;
        top: 3rem;
        width: 6.5rem;
        transition: .3s;
    }

    .modal__content{
        width: 100%;
    }

    .modal_fig_list{
        padding: 0 20px;
    }

    .mordal_text_wp{
        padding: 0 20px;
    }

    .modal__content_inr{
        padding: 5.5rem 0 4.5rem;  
		margin-top: 13rem;
    }

    .modal__content{
        height: 100vh;
        top: 0;
        left: 0;
        transform: translate(0);
    }
    
    .modal_slide .slide-arrow{
        width: 40px;        
    }

	.modal_slide .slide-arrow.prev-arrow{
		left: -2rem;
	}
	
	.modal_slide .slide-arrow.next-arrow{
		right: -2rem;
	}

	.modal__content h3{
		margin: 2rem auto 0;
		width: 90%;
	}

	.modal_slide .slide-arrow{
		bottom: calc(50% - 15px);
	}
	

}
