@charset "UTF-8";

/* ===========
	common
============== */
.italic {font-style: italic;}.bold {font-weight: bold;}.normal{font-weight: normal}.xx-small {font-size: 60%;}.x-small {font-size: 75%;}.small {font-size: 88.88%;}.large {font-size: 124%;}.x-large {font-size: 150%;}.xx-large {font-size: 180%;}.indent {text-indent: 1em;}.text-indent li{/* font-family: monospace, serif; */text-indent: -1em;margin-left: 1em;}.num.text-indent li{text-indent: -2em;margin-left: 2em;}ol.num{list-style: decimal inside;}ol.num li:before{content:"";padding-right: .5em;}.left {text-align: left;}.right {text-align: right;}.center {text-align: center;}.float-left {float: left;}.float-right {float: right;}.clear:after, .clear-left:after, .clear-right:after {display: block; content: "";}.clear, .clear:after {clear: both;}.clear-left, .clear-left:after {clear: left;}.clear-right, .clear-right:after {clear: right;}.m-500 {margin: 5em;}.mtb-500, .mt-500 {margin-top: 5em;}.mrl-500, .mr-500 {margin-right: 5em;}.mtb-500, .mb-500 {margin-bottom: 5em;}.mrl-500, .ml-500 {margin-left: 5em;}.m-400 {margin: 4em;}.mtb-400, .mt-400 {margin-top: 4em;}.mrl-400, .mr-400 {margin-right: 4em;}.mtb-400, .mb-400 {margin-bottom: 4em;}.mrl-400, .ml-400 {margin-left: 4em;}.m-300 {margin: 3em;}.mtb-300, .mt-300 {margin-top: 3em;}.mrl-300, .mr-300 {margin-right: 3em;}.mtb-300, .mb-300 {margin-bottom: 3em;}.mrl-300, .ml-300 {margin-left: 3em;}.m-200 {margin: 2em;}.mtb-200, .mt-200 {margin-top: 2em;}.mrl-200, .mr-200 {margin-right: 2em;}.mtb-200, .mb-200 {margin-bottom: 2em;}.mrl-200, .ml-200 {margin-left: 2em;}.m-150 {margin: 1.5em;}.mtb-150, .mt-150 {margin-top: 1.5em;}.mrl-150, .mr-150 {margin-right: 1.5em;}.mtb-150, .mb-150 {margin-bottom: 1.5em;}.mrl-150, .ml-150 {margin-left: 1.5em;}.m-100 {margin: 1em;}.mtb-100, .mt-100 {margin-top: 1em;}.mrl-100, .mr-100 {margin-right: 1em;}.mtb-100, .mb-100 {margin-bottom: 1em;}.mrl-100, .ml-100 {margin-left: 1em;}.m-50 {margin: 0.5em;}.mtb-50, .mt-50 {margin-top: 0.5em;}.mrl-50, .mr-50 {margin-right: 0.5em;}.mtb-50, .mb-50 {margin-bottom: 0.5em;}.mrl-50, .ml-50 {margin-left: 0.5em;}.m-0 {margin: 0;}.mtb-0, .mt-0 {margin-top: 0;}.mrl-0, .mr-0 {margin-right: 0;}.mtb-0, .mb-0 {margin-bottom: 0;}.mrl-0, .ml-0 {margin-left: 0;}.p-500 {padding: 5em;}.ptb-500, .pt-500 {padding-top: 5em;}.prl-500, .pr-500 {padding-right: 5em;}.ptb-500, .pb-500 {padding-bottom: 5em;}.prl-500, .pl-500 {padding-left: 5em;}.p-400 {padding: 4em;}.ptb-400, .pt-400 {padding-top: 4em;}.prl-400, .pr-400 {padding-right: 4em;}.ptb-400, .pb-400 {padding-bottom: 4em;}.prl-400, .pl-400 {padding-left: 4em;}.p-300 {padding: 3em;}.ptb-300, .pt-300 {padding-top: 3em;}.prl-300, .pr-300 {padding-right: 3em;}.ptb-300, .pb-300 {padding-bottom: 3em;}.prl-300, .pl-300 {padding-left: 3em;}.p-200 {padding: 2em;}.ptb-200, .pt-200 {padding-top: 2em;}.prl-200, .pr-200 {padding-right: 2em;}.ptb-200, .pb-200 {padding-bottom: 2em;}.prl-200, .pl-200 {padding-left: 2em;}.p-150 {padding: 1.5em;}.ptb-150, .pt-150 {padding-top: 1.5em;}.prl-150, .pr-150 {padding-right: 1.5em;}.ptb-150, .pb-150 {padding-bottom: 1.5em;}.prl-150, .pl-150 {padding-left: 1.5em;}.p-100 {padding: 1em;}.ptb-100, .pt-100 {padding-top: 1em;}.prl-100, .pr-100 {padding-right: 1em;}.ptb-100, .pb-100 {padding-bottom: 1em;}.prl-100, .pl-100 {padding-left: 1em;}.p-50 {padding: 0.5em;}.ptb-50, .pt-50 {padding-top: 0.5em;}.prl-50, .pr-50 {padding-right: 0.5em;}.ptb-50, .pb-50 {padding-bottom: 0.5em;}.prl-50, .pl-50 {padding-left: 0.5em;}.p-0 {padding: 0;}.ptb-0, .pt-0 {padding-top: 0;}.prl-0, .pr-0 {padding-right: 0;}.ptb-0, .pb-0 {padding-bottom: 0;}.prl-0, .pl-0 {padding-left: 0;}.notalpha{opacity: 1;filter: alpha(opacity=100);}.hide {display:none;}.green{color: #013d24;}.red{color: #d31c1d;}.gray{color: #666}.lightgray{color: #ccc}.blue{color: #1356dd;}.bg_white{background: #fff;}.bg_lightblue{background: #ecf6f8}.bg_gray{background: #eee;}.border_gray{border: 1px solid #d1d1d1;}.under{text-decoration:underline}.border_none{border: none}#pagetop{width: 100%;height: 50px;margin: 0 auto;text-align: right;position: fixed;bottom: 0;left: 0;right: 0;}#pagetop a{width: 50px;height: 50px;position: absolute;right: 0;bottom: 0;}.sp{display: none;}
body p:empty:before {content: none !important;}
a[href$=".pdf"]:not(.wp-block-file__button):not(.button):after {
	content:" ";
	display: inline-block;
	vertical-align: sub;
	width: 24px;
	height: 24px;
	background: url(../img/common/icon_pdf.svg) no-repeat;
	margin-left: .5rem;
}
.wp-block-file__button{
	margin-left: 2em!important;
}


/*---------------------
  IE 11 grid fix
-----------------------*/
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop,.page_content .wp-block-columns{
		max-width: 1200px;
	}
	*::-ms-backdrop,h1.page_title_underline + .wp-block-columns{
		margin-right: auto;
		margin-left: auto;
	}
}



