/* Document
 * ========================================================================== */

/**
 * Add border box sizing in all browsers (opinionated).
 */

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

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritance in all browsers (opinionated).
 */

::before,
::after {
	text-decoration: inherit; /* 1 */
	vertical-align: inherit; /* 2 */
}

/**
 * 1. Use the default cursor in all browsers (opinionated).
 * 2. Change the line height in all browsers (opinionated).
 * 3. Use a 4-space tab width in all browsers (opinionated).
 * 4. Remove the grey highlight on links in iOS (opinionated).
 * 5. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 * 6. Breaks words to prevent overflow in all browsers (opinionated).
 */

html {
	cursor: default; /* 1 */
	line-height: 1.5; /* 2 */
	-moz-tab-size: 4; /* 3 */
	tab-size: 4; /* 3 */
	-webkit-tap-highlight-color: transparent /* 4 */;
	-ms-text-size-adjust: 100%; /* 5 */
	-webkit-text-size-adjust: 100%; /* 5 */
	word-break: break-word; /* 6 */
}

/* Sections
 * ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
	margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Edge, Firefox, and Safari.
 */

/* Grouping content
 * ========================================================================== */

/**
 * Remove the margin on nested lists in Chrome, Edge, IE, and Safari.
 */

dl dl,
dl ol,
dl ul,
ol dl,
ul dl {
	margin: 0;
}

/**
 * Remove the margin on nested lists in Edge 18- and IE.
 */

ol ol,
ol ul,
ul ol,
ul ul {
	margin: 0;
}

/**
 * 1. Add the correct sizing in Firefox.
 * 2. Show the overflow in Edge 18- and IE.
 */

hr {
	height: 0; /* 1 */
	overflow: visible; /* 2 */
}

/**
 * Add the correct display in IE.
 */

main {
	display: block;
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */

nav ol,
nav ul {
	list-style: none;
	padding: 0;
}

/**
 * 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: 1em; /* 2 */
}

/* Text-level semantics
 * ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
	background-color: transparent;
}

/**
 * Add the correct text decoration in Edge 18-, IE, and Safari.
 */

abbr[title] {
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * 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: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
	font-size: 80%;
}

/* Embedded content
 * ========================================================================== */

/*
 * Change the alignment on media elements in all browsers (opinionated).
 */

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
	display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

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

/**
 * Remove the border on iframes in all browsers (opinionated).
 */

iframe {
	border-style: none;
}

/**
 * Remove the border on images within links in IE 10-.
 */

