@charset "utf-8";
/* CSS Document */

/*! destyle.css v3.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model and set borders */
/* ============================================ */

*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */

/**
 * Prevent vertical alignment issues.
 */

svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */

/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */

button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */

[type="checkbox"] {
  -webkit-appearance: checkbox;
  appearance: checkbox;
}

[type="radio"] {
  -webkit-appearance: radio;
  appearance: radio;
}

/**
 * Correct cursors for clickable elements.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
}

button:disabled,
[type="button"]:disabled,
[type="reset"]:disabled,
[type="submit"]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */

:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */

option {
  padding: 0;
}

/**
 * Reset to invisible
 */

fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */

[type="search"] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Clickable labels
 */

label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */

[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */

/**
1. Correct table border color inheritance in all Chrome and Safari.
*/

table {
  border-color: inherit; /* 1 */
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/*-------------------
製品ページ　受発注TOPページ用CSS
/asp/index.asp
-------------------*/
#asp article {
	font-size: 16px;
	font-feature-settings : "palt";
}
section {
	padding: 3.5em 0;
}
h2 {
	font-size: 1.5em;
	line-height: 1.4;
	font-weight: bold;
	margin-bottom: 1.7em;
	text-align: center;
}
h3 {
	font-size: 1.25em;
	margin-bottom: 1.5em;
}
.btn a:hover, a.bnr:hover {
	opacity: 0.85;
	cursor : pointer;
}
.contents {
	width: 90%;
	max-width: 64em;
	margin: auto;
	text-align: center;
}
.sp-only {
	display: inline-block;
}
/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em) {
	.sptab-only {
		display: inline-block;
	}
}
/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em) {
	section {
		padding: 5em 0;
	}
}


/*-----------------
 *メインビジュアル
-----------------*/
.main-v {
	padding-top: 50px;
	width: 100%;
	height: auto;
}
.main-slideshow {
	position: relative;
	z-index: 0;
}
.main-slideshow li {
	display: block;
}
.main-slideshow span {
	/* 軽減税率導線追加前 */
	/*min-height: 25em;*/
	/* 軽減税率導線追加後 */
	min-height: 28em;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	color: transparent;
	background-size: cover;
	background-repeat: no-repeat;
	opacity: 0;
	z-index: 0;
	animation: imageAnimation 21s linear infinite 0s;
}
.main-slideshow li:nth-child(1) span {
	background-image: url(/web/jp/asp/images/top_main-bg01.jpg);
	background-position : left bottom;
}
.main-slideshow li:nth-child(2) span {
	background-image: url(/web/jp/asp/images/top_main-bg02.jpg);
	background-position : left bottom;
	animation-delay: 7s;
}
.main-slideshow li:nth-child(3) span {
	background-image: url(/web/jp/asp/images/top_main-bg03.jpg);
	animation-delay: 14s;
}
@keyframes imageAnimation {
	0% { opacity: 0; }
	10% { opacity: 1; }
	20% { opacity: 1 }
	50% { opacity: 0 }
	100% { opacity: 0 }
}
.no-cssanimations span {
	opacity: 1;
}
.main-v_tx {
	width: 100%;
	height: auto;
	display: block;
	/* padding: 2em 0; */
	padding: 2em 0 5em;
	margin: 0 auto;
	color: #222;
	position: relative;
}
.main-v_tx h1 {
	font-weight: bold;
	font-size: 2em;
	padding-bottom: .75em;
	line-height: 1.2;
}
.main-v_tx h1 span {
	font-size: .5em;
	line-height: 1.5;
	display: block;
	margin-bottom: 1em;
}
.main-v_tx .count_tx {
	font-size: 1em;
	line-height: 1.3;
	font-weight: normal;
	margin-bottom: 2.5em;
}

/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em) {
	.main-v_tx .count_title {
		line-height: 2;
	}
	.main-v_tx {
    	padding: 3em 0 6em;
		position: relative;
	}
	.main-v_tx h1 span {
		line-height: 2.8;
	}
}
/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em) {
	.main-v {
		padding-top: 73px;
	}
}
/* ノートPC以上のサイズ 1200px(16×75em)~ lgサイズ */
@media screen and (min-width:75em) {
	.main-slideshow span {
	/* 軽減税率導線追加前 */
	/* height: 29em; */
	/* 軽減税率導線追加後 */
		height: 30em;
	}
	.main-v_tx {
		padding: 4.5em 0 3em;
	}
	.main-v_tx h1 {
		padding-bottom: .5em;
		font-size: 2.5em;
	}
	.main-v_tx h1 span {
		font-size: .55em;
		line-height: 1.6;
	}
	.main-v_tx .count_tx {
		font-size: 1.25em;
	}
	.main-v .cnv_btn {
		margin: 0 auto 3.5em;
	}
}

/*-----------------
 *メインビジュアルバナー　20191114追加
-----------------*/
.top_banner{
	display: none;
}

/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em){
	.top_banner{
		display: block;
		height: 130px;
		position: absolute;
		top: 29em;
		right: 2%;
		box-shadow: 4px 6px 10px rgba(0,0,0,0.6);
		background-color: #fff;
		transition : all 300ms;
		animation:move 600ms both;
		animation-delay:2s;
	}
	.top_banner a{
		display: block;
	}
	.top_banner:hover{
		box-shadow: 4px 6px 20px rgba(0,0,0,0.6);
		transition : all 300ms;
	}
	.top_banner:hover img{
		opacity: 0.85;
	}
}



/* ノートPC以上のサイズ 1200px(16×75em)~ lgサイズ */
@media screen and (min-width:75em) {
	.top_banner{
		right: 6%;
	}
	#sec-news li {
		margin-bottom: .75em;
	}
}

@keyframes move {
	0% {
		top: 29em;
	}
	50% {
		top: 28.5em;
	}
	100% {
		top: 29em;
	}
}



/*-----------------
 *ボタン
-----------------*/
.cnv_btn {
	margin: 0 auto;
}

/*　導線以外のボタン　*/
.check_btn {
	width: 90%;
	max-width: 20em;
	margin: 0 auto;
	text-align: center;
}
.check_btn a {
	padding: 1em 1em 0.85em;
	background-color: #fff;
	border: 2px solid #00a5e7;
	border-radius: 6px;
	color: #00a5e7;
	font-size: 1.25em;
	font-weight: bold;
	line-height: 0.85em;
	display: block;
	position: relative;
}
.check_btn a:hover {
	background: #f5f9fb;
}