@media (min-width: 767px) {
	a img{-webkit-transition: .3s opacity;transition: .3s opacity;}
	a img:hover{opacity: .8;}
	.header .toggle .link,.header .language .link{-webkit-transition: .3s background-color, color;transition: .3s background-color, color;}

	.header .toggle .item:first-child:before, .header .toggle .item:after{
		content: "|";
		display: -ms-inline-grid;
		display: inline-grid;
		vertical-align: middle;
		margin: 0 .5em;
	}
	.footer .item:first-child:before,
	.footer .item:after{
		content: "|";
		display: inline-block;
		margin: 0 1em;
	}
}

.en{
	font-family: 'Raleway', sans-serif;
	font-display: swap;
}
.header{
	background-color: #fff;
	padding: 1rem 0;
	min-height: 70px;
	position: fixed;
	top: 0;
	z-index: 100;
	width: 100%;
	-webkit-transition: .3s all;
	transition: .3s all;
	border-bottom: 1px solid #c8c8c8;
}
.header .container{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: right;
	    -ms-flex-pack: right;
	        justify-content: right;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	height: 100%;
}
.header .title{
	font-size: 1rem;
	margin: 0 auto 0 0;
}
.header .title img{
	max-height: 50px;
	width: auto;
}
.header .nav{
	height: 100%;
}
.header .toggle{
	margin: 0;
}
.header .toggle .item{
	display: inline-block;
	vertical-align: bottom;
	margin: 0;
}
.header .toggle .link{
	display: inline-block;
	padding: 0 .5em;
}
.header .toggle .link:hover{
	color: #d31c1d;
	text-decoration: none;
	background: #eee;
}
.header .language{
	margin: 0 0 0 2em;
}
.header .language .link{
	display: inline-block;
	border: 1px solid #333;
	line-height: 30px;
	padding: .25em .5em;
}
.header .language .link:hover{
	background-color: #eee;
	text-decoration: none;
}
.header .language .link[aria-current="page"]{
	display: none;
}

