@charset('UTF-8');

body {
  width: 960px;
  margin: 0 auto;
  color: #333;
  font-family: meiryo;
  font-size: 9pt;
  line-height: 1.4em;
}

a {
  text-decoration: none;
  color: #95C51B;
  font-weight: bold;
}
a:hover {
  text-decoration: none;
  color: #CEED7C;
  font-weight: bold;
}

.section {
  margin-bottom: 30px;
}

.section h2 {
  width: 720px;
  height: 31px;
  font-size: 13pt;
  font-weight: bold;
  color: #FFF;
  padding: 8px 0 0 20px;
  background-image: url('../../images/front/ttl-h2-bg.gif');
  background-repeat: no-repeat;
}

.section h3 {
  font-size: 14px;
  color: #333;
  margin: 15px 0 5px 0;
  padding: 8px 0 0 22px;
  background-image: url('../../images/front/ttl-h3.jpg');
  width: 698px;
  height: 23px;
}

main.container {
  display: flex;
  justify-content: space-between;
}

#left-column {
  width: 720px;
  overflow: hidden;
}

#right-column {
  width: 220px;
  overflow: hidden;
}

.ml-5 {
  margin-left: 5px!important;
}

.strong {
  font-weight: bold;
  color: #ff0000;
}
.right {
  text-align: right!important;
}

.red {
  color: #ff0000!important;
}
/* header */
header#site-header {
  width: 100%;
  
}
header#site-header .wrap {
  width: 100%;
}
#header-description {
}
#header-description h1 {
  font-size: 6pt;
  line-height: 110%;
  margin: 5px 0 0 0;
}
#header-description p {
  font-size: 6pt;
  line-height: 110%;
  margin: 0 0 5px 0;
}
#header-sub-nav {
  background: url('../../images/front/header/header-bg.gif');
  width: 100%;
  height: 30px;
  display: flex;
  justify-content: end;
  font-size: 0.6rem;
}
#header-sub-nav > div {
  padding: 7px 0 0 10px;
}
#header-sub-nav a {
  color: #fff;
  text-decoration: none;
  line-height: 30px;
  padding: 0 10px;
}
#header-main {
  width: 100%;
  display: flex;
  align-items: center;
}
#header-main > .site-name {
  margin-right: auto;
}
#header-main > .achievements {
  margin-right: 20px;
}
#header-main > .achievements > .total-number {
  display: flex;
  align-items: center;
}
#header-main > .achievements > .total-number > p {
  text-align: right;
  color: #ff0000;
  font-size: 0.75rem;
}
#header-main > .achievements > .total-number > p > span {
  font-size: 13pt;
  font-weight: bold;
  line-height: 150%;
}
/* g-nav */
#g-nav {
  display: flex;
  background: url('../../images/front/nav/bg-nav.jpg');
  height: 40px;
  background-position: bottom;
  background-repeat: no-repeat;
  margin-bottom: 10px;
  text-align: center;
  align-items: center;
}
#g-nav > img {
  width: 66px;
  height: 39px;
}
#g-nav > nav {
  display: flex;
}
#g-nav > nav a {
}


/* login box */
#login-box > .content-wrapper {
  width: 198px;
  border-width: 0 1px 1px 1px;
  border-style: solid;
  border-color: #CCCCCC;
  background-color: #EFEFEF;
  padding: 10px;
  margin-bottom: 10px;
}
#login-box h2 {
  height: 30px;
}
#login-box > .content-wrapper table {
  width: 100%;
  border-spacing: 2px;
  border-width: 0px;
}
#login-box > .content-wrapper table th, #login-box > .content-wrapper table td {
  padding: 2px;
}
#login-box > .content-wrapper table th {
  text-align: right;
  font-weight: normal;
  font-size: 0.75rem;
}
#login-box > .content-wrapper table td input {
  width: 100px;
  ime-mode: disabled;
}
#login-box > .content-wrapper table td.btn-box {
  text-align: center;
}
#login-box > .content-wrapper table td.btn-box input[type=button] {
  width: 120px;
}

/* side nav */
#side-nav > ul > li {
  margin-bottom: 0;
}

/* footer */
#site-footer {
  width: 100%;
  padding: 5px 0 10px 0;
  border-top: 1px solid #999;
  text-align: left;
  color: #333;
}



/* introduction */
#introduction-wrapper > .inner {
  display: flex;
  justify-content: space-between;
}

