﻿
/* ----------------------------------------------------------------------------- */
/* -- TOP css -- */

#h_right .h_lgin a {
	padding: 11px 20px;
}
#h_right .h_lgin a:nth-child(n+2) {
	margin-left: 8px;
}

h2 {
	font-size:200%;
	line-height:140%;
	font-weight: normal;
	text-align: center;
	padding-bottom: 24px;
}
h2 span.front {
	display: block;
	font-size:60%;
}
h3 {
	font-weight: normal;
}

/* top_main ---------------------------------------------------------------------- */

.top_main {
	width:100%;
	background-color: #FFF7F5;
	background-image:url(../img/top_main_bg.png);
	background-repeat:no-repeat;
	background-position: right 70%;
	/*background-position:center right;*/
}
.top_main .top_main_inner {
	width: 100%;
	max-width:1080px;
	padding: 40px 0;
	/*padding: 64px 0;*/
	margin: 0 auto;
	background-image:url(../img/logo_bg.png);
	background-repeat:no-repeat;
	background-position:58% center;
	position: relative;
	
	background-size: 28%;
}
.top_main h1 {
	font-size:0;
	line-height:0;
	padding: 0;
}
.top_main p {
	font-size:110%;
	line-height:180%;
	padding: 24px 0 0;
	/*padding: 24px 0;*/
}
.top_main ul {
	font-size:100%;
	line-height:120%;
	font-weight: bold;
	
	display: none;
}
.top_main ul li {
	display: inline-block;
}
.top_main ul li:nth-child(n+2) {
	margin-left: 8px;
}
.top_main ul li a {
	display: block;
	width: 12em;
	color: #FFF;
	text-align: center;
	padding: 20px 0;
	border-radius: 5px;
}
.top_main ul li a span {
	padding-left: 0.7em;
	position: relative;
}
.top_main ul li a span:before{
	content:"";
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 30%;
	left: -0.5em;
}

p.main_bnr {
	width: 320px;
	position: absolute;
	right: 0;
	top: 38px;
	/*top:70px;*/
}
p.main_bnr img {
	width: 100%;
}

.kaiin .top_main {
	background: none;
	background-color: #E9F5F8;
	background-image:url(../img/top_main_kaiin_bg.jpg);
	background-repeat: no-repeat;
	background-position: right -50px;
	background-size: 60%;
}
.kaiin .top_main .top_main_inner {
	padding: 0 0 320px;
	background-image:none;
}
.kaiin .top_main p {
	padding: 24px 0;
}
.kaiin .top_main ul {
	display: block;
}
.kaiin .top_main h1 {
	font-size:250%;;
	line-height:100%;
	font-weight: normal;
	color: #009966;
	padding: 0 0 16px;
}
.access_flex{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
}
/*
.kaiin .top_main_inner .bnr_movie {
	position: absolute;
	top: 4px;
	right: 0;
	padding: 8px 0;
}
.kaiin .top_main_inner .bnr_link {
	position: absolute;
	top: 4px;
	right: 0;
	padding: 8px 0;
}
*/
.kaiin .top_main_inner .bnr_movie{
	margin-left: 10px;
}
.kaiin .top_main_inner .bnr_movie a img,
.kaiin .top_main_inner .bnr_link a img {
	border: 1px solid #000;
	font-size: 0;
	line-height: 0;
}
.kaiin .top_main_inner .bnr_movie a span,
.kaiin .top_main_inner .bnr_link span {
	display: block;
	width: 262px;
	box-sizing: border-box;
	font-size: 70%;
	line-height: 120%;
	text-align: center;
	padding: 4px;
	background-color: #FFF;
	border: 1px solid #CCC;
}