.container.container_small,
.wp-block-file{
	max-width: 800px;
}
.wp-block-file{
	margin-right: auto;
	margin-left: auto;
}
.wp-block-file .wp-block-file__button{

}
.inner{
	width: 800px;
	max-width: 100%;
	margin-right: auto;
	margin-left: auto;
}
a.link.arrow:not(.button){
	padding-left: 1em;
	background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAANCAYAAACUwi84AAAASElEQVR42mNgYGBQYCAAPgBxAD4F/6F4AiEFIHwBiA3wKfgPtTIBnwIYXgDEAvgUgHADLgUo1vwn5ND/hLz6n1BgXSAmuHECAHnsLV6krfeJAAAAAElFTkSuQmCC") left center no-repeat;
	text-decoration: underline;
}
a.link.arrow:not(.button):hover{
	color: #d31c1d;
}

.wp-block-columns{
	padding: 0;
	margin: 0;
}
#wrap{
	margin-top: 71px;
}
.mainv{
	background: url("../img/top/main_01.png") center top no-repeat;
	background-size: cover;
	padding: 15.85% 0;
}
.en-US .mainv{
	background-image: url("../img/en/top/main_01_en.png");
	padding: 12% 0;
}
.home h2,
.page_title_underline{
	font-size: 3.6rem;
	position: relative;
	margin-bottom: 2em;
	line-height: 1.6;
}
.home h2 span,
.page_title_underline .wrap,
.page_title_underline .en,
.page_title_underline .jp{
	position: relative;
	display: inline-block;
	vertical-align: -webkit-baseline-middle;
}
.home h2:before,
.home h2 .wrap:before,
.home h2 .wrap:after,
.page_title_underline:before,
.page_title_underline .wrap:before,
.page_title_underline .wrap:after{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.home h2:before,
.page_title_underline:before{
	width: 100%;
	height: 1px;
	background: #c8c8c8;
}
.home h2 .wrap:before,
.page_title_underline .wrap:before{
	background: #d31c1d;
	height: 5px;
	width: 100%;
	bottom: -4px;
}
.home h2 .wrap:after,
.page_title_underline .wrap:after{
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 7px 0 0;
	border-color: #d31c1c transparent transparent transparent;
	right: -7px;
	left: auto;
	bottom: -4px;
}
.home h2 .en, .page_title_underline .wrap{
	color: #999;
}
.home .top_03 h2 .num{
	position: absolute;
	right: 0;
	bottom: 0;
	color: #666;
	font-size: 50%;
	font-weight: normal;
	line-height: 3.6;
}
.home h2 .jp:before,
.page_title_underline .jp:before{
	content: "";
	width: 1px;
	height: 1em;
	background-color: #999;
	display: inline-block;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	border: 0;
	margin: auto;
}
.home h2 .jp,
.page_title_underline .jp{
	color: #666;
	font-size: 50%;
	font-weight: normal;
	margin-left: 1.5rem;
	padding-left: 2rem;
	position: relative;
}
.home h3{
	background: #eee;
	display: inline-block;
	padding: 5px 15px;
}
.home h3 .small{
	font-weight: normal;
	display: block;
	font-size: 1.3rem;
	padding-top: .5rem;
}
.section_top{
	padding: 5em 0 7em;
}
.news_dl{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	border-top: 1px dotted #c8c8c8;
}
.top_01 .news_dl{
	border-top: none;
}
.news_dl .date{
	width: 10em;
}
.news_dl .title{
	width: calc(100% - 12em);
}
.news_dl .date,
.news_dl .title{
	border-bottom: 1px dotted #c8c8c8;
	padding: 1em 0;
}
.news_dl .title .link{
	display: block;
	text-decoration: underline;
}
.top_01{
	padding-bottom: 4em;
}
.top_02{
	background: url("../img/top/bg_01.jpg") center center no-repeat;
	background-size: cover;
	padding: 4em 0;
}
.top_01 .button.arrow,
.top_02 .button.arrow,
.top_03 .button.arrow{
	margin-top: 3em;
}
.top_03 .list{
	/* list-style: disc inside; */
	margin-bottom: 0;
	font-size: 92%;
}
.top_03 .item{
	text-indent: -1em;
	margin-left: 1em;
	position: relative;
}
.top_03 .item .num{
	position: absolute;
	left: 10em;
	text-align: right;
	display: inline-block;
	width: 4em;
}
.en-US .top_03 .item .num{
	width: 8em;
	left: auto;
	right: 0;
}
.top_03 .item:before{
	content: "•";
	margin-right: .5em;
}
.top_03 .button,
.top_06 .button{
	margin-top: 1em;
}
.top_03 .button img,
.top_06 .button img,
.member .button img{
	width: 24px;
	height: auto;
	margin-right: 1em;
}
.top_04{
	background: url("../img/top/bg_02.png") center center no-repeat;
	background-size: cover;
}
.top_04 .list{
	list-style: decimal inside;
	margin-bottom: 3em;
}
.top_04 .item:before {
	content: "";
	padding-right: .5em;
}
.top_06{
	background: #eff6f8 url("../img/top/bg_03.png") left top repeat-x;
}
.top_05 p img{
	width: 20px;
	margin-right: 10px;
}
.top_05 .map iframe{
	width: 100%;
}

.footer{
	background: #d31c1d;
	color: #fff;
	text-align: center;
	padding: 2em 0 1em;
}
.footer a{
	color: #fff;
}
.footer .item{
	display: inline-block;
}

.copyright{
	letter-spacing: .1rem;
}


#wrap.page,
#wrap.error404,
#wrap.news{
	background: #fafafa;
}
.page_content{
	padding: 5em 0;
}
.page_content > .page_content:nth-of-type(1){
	padding-top: 2em;
}
.wp-block-columns .page_content:first-child{
	padding-top: 0;
	padding-bottom: 0;
}
.page_content > .page_content:last-child{
	padding-bottom: 0;
}
.page_title{
	text-align:center;
	line-height: 2.4;
	position: relative;
	margin-bottom: 2em;
}
.page_title .wrap:after{
	content: "";
	display: inline-block;
	width: 3em;
	height: 4px;
	background: #d31c1d;
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
}
.page_content h2.center{
	margin-bottom: 2em;
}
.page_content .lead{
	margin-bottom: 3em;
	text-align: center;
}


