@charset "utf-8";

header{
	/*background: #ccc;*/
}

.head .logo .image{
	max-width: 16rem;
	margin-right: 1rem;
}

.head .logo .image img{
	width: 100%;
}

.head .logo h1{

}

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

	.head .logo .image{
		max-width: 12rem;
	}

	.head .logo {
		margin-left: 1rem;
	}

}

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

/* スマートフォン　グローバルナビ */

.hamburger{
	display: none;
}

.black-bg{
	display: none;
}

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

	.hamburger{
		display: block;
	}

	.black-bg{
		display: block;
	}

	.global-nav {
		position: fixed;
		right: -320px; /* これで隠れる */
		top: 0;
		width: 30rem; /* スマホに収まるくらい */
		height: 100vh;
		padding-top: 40px;
		background: #222;
		transition: all .6s;
		z-index: 200;
		overflow-y: auto; /* メニューが多くなったらスクロールできるように */
		
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		
	}
	.hamburger {
		position: fixed;
		right: 2rem;
		top: 2rem;
		width: 40px; /* クリックしやすいようにちゃんと幅を指定する */
		height: 40px; /* クリックしやすいようにちゃんと高さを指定する */
		cursor: pointer;
		z-index: 300;
		background: #222;
	}
	.global-nav__list {
		margin-top: 5rem;

		padding: 0;
		list-style: none;
	}
	.global-nav__item {
		text-align: center;
		padding: 0 14px;
	}
	.global-nav__item a {
		display: block;
		padding: 8px 0;
		border-bottom: 1px solid #eee;
		text-decoration: none;
		color: #111;
	}
	.global-nav__item a:hover {
		background-color: #eee;
	}
	.hamburger__line {
		position: absolute;
		left: 11px;
		width: 18px;
		height: 2px;
		background-color: #fff;
		transition: all .6s;
	}
	.hamburger__line--1 {
		top: 14px;
	}
	.hamburger__line--2 {
		top: 20px;
	}
	.hamburger__line--3 {
		top: 26px;
	}
	.black-bg {
		position: fixed;
		left: 0;
		top: 0;
		width: 100vw;
		height: 100vh;
		z-index: 100;
		background-color: #000;
		opacity: 0;
		visibility: hidden;
		transition: all .6s;
		cursor: pointer;
	}

	/* 表示された時用のCSS */
	.nav-open .global-nav {
		right: -3rem;
		
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		padding-left: 0;
	}
	.nav-open .black-bg {
		opacity: .8;
		visibility: visible;
	}
	.nav-open .hamburger__line--1 {
		transform: rotate(45deg);
		top: 20px;
	}
	.nav-open .hamburger__line--2 {
		width: 0;
		left: 50%;
	}
	.nav-open .hamburger__line--3 {
		transform: rotate(-45deg);
		top: 20px;
	}

}

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

	.global-nav__list {
		margin-top: 2rem;
	}

	.nav li a {
		padding-top: 0.8rem;
		padding-bottom: 0.8rem;
	}

}

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

#vegas {
	width: 100vw;
	height: 100vh;
	margin-bottom: 12rem;
}

#vegas .text_box{
	display: flex;
	width: 100%;
	height: 100vh;
	align-items: center;
}

#vegas .text_box .catch{
	width: 40rem;
	margin-left: 10rem;
}

#vegas .text_box .catch .english{
	color: #fff;
	font-size: 2.4rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	text-align: center;
}

#vegas .text_box .catch hr{
	width: 100%;
	height: 0.3rem;
	background: #fff;
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}

#vegas .text_box .catch h3{
	font-size: 10rem;
	font-weight: normal;
	color: #fff;
	margin-bottom: 2rem;
	
	font-family: 'Zen Antique', serif;
}

#vegas .text_box .catch div{
	font-size: 2.4rem;
	font-weight: 600;
	color: #fff;
	text-align: center;
}

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

	#vegas {
		height: 90vh;
	}

	#vegas .text_box{
		height: 90vh;
	}

	#vegas .text_box .catch {
		margin-left: 6rem;
	}

	#vegas .text_box .catch .english {

	}

}

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

	#vegas {
		height: 100%;
	}

	#vegas .text_box{
		height: 100%;
	}

	#vegas_sp {
		width: 100vw;
		height: 90vh;
		
		margin-bottom: 6rem;
	}
	
	.vegas-content{
		overflow: scroll !important;
		-webkit-overflow-scrolling:touch;
	}

	#vegas_sp .text_box{
		display: flex;
		width: 100%;
		height: 90vh;
		
		align-items: center;
	}

	#vegas_sp .text_box .catch {
		width: 70%;
		margin-left: auto;
		margin-right: auto;
	}

	#vegas_sp .text_box .catch h3{
		font-size: 5rem;
		text-align: center;

		font-weight: normal;
		color: #fff;
		margin-bottom: 2rem;
		
		font-family: 'Zen Antique', serif;
	}

	#vegas_sp .text_box .catch .english {
		font-size: 1.8rem;
		color: #fff;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 600;
		text-align: center;
	}

	#vegas_sp .text_box .catch hr{
		width: 100%;
		height: 0.3rem;
		background: #fff;
		margin-top: 1.5rem;
		margin-bottom: 1.5rem;
	}

	#vegas_sp .text_box .catch div {
		font-size: 1.6rem;
		font-weight: 600;
		color: #fff;
		text-align: center;
	}

}

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

/*========= スクロールダウンのためのCSS ===============*/

/*=== 9-1-2 丸が動いてスクロールを促す ====*/

/*スクロールダウン全体の場所*/
.scrolldown2{
	/*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:10px;
	left:50%;
}

/*Scrollテキストの描写*/
.scrolldown2 span{
	/*描画位置*/
	position: absolute;
	left:10px;
	bottom:10px;
	/*テキストの形状*/
	color: #eee;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	/*縦書き設定*/
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
}

/* 丸の描写 */
.scrolldown2:before {
	content: "";
	/*描画位置*/
	position: absolute;
	bottom:0;
	left:-4px;
	/*丸の形状*/
	width:10px;
	height:10px;
	border-radius: 50%;
	background:#eee;
	/*丸の動き1.6秒かけて透過し、永遠にループ*/
	animation:
	circlemove 1.6s ease-in-out infinite,
	cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
	0%{bottom:45px;}
	100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
	0%{opacity:0}
	50%{opacity:1;}
	80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown2:after{
	content:"";
	/*描画位置*/
	position: absolute;
	bottom:0;
	left:0;
	/*線の形状*/
	width:2px;
	height: 50px;
	background:#eee;
}

#top_sp{
	position:absolute;
	bottom: 4rem;
}


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

h3.general_title{
	font-size: 5rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:100;
	line-height: 0.7;
	margin-bottom: 6rem;
}

h3.general_title.white{
	color: #fff;
}

h3.general_title small{
	font-size: 1.8rem;
}

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

	h3.general_title{
		font-size: 4rem;
		margin-bottom: 4rem;
	}

	h3.general_title small{
		font-size: 1.4rem;
	}

}

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