/*-----------------
 *キャッチコピー
-----------------*/
#sec-catch {
    background-image: url(/web/jp/asp/images/top_catch_bg.gif);
}
#sec-catch .member_area, #sec-catch .text_area {
	display: inline-block;
	vertical-align: top;
}
#sec-catch .member_area {
	padding: 1.5em 1em 1em;
	width: 220px;
	text-align: center;
    background: #f5f9fc;
	position: relative;
}
#sec-catch .member_area li {
	line-height: 1.6;
	z-index: 1;
    position: relative;
}
#sec-catch .member_area li strong {
	font-size: 2em;
	font-weight: bold;
}
#sec-catch .member_area::before {
	width: 80px;
    height: 80px;
	content: "";
	background: url("/web/jp/asp/images/top_catch_member_icon.svg");
	display: block;
	position: absolute;
    bottom: -5px;
    right: 5px;
}
#sec-catch .member_area li strong, #sec-catch .text_area p {
	color: #105579;
}
#sec-catch .text_area {
	margin: 2.25em 0 0 0;
}
#sec-catch .catch_title {
	margin-bottom: .75em;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.3;
}
#sec-catch .catch_tx {
	line-height: 1.75;
	text-align: left;
}

/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em) {
	#sec-catch .text_area {
		margin: 0 0 0 1.65em;
		width: 58%;
    	text-align: left;
	}
}
/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em) {
	#sec-catch .text_area {
		margin: 0 0 0 2.25em;
		width: 67%;
	}
	#sec-catch .catch_title {
		font-size: 1.7em;
	}
}


/*-----------------
 *タブメニュー
-----------------*/
#sec-merit {
	overflow: hidden;
}
 #tab1{
	line-height: 1;
}
#sec-merit ul {
	font-size: 0;
}
#sec-merit li {
	display: inline-block;
	list-style-type: none;
	width: 50%;
	vertical-align: middle;
    font-size: 16px;
	line-height: 1.2;
	position: relative;
}
#sec-merit li a {
    font-weight: bold;
    color: #FFF;
    display: inline-block;
    padding: 1em 0;
    text-align: center;
    width: 100%;
    background: #a2acb2;
}
#sec-merit ul li a:hover{
    background:#b2bdc4;
    color:#FFF;
}
#sec-merit ul li a.current {
    background: #105579;
    color: #fff;
	position: relative;
}
#sec-merit ul li a.current::after {
    position: absolute;
    top: 100%;
    left: 50%;
    content: '';
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-top: 15px solid #105579;
}
#sec-merit .delete {
    padding: 1.25em 0;
}
#sec-merit .tab_box {
	margin-bottom: 1.5em;
}
#sec-merit .tab_common {
	border: 2px solid #00a5e7;
	padding: 1.25em;
	margin-bottom: 1.5em;
	position: relative;
}
#sec-merit .tab_title {
    margin: 0.5em 0 1.5em;
    line-height: 1.4em;
	font-size: 1.25em;
	font-weight: bold;
}
#sec-merit .tab_tx {
	font-size: 1em;
    line-height: 1.75;
	padding-left: 5.5em;
	text-align: left;
}
#sec-merit img {
	width: 4.5em;
	height: 4.5em;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	padding-left: 1.25em;
}

/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em) {
	#sec-merit ul {
		width: 90%;
		margin: auto;
	}
	#sec-merit .tab_common {
		width: 85%;
		height: 5.25em;
		padding: 2em;
		margin: 0 auto 1.5em;
	}
	#sec-merit li a {
		line-height: 1.6;
	}
}
/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em) {
	#sec-merit .tab_common {
		height: 6em;
		width: 40%;
		padding: 2em;
		display: inline-block;
		vertical-align: middle;
		margin: 0 0.5em 1.25em 0.5em;
	}
	#sec-merit li a {
		height: auto;
	}
	#sec-merit .delete {
    	padding: 2em 1.25em 0;
	}
}
/* ノートPC以上のサイズ 1200px(16×75em)~ lgサイズ */
@media screen and (min-width:75em) {
	#sec-merit ul {
		width: 1024px;
	}
	#sec-merit .tab_common {
		width: 25.2em;
		height: 5.25em;
		padding: 2em;
		margin: 0 0.55em 1.5em;
	}
	#sec-merit .tab_tx {
		padding-left: 6em;
	}
}


/*-----------------
 *選ばれる理由
-----------------*/
#sec-choose {
	background: #f5f9fb;
}
#sec-choose .choose_wrapper {
	width: auto;
}
#sec-choose img {
	width: 4.5em;
	height: 4.5em;
}
#sec-choose .choose_col {
	width: 90%;
	padding: 2em 1em;
	display: inline-block;
	vertical-align: top;
}
#sec-choose .choose_title {
	color: #105579;
	margin: 0.8em 0;
    font-size: 1.25em;
    font-weight: bold;
}
#sec-choose .choose_tx {
	text-align: left;
	line-height: 1.75;
}
#sec-choose .bar01 {
	border: none;
	height: 1px;
	/*background-color: #ccc;*/
}
/* 2018/06/22追加 */
#sec-choose span.choose_link {
	font-size: 0.875em;
	position: relative;
	float: left;
    padding: 0.5em 2em 2.75em 0;
}
/* 2018/06/22追加 */
.text_link {
    color: #2684e2;
}

/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em) {
	#sec-choose .choose_col {
		width: 42%;
		padding: 2em 1.5em;
	}
	#sec-choose .sp-line {
		background-image: url(/web/js/asp/images/top_choose_line.gif);
		background-size: 1px 100%;
		background-position: right top;
	}
	/* 2018/06/22追加 */
	#sec-choose span.choose_link {
		padding: 0.5em 2em 0 0;
	}
}
/* ノートPC以上のサイズ 1200px(16×75em)~ lgサイズ */
@media screen and (min-width:75em) {
	#sec-choose .choose_wrapper {
		margin: 0 2em;
	}
	#sec-choose .choose_col {
		width: 17.75em;
    	padding: 2em 1em;
		/*background-image: url(../images/top_choose_line.gif);*/
		background-size: 1px 100%;
		background-position: left top;
	}
	#sec-choose .choose_col_inner {
		margin: 0 0.75em 0.75em;
	}
	#sec-choose .pcline-none {
		background-image: none;
	}
}


