@charset "UTF-8";

/* ==========================================================
	all_wrap
========================================================== */
#all_wrap {
	min-height: 100vh;
	position: relative;
	padding-bottom: 120px;
	box-sizing: border-box;
}

/* ==========================================================
	login
========================================================== */
#login {
max-width: 680px;
	margin: 0 auto;
	padding: 0 20px;
}
#login .logo_wrap {
	margin: 50px 0 0;
}
#login .logo_wrap .logo {
	text-align: center;
	margin: 0 0 30px;
}
#login .logo_wrap .logo span {
	display: block;
	font-size: 20px;
	color: #666;
	padding: 15px 0 0 0;
}
#login li {
	margin: 0 0 20px;
}
#login .check {
	margin: 0 0 15px;
}
#login .btn {
	width: 100%;
	max-width: 300px;
	margin: 20px auto 40px;
	padding: 15px;
	font-size: 18px;
}
#login .link_wrap {
	text-align: center;
}
/* ==========================================================
	header
========================================================== */
#header {
	height: 50px;
	border-bottom: solid 1px #ccc;
	position: relative;
}
#header .logo {
	position: absolute;
	top: 10px;
	left: 5px;
}
#header #header_nav {
	position: absolute;
	top: 10px;
	right: 15px;
}
#header #header_nav li {
	display: inline-block;
	padding: 0 0 0 10px;
}
#header #header_nav a {
	display: inline-block;
	vertical-align: middle;
	font-size: 12px;
	color: #fff;
	text-decoration: none;
}

/* ==========================================================
	main_content_wrap
========================================================== */
main {
position: relative;
}
.main_content_wrap {
	padding: 0px 15px;
}

/* ==========================================================
	main_inner
========================================================== */
#main_inner {
	padding: 10px;
}

/* -------------------------------------------------------------
　search_area
--------------------------------------------------------------*/
.search_area {
	margin: 10px 0 20px;
}
.search_area .table_wrap {
	margin: 0 0 10px;
}
.search_area .block01 input {
	display: inline-block;
	width: 45%;
}
.search_area .btn_wrap {
/*  width: 80%; */
  margin: 0 auto;
	max-width: 300px;
	min-width: 100px;
	font-size: 16px;
	padding: 8px;
}


/* -------------------------------------------------------------
.page_func_header
--------------------------------------------------------------*/

.page_func_header{
  position: fixed;
  top: -200px;
  left: 0;
  width: 100%;
  z-index: 20000;
  background-color: #ffffff;
}

.page_func_active .page_func_header{
  top: 0px;
}

.page_func_header_in{
  /*position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;*/
  padding: 0px 10px 0 10px;
}

.page_func_header_block_wrap{
  padding: 20px 0 0 0;
}

.page_func_header_block{
  margin: 0 0 20px 0;
}

.page_func_header_row{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}

.page_func_header_row .pager_wrap{
  margin: 0;
}

/* -------------------------------------------------------------
　result_stats_wrap
--------------------------------------------------------------*/
.result_stats_wrap  {
}
.result_stats_wrap dl {
	display:inline-block;
	margin: 0 0 0 20px;
}
.result_stats_wrap dl dt {
	display:inline-block;
	margin: 0 5px 0 0;
}
.result_stats_wrap dl dd {
	display:inline-block;
	font-size: 18px;
	font-weight: bold;
}
.result_stats_wrap dl dd p {
	display:inline-block;
	font-size: 14px;
}

.results_area table .type01 {
	font-size: 12px;
}


/* ==========================================================
	settings
========================================================== */
.modal .settings_wrap {
	padding: 20px;
}
.modal .settings_wrap div {
	text-align: center;
	padding: 10px 0;
	border-bottom: solid 1px #ccc;
}
.modal .settings_wrap .day dl {
	display: inline-block;
	margin: 0 10px;
}
.modal .settings_wrap .day dl dt {
	font-size: 13px;
	margin: 0 0 5px;
	background: #ccc;
}

/* ページ共通設定 */

