@charset "utf-8";

/* **********************************************************
	header overwrite
********************************************************** */
header .header__navi { -webkit-box-sizing: border-box; box-sizing: border-box; background-color: rgba(0,0,0,0.3); border-bottom: 0px; padding: 0 20px; position: absolute; top: 100%; left: 0px; width: 100%; }
header .header__navi:after { background-color: rgba(0,0,0,0.2); content: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; height: 1px; }
header .header__navi > div.mdl__layout_Lv1 a,
header .header__navi > div.mdl__layout_Lv1 span { color: #ffffff; }
header .header__navi > div.mdl__layout_Lv1 a:hover { color: #ffffff; }

/* **********************************************************
	home__main
********************************************************** */
.home__main { position: relative; margin: 0 -20px; }
.home__main .main__slide { background: url(/en/images/home/img_main_01.jpg) center center no-repeat; background-size: cover; }
.home__main .main__slide .mdl__layout_Lv1 { height: 690px; }
.home__main .main__block { position: absolute; top: 33.33%; left: 0px; width: 100%; }
.home__main .main__block dl { text-shadow:0px 0px 5px rgba(255,255,255,0.7); color: #222222; font-weight: bold; text-align: center; padding: 0 20px; }
.home__main .main__block dt { font-size: 2.0rem; }
.home__main .main__block dd { font-size: 2.0rem; margin-top: 30px; }
.home__main .main__block dd span { background: url(/en/common/images/arw_link_black.png) right center no-repeat; background-size: 10px auto; display: inline-block; padding: 0 20px; }
.home__main .main__pc_navi { -webkit-box-sizing: border-box; box-sizing: border-box; position: absolute; left: 0px; bottom: 0px; padding: 0 20px; width: 100%; }
.home__main .main__pc_navi:after { background-color: rgba(0,0,0,0.5); content: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; height: 140px; }
.home__main .main__pc_navi ul { position: relative; text-align: center; margin-bottom: 45px; z-index: 2; }
.home__main .main__pc_navi li { display: inline-block; text-align: left; margin-right: 2.9%; width: 22.8%; }
.home__main .main__pc_navi li:last-child { margin-right: 0; }
.home__main .main__pc_navi li a { box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); background-color: #ffffff; color: #000000; display: block; position: relative; }
.home__main .main__pc_navi li a dt { font-size: 0; line-height: 0; }
.home__main .main__pc_navi li a dt img { width: 100%; }
.home__main .main__pc_navi li a dd { display: table; padding: 10px 0; width: 100%; }
.home__main .main__pc_navi li a dd span { display: table-cell; font-weight: bold; line-height: 1.2; vertical-align: middle; padding: 0 15px; }
.home__main .main__sp_navi { display: none; }
@media (min-width: 768px) {
	.home__main .main__pc_navi li a:hover { color: #000000; text-decoration: none; }
	.home__main .main__pc_navi li a:hover:after { background-color: rgba(255,205,0,0.5); content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
}
@media (max-width: 767px) {
	.home__main { position: relative; margin: 0 -20px; }
	.home__main .main__slide { background: url(/en/images/home/img_main_01_sp.jpg) center center no-repeat; background-size: cover; }
	.home__main .main__slide .mdl__layout_Lv1 { height: 100vw; }
	.home__main .main__block { -webkit-transform: translate(0, -50%); transform: translate(0, -50%); position: absolute; top: 50%; left: 0px; width: 100%; }
	.home__main .main__block dl { text-shadow:0px 0px 5px rgba(255,255,255,0.7); color: #222222; font-weight: bold; text-align: center; padding: 0 20px; }
	.home__main .main__block dt { font-size: 4.06vw; }
	.home__main .main__block dd { font-size: 3.12vw; margin-top: 10px; }
	.home__main .main__block dd span { background: url(/en/common/images/arw_link_black.png) right center no-repeat; background-size: 5px auto; display: inline-block; padding: 0 10px; }
	.home__main .main__pc_navi { display: none; }
	.home__main .main__sp_navi { background-color: #cccccc; display: block; padding: 10px; }
	.home__main .main__sp_navi li { padding: 5px; }
	.home__main .main__sp_navi li a { box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); background-color: #ffffff; color: #000000; display: block; }
	.home__main .main__sp_navi li a dl { display: table; text-align: left; width: 100%; }
	.home__main .main__sp_navi li a dt { display: table-cell; font-size: 0; line-height: 0; vertical-align: middle; width: 39.06vw; }
	.home__main .main__sp_navi li a dt img { width: 100%; }
	.home__main .main__sp_navi li a dd { display: table-cell; padding: 0 20px; vertical-align: middle; }
	.home__main .main__sp_navi li a dd span { display: block; font-size: 1.2rem; font-weight: bold; }
	.home__main .main__sp_navi .slick-prev { background: url(/ja/common/images/btn_slide_prev.png) no-repeat; background-size: 40px 40px; position: absolute; top: 50%; left: -10px; margin-top: -20px; width: 40px; height: 40px; z-index: 4; }
	.home__main .main__sp_navi .slick-next { background: url(/ja/common/images/btn_slide_next.png) no-repeat; background-size: 40px 40px; position: absolute; top: 50%; right: -10px; margin-top: -20px; width: 40px; height: 40px; z-index: 4; }
}

/* **********************************************************
	home__news
********************************************************** */
.home__news { margin: 0 -20px; padding: 60px 20px; }
.home__news h2 { border-bottom: 1px solid #d9d9d9; font-size: 2.4rem; font-weight: bold; line-height: 1.2; text-align: center; margin-bottom: 25px; padding-bottom: 15px; }
.home__news .news__more { margin-top: -40px; }
.home__news .news__more p { text-align: right }
.home__news .news__more p a { font-weight: bold; display: inline-block; }
@media (min-width: 768px) {
}
@media (max-width: 767px) {
	.home__news { margin: 0 -20px; padding: 40px 20px; }
	.home__news h2 { border-bottom: 1px solid #d9d9d9; font-size: 1.8rem; font-weight: bold; line-height: 1.2; text-align: center; margin-bottom: 20px; padding-bottom: 10px; }
	.home__news .news__more { margin-top: -25px; }
	.home__news .news__more p { text-align: left }
	.home__news .news__more p a { font-weight: bold; display: block; }
}

/* **********************************************************
	home__anchor
********************************************************** */
.home__anchor { margin: 0 -20px; padding: 0 20px; }
.home__anchor h2 { font-size: 2.4rem; font-weight: bold; line-height: 1.2; text-align: center; margin-bottom: 25px; }
.home__anchor a { color: #000000; display: block; position: relative; padding-bottom: 35px; }
.home__anchor a:after { -webkit-border-radius: 50%; border-radius: 50%; background: #0d47a1 url(/ja/common/images/icon_anchor.png) center center no-repeat; background-size: 15px auto; content: ""; position: absolute; bottom: 0px; left: 50%; width: 30px; height: 30px; margin-left: -15px; }
@media (min-width: 768px) {
	.home__anchor a:hover { color: #000000; text-decoration: none; }
	.home__anchor a:hover:after { background: #fecb2f url(/ja/common/images/icon_anchor_hover.png) center center no-repeat; background-size: 15px auto; }
}
@media (max-width: 767px) {
	.home__anchor { margin: 0 -20px; padding: 0 20px; }
	.home__anchor h2 { font-size: 1.8rem; font-weight: bold; line-height: 1.2; text-align: center; margin-bottom: 20px; }
	.home__anchor a { color: #000000; display: block; position: relative; padding-bottom: 25px; }
	.home__anchor a:after { -webkit-border-radius: 50%; border-radius: 50%; background: #0d47a1 url(/ja/common/images/icon_anchor.png) center center no-repeat; background-size: 8px auto; content: ""; position: absolute; bottom: 0px; left: 50%; width: 20px; height: 20px; margin-left: -10px; }
}

/* **********************************************************
	home__support
********************************************************** */
.home__support { background-color: #f2f2f2; margin: 0 -20px; padding: 60px 20px; }
.home__support h2 { border-bottom: 1px solid #cccccc; font-size: 2.4rem; font-weight: bold; line-height: 1.2; text-align: center; margin-bottom: 25px; padding-bottom: 20px; }
.home__support h2:nth-of-type(2) { margin-bottom: 10px; }
.home__support h3 { font-size: 2.0rem; font-weight: bold; line-height: 1.2; text-align: center; position: relative; margin-bottom: 10px; }
.home__support h3:before { border-bottom: 1px solid #cccccc; content: ""; position: absolute; top: 50%; left: 0px; width: 100%; }
.home__support h3 span { background-color: #f2f2f2; display: inline-block; position: relative; padding: 0 10px; z-index: 2; }
.home__support .support__list { margin-bottom: 25px; }
.home__support .support__list li { float: left; margin-right: 1%; width: 32.6%; }
.home__support .support__list li:last-child { margin-right: 0; }
.home__support .support__list a { box-shadow:0px 0px 5px 0px rgba(0,0,0,0.1); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.1); background-color: #ffffff; color: #000000; display: block; padding: 10px; }
.home__support .support__list a:hover { color: #000000; text-decoration: none; }
.home__support .support__list a span { display: block; padding: 20px 25px; }
.home__support .support__list a dt { font-size: 1.8rem; font-weight: bold; line-height: 1.2; margin-bottom: 10px; }
.home__support .support__list a dt span { color: #ff0000; display: inline-block; font-size: 1.4rem; padding: 0 0 0 0.5em; }
.home__support .support__list a dd { margin-bottom: 10px; }
.home__support .support__list a p { background: url(/ja/common/images/icon_member.png) left 2px no-repeat; background-size: auto 18px; font-size: 1.4rem; padding-left: 25px; }
.home__support .support__list a p.noneIcon { background: none; padding-left: 0; }
.home__support .support__list.list_1 h3 span { color: #c62828; }
.home__support .support__list.list_1 a span { background-color: #ffcdd2; }
.home__support .support__list.list_2 h3 span { color: #1565c0; }
.home__support .support__list.list_2 a span { background-color: #bbdefb; }
.home__support .support__list.list_3 h3 span { color: #2e7d32; }
.home__support .support__list.list_3 a span { background-color: #c8e6c9; }
.home__support .support__list.list_4 { margin-bottom: 0; }
.home__support .support__list.list_4 h3 span { color: #f09800; }
.home__support .support__list.list_4 a span { background-color: #fff9c4; }
.home__support .support__list.list_5 { margin-bottom: 0; }
.home__support .support__list.list_5 li { margin-right: 1%; width: 49.5%; }
.home__support .support__list.list_5 li:last-child { margin-right: 0; }
.home__support .support__list.list_5 a span { background-color: #b2ebf2; }
.home__support .support__list.list_5 dt { font-size: 1.4rem; text-align: center; font-weight: normal; margin-bottom: 0; }
.home__support .support__list.list_5 dd { font-size: 1.8rem; text-align: center; font-weight: bold; margin-bottom: 0; }
@media (min-width: 768px) {
	.home__support .support__list a:hover span { opacity: 0.5; }
}
@media (max-width: 767px) {
	.home__support { background-color: #f2f2f2; margin: 0 -20px; padding: 40px 20px; }
	.home__support h2 { border-bottom: 1px solid #cccccc; font-size: 1.8rem; font-weight: bold; line-height: 1.2; text-align: center; margin-bottom: 20px; padding-bottom: 15px; }
	.home__support h2:nth-of-type(2) { margin-bottom: 15px; }
	.home__support h3 { font-size: 1.5rem; font-weight: bold; line-height: 1.2; text-align: center; position: relative; margin-bottom: 10px; }
	.home__support h3:before { border-bottom: 1px solid #cccccc; content: ""; position: absolute; top: 50%; left: 0px; width: 100%; }
	.home__support h3 span { background-color: #f2f2f2; display: inline-block; position: relative; padding: 0 5px; z-index: 2; }
	.home__support .support__list { margin-bottom: 15px; }
	.home__support .support__list li { float: none; margin: 0 0 10px 0; width: auto; }
	.home__support .support__list li:last-child { margin: 0; }
	.home__support .support__list a { box-shadow:0px 0px 5px 0px rgba(0,0,0,0.1); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.1); background-color: #ffffff; color: #000000; display: block; padding: 10px; }
	.home__support .support__list a:hover { color: #000000; text-decoration: none; }
	.home__support .support__list a span { display: block; padding: 15px; }
	.home__support .support__list a dt { font-size: 1.4rem; font-weight: bold; margin-bottom: 5px; }
	.home__support .support__list a dt span { color: #ff0000; display: inline-block; font-size: 1.2rem; padding: 0 0 0 0.5em; }
	.home__support .support__list a dd { margin-bottom: 10px; }
	.home__support .support__list a p { background: url(/ja/common/images/icon_member.png) left 1px no-repeat; background-size: auto 18px; font-size: 1.2rem; padding-left: 20px; }
	.home__support .support__list a p.noneIcon { background: none; padding-left: 0; }
	.home__support .support__list.list_1 h3 span { color: #c62828; }
	.home__support .support__list.list_1 a span { background-color: #ffcdd2; }
	.home__support .support__list.list_2 h3 span { color: #1565c0; }
	.home__support .support__list.list_2 a span { background-color: #bbdefb; }
	.home__support .support__list.list_3 h3 span { color: #2e7d32; }
	.home__support .support__list.list_3 a span { background-color: #c8e6c9; }
	.home__support .support__list.list_4 { margin-bottom: 25px; }
	.home__support .support__list.list_4 h3 span { color: #f09800; }
	.home__support .support__list.list_4 a span { background-color: #fff9c4; }
	.home__support .support__list.list_5 { margin-bottom: 0; }
	.home__support .support__list.list_5 li { margin-right: 0; width: auto; }
	.home__support .support__list.list_5 li:last-child { margin-right: 0; }
	.home__support .support__list.list_5 a span { background-color: #b2ebf2; }
	.home__support .support__list.list_5 dt { font-size: 1.2rem; text-align: center; font-weight: normal; margin-bottom: 5px; }
	.home__support .support__list.list_5 dd { font-size: 1.4rem; text-align: center; font-weight: bold; margin-bottom: 0; }
}

/* **********************************************************
	home__activity
********************************************************** */
.home__activity { background-color: #ffcd00; margin: 0 -20px; padding: 60px 20px; }
.home__activity h2 { font-size: 2.4rem; text-align: center; margin-bottom: 10px; }
.home__activity > div > p { text-align: center; margin-bottom: 20px; }
.home__activity ul { text-align: center; }
.home__activity li { display: inline-block; text-align: left; vertical-align: top; margin-right: 2.5%; width: 31.6%; }
.home__activity li:last-child { margin-right: 0; }
.home__activity li a { box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); background-color: #ffffff; color: #000000; display: block; }
.home__activity li a:hover { color: #000000; text-decoration: none; }
.home__activity li a span { display: block; }
.home__activity li a p { font-size: 0; line-height: 0; }
.home__activity li a p img { width: 100%; }
.home__activity li a dl { position: relative; padding: 20px 25px; }
.home__activity li a dt { font-size: 2.0rem; font-weight: bold; margin-bottom: 10px; }
@media (min-width: 768px) {
	.home__activity li a:hover span { opacity: 0.5; }
}
@media (max-width: 767px) {
	.home__activity { background-color: #ffcd00; margin: 0 -20px; padding: 40px 20px; }
	.home__activity h2 { font-size: 1.8rem; text-align: center; margin-bottom: 10px; }
	.home__activity > div > p { text-align: center; margin-bottom: 20px; }
	.home__activity li { display: block; float: none; margin: 0 0 15px 0; width: auto; }
	.home__activity li:last-child { margin: 0; }
	.home__activity li a { box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); background-color: #ffffff; color: #000000; display: block; }
	.home__activity li a:hover { color: #000000; text-decoration: none; }
	.home__activity li a span { display: block; }
	.home__activity li a p { font-size: 0; line-height: 0; }
	.home__activity li a p img { width: 100%; }
	.home__activity li a dl { position: relative; padding: 15px 20px; }
	.home__activity li a dt { font-size: 1.5rem; font-weight: bold; margin-bottom: 5px; }
}

/* **********************************************************
	home__publication
********************************************************** */
.home__publication { margin: 0 -20px; padding: 60px 20px; }
.home__publication h2 { border-bottom: 1px solid #d9d9d9; font-size: 2.4rem; font-weight: bold; line-height: 1.2; text-align: center; margin-bottom: 25px; padding-bottom: 20px; }
.home__publication > div > p { border-top: 1px solid #d9d9d9; padding-top: 20px; }
.home__publication ul { }
.home__publication li { position: relative; }
.home__publication li > p { position: absolute; left: 0px; bottom: 0px; margin: 0 0 0 13.77%; }
.home__publication li > a { color: #000000; display: block; position: relative; }
.home__publication li > a:hover { color: #000000; text-decoration: none; }
.home__publication li:last-child { margin-right: 0; }
.home__publication li a > dl { display: table; width: 100%; }
.home__publication li a > dl > dt { display: table-cell; vertical-align: top; width: 11.22%; }
.home__publication li a > dl > dt span { box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); border: 1px solid #dadada; display: block; overflow: hidden; }
.home__publication li a > dl > dt img { width: 100%; }
.home__publication li a > dl > dd { display: table-cell; vertical-align: top; padding: 0 0 2em 2.55%; }
.home__publication li a > dl > dd dl { border-bottom: 1px solid #d9d9d9; margin-bottom: 10px; padding-bottom: 10px; }
.home__publication li a > dl > dd dt { font-size: 1.4rem; }
.home__publication li a > dl > dd dd { font-size: 2.0rem; font-weight: bold; }
.home__publication li a > dl > dd dd small { display: block; font-size: 1.4rem; }
.home__publication li a > dl > dd p { margin-bottom: 10px; }
.home__publication li a > dl > dd p:last-child { margin-bottom: 0; }
@media (min-width: 768px) {
	.home__publication li > a:hover:after { background-color: rgba(255,205,0,0.15); content: ""; position: absolute; top: -10px; left: -10px; padding: 10px; width: 100%; height: 100%; }
}
@media (max-width: 767px) {
	.home__publication { margin: 0 -20px; padding: 40px 20px; }
	.home__publication h2 { border-bottom: 1px solid #d9d9d9; font-size: 1.8rem; font-weight: bold; line-height: 1.2; text-align: center; margin-bottom: 30px; padding-bottom: 15px; }
	.home__publication > div > p { border-top: 1px solid #d9d9d9; padding-top: 15px; }
	.home__publication ul { }
	.home__publication li { margin: 0 0 30px 0; }
	.home__publication li > p { position: relative; left: auto; bottom: auto; margin: 15px 0 0 0; }
	.home__publication li > a { color: #000000; display: block; position: relative; }
	.home__publication li > a:hover { color: #000000; text-decoration: none; }
	.home__publication li:nth-of-type(1) { border-bottom: 1px dotted #c1c1c1; padding-bottom: 20px; }
	.home__publication li:last-child { margin: 0; }
	.home__publication li a > dl { display: block; width: auto; }
	.home__publication li a > dl > dt { display: block; text-align: center; vertical-align: top; margin-bottom: 10px; width: auto; }
	.home__publication li a > dl > dt span { box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); border: 1px solid #dadada; display: inline-block; overflow: hidden; width: 32.66%; }
	.home__publication li a > dl > dt img { width: 100%; }
	.home__publication li a > dl > dd { display: block; vertical-align: top; padding: 0; }
	.home__publication li a > dl > dd dl { border-bottom: 1px solid #d9d9d9; margin-bottom: 10px; padding-bottom: 10px; }
	.home__publication li a > dl > dd dt { font-size: 1.2rem; }
	.home__publication li a > dl > dd dd { font-size: 1.8rem; font-weight: bold; }
	.home__publication li a > dl > dd dd small { display: block; font-size: 1.2rem; }
	.home__publication li a > dl > dd p { margin-bottom: 10px; }
	.home__publication li a > dl > dd p:last-child { margin-bottom: 0; }
}

/* **********************************************************
	home__relation
********************************************************** */
.home__relation { background-color: #f2f2f2; margin: 0 -20px; padding: 40px 20px; }
.home__relation h3 { font-size: 2.0rem; font-weight: bold; line-height: 1.2; text-align: center; position: relative; margin-bottom: 20px; }
.home__relation h3:before { border-bottom: 1px solid #cccccc; content: ""; position: absolute; top: 50%; left: 0px; width: 100%; }
.home__relation h3 span { background-color: #f2f2f2; display: inline-block; position: relative; padding: 0 10px; z-index: 2; }
.home__relation li { float: left; margin-right: 2.5%; width: 31.6%; }
.home__relation li:last-child { margin-right: 0; }
.home__relation li a { -webkit-box-sizing: border-box; box-sizing: border-box; box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); background-color: #ffffff; border: 1px solid #cccccc; color: #000000; display: table; padding: 3px; width: 100%; }
.home__relation li a:hover { color: #000000; text-decoration: none; }
.home__relation li a span { border: 1px solid #e2e2e2; display: table-cell; vertical-align: middle; font-weight: bold; line-height: 1.2; text-align: center; position: relative; padding: 15px 10px; }
.home__relation li a span:after { background: url(/ja/common/images/icon_blank.png) no-repeat; background-size: 11px 10px; content: ""; position: absolute; right: 4px; top: 4px; width: 11px; height: 10px; opacity: 0.5; }
@media (min-width: 768px) {
	.home__relation li a:hover { background-color: #ffcd00; }
	.home__relation li a:hover span { border: 1px solid #e2bc23; }
}
@media (max-width: 767px) {
	.home__relation { background-color: #f2f2f2; margin: 0 -20px; padding: 40px 20px; }
	.home__relation h3 { font-size: 1.5rem; font-weight: bold; line-height: 1.2; text-align: center; position: relative; margin-bottom: 15px; }
	.home__relation h3:before { border-bottom: 1px solid #cccccc; content: ""; position: absolute; top: 50%; left: 0px; width: 100%; }
	.home__relation h3 span { background-color: #f2f2f2; display: inline-block; position: relative; padding: 0 5px; z-index: 2; }
	.home__relation li { float: none; margin: 0 0 10px 0; width: auto; }
	.home__relation li:last-child { margin: 0; }
	.home__relation li a { box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.2); background-color: #ffffff; border: 1px solid #cccccc; color: #000000; display: block; padding: 4px; }
	.home__relation li a:hover { color: #000000; text-decoration: none; }
	.home__relation li a span { border: 1px solid #e2e2e2; display: block; font-size: 1.6rem; font-weight: bold; text-align: center; position: relative; padding: 10px 10px; }
	.home__relation li a span:after { background: url(/ja/common/images/icon_blank.png) no-repeat; background-size: 11px 10px; content: ""; position: absolute; right: 4px; top: 4px; width: 11px; height: 10px; opacity: 0.5; }
}













