@charset "utf-8";
/*
Theme Name: totalrepair-themes-solution
Theme URI: http://www.solution-sy.com/
Author: solution.STC
Author URI: http://www.crossdesign-company.co.jp  
Description: This is a default wordpress themes
Version: 1.0
License: GNU General Public License v2 or later
License URI: LICENSE
*/

* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  background: 0 0;
  box-sizing: border-box;
}

:after, :before {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  overflow-x: hidden;
}

body {
  font-size: 18px;
  color: #333333;
  width: 100%;
  overflow-x: hidden;
  --themecolor:#00325e;
}

@media screen and (max-width: 1320px) {
  body {font-size: 16px;}
}
@media screen and (max-width: 1080px) {
  body {font-size: 14px;}
}

address, caption, code, figcaption, pre, th {
  font-size: 1em;
  font-weight: normal;
  font-style: normal;
}

blockquote, q {
  quotes: none;
}

blockquote:after, blockquote:before, q:after, q:before {
  content: '';
  content: none;
}

fieldset, iframe, img {
  border: 0;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

caption, th {
  text-align: left;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

button {
  background: 0 0;
  border: 0;
  box-sizing: content-box;
  color: inherit;
  cursor: pointer;
  font: inherit;
  line-height: inherit;
  overflow: visible;
  vertical-align: inherit;
}

button:disabled {
  cursor: default;
}

audio:not([controls]) {
  display: none;
}

:focus[data-focus-method=mouse]:not(input):not(textarea):not(select), :focus[data-focus-method=touch]:not(input):not(textarea):not(select) {
  outline: 0;
}

::-moz-focus-inner {
  border: 0;
  padding: 0;
}

a, a:link, a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

a:active {
  text-decoration: none;
}

ul {
  list-style: none;
}

em {
  font-style: normal;
}

img {
  display: block;
  height: auto;
  max-width: 100%;
}

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #ccc;
  opacity: 1;
}

::-moz-placeholder {
  color: #ccc;
  opacity: 1;
}

input:-ms-input-placeholder {
  color: #ccc;
  opacity: 1;
}

input::-webkit-input-placeholder {
  color: #ccc;
  opacity: 1;
}

::-webkit-scrollbar {
  width: 10px;
  height: 15px;
  background-color: #f3f3f3;
  border-left: 1px solid #dddddd;
}

::-webkit-scrollbar:hover {
  background-color: transparent;
}

::-webkit-scrollbar-thumb {
  border-radius: 15px;
  cursor: pointer;
  background-color: var(--themecolor);
}

::-webkit-scrollbar-thumb:hover {
  background-color: #333;
}

::-webkit-scrollbar-button:start:decrement, ::-webkit-scrollbar-button:end:increment {
  display: none;
}

.ftfminchao{font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "MS Mincho", "MS 明朝", "Meiryo", serif;}
.ftfPGothic{font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
.ftfMeiryo{font-family: メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}

/*hasbg*/
.hasbg{background-repeat:no-repeat;background-size:cover;background-position:center center;}
.hasbg:after{display:block;content:"";padding-top:100%;}
.hasbg>img{display:none;}


@font-face {
  font-family: 'iconfont';
  src: url('iconfont/iconfont.woff2?t=1666238971337') format('woff2'),
       url('iconfont/iconfont.woff?t=1666238971337') format('woff'),
       url('iconfont/iconfont.ttf?t=1666238971337') format('truetype');
}

.iconfont {
  font-family: "iconfont" !important;
  font-size: 16px;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


/*sp mobile-btn*/
/* sp mobile-btn and nav css */

.spscreen {
  display: none; }
.mobilebtn{display:none;}
@media screen and (max-width: 768px) {
  .logged-in .mobilebtn{
    top:60px;
  }
  .mobilebtn {
    position: fixed;
    z-index: 110;
    top: 15px;
    right: 20px;
    display: block; }

  .mobilebtn div {
    width: 30px;
    height: 20px;
    background: none;
    cursor: pointer;
    display: block;
    position: relative;
    right: 0;
    top: 0;
    transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1); }

  .mobilebtn div span {
    width: 30px;
    height: 2px;
    top: 9px;
    background: var(--themecolor);
    display: block;
    position: absolute;
    z-index: 5;
    left: 50%;
    margin: 0 0 0 -15px;
    transform-origin: center;
    -webkit-transform-origin: center;
    -moz-transform-origin: center;
    -o-transform-origin: center;
    -ms-transform-origin: center;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -o-transition: all 0.4s;
    -ms-transition: all 0.4s; }

  .mobilebtn div span:nth-child(1) {
    -moz-transform: translateY(-9px);
    -webkit-transform: translateY(-9px);
    -o-transform: translateY(-9px);
    -ms-transform: translateY(-9px);
    transform: translateY(-9px); }

  .mobilebtn div span:nth-child(3) {
    -moz-transform: translateY(9px);
    -webkit-transform: translateY(9px);
    -o-transform: translateY(9px);
    -ms-transform: translateY(9px);
    transform: translateY(9px); }

  .mobilebtn .active {
    transform:translateX(-200px) rotate(180deg); /* */}

  .mobilebtn .active span:nth-child(1) {
    transform: rotate3d(0, 0, 1, -45deg) !important;
    transform-origin: center center !important;/*0.71429px*/
    width: 30px !important; }

  .mobilebtn .active span:nth-child(2) {
    transform: rotate3d(0, 1, 0, -90deg) !important;
    width: 0!important;
  }

  .mobilebtn .active span:nth-child(3) {
    transform: rotate3d(0, 0, 1, 45deg) !important;
    transform-origin: center center !important;/*0.71429px */
    width: 30px !important; }

  .sp-wrapper-move {
    transform: translateX(0px) !important; }

  .spscreen {
    width: 200px;
    height: 100vh;
    position: fixed;
    z-index: 100;
    background: #333;
    right: 0;
    top: 0;
    transform: translateX(200px);
    transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);
    display: block; }

  .spscreen .sp-heading {
    width: 100%;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 24px;
    text-transform: uppercase;
    color: #fff; }

  .spscreen nav ul {
    padding: 0 15px; }

  .spscreen nav ul li:first-child {
    border-top: 1px solid #5d5d5d; }

  .spscreen nav ul li {
    border-bottom: 1px solid #5d5d5d; }

  .spscreen nav ul li a {
    color: #fff;
    display: flex;
	  flex-direction:column;
    text-align: center;
    text-decoration: none;
    padding: 10px 0;
    text-transform: uppercase;
    transition: .3s; }

  .spscreen nav ul li a:hover {
    background: #f2f2f2;
    color: #000; }

  .spscreen nav ul li ul{
    display:none;
  }
  .spscreen nav ul li a.current{position:relative;}
  .spscreen nav ul li a.current:after{content:"";border-top:5px solid #fff;border-left:5px solid transparent;border-right:5px solid transparent;position:absolute;top:50%;right:0;transform:translateY(-50%);transform-origin:center;}
  .spscreen nav ul li a.current.active:after{transform:rotate(180deg);}
  .spscreen nav ul li a:hover{background:#f2f2f2;color:#000;}
  .spscreen nav ul li ul{display:none;padding:0;}
  .spscreen nav ul li ul li a{font-size:12px;}
}

.spscreenmask{position:fixed;top:0;right:0;z-index:99;background:rgba(0,0,0,0.6);width:0%;height:100%;transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);}
.spscreenmask.spscreenmaskmove{width:100%;}


/*headerfixed*/
.headerfixed{position:fixed;top:0;left:0;z-index:90;width:100%;background:#fff;box-shadow: 0 0 5px 5px rgba(0,0,0,0.3);-webkit-animation: headeranimation .5s linear  0s 1;animation: headeranimation .5s linear  0s 1; }
.logged-in .headerfixed{top:32px;}
@keyframes headeranimation {
  0% {
    transform:translateY(-100%);
    opacity:0;
  }
  100% {
    transform:translateY(0);
    opacity:1;
  }
}
@-webkit-keyframes headeranimation {
  0% {
    transform:translateY(-100%);
    opacity:0;
  }
  100% {
    transform:translateY(0);
    opacity:1;
  }
}


/* header css */
header{position:fixed;z-index:90;left:0;top:0;padding:15px 40px;width:100%;display:flex;justify-content:space-between;background-image:linear-gradient(to bottom,#FFFFFFFF 30%, #FFFFFFAC 60%, #FFFFFF00 100%);transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);}
.pageheader{background:#FFF;}

.sitelogo{width:560px;}

.headmain{ display:flex;justify-content:center;width:calc(100% - 580px);}


.mainnavigation{display:flex;}
.mainnavigation ul{display:flex;align-items:center;}
.mainnavigation ul li{position:relative;padding:0px 50px;}
.mainnavigation ul li a{width:100%;font-size:18px;color:#000;display:flex;flex-direction:column;justify-content:center;align-items:center;text-decoration:none;position:relative;z-index:1;transition:.4s ease-in-out;}
.mainnavigation ul li a:hover{color:var(--themecolor);}
.mainnavigation ul li a:after{content: "";position: absolute;left:0%;bottom: -5px;width: 100%;transform: scale(0) ;height: 2px;background: var(--themecolor);opacity: 0;visibility: hidden;transition: .4s ease-in-out;}
.mainnavigation ul li > a:hover:after{opacity: 1;visibility: visible;transform:scale(1);}
.mainnavigation ul li a .en{font-size:24px;color:var(--blue);}
.mainnavigation ul li a .ja{font-size:16px;font-weight:bolder;color:#000;}

@media screen and (max-width: 1520px) {
  .sitelogo{width:380px;}
  .headmain{width:calc(100% - 420px);}
  .mainnavigation ul li{padding:0 20px;}
  .mainnavigation ul li a .en{font-size:18px;}
  .mainnavigation ul li a .ja{font-size:14px;}
}
@media screen and (max-width: 1080px) {
  header{padding:15px 20px;}
  .sitelogo{width:300px;}
  .headmain{width:calc(100% - 320px);}
  .mainnavigation ul li{padding:0 15px;}
  .mainnavigation ul li a .en{font-size:16px;}
  .mainnavigation ul li a .ja{font-size:12px;}
}
@media screen and (max-width: 768px) {
  .headmain{margin-right:70px;}
  .sitelogo{width:200px;}
  .mainnavigation{display:none;}

}
/* /header css */
/*banner*/
.banner{position:relative;}
.banner .bannermain{}
.banner .bannermain li{overflow:hidden;}
.banner .bannermain figure{width:100%;height:90vh;position:relative;-webkit-animation: picmove1 50s linear infinite 0s;-moz-animation: picmove1 50s linear infinite 0s;-ms-animation: picmove1 50s linear infinite 0s;-o-animation: picmove1 50s linear infinite 0s;animation: picmove1 50s linear infinite 0s;}
.banner .bannermain figure:after{content:"";width:100%;height:100%;padding-top:0;position:absolute;top:0;left:0;background-image:linear-gradient(to bottom,#FFFFFFFF 7%, #FFFFFFAC 15%, #FFFFFF00 100%);}
.banner .bannertext{position:absolute;left:50%;top:50%;z-index:20;transform:translate(-50%,-50%);padding:80px 40px;width:100%;}
.banner .bannertext .bannertextmain{width:100%;max-width:1520px;margin:0 auto;display:flex;flex-direction:column;align-items:flex-start;}
.banner .bannertext h1{font-size:50px;line-height:1.1;margin-bottom:10px;background:#FFF;color:var(--themecolor);padding:10px 30px;display:inline-block;}
.banner .bannertext h2{font-size:50px;line-height:1.1;margin-bottom:50px;background:#FFF;color:var(--themecolor);padding:10px 30px;display:inline-block;}
.banner .bannertext h3{font-size:24px;padding:10px 30px;background:var(--themecolor);color:#FFF;}

@keyframes picmove1 {
 0% {
 -webkit-transform:scale(1, 1);
transform:scale(1, 1);
}
 50% {
 -webkit-transform:scale(1.2, 1.2);
transform:scale(1.2, 1.2);
}
 100% {
 -webkit-transform:scale(1, 1);
transform:scale(1, 1);
}
}
@media screen and (max-width: 1520px) {
  .banner .bannermain figure{height:70vh;}
  .banner .bannertext h1{font-size:38px;padding:10px 20px;}
  .banner .bannertext h2{font-size:38px;padding:10px 20px;margin-bottom:30px;}
  .banner .bannertext h3{font-size:18px;padding:10px 20px;}
}
@media screen and (max-width: 1080px) {
  .banner .bannermain figure{height:680px;}
  .banner .bannertext{padding:20px;}
  .banner .bannertext h1{font-size:28px;padding:10px 20px;}
  .banner .bannertext h2{font-size:28px;padding:10px 20px;margin-bottom:20px;}
  .banner .bannertext h3{font-size:14px;padding:10px 20px;}
}
@media screen and (max-width: 768px) {
  .banner{overflow:hidden;}
  .banner .bannermain figure{height:350px;}
  .banner .bannertext h1{font-size:22px;padding:10px;}
  .banner .bannertext h2{font-size:22px;padding:10px;margin-bottom:15px;}
  .banner .bannertext h3{font-size:12px;padding:10px;}
}
@media screen and (max-width: 528px) {
  .banner .bannermain figure{height:300px;}
}


.bannerside{display:flex;flex-direction:column;align-items:center;position:absolute;right:10%;bottom:0;z-index:80;}
.scrollouter{display:flex;flex-direction:column;align-items:center;margin-top:5px;}
.scrollouter:before{content:"";background-color:rgba(255,255,255,0.5);width:10px;height:10px;border-radius:50%;position:absolute;top:110px;left:110px;transform:translate(-50%,-50%);}
.scrollouter:after{content:"";border-right:1px solid rgba(255,255,255,0.3);height:100px;margin-top:-20px;}
.scroll{width:220px;height:220px;border-radius:50%;color:#616161;font-size:18px;text-transform:uppercase;text-align:center;animation: spin 20s linear infinite;position:relative;background:rgba(255,255,255,0.3);background-clip: content-box;padding:20px;cursor:pointer;}
.scroll span{position:absolute;left:0;top:0;right:0;bottom:0;}
@keyframes spin {
    0%{
        transform: rotate(360deg);
    }
    100%{
        transform: rotate(0);
    }
}
@media screen and (max-width: 1520px) {
  .bannerside{right:2%;}
  .scrollouter:before{left:80px;top:80px;}
  .scrollouter:after{height:70px;}
  .scroll{width:160px;height:160px;font-size:16px;}
}
@media screen and (max-width: 1080px) {
  .scrollouter:before{left:60px;top:60px;}
  .scrollouter:after{height:50px;}
  .scroll{width:120px;height:120px;font-size:14px;padding:15px;}
}
@media screen and (max-width: 768px) {
  .scrollouter:before{left:38px;top:38px;}
  .scrollouter:after{height:38px;}
  .scroll{width:80px;height:80px;font-size:8px;padding:10px;}
}
/*/banner*/
.homemassege .twocolumn .text{width:45%;padding:0 40px;}
.homemassege .twocolumn .text .inner{max-width:540px;margin:0 auto;}
.homemassege .twocolumn .text .titlegroup{margin-bottom:30px;}
.homemassege .twocolumn .text p{margin-bottom:30px;}
.homemassege .twocolumn .text .button{padding:15px 60px;display:inline-flex;justify-content:center;position:relative;letter-spacing:0.2em;font-weight:bolder;}
.homemassege .twocolumn .pic{width:55%;}
.homemassege .twocolumn .pic figure{width:120%;position:relative;}
.homemassege .twocolumn .pic figure:after{content:"";position:absolute;width:100%;height:100%;}
.homemassege .twocolumn .pic figure img{width:100%;}
@media screen and (max-width: 1520px) {
  .homemassege .twocolumn .text{width:48%;}
  .homemassege .twocolumn .text .titlegroup{margin-bottom:20px;}
  .homemassege .twocolumn .text p{margin-bottom:20px;}
  .homemassege .twocolumn .text .button{padding:10px 50px;}
  .homemassege .twocolumn .pic{width:52%;}
  .homemassege .twocolumn .pic figure{width:110%;}
}
@media screen and (max-width: 1080px) {
  .homemassege .twocolumn .text{width:50%;padding:0 20px;}
  .homemassege .twocolumn .text .titlegroup{margin-bottom:10px;}
  .homemassege .twocolumn .text .titlegroup .t2{line-height:1.2;}
  .homemassege .twocolumn .text p{margin-bottom:15px;}
  .homemassege .twocolumn .text .button{padding:10px 30px;}
  .homemassege .twocolumn .pic{width:50%;}
  .homemassege .twocolumn .pic figure{width:100%;}
}
@media screen and (max-width: 768px) {
  .homemassege .twocolumn .text{width:100%;margin:0 auto 20px;}
  .homemassege .twocolumn .text .button{padding:10px 20px;}
  .homemassege .twocolumn .pic{padding:0 20px;width:100%;max-width:520px;margin:0 auto;}
}


.homeservice{padding-top:100px;}
.homeservice .homeservicemain{}
.homeservice .homeservicemain .titlegroup{position:relative;display:flex;flex-direction:column;align-items:center;margin-bottom:60px;}
.homeservice .homeservicemain .titlegroup .t3{position:relative;z-index:1;letter-spacing:0.2em;}
.homeservice .homeservicemain .titlegroup .subtitle{position:absolute;left:50%;top:10%;transform:translate(-50%,-50%);font-size:clamp(50px , calc(50px + 6vw) ,240px);line-height:1;letter-spacing:0.2em;font-weight:bolder;}
.homeservice .homeservicemain .titlegroup:after{content:"";position:relative;z-index:1;width:170px;display:block;margin-top:30px;border-bottom:5px solid var(--themecolor);}
.homeservice .homeservicelist .layout{margin-right:-60px;margin-bottom:-70px;}
.homeservice .homeservicelist .layout .avcol2{padding-right:60px;margin-bottom:70px;}
@media screen and (max-width: 1520px) {
  .homeservice .homeservicemain .titlegroup{margin-bottom:50px;}
  .homeservice .homeservicemain .titlegroup .t3{letter-spacing:0.1em;}
  .homeservice .homeservicemain .titlegroup .subtitle{}
  .homeservice .homeservicemain .titlegroup:after{width:150px;margin-top:20px;}
  .homeservice .homeservicelist .layout{margin-right:-30px;margin-bottom:-38px;}
  .homeservice .homeservicelist .layout .avcol2{padding-right:30px;margin-bottom:38px;}
}
@media screen and (max-width: 1080px) {
  .homeservice{padding-top:60px;}
  .homeservice .homeservicemain .titlegroup{margin-bottom:30px;}
  .homeservice .homeservicemain .titlegroup:after{width:100px;border-bottom-width:3px;margin-top:10px;}
  .homeservice .homeservicemain .titlegroup .subtitle{letter-spacing:0.1em;}
  .homeservice .homeservicelist .layout{margin-right:-20px;margin-bottom:-30px;}
  .homeservice .homeservicelist .layout .avcol2{padding-right:20px;margin-bottom:30px;}
}
@media screen and (max-width: 768px) {
  .homeservice .homeservicelist .layout .avcol2{width:100%;}
  .homeservice .homeservicelist .layout .avcol2 .serviceitem{max-width:500px;margin:0 auto;}
}


.serviceitem{position:relative;color:#000;display:block;}
.serviceitem:hover{text-decoration:none;}
.serviceitem:hover .serviceitempic figure{transform:scale(1.1,1.1);}
.serviceitempic{overflow:hidden;}
.serviceitempic figure{width:100%;transition:.3s;}
.serviceitempic figure:after{padding-top:110%;}
.serviceitemtext{position:absolute;right:0;bottom:0;z-index:1;width:calc(100% - 50px);background:var(--lightgrey);padding:30px;}
.serviceitemtext hgroup{}
.serviceitemtext hgroup h3{color:var(--blue);font-style:italic;text-transform:uppercase;}
.serviceitemtext hgroup h5{font-style:italic;font-weight:normal;}
.serviceitemtext .servicebtn{position:absolute;bottom:0;right:0;}
.serviceitemtext .servicebtn .btnlink{text-decoration:none;color:var(--blue);font-size:20px;font-style:italic;}
.serviceitemtext .servicebtn .btnlink .linearrow{margin-top:30px;margin-left:30px;}
@media screen and (max-width: 1520px) {
  .serviceitemtext{padding:20px;width:calc(100% - 30px);}
  .serviceitemtext .servicebtn .btnlink{font-size:16px;}
  .serviceitemtext .servicebtn .btnlink .linearrow{margin-top:20px;margin-left:20px;}
}
@media screen and (max-width: 1080px) {
  .serviceitemtext{padding:15px;width:calc(100% - 20px);}
  .serviceitemtext .servicebtn .btnlink{font-size:14px;}
  .serviceitemtext .servicebtn .btnlink .linearrow{margin-top:15px;margin-left:15px;}
}


.linearrow{display:flex;position:relative;width:100px;border-bottom:1px solid var(--blue);}
.linearrow:after{content:"";position:absolute;right:0;bottom:0;width:20px;border-bottom:1px solid var(--blue);transform-origin:right bottom;transform:rotate(45deg);}
.line {display: inline-block;width: 70px;border-bottom: 1px solid var(--themecolor);transform: translate(0%,-50%);transform-origin: right center;position: absolute;right: -35px;top: 50%;transition: .3s;}
.line.btnbdwhite { border-bottom: 1px solid var(--white); }
.button:hover .line {transform: translate(60%,-50%); width: 0;}
@media screen and (max-width: 1520px) {
  .line {width:50px;right: -25px;}
}
@media screen and (max-width: 1080px) {
  .linearrow{width:80px;}
  .linearrow:after{width:15px;}
  .line {width:30px;right: -10px;}
}
@media screen and (max-width: 768px) {
  .linearrow{width:60px;}
  .linearrow:after{width:10px;}
}

.homework{position:relative;z-index:10;}
.homework .homeworkmain{position:relative;z-index:10;}
.homework .titlegroup{margin-bottom:50px;}
.homework .button{ max-width:380px;padding:20px 100px;margin-top:60px;position:relative;  }
.homework .workslide{padding-bottom:50px;padding-left:70px;padding-right:70px;}
.workslide .swiper-button-next{width:60px;height:60px;border-radius:50%;border:1px solid var(--themecolor);display:flex;align-items:center;justify-content:center;background:#FFF;}
.workslide .swiper-button-next:before{content:"";display:block;width:12px;border-top:2px solid var(--themecolor);transform:translateX(3px);}
.workslide .swiper-button-next:after{font-size:14px;font-weight:bolder;color:var(--themecolor);transform:translateX(-3px);}
.workslide .swiper-button-prev{width:60px;height:60px;border-radius:50%;border:1px solid var(--themecolor);display:flex;align-items:center;justify-content:center;flex-direction:row-reverse;background:#FFF;}
.workslide .swiper-button-prev:before{content:"";display:block;width:12px;border-top:2px solid var(--themecolor);transform:translateX(-3px);}
.workslide .swiper-button-prev:after{font-size:14px;font-weight:bolder;color:var(--themecolor);transform:translateX(3px);}
@media screen and (max-width: 1520px) {
  .homework .titlegroup{margin-bottom:30px;}
  .homework .button{padding:15px 80px;margin-top:50px;max-width:300px;}
  .homework .workslide{padding-bottom:30px;padding-left:50px;padding-right:50px;}
  .workslide .swiper-button-next{width:50px;height:50px;}
  .workslide .swiper-button-next:before{width:10px;}
  .workslide .swiper-button-next:after{font-size:12px;}
  .workslide .swiper-button-prev{width:50px;height:50px;}
  .workslide .swiper-button-prev:before{width:10px;}
  .workslide .swiper-button-prev:after{font-size:12px;}
}
@media screen and (max-width: 1080px) {
  .homework .titlegroup{margin-bottom:30px;}
  .homework .button{padding:15px 60px;margin-top:20px;max-width:240px;}
  .homework .workslide{padding-bottom:30px;padding-left:10px;padding-right:10px;}
  .workslide .swiper-button-next{width:30px;height:30px;}
  .workslide .swiper-button-next:before{width:7px;transform:translateX(2px);}
  .workslide .swiper-button-next:after{font-size:10px;transform:translateX(-2px);}
  .workslide .swiper-button-prev{width:30px;height:30px;}
  .workslide .swiper-button-prev:before{width:7px;transform:translateX(-2px);}
  .workslide .swiper-button-prev:after{font-size:10px;transform:translateX(2px);}
}

.workitem{position:relative;color:#000;}
.workitem:hover{text-decoration:none;}
.workitem:hover .workitempic figure{transform:scale(1.1,1.1);}
.workitempic{width:100%;overflow:hidden;}
.workitempic figure{width:100%;transition:.3s;}
.workitempic figure:after{padding-top:130%;}
.workitemtext{position:absolute;left:-10px;bottom:-25px;}
.workitemtext h5{display:inline-block;color:var(--white);background:var(--themecolor);padding:10px 20px;font-size:24px;line-height:1;}
.workitemtext span{display:block;background:var(--white);padding:10px 30px 10px 20px;margin-top:30px;max-width:120px;font-size:18px;line-height:1;}
.workitemtext h3{display:inline-block;font-size:24px;line-height:1;font-weight:bolder;background:#FFF;padding:10px 20px;margin-top:10px;}
@media screen and (max-width: 1520px) {
  .workitemtext{bottom:-20px;}
  .workitemtext h5{padding:7px 15px;font-size:20px;}
  .workitemtext span{padding:7px 20px 7px 15px;font-size:16px;max-width:100px;margin-top:20px;}
  .workitemtext h3{font-size:18px;padding:7px 15px;margin-top:7px;}
}
@media screen and (max-width: 1080px) {
  .workitemtext{bottom:-10px;}
  .workitemtext h5{padding:5px 10px;font-size:16px;}
  .workitemtext span{padding:5px 10px 5px 15px;font-size:14px;margin-top:15px;}
  .workitemtext h3{font-size:14px;padding:5px 10px;margin-top:5px;}
}

.homenews{padding-top:100px;}
.homenews .homenewsmain{}
.homenews .homenewsmain{}
.homenews .homenewsmain .titlegroup{position:relative;display:flex;flex-direction:column;align-items:center;margin-bottom:60px;}
.homenews .homenewsmain .titlegroup .t3{position:relative;z-index:1;letter-spacing:0.2em;}
.homenews .homenewsmain .titlegroup .subtitle{position:absolute;left:50%;top:10%;transform:translate(-50%,-50%);font-size:clamp(50px , calc(50px + 6vw) ,240px);line-height:1;letter-spacing:0.2em;font-weight:bolder;}
.homenews .homenewsmain .titlegroup:after{content:"";position:relative;z-index:1;width:170px;display:block;margin-top:30px;border-bottom:5px solid var(--themecolor);}
.homenews .homenewsmain .newslist{margin-bottom:50px;}
.homenews .homenewsmain .button{max-width:380px;padding:20px 100px;position:relative;font-weight:bolder;}
@media screen and (max-width: 1520px) {
  .homenews{padding-top:80px;}
  .homenews .homenewsmain .titlegroup{margin-bottom:50px;}
  .homenews .homenewsmain .titlegroup .t3{letter-spacing:0.1em;}
  .homenews .homenewsmain .titlegroup .subtitle{}
  .homenews .homenewsmain .titlegroup:after{width:150px;margin-top:20px;}
  .homenews .homenewsmain .newslist{margin-bottom:30px;}
  .homenews .homenewsmain .button{max-width:300px;padding:15px 80px;}
}
@media screen and (max-width: 1080px) {
  .homenews{padding-top:60px;}
  .homenews .homenewsmain .titlegroup{margin-bottom:30px;}
  .homenews .homenewsmain .titlegroup:after{width:100px;border-bottom-width:3px;margin-top:10px;}
  .homenews .homenewsmain .button{max-width:240px;padding:15px 60px;}
}


.homeabout{padding-top:60px;}
.homeabout .twocolumn{}
.homeabout .twocolumn .pic,.homeabout .twocolumn .map{width:50%;}
.homeabout .twocolumn .map .googlemap,.homeabout .twocolumn .map .googlemap iframe{height:100%;min-height:600px;}
.homeabout .twocolumn .pic figure:after{padding-top:80%;}
.homeabout .twocolumn .text{width:50%;padding:50px;}
.homeabout .twocolumn .text .inner{max-width:540px;margin:0 auto;}
.homeabout .twocolumn .text .titlegroup{margin-bottom:50px;}
.homeabout .twocolumn .text .titlegroup .t2{}
.homeabout .twocolumn .text .titlegroup .t5{letter-spacing:0.5em;}
.homeabout .twocolumn .text .tablelist{margin:20px auto;}
.homeabout .twocolumn .text .tablelist dl{font-size:20px;padding:20px 0;}
.homeabout .twocolumn .text .tablelist dl dt{width:150px;}
.homeabout .twocolumn .text .tablelist dl dd{width:calc(100% - 150px);}
.homeabout .twocolumn .text .button{padding:20px 100px;position:relative;font-weight:bolder;letter-spacing:0.1em;}
@media screen and (max-width: 1520px) {
  .homeabout .twocolumn .text{padding:30px;}
  .homeabout .twocolumn .text .titlegroup{margin-bottom:30px;}
  .homeabout .twocolumn .text .titlegroup .t5{letter-spacing:0.3em;}
  .homeabout .twocolumn .text .tablelist{margin:15px auto;}
  .homeabout .twocolumn .text .tablelist dl{font-size:16px;padding:15px 0;}
  .homeabout .twocolumn .text .tablelist dl dt{width:120px;}
  .homeabout .twocolumn .text .tablelist dl dd{width:calc(100% - 120px);}
  .homeabout .twocolumn .text .button{padding:15px 80px;max-width:300px;}
}
@media screen and (max-width: 1080px) {
  .homeabout{padding-top:30px;}
  .homeabout .twocolumn .map .googlemap,.homeabout .twocolumn .map .googlemap iframe{min-height:500px;}
  .homeabout .twocolumn .pic figure:after{padding-top:80%;}
  .homeabout .twocolumn .text{padding:30px 20px;}
  .homeabout .twocolumn .text .titlegroup{margin-bottom:20px;}
  .homeabout .twocolumn .text .tablelist dl{font-size:14px;padding:10px 0;}
  .homeabout .twocolumn .text .tablelist dl dt{width:100px;}
  .homeabout .twocolumn .text .tablelist dl dd{width:calc(100% - 100px);}
  .homeabout .twocolumn .text .button{padding:15px 60px;max-width:240px;}
}
@media screen and (max-width: 768px) {
  .homeabout .twocolumn .pic,.homeabout .twocolumn .map{width:100%;order:2;}
	.homeabout .twocolumn .map .googlemap,.homeabout .twocolumn .map .googlemap iframe{height:100%;min-height:300px;}
  .homeabout .twocolumn .text{width:100%;padding:20px;}
}



/* footer css */
.footer{background:var(--themecolor);}
.footmain{width:100%;max-width:1600px;margin:0 auto;padding:60px 40px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;}
.footlogo{display:block;transition:.3s;}
.footlogo:hover{opacity:0.7;}
.footmenu{}
.footmenu ul{display:flex;flex-wrap:wrap;}
.footmenu ul li{margin-left:50px;}
.footmenu ul li a{color:var(--white);font-size:18px;text-decoration:none;position:relative;transition:.3s;}
.footmenu ul li a:hover{color:var(--blue);}
.footmenu ul li a:after{content: "";position: absolute;left:0%;bottom: -5px;width: 100%;transform: scale(0) ;height: 2px;background: var(--blue);opacity: 0;visibility: hidden;transition: .4s ease-in-out;}

.copyright{background:var(--black);width:100%;}
.copyright p{width:100%;max-width:1400px;margin:0 auto;padding:10px 40px;font-size:14px;text-align:center;color:#fff;}
@media screen and (max-width: 1520px) {
  .footlogo{width:380px;}
  .footmenu{margin-left:20px;}
  .footmenu ul li{margin-left:30px;}
  .footmenu ul li a{font-size:16px;}
}
@media screen and (max-width: 1080px) {
  .footmain{padding:50px 20px;}
  .footlogo{width:200px;}
  .footmenu ul li{margin-left:20px;}
  .footmenu ul li a{font-size:14px;}
  .copyright p{padding:10px 20px;font-size:12px;}
}
@media screen and (max-width: 768px) {
  .footmain{padding:30px 20px;}
  .footlogo{width:240px;margin:0 auto 20px;}
  .footmenu{margin-left:0;width:100%;}
  .footmenu ul{width:100%;justify-content:center;}
  .footmenu ul li{width:33.333333%;margin-left:0px;padding:0 10px;text-align:center;margin-top:10px;}
  .copyright p{padding:5px 10px;}
}
@media screen and (max-width: 568px) {
  .footmenu ul li{width:50%;}
}
/* /footer css */

.pagebanner{position:relative;width:100%;height:380px;overflow:hidden;}
.pagebanner:after{position:absolute;left:0;top:0;padding-top:0;width:100%;height:100%;background:rgba(0,50,94,0.7);}
.pagebannertext{position:relative;z-index:10;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#FFF;padding-top:80px;}
.pagebannertext h1{font-size:50px;margin-bottom:10px;}
.pagebannertext h2{font-size:20px;text-transform:uppercase;letter-spacing:1px;}
@media screen and (max-width: 1520px) {
  .pagebanner{height:350px;}
  .pagebannertext h1{font-size:30px;margin-bottom:5px;}
  .pagebannertext h2{font-size:16px;}
}
@media screen and (max-width: 1080px) {
  .pagebanner{height:300px;}
  .pagebannertext h1{font-size:24px;}
  .pagebannertext h2{font-size:14px;}
}

.pagenews{}
.pagenews .pagenewslist{}
.pagenews .pagenewslist .layout{margin-right:-50px;margin-bottom:-50px;}
.pagenews .pagenewslist .layout .avcol3{padding-right:50px;margin-bottom:50px;}
@media screen and (max-width: 1520px) {
  .pagenews .pagenewslist .layout{margin-right:-30px;margin-bottom:-30px;}
  .pagenews .pagenewslist .layout .avcol3{padding-right:30px;margin-bottom:30px;}
}
@media screen and (max-width: 1080px) {
  .pagenews .pagenewslist .layout{margin-right:-20px;margin-bottom:-20px;}
  .pagenews .pagenewslist .layout .avcol3{padding-right:20px;margin-bottom:20px;}
}
@media screen and (max-width: 768px) {
  .pagenews .pagenewslist .layout .avcol3{width:50%;}
}
@media screen and (max-width: 568px) {
  .pagenews .pagenewslist .layout .avcol3{width:100%;}
}

.workgallery{display:flex;justify-content:space-between;flex-wrap:wrap;margin-bottom:50px;}
.workgallerypic{width:45%;}
.workgallerypic.work-bd>dt{display:none;}
.workgallerypic.work-bd>dt>figure:after{padding-top:80%;}
.workgallerythumb{width:calc(55% - 50px);}
.workgallerythumb .work-hd{display:flex;flex-wrap:wrap;margin-top:-30px;margin-left:-30px;}
.workgallerythumb .work-hd>li{margin-top:30px;padding-left:30px;width:33.333333%;}
.workgallerythumb .work-hd>li>figure{border:2px solid #ccc;}
.workgallerythumb .work-hd>li>figure:after{padding-top:80%;}
.workgallerythumb .work-hd>li.current>figure{border-color:#226fb4;}
@media screen and (max-width: 1520px) {
  .workgallery{margin-bottom:30px;}
  .workgallerythumb{width:calc(55% - 30px);}
  .workgallerythumb .work-hd{margin-top:-20px;margin-left:-20px;}
  .workgallerythumb .work-hd>li{margin-top:20px;padding-left:20px;}
}
@media screen and (max-width: 1080px) {
  .workgallery{margin-bottom:20px;}
  .workgallerythumb{width:calc(55% - 20px);}
  .workgallerythumb .work-hd{margin-top:-10px;margin-left:-10px;}
  .workgallerythumb .work-hd>li{margin-top:10px;padding-left:10px;}
}
@media screen and (max-width: 768px) {
  .workgallerypic{width:100%;margin-bottom:15px;}
  .workgallerypic.work-bd>dt>figure:after{padding-top:70%;}
  .workgallerythumb{width:100%;}
}


.newsinfo{display:flex;align-items:baseline;flex-wrap:wrap;margin-bottom:30px;}
.time{margin-right:20px;font-size:24px;color:var(--themecolor);font-weight:bolder;}
.title{font-size:24px;color:var(--themecolor);}
.content{}
.content figure{width:100%;max-width:800px;margin-bottom:50px;}
.content p{line-height:1.8;letter-spacing:1px;margin:0 auto 20px;}
@media screen and (max-width: 1520px) {
  .time{margin-right:15px;font-size:20px;}
  .title{font-size:20px;}
  .content figure{max-width:600px;margin-bottom:15px;}
  .content p{margin-bottom:15px;}
}
@media screen and (max-width: 1080px) {
  .newsinfo{margin-bottom:20px;}
  .time{margin-right:10px;font-size:16px;}
  .title{font-size:18px;}
  .content figure{max-width:500px;margin-bottom:10px;}
}
@media screen and (max-width: 768px) {
  .time{font-size:14px;}
  .title{width:100%;}
}

.about{}
.about .aboutmain hgroup{margin-bottom:50px;}
.about .aboutmain .content{margin-bottom:50px;}
.about .aboutmain .twocolumn{}
.about .aboutmain .twocolumn .text{width:420px;}
.about .aboutmain .twocolumn .map{width:calc(100% - 520px);}
.about .aboutmain .tablelist dl:not(:last-child){margin-bottom:20px;}
.about .aboutmain .tablelist dl dt{width:100px;border-bottom:3px solid var(--themecolor);padding:20px 0;}
.about .aboutmain .tablelist dl dd{width:calc(100% - 100px);border-bottom:1px solid #c2c2c2;padding:20px;}
.about .aboutmain .googlemap,.about .aboutmain .googlemap iframe{height:350px;}
@media screen and (max-width: 1520px) {
  .about .aboutmain hgroup{margin-bottom:30px;}
  .about .aboutmain .content{margin-bottom:30px;}
  .about .aboutmain .twocolumn .text{width:360px;}
  .about .aboutmain .twocolumn .map{width:calc(100% - 420px);}
  .about .aboutmain .tablelist dl:not(:last-child){margin-bottom:15px;}
  .about .aboutmain .tablelist dl dt{padding:15px 0;}
  .about .aboutmain .tablelist dl dd{padding:15px;}
  .about .aboutmain .googlemap,.about .aboutmain .googlemap iframe{height:300px;}
}
@media screen and (max-width: 1080px) {
  .about .aboutmain hgroup{margin-bottom:20px;}
  .about .aboutmain .content{margin-bottom:20px;}
  .about .aboutmain .twocolumn .text{width:300px;}
  .about .aboutmain .twocolumn .map{width:calc(100% - 320px);}
  .about .aboutmain .tablelist dl:not(:last-child){margin-bottom:10px;}
  .about .aboutmain .tablelist dl dt{padding:10px 0;}
  .about .aboutmain .tablelist dl dd{padding:10px;}
  .about .aboutmain .googlemap,.about .aboutmain .googlemap iframe{height:260px;}
}
@media screen and (max-width: 768px) {
  .about .aboutmain .twocolumn .text{width:100%;margin-bottom:20px;}
  .about .aboutmain .twocolumn .map{width:100%;}
  .about .aboutmain .tablelist dl:not(:last-child){margin-bottom:0px;}

}

.contact{}
.contact .contactmain{}
.contact .contactmain .form dl{}
.contact .contactmain .form dl dt{flex-wrap:wrap;font-weight:bolder;}
.contact .contactmain .form dl dt .small{display:block;width:100%;}

.contectban{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:500px;margin:0 auto 50px;padding:15px;background:#2b7b9d;color:#FFF;}
.contectban p{font-size:18px;letter-spacing:0.1em;margin-bottom:10px;}
.contectban i{width:38px;height:38px;display:inline-block;margin-bottom:10px;}
.contectban a{color:#FFF;font-size:38px;letter-spacing:0.1em;text-decoration:none;font-weight:bolder;transition:.3s;}
.contectban a:hover{color:var(--yellow);}
@media screen and (max-width: 1520px) {
  .contectban{max-width:380px;margin:0 auto 30px;padding:10px;}
  .contectban p{font-size:16px;}
  .contectban i{width:30px;height:30px;}
  .contectban a{font-size:30px;}
}
@media screen and (max-width: 1080px) {
  .contectban{max-width:300px;margin:0 auto 20px;padding:10px;}
  .contectban p{font-size:14px;}
  .contectban i{width:24px;height:24px;margin-bottom:5px;}
  .contectban a{font-size:24px;}
}
@media screen and (max-width: 768px) {
  
}

.services{}
.services .servicesmain{}
.services .servicesmain .twocolumn{margin:80px auto;}
.services .servicesmain .twocolumn .text{width:calc(50% - 100px);}
.services .servicesmain .twocolumn .text .linetitle{margin-bottom:50px;}
.services .servicesmain .twocolumn .text p{margin-bottom:38px;line-height:2;}
.services .servicesmain .twocolumn .pic{width:50%;}
.services .servicesmain .twocolumn .pic figure{}
.services .servicesmain .twocolumn .pic figure:after{padding-top:70%;}
@media screen and (max-width: 1520px) {
  .services .servicesmain .twocolumn{margin:60px auto;}
  .services .servicesmain .twocolumn .text{width:calc(50% - 50px);}
  .services .servicesmain .twocolumn .text .linetitle{margin-bottom:30px;}
  .services .servicesmain .twocolumn .text p{margin-bottom:30px;}
}
@media screen and (max-width: 1080px) {
  .services .servicesmain .twocolumn{margin:50px auto;}
  .services .servicesmain .twocolumn .text{width:calc(50% - 30px);}
  .services .servicesmain .twocolumn .text .linetitle{margin-bottom:20px;}
  .services .servicesmain .twocolumn .text p{margin-bottom:20px;}
}
@media screen and (max-width: 768px) {
  .services .servicesmain .twocolumn{max-width:500px;}
  .services .servicesmain .twocolumn .text{width:100%;}
  .services .servicesmain .twocolumn .text p{margin-bottom:15px;}
  .services .servicesmain .twocolumn .pic{width:100%;}
}

.servicecontact{position:relative;transition:.3s;}
.servicecontact:hover{box-shadow:0 0 5px 5px var(--themecolor);transform:translateY(-3px);}
.servicecontact:after{position:absolute;left:0;top:0;padding-top:0;position:absolute;width:100%;height:100%;background:rgba(0,50,94,0.8);}
.servicecontact a{padding:100px 50px;width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-decoration:none;color:#FFF;font-size:48px;font-weight:bolder;position:relative;z-index:10;}
@media screen and (max-width: 1520px) {
  .servicecontact a{padding:80px 30px;font-size:38px;}
}
@media screen and (max-width: 1080px) {
  .servicecontact a{padding:50px 20px;font-size:28px;}
}
@media screen and (max-width: 768px) {
  .servicecontact{max-width:500px;margin:30px auto 0;}
  .servicecontact a{padding:30px 10px;font-size:22px;}
}
@media screen and (max-width: 568px) {
	.servicecontact a{font-size:14px;}
}

.fileupload{position:relative;}
.fileupload .mwform-file-delete{position:absolute;}
.icontel{background:url(img/icontel.png) no-repeat;background-size:contain;background-position:center;}







