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

 header

=======================================*/

/* header
---------------------------------------*/
header {
	padding: 20px 0;
	background: rgba(255,255,255,1);
	border-bottom: 1px solid #ccc;
	width: 100%;
	z-index: 3;
}
.header_contents {
	margin: 0 auto;
	overflow: hidden;
	width: 1000px;
}
#logo {
	float: left;
	padding: 10px 0;
	width: 20%;
	text-align: left;
}
header .header_block {
	width: 80%;
	float: right;
}
header .header_block .header_text {
	margin-bottom: 5px;
	overflow: hidden;
}
header .header_block .header_text li {
	float: left;
	width: 70%;
	font-size: 15px;
}
header .header_block .header_text li:last-child {
	width: 30%;
	text-align: right;
	text-decoration: underline;
	text-decoration-color: #3399ff;
}

/* scroll
---------------------------------------*/
.clone_header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9998;
	width: 100%;
}
.header_bg {
	background: rgba(255,255,255,0.8);
}

/* global_navi
---------------------------------------*/
#global_navi {}
#global_navi ul {
	overflow: hidden;
	padding: 4px 0;
}
#global_navi ul li {
	float: left;
	margin-right: 10px;
}
#global_navi ul li:last-child { margin: 0;}
#global_navi ul li a {
	position: relative;
	display: block;
	padding: 10px 35px 8px;
	-webkit-border-radius: 30px;
	   -moz-border-radius: 30px;
	        border-radius: 30px;
	color: #555;
}
#global_navi ul li.entry_woman,
#global_navi ul li.entry_man { color: #fff; }
#global_navi ul li.entry_woman a,
#global_navi ul li.entry_man a {
	-webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, .4);
		 -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, .4);
					text-shadow: 0 1px 1px rgba(0, 0, 0, .4);
	color: #fff;
}
#global_navi ul li.entry_woman a {
	background-color: #feadce;
	-webkit-box-shadow: 0px 2px 0 0 #ef85ab;
	   -moz-box-shadow: 0px 2px 0 0 #ef85ab;
	        box-shadow: 0px 2px 0 0 #ef85ab;
	color: #fff;
}
#global_navi ul li.entry_woman a:hover {
	top: -1px;
	-webkit-box-shadow: 0px 3px 0 0 #ef85ab;
	   -moz-box-shadow: 0px 3px 0 0 #ef85ab;
	        box-shadow: 0px 3px 0 0 #ef85ab;
}
#global_navi ul li.entry_man a {
	background-color: #0199ec;
	-webkit-box-shadow: 0px 2px 0 0 #0081c5;
	   -moz-box-shadow: 0px 2px 0 0 #0081c5;
	        box-shadow: 0px 2px 0 0 #0081c5;
	color: #fff;
}
#global_navi ul li.entry_man a:hover {
	top: -1px;
	-webkit-box-shadow: 0px 3px 0 0 #0081c5;
	   -moz-box-shadow: 0px 3px 0 0 #0081c5;
	        box-shadow: 0px 3px 0 0 #0081c5;
}
#global_navi ul li.entry_woman a:active,
#global_navi ul li.entry_man a:active {
	top: 2px;
	-webkit-box-shadow: none;
	   -moz-box-shadow: none;
	        box-shadow: none;
}
#global_navi ul li.login {}
#global_navi ul li.login a {
	padding: 9px 35px;
	border: 1px solid #aaa;
	-webkit-border-radius: 30px;
	   -moz-border-radius: 30px;
	        border-radius: 30px;
}

/*======================================

	container

=======================================*/
#container { width: 100%; }
#container > nav { margin-top: 0; }
#container footer > nav { margin: 0; }

/*======================================

	contents

=======================================*/

/* contents
---------------------------------------*/
#contents { width: 100%; }
.content {
	margin: 0 auto;
	width: 100%;
}

