/*!
Theme Name: NISHIYAMA
Description: 有限会社西山工機 2025.7〜
*/


html {  overflow-x: hidden;  font-size:16px; }

.m10{margin:1rem;}
.m20{margin:2rem;}
.m30{margin:3rem;}
.m50{margin:5rem;}

.p10{padding:1rem;}
.p20{padding:2rem;}
.p30{padding:3rem;}
.p50{padding:5rem;}
	
.mb10{margin-bottom:1rem;}
.mb20{margin-bottom:2rem;}
.mb30{margin-bottom:3rem;}
.mb50{margin-bottom:5rem;}
.mb66{margin-bottom:6.66rem;}
.mb70{margin-bottom:7rem;}
.mb100{margin-bottom:10rem;}
.mb200{margin-bottom:20rem;}

.mt10{margin-top:1rem;}
.mt20{margin-top:2rem;}
.mt30{margin-top:3rem;}
.mt50{margin-top:5rem;}
.mt80{margin-top:8rem;}
.mt100{margin-top:10rem;}

.mt202{margin-top:20px;}

.mtb10{margin-top:1rem;margin-bottom:1rem;}
.mtb20{margin-top:2rem;margin-bottom:2rem;}
.mtb30{margin-top:3rem;margin-bottom:3rem;}
.mtb50{margin-top:5rem;margin-bottom:5rem;}
.mtb70{margin-top:7rem;margin-bottom:7rem;}
.mtb100{margin-top:10rem;margin-bottom:10rem;}
.mtb200{margin-top:20rem;margin-bottom:20rem;}

.mrl10{margin-right:1rem;margin-left:1rem;}
.mrl20{margin-right:2rem;margin-left:2rem;}
.mrl30{margin-right:3rem;margin-left:3rem;}
.mrl50{margin-right:5rem;margin-left:5rem;}

.mr20{margin-right:2rem;}

.ml10{margin-left:1rem;}
.ml20{margin-left:2rem;}
.ml30{margin-left:3rem;}

.pb10{padding-bottom:1rem;}
.pb20{padding-bottom:2rem;}
.pb30{padding-bottom:3rem;}
.pb40{padding-bottom:4rem;}
.pb50{padding-bottom:5rem;}
.pb60{padding-bottom:6rem;}
.pb70{padding-bottom:7rem;}
.pb100{padding-bottom:10rem;}

.ptb10{padding-top:1rem;padding-bottom:1rem;}
.ptb20{padding-top:2rem;padding-bottom:2rem;}
.ptb30{padding-top:3rem;padding-bottom:3rem;}
.ptb50{padding-top:5rem;padding-bottom:5rem;}
.ptb70{padding-top:7rem;padding-bottom:7rem;}
.ptb90{padding-top:9rem;padding-bottom:9rem;}
.ptb100{padding-top:10rem;padding-bottom:10rem;}

.prl10{padding-right:1rem;padding-left:1rem;}
.prl20{padding-right:2rem;padding-left:2rem;}
.prl30{padding-right:3rem;padding-left:3rem;}
.prl50{padding-right:5rem;padding-left:5rem;}

.prl5res{padding-right:5rem;padding-left:5rem;}

.pl10{padding-left:1rem;}
.pl20{padding-left:2rem;}

.pr10{padding-right:1rem;}
.pr20{padding-right:2rem;}
.pr30{padding-right:3rem;}
.pr40{padding-right:4rem;}

.pt10{padding-top:1rem;}
.pt20{padding-top:2rem;}
.pt30{padding-top:3rem;}
.pt50{padding-top:5rem;}
.pt70{padding-top:7rem;}
.pt100{padding-top:10rem;}
.pb100{padding-bottom:10rem;}
.pb200{padding-bottom:20rem;}
.gap0{padding-left:0px;padding-right:0px;}

.secP200{padding-top:15vw;padding-bottom:15vw;}
.secM15vw{margin-top:15vw;margin-bottom:15vw;}
.secM10vw{margin-top:10vw;margin-bottom:10vw;}


