@charset "UTF-8";

/* #sitewrap,#sitecontent, .t-sitewrap, .t-sitecontent */

#sitewrap{
	
}

#sitewrap #sitecontent{
	
}

.t-sitewrap{
}

.t-sitecontent{
	background-color: #f8f8f8;
}

div.t-sitecontent{
	overflow: clip;
}

.gc-ie div.t-sitecontent{
	overflow: hidden;
}

.t-first_load{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 99999;
}

/* ----------------- .t-header ----------------- */

.t-header{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20000;
	width: 100%;
	height: 98px;
}

.t-header_in{
	height: 100%;
}

.t-header_content{
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid #000000;
	max-width: 1340px;
}

.t-header_func{
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.t-header_logo_wrap{
	
}

.t-header_logo{
	
}

.t-header_logo_obj{
	
}

.t-header_logo_obj.type_default{
	
}

.t-header_logo_obj.type_white{
	display: none;
}

.t-header.gc-clone{
	position: fixed;
	top: -100px;
	background-color: #fff;
	box-shadow: 0px 0 3px 3px rgba(0,0,0,0.08);
	transition: top 0.4s ease 0s;
}

.gc-main_active .t-header.gc-clone{
	top: 0;
}

.t-header.gc-clone .t-header_content{
	border-bottom: none;
}

@media screen and (min-width: 901px) {
	.t-header_func .t-header_switch{
		display: none;
	}
}

@media screen and (max-width: 900px) {
	.t-header_func{
		width: 100%;
	}
}

@media screen and (max-width: 700px) {
	.t-header{
		height: 76px;
	}
}

/* .t-header_switch */

.t-header_switch{
	cursor: pointer;
	width: 100px;
	height: 100px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.t-header_func .t-header_switch{
	margin-right: -29px;
}

.t-header_switch_in{
	position: relative;
	width: 40px;
	height: 6px;
}

.t-bar{
	position: absolute;
	left: 0;
	width: 40px;
	height: 1px;
	background-color: #000000;
	transform-origin: 0 50%;
}

.t-bar.bar01{
	top: 0;
}

.t-bar.bar02{
	top: 9.33px;
}

.t-header_switch.close_switch .t-bar.bar01{
	top: -7.3px;
	transform: rotate(37deg);
}

.t-header_switch.close_switch .t-bar.bar02{
	transform: rotate(-38deg);
	top: 16.6px;
}

.t-header_switch.close_switch .t-bar{
	left: 4px;
}


@media screen and (max-width: 700px) {
	
	.t-header_switch{
		width: 72px;
		height: 75px;
	}

	.t-header_func .t-header_switch{
		margin-right: -20px;
	}

	.t-header_switch_in{
		width: 30px;
		height: 8px;
	}

	.t-bar{
		width: 30px;
		height: 1px;
	}

	.t-bar.bar01{
		top: 0;
	}

	.t-bar.bar02{
		top: 7px;
	}

	.t-header_switch.close_switch .t-bar.bar01{
		top: -5.5px;
	}

	.t-header_switch.close_switch .t-bar.bar02{
		top: 12.5px;
	}

	.t-header_switch.close_switch .t-bar{
		left: 3px;
	}
	
}

/* .t-main_nav */

@media screen and (min-width: 901px) {

	.t-main_nav{
		height: 100%;
	}

	.t-main_nav_in{
		height: 100%;
	}
	
	.t-main_nav .t-header_switch{
		display: none !important;
	}

	.t-main_nav_content{
		height: 100%;
	}

	.t-main_nav_list_wrap{
		height: 100%;
	}

	.t-main_nav_list{
		height: 100%;
		display: flex;
	}

	.t-main_nav_list_item{
		height: 100%;
		margin: 0 26px 0 0;
	}

	.t-main_nav_list_item:last-child{
		margin-right: 0;
	}

	.t-main_nav_list_block_wrap{
		height: 100%;
	}

	.t-main_nav_list_link{
		display: block;
		text-decoration: none !important;
		height: 100%;
	}

	.t-main_nav_list_block{
		position: relative;
		height: 100%;
		display: flex;
		align-items: center;
		padding: 0 2px;
	}

	.t-main_nav_list_block:after{
		content: "";
		display: block;
		position: absolute;
		bottom: 0;
		right: 0%;
		width: 0px;
		height: 4px;
		background-color: #c5090a;
		transition: width 0.4s ease 0s;
	}

	.t-main_nav_list_link.gc-active .t-main_nav_list_block:after,
	.gc-normal .t-main_nav_list_link:hover .t-main_nav_list_block:after{
		width: 100%;
		left: 0%;
	}

	.t-main_nav_list_title01{
		font-size: 15px;
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.05em;
	}
	
}

@media screen and (max-width: 900px) {

	.t-main_nav{
		position: fixed;
		top: 0;
		right: -280px;
		width: 257px;
		height: 100%;
		z-index: 30000;
		background-color: #fff;
		box-shadow: 0px -6px 14px 9px rgba(0,0,0,0.08);
		transition: right 0.4s ease 0s;
	}
	
	.t-header:not(.gc-clone) .t-main_nav{
		display: none !important;
	}
	
	.gc-main_nav_active .t-main_nav{
		right: 0;
	}

	.t-main_nav_in{
		position: relative;
		width: 100%;
		height: 100%;
		overflow-x: hidden;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		white-space: nowrap;
		text-align: center;
		letter-spacing: -0.4em;
	}
	
	.t-main_nav .t-header_switch{
		position: absolute;
		/*top: -2px;
		right: -5px;*/
		top: 0;
		right: 0;
		z-index: 3;
	}

	.t-main_nav_in:after{
		content: "";
		display: inline-block;
		vertical-align: top;
		height: 100%;
	}

	.t-main_nav_content{
		position: relative;
		z-index: 2;
		display: inline-block;
		vertical-align: top;
		text-align: center;
		padding: 90px 30px;
		letter-spacing: normal;
		text-align: left;
		width: 100%;
	}
	
	.t-main_nav_list_wrap{
	}

	.t-main_nav_list{
	}

	.t-main_nav_list_item{
		border-bottom: 1px solid #d7d7d7;
	}
	
	.t-main_nav_list_block_wrap{
	}

	.t-main_nav_list_link{
		display: block;
		text-decoration: none !important;
		transition: color 0.4s ease 0s;
	}
	
	.t-main_nav_list_link.gc-active,
	.gc-normal .t-main_nav_list_link:hover{
		color: #c5090a;
	}

	.t-main_nav_list_block{
		padding: 30px 0;
	}

	.t-main_nav_list_title01{
		font-size: 14px;
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.05em;
	}
	
}

/* ----------------- .t-main ----------------- */

.t-main{
	position: relative;
}

.t-main_article{
	position: relative;
	z-index: 100;
}

.t-main_article_in{
	position: relative;
	z-index: 2;
}

.t-main_article_in > .m-main_content_wrap{
	padding-top: 100px;
	padding-bottom: 130px;
}

@media screen and (max-width: 700px) {
	.t-main_article_in > .m-main_content_wrap{
		padding-top: 70px;
		padding-bottom: 120px;
	}
}

/* .t-main_bg */

.t-main_bg{
	position: absolute;
	overflow:  hidden;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.t-main_bg_in{
	position: relative;
	height: 100%;
	max-width: 1440px;
	margin: 0 auto;
}

.t-main_bg.type_top_vision .t-main_bg_in{
	max-width: 1000px;
}

.t-main_bg.type_top01{
	overflow: visible;
}

.t-main_bg_obj {
	position: absolute;
	pointer-events: none;
}

.t-main_bg_square {
	background-image: url("../../img/common/obj_bg_pc@2x.png");
	background-size: 10px 10px;
	background-position: 0 0;
}

.t-main_bg_circle{
	position: absolute;
	z-index: 1;
	opacity: 0;
	transform: translate(0px, 60px);
	transition: opacity 1.0s ease 0s,transform 1.0s ease 0s;
}

.t-main_bg_circle.gc-active{
	opacity: 1;
	transform: translate(0px, 0px);
}

.t-main_bg_circle_obj{
	width: 100%;
	height: 100%;
	background-image: url("../../img/common/obj_pc@2x.png");
	background-size: 100% 100%;
	background-position: 0 0;
	background-repeat: no-repeat;
	transform-origin: 50% 50%;
	animation: bg_circle 3.0s infinite linear;
}

@keyframes bg_circle {
	0%{
		transform: translateY(0px);
	}
	25%{
		transform: translateY(20px);
	}
	50%{
		transform: translateY(0px);
	}
	75%{
		transform: translateY(-20px);
	}
	100%{
		transform: translateY(0px);
	}
}

@media screen and (max-width: 700px) {
	.t-main_bg_square {
		background-image: url("../../img/common/obj_bg_sp@2x.png");
		background-size: 8px 8px;
	}
	.t-main_bg_circle_obj{
		background-image: url("../../img/common/obj_sp@2x.png");
	}
}

@media screen and (min-width: 701px) {

	/* .t-main_bg.type01 .t-main_bg_obj.type01 */

	.t-main_bg.type01 .t-main_bg_obj.type01{
		top: 0;
		right: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type01 .t-main_bg_square {
		width: 269px;
		height: 269px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type01 .t-main_bg_circle{
		bottom: -204px;
		right: -116px;
		width: 308px;
		height: 308px;
	}


	/* .t-main_bg.type01 .t-main_bg_obj.type02 */

	.t-main_bg.type01 .t-main_bg_obj.type02{
		top: 440px;
		left: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type02 .t-main_bg_square {
		width: 194px;
		height: 324px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type02 .t-main_bg_circle{
		bottom: -153px;
		left: -128px;
		width: 245px;
		height: 245px;
	}

	/* .t-main_bg.type01 .t-main_bg_obj.type03 */

	.t-main_bg.type01 .t-main_bg_obj.type03{
		top: 1130px;
		right: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type03 .t-main_bg_square {
		width: 222px;
		height: 236px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type03 .t-main_bg_circle{
		top: -138px;
		right: -138px;
		width: 243px;
		height: 243px;
	}

	/* .t-main_bg.type01 .t-main_bg_obj.type04 */

	.t-main_bg.type01 .t-main_bg_obj.type04{
		top: 1540px;
		left: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type04 .t-main_bg_square {
		width: 134px;
		height: 106px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type04 .t-main_bg_circle{
		top: -142px;
		right: -84px;
		width: 243px;
		height: 243px;
	}

	/* .t-main_bg.type01 .t-main_bg_obj.type05 */

	.t-main_bg.type01 .t-main_bg_obj.type05{
		top: 1900px;
		right: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type05 .t-main_bg_square {
		width: 222px;
		height: 236px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type05 .t-main_bg_circle{
		top: 120px;
		right: -140px;
		width: 245px;
		height: 245px;
	}

	/* .t-main_bg.type01 .t-main_bg_obj.type06 */

	.t-main_bg.type01 .t-main_bg_obj.type06{
		top: 2500px;
		left: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type06 .t-main_bg_square {
		width: 0;
		height: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type06 .t-main_bg_circle{
		top: -142px;
		left: -50px;
		width: 245px;
		height: 245px;
	}
	
	/* .t-main_bg.type01 .t-main_bg_obj.type07 */

	.t-main_bg.type01 .t-main_bg_obj.type07{
		display: none;
	}
	
	/* .t-main_bg.type01 .t-main_bg_obj.type08 */

	.t-main_bg.type01 .t-main_bg_obj.type08{
		display: none;
	}
	
	/* .t-main_bg.type01 .t-main_bg_obj.type09 */

	.t-main_bg.type01 .t-main_bg_obj.type09{
		display: none;
	}
	
	/* .t-main_bg.type_top_vision .t-main_bg_obj.type01 */
	
	.t-main_bg.type_top_vision .t-main_bg_obj.type01{
		top: 50%;
		right: 0;
		margin: -322.5px 0 0 0;
	}
	
	.t-main_bg.type_top_vision .t-main_bg_obj.type01 .t-main_bg_square{
		width: 0;
		height: 0;
	}
	
	.t-main_bg.type_top_vision .t-main_bg_obj.type01 .t-main_bg_circle{
		width: 644px;
		height: 645px;
		right: -120px;
	}
	.t-main_bg.type_top_vision .t-main_bg_obj.type01 .t-main_bg_circle_obj{
		background-image: url("../../img/common/obj_main_pc@2x.png");
	}
	
	/* .t-main_bg.type_top01 .t-main_bg_obj.type01 */
	
	.t-main_bg.type_top01 .t-main_bg_obj.type01{
		top: -147px;
		left: 0;
	}
	
	.t-main_bg.type_top01 .t-main_bg_obj.type01 .t-main_bg_square{
		width: 414px;
		height: 438px;
	}
	
	.t-main_bg.type_top01 .t-main_bg_obj.type01 .t-main_bg_circle{
		width: 286px;
		height: 286px;
		top: 290px;
		left: -80px;
	}
	
	/* .t-main_bg.type_top01 .t-main_bg_obj.type02 */
	
	.t-main_bg.type_top01 .t-main_bg_obj.type02{
		top: 58px;
		right: -34px;
	}
	
	.t-main_bg.type_top01 .t-main_bg_obj.type02 .t-main_bg_square{
		width: 315px;
		height: 326px;
	}
	
	.t-main_bg.type_top01 .t-main_bg_obj.type02 .t-main_bg_circle{
		width: 286px;
		height: 286px;
		top: 256px;
		left: 108px;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type01 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type01{
		top: 82px;
		left: 0;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type01 .t-main_bg_square{
		width: 414px;
		height: 438px;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type01 .t-main_bg_circle{
		width: 312px;
		height: 312px;
		top: 380px;
		left: -156px;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type02 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type02{
		top: 330px;
		right: -184px;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type02 .t-main_bg_square{
		width: 741px;
		height: 784px;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type02 .t-main_bg_circle{
		width: 312px;
		height: 312px;
		top: -183px;
		right: 60px;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type03 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type03{
		display: none;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type04 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type04{
		display: none;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type05 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type05{
		display: none;
	}
	
}

@media screen and (max-width: 700px) {
	
	/* .t-main_bg.type01 .t-main_bg_obj.type01 */

	.t-main_bg.type01 .t-main_bg_obj.type01{
		top: 0;
		right: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type01 .t-main_bg_square {
		width: 116px;
		height: 158px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type01 .t-main_bg_circle{
		bottom: -70px;
		right: -86px;
		width: 170px;
		height: 170px;
	}


	/* .t-main_bg.type01 .t-main_bg_obj.type02 */

	.t-main_bg.type01 .t-main_bg_obj.type02{
		top: 440px;
		left: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type02 .t-main_bg_square {
		width: 116px;
		height: 158px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type02 .t-main_bg_circle{
		bottom: -68px;
		left: -102px;
		width: 170px;
		height: 170px;
	}

	/* .t-main_bg.type01 .t-main_bg_obj.type03 */

	.t-main_bg.type01 .t-main_bg_obj.type03{
		top: 620px;
		right:0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type03 .t-main_bg_square {
		width: 0;
		height: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type03 .t-main_bg_circle{
		top: 0;
		right: -60px;
		width: 144px;
		height: 144px;
	}

	/* .t-main_bg.type01 .t-main_bg_obj.type04 */

	.t-main_bg.type01 .t-main_bg_obj.type04{
		top: 1110px;
		left: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type04 .t-main_bg_square {
		width: 98px;
		height: 121px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type04 .t-main_bg_circle{
		top: -110px;
		left: -74px;
		width: 170px;
		height: 170px;
	}

	/* .t-main_bg.type01 .t-main_bg_obj.type05 */

	.t-main_bg.type01 .t-main_bg_obj.type05{
		top: 1400px;
		right:0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type05 .t-main_bg_square {
		width: 90px;
		height: 158px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type05 .t-main_bg_circle{
		bottom: -75px;
		right: -84px;
		width: 144px;
		height: 144px;
	}

	/* .t-main_bg.type01 .t-main_bg_obj.type06 */

	.t-main_bg.type01 .t-main_bg_obj.type06{
		top: 1850px;
		left: 8px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type06 .t-main_bg_square {
		width: 116px;
		height: 158px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type06 .t-main_bg_circle{
		bottom: -62px;
		left: -50px;
		width: 144px;
		height: 144px;
	}
	
	/* .t-main_bg.type01 .t-main_bg_obj.type07 */

	.t-main_bg.type01 .t-main_bg_obj.type07{
		top: 1980px;
		right: 0;
	}

	.t-main_bg.type01 .t-main_bg_obj.type07 .t-main_bg_square {
		width: 0px;
		height: 0px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type07 .t-main_bg_circle{
		bottom: -170px;
		left: -87px;
		width: 144px;
		height: 144px;
	}
	
	/* .t-main_bg.type01 .t-main_bg_obj.type08 */

	.t-main_bg.type01 .t-main_bg_obj.type08{
		top: 2470px;
		left: -10px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type08 .t-main_bg_square {
		width: 116px;
		height: 121px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type08 .t-main_bg_circle{
		top: -110px;
		left: -65px;
		width: 144px;
		height: 144px;
	}
	
	/* .t-main_bg.type01 .t-main_bg_obj.type09 */

	.t-main_bg.type01 .t-main_bg_obj.type09{
		top: 2765px;
		right: -44px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type09 .t-main_bg_square {
		width: 116px;
		height: 158px;
	}

	.t-main_bg.type01 .t-main_bg_obj.type09 .t-main_bg_circle{
		top: 55px;
		right: -87px;
		width: 144px;
		height: 144px;
	}
	
	/* .t-main_bg.type_top_vision .t-main_bg_obj.type01 */
	
	.t-main_bg.type_top_vision .t-main_bg_obj.type01{
		bottom: 18vw;
		right: 0;
	}
	
	.t-main_bg.type_top_vision .t-main_bg_obj.type01 .t-main_bg_square{
		width: 0;
		height: 0;
	}
	
	.t-main_bg.type_top_vision .t-main_bg_obj.type01 .t-main_bg_circle{
		width: 115.46vw;
		height: 115.46vw;
		right: -43.46vw;
		bottom: 0;
	}
	
	.t-main_bg.type_top_vision .t-main_bg_obj.type01 .t-main_bg_circle_obj{
		background-image: url("../../img/common/obj_main_sp@2x.png");
	}
	
	/* .t-main_bg.type_top01 .t-main_bg_obj.type01 */
	
	.t-main_bg.type_top01 .t-main_bg_obj.type01{
		top: -81px;
		left: 0;
	}
	
	.t-main_bg.type_top01 .t-main_bg_obj.type01 .t-main_bg_square{
		width: 84px;
		height: 158px;
	}
	
	.t-main_bg.type_top01 .t-main_bg_obj.type01 .t-main_bg_circle{
		width: 178px;
		height: 178px;
		bottom: -106px;
		left: -84px;
	}
	
	/* .t-main_bg.type_top01 .t-main_bg_obj.type02 */
	
	.t-main_bg.type_top01 .t-main_bg_obj.type02{
		bottom: -106px;
		right: 0;
	}
	
	.t-main_bg.type_top01 .t-main_bg_obj.type02 .t-main_bg_square{
		width: 84px;
		height: 158px;
	}
	
	.t-main_bg.type_top01 .t-main_bg_obj.type02 .t-main_bg_circle{
		display: none;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type01 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type01{
		top: 0;
		left: 0;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type01 .t-main_bg_square{
		width: 115px;
		height: 158px;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type01 .t-main_bg_circle{
		width: 144px;
		height: 144px;
		bottom: -80px;
		right: 0;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type02 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type02{
		top: 570px;
		right: 0;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type02 .t-main_bg_square{
		width: 115px;
		height: 158px;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type02 .t-main_bg_circle{
		width: 170px;
		height: 170px;
		top: 60px;
		right: -80px;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type03 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type03{
		top: 1090px;
		left: 0;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type03 .t-main_bg_square{
		width: 195px;
		height: 215px;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type03 .t-main_bg_circle{
		display: none;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type04 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type04{
		top: 1195px;
		right: 0;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type04 .t-main_bg_square{
		width: 0px;
		height: 0px;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type04 .t-main_bg_circle{
		width: 170px;
		height: 170px;
		top: 0px;
		left: -72px;
	}
	
	/* .t-main_bg.type_top03 .t-main_bg_obj.type05 */
	
	.t-main_bg.type_top03 .t-main_bg_obj.type05{
		top: 1545px;
		left: 0;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type05 .t-main_bg_square{
		width: 0px;
		height: 0px;
	}
	
	.t-main_bg.type_top03 .t-main_bg_obj.type05 .t-main_bg_circle{
		width: 170px;
		height: 170px;
		top: 0px;
		left: -74px;
	}
	
}

/* ----------------- .t-footer ----------------- */

.t-footer{
	position: relative;
	letter-spacing: 0.05em;
}

.t-footer_in{
	background-color: #ebebeb;
	padding-top: 50px;
	padding-bottom: 30px;
}

.t-footer_content{
	
}

.t-footer_func{
	color: #323c40;
	display: flex;
}

.t-footer_func > *{
	padding: 0 20px;
}

.t-footer_func > *:first-child{
	padding-left: 0;
}

.t-footer_func > *:last-child{
	padding-right: 0;
}

.t-footer_func_head{
	flex-grow: 1;
	display: flex;
	align-items: center;
}

.t-footer_info{
	width: 100%;
	max-width: 620px;
}

.t-footer_info_in{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin: 0 -20px -20px 0;
}

.t-footer_info_in > *{
	padding: 0 20px 20px 0;
}

.t-footer_info_logo_area{
	
}

.t-footer_info_logo_wrap{
	display: inline-block;
	vertical-align: bottom;
}

.t-footer_info_logo{
	
}

.t-footer_info_logo_img{
	
}

.t-footer_info_logo_text{
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	color: #c70909;
	margin: 20px 0 0 0;
}

.t-footer_info_address{
	font-size: 14px;
	line-height: 1.785;
	white-space: nowrap;
}

.t-footer_func_content{
	min-width: 240px;
	max-width: 240px;
}

.t-footer_func_content_in{
	display: flex;
	justify-content: flex-end;
	border-left: 1px solid #a9a9a9;
}

.t-footer_nav_list_wrap{
	line-height: 1;
	margin: 0 0 -5px 0;
	white-space: nowrap;
}

.t-footer_nav_list{
	
}

.t-footer_nav_list_item{
	margin: 0 0 20px 0;
}

.t-footer_nav_list_item:last-child{
	margin-bottom: 0;
}

.t-footer_nav_list_block_wrap{
	
}

.t-footer_nav_list_link{
	display: inline-block;
	vertical-align: bottom;
	text-decoration: none !important;
}

.t-footer_nav_list_block{
	position: relative;
	padding: 0 0 5px 0;
}

.t-footer_nav_list_block:after{
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	right: 0%;
	width: 0px;
	height: 2px;
	background-color: #323c40;
	transition: width 0.4s ease 0s;
}

.t-footer_nav_list_link.gc-active .t-footer_nav_list_block:after,
.gc-normal .t-footer_nav_list_link:hover .t-footer_nav_list_block:after{
	width: 100%;
	left: 0%;
}

.t-footer_nav_list_title01{
	font-size: 14px;
	line-height: 1;
}

.t-footer_copy{
	font-size: 12px;
	line-height: 1;
	text-align: center;
	color: #4d4d4d;
	margin: 50px 0 0 0;
}


@media screen and (max-width: 700px) {
	
	.t-footer{
	}

	.t-footer_in{
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.t-footer_content{

	}

	.t-footer_func{
		flex-wrap: wrap;
	}

	.t-footer_func > *{
		padding: 0px;
	}

	.t-footer_func_head{
		order: 2;
		display: block;
		width: 100%;
	}

	.t-footer_info{
		width: 100%;
		max-width: 620px;
	}

	.t-footer_info_in{
		display: block;
		margin: 0;
	}

	.t-footer_info_in > *{
		padding: 0;
	}
	
	.t-footer_info_logo_area{
		margin: 0 0 12px 0;
	}

	.t-footer_info_logo_text{
		font-size: 11px;
		margin: 8px 0 0 0;
	}

	.t-footer_info_address{
		font-size: 12px;
		line-height: 1.9166;
	}

	.t-footer_func_content{
		order: 1;
		width: 100%;
		min-width: 0px;
		max-width: none;
		margin: 0 0 30px 0;
		display: flex;
		justify-content: flex-start;
	}
	
	.t-footer_func_content_in{
		display: block;
		border-left: none;
		border-bottom: 1px solid #a9a9a9;
		padding: 0 40px 50px 0;
	}

	.t-footer_nav_list_item{
		margin: 0 0 18px 0;
	}

	.t-footer_copy{
		text-align: left;
		margin: 42px 0 0 0;
	}
	
}

/* ----------------- .t-pagetop ----------------- */

.t-pagetop {
	position: absolute;
	bottom: 30px;
	left: 0;
	width: 100%;
	padding-top: 0;
	padding-bottom: 0;
	padding-left: 30px;
	padding-right: 30px;
}

.t-pagetop_in{
	position: relative;
	max-width: none;
}

.t-pagetop_switch_wrap{
	position: absolute;
	top: -60px;
	right: 0;
	width: 60px;
	height: 60px;
}


.t-pagetop_switch,
.t-pagetop_switch_link,
.t-pagetop_switch_obj{
	width: 60px;
	height: 60px;
}


.t-pagetop_switch{
	position: fixed;
	z-index: 20000;
	bottom: 30px;
	display: none;
}

.t-pagetop_switch_link{
	display: block;
	text-decoration: none !important;
}

.t-pagetop_switch_obj{
	border: 1px solid #323c40;
	border-radius: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.t-pagetop_switch_obj_in{
	
}

.t-pagetop_arrow_wrap{
	display: flex;
	justify-content: center;
}

.t-pagetop_arrow{
	transition: transform 0.4s ease 0s;
}

.t-pagetop_text_wrap{
	text-align: center;
	margin: 4px 0 0 0;
}

.t-pagetop_text{
	font-size: 12px;
	line-height: 0.8;
	font-family: "futura-pt", sans-serif;
	font-weight: 500;
	color: #323c40;
}

.gc-normal .t-pagetop_switch_link:hover .t-pagetop_arrow{
	transform: translateY(-5px);
}

.t-pagetop_switch_number{
	bottom: 30px;
	display: none;
}

.t-pagetop_switch_wrap.gc-active .t-pagetop_switch{
	position: absolute;
	top: 0 !important;
}

@media screen and (max-width: 700px) {
	
	.t-pagetop {
		padding-left: 10px;
		padding-right: 10px;
	}

	.t-pagetop_in{
		position: relative;
		max-width: none;
	}

	.t-pagetop_switch_wrap{
		top: -50px;
		width: 50px;
		height: 50px;
	}


	.t-pagetop_switch,
	.t-pagetop_switch_link,
	.t-pagetop_switch_obj{
		width: 50px;
		height: 50px;
	}

	.t-pagetop_switch{
		bottom: 10px;
	}

	.t-pagetop_text_wrap{
		margin: 3px 0 0 0;
	}

	.t-pagetop_text{
		font-size: 11px;
	}

	.t-pagetop_switch_number{
		bottom: 10px;
		display: none;
	}

	.t-pagetop_switch_wrap.gc-active .t-pagetop_switch{
		position: absolute;
		top: 0 !important;
	}
	
}

/* ----------------- .t-main_vision ----------------- */

.t-main_vision{
	white-space: nowrap;
	position: relative;
	height: 298px;
	background: linear-gradient(to bottom, #f4eaec 0%,#eceff4 100%);
}

.t-main_vision_title01{
	position: absolute;
	left: 0;
	top: 170px;
	width: 100%;
	font-size: 45px;
	font-weight: 700;
	text-align: center;
	line-height: 1;
	z-index: 2;
}

.t-main_vision_bg_text{
	position: absolute;
	bottom: 0;
	left: 0;
	height: 0;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}

.t-main_vision_bg_text01{
	font-size: 137px;
	line-height: 0.8;
	letter-spacing: 0.16em;
	color: #fff;
	font-family: "futura-pt", sans-serif;
	font-weight: 600;
	margin: 0 0 -10px 0;
}

@media screen and (max-width: 700px) {
	.t-main_vision{
		height: 200px;
	}

	.t-main_vision_title01{
		top: 130px;
		font-size: 28px;
	}

	.t-main_vision_bg_text01{
		font-size: 52px;
		letter-spacing: 0.00em;
		margin: 0 0 -4px 0;
	}
}

/* ----------------- .temp_portal ----------------- */

.temp_portal .t-main_vision{
	background: linear-gradient(to bottom, #eeb0bd 0%,#afc1de 100%);
}

.temp_portal .t-header:not(.gc-clone) .t-main_nav{
	color: #fff;
}

.temp_portal .t-header:not(.gc-clone) .t-header_logo_obj.type_default{
	display: none;
}

.temp_portal .t-header:not(.gc-clone) .t-header_logo_obj.type_white{
	display: block;
}

.temp_portal .t-header:not(.gc-clone) .t-header_content{
	border-bottom-color: #fff;
}

.temp_portal .t-header:not(.gc-clone) .t-bar{
	background-color: #fff;
}

.temp_portal .t-main_vision_title01{
	color: #fff;
}

.temp_portal .t-main_vision_bg_text01{
	color: #0c67b5;
	opacity: 0.07;
}