img {
	border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */

svg:not([fill]) {
	fill: currentColor;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
	overflow: hidden;
}

/* Tabular data
 * ========================================================================== */

/**
 * Collapse border spacing in all browsers (opinionated).
 */

table {
	border-collapse: collapse;
}

/* Forms
 * ========================================================================== */

/**
 * Remove the margin on controls in Safari.
 */

button,
input,
select {
	margin: 0;
}

/**
 * 1. Show the overflow in IE.
 * 2. Remove the inheritance of text transform in Edge 18-, Firefox, and IE.
 */

button {
	overflow: visible; /* 1 */
	text-transform: none; /* 2 */
}

/**
 * Correct the inability to style buttons in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * 1. Change the inconsistent appearance in all browsers (opinionated).
 * 2. Correct the padding in Firefox.
 */

fieldset {
	border: 1px solid #a0a0a0; /* 1 */
	padding: 0.35em 0.75em 0.625em; /* 2 */
}

/**
 * Show the overflow in Edge 18- and IE.
 */

input {
	overflow: visible;
}

/**
 * 1. Correct the text wrapping in Edge 18- and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 */

legend {
	color: inherit; /* 2 */
	display: table; /* 1 */
	max-width: 100%; /* 1 */
	white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in Edge 18- and IE.
 * 2. Add the correct vertical alignment in Chrome, Edge, and Firefox.
 */

progress {
	display: inline-block; /* 1 */
	vertical-align: baseline; /* 2 */
}

/**
 * Remove the inheritance of text transform in Firefox.
 */

select {
	text-transform: none;
}

/**
 * 1. Remove the margin in Firefox and Safari.
 * 2. Remove the default vertical scrollbar in IE.
 * 3. Change the resize direction in all browsers (opinionated).
 */

textarea {
	margin: 0; /* 1 */
	overflow: auto; /* 2 */
	resize: vertical; /* 3 */
}

/**
 * Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
	padding: 0;
}

/**
 * 1. Correct the odd appearance in Chrome, Edge, and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Safari.
 */

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
	height: auto;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */

::-webkit-input-placeholder {
	color: inherit;
	opacity: 0.54;
}

/**
 * Remove the inner padding in Chrome, Edge, and Safari on macOS.
 */

::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style upload buttons in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/**
 * Remove the inner border and padding of focus outlines in Firefox.
 */

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

/**
 * Restore the focus outline styles unset by the previous rule in Firefox.
 */

:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Remove the additional :invalid styles in Firefox.
 */

:-moz-ui-invalid {
	box-shadow: none;
}

/* Interactive
 * ========================================================================== */

/*
 * Add the correct display in Edge 18- and IE.
 */

details {
	display: block;
}

/*
 * Add the correct styles in Edge 18-, IE, and Safari.
 */

dialog {
	background-color: white;
	border: solid;
	color: black;
	display: block;
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	left: 0;
	margin: auto;
	padding: 1em;
	position: absolute;
	right: 0;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

dialog:not([open]) {
	display: none;
}

/*
 * Add the correct display in all browsers.
 */

summary {
	display: list-item;
}

/* Scripting
 * ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
	display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
	display: none;
}

/* User interaction
 * ========================================================================== */

/*
 * 1. Remove the tapping delay in IE 10.
 * 2. Remove the tapping delay on clickable elements
			in all browsers (opinionated).
 */

a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
	-ms-touch-action: manipulation; /* 1 */
	touch-action: manipulation; /* 2 */
}

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
	display: none;
}

/* Accessibility
 * ========================================================================== */

/**
 * Change the cursor on busy elements in all browsers (opinionated).
 */

[aria-busy="true"] {
	cursor: progress;
}

/*
 * Change the cursor on control elements in all browsers (opinionated).
 */

[aria-controls] {
	cursor: pointer;
}

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements in all browsers (opinionated).
 */

[aria-disabled="true"],
[disabled] {
	cursor: not-allowed;
}

/*
 * Change the display on visually hidden accessible elements
 * in all browsers (opinionated).
 */

[aria-hidden="false"][hidden] {
	display: initial;
}

[aria-hidden="false"][hidden]:not(:focus) {
	clip: rect(0, 0, 0, 0);
	position: absolute;
}

@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);

.icon::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f000";
}
html{
	scroll-behavior: smooth;
		}

body{
	color: #4D565B;
	font-family: 'Noto Sans JP', sans-serif;
	padding: 0;
}
a {
	color: #4D565B;
}
h2.title {
	font-family: 'Axiforma',sans-serif;
	z-index: 3;
	font-weight: 600;
}
h2.title::first-letter {
	font-size: 3.6rem;
	color: #E7152D;
}
span.title-s {
	z-index: 3;
	font-weight: 400;
}
.mt5rem {
	margin-top: 5rem;
}
.mt10rem {
	margin-top: 10rem;
}
.mb5rem {
	margin-bottom: 5rem;
}
br.pc-only,
.pc-only {
	display: block;
}
br.pc-s-only,
br.tab-only,
br.sp-only,
.pc-s-only,.tab-only,
.sp-only {
	display: none;
}

/*== ボタン共通設定 */
.btn-more{
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
	overflow: hidden;
    /*ボタンの形状*/
	display: inline-block;
   	border: 1px solid #E7152D;/* ボーダーの色と太さ */
    padding: 10px 30px;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/
    transition: ease .2s;
}
.btn-more2{
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
	overflow: hidden;
    /*ボタンの形状*/
	display: inline-block;
   	border: 1px solid #E7152D;/* ボーダーの色と太さ */
   	background-color: rgba(255, 255, 255, 0.5);
    padding: 10px 30px;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/
    transition: ease .2s;
}

/*ボタン内spanの形状*/
.btn-more span {
	position: relative;
	z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
	color:#4D565B;
}
.btn-more2 span {
	position: relative;
	z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
	color:#333;
}

.btn-more span:hover {
	color:#fff;
}
.btn-more2 span:hover {
	color:#fff;
}
.btn-more a:hover, .btn-more2 a:hover{
	text-decoration: none;
}

