@charset "UTF-8";
/* ======================
　Setting
====================== */
/* ======================
　Utility
====================== */
/* Variable
------------------------------------------ */
/* Expand
------------------------------------------ */
/* paragraph */
.extendParagraph {
  margin-top: 1.61em;
}

.extendParagraphHalf {
  margin-top: 0.805em;
}

.extendParagraphQuarter {
  margin-top: 0.4025em;
}

/* column */
.extendColumn {
  overflow: hidden;
}

.extendColTxt {
  overflow: hidden;
}

/* cleafix */
.extendCleafix {
  min-height: 1%;
}
.extendCleafix:after {
  content: "";
  display: block;
  clear: both;
}

/* Mixin
------------------------------------------ */
/* ======================
　Index
====================== */
/* Over ride
------------------------------------------ */
#content > .wrap {
  width: 100%;
}
#content > .wrap #main {
  padding-top: 0;
  padding-bottom: 0;
}
#content > .wrap #main h1 {
  display: none;
}

/* Element
------------------------------------------ */
/* Box
------------------------------------------ */
/* boxIndex01 */
.boxIndex01 {
  height: 430px;
  background-image: url(/tc/img/index_bg01.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
}
.boxIndex01 .wrap .inner {
  position: relative;
  width: 1000px;
  height: 430px;
  display: table-cell;
  vertical-align: middle;
  text-align: right;
}
.boxIndex01 .wrap .inner .box01 {
  display: inline-block;
  padding: 40px 20px;
  background-color: rgba(255, 255, 255, 0.6);
  filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#77ffffff,EndColorStr=#77ffffff) \9;
  /* for IE8 */
  text-align: left;
}
:root .boxIndex01 .wrap .inner .box01 {
  filter: none\9;
  -ms-filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#eeffffff,EndColorStr=#eeffffff) \9;
  /* for IE9 */
}
.boxIndex01 .wrap .inner .box01 .heading {
  font-size: 44px;
  font-size: 4.4rem;
  font-weight: bold;
  line-height: 1.1;
  text-align: center;
}
.boxIndex01 .wrap .inner .box01 .linkBtn03 li {
  margin-right: 0;
  margin-left: 0;
}
.boxIndex01 .wrap .inner .box01 .linkBtn03 li a {
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 17px;
  font-size: 1.7rem;
}
.boxIndex01 .wrap .inner .box01 .txt {
  margin-top: 1em;
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1.4;
}
.boxIndex01 .wrap .inner .box01 .txt span {
  color: #e85694;
  font-weight: bold;
}

/* boxIndex02 */
.boxIndex02 {
  padding: 60px 0;
  background-image: url(/tc/img/index_bg02.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
}
.boxIndex02 .wrap {
  width: 1240px;
}
.boxIndex02 .wrap .column .col {
  width: 32%;
  margin-top: 0;
  margin-right: 2%;
}
.boxIndex02 .wrap .column .col:nth-child(3n) {
  margin-right: 0;
}
.boxIndex02 .wrap .column .col .heading {
  margin-top: 1em;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: bold;
}
.boxIndex02 .wrap .column .col .outline p {
  margin-top: 1em;
  font-size: 16px;
  font-size: 1.6rem;
}
.boxIndex02 .wrap .column .col .outline .linkBtn03 li a {
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 17px;
  font-size: 1.7rem;
}

/* boxIndex03 */
.boxIndex03 {
  height: 455px;
  background-image: url(/tc/img/index_bg03.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
}
.boxIndex03 .inner {
  padding: 35px 0 0 0;
}
.boxIndex03 .inner .heading {
  margin: 0 0 24px 0;
}
.boxIndex03 .inner .faq {
  display: table-cell;
  padding: 0 30px;
  width: 1000px;
  height: 290px;
  background-color: rgba(255, 255, 255, 0.9);
  filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#eeffffff,EndColorStr=#eeffffff) \9;
  /* for IE8 */
  vertical-align: middle;
}
:root .boxIndex03 .inner .faq {
  filter: none\9;
  -ms-filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#eeffffff,EndColorStr=#eeffffff) \9;
  /* for IE9 */
}
.boxIndex03 .inner .faq .link > li {
  min-height: 28px;
  margin: 10px 0 0 0;
  padding: 0 0 0 35px;
  background: url(/tc/img/index_ic01.png) no-repeat 0 0;
  font-size: 18px;
  font-size: 1.8rem;
}
.boxIndex03 .inner .faq .link > li:first-child {
  margin-top: 0;
}
.boxIndex03 .inner .faq .btn {
  letter-spacing: -0.4em;
  margin: 15px 0 0 0;
}
.boxIndex03 .inner .faq .btn > li {
  display: inline-block;
  letter-spacing: normal;
  background-color: #ffffff;
}
.boxIndex03 .inner .faq .btn > li a {
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -ms-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  background-color: #272727;
  background-image: -webkit-linear-gradient(-10deg, #272727 50%, #333333 50%, #333333);
  background-image: -moz-linear-gradient(-10deg, #272727 50%, #333333 50%, #333333);
  background-image: -ms-linear-gradient(-10deg, #272727 50%, #333333 50%, #333333);
  background-image: -o-linear-gradient(-10deg, #272727 50%, #333333 50%, #333333);
  background-image: linear-gradient(-10deg, #272727 50%, #333333 50%, #333333);
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, StartColorStr='#272727', EndColorStr='#333333');
  display: block;
  padding: 5px 25px;
}
.boxIndex03 .inner .faq .btn > li a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}
.boxIndex03 .inner .faq .btn > li a:link, .boxIndex03 .inner .faq .btn > li a:visited, .boxIndex03 .inner .faq .btn > li a:hover, .boxIndex03 .inner .faq .btn > li a:active {
  color: #ffffff;
  text-decoration: none;
}

/* boxIndex04 */
.boxIndex04 {
  height: 330px;
  background-image: url(/tc/img/index_bg04.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
}
.boxIndex04 .wrap {
  padding: 25px 0 0 0;
}
/*.boxIndex04 .wrap .banner {
  margin: 60px 0 0 0;
  text-align: center;
  font-size: 0;
}*/
.boxIndex04 .wrap .banner {
  margin: 20px 0 0 0;
  text-align: center;
  font-size: 0;
}
.boxIndex04 .wrap .banner02 {
  margin: 20px 0 0 0;
  text-align: left;
  font-size: 0;
}
.boxIndex04 .wrap .banner li {
  display: inline-block;
  margin: 30px 15px 0;
  vertical-align: middle;
}
.boxIndex04 .wrap .banner02 li {
  display: inline-block;
  margin: 0px 15px 0;
  vertical-align: middle;
}
.boxIndex04 .wrap .banner li:nth-child(-n+2) {
  margin-top: 0;
}
/* boxIndex06 */
.boxIndex06 {
	height: 450px;
	background-image: url(/tc/img/index_bg05.png);
	background-repeat: no-repeat;
	background-position: 50% 0;
}
.boxIndex06 .wrap {
  padding: 25px 0 0 0;
}
/*.boxIndex06 .wrap .banner {
  margin: 60px 0 0 0;
  text-align: center;
  font-size: 0;
}*/
.boxIndex06 .wrap .banner {
  margin: 20px 0 0 0;
/*  text-align: center;*/
  font-size: 0;
}
.boxIndex06 .wrap .banner02 {
  margin: 20px 0 0 0;
  text-align: left;
  font-size: 0;
}
.boxIndex06 .wrap .banner li {
  display: inline-block;
  margin: 30px 15px 0;
  vertical-align: middle;
}
.boxIndex06 .wrap .banner02 li {
  display: inline-block;
  margin: 0px 15px 0;
  vertical-align: middle;
}
.boxIndex06 .wrap .banner li:nth-child(-n+2) {
  margin-top: 0;
}
@media only screen and (max-width: 640px) {
  /* ======================
  　Index
  ====================== */
  /* Over ride
  ------------------------------------------ */
  #content > .wrap {
    width: 100%;
  }
  #content > .wrap #main {
    padding: 0;
  }

  /* Element
  ------------------------------------------ */
  /* Box
  ------------------------------------------ */
  /* boxIndex01 */
  .boxIndex01 {
    height: auto;
    padding: 58.13% 0 1em;
    background-position: 28% 0;
    background-size: auto 100%;
  }
  .boxIndex01 .wrap .inner {
    display: block;
    width: auto;
    height: auto;
    margin: 0 10px;
    text-align: center;
  }
  .boxIndex01 .wrap .inner .box01 {
    display: block;
    margin: 0 10px;
    padding: 1em 10px;
  }
  .boxIndex01 .wrap .inner .box01 .heading {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .boxIndex01 .wrap .inner .box01 .heading br {
    display: none;
  }
  .boxIndex01 .wrap .inner .box01 .txt {
    display: none;
  }

  /* boxIndex02 */
  .boxIndex02 {
    padding: 25px 10px;
    background: none;
    background-color: #f2f2f2;
  }
  .boxIndex02 .wrap {
    width: auto;
  }
  .boxIndex02 .wrap .column .col {
    float: none;
    width: auto;
    margin-top: 20px;
    margin-right: 0;
  }
  .boxIndex02 .wrap .column .col .outline p {
    margin-top: 1em;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .boxIndex02 .wrap .column .col .outline .linkBtn03 li a {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 17px;
    font-size: 1.7rem;
  }

  /* boxIndex03 */
  .boxIndex03 {
    height: auto;
    padding: 20px 10px;
  }
  .boxIndex03 .inner {
    padding-top: 0;
  }
  .boxIndex03 .inner .heading {
    margin: 0 10px 10px;
  }
  .boxIndex03 .inner .faq {
    display: block;
    padding: 10px;
    width: auto;
    height: auto;
  }
  .boxIndex03 .inner .faq .btn li {
    width: 100%;
    text-align: center;
  }
  .boxIndex03 .inner .faq .btn li a {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  /* boxIndex04 */
  .boxIndex04 {
    height: auto;
    padding: 20px 10px;
  }
  .boxIndex04 .wrap {
    padding-top: 0;
  }
  .boxIndex04 .wrap .banner {
    margin: 20px 0 0 0;
  }
   .boxIndex04 .wrap .banner02 {
    margin: 15px 0 0 0;
	text-align: center;
  }
  .boxIndex04 .wrap .banner02 li,
  .boxIndex04 .wrap .banner li {
    display: block;
    margin: 15px 0 0;
    vertical-align: middle;
  }
  .boxIndex04 .wrap .banner li:nth-child(-n+2) {
    margin-top: 15px;
  }
  .boxIndex04 .wrap .banner li:nth-child(1) {
    margin-top: 0;
  }

  /* boxIndex05 */
  .boxIndex05 ul {
    overflow: hidden;
  }
  .boxIndex05 ul li {
    float: left;
    display: table;
    width: 50%;
    border-top: 1px solid #ffffff;
    text-align: center;
  }
  .boxIndex05 ul li a {
    display: table-cell;
    width: 100%;
    padding: 15px 10px;
    background-color: #333333;
    border-right: 1px solid #ffffff;
    vertical-align: middle;
    color: #ffffff;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .boxIndex05 ul li:nth-child(2n) a {
    border-right: none;
  }
   /* boxIndex06 */
  .boxIndex06 {
    height: auto;
    padding: 20px 10px;
	background-color: #e8f4fc;
  }
  .boxIndex06 .wrap {
    padding-top: 0;
  }
  .boxIndex06 .wrap .banner {
    margin: 20px 0 0 0;
  }
   .boxIndex06 .wrap .banner02 {
    margin: 15px 0 0 0;
	text-align: center;
  }
  .boxIndex06 .wrap .banner02 li,
  .boxIndex06 .wrap .banner li {
    display: block;
    margin: 15px 0 0;
    vertical-align: middle;
  }
  .boxIndex06 .wrap .banner li:nth-child(-n+2) {
    margin-top: 15px;
  }
  .boxIndex06 .wrap .banner li:nth-child(1) {
    margin-top: 0;
  }
}
