@charset "UTF-8";

html {
    font-size: 62.5%;
	-webkit-backface-visibility: hidden;
    backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
}

body {
    font-size: 1.6rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0;
	background-color: #FFF;
	padding-top: 0;
}

.container-fluid {
    padding-right: 0;
    padding-left: 0;
}

@media (min-width: 992px) {
	body {
		padding-left: 0px;
	}
	.container-fluid {
        padding-left: 0%;
		padding-right: 0%;
	}
}

.preload::after {
    content: "";
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2000;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 1;
    background-color: #FFF;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../assets/img/logo300.png);
}

a {
	color: #000000;
    outline: 0;
    outline: none;
    text-decoration: none;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
    -ms-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

a:hover {
    color: #DC1715;
    outline: 0;
    outline: none;
    text-decoration: none;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
    -ms-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

a:focus, *:focus { 
	outline: none;
}

a[href^="tel:"] { 
	cursor: default;
}

img {
    vertical-align: middle;
    border-style: none;
    max-width: 100%;
    height: auto;
}

img.img-fluid {
    vertical-align: middle;
    border-style: none;
    max-width: 100%;
    height: auto;
}


.container-100p {
    width: 100%;
	margin: 0 auto;
}

.row:before, 
.row:after { 
	width: 0;
}

.row.no-margin {
    margin-right: 0;
    margin-left: 0;
}

.row.flex {
    display: flex;
    flex-wrap: wrap;
}

.no-padding {
    padding-left: 0;
    padding-right: 0;
}

.flex-center {
    display: flex;
    align-items: center;
}

ul {
    display: block;
    list-style-type: none;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 0px;
}

h1 {
    margin: 0 0;
}

h1, h2, h3, h4, h5, h6 {
    text-transform: none;
}

dt {
    font-weight: 600;
}


.fixed-top {
	position: fixed;
    z-index: 1030;
}

.d-lg-block h1 {
	font-size: 0rem;
    padding: 10px 1rem;
}



/*========= LoadingのためのCSS ===============*/

/* Loading背景画面設定　*/
#splash {
    /*fixedで全面に固定*/
  position: fixed;
  width: 100%;
  height: 100vh;
  z-index: 9999;
  background: #FFF;
  text-align:center;
  color: #222;
}

/* Loading画像中央配置　*/
#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Loading アイコンの大きさ設定　*/
#splash_logo img {
  width:200px;
}

/* fadeUpをするアイコンの動き */

.fadeUp{
    animation-name: fadeUpAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
    transform: translateY(100px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}



/* ------------------------------------------------------------------
Nav
------------------------------------------------------------------- */
#mainNav {
    min-height: 80px;
}

.navbar-brand {
    display: inline-block;
    padding-top: 0;
    padding-bottom: 0;
    margin-right: 0;
}

@media (min-width: 992px) {
    #mainNav {
        background-color: rgba(255, 255, 255, 0.0);
    }
    .container {
        max-width: 100%;
    }
    .navbar {
        height: 80px;
        padding: 0 20px;
    }

    .navbar-expand-lg>.container-100p {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .navbar-expand-lg {
        display: flex;
    }

    #mainNav .navbar-brand {
        padding: 0rem 0;
    }
    #mainNav .navbar-brand img {
        display: block;
    }

    #mainNav.navbar-shrink {
        background-color: rgba(255, 255, 255, 1.0);
    }
    #mainNav.navbar-shrink .navbar-brand img {
        display: block;
    }
}

@media (min-width: 1200px) {
    .navbar {
        padding: 0 30px;
    }
}

@media (min-width: 1300px) {
    .navbar {
        padding: 0 2%;
    }
}

@media (min-width: 1480px) {
    .navbar {
        padding: 0 2%;
    }
}

.company-name {
    width: 200px;
    margin: 0;
    padding: 0;
}

@media (min-width: 992px) {
    .company-name {
        width: 250px;
    }
}

@media (min-width: 1200px) {
}
@media (min-width: 1480px) {
}


/*========= ナビゲーションのためのCSS ===============*/

#g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 999;
    /*ナビのスタート位置と形状*/
    top:0;
    right: -120%;
    width: 30%;
    height: 100vh;/*ナビの高さ*/
    background:#F0F0F0;
    /*動き*/
    transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 30%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}

/*リストのレイアウト設定*/

#g-nav li{
    list-style: none;
    text-align: center;
}

#g-nav li a{
    color: #000;
    text-decoration: none;
    padding: 10px 0;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 1.8rem;
    font-weight: bold;
}

@media (max-width: 1200px){
    #g-nav{
        width: 100%;
    }
    #g-nav.panelactive #g-nav-list{
        width: 100%;
    }
}
@media (max-width: 990px){
}
@media (max-width: 749px){
    #g-nav li a{
        padding: 4px 0;
        letter-spacing: 0;
        font-size: 1.5rem;
    }
}
@media (max-width: 499px){
    #g-nav ul {
        width: 55%;
    }
    #g-nav li a {
        font-size: 4.8vw;
        padding: 7px 0;
        text-align: left;
    }
}


/*========= MENUボタンのためのCSS ===============*/
.openbtn1{
    position:fixed;
    z-index: 9998;/*ボタンを最前面に*/
    top: 0;
    right: 0;
    cursor: pointer;
    width: 80px;
    height: 80px;
    background-color: #F0F0F0;
}
  
/*×に変化*/  
.openbtn1 span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 25px;
    height: 3px;
    border-radius: 2px;
    background-color: #000;
    width: 30px;
}
.openbtn1 span:nth-of-type(1) {
    top:24px; 
}
.openbtn1 span:nth-of-type(2) {
    top: 32px;
}
.openbtn1 span:nth-of-type(3) {
    top: 40px;
}
.openbtn1 span.menutext {
    display: block;
    left: 0;
    bottom: 12px;
    width: 100%;
    height: auto;
    text-align: center;
    font-size: 1.0rem;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 0;
    color: #000;
    border-radius: 0;
    background-color: transparent;
}
.openbtn1.active span:nth-of-type(1) {
    top: 24px;
    left: 29px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}
.openbtn1.active span:nth-of-type(2) {
    opacity: 0;
}
.openbtn1.active span:nth-of-type(3){
    top: 36px;
    left: 29px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}


