@charset "utf-8";

nav[role='breadcrumb']
{
  margin-bottom: 1.5em;
}

main
{
  letter-spacing: 0.05em;
}

main h2
{
  width: 96em;
  margin: 0 auto 4em auto;
}

main h2 span
{
  font-size: 30px;
  line-height: 1;
}

#nav-page_01
{
  width: 96em;
  margin: 0 auto 4em auto;
}

#nav-page_01 ul
{
  width: inherit;
  border-bottom: 4px solid #EC6D65;
}

#nav-page_01 ul li
{
  box-sizing: border-box;
  display: inline-block;
  width: 33.3%;
  height: 6em;
  padding-top: 1em;
  border-radius: 7px 7px 0 0;
  text-align: center;
  vertical-align: top;
}

#nav-page_01 ul li:last-child
{
  display: inline-block;
  width: 33.4%;
}

#nav-page_01 ul li div
{
  border-left: 1px solid #CCC;
}

#nav-page_01 ul li:last-child div
{
  border-right: 1px solid #CCC;
}

#nav-page_01 ul li div a
{
  box-sizing: border-box;
  display: block;
  height: 4em;
  padding-top: .2em;
/*   border-left: 1px solid #CCC; */
  color: #000;
  vertical-align: middle;
}

#nav-page_01 ul li div a:after
{
  content: "";
  display: inline-block;
  height: 4em;
  vertical-align: middle;
}

#nav-page_01 ul li div a span
{
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
}

#index #nav-page_01 ul li:nth-of-type(1),
#history #nav-page_01 ul li:nth-of-type(2),
#basic #nav-page_01 ul li:nth-of-type(3)
{
  padding-top: 0;
  background-color: rgba(236, 109, 101, .9);
}

#index #nav-page_01 ul li:nth-of-type(1) div,
#history #nav-page_01 ul li:nth-of-type(2) div,
#basic #nav-page_01 ul li:nth-of-type(3) div
{
  border: 0;
}

#index #nav-page_01 ul li:nth-of-type(2) div,
#history #nav-page_01 ul li:nth-of-type(3) div
{
  border-left: 0;
}

#index #nav-page_01 ul li:nth-of-type(1) div a,
#history #nav-page_01 ul li:nth-of-type(2) div a,
#basic #nav-page_01 ul li:nth-of-type(3) div a
{
  height: 6em;
/*   border: 0; */
  color: #FFF;
}

#index #nav-page_01 ul li:nth-of-type(2) div a,
#history #nav-page_01 ul li:nth-of-type(3) div a
{
/*   border-left: 0; */
}

#index #nav-page_01 ul li:nth-of-type(1) div a:after,
#history #nav-page_01 ul li:nth-of-type(2) div a:after,
#basic #nav-page_01 ul li:nth-of-type(3) div a:after
{
  height: 7em;
}

#index #nav-page_01 ul li:nth-of-type(1) div a.btn-permeate,
#history #nav-page_01 ul li:nth-of-type(2) div a.btn-permeate,
#basic #nav-page_01 ul li:nth-of-type(3) div a.btn-permeate
{  
  opacity: 1;
}

#index #nav-page_01 ul li:nth-of-type(1) div a span,
#history #nav-page_01 ul li:nth-of-type(2) div a span,
#basic #nav-page_01 ul li:nth-of-type(3) div a span
{
  font-size: 20px;
}


/* --------------------------------------------------------- */


#nav-page_02
{
  margin-bottom: 8em;
  text-align: center;
}

#nav-page_02 ul li
{
  display: inline-block;
  margin-right: 8.8em;
}

#nav-page_02 ul li:last-child
{
  margin: 0;
}

#nav-page_02 ul li a
{
  box-sizing: border-box;
  display: block;
  width: 20.6em;
  height: 5.6em;
  padding-left: .2em;
  border-radius: 6px;
  background-color: #3799DC;
  color: #FFF;
}

#nav-page_02 ul li a:after
{
  content: "";
  display: inline-block;
  height: 5.6em;
  vertical-align: middle;
}

#nav-page_02 ul li a span
{
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  vertical-align: middle;
}

#nav-page_02 ul li a span:before
{
  font-size: 24px;
  font-weight: normal;
  line-height: 1;
}


/* ------------------------------------------------------------

  #index

------------------------------------------------------------ */


#index #section_01,
#index #section_02
{
  padding-bottom: 8em;
  border-bottom: 2px solid #E5E5E5;
}