body {
  font-family: "IBM Plex Sans JP", "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
  font-feature-settings: 'palt' 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.8;
  overflow: hidden;
  font-size:16px;
}
a {
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
  text-decoration: none; 
  color:#3A679B;
}
a:focus, a:hover, a:active {
  outline: 0;
  color:#3A679B;
  text-decoration: none;
}
a, .button {
  -webkit-transition: .3s;
  -moz-transition: .3s;
  -o-transition: .3s;
  transition: .3s
}
::selection {
  color: #111;
  background: #DFDFDF;
  text-shadow: none;
}
::-webkit-selection {
  color: #111;
  background: #DFDFDF;
  text-shadow: none;
}
::-moz-selection {
  color: #111;
  background: #DFDFDF;
  text-shadow: none;
}
:active,:focus {
  outline: none;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0px;
  font-feature-settings: 'palt' 1;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: inherit
}
ul {
  margin: 0px;
  padding: 0px
}
ul li {
  list-style: none
}
p{margin:0;}
strong{font-weight:600;}

.linkover {
  position: relative;
  transition:.3s all;
}
.linkover a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent:-999px;
}
.linkover:hover {
  filter:alpha(opacity=90);/* IE 6,7*/
  -ms-filter: "alpha(opacity=90)";/* IE 8,9 */
  -moz-opacity:0.9;/* FF , Netscape */
  -khtml-opacity: 0.9;/* Safari 1.x */
  opacity:0.9;
  zoom:1;/*IE*/
}
.gmap {
overflow: hidden;
height:26rem;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

.text-center{
  text-align: center;
}
.text-center-spleft{/*spでは左揃えに*/
  text-align: center;
}
#scrollUp, #back-top {
  background: #004FAC;
  height: 50px;
  width: 50px;
  right: 31px;
  bottom: 0px;
  position: fixed;
  color: #fff!important;
  font-size: 20px;
  text-align: center;
  line-height: 48px;
  border: 2px solid transparent;
  box-shadow: 0 0 10px 3px rgba(108, 98, 98, 0.2);
  z-index:100;
}

@media (max-width: 575px) {
  #scrollUp, #back-top {
    right: 0px
  }
}
#scrollUp a i, #back-top a i {
  display: block;
  line-height: 50px;
  color:#fff;
}
#scrollUp:hover {
  color: #fff
}

/**Gメニュー**/
.navigation{
  padding:0.5rem 0 0.5rem;
}
.nav-header{
  padding: 0 15px;
  display: flex;
  justify-content:space-between;
}
.nav-logo {
  max-width:300px;
}
.nav-logo img{
  height:60px;
}
.nav-menu > li.nav-btn{
  display: flex;
}
.nav-menu > li.nav-btn > a{
  color:#fff;
}

