@charset "utf-8";

/* Foundation
***********************************************************************/
*,
:before,
:after{
	box-sizing:border-box;
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", "Meiryo", sans-serif;
}
body,
input,
select,
textarea,
address,
button
{
	line-height:1.78;
	font-weight:500;
	font-size:16px;
	letter-spacing:.02em;
	word-wrap:break-word;
	border: none;
}
body{
	position: relative;
	background:#f5f3ee;
	color:#333;
}
html>/**/body {
	font-size:16px;
}
html.is-active{
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 99;
}
html, body, #container{
	height: 100%;
}
img{
	vertical-align:bottom;
	width:auto\9;
	max-width:100%;
	height:auto;
	-ms-interpolation-mode:bicubic;
}
a{
	color:#0066cc;
	transition:.3s opacity;
}
a,a:focus {
  outline:none;
}
button,input,input:focus, select:focus, textarea:focus{
  outline:none;
}
input::-moz-focus-inner, 
button::-moz-focus-inner,
select::-moz-focus-inner,
textarea::-moz-focus-inner{
  border:none;
}
[type="submit"],
[type="button"]{
	transition:.3s opacity;
	cursor:pointer;
}
[type="radio"],[type="checkbox"]{
	display: none;
}
select, input, [type="checkbox"]{
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	border: none;
}
::-ms-expand{
display: none;
}
ul{
	list-style: none;
}
h1,h2,h3,h4,h5{
	font-weight: bold;
	color:#4d4d4d;
}

/* layout
----------------------------------------------------------------------*/
.inner{
	max-width: 960px;
	margin: 0 auto;
}
.wrap{
	display: flex;
	flex-direction: column;
	min-height: 100%;
}
.br-pc{
	display: none;
}
/*item*/
.item_box{
	margin: 60px auto 0;
}
.item_box .item{
	margin-top: 40px;
}
.item_geige{
	background: #f5f3ee;
	padding: 20px 14px;
}
.sec_subttl + .item_geige, .sec_subttl + .important{
	margin-top: 30px;
}

/* Object
***********************************************************************/
.arrow{
	position: relative;
}
.arrow::after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 16px;
	height: 16px;
	border-top: 3px solid #707070;
	border-right: 3px solid #707070;
	transform: rotate(45deg);
}
form dd .arrow::after{
	pointer-events: none;
}
.btn{
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
}
.btn_blue, .btn_ghost{
	padding: 0 20px;
	min-width: 130px;
	width: 100%;
	height: 50px;
	font-weight: bold;
	border-radius: 15px;
}
.btn_blue{
	background: #044D8B;
	color: #fff;
	line-height: 50px;
}
.btn_ghost{
	border:3px solid #ccc;
	background: #fff;
	color: #333;
	line-height: 44px;
}
.btn_inactive{
	position: relative;
	border: none;
	color: #707070;
	background: transparent;
	text-decoration: line-through;
	pointer-events: none;
}
.btn_circle{
	display:inline-block;
	position:relative;
	width:52px;
	height:52px;
	border:3px solid #ccc;
	border-radius:50%;
	text-indent: 200%;
	white-space: nowrap;
	overflow:hidden;
}
.btn_circle:before,
.btn_circle:after{
    display:block;
    position:absolute;
	right:0;
	left:1px;
	z-index:1;
    width:10px;
    height:3px;
	background:#4d4d4d;
	margin:auto;
    content:"";
	pointer-events:none;
}
.btn_circle:before{
	top:0;
	bottom:4px;
	-webkit-transform:rotate(35deg);
		-ms-transform:rotate(35deg);
			transform:rotate(35deg);
}
.btn_circle:after{
	top:4px;
	bottom:0;
	-webkit-transform:rotate(-35deg);
		-ms-transform:rotate(-35deg);
			transform:rotate(-35deg);
}
.btn_wrap{
	text-align: center;
	margin-bottom: -20px;
}
.btn_area{
	display: inline-block;
}
.btn_wrap .btn_area{
	margin: 0 20px 20px 20px;
}
.btn_radio > li{
	display: inline-block;
}
.btn_radio > li + li{
	margin-left: 20px;
}
dd .arrow::after{
	margin: 0;
	left: auto;
	right: 20px;
	transform: rotate(135deg);
}
.btn_yahoo{
	display: inline-block;
	background: #ff0033;
	border: 2px solid #ff0033;
	text-decoration: none;
	font-weight: bold;
	color: #fff;
	line-height: 44px;
	overflow: hidden;
}
.btn_yahoo > img{
	padding: 12px;
	background: #fff;
	height: 44px;
	margin: auto 0;
}
.btn_yahoo span{
	padding: 0 30px;
}
.btn_form{
	padding: 0 10px;
	background: #e6e6e6;
	border-radius: 8px;
}
input[type="text"],
input[type="password"],
select, textarea{
	border: 2px solid #ccc;
	width: 100%;
	height: 38px;
	border-radius: 38px;
	padding: 0 10px;
}
input[type="text"].form_error,
.form_error{
	border-color: #e71b26;
}