*,
*:after,
*:before{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;	
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

*:after,
*:before{
  background-position: left top;
  background-size:100% auto;
  background-repeat: no-repeat;
}

::-webkit-input-placeholder {
    color: #989898;
    opacity: 1;
}

/* Firefox 19 以降 */
::-moz-placeholder {
    color: #989898;
    opacity: 1;
}
/* IE 10 以降 */
:-ms-input-placeholder {
    color: #989898;
}

:focus::-webkit-input-placeholder {
  opacity: 1;
  color: transparent;
}
:focus:-moz-placeholder {
  opacity: 1;
  color: transparent;
}

:focus::-moz-placeholder {
  opacity: 1;
  color: transparent;
}

:focus:-ms-placeholder {
  opacity: 1;
  color: transparent;
}

a{
  color: inherit;
  text-decoration: none;
}

.normal a:hover{
  text-decoration: underline;
}

a.underline{
  text-decoration: underline;
}

.normal a.underline:hover{
  text-decoration: none;
}

a[href="javascript: void(0);"]{
  text-decoration: none !important;
  cursor: default !important;
}

a.tel{ cursor: default; text-decoration: none !important; }


img{
  vertical-align:  bottom;
  max-width: 100%;
  height: auto;
}

input[type="text"],textarea,input[type="number"],input[type="tel"]{
  border: 1px solid #aeaeae;
  padding: 12px 15px;
  line-height: 1;
  width: 100%;
}

input[type="text"],input[type="number"],input[type="tel"]{
  height: 42px;
}

textarea{
  height: 270px;
  line-height: 1.4;
}


@media screen and (max-width: 700px) {
  input,textarea{
    font-size: 16px;
  }
}

/*  
-------------------------------------------- html、body --------------------------------------------
*/

body{
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  line-height: 1.43;
  color: #111111;
  min-width: 320px;
}

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, body { font-family: "メイリオ", Meiryo, sans-serif; } /* IE11 */
}

.sys_body_wrap{
  padding: 100px 50px;
}

.sys_body{
  min-width: 900px;
}

.sys_table{
  width: 100%;
  border-left: 1px solid #000000;
  border-top: 1px solid #000000;
}

.sys_table th,
.sys_table td{
  letter-spacing: -0.4em;
  padding: 10px 15px;
  border-right: 1px solid #000000;
  border-bottom: 1px solid #000000;
  text-align: center;
  vertical-align:  middle;
}

.sys_table th > *,
.sys_table td > *{
  letter-spacing: normal;
}

.sys_table thead th{
  white-space: nowrap;
  background-color: #999999;
}

.sys_table thead th.product_name{
  min-width: 320px;
}

.sys_table tbody th{
  white-space: nowrap;
  background-color: #C6C6C6;
}

.sys_info_tr th{
  text-align: left;
  width: 120px;
}

.sys_info_tr td{
  text-align: left;
}

.sys_table_text{
  position: relative;
  display: inline-block;
  text-align: left;
  max-width: 100%;
}

.sys_table_text .btn_text{ 
  white-space: nowrap;
}


.sys_table .sys_thumb{
  max-width: 100px;
}

/* ------------------ .copy_text ------------------ */

.copy_text_wrap{
  position: absolute;
  z-index: 10;
  -ms-filter: "alpha(opacity=0)" ;
	-khtml-opacity: 0;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
}

.copy_text_wrap textarea{
  height: auto;
}

/* btn */

.btn_wrap{
  display: flex;
  display: -webkit-flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  background-color: #ffffff;
  margin: 0 0 10px 0;
}

.btn_wrap:last-child{
  margin-bottom: 0;
}

.btn_wrap .btn{
  -webkit-flex-grow: 1;
  flex-grow: 1;
  position: relative;
  z-index: 2;
  display: flex;
  display: -webkit-flex;
  align-content: center;
  -webkit-align-content: center;
  align-items: center;
  -webkit-align-items: center;
  flex-wrap: nowrap;
  -webkit-flex-wrap: nowrap;
  justify-content: center;
  -webkit-justify-content: center;
  text-decoration: none !important;
  cursor: pointer;
}