/*== 背景が流れる（左から右） */
.bgleft:before {
 	content: '';
    /*絶対配置で位置を指定*/
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 2;
    /*色や形状*/
 	background:#E7152D;/*背景色*/
 	width: 100%;
	height: 100%;
    /*アニメーション*/
 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 	transform: scale(0, 1);
	transform-origin: right top;
}
.bgleft2:before {
 	content: '';
    /*絶対配置で位置を指定*/
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 2;
    /*色や形状*/
 	background:#E7152D;/*背景色*/
 	width: 100%;
	height: 100%;
    /*アニメーション*/
 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 	transform: scale(0, 1);
	transform-origin: right top;
}
/*hoverした際の形状*/
.bgleft:hover:before, .bgleft2:hover:before {
	transform-origin:left top;
	transform:scale(1, 1);
}

/*ヘッダー*/
header {
	height: 100px ;
}
.nav-container,.navbar {
	padding: 0;
}
.navbar-header {
	height: 100%;
	margin: 0 1rem;
}
a.navbar-brand {
	display: block;
	height: 100%;
	padding: 0;
}

#willsort-navbar,
.menu-header-navigation-container {
	height: 100px;
}
.navbar-collapse {
	height: 100%;
	justify-content: end;
}
header ul {
	display: block;
	height: 100%;
}
header li.nav-item {
	display: flex;
	width: 6rem;
	height: 100%;
	margin: 0;
	padding: 0;
	align-items: center;
	justify-content: center;
}
.nav-item-wrap {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
li.bg-white a {
	font-weight: 500;
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
}
li.bg-white:hover {
	background-color: #E7152D !important;
	transition: 800ms;
}
li.bg-white a:hover {
	width: 100%;
	height: 100%;
	color: #fdfdfd !important;
	background-color: #E7152D !important;
	text-decoration: none;
	transition: 800ms;
}
li.bg-red {
	font-weight: 500;
	background-color:#E7152D ;
}
li.bg-red a {
	display: flex;
	color: #fdfdfd !important;
	width: 100%;
	height: 100%;
	align-items: center;
}
li.bg-red:hover {
	background-color:#fdfdfd !important;
	border: solid 1px #E7152D !important;
	transition: 800ms;
}
li.bg-red a:hover {
	color: #E7152D !important;
	transition: 800ms;
}
span.kana {
	display: block;
	font-size: 0.6rem;
}
/*カルーセル*/
.bgCarousel {
	height: 800px ;
	width: auto;
}
.top-main {
	position: relative;
	margin-top: 20px;
}
#willsort-hero video {
	position: relative;
	min-width: 100% !important;
}
.overlay {
	content: '';
	top: 0px;
	left: 0px;
	padding: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.3);
}
.text-shadow {
	text-shadow: 1px 1px 5px #4D565B;
}
.carousel-indicators li {
	border-radius: 50%;
	margin: 1px 3px;
	height: 10px;
	width: 10px;
}
.carousel-caption1,.carousel-caption2 {
	color: #fff;
}
.carousel-caption1 h2,
.carousel-caption2 h2 {
	font-family: 'Axiforma',sans-serif;
	font-size: 2.5rem;
	font-weight: 600;
	margin-bottom: 1.5rem;
	letter-spacing: 0.3rem;
}
.carousel-caption1 h2,
.carousel-caption1 .top-btn {
	margin-left: 40px;
}
.carousel-caption1 {
	position: absolute;
	top: 25% !important;
	left: 5% !important;
	text-align: center!important;
}
.carousel-caption2 {
	position: absolute;
	top: 50% !important;
	left: 12% !important;
	text-align: center!important;
}
.top-btn {
	padding: 0;
}
span.red {
	color: #E7152D;
}

/*Main-News*/
#main-news {
	padding: 5rem 0;
}
/*　画像の拡大　*/

.zoomin img{
	transform: scale(1);
	transition: .3s ease-in-out;/*移り変わる速さを変更したい場合はこの数値を変更*/
	height: 10vw;
}

.zoomin a:hover img{/*hoverした時の変化*/
	transform: scale(1.2);/*拡大の値を変更したい場合はこの数値を変更*/
}

/*　画像のマスク　*/

.mask{
    display: block;
    line-height: 0;/*行の高さを0にする*/
    overflow: hidden;/*拡大してはみ出る要素を隠す*/
}
.mask a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
#main-news .card-img-top {
	width: 100%;
	height:12vw;
	object-fit: cover;
}
#main-news .card-title {
	font-weight: 600;
	flex-grow: 1;
}