div.max1400{
	max-width: 140rem;
	margin-left: auto;
	margin-right: auto;
}

div.max_full{

}

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

	div.max1400{
		padding-left: 3rem;
		padding-right: 3rem;
		overflow: hidden;
	}

}

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

.top_about{
	margin-bottom: 11rem;
}

.top_about .top_about_area{
	display: flex;
	align-items: center;
}

.top_about .top_about_area .text{
	margin-right: 6rem;
}

.top_about .top_about_area .text .english{
	font-size: 5.5rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:100;
	margin-bottom: 5rem;
	line-height: 1.2;
}

.top_about .top_about_area .text h4{
	font-size: 3.5rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 300;
	margin-bottom: 5rem;
}

.top_about .top_about_area .text p{
	/*max-width: 42.5rem;*/
	max-width: 52rem;
}

.top_about .top_about_area .image {
	margin-right: -9rem;
}

.top_about .top_about_area .image img{
}


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

	.top_about .top_about_area {
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}

	.top_about .top_about_area .image {
		width: 80%;
		margin-right: 0rem;
		margin-bottom: 4rem;
	}

}

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

	.top_about{
		margin-bottom: 6rem;
	}

	.top_about .top_about_area .text {
		margin-right: 0;
	}

	.top_about .top_about_area .text p {
		font-size: 1.4rem;
	}

	.top_about .top_about_area .text .english {
		font-size: 3rem;
		margin-bottom: 3rem;
	}

	.top_about .top_about_area .text h4 {
		font-size: 2.5rem;
		margin-bottom: 3rem;
		line-height: 1.5;
		font-feature-settings: "palt";
	}
	
	.top_about .top_about_area .image {
		width: 90%;
		margin-bottom: 2rem;
	}

}

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

.image{

}

.image img{
	max-width: max-content;
	width: 100%;
}

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

.top_about.support{
	background-image: url(../img/top_about_support.jpg);
	background-attachment: fixed;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;	
	
	padding-top: 9rem;
	padding-bottom: 9rem;
}

.top_about.support .top_about_area{
	display: flex;
	justify-content: flex-end;
}

.top_about.support .top_about_area .text{
	background: #000;
	padding: 6rem;
	color: #fff;
}



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

	.top_about.support {
		background-attachment: inherit;
	}

}

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

	.top_about.support .top_about_area .text{
		margin-right: 0;
		background: rgba(0,0,0,.8);
	}

}

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

	.top_about.support .top_about_area .text {
		padding: 3rem;
	}

	.top_about.support{
		background-image: url(../img/top_about_support_sp.jpg);
		background-attachment: inherit;
		background-size: cover;
		
		padding-top: 6rem;
		padding-bottom: 6rem;
	}


}

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

.top_movie{
	background-image: url(../img/top_movie.jpg);
	background-attachment: fixed;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;	
	
	padding-top: 9rem;
	padding-bottom: 9rem;
	margin-bottom: 11rem;
}

.top_movie .top_movie_area{
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.top_movie .top_movie_area iframe{
	border: 2rem solid #fff;
	max-width: 88rem;
	max-height: 50rem;
	
	width: 100%;
	height: 50rem;
}

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

	.top_movie .top_movie_area iframe{
		max-height: 40rem;
	}

}

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

	.top_movie{
		background-image: url(../img/top_movie_sp.jpg);
		background-attachment: inherit;

		padding-top: 6rem;
		padding-bottom: 6rem;
		margin-bottom: 8rem;
	}

	.top_movie .top_movie_area iframe{
		border: 0rem solid #fff;
		max-height: 20rem;
	}

}

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

.top_service{
	margin-bottom: 11rem;
}

.top_service_list{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}

.top_service_list li{
	width: 50%;
	background: #ddd;
	display: flex;
	
	background-size: cover;
	
	height: 24vw;
}

.top_service_list li:nth-child(1){ background-image: url(../img/top_service_list01.jpg); background-position: top left; }
.top_service_list li:nth-child(2){ background-image: url(../img/top_service_list02.jpg); background-position: top right; }
.top_service_list li:nth-child(3){ background-image: url(../img/top_service_list03.jpg); background-position: bottom left; }
.top_service_list li:nth-child(4){ background-image: url(../img/top_service_list04.jpg); background-position: bottom right; }


.top_service_list li a{
	display: flex;
	color: #fff;
}

.top_service_list li a:hover{
	text-decoration: none;
}

.top_service_list li a .text{
	max-width: 45rem;
	min-width: 27vw;
	background: #aaa;
	height: 100%;
	padding: 2.5rem 3.5rem;
	
	position: relative;
}

.top_service_list li a .text::after{
	position: absolute;

	border-right: 2rem solid #fff;
	content: "";
	bottom: 1rem;
	right: 1rem;
	border-top: 2rem solid transparent;
	position: absolute;
	z-index: 2;
	transition: .3s;
}

.top_service_list li a .text:hover::after{
	border-right: 6rem solid #fff;
	border-top: 6rem solid transparent;
	opacity: 0.6;
}

.top_service_list li a .text{
	transition: .3s;
}

.top_service_list li:nth-child(1) a .text{ background: rgba(78,153,192,.6); }
.top_service_list li:nth-child(2) a .text{ background: rgba(192,78,161,.6); }
.top_service_list li:nth-child(3) a .text{ background: rgba(192,134,78,.6); }
.top_service_list li:nth-child(4) a .text{ background: rgba(91,192,78,.6); }

.top_service_list li:nth-child(1) a .text:hover{ background: rgba(78,153,192,.9); }
.top_service_list li:nth-child(2) a .text:hover{ background: rgba(192,78,161,.9); }
.top_service_list li:nth-child(3) a .text:hover{ background: rgba(192,134,78,.9); }
.top_service_list li:nth-child(4) a .text:hover{ background: rgba(91,192,78,.9); }


.top_service_list li a .text .title{
	display: flex;
	align-items: center;
	
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 100;
	margin-bottom: 3rem;
}

.top_service_list li a .text .title .number{
	font-size: 10rem;
	line-height: 1;
	margin-right: 2rem;
}

.top_service_list li a .text .title .english{
	font-size: 3.8rem;
	line-height: 1.2;
}

.top_service_list li a .text h4{
	font-size: 2rem;
	margin-bottom: 1.5rem;
}