.nav-inner{}
a.nav-logo .logotype{color:#163870}
.logotype{
  font-weight:800;
  font-size:1rem;
}
@media (max-width: 767px) {
  .nav-tel,.nav-ctbtn{display:none;}
}

@media (min-width: 768px) {
  .nav-tel-sp{display: none;}
  .sp-navinfo-bx{display: none;}
}

/**オフキャンバスメニュー**/
@media (max-width: 991.98px) {
  .offcanvas-collapse {
    position: fixed;
    top: 58px;
    bottom: 0;
    left: 100%;
    width: 100%;
    padding-right: 1rem;
    padding-left: 1rem;
    overflow-y: auto;
    visibility: hidden;
    background-color: #343a40;
    transition: transform .3s ease-in-out, visibility .3s ease-in-out;
  }
  .offcanvas-collapse.open {
    visibility: visible;
    transform: translateX(-100%);
  }
  .nav-item a{
    color:#111B50;
  }
  .nav-ct{
    margin:auto;
  }
  .dropdown-menu {
    position: absolute;
    z-index: 1000;
    display: none;
    min-width: 10rem;
    padding: 0.5rem 0;
    margin: 0;
    font-size: 1rem;
    color: #000;
    text-align: left;
    list-style: none;
    background-color: #435567;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 0.25rem;
}
  .sp-navinfo {
    position: absolute;
    bottom: 40%;
    width:100%;
    text-align: center;
  }
  .sp-navinfo-bx{
    width: 100%;
    padding: 1rem;
    background-color: #90CB71;
  }
  .sp-navinfo-bx p{
    display: inline-block;
    position: relative;
    font-weight:600;
    font-size:1.35rem;
    line-height: 1.2;
  }
  .sp-navinfo-bx p span{
    font-weight:300;
    font-size:1rem;
  }
  .sp-navinfo-bx p i{font-size:14px;margin-right:5px;}
}

.dropdown-item {
    padding: 1rem 1rem;
    font-weight: 600;
    color: #212529;
}
.nav-scroller .nav {
  color: rgba(255, 255, 255, .75);
}
.nav-scroller .nav-link {
  padding-top: .75rem;
  padding-bottom: .75rem;
  font-size: .875rem;
  color: #6c757d;
}
.nav-scroller .nav-link:hover {
  color: #007bff;
}
.nav-scroller .active {
  font-weight: 500;
  color: #343a40;
}
.nav-link:hover, .nav-link:focus {
    color: #E5CA35;
}

/*** テキスト装飾汎用クラス ***/
.f32b{font-size:2rem;font-weight:600;line-height:1.7;}
.marker-blue{background: linear-gradient(transparent 60%, rgba(113,143,193,0.8) 60%);
  line-height: 1.2;
 }
.subtitle01{
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight:700;
  text-transform: uppercase;
  color:#163870;
}


/*** **** ***/
.hero{
  background-image: url("src/img/home/hero2.webp");
  background-repeat: no-repeat;
  background-position: right;
  background-size: 90%;
  height:100%; 
}
.hero-bg{
  background-image: url("src/img/home/hero.webp");
  background-repeat: no-repeat;
  background-position: right;
  background-size: cover;
  height:100%;  
}
.hero-title{
  font-size:2.625rem;
  font-weight:900;
  display:flex;
  justify-content: center;
  align-items: center;
  padding-top:15rem;
  padding-bottom:15rem;
}
.hero-title h1{
}
.hero-title h1 span{
  background: linear-gradient(transparent 60%, rgba(113,143,193,0.8) 60%);
  line-height: 1.2;
  display: inline-block;
}






.sctp{
  padding-top:4.375rem;
  padding-bottom:4.375rem;
}
.heading01{
  font-size:2.25rem;
  font-weight:900;
  line-height:1.5;
  padding-top:10px;
}

.home-strengths-img img{
  width:500px;
  height:520px;
  object-fit: cover;
  object-position:10% 100%;
  box-shadow: -100px 50px 0 0 #163870;
}
.home-strengths-img {
  margin-top:3rem;
}
.btn-anime {
  line-height: 1.5;
  position: relative;
  overflow: hidden;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  vertical-align: middle;
  text-decoration: none;
}


.str-banner {
  overflow: hidden;
  padding: 1.5rem 0 1.5rem 1.5rem;
  border-radius: 0;
  background-image: linear-gradient(90deg, rgba(255, 255, 255, 1) 96%, rgba(52, 80, 126, 1) 96%);
  border:1px solid #EBEBEB;
  border-right:10px #111;
  width:100%;
  display: flex;
  justify-content: space-between;
  color:#000;
  margin-bottom:4rem;
}

.str-banner-inner {
  position: relative;
  padding-top:1.5rem;
  padding-bottom:1.5rem;
  transition: color 0.3s ease; 
  transition-delay:0.2s;
}
.str-banner:hover {
  color:#fff;
}
.str-banner-inner h2{
  font-weight:800;
  font-size:1.5rem;
  padding-bottom:1rem;
}
.str-banner-inner P{
  max-width:360px;
  padding-top:1rem;
}
.btn-icon{
  display: flex;
  justify-content: center;
  align-self: anchor-center;
  width: 25px;
  height: 25px;
  z-index:5;
  margin-right:3px;
}
.btn-icon i{font-size:1.6rem;width:50px;color:#000;}

.str-banner:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform:scaleX(0);
  -webkit-transform-origin: left top;
  transform-origin: left top;
  background: #34507E;
  color:#fff;
}

.str-banner:hover:before {
  -webkit-transform-origin: right top;
  transform: scaleX(1);
  color:#fff;
}

#home-product{
  background-color: #F5F5F5;
}
.main-heading p{
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight:300;
  font-size:3.125rem;
  letter-spacing:0.1em;
  text-transform: uppercase;
  color:#163870;
  line-height:1;
}
.main-heading h1{
  color:#000;
  font-size:1.125rem;
  letter-spacing:0.2em;
  font-weight:600;
}

.shortcut-link{
  display: flex;
  justify-content: center;
  align-items: center;
}

.head-exp{
  margin-top:3rem;
  margin-bottom:3rem; 
}