/*========= お問い合わせボタンのためのCSS ===============*/
.navcontact {
    position:fixed;
    z-index: 9998;/*ボタンを最前面に*/
    top: 0;
    right: 80px;
    cursor: pointer;
    width: 80px;
    height: 80px;
    background: #c61a22;
    margin: 0;
    padding: 0;
}
.navcontact a {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.navcontact a span{
    display: block;
    font-size: 3.6rem;
    color: #FFF;
    margin: 0;
    padding: 0;
}
.navcontact a span.menutext {
    display: block;
    font-size: 0.9rem;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 0;
    margin: 0;
    padding: 0;
    text-align: center;
}


/*========= TELボタンのためのCSS ===============*/
.navtelcontact {
    position:fixed;
    z-index: 9998;/*ボタンを最前面に*/
    top: 0;
    right: 160px;
    cursor: pointer;
    width: 240px;
    height: 80px;
    background: #023C82;
    margin: 0;
    padding: 0;
}
.navtelcontact a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.navtelcontact a span{
    display: block;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 0;
    color: #FFF;
    text-align: center;
    margin: 0;
    padding: 0;
}
.navtelcontact a span.menutext {
    display: block;
    font-size: 2.2rem;
    font-weight: 600;
    font-family: 'Roboto', sans-serif;
    margin: 0;
    padding: 10px 0 0;
}


.hero-photo-home-section {
    position: relative;
    width: 100%;
    height: 100vh;
    background-color: #FFF;
    overflow: hidden;
}

@media (max-width: 990px){
    .hero-photo-home-section {
        height: auto;
    }
}
@media (max-width: 749px){
    .navtelcontact {
        position:fixed;
        top: auto;
        bottom: 0;
        left: 0;
        right: auto;
        width: 50%;
        height: 80px;
    }
    .navcontact {
        position:fixed;
        top: auto;
        bottom: 0;
        left: 50%;
        right: auto;
        width: 50%;
        height: 80px;
    }
}
@media (max-width: 499px){
    .navcontact a {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
    }
    .navcontact a span {
        font-size: 3.6rem;
        padding: 0 10px 0 0;
    }
    .navcontact a span.menutext {
        font-size: 4.8vw;
    }
    .navtelcontact a span {
        font-size: 3.6vw;
    }
    .navtelcontact a span.menutext {
        font-size: 6.0vw;
    }
}



/*!------------------------------------------------------------------
[Home Hero Copy Section]
*/

.hero-copy-section {
    width: 100%;
    height: 100%;
	margin: 0;
	padding: 0;
}
.hero-section-content {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
	width: 100%;
    height: 100%;
}

.hero-copy-wrap {
    width: 100%;
    height: 100%;
}

.hero-section-text-wrap {
    position: relative;
    height: 100%;
    padding-left: 0;
    padding-right: 0;
}

.hero-section-text-inwrap {
    position: absolute;
    top: 4%;
    left: 18%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 0;
    z-index: 3;
}

@media (max-width: 990px){
    .hero-copy-section {
        height: auto;
        padding: 120px 10% 80px;
    }
    .hero-section-content {
        display: block;
        height: auto;
    }
    
    .hero-copy-wrap {
        height: auto;
    }
    .hero-section-text-wrap {
        display: block;
        height: auto;
        padding: 0 0 50px;
    }
    .hero-section-text-inwrap {
        position: relative;
        top: auto;
        left: auto;
        display: block;
        width: 100%;
        height: auto;
        padding: 0;
        z-index: 3;
    }
}

.hero-copy-en01 {
    display: block;
    width: 65%;
    font-size: 2.4vw;
    font-weight: 900;
    line-height: 1.0;
    letter-spacing: 0.1vw;
    color: #FFF;
    margin: 0 0 10px;
    padding: 10px 10px 14px 10px;
    background-color: #000;
}
.hero-copy-en02 {
    display: block;
    width: 85%;
    font-size: 2.4vw;
    font-weight: 900;
    line-height: 1.0;
    letter-spacing: 0.1vw;
    color: #FFF;
    margin: 0 0 40px;
    padding: 10px 10px 14px 10px;
    background-color: #000;
}
.hero-copy-en02 br {
    display: none;
}

.hero-copy-ja01 {
    display: block;
    width: 50%;
    font-size: 1.5vw;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #000;
    margin: 0 0 10px;
    padding: 5px 15px;
}
.hero-copy-ja01 span {
    display: inline-block;
    color: rgb(171, 189, 84);
    padding: 0 10px 0 0;
}
.hero-copy-ja02 {
    display: block;
    width: 53%;
    font-size: 1.5vw;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #000;
    margin: 0 0 10px;
    padding: 5px 15px;
}
.hero-copy-ja02 span {
    display: inline-block;
    color: rgb(171, 189, 84);
    padding: 0 10px 0 0;
}
.hero-copy-ja03 {
    display: block;
    width: 53%;
    font-size: 1.5vw;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #000;
    margin: 0 0 10px;
    padding: 5px 15px;
}
.hero-copy-ja03 span {
    display: inline-block;
    color: rgb(171, 189, 84);
    padding: 0 10px 0 0;
}
.hero-section-img-wrap {
    display: flex;
    align-items: center;
    height: 100%;
    background-image: url(../assets/img/top-bg.jpg);
    background-size: cover;
    background-position: center center;
    padding: 9% 3% 0 3%;
}
.hero-section-img-text {
    display: block;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0;
    text-align: center;
    color: #000;
    margin: 0 0 10px;
    padding: 5px 0;
}

@media (max-width: 1200px){
    .hero-copy-ja01 {
        width: 52%;
    }
    .hero-copy-ja02 {
        width: 54%;
    }
    .hero-copy-ja03 {
        width: 54%;
    }
    .hero-section-img-wrap img {
        width: 100%;
    }
}
@media (max-width: 990px){
    .hero-copy-en01 {
        width: 80%;
        font-size: 4.6vw;
    }
    .hero-copy-en02 {
        width: 100%;
        font-size: 4.6vw;
    }
    .hero-copy-ja01 {
        width: 70%;
        font-size: 3.6vw;
    }
    .hero-copy-ja02 {
        width: 75%;
        font-size: 3.6vw;
    }
    .hero-copy-ja03 {
        width: 75%;
        font-size: 3.6vw;
    }
    .hero-section-img-wrap {
        display: block;
        height: auto;
    }
    .hero-section-img-wrap img {
        width: 100%;
        margin: 0 auto;
    }
}
@media (max-width: 499px){
    .hero-copy-section {
        height: auto;
        padding: 100px 5% 40px;
    }
    .hero-section-text-wrap {
        padding: 0 0 10px;
    }
    .hero-copy-en01 {
        width: 100%;
        font-size: 6.0vw;
        text-align: center;
        margin: 0 auto 10px;
    }
    .hero-copy-en02 {
        width: 100%;
        font-size: 6.0vw;
        line-height: 1.4;
        text-align: center;
        margin: 0 auto 20px;
    }
    .hero-copy-en02 br {
        display: block;
    }
    .hero-copy-ja01 {
        width: 100%;
        font-size: 5.0vw;
        padding: 5px 0 5px 5%;
    }
    .hero-copy-ja02 {
        width: 100%;
        font-size: 5.0vw;
        padding: 5px 0 5px 5%;
    }
    .hero-copy-ja03 {
        width: 100%;
        font-size: 5.0vw;
        padding: 5px 0 5px 5%;
    }
    .hero-section-img-text {
        font-size: 1.4rem;
    }
}


/*!------------------------------------------------------------------
[Home 15years Section]
*/

.home-15years-section {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 100px 0 110px 0;
    background-color: #F0F0F0;
}
.home-15years-title {
    font-size: 3.0vw;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.5;
    text-align: center;
    color: #000;
    margin: 0 0 50px;
}
.home-15years-title br {
    display: none;
}
.home-15years-text {
    width: 1000px;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1.6;
    text-align: left;
    color: #000;
    margin: 0 auto;
    padding: 0;
}

@media (max-width: 1300px){
    .home-15years-text {
        width: 90%;
    }
}
@media (max-width: 1200px){
    .home-15years-text {
        width: 80%;
    }
    .home-15years-text br.tb {
        display: none;
    }
}
@media (max-width: 990px){
    .home-15years-section {
        padding: 90px 0 90px;
    }
    .home-15years-title {
        font-size: 4.8vw;
    }
}
@media (max-width: 499px){
    .home-15years-section {
        padding: 50px 0 50px;
    }
    .home-15years-title {
        font-size: 7.2vw;
        line-height: 1.4;
        margin: 0 0 30px;
    }
    .home-15years-title br {
        display: block;
    }
    .home-15years-text br.sp {
        display: none;
    }
}


/*!------------------------------------------------------------------
[Home Reason Section]
*/

.home-reason-section {
    width: 100%;
    min-height: 500px;
    margin: 0 auto;
    padding: 100px 0 110px;
    background-image: url(../assets/img/construction_bg.png);
    background-position: top center;
}
.home-reason-title {
    font-size: 3.0vw;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.5;
    text-align: center;
    color: #FFF;
    margin: 0 0 60px;
}
.home-reason-title br {
    display: none;
}
.home-reason-wrapper {
    width: 90%;
    margin: 0 auto;
    padding: 0;
}
.home-reason-title-wrap {
    position: relative;
    width: 90%;
    height: 100%;
    margin: 0 auto;
    padding: 0;
    background-color: #FFF;
    border-radius: 8px;
}
.home-reason-title-wrap img {
    border-radius: 8px 8px 0 0;
    overflow: hidden;
}
.home-reason-number-text {
    position: absolute;
    top: -10px;
    left: -10px;
    display: block;
    width: 100px;
    height: 100px;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 600;
    line-height: 1.0;
    color: #FFF;
    text-align: center;
    margin: 0;
    padding: 20px;
    background-color: #c61a22;
}
.home-reason-number-text span {
    display: block;
    font-size: 4.8rem;
    font-family: 'Roboto', sans-serif;
    font-weight: 900;
    padding: 0;
}
.home-reason-subtitle {
    position: relative;
    display: block;
    font-size: 1.5vw;
    font-weight: 900;
    line-height: 1.4;
    color: #000;
    text-align: center;
    margin: 0;
    padding: 30px;
}
.home-reason-text {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.6;
    color: #000;
    margin: 0;
    padding: 0 30px 30px 30px;
}

@media (max-width: 1480px){
    .home-reason-number-text {
        width: 80px;
        height: 80px;
        font-size: 1.5rem;
        padding: 15px;
    }
    .home-reason-number-text span {
        font-size: 3.6rem;
    }
    .home-reason-subtitle {
        font-size: 1.4vw;
        line-height: 1.4;
        padding: 30px 30px 20px 30px;
    }
    .home-reason-subtitle br {
        display: block;
    }
}
@media (max-width: 1200px){
    .home-reason-number-text {
        width: 60px;
        height: 60px;
        font-size: 1.4rem;
        padding: 10px;
    }
    .home-reason-number-text span {
        font-size: 3.0rem;
    }
    .home-reason-subtitle {
        font-size: 1.5vw;
        line-height: 1.4;
        padding: 30px 20px 20px 20px;
    }
    .home-reason-text {
        padding: 0 20px 30px 20px;
    }
}
@media (max-width: 990px){
    .home-reason-section {
        padding: 100px 0 70px;
    }
    .home-reason-wrapper {
        width: 90%;
    }
    .home-reason-title-wrap {
        width: 80%;
        height: auto;
        margin: 0 auto 40px;
    }
    .home-reason-title {
        font-size: 4.8vw;
    }
    .home-reason-title br.tb {
        display: block;
    }

    .home-reason-number-text {
        width: 100px;
        height: 100px;
        font-size: 1.8rem;
        padding: 20px;
    }
    .home-reason-number-text span {
        font-size: 4.8rem;
    }
    .home-reason-subtitle {
        font-size: 3.6vw;
    }
    .home-reason-text {
        padding: 0 30px 30px 30px;
    }
}
@media (max-width: 499px){
    .home-reason-section {
        padding: 50px 0 50px;
    }
    .home-reason-title {
        font-size: 7.0vw;
        line-height: 1.4;
        margin: 0 0 40px;
    }
    .home-reason-title br.sp {
        display: block;
    }
    .home-reason-title-wrap {
        width: 90%;
        margin: 0 auto 30px;
    }
    .home-reason-number-text {
        width: 60px;
        height: 60px;
        font-size: 1.4rem;
        padding: 10px;
    }
    .home-reason-number-text span {
        font-size: 3.0rem;
    }
    .home-reason-subtitle {
        font-size: 4.8vw;
        line-height: 1.4;
        padding: 30px 20px 20px 20px;
    }
    .home-reason-text {
        padding: 0 20px 30px 20px;
    }
}



/*!------------------------------------------------------------------
[Home Price Section] 2024.0416 追記　ここから
*/

.home-price-section {
    width: 100%;
    min-height: 500px;
    margin: 0 auto;
    padding: 100px 0 110px;
    background-color: #FFF;
}
.home-price-title {
    font-size: 3.0vw;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.5;
    text-align: center;
    color: #000;
    margin: 0 0 60px;
}
.home-price-margin-lead {
    display: block;
    font-size: 1.4vw;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0;
    color: #222;
    text-align: center;
    margin: 0 0 40px;
    padding: 0;
}
.home-price-margin-lead br {
    display: none;
}


.home-price-wrapper {
    width: 90%;
    margin: 0 auto;
    padding: 0;
}


.home-intercom-step-wrapper {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    margin-top: 6%;
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 6%;
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
}
.home-intercom-steptitle-wrapper {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 40px;
    padding: 0;
    background-color: #FFF;
    overflow: hidden;
}
.home-intercom-steptitle-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 2.0rem;
    color: #FFF;
    text-align: center;
    margin: 0;
    padding: 0;
    background-color: #111;
    border-right: solid 5px #FFF;
}
.home-intercom-steptitle-wrap.blue {
    background-color: #023C82;
}
.home-intercom-step-wrap {
    position: relative;
    display: block;
    text-align: center;
    margin: 0;
    padding: 0;
    background-color: #FFF;
    border-right: solid 5px #FFF;
}
.home-intercom-step-wrap img.spimg {
    display: none;
}
.home-intercom-step-wrap span {
    display: block;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.6;
    color: #FFF;
    padding: 20px 0;
    background-color: #111;
}
.home-intercom-step-wrap span.second {
    background-color: #023C82;
}
.home-intercom-step-wrap span.second02 {
    padding: 19px 0 18px;
    background-color: #023C82;
}

.home-intercom-step-wrap .arrow-wrap {
    position: absolute;
    top: 30%;
    left: -40px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    font-size: 6.0rem;
    font-weight: 600;
    line-height: 1.0;
    color: #111;
    text-align: center;
    margin: 0;
    padding: 0;
    border-radius: 50%;
    background-color: #FFF;
}

.home-intercom-slide-textwrap {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 1.6vw;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0.1vw;
    color: #FFF;
    text-align: center;
    margin: 0;
    padding: 20px 0 25px;
    background-color: #c61a22;
}
.home-intercom-slide-textwrap br {
    display: none;
}

.home-area-section {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 100px 5% 110px;
    background-color: #F0F0F0;
}
.home-area-map-wrap {
    display: block;
    margin: 20px 0 30px;
    padding: 0;
}
.home-area-map-wrap img.spimg {
    display: none;
}
.home-area-text-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 1.6vw;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0.2vw;
    color: #FFF;
    text-align: center;
    margin: 0;
    padding: 20px 0 25px;
    background-color: #c61a22;
}
.home-area-text-wrap br {
    display: none;
}

