@charset "UTF-8";
/*----------------------------------------

	#dna
	- common
	- d_mv
	- article

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


/*----------------------------------------
	common
-----------------------------------------*/
/* efIn */
.efIn {
	opacity: 0;
	-webkit-transform: translateY(50px);
	    -ms-transform: translateY(50px);
	        transform: translateY(50px);
	-webkit-transition: 1.0s;
	-o-transition: 1.0s;
	transition: 1.0s;
}
@media print {
	.efIn {
		opacity: 1;
		-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
				transform: translateY(0);
	}
}

* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

/* font family */
body {
	font-family: "ヒラギノ角ゴPro W3", Hiragino Kaku Gothic Pro, Osaka, "メイリオ", meiryo, "MS Pゴシック", MS PGothic, Arial, Helvetica, Verdana, sans-serif;
	color: #000;
}
body .min {
	font-family: "ヒラギノ明朝 ProN W3","Hiragino Mincho ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "ＭＳ 明朝", serif;
}
body .montserrat {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
}

/* font color */
.f_b01 {
	color: #004ea2;
}
.f_b02 {
	color: #2180c9;
}
.f_y {
	color: #fff25c;
}
.f_w {
	color: #fff;
}
.f_bk {
	color: #000;
}
.f_g {
	color: #7c7c7c;
}

/* font size */
[class*="font14"]{font-size: 1.4rem;}
[class*="font16"]{font-size: 1.6rem;}
[class*="font18"]{font-size: 1.8rem;}
[class*="font20"]{font-size: 2.0rem;}
[class*="font24"]{font-size: 2.4rem;}
[class*="font26"]{font-size: 2.6rem;}
[class*="font30"]{font-size: 3.0rem;}
[class*="font36"]{font-size: 3.6rem;}
[class*="font56"]{font-size: 5.6rem;}
[class*="font58"]{font-size: 5.8rem;}
[class*="font70"]{font-size: 7.0rem;}
[class*="font72"]{font-size: 7.2rem;}
[class*="font76"]{font-size: 7.6rem;}
[class*="font120"]{font-size: 12.0rem;}
[class*="font126"]{font-size: 12.6rem;}
@media screen and (max-width: 767px){
	[class*="font"][class*="_10"]{font-size: 1.0rem;}
	[class*="font"][class*="_12"]{font-size: 1.2rem;}
	[class*="font"][class*="_14"]{font-size: 1.4rem;}
	[class*="font"][class*="_16"]{font-size: 1.6rem;}
	[class*="font"][class*="_18"]{font-size: 1.8rem;}
	[class*="font"][class*="_20"]{font-size: 2.0rem;}
	[class*="font"][class*="_22"]{font-size: 2.2rem;}
	[class*="font"][class*="_27"]{font-size: 2.7rem;}
	[class*="font"][class*="_28"]{font-size: 2.8rem;}
	[class*="font"][class*="_32"]{font-size: 3.2rem;}
	[class*="font"][class*="_38"]{font-size: 3.8rem;}
	[class*="font"][class*="_39"]{font-size: 3.9rem;}
	[class*="font"][class*="_40"]{font-size: 4.0rem;}
	[class*="font"][class*="_41"]{font-size: 4.1rem;}
	[class*="font"][class*="_42"]{font-size: 4.2rem;}
	[class*="font"][class*="_58"]{font-size: 5.8rem;}
	[class*="font"][class*="_76"]{font-size: 7.6rem;}
	[class*="font"][class*="_84"]{font-size: 8.4rem;}
	[class*="font"][class*="_116"]{font-size: 11.6rem;}
	[class*="font"][class*="_120"]{font-size: 12.0rem;}
}

/* lineheight */
[class*="lh1"] {line-height: 1;}
[class*="lh11"] {line-height: 1.1;}
[class*="lh12"] {line-height: 1.2;}
[class*="lh15"] {line-height: 1.5;}
[class*="lh17"] {line-height: 1.7;}
@media screen and (max-width: 767px){
	[class*="_1lh"] {line-height: 1;}
	[class*="_11lh"] {line-height: 1.1;}
	[class*="_12lh"] {line-height: 1.2;}
	[class*="_15lh"] {line-height: 1.5;}
	[class*="_163lh"] {line-height: 1.63;}
	[class*="_17lh"] {line-height: 1.7;}
	[class*="_175lh"] {line-height: 1.75;}
}

/* text align */
.taC {text-align: center;}
.taL {text-align: left;}
.taR {text-align: right;}

/* link,visited,hover,active */
a:link,
a:visited,
a:hover,
a:active {
	color: #004ea2;
	text-decoration: none;
}

a img,
a>div {
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
}
a:hover img,
a:hover>div {
	opacity: 0.7;
}

/* btn */
.btn01 {
	margin-top: 40px;
}
.btn01 a {
	display: inline-block;
	width: 100%;
	max-width: 360px;
	padding: 1.8em;
	text-align: center;
	background: #fff;
	border: 2px solid #004ea2;
	border-radius: 20px;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}
.btn01 a::after {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 2px 0 0 20px;
	border-top: 3px solid #004ea2;
	border-right: 3px solid #004ea2;
	border-bottom: 3px solid rgba(255,255,255,0.0);
	border-left: 3px solid rgba(255,255,255,0.0);
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transform-origin: left top;
	    -ms-transform-origin: left top;
	        transform-origin: left top;
	vertical-align: top;
}
.btn01 a span {
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}
.btn01:hover a {
	border-color: #58b5fc;
	background-color: #58b5fc;
}
.btn01:hover a span {
	color: #fff;
}
@media screen and (max-width: 1000px){
	.btn01:hover a {
		border-color: inherit;
		background-color: inherit;
	}
	.btn01:hover a span {
		color: inherit;
	}
}
main#main {
	width: 100%;
}
#content {
	
}
#content>div {
	max-width: 100%;
	padding: 0;
}
@media screen and (max-width: 1000px){
	#main {
		margin-top: 0;
	}
}