.icon_checkbox{
	display: inline-block;
	position: relative;
	padding-left: 30px;
}
.icon_checkbox::before{
	content: "";
	position: absolute;
	top: 1px;
	left: 0;
	width: 22px;
	height: 22px;
	background: #fff;
	border: 2px solid #ccc;
	border-radius: 5px;
}
.icon_checkbox::after{
	content: "";
	position: absolute;
	top: 1px;
	left: 7px;
	border-bottom: 3px solid #333;
	border-right: 3px solid #333;
	width: 8px;
	height: 12px;
	transform: rotate(40deg);
	transition: .1s;
	opacity: 0;
}
[type="checkbox"]:checked + .icon_checkbox::after{
	top: 4px;
	opacity: 1;
}
.checkbox{
	cursor: pointer;
}
textarea{
	height: 120px;
	border-radius: 15px;
}
.flow .num::before{
	counter-increment: num;
	content: counter(num);
	font-weight: bold;
}
.numbering{
	counter-reset: num num-article;
}
.num-par{
	counter-reset: num-par;
	font-weight: normal;
}
.num-par .num-cld{
	counter-reset:  num-touten 1;
}
.num-point{
	counter-reset: num-point;
	font-weight: normal;
}
.num-touten{
	counter-reset: num-touten;
	font-weight: normal;
}
.num-touten .num-cld{
	counter-reset:  num-par 1;
}
.num{
	position: relative;
}
.num::before{
	content: counter(num);
	counter-increment: num;
	font-size: 16px;
}
.num-chapter > .num, .num-article > .num{
	font-weight: bold;
}
.num, .num p{
	font-weight: normal;
}
.num-chapter > .num, .num-article > .num, .num-article > .num > *:first-of-type{
	margin-top: 20px;
}
.num-chapter > .num::before{
	counter-increment: num-chapter;
	content: "第" counter(num-chapter)"章 ";
}
.num-article > .num::before{
	counter-increment: num-article;
	content: "第" counter(num-article)"条 ";
}
.num-par > .num::before{
	counter-increment: num-par;
	content: "(" counter(num-par)")";
}
.num-par .num-cld > .num::before{
	counter-increment: num-touten;
	content: counter(num-touten)"、";
}
.num-touten > .num::before{
	counter-increment: num-touten;
	content: counter(num-touten)"、";
}
.num-touten .num-cld > .num::before{
	counter-increment: num-par;
	content: "("counter(num-par)")";
}
.num-point > .num::before{
	counter-increment: num-point;
	content: counter(num-point)".";
}
.num-touten > .num:first-of-type::before{
	content: "";
}
.dlTable{
	display: table;
	width: 100%;
}
.dlTable dt, .dlTable dd{
	display: table-cell;
	vertical-align: middle;
}
.dlTable-row{
	display: flex;
}
.attention{
	font-size: 14px;
	color: #707070;
	text-indent: -1em;
	padding-left: 1em;
}