/*Main-About Us*/
#main-about-us {
	padding: 5rem 0;
	background-image: url(img/top-aboutus-bg.png);
	background-size: cover;
}
.overlay2 {
	content: '';
	top: 0px;
	left: 0px;
	padding: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.4);
	z-index: 1;
}
.main-about-inner {
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.4);
	padding: 1.5rem;
}
#main-about-us img.mus-logo {
	z-index: 2;
}
#main-about-us h3 {
	z-index: 2;
	font-size:2.14286vw;
}
#main-about-us p.a-desc {
	line-height: 1.8;
	z-index: 2;
}

/*Main-Service*/
#main-service {
	padding: 5rem 0 10rem;
}
#main-service h3 {
	font-size:2.14286vw;
}
#main-service h4 {
	font-size: 1.25rem;
}
#main-service p {
	line-height: 2;
}

/*Main-cases*/
#main-cases {
	background-image: url(img/cases-bg.png);
	background-size: cover;
	padding: 0 0 10rem 0;
	position: relative;
}
.slick-track {
	height: 98%;
}
.slider {
	margin:0 auto;
	width:100%;
	transition: opacity .25s ease;
}
.slider.slick-initialized {
  	opacity: 1;
}
#main-cases .card-img-top {
	width: 100%;
	height: 15vw;
	object-fit: cover;
}
#main-cases .card-body {
	padding: 1.5rem;
}
#main-cases h5.card-title {
	font-weight: 600;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/
.slider .slick-slide {
	margin:0 10px;
}
/*矢印の設定*/
/*戻る、次へ矢印の位置*/
.slick-prev,
.slick-next {
	position: absolute;/*絶対配置にする*/
	top: 50%;
	cursor: pointer;/*マウスカーソルを指マークに*/
	outline: none;/*クリックをしたら出てくる枠線を消す*/
	height: 1rem;
	width: 1rem;
	z-index: 10;
}

.slick-prev::before {
	color: #E7152D;
	font-size: 2rem;
}
.slick-next::before {
	color: #E7152D;
	font-size: 2rem;
}
/*ドットナビゲーションの設定*/
.slick-dots {
	text-align:center;
	margin:1.25rem 0 0 0;
}

.slick-dots li {
	display:inline-block;
	margin:0 0.3124rem;
}

.slick-dots button {
	color: transparent;
	outline: none;
	width:0.5rem;/*ドットボタンのサイズ*/
	height:0.5rem;/*ドットボタンのサイズ*/
	display:block;
	border-radius:50%;
	background:#717D85;/*ドットボタンの色*/
}

.slick-dots li.slick-active button:before {
	opacity: .75;
	color: #E7152D;/*現在地のドットボタンの色*/
}

/*Main-contact*/
#main-contact {
	background: url(img/TOP-contact-bg.jpg);
	background-position: cover;
	width: 100%;
	height: auto;
	background-attachment: fixed;
	padding: 3rem;
}
.main-contact-inner {
	width: 80%;
	background-color: rgba(255,255,255,0.4);
}
.text-box-inner p {
	line-height: 2;
}

/*footer*/
footer {
	background: #717D85;
	color: #fdfdfd;
	height: auto;
	padding: 5rem 0 !important;
}
footer a {
	font-family: Axiforma,sans-serif;
	color: #fdfdfd;
	margin: 0 1rem;
}
footer a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
footer li a {
	font-family: Axiforma,sans-serif;
	color: #fdfdfd;
}
footer li a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
.footer-nav {
	margin-top: 5rem;
}
footer img {
	height: 50%;
}
.pp a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
footer small {
	font-family: Axiforma,sans-serif;
	display: block;
	margin-top: 10rem;
}
footer a.back-to-top{
	position: fixed;
	right: 15px;
	bottom: 15px;
	width: 44px;
	height: 44px;
	background: #717D85;
	color: #fdfdfd;
	text-align: center;
	font-size: 18px;
	line-height: 2.4em;
	outline: 1px solid #fdfdfd;
	outline-offset: -0.2em;
	z-index: 2;
}
footer a.back-to-top :hover {
	text-decoration: none;
	right: 15px;
	bottom: 15px;
	width: 44px;
	height: 44px;
	background: #E7152D;
	color: #fdfdfd !important;
	text-align: center;
	font-size: 18px;
	line-height: 2.4em;
	outline: 1px solid #fdfdfd;
	outline-offset: -0.2em;
	z-index: 2;
	transition: 800ms;
}