/* topics */
#topics-table {
  width: 100%;
  
}
#topics-table td {
  padding: 3px 0;
  border-bottom: 1px dotted #ccc;
}
#topics-table td.date {
  background: url(../../images/front/arrow-02.gif) no-repeat left center;
  width: 120px;
  text-indent: 1.5em;
  font-weight: bold;
  color: #666;
}
#topics-wrapper .more {
  margin: 5px 5px 0 0;
  font-size: 8pt;
  text-align: right;
}
#topics-wrapper .more img {
  margin-right: 2px;
}

/* about */
#about-wrapper .content-wrapper {
  display: flex;
  justify-content: space-between;
  gap: 5px;
}
#about-wrapper .content-wrapper > .content {
  display: flex;
  justify-content: space-between;
  gap: 5px;
  width: 50%;
  padding: 10px 0;
}
#about-wrapper .content-wrapper > .content > .main {
  display: flex;
  flex-direction: column;
}
#about-wrapper .content-wrapper > .content > .main > .title {
  background: url(../../images/front/arrow.gif) no-repeat left center;
  text-indent: 1em;
  font-size: 11pt;
  margin: 5px 0 5px 0;
  color: #333;
}
#about-wrapper .content-wrapper > .content > .main > .description {
  font-size: 8pt;
  color: #666;
  line-height: 150%;
}
#about-wrapper .content-wrapper > .content > .main > .btns {
  margin-top: auto;
  text-align: right;
}

/* function */
#function-wrapper .content-wrapper {
  display: flex;
  justify-content: space-between;
}
#function-wrapper .IndexFunctionsList {
  margin: 0 0 0 2em;
  padding: 0;
  list-style-image: url(../../images/front/arrow.gif);
  font-size: 12pt;
  line-height: 1.6em;
}
#function-wrapper > .inner > .content-wrapper > .main > div:last-of-type {
  margin: 5px 10px 0 10px;
  padding: 10px;
  color: #CC0000;
  border: 1px solid #CC0000;
}
#function-wrapper > .inner > .content-wrapper > .thumb > p {
  font-size: 7pt;
  margin-top: 3px;
  text-align: right;
}

/* contact */
#contact-wrapper .content-wrapper {
  padding: 20px;
  border: 1px solid #CCC;
  background-color: #FFF;
  margin: 20px 50px 0 50px;
  line-height: 1.4em;
}
#contact-wrapper .content-wrapper > h4 {
  border-bottom: 1px dotted #CCC;
  background: url(../../images/front/arrow.gif) no-repeat left center;
  text-indent: 1em;
  font-size: 11pt;
  margin: 5px 0 5px 0;
  color: #333;
}
#contact-wrapper .content-wrapper > div {
  display: flex;
  justify-content: space-between;
}
#contact-wrapper .content-wrapper > div > .main {
  padding: 10px;
  font-size: 10pt;
  line-height: 1.6em;
  float: left;
}

/* about2 */
#about2-wrapper .description {
  font-size: 12pt;
  line-height: 1.6em;
  margin: 10px 0 30px 0;
  border: 1px dotted #999;
  padding: 20px;
}

/* faq */
#faq-wrapper .content-wrapper {
  line-height: 1.6em;
  margin: 0;
  width: 100%;
  color: #333;
}
#faq-wrapper .content-wrapper dt {
  background: url('../../images/front/faq-q.gif') no-repeat left top;
  padding-bottom: 5px;
  padding-left: 2.5em;
  font-weight: bold;
  color: #333;
}
#faq-wrapper .content-wrapper dd {
  background: url('../../images/front/faq-a.gif') no-repeat left top;
  border-bottom: 1px dotted #ccc;
  padding-left: 2.5em;
  margin-bottom: 10px;
}
#faq-wrapper .content-wrapper dd table {
  width: 680px;
  border: 1px solid #CCC;
  border-collapse: collapse;
  margin-bottom: 10px;
}
#faq-wrapper .content-wrapper dd table th {
  padding: 5px;
  background-color: #EFEFEF;
  text-align: center;
  border-right: 1px dotted #999;
}
#faq-wrapper .content-wrapper dd table td {
  padding: 5px;
  text-align: center;
  background-color: #FFF;
  border-right: 1px dotted #999;
}

/* photo gallery */
#photo-gallery-wrapper > .inner > .content-wrapper > p {
  font-size: 8pt;
  color: #CC0000;
}
#photo-gallery-wrapper .gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#photo-gallery-wrapper .gallery > .light-box {
  width: calc(100% / 3 - 24px);
}
#photo-gallery-wrapper .gallery > .light-box img {
  width: 100%;
}
#photo-gallery-wrapper .gallery > .light-box p {
  font-size: 7pt;
}