/*flow*/
.flow > li{
	position: relative;
	padding-left: 30px;
	font-weight: bold;
	color: #A2A2A2;
}
.flow > li::before{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto 0;
	width: 26px;
	height: 26px;
	background: #ccc;
	border-radius: 50%;
	color: #fff;
	text-align: center;
	line-height: 26px;
}
.flow > li:not(:last-of-type){
	margin-bottom: 30px;
}
.flow > li:not(:first-of-type)::after{
	content: "";
	position: absolute;
	top: -23px;
	left: 12px;
	width: 2px;
	height: 16px;
	background: #ccc;
}
.flow .num.is-active + .num.is-active::after{
	background: #044D8B;
}
.flow .num.is-active{
	color: #044D8B;
}
.flow .num.is-active::before{
	background: #044D8B;
}
/*form*/
.error_heading{
	color: #e71b26;
	padding: 20px;
	background: #FCE7E8;
	text-align: center;
	font-weight: bold;
}
form dl + dl{
	margin-top: 20px;
}
form dl, form dd{
	width: 100%;
}
form dd input, form dd select, form dd textarea{
	margin: 0 -5px;
}
form .dlTable-row > dl{
	width: auto;
}
form .dlTable-row > dl > dt, form .dlTable-row > dl > dd{
	display: inline-block;
}
form .dlTable-row dl + dl{
	margin: 0 0 0 20px;
}
form .dlTable-row dt{
	padding-right: 13px;
}
.c_zip input[type="text"]{
	width: 70px;
}
.c_zip input[type="button"]{
	margin-left: 20px;
}
.c_zip span{
	padding: 0 10px;
	line-height: 38px;
}
.select_date select{
	width: 90px;
}
.select_date > div:first-of-type select{
	width: 110px;
}
.select_date div + div{
	margin-top: 20px;
}
.select_date .arrow + .arrow{
	margin: 20px 10px 0 20px;
}
.select_date .arrow{
	margin-right: 10px;
}
.btn_radio > li{
	position: relative;
}
.btn_radio label{
	padding-left: 30px;
}
.btn_radio label:hover{
	cursor: pointer;
}
.icon_radio{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 24px;
	height: 24px;
	margin: auto 0;
	border: 2px solid #808080;
	border-radius: 50%;
	pointer-events: none;
}
.icon_radio::before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 4px;
	margin: auto 0;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #044D8B;
	transition: .3s;
	opacity: 0;
}
.form input[type="radio"]:checked + .icon_radio{
	border-color: #044D8B;
}
.form input[type="radio"]:checked + .icon_radio::before{
	opacity: 1;
}
.form input[type="radio"]:checked + .icon_radio + label{
	color: #044D8B;
	pointer-events: none;
}
.form_mess{
	margin-top: 20px;
	color: #e71b26;
}

/*important*/
.important{
	padding: 10px;
}
.important_headding{
	margin-bottom: 20px;
}
.important_ttl{
	margin-bottom: 6px;
}
.important_area{
	padding: 14px;
	background: #fff;
	border-radius: 5px;
}
.important_area.u-ofy-scroll{
	height: 240px;
}
.important_subttl{
	margin: 20px 0;
	font-weight: bold;
}
.important .dlTable-pc dl{
	margin-top: 14px;
}
.important dd.dlTable-pc dl:first-of-type{
	margin-top: 0;
}
.important .txt_area{
	margin: 20px 14px;
	color: #fff;
}
.error_m{
	display: block;
	font-size: 14px;
	color: #e71b26;
}
.important .error_m{
	display: inline-block;
	padding: 0 10px;
	border-radius: 5px;
	color: #fff;
	background: #e71b26;
}
/*acd*/
.acd label{
	position: relative;
	display: block;
	padding: 8px 14px;
	margin: 8px 0;
	background: #f5f3ee;
}
.acd label::before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto 14px auto 0;
	width: 20px;
	height: 4px;
	background: #12b5ad;
}
.acd label::after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 8px;
	margin: auto 14px auto 0;
	width: 4px;
	height: 20px;
	background: #12b5ad;
	transition: .1s ease-out;
}
.acd [type="checkbox"]:checked + label::after{
	opacity: 0;
}
.acd_content{
	line-height: 0;
	opacity: 0;
	transition: padding .2s ease-out, line-height .2s ease-out, opacity .2s linear, visibility .1s ease-out;
	visibility: hidden;
}
.acd [type="checkbox"]:checked + label + .acd_content{
	font-size: 16px;
	line-height: 1.78;
	padding: 20px 0;
	opacity: 1;
	visibility: visible;
	transition: padding .2s ease-out, line-height .2s ease-out, opacity .2s linear;
}
.acd_content *{
	display: none;
}
.acd [type="checkbox"]:checked + label + .acd_content *:not(a){
	display: block;
}
a.inquiry{
	display: inline-block;
}
/*faq*/
#faq label{
	padding: 8px 42px 8px 44px;
}
.icon_faq{
	position: relative;
}
.icon_faq::before{
	content: "Q";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -36px;
	margin: auto 0;
	width: 28px;
	height: 28px;
	background: #044D8B;
	font-weight: bold;
	color: #fff;
	text-align: center;
	border-radius: 50%;
}
/* news */
.news_item{
	font-weight:bold;
}
.news_item a{
	text-decoration:none;
}
.news_item_inner{
	padding: 20px 0;
	transition:.3s opacity;
}
.news_item + .news_item{
	border-top: 1px solid #F1F1F1;
}
.news_date{
	display: inline-block;
	color: #707070;
}
.news_category{
	display:inline-block;
	line-height:24px;
	width:100px;
	height:24px;
	margin:0 20px;
	border-radius:12px;
	color: #fff;
	text-align:center;
	font-size:12px;
}
.nc-haoden{
	background: #e71b26;
}
.nc-maintenance{
	background: #225195;
}
.news_ttl{
	display: block;
	color: #4d4d4d;
	margin-top: 8px;
}