#index #section_01
{
  width: 96em;
  margin: 0 auto 9em auto;
}

#index #section_01 > img
{
  display: block;
  margin-bottom: 2em;
}

#index #section_01 > div:after
{
  content: "";
  display: block;
  clear: both;
}

#index #section_01 > div a
{
  display: inline-block;
  float: right;

}

#index #section_01 > div a:after
{
  content: "";
  display: inline-block;
  height: 8em;
  vertical-align: middle;
}

#index #section_01 > div a span
{
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.428;
  vertical-align: middle;
}

#index #section_01 > div a img
{
  display: inline-block;
  vertical-align: middle;
}


/* --------------------------------------------------------- */


#index #section_02
{
  width: 96em;
  margin: 0 auto 8em auto;
  text-align: center;
}

#index #section_02 h3
{
  margin-bottom: 4em;
}

#index #section_02 h4
{
  display: inline-block;
  margin-bottom: 13.5em;
  border-bottom: 5px solid #000;
}

#index #section_02 h4 span
{
  font-size: 30px;
  line-height: 1.5;
}

#index #section_02 h5 > small span
{
  font-size: 16px;
  line-height: 1.75;
}

#index #section_02 h5 > span
{
  font-size: 24px;
  line-height: 1.75;
}

#index #section_02 p span
{
  font-size: 16px;
  font-weight: bold;
  line-height: 1.75;
}

#index #section_02 div.video_01
{
  margin-bottom: 7em;
}

#index #section_02 > p:nth-of-type(1)
{
  margin-bottom: 8em;
}

#index #section_02 > p:nth-of-type(2)
{
  margin-bottom: 12em;
}

#index #section_02 section
{
  margin-bottom: 12em;
  color: #0A0068;
}

#index #section_02 section:last-child
{
  margin-bottom: 0;
}

#index #section_02 section > img
{
  margin-bottom: 5.5em;
}


/* ------------------------------------------------------------

  #history

------------------------------------------------------------ */


#history main
{
  position: relative;
}

#history main h2
{
  width: 96em;
  margin: 0 auto 2em auto;
}

#history main h2 + p
{
  width: 96em;
  margin: 0 auto 3em auto;
}

#history main h2 + p span
{
  font-size: 16px;
  line-height: 1.75;
}

#history main section {
  position: relative;
  width: 96em;
  margin: 0 auto;
  background-image: url(/store/techo/pc/ja/2017/about/images/history/bg_02.png);
  background-repeat: no-repeat;
  background-position: 8em 11em;
}

#history main section:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 3em;
  width: 12.4em;
  height: 9.4em;
  background-image: url(/store/techo/pc/ja/2017/about/images/history/bg_01.png);
  background-repeat: no-repeat;
}

#history main #section_01 {
  min-height: 134.7em;
}

#history main #section_02 {
  min-height: 131.8em;
}

#history main #section_03 {
  min-height: 117.8em;
}

#history main #section_04 {
  min-height: 104.4em;
}

#history main #section_05 {
  min-height: 51.5em;
}

#history main #section_06 {
  min-height: 56.3em;
}

#history main #section_07 {
  min-height: 51em;
}

#history main #section_08 {
  min-height: 93em;
}

#history main #section_09 {
  min-height: 55em;
}

#history main #section_10 {
  min-height: 118.1em;
}

#history main #section_11 {
  min-height: 52em;
}

#history main #section_12 {
  min-height: 104.5em;
}

#history main #section_13 {
  min-height: 49.5em;
}

#history main #section_14 {
  min-height: 93.5em;
}

#history main #section_15 {
  margin-bottom: 10em;
  background: none;
}

#history main section h3 {
  margin: 0 0 3.5em 13em;
}

#history main section > div {
  margin-left: 21em;
}

#history main section > div ul li:before {
  content: "・";
}

#history main section > div ul.list_01 {
  margin-bottom: 5em;
}

#history main section > div ul.list_01:last-child {
  margin-bottom: 0;
}

#history main section > div ul.list_01 li {
  padding-left: 1.6em;
  margin-bottom: 1em;
  text-indent: -1.9em;
}

#history main section > div ul.list_01 li:last-child {
  margin-bottom: 0;
}

#history main section > div ul.list_01 li:before {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
}

#history main section > div ul.list_01 li span {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
}

#history main section > div ul.list_01 li span strong {
  background-color: #F5B6B2;
}