/*-----------------
 *導入事例
 *導入実績
-----------------*/
#sec-case .expl-tx,
#sec-logo .expl-tx {
	margin-bottom: 2em;
	line-height: 1.5em;
	text-align: center;
}
#sec-logo {
	background: #f0f0f0;
}
#sec-logo .contents{
	width: auto;
}
@media screen and (min-width: 1340px){
  #sec-case .contents {
      max-width: unset;
  }
}


/*-----------------
 2020.06.11　導入実績改修
*【受発注】製品ページ修正（導入実績）#125104
-----------------*/
.clear-shadow {
	clear: both;
}
#sec-logo div, li, ul {
	box-sizing: border-box;
}
.logo_filter {
    border-radius: 8px;
    margin: 40px auto 0;
	/*box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); */
}
.logo_filter ul.nav li {
    border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	width: calc(100%/3);
	border-bottom: 3px solid #2e67a3;
	background-color: #d9d9d9;
    float: left;
	display:block;
  	transition: all 0.2s ease;
}
.logo_filter ul.nav li .btn {
    border-top-left-radius: 8px;
	border-top-right-radius: 8px;
    color: #222;
    display: block;
    font-size: 16px;
    font-weight: 700;
	padding: 15px 0;
    position: relative;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
@media screen and (max-width: 767px) {
.logo_filter ul.nav li .btn {
    font-size:14px;
}
}
.logo_filter ul.nav li .btn:hover {
    background: #ccc;
}
.logo_filter ul.nav li .btn.active {
    background: #2e67a3;
    color: #fff;
}
.logo_banners {
    background: #fff;
    border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
    padding: 30px;
	height:auto;
	overflow:hidden
}
.logo_banners li {
    float: left;
    height: /*74px≈ */ 110px ;
    position: relative;
    width: 18%;
	margin: 0 1% ;
    margin-bottom: 15px;
}
.logo_banners a li {
	border:1px solid #dedede;
}
.logo_banners a li:after{
	border-top: 1px solid #dedede;
    bottom: 6px;
    content: "\4E8B\4F8B\3092\898B\308B";
    display: block;
    font-size: 13px;
    left: 50%;
    margin: 0 auto;
    padding-top: 6px;
    position: absolute;
    transform: translateX(-50%);
    width: 100%;
}
.logo_banners a:hover li {
	box-shadow: 0px 3px 5px rgba(0,0,0,.125);
}
@media screen and (max-width: 767px) {
.logo_banners li {
    width:48%;
}
}

.logo_banners li img {
    display: block;
    height: auto;
    left: 50%;
    margin: 0 auto;
    max-width: 80%;
    position: absolute;
    top: 40%;
    transform: translate(-50%,-50%);
}

/*-----------------
 *区分てチェッカー
-----------------*/
#sec-check {
	position: relative;
	background: #f5f9fb;
}
#sec-check .check_title {
	color: #105579;
    margin: 0 0 1em;
    font-size: 1.25em;
    font-weight: bold;
}
#sec-check .check_inner {
	text-align: left;
	display: inline-block;
}
#sec-check .check_inner ul {
	margin-bottom: 3em;
}
#sec-check .check_inner li {
	padding: 0.6em;
	display: flex;
}
.radio{
	display: none;
}
.radio + label {
	padding-left: 1.5em;
  	position:relative;
  	margin-right: 20px;
}
.radio + label:hover {
	cursor : pointer;
}
.radio + label::before {
  	content: "";
  	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 15px;
	height: 15px;
	border: 1px solid #999;
	border-radius: 50%;
}
.radio:checked + label {
	color: #00a5e7;
}
.radio:checked + label::after {
    content: "";
  	display: block;
  	position: absolute;
 	top: 0.19em;
	left: 0.19em;
  	width: 11px;
  	height: 11px;
  	background: #00a5e7;
  	border-radius: 50%;
}
.dialog_hide {
  	overflow: hidden;
  	position: absolute;
  	bottom: -10%;
	left: 0;
    right: 0;
    height: auto;
  	width: 82%;
	margin: 0 auto;
   	text-align: center;
  	display: none;
  	border:1px solid #aaa;
	background: #f5f9fb;
	z-index: 2;
}
.dialog_title {
  	font-weight: bold;
    font-size: 1.5em;
	line-height: 1.4;
	color: #105579;
}
.dialog_title span {
    display: block;
    font-size: 0.65em;
    padding-bottom: 1em;
	color: #333;
}
.dialog_tx {
    text-align: left;
    line-height: 1.5;
    display: inline-block;
    vertical-align: middle;
    padding: 0.75em 0 0 1.25em;
}
.icon_area {
    margin: 2em auto;
}
.dialog_content img, #required .icon_area img {
  	width: 18%;
    height: auto;
	vertical-align: middle;
	display: inline-block;
}
.dialog_close {
  	float: right;
	border: none;
    background: #f5f9fb;
    font-weight: bold;
	font-size: 1.5em;
    color: #555;
	outline: none;
	margin: 0.75em 0.5em 0.5em 0.5em;
}
.dialog_close:hover, .required_close:hover {
	cursor : pointer;
}
.dialog_content {
  	position: relative;
  	border: 0;
  	padding: 1.5em 0 3em;
	margin: 0 auto;
  	background: #f5f9fb;
  	overflow: auto;
  	width: 90%;
  	height: auto;
	text-align: center;
	box-sizing: border-box;
}
#required {
  	overflow: hidden;
  	position: absolute;
  	bottom: -10%;
	left: 0;
    right: 0;
    height: auto;
  	width: 82%;
	margin: 0 auto;
   	text-align: center;
  	display: none;
  	border:1px solid #aaa;
	background: #fff;
	z-index: 2;
}
.required_content {
	background: #fff;
}
#required .required_tx {
	font-size: 1em;
	line-height: 1.5;
    display: inline-block;
    vertical-align: middle;
    padding: 0.75em 0 0 1.25em;
}
.required_close {
	float: right;
	border: none;
    background: #fff;
    font-weight: bold;
	font-size: 1.5em;
    color: #555;
	outline: none;
	margin: 0.75em 0.5em 0.5em 0.5em;
}
#modal-overlay {
	z-index: 1;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(16,85,121,0.7);
}
.sp-hide {
	display: none;
}