/*page*/
.page{
	margin:20px 0;
}
.page ul{
	display:flex;
	justify-content:center;
}
.page ul li{
	position:relative;
	display:block;
	width:40px;
	height:40px;
	line-height:40px;
	text-align:center;
}
.page ul li a{
	display:block;
	color:#21B5AD;
	font-weight:bold;
	text-decoration: none;
}
.page ul li.page_fixed{
	color:#FFF;
	background:#21B5AD;
	border-radius:50%;
}

/*item_wrap*/
.item_wrap .img_item{
	max-width: 250px;
}

/*caution*/
.caution_box dl{
	margin-top:15px;
}
.caution_box dl dt{
	font-size:18px;
	font-weight:bold;
	padding:5px;
	border-bottom: 2px solid #21B5AD;
}
.caution_box dl dd{
	padding:5px;
}
.caution_box dl dd p.tlt{
	font-weight:bold;
	margin:10px 0 0 12px;
}
.caution_box dl dd ul li{
	margin:0 0 0 12px;
}
.editormark{
	font-size: 12px;
	color: #888;
	padding:0 s.4em;
}


/* header
----------------------------------------------------------------------*/
header{
	position:relative;
	z-index:1;
	width:100%;
	padding:20px 16px 64px;
}
header .inner{
	position: relative;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.header_logo a{
	display:block;
	width:192px;
	height:20px;
	background:url("../images/asjgames_logo.png") no-repeat;
	text-indent:200%;
	white-space:nowrap;
	overflow:hidden;
}
.header_info{
	display:none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 80px 16px 0;
	font-weight:bold;
	background: linear-gradient(#ccc 70%, #C4C4C4);
	z-index: -1;
}
.header_userName{
	display: inline-block;
	line-height:35px;
	height:35px;
	padding:0 20px;
	margin-bottom: 20px;
	background:#707070;
	border-radius:16px;
	color:#fff;
	font-size:14px;
}
.header_userName span{
	display:inline-block;
	vertical-align:top;
	max-width:350px;
	margin-right:4px;
	font-size:16px;
	font-weight:bold;
	text-overflow:ellipsis;
	white-space:nowrap;
	overflow:hidden;
}
.gnav{
	font-weight:bold;
}
.gnav li + li{
	margin-top:20px;
}
.gnav a{
	vertical-align:top;
	color:#333;
	text-decoration:none;
}
.gnav input{
	vertical-align:top;
	background:transparent;
	padding:0;
	border:0;
	color:#333;
	font-weight:bold;
}
#gnav_btn{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto 0;
	width: 30px;
	height: 30px;
	background: transparent;
	border: none;
}
#gnav_btn span{
	display: block;
	width: 100%;
	height: 3px;
	background: #4d4d4d;
	margin-left: auto;
	transition: .2s;
}
#gnav_btn span + span{
	width: 80%;
	margin-top: 6px;
}
#gnav_btn span:last-of-type{
	width: 60%;
}
#gnav_btn.close span, #gnav_btn.close span + span{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	margin: auto;
	background: #4d4d4d;
	transform: rotate(45deg);
}
#gnav_btn.close span + span{
	transform: rotate(-45deg);
}
#gnav_btn.close span:last-of-type{
	display: none;
}

