/* ===================================================================
CSS information

 file name  : common.css
 author     : TomoChain
 style info : maintain
=================================================================== */
.container {
  max-width: 1100px;
  margin: auto;
}
@media only screen and (max-width: 1024px) {
  .container {
    width: 95%;
  }
}

.clearfix:after, .container:after {
  content: "";
  display: table;
  clear: both;
}

/* -----------------------------------------------------------
	Basic setting, link color etc.
----------------------------------------------------------- */
html {
  font-size: small;
  line-height: 1.5;
}

body {
  margin: 0;
  padding: 0;
  color: #333333;
  background: #fff;
  -webkit-text-size-adjust: none;
  font-size: 108%;
}
.ie body {
  font-size: 105%;
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 100%;
  }
}
body a {
  color: #4d4d4d;
}
body a:link, body a:visited, body a:active {
  text-decoration: none;
  transition: all .4s;
}
.mouse body a:hover, .touch body a.touchstart {
  text-decoration: none;
  color: #666666;
  transition: all .4s;
}
body img {
  max-width: 100%;
  -webkit-touch-callout: none;
}

body, pre, input, textarea, select {
  font-family: "Quicksand", sans-serif;
}

input, select, textarea {
  font-size: 100%;
}

html.ie8 .view_tab,
html.ie8 .view_tab_sp,
html.ie8 .view_sp {
  display: none !important;
}
html.ie8 #page {
  min-width: 1100px !important;
  margin: auto;
  font-size: 100% !important;
}

@media only screen and (min-width: 1025px) {
  body .view_tab-sp, body .view_tab {
    display: none !important;
  }
}
@media print {
  body .view_tab-sp, body .view_tab {
    display: none !important;
  }
}
.ie8 body .view_tab-sp, .ie8 body .view_tab {
  display: none !important;
}
@media only screen and (min-width: 768px) {
  body .view_sp {
    display: none !important;
  }
}
@media print {
  body .view_sp {
    display: none !important;
  }
}
.ie8 body .view_sp {
  display: none !important;
}
@media only screen and (max-width: 1024px) {
  body .view_pc {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  body .view_pc-tab, body .view_tab {
    display: none !important;
  }
}

.mouse .over {
  -moz-transition: opacity 200ms ease-in;
  -o-transition: opacity 200ms ease-in;
  -webkit-transition: opacity 200ms ease-in;
  transition: opacity 200ms ease-in;
}
.mouse .over:hover, .touch .over.touchstart {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.touch .over {
  -webkit-tap-highlight-color: transparent;
}
.touch .over.touchend {
  -moz-transition-delay: 200ms;
  -o-transition-delay: 200ms;
  -webkit-transition-delay: 200ms;
  transition-delay: 200ms;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

button, button:focus, button:active, button:hover, button:visited,
a, a:focus, a:active, a:hover, a:visited {
  outline: 0;
}

ul, li {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* ----------
clearfix
---------- */
/* ----------
container
---------- */
/* ----------
Title
---------- */
.title_basic_tmp1 {
  margin: 0 0 0.5em;
  font-size: 258%;
  font-family: "Bai Jamjuree", sans-serif;
  font-weight: normal;
  color: #fff;
  padding-top: 15px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .title_basic_tmp1 {
    margin: 0 0 0.5em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .title_basic_tmp1 {
    font-size: 258%;
  }
}
@media only screen and (max-width: 767px) {
  .title_basic_tmp1 {
    font-size: 172%;
  }
}
.title_basic_tmp1:before {
  background: #e68b71;
  content: '';
  height: 2px;
  width: 40px;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 1024px) {
  .title_basic_tmp1 {
    text-align: center;
  }
  .title_basic_tmp1:before {
    left: 50%;
    transform: translateX(-50%);
  }
}

.title_sub_tmp1 {
  color: #8b96b5;
  font-size: 129%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .title_sub_tmp1 {
    font-size: 129%;
  }
}
@media only screen and (max-width: 767px) {
  .title_sub_tmp1 {
    font-size: 100%;
  }
}
@media only screen and (max-width: 1024px) {
  .title_sub_tmp1 {
    text-align: center;
  }
}