/* feature */
#feature-wrapper h3 {
  background: none;
  padding: inherit;
  margin: auto;
  height: auto;
}
#feature-wrapper > .inner > .content-wrapper > .content {
  padding-bottom: 20px;
  border-bottom: 1px dotted #CCC;
}
#feature-wrapper > .inner > .content-wrapper > .content:last-of-type {
  border: none;
}
#feature-wrapper > .inner > .content-wrapper > .content > div {
  display: flex;
  gap: 20px;
}

/* join form */
.form-table {
  width: 100%;
}
.form-table th, .form-table td {
  padding: 5px;
  border-bottom: 1px dotted #999;
  text-align: left;
}
.form-table th {
  font-weight: bold;
  color: #666;
  padding-right: 1.5em;
  position: relative;
}
.form-table tr.required th:after {
  position: absolute;
  content: "*";
  width: 1em;
  height: 100%;
  right: 0;
  color: #ff0000;
}
.form-table input[type=text], .form-table input[type=email], .form-table textarea, .form-table select {
  width: 100%;
  box-sizing: border-box;
  padding: 5px;
  border-radius: 5px;
  border-style: solid;
  border-color: #aaa;
  border-width: 1px;
}
.form-table .btns-row {
  background-color: #EFEFEF;
  text-align: center;
}
.form-table .btns-row input[type=submit] {
  padding: 5px 20px;
}


/* spec */
#spec-wrapper > .inner > .content-wrapper > .content-wrapper > .content {
  border-bottom:1px dotted #999;
  margin:5px 0 5px 0;
}
#spec-wrapper > .inner > .content-wrapper > .content-wrapper > .content > dt {
  background: url(../../images/arrow.gif) no-repeat left center;
  text-indent: 1em;
  font-size: 11pt;
  margin: 5px 0 5px 0;
  color: #333;
}
#spec-wrapper > .inner > .content-wrapper > .content-wrapper > .content > dd {
  font-size: 11pt;
  font-weight: bold;
  color: #309FD6;
}

/* agent */
#agent-wrappe {
}
.agent-table {
  width: 620px;
  border-collapse: collapse;
  border: 1px solid #CCC;
  margin: 10px 0 0 50px;
}
.agent-table th, .agent-table td {
  padding: 5px;
  border-bottom: 1px dotted #999;
}
.agent-table th {
  width: 120px;
  background-color: #EFEFEF;
}

/* privacy */
#privacy-wrapper ol {
  margin: 20px 0 0 20px;
}
#privacy-wrapper .sign {
  text-align: right;
  margin-top: 30px;
}

/* topics show */
#topics-show-wrapper .text-muted {
  margin-bottom: 20px;
  text-align: right;
}
#topics-show-wrapper .back-btn-wrapper {
  margin: 60px 0;
  text-align: center;
}

/* ht */
#ht-wrapper > .inner > p {
  font-size: 11pt;
  line-height: 1.4em;
  margin-bottom: 20px;
}
#ht-wrapper .h3-content-wrapper .row {
  display: flex;
  gap: 10px;
}
#ht-wrapper .h3-content-wrapper .row .main p {
  margin-bottom: 20px;
}

/* introduction */
#introduction2-wrapper .intro-flow {
  width: 500px;
  padding: 20px;
  margin: 10px auto 20px;
  border: 1px dotted #CCC;
  font-size: 11pt;
  line-height: 1.4em;
}
#introduction2-wrapper .intro-feature {
  margin: 0 0 0 2em;
  padding: 0;
  list-style-image: url(../../images/front/arrow-03.gif);
  font-size: 11pt;
  line-height: 1.4em;
  color: #5B7810;
  display: flex;
  flex-wrap: wrap;
}
#introduction2-wrapper .intro-feature > li {
  width: 50%;
}
#introduction-howto > .h3-content-wrapper > p {
  margin-top: 10px;
  font-size: 11pt;
  line-height: 1.4em;
}
#introduction-howto .row {
  display: flex;
  border-bottom: 1px dotted #999;
  padding: 5px;
  align-items: center;
}
#introduction-howto .row > .main > .ttl {
  font-weight: bold;
  font-size: 11pt;
}
#introduction-howto .row > .main > ul {
  margin: 0 0 0 2em;
  padding: 0;
  list-style-image: url(../../images/front/arrow.gif);
  font-size: 10pt;
  line-height: 1.4em;
}