/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em) {
	.dialog_hide {
		bottom: 0;
		width: 90%;
	}
	.dialog_content {
		padding: 1.5em 2em 3em;
		width: 100%;
	}
	.dialog_title {
		font-size: 1.75em;
	}
	.dialog_title span {
		font-size: 0.75em;
	}
	.dialog_content img, #required .icon_area img {
		width: 8%;
	}
	.sp-hide {
		display: inline-block;
	}
	#required .required_tx, .dialog_tx {
		padding: 0 0 0 1.25em;
	}
}
/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em) {
	.dialog_hide {
		width: 72%;
		bottom: -10%;
	}
}
/* ノートPC以上のサイズ 1200px(16×75em)~ lgサイズ */
@media screen and (min-width:75em) {
	.radio + label::before {
		position: absolute;
		top: -1px;
		left: 0;
	}
	.radio:checked + label::after {
		position: absolute;
		top: 13%;
		left: 3px;
	}
	.dialog_hide {
		width: 1024px;
	}
	.dialog_content {
		padding: 1.5em 4em 3em;
		width: 100%;
	}
	#required {
		width: 1024px;
	}
	#required .required_tx {
		font-size: 1.25em;
    	font-weight: bold;
	}
}


/*-----------------
 *セキュリティ
-----------------*/
.section_lead{
	line-height: 1.5em;
	text-align: center;
	margin-bottom: 32px;
}
.security_logo {
	width: 100%;
	max-width: 293px;
	margin: 0 auto 2rem;
  padding-bottom: 24px;
}
.security_logo a:hover img{
	opacity: 0.8;
}
.security_logo img {
	width: 24%;
	margin: 0 3%;
	vertical-align: middle;
}
.security_icon {
	width: 45%;
	height: 175px;
	float: left;
}
.security_icon:nth-child(odd){
    margin-right: 10%;
}
.security_icon img {
	width: 3em;
	height: 3em;
	margin: 0 33% 1em;
}
.security_icon p {
	font-size: 0.8em;
	line-height: 1.5em;
}
/*-----------------
 *セキュリティ 20200924
-----------------*/
.security_merit-box{
		display:flex;
		flex-direction:column;
		justify-content: flex-start;
		margin-bottom: 1.25rem;
		text-align: left;
}
.security_merit-box .security_merit{
		border:solid 1px #144E94;
		width:100%;
		margin-bottom: 1rem;
		display: flex;
		flex-direction:column;
    align-items: center;
}
.security_merit-box .security_merit h3{
	color: #082F50;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
  width: 100%;
	margin: 0;
	box-sizing: border-box;
	padding: 2.1rem 1rem;
}
.security_merit-box .security_merit.merit1 h3{
	background: url(/web/jp/information/securityguide/img/nav-hack-bg.png) no-repeat;
	background-size: cover;
	background-position: center -5px;
}
.security_merit-box .security_merit.merit2 h3{
	background: url(/web/jp/information/securityguide/img/nav-op-bg.png) no-repeat;
	background-size: cover;
}
.security_merit-box .security_merit.merit3 h3{
	background: url(/web/jp/information/securityguide/img/nav-faci-bg.png) no-repeat;
	background-size: cover;
}
.security_merit-box .security_merit p{
	color: #222;
	font-size: 1rem;
	line-height: 1.75rem;
	padding: 1rem;
	text-align: left;
	width:auto;
}

/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em){
	.security_icon-box{
		width: 600px;
		margin: auto;
	}
	.security_icon {
		width: 160px;
		margin-right: 60px;
	}
	.security_icon:nth-child(3),.security_icon:nth-child(6){
		margin-right: 0;
	}
	.security_logo img {
		margin: 0 4%;
	}
	.security_merit-box .security_merit{
		flex-direction: row;
	}
	.security_merit-box .security_merit h3{
		width: 100%;
		background-position: center 0 !important;
		padding: 3.1rem 1rem;
	}
	.security_merit-box .security_merit p{
		width: 100%;
	}
}

/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em) {
	.security_merit-box{
		flex-direction: row;
		justify-content: space-between;
	}
	.security_merit-box .security_merit{
		margin-bottom: 0;
		width:320px;
		flex-direction:column;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.security_merit-box .security_merit h3{
		color: #082F50;
		font-size: 1.125rem;
		font-weight: 700;
		padding: 1.5rem 1rem;
		margin: 0;
		line-height: 1;
		width: 1	00%;
	}
	.security_merit-box .security_merit p{
		width:auto;
	}
}

/* ノートPC以上のサイズ 1200px(16×75em)~ lgサイズ */
@media screen and (min-width:75em) {
	.security_icon-box {
		width: 100%;
	}
	.security_icon {
		width: 140px;
		margin-right: 36px!important;
	}
	.security_icon:last-child {
		margin-right: 0!important;
	}
	.security_merit-box .security_merit h3{
		padding: 1.75rem 1rem;
	}
}


/*-----------------
 *資料請求
-----------------*/
#sec-purpose {
    padding: 3.5em 0;
    background: url(/web/jp/asp/buyer/images/menu-kanri_purpose-bg.jpg) center no-repeat;
    background-size: cover;
    text-align: center;
}
#sec-purpose p {
    padding-bottom: 0.5em;
    font-size: 1em;
    line-height: 1.5em;
    font-weight: bold;
}
#sec-purpose .normal-tx {
	margin-bottom: 2em;
	font-weight: 500;
    text-shadow: 2px 2px 8px #fff;
}

/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em) {
    #sec-purpose p {
        font-size: 1em;
    }
}


/*-----------------
 *バナーエリア
-----------------*/
#sec-bnr {
	padding: 3em 0 2.5em;
}
#sec-bnr ul {
	padding-left: 0;
	overflow: hidden;
}
#sec-bnr li {
	display: inline-block;
	margin: 0 0.5em 1.25em;
}
#sec-bnr img {
	width: 234px;
	height: 60px;
}
#sec-bnr li:last-child {
	margin: 0;
}

/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em) {
	#sec-bnr li {
		margin: 0 2.5em 0 0;
	}
}