.top_service_list li a .text p{
	font-size: 1.6rem;
}

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

	.top_service_list li a .text {
		min-width: 30vw;
		padding: 2rem 3rem;
	}

	.top_service_list li a .text .title .number {
		font-size: 6rem;
	}

	.top_service_list li a .text .title .english {
		font-size: 2.5rem;
	}

	.top_service_list li a .text p {
		font-size: 1.4rem;
	}

}

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

	.top_service_list li {
		height: 28vw;
	}

	.top_service_list li a .text {
		min-width: 100%;
		display: flex;
		flex-wrap: wrap;
	}

	.top_service_list li a .text h4 {
		width: 100%;
	}

}

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


	.top_service{
		margin-bottom: 8rem;
	}

	.top_service_list li {
		width: 100%;
		height: 60vw;
	}

	.top_service_list li a .text .title {
		margin-bottom: 1rem;
	}

	.top_service_list li a .text h4 {
		margin-bottom: 0rem;
	}

	.top_service_list li a .text p {
		width: 100%;
	}

}

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

.top_news{
	margin-bottom: 16rem;
}

.top_news_list{
	display: flex;
	justify-content: space-between;
	margin-bottom: 8rem;
}

.top_news_list li{
	margin-left: 1rem;
	margin-right: 1rem;
}

.top_news_list li:nth-child(1){
	margin-left: 0rem;
}

.top_news_list li:nth-child(2){
	margin-right: 0rem;
}

.top_news_list li .image{
	margin-bottom: 1.5rem;
}

.top_news_list li .text{

}

.top_news_list li .text div{
	font-size: 1.2rem;
	margin-bottom: 0.5rem;
}

.top_news_list li .text p{
	font-size: 1.4rem;
	line-height: 1.5;
}

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

	.top_news{
		margin-bottom: 6rem;
	}

	.top_news_list {
		flex-wrap: wrap;
		margin-bottom: 4rem;
	}

	.top_news_list li {
		width: 100%;
		margin-left: 0rem;
		margin-right: 0rem;
		display: flex;
		align-items: center;

		padding-bottom: 1rem;
		margin-bottom: 1rem;
		border-bottom: 0.1rem dotted #ccc;
	}

	.top_news_list li:nth-child(4) {
		padding-bottom: 0rem;
		margin-bottom: 0rem;
		border-bottom: none;
	}

	.top_news_list li .image {
		max-width: 12rem;
		min-width: 12rem;
		margin-bottom: 0;
		margin-right: 2rem;
	}

}

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

.news_list_bt{
	width: 20rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 100;
	margin-left: auto;
	margin-right: auto;
}

.news_list_bt a{
	font-size: 2.5rem;
	color: #222;

	display: flex;
	justify-content: center;
	aling-items: center;
	
	width: 100%;
	border-bottom: 0.1rem solid #222;
	
	position: relative;
	height: 5rem;
}

.news_list_bt a:hover{
	color: #f18d0f;
	border-bottom: 0.1rem solid #f18d0f;
}

.news_list_bt a::before {
	border-right: 1rem solid #222;
	content: "";
	bottom: 0.3rem;
	right: 0.3rem;
	border-top: 1rem solid transparent;
	position: absolute;
	z-index: 2;
	transition: .3s;
}

.news_list_bt a:hover::before {
	border-right: 2rem solid #f18d0f;
	border-top: 2rem solid transparent;
}

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

.contact_bottom{
	border-top: 0.1rem solid #848484;
	padding-top: 14rem;
	margin-bottom: 16rem;
}

.contact_bottom_list{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.contact_bottom_list .title{

}

.contact_bottom_list .title h3.general_title{
	margin-bottom: 0;
}

.contact_bottom_list .text{
	max-width: 49rem;
	line-height: 2.2;
}

.contact_bottom_list .phone{

}

.contact_bottom_list .phone .tel{
	font-size: 4rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

.contact_bottom_list .phone .tel small{
	font-size: 2rem;
}

.contact_bottom_list .phone .open{
	text-align: right;
}

.contact_bottom_list .bt{

}

.contact_bottom_list .bt .contact_bt{
	width: 13rem;
	height: 13rem;
	
	font-size: 3rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 100;
}

.contact_bottom_list .bt .contact_bt p{
	width: 100%;
	line-height: 1;
}

.contact_bottom_list .bt .contact_bt a{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;

	background: #c0c0c0;

	width: 100%;
	height: 100%;
	border-radius: 50%;
	color: #222;
	
	position: relative;
}

.contact_bottom_list .bt .contact_bt a:hover{
	background: none;
	color: #222;
}

.contact_bottom_list .bt .contact_bt a:hover img{
	mix-blend-mode: multiply;
}



.contact_bottom_list .bt .contact_bt a:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	background-color: #f18d0f;
	border-radius: 50%;
	transform: translate(-50%, -50%) scale(0, 0);
	transition: transform ease 0.4s;
	z-index: -1;
}

.contact_bottom_list .bt .contact_bt a:hover:after {
	transform: translate(-50%, -50%) scale(1.1, 1.1);
}

.contact_bottom_list .bt .contact_bt a img{
	width: 3rem;
}

.contact_bottom_list .bt .contact_bt a div{
	text-align: center;
}

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

	.contact_bottom_list {
		flex-wrap: wrap;
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}

}

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

	.contact_bottom_list .title h3.general_title {
		margin-bottom: 6rem;
	}

}

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

	.contact_bottom {
		padding-top: 6rem;
		margin-bottom: 6rem;
	}

	.contact_bottom_list {
		width: 100%;
	}

	.contact_bottom_list .title h3.general_title {
		margin-bottom: 4rem;
	}

	.contact_bottom_list .text {
		line-height: 1.8;
		font-size: 1.4rem;
		margin-bottom: 2rem;
	}

	.contact_bottom_list .phone .tel {
		font-size: 3.5rem;
		margin-bottom: 1rem;
	}

	.contact_bottom_list .phone {
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 3rem;
	}

	.contact_bottom_list .phone .open{
		text-align: center;
	}

	.contact_bottom_list .bt {
		margin-left: auto;
		margin-right: auto;
	}

}

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

.page_top{
	
	position: fixed;
	right: 2rem;
	bottom: 2rem;
	/*mix-blend-mode: difference;*/
	background: #b51739;
	z-index: 2;
	width: 4rem;
	height: 4rem;
	border: 0.1rem solid #fff;
}

.page_top i{
	font-size: 4rem;
}

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

	.page_top{
		right: 1rem;
		bottom: 9rem;
	}

}

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

	.contact_bottom_list .title h3.general_title {
		margin-bottom: 6rem;
	}

}

.page_top a{
	color: #fff;

	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
}

#outer_footer{
	background: #003e7c;
	padding-top: 10rem;
	/*padding-bottom: 6rem;*/
	padding-bottom: 5rem;
}

#outer_footer .footer{
	max-width: 140rem;
	margin-left: auto;
	margin-right: auto;
	
	display: flex;
	justify-content: space-around;
	margin-bottom: 7rem;
}

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

	#outer_footer .footer{
		padding-left: 3rem;
		padding-right: 3rem;
	}

}


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

	#outer_footer .footer {
		flex-wrap: wrap;
	}

}

#outer_footer .footer_area{
	display: flex;
	justify-content: space-between;
	margin-bottom: 0rem;
}

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

	#outer_footer .footer_area {
		margin-bottom: 4rem;
	}

}