@media (max-width: 1680px){
    .home-intercom-step-wrap span {
        font-size: 1.4rem;
    }
}
@media (max-width: 1480px){
    .home-price-margin-lead {
        font-size: 1.8vw;
    }
    .home-intercom-steptitle-wrap {
        font-size: 1.8rem;
    }
    .home-intercom-step-wrap span {
        font-size: 1.3rem;
        padding: 15px 0;
    }
    .home-intercom-step-wrap span.second02 {
        padding: 13px 0 13px;
    }
    .home-intercom-step-wrap .arrow-wrap {
        top: 30%;
        left: -30px;
        width: 60px;
        height: 60px;
        font-size: 4.8rem;
    }
}
@media (max-width: 1380px){
    .home-intercom-step-wrap span {
        font-size: 1.2rem;
    }
}
@media (max-width: 1300px){
    .home-intercom-step-wrap span {
        font-size: 1.1rem;
    }
}
@media (max-width: 1200px){
    .home-price-margin-lead {
        font-size: 2.0vw;
    }
    .home-intercom-steptitle-wrap {
        font-size: 1.6rem;
    }
    .home-intercom-step-wrap span {
        font-size: 1.0rem;
    }
}
@media (max-width: 990px){
    .home-price-section {
        padding: 90px 0 90px;
    }
    .home-price-title {
        font-size: 4.8vw;
        margin: 0 0 40px;
    }
    .home-price-margin-lead {
        font-size: 3.0vw;
        margin: 0 0 30px;
    }
    .home-intercom-steptitle-wrapper {
        margin-left: 10px;
        margin-right: 10px;
        margin-bottom: 40px;
    }
    .home-intercom-steptitle-wrap {
        font-size: 3.0vw;
        line-height: 1.4;
        padding: 15px 0 20px;
        background-color: #111;
        border-right: none;
        margin-bottom: 10px;
    }
    .home-intercom-step-wrap {
        border-right: none;
        margin-bottom: 10px;
    }
    .home-intercom-step-wrap img.pcimg {
        display: none;
    }
    .home-intercom-step-wrap img.spimg {
        display: block;
    }
    .home-intercom-step-wrap span {
        font-size: 2.4vw;
    }
    .home-intercom-step-wrap span.second02 {
        padding: 15px 0;
    }
    .home-intercom-step-wrap .arrow-wrap {
        position: absolute;
        top: -45px;
        left: 5%;
        width: 80px;
        height: 80px;
        font-size: 6.0rem;
        transform: rotate(90deg);
    }
    .home-intercom-slide-textwrap {
        display: block;
        height: auto;
        font-size: 3.6vw;
        margin: 0 0 20px;
        padding: 20px 0 25px;
    }

    .home-area-section {
        padding: 90px 5% 70px;
    }
    .home-area-text-wrap {
        display: block;
        height: auto;
        font-size: 3.6vw;
        margin: 0 0 20px;
        padding: 20px 0 25px;
    }
}
@media (max-width: 749px){
}
@media (max-width: 499px){
    .home-price-section {
        padding: 50px 0 50px;
    }
    .home-price-title {
        font-size: 7.2vw;
        line-height: 1.0;
        margin: 0 0 30px;
    }
    .home-price-margin-lead {
        font-size: 2.0rem;
        margin: 0 0 20px;
    }
    .home-price-margin-lead br {
        display: block;
    }
    .home-intercom-steptitle-wrapper {
        margin-left: 5px;
        margin-right: 5px;
        margin-bottom: 40px;
    }
    .home-intercom-steptitle-wrap {
        font-size: 1.6rem;
    }
    .home-intercom-step-wrap span {
        font-size: 1.6rem;
        padding: 20px 10px;
    }
    .home-intercom-step-wrap span.second02 {
        padding: 20px 10px;
    }
    .home-intercom-step-wrap .arrow-wrap {
        position: absolute;
        top: -25px;
        left: 50%;
        width: 40px;
        height: 40px;
        font-size: 3.0rem;
        margin-left: -20px;
    }
    .home-intercom-slide-textwrap {
        font-size: 6.0vw;
        line-height: 1.4;
        padding: 20px 0 20px;
    }
    .home-intercom-slide-textwrap br {
        display: block;
    }

    .home-area-section {
        padding: 50px 7% 40px;
    }
    .home-area-text-wrap {
        font-size: 6.0vw;
        line-height: 1.4;
        padding: 20px 0 20px;
    }
    .home-area-text-wrap br {
        display: block;
    }
    .home-area-map-wrap img.pcimg {
        display: none;
    }
    .home-area-map-wrap img.spimg {
        display: block;
    }
}

/*!------------------------------------------------------------------
[Home Price Section] 2024.0416 追記　ここまで
*/


/*!------------------------------------------------------------------
[Home Quotation Section]
*/

.home-quotation-section {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 100px 0 110px;
    background-color: #333;
}
.home-quotation-title {
    font-size: 3.0vw;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.5;
    text-align: center;
    color: #FFF;
    margin: 0 0 60px;
}
.home-quotation-wrapper {
    width: 1200px;
    margin: 0 auto;
    padding: 0;
}
.home-quotation-text {
    display: block;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.6;
    color: #FFF;
    text-align: center;
    margin: 0 0 50px;
    padding: 0;
}
.home-quotation-title-wrap-left {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 10px 10%;
    border-right: solid 1px #FFF;
}
.home-quotation-title-wrap-right {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 10px 10%;
}
.home-quotation-subtitle {
    display: block;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.0;
    color: #FFF;
    text-align: center;
    margin: 0;
    padding: 30px;
}
.home-quotation-subtitle span {
    display: block;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.0;
    color: #FFF;
    text-align: center;
    margin: 0;
    padding: 10px 0 0;
}

a.home-quotation-contact-tel {
    display: block;
    font-size: 4.8rem;
    font-weight: 600;
    font-family: 'Roboto', sans-serif;
    line-height: 1.0;
    letter-spacing: 1px;
    color: #FFF;
    text-align: center;
    margin: 0;
    padding: 5px 0;
}

@media (max-width: 1200px){
    .home-quotation-wrapper {
        width: 90%;
    }
}
@media (max-width: 990px){
    .home-quotation-section {
        padding: 100px 0px 90px;
    }
    .home-quotation-wrapper {
        width: 80%;
    }
    .home-quotation-text {
        font-size: 1.8rem;
        text-align: left;
        margin: 0 0 10px;
    }
    .home-quotation-text br {
        display: none;
    }
    .home-quotation-title-wrap-left {
        height: auto;
        padding: 10px 0;
        border-right: none;
    }
    .home-quotation-subtitle span {
        font-size: 1.6rem;
    }
}
@media (max-width: 749px){
}
@media (max-width: 499px){
    .home-quotation-section {
        padding: 50px 0px 50px;
    }
    .home-quotation-text {
        font-size: 1.6rem;
    }
    .home-quotation-subtitle {
        font-size: 5.6vw;
        padding: 20px 0;
    }
    .home-quotation-subtitle span {
        font-size: 1.4rem;
    }
    .home-quotation-title-wrap-right {
        height: auto;
        padding: 10px 0;
    }
    a.home-quotation-contact-tel {
        font-size: 9.6vw;
        padding: 0;
    }
}


/* Btn Intercom 100p Center
 * --------------------------------------- */
.linkbutton-center-100p {
    display: block;
    position: relative;
    width: 300px;
    height: 60px;
    text-align: left;
    margin: 0 auto;
    padding: 0 20px;
    background: #FFF;
    line-height: 55px;
    border: solid 2px #000;
}
.linkbutton-center-100p::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #c61a22;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-center-100p:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-center-100p .text {
    display: block;
    position: relative;
    font-size: 1.8rem;
    font-weight: 600;
    letter-spacing: 0;
    color: #000;
    text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-center-100p:hover {
    border: solid 2px #c61a22;
}
.linkbutton-center-100p:hover .text {
    color: #FFF;
}
.linkbutton-center-100p .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #000000;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-center-100p:hover .arrow {
    border-color: transparent transparent transparent #FFF;
    right: 25px;
}

@media (max-width: 990px){
    .linkbutton-center-100p {
        width: 80%;
    }
}
@media (max-width: 749px){
}
@media (max-width: 499px){
    .linkbutton-center-100p {
        width: 100%;
        height: auto;
        text-align: center;
        margin: 0 auto 0;
        padding: 10px 20px;
        line-height: 1.4;
    }
    .linkbutton-center-100p .text {
        font-size: 1.6rem;
    }
}



/* Btn Intercom 300p Center
 * --------------------------------------- */
 .linkbutton-center-300p {
    display: block;
    position: relative;
    width: 300px;
    height: 60px;
    text-align: left;
    margin: 50px auto 0;
    padding: 0 20px;
    background: #FFF;
    line-height: 55px;
    border: solid 2px #000;
}
.linkbutton-center-300p::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #c61a22;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-center-300p:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-center-300p .text {
    display: block;
    position: relative;
    font-size: 1.8rem;
    font-weight: 600;
    letter-spacing: 0;
    color: #000;
    text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-center-300p:hover {
    border: solid 2px #c61a22;
}
.linkbutton-center-300p:hover .text {
    color: #FFF;
}
.linkbutton-center-300p .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #000000;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-center-300p:hover .arrow {
    border-color: transparent transparent transparent #FFF;
    right: 25px;
}

@media (max-width: 990px){
    .linkbutton-center-300p {
        width: 80%;
        margin: 20px auto 0;
    }
}
@media (max-width: 749px){
}
@media (max-width: 499px){
    .linkbutton-center-300p {
        width: 100%;
        height: auto;
        text-align: center;
        margin: 10px auto 0;
        padding: 10px 20px;
        line-height: 1.4;
    }
    .linkbutton-center-300p .text {
        font-size: 1.6rem;
    }
}



/*!------------------------------------------------------------------
[Home Process Section]
*/

.home-process-content-section {
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 100px 10% 110px;
    background-color: #FFF;
}
.home-process-title {
    font-size: 3.0vw;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.5;
    text-align: center;
    color: #000;
    margin: 0 0 60px;
}
.second-works-flow-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
	margin: 0;
}

.f-right {
	flex-direction: row-reverse;
}