/*-----------------
 *お知らせ
-----------------*/
#sec-news {
	padding: 3em 0;
	background-color: #f0f0f0;
}
#sec-news h2 {
	color: #333;
    font-size: 1.3em;
	text-align: left;
}
#sec-news li {
	margin-bottom: 2em;
	text-align: left;
}
#sec-news li a {
	color: #333;
	font-size: .9em;
	line-height: 1.5em;
}
#sec-news li a span.date {
	margin-bottom: 1em;
	padding-left: 1em;
	font-weight: bold;
	display: inline-block;
	position: relative;
}
#sec-news li a span.date:before,#sec-news li a span.date:after {
    content: "";
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 4px solid #333;
    margin: auto;
    vertical-align: middle;
	position: absolute;
	top: 0;
    bottom: 0;
    left: 0;
}
.cnd-btn-sub {
	width: 90%;
	max-width: 14em;
	margin: 0 auto;
	text-align: center;
	float: right;
}
.cnd-btn-sub a {
	padding: 1.25em 1em 1.25em;
	background-color: #777;
	border-radius: 6px;
	color: #fff;
	font-size: 1em;
	line-height: 0.85em;
	display: block;
	position: relative;
}
.cnd-btn-sub a::after {
	content: '>';
	position: absolute;
	right: 0.625em;
	top: 0;
    bottom: 0;
    margin: auto 0;
    height: 20px;
	-webkit-transform: scale(0.5, 1.0);
       -moz-transform: scale(0.5, 1.0);
    	-ms-transform: scale(0.5, 1.0);
    		transform: scale(0.5, 1.0);
	display: inline-block;
	font-weight: normal;
}

/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em) {
	#sec-news li a:hover, #sec-news li a:hover span {
		text-decoration: underline;
	}
	#sec-news li a span.date {
		padding-right: 1em;
	}
	.cnd-btn-sub a {
		padding: 1.25em 1em 1em;
	}
	.cnd-btn-sub a::after {
		top: .8em;
	}
}
/* ノートPC以上のサイズ 1200px(16×75em)~ lgサイズ */
@media screen and (min-width:75em){
	#sec-news li {
		margin-bottom: .75em;
	}
}


/*-----------------
 *新規ご契約の方
-----------------*/
#sec-anew {
	background: #555;
	padding: 2.5em 0;
	text-align: center;
}
#sec-anew h3 {
	color: #fff;
}
.sub_cnd_btn {
	max-width: 16em;
	display: inline-block;
	margin: 0.4em 1.25em;
}
.sub_cnd_btn a {
	color: #fff;
	font-size: 0.8em;
	display: inline-block;
	position: relative;
    padding: 1em 1em 0;
	padding: 0.75em 0;
	background: #777;
	border-radius: 6px;
	width: 21.25em;
}


/*-----------------
 *受発注システムとは(2018/06/22追加)
-----------------*/
#sec-means {
	/* background: #f5f5f5; */
	margin-top: 0em;
	padding: 1.5em 0;
	position: relative;
}
#sec-means .means_tx {
	display: inline-block;
	vertical-align: middle;
}
#sec-means .means_tx a {
    color: #2684e2;
	font-size: 1em;
	text-decoration: none;
	position: relative;
	text-align: center;
}
#sec-means .means_tx a span {
	text-decoration: underline;
}
#sec-means .means_tx a:hover {
    opacity: 0.85;
}
#sec-means .means_tx a::before {
    content: "?";
	font-weight: bold;
    background: #fff;
    color: #999;
    line-height: 32px;
	top: -7px;
    left: -45px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    text-align: center;
    position: absolute;
}
#sec-means .means_tx a::after {
	content: '>';
	position: absolute;
    right: -1.5em;
    -webkit-transform: scale(0.6, 1.2);
		-moz-transform: scale(0.6, 1.2);
		-ms-transform: scale(0.6, 1.2);
	display: inline-block;
	font-weight: normal;
}

/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em){
	#sec-means {
		margin-top: 0em;
	}
}
/* ノートPC以上のサイズ 1200px(16×75em)~ lgサイズ */
@media screen and (min-width:75em) {
	#sec-means .means_tx a::before {
		top: -4px;
		left: -48px;
	}
}


/*-----------------
 *sec-consul　コンサル(2018/07/05追加)
-----------------*/
#sec-consul{
	padding: 3em 0 3em;
	background-color: #f5f5f5;
    background-image: url(/web/jp/asp/images/top_bg-obi.png);
	background-position: -120px 0;
}
#sec-consul .contents{
	border: 1px solid #105579;
}
#sec-consul .contents h2{
	color: #105579;
	font-size: 1.3em;
	margin: 24px auto 24px;
}
#sec-consul .contents p{
	width: 92%;
	margin: 0 auto 24px;
	line-height: 1.5em;
	text-align: center;
}
#sec-consul .contents .cnd_btn a{


    font-size: 1em;
}
/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em){
	#sec-consul{
		background-position: 0 0;
	}
}
/* ノートPC以上のサイズ 1200px(16×75em)~ lgサイズ */
@media screen and (min-width:75em) {
	#sec-consul{
		background-position: 120px 0;
	}
}


/*-----------------
 *軽減税率導線(2018/10/25追加)
-----------------*/
.bnr_area {
	padding: 2em 0 4.5em;
	position: relative;
}
.bnr_area .cnp-keigenzeiritsu {
	margin: 0 auto;
	padding: 2em 1.5em;
	background: #ebf3f7;
	position: absolute;
	left: 0;
	right: 0;
    top: -40px;
}
.bnr_area .cnp-keigenzeiritsu p {
	color: #107cb3;
    line-height: 1.3;
	text-align: center;
	letter-spacing: .03em;
}
.bnr_area .cnp-keigenzeiritsu .title {
    margin-bottom: .5em;
	font-size: 1.15em;
	font-weight: bold;
}
.bnr_area .cnp-keigenzeiritsu .read {
	font-size: 1em;
}
.cnp-keigenzeiritsu_btn {
	margin: 1.5em auto 0;
	width: 100%;
	background: #fff;
    border: 2px solid #107cb3;
    border-radius: 6px;
	position: relative;
}
.cnp-keigenzeiritsu_btn a {
    padding: 1em;
	font-size: .9em;
    font-weight: bold;
	color: #107cb3;
	line-height: 1.4;
	display: block;
}
.cnp-keigenzeiritsu_btn a:hover {
	background: #107cb3;
    color: #fff;
}