#outer_footer .footer_area .footer_link{
	display: flex;
	flex-wrap: wrap;
	
	max-width: 52rem;
}

#outer_footer .footer_area .footer_link li{
	width: 50%;
	max-width: 26rem;
	font-size: 2rem;
	line-height: 0.8;
	margin-bottom: 2rem;
}

#outer_footer .footer_area .footer_link li a{
	color: #fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 100;
}

#outer_footer .footer_area .footer_link li a:hover{
	color: #f18d0f;
}

#outer_footer .footer_area .footer_link li a small{
	font-size: 1.1rem;
}

#outer_footer .footer_area .footer_data{

}

#outer_footer .footer_area .footer_data li{
	font-size: 1.4rem;
	color: #fff;
	text-align: right;
}

#outer_footer .footer_area .footer_data li:nth-child(1){
	margin-bottom: 4rem;
}

#outer_footer .footer_area .footer_data li img{
	max-width: 16.5rem;
}

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

#outer_footer .copy{
	color: #fff;
	display: flex;
	justify-content: center;
}

#outer_footer .copy .inside{
	display: flex;
	justify-content: space-between;
}

#outer_footer .copy .inside .follow{
	display: flex;
	font-size: 1.2rem;
	color: #fff;
}

#outer_footer .copy .inside .follow{
	display: flex;
	align-items: center;
}

#outer_footer .copy .inside .follow img{
	max-width: 2.4rem;
}

#outer_footer .copy .inside .follow .title{
	margin-right: 6rem;
}

#outer_footer .copy .inside .follow .sns{
	margin-right: 2rem;
}

@media screen and ( max-width: 1460px ){
	
	#outer_footer .copy .inside .copyright{
		margin-right: 3rem;
	}

}

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

	#outer_footer {
		padding-top: 6rem;
		padding-bottom: 8rem;
	}

	#outer_footer .footer_area {
		flex-wrap: wrap;
		margin-bottom: 2rem;
	}

	#outer_footer .footer_area .footer_link li {
		font-size: 1rem;
		line-height: 1.5;
		text-align: center;
	}

	#outer_footer .footer_area .footer_link li a small {
		font-size: 1.3rem;
	}

	#outer_footer .footer_area .footer_link li a {
		line-height: 1.3;
	}

	#outer_footer .footer_area .footer_data {
		margin-left: auto;
		margin-right: auto;
	}

	#outer_footer .footer_area .footer_data li {
		text-align: center;
	}

	#outer_footer .footer_area .footer_data li:nth-child(1) {
		margin-bottom: 2rem;
	}

	#outer_footer .footer_area .footer_data li img {
		max-width: 13rem;
	}

	#outer_footer .copy .inside{
		flex-wrap: wrap;
	}

	#outer_footer .copy .inside .follow{
		flex-wrap: wrap;
		margin-left: auto;
		margin-right: auto;
	}

	#outer_footer .copy .inside .follow .title{
		width: 100%;
		text-align: center;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 2rem;
	}
/*
	#outer_footer .copy .inside .follow .title + div{
		width: 100%;
		text-align: center;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 2rem;
	}
*/
	#outer_footer .copy .inside .follow .sns{
		width: 50%;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 2rem;
		text-align: center;
	}

	#outer_footer .copy .inside .copyright{
		width: 100%;
		text-align: center;
		margin-right: 0rem;
	}

	.page_top {
		right: -2rem;
		bottom: 5rem;
		font-size: 1.4rem;
		display: none !important;
	}

}

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

.follow_bottom_area{
	display : none;
}

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

	.follow_bottom_area{
		display: flex;
		background: #b51739;
		bottom: 0;
		left: 0;
		right: 0;
		margin-bottom: 0;
		width: 100%;
		height: 6rem;
		position: fixed;
		z-index: 2;
	}

	.follow_bottom{
		display : flex;
		justify-content: space-around;
		align-items: center;
		height: 5rem;
		width: 95%;
		margin-left: auto;
		margin-right: auto;
		position: fixed;
		bottom: 0.5rem;
		left: 0;
		right: 0;
		margin-bottom: 0rem;
	}

	.follow_bottom li:nth-child(1){
		width: 40%;
	}

	.follow_bottom li:nth-child(2){
		width: 40%;
	}

	.follow_bottom li:nth-child(3){
		width: 11%;
	}

	.follow_bottom li a{
		height: 3.5rem;
		display : flex;
		justify-content: center;
		align-items: center;
		border: 0.1rem solid #fff;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: normal;
		color: #fff;
		background: #b51739;
		font-size: 1.4rem;
	}

	.follow_bottom li a span{
		margin-right: 0.5rem;
	}

}

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

.follow_bottom_pc{
	width: 100%;
	height: 8rem;

	background: #4e7882;
	position: fixed;
	bottom: 0;
	
	padding-left: 2rem;
	padding-right: 6rem;

	display: flex;
	justify-content: space-between;
	align-items: center;
	
	color: #fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 300;
	z-index: 1;
}

.follow_bottom_pc .box{
	max-width: 140rem;
	width: 100%;

	display: flex;
	justify-content: space-between;
	align-items: center;
	
	margin-left: auto;
	margin-right: auto;
}

.follow_bottom_pc .text{
	font-size: 2rem;
}

.follow_bottom_pc .text .tab{
	display: none;
}

.follow_bottom_pc .box > .contact{
	display: flex;
}

.follow_bottom_pc .box > .contact .tel{
	margin-right: 2rem;
}

.follow_bottom_pc .box > .contact .tel .call{
	font-size: 2.5rem;
	line-height: 1;
	margin-bottom: 0.5rem;
}

.follow_bottom_pc .box > .contact .tel .open{
	font-size: 1.4rem;
	text-align: right;
}

.follow_bottom_pc .box > .contact .bt{

}

.follow_bottom_pc .box > .contact .bt a{
	display: flex;
	justify-content: center;
	align-items: center;
	
	width: 20rem;
	height: 5rem;
	/*background: #fff;*/
	color: #fff;
	border: 0.1rem solid #fff;
	transition: .3s;
}

.follow_bottom_pc .box > .contact .bt a:hover{
	border: 0.5rem solid #fff;
}

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

	.follow_bottom_pc .text .tab{
		display: block;
	}

}

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

.follow_bottom_area_pc{
	width: 100%;
	height: 8rem;
	
	background: #b51739;
	position: fixed;
	bottom: 0;
	
	display: flex;
	align-items: center;
	justify-content: center;
}

.follow_bottom_area_pc ul{
	display: flex;
	justify-content: space-between;
	
	width: 117rem;
	margin-left: auto;
	margin-right: auto;
	
	margin-bottom: 0;
}

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

	.follow_bottom_area_pc ul{
		margin-left: 2rem;
		margin-right: 2rem;
	}

}

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

.logo img{
	width: 100%;
}

.tel img{
	width: 100%;
}

/*-----*/

.main_image{
	margin-left: auto;
	margin-right: auto;
}