/*----------------------------------------
	d_mv
-----------------------------------------*/
#d_mv {
	position: relative;
	z-index: 1000;
	opacity: 0;
	margin-bottom: 169px;
	padding-top: 78px;
}
#d_mv .mv_head {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	padding: 28px 0 19px 40px;
	background: #fff;
	transition: transform 0.4s;
}
#d_mv .mv_head.hide {
	transform:translateY(-100%);
}
#d_mv .mv_head img {
	width: auto;
}
#d_mv .mv_body {
	padding: 0 40px;
	text-align: center;
}
#d_mv .mv_body h1 {
	position: relative;
	max-width: 620px;
	margin: 0 auto 23px;
}
#d_mv .mv_body h1 .ja_text {
	position: absolute;
	top: 69%;
	left: 55%;
	letter-spacing: 5px;
}
#d_mv .mv_foot {
	position: relative;
	margin-top: 19px;
	padding: 160px 0 0;
	border-bottom: 4px solid #004ea2;
}
#d_mv .mv_foot::after {
	content: "";
	position: absolute;
	top: auto;
	right: 0;
	left: 0;
	bottom: -23px;
	width: 100%;
	max-width: 1000px;
	height: 180px;
	margin: auto;
	background: url("../img/d_line01.png") no-repeat, #fff;
	background-size: 100% auto;
}
@media screen and (max-width: 767px){
	#d_mv {
		margin-bottom: 122px;
	}
	#d_mv .mv_head {
		padding: 19px 0 20px 20px;
	}
	#d_mv .mv_head img {
		width: 100%;
		max-width: 98px;
	}
	#d_mv .mv_body {
		padding: 0 30px; 
	}
	#d_mv .mv_body h1 .ja_text {
		letter-spacing: 3px;
	}
	#d_mv .mv_body h1 {
		margin-bottom: 21px;
	}
	#d_mv .mv_foot {
		margin-top: 15px;
		padding: 0;
	}
	#d_mv .mv_foot::after {
		top: 0;
		right: 0;
		left: 0;
		bottom: auto;
		width: 100%;
		max-width: 1000px;
		height: 180px;
		margin: auto;
		background: url(../img/d_line01.png) no-repeat, #fff;
		background-size: 100% auto;
	}
}

/*----------------------------------------
	article
-----------------------------------------*/
.sec_title {
	position: relative;
	margin-bottom: 93px;
	padding: 42px 40px 43px; 
	background-color: #004ea2;
}
.sec_title::after {
	content: "";
	position: absolute;
	top: 100%;
	left: calc(50% - 20px);
	border-top: 20px solid #004ea2;
	border-left: 20px solid rgba(255,255,255,0.0);
	border-right: 20px solid rgba(255,255,255,0.0);
}
.sec_title h1 {
	margin: 0 auto;
}
.sec_title > .sub_title::before,
.sec_title > .sub_title::after {
	content: "";
	display: inline-block;
	width: 20px;
	border-bottom: 2px solid #fff;
	vertical-align: middle;
}
.sec_title > .sub_title {
	margin-top: 30px;
	letter-spacing: 4px;
}
.sec_title > .sub_title > span {
	margin: 0 0.8em;
}
@media screen and (max-width: 767px){
	.sec_title::after {
		left: calc(50% - 10px);
		border-top: 10px solid #004ea2;
		border-left: 10px solid rgba(255,255,255,0.0);
		border-right: 10px solid rgba(255,255,255,0.0);
	}
	.sec_title > .sub_title {
		margin-top: 15px;
		letter-spacing: 2px;
	}
	.sec_title > .sub_title::before,
	.sec_title > .sub_title::after {
		width: 15px;
		border-bottom: 1px solid #fff;
	}
	
}



/* philosophy */
#philosophy .sec_title {
	z-index: 2000;
}
#philosophy .sec_title h1 {
	max-width: 601px;
}

/* philosophy - box01 */
#philosophy .box01 {
	margin-bottom: 133px;
}
#philosophy .box01 h2 {
	margin-bottom: 5px;
}

/* philosophy - box02 */
#philosophy .box02 {
	margin-bottom: 102px;
	padding: 0 10px;
}
#philosophy .box02 h2 {
	margin-bottom: 19px;
}
#philosophy .box02 .box_wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	max-width: 1000px;
	margin: 0 auto;
	border: 2px solid #004ea2;
	border-radius: 20px;
}
#philosophy .box02 .box_wrapper .box_inner {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	/*-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;*/
}
#philosophy .box02 .box_wrapper .box_inner::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -8px;
	width: 39px;
	height: 101px;
	background: url("../img/d_arrow01.png") no-repeat;
	
}
#philosophy .box02 .box_wrapper .box_inner .head {
	
}
#philosophy .box02 .box_wrapper .box_inner .sub {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 0 0 0 19px;
}
#philosophy .box02 .box_wrapper .box_inner .sub p>span {
	display: inline-block;
}
#philosophy .box02 .box_wrapper .i01 {
	width: 56.6%;
	border-right: 2px solid #004ea2;
}
#philosophy .box02 .box_wrapper .i01 a {
	display: block;
	padding: 24px 20px 27px 37px;
}
#philosophy .box02 .box_wrapper .i01 .box_inner .head h3 {
	width: 2.0em;
	letter-spacing: -7px;
}
#philosophy .box02 .box_wrapper .i01 .box_inner .sub {
	
}
#philosophy .box02 .box_wrapper .i02 .box_inner .head h3 {
	width: 1.0em;
}
#philosophy .box02 .box_wrapper .i02 {
	width: 43.4%;
}
#philosophy .box02 .box_wrapper .i02 a {
	display: block;
	padding: 24px 18px 27px 31px;
}
#philosophy .box02 .box_wrapper .i02 .box_inner .sub {
	
}
#philosophy .box02 .box_wrapper .i03 {
	width: 100%;
	border-top: 2px solid #004ea2;
}
#philosophy .box02 .box_wrapper .i03 a {
	display: block;
	padding: 26px 23px 21px 36px;
}
#philosophy .box02 .box_wrapper .i03 .box_inner {
	position: relative;
}
#philosophy .box02 .box_wrapper .i03 .box_inner::after {
	right: -5px;
	bottom: -2px;
}
#philosophy .box02 .box_wrapper .i03 .box_inner .head {
	padding-right: 60px;
}
#philosophy .box02 .box_wrapper .i03 .box_inner .head h3 {
	letter-spacing: -6px;
}
#philosophy .box02 .box_wrapper .i03 .box_inner .head h3 span {
	display: block;
}
#philosophy .box02 .box_wrapper .i03 .box_inner .head h3 span+span {
	margin-left: calc(3.0em - 17px);
}
#philosophy .box02 .box_wrapper .i03 .box_inner .sub {
	position: absolute;
	top: 0;
	right: 0;
}