/* タブレット縦サイズ 768px(16×48em)~ smサイズ */
@media screen and (min-width:48em) {
	.bnr_area .cnp-keigenzeiritsu .title {
		font-size: 1.35em;
	}
	.cnp-keigenzeiritsu_btn {
		width: 280px;
	}
}
/* タブレット横サイズ 1024px(16×64em)~ mdサイズ */
@media screen and (min-width:64em) {
	.bnr_area .cnp-keigenzeiritsu {
		width: 72%;
	}
}

/*受発注ライト*/
.link_light202007{
	margin-top: 20px
}
.link_light202007 a{
	text-decoration: underline;
	line-height: 1.5;
}

/*-----------------
 *マンガLPバナー(2020/12追加)
-----------------*/
.bnr-area {
	margin: 15px auto;
	width: 100%;
	max-width: 480px;
	padding-top: 40px;
	padding-bottom: 0px;
}

.bnr-area img {
	width: 100%;
　　max-width: 100%;
　　height: auto;
}

/**********************************************************************************

250528追記

**********************************************************************************/

:root {
	--blue: #2e67a2;
	--paleb: #dceaf1;
	--red: #e50101;
	--magenta: #cc3265;
	--green: #86b71b;
	--yellow: #fff45c;
}

body {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
}

.none,.sp {display: none;}

.btn02 {
	font-size: 24px;
	color: #fff;
	width: 500px;
	text-align: center;
	display: block;
	padding: 30px 0;
	border-radius: 50px;
	position: relative;
	letter-spacing: 0.05em;
	margin: 0 auto;
}

.btn02.hacchu {background-color: var(--red);}
.btn02.juchu {background-color: var(--magenta);}

.btn02.hacchu:hover {
	color: var(--red);
	background-color: #fff;
	outline: solid 4px var(--red);
	outline-offset: -4px;
}

.btn02.juchu:hover {
	color: var(--magenta);
	background-color: #fff;
	outline: solid 4px var(--magenta);
	outline-offset: -4px;
}

.btn02 span {
	font-size: 36px;
	font-weight: bold;
}

.btn02:after {
	content: '';
	width: 15px;
	height: 15px;
	border: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 40px;
	right: 30px;
	margin: auto;
}

.btn02.hacchu:hover:after {
	border-top: solid 2px var(--red);
	border-right: solid 2px var(--red);
}

.btn02.juchu:hover:after {
	border-top: solid 2px var(--magenta);
	border-right: solid 2px var(--magenta);
}

@media screen and (max-width: 1260px) {
	.btn02 {
		font-size: 22px;
		width: 450px;
	}
	
	.btn02 span {
		font-size: 34px;
	}
}

@media screen and (max-width: 640px) {
	.pc {display: none;}
	.sp {display: block;}
	
	.btn02 {
		font-size: 18px;
		padding: 25px 0;
		width: 300px;
	}
	
	.btn02 span {
		font-size: 24px;
	}
	
	.btn02:after {
		top: 30px;
	}
}

@media screen and (max-width: 430px) {
	body {font-size: 14px;}
}

/**********************************************************************************

#fv

**********************************************************************************/
#fv {
	width: 100%;
	position: relative;
	background-color: var(--paleb);
}

#fv .box {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	position: relative;
	z-index: 1;
	width: 90%;
	max-width: 1700px;
	padding: 60px 0 120px;
}

#fv .box .left {
	text-align: left;
}

#fv .box .left h1 {
	margin-bottom: 20px;
}

#fv .box .left h1 .txt01 {
	font-size: 36px;
}

#fv .box .left h1 .txt01 span {
	position: relative;
}

#fv .box .left h1 .txt01 span:before {
	content: '●';
	position: absolute;
	top: -15px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 0.2em;
}

#fv .box .left h1 .txt02 {
	color: var(--blue);
	font-size: 57px;
	font-weight: bold;
	margin-bottom: 20px;
}

#fv .box .left h1 .txt02 span {
	font-size: 12px;
	font-weight: normal;
	vertical-align: text-top;
}

#fv .box .left h1 img {
	width: 100%;
	max-width: 780px;	
}

#fv .box .left .note {
	font-size: 12px;
	margin-bottom: 100px;
}

#fv .box .left .check li {
	color: var(--blue);
	font-size: 33px;
	line-height: 1.7em;
}

#fv .box .left .check li .checkbox {
	position: relative;
	display: inline-block;
	width: 1em;
	height: 1em;
	line-height: 1;
	font-size: 1.2em;
	margin-right: 0.1em;
}

#fv .box .left .check li .checkbox .check {
	position: absolute;
	top: 0;
	left: 5px;
	color: var(--green);
	pointer-events: none;
}

#fv .box .left .check li .marker {
	font-weight: bold;
	background: linear-gradient(transparent 60%, var(--yellow) 60%);
}

#fv .box .right {
	max-width: 910px;
}

#fv .box .right img {
	width: 100%;
}

#fv .blue-bg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 60%;
/*	width: 63%;*/
	height: 100%;
	background: var(--blue);
	clip-path: polygon(30% 0, 100% 0%, 100% 100%, 0% 100%);
	z-index: 0;
}

@media screen and (max-width: 1800px) {
	#fv .box {
		padding: 110px 0 120px;
		gap: 50px;
	}
	#fv .box .left h1 {
		width: auto;	
	}
	#fv .box .left h1 .txt01 {
		width: 100%;
		font-size: calc(36vw / 1800 * 100);
	}
	#fv .box .left h1 .txt02 {
		width: 100%;
		font-size: calc(57vw / 1800 * 100);
	}
	#fv .box .left h1 img {
		width: calc(700vw / 1800 * 100);	
	}
	#fv .box .left .check li {
		width: calc(700vw / 1800 * 100);
		font-size: calc(33vw / 1800 * 100);
	}
	#fv .box .right {
		width: calc(800vw / 1800 * 100);
	}
	#fv .box .right img {
		width: calc(800vw / 1800 * 100);
	}
}