.btn_wrap .btn_text{
  position: relative;
  line-height: 1.2;
  display: inline-block;
  vertical-align: middle;
}

.btn_wrap .btn_img{
  position: relative;
  margin: 0 0.4em;
  line-height: 0;
  vertical-align: middle;
}

.btn_wrap .btn_img:first-child{
  margin-left: 0;
}

.btn_wrap .btn_img:last-child{
  margin-right: 0;
}

.btn_wrap .btn_img .default_img{
  position: relative;
  z-index: 1;
}

.btn_wrap .btn_img .hover_img{
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.4s ease 0s;
	-webkit-transition: opacity 0.4s ease 0s;
	-moz-transition: opacity 0.4s ease 0s;
	-o-transition: opacity 0.4s ease 0s;
	-ms-transition: opacity 0.4s ease 0s;
}

/* .btn_wrap.type_normal */

.btn_wrap.type_normal,
.btn_wrap.type_normal .btn{
  -moz-border-radius: 9999px;
  -webkit-border-radius: 9999px;
  border-radius: 9999px;
  min-width: 230px;
}

.btn_wrap.type_normal{
  font-weight: 700;
  color: #000000;
  background-color: #ffffff;
}

.btn_wrap.type_normal .btn{
  background-color: #fece0f;
  padding: 8px 16px;
  -moz-transition: opacity 0.4s ease 0s;
  -webkit-transition: opacity 0.4s ease 0s;
  -o-transition: opacity 0.4s ease 0s;
  -ms-transition: opacity 0.4s ease 0s;
  transition: opacity 0.4s ease 0s;
}

.btn_wrap.type_normal .btn:hover{
  -ms-filter: "alpha(opacity=70)" ;
	-khtml-opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

.btn_wrap.color_white01 .btn{
  border: 1px solid #666 !important;
  color: #666 !important;
}

/* .sys_control  */

.sys_control{
  margin: 0 0 50px 0;
  border: 1px solid #999999;
}

.sys_control select{
  width: 100%;
}

.sys_control_list{
  display: -webkit-flex;
  display: flex;
  margin: 0 -40px 0 0;
}

.sys_control_list li{
  width: 33.333%;
  padding: 0 40px 0 0;
}

.sys_control .sys_control_title{
  font-size: 16px;
  font-weight: bold;
  padding: 10px 20px;
  background-color: #999999;
}

.sys_control .sys_control_title02{
  font-size: 14px;
  font-weight: bold;
  margin: 0 0 10px 0;
}

.sys_control .freeword_input input{
  width: 100%;
}

.sys_control .sys_control_in{
  padding: 20px;
  border-bottom: 1px solid #999999;
}

.sys_control .sys_control_in:last-child{
  border-bottom: none;
}





/* ==========================================================
	footer
========================================================== */
footer {
	width: 100%;
	position: absolute;
	bottom: 0;
	text-align: center;
	padding: 20px 0;
	background: #eee;
}



/*  
-------------------------------------------- #tag_box --------------------------------------------
*/

#tag_box{
  padding: 20px 0;
}

#tag_box_in{
  border: 5px solid #eeeeee;
  padding: 20px;
}

#tag_box_title{
  margin-bottom: 10px;
}

#tag_box li{
  display: inline-block;
  vertical-align:  middle;
  padding: 0 1em 1em 0;
}

#tag_box li a{
  display: block;
  line-height: 1;
  padding: 0.5em 1em;
  color: #ffffff;
  background-color: #000000;
  border-radius: 9999px;
  white-space: nowrap;
  cursor: pointer !important;
}

#tag_box #tag_all_clear a{
  background-color: #eeeeee;
  color: #000000;
}

#tag_box .tag_block a:before{
  content: "x";
  margin: 0 0.5em 0 0;
}

#tag_list{
  margin: 0 -1em -1em 0;
}

/*
-------------------------------------------- #popup_zone --------------------------------------------
*/

#popup_zone{
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 30000;
  white-space: nowrap;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  text-align: center;
}

#popup_zone:after{
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