.features__item02 {
	text-align: left;
	background: linear-gradient(to right, #F5F5F5, #FFFFFF);
	padding: 0;
	border: solid 1px #111;
}

dl.item-flow02 {
    width: 100%;
	height: 70px;
    padding: 0;
    margin: 0;
}
dl.item-flow02 dt {
	display: flex;
	align-items: center;
    float: left;
    width: 70px;
	height: 70px;
    padding: 0;
    margin: 0;
}
dl.item-flow02 dd {
	display: flex;
    justify-content: center;
	align-items: center;
    margin-left: 70px;
    margin-right: 70px;
	height: 70px;
    padding: 0;
	color: #000;
}
dl.item-flow02 dt .features__item__icon_step {
	display: block;
    width: 70px;
    height: 70px;
	font-size: 3.0rem;
	font-weight: 600;
    font-family: 'Roboto', sans-serif;
	color: #FFF;
	line-height: 1.0;
	letter-spacing: 0;
	margin: 0 auto;
	background-color: #023C82;
	text-align: center;
	padding: 10px;
}
dl.item-flow02 dt .features__item__icon_step_text {
	display: block;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.0;
	letter-spacing: 0;
	color: #FFF;
	text-align: center;
	margin: 0 0 5px;
	padding: 0;
}
dl.item-flow02 dd .features__item__heading02 {
	display: block;
    font-size: 2.0rem;
    font-weight: 600;
	color: #000;
    letter-spacing: 2px;
	margin: 0;
	padding: 0;
}

.item-flow02-textwrap {
	display: flex;
	align-items: center;
	height: 70px;
	padding-left: 5%;
	padding-right: 5%;
}
.item-flow02-textwrap .features__item__body02l {
	width: 100%;
	font-size: 1.6rem;
    font-weight: 500;
	letter-spacing: 1px;
	line-height: 1.5;
	text-align: left;
	color: #000;
	margin: 0;
	padding: 0;
}
.item-flow02-textwrap .features__item__body02r {
	width: 100%;
	font-size: 1.6rem;
    font-weight: 500;
	letter-spacing: 1px;
	line-height: 1.5;
	text-align: left;
	color: #000;
	margin: 0;
	padding: 0;
}

.features__item__arrow01 {
    font-size: 3.0rem;
	color: #111;
	text-align: center;
	margin: 20px auto;
}
.features__item__arrow02 {
    font-size: 3.0rem;
	color: #111;
	text-align: center;
	margin: 20px auto;
}

@media (max-width: 1480px){
	.item-flow02-textwrap .features__item__body02l br {
		display: none;
	}
	.item-flow02-textwrap .features__item__body02r br {
		display: none;
	}
}
@media (max-width: 1200px){
    .home-process-content-section {
        padding: 100px 5% 110px;
    }
	.item-flow02-textwrap {
		padding-left: 2%;
		padding-right: 2%;
	}
    dl.item-flow02 dd .features__item__heading02 {
        font-size: 1.8rem;
    }
	.features__item__arrow01 {
		margin: 20px auto;
	}
	.features__item__arrow02 {
		margin: 20px auto;
	}
}
@media (max-width: 990px){
    .home-process-content-section {
        padding: 100px 10% 90px;
    }
    .home-process-title {
        font-size: 4.8vw;
        margin: 0 0 50px;
    }
	.item-flow02-textwrap {
		height: auto;
		padding-top: 20px;
		padding-bottom: 0;
		padding-left: 5%;
		padding-right: 5%;
	}
    dl.item-flow02 dd .features__item__heading02 {
        font-size: 2.0rem;
    }
	.item-flow02-textwrap .features__item__body02r {
		text-align: left;
	}
	.features__item__arrow01 {
		margin: 10px auto;
	}
	.features__item__arrow02 {
		margin: 10px auto;
	}
}
@media (max-width: 499px){
    .home-process-content-section {
        padding: 50px 7% 50px;
    }
    .home-process-title {
        font-size: 7.2vw;
        margin: 0 0 30px;
    }
	.item-flow02-textwrap {
		padding-top: 10px;
        padding-left: 2%;
        padding-right: 2%;
	}
    dl.item-flow02 dd {
        margin-left: 40px;
        margin-right: 40px;
    }
	.features__item__arrow01 {
		margin: 0 auto 8px;
	}
	.features__item__arrow02 {
		margin: 0 auto 8px;
	}
    .item-flow02-textwrap .features__item__body02l {
        padding: 0;
        line-height: 1.4;
    }
	.item-flow02-textwrap .features__item__body02r {
        padding: 0;
        line-height: 1.4;
	}
}



/*!------------------------------------------------------------------
[Home Q&A Section]
*/

.home-qanda-content-section {
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 100px 10% 110px;
    background-color: #F0F0F0;
}

.home-qanda-title {
    font-size: 3.0vw;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.5;
    text-align: center;
    color: #000;
    margin: 0 0 60px;
}

.home-qanda-title-lead {
    display: block;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.0;
    letter-spacing: 4px;
    color: #111;
    text-align: center;
    margin: 0;
    padding: 0 0 40px 4px;
}

.home-qanda-content-wrapper {
    margin: 0;
    padding: 0;
}


/*アコーディオン全体*/
.accordion-area {
    list-style: none;
    width: 100%;
    margin: 0 auto;
}

.accordion-area li {
    margin: 10px 0;
}

.accordion-area section {
    border: 1px solid #000;
}

/*アコーディオンタイトル*/
.accordion-area section .title {
    position: relative;
    /*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size: 2.0rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-align: left;
    color: #000;
    padding: 3% 3% 3% 70px;
    transition: all .5s ease;
}

.accordion-area section .title:hover {
    color: #c61a22;
}

.accordion-area section .title span {
    display: block;
    font-size: 1.6rem;
    font-family: 'Roboto', sans-serif;
    font-weight: 600;
    letter-spacing: 0;
    padding: 0 0 10px;
    color: #023C82;
}

/*アイコンの＋と×*/
.accordion-area section .title::before,
.accordion-area section .title::after {
    position: absolute;
    content: '';
    width: 15px;
    height: 1px;
    background-color: #000;

}

.accordion-area section .title::before {
    top: 48%;
    left: 30px;
    transform: rotate(0deg);

}

.accordion-area section .title::after {
    top: 48%;
    left: 30px;
    transform: rotate(90deg);

}

/*　closeというクラスがついたら形状変化　*/
.accordion-area section .title.closed::before {
    transform: rotate(45deg);
}

.accordion-area section .title.closed::after {
    transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.accordion-area section .box {
    display: none;
    /*はじめは非表示*/
    background: #FFF;
    margin: 0 3% 3% 3%;
    padding: 3%;
}

.accordion-area section .box p {
    display: block;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 1px;
    text-align: left;
    color: #000;
    margin: 0;
    padding: 0;
}

.accordion-area section .box p span {
    display: block;
    font-size: 1.6rem;
    font-family: 'Roboto', sans-serif;
    font-weight: 600;
    letter-spacing: 0;
    color: #c61a22;
    padding: 0 0 10px;
}

.accordion-area section .box p img.spimg {
    display: none;
}

@media (max-width: 1480px) {
    .home-qanda-content-section {
        padding: 8% 5% 8%;
    }
}

@media (max-width: 1200px) {
    .accordion-area section .title {
        font-size: 1.8rem;
    }

    .accordion-area section .box p img.pcimg {
        display: none;
    }

    .accordion-area section .box p img.spimg {
        display: block;
    }
}

@media (max-width: 990px) {
    .home-qanda-content-section {
        padding: 100px 10% 90px;
    }

    .accordion-area section .title:hover {
        color: #111;
    }
}

@media (max-width: 499px) {
    .home-qanda-content-section {
        padding: 50px 7%;
    }

    .home-qanda-content-wrapper {
        margin: 0;
    }

    .home-qanda-title {
        margin: 0 0 20px;
    }

    .home-qanda-title-wrapper {
        margin: 0;
    }

    .accordion-area section .box {
        padding: 5%;
    }

    .accordion-area section .box p {
        line-height: 1.5;
        letter-spacing: 0;
    }
    .accordion-area section .title span {
        font-size: 1.8rem;
    }
    .accordion-area section .box p span {
        font-size: 1.8rem;
    }
}



/*!------------------------------------------------------------------
[Home Company Section]
*/
.home-company-section {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 100px 2.5% 110px;
    background-image: url(../assets/img/home-company-bg.jpg);
    background-size: cover;
    background-position: center center;
}
.home-company-title {
    font-size: 3.0vw;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.5;
    text-align: center;
    color: #FFF;
    margin: 0 0 100px;
}
.home-company-title-wrap {
    padding: 0 5%;
}
.home-company-subtitle {
    display: block;
    font-size: 2.4vw;
    font-weight: 600;
    line-height: 1.5;
    color: #FFF;
    margin: 0 0 50px;
    padding: 0;
}
.home-company-text {
    display: block;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.8;
    color: #FFF;
    margin: 0 0 80px;
    padding: 0;
}

@media (max-width: 1200px){
    .home-company-section {
        padding: 100px 5% 100px;
    }
    .home-company-title-wrap {
        padding: 0;
    }
    .home-company-title {
        font-size: 3.0vw;
        margin: 0 0 70px;
    }
    .home-company-subtitle {
        font-size: 2.6vw;
    }
    .home-company-subtitle br {
        display: none;
    }
    .home-company-text {
        font-size: 1.6rem;
        line-height: 1.6;
        margin: 0 0 60px;
    }
}
@media (max-width: 990px){
    .home-company-section {
        padding: 100px 12% 90px;
    }
    .home-company-subtitle {
        font-size: 2.4vw;
        text-align: center;
    }
}
@media (max-width: 749px){
}
@media (max-width: 499px){
    .home-company-section {
        padding: 50px 12% 50px;
        background-image: url(../assets/img/home-company-sp-bg.jpg);
    }
    .home-company-title {
        font-size: 7.2vw;
        margin: 0 0 30px;
    }
    .home-company-subtitle {
        font-size: 4.8vw;
        margin: 0 0 30px;
    }
    .home-company-subtitle br {
        display: block;
    }
    .home-company-text {
        line-height: 1.5;
        margin: 0 0 30px;
    }
}


/*!----------------------------------
[Table Overview]
*/

table.overview {
    width: 100%;
    margin: 0 auto;
    border-collapse: separate;
    border-spacing: 20px 0;
}
table.overview th {
    width: 20%;
    font-size: 1.6rem;
    font-weight: 600;
    color: #FFF;
    letter-spacing: 1px;
    vertical-align: middle;
	text-align: center;
    padding: 1.5em 1.0em;
    border-bottom: solid 1px #FFF;
}
table.overview th.first {
    border-top: solid 1px #FFF;
}
table.overview th span {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0px;
}
table.overview td {
    width: 75%;
    text-align: left;
    vertical-align: middle;
    font-size: 1.6rem;
    font-weight: 500;
    color: #FFF;
    letter-spacing: 1px;
    line-height: 1.6;
    padding: 1.5em 1.0em;
    border-bottom: solid 1px #FFF;
}
table.overview td.first {
    border-top: solid 1px #FFF;
}
table.overview td a {
    display: inline-block;
    font-size: 1.8rem;
    font-weight: 400;
    color: #FFF;
    letter-spacing: 0px;
    line-height: 1.0;
    padding: 5px 0 0;
}
table.overview td a:hover {
    color: #FFF;
}
table.overview td a.tel {
    font-size: 1.8rem;
    font-weight: 400;
    color: #FFF;
    letter-spacing: 1px;
    line-height: 1.6;
    padding: 0;
}

.office-gmap {
    position: relative;
    width: 100%;
    height: 400px;
    overflow: hidden;
    border-radius: 20px;
}
.office-gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.office-gmap-title {
	display: block;
    font-size: 1.8rem;
    font-weight: 500;
    color: #FFF;
    letter-spacing: 1px;
    line-height: 1.5;
    padding: 30px 0 10px;
    margin: 0;
}
.office-gmap-text {
	display: block;
    font-size: 1.6rem;
    font-weight: 400;
    color: #FFF;
    letter-spacing: 0;
    line-height: 1.5;
    padding: 20px 0 0;
    margin: 0;
}

dl.overview-content-wrap {
    width: 100%;
    padding: 0;
    margin: 0;
}
dl.overview-content-wrap dt {
    float: left;
    width: 25px;
    font-size: 1.6rem;
    font-weight: 400;
    color: #FFF;
    text-align: left;
    line-height: 1.4;
    padding: 5px 0;
    margin: 0;
}
dl.overview-content-wrap dd {
    margin-left: 25px;
    font-size: 1.6rem;
    font-weight: 400;
    text-align: left;
    line-height: 1.4;
    letter-spacing: 1px;
    color: #FFF;
    padding: 5px 0;
}
dl.overview-content-wrap dd span {
	display: block;
    font-size: 1.6rem;
    font-weight: 600;
	padding: 0 0 10px;
}

@media (max-width: 1480px){
	table.overview {
		width: 100%;
	}
	table.overview th {
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 1.5em 1.0em;
	}
	table.overview td {
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 1.5em 1.0em;
	}
	table.overview td a {
		font-size: 1.6rem;
		padding: 5px 0 0;
	}
	table.overview td a.tel {
		font-size: 1.6rem;
		letter-spacing: 0;
		line-height: 1.6;
	}
	table.overview td a.address-gm {
		font-size: 1.2rem;
		padding: 10px 0 15px;
	}
	dl.overview-content-wrap dt {
		font-size: 1.6rem;
		padding: 10px 0;
	}
	dl.overview-content-wrap dd {
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 10px 0;
	}
	dl.overview-content-wrap dd span {
		font-size: 1.6rem;
		padding: 0 0 10px;
	}
	.office-gmap-title {
		font-size: 1.6rem;
		letter-spacing: 0;
	}
}
@media (max-width: 1200px){
	table.overview {
		width: 100%;
        margin-top: 70px;
	}
}
@media (max-width: 990px){
	dl.overview-content-wrap dt {
		padding: 5px 0;
	}
	dl.overview-content-wrap dd {
		padding: 5px 0;
	}
}
@media (max-width: 749px){
	table.overview td a.address-gm {
		font-size: 1.4rem;
	}
}
@media (max-width: 499px){
	table.overview {
		width: 100%;
		border-spacing: 0px 0;
        margin-top: 50px;
	}
	table.overview th {
		display: block;
		width: 100%;
		font-size: 1.8rem;
		letter-spacing: 0;
		text-align: left;
		padding: 1.0em 0.5em 0.3em;
		border-bottom: none;
	}
	table.overview th br {
		display: none;
	}
	table.overview td {
		display: block;
		width: 100%;
		font-size: 1.6rem;
		font-weight: 600;
		letter-spacing: 0;
		padding: 0 0.5em 1.0em;
	}
	table.overview td.first {
		border-top: none;
	}
	table.overview td span {
		display: block;
	}
	table.overview td a.tel {
		font-size: 1.8rem;
		letter-spacing: 0;
		line-height: 1.6;
	}
	table.overview td a.address-gm {
		font-size: 1.6rem;
		padding: 10px 0 15px;
	}
	dl.overview-content-wrap dt {
		font-size: 1.6rem;
		font-weight: 600;
	}
	dl.overview-content-wrap dd {
		font-size: 1.6rem;
		font-weight: 600;
	}
	.office-gmap-title {
		font-size: 1.6rem;
		letter-spacing: 0;
		text-align: center;
	}
}


/* Contact Section Btn
 * --------------------------------------- */

.linkbutton-footer {
    display: block;
    position: relative;
    width: 78%;
    height: 50px;
    line-height: 45px;
    text-align: center;
	margin: 0 auto;
    padding: 0 20px;
    background-color: #C81323;
    transition: all .4s ease-out;
}
.linkbutton-footer::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #023C82;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-footer:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-footer .text {
    display: inline-block;
    position: relative;
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: 0;
    color: #FFF;
	text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-footer:hover .text {
    color: #FFF;
}
.linkbutton-footer .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #FFF;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-footer:hover .arrow {
    border-color: transparent transparent transparent #FFF;
    right: 25px;
}


/*!------------------------------------------------------------------
[Home Footer Section]
*/

#footer-inner {
	padding: 6% 5% 6%;
    background-color: #E2E2E2;
}

.footer-logo {
	display:inline-block;
	width: 75%;
    margin: 0 0 25px;
	padding: 0;
}
#footer  p.description {
	width: 80%;
	font-size: 1.4rem;
    margin-bottom: 30px;
}
#footer  p.description br {
    display: none;
}
address {
    margin-bottom: 0px;
}
dl.access-company {
    width: 100%;
    padding: 0 0 20px;
    margin: 0;
}
dl.access-company dt {
	display: block;
    width: 100%;
    font-size: 1.4rem;
    font-weight: 600;
    color: #000;
    text-align: left;
    line-height: 1.0;
    padding: 0 0 10px;
}
dl.access-company dd {
	display: block;
    font-size: 1.4rem;
    font-weight: 400;
    color: #000;
    text-align: left;
    line-height: 1.5;
    padding: 0;
}
dl.access-company dd a.g-map {
	display: block;
    font-size: 1.2rem !important;
    font-weight: 400 !important;
    color: #000 !important;
    text-align: left;
    line-height: 1.5;
    padding: 5px 0 10px;
}
.footer-tel-wrap {
    display: block;
    margin: 0 0 5px;
    padding: 0;
}
.footer-tel-wrap a {
    font-size: 1.8vw !important;
    font-weight: 600 !important;
    font-family: 'Roboto', sans-serif;
    line-height: 1.0;
    letter-spacing: 0;
    color: #000 !important;
    margin: 0;
    padding: 0;
}
.footer-tel-wrap a span {
    display: inline-block;
    font-size: 1.3vw !important;
    padding: 0 10px 0 0;
}