/* philosophy - box03 */
#philosophy .box03 {
	
}
#philosophy .box03 [id^="p_sec"] [class^="title"] {
	margin-bottom: 30px;
}
#philosophy .box03 [id^="p_sec"] [class^="title"] h2 {
	letter-spacing: -5px;
}
#philosophy .box03 [id^="p_sec"] [class^="title"] p {
	margin-top: -5px;
}
#philosophy .box03 [id^="p_sec"] [class^="title"] ruby {
	display: inline-table;
}
#philosophy .box03 [id^="p_sec"] [class^="title"] ruby rt {
	display: block;
	margin: -10.5rem 0 0 0;
	text-align: center;
}

#philosophy .box03 [id^="p_sec"] [class^="text"] {
	
}
#philosophy .box03 #p_sec01 {
	margin-bottom: 100px;
	padding: 30px 0 0 0;
}
#philosophy .box03 #p_sec02 {
	margin: 0 10px 117px;
	padding: 30px 0 0 0;
}
#philosophy .box03 #p_sec02 .sub_text {
	position: relative;
	max-width: 840px;
	margin: 34px auto 0;
	padding: 33px 60px 33px 187px;
	background: #eaf0f6;
}
#philosophy .box03 #p_sec02 .sub_text::before {
	content: "";
	position: absolute;
	top: 39px;
	left: 64px;
	width: 84px;
	height: 100px;
	background: url("../img/d_logo02.jpg") no-repeat;
}
#philosophy .box03 #p_sec02 .sub_text p {
	margin-top: 8px;
}
#philosophy .box03 #p_sec03 {
	margin: 0 10px 144px;
	padding: 30px 0 0 0;
}
#philosophy .box03 #p_sec03 .text {
	margin-top: -7px;
}
@media screen and (max-width: 767px){
	#philosophy .sec_title {
		margin-bottom: 47px;
		padding: 20px 67px;
	}
	#philosophy .box01 {
		margin-bottom: 39px;
		padding: 0 50px;
	}
	#philosophy .box01 h2 {
		margin-bottom: 0;
	}
	#philosophy .box02 {
		margin-bottom: 23px;
		padding: 0 30px;
	}
	#philosophy .box02 .box_wrapper {
		border-width: 1px;
		border-radius: 10px;
	}
	#philosophy .box02 h2 {
		margin-bottom: 8px;
	}
	#philosophy .box02 .box_wrapper .box_inner {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	#philosophy .box02 .box_wrapper .box_inner::after {
		content: none;
	}
	#philosophy .box02 .box_wrapper .box_inner .head h3 {
		margin: 0 auto;
	}
	#philosophy .box02 .box_wrapper .box_inner .sub {
		position: relative;
		margin: 0 0 0 auto;
		padding: 0;
	}
	#philosophy .box02 .box_wrapper .box_inner .sub p {
		text-align: right;
	}
	#philosophy .box02 .box_wrapper .box_inner .sub p span {
		display: block;
	}
	#philosophy .box02 .box_wrapper .box_inner .sub::after {
		content: "";
		position: absolute;
		right: 0;
		bottom: -12px;
		width: 17px;
		height: 44px;
		background: url(../img/d_arrow01.png) no-repeat;
		background-size: 100% auto;
	}
	#philosophy .box02 .box_wrapper .i01 {
		width: 53%;
		border-width: 1px;
	}
	#philosophy .box02 .box_wrapper .i01 a {
		padding: 18px 10px 23px 15px;
	}
	#philosophy .box02 .box_wrapper .i01 .box_inner .head h3 {
		letter-spacing: -3px;
	}
	#philosophy .box02 .box_wrapper .i01 .box_inner .sub::after {
		right: 0;
	}
	#philosophy .box02 .box_wrapper .i01 .box_inner .sub p {
		padding: 10px 28px 0 0;
	}
	#philosophy .box02 .box_wrapper .i01 .box_inner .sub p span {
		display: block;
	}
	#philosophy .box02 .box_wrapper .i02 {
		width: 47%;
	}
	#philosophy .box02 .box_wrapper .i02 a {
		padding: 18px 12px 23px 10px;
	}
	#philosophy .box02 .box_wrapper .i02 .box_inner .sub::after {
		right: -2px;
	}
	#philosophy .box02 .box_wrapper .i02 .box_inner .sub p {
		padding: 10px 25px 0 0;
	}
	#philosophy .box02 .box_wrapper .i03 {
		border-width: 1px;
	}
	#philosophy .box02 .box_wrapper .i03 a {
		padding: 18px 20px 24px;
	}
	#philosophy .box02 .box_wrapper .i03 .box_inner .head {
		padding: 0;
	}
	#philosophy .box02 .box_wrapper .i03 .box_inner .head h3 {
		letter-spacing: -3px;
	}
	#philosophy .box02 .box_wrapper .i03 .box_inner .head h3 span+span {
		margin: 0;
	}
	#philosophy .box02 .box_wrapper .i03 .box_inner .sub {
		position: static;
	}
	#philosophy .box02 .box_wrapper .i03 .box_inner .sub::after {
		right: -10px;
	}
	#philosophy .box02 .box_wrapper .i03 .box_inner .sub p {
		padding: 8px 16px 0 0;
	}
	#philosophy .box03 [id^="p_sec"] {
		
	}
	#philosophy .box03 [id^="p_sec"] [class^="title"] {
		margin-bottom: 18px;
	}
	#philosophy .box03 [id^="p_sec"] [class^="title"] h2 {
		letter-spacing: -2px;
	}
	#philosophy .box03 [id^="p_sec"] [class^="title"] p {
		margin-top: 2px;
	}
	#philosophy .box03 [id^="p_sec"] [class^="text"] {
		margin: 0 50px;
	}
	#philosophy .box03 [id^="p_sec"] [class^="text"] p>span {
		display: inline-block;
	}
	#philosophy .box03 #p_sec01 {
		margin-bottom: 17px;
	}
	#philosophy .box03 #p_sec02 {
		margin: 0 0 15px;
	}
	#philosophy .box03 #p_sec02 .sub_text {
		max-width: 100%;
		margin: 18px 50px 0;
		padding:  100px 20px 19px 20px;
	}
	#philosophy .box03 #p_sec02 .sub_text::before {
		top: 25px;
		left: 0;
		right: 0;
		width: 46px;
		height: 100px;
		margin: 0 auto;
		background: url(../img/d_logo02.jpg) no-repeat;
		background-size: 100% auto;
	}
	#philosophy .box03 #p_sec03 {
		margin: 0 0 55px;
	}
	#philosophy .box03 #p_sec03 .text {
		margin-top: -6px;
	}
	
	#philosophy .box03 [id^="p_sec"] [class^="title"] ruby rt {
		margin: -5.8rem 0 0 0;
	}
}