@media screen and (max-width: 1024px) {
	#fv .box {
		padding: 100px 0 120px;
		gap: 40px;
	}
	#fv .box .left {
		width: 50%;
	}
	#fv .box .left h1 .txt01 {
		width: 100%;
		font-size: calc(24vw / 1024 * 100);
	}
	
	#fv .box .left h1 .txt02 {
		width: 100%;
		font-size: calc(34vw / 1024 * 100);
	}
	
	#fv .box .left h1 img {
		width: 100%;
		max-width: calc(700vw / 1024 * 100);	
	}
	
	#fv .box .left .note {
		margin-bottom: 50px;
	}

	#fv .box .left .check li {
		width: 100%;
		max-width: calc(700vw / 1024 * 100);
		font-size: 20px;
	}
	
	#fv .box .right {
		width: 50%;
	}
	#fv .box .right img {
		width: auto;
		max-width: calc(500vw / 1024 * 100);
	}
}

@media screen and (max-width: 640px) {
	#fv .box {
		flex-direction: column;
		width: 94%;
		padding: 84px 0 120px;
		gap: 40px;
	}
	#fv .box .left {
		width: 100%;
		align-items: center;
	}
	#fv .box .left h1 .txt01 {
		width: 100%;
		max-width: calc(600vw / 640 * 100);
		font-size: calc(36vw / 640 * 100);
	}
	#fv .box .left h1 .txt02 {
		width: 100%;
		max-width: calc(600vw / 640 * 100);
		font-size: calc(57vw / 640 * 100);
	}
	#fv .box .left h1 img {
		width: 100%;
		max-width: calc(600vw / 640 * 100);
	}
	#fv .box .left .check li {
		width: 100%;
		max-width: calc(600vw / 640 * 100);
		font-size: calc(20vw / 640 * 100);
	}
	#fv .box .right {
		width: 100%;
		align-items: center;
	}
	#fv .box .right img {
		width: 100%;
		max-width: calc(600vw / 640 * 100);
	}
	
	#fv .blue-bg {
		top: auto;
		right: 0;
		bottom: 0;
		width: 100%;
		height: 63%;
		clip-path: polygon(0 30%, 100% 0%, 100% 100%, 0 100%);
	}
}

@media screen and (max-width: 430px) {
	#fv .box {
		gap: 30px;
	}
	
	#fv .box .left h1 {
		margin-bottom: 10px;
	}
	
	#fv .box .left h1 .txt01 {
		font-size: 20px;
	}
	
	#fv .box .left h1 .txt02 {
		font-size: 30px;
		margin-bottom: 20px;
	}
	
	#fv .box .left .note {
		font-size: 10px;
		margin-bottom: 30px;
	}

	#fv .box .left .check li {
		font-size: 18px;
	}
}

@media screen and (max-width: 390px) {
	#fv .box .left h1 .txt02 {
		font-size: 24px;
	}
}

/**********************************************************************************

#fvcv

**********************************************************************************/
#fvcv {
	width: 90%;
	max-width: 1200px;
	margin: -100px auto 0;
	background-color: #fff;
	box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.35);
	position: relative;
	z-index: 1;
	text-align: center;
	padding: 50px;
}

#fvcv h2 {
	font-size: 36px;
	font-weight: bold;
	color: var(--blue);
	margin-bottom: 45px;
}

#fvcv .box {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 50px;
}

#fvcv .box .inner p {
	font-size: 24px;
	margin-bottom: 20px;
}

#fvcv .box .inner01 p {color: var(--red);}
#fvcv .box .inner02 p {color: var(--magenta);}

@media screen and (max-width: 1100px) {
	#fvcv .box {
		flex-direction: column;
		align-items: center;
		padding: 100px 0 120px;
	}
	
}

@media screen and (max-width: 640px) {
	#fvcv h2 {
		font-size: 30px;
	}
	
	#fvcv .box .inner p {
		font-size: 20px;
	}
}

@media screen and (max-width: 430px) {
	#fvcv {
		padding: 60px 40px 40px;
	}
	
	#fvcv h2 {
		font-size: 26px;
		margin-bottom: 35px;
	}
	
	#fvcv .box {
		gap: 30px;
	}
	
	#fvcv .box .inner p {
		margin-bottom: 15px;
	}
}

/**********************************************************************************

#jisseki

**********************************************************************************/
#jisseki {
/*	width: 90%;*/
	width: 100%;
	max-width: 1500px;
	margin: 20px auto;
}

#jisseki ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 30px;
	margin: 0 auto;
}

#jisseki ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

#jisseki ul li .left,#jisseki ul li .right {
	width: 94px;
}

#jisseki ul li h2 {
	color: var(--blue);
	font-size: 26px;
	margin-bottom: 0;
}

#jisseki ul li h3 {
	color: var(--blue);
	font-size: 56px;
	font-weight: bold;
	margin-bottom: 5px;
	white-space: nowrap;
}

#jisseki ul li h3 span {
	font-size: 34px;
}

#jisseki ul li .note {
	font-size: 14px;
}

#jisseki ul li:last-child .inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 30px;
}

#jisseki ul li:last-child .inner .no1 {
	width: 130px;
}

@media  screen and (max-width: 1600px) {
	#jisseki ul {
	gap: calc(24vw / 1500 * 100);
}

#jisseki ul li .left,#jisseki ul li .right {
	width: calc(90vw / 1500 * 100);
}

#jisseki ul li h2 {
	font-size: calc(26vw / 1500 * 100);
}

#jisseki ul li h3 {
	font-size: calc(56vw / 1500 * 100);
}

#jisseki ul li h3 span {
	font-size: calc(34vw / 1500 * 100);
}

#jisseki ul li .note {
	font-size: calc(14vw / 1500 * 100);
}

#jisseki ul li:last-child .inner {
	gap: calc(30vw / 1500 * 100);
}

#jisseki ul li:last-child .inner .no1 {
	width: calc(130vw / 1500 * 100);
}
}

@media screen and (max-width: 820px) {
	#jisseki ul li .left,#jisseki ul li .right {
		width: 70px;
	}

	#jisseki ul li h2 {
		font-size: 18px;
	}

	#jisseki ul li h3 {
		font-size: 44px;
	}

	#jisseki ul li h3 span {
		font-size: 24px;
	}
	
	#jisseki ul li .note {
		font-size: 12px;
	}
	
	#jisseki ul li:last-child .inner {
		gap: 20px;
	}
	
	#jisseki ul li:last-child .inner .no1 {
		width: 80px;
	}
}