/*** btn primary ***/
.btn,
a.btn,
button.btn {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 0.7rem 3.5rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
}

a.btn-primary{
  background-image: linear-gradient(160deg, rgba(27, 65, 152, 1), rgba(28, 96, 208, 1));
  border-radius: 50px;
  color:#fff;
}

.btn-center{
  display: flex;
  justify-content: center;
  align-items: center;
}

/*** END btn primary ***/

/*** home topics ***/
.home-topics-img{}
.home-topics-img img{
  }
.home-topics-item{}
.home-topics-meta{
  display: flex;
  padding:0.5rem 0;
}
.home-topics-meta .date{
  font-family: "Jost", sans-serif;
  font-weight:400;
  font-size:0.875rem;
  color:#163870;
  margin-right:1rem;
  line-height: 1.4;
  
}
.home-topics-meta .cat{
  background-color: #163870;
  color:#fff;
  font-weight:400;
  font-size:0.875rem;
  padding:0 1.5rem;
  line-height: 1.4;
  
}
.home-topics-item h2{
  font-size:1rem;
  font-weight:600;
}






.photo-banner{
  color:#fff;
  text-align: center;
  font-size:1.5rem;
  font-weight:600;
  letter-spacing: 0.2em;
  padding-top:7rem;
  padding-bottom:7rem;
  text-shadow:1px 1px 3px rgba(0,0,0,.5);
}
.photo-banner-about{
  background-image: url("src/img/home/home-about.webp");
  background-position: center;
  background-size: cover
}
.photo-banner-contact{
  background-color:#ccc;
  background-position: center;
  background-size: cover
}

/*** home equipment ***/
#home-equipment{
  background-color: #163870;
}
#home-equipment .main-heading p{
  color:#fff;
}
#home-equipment .main-heading h1{
  color:#B4B4B4;
}

.img169{
    margin-right:0.5rem;
  margin-left:0.5rem;}
.img169 img{
  object-fit: cover;
  width:340px;
  height:200px;
}
.equipment-carousel{
  padding:3rem 0;
}

#home-recruit{
  background-image: url("src/img/home/3541_2.jpg");
  background-position: right center;
  padding:6.6rem 0;
  background-size: cover;
}
#home-recruit .main-heading{
}
#home-recruit .main-heading h1{
  color:#fff;  
  text-shadow:1px 1px 3px rgba(0,0,0,0.6)
}
#home-recruit .main-heading p{
  color:#fff;
  text-shadow:1px 1px 6px rgba(0,0,0,0.6)

}
.home-recruit-copy p{
  color:#fff;
  font-weight:600;
  font-size:1.5rem;
  letter-spacing:0.2em;
  line-height: 1.5;
  margin-bottom:4rem;
  text-shadow:1px 1px 3px rgba(0,0,0,0.5)
}

/*cta*/
.cta{
  background-color:#466598;
  padding:2rem 0;
}
.cta-heading-wh{
  margin-bottom:2rem;
}
.cta-heading-wh h1{
  font-size:1.5rem;
  color:#fff;
  font-weight:600;
  text-align: center;
  letter-spacing:0.1em;
}
.flex-center{
  display: flex;
  justify-content: center;
}

.cta-btn {
  position: relative;
  transition:.3s all;
  display:flex;
  justify-content: center;
  margin:1rem;
}
.cta-btn a{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent:-999px;
}

#footer{
  background-color: #242A33;
  padding-top:2rem;
  color:#fff;
}
.footer-logo img{
  width:300px;
}
.footer-logo a{
  color:#fff;
}
.footer-logo a:hover{
  color:#3AABBF;
}
.footer-logo p{
  font-weight:600;
  letter-spacing:0.05em;
  font-size:1.125rem;
}
.copyright{
  border-top:1px solid #DEDEDE;
  padding:10px;
}
.copyright span{
  display: block;
  font-size:0.75rem;
  color:#716E6E;
  text-align: left;
  margin-right:7%;
}
.footer-address{
  font-weight:3600;
  padding:1rem 0;
}

.footer-menu ul li a{
  color:#fff;
  padding:0.25rem 0;  
}
.footer-menu-ctr{
  display: flex;
  justify-content: space-evenly;
  margin-bottom:2rem;
}
.footer-menu{
  padding-right:3rem;
  padding-left:1rem;
}
.footer-menu ul li {
  color:#fff;
  padding:0.25rem 0;
}
.footer-menu ul li a:hover{
  color:#3AABBF;
}
.footer-menu ul li span.b{
  font-weight:600;
} 
.footer-menu ul li ul{
  padding-left:1rem;
}
.footer-menu ul li::before{
 content:"-";
  padding-right:5px
}