.main_image .main{
	max-width: 192rem;
	margin-left: auto;
	margin-right: auto;
}

.main_image .main img{
	width: 100%;
	max-width: max-content;
}

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

}

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


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

	.main_bottom_tel.img_size{
		width: 90%;
		margin-top: 2rem;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 2rem;
	}

}


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

.img_size img{
	width: 100%;
	max-width: max-content;
}

.contents_01{
	background: #f4f1e4;
	padding-top: 9rem;
	padding-bottom: 9rem;
}

.width-1400{
	max-width: 140rem;
	margin-left: auto;
	margin-right: auto;
}

.contents_01 .title{
	text-align: center;
	margin-bottom: 6rem;
}

.contents_01 .image{
	margin-left: -12rem;
	margin-right: -12rem;
}

.contents_01 .image .tab_img{
	display: none;
}

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

	.contents_01 .image{
		margin-left: 0rem;
		margin-right: 0rem;
		text-align: center;
	}

}

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

	.contents_01 .title{
		max-width: 60rem;
		margin-left: auto;
		margin-right: auto;
	}

	.contents_01 .image .pc_img{
		display: none;
	}

	.contents_01 .image .tab_img{
		display: block;
		margin-left: auto;
		margin-right: auto;
		max-width: 60rem;
	}

}

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

	.contents_01 {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}

	.contents_01 .title {
		margin-bottom: 0rem;
	}

}

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

.guide_area{
	background-image: url(../img/guide_area_bg.jpg);
	background-size: cover;
	background-position: top center;
	padding-top: 9rem;
	padding-bottom: 0rem;
	margin-bottom: 12rem;
}

.guide_area.bottom{
	margin-bottom: 0rem;
}

.guide_area .guide_box{
	display: flex;
	justify-content: space-between;
}

.guide_area .guide_box .bt_area{
	display: flex;
	justify-content: space-between;
	margin-top: 4rem;
	margin-left: -13rem;
	margin-right: 2rem;
}

.guide_area .guide_box .bt_area.sp{
	display: none;
}

.guide_area .guide_box .bt_area .fukidashi{
	margin-right: 1rem;
}

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

	.guide_area .guide_box .bt_area{
		margin-left: 0rem;
	}

}

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

	.guide_area {
		padding-top: 4rem;
	}

	.guide_area .guide_box {
		width: 94%;
	}

}

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

	.guide_area .guide_box {
		flex-wrap: wrap;
		justify-content: center;
	}
	
	.guide_area .guide_box .bt_area {
		margin-bottom: 4rem;
	}

	.guide_area .guide_box .image{
		max-width: 50rem;
	}

}

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

	.guide_area {
		padding-bottom: 0rem;
		margin-bottom: 8rem;
	}

	.guide_area .guide_box .bt_area {
		display: block;
		margin-top: 0rem;
		margin-right: 0rem;
	}

	.guide_area .guide_box .bt_area.pc {
		display: none;
	}

	.guide_area .guide_box .bt_area.sp{
		display: block;
	}

}

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

h3.title{
	max-width: 140rem;
	border-bottom: 0.4rem solid #4f1515;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 2.5rem;
	
	padding-bottom: 1.5rem;
	text-align: center;
	
	color: #4f1515;
	font-weight: bold;
}

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

	h3.title img{
		width: auto;
		height: 4.5rem;
	}

	.reason_area h3.title img{
		width: auto;
		height: 10rem;
	}

}

.reason_list{

}

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

	.reason_list > li{
		padding-left: 2rem;
		padding-right: 2rem;
	}

}


.reason_list > li{
	padding-top: 8rem;
	padding-bottom: 10rem;
}

.reason_list > li:nth-child(odd){
	background: #f4f1e4;
}

.reason_list > li .box{
	max-width: 140rem;
	margin-left: auto;
	margin-right: auto;
}

.reason_list > li .box .reason_title{
	display: flex;
	align-items: center;
	margin-bottom: 5rem;
}

.reason_list > li .box .reason_title .text{
	font-size: 4rem;
	font-weight: bold;
	color: #b51739;
	border-bottom: 0.8rem solid #b51739;

	padding-top: 3rem;
	padding-left: 8rem;
	padding-bottom: 2rem;
	width: -webkit-fill-available;
	
	background-image: url(../img/reason_title_bg.png);
	background-repeat: no-repeat;
	background-size: auto;
	background-position: bottom right;
	
	margin-left: -4rem;
}

.reason_list > li .box .reason_contents{
	display: flex;
	justify-content: space-between;
}

.reason_list > li .box .reason_contents > .text{
	max-width: 56rem;
	margin-right: 6rem;
}

.reason_list > li .box .reason_contents > .text h5{
	font-size: 2.5rem;
	line-height: 1.8;
	font-weight: bold;
	color: #4f1515;
	margin-bottom: 3rem;
}

.reason_list > li .box .reason_contents > .text p{
	margin-bottom: 3.5rem;
}

.reason_list > li .box .reason_contents > .text div{
	text-align: center;
}

.reason_list > li:nth-child(1) .box .reason_contents > .text div{
	text-align: left;
}

.reason_list > li:nth-child(2) .box .reason_contents > .text div{
	text-align: left;
}

.reason_list > li .box .reason_contents > .image{
	max-width: 79rem;
}

.reason_list > li .box .reason_contents > .image img{
	min-width: 40em;
}

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

	.reason_list > li .box .reason_contents {
		flex-wrap: wrap;
		flex-direction: column-reverse;
		align-items: center;
	}
	
	.reason_list > li .box .reason_contents > .text {
		max-width: 79rem;
		margin-right: 0rem;
	}

	.reason_list > li:nth-child(1) .box .reason_contents > .text div{
		text-align: center;
	}

	.reason_list > li:nth-child(2) .box .reason_contents > .text div{
		text-align: center;
	}

	.reason_list > li .box .reason_contents > .image {
		margin-bottom: 3rem;
	}

}

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

	.reason_list > li .box .reason_title .text {
		background-size: 20rem;
	}

}

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

	.reason_list > li {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}

	.reason_list > li .box .reason_title {
		margin-bottom: 3.5rem;
	}

	.reason_list > li .box .reason_contents > .text h5 {
		font-size: 1.8rem;
		line-height: 1.6;
		margin-bottom: 2rem;
	}

	.reason_list > li .box .reason_contents > .image {
		max-width: 100%;
	}

	.reason_list > li .box .reason_contents > .image img {
		min-width: 100%;
	}

	.reason_list > li .box .reason_title{
		background-image: url(../img/reason_title_bg.png);
		background-repeat: no-repeat;
		background-size: 62%;
		background-position: bottom right;
		border-bottom: 0.8rem solid #b51739;
		padding-bottom: 1rem;
	}

	.reason_list > li .box .reason_title .image{

	}

	.reason_list > li .box .reason_title .text{
		padding-top: 2rem;
		font-size: 2.5rem;
		padding-left: 6rem;
		background-image: none;
		border-bottom: none;
		line-height: 3rem;
	}

	.reason_list > li .box .reason_contents > .text p{
		font-size: 1.4rem;
		margin-bottom: 2rem;
	}

	.reason_list > li:nth-child(3) .box .reason_contents > .text div,
	.reason_list > li:nth-child(4) .box .reason_contents > .text div,
	.reason_list > li:nth-child(5) .box .reason_contents > .text div,
	.reason_list > li:nth-child(6) .box .reason_contents > .text div,
	.reason_list > li:nth-child(7) .box .reason_contents > .text div{
		display: none;
	}

	.reason_list > li .box .reason_contents > .text div img{
		width: auto;
		max-width: max-content;
		height: 10rem;
	}

	.reason_list > li:nth-child(1) .box .reason_contents > .text div img{
		width: 100%;
		max-width: max-content;
		height: auto;
	}

	.reason_list > li:nth-child(2) .box .reason_contents > .text div img{
		width: 100%;
		max-width: max-content;
		height: auto;
	}

}


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