.footer-right-menu-warp {
    margin-left: 5%;
    margin-right: 0;
}
#footer .widget {
	padding: 0 10% 0 0;
}
#footer .widget h4 {
	font-size: 1.6rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
	text-transform: uppercase;
	margin-top: 20px;
	margin-bottom: 20px;
	color:#000;
}
#footer .widget h4:after {
	content:'';
	display:block;
	width:25px;
	height:3px;
	position: relative;
	top:8px;
	left:0;
    background-color: #023C82;
}
#footer .widget .links li a {
	font-size: 1.4rem;
	line-height: 2.2;
}

#footer .widget .links li a > i {
	margin-right: 5px;
}

#footer .widget .products-list p {
	font-weight: 600;
}


.footer-commentary-wrap {
    width: 100%;
	margin-top: 4%;
}
.footer-commentary-01 {
    display: block;
    font-size: 1.7vw;
    font-weight: 600;
    line-height: 1.4;
    text-align: center;
    color: #000;
    margin: 0 0 25px;
    padding: 20px;
    background-color: #FFF;
}
.footer-commentary-02 {
    display: block;
    font-size: 1.1vw;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.4;
    text-align: center;
    color: #000;
    margin: 0 0 40px;
    padding: 20px;
    background-color: #FFF;
}
.footer-contact-tel-wrap {
    display: block;
    margin: 0;
    padding: 0;
}
.footer-contact-tel-wrap a {
    display: block;
    font-size: 4.8vw !important;
    font-weight: 600 !important;
    font-family: 'Roboto', sans-serif;
    line-height: 1.0;
    letter-spacing: 0;
    color: #000;
    text-align: center;
    margin: 0;
    padding: 0;
}
.footer-contact-tel-wrap a span {
    display: inline-block;
    font-size: 3.0vw !important;
    letter-spacing: 0;
    padding: 0 20px 0 0;
}
.footer-contact-tel-uke {
    display: block;
    font-size: 0.9vw;
    font-weight: 500;
    line-height: 1.0;
    letter-spacing: 0;
    color: #000;
    text-align: center;
    margin: 0;
    padding: 5px 0 0;
}


/* Footer Contact Btn
 * --------------------------------------- */
 .footer-right-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 0;
} 

.linkbutton-footer-right {
    display: block;
    position: relative;
    width: 100%;
    height: 50px;
    line-height: 45px;
    text-align: center;
	margin: 0 auto;
    padding: 0 20px;
    background-color: #C81323;
    transition: all .4s ease-out;
}
.linkbutton-footer-right::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #023C82;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-footer-right:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-footer-right .text {
    display: inline-block;
    position: relative;
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: 0;
    color: #FFF;
	text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-footer-right:hover .text {
    color: #FFF;
}
.linkbutton-footer-right .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #FFF;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-footer-right:hover .arrow {
    border-color: transparent transparent transparent #FFF;
    right: 25px;
}


.footer-inverse #footer-bottom {
    background-color: #023C82;
}
#footer  p.copyright {
	font-size: 1.2rem;
	letter-spacing: 0;
	line-height: 1.0;
    color: #FFF;
    text-align: center;
	margin: 0;
	padding: 20px 0;
}

@media (max-width: 1480px){
    .footer-commentary-01 {
        font-size: 1.8vw;
    }
    .footer-commentary-02 {
        font-size: 1.2vw;
    }
}
@media (max-width: 1380px){
}
@media (max-width: 1300px){
	#footer .widget .links li a {
		font-size: 1.3rem;
	}
}
@media (max-width: 1200px){
	#footer-inner {
		padding: 8% 5% 7%;
	}
	.footer-logo {
		display: block;
		width: 300px;
		margin: 0 auto 40px;
	}
    #footer  p.description {
        width: 100%;
        font-size: 1.6rem;
        text-align: center;
    }
    #footer  p.description br {
		display: block;
    }
    dl.access-company dt {
        font-size: 1.6rem;
        text-align: center;
    }
    dl.access-company dd {
        font-size: 1.6rem;
        text-align: center;
    }
    dl.access-company dd a.g-map {
        font-size: 1.4rem !important;
        text-align: center;
    }
    .footer-tel-wrap a {
        font-size: 2.4rem !important;
    }
    .footer-tel-wrap a span {
        font-size: 1.8rem !important;
    }
	#footer .widget {
		padding: 0 0;
	}
    #footer .widget .links li a {
        font-size: 1.5rem;
    }
	.footer-commentary-wrap {
		margin-top: 5%;
	}
	.footer-commentary-01 {
		font-size: 2.2vw;
		letter-spacing: 1px;
	}
	.footer-commentary-02 {
		font-size: 1.6vw;
		line-height: 1.5;
	}
	.footer-contact-tel-wrap a {
		font-size: 6.0vw !important;
	}
	.footer-contact-tel-wrap a span {
		font-size: 4.8vw !important;
	}
	.footer-contact-tel-uke {
		font-size: 1.4vw;
		padding: 10px 5% 20px 0;
	}
	.linkbutton-footer {
		padding: 0 10px;
		width: 100%;
	}
	.linkbutton-footer .text {
		font-size: 1.4rem;
	}
	.linkbutton-footer-right {
		padding: 0 10px;
		width: 100%;
	}
	.linkbutton-footer-right .text {
		font-size: 1.4rem;
	}
}
@media (max-width: 990px){
    .footer-logo {
        margin: 0 auto 30px;
    }
	#footer  p.description {
		font-size: 1.6rem;
        text-align: left;
	}
	#footer  p.description br {
        display: none;
	}
	dl.access-shop dt {
		font-size: 1.6rem;
	}
	dl.access-shop dd {
		font-size: 1.6rem;
	}
	dl.access-shop dd a.g-map {
		font-size: 1.4rem !important;
	}
	.footer-tel-wrap a {
		font-size: 4.8vw !important;
	}
	.footer-tel-wrap a span {
		font-size: 3.0vw !important;
	}
	#footer .widget .links li a {
		font-size: 1.6rem;
	}
	.footer-menu li a {
		font-size: 1.6rem;
	}
	.footer-commentary-wrap {
		margin-top: 8%;
	}
	.footer-commentary-01 {
		font-size: 2.4vw;
	}
	.footer-commentary-02 {
		font-size: 1.8vw;
	}
	.footer-commentary-02 br {
		display: none;
	}
	.footer-contact-tel-wrap a {
		font-size: 9.2vw !important;
	}
	.footer-contact-tel-wrap a span {
		font-size: 6.0vw !important;
	}
	.footer-contact-tel-uke {
		font-size: 2.0vw;
		padding: 10px 5% 30px 0;
	}
	#footer p.copyright {
		font-size: 1.4rem;
		padding: 20px 0;
	}
}
@media (max-width: 749px){
	#footer .widget .links li a {
		font-size: 1.4rem;
	}
	.footer-menu li a {
		font-size: 1.4rem;
	}
}
@media (max-width: 499px){
	#footer-inner {
		padding: 40px 8% 40px;
	}
    .footer-logo {
        width: 250px;
        margin: 0 auto 20px;
    }
	dl.access-shop dt {
		font-size: 1.8rem;
	}
	#footer .widget h4 {
		font-size: 1.8rem;
		margin-top: 15px;
		margin-bottom: 15px;
	}
	.footer-tel-wrap a {
		font-size: 7.2vw !important;
	}
	.footer-tel-wrap a span {
		font-size: 4.8vw !important;
	}
	.footer-commentary-wrap {
		margin-top: 20px;
	}
    dl.access-company {
        padding: 0;
    }
	.footer-commentary-01 {
		font-size: 1.8rem;
        letter-spacing: 0px;
        text-align: left;
	}
	.footer-commentary-02 {
		font-size: 1.6rem;
		letter-spacing: 0;
        text-align: left;
        margin: 0 0 30px;
	}
	.footer-contact-tel-wrap a {
		font-size: 8.4vw !important;
		text-align: center;
	}
	.footer-contact-tel-wrap a span {
		font-size: 4.8vw !important;
		padding: 0 10px 0 0;
	}
	.footer-contact-tel-uke {
		font-size: 3.4vw;
		padding: 10px 0 30px 0;
	}
	#footer p.copyright {
		font-size: 1.2rem;
		padding: 15px 0;
	}
    #footer .widget {
        padding: 0 0 10px;
    }
	#footer .widget .links li a {
		font-size: 1.6rem;
	}
	.footer-menu li a {
		font-size: 1.6rem;
	}
    .footer-inverse #footer-bottom {
        margin-bottom: 80px;
    }
}