.header2_border{
	font-size: 2em;
	text-align: center;
	position: relative;
	margin-bottom: 1.5em;
}
.header2_border:before,
.header2_border:after{
	content: "";
	display: inline-block;
	width: 1.5em;
	height: 1px;
	background: #d31c1d;
	vertical-align: middle;
	margin: 0 .75em;
}

@media (min-width: 769px) {
	.top_03 .columns{
		/* margin-left: 0; */
	}
	.top_03 .list.mt-350{
		margin-top: 7.4rem;
	}
}



dl.table,
.contact_form{
	display: -webkit-flex;
	display: flex;
	/* align-items: center; */
	flex-wrap: wrap;
}
dl.table .title{
	width: 30%;
	text-align: right;
	padding-right: 2em;
}
dl.table .text,
.contact_form .text{
	width: 70%;
}

.mw_wp_form .error{
	color: #d31c1d;
	position: relative;
	top: -.75em;
	display: inline-block;
	vertical-align: middle;
	font-size: 100%;
	font-weight: bold;
	background: #eee;
	padding: 0 .5em;
}
.mw_wp_form input[name="zip[separator]"] + .error,
.mw_wp_form input[name="tel[separator]"] + .error{
	top: -.5em;
	margin-left: 1em;
}
.mw_wp_form select[name="prefectures"] + .error{
	top: 0;
	margin-left: 1em;
}
.contact_form{
	border-top: 1px solid #c8c8c8;
	margin-bottom: 5em;
}
.contact_form .title,
.contact_form .text{
	border: 1px solid #c8c8c8;
	border-top: none;
	padding: 1em;
	display: -webkit-flex;
	display: flex;
}
.contact_form .title{
	width: 30%;
	background: #eee;
	border-right: none;
	display: flex;
}
.contact_form .title p{
	margin-bottom: 0;
	align-self: center;
}
.contact_form .text{
	border-left: none;
	background: #fff;
	padding-bottom: 0;
}
.contact_form .text .red{
	padding: 6px 1em 0 0;
	flex-basis: 4em;
}
.contact_form .text p{
	margin-bottom: 0;
	flex-basis: 100%;
}
.contact_form input,
.contact_form textarea{
	margin-bottom: 1em;
	width: 100%;
	vertical-align: middle;
}

.mw_wp_form_confirm .contact_form .text p{
	margin-bottom: 1em;
}
.mw_wp_form_confirm .contact_form .text .red{
	padding-top: 0;
}
.mw_wp_form_confirm .contact_form .text .num{
	display: none;
}


.pagination{
	margin: 3em auto;
	text-align: center;
}
.pagination li{
	display: inline-block;
	vertical-align: middle;
	margin: 0 .5em;
}
.pagination li .page-numbers{
	display: block;
	padding: .25em .5em;
	min-width: 2.5em;
}
.pagination li .page-numbers.dots{
	padding: .25em;
	min-width: auto;
}
.pagination li a.page-numbers:not(.next):not(.prev){
	border: 1px solid #ccc;
}
.pagination li a.page-numbers:not(.next):not(.prev):hover{
	background: #ccc;
	color: #fff;
	text-decoration: none;
}
.pagination li .page-numbers.current{
	background: #ccc;
	color: #fff;
}
.pagination li .page-numbers.next:before,
.pagination li .page-numbers.prev:before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 7px;
	border-color: transparent transparent transparent #999;
}
.pagination li .page-numbers.prev:before{
	border-width: 4px 7px 4px 0;
	border-color: transparent #999 transparent transparent;
}

