@charset "UTF-8";
/**********************
　 Hp20 : nashi
 *********************/

* {
	color: var(--base-color);
	font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: var(--font-size);
	text-decoration: none;
}
select {
	-webkit-appearance: none;/* ベンダープレフィックス(Google Chrome、Safari用) */
	-moz-appearance: none;	/* ベンダープレフィックス(Firefox用) */
	appearance: none;	/* 標準のスタイルを無効にする */ 
}
::-ms-expand {	/* select要素のデザインを無効にする（IE用） */
	display: none;
}
h1 {
	display: none;
	height: 0;
}
h2 {
	color: #fff;
	font-size: 300%;
	font-weight: bold;
	position: relative;
	width: 100%;
	text-align: center;
	top: -100px;
}
h3 {
	font-weight: bold;
}

input[type=checkbox]{
	transform:scale(2.0);
}
/*
::::::::::::::::::::
 ヘッダーとフッター
::::::::::::::::::::
*/
header {
	background-color: var(--header-background-color);
	position: fixed;
	top: 0px;
	width: 100%;
	height: 80px;
	opacity: 0.8;
	z-index: 0;
}
header * {
	color: var(--header-color);
	margin: 0 10px;
}
header div {
	float: left;
}
header div.bar_string {
	width: calc(20% - 20px);
	height: 80px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
header div.bar_string div {
	margin: 0;
}
header div.bar_string div * {
	margin: 0;
}
header div.bar_link {
	font-size: 100%;
	width: calc(80% - 20px);
	height: 80px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	line-height: 30px;
}
header div.bar_link ul {
	margin-left: auto;
	margin-right: 10px;
	font-size: 16px;     /* 日洋に追加 */
}
header div.bar_link ul li {
	display: inline-block;
	margin: 0 2px;      /* 10px */
}

header div.bar_link ul li:hover a {
	color : blue;
	font-weight : bold;
}

/* メニュー */


#sp-menu {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 80px;
    height: 80px;
    background: #fff;
    font-size: 16px;
    box-sizing: border-box;
}
#sp-menu span {
    position: absolute;
    width: 50px;
    height: 4px;
	background-color: var(--header-background-color);
    border-radius: 10px;
    -webkit-transition: all 400ms;
    transition: all 400ms;
	right: 15px;
}
#sp-menu span:nth-child(1) {
    top: 25px;
}
#sp-menu span:nth-child(2) {
    top: 40px;
}
#sp-menu span:nth-child(3) {
    top: 55px;
}

#sp-menu-list {
    position: fixed;
    position: absolute;
    top: 80px;
    right: 0;
	background-color: var(--header-background-color);
    width: 100%;
    height: auto;
	background-color: var(--header-background-color);
    font-size: 100%;
	z-index: 100;
}
#sp-menu-list ul li {
	color: #fff;
	border-top: 1px solid #fff;
    padding: 1em;
}
#sp-menu-list ul li a {
	color: #fff;
}
#sp-menu-list ul li.detail {
	display: none;
}

#top-image img {

	width: 100%;
	height: auto;
}

#contents ,
#contents #top-image ,
#contents #top-image img
{
	width:100%;
}

footer {	
	background-color: #f5f5f5;
	padding: 30px 0 10px;
	text-decoration: none;
}
footer *
{
	color: var(--footer-color);
}
footer div.bar_link {
	width: 100%;
	height: 60px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
footer div.bar_link ul {
	margin: 0 auto;
}
footer div.bar_link ul li {
	display: inline-block;
	margin: 0 10px;
}
footer div.bar_link ul li.detail {
	display: none;
}
footer .bar ul.menu li:not(:first-child) a:before
{
	content:"\00a0\00a0|\00a0\00a0\00a0";
}
footer div img {
	margin-left: 30px;
}
footer .copy
{
	text-align: center;
}
footer .copy a
{
	font-size: 10px;
}

#to-top {
  width: 80px;
  height: 80px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: var(--to-top-background-color);
  opacity: var(--to-top-opacity);
  border-radius: var(--to-top-border-radius);
}
#to-top a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
#to-top a::before {
  font-family: FontAwesome;
  content: '\f106';
  font-size: 60px;
  color: var(--to-top-color);
  position: absolute;
  width: 50%;
  height: calc(100% - 10px);
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/*
:::::::::::::::::::
　共通で利用するタグ
:::::::::::::::::::
*//*
.inner-box
{
	margin: 0 auto;
}
.inline
{
	display: inline-block;
}
*/