/* contents_block
---------------------------------------*/
.contents_block {
	padding: 80px 0;
	border-bottom: 1px solid #ccc;
}
.contents_block .contents_box {
	margin: 60px auto 80px;
	max-width: 1000px;
	text-align: center;
}
.contents_block .contents_box:first-child { margin-top: 0;}
.contents_block .contents_box:last-child { margin-bottom: 0;}
.contents_block .contents_box p { margin: 30px 0;}
.contents_block .contents_box p:first-child { margin-top: 0;}
.contents_block .contents_box p:last-child { margin-bottom: 0;}
.contents_block .contents_box p span {
	display: block;
	margin-top: 10px;
	color: #555;
}
.contents_block .contents_box time { margin-left: 20px;}

/* page_title
---------------------------------------*/
.page_title {
	padding: 30px 0;
	background-color: #f5f5f5;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #ccc;
}
.page_title h1 {
	text-align: center;
	font-weight: normal;
	font-size: 28px;
}

/* contents_title
---------------------------------------*/
.contents_title {
	margin: 0 auto 50px;
	width: 1000px;
	text-align: center;
}
.contents_title h2 {
	position: relative;
	margin-bottom: 40px;
	padding-bottom: 20px;
	font-size: 32px;
}
.contents_title h2::after {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 400px;
  height: 0;
  width: 200px;
	border-bottom: 5px solid #c3ecff;
}

/* contents_box
---------------------------------------*/
.contents_box {}

/*======================================

 text

=======================================*/

/* text_link
---------------------------------------*/
.text_link { text-align: right; }
.text_link a {
	display: block;
	padding: 2px 10px;
}

/* text_size
---------------------------------------*/
.font_size_xxs { font-size: 77%;}
.font_size_xs { font-size: 85%; }
.font_size_s { font-size: 93%; }
.font_size_m { font-size: 108%; }
.font_size_l { font-size: 116%; }
.font_size_xl { font-size: 123%; }
.font_size_xxl { font-size: 132%; }