/* point */
#point {
	
}
#point .sec_title {
	background: #2180c9;
}
#point .sec_title::after {
	border-top-color: #2180c9;
}
#point .sec_title h1 {
	max-width: 779px;
}

/* point - box01 */
#point .box01 {
	margin-top: -4px;
}
#point .box01 .box_title {
	margin-bottom: 40px;
}
#point .box01 .box_title h2 {
	display: inline-block;
	border-bottom: 4px solid #000;
}
#point .box01 .box_inner {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
}
#point .box01 .box_inner .pic {
	position: relative;
	z-index: 2;
	width: 50%;
}
#point .box01 .box_inner .pic figure {
	position: relative;
}
#point .box01 .box_inner .pic figure figcaption {
	position: absolute;
	right: 10px;
	bottom: 5px;
}
#point .box01 .box_inner .text {
	position: relative;
	z-index: 1;
	width: calc(50% + 50px);
	margin-left: -50px;
	padding: 0 50px;
	background: #eaf0f6;
}
#point .box01 .box_inner .text .text_inner {
	max-width: 550px;
	padding: 44px 0 30px 50px;
}
#point .box01 .box_inner .text .text_inner h3 {
	margin-bottom: 29px;
	padding: 0 0 0 0.35em;
	text-indent: -1.0em;
}
_:-ms-lang(x)::-ms-backdrop, #point .box01 .box_inner .text .text_inner h3 {
	font-weight: normal;
}
#point .box01 .box_inner .text .text_inner .btn01 {
	margin-top: 34px;
}

/* point - box02 */
#point .box02 {
	position: relative;
	z-index: 2;
	padding: 130px 0 0 0;
}
#point .box02 .box_title {
	margin-bottom: 30px;
}
#point .box02 .box_title h2 {
	display: inline-block;
	border-bottom: 4px solid #000;
}
#point .box02>p {
	margin: 0 10px;
}

/* point - box02 - slide */
#point .point_slide {
	max-width: 1100px;
	margin: 34px auto 0;
}
#point .point_slide .slick-slide:not(.slick-center) {
	max-width: 540px;
	-webkit-transform: scale(0.47);
	-ms-transform: scale(0.47);
	transform: scale(0.47);
}
#point .point_slide .slick-slide {
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}
#point .point_slide .slick-center {
	max-width: 540px;
}
#point .point_slide .pic figure {
	position: relative;
	margin: 0 -60px;
}
#point .point_slide .pic figure figcaption {
	position: absolute;
	top: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	margin: 20px 0 0;
	padding: 0 0 32px;
}
#point .point_slide .pic figure figcaption .year {
	line-height: 50px;
}
#point .point_slide .pic figure figcaption .event {
	width: 100%;
	margin-left: 11px;
}
#point .point_slide .pic figure figcaption .event dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
}
#point .point_slide .pic figure figcaption .event dl+dl {
	margin-top: 10px;
}
#point .point_slide .pic figure figcaption .event dl dt {
	width: 4.9em;
	font-size: 1.4rem;
	font-weight: bold;
	color: #fff;
	text-align: center;
}
#point .point_slide .pic figure figcaption .event dl dt span {
	display: block;
	padding: 2px 0;
	border-radius: 2px;
}
#point .point_slide .pic figure figcaption .event dl.bg_blue01 dt span {
	background: #004ea2;
}
#point .point_slide .pic figure figcaption .event dl.bg_blue02 dt span {
	background: #2180c9;
}
#point .point_slide .pic figure figcaption .event dl dd {
	width: calc(100% - 4.5em - 8px);
	margin-left: 8px;
}

/* slide - custam */
.slick-arrow {
	width: 46px;
	height: 46px;
	background: rgba(255,255,255,0.0);
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
}
.slick-arrow.slick-prev {
	left: -42px;
	margin-top: -23px;
}
.slick-arrow.slick-prev::before,
.slick-arrow.slick-next::before {
	width: 40px;
	height: 40px;
	border-top: 8px solid #004ea2;
	border-right: 8px solid #004ea2;
	border-bottom: 8px solid rgba(255,255,255,0.0);
	border-left: 8px solid rgba(255,255,255,0.0);
}
.slick-arrow.slick-next {
	right: -42px;
	margin-top: -23px;
}

