/*
* Theme Name: HTMLレイアウト LPテンプレート共通CSS
* Theme URI:
* Description: ４ブランド共通で使うスタイル
* Created Date: 2019.03.01
* Update Date:
*/


/*------------------------------------
  Color
------------------------------------*/

body {
    color: #333;
}

/*------------------------------------
  Font
------------------------------------*/

body {
    /* win:游ゴシック優先、mac:ヒラギノ角ゴシック優先 */
    font-family: 'Avenir', 'Helvetica Neue', 'Helvetica', 'Arial', 'Hiragino Sans', 'ヒラギノ角ゴシック', YuGothic, 'Yu Gothic', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic';    /* 標準のフォントサイズを 1.6rem=16pxに設定 */
    font-size: 18px;
    letter-spacing: .05em;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}


/*------------------------------------
  Common
------------------------------------*/
*,
*:after,
*:before {
    box-sizing: border-box;
}

body {
    height: 100%;
    margin: 0;
}

a:link {
    text-decoration: none;
}

a:visited {
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}

a:active {
    text-decoration: none;
}

a {
    cursor: pointer;
}


/*------------------------------------
  Text
------------------------------------*/
h1,
h2,
h3,
h4,
h5,
h6,
p,
li,
th,
td,
dt,
dd {
    line-height: 1.5;
    margin: 0;
    padding: 0;
}

p {
    margin-bottom: 1em;
}

.flex {
    display: flex;
}

/*------------------------------------
  title
------------------------------------*/
.content-main .title-primary:first-of-tye {
    margin-bottom: 50px;
}

/*------------------------------------
  General
------------------------------------*/
.image-liquid {
    width: 100%;
    height: auto;
}

.center-block {
    display: block;
    margin-right: auto;
    margin-left: auto;
}

.text-center {
    text-align: center;
}

.align-right {
    float: right;
    margin: 0 0 1em 1em;
}

.align-left {
    float: left;
    margin: 0 1em 1em 0;
}

.clearfix::after {
    display: block;
    clear: both;
    content: '';
}

.clear {
    clear: both;
}

/*------------------------------------
  Layout:block
------------------------------------*/
.container-wrap {
    background-color: #fff;
}

.container {
    width: 1000px;
    margin: 0 auto;
}

.section-primary {
    margin-top: 50px;
    margin-bottom: 50px;
}

.section-secondary,
.section-tertiary,
.section-quaternary {
    margin: 40px 0;
}

.section-primary .section-content {
    margin: 50px 0;
}

.section-secondary .section-content,
.section-tertiary .section-content,
.section-quaternary .section-content {
    margin: .5em 0;
}


/*------------------------------------
  Layout:float
------------------------------------*/

.float-left {
    float: left;
}

.float-right {
    float: right;
}


/*------------------------------------
  Layout:column
------------------------------------*/
.col-flex {
    display: flex;
    min-height: 1px;
    margin-right: -15px;
    margin-left: -15px;

    flex-wrap: wrap;
    justify-content: space-between;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
    padding-right: 15px;
    padding-left: 15px;
}

.col-1 {
    max-width: 8.33333333%;

    flex: 0 0 8.33333333%;
}

.col-2 {
    max-width: 16.666666%;

    flex: 0 0 16.666666%;
}

.col-3 {
    max-width: 25%;

    flex: 0 0 25%;
}

.col-4 {
    max-width: 33.333333%;

    flex: 0 0 33.333333%;
}

.col-5 {
    max-width: 41.66667%;

    flex: 0 0 41.66667%;
}

.col-6 {
    max-width: 50%;

    flex: 0 0 50%;
}

.col-7 {
    max-width: 58.33333%;

    flex: 0 0 58.33333%;
}

.col-8 {
    max-width: 66.66666667%;

    flex: 0 0 66.66666667%;
}

.col-9 {
    max-width: 75%;

    flex: 0 0 75%;
}

.col-10 {
    max-width: 83.33333%;

    flex: 0 0 83.33333%;
}

.col-11 {
    max-width: 91.6666%;

    flex: 0 0 91.6666%;
}

.col-12 {
    max-width: 100%;

    flex: 0 0 100%;
}

.col-box-2 .col-6,
.col-box-2 .col-4 {
    margin-bottom: 30px;
}

.col-box-2 img,
.col-box-3 img {
    margin-bottom: 15px;
}



/*------------------------------------
title
------------------------------------*/
.title-primary {
  font-size: 36px;
  text-align: center;
}

.title-primary .sub-title {
  font-size: 24px;
  display: block;
  margin-top: .5em;
}

.title-secondary {
  font-size: 24px;
}

.title-tertiary {
  font-size: 18px;
}