.achievement_area{
	background: #fff;
}

.achievement_area h4{
	font-size: 3rem;
	color: #fff;
	font-weight: bold;
	background: #b51739;
	padding: 2rem 3.5rem;
	margin-bottom: 0;
}

.achievement_area .achievement_box{
	padding: 3.5rem 3rem;
	height: 38rem;
	overflow-y: scroll;
}

.achievement_area .achievement_box.money{
	background: #f4f1e4;
}

.achievement_area .achievement_box .achievement_list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.achievement_area .achievement_box .achievement_list li{
	display: flex;
	justify-content: space-between;
	width: 48%;
	border-bottom: 0.1rem solid #929292;
	padding-bottom: 1.2rem;
	margin-bottom: 1.2rem;
}

.achievement_area .achievement_box .achievement_list li .place{
	font-size: 2rem;
	font-weight: bold;
}

.achievement_area .achievement_box .achievement_list li .period{
	font-size: 2rem;
	color: #b51739;
	font-weight: bold;
}

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

	.achievement_area .achievement_box {
		height: 25rem;
	}

	.achievement_area h4 {
		font-size: 2.5rem;
		padding: 2rem 2.5rem;
	}

	.achievement_area .achievement_box .achievement_list li {
		width: 100%;
	}

	.achievement_area .achievement_box .achievement_list li .place{
		font-size: 1.6rem;
	}

	.achievement_area .achievement_box .achievement_list li .period{
		font-size: 1.6rem;
	}

}

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

.assessment_area{
	padding-top: 9rem;
	padding-bottom: 0rem;
	margin-bottom: 12rem;
}

.assessment_area .guide_box{
	display: flex;
	justify-content: center;
}

.assessment_area .guide_box .bt_area{
	display: flex;
	justify-content: space-between;
	margin-top: 4rem;
	margin-left: -13rem;
	margin-right: 2rem;
}

.assessment_area .guide_box .bt_area.sp{
	display: none;
}

.assessment_area .guide_box .bt_area .fukidashi{
	margin-right: 1rem;
}

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

	.assessment_area .guide_box .bt_area{
		margin-left: 0rem;
	}

}

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

	.assessment_area .guide_box .bt_area.sp {
		display: none;
	}

}

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

	.assessment_area{
		padding-top: 0rem;
		padding-bottom: 0rem;
		margin-bottom: 8rem;
	}

	.assessment_area .guide_box .bt_area.pc {
		display: none;
	}

	.assessment_area .guide_box .bt_area.sp {
		display: block;
		margin-left: auto;
		margin-right: auto;
	}

}

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

.voice_area{
	padding-top: 9rem;
	padding-bottom: 9rem;
	margin-bottom: 12rem;
	background: #f4f1e4;
}

.h3_bottom_text{
	font-size: 2.4rem;
	font-weight: bold;
	color: #4f1515;
	
	text-align: center;
	margin-bottom: 6rem;
}

.voice_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.voice_list li{

	width : -webkit-calc(100% / 3.5) ;
	width : calc(100% / 3.5) ;

	margin-left: 1.5rem;
	margin-right: 1.5rem;
	margin-bottom: 4rem;
}

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

	.h3_bottom_text {
		width: 92%;
		margin-left: auto;
		margin-right: auto;
	}

}

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

	.voice_area {
		padding-top: 6rem;
		padding-bottom: 3rem;
		margin-bottom: 6rem;
	}

	.h3_bottom_text {
		font-size: 1.8rem;
		margin-bottom: 4rem;
	}

	.voice_list li{
		width : -webkit-calc(100% / 2.5) ;
		width : calc(100% / 2.5) ;
	}


}

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

.flow_area{
	padding-bottom: 9rem;
	margin-bottom: 12rem;
}

.flow_area .pc_img{
	
}

.flow_area .tab_img{
	display: none;
}

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

	.flow_area .flow_image{
		width: 94%;
		margin-left: auto;
		margin-right: auto;
	}

}

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

	.flow_area .pc_img{
		display: none;
	}

	.flow_area .tab_img{
		display: block;
		margin-left: auto;
		margin-right: auto;
		max-width: 60rem;
	}

}

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

	.flow_area {
		padding-bottom: 0rem;
		margin-bottom: 6rem;
	}

}

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

.qa_area{
	padding-top: 9rem;
	padding-bottom: 9rem;
	margin-bottom: 12rem;
	background: #f4f1e4;
}

.qa_area .pc_img{
	
}

.qa_area .tab_img{
	display: none;
}

.qa_area .sp_img{
	display: none;
}

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

	.qa_area .flow_image{
		width: 94%;
		margin-left: auto;
		margin-right: auto;
	}

}

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

	.qa_area .pc_img{
		display: none;
	}

	.qa_area .tab_img{
		display: block;
	}
	
	.qa_area .sp_img{
		display: none;
	}

}

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

	.qa_area {
		padding-top: 6rem;
		padding-bottom: 3rem;
		margin-bottom: 6rem;
	}

	.qa_area .tab_img{
		display: none;
	}

	.qa_area .sp_img{
		display: block;
	}

}

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

.data_area{
	padding-top: 0rem;
	padding-bottom: 0rem;
	margin-bottom: 0rem;
}

.data_area .data_box{
	display: flex;
	justify-content: space-around;
	margin-bottom: 12rem;
}

.data_area .data_box .ask{
	width: 58rem;
	margin-left: 2rem;
	margin-right: 2rem;
}

.data_area .data_box .contract{
	width: 58rem;
	margin-left: 2rem;
	margin-right: 2rem;
}

.data_area .data_box .list_area{
	height: 47rem;
	overflow-y:scroll;
}

.data_area .data_box .list_area .ask_list{

}

.data_area .data_box .list_area .ask_list li{
	background: #f4f1e4;
}

.data_area .data_box .list_area .ask_list li h4{
	background: #79ad5a;
	color: #fff;
	font-weight: bold;
	padding: 1.2rem 1.5rem;
}