/*
:::::::::::::::::::
　お知らせ一覧
:::::::::::::::::::
*/

#information-list {
	background-color: var(--information-list-background-color);
	text-align: center;
	padding: 20px 0;
}
#information-list hr {
	color: var(--information-list-color);
	width: 800px;
	margin: 1em auto;
}
#information-list p {
	color: var(--information-list-color);
	font-size: 120%;
	line-height: 1.5em;
}
#information-list .list {
	font-size: 100%;
	width: 780px;
	text-align: left;
	margin: 0 auto;
}
#information-list .list p span {
	color: var(--information-list-color);
}
#information-list .list p span.list-mark {
	background-color: var(--information-list-mark-background-color);
	color: var(--information-list-mark-color);
	font-size: var(--information-list-mark-size);
	width: auto;
	text-align: center;
	padding: 0.3em 2em 0.1em;
	opacity: var(--information-list-mark-opacity);
	border-radius: var(--information-list-mark-border-radius);
	vertical-align: text-top;

}
#btn-goBlogList {
	background-color: var(--information-list-btn-background-color);
    border: 1px solid var(--information-list-btn-border-color);
	color: var(--information-list-btn-color);
    width: 320px;
	height: 45px;
	margin: 40px auto 30px;
	cursor: pointer;
}
#btn-goBlogList:hover {
	background-color: var(--information-list-btn-on-background-color);
    border: 1px solid var(--information-list-btn-on-border-color);
	color: var(--information-list-btn-on-color);
}

/*
:::::::::::::::::::
　ブログ
:::::::::::::::::::
*/
#blog {
	margin: 0 auto;
	width: 100%;
	max-width: 1000px;
}
#blog:after {
	content: "";
	display: block;
	clear: both;
}
#main ,
#sidebar {
	float:left;
	margin: 0;
	padding: 0;
}
#main {
	width: calc(100% - 300px);
}
#sidebar {
	background-color: #fff;
	width: 300px;
}
#sidebar .title {
	background-color: black;
	color: white;
	font-size: 120%;
	width: calc(100% - 20px);
	padding: 0 10px;
	margin: 0;
	height: 40px;
	line-height: 40px;
}
#sidebar .searchform {
	width: 100%;
	margin: 20px 0;
}
#sidebar .searchfield {
	height: 50px;
	border: 1px solid #000;
	padding: 0 0.5em;
	width: calc(100% - 50px);
}
#sidebar .searchsubmit {
	background: #0036A1;
	border: none;
	height: 50px;
	width: 50px;
	cursor: pointer;
}
#sidebar .searchsubmit i {
	color: #fff;
	font-size: 20px;
}
#sidebar .lists {
	width: 100%;
	margin: 0;
	padding: 0;
}
#sidebar .lists li {
	border-bottom: 1px solid #000;
	width: 100%;
	padding: 1em 0;
}
#sidebar .lists li a {
	margin-left: 1em;
}
#main .topic
{
	width: calc(100% - 30px);
}
#main .topic-title ,
#main .topic-date ,
#main .topic-category {
	color: #000;
}
#main .topic-date {
	font-size: 80%;
	line-height: 1.3em;
}
#main .topic-title {
	font-size: 130%;
	font-weight: bold;
	margin-top: 5px;
}
#main .topic-category {
	border-bottom: 2px solid #000;
	margin: 0 0 20px;
	padding: 0 0 0.3em;
	line-height: 1.5em;
}
#main .topic-category a {
	background-color: blue;
	color: #fff;
	border-radius: 3px;
	font-size: 60%;
	width: auto;
	margin: 0 0 0.5em;
	padding: 0.3em 0.5em;
	line-height: 1.0em;
}
#main .topic .note {
	width: calc(100% - 30px);        /*　width: calc(100% - 250px); より変更　*/
	margin: 0 0 50px;
}


/*
:::::::::::::::::::
　ページネイション
:::::::::::::::::::
*/
.pagenation {
    margin: 1em 0;
	margin-left: 250px;
}
.pagenation:after, .pagenation ul:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}
.pagenation ul {
    margin: 0;
}
.pagenation li {
    float: left;
    list-style: none outside none;
    margin-left: 3px;
}
.pagenation li:first-child {
    margin-left: 0;
}
.pagenation li.active {
    background-color: #999999;
    border-radius: 3px;
    color: #FFFFFF;
    cursor: not-allowed;
    padding: 10px 20px;
}
.pagenation li a {
    background: none repeat scroll 0 0 #CCCCCC;
    border-radius: 3px;
    color: #FFFFFF;
    display: block;
    padding: 10px 20px;
    text-decoration: none;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}
