﻿html, body {
  height: 100%;
}

html {
  font-family: -apple-system,
  BlinkMacSystemFont,
  "Helvetica Neue",
  "Segoe UI",
  "Noto Sans Japanese",
  "ヒラギノ角ゴ Pro W3 ProN W3",
  Meiryo,
  sans-serif;
}

a {
  text-decoration: none;
}

* {
  margin: 0;
  padding: 0;
}

.container {
  display: table;
  table-layout: fixed;
  height: 100%;
  width: 100%;
  min-width: 1024px;
}

.header {
  display: table-row;
  height: 30px;
  text-align: center;
  vertical-align: middle;
}

.header > .cell {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}

#header_inner {
  width: 1024px;
  margin: 0 auto;
  padding: 20px 0 20px 0;
  position: relative;
}

.brand_logo01 {
  margin: 20px;
}

.cell > .lang_BTM {
  float: left;
}

.lang_BTM {
  display: table;
  position: absolute;
  top: 0;
  right: 0;
  border-collapse: separate;
  border-spacing: 5px 0;
}

.lang_BTM > div > p {
  display: table-cell;
}

.lang_BTM > div > p a {
  font-size: 11px;
  padding: 10px 25px 10px 25px;
  color: #ffffff;
  display: block;
  background-color: #1161A8;
  -bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

.lang_BTM > div > p:not(.selected) a {
  transition: opacity 100ms;
}

.lang_BTM > div > p:not(.selected) a:hover {
  opacity: 0.5;
}

.lang_BTM > div > p.selected a {
  background-color: #bdbdbd;
  cursor: default;
}

.content {
  display: table-row;
  height: 100%;
}

.content > .cell {
  display: table-cell;
  text-align: center;
}

#mainImg {
  background-color: #1161A8;
  padding-top: 10px;
  height: 330px;
}


.mainContents {
  margin: 0 auto;
  width: 1024px;
  position: relative;
  /* height: 100%; */
  padding-top: 10px;
}


/*+++++ top +++++*/
.Dl_BTM {
  display: table-row;
  border-collapse: separate;
  border-spacing: 3px 0;
  float: right;
  /* background-color: #ccc; */
  min-width: 1024px;
}

.Dl_BTM > ul {
  /* margin-top: -2px; */
  float: right;
}

.Dl_BTM li {
  display: table-cell;
}

.Dl_BTM li a {
  padding: 10px;
  color: #ffffff;
  font-size: 11px;
  display: block;
  background-color: #4599c4;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}

.Dl_BTM li a {
  transition: opacity 100ms;
}

.Dl_BTM li a:hover {
  opacity: 0.5;
}

/*+++++ end top +++++*/


/*+++++ first paragraph *****/
.first_paragraph {
  display: table;
  border-collapse: separate;
  border-spacing: 15px 0;
  margin: 0 auto;
  padding: 50px 0 60px 0;
}

.first_Contents_01 {
  display: table-cell;
  text-align: center;
}

.first_Contents_01 p span {
  display: block;
  text-align: left;
}

.first_Contents_01 ul {
  padding: 1em 1em .5em 1.5em;
  text-align: left;
}

.first_Contents_01 span.etc {
  display: block;
  text-align: right;
}

.first_Contents_01 a {
  color: inherit;
}

.first_Contents_01 a ul.first_Contents_02_text,
.first_Contents_01 ul.first_Contents_02_text a:hover {
  transition: opacity 100ms;
}

.first_Contents_01 a:hover ul.first_Contents_02_text,
.first_Contents_01 ul.first_Contents_02_text a:hover {
  opacity: 0.5;
}

.first_Contents_01 ul.first_Contents_02_text li.aligned-right {
  list-style: none;
  text-align: right;
}

.first_Contents_01 img {
  padding: 50px 50px 0px 50px;
}

.first_Contents_01 .first_Contents_01_text {
  padding: 15px;
  color: #273133;
  line-height: 1.6rem;
  border-bottom: dotted 2px #273133;
}

.first_Contents_01 .first_Contents_02_text {
  padding-top: 20px;
  color: #273133;
  line-height: 1.6rem;
}

.first_Contents_01 .first_Contents_03_text {
  padding: 0em 0em 0.5em 1em;
}
/******  end first paragraph ***** /


/*****  second paragraph ******/
.second_paragraph {
  display: table;
  border-collapse: separate;
  border-spacing: 10px 0;
  margin: 0 auto;
  margin-bottom: 20px;
}

.second_Contents_01 {
  display: table-cell;
  text-align: center;
  padding-right: 20px;
}

.second_Contents_01 a {
  display: block;
}

.second_Contents_01 a {
  transition: opacity 100ms;
}

.second_Contents_01 a:hover {
  opacity: 0.5;
}

.second_Contents_01:last-child {
  padding-right: 0;
}

.second_Contents_01 img {
  float: left;
}

.second_Contents_01 p {
  float: left;
  color: #273133;
  font-size: 11px;
  padding: 10px;
}

/*****  end second paragraph */


/*++++++ chatBot ++++++*/
#chatBot_container {
  width: 1024px;
  margin: 0 auto;
  /* background-color: #ccc; */
  overflow: hidden;
  /* display: table-row; */
}

#chatBot {
  float: right;
  background-color: #4599c4;
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
}

#chatBot > button {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

/*++++++ end chatBot ++++++*/

/*++++++ footer ++++++*/
.footer {
  display: table-row;
  height: 100px;
}

.footer > .cell {
  display: table-cell;
  background: #1161A8;
  text-align: center;
  vertical-align: middle;
}

#footer_contents {
  width: 1024px;
  margin: 0 auto;
  position: relative;
}

#footer_inner {
}

#company_logo {
  position: absolute;
  bottom: 0px;
}

#company_logo a {
  display: block;
}

#company_logo a {
  transition: opacity 100ms;
}

#company_logo a:hover {
  opacity: 0.5;
}

#footer_nav {
  display: table;
  font-size: 0.6rem;
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 15px 0;
  margin-bottom: 15px;
}

#footer_nav ul {
}

#footer_nav li {
  display: table-cell;
  border-right: solid 1px #ffffff;
  padding-right: 10px;
  font-size: 10px;
}

#footer_nav li:last-child {
  padding-right: 0;
  border-right: 0;
}

#footer_nav li a {
  display: block;
  color: #fff;
}

#footer_nav li a {
  transition: opacity 100ms;
}

#footer_nav li a:hover {
  opacity: 0.5;
}

#copyright {
  text-align: center;
  color: #ffffff;
  margin: 0;
  font-size: 0.5rem;

  /* 英語版のみ調整 */
  position: relative;
  top: -21px;
}