/* Btn Intercom Center
 * --------------------------------------- */
 #footer .homebtn {
    width: 80%;
}
.linkbutton-center-f100p {
    display: block;
    position: relative;
    width: 100%;
    height: 50px;
    text-align: left;
    margin: 0 auto;
    padding: 0 20px;
    background: #FFF;
    line-height: 45px;
    border: solid 2px #000;
}
.linkbutton-center-f100p::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: #c61a22;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
.linkbutton-center-f100p:hover::before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1,1);
    -ms-transform: scale(1,1);
    transform: scale(1,1);
}
.linkbutton-center-f100p .text {
    display: block;
    position: relative;
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0;
    color: #000;
    text-align: center;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-center-f100p:hover {
    border: solid 2px #c61a22;
}
.linkbutton-center-f100p:hover .text {
    color: #FFF;
}
.linkbutton-center-f100p .arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 12px;
    border-color: transparent transparent transparent #000000;
    position: absolute;
    right: 20px;
    top: 45%;
    margin-top: -3px;
    transition: all .3s;
    -webkit-transition: all .3s;
    z-index: 2;
}
.linkbutton-center-f100p:hover .arrow {
    border-color: transparent transparent transparent #FFF;
    right: 25px;
}

@media (max-width: 1200px){
    #footer .homebtn {
       width: 100%;
   }
}
@media (max-width: 990px){
    .linkbutton-center-f100p {
        width: 100%;
    }
}
@media (max-width: 749px){
}
@media (max-width: 499px){
    .linkbutton-center-f100p {
        width: 300px;
        height: auto;
        text-align: center;
        margin: 40px auto 0;
        padding: 10px 20px;
        line-height: 1.4;
    }
    .linkbutton-center-f100p .text br {
        display: block;
    }
}



/*!------------------------------------------------------------------
[Scroll UP]
*/

.scroll-up {
    position: fixed;
    display: none;
    bottom: 0px;
    right: 0px;
    z-index: 999;
}
.scroll-up a {
    display: block;
    height: 50px;
    width: 50px;
    text-align: center;
    line-height: 50px;
    font-size: 2.0rem;
    color: #FFF;
    opacity: 1.0;
    background-color: #023C82;
}
.scroll-up a:hover, .scroll-up a:active {
    opacity: 1;
}

@media (max-width: 1480px){
	.scroll-up {
		bottom: 0px;
		right: 0px;
	}
}
@media (max-width: 1200px){
	.scroll-up {
		bottom: 0px;
		right: 0px;
	}
}
@media (max-width: 749px){
	.scroll-up {
		bottom: 80px;
		right: 0px;
	}
	.scroll-up a {
		height: 40px;
		width: 42px;
		line-height: 40px;
		font-size: 16px;
	}
	.scroll-up a::after {
		top: 1.3em;
		right: 0.5em;
	}
}



 /* ------------------------------------------------------------------
contact.html
------------------------------------------------------------------- */
.home-contact-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 100px 10% 100px;
    margin: 0;
    background-color: #FFF;
}
.home-contact-title {
    font-size: 3.0vw;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.5;
    text-align: center;
    color: #000;
    margin: 0 0 60px;
}
p.contacts-txt-title {
    display: block;
    width: 100%;
    color: #222;
	font-size: 1.8rem;
	font-weight: 400;
    letter-spacing: 0;
	line-height: 1.4;
    padding: 0 0 60px;
    margin: 0;
	text-align: center;
}
p.contacts-txt-title br {
    display: none;
}

p.contacts-txt-titles {
    display: block;
    width: 100%;
    color: #222;
	font-size: 1.8rem;
	font-weight: 400;
    letter-spacing: 0;
	line-height: 1.5;
    padding: 0;
    margin: 0;
	text-align: center;
}
p.contacts-txt-title-name {
    display: block;
    width: 100%;
    color: #222;
	font-size: 1.8rem;
	font-weight: 400;
    letter-spacing: 1px;
	line-height: 1.0;
    padding: 0 0 20px;
    margin: 0;
	text-align: center;
}
p.contacts-txt-title-address {
    display: block;
    width: 100%;
    color: #222;
	font-size: 1.8rem;
	font-weight: 400;
    letter-spacing: 1px;
	line-height: 1.5;
    padding: 0 0 10px;
    margin: 0;
	text-align: center;
}
.contact-01-wrap {
    width: 80%;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    margin-top: 0;
    margin-right: auto;
    margin-bottom: 10px;
    margin-left: auto;
    background-color: #FFF;
}
.item-office-name {
    font-size: 2.0rem;
    font-weight: 700;
    letter-spacing: 10px;
    line-height: 1.0;
    color: #222;
    margin: 0;
    padding: 0 0 10px 10px;
	text-align: center;
}
.item-contacts-l {
    font-size: 4.8vw;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1.0;
    color: #023C82;
    margin: 0;
    padding: 0 0 10px;
	text-align: center;
}
.item-contacts-l a {
    font-size: 4.8vw;
    font-weight: 600;
    font-family: 'Roboto', sans-serif;
    letter-spacing: 0;
    line-height: 1.0;
    color: #023C82;
}
.item-contacts-l-teltime {
    font-size: 1.0vw;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.0;
    color: #222;
    margin: 0;
    padding: 0 0 60px;
	text-align: center;
}
.item-contacts-r {
	font-size: 3.0rem;
	font-weight: 400;
    letter-spacing: 1px;
	line-height: 1.0;
    color: #222;
    margin: 0;
    padding: 0 0 10px;
	text-align: left;
}

@media (max-width: 1480px){
	p.contacts-txt-title {
		font-size: 1.8rem;
	}	
	p.contacts-address {
		font-size: 1.4rem;
	}
	.item-contacts-l {
		font-size: 6.0vw;
	}
	.item-contacts-l a {
		font-size: 6.0vw;
	}
	.item-contacts-l-teltime {
		font-size: 1.2vw;
	}
}
@media (max-width: 1380px){
}
@media (max-width: 1300px){
	h2.contact-detail-text {
		font-size: 1.6rem;
		letter-spacing: 1px;
		line-height: 1.8;
		padding: 40px 0 0;
	}
}
@media (max-width: 1200px){
	p.contacts-txt-title {
		font-size: 1.6rem;
	}	
	h2.contact-detail-text {
		padding: 30px 0 0;
	}
	.item-contacts-l {
		font-size: 7.2vw;
	}
	.item-contacts-l a {
		font-size: 7.2vw;
	}
	.item-contacts-l-teltime {
		font-size: 2.0vw;
		padding: 0 0 60px;
	}
	p.contacts-txt-titles {
		font-size: 1.6rem;
	}
}
@media (max-width: 990px){
    .home-contact-section {
        padding: 100px 10% 90px;
    }
    .home-contact-title {
        font-size: 4.8vw;
        margin: 0 0 50px;
    }
	p.contacts-txt-title {
		font-size: 1.8rem;
		padding: 0 0 40px;
	}
	p.contacts-txt-title br {
		display: block;
	}
	.item-contacts-l-teltime {
		font-size: 1.4rem;
		padding: 0 0 40px;
	}
	p.contacts-txt-titles {
		font-size: 1.6rem;
		letter-spacing: 0;
		padding: 0 0 20px;
	}
	.contact-txt001 {
		font-size: 1.6rem;
		text-align: center;
	}
}
@media (max-width: 749px){
	h2.contact-detail-text {
		font-size: 1.5rem;
	}
	.contact-title01-main {
		width: 220px;
		font-size: 2.0rem;
		letter-spacing: 10px;
		padding: 10px 0;
	}
	.contact-lead {
		font-size: 1.6rem;
		letter-spacing: 1px;
		padding: 0 10% 50px;
	}
	p.contacts-txt-titles br {
		display: none;
	}
}
@media (max-width: 499px){
    .home-contact-section {
        padding: 50px 10% 50px;
    }
    .home-contact-title {
        font-size: 7.2vw;
        margin: 0 0 30px;
    }
    .second-contacts-list-section {
        padding: 40px 9%;
    }
	h2.contact-detail-text {
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 1.6;
		padding: 20px 15px 0;
		text-align: left;
	}
	h2.contact-detail-text br {
		display: none;
	}
	.contact-lead {
		font-size: 1.8rem;
		line-height: 1.5;
		letter-spacing: 0;
		padding: 0;
		text-align: left;
	}
	.contact-lead br {
		display: none;
	}
	p.contacts-txt-titles {
		font-size: 1.6rem;
		letter-spacing: 0px;
		padding: 0 0 40px;
		text-align: left;
	}
	.item-office-name {
		font-size: 1.8rem;
		letter-spacing: 8px;
		padding: 0 0 5px 8px;
	}
	.item-contacts-l a {
		font-size: 9.6vw
	}
	.item-contacts-l {
		font-size: 3.6rem;
		padding: 0 0 5px;
		text-align: center;
	}
	.item-contacts-l i {
		font-size: 3.6rem;
	}
	.item-contacts-l-teltime {
		font-size: 1.4rem;
		letter-spacing: 0;
		padding: 0 0 30px;
	}
	.item-contacts-r {
		font-size: 2.4rem;
		padding: 0 0 20px;
		text-align: center;
	}
	p.contacts-txt-title br {
		display: none;
	}
	p.contacts-txt-title-name {
		font-size: 1.6rem;
	}
	p.contacts-txt-title-address {
		font-size: 1.6rem;
		line-height: 1.4;
	}
	p.contacts-txt-title {
		font-size: 1.8rem;
		letter-spacing: 0;
		line-height: 1.5;
		padding: 0 0 30px;
		text-align: left;
	}
	p.contacts-txt-title br {
		display: none;
	}
	p.contacts-txt-titles {
		font-size: 1.8rem;
		letter-spacing: 0;
		line-height: 1.5;
		padding: 0 0 20px;
		text-align: left;
	}
	p.contacts-txt-titles br {
		display: none;
	}
	p.contacts-address {
		font-size: 1.4rem;
		letter-spacing: 0px;
	}
	p.contacts-address span {
		font-size: 15px;
		padding: 0 0 10px 0;
	}
	dl.item-contacts {
		width: 100%;
		padding: 30px 0;
	}
	dl.item-contacts dd {
		font-size: 2.4rem;
	}
}
@media (max-width: 350px){
	dl.item-contacts dt {
		width: 40px;
		font-size: 2.4rem;
	}
	dl.item-contacts dd {
		margin-left: 40px;
		font-size: 2.4rem;
	}
	p.contacts-address {
		font-size: 1.2rem;
	}
}


