﻿@charset "UTF-8";

/* --------------------------------------------------------------------
  レイアウト
-------------------------------------------------------------------- */

.wrapper_ {
  display: block;
  min-height: 100%;
  background-color: #efefef;
}

.site-header_ {
  display: flex;
  align-items: center;
  height: 72px;
  padding: 0 50px;
  overflow: hidden;
}

.main_ {
  display: block;
  margin: 0 auto;
  width: 1440px;
  min-height: 100%;
}

.nav_ {
  display: block;
  float: left;
  width: 296px;
  overflow: hidden;
}

.content_ {
  display: block;
  margin: 32px 0 0 320px;
  padding: 32px;
  width: 1120px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}

.content_:has(.assist_login_),
.content_:has(.assist_onetime_password_),
.content_:has(div.changepass_),
.content_:has(div.notice_) {
  width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.content_:has(.assist_top_) {
  background: none;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
}

.site-footer_ {
  display: block;
  width: 1440px;
  margin: 25px auto 0 auto;
  padding-bottom: 20px;
  text-align: right;
}

div.assist_login_ {
  padding: 48px 32px;
}

div.assist_onetime_password_ {
  padding: 48px 32px;
}

/* --------------------------------------------------------------------
  ヘッダー
--------------------------------------------------------------------- */

.site-header_ {
  background: url(../../../img/usr/assist/header/bg_header.png) center top no-repeat var(--color01);
}

.site-header_ .site-header_inner_ {
  width: 1440px;
  margin: 0 auto;
}

.site-header_ .logo_ {
  float: left;
  padding-top: 12px;
}

.site-header_ .logo_ img {
  width: 320px;
  max-width: 320px;
}

.header_login_information_ {
  padding-top: 4px;
  float: right;
}

.list_header_utility_ {
  float: left;
  margin: 10px;
  list-style: none;
}

.list_user_ {
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  padding: 0 8px 0 28px;
  background: url(../../../img/sys/assist/icon_user_pc.png) left center / 22px 22px no-repeat;
}

.list_user_ #hdr_user_name {
  font-size: 17px;
  margin-right: 6px;
}

.header_login_information_ .assist_button_mini_ {
  border: none;
  background: #fff;
  color: var(--txtColor01);
}

.header_login_information_ .assist_button_mini_:hover {
  background-color: #eff1f5;
  opacity: 1;
}

/* --------------------------------------------------------------------
  左メニュー
--------------------------------------------------------------------- */
div.leftmenu_ {
  width: 296px;
  margin: 32px 0 12px;
}

div.leftmenu_ + .leftmenu_ {
  margin-top: 0;
}

div.leftmenu_ h2 {
  margin: 0;
  font-size: 16px;
  background-color: #55baf4;
  color: #fff;
  padding: 4px 8px;
  display: none;
}

div.leftmenu_ ul > * + * {
  margin-top: 1px;
}

div.leftmenu_ li {
  background: var(--color01);
}

div.leftmenu_ li:hover {
  background: #62c9b6;
}

div.leftmenu_ li a {
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  display: flex;
  justify-content: space-between;
  padding: 22px 32px 22px 64px;
  align-items: center;
}

div.leftmenu_ li a:hover {
  text-decoration: none;
}

div.leftmenu_ li:first-child {
  border-radius: 4px 4px 0 0;
}

div.leftmenu_ li:last-child {
  border-radius: 0 0 4px 4px;
}

div.leftmenu_ li.leftmenu_nav_home_ a {
  background: url(../../../img/sys/assist/icon_nav_home_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ li.leftmenu_nav_proxy_ a {
  background: url(../../../img/sys/assist/icon_nav_proxy_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ li.leftmenu_nav_order_ a {
  background: url(../../../img/sys/assist/icon_nav_order_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ li.leftmenu_nav_delivery_ship_ a {
  background: url(../../../img/sys/assist/icon_nav_delivery_ship_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ li.leftmenu_nav_estimate_ a {
  background: url(../../../img/sys/assist/icon_nav_estimate_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ li.leftmenu_nav_contact_ a {
  background: url(../../../img/sys/assist/icon_nav_contact_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ li.leftmenu_nav_contents_ a {
  background: url(../../../img/sys/assist/icon_nav_contents_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ li.leftmenu_nav_password_ a {
  background: url(../../../img/sys/assist/icon_nav_password_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ li.leftmenu_nav_mail_ a {
  background: url(../../../img/sys/assist/icon_nav_mail_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ li.leftmenu_nav_setting_ a {
  background: url(../../../img/sys/assist/icon_nav_setting_pc.png) left 32px center / 26px 26px no-repeat;
}

div.leftmenu_ .warning_ {
  display: block;
  font-size: 12px;
  line-height: 1.4;
  text-align: center;
  padding: 2px;
  color: #ff3c87;
  position: relative;
}

div.leftmenu_ .loginlog_ + .warning_ {
  padding: 12px 0 0;
}

div.leftmenu_ .loginlog_ + .warning_::before {
  content: "";
  width: 148px;
  height: 2px;
  border-top: 2px dotted #dedede;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

div.leftmenu_ .loginlog_wrap_ {
  padding: 16px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}

div.leftmenu_ dl.loginlog_ {
  font-size: 14px;
  line-height: 1.4;
  text-align: center;
}

div.leftmenu_ dl.loginlog_ dt {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

div.leftmenu_ dl.loginlog_ dt::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../../../img/sys/assist/icon_logout.png) center center / contain no-repeat;
  display: block;
}

div.leftmenu_ dl.loginlog_ dd {
  font-family: var(--font01);
  font-size: 15px;
  padding: 8px 0 0;
}

div.leftmenu_ .loginlog_wrap_:has(.warning_) dl.loginlog_ dd {
  padding-bottom: 12px;
}

div.leftmenu_ dl.loginlog_ dt.loginlog_logout_,
div.leftmenu_ dl.loginlog_ dd.loginlog_logout_ {
  display: none;
}

.leftmenu_ .recent_count_ {
  margin-left: 8px;
}

/* --------------------------------------------------------------------
  フッター
--------------------------------------------------------------------- */
.page_top_ {
  width: 24px;
  margin: 0 0 10px auto;
}

.page_top_ a {
  width: 24px;
  height: 24px;
  border-radius: 2px;
  background: #525252;
  position: relative;
  display: block;
}

.page_top_ a::before {
  content: "";
  width: 12px;
  height: 1px;
  position: absolute;
  top: 7px;
  left: 0;
  right: 0;
  background: #fff;
  margin: auto;
}

.page_top_ a::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  position: absolute;
  top: 12px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
}

#copyright {
  font-size: 12px;
  color: #525252;
}