#popup_bg{
  position: fixed;
  top :0;
  left: 0;
  width: 100%;
  height: 200%;
  background-color: rgba(0,0,0,0.7);
  z-index: 1;
}


#popup_wrap{
  position: relative;
  background: #fff;
  z-index: 2;
  text-align: left;
  display: inline-block;
  vertical-align: middle;
  width: 100%;
  white-space: normal;
  max-width: 910px;
  padding: 0 30px;
  border-radius: 3px;
}

#menu_list_wrap {
  max-width: 720px;
  margin: 0 auto;
}

.menu_list {
  display: flex;
  background: #dedede;
  list-style: inside;
  margin-top: 30px;
  font-weight: bold;
  gap: 14px;
  align-items: center;
  padding: 16px 20px;
  border-radius: 3px;
}

.list_icon_wrap {
  width: 40px;
  height: 40px;
  font-size: 13px;
  background: #fff;
  border-radius: 50%;
}

.list_icon_wrap img {
  margin: 6.5px 7px 7.5px 7.5px;
}

.list_icon_wrap .list_icon01{
  width: 28px;
  height: 28px;
  margin-left: 6px;
  margin-top: 6px;
}

.list_icon_wrap .list_icon02{
  width: 26px;
  height: 26px;
}

.list_icon_wrap .list_icon03 {
  width: 26px;
  height: 24px;
  margin: 10px 7px;
}

.menu_list a, .menu_list p {
  color: #404040;
  font-size: 15px;
  line-height: 18px;
  font-weight: bold; 
}

/* .menu_list P {
  font-size: 13px;

  line-height: 15px;
} */

/* sp */
@media all and (max-width: 700px) {
  #popup_wrap{
    padding: 20px;
  }
}

#popup_content{
  /* background-color: #ffffff; */
  padding: 25px 20px 55px;
}

#popup_content a:hover{
  text-decoration: underline;
}

#popup_close{
  position: absolute;
  top: 22px;
  right: 22px;
  z-index: 20;
  cursor: pointer;
  width: 25px;
  height: 25px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}

#popup_close_in{
  height: 25px;
  width: 25px;
  position: relative;
}

#popup_close .bar {
    background: #9e9e9e;
    height: 1px;
    left: 0px;
    position: absolute;
    width: 33px;
}
#popup_close .bar.bar01 {
    top: 0;
    transform-origin: 0px 50% 0;
}
#popup_close .bar.bar02 {
    top: 23px;
    transform-origin: 0px 50% 0;
}

#popup_close .bar.bar01 {
    transform: rotate(45deg);
}
#popup_close .bar.bar02 {
    transform: rotate(-45deg);
}

.popup_html{
  display: none;
}

#popup_zone .popup_html{
  display: block;
}

/* sp */
@media all and (max-width: 700px) {
  
  #popup_close{
    top: 20px;
    right: 20px;
  }
  
}

/* sp */
@media all and (max-width: 700px) {
  
}

.popup_switch{
  color: #1da9ea;
  text-decoration: underline;
}

.popup_switch:hover{
  text-decoration: none;
}



/*
-------------------------------------------- .more_area --------------------------------------------
*/

/*
.more_area{
  position: relative;
  min-height: 25px;
}*/

.more_area{
  visibility: hidden;
  position: relative;
  padding: 0 0 56px 0;
}

.more_area_btn_wrap{
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  text-align: center;
  background: #ffffff;
  padding: 20px 0 0 0;
  height: 56px;
}

.more_area_btn{
  cursor: pointer;
}

.more_area_btn_wrap_in{
  max-width: 200px;
  margin: 0 auto;
}

.more_area_content{
  position: relative;
  z-index: 1;
  overflow:  hidden;
  -moz-transition: height 0.4s ease 0s;
  -webkit-transition: height 0.4s ease 0s;
  -o-transition: height 0.4s ease 0s;
  -ms-transition: height 0.4s ease 0s;
  transition: height 0.4s ease 0s;
}

/*
.more_area_btn_wrap.active .more_area_btn{
  transform: rotate(180deg);
}*/

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

  .more_area_btn_wrap{
    width: 100%;
    left: 0 !important;
  }
}