.pagenation li a:hover {
    background-color: #444444;
    color: #FFFFFF;
    opacity: 0.8;
    transition-duration: 1.5s;
    transition-property: all;
    transition-timing-function: ease;
}


/*
:::::::::::::::::::
　お問合せ
:::::::::::::::::::
*/

#inquiry {
	width: 1000px;
	margin: 0 auto;
}

#inquiry-list {
	background-color: var(--inquiry-list-background-color); 
	color: var(--inquiry-list-color); 
	margin: 30px 0 0;
	width: 100%;
}
#inquiry-list tr {
	border-top: 1px solid var(--inquiry-list-border-color);
	border-bottom: 1px solid var(--inquiry-list-border-color);
}
#inquiry-list tr th ,
#inquiry-list tr td {
	padding: 1em 2em;
}
#inquiry-list tr th {
	width: 30%;
	vertical-align: middle;
	text-align: left;
}
#inquiry-list tr td select ,
#inquiry-list tr td input ,
#inquiry-list tr td textarea {
	width: 100%;
	border: 1px solid var(--inquiry-input-border-color);
	border-radius: var(--inquiry-input-border-radius);
}
::placeholder {
	color: #ccc;
}

span[id*='_check_ok'] {
	display: none;
	background-color: blue;
	color: #fff;
	border-radius: 5px;
	margin-left: 10px;
	padding: 2px 10px;
}
span[id*='_check_ng'] {
	display: none;
	background-color: red;
	color: #fff;
	border-radius: 5px;
	margin-left: 10px;
	padding: 2px 10px;
}

#inquiry-policy-title {
	margin: 30px 0;
}

#inquiry-policy-sentence {
	border: 1px solid var(--inquiry-policy-sentence-border-color);
	height: 200px;
	margin: 30px 0;
	padding: 0.5em;
	overflow-y: scroll;
}
#inquiry-policy-sentence p {
	color: var(--inquiry-policy-sentence-color);
	line-height: 1.5em;
}

#policy-check ,
#inquiry-mail-check {
	margin: 30px 0 0;
	text-align: center;
}

#btn-chkInquiry ,
#btn-InquiryGo ,
#btn-InquiryBack {
	background-color: var(--inquiry-policy-btn-background-color);
    border: 1px solid var(--inquiry-policy-btn-border-color);
	color: var(--inquiry-policy-btn-color);
    width: 276px;
	height: 50px;
	margin: 20px auto 30px;
	cursor: pointer;
}
#btn-chkInquiry:hover ,
#btn-InquiryGo:hover ,
#btn-InquiryBack:hover {
	background-color: var(--inquiry-policy-btn-on-background-color);
    border: 1px solid var(--inquiry-policy-btn-on-border-color);
	color: var(--inquiry-policy-btn-on-color);
}




/*
 * メッセージの演出
 * $param["msg"]に値があるとに表示されます
 */
#complete-message {
  color: #000;
  width: 100%;
  height: 100%;
  position: fixed;
  text-align: center;
  vertical-align: middle;
  left: 0;
  top: 0;
  background: #f0f8ff;
  opacity: 0.8;
}
#complete-message .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50% , -50%);
}
/*
:::::::::::::::::::
　画像タイトル
:::::::::::::::::::
*/

.box1{
  width : auto; /*400px;*/
  height:auto;
  margin:0;
  text-align:center;
}
.box-450{
  width:450px;
  height:auto;
  margin:0;
  text-align:center;
}

.box-800{
  width:800px;
  height:auto;
  margin:0;
  text-align:center;
}

/* リンク */

.link ,
.links {
	width : 100%;
}

.message {

	margin : 0 auto;
	width : 1000px;

}

.message-w900 {
	/*background-color: #ffdbab;*/
    margin: 0 auto;
    max-width: 900px; /* 最大幅を900pxに制限 */
    width: 100%; /* 画面幅に応じて縮小 */
	padding: 0 15px; /* 画面端にぴったりくっつかないよう余白を追加 */
    box-sizing: border-box; /* paddingを含めたサイズ計算 */
}

@@media screen and (max-width: 768px) {
    .message-w900 {
        padding: 0 10px; /* スマホでは余白を少し小さく */
    }
}
.message-w800 {
	/*background-color: #ffdbab;*/
    margin: 0 auto;
    max-width: 800px; /* 最大幅を900pxに制限 */
    width: 100%; /* 画面幅に応じて縮小 */
	padding: 0 15px; /* 画面端にぴったりくっつかないよう余白を追加 */
    box-sizing: border-box; /* paddingを含めたサイズ計算 */
}