.slick-arrow.slick-prev:focus,
.slick-arrow.slick-next:focus {
	opacity: 1;
}
.slick-arrow.slick-prev:focus:hover,
.slick-arrow.slick-next:focus:hover {
	opacity: 0.7;
}

.slick-dots li {
	margin: 0 3px;
}
.slick-dots li button {
	width: 18px;
	height: 18px;
	background: #e1e9f2;
	border-radius: 50%;
}
.slick-dots li button:before {
	content: none;
}
.slick-dots li.slick-active {
    pointer-events: none;
}
.slick-dots li.slick-active button {
	background: #004ea2;
}

/* point - box03 */
#point .box03 {
	position: relative;
	z-index: 1;
	padding: 161px 0 0 0;
}
#point .box03 .box_title {
	position: relative;
	margin-bottom: 32px;
}
#point .box03 .box_title #businesses {
	position: absolute;
	top: -50px;
}
#point .box03 .box_title h2 {
	display: inline-block;
	border-bottom: 4px solid #000;
}
#point .box03>p {
	margin: 0 10px;
}
#point .box03 .b01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 32px;
}
#point .box03 .b01 a {
	width: 33.3333%;
}
#point .box03 .b01 figure {
	position: relative;
}
#point .box03 .b01 figure figcaption {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 0 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
#point .box03 .b01 figure figcaption h3 {
	margin-bottom: -6px;
}
#point .box03 .b01 figure figcaption h3 span {
	display: block;
	margin-bottom: 3px;
}
#point .box03 .b01 figure figcaption h3 span+span {
	position: relative;
	margin-left: -33px;
}
#point .box03 .b01 figure figcaption h3 span+span::after {
	content: "";
	position: absolute;
	top: 14px;
	left: calc(100% + 8px);
	width: 19px;
	height: 19px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	border-bottom: 3px solid rgba(255,255,255,0.0);
	border-left: 3px solid rgba(255,255,255,0.0);
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transform-origin: center center;
	    -ms-transform-origin: center center;
	        transform-origin: center center;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
}

#point .box03 .b02 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	max-width: 1020px;
	margin: 100px auto 150px;
	padding: 0 10px;
}
#point .box03 .b02 figure {
	width: calc(50% - 40px);
}
#point .box03 .b02 figure figcaption {
	margin-bottom: 33px;
}



@media screen and (max-width:1199px){
	#point .point_slide {
		max-width: 1200px;
		margin: 18px 0 0;
	}
	#point .point_slide .slick-slide:not(.slick-center) {
		max-width: none;
		-webkit-transform: scale(1);
		    -ms-transform: scale(1);
		        transform: scale(1);
		-webkit-transition: 0s;
		-o-transition: 0s;
		transition: 0s;
	}
	#point .point_slide .slick-slide {
		-webkit-transition: 0s;
		-o-transition: 0s;
		transition: 0s;
	}
	#point .point_slide .slick-slide.slick-center {
		max-width: none;
	}
	#point .point_slide .pic figure {
		margin: 0;
	}
	#point .point_slide .pic figure figcaption {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		margin-top: 5px;
		padding: 0 0 7px;
	}
	#point .point_slide .pic figure figcaption .event {
		margin: 4px 0 0 0;
	}
	#point .point_slide .pic figure figcaption .year {
		line-height: 70px;
	}
	#point .point_slide .pic figure figcaption .event dl+dl {
		margin-top: 6px;
	}
	#point .point_slide .pic figure figcaption .event dl dt {
		width: 5em;
		font-size: 1.0rem;
	}
	#point .point_slide .pic figure figcaption .event dl dd {
		width: calc(100% - 5em - 10px);
		margin-left: 10px;
	}
	.slick-arrow {
		top: 0;
		width: 50px;
		background: rgba(255,255,255,0.5);
		overflow: hidden;
	}
	.slick-arrow.slick-prev {
		left: 0;
		margin-top: 0;
	}
	.slick-arrow.slick-next {
		right: 0;
		margin-top: 0;
	}
	.slick-arrow.slick-prev::before,
	.slick-arrow.slick-next::before {
		width: 27px;
		height: 27px;
		border-top: 4px solid #004ea2;
		border-right: 4px solid #004ea2;
		border-bottom: 4px solid rgba(255,255,255,0.0);
		border-left: 4px solid rgba(255,255,255,0.0);
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.slick-arrow.slick-prev::before {
		margin-left: 7px;
	}
	.slick-arrow.slick-next::before {
		margin-left: -7px;
	}
	.slick-dots li {
		margin: 0 12px;
	}
	
	#point .box01 .box_inner {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	#point .box01 .box_inner .pic {
		width: 100%;
	}
	#point .box01 .box_inner .pic figure figcaption {
		right: 5px;
		bottom: 3px;
	}
	#point .box01 .box_inner .pic figure figcaption p {
		font-size: 8px;
	}
	#point .box01 .box_inner .text {
		width: 100%;
		margin-left: 0;
		padding: 0;
	}
	#point .box01 .box_inner .text .text_inner {
		max-width: none;
		padding: 26px 31px 30px;
	}
	#point .box01 .box_inner .text .text_inner h3 {
		margin-bottom: 17px;
	}
	#point .box01 .box_inner .text .text_inner .btn01 {
		margin-top: 19px;
		text-align: center;
	}
	#point .box01 .box_inner .text .text_inner .btn01 a {
		width: 100%;
		max-width: 250px;
		padding: 1.1em;
		border-width: 1px;
		border-radius: 15px;
	}
	#point .box01 .box_inner .text .text_inner .btn01 a::after {
		width: 15px;
		height: 15px;
		margin: 1px 0 0 14px;
		border-top: 2px solid #004ea2;
		border-right: 2px solid #004ea2;
		border-bottom: 2px solid rgba(255,255,255,0.0);
		border-left: 2px solid rgba(255,255,255,0.0);
	}
	
	
	#point .box02 {
		padding-top: 54px;
	}
	#point .box02 .box_title {
		margin-bottom: 16px;
	}
	#point .box02 .box_title h2 {
		padding-bottom: 1px;
		border-width: 3px;
	}
	#point .box02>p {
		margin: 0 50px;
		text-align: left;
	}
	
	#point .box03 .b02 {
		margin-top: 54px;
		margin-bottom: 60px;
		padding: 0 50px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	#point .box03 .b02 figure {
		width: 100%;
	}
	#point .box03 .b02 figure+figure {
		margin-top: 57px;
	}
	#point .box03 .b02 figure figcaption {
		margin-bottom: 15px;
	}
}
@media screen and (max-width:767px) {
	#point .sec_title {
		margin-bottom: 47px;
		padding: 20px 31px;
	}
	#point .box01 .box_title {
		margin-bottom: 20px;
	}
	#point .box01 .box_title h2 {
		padding-bottom: 1px;
		border-width: 3px;
	}
	
	#point .point_slide .pic figure figcaption .year {
		line-height: 50px;
	}
	
	#point .box03 {
		padding-top: 79px;
	}
	#point .box03 .box_title {
		margin-bottom: 17px;
	}
	#point .box03 .box_title h2 {
		padding-bottom: 1px;
		border-width: 3px;
	}
	#point .box03>p {
		margin: 0 50px;
		text-align: left;
	}
	#point .box03 .b01 {
		margin-top: 20px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	#point .box03 .b01 a {
		width: 100%;
	}
	#point .box03 .b01 figure {
		height: 160px;
		overflow: hidden;
	}
	#point .box03 .b01 figure img {
		margin-top: -14%;
	}
	#point .box03 .b01 figure figcaption h3 span:first-child {
		margin: -6px 0 1px 0;
	}
	#point .box03 .b01 figure figcaption h3 span+span {
		margin: -4px 0 0 -32px;
		padding: 0 0 0 4px;
	}
	#point .box03 .b01 figure figcaption h3 span+span::after {
		top: 12px;
		left: calc(100% + 4px);
	}
}



