@charset "utf-8";
/* CSS Document */

*{margin:0;padding:0;box-sizing: border-box;}

body {
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  overflow-wrap: break-word;
  word-break: normal;
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	color:#333;
  line-height: 1.7;
}
ol, ul {list-style: none;}
a{text-decoration: none;color:#333;}
a:hover {opacity: 0.7 ;}
html {scroll-behavior: smooth;font-size: 62.5%;scroll-padding-top: 80px;}

img{width:100%;}

/* header*/
header{
  position: fixed;
  width: 100%;
  z-index: 999999999;
}
header .header-inner {
    display: flex;
    align-items: center;
    padding: 1%;
    width: 100%;
    justify-content: space-between;
    background-color: #fff;
    margin: auto;
    box-shadow: 0 0 10px #ccc;
}
h1.site_title {
    background: url(https://liendesign.net/wp-content/themes/LieN%20WP/images/logo_bk.png) 0 0 / contain no-repeat;
    overflow: hidden;
    width: 300px;
    height: 48px;
    text-indent: 100%;
    margin-left: 5%;
}
h1.site_title a {
    display: block;
    height: 100%;
}
.pc {
  display:block!important
}
.sp {
  display: none!important
}
@media screen and (max-width: 599px) {
    .pc {
        display:none!important
    }

    .sp {
        display: block!important
    }

    body {
        font-size: 3vw!important
    }

    .header-inner {
        position: fixed;
        top: 0;
        opacity: .95;
        justify-content: left!important;
        z-index: 10;
        padding: 2%!important
    }

    h1.site_title {
        width: 50%!important;
        height: 45px!important;
        margin-left: 0
    }
}

/* //Header */
/* 共通 */
.mgn_b2{margin-bottom:2rem;}
.mgn_b5{margin-bottom:5rem;}

/* Main */
main{
  padding-top: 10rem;
}
.content-wrapper{
  max-width: 800px;
  margin: auto;
  text-align: center;
}
.content-wrapper h2{
  font-size: 2.0rem;
}
.content-wrapper h3{
  font-size: 1.6rem;
  margin: 1rem 0;
}
.work_sec{
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
  margin-bottom: 10rem;
}
.work_sec div {
  width: calc(92% / 3 );
}
p.discription{
  margin: 1rem;
  font-size: 1.2rem;
}
h3.title {
  position: relative;
  padding: 8px 16px;
  outline: 1px solid #333;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  color: #333;
  font-weight: 400;
  display: block;
  box-sizing: border-box;
  max-width: 500px;
  text-align: center; 
  margin: 24px;
  margin-inline: auto;
}

.title::before {
  content: "";
  position: absolute;
  top: -6px;
  left: -6px;
  width: 40px;
  height: 40px;
  background: #d0e0e5;
  clip-path: polygon(0 0, 100% 0%, 0 100%);
  z-index:-999;
}

.title-::after {
  content: "";
  position: absolute;
  top: 6px;
  left: 6px;
  width: 100%;
  height: 100%;
  outline: 1px solid #333;
}

/* ボタン */
.button a {
  font-size: 14px;
  letter-spacing: 0.1em;
  color: #333;
  font-weight: 400;
  border: 1px solid #333;
  display: block;
  position: relative;
  box-sizing: border-box;
  max-width: 280px;
  text-align: center; 
  padding: 16px 64px;
  margin: 7rem 0;
  margin-inline: auto;
  text-decoration: none;
  cursor: pointer;
  z-index:999;
  transition: all 0.3s;
}

.button a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -30px;
  width: 60px;
  height: 1px;
  background: #333;
  transition: all 0.3s ease;
}
.button a:hover{
  background: #ccc;
  color: #fff;
}
.button a:hover::after {
  animation: OutIn-Line 700ms;
  transition: all 0.3s;
}

@keyframes OutIn-Line {
    0% {
        -webkit-transform: scale3d(1,1,1);
        transform: scale3d(1,1,1);
        -webkit-transform-origin: 100% 0;
        transform-origin: 100% 0
    }

    50% {
        -webkit-transform: scale3d(0,1,1);
        transform: scale3d(0,1,1);
        -webkit-transform-origin: 100% 0;
        transform-origin: 100% 0
    }

    50.1% {
        -webkit-transform: scale3d(0,1,1);
        transform: scale3d(0,1,1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    100% {
        -webkit-transform: scale3d(1,1,1);
        transform: scale3d(1,1,1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }
}
/* //ボタン */

@media screen and (max-width: 599px) {
  .content-wrapper{
    padding: 2rem;
  }
  .work_sec div{
    width: 80%;
    margin: auto;
  }
}
.bggray {
    background-color: #f2f2f2;
}
.contactLnk {
    text-align: center;
    padding: 5%
}

.contactLnk h2::after {
    content: '';
    width: 110px;
    height: 1px;
    display: inline-block;
    background-color: #dd5476;
    position: absolute;
    bottom: -5px;
    left: calc(50% - 55px)
}

.contact_inner {
    background-color: #fff;
    padding: 5%;
    box-shadow: 0 0 10px #ccc;
    max-width: 650px;
    margin: auto
}
.contact_inner h2{
    position: relative;
    margin-bottom: 2rem;
}

.contact_inner a {
    position: relative;
    border: 1px solid #555;
    padding: 8px 30px;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    color: #333;
    outline: 0;
    transition: .2s linear;
    margin: 5% 0 0
}

.contact_inner a:hover {
    background: #333;
    color: #fff
}

.contact_inner a::before {
    content: "";
    position: absolute;
    top: 50%;
    right: -26px;
    width: 40px;
    height: 1px;
    background: #333;
    transition: .2s linear
}

.contact_inner a::after {
    content: "";
    position: absolute;
    top: 12px;
    right: -23px;
    width: 1px;
    height: 8px;
    background: #333;
    transform: skewX(45deg);
    transition: .2s linear
}

.contact_inner a:hover::before {
    right: -30px
}

.contact_inner a:hover::after {
    right: -25px
}

/* footer */
footer{
    background-color: #f9f9f9;
    padding: 5rem;
}
.footer-inner{
    max-width: 800px;
    margin: auto;
}
footer nav ul{
    display: flex;
    justify-content: center;
    gap: 2rem;
}
.related-links{
  margin: 2rem;
}
.relation{
  font-size: 1.5rem;
}
.related-links h4{
  font-size: 1.2rem;
}

.copyright {
    background-color: #dc889d;
    text-align: center;
    color: #fff;
    padding: 1rem;
}