.top_main ul li a.pdf span:before {
	display: none;
}
.top_main ul li a.pdf span {
	padding-left: 2em;
	background-image:url(../common/img/icon_png.png);
	background-repeat:no-repeat;
	background-position: 0 0;
}
.acs_title {
	position: relative;
}
.acs_title p {
	position: absolute;
	top: 0;
	right: 0;
	padding: 0 !important;
}
.acs_title p a {
	font-size: 100%;
line-height: 120%;
font-weight: bold;
color: #FFF;
border-radius: 5px;
	padding: 11px 20px;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#009966+0,007d55+100 */
background: #009966; /* Old browsers */
background: -moz-linear-gradient(top,  #009966 0%, #007d55 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #009966 0%,#007d55 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #009966 0%,#007d55 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#009966', endColorstr='#007d55',GradientType=0 ); /* IE6-9 */
}


/* top_bnr ---------------------------------------------------------------------- */

.top_bnr {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: fit-content;
	margin: 0 auto;
}
.top_bnr a{
	display: block;
	margin: 10px;
}
.top_bnr.bnr6,
.top_bnr.bnr7 {
	border-spacing:16px;
	width: calc(90% + 48px);
}
.top_bnr.bnr4 a {
	width: 25%;
}
.top_bnr.bnr5 a {
	width: 20%;
}
.top_bnr.bnr6 a {
	width: 16.66%;
}
.top_bnr.bnr7 a {
	width: 14.28%;
}
.top_bnr a {
	display: table-cell;
	vertical-align: top;
	font-size:0;
	line-height:0;
	text-align: center;
}
.top_bnr a img {
	width: 100%;
}
.top_bnr_link {
	font-size:90%;
	line-height:140%;
	text-align: center;
}
.top_bnr_link a {
	display: inline-block;
	line-height: 110%;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	padding: 4px 12px;
	border-radius: 20px;
	background-color:#003466;
	margin-left: 12px;
}

.top_btn_link {
	font-size:0.9rem;
	line-height:140%;
	text-align: center;
	padding-top: 32px;
	margin: 0 auto;
}
.top_btn_link a {
	display: inline-block;
	line-height: 110%;
	color:#fff;
	text-align: center;
	vertical-align: middle;
	padding: 16px 24px;
	background-color:#003466;
}

.bnr_center {
	text-align: center;
	margin: 0 auto;
}

/* top_info ---------------------------------------------------------------------- */


.top_info {
	display: table;
	width: 100%;
	border-right: 2px dotted #666;
}
.ti_box {
	display: table-cell;
	vertical-align: top;
	width: 33.33%;
	padding: 4px 24px;
	border-left: 2px dotted #666;
}
.ti_box.cell2 {
	width: 66.66%;
}
.ti_box h3 {
	font-size:100%;
	line-height:140%;
	font-weight: bold;
	color: #CD4D3A;
	padding-bottom: 8px;
}
.ti_box ul,
.ti_box p,
.ti_box dl {
	font-size:90%;
	line-height:140%;
}
.ti_box ul li:nth-child(n+2) {
	padding-top: 8px;
}
.ti_box ul li a {
	display: block;
	padding-left: 1em;
	position: relative;
}
.ti_box ul li a:before{
	content:"";
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 1px #000;
	border-right: solid 1px #000;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 6px;
	left: 0em;
}
.ti_box ul li a.noarw {
	display: inline-block;
	padding-left: 0;
	position: static;
}
.ti_box ul li a.noarw:before{
	display: none;
}
.ti_box ul.list li {
	padding-left: 1em;
	text-indent: -1em;
}
.ti_box ul.list li a.noarw {
	padding-left: 1em;
}
.ti_box ul.list li.kakko {
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.ti_box ul.list li.kakko a.noarw {
	padding-left: 1.5em;
}
.ti_box dl {
	display: table;
	width: 100%;
}
.ti_box dl.add {
	margin-top: 8px;
}
.ti_box dl dt,
.ti_box dl dd {
	display: table-cell;
	vertical-align: top;
}
.ti_box dl dt {
	width: 10em;
}
.ti_box dl.new dd:before {
	content: "NEW";
	color: #FFF;
	margin-right: 0.5em;
	background-color: #C00;
	padding: 1px 5px;
	font-size: 80%;
}
.ti_box ul.anchor {
	padding-top: 16px;
	margin-top: 16px;
	border-top: 1px dotted #999999;
}
.ti_box ul.anchor li:nth-child(n+2) {
	padding-top: 5px;
}
.ti_box ul.anchor li a:before{
	display: none;
}
.ti_box ul.anchor li a:after{
	content:"";
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 1px #000;
	border-right: solid 1px #000;
	-ms-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position: absolute;
	top: 4px;
	left: 0em;
}
.ti_box ul.anchor li.arw a:before{
	display: block;
}
.ti_box ul.anchor li.arw a:after{
	display: none;
}

/* add 20210318 */
.top_new_info {
	
}
.top_new_info:after {
	content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
.top_new_info div.news_box {
	width: 77.77%;
	float: left;
	display: block;
	padding: 0;
	border-left: none;
	background-color: #FFF;
	border: 2px solid #EA6454;
}
.top_new_info div.news_box h2 {
	height: 58px;
	text-align: left;
	color: #FFF;
	padding:14px 0 0 16px;
	background-color: #EA6454;
}
.top_new_info div.news_box div.ti_box {
	width: 100% !important;
	height: 267px;
	padding: 16px;
	background-color: #FFF;
	display: block;
	padding: 0;
	border-left: none;
	overflow-y: scroll;
}
.top_new_info div.news_box dl.notice {
	display: block;
	width: 100%;
}
.top_new_info div.news_box dl.notice dt,
.top_new_info div.news_box dl.notice dd {
	display: block;
	padding: 16px 16px 0;
}
.top_new_info div.news_box dl.notice dt {
	width: 13%;
	float: left;
	clear: both;
}
.top_new_info div.news_box dl.notice dd {
	width: 87%;
	float: left;
}


.top_new_info div.navi {
	width: 20.37%;
	float: right;
}
.top_new_info div.navi ul {
	font-size: 85%;
	font-weight: bold;
	border-top: 1px solid #013567;
	border-left: 1px solid #013567;
 }
.top_new_info div.navi ul li {
	border-bottom: 1px solid #013567;
	border-right: 1px solid #013567;
}
.top_new_info div.navi ul li a {
	display: block;
	height: 40px;
	padding: 12px 0 0 26px;
	position: relative;
	background-color: #FFF;
}
.top_new_info div.navi ul li.link a:before {
	content:"";
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #013567;
	border-right: solid 1px #013567;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 15px !important;
	left: 8px;
}
.top_new_info div.navi ul li.anchor a:before {
	content:"";
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #013567;
	border-right: solid 1px #013567;
	-ms-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position: absolute;
	top: 13px !important;
	left: 8px;
}




/* fmn_info ---------------------------------------------------------------------- */

.fmn_info {
	display: table;
	border-collapse:separate;
	border-spacing:24px;
	width: calc(100% + 48px);
	margin-left: -24px;
}
.fmn_box {
	display: table-cell;
	vertical-align: top;
	width: 33.33%;
}
.fmn_box.close:hover {
	opacity: 1.0 !important; filter: alpha(opacity=100) !important;
}
.fmn_thumb {
	width: 280px;
	height: 280px;
	margin: 0 auto;
	background-repeat:no-repeat;
	background-position:center center;
	background-size: cover;
	border-radius: 140px;
}
.fmn_box.fmn_01 .fmn_thumb {
	background-image:url(../img/top_fmn_01.jpg);
}
.fmn_box.fmn_02 .fmn_thumb {
	background-image:url(../img/top_fmn_02.jpg);
}
.fmn_box.fmn_03 .fmn_thumb {
	background-image:url(../img/top_fmn_03.jpg);
}
.fmn_box.fmn_04 .fmn_thumb {
	background-image:url(../img/top_fmn_04.jpg);
}
.fmn_box.fmn_05 .fmn_thumb {
	background-image:url(../img/top_fmn_05.jpg);
}
.fmn_box.fmn_06 .fmn_thumb {
	background-image:url(../img/top_fmn_06.jpg);
}
.fmn_box.fmn_07 .fmn_thumb {
	background-image:url(../img/top_fmn_07.jpg);
}
.fmn_box.fmn_08 .fmn_thumb {
	background-image:url(../img/top_fmn_08.jpg);
}
.fmn_ttl {
	font-size:120%;
	line-height:140%;
	text-align: center;
	padding-top: 20px;
}
.fmn_ttl span {
	display: block;
	font-size:80%;
}
.close .fmn_ttl {
	color: #000;
}
.fmn_text {
	font-size:90%;
	line-height:160%;
	padding-top: 10px;
	text-align: center;
}
.fmn_box p.link {
	font-size:90%;
	line-height:140%;
	text-align: center;
	padding-top: 16px;
	margin: 0 auto;
}
.fmn_box ul {
	width: 18em;
	font-size:90%;
	line-height:140%;
	padding-top: 16px;
	margin: 0 auto;
}
.fmn_box ul li:nth-child(n+2) {
	padding-top: 5px;
}
.fmn_box p.link a span,
.fmn_box ul li a span {
	display: inline-block;
	padding-left: 1em;
	position: relative;
}
.fmn_box p.link a span:before,
.fmn_box ul li a span:before {
	content:"";
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 1px #000;
	border-right: solid 1px #000;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 6px;
	left: 0em;
}

a.fmn_box .fmn_text {
	color: #000;
}


.linkbtn li.col01 a {
	background-color: #0070C0;
}
.linkbtn li.col02 a {
	background-color: #009966;	
}
.linkbtn li.col03 a {
	background-color: #843C0C;	
}
.linkbtn li.col04 a {
	color: #000;
	background-color: #FF7F27;	
}
.access_banner{
	display: block;
	max-width: 300px;
}
.soukai_btn2022_access a{
	display: block;
}
/* ###################### break tablet ###################### */
@media screen and (min-width: 769px) and (max-width: 1080px) {



/* top_main ---------------------------------------------------------------------- */

.top_main .top_main_inner {
	width: 94%;
	max-width:94%;
}
.top_main ul li a {
	width: 10em;
}

/* top_bnr ---------------------------------------------------------------------- */

.top_bnr {
	border-spacing:20px;
	width: calc(76% + 40px);
	margin:0 auto;
}
.top_bnr_link {
	padding-left: 3%;
}

/* top_info ---------------------------------------------------------------------- */

.top_info {
	width: 94%;
	margin: 0 auto;
}

/* fmn_info ---------------------------------------------------------------------- */

.fmn_info {
	border-spacing:20px;
	width: calc(94% + 40px);
	margin:0 auto;
}
.fmn_thumb {
	width: 240px;
	height: 240px;
	border-radius: 120px;
}



}



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

#h_right .h_mail a span.txt {
	font-size: 75%;
	padding-left: 4px;
}
#h_right .h_lgin {
	width: 45%;
	padding: 0 2%;
}
#h_right .h_lgin a br {
	display: block;
}
#h_right .h_lgin a:nth-child(n+2) {
	margin-left: 0;
}
#h_right .h_lgin a {
	display: block;
	width: 47%;
	float: left;
	line-height: 110%;
	text-align: center;
	padding: 10px 0px;
}
#h_right .h_lgin a:nth-child(2) {
	float: right;
}