/* future */
#future {
	
}
#future .sec_title {
	margin-bottom: 56px;
	padding-bottom: 38px;
}
#future .sec_title h1 {
	max-width: 361px;
}
#future .sec_title p {
	margin-top: 26px;
}
/* future - box01 */
#future .box01 {
	
}
#future .box01 .head {
	max-width: 1000px;
	margin: 0 auto 56px;
}
#future .box01 .head h2 img {
	max-width: 981px;
	padding: 0 20px;
}
#future .box01 .body {
	background: url("../img/d_bg01.jpg") no-repeat;
	background-size: cover;
	background-position: center top;
}
#future .box01 .body .body_inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
#future .box01 .body .body_inner>div {
	width: 50%;
}
#future .box01 .body .body_inner .b02 {
	padding: 35px 50px 50px 40px;
	background: rgba(255,255,255,0.8);
}
#future .box01 .body .body_inner .b02>p {
	margin-bottom: 27px;
}
#future .box01 .body .body_inner .b02 .name_text {
	padding: 7px 10px 0 0;
}
#future .box01 .body .body_inner .b02 .name_text p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
#future .box01 .body .body_inner .b02 .name_text p span:first-child {
	margin: 10px 40px 0 0;
}
#future .box01 .body .body_inner .b02 .name_text p span img {
	width: auto;
}
/* future - box02-04 */
#future .box02,
#future .box03,
#future .box04 {
	padding-top: 100px;
}
#future .box02 .box_inner,
#future .box03 .box_inner,
#future .box04 .box_inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 1100px;
	margin: 0 auto;
}
#future .box02 .box_inner .text,
#future .box03 .box_inner .text,
#future .box04 .box_inner .text {
	width: 50%;
	margin-bottom: 40px;
	padding: 46px 150px 50px 50px;
	background: #004ea2;
}
#future .box02 .box_inner .text h3,
#future .box03 .box_inner .text h3,
#future .box04 .box_inner .text h3 {
	margin-bottom: 30px;
}
#future .box02 .box_inner .pic,
#future .box03 .box_inner .pic,
#future .box04 .box_inner .pic {
	position: relative;
	width: calc(50% + 120px);
	margin-top: 150px;
	margin-left: -120px;
}
#future .pic .btns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
#future .pic .btns .btn01 {
	width: calc(50% - 5px);
	margin-top: 20px;
}
#future .pic .btns .btn01 a {
	width: 100%;
	max-width: 330px;
}
#future .box03 .box_inner .pic .btns .btn01+.btn01 a {
	padding: 0.9em 1.6em;
}
#future .box03 .box_inner .pic .btns .btn01+.btn01 a span {
	display: inline-block;
}
#future .box03 .box_inner .pic .btns .btn01+.btn01 a::after {
	margin-top: 7px;
}
#future .box03 .box_inner {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
}
#future .box03 .box_inner .pic {
	margin-top: 140px;
	margin-left: 0;
	margin-right: -120px;
}
#future .box03 .box_inner .text {
	padding: 45px 48px 50px 179px;
	background-color: #2180c9;
}
#future .box03 .box_inner .text h3 span {
	margin-left: -50px;
}
#future .box03 .box_inner .text h3 span:last-child {
	display: block;
	margin-right: -5px;
	padding: 2px 0 0 0;
}