/*パンくずリスト*/
#breadcrumb {
	height: 9.375rem;
	background-color: transparent;
}
.breadcrumb {
	background: transparent;
	font-weight: normal;
}
.breadcrumb-item a {
	color: #4D565B;
}
.breadcrumb-item a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
.breadcrumb-item,
.breadcrumb-item::before,
.breadcrumb-item.active,
.breadcrumb-item.active::before {
	color: #4D565B !important;
}

/*about-us-video*/
.about-us-video {
	padding-top: 5rem;
	min-width: 100%;
	aspect-ratio: 16/9;
}
#about-us iframe {
	width: 60rem;
	height: 33.81rem;
}

/*About Us*/
#about-us {
	padding: 5rem 0 10rem;
}
.au-title {
	padding-left: 0;
}
.instructor p {
	line-height: 2;
}

/*Message*/
#message {
	padding: 0 0 10rem;
}
.message-text {
	padding: 0;
}
.ceo-sign {
	width: 20rem;
}
.ceo-profile {
	border:1px solid #4D565B;
	padding: 2rem 1.5rem;
	border-radius: 2.5rem;
}

/*Service*/
#service {
	padding: 5rem 0 10rem;
	background-color: #fdfdfd;
}
.vision-text {
	top: 110%;
	left: 20%;
	z-index: 2;
}
.vision-text h5,
.pro h3 {
	line-height: 2;
}
.program .container-fluid {
	padding-left: 0;
	padding-right: 0;
}
.program ul {
	list-style-position: inside;
}
.program button {
	width: 23rem;
}
.store-manager-breeding,
.strengthen-sales-force,
.VMD {
	margin-top: 5rem;
}
.store-manager-breeding h3,
.strengthen-sales-force h3,
.VMD h3 {
	margin-left: 2.5rem;
}
.p-inner {
	padding: 2.5rem;
}

.p-inner p,.p-inner li {
	line-height: 1.8;
}
.smb-bg {
	background-image: url(img/store-manager-breeding.jpeg);
	background-size: cover;
}
.store-manager-breeding h2,
.strengthen-sales-force h2,
.VMD h2 {
	font-size: 2.19rem;
	margin-bottom: 1.5rem;
}
.strengthen-sales-force video {
	object-fit: cover;
	min-height: 100%;
}

.vmd-bg {
	background-image: url(img/VMD.jpeg);
	background-size: cover;
}
.subsidy img,.to-c img {
	padding: 0.5rem;
}

/*cases一覧*/
#archive-casess {
	padding: 5rem 0 10rem;
}
#archive-casess a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
/*cases*/
#cases {
	padding: 5rem 0 10rem;
}
.cases-a a:hover,.card-desc a:hover{
	color: #E7152D;
	text-decoration: none;
}
#cases a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}

/*News一覧*/
#news-all {
	padding: 5rem 0 10rem;
}
#news-all a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
/*News*/
#news {
	padding: 5rem 0 10rem;
}
#news h5 {
	font-size: 2rem;
}
.card-desc a {
	color : #4D565B;
}
.news-a a:hover,.card-desc a:hover{
	color: #E7152D;
	text-decoration: none;
}
#news a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
.n-cat span {
	color: #E7152D;
}

/*コラム一覧*/
#archive-column {
	padding: 5rem 0 10rem;
}
#archive-column a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
/*コラム*/
#column {
	padding: 5rem 0 10rem;
}
#column h5 {
	font-size: 2rem;
}
.column-a a:hover,.card-desc a:hover{
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
#column a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}
.column-content b {
	color: #E7152D;
}
#taxonomy-column-category a:hover {
	color: #E7152D;
	text-decoration: none;
	transition: 800ms;
}

/*サイドバー共通設定*/
h2.widgettitle {
	display: inline-block;
	font-size: 1.3rem;
	margin: 1.3rem 0;
	padding-bottom: 0.5rem;
	border-bottom: 5px solid #E7152D;
	position:relative;
}
h2.widgettitle:before {
    position: absolute;
    bottom: -0.6rem;
    left: 0rem;
    right: 0rem;
    border-bottom: 1px solid #E7152D;
    content: '';
}
li#recent-posts-2 ul,
li#categories-2 ul,
li#archives-2 ul {
	list-style-type: none;
}
li#recent-posts-2 li,
li#categories-2 li,
li#archives-2 li  {
	list-style-type: none;
	padding-left: 0;
}
li#custom-post-type-recent-posts-2 ul,
li#custom-post-type-categories-2 ul,
li#custom-post-type-archives-2 ul {
	list-style-type: none;
}
li#custom-post-type-recent-posts-2 li,
li#custom-post-type-categories-2 li,
li#custom-post-type-archives-2 li  {
	list-style-type: none;
	padding-left: 0;
}