.wp-block-column:not(:first-child){
	margin-left: 0;
}
.member .column_flex{
	padding: 5em .5em 1.5em 0;
	width: 100%;
	position: relative;
}
.member .column_flex.bg_blue{
	margin-bottom: 2em;
	padding: 5em .75em 1.5em 1.5em;
}
.member .column_flex .bg_gray{
	background:#898989;
	color: #fff;
}
.member .column_flex .bg_lightgray{
	background:#eee;
}
.member .bg_blue{
	background:#deebf7;
}
.member .column_flex .heading_h2{
	padding: 5px 12px;
	position: relative;
	margin-top: -3em;
}
.heading_h2 .bg_lightgray{
	padding: 5px 12px;
	background:#eee;
}
.en-US.member .column_flex .heading_h2{
	margin-top: -76px;
}
.en-US.member .column_flex.bg_blue{
	padding-top: 86px;
}
.member .column_flex .title{
	font-size: 1em;
	margin-bottom: .5em;
}
.member .column_flex .list{
}
.member .column_flex li{
	margin-bottom: 0;
	text-indent: -1em;
	margin-left: 1em;
}
.member .column_flex li:before{
	content: "•";
	margin-right: .5em;
}

.heading_news{
	font-size: 1.5em;
	line-height: 1.6;
	padding-bottom: .5em;
	border-bottom: 1px dotted #c8c8c8;
	margin-bottom: 1.5em;
}
.container_news > .link{
	margin-top: 5em;
}
.container_news a,
.news_dl .title a{
	color: #1c5fd3;
}
.container_news > .link a{
	color: #333;
}

.articles .page_content h2{
	font-size: 1.2em;
	margin-top: 2em;
}
.articles .page_content ul:not([class]),
.account .page_content ul:not([class]){
	list-style: disc inside;
}
.articles .page_content ul.list{}
.articles .page_content ul.list > li{
	text-indent: -1em;
	margin-left: 1em;
}
.articles .page_content ul.list li.mt-0{
	margin-top: -1em;
}
.articles .page_content ol > li{
	text-indent: -3em;
	margin-left: 3em;
}
.articles .page_content ol > li,
.articles .page_content ol > li p{
	margin-bottom: 0;
}

.articles .page_content ul.list ol,
.articles .page_content ul.list ul{
	font-size: 1em;
	margin-top: -1em;
	margin-left: 0;
}
.articles .page_content a,
.account .page_content a{
		color: #1c5fd3;
}
.articles .page_content .wp-block-file__button,
.account .page_content .wp-block-file__button{
  display: inline-block;
  padding: .5em 3em;
  color: #333!important;
  text-align: center;
  letter-spacing: .1rem;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 1px solid #333;
  cursor: pointer;
  box-sizing: border-box;
	position: relative;
	padding-right: 4em;
	font-size: 1em;
	border-radius: 0;
}
.articles .page_content .wp-block-file__button:focus,
.articles .page_content .wp-block-file__button:hover,
.account .page_content .wp-block-file__button:focus,
.account .page_content .wp-block-file__button:hover {
  background-color: rgb(255 255 255 / 40%);
    color: #333;
  border-color: #d31c1d;
  outline: 0;
  text-decoration: none;
  }
.articles .page_content .wp-block-file__button:after,
.articles .page_content .wp-block-file__button:before,
.account .page_content .wp-block-file__button:after,
.account .page_content .wp-block-file__button:before{
  content: "";
  display: block;
  position: absolute;
  right: 1em;
  top: 0;
  bottom: 0;
  margin: auto;
  background: #d31c1d;
  height: 1px;
}
.articles .page_content .wp-block-file__button:before,
.account .page_content .wp-block-file__button:before{
  width: 1.5em;
}
.articles .page_content .wp-block-file__button:after,
.account .page_content .wp-block-file__button:after{
  width: .6em;
  transform: skewY(30deg);
  bottom: .3em;
}
@media (min-width: 769px) {
	.flex{
		display: -webkit-flex;
		display: flex;
	}
	.member .column_flex{
		max-width: 25%;
	}
	.member .column_flex.bg_blue + .column_flex:not(.bg_blue){
		padding-left: 1.5em;
	}
}