/* text_color
---------------------------------------*/
.text_color_red { color: #d00; }
.text_color_blue { color: #00a; }
.text_color_green { color: #2E8B57; }
.text_color_yellow { color: #ffd700; }
.text_color_orange { color: #FF8C00; }
.text_color_pink { color: #FF1493; }
.text_color_gray { color: #888; }
.text_color_maincolor { color: #36b9ff; }
.text_color_man:link,
.text_color_man:visited {	text-decoration: underline; text-decoration-color: #3e7d9c; color: #3e7d9c;}
.text_color_woman:link,
.text_color_woman:visited {	text-decoration: underline; text-decoration-color: #f5a1c2; color: #f5a1c2;}

/* text_bg_color
---------------------------------------*/
.text_bg_red,
.text_bg_blue,
.text_bg_green,
.text_bg_yellow,
.text_bg_orange,
.text_bg_pink,
.text_bg_gray {
	padding: 3px;
	color: #fff;
}
.text_bg_red { background: #d00; }
.text_bg_blue { background: #00a; }
.text_bg_green { background: #2e8B57; }
.text_bg_yellow { background: #ffd700; }
.text_bg_orange { background: #ff8c00; }
.text_bg_pink { background: #ff1493; }
.text_bg_gray { background: #888; }

/* text_attention
---------------------------------------*/
.text_attention,
.attention_txt li {
	margin-left: 1em;
	text-indent: -1em;
}
.text_attention li { margin-bottom: 5px;}
.text_attention a { color: #d00;}

/* errormsg
---------------------------------------*/
.errormsg {
	margin-top: 5px;
	color: #ff4d4d;
	font-size: 85%;
	font-weight: bold;
	line-height: 1.4;
}

/* text-align
---------------------------------------*/
.text_left { text-align: left; }
.text_right { text-align: right; }
.text_center { text-align: center; }

/* other
---------------------------------------*/
.text_color_imp { color: #ff0000;}
.text_color_01 { color: #00a;}
.text_color_normal { color: #333;}

/*======================================

  maintenance
  - 221104

=======================================*/

/* リンク無効 */
.disable {
  pointer-events: none;
}

.maintenance--disable a {
  pointer-events: none;
}

.maintenance--disable a span::after {
  content: "";
  color: #ff0000;
  padding-left: 8px;
}

.maintenance a span::after {
  content: "";
  color: #ff0000;
  padding-left: 8px;
}

/*======================================

	bg_color

=======================================*/
.bg_color_transparent { background-color: transparent;}
.bg_color_white { background-color: #fff;}
.bg_color_gray { background-color: #f6f6f6;}
.bg_color_darkgray { background-color: #ccc;}
.bg_color_yellow { background-color: #ffbe00;}
.bg_color_lightblue { background-color: #e4f6ff;}

/*======================================

 button

=======================================*/

/* btn_pattern01
---------------------------------------*/
.btn_pattern01,
.btn_pattern01:link,
.btn_pattern01:visited,
.btn_pattern01[type="submit"],
.btn_pattern01[type="reset"] { color: #fff;}
.btn_pattern01,
.btn_pattern02 {
	margin: 0 auto;
	padding: 15px 20px;
	display: inline-block;
	width: 240px;
	-webkit-border-radius: 30px;
	   -moz-border-radius: 30px;
	        border-radius: 30px;
	font-size: 18px;
}
.btn_pattern01::before,
.btn_pattern01::after,
.btn_pattern02::before,
.btn_pattern02::after,
.btn_pattern03::before,
.btn_pattern03::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.btn_pattern01,
.btn_pattern01::before,
.btn_pattern01::after,
.btn_pattern02,
.btn_pattern02::before,
.btn_pattern02::after,
.btn_pattern03,
.btn_pattern03::before,
.btn_pattern03::after {
	-webkit-box-sizing: border-box;
		 -moz-box-sizing: border-box;
					box-sizing: border-box;
	-webkit-transition: all .3s;
					transition: all .3s;
}
.btn_pattern01:hover { background-color: #ffcc33;}
.btn_pattern02:hover { background-color: #36b9ff;}
.btn_pattern02:link:hover { color: #fff;}

/* btn_pattern02
---------------------------------------*/
.btn_pattern02:link,
.btn_pattern02:visited { color: #36b9ff;}
.btn_pattern02 { border: 1px solid #36b9ff;}

/* btn_pattern03
---------------------------------------*/
.btn_pattern03,
.btn_pattern03:link,
.btn_pattern03:visited { color: #fff;}
.btn_pattern03 {
	padding: 15px 20px;
	display: inline-block;
	width: 120px;
	-webkit-border-radius: 5px;
	   -moz-border-radius: 5px;
	        border-radius: 5px;
	font-size: 16px;
	vertical-align: 4px;
}

/* btn_color
---------------------------------------*/
.btn_gray { background-color: #ccc;}
.btn_gray:hover { background-color: #d5d5d5;}
.btn_green { background-color: #A1D563;}
.btn_green:hover { background-color: #BCEA89;}
.btn_blue { background-color: #66A1DD;}
.btn_blue:hover { background-color: #A3CEF1;}
.btn_yellow { background-color: #ffbe00;}
.btn_yellow:hover { background-color: #ffcc33;}
.btn_orange { background-color: #ff9f73;}
.btn_orange:hover { background-color: #ffb18c;}


/* entry_free
---------------------------------------*/
.entry_free {
	margin: 0 auto 30px;
	padding-bottom: 10px;
	overflow: hidden;
	width: 600px;
}
.entry_free li {
	float: left;
	margin: 0 20px;
	width: 260px;
}
.entry_free li dl dt { margin-bottom: 10px;}
.entry_free li dl dd a {
	position: relative;
	display: block;
	padding: 25px 30px 22px;
	-webkit-transition: none;
					transition: none;
	-webkit-border-radius: 50px;
	   -moz-border-radius: 50px;
	        border-radius: 50px;
	-webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, .4);
		 -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, .4);
					text-shadow: 0 1px 1px rgba(0, 0, 0, .4);
	font-size: 22px;
	color: #fff;
}
.free_woman a {
	background-color: #feadce;
	-webkit-box-shadow: 0px 4px 0 0 #ef85ab;
	   -moz-box-shadow: 0px 4px 0 0 #ef85ab;
	        box-shadow: 0px 4px 0 0 #ef85ab;
	color: #fff;
}
.free_woman a:hover {
	top: -2px;
	-webkit-box-shadow: 0px 6px 0 0 #ef85ab;
	   -moz-box-shadow: 0px 6px 0 0 #ef85ab;
	        box-shadow: 0px 6px 0 0 #ef85ab;
}
.free_man a {
	background-color: #0199ec;
	-webkit-box-shadow: 0px 4px 0 0 #0081c5;
	   -moz-box-shadow: 0px 4px 0 0 #0081c5;
	        box-shadow: 0px 4px 0 0 #0081c5;
	color: #fff;
}
.free_man a:hover {
	top: -2px;
	-webkit-box-shadow: 0px 6px 0 0 #0081c5;
	   -moz-box-shadow: 0px 6px 0 0 #0081c5;
	        box-shadow: 0px 6px 0 0 #0081c5;
}
.free_woman a:hover:active,
.free_man a:hover:active {
	top: 3px;
	-webkit-box-shadow: none;
	   -moz-box-shadow: none;
	        box-shadow: none;
}

/* contents_accordion
---------------------------------------*/
.contents_accordion {}
.contents_accordion .trigger {
	position: relative;
	margin: 10px 0;
	padding: 20px;
	background-color: #f6f6f6;
	border: 1px solid #ccc;
	cursor: pointer;
}
.contents_accordion .acordion_tree {
	padding: 20px;
}


/*======================================

	table

=======================================*/

/* table_pattern01
---------------------------------------*/
.table_pattern01 { margin-top: -50px;}
.table_pattern01 table {}
.table_pattern01 table tr { border-bottom: 2px dotted #ccc;}
.table_pattern01 table tr:last-child { border-bottom: none;}
.table_pattern01 table tr th {
	padding: 50px 20px;
	vertical-align: middle;
	text-align: right;
}
.table_pattern01 table tr td {
	padding: 50px 20px;
	vertical-align: middle;
	text-align: left;
}

/* table_pattern02
---------------------------------------*/
.table_pattern02 {}
.table_pattern02 table {
	width: 100%;
}
.table_pattern02 table tr {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.table_pattern02 table tr th {
	padding: 20px;
	background-color: #f6f6f6;
	width: 25%;
	vertical-align: middle;
}
.table_pattern02 table tr td {
	padding: 20px;
	width: 25%;
	vertical-align: middle;
}

/* table_pattern03
---------------------------------------*/
.table_pattern03 {}
.table_pattern03 table {
	background-color: #fff;
	width: 100%;
	border: 1px solid #ccc;
}
.table_pattern03 table tr { border: 1px solid #ccc;}
.table_pattern03 table tr th {
	padding: 12px;
	border: 1px solid #ccc;
	font-weight: normal;
}
.table_pattern03 table tr td {
	border: 1px solid #ccc;
	padding: 12px;
}
.table_pattern03 table .row1 th:nth-child(2) {
	background-color: #b2e0f8;
	color: #0298ec;
}
.table_pattern03 table .row1 th:nth-child(3) {
	background-color: #fedeeb;
	color: #f083ac;
}
.table_pattern03 table .over_row2 th { text-align: left;}
.table_pattern03 table .over_row2 td:nth-child(2) { background-color: #e4f5fd;}
.table_pattern03 table .over_row2 td:nth-child(3) { background-color: #ffeef4;}

/* table_pattern04
---------------------------------------*/
.table_pattern04 {}
.table_pattern04 table {
	background-color: #fff;
	width: 100%;
}
.table_pattern04 table tr {
	border: 1px solid #ccc;
}
.table_pattern04 table tr th {
	padding: 12px;
	background-color: #c5ebfe;
	border: 1px solid #ccc;
	font-weight: normal;
}
.table_pattern04 table tr td {
	padding: 12px;
	border: 1px solid #ccc;
}

/*======================================

	pager

=======================================*/

/* pager
---------------------------------------*/
.pager {
	margin: 60px 0;
	font-size: 16px;
}
.contents_box .pager:first-child { margin-top: 0;}
.contents_box .pager:last-child { margin-bottom: 0;}
.pager li { display: inline;}
.pager li a {
	padding: 2px 10px;
	color: #555;
}
.pager li a:hover {
	padding: 2px 10px;
	background-color: #e1e1e1;
	color: #fff;
}
.pager li span {
	padding: 2px 10px;
}
.pager li span.select_page {
	padding: 2px 10px;
	background-color: #e1e1e1;
	color: #fff;
}

/*======================================

	icon

=======================================*/
.icon_view { background: url(../../../img/img1/top/common/icon/icon_view.png) left 50% no-repeat transparent; }
.icon_pen { background: url(../../../img/img1/top/common/icon/icon_pen.png) left 50% no-repeat transparent; }
.icon_question { background: url(../../../img/img1/top/common/icon/icon_question.png) left 50% no-repeat transparent; }
.icon_answer { background: url(../../../img/img1/top/common/icon/icon_answer.png) left 50% no-repeat transparent; }
.icon_step1 { background: url(../../../img/img1/top/common/icon/icon_step1.png) left 50% no-repeat transparent; }
.icon_step2 { background: url(../../../img/img1/top/common/icon/icon_step2.png) left 50% no-repeat transparent; }
.icon_step3 { background: url(../../../img/img1/top/common/icon/icon_step3.png) left 50% no-repeat transparent; }

.icon_view,
.icon_pen,
.icon_question,
.icon_answer {
	margin-right: 5px;
	padding: 5px 0 5px 40px;
	-webkit-background-size: 40px 40px;
	   -moz-background-size: 40px 40px;
	     -o-background-size: 40px 40px;
	        background-size: 40px 40px;
	    -ms-background-size: 40px 40px;
}
.icon_question,
.icon_answer {
	display: block;
	width: 920px;
}
.icon_step1,
.icon_step2,
.icon_step3 {
	display: block;
	padding: 10px 10px 10px 60px;
	-webkit-background-size: 50px 50px;
	   -moz-background-size: 50px 50px;
	     -o-background-size: 50px 50px;
	        background-size: 50px 50px;
	    -ms-background-size: 50px 50px;
}
.open_close_gray {
	position: absolute;
	top: 50%;
	right: 20px;
	text-indent: -9999px;
	display: block;
	background: url(../../../img/img1/top/common/icon/icon_open_gray.png) left 50% no-repeat transparent;
	margin: -15px 0 0;
	padding: 4px 20px;
	-webkit-background-size: 40px 40px;
		 -moz-background-size: 40px 40px;
			 -o-background-size: 40px 40px;
					background-size: 40px 40px;
			-ms-background-size: 40px 40px;
}
.trigger.active .open_close_gray {
	position: absolute;
	top: 50%;
	right: 20px;
	background: url(../../../img/img1/top/common/icon/icon_close_gray.png) left 50% no-repeat transparent;
	margin: -15px 0 0;
	padding: 4px 20px;
	-webkit-background-size: 40px 40px;
		 -moz-background-size: 40px 40px;
			 -o-background-size: 40px 40px;
					background-size: 40px 40px;
			-ms-background-size: 40px 40px;
}
.open_close_blue {
	position: absolute;
	top: 50%;
	right: 6px;
	text-indent: -9999px;
	display: block;
	background: url(../../../img/img1/top/common/icon/icon_open_blue.png) left 50% no-repeat transparent;
	margin: -12px 0 0;
	padding: 0 15px;
	-webkit-background-size: contain;
		 -moz-background-size: contain;
			 -o-background-size: contain;
					background-size: contain;
			-ms-background-size: contain;
}
.trigger.active .open_close_blue {
	position: absolute;
	top: 50%;
	right: 12px;
	background: url(../../../img/img1/top/common/icon/icon_close_blue.png) left 50% no-repeat transparent;
	margin: -12px 0 0;
	padding: 0 15px;
	-webkit-background-size: 30px 30px;
		 -moz-background-size: 30px 30px;
			 -o-background-size: 30px 30px;
					background-size: 30px 30px;
			-ms-background-size: 30px 30px;
}

/*======================================

	footer

=======================================*/

/* footer
---------------------------------------*/
footer { margin: 0 auto;}
.footer_top,
.footer_middle,
.footer_bottom { padding: 40px 0;}
#container .footer_link,
#container .footer_support,
#container .footer_mark {
	margin: 0 auto;
	width: 1000px;
}

/* footer_top
---------------------------------------*/
.footer_link ul {
	margin: 0 auto 20px;
	text-align: center;
	font-size: 0;
}
.footer_link ul:last-child { margin-bottom: 0;}
.footer_link ul li {
	display: inline;
	padding-left: 20px;
	padding-right: 20px;
	border-right: 1px solid #ccc;
	font-size: 14px;
}
.footer_link ul li:first-child { padding-left: 0;}
.footer_link ul li:last-child { border-right: none;}

.footer_link ul li a { color: #555;}
.footer_link ul li a:hover { text-decoration: underline;}
.footer_link ul li a span {}

/* footer_middle
---------------------------------------*/
.footer_middle {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.footer_support .support_center {
	margin: 0 auto;
	width: 700px;
	background-color: #fff;
	border: 1px solid #36b9ff;
}
.footer_support ul {
	padding: 20px;
	overflow: hidden;
}
.footer_support ul li {
	float: left;
	margin: 0 14px;
	width: 300px;
	text-align: center;
}
.footer_support ul li dl {}
.footer_support ul li dl dt { font-size: 14px;}
.footer_support ul li dl dd { font-size: 28px;}

.footer_support ul li dl dd .icon_phone { background: url(../../../img/img1/top/common/icon/icon_phone.png) left 40% no-repeat transparent; }
.footer_support ul li dl dd .icon_mail { background: url(../../../img/img1/top/common/icon/icon_mail.png) left 40% no-repeat transparent; }

.footer_support ul li dl dd .icon_phone,
.footer_support ul li dl dd .icon_mail {
	padding-left: 35px;
	-webkit-background-size: 30px 30px;
	   -moz-background-size: 30px 30px;
	     -o-background-size: 30px 30px;
	        background-size: 30px 30px;
	    -ms-background-size: 30px 30px;
}

/* footer_bottom
---------------------------------------*/
.footer_mark { overflow: hidden; }
.footer_mark .trade_mark { float: left;}
.footer_mark .trade_mark li {
	margin-bottom: 2px;
	font-size: 14px;
}
.footer_mark .trade_mark li:last-child { margin-bottom: none;}
.footer_mark .privacy_mark {
	float: right;
	overflow: hidden;
}
.footer_mark .privacy_mark li { float: left;}


/* magnific-popup */
.mfp-iframe-scaler iframe {
    background: #fff!important;
}
/* loading */
#loading{
position: absolute;
left: calc(50% - 40px);
top: 30%;
}

#loader-bg {
position: fixed;
width: 100%;
height: 100%;
top: 0px;
left: 0px;
background: #FFF;
z-index: 1;
}