/*ページネーション*/
.wp-pagenavi {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 2.5rem 0;
}
span.current{
	padding: .5rem .75rem;
	margin-left: 1rem;
	margin-right: 1rem;
	line-height: 1.25;
	color: #4D565B;
	background: #fff;
	border: 1px solid #4D565B;
}
a.page.larger,
a.page.smaller {
	padding: .5rem .75rem;
	margin-left: 1rem;
	margin-right: 1rem ;
	line-height: 1.25;
	color: #E7152D;
	background-color: #fff;
	border: 1px solid #E7152D;
}
a.page.larger:hover,
a.page.smaller:hover {
	z-index: 2;
	text-decoration: none;
	background: #E7152D;
	color: #fff !important;
	border-color: #E7152D;
	transition: 800ms;
}
a.first {
	margin-right: 1rem;
}
a.last {
	margin-left: 1rem;
}

/*Contact*/
#contact {
	padding: 5rem 0 10rem;
}
a.ws-checkbox:hover {
	text-decoration: none;
	color: #E7152D;
	transition: 800ms;
}

/*プライバシーポリシー*/
#privacy-policy {
	padding: 5rem 0 10rem;
}
#privacy-policy h3 {
	margin-top: 3rem;
}

/*レスポンシブデザイン*/
@media(max-width: 1200px) {
	br.pc-s-only {
		display: block;
	}
	br.pc-only,
	br.tab-only,
	br.sp-only {
		display: none;
	}
	.carousel-caption1 h1 {
		font-family: 'Axiforma',sans-serif;
		font-size: 6rem;
		font-weight: 600;
	}
	.carousel-caption1 h2 {
		font-size: 3.125rem;
		font-weight: 600;
		margin-bottom: 1.5rem;
	}
	.carousel-caption1 p {
		font-size: 2.5rem;
		font-weight: 600;
		line-height: 1.8;
	}
	.carousel-caption2 p {
		font-size: 2.8rem;
		font-weight: 600;
		line-height: 1.8;
	}

	.carousel-caption1 {
		position: absolute;
		top: 15% !important;
		left: 5% !important;
		text-align: center!important;
	}
	.carousel-caption2 {
		position: absolute;
		top: 30% !important;
		left: 25% !important;
		text-align: center!important;
	}

	.zoomin img{
		height: 20vw;
	}

	#main-services h5 {
		font-size: 0.85rem;
		}

	#main-services .card {
		margin: 0 0.5rem;
	}
	#main-services span.s-text {
		display: none;
	}

	#about-us iframe {
		width: 90rem;
		height: 50.69rem;
	}

	.i-text h4 {
		margin-bottom: 1.5rem;
	}

	.s-body {
		height: auto;
		}
	.survey-base {
		margin-top: 5rem;
		}
	.not-p {
		padding-bottom: 2rem;
		}
	.not-pl, .not-pr {
		padding: 0;
	}
}

@media(max-width: 1024px) {
.bgCarousel {
	height: 576px ;
	width: auto;
	}
}