/*下層ページ*/

/*** ABOUT ***/
.page-header{
  background-color: #fff;
  box-shadow:0px 3px 6px #ccc;
  padding-top:8.375rem;
}
.page-title{
  font-family: "Jost", sans-serif;
  font-size:5rem;
  font-weight:200;
  color:#163870;
  line-height:1.1;
  margin-bottom:2rem;
}
.page-title h1{
  text-transform: uppercase;
}
.company-outline{margin-top:3rem;}
.company-outline dl{
  border-top:1px solid #707070;
  display: flex;
  padding:2.25rem 0.5rem;
  line-height:1.4;
}
.company-outline dl dt{
  font-weight:600;
  letter-spacing:0.05em;
  width:20%;
  text-align: center;
  padding:0 1rem;
}
.company-outline dl dd{
  width:80%;
}
.message-kojo{
  background-image:url("src/img/page/kojo2.jpg");
  background-position: center;
  background-size:cover;
  height:400px;
}
.message-outer{
  background-color: #466598;
  margin-top:-7.875rem;
  padding-top:7.875rem;
  padding-bottom:7rem;
}
.message-inner{
  max-width:800px;
  color:#fff;
  margin:auto;
  padding-right:2rem;
  padding-left:2rem;
}
.header-nega{ 
  margin-bottom:4rem;
}
.header-nega h2{
  color:#fff;
  font-weight:600;
  font-size:1.125rem;
}
.subtitle02{
  color:#163870;
  font-size:3.125rem;
  font-weight:300;
  font-family: "Jost", sans-serif;
  line-height:1;
  letter-spacing:0.1em;
  padding-bottom:1rem;
}
.message-serif{
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.message-serif h3{
  font-size:1.125rem;
  font-weight:600;
  margin-bottom:1rem;
  letter-spacing:0.1em;
}
.message-serif p{
  margin-bottom:1rem;
  line-height:1.75;
}
.history dl{}
.history dl dt{
  font-family: "Jost", sans-serif;
  font-size:1.5rem;
  font-weight:300;
  color:#163870;
  margin-top:2rem;
}
.history dd{
  margin-left:2rem;
}

/***********END ABOUT**/

/*** midashi ***/
.scth01{margin-bottom:2rem;}
.scth01 p{
  color:#163870;
  font-size:3.125rem;
  font-weight:300;
  font-family: "Jost", sans-serif;
  line-height:1;
  letter-spacing:0.1em;
  padding-bottom:1rem;
}
.scth01 h2{
  color:#000;
  font-size:1.125rem;
  font-weight:600;
  letter-spacing:0.2em;
}
.label{
  color:#163870;  
  font-family: "Jost", sans-serif;
  font-weight:300;
  font-size:0.75rem;
  letter-spacing:0.01em;
}


/*** PAGE - STRENGTHS ***/

.page-title-2{}
.page-title-2 p{
  color:#163870;
  font-size:1.55rem;
  font-weight:300;
  font-family: "Jost", sans-serif;
  line-height:1;
  letter-spacing:0.05em;
  padding-bottom:1rem;
  text-transform: uppercase;
}
.page-title-2 h1{
  font-size:2.25rem;
  font-weight:600;
}
.doc{margin:auto;}
.doc p{
  max-width:800px;
  margin-right:auto;
  margin-left:auto;
  margin-bottom:1rem;
}
.doc .f16b{
  padding-top:1rem;
}
.strngths-topbg-al{
  background-image: url("src/img/page/strengths/al001.webp");
  background-position: center right;
  background-size: contain;
  background-repeat: no-repeat;  
}
.strngths-topbg .doc p{
  text-shadow:1px 1px 1px #fff;
}
.strngths-topbg-short{
  background-image: url("src/img/page/strengths/short001.webp");
  background-position: center right;
  background-size: contain;
  background-repeat: no-repeat;  
}
.fleximg100-50{margin-bottom:2rem;}
.fleximg100-50 img{    
  object-fit: cover;
  width: 1200px;
  height: 400px;}

/*** PAGE - Equipment ***/

.equipment-list{
  overflow-y: scroll;
}
.table{
  width:100%;
}
.table tr{
  width:100%;
}
.table tbody tr th{
  padding:1rem;
  border-bottom:1px solid #163870;
  padding-right:1rem;
  font-weight:600;
}
.table tr td{
  padding:1rem ;
  border-bottom:1px solid #999;
  line-height:1.2;
}
.table tbody  {
  margin-bottom:2rem;
}
.table thead tr th{
  padding-bottom:1rem;
  padding-top:3rem;
  font-weight:600;
  width:100%;
  color:#163870;
}
.btm-img{
  display: flex;
  justify-content: center;
  padding-top:5rem;
}
.btm-img img{
  width:80%;
  height:300px;
  object-fit: cover;
}
.table tbody tr td:nth-of-type(n+2):nth-child(-n+5) {
  width:8%;
}
.table tbody tr td:last-of-type{
  width:12%;
  text-align: center;
}

/*** PAGE - Contact ***/

.contact-tel address{
  font-size:2.375rem;
  font-weight:600;
  margin-bottom:1rem;
}
.contact-tel p{
  font-size:1rem;
  font-weight:500;
  color:#466598;
}
.contact-tel address::before{
  content: "";
  display: inline-block;
  background-image:url("src/img/phone-volume.svg");
  height:30px;
  width:30px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-right:1rem;
}
.contact-tel{
  margin-bottom:3rem;
  text-align: center;
}

/*** PAGE - Product ***/
.product-img img{
  object-fit: cover;
  
}
.product-desc h2{
  font-size:1.1rem;
  font-weight:600;
}
.product p{
  padding-left:1rem;
  
  max-width:370px;
}
.product p.p-spec{
  
}
.product-item{
  padding:1rem;
  margin-bottom:1rem;
}
.product-detail h3{
  font-weight:600;
  
}
.product-detail p{
  font-weight:400;  
}
.product-detail p.notes{
  line-height:1.3;
  margin-top:10px;;
}
.dpt-entry-wrapper{
  margin-bottom:2rem;
}

/*ページネーション*/
.pagination {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  padding:1rem 0;
  justify-content: center;
  margin-top:3rem;
}
#pagenation > span.current{background:#466598;padding:10px;color:#fff;;border-radius: 50%;}

#pagenation > span.current {
    display: inline-block;
    color: #fff;
    border-radius: 50%;
    text-decoration: none;
    width: 45px;
    height: 45px;
    text-align: center;
}