#history main section > div h4 {
  display: inline-block;
  margin-bottom: 3em;
  border-bottom: 3px solid #EC6D65;
}

#history main section > div p + h4 {
  margin-top: 1.5em;
}

#history main section > div h4 span {
  color: #EC6D65;
  font-size: 16px;
  line-height: 1.6;
}

#history main section > div p {
  margin-bottom: 3em;
}

#history main section > div p:last-child {
  margin-bottom: 0;
}

#history main section > div p span {
  font-size: 16px;
  line-height: 1.75;
}

#history main section > div ul.list_02 {
  margin-bottom: 3em;
}

#history main section > div ul.list_02 li:before {
  font-size: 16px;
  line-height: 1.75;
}

#history main section > div ul.list_02 li span {
  font-size: 16px;
  line-height: 1.75;
}


/* --------------------------------------------------------- */


#history main section.txt_01 {
  margin: 0 auto 6em auto;
  background-image: none;
}

#history main section.txt_01:before {
  content: none;
}

#history main section.txt_01 p {
  width: 60em;
  margin-left: 18em;
  padding: 2em 0;
  border-top: 2px solid #E5E5E5;
  border-bottom: 2px solid #E5E5E5;
  text-align: center;
}

#history main section.txt_01 p span {
  font-size: 16px;
  line-height: 1.75;
}

/* --------------------------------------------------------- */


#history #nav-anchor {
  position: absolute;
  top: 0;
  bottom: auto;
  left: auto;
  right: 0;
  width: 10em;
  visibility: hidden;
}

#history #nav-anchor ul {
  border-bottom: 1px solid #CCC;
}

#history #nav-anchor ul li {
  border-top: 1px solid #CCC;
}

#history #nav-anchor ul li a {
  display: block;
  padding: .75em 0 .5em 0;
  color: #000;
}

#history #nav-anchor ul li a span {
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
}


/* ------------------------------------------------------------

  #basic

------------------------------------------------------------ */


#basic main section
{
  width: 96em;
  margin: 0 auto 4.5em auto;
  padding-bottom: 4em;
  border-bottom: 1px solid #CCC;
}

#basic main section h3
{
  position: relative;
  width: 77.5em;
  margin: 0 auto 2em auto;
  padding-left: 5em;
}

#basic main section h3:before
{
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 38px;
  height: 38px;
  padding-left: .05em;
  border-radius: 50%;
  background-color: #EC6D65;
  color: #FFF;
  font-size: 20px;
  line-height: 1.8;
  text-align: center;
}

#basic main section h3 span
{
  display: inline-block;
  font-size: 28px;
  line-height: 1.357;
}

#basic main section > div
{
  width: 77.5em;
  margin: 0 auto;
}

#basic main section > div:after
{
  content: "";
  display: block;
  clear: both;
}

#basic main section > div img
{
  float: left;
}

#basic main section > div div
{
  float: right;
  width: 37em;
}

#basic main section > div div p
{
  margin-bottom: 3.5em;
}

#basic main section > div div p:first-child
{
  margin-top: -.3em;
}

#basic main section > div div p:last-child
{
  margin-bottom: 0;
}

#basic main section > div div p span
{
  font-size: 16px;
  line-height: 1.75;
}

#basic main section > div div p span a
{
  font-weight: bold;
}

#basic main section > div div a.btn_01
{
  box-sizing: border-box;
  display: block;
  height: 4.6em;
  margin: -1.5em 0 3.5em 0;
  padding-left: .2em;
  border-radius: 6px;
  background-color: #3799DC;
  color: #FFF;
  text-align: center;
}

#basic main section > div div a.btn_01:last-child
{
  margin-bottom: 0;
}

#basic main section > div div a.btn_01:after
{
  content: "";
  display: inline-block;
  height: 4.6em;
  vertical-align: middle;
}

#basic main section > div div a.btn_01 span
{
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  vertical-align: middle;
}

#basic main section > div div a.btn_01 span:before
{
  font-size: 24px;
  font-weight: normal;
  line-height: 1;
}

#basic #section_05
{
  margin: 0 auto 9em auto;
  padding-bottom: 0;
  border-bottom: 0;
}

#basic #section_01 h3:before
{
  content:"1";
}

#basic #section_02 h3:before
{
  content:"2";
}

#basic #section_03 h3:before
{
  content:"3";
}

#basic #section_04 h3:before
{
  content:"4";
}

#basic #section_05 h3:before
{
  content:"5";
}