h2 {
	font-size:160%;
	line-height:140%;
	padding-bottom: 20px;
}
h2 span.front {
	font-size:80%;
}
.lead {
	font-size:90%;
	line-height:160%;
}

/* top_main ---------------------------------------------------------------------- */

.top_main {
	background: none;
}
.top_main .top_main_inner {
	width: 100%;
	max-width:100%;
	padding: 0 0 32px;
	border-bottom: 1px solid #CCC;
}
.top_main h1 {
	width: 100%;
	padding: 30px 0;
	background-color: #FFF7F5;
	background-image:url(../img/top_main_bg.png);
	background-repeat:no-repeat;
	background-position: 58vw center;
	background-size: 60%;
}
.top_main h1 img {
	width: 70%;
	padding-left: 4%;
}
.top_main p {
	font-size:85%;
	color: #333;
	text-align: center;
	padding: 72px 0;
	background-image:url(../img/logo_bg_gray.png);
	background-repeat:no-repeat;
	background-position: center center;
	background-size: 50%;
}

.box_syukketu{width:100%;}
.box_syukketu p{
	background:none!important;
	text-align: left;
}

.top_main ul {
	width: 92%;
	margin: 0 auto;
}
.top_main ul:after {
content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
.top_main ul li {
	display: block;
	width: 100%;
	/* width: 48%; */
	float: none;
}
.top_main ul li:nth-child(n+2) {
	margin-left: 0;
	float: right;
}
.top_main ul li a {
	width: 100%;
}

p.main_bnr {
	width: 80%;
	position: static;
	right: 0;
	top:0;
	padding: 30px 0 0;
	margin: 0 auto;
}
p.main_bnr img {
	width: 100%;
}

.kaiin .top_main {
	background: none;
}
.kaiin .top_main .top_main_inner {
	padding: 0;
	border: none;
}
.kaiin .top_main .top_main_inner h1 {
	padding: 32px 4%;
	background-color: #E9F5F8;
	background-image:url(../img/top_main_kaiin_bg.jpg);
	background-position: top right;
	background-size: 55%;
}
.kaiin .top_main p {
	padding: 72px 0;
}
.kaiin .top_main ul {
	display: block;
}

.access_flex{
	display: block;
}
.kaiin .top_main_inner .bnr_movie,
.kaiin .top_main_inner .bnr_link {
	width: 64%;
	position: static;
	padding: 8px 0;
	margin: 0 auto;
}
.kaiin .top_main_inner .bnr_movie a img,
.kaiin .top_main_inner .bnr_link a img {
	width: 100%;
}
.kaiin .top_main_inner .bnr_movie a span,
.kaiin .top_main_inner .bnr_link a span {
	width: 100%;
	font-size: 100%;
	padding: 8px;
	margin: 0 auto;
}


	.acs_title p {
		margin-top: 35px;
		right: 4%;
	}
.acs_title p a {
	font-size: 100%;
line-height: 120%;
	padding: 8px 8px;
}

/* top_bnr ---------------------------------------------------------------------- */

.top_bnr {
	display: block;
	border-spacing:0;
	width: 92%;
	margin:0 auto;
}
.top_bnr.bnr6,
.top_bnr.bnr7 {
	border-spacing:0px;
	width: 92%;
}
.top_bnr:after {
content: ""; clear: both; height: 0; display: block; visibility: hidden;
}
.top_bnr.bnr4 a,
.top_bnr.bnr5 a,
.top_bnr.bnr6 a,
.top_bnr.bnr7 a {
	width: 32%;
}
.top_bnr a {
	display: block;
	float: left;
	margin: 0 2% 8px 0;
}
.top_bnr a:nth-of-type(3n) {
	margin: 0 0 8px;
}
.top_bnr_link {
	text-align: center;
	padding-top: 16px;
}

.bnr_center {
	width: 92%;
}
.bnr_center img {
	width: 100%;
}

/* top_info ---------------------------------------------------------------------- */

.top_info {
	display: block;
	width: 92%;
	margin: 0 auto;
	border-right: none;
	border-bottom: 2px dotted #666;
}
.ti_box {
	display: block;
	width: 100%;
	padding: 24px 0;
	border-left: none;
	border-top: 2px dotted #666;
}
.ti_box.cell2 {
	width: 100%;
}


/* add 20210318 */
.top_new_info {
	width: 92%;
	margin: 0 auto;
}
.top_new_info div.news_box {
	width: 100%;
	float: none;
}
.top_new_info div.news_box h2 {
	height: 58px;
	padding:14px 0 0 16px;
}
.top_new_info div.news_box div.ti_box {
	height: 267px;
	padding: 16px;
}
.top_new_info div.news_box dl.notice dt,
.top_new_info div.news_box dl.notice dd {
	box-sizing: border-box;
	padding: 16px 8px 0;
}
.top_new_info div.news_box dl.notice dt {
	display: block;
	width: auto;
	color: #999;
}
.top_new_info div.news_box dl.notice dd {
	display: block;
	width: 100%;
	padding: 4px 8px 0;
}


.top_new_info div.navi {
	width: 100%;
	float: none;
	margin-top: 16px;
}
.top_new_info div.navi ul li a {
	height: 40px;
	padding: 12px 0 0 26px;
}
.top_new_info div.navi ul li.link a:before {
	width: 8px;
	height: 8px;
	top: 15px !important;
	left: 8px;
}
.top_new_info div.navi ul li.anchor a:before {
	width: 8px;
	height: 8px;
	top: 13px !important;
	left: 8px;
}



/* fmn_info ---------------------------------------------------------------------- */

.fmn_info {
	border-spacing:20px;
	width: calc(92% + 40px);
	margin:0 auto;
}
.fmn_info {
	display: block;
	border-spacing:0;
	width: 92%;
	margin: 0 auto;
}
.fmn_box {
	display: block;
	width: 100%;
	margin-top: 40px;
}
.fmn_thumb {
	width: 200px;
	height: 200px;
	border-radius: 100px;
}
.fmn_box p.link,
.fmn_box ul {
	padding-top: 10px;

}


}



/* ###################### break location large ###################### */
@media screen and (min-width: 769px) and (max-width: 2080px) {



}



/* ###################### PRINT CSS ###################### */
@media print{



}

  .kensyukai-head{
    display: flex;
    width: 100%;
    margin-bottom: 40px;
    justify-content: space-around;
	align-items: center;

    dd{
      width: calc(100%/5);
      border-right: 1px solid #009966;
      text-align: center;

      &:first-of-type{border-left: 1px solid #009966;}
    }

    a{color: #009966; font-size: 14px;}
}

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

	.kensyukai-head{
		flex-wrap: wrap;
		justify-content: center;
		margin-bottom: 0;
		
		dd{
			text-align: left;
			width: fit-content;
			margin: 5px 10px;
			border:none;
			border-bottom: 1px solid #009966;

			&:first-of-type{border-left:none;}
			
			a{padding:0 10px;}
		}
	}

}