/* --------------------------------------
	section-contact
----------------------------------------*/

.contact-inner {
	width: 90%;
	font-size: 1.8rem;
    color: #222;
	line-height: 2.0;
	text-align: left;
	margin: 0 auto;
	padding: 100px 0 0;
}
/* txt */
.tell {
	font-size: 1.6rem;
	line-height: 1.5;
	margin-bottom: 50px;
}
.tell span.num {
	font-size: 4.8rem;
	font-weight: 600;
}
.tell span.time {
	font-size: 1.6rem;
}
.contact-txt001 {
	font-size: 1.6rem;
    font-weight: 400;
	margin-bottom: 10px;
}
.contact-txt001 br {
	display: none;
}
.contact-txt01 {
	margin-bottom: 2em;
}
.contact-txt02 {
	font-size: 1.5rem;
    font-weight: 400;
	margin-bottom: 2em;
}
.contact-txt02 span {
	font-size: 1.8rem;
	display: block;
	margin-bottom: 1em;
}
.contact-txt03 {
	font-size: 1.6rem;
	font-weight: 400;
	margin-bottom: 1.5em;
}
em {
	color: #a40000;
	font-style: normal;
}
em02 {
	font-size: 1.2rem;
	font-weight: 400;
	color: #212121;
	font-style: normal;
}


/* --------------------------------------
	itemBlock
----------------------------------------*/

.itemBlock {
	margin-bottom: 30px;
	line-height: 1;
	font-size: 1.6rem;
}
.itemBlock .title {
	margin-bottom: 20px;
	font-size: 2.0rem;
	font-weight: 600;
}
.itemBlock p {
    margin-bottom: 15px;
	font-size: 1.6rem;
    font-weight: 600;
}
.itemBlock label {
	cursor: pointer;
	display: block;
}
.itemBlock label:after {
	content: "";
	clear: both;
	display: block;
}
	.itemBlock label input { 
		float: left;
		font-size: 1.8rem;
	}
	.itemBlock label input[type="radio"] {
		width: 18px;
		height: 18px;
		margin: 0 0 0 0;
	}
	.itemBlock label p {
		float: left;
		padding: 0 0 0 4px;
		margin: 0;
		width: calc(100% - 24px);
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1.2;
	}


/* --------------------------------------
	contentsBlock
----------------------------------------*/

.contentsBlock {
	line-height: 1.5;
	margin-bottom: 30px;
}
.contentsBlock .title {
	margin-bottom: 20px;
	font-size: 2.0rem;
	font-weight: 600;
}
.contentsBlock .title span {
	font-size: 1.8rem;
}


/* --------------------------------------
	addressBlock
----------------------------------------*/

.addressBlock {
	line-height: 1.5;
	font-size: 1.6rem;
}
.addressBlock .title {
	margin-bottom: 30px;
	font-size: 2.0rem;
	font-weight: 600;
}
.addressBlock p {
	margin-bottom: 15px;
	font-size: 1.8rem;
	font-weight: 600;
}
.addressBlock p span {
	font-size: 1.4rem;
	font-weight: 400;
}
.addressBlock input {
	margin-bottom: 30px;
}


/* --------------------------------------
	privacyBlock
----------------------------------------*/

.privacyBlock {
	line-height: 2;
	font-size: 1.6rem;
	margin-bottom: 60px;
}
.privacyBlock .title {
	font-size: 1.8rem;
	font-weight: 600;
	margin-bottom: 15px;
}
.privacyBlock label {
	cursor: pointer;
	display: block;
}
.privacyBlock label:after {
	content: "";
	clear: both;
	display: block;
}
	.privacyBlock label input { 
		float: left;
		font-size: 1.6rem;
	}
	.privacyBlock label input[type="checkbox"] {
		width: 18px;
		height: 18px;
		margin: 0 0 0 0;
	}
	.privacyBlock p {
		font-size: 1.6rem;
		font-weight: 600;
		line-height: 1.5;
		padding: 0 0 10px 10px;
	}
	.privacyBlock label p {
		float: left;
		padding: 0 0 0 4px;
		margin: 0;
		width: calc(100% - 24px);
		font-size: 1.8rem;
		line-height: 1.2;
	}
.privacyBlock a {
	text-decoration: underline;
	font-size: 1.8rem;
	font-weight: 400;
	color: #5C5E5D;
}
.privacyBlock a:hover {
	text-decoration: none;
}


/* --------------------------------------
	form
----------------------------------------*/

.form-control-w20p {
	display: inline-block;
    width: 10em;
    height: 34px;
    padding: 6px 12px;
    font-size: 1.4rem;
    line-height: 1.42857143;
    color: #003366;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}
.form-control-w20p:focus {
    border-color: #66afe9;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6);
}
.addressBlock input[type="text"] {
	font-size: 1.6rem;
	font-weight: 400;
	padding-right: 6px;
	padding-left: 6px;
	margin-right: 10px;
	color: #222;
	display: inline-block;
	border-color: #333;
}
.contentsBlock textarea {
	font-size: 1.6rem;
	font-weight: 400;
	padding-right: 6px;
	padding-left: 6px;
	margin-right: 10px;
	color: #222;
	display: inline-block;
	height: 8em;
	border-color: #333;
    border-radius: 4px;
}
.itemBlock select {
	height: 38px;
	font-size: 1.6rem;
	font-weight: 600;
	padding: 6px 6px 10px 6px;
	margin-right: 10px;
	color: #222;
	display: inline-block;
	border-color: #333;
}
.itemBlock label {
	font-weight: normal;
    color: #222;
    font-size: 1.5rem;
    margin: 0;
    padding: 0;
}
.itemBlock label input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin: 0 0 0 0;
}


/* --------------------------------------
	Left Side  dl.contact-use-w
----------------------------------------*/

dl.contact-use-w {
    width: 100%;
    padding: 0;
    margin: 0;
}
	dl.contact-use-w dt {
		float: left;
		width: 20px;
		font-size: 1.8rem;
		color: #222;
		text-align: left;
		line-height: 1.2;
		padding: 0 0 10px 0;
		margin: 0;
	}
	dl.contact-use-w dd {
		margin-left: 24px;
		font-size: 1.8rem;
		font-weight: 600;
		color: #222;
		text-align: left;
		line-height: 1.2;
		padding: 0 0 10px 0;
	}


/* --------------------------------------
	Left Side  tel
----------------------------------------*/

.tell p.num {
	font-size: 6.0rem;
	font-weight: 600;
    padding: 0;
	margin: 0;
}
.tell p.time {
	font-size: 1.6rem;
	font-weight: 400;
    padding: 0;
	margin: 0;
}
.tell p.tel-txt {
	font-size: 1.6rem;
	font-weight: 400;
    padding: 10px 0 20px 0;
	margin: 0;
}
a.telcall {
	display: none;
}


/* --------------------------------------
	confirmBlock
----------------------------------------*/

.confirmBlock {
	text-align: center;
	line-height: 1;
}
.confirmBlock ul.submit{
	width: 100%;
	font-size: 0;
	margin: 0;
	padding-top: 0;
	padding-bottom: 0;
	-webkit-padding-start: 0px;
}
.confirmBlock ul.submit li{
	width: 100%;
	font-size: 1.8rem;
	display: inline-block;
}
.confirmBlock ul.submit li button.reset{
	background-color: #c9c9c9;
	border-radius: 8px;
	color: #434343;
	border: none;
	text-decoration: none;
	padding: 15px 40px;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
}
.confirmBlock ul.submit li button.reset:hover{
	background-color: #222;
	color: #FFF;
	cursor: pointer;
}
.confirmBlock ul.submit li button.confirm{
    display: inline-block;
    position: relative;
	border-radius: 8px;
	border: none;
	color: #FFF;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 4px;
	margin: 0 auto;
    padding: 30px 80px;
	background-color: #C81323;
    text-transform: uppercase;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
}
.confirmBlock ul.submit li button.confirm:hover{
	background-color: #023C82;
	color: #FFF;
	border: none;
	cursor: pointer;
}
@media(max-width:1480px) {
	.itemBlock .title {
		font-size: 2.0rem;
	}
	.contentsBlock .title {
		font-size: 2.0rem;
	}
	.addressBlock .title {
		font-size: 2.0rem;
	}
}
@media(max-width:1300px) {
	.headline-inline .headline-contact01 {
		font-size: 1.6rem;
	}
	.headline-inline .headline-contact02 {
		font-size: 1.6rem;
	}
	.itemBlock .title {
		font-size: 1.6rem;
	}
	.contentsBlock .title {
		font-size: 1.6rem;
	}
	.contentsBlock .title span {
		font-size: 1.6rem;
	}
	.addressBlock .title {
		font-size: 1.6rem;
	}
	.privacyBlock .title {
		font-size: 1.6rem;
	}
}
@media(	max-width:1200px) {
	.contact-inner {
		width: 100%;
		padding: 5% 0 0;
	}
	.contact-txt001 {
		font-size: 1.6rem;
	}
	.tell p.num {
		font-size: 4.9rem;
	}
	.tell p.time {
		font-size: 1.4rem;
	}
	.tell p.tel-txt {
		font-size: 1.4rem;
	}
	.contact-txt02 {
		font-size: 1.4rem;
	}
}
@media(max-width:990px) {
	.contact-inner {
		font-size: 1.4rem;
		padding: 5% 0 0;
	}
	.contact-txt001 {
		font-size: 1.5rem;
	}
	.headline-inline .headline-contact01 {
		font-size: 2.0rem;
		text-align: center;
	}
	.headline-inline .headline-contact02 {
		font-size: 2.0rem;
		text-align: center;
	}
	.tell {
		margin-bottom: 2em;
	}
	.tell span.num {
		font-size: 3.2rem;
	}
	.tell span.time {
		font-size: 1.4rem;
	}
	.contact-txt01 {
		margin-bottom: 1em;
	}
	.contact-txt02 {
		font-size: 1.4rem;
	}
	.contact-txt02 span {
		font-size: 16px;
		margin-bottom: 0.5em;
	}
	.itemBlock .title {
		font-size: 2.0rem;
		margin-bottom: 10px;
	}
	.contentsBlock {
		font-size: 1.6rem;
	}
	.contentsBlock .title span {
		font-size: 1.3rem;
	}
	.privacyBlock {
		margin-bottom: 20px;
	}
	.addressBlock .title {
		font-size: 2.0rem;
	}
	.privacyBlock .title {
		font-size: 2.0rem;
	}
	.privacyBlock {
		line-height: 1.2;
		font-size: 1.4rem;
	}
	.privacyBlock label {
		font-size: 1.6rem;
		margin-top: 10px;
	}
	.contact-inner .tell p.num {
		font-size: 3.6rem;
	}
	.confirmBlock ul.submit {
		margin-top: 50px;
		padding-bottom: 2%;
	}
}
@media(max-width:740px) {
	.headline-inline .headline-contact01 {
		font-size: 1.7rem;
		text-align: left;
	}
	.headline-inline .headline-contact02 {
		font-size: 1.7rem;
		text-align: left;
	}
	.addressBlock {
		margin-bottom: 15px;
	}
	.addressBlock p {
		margin-bottom: 5px;
	}
	.addressBlock input {
		margin-bottom: 15px;
	}
	.addressBlock .title {
		margin-bottom: 20px;
	}
	.addressBlock span {
		font-size: 1.0rem;
	}
	.contentsBlock .title {
		font-size: 2.0rem;
	}
	.privacyBlock .title {
		margin-bottom: 15px;
	}
}
@media(max-width:680px) { /* SP */
	a.telcall {
		display: block;
	}
}
@media(max-width:499px) {  /* SP */	
	.contact-inner {
		padding: 5% 0 0;
	}
	.contact-txt001 {
		font-size: 1.5rem;
		line-height: 1.5;
		margin-top: 0px;
		margin-bottom: 10px;
	}
	.contact-txt001 br {
		display: block;
	}
	.contact-txt03 {
		font-size: 1.4rem;
	}
	#staff.bussiness-about-company {
		padding-top: 80px;
		margin-top: -80px;
	}
	.headline-inline .headline-contact01 {
		font-size: 1.5rem;
		padding: 10px 50px 10px 0;
	}
	.headline-inline .headline-contact02 {
		font-size: 1.5rem;
	}
	.itemBlock {
		font-size: 1.4rem;
	}
	
	.itemBlock p {
		font-size: 1.5rem;
	}
	.itemBlock .title {
		font-size: 1.7rem;
		line-height: 1.3;
		margin-bottom: 0px;
	}
	.itemBlock select {
		font-size: 1.3rem !important;
	}
	.contentsBlock {
		font-size: 1.5rem;
	}
	.contentsBlock .title {
		font-size: 1.7rem;
		line-height: 1.3;
		margin-bottom: 10px;
	}
	.contentsBlock .title span {
		font-size: 1.5rem;
	}
	.addressBlock .title {
		font-size: 1.7rem;
	}
	.addressBlock span.age {
		display: block;
		font-size: 1.2rem;
	}
	.privacyBlock {
		margin-bottom: 50px;
	}
	.privacyBlock .title {
		font-size: 1.7rem;
	}
	.addressBlock p {
		font-size: 1.6rem;
	}
	.itemBlock label p {
		font-size: 1.6rem;
	}
	.privacyBlock p {
		font-size: 1.5rem;
	}
	.privacyBlock label p {
		font-size: 1.5rem;
	}
	.tell p.time {
		font-size: 1.2rem;
	}
	.tell p.tel-txt {
		font-size: 1.2rem;
	}
	.contact-txt02 {
		font-size: 1.2rem;
	}
	.form-control-w20p {
		width: 6em;
		margin-right: 0px !important;
	}
}
@media(max-width:360px) {
	.headline-inline .headline-contact01 {
		font-size: 1.5rem;
		padding: 10px 60px 10px 0;
	}
	.contact-inner .tell p.num {
		font-size: 3.0rem;
	}
	.tell p.time {
		font-size: 1.2rem;
	}
	.tell p.tel-txt {
		font-size: 1.2rem;
	}
	.contact-txt02 {
		font-size: 1.2rem;
	}
	.contents01 .titleBlock p.read {
		font-size: 1.6rem;
	}
	.business-service-2x h5 {
		margin: 0 0 10px;
	}
	.business-service-2x p {
		font-size: 1.0rem;
	}
	.contents02 .titleBlock02 p.read {
		font-size: 1.6rem;
	}
	.about-company-left h2.about-copy {
		font-size: 1.6rem;
	}
	.about-company-left h2.recruit-copy {
		font-size: 1.8rem;
	}
}