@@media screen and (max-width: 768px) {
    .message-w800 {
        padding: 0 10px; /* スマホでは余白を少し小さく */
    }
}

.background-container {
    margin: 0 auto;
    max-width: 1000px; /* 背景の最大幅を1000pxに設定 */
    width: 100%; /* 画面幅に応じて縮小 */
    padding: 20px; /* 内側の余白を追加 */
    background-color: #D7EAFA; /* 背景色を設定 */
    border-radius: 20px; /* 角を丸める */
}




/*
 三軒茶屋
 2021.11.14
*/

.photoFull{
	max-width : 1000px;
	width : 100%;
	height : auto;
}

.photoHalf{
	max-width : 480px; /* 横に余裕を持たせる */
	width : 100%;
	height : auto;
}


/*
||||| WordPress（ブログ）画像位置指定 |||||
*/

/*画像の中央寄せ*/
.aligncenter {
  height: auto;
  margin: 0 auto;
  max-width: 100%;
}
/*figureタグで囲まれた画像の中央寄せ*/
.aligncenter img {
  height: auto;
  max-width: 100%;
}
/*画像右寄せ*/
.alignright {
  height: auto;
  margin-left: auto;
  max-width: 100%;
}
/*figureタグで囲まれた画像右寄せ*/
.alignright img {
  height: auto;
  max-width: 100%;
}
/*位置指定のない画像*/
.alignnone {
  height: auto;
  max-width: 100%;
}
/*figureタグで囲まれた位置指定のない画像*/
.alignnone img {
  height: auto;
  max-width: 100%;
}




img.alignright {
 display: block;
 margin: 0 0 0 auto!important;
}

img.alignleft {
 display: block; 
 margin: 0 auto 0 0!important;
}

img.aligncenter {
 display: block;
 margin: 0 auto!important;
}


/*
====================
  商品一覧　画像３列
====================
<html側記述>
  <div class="box">
	<div class="item"><img src="" alt="" /><p class="cnt">商品名が入る</p></div>
	<div class="item"><img src="" alt="" /><p class="cnt">商品名が入る</p></div> 
  </div>
*/

.box {
	display: flex;
	flex-wrap: wrap;

}
.item {
 	margin-left: 20px;       /* 変更　0→20px　20230919 */
}

.item p {                    /* 追加　20230919 */
	text-align: center;
}
@media screen and (min-width: 768px){       /* 751 768 */
	.item:nth-child(3n+1) {
		margin-left: 0;
		text-align: center;
    }                                     
}

		
.moji-takasa {
	line-height: 2em;
	margin-bottom: 2em;
}




/*
====================
  トップリンクアイコン
====================
<html側記述>
 <ul>
     <li><a href=""><img src="https://" alt=""/><p class="cnt m-top1em blue f-b">日洋物産のものづくり</p><p class="cnt m-top1em ln-h2em">私たちは豊富な経験で<br>皆様差が笑顔になる<br>｢製品づくり」に努めます</p></a> 
     </li>
 </ul>
*/

ul.icon {
    display: flex;
	flex-wrap: wrap;                  /*　追加 */
    justify-content:space-around;
	text-align: center;
}

ul.icon li p {
	text-align: center;
	margin-top: 10px;
}

/* マウスオーバーで色薄く */
ul.icon p :hover {    
	opacity: 0.6;
	transition: 0.3s;
}


/*
====================
  製品づくりの思い（カードグループ）　日洋物産版
====================
*/
.card-group {
	height: auto;
}
.card-group::after {
	both: clear;
}

.card{
  width: 100%;
  max-width: 490px;
  height: 277px;  /* 277px */
  overflow: hidden;
  border-top: 5px solid #385495;
  float: left;
  margin: 5px;
 }

.card_textbox{
  width: 490px;   /* 100% 490px*/
  width: 100%;
  height: 277px;
  padding: 20px 18px;
  background: #fff;
  box-sizing: border-box;
}

/*.card_textbox > * + *{
  margin-top: 10px;
}*/
.card_titletext{
  font-size: 20px;
  font-weight: bold;
  line-height: 125%;
  color: #385495;
}
.card_overviewtext{
  font-size: 18px;
  line-height: 150%;
}
.card_linktext{
  margin-top: 10px;
  font-size: 12px;
  line-height: 150%;
}