#future .box04 .box_inner .text {
	margin-bottom: 75px;
    padding-right: 170px;
}
#future .box04 .box_inner .text h3 {
	margin-right: -50px;
}
#future .box04 .box_inner .pic .images {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
#future .box04 .box_inner .pic .images>div {
	width: 32%;
}
#future .box04 .box_inner .pic .images>div:nth-child(-n+3) {
	margin-bottom: 16px;
}
#future .box04 .box_inner .pic .images>div:last-child a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	height: 100%;
	padding: 15px;
	border: 2px solid #004ea2;
	border-radius: 20px;
}
#future .box04 .box_inner .pic .images>div:last-child a:hover {
	opacity: 0.7;
}
#future .box04 .box_inner .pic .images>div:last-child a:hover div {
	opacity: 1;
}
#future .box04 .box_inner .pic .images>div:last-child a .inner {
	margin-top: 13px;
}
#future .box04 .box_inner .pic .images>div:last-child a span {
	position: relative;
	display: block;
	margin: 12px 0 0 19px;
}
#future .box04 .box_inner .pic .images>div:last-child a span::after {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 0 2px 15px;
	border-top: 3px solid #004ea2;
	border-right: 3px solid #004ea2;
	border-bottom: 3px solid rgba(255,255,255,0.0);
	border-left: 3px solid rgba(255,255,255,0.0);
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transform-origin: left top;
	    -ms-transform-origin: left top;
	        transform-origin: left top;
}
@media screen and (max-width:1000px) {
	#future .box01 .body {
		background: none;
	}
	#future .box01 .body .body_inner {
		display: block;
	}
	#future .box01 .body .body_inner .b01 {
		width: 100%;
		height: 500px;
		background: url(../img/d_p08.jpg) no-repeat;
		background-size: cover;
		background-position: center top;
	}
	#future .box01 .body .body_inner .b02 {
		width: 100%;
	}
	#future .box01 .body .body_inner .b02 .pc {
		display: none;
	}	
}
@media screen and (max-width:1100px) {
	#future .box02 .box_inner,
	#future .box03 .box_inner,
	#future .box04 .box_inner {
		display: block;
	}
	#future .box02 .box_inner .text,
	#future .box03 .box_inner .text,
	#future .box04 .box_inner .text {
		width: 100%;
		margin-bottom: 0;
		padding: 40px 50px 100px;
	}
	#future .box02 .box_inner .pic,
	#future .box03 .box_inner .pic {
		width: calc(100% - 50px);
		margin-top: -60px;
	}
	#future .box02 .box_inner .pic {
		margin-left: 50px;
	}
	#future .pic .btns {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	#future .pic .btns .btn01 {
		width: 100%;
		margin-top: 20px;
		text-align: center;
	}
	#future .pic .btns .btn01+.btn01 {
		margin-top: 15px;
	}
	#future .box02 .pic .btns {
		margin-left: -50px;
	}
	#future .box03 .pic .btns {
		margin-right: -50px;
	}
	#future .box02 .pic .btns {
		margin-left: -50px;
	}
	
	#future .box04 .box_inner .pic {
		width: calc(100% - 100px);
		margin: -60px 50px;
	}
	#future .box04 .box_inner .pic .images>div {
		width: calc(50% - 10px);
	}
	#future .box04 .box_inner .pic .images>div:nth-child(-n+3) {
		margin-bottom: 0;
	}
	#future .box04 .box_inner .pic .images>div:nth-child(n+3) {
		margin-top: 20px;
	}
	#future .box04 .box_inner .pic .images>div:last-child a .inner {
		width: 100%;
	}
}
@media screen and (max-width:767px) {
	#future .sec_title {
		margin-bottom: 47px;
		padding-top: 20px;
		padding-bottom: 18px;
	}
	#future .sec_title h1 {
		max-width: 145px;
	}
	#future .sec_title p {
		margin-top: 10px;
	}
	#future .box01 .head {
		margin-bottom: 18px;
	}
	#future .box01 .body .body_inner .b01 {
		height: 293px;
	}
	#future .box01 .body .body_inner .b02 {
		padding: 25px 30px 60px 30px;
	}
	#future .box01 .body .body_inner .b02>p {
		margin-bottom: 18px;
	}
	#future .box01 .body .body_inner .b02 .name_text {
		padding: 2px 0 0 0;
	}
	#future .box01 .body .body_inner .b02 .name_text p span:first-child {
		margin: 0 12px 0 0;
	}
	#future .box01 .body .body_inner .b02 .name_text p span img {
		width: 100%;
		max-width: 172px;
	}
	#future .box02 {
		padding-top: 0;
	}
	#future .box02 .box_inner .text,
	#future .box03 .box_inner .text,
	#future .box04 .box_inner .text {
		padding: 24px 50px 68px;
	}
	#future .box02 .box_inner .text h3 span:last-child,
	#future .box03 .box_inner .text h3 span:last-child,
	#future .box04 .box_inner .text h3 span:last-child {
		display: block;
		margin-top: 5px;
		letter-spacing: -1px;
	}
	#future .box02 .box_inner .text h3,
	#future .box03 .box_inner .text h3,
	#future .box04 .box_inner .text h3 {
		margin-bottom: 11px;
	}
	#future .box02 .box_inner .pic,
	#future .box03 .box_inner .pic {
		margin-top: -50px;
	}
	
	#future .box_inner .pic .btn01 {
		margin-top: 15px;
		text-align: center;
	}
	#future .box_inner .pic .btn01+.btn01 {
		margin-top: 10px;
	}
	#future .box_inner .pic .btn01 a {
		width: 100%;
		max-width: 250px;
		padding: 1.1em;
		border-width: 1px;
		border-radius: 15px;
	}
	#future .box_inner .pic .btn01 a::after {
		width: 15px;
		height: 15px;
		margin: 1px 0 0 14px;
		border-top: 2px solid #004ea2;
		border-right: 2px solid #004ea2;
		border-bottom: 2px solid rgba(255,255,255,0.0);
		border-left: 2px solid rgba(255,255,255,0.0);
	}
	
	
	#future .box03 {
		padding-top: 60px;
	}
	#future .box03 .box_inner .text h3 {
		text-align: left;
	}
	#future .box03 .box_inner .text h3 span {
		margin: 0 0 0 0;
	}
	#future .box03 .box_inner .text h3 span:last-child {
		margin-top: 1px;
	}
	#future .box03 .box_inner .pic .btns .btn01+.btn01 a {
		padding: 0.5em 1.6em;
	}
	
	#future .box04 {
		padding-top: 60px;
	}
	#future .box04 .box_inner .pic {
		margin-top: -50px;
		margin-bottom: 0;
	}
	#future .box04 .box_inner .pic .images>div {
		width: calc(50% - 8px);
	}
	#future .box04 .box_inner .pic .images>div:nth-child(n+3) {
		margin-top: 15px;
	}
	#future .box04 .box_inner .pic .images>div:last-child a {
		height: 100%;
		padding: 10px;
		border-width: 1px;
		border-radius: 10px;
	}
	#future .box04 .box_inner .pic .images>div:last-child a span {
		margin: 7px 0 0 2px;
	}
	#future .box04 .box_inner .pic .images>div:last-child a span::after {
		width: 14px;
		height: 14px;
		margin: 0 -1px 2px 8px;
		border-top: 2px solid #004ea2;
		border-right: 2px solid #004ea2;
		border-bottom: 2px solid rgba(255,255,255,0.0);
		border-left: 2px solid rgba(255,255,255,0.0);
	}
	#future .box04 .box_inner .pic .images>div:last-child a .inner {
		margin-top: 7px;
	}
}