/*!------------------------------------------------------------------
[Contact Us ]  confirm.html  確認画面
*/

.contact-inner .conbox-head {
	width: 100%;
	margin: 20px auto 80px;
	text-align: center;
}
.contact-inner .conbox-head p {
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.8;
	color: #212121;
	text-align: center;
	margin: 0;
}
@media (max-width: 1200px) {
	.contact-inner .conbox-head {
		width: 100%;
	}
	.contact-inner .conbox-head p {
		font-size: 1.4rem;
	}
}
@media (max-width: 499px){
	.contact-inner .conbox-head p {
		font-size: 1.5rem;
		text-align: left;
	}
	.contact-inner .conbox-head p br {
		display: none;
	}
}

.contact-inner .conbox01 {
	width: 100%;
	margin: 0 auto;
	font-size: 1.8rem;
}


/* --------------------------------------
	conbox01 table
----------------------------------------*/

.contact-inner .conbox01 table {
	width: 100%;
	font-size: 18px;
	border-collapse: collapse;
	margin-bottom: 50px;
}
.contact-inner .conbox01 table th {
	width: 35%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCC;
	font-size: 1.6rem;
	font-weight: bold;
	vertical-align: top;
	padding-top: 15px;
	padding-bottom: 15px;
	text-align: left;
	color: #222;
}
.contact-inner .conbox01 table th.pt20 {
	padding-top: 20px;
}
.contact-inner .conbox01 table th span {
	margin-left: 25px;
}
.contact-inner .conbox01 table th span.ml0 {
	margin-left: 0px;
}
.contact-inner .conbox01 table th span span{
	margin-left: 0px;
}
.contact-inner .conbox01 table td {
	width: 60%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCC;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.5;
	vertical-align: top;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 30px;
	text-align: left;
	color: #222;
}
.contact-inner .conbox01 table th.conend,
.contact-inner .conbox01 table td.conend {
	padding-top: 50px;
	border-bottom-style: none;
	border-top-style: none;
	border-right-style: none;
	border-left-style: none;
}
.contact-inner .conbox01 table td span {
	font-size: 1.4rem;
}
.contact-inner .conbox01 table td.pt20 {
	padding-top: 20px;
}
.contact-inner .conbox01 table td.pb20 {
	padding-bottom: 20px;
}
.contact-inner .conbox01 table td.pt30 {
	padding-top: 30px;
}
.contact-inner .conbox01 table td.pt35 {
	padding-top: 35px;
}
.contact-inner .conbox01 table td.pt45 {
	padding-top: 45px;
}


/* --------------------------------------
	conbox01 table  submit
----------------------------------------*/

.contact-inner .conbox01 table th ul.submit{
	width: 30%;
	font-size: 0;
	display: block;
	list-style-type: none;
    -webkit-margin-before: 0em;
    -webkit-margin-after: 0em;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
    -webkit-padding-start: 0px;
	margin: 60px auto 0;
}
.contact-inner .conbox01 table th ul.submit li{
	width: 100%;
	display: inline-block;
	margin-bottom: 20px;
}
.contact-inner .conbox01 table th ul.submit li button.reset{
	display: block;
	width: 100%;
	text-decoration: none;
	padding: 25px;
	font-size: 1.8rem;
	background-color: #CCC;
	color: #212121;
    border: 0px outset buttonface;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
     -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
.contact-inner .conbox01 table th ul.submit li button.reset:hover{
	background-color: #999;
	color: #222;
	cursor: pointer;
}
.contact-inner .conbox01 table th ul.submit li button.confirm{
	display: block;
	width: 100%;
	text-decoration: none;
	padding: 25px;
	font-size: 1.8rem;
	background-color: #009FD5;
	color: #FFF;
    border: 0px outset buttonface;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
     -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
.contact-inner .conbox01 table th ul.submit li button.confirm:hover{
	background-color: #D71D3B;
	color: #FFF;
	cursor: pointer;
}

@media (max-width: 1200px) { /* SP */
	.contact-inner .conbox01 {
		width: 90%;
		margin: 0 auto;
	}
	.contact-inner .conbox01 table th {
		display: block;
		width: 100%;
		padding-bottom: 5px;
		font-size: 1.4rem;
	}
	.contact-inner .conbox01 table td {
		display: block;
		width: 100%;
		border-top: none;
		padding-top: 5px;
		padding-bottom: 15px;
		font-size: 1.4rem;
		padding-left: 0px;
		margin-bottom: 15px;
	}
	.contact-inner .conbox01 table th ul.submit{
		-webkit-padding-start: 0px;
	}
	.contact-inner .conbox01 table th ul.submit li{
		display: block;
		width: 100%;
		margin-right: 0px;
		margin-top: 20px;
	}
	.contact-inner .conbox01 table th ul.submit li button.reset {
		width: 100%;
	}
	.contact-inner .conbox01 table th ul.submit li button.confirm {
		width: 100%;
	}
}
@media (max-width: 990px) { /* SP */
	.contact-inner .conbox01 table th ul.submit{
		width: 50%;
	}
}
@media (max-width: 499px) { /* SP */
	.contact-inner .conbox01 table th ul.submit{
		width: 100%;
		margin: 30px auto 0;
	}
}



/*!------------------------------------------------------------------
[Privacy Policy ]
*/

.privacyBlock iframe {
    width: 100%;
    height: 250px;
    margin: 0 0 10px;
    border-width: 0px;
    border-radius: 0.25rem;
    overflow: hidden;
}

.privacy-title-section {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 50px 0;
    background-color: #F5F5F5;
}

.privacy-inner-title {
    display: block;
    font-size: 2.4rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    line-height: 1.0;
    letter-spacing: 0;
    color: #222;
    text-align: center;
    margin: 0;
    padding: 0;
}
.privacy-inner-title span {
    display: block;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    padding: 10px 0 0;
}
.privacy-inner-section {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 40px 0 50px;
    margin: 0;
    background-color: #F5F5F5;
}

.privacy-inner {
    margin: 0;
    padding: 0;
    text-align: left;
}

.privacy-title-text {
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0;
    padding: 0 0 30px;
}
.privacy-subtitle {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.0;
    letter-spacing: 0;
    color: #222;
    margin: 0;
    padding: 0 0 15px;
}
.privacy-title-right {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0;
    color: #222;
	text-align: right;
    margin: 0;
    padding: 0;
}
.privacy-txt {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0;
    color: #222;
    margin: 0;
    padding: 0 0 40px;
}
.privacy-txt02 {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 1px;
    color: #222;
    margin: 0;
    padding: 0 0 20px;
}
.privacy-txt-last {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 1px;
    color: #222;
    margin: 0;
    padding: 0 0 50px;
}

dl.item-privacy-lines {
    width: 100%;
    padding: 0 0 0 20px;
    margin: 0 0 50px;
}
dl.item-privacy-lines dt {
    float: left;
    width: 30px;
    font-size: 1.6rem;
    color: #222;
    text-align: left;
    line-height: 1.4;
    padding: 4px 0;
    margin: 0;
}
dl.item-privacy-lines dd {
    margin-left: 30px;
    font-size: 1.6rem;
    font-weight: 400;
    color: #222;
    text-align: left;
    line-height: 1.4;
    letter-spacing: 1px;
    padding: 4px 0;
}

@media (max-width: 749px){
}
@media (max-width: 499px){
    .privacy-inner-section {
        padding: 0 25px 0 30px;
    }
	.privacy-title {
		font-size: 1.5rem;
		padding: 0 0 30px;
	}
	.privacy-subtitle {
		font-size: 1.6rem;
	}
	.privacy-txt {
		font-size: 1.5rem;
	}
}