#pagenation >a.page-numbers {
    display: inline-block;
    color: #466598;
    border-radius: 50%;
    text-decoration: none;
    width: 45px;
    height: 45px;
    text-align: center;
  font-weight:600;
  padding-top:0.5rem;padding-bottom:0.5rem;
}


/** strengths **/
.str-header-img{display: none;}


/*contact form7*/
input, textarea {
   font-size:1.1rem;padding:0.5rem;
}
#contact input{font-size:1.1rem;padding:0.5rem;border: 1px solid #ccc; transition:all 0.3s;}
.required{font-size:0.75rem;border:1px solid #c90000; padding:1px 5px;color:#c90000;margin-right:10px;}
#contact .cf-wrap{padding:1rem;margin-bottom:1rem;transition:0.3s;}
#contact textarea {
    text-rendering: auto;
    color: fieldtext;
    letter-spacing: normal;
    word-spacing: normal;
    line-height: normal;
    text-transform: none;
    text-indent: 0px;
    text-shadow: none;
    display: inline-block;
    text-align: start;
    appearance: auto;
    -webkit-rtl-ordering: logical;
    resize: -internal-textarea-auto;
    cursor: text;
    overflow-wrap: break-word;
    background-color: field;
    column-count: initial !important;
    margin: 0em;
    border-width: 1px;
    border-style: solid;
    border-color: light-dark(rgb(118, 118, 118), rgb(133, 133, 133));
    border-image: initial;
    padding: 2px;
    white-space: pre-wrap;
}
.uploadform{
  
}
.wpcf7 input[name="your-name"] { /* 名前入力欄 */
	width: 85%;
}
.wpcf7 input[name="company"] { /* メール入力欄 */
	width: 85%;
}
.wpcf7 input[name="your-email"] { /* メール入力欄 */
	width: 85%;
}
.wpcf7 input[name="tel"] { /* メール入力欄 */
	width: 85%;
}
.wpcf7 textarea[name="your-message"] { /* 本文入力欄 */
	width: 100%;
}