@media screen and (max-width: 640px) {
	#jisseki ul {
		gap: 30px 20px;
	}
	
	#jisseki ul li .left,#jisseki ul li .right {
		width: 40px;
	}

	#jisseki ul li h2 {
		font-size: 14px;
	}

	#jisseki ul li h3 {
		font-size: 24px;
	}

	#jisseki ul li h3 span {
		font-size: 14px;
	}
	
	#jisseki ul li .note {
		font-size: 10px;
	}
	
	#jisseki ul li:last-child .inner {
		gap: 10px;
	}
	
	#jisseki ul li:last-child .inner .no1 {
		width: 60px;
	}
}

@media screen and (max-width: 414px) {
	#jisseki ul {
		gap: 20px 10px;
	}
	
	#jisseki ul li .left,#jisseki ul li .right {
		width: 34px;
	}

	#jisseki ul li h2 {
		font-size: 12px;
	}

	#jisseki ul li h3 {
		font-size: 20px;
	}

	#jisseki ul li h3 span {
		font-size: 12px;
	}
}

/* campany-logo-area */
.campany-logo-area {
    width: 100%;
    padding: 40px 0;
    margin-bottom: 16px;
    overflow-x: hidden;
}

.campany-logo-list-list {
    display: flex;
}

.campany-logo-list-list+.campany-logo-list-list {
    margin-top: 30px;
}

.campany-logo-list-box {
    display: flex;
}

.scroll-anime-start .campany-logo-list-list:nth-child(1) .campany-logo-list-box {
    animation: slide-loop 25s infinite linear 0.5s both;
}

.scroll-anime-start .campany-logo-list-list:nth-child(2) .campany-logo-list-box {
    animation: slide-loop-reverse 25s infinite linear 0.5s both;
}

@keyframes slide-loop {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }
}

@keyframes slide-loop-reverse {
    0% {
        transform: translateX(-100%);
    }

    100% {
        transform: translateX(0);
    }
}

.campany-logo-list {
    display: flex;
    align-items: center;
}

.campany-logo-item {
    margin: 0 10px;
}

.campany-logo-item img {
    max-width: 140px;
    max-height: 50px;
    width: auto;
}

@media (max-width: 1200px) {
    .campany-logo-area {
        padding: calc(40vw / 1200 * 100) 0;
    }

    .campany-logo-list-list+.campany-logo-list-list {
        margin-top: calc(30vw / 1200 * 100);
    }

    .campany-logo-item {
        margin: 0 calc(10vw / 1200 * 100);
    }

    .campany-logo-item img {
        max-width: calc(140vw / 1200 * 100);
        max-height: calc(50vw / 1200 * 100);
    }
}

@media (max-width: 750px) {
    .campany-logo-area {
        padding: calc(65vw / 750 * 100) 0;
    }

    .campany-logo-list-list+.campany-logo-list-list {
        margin-top: calc(50vw / 750 * 100);
    }

    .campany-logo-item {
        margin: 0 calc(10vw / 750 * 100);
    }

    .campany-logo-item img {
        max-width: calc(150vw / 750 * 100);
        max-height: calc(70vw / 750 * 100);
    }
}

.scroll-anime-start.common-fade-in-bottom {
    animation: fade-in-bottom 0.5s 0.5s forwards;
}

/**********************************************************************************
###### 導入事例202507改修　
**********************************************************************************/
#sec-case_pick .contents h2{
	font-size: 32px;
}
@media screen and (min-width:1024px) {
#sec-case_pick .contents h2{
		font-size: 42px;
	}
}
#sec-case_pick .contents .expl-tx {
	margin-bottom: 2em;
	line-height: 1.5em;
	text-align: center;
	font-size: 20px;
/*	line-height: 2;*/
}
#sec-case_pick .contents .expl-tx img {
  display: inline-block;
	vertical-align: middle;
  margin-right: 3px;
}
#sec-case_pick .contents .case-interview.cases2025 {
	width: auto !important;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card {
	overflow: hidden;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card {
  box-shadow: 0 2px 5px #ccc;
  background-color: #fff;
  position: relative;
  display: block;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card:hover {
  box-shadow: 0 0 16px rgba(46, 103, 162, 1);
}
#sec-case_pick .contents .case-interview.cases2025 dt.case_tit {
	background-color: #e3f1f3;
	box-sizing: border-box;
	height: auto;
	padding: 1em;
}
#sec-case_pick .contents .case-interview.cases2025 dt.case_tit h3{
	font-size: 1em;
	font-weight: bold;
	line-height: 1.5;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card .point{
	color: #86b71b;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 16px;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card ul.column_pointlist li{
	line-height: 1.5;
	margin-bottom: 8px;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card ul.column_pointlist li .g-box {
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	background: #71b024;
	margin-right: 10px;
	padding: 0 10px 3px;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card ul.column_pointlist li {
    line-height: 1.5;
    text-indent: -42px;
    padding-left: 42px;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card .itv-tx{
	padding-bottom: 5em;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card .itv_link{
	padding: 1em 0;
	text-align: center;
	width: 100%;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card .itv_link > span{
	background-color: #fff;
	border: 2px solid #86b81b;
	border-radius: 4px;
	color: #86b81b;
	display: inline-block;
	padding: 12px 32px;
	position: relative;
}
#sec-case_pick .contents .case-interview.cases2025 .case-interview_card .itv_link > span::after{
	content: "";
	width: 8px;
	height: 8px;
	border-top: solid 2px #86b81b;
	border-right: solid 2px #86b81b;
	position: absolute;
	top: 13px;
	right: 12px;
	transform: rotate(45deg);
}

@media screen and (min-width:768px) {
  #sec-case_pick .contents .expl-tx {
    font-size: 18px;
  }
	#sec-case_pick .case-interview.cases2025{
		display: flex;
		justify-content: space-between;
	}
	#sec-case_pick .case-interview.cases2025 .case-interview_card {
		float: none;
		width: 32%;
		height: auto;
	}
	#sec-case_pick .case-interview.cases2025 dt.case_tit{
		height: 175px;
	}
	#sec-case_pick .case-interview.cases2025 dd.itv-name{
		height: 88px;
		box-sizing: border-box;
	}
}
@media screen and (min-width:900px) {
	#sec-case_pick .case-interview.cases2025 dt.case_tit{
		height: 150px;
	}
}
@media screen and (min-width:930px) {
	#sec-case_pick .case-interview.cases2025 dt.case_tit{
		height: 125px;
	}
}