@media(max-width: 768px) {
	h1 {
		font-size: 2.5rem;
		}
	h2 {
		font-size: 1.8rem;
		}
	h3 {
		font-size: 1.5rem;
	}
	h4 {
		font-size: 1.2rem;
		}
	h5 {
		font-size: 1rem;
		}
	h6 {
		font-size: 0.9rem;
		}
	p {
		font-size: 0.8rem;
		}
	br.tab-only,br.br,
	.tab-only {
		display: block;
		}
	br.pc-only,
	br.pc-s-only,
	br.sp-only,
	.pc-only,.pc-s-only,.sp-only {
		display: none;
		}
	.tab-reverse {
		flex-direction: column-reverse !important;
		}

	.nav-container,.navbar {
		padding: 1rem;
		}
	header, .navbar,
	.nav-container,.menu-header-navigation-container,
	.show {
		height: 100% !important;
		}
	.navbar-nav li {
		text-align: left !important;
		width: 100%;
		padding: 0.8rem 0;
		}
	.navbar-toggler {
		border-radius: 0;
		color: #5E595B;
		margin-left: auto;
		}
	.nav-item-wrap {
		height: auto;
		display: flex;
		justify-content: center;
		align-items: center;
		}
	.collapsing {
		transition: height 0.2s;
		}

	.carousel-caption1 h1,.carousel-caption2 h1 {
		font-family: 'Axiforma',sans-serif;
		font-size: 2.5rem;
		font-weight: 600;
	}
	.carousel-caption1 h2,.carousel-caption2 h2 {
		font-size: 1.5rem;
		font-weight: 600;
		margin-bottom: 1rem;
	}
	.carousel-caption1 p,.carousel-caption2 p {
		font-size: 1.2rem;
		line-height: 1.8;
	}
	.bgCarousel {
		height: 432px ;
		width: auto;
		}
	.carousel-caption1 h2,
	.carousel-caption1 .top-btn {
		margin-left: 24px;
	}
	#willsort-hero img {
		width: 50%;
	}
	.carousel-caption1 {
		left:5% !important;
		text-align: center!important;
	}
	.carousel-caption2 {
		top: 45% !important;
		left: 5% !important;
		text-align: center!important;
	}

	#main-news,#main-about-us,
	#main-service,#main-cases,
	#news,#cases {
		padding: 3rem 0 ;
	}
	#main-news .card-img-top {
	height: 20vw;
	}
	.main-about-inner {
	padding: 1.5rem;
	flex-direction: column;
	}
	#main-about-us h3 {
		font-size:2rem;
	}
	#main-service h3 {
		font-size:1.5rem;
	}
	.main-s-box {
		margin-right: 0;
		margin-left: 0;
	}
	.s-box-inner .col-md-6{
		padding-right: 0;
		padding-left: 0;
	}
	#main-cases .card-img-top {
		height: 20vw;
	}
	.main-contact-inner {
		width: 100%;
	}
	#main-contact .sp-mt-5 {
		margin-top: 1.5rem;
	}
	footer {
		height: auto;
		padding-bottom: 2rem;
		}
	footer ul.footer-nav {
		flex-direction: column;
		}
	footer ul.footer-nav li {
		margin-top: 2.5rem;
		}
	footer small {
		margin: 2rem 0;
		}
	footer a.nav-link {
		margin: 0;
		padding: 1rem;
	}
/*About us*/
	#about-us iframe {
		width: 37.5rem;
		height: 21.13rem;
	}
	#about-us {
		padding: 3rem 1rem;
	}
	#message,#consultant {
		padding: 3rem 0;
	}
	#message .ceo-sign {
		width: 13rem;
	}
	#message .ceo-title p {
		font-size: 0.7rem;
	}
/*Service*/
	.strengthen-sales-force video {
		margin-bottom: 3rem;
	}
	.smb-bg,.vmd-bg {
		height: 26rem;
		margin-bottom: 3rem;
	}
}