#contact .wpcf7-submit{
  width: 200px;
  background-color: #3AABBF;
  color: #fff;
  font-weight: 600;
  border: none;
  text-align: center;
  box-shadow:0px 0px 5px 1px #ccc;
}
#contact .wpcf7-submit:hover{
  width: 200px;
  background-color: #1C60D0;
  cursor:pointer;
  box-shadow:none;
}
.inq-t{font-weight:500;}



/* チェックされたラジオボタン内側のスタイル */
input[type="radio"]::before {
  background-color: #1cb4d3;
  border-radius: 50%;
  bottom: 0;
  content: "";
  height: 12px;
  left: 0;
  margin: auto;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 12px;
}
/* チェックされたらラジオボタン内側を表示 */
input[type="radio"]:checked::before {
  opacity: 1;
}
/* デフォルトのラジオボタンのスタイル */
input[type="radio"] {
  appearance: none; /* デフォルトのスタイルを消す */
  border: 1px solid #1cb4d3;
  border-radius: 50%;
  height: 15px;
  width: 15px;
  margin: 0px 3px 3px 5px;
  position: relative;
  vertical-align: middle;
}
.annotation{font-size:0.85rem;font-weight:400;}
.wpcf7-list-item {
    margin-top: 1rem;
    margin-bottom: 1rem;
}




/***プライバシーポリシー***/
#privacypolicy ol{list-style: decimal; padding-left:1.3rem;}
#privacypolicy h2{margin-bottom:2rem;font-size:1.75rem; font-weight:600;color:#163870;}
#privacypolicy h3{margin-bottom:0.5rem;font-size:1.125rem; font-weight:600;}
#privacypolicy p{margin-bottom:2rem;}


/*** font size ***/
.f45b{font-size:2.8rem; font-weight:600;line-height:1.35;}
.f36b{font-size:2.25rem; font-weight:600;line-height:1.35;}

.f28b{font-size:1.75rem; font-weight:600;line-height:1.35;}
.f28b-center{font-size:1.75rem; font-weight:700;line-height:1.35;text-align: center;}

.f18b{font-size:1.125rem;font-weight:600;line-height:1.75;}
.f16b{font-size:1rem;font-weight:600;line-height:1.75;}

/*** font color ***/

/*** background color ***/
.bg-blue{background-color:#466598;}
.bg-glay{background-color: #F5F6F8;}
/*** button ***/
.btn-secondary{background-color:#EF8000;color:#fff;}
.btn-secondary:hover{background-color:#3AABBF;color:#fff;}
.btn-secondary-outline{border:1px solid #EF8000;color:#EF8000;}
.btn-round{background-color:#00B1FF;border-radius:50px;color:#fff;}
.btn-skel{border:1px solid #fff; border-radius:6px;color:#fff;}
a.btn-skel:hover{background-color:#1A4C8F;color:#fff;} 


/*** news topics ***/

#blog p{font-size:1rem;font-weight:400;line-height:1.7;margin-bottom:1rem; }
#blog h1{font-size:36px;font-weight:600;line-height:1.2;margin-top:2rem;margin-bottom:1rem; }
#blog h2{font-size:28px;font-weight:600;line-height:1.2;margin-top:1.7rem;margin-bottom:1rem; }
#blog h3{font-size:22px;font-weight:600;line-height:1.2;margin-top:1.5rem;margin-bottom:1rem;color:#163870; }
#blog h4{font-size:20px;font-weight:600;line-height:1.2;margin-top:1.5rem;margin-bottom:5px; }
#blog h5{font-size:18px;font-weight:600;line-height:1.2;margin-top:1.5rem; }
#blog h6{font-size:16px;font-weight:800;line-height:1.2;margin-top:1.5rem; }
.dpt-categories a{color:#fff;pointer-events: none; }
.dpt-categories{background-color: #1C60D0;color:#fff;line-height:1.2;padding:3px 5px; }

@media (min-width: 782px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
    padding-bottom:1rem;
    padding-right:1rem;
    padding-left:1rem;
  }
}
.wp-block-image :where(figcaption) {
    margin-bottom: 1em;
    margin-top: 0;
  color:#777;
}