.data_area .data_box .list_area .ask_list li div{
	padding: 1.2rem 1.5rem;
}


.data_area .data_box .list_area .contract_tbl{
	width: 100%;
	border-top: 0.1rem solid #aeaeae;
	border-left: 0.1rem solid #aeaeae;
}

.data_area .data_box .list_area .contract_tbl th{
	border-top: 0.1rem solid #aeaeae;
	border-left: 0.1rem solid #aeaeae;

	border-right: 0.1rem solid #aeaeae;
	border-bottom: 0.1rem solid #aeaeae;
	
	padding: 1rem 1.5rem;
	
	text-align: center;
	background: #b19336;
	color: #fff;
}

.data_area .data_box .list_area .contract_tbl th {
	position: sticky;
	top: 0;
}
.data_area .data_box .list_area .contract_tbl th:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.data_area .data_box .list_area .contract_tbl td{
	border-right: 0.1rem solid #aeaeae;
	border-bottom: 0.1rem solid #aeaeae;

	text-align: center;
	padding: 1rem 1.5rem;
}

.data_area .data_box .list_area .contract_tbl tr td:nth-child(2){
	text-align: right;
}

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

	.data_area .data_box {
		flex-wrap: wrap;
	}

	.data_area .data_box .ask {
		margin-bottom: 6rem;
	}

}

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

	.data_area {
		padding-bottom: 0rem;
	}

	.data_area .data_box{
		margin-bottom: 6rem;
	}

	.data_area .data_box .list_area{
		height: 36rem;
	}

	.data_area .data_box .list_area .contract_tbl th {
		padding: 1rem 0.5rem;
		font-size: 1rem;
	}

	.data_area .data_box .list_area .contract_tbl td {
		padding: 1rem 0.5rem;
		font-size: 1rem;
	}

}

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

.move_banner{
	text-align: center;
}

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

	.move_banner {
		padding-left: 3rem;
		padding-right: 3rem;
	}

}

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

	.move_banner {
		padding-left: 2rem;
		padding-right: 2rem;
	}

}

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

.company_area{
	padding-top: 9rem;
	padding-bottom: 9rem;
	margin-bottom: 0rem;
	background: #f4f1e4;
}

.company_area .company_box{

}

.company_area .company_box .company_data{
	display: flex;
	justify-content: space-between;
}

.company_area .company_box .company_data h4{
	color: #4f1515;
	font-size: 3rem;
	font-weight: bold;
	margin-bottom: 4rem;
}

.company_area .company_box .company_data .overview_list{
	width: 64rem;
}

.company_area .company_box .company_data .overview_list li{
	border-bottom: 0.1rem dotted #aeaeae;
	display: flex;
	padding-bottom: 2.3rem;
	margin-bottom: 2.3rem;
}

.company_area .company_box .company_data .overview_list li .th{
	font-size: 1.8rem;
	color: #4f1515;
	font-weight: bold;
	width: 14rem;
}

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

	.company_area .company_box .company_data{
		flex-wrap: wrap;
		justify-content: center;
	}

	.company_area .company_box .company_data .overview_list {
		width: 80rem;
		margin-bottom: 6rem;
	}

	.company_area .company_box .company_data .guidance {
		width: 80rem;
	}

}

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

	.company_area .company_box .company_data .overview_list {
		width: 64rem;
	}

}

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

	.company_area {
		padding-top: 6rem;
		padding-bottom: 6rem;
	}

	.company_area .company_box .company_data {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	
	.company_area .company_box .company_data h4 {
		font-size: 2.4rem;
		margin-bottom: 2.5rem;
	}

	.company_area .company_box .company_data .overview_list {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}

	.company_area .company_box .company_data .overview_list li {
		flex-wrap: wrap;
		padding-bottom: 1.5rem;
		margin-bottom: 1.5rem;
	}

	.company_area .company_box .company_data .overview_list li .th {
		width: 100%;
		margin-bottom: 1rem;
	}

	.company_area .company_box .company_data .overview_list li .td {
		font-size: 1.4rem;
	}

}

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

.company_area .company_box .company_data .guidance{
	width: 70rem;
}

.company_area .company_box .company_data .guidance .office_box{
	margin-bottom: 5rem;
}

.company_area .company_box .company_data .guidance .office_box h5{
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
	background: #4f1515;
	padding: 1rem 1.5rem;
	margin-bottom: 2rem;
}

.company_area .company_box .company_data .guidance .office_box .data{
	display: flex;
	margin-bottom: 2.5rem;
}

.company_area .company_box .company_data .guidance .office_box .data .image{
	margin-right: 3rem;
}

.company_area .company_box .company_data .guidance .office_box .data .text{

}

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

	.company_area .company_box .company_data .guidance{
		width: 80rem;
	}

	.company_area .company_box .company_data .guidance .office_box .map iframe{
		width: 100%;
	}

}

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

	.company_area .company_box .company_data .guidance {
		width: 64rem;
	}

	.company_area .company_box .company_data .guidance .office_box .data .image {
		width: 50%;
	}

}

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

	.company_area .company_box .company_data .guidance .office_box .data {
		flex-wrap: wrap;
	}

	.company_area .company_box .company_data .guidance .office_box .data .image {
		width: 100%;
		margin-right: 0rem;
		margin-bottom: 2rem;
	}
	
	.company_area .company_box .company_data .guidance .office_box .data .text {
		font-size: 1.4rem;
	}

}


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

.staff_area{
	background: #ece6cd;
	border-radius: 3rem;
	padding: 4rem;
}

.staff_area h4{
	font-size: 3rem;
	font-weight: bold;
	color: #4f1515;
	
	margin-bottom: 2.5rem;
}

.staff_area .staff_list{
	display: flex;
	justify-content: space-around;

	margin-left: auto;
	margin-right: auto;
}

.staff_area .staff_list li{
	margin-left: 1.5rem;
	margin-right: 1.5rem;
}

.staff_area .staff_list .image{
	margin-bottom: 2rem;
}

.staff_area .staff_list .text{
	color: #4f1515;
}

.staff_area .staff_list .text h5{
	font-size: 2.4rem;
	text-align: center;
}

.staff_area .staff_list .text h5 small{
	font-size: 1.2rem;
}