/* main
----------------------------------------------------------------------*/
#main{
	position:relative;
	margin:0 auto;
	padding:0 14px 64px;
}
.sec{
	margin: 0 auto;
}
.sec + .sec{
	margin-top:64px;
}
.sec_box{
	max-width: 960px;
	padding:60px 20px;
	background:#fff;
	border-radius:15px;
	box-shadow:0 1px 2px rgba(0,0,0,.2);
}
.sec_box:first-child{
	margin-top:-20px;
}
.sec_ttl{
	font-size:30px;
	color: #12b5ad;
	letter-spacing: .15em;
}
.sec_m{
	margin-top: 10px;
	font-weight: bold;
	color: #707070;
}
.sec_subttl{
	font-size: 22px;
	margin-bottom: -12px;
}
/* bnr */
.sec-bnr{
	text-align:center;
}
.sec-bnr a{
	display:inline-block;
}
/*item*/
.sec_ttl_line{
	position: relative;
	width: 70px;
	height: 4px;
	background: #ebdd23;
	margin: 50px auto 66px;
}
.sec_ttl_line::before,.sec_ttl_line::after{
	content: "";
	position: absolute;
	top: 0;
	width: 33.3%;
	height: inherit;
}
.sec_ttl_line::before{
	left: 0;
	background: #cf3030;
}
.sec_ttl_line::after{
	right: 0;
	background: #2cbf91;
}
.sec_tab{
	margin: 0 -20px;
	text-align: center;
}
.sec_tab li{
	display: inline-block;
	padding: 0 20px;
}
.sec_tab li + li{
	border-left: 2px solid #e6e6e6;
}

/* footer
----------------------------------------------------------------------*/
footer{
	background:#fff;
	color: #707070;
	margin-top: auto;
}
footer .inner{
	margin:0 auto;
	padding:  0 16px;
}
.footer_main{
	position: relative;
	padding:56px 0;
}
.footer_link dl{
	margin-right:72px;
	font-weight:bold;
}
.footer_link dd{
	margin-top:20px;
}
.footer_link dd a{
	color: #707070;
	text-decoration: none;
}
.footer_link dt:not(.flink-sp), .footer_link dd:not(.flink-sp){
	display: none;
}
.isms a{
	display:inline-block;
	margin-top: 20px;
}

.footer_copyright{
	padding:16px 0;
	border-top:2px solid #bfbfbf;
	font-size: 12px;
	text-align:center;
}
.footer_copyright p + p{
	margin-top:8px;
}

/* btnTop
----------------------------------------------------------------------*/
#btnTop{
	position:fixed;
	right:16px;
	bottom:14px;
	z-index:1;
}
#btnTop a{
	display:block;
	position:relative;
	width:38px;
	height:38px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}
#btnTop a:before,
#btnTop a:after,
#btnTop a span:before,
#btnTop a span:after{
    content:"";
    display:block;
    position:absolute;
	z-index:1;
    width:23px;
    height:3px;
	margin:auto;
	pointer-events:none;
}
#btnTop a:before,
#btnTop a:after{
    top:0;
	bottom:11px;
}
#btnTop a span:before,
#btnTop a span:after{
    top:11px;
	bottom:0;
}

#btnTop a:before,
#btnTop a span:before{
	left:0;
	background:#aaa;
	-webkit-transform:rotate(-40deg);
		-ms-transform:rotate(-40deg);
			transform:rotate(-40deg);
}
#btnTop a:after,
#btnTop a span:after{
    right:0;
	background:#4d4d4d;
	-webkit-transform:rotate(40deg);
		-ms-transform:rotate(40deg);
			transform:rotate(40deg);
}

/* utility
***********************************************************************/
.u-ta-c{
	text-align: center;
}
.u-ta-r{
	text-align: right;
}
.u-fw-b{
	font-weight: bold !important;
}
.u-fs-14{
	font-size: 14px;
}
.u-va-t{
	vertical-align: top;
}
.u-mt-20{
	margin-top: 20px;
}
.u-mt-32{
	margin-top: 32px;
}
.u-d-flex{
	display: flex;
}
.u-ofy-scroll{
	overflow-y: scroll;
}
.u-c-blue{
	color: #044d8b;
}
.u-c-red{
	color: #e71b26;
}
.u-bg-gray{
	background: #e6e6e6;
}
.u-bg-green{
	background: #12b5ad;
}
.u-br-15{
	border-radius: 15px;
	margin-left: -4px;
	margin-right: -4px;
}
.u-width-650{
	max-width: 650px;
	margin-left: auto;
	margin-right: auto;
}
.u-width-150{
	max-width: 150px;
}
.u-width-100{
	max-width: 100px;
}