@media(max-width: 575px) {
	.mt5rem {
		margin-top: 3rem;
	}
	br.sp-only,.sp-only {
		display: block;
	}
	br.pc-only,
	br.pc-s-only,
	br.tab-only,
	.pc-only,.tab-only,.pc-s-only {
		display: none;
	}
	.reverse {
		flex-direction: column-reverse !important;
	}
	header, .navbar,
	.nav-container,.menu-header-navigation-container,
	.show {
		height: auto !important;
	}
	.bgCarousel {
		height: 300px;
	}
	.bgCarousel__item {
		position: absolute ;
		top: 0% !important;
		left: 0% !important;
		max-width: 100% !important;
		height: auto !important;
		max-height: 100% !important;
		}
	#willsort-hero video {
		position: relative;
		max-width: 100% !important;
	}
	.carousel-caption1 h1,
	.carousel-caption2 h1{
		font-family: 'Axiforma',sans-serif;
		font-size: 2rem;
		font-weight: 600;
		letter-spacing: 0.2rem;
	}
	.carousel-caption1 h2,
	.carousel-caption2 h2 {
		font-size: 0.8rem;
		font-weight: 600;
		margin-bottom: 0.7rem;
		letter-spacing: 0.1rem;
	}
	.carousel-caption1 p,
	.carousel-caption2 p {
		font-size: 0.9rem;
		line-height: 1.8;
		letter-spacing: 0.1rem;
	}
	.carousel-caption1 {
		top: 25% !important;
		left:5% !important;
		text-align: center!important;
	}
	.carousel-caption2 {
		top: 45% !important;
		left: 5% !important;
		text-align: center!important;
	}
	.carousel-caption1 h2,
	.carousel-caption1 .top-btn {
		margin-left: 12.8px;
	}

	#main-news,#main-about-us,
	#main-service,#main-cases,
	#message,#about-us,#news,#cases {
		padding: 1.5rem 0 ;
	}
	.zoomin img{
		height: 50vw;
	}
	#main-news .c-box {
		padding: 0 1rem;
		margin-bottom: 2.5rem;
	}
	#main-news .card-img-top {
		height: 50vw;
	}
	#main-about-us h3 {
		font-size:1.8rem;
	}
	#main-about-us .mau-box {
		flex-direction: column;
	}
	#main-service h3 {
		font-size:1.8rem;
	}
	#main-service .main-to-b-box {
		justify-content:center;
		padding: 0;
	}
	#main-service .main-to-b {
		width: 23rem;
		height: 23rem;
		margin-bottom: 1rem;
	}
	#main-service .main-to-c-box {
		justify-content:center;
		padding: 0;
	}
	#main-service .main-to-c{
		width: 23rem;
		height: 23rem;
	}
	#main-cases {
		padding: 2.5rem;
	}
	#main-cases h5 {
		font-size: 0.8rem;
	}
	#main-cases p {
		font-size: 0.75rem;
	}
	#main-cases .card-body {
		padding: 1rem 0.5rem
	}
	#main-cases .card-img-top {
		width: 100%;
		height: 50vw;
		object-fit: cover;
	}
	#main-contact {
		padding: 1.5rem;
	}
	#main-contact .sp-mt-5 {
		margin-top: 2.5rem;
	}
	#main-contact h2 {
		font-size: 1.15rem;
	}
	#main-contact p {
		font-size: 0.7rem;
	}

/*About Us*/
	.au-title {
		padding-left: 1.5rem;
	}
	#message {
		flex-direction: column-reverse;
		padding: 1.5rem;
	}

	#message .justify-content-end {
		justify-content: center !important;
	}
	#message .ceo-sign {
		width: 13rem;
	}
	#message .ceo-title p {
		font-size: 0.7rem;
	}
	.au-desc {
		margin-top: 1.5rem;
	}
	.sn.reverse {
		flex-direction:column-reverse ;
	}

/*service*/
	#service {
	padding: 1rem 0;
	margin-bottom: 3rem;
	}
	#service h3 {
		font-size: 1.3rem;
	}
	#service .col-lg-6 {
		padding-left: 0;
		padding-right: 0;
	}
	.store-manager-breeding h2,
	.strengthen-sales-force h2,
	.VMD h2 {
		font-size: 1.7rem;
		margin-bottom: 1.5rem;
		margin-left: 1rem;
	}
	.store-manager-breeding h3,
	.VMD h3 {
		margin-left: 2rem;
	}
	.strengthen-sales-force h3 {
		margin-left: 2rem;
		margin-top: 3rem;
	}
	#service .btn-box {
		display: flex;
		align-items: center !important;
	}
	.program button {
		width: 17rem;
	}
	.store-manager-breeding h3,.strengthen-sales-force h3,
	.VMD h3 {
		font-size: 1.5rem;
	}
	.p-inner {
		padding: 1rem;
	}
	.subsidy .btn-box,.to-c .btn-box {
		display: flex;
		justify-content: center;
	}
	.subsidy .btn-box {
		margin-bottom: 1.5rem;
	}

/*cases*/
	#archive-casess {
	padding: 1rem;
	}
	.cases-all h3.card-title {
		font-size: 1.2rem;
	}
	.wp-video {
		width: 348px !important;
	}

	.news-all {
		margin:3rem auto;
	}
	.news-all-inner {
		flex-direction: column;
	}
	#cases h2 {
		font-size: 1.5rem;
	}

/*News*/
	#news-all {
	padding: 1rem 0.5rem;
	}
	.news-all h3.card-title {
		font-size: 1.2rem;
	}




	.contact-desc {
		padding: 15px !important;
		}
	#contact .col-md-12 {
		padding: 0 !important;
		}
	#contact .form {
		width: 100%;
		}
}

/*
Theme name: WILLSORT Inc.
Description:WILLSORT corporate site upgrade
Author: 土田 麻衣子
*/