/* レスポンシブ（スマートフォン） */
@media screen and (max-width: 768px) {
/* スマートフォン用のレイアウト　600px未満 */
/* スマートフォン用のレイアウト　768px以下 */

.card{
  max-width: 100%;
 }
.item{
  margin-left :0;
  margin-right :0;
  width: 100%;
  height: auto;
 }

}

out {	/* これは昔の */

	/*
	====================
	  製品づくりの思い（カードグループ）
	====================
	*/
	.card-group {
	  margin-left: auto;
	  margin-right: auto;
	  max-width: 1000px;  /*640 */
	  width: 100%;
	  height: auto;
	/* ポイント１ */
	  display: flex;
	  flex-direction: row;
	  flex-wrap: wrap;
	  justify-content:  flex-start;/*  space-around flex-start */
	}
	/* ポイント２ */
	.card-group > :nth-child(2n){
	  margin-left: 20px;     /* 20px */
	}
	/* ポイント３ */
	.card-group > :nth-child(n+3){
	  margin-top: 0px;       /* 20px */
	}
	.card{
	/* ポイント４ */
	  width: calc((100% - 20px * 1) / 2); 
	  overflow: hidden;
	  border-top: 5px solid #385495;
	 }

	.card_textbox{
	  width: 490px;   /* 100% 490px*/
	  height: 277px;  /* 277px */
	  padding: 20px 18px;
	  background: #fff;
	  opacity: 1;
	  box-sizing: border-box;
	}
	.card_textbox > * + *{
	  margin-top: 10px;
	}
	.card_titletext{
	  font-size: 20px;
	  font-weight: bold;
	  line-height: 125%;
	  color: #385495;
	}
	.card_overviewtext{
	  font-size: 16px;
	  line-height: 150%;
	}
	.card_linktext{
	  font-size: 12px;
	  line-height: 150%;
	}

}



/*
====================
  アンカーリンク位置調整
====================
*/

section {
    padding-top: 100px; /* 調整したい高さ（固定ヘッダーの高さ） */
    margin-top: -60px; /* heightと同じ分のネガティブマージン */
	
}




/* 
===================
画像・テキスト横並び非対称
===================
 */

/* サクセスウェイ「システム提案」使用 */

.box-m {
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  margin-bottom: 30px;
}

.text-m {
	
}

h3-m {
  font-size: 21px;
  margin: 0;
}

.pict {
  width: 40%;
  margin-left: 3%;   /* 3% */
  margin-right: 3%;
}

.pict img {
  width: 90%;
  height:auto;
}


/* 交互に表示する場合は有効にする */
//.box-m:nth-child(even) {
  //flex-direction: row-reverse;
//}
//.box-m:nth-child(even) .text {
  //text-align: right;
//}
//.box-m:nth-child(even) .pict {
  //margin-left: 0;
  //margin-right: 3%;
//}

@media (max-width:768px) {
  .box-m {
    flex-direction: column;
  }
  .box-m:nth-child(even) {
    flex-direction: column;
  }
  .text {
    text-align: center;
  }
  .box-m:nth-child(even) .text {
    text-align: center;
  }
  .pict {
    width:100%;
    margin-left: 0;
    text-align: center;
  }
  .box-m:nth-child(even) .pict {
    margin-left: 0;
    margin-right: 0%;
  }
  .pict img {
    width:90%;
    height:auto;
  }
}



/* ===============================================
#Card Styling  サクセスウェイ「業務代行」
=============================================== */
img2 {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.heading {
  font-size: 20px;
  color: #385495;
}

.small {
  font-size: 16px;
  color: #79767d;
}

.container {
  width: 100%;
  max-width: 960px;
  margin: 100px auto;
}

.container_wrapper {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  padding:0 20px;
  gap: 20px;
}

.card2 {
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  width: calc(100% / 2 - 20px * 2  );
  background-color: #ffffff;
  border-top: 5px solid #385495;
}

@media (max-width: 768px) {
  .card2 {
    width: calc(50% - 20px / 2);
  }
}

@media (max-width: 414px) {  /* 414px */
  .card2 {
    width: 100%;
  }
  .container_wrapper {
    padding:0;
    gap: 0px;
  }
  .pagenation {
    margin: 1em 0;
	margin-left: 10px;
  }
}

.card2_item {
  padding: 10px 10px 0 10px;
}

.ellipsis {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.flexible {
  flex-grow: 1;
}