.staff_area .staff_list .text .job{
	font-size: 1.2rem;
	text-align: center;
}

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

	.staff_area {
		padding: 4rem 3rem;
		width: 92rem;
		margin-left: auto;
		margin-right: auto;
	}

}

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

	.staff_area {
		width: 64rem;
	}

	.staff_area .staff_list {
		flex-wrap: wrap;
	}
	
	.staff_area .staff_list li {
		margin-bottom: 4rem;
	}
	
	.staff_area .staff_list li:nth-child(5) {
		margin-bottom: 0rem;
	}

}

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

	.staff_area {
		padding: 3rem 3rem 1rem;
		width: 90%;
	}
	
	.staff_area h4 {
		font-size: 2.4rem;
		text-align: center;
		line-height: 1.5;
	}

	.staff_area .staff_list li {
		margin-left: 0rem;
		margin-right: 0rem;
		margin-bottom: 0rem;
		display: flex;
		align-items: center;
	}

	.staff_area .staff_list li .image{
		width: 10rem;
		margin-right: 2rem;
	}

	.staff_area .staff_list .text {
		width: 18rem;
		margin-top: -2rem;
	}

	.staff_area .staff_list .text h5 {
		text-align: left;
	}

	.staff_area .staff_list .text .job {
		text-align: left;
	}

}

/*------------------------------------*/
/*格納コンテンツ*/

.overview_list .collapse{
	display: block;
}

.more_bt.overview{
	display: none;
	justify-content: center;
	align-items: center;
}

.more_bt.overview label.more_bt{
	width: 16rem;
	height: 4.5rem;
	border: 0.2rem solid #4f1515;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4rem;
	font-weight: bold;
	color: #4f1515;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	transition: all 0.2s;
	overflow: hidden;
	border-radius: 0.4rem;
}

.more_bt.overview label.more_bt.overview:hover{
	color:#4f1515;
	border: 0.2rem solid #4f1515;
	opacity: 1;
}

.more_bt.overview label.more_bt.overview::before {
	content: '';
	position: absolute;
	top: -100%;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-color: #e842a0;
	-webkit-transition: all .3s ease;
	transition: all .2s ease;
}

.more_bt.overview label.more_bt.overview:hover::before {
	top: 0;
}

.more_bt.overview label:after {
	display: inline-block;
	content: 'MORE▼';
	padding-right: 5px;
	transition: 0.2s;
	margin-left: 0.5rem;
}

.more_bt.overview input:checked ~ label:after {
	content: 'CLOSE▲';
	margin-left: 0.5rem;
}

.more_bt.overview #check{
	display:none;
}

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

	.overview_list .collapse{
		display: none;
	}

	.overview_list .collapse.show{
		display: block;
	}

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

}

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

#company01.collapse{
	display: block;
}

.more_bt.company01{
	display: none;
	justify-content: center;
	align-items: center;
}

.more_bt.company01 label.more_bt.company01{
	width: 10rem;
	height: 4rem;
	border: 0.2rem solid #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.2rem;
	font-weight: bold;
	color: #fff;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	transition: all 0.2s;
	overflow: hidden;
	border-radius: 0.3rem;
}

.more_bt.company01 label.more_bt.company01:hover{
	color:#fff;
	border: 0.2rem solid #fff;
	opacity: 1;
}

.more_bt.company01 label.more_bt.company01::before {
	content: '';
	position: absolute;
	top: -100%;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-color: #fff;
	-webkit-transition: all .3s ease;
	transition: all .2s ease;
}

.more_bt.company01 label.more_bt.company01:hover::before {
	top: 0;
}

.more_bt.company01 label:after {
	display: inline-block;
	content: 'OPEN▼';
	padding-right: 5px;
	transition: 0.2s;
	margin-left: 0.5rem;
	font-size: 1.2rem;
	border: 0.2rem solid #fff;
	padding: 0.4rem 1rem;
	border-radius: 0.3rem;
}

.more_bt.company01 input:checked ~ label:after {
	content: 'CLOSE▲';
	margin-left: 0.5rem;
}

.more_bt.company01 #check01{
	display:none;
}

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

	#company01.collapse{
		display: none;
	}

	#company01.collapse.show{
		display: block;
	}

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

}

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

#company02.collapse{
	display: block;
}

.more_bt.company02{
	display: none;
	justify-content: center;
	align-items: center;
}

.more_bt.company02 label.more_bt.company01{
	width: 10rem;
	height: 4rem;
	border: 0.2rem solid #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.2rem;
	font-weight: bold;
	color: #fff;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	transition: all 0.2s;
	overflow: hidden;
	border-radius: 0.3rem;
}

.more_bt.company02 label.more_bt.company01:hover{
	color:#fff;
	border: 0.2rem solid #fff;
	opacity: 1;
}

.more_bt.company02 label.more_bt.company01::before {
	content: '';
	position: absolute;
	top: -100%;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-color: #fff;
	-webkit-transition: all .3s ease;
	transition: all .2s ease;
}

.more_bt.company02 label.more_bt.company01:hover::before {
	top: 0;
}

.more_bt.company02 label:after {
	display: inline-block;
	content: 'OPEN▼';
	padding-right: 5px;
	transition: 0.2s;
	margin-left: 0.5rem;
	font-size: 1.2rem;
	border: 0.2rem solid #fff;
	padding: 0.4rem 1rem;
	border-radius: 0.3rem;
}

.more_bt.company02 input:checked ~ label:after {
	content: 'CLOSE▲';
	margin-left: 0.5rem;
}

.more_bt.company02 #check02{
	display:none;
}

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

	#company02.collapse{
		display: none;
	}

	#company02.collapse.show{
		display: block;
	}

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


	.company_area .company_box .company_data .guidance .office_box h5 {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}


}


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

.modal-body {
	text-align: center;
}

.modal-body img{
	width: 100%;
	max-width: max-content;
}


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

.category_list_text{
	margin-top: 2rem;
	margin-bottom: 4rem;
	font-size: 2rem;
	font-weight: bold;
	color: #b51739;
}

.category_list{
	display: flex;
	justify-content: space-around;
}

.category_list a{
	font-size: 2.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 20rem;
	height:10rem;
	flex-wrap: wrap;
	line-height: 1;
}

.category_list a span{
	width: 100%;
	font-size: 3.5rem;
}


.category_list li:nth-child(1) a{
	background-color: #00a0ea;
	border-color: #00a0ea;
}

.category_list li:nth-child(2) a{
	background-color: #008a7b;
	border-color: #008a7b;
}

.category_list li:nth-child(3) a{
	background-color: #d77908;
	border-color: #d77908;
}

.category_list li a{
	border-radius: 1rem;
}

.category_list li a:hover{
	opacity: 0.6;
}


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

	.category_list{
		flex-wrap: wrap;
		justify-content: center;
	}

	.category_list li{
		width: 100%;
		display: flex;
		justify-content: center;
		margin-bottom: 2rem;
	}

}

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

.close {
	font-size: 5rem;
}

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

	.close {
		font-size: 3rem;
	}

}

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

#reason{
	padding-top: 5rem;
	margin-top: -5rem;
}

#flow{
	padding-top: 5rem;
	margin-top: -5rem;
}

#information{
	padding-top: 5rem;
	margin-top: -5rem;
}


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


/*-----------------------------------------------------------------------------*/
/*IEハック*/
_:-ms-lang(x)::-ms-backdrop, .img_size img{ width: auto ; }
_:-ms-lang(x)::-ms-backdrop, .reason_list > li .box .reason_title .text{ width: 100% ; }