/*------------------------------------
Button
------------------------------------*/
.button-basic {
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  display: block;
  padding: .9em 1em;
  transition: none;
  text-align: center;
  letter-spacing: .05em;
  color: #fff;
  border-radius: 10px;
  border-radius: 5px;
  text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}

.button-basic .fa-angle-right {
  float: right;
}

.button-left {
    margin-right:10px!important;
}

.button-right {
    margin-left: 10px!important;
}

/* button-basicApplication-type01 */
.button-basicApplication-type01 {
  border: 1px solid #ff141c;
  background-color: #ff141c;
  background-image: linear-gradient(to bottom, #ff141c, #ff141c);
}

.button-basicApplication-type01:hover {
  border: 1px solid #bd1134;
  background-color: #ad102f;
  background-image: linear-gradient(to bottom, #cc1338, #ad102f);
}

/* button-basicRequest-type01 */
.button-basicRequest-type01 {
  border: 1px solid #009380;
  background-color: #008271;
  background-image: linear-gradient(to bottom, #009380, #008271);
}

.button-basicRequest-type01:hover {
  border: 1px solid #008271;
  background-color: #008271;
  background-image: linear-gradient(to bottom, #008271, #008271);
}

/* button-basicMeeting--type01 */
.button-basicMeeting--type01 {
  border: 1px solid #002d71;
  background-color: #0041a4;
  background-image: linear-gradient(to bottom, #0041a4, #002d71);
}

.button-basicMeeting--type01:hover {
  border: 1px solid #0041a4;
  background-color: #00193e;
  background-image: linear-gradient(to bottom, #0041a4, #00193e);
}

.button-wide {
  width: 820px;
  margin: calc(50px + 20px) auto 0;
}

.button-wide .button-basic {
  width: 70%;
  margin: 0 auto;
}

.button-row-two .button-basic {
  padding: 1em 1em;
}

.button-row-three .button-basic {
  font-size: 20px;
  padding: 1em 1em;
}

.button-bottom-wrap {
  margin-bottom: 50px;
  padding: 30px 20px 30px;
  background-color: #f5f5f5;
}

.button-bottom-wrap h3 {
  margin-bottom: 15px;
  text-align: center;
  border-bottom: none;
}

.button-soon {
  position: relative;
}
.button-wide .soon-circle {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.2;
  position: absolute;
  top: -10px;
  right: 17%;
  display: flex;
  width: 90px;
  height: 90px;
  padding: .4em;
  text-align: center;
  color: #d8143b;
  border: 1px solid #d8143b;
  border-radius: 50%;
  background-color: #fff;

  align-items: center;
  justify-content: center;
}


/*------------------------------------
Box
------------------------------------*/
.box-card {
  padding: 25px;
  border: solid 1px #ccc;
  background-color: #f5f5f5;
}

.box-card p:last-child {
  margin-bottom: 0;
}

.section-secondary.col-6,
.section-secondary.col-4 {
  margin-bottom: 0;
}


/*------------------------------------
banner:common;
------------------------------------*/
.banner-area {
  width: 780px;
  margin: 20px auto 40px;
}

/*------------------------------------
pankuzu
------------------------------------*/
.pankuzu{
    width:1000px;
    margin:15px auto;
    display: flex;
    align-items: center;
    font-size:16px;
}

.pankuzu a{
    text-decoration: underline;
}

.pankuzu a:hover{
    opacity: 0.8;
}

.pankuzu p{
    margin: 0;
}

/*------------------------------------
SNS:common;
------------------------------------*/
.button-sns-share {
  margin: 50px 0;
}

.sns-item {
  display: flex;
  justify-content: center;
}

.sns-item a {
  margin-right: 20px;
}

.sns-item a:last-of-type {
  margin-right: 0;
}

.sns-item img {
  width: 70px;
}


/*------------------------------------
Fix banner
------------------------------------*/

.fixed-banner {
  position: fixed;
  z-index: 999;
  bottom: 0;
  width: 100%;
  padding: 20px 15px;
  text-align: center;
  background-color: #f5f5f5;
  box-shadow: 0 2px 6px gray;
}

.fixed-banner .button-basicApplication-type01 {
  width: 600px;
  margin: 0 auto;
  padding: .7em 1em;
}


/*------------------------------------
To top
------------------------------------*/
.global-page-top-button .page-top {
  margin: 0;
  padding: 0;

  position: fixed;
  right: 16px;
  bottom: 90px;

  z-index: 9999;
}

.global-page-top-button .page-top {
  display: block;
  background: #009380;
  width: 50px;
  height: 50px;
  cursor: pointer;
  border-radius: 50px;

  color: #fff;
  line-height: 50px;
  text-decoration: none;
  text-align: center;

  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}

#toitsutest_nagase_group_list h3{
  background: none;
}