@media screen and (max-width: 768px) {

  /* 原田追加 */
  body,
  .t4-wrapper.c-offcanvas-content-wrap {
    overflow-x: hidden;
  }
  :root{
        --body-font-size: 14px;
  }

  
/* Mailform */
form:not(.form-no-margin) .control-group {
    display: flex;
    flex-direction: column;
    gap: .5em;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}
form:not(.form-no-margin) .control-group .control-label {
    width: 100%;
    padding: 0;
}
form:not(.form-no-margin) .control-group .controls {
    width: 100%;
    padding: 0;
}

/* Header */
div#t4-header {
    width: 100%;
    height: 60px;
    position: fixed;
    top: 0;
    left: 0;
    padding-inline: 15px;
    background: #ffffff;
    z-index: 10;
  border-radius:0;
}
#t4-header .navbar-brand {
    padding-block: 0;
}
#t4-header img.logo-img-sm {
    max-height: 45px;
}

/* Blog Archive page */
.blog-archive .blog-item {
    flex-direction: column;
}
.blog-archive .blog-item figure.item-image {
    min-width: unset;
    flex-basis: 100%;
}


















  
/**
     共通
     */

.inner {
	width: 100%;
}


.pagetitle {
	margin: 0;
}
.pagetitle span {
	font-size: 16px;
}
.t4-component {
	padding: 40px 5%;
}
.container {
	padding: 0 5%;
}
.t4-component .container {
	padding: 0;
}
.t4-header .container {
	padding: 0;
}


/**
     モバイルメニュー
     */
.t4-offcanvas {
	z-index: 99999;
}
.c-offcanvas.is-closed * {
	display: none;
}
.t4-offcanvas .t4-off-canvas-body .navbar.drilldown-effect .navbar-nav .btn-toggle {
	margin-top: 12px;
}




/**
     問い合わせ /contact
     */


/**
     会社案内
     */
table.gaiyo-table th {
	display: block;
	width: 100%;
	padding: 10px 0;
}
table.gaiyo-table td {
	display: block;
	width: 100%;
	padding: 10px;
	border-bottom: none;
}


/**
     フッター（サイトマップ）
     */
.ft-sitemap {
	display: none;
}
.ft-sitemap .profile {
	width: 100%;
}
.ft-sitemap .sitemap {
	margin-top: 40px;
	width: 100%;
}
.ft-sitemap .sitemap div {
	padding: 0;
}
.ft-sitemap .sitemap ul li {
	padding: 0 10px 10px 0;
}


/***custom****/
/*ヘッダー*/
  .navbar-brand {
    width:80%;
  }

  /*TOPティーザー*/
  .mainteaser img {
    min-height: 80vh;
    height: auto;
}
  
    .carousel-caption {
        padding: 100px 1.5rem 50px;
        left: 0;
        right: 0;
        top: 0;
        bottom: unset;
        background: linear-gradient(180deg, rgb(65 106 181 / 80%) 70%, rgb(104, 164, 24, 0) 100%);
        /* color: #111; */
        border-radius: 0;
      }
  .carousel-caption h1 {
    font-size:30px;
  }
  .t4-masthead .t4-masthead-title {
    color:#fff;
  }
  .t4-masthead-detail {
    position:relative;
    z-index:10;
  }
  .t4-masthead-inner {
    padding:6rem 0 4rem;
  }
  .t4-masthead-inner.has-bg {
    position:relative;
  }
   .t4-masthead-inner.has-bg:after {
     content:"";
     position:absolute;
  width:100%;
  height:100%;
  top:0;
  left:0;
  background:rgba(0,0,0,.3);
}
  
/*ボタン*/
  .linkbtn {
    min-width:unset;
    width:100%;
    padding:1.3rem 3rem 1.3rem 2rem;
    margin-inline:auto;
  }
   
  
/*右側へ要素を広げる*/
.column-out-right{
    margin-right: auto;
}

/*左側へ要素を広げる*/
.column-out-left{
    margin-left: auto;
}
   /*角丸*/
.round-right,
.round-left {
    border-radius:var(--round);
}

/*左右重ね記事*/
.fltimg {
    width:100%;
}
.flttxt {
    position:static;
    width:100%;
    padding:0;
  transform:none!important;
  background:transparent;
}

  /*トップページイラスト配置*/
.illust01,
.illust02,
.illust03,
.illust04 {
    display:none;
}
.illust05 {
    right:0;
    top:-30px;
  width:80px;
}
  
  /*見出し*/
.mds-en-jp-row {
    font-size:2.25rem;
  flex-direction:column;
    line-height:1!important;
  align-items:flex-start;
}
.mds-en-jp-row span {
    display:inline-block;
    font-size:1rem;
}
.mds-en-jp-column {
    font-size:2.25rem;
    gap:1rem;
}
.mds-en-jp-column span {
    font-size:1rem;
    gap:1rem;
}
.mds-underbar {
    font-size:2rem;
  gap:1rem;
}

  .heading03 {
	padding: 0 0 0 40px;
}
.heading03::before {
	width: 30px;
  top:15px;
}
.heading03a {
	padding: 0 0 0 45px;
}
.heading03a::before {
	width: 30px;
	top: 23px;
}
  
  
.taglist {
  flex-wrap:wrap;
}
.taglist li {
  text-align:center;
  width:calc(50% - 1rem);
}

  .flowlist li span {
    display: block;
    width: unset;
}

  
/* グリッドカラム SP横スクロール */
.gridwrap {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: auto;
    padding: 1em 10vw;
    scroll-snap-type: x mandatory;
  gap:1rem;
}
.gridwrap > div {
    flex-basis: 80vw;
    scroll-snap-align: start;
  min-width:80vw;
}

dt {
  float: none;
  font-weight:700;
}
dd {
 margin-left: 0;
}

.service-fv {
/* padding-top:30px; */
}
  .service-fv {
    padding-top: 80vw;
    padding-bottom: 3rem;
    background-size: 150%;
    background-position: top right;
    background-color: #eee;
}
  .service-fv p {
    background:rgba(255,255,255,.5);
    padding:1rem;
  }
  /*TOP事業内容*/
.card-title.h3 {
  font-size:1.8rem;
}

  .w-sp-100 {
    width:100%;
  }


.bnr .col-sm {
    padding-right: 40px !important;
    position: relative;
}
.bnr .col-sm::after {
    content: '→';
    position: absolute;
    right: 15px;
    top: calc(50% - 10px);
    line-height: 1;
    font-size: 20px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
  color: var(--color-primary);
}

 
/* ↓消さない */ 
}