/*=====================================================================
   PC start
======================================================================*/
@media print, screen and (min-width:768px){

html.is-active{
	position: static;
}
.is-hover{
	opacity:.7;
}
/* object
***********************************************************************/
.dlTable-pc{
	display: table;
}
.dlTable-pc dl{
	display: table-row;
}
.dlTable-pc > dl > dt, .dlTable-pc > dl > dd{
	display: table-cell;
}
.dlTable-pc dt{
	padding-right: 20px;
	white-space: nowrap;
}
form .dlTable-pc{
	width: 100%;
}
	form .dlTable-row dl{
		display: inline-block;
	}
.dlTable-pc > dl > .select_date{
	display: flex;
}
.select_date div + div{
	margin: 0 0 0 20px;
}
/* layout
***********************************************************************/
.br-pc{
	display: block;
}
.br-sp{
	display: none;
}
.item_geige{
	padding: 20px;
}
/* header
***********************************************************************/
.header_userName{
	line-height:35px;
	height:35px;
	padding:0 20px;
	margin: 0 30px 0 0;
	background:#707070;
	border-radius:16px;
	color:#fff;
	font-size:14px;
}
.header_userName span{
	display:inline-block;
	vertical-align:top;
	max-width:350px;
	margin-right:4px;
	font-size:16px;
	font-weight:bold;
	text-overflow:ellipsis;
	white-space:nowrap;
	overflow:hidden;
}
.gnav{
	display:flex;
	justify-content: flex-end;
}
.gnav li{
	margin:0px;
}
.gnav li + li{
	margin: 0 0 0 30px;
}
.header_info{
	display: inline-flex !important;
	align-items: center;
	position: static;
	padding: 0;
	margin-left: auto;
	width: auto;
	background: transparent;
	z-index: 0;
}
#gnav_btn{
	display: none;
}
	
/* section
***********************************************************************/
.sec_ttl{
	font-size: 36px;
	text-align: center;
}
.sec_m{
	text-align: center;
}
.sec_subttl{
	font-size: 26px;
	text-align: center;
}
.dlTable-pc.dc_sub{
	width: 70%;
	margin: 0 auto;
}
.dlTable-pc.dc_sub dd{
text-align: right;
}
	
/*box_list*/
.box_list_wrap{
	display: flex;
	justify-content: center;
}
.box_list + .box_list{
	margin: 0 0 0 20px;
}
.box_list input:not(:checked) + label:hover{
	opacity: .7;
}

/*flow*/
.flow{
	display: flex;
	justify-content: center;
}
.flow > li:not(:last-of-type){
	padding-right: 50px;
	margin: 0;
}
.flow > li:not(:first-of-type)::after{
	top: 0;
	bottom: 0;
	left: -40px;
	margin: auto 0;
	width: 30px;
	height: 2px;
}
	
/*form*/
form dl:not(:last-of-type) > dd{
	padding-bottom: 30px;
}
form .dlTable-row > dl > dd{
	padding-bottom: 0;
}
form .dlTable-pc > dl > dt{
	width: 50px;
	white-space: nowrap;
}
/* news */
.news_item .is-hover{
	opacity:1 !important;
}
.news_item_inner{
	display:flex;
	transition:.3s opacity;
}
.news_item .is-hover .news_item_inner{
	opacity:.7;
}
.news_ttl{
	margin-top: 0;
}

/*item_wrap*/
.item_ttl_wrap{
	position: relative;
	height: 300px;
}
.item_ttl_wrap .sec_m{
	position: absolute;
	bottom: 0;
	left: 50%;
	height: 150px;
	width: 100%;
	max-width: 350px;
}
.item_ttl_wrap .sec_ttl{
	display: flex;
	justify-content: center;
	align-items: flex-end;
	position: absolute;
	top: 0;
	left: 50%;
	height: 150px;
	width: 100%;
	max-width: 350px;
}
.item_wrap_r, .item_wrap_l{
	display: flex;
	justify-content: center;
	align-items: center;
}
.item_wrap_r{
	flex-direction: row-reverse;
}
.item_wrap_r .img_item img, .item_wrap_l .img_item img{
	width: 250px;
	max-width: 250px;
}
.item_wrap_l .txt_item{
	margin-left: 14px;
}
.item_wrap_r .txt_item{
	margin-right: 14px;
}

/*caution*/
.caution_box dl{
	margin-top:25px;
}

/* footer
***********************************************************************/	
.footer_main{
	display: flex;
	align-items: flex-end;
}
.footer_link dt:not(.flink-sp), .footer_link dd:not(.flink-sp){
	display: block;
}
.footer_link{
	display: flex;
}
.footer_link dd{
	font-weight: normal;
}

/* utility
***********************************************************************/
.u-ta-c-pc{
	text-align: center;
}	
	
}