/* footer */
footer {
	padding-top: 230px;
}
footer .f_menu {
	position: relative;
	z-index: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 38px 60px 50px 40px;
	border-top: 2px solid #004ea2;
}
footer .f_menu::after {
	content: "";
	position: absolute;
	top: -81px;
	right: calc((100% - 942px)/2);
	width: 480px;
	height: 90px;
	background: url("../img/d_line02.png") no-repeat, #fff;
	background-size: 480px auto;
}
footer .f_menu [class^="box_"] {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
footer .f_menu .box_l .f_logo {
	margin-right: 40px;
}
footer .f_menu .box_l .f_logo img {
	width: auto;
}
footer .f_menu .box_r {
	margin-left: 40px;
}
footer .f_menu .box_r a+a {
	margin-left: 38px;
}
footer > #pagetop {
	opacity: 1;
	z-index: 2;
	top: 170px;
	right: 0;
	width: 60px;
	height: 62px;
	border-top-left-radius: 10px;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
	border-top: 2px solid #004ea2;
	border-left: 2px solid #004ea2;
	border-bottom: none;
	border-right: none;
	background: #fff;
	-webkit-box-shadow: inset 0 -5px 0 0 rgba(255,255,255,1.0),0 5px 0 0 rgba(255,255,255,1.0);
	        box-shadow: inset 0 -5px 0 0 rgba(255,255,255,1.0),0 5px 0 0 rgba(255,255,255,1.0);
	cursor: pointer;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}
footer > #pagetop::after {
	top: calc(50% - 4px);
	left: calc(50% - 10px);
	width: 13px;
	height: 13px;
	border-top: 4px solid #004ea2;
	border-right: 4px solid #004ea2;
	border-bottom: 4px solid rgba(255,255,255,0.0);
	border-left: 4px solid rgba(255,255,255,0.0);
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
}
footer > #pagetop:hover {
	border-top: 2px solid #004ea2;
	border-left: 2px solid #004ea2;
	border-bottom: none;
	border-right: none;
	background: #fff;
}
footer > #pagetop:hover::after {
	border-top: 4px solid #004ea2;
    border-right: 4px solid #004ea2;
	opacity: 0.7;
}
@media screen and (max-width: 1100px){
	footer .f_menu::after {
		right: 60px;
	}
	footer .f_menu {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}
	footer .f_menu .box_l {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
	footer .f_menu .box_l .f_logo {
		margin: 30px 0 0;
	}
	footer .f_menu .box_l .copyright {
		margin: 30px 0 0;
	}
	footer .f_menu .box_r {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		margin-left: 0;
	}
	footer .f_menu .box_r a {
		width: 50%;
	}
	footer .f_menu .box_r a+a {
		margin-left: 0;
	}
	footer .f_menu .box_r a:nth-child(odd) {
		padding-right: 15px;
	}
	footer .f_menu .box_r a:nth-child(n+3) {
		margin-top: 15px;
	}
}
@media screen and (max-width: 767px){
	footer {
		padding-top: 110px;
	}
	footer > #pagetop {
		top: 60px;
		right: 0;
		width: 50px;
		height: 51px;
		border-top-left-radius: 5px;
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
		border-bottom-left-radius: 0;
		border-top: 1px solid #004ea2;
		border-left: 1px solid #004ea2;
		border-bottom: none;
		border-right: none;
		background: #fff;
		-webkit-box-shadow: inset 0 -5px 0 0 rgba(255,255,255,1.0), 0 5px 0 0 rgba(255,255,255,1.0);
		        box-shadow: inset 0 -5px 0 0 rgba(255,255,255,1.0), 0 5px 0 0 rgba(255,255,255,1.0);
		cursor: pointer;
		-webkit-transition: none;
		-o-transition: none;
		transition: none;
	}
	footer .f_menu {
		padding: 30px 20px 20px 20px;
		border-width: 1px;
	}
	footer .f_menu::after {
		top: auto;
		bottom: 100%;
		right: 30%;
		width: 50%;
		background-size: 100%;
		background-position: bottom;
		margin-bottom: -0.9%;
	}
	footer .f_menu .box_r a:nth-child(n+3) {
		margin-top: 13px;
	}
	footer .f_menu .box_l .copyright {
		margin-top: 21px;
	}
	footer .f_menu .box_l .f_logo {
		margin: 31px 0 0;
	}
}
/* copyright */
.copyright {
	letter-spacing: -0.03em;
}