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

@font-face {
    font-family: "Gidole";
    src: url(/lib/fonts/Gidole.eot) format("eot"), url(/lib/fonts/Gidole.woff) format("woff");
}

.gidole {
    font-family: "Gidole";
}

/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
video {
    display: inline-block;
}

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

[hidden],
template {
    display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */
html {
    font-size: 15px;
    font-family: sans-serif;
    /* 1 */
    -ms-text-size-adjust: 100%;
    /* 2 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}

body {
    margin: 0;
}

#container {
    overflow-x: hidden;
}

.container {
    display: flex;
    flex-flow: column;
    min-height: 100vh;
}

main {
    flex: 1;
}

/* ==========================================================================
   Links
   ========================================================================== */
a {
    background: transparent;
}

a:focus {
    outline: thin dotted;
}

a:focus,
*:focus,
a:active,
a:hover {
    outline: 0;
}

img {
    border: 0px;
}

a img {
    border: none;
}

a:hover img,
button:hover img {
    filter: alpha(opacity=80);
    /* IE 6,7*/
    -ms-filter: "alpha(opacity=80)";
    /* IE 8,9 */
    -moz-opacity: 0.8;
    /* FF , Netscape */
    -khtml-opacity: 0.8;
    /* Safari 1.x */
    opacity: 0.8;
    zoom: 1;
    /*IE*/
    outline: none;
}


/* ==========================================================================
   Typography
   ========================================================================== */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5 {
    text-rendering: optimizelegibility;
    font-weight: 500
}

h1 a,
.h1 a,
h2 a,
.h2 a,
h3 a,
.h3 a,
h4 a,
.h4 a,
h5 a,
.h5 a {
    text-decoration: none;
}

h1,
.h1 {
    font-size: 2.5em;
    line-height: 1.333em;
}

h2,
.h2 {
    font-size: 1.75em;
    line-height: 1.4em;
    margin-bottom: 0.375em;
}

h3,
.h3 {
    font-size: 1.125em;
}

h4,
.h4 {
    font-size: 1.1em;
    font-weight: 700;
}

h5,
.h5 {
    font-size: 0.846em;
    line-height: 2.09em;
    text-transform: uppercase;
    letter-spacing: 2px;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b,
strong,
.strong {
    font-weight: bold;
}

dfn,
em,
.em {
    font-style: italic;
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
}

p {
    -webkit-hyphens: auto;
    -epub-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
}

pre {
    margin: 0;
}

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em;
}

pre {
    white-space: pre-wrap;
}

q {
    quotes: "\201C" "\201D" "\2018" "\2019";
}

q:before,
q:after {
    content: '';
    content: none;
}

small,
.small {
    font-size: 75%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/* ==========================================================================
  Lists
========================================================================== */
dl,
menu,
ol,
ul {
    margin: 1em 0;
}

dd {
    margin: 0;
}

menu {
    padding: 0 0 0 40px;
}

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

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

/* ==========================================================================
  Embedded content
========================================================================== */
svg:not(:root) {
    overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */
figure {
    margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    /* 1 */
    padding: 0;
    /* 2 */
}

button,
input,
select,
textarea {
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 2 */
    margin: 0;
    /* 3 */
}

button,
input {
    line-height: normal;
}

button,
select {
    text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    /* 2 */
    cursor: pointer;
    /* 3 */
}

button[disabled],
html input[disabled] {
    cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

input[type="search"] {
    -webkit-appearance: textfield;
    /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    /* 2 */
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    /* 1 */
    vertical-align: top;
    /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.image-replacement,
.ir {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.clearfix,
.cf,
.comment-respond {
    zoom: 1;
}

.clearfix:before,
.clearfix:after,
.cf:before,
.comment-respond:before,
.cf:after,
.comment-respond:after {
    content: "";
    display: table;
}

.clearfix:after,
.cf:after,
.comment-respond:after {
    clear: both;
}

/*p {
  -ms-word-break: break-all;
  -ms-word-wrap: break-all;
  word-break: break-word;
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  -webkit-hyphenate-before: 2;
  -webkit-hyphenate-after: 3;
  hyphenate-lines: 3;
}*/
.eng p {
    text-align: justify;
    text-justify: inter-word;
}

.last-col {
    float: right;
    padding-right: 0 !important;
}




.alert-help,
.alert-info,
.alert-error,
.alert-success {
    margin: 10px;
    padding: 5px 18px;
    border: 1px solid;
}

.alert-help {
    border-color: #e8dc59;
    background: #ebe16f;
}

.alert-info {
    border-color: #bfe4f4;
    background: #d5edf8;
}

.alert-error {
    border-color: #f8cdce;
    background: #fbe3e4;
}

.alert-success {
    border-color: #deeaae;
    background: #e6efc2;
}


/*********************
INPUTS
*********************/
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
select,
textarea,
.field {
    display: block;
    height: 40px;
    line-height: 40px;
    padding: 0 12px;
    margin-bottom: 14px;
    font-size: 1em;
    color: #5c6b80;
    border-radius: 3px;
    vertical-align: middle;
    box-shadow: none;
    border: 0;
    width: 100%;
    max-width: 400px;
    font-family: 'Noto Sans Japanese', 'Gidole', "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
    background-color: #eaedf2;
    -webkit-transition: background-color 0.24s ease-in-out;
    transition: background-color 0.24s ease-in-out;
}

input[type="text"]:focus,
input[type="text"]:active,
input[type="password"]:focus,
input[type="password"]:active,
input[type="datetime"]:focus,
input[type="datetime"]:active,
input[type="datetime-local"]:focus,
input[type="datetime-local"]:active,
input[type="date"]:focus,
input[type="date"]:active,
input[type="month"]:focus,
input[type="month"]:active,
input[type="time"]:focus,
input[type="time"]:active,
input[type="week"]:focus,
input[type="week"]:active,
input[type="number"]:focus,
input[type="number"]:active,
input[type="email"]:focus,
input[type="email"]:active,
input[type="url"]:focus,
input[type="url"]:active,
input[type="search"]:focus,
input[type="search"]:active,
input[type="tel"]:focus,
input[type="tel"]:active,
input[type="color"]:focus,
input[type="color"]:active,
select:focus,
select:active,
textarea:focus,
textarea:active,
.field:focus,
.field:active {
    background-color: #f7f8fa;
}

input[type="text"].error,
input[type="text"].is-invalid,
input[type="password"].error,
input[type="password"].is-invalid,
input[type="datetime"].error,
input[type="datetime"].is-invalid,
input[type="datetime-local"].error,
input[type="datetime-local"].is-invalid,
input[type="date"].error,
input[type="date"].is-invalid,
input[type="month"].error,
input[type="month"].is-invalid,
input[type="time"].error,
input[type="time"].is-invalid,
input[type="week"].error,
input[type="week"].is-invalid,
input[type="number"].error,
input[type="number"].is-invalid,
input[type="email"].error,
input[type="email"].is-invalid,
input[type="url"].error,
input[type="url"].is-invalid,
input[type="search"].error,
input[type="search"].is-invalid,
input[type="tel"].error,
input[type="tel"].is-invalid,
input[type="color"].error,
input[type="color"].is-invalid,
select.error,
select.is-invalid,
textarea.error,
textarea.is-invalid,
.field.error,
.field.is-invalid {
    color: #fbe3e4;
    border-color: #fbe3e4;
    background-color: white;
    background-position: 99% center;
    background-repeat: no-repeat;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDREQkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDREQ0YwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ3ODRGRkE2RjA0QTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERBRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+U8iT5wAAAedJREFUeNqk1U9I02Ecx/HtV3aIFAc1hcRDUoGXRAq0oNLA2CrsEFmHbikZu0iQYIFGYAiegkCpLipBxPpDEBMUzB0EhSG2LhG7hMR2GviPgUTvB57Bw8P3+U23B16HPX8+e/b8nt93wezZSMCnhXETF3AcB5BDCnH8Dq98ExcGHcFn8Ah3cdDni+fxnPDv9oAnTB7CKu6VCFXtChZy56LxUjt+jfuB8toSOth9wd7xWAWhqrUjYR/FRTwWJm+iIPT/w7bQf5ljiZnBg45dtKFX6H+LU8gIY8OEV6vgTkStwXWE8BPTGDHGPqNPz2mCfSOOYkA99TvCt1bhGPL68zMcwmncMuape10jrI+q4BbHi/FLn31S9z2x5tRhTc+1W506ipM+T3oRD4X+8+qtc4SqFvL0z/Fr14S+Szjis8bz9Lvvaq8cwS/wwGfdlqfPSWqTiFlX77o13u9Ym1PBs8JAytpRoy44X9Ft9E/gvbA+rYKn8NcaaMVc8UHgBw4b9/iqUQZ6hOAJFbyDcUflmsEX4a6+wTtHGfhAIUqa1U29Zc2BytouThD8x6xuN5CtMPi2CrXLZkZf/HyZoRFCP7n+QVR4PV7uI/AjGghN7OU/r1ilnqILtfpNC+o6vIFljBKYlhb/F2AAgaBsWR5wRiIAAAAASUVORK5CYII=);
    outline-color: #fbe3e4;
}

input[type="text"].success,
input[type="text"].is-valid,
input[type="password"].success,
input[type="password"].is-valid,
input[type="datetime"].success,
input[type="datetime"].is-valid,
input[type="datetime-local"].success,
input[type="datetime-local"].is-valid,
input[type="date"].success,
input[type="date"].is-valid,
input[type="month"].success,
input[type="month"].is-valid,
input[type="time"].success,
input[type="time"].is-valid,
input[type="week"].success,
input[type="week"].is-valid,
input[type="number"].success,
input[type="number"].is-valid,
input[type="email"].success,
input[type="email"].is-valid,
input[type="url"].success,
input[type="url"].is-valid,
input[type="search"].success,
input[type="search"].is-valid,
input[type="tel"].success,
input[type="tel"].is-valid,
input[type="color"].success,
input[type="color"].is-valid,
select.success,
select.is-valid,
textarea.success,
textarea.is-valid,
.field.success,
.field.is-valid {
    color: #e6efc2;
    border-color: #e6efc2;
    background-color: white;
    background-position: 99% center;
    background-repeat: no-repeat;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDRERkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDRFMEYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjY0MzQ0NERERjA0QjExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERFRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+7olkTQAAAfhJREFUeNqklU9oE0EUhzdroWjw0tBeWlDxkEaIp55TsCU9VKIgCrHBelA8CQ1Kr1WPbZrQ3gqtQqvGqxpQc2jBk6BIIaAGD4qNCKURpDSKiPi98gLDsJt//uBjsztvfnk7895sIPAw6/joGMThFJyAXn2+A+9gA57/TaY/eU0OeBgfhGm4DiGnsb7DAszxBz/NAdcKjMJLuNWCqagHbsscN5+L+hmH4QkMOe1L5jzFfNA2PgT34ajTuY7AGuZB0/hmh5m+gS0r8xv1zRvg+gGCHZiOwnF4DP3iB3sQkYxPd2C6CWfhB9Xwlus5+K1j4jXuaq3a+gM1H9OPcAa+7q9lPidZJqHbiIm7Wg22rsEI7FrPSzAMX/T+ADyAKSsu7Fr1KplehLvwCs5DvfBf65p+MypqRbO1FXK9utH4/QKuaqYTsG3E3INJv00Q46px3+XxanJ/Ute2/vqP4FKDza2KcdljIKdnhS0xXYULTaqmLMZFn8FFSFtvt6x70ExFCS5oUXspq2ssa7oEl1swFa+CGFdgtkHgPDyDKy02zyxNU6lXRUZb1EuHYayNNs+Yh5B0WQo+/8fpJnNTZFuzz2OpjoQ2QruSOQlMy35fEGmEGMxY9e1brxobw7TkWA1h6xfckUPb+JhGoE/Hpfvew7qUld/H9J8AAwDpw3WYrxcZ3QAAAABJRU5ErkJggg==);
    outline-color: #e6efc2;
}

input[type="text"][disabled],
input[type="text"].is-disabled,
input[type="password"][disabled],
input[type="password"].is-disabled,
input[type="datetime"][disabled],
input[type="datetime"].is-disabled,
input[type="datetime-local"][disabled],
input[type="datetime-local"].is-disabled,
input[type="date"][disabled],
input[type="date"].is-disabled,
input[type="month"][disabled],
input[type="month"].is-disabled,
input[type="time"][disabled],
input[type="time"].is-disabled,
input[type="week"][disabled],
input[type="week"].is-disabled,
input[type="number"][disabled],
input[type="number"].is-disabled,
input[type="email"][disabled],
input[type="email"].is-disabled,
input[type="url"][disabled],
input[type="url"].is-disabled,
input[type="search"][disabled],
input[type="search"].is-disabled,
input[type="tel"][disabled],
input[type="tel"].is-disabled,
input[type="color"][disabled],
input[type="color"].is-disabled,
select[disabled],
select.is-disabled,
textarea[disabled],
textarea.is-disabled,
.field[disabled],
.field.is-disabled {
    cursor: not-allowed;
    border-color: #cfcfcf;
    opacity: 0.6;
}

input[type="text"][disabled]:focus,
input[type="text"][disabled]:active,
input[type="text"].is-disabled:focus,
input[type="text"].is-disabled:active,
input[type="password"][disabled]:focus,
input[type="password"][disabled]:active,
input[type="password"].is-disabled:focus,
input[type="password"].is-disabled:active,
input[type="datetime"][disabled]:focus,
input[type="datetime"][disabled]:active,
input[type="datetime"].is-disabled:focus,
input[type="datetime"].is-disabled:active,
input[type="datetime-local"][disabled]:focus,
input[type="datetime-local"][disabled]:active,
input[type="datetime-local"].is-disabled:focus,
input[type="datetime-local"].is-disabled:active,
input[type="date"][disabled]:focus,
input[type="date"][disabled]:active,
input[type="date"].is-disabled:focus,
input[type="date"].is-disabled:active,
input[type="month"][disabled]:focus,
input[type="month"][disabled]:active,
input[type="month"].is-disabled:focus,
input[type="month"].is-disabled:active,
input[type="time"][disabled]:focus,
input[type="time"][disabled]:active,
input[type="time"].is-disabled:focus,
input[type="time"].is-disabled:active,
input[type="week"][disabled]:focus,
input[type="week"][disabled]:active,
input[type="week"].is-disabled:focus,
input[type="week"].is-disabled:active,
input[type="number"][disabled]:focus,
input[type="number"][disabled]:active,
input[type="number"].is-disabled:focus,
input[type="number"].is-disabled:active,
input[type="email"][disabled]:focus,
input[type="email"][disabled]:active,
input[type="email"].is-disabled:focus,
input[type="email"].is-disabled:active,
input[type="url"][disabled]:focus,
input[type="url"][disabled]:active,
input[type="url"].is-disabled:focus,
input[type="url"].is-disabled:active,
input[type="search"][disabled]:focus,
input[type="search"][disabled]:active,
input[type="search"].is-disabled:focus,
input[type="search"].is-disabled:active,
input[type="tel"][disabled]:focus,
input[type="tel"][disabled]:active,
input[type="tel"].is-disabled:focus,
input[type="tel"].is-disabled:active,
input[type="color"][disabled]:focus,
input[type="color"][disabled]:active,
input[type="color"].is-disabled:focus,
input[type="color"].is-disabled:active,
select[disabled]:focus,
select[disabled]:active,
select.is-disabled:focus,
select.is-disabled:active,
textarea[disabled]:focus,
textarea[disabled]:active,
textarea.is-disabled:focus,
textarea.is-disabled:active,
.field[disabled]:focus,
.field[disabled]:active,
.field.is-disabled:focus,
.field.is-disabled:active {
    background-color: #d5edf8;
}

input[type="password"] {
    letter-spacing: 0.3em;
}

textarea {
    max-width: 100%;
    min-height: 120px;
    line-height: 1.5em;
}

select {
    -webkit-appearance: none;
    /* 1 */
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAHCAYAAADXhRcnAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEOEZCMjYxMEYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEOEZCMjYxMUYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQ4RkIyNjBFRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkQ4RkIyNjBGRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Vxkp9gAAAI9JREFUeNpidHFxucHAwKAOxE+AmJmBMPgLxDJAfJMFSKwD4kqoAClgA+P///8ZXF1dPaCGcBKh6QcQB+3evXs7WDMIAA2QB1I7gFgDj0aQFz2BGh+AOEwwUaDAQyBlCMR7cGjcC5KHaQQBuM3IAOiKTiBVhiTUDdRUhq4Oq2aoAelAahIQ5wM1zsCmBiDAADhYMJXVZ9u9AAAAAElFTkSuQmCC);
    background-repeat: no-repeat;
    background-position: 97.5% center;
}

/*********************
GENERAL STYLES
*********************/
body {
    font-family: 'Gidole', 'Noto Sans Japanese', "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 100%;
    line-height: 1.8;
    color: #000000;
    background-color: #ffffff;
    -webkit-font-smoothing: antialiased;
}

/*********************
LAYOUT & GRID STYLES
*********************/
.wrap {
    /*max-width: 1050px;*/
    width: 1050px;
    margin: 0 auto 50px;
}

/*********************
LINK STYLES
*********************/
a {
    color: #000000;
    text-decoration: none;
}

a:hover {
    color: #C30D23;
}

a:link,
a:visited:link {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3);
}


/*20170628ニュース用*/
.alignright {
    float: right;
}


/*********************
HEADER STYLES
*********************/
.header {
    position: relative
        /* fixed*/
    ;
    width: 100%;
    margin: auto;
    z-index: 20;
    font-size: 13.6px;
    letter-spacing: 4px;
    top: 0;
    min-height: 80px;
}

.eng .header {
    letter-spacing: 0px;
}

#top .header {
    /*TOP PAGE*/
    border-bottom: 9px solid #C30D23;
    background-color: #080c1c;
    height: 100%;
    position: relative;
}

#top .header:before {
    width: 50%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    background-color: #00001d;
}

#top div#inner-header {
    border-bottom: none;
    background-color: rgba(0, 0, 29, 0.6);
}

#top div#header-box {
    border-bottom: 1px solid #FFFFFF;
}

#top .nav li a,
.englis_btn a {
    color: white;
}

#copy {
    position: absolute;
    max-width: 1050px;
    top: 30%;
    left: 0;
    right: 0;
    margin: auto;
}

#movieBtn {
    position: absolute;
    max-width: 1050px;
    top: 68%;
    left: 0;
    right: 0;
    margin: auto;
}

#movieBtn a {
    display: block;
}

#movieBtn a:not(:last-of-type) {
    margin-bottom: 10px;
}

#movieBtn a:last-of-type {
    margin-bottom: 20px;
}

@media screen and (min-width:1050px) {
    #copy {
        width: 1050px;
    }

    #movieBtn {
        width: 1050px;
    }
}

@media screen and (max-width: 414px) {
    #copy {
        padding-bottom: 10px;
    }
}

div#inner-header {
    margin: auto;
    border-bottom: 1px solid;
    background-color: #ffffff;
    z-index: 20;
    top: 0;
    left: 0;
    right: 0;
    position: fixed;
    min-height: 80px;
}

/*div#inner-header nav ,#logo{
	float:left;
	line-height:95px;
}*/
div#inner-header p#logo {
    float: left;
    margin-top: 28px;
}

div#inner-header nav {
    margin-top: 5px;
    float: right;
}

.contact_link {
    float: right;
    line-height: 1;
}

.contact_link a {
    display: block;
}

.contact_link img {
    width: 80px;
}

/*	div#inner-header nav{
		margin-left:80px;
	}*/
div#inner-header nav {
    line-height: 70px;
}

#header-box {
    position: relative;
    margin: 0 auto;
}

.englis_btn {
    position: absolute;
    top: 5px;
    right: 114px;
    font-size: 12px;
    background-color: #002d64;
    /*bogoプラグイン使用時には不要*/
    border-radius: 3px;
    /*bogoプラグイン使用時には不要*/
    padding: 0 1em;
    /*bogoプラグイン使用時には不要*/
    letter-spacing: 2px;
}

.englis_btn a:hover {
    color: #c30d23;
}

div#inner-header .nav ul {
    background: rgba(0, 0, 29, 0.6);
    margin-top: 0;
}

div#inner-header .nav li {
    margin: 0 .55em;
}

div#inner-header .nav li a {
    letter-spacing: .12em;
    padding: 0 0.5em;
}

div#inner-header .nav li ul.sub-menu a:hover,
div#inner-header .nav li ul.children a:hover {
    color: #c30d23;
}

div#inner-header .nav li ul.sub-menu,
div#inner-header .nav li ul.children {
    border-top: 0;
    position: absolute;
    visibility: hidden;
    z-index: 8999;
    max-width: 1050px;
    left: 0;
    right: 0;
    margin: 0 auto;
    line-height: 4em;
}

div#inner-header .nav li ul.sub-menu a,
div#inner-header .nav li ul.children a {
    color: #FFFFFF;
}

div#inner-header .nav li:hover>ul {
    top: auto;
    visibility: visible;
}

div#inner-header p {
    margin: 0;
}

#logo img {
    vertical-align: middle;
}

#top .n2-ss-align {
    /*TOP PAGE スライドショー*/
    max-width: 2000px;
    margin: auto;
    padding-top: 96px;
}

ul.bogo-language-switcher {
    margin: 0;
}

ul.bogo-language-switcher li {
    display: inline-block;
    background-color: #002d64;
    border-radius: 3px;
    padding: 0 20px;
    margin: 0 0 0 1em;
}

ul.bogo-language-switcher li.current {
    display: none;
}

/*********************
FOOTER STYLES
*********************/
.footer {
    clear: both;
    background-color: #00022B;
    font-size: 11px;
}

#inner-footer {
    background-color: #002D64;
    padding: 55px 0;
}

#inner-footer .nav li ul.sub-menu,
#inner-footer .nav li ul.children {
    margin-top: 0;
}

.footer-nav {
    float: left;
}

.footer-nav a:before {
    content: "\0232A";
    display: inline-block;
    color: #FFFFFF;
    margin-right: 0.5em;
}

.footer .nav li {
    margin-left: 50px;
}

.eng .footer .nav li {
    margin-left: 35px;
}

.footer .nav li a {
    margin-bottom: 0.5em;
    color: white;
}

.footer .nav li ul.sub-menu li,
.footer .nav li ul.children li {
    float: none;
    clear: both;
    margin-left: 1em;
}

#contact_box {
    float: right;
    color: #FFFFFF;
    font-size: 14px;
    letter-spacing: 2px;
    margin-right: 50px;
}

.eng #contact_box {
    margin-right: 35px;
}

#contact_box p {
    margin: 0 0 1.5em;
}

#contact_box a.gidole {
    display: block;
    font-size: 48px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 2px;
    color: #FFFFFF;
}

.eng #contact_box a.gidole {
    letter-spacing: -2px;
}

.partnership {
    display: block;
    /* margin: 30px auto 0; */
    width: 100%;
    /* max-width: 250px; */
    font-size: 25px;
    font-weight: bold;
    color: #fff;
    margin-top: 48px;
}

.partnership img {
    width: 100%;
}

#inner-footer2 {
    background-color: #00022b;
    text-align: center;
    color: #fff;
    padding: 1.2em 0;
    font-size: 9px;
}

#inner-footer2 p {
    margin: 0;
}

@media screen and (max-width: 865px) {
    #contact_box a.gidole {
        font-size: 28px;
    }

    .partnership {
        font-size: 18px;
    }
}





/*********************
NAVIGATION STYLES header / footer
*********************/
.nav {
    margin: 0;
}

.nav li {
    float: left;
}

.nav li a {
    display: block;
    /*font-weight: 100;*/
}

.nav li ul.sub-menu li a,
.nav li ul.children li a {
    display: inline-block;
}

/*********************
POSTS & CONTENT STYLES
*********************/

#content {
    margin-top: 1.5em;
    font-size: 15px;
}

/*******  TOP PAGE  *******/
.eng_title {
    font-weight: 500;
    font-size: 38px;
    color: #c30d23;
    transform: scale(1, 0.8);
    letter-spacing: 2px;
    text-align: center;
    margin: 0 auto;
}

.eng_title a {
    color: #c30d23;
}

#product_category {
    max-width: 1300px;
    margin: 80px auto 50px;
    position: relative;
}

#product_category a {
    display: block;
}

.fl,
.fr {
    margin: 0;
    padding: 0;
    position: relative;
    width: 48%;
}

.fl {
    float: left;
}

.fr {
    float: right;
}

.fl img,
.fr img {
    width: 100%;
    height: auto;
}

.h2-title {
    position: absolute;
    width: 304px;
    height: 146px;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.eng .h2-title {
    width: 440px;
    height: 94px;
}

@media screen and (min-width:1050px) {
    .h2-title {
        max-width: 304px;
        max-height: 146px;
    }

    .eng .h2-title {
        max-width: 440px;
        max-height: 94px;
    }
}

ul#menu_aion {
    margin: 0 auto 80px;
}

#menu_aion li {
    float: left;
    position: relative;
    border-right: 1px dotted;
    /*		width: 20%;
		max-width: 210px;*/
    width: 16.7%;
    max-width: 175px;
    text-align: center;
}

.eng #menu_aion li {
    width: 20%;
    max-width: 210px;
}

#menu_aion li:last-child {
    border-right: none;
}

#menu_aion li a {
    display: block;
    text-decoration: none;
    font-size: 15px;
    letter-spacing: 2px;
}

#menu_aion li a span {
    display: block;
}

/*20220207*/
#top #container {
    background: #fafafa;
}

@media screen and (max-width: 865px) {
    #top div#header-box {
        border-bottom: none !important;
        background-color: #c30d23;
        padding: 15px 20px;
        margin: 0 auto;
    }

    #top .n2-ss-align {
        padding-bottom: 20px;
    }
}

.newsArea {
    width: 100%;
    margin: 0 auto 30px;
}

.newsArea p {
    font-size: 38px;
    font-weight: 600;
    font-family: arial black;
}

.newsArea p span,
.top-Title span {
    font-size: 25px;
    font-weight: 600;
    color: #9B9B9B;
    margin-left: 1em;
}

#top div#inner-header {
    border-bottom: none;
    background-color: rgba(0, 0, 29, 0.6);
}

#top .header {
    border-bottom: 9px solid #C30D23;
    background-color: #080c1c;
    height: 100%;
    position: relative;
}

.newsArea {
    position: relative;
}

.newsArea .list-link {
    border: 1px solid;
    padding: 5px 8px;
    position: absolute;
    top: 50px;
    right: 0;
}

.newsArea ul {
    display: table;
    width: 100%;
    background: #fff;
}

.newsArea li {
    display: table-cell;
    border-right: #8D8D8D dotted;
    width: 25%;
}

.newsArea li:last-child {
    border: none;
}

span.newsdate {
    margin: inherit;
}

span.newstitle {
    border: none;
    margin: inherit;
    max-width: inherit;
}

@media screen and (max-width:767px) {
    .newsArea {
        width: 90%;
    }

    .newsArea p {
        margin-bottom: 15px;
    }

    .newsArea .list-link {
        position: inherit;
        top: 0;
    }

    .newsArea ul {
        display: block;
    }

    .newsArea li {
        display: block;
        border-right: none;
        border-bottom: #8D8D8D dotted;
        width: 100%;
    }
}

@media screen and (min-width:768px) {
    .halfwrap {
        width: 48%;
        float: left;
        margin-top: 30px;
    }

    .halfwrap:last-child {
        margin-left: 4%;
    }

    .halfwrap a {
        display: table;
    }

    .halfwrap a>div {
        display: table-cell;
        vertical-align: top;
    }

    .halfwrap a>div:first-child {
        padding: 20px 30px;
    }

    .halfwrap img {
        max-width: 239px;
        margin-bottom: 30px;
    }
}

.top-Title {
    font-weight: 600;
    font-size: 38px;
    font-family: arial black;
    line-height: 1;
    margin: 0;
}

.halfwrap div h3 {
    font-size: 1.5rem;
    border-bottom: 3px solid #817dee;
    line-height: 1;
    padding-bottom: 6px;
}

.halfwrap strong {
    font-size: 0.9rem;
    font-weight: bold;
    line-height: 1.5;
}

.halfwrap div a {
    font-size: 1rem;
}

.halfwrap {
    margin-top: 30px;
}

.halfwrap a {
    background: #5856b0;
    color: #FFFFFF;
}

@media screen and (max-width:767px) {
    .wrap90 {
        width: 90%;
        margin: auto;
    }

    .halfwrap {
        width: 100%;
    }

    .halfwrap a {
        display: block;
        padding: 30px 5%;
    }
}

@media screen and (min-width:768px) {
    .wrap1of3 a {
        display: inline-block;
        vertical-align: top;
        width: 30%;
        max-width: 315px;
        float: left;
        padding-bottom: 30px;
    }

    .wrap1of3 a:not(:last-child) {
        margin-right: 5%;
    }
}

.wrap1of3 {
    width: 100%;
    margin-top: 30px;
}

.wrap1of3 a {
    background: #fff;
    font-size: 0;
    text-align: center;
}

.wrap1of3 a figure {
    position: relative;
    margin-bottom: 50px;
}

.wrap1of3 a img {
    width: 100%;
}

.wrap1of3 a figcaption {
    font-size: 16px;
    border: 1px solid;
    padding: 1em;
    line-height: 1;
    max-width: 130px;
    width: 80%;
    background: #FFFFFF;
    position: absolute;
    bottom: -5%;
    left: 0;
    right: 0;
    margin: auto;
}

.wrap1of3 a h3 {
    font-size: 22px;
    margin: 0 auto;
    line-height: 1;
}

.wrap1of3 a p {
    font-size: 15px;
}

@media screen and (max-width:767px) {
    .wrap1of3 a {
        display: block;
        padding: 20px;
        margin-bottom: 30px;
    }
}

@media screen and (min-width:768px) {
    .movieArea {
        position: relative;
        margin-bottom: 200px;
    }

    .movieArea div.txtArea {
        width: 50%;
        padding: 20px 150px 20px 30px;
    }

    .movieArea div#video {
        position: absolute;
        top: 50%;
        width: 60%;
        right: 0;
    }
}

.movieArea div.txtArea {
    background: #7a7a7a;
    color: #fff;
    margin-top: 30px;
}

@media screen and (max-width:767px) {
    .movieArea div.txtArea {
        padding: 20px 30px;
    }
}



/*******  NEWS PAGE  *******/

.news_list li {
    border-bottom: 1px solid #ababab;
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
}

.date {
    margin-right: 20px;
}

.info,
.event {
    margin-right: 20px;
    color: #FFFFFF;
    padding: .2em .3em .2em .5em;
    font-size: 11px;
    vertical-align: middle;
    letter-spacing: 2px;
}

.info {
    background-color: #c30d23;
}

.event {
    background-color: #1880c5;
}

/*******  CONTENT PAGE  *******/
#breadcrumb ul {
    /*パンくずリスト*/
    margin: 0 0 14px;
}

#breadcrumb li {
    display: inline-block;
    margin-right: .5em;
    font-size: 12px;
    color: #727171;
    margin-bottom: 10px !important;
    line-height: 1;
}

.h1-title {
    font-size: 25px;
    font-weight: 500;
    line-height: 1;
}

.h1-title span {
    padding: 5px 15px;
    color: #fff;
    font-size: 0.6em;
    font-weight: normal;
    background-color: #C30D23;
    margin-right: 15px;
    display: inline-block;
    vertical-align: top;
}

.taC {
    text-align: center;
}

.parent_title {
    margin: 0 auto;
    letter-spacing: 4px;
    color: #C30D23;
    font-size: 22px;
    border-bottom: 1px solid;
}

.eng .parent_title {
    letter-spacing: 0;
}

.mt50 {
    margin-top: 50px !important;
}


/*******  PRODUCT PAGE  *******/
.tab {
    /*タブ切り替え*/
    width: 100%;
    text-align: center;
    border-bottom: 7px solid #c30d23;
    letter-spacing: -.40em;
    margin: 22px auto 0;
}

.tab li {
    display: inline-block;
    width: 525px;
    margin: 0;
    padding: 0.2em 0;
    background-color: #c9caca;
    color: #FFFFFF;
    font-size: 18px;
    letter-spacing: 4px;
    cursor: pointer;
}

.eng .tab li {
    letter-spacing: 0px;
}

.tab li.active {
    background-color: #c30d23;
    border-top: 5px solid #c30d23;
}

.panel {
    display: none;
}

.show {
    display: block;
}

.cat_name {
    /*一覧表示*/
    margin-bottom: 50px;
}

.cat_name li,
.item_list li {
    float: left;
    width: 253px;
    text-align: center;
    margin-right: 12.6px;
    margin-bottom: 12.6px;
    line-height: 1;
}

.eng .cat_name li,
.eng .item_list li {
    box-sizing: content-box;
}

.cat_name li:nth-child(4n),
.item_list li:nth-child(4n) {
    margin-right: 0;
}

.cat_name li a {
    display: block;
    border: 2px solid #c30d23;
    border-radius: 10px;
    padding: .75em 0;
    color: #c30d23;
    letter-spacing: 2px;
}

.cat_name li a:hover {
    background-color: #c30d23;
    color: #FFFFFF;
}

.item_list li a {
    letter-spacing: 1px;
    font-size: 11px;
}

.cat_name li.current-cat a {
    color: #ffffff;
    background-color: #c30d23;
}

.item_recommend {
    /*関連商品*/
    margin-bottom: 50px;
}

.subject,
.subject_s,
.subject_s22,
.subject_border {
    margin: 0;
    letter-spacing: 4px;
    color: #C30D23;
}

.eng .subject,
.eng .subject_s,
.eng .subject_s22,
.eng .subject_border {
    letter-spacing: 0;
}

/*	.subject{
		font-size:22px;
		border-bottom:1px solid;}*/
.subject {
    /*0322*/
    font-size: 20px;
    font-weight: 500;
}

.subject_border {
    /*0322*/
    font-size: 20px;
    font-weight: 500;
    border-bottom: 1px solid;
}

.subject_s {
    font-size: 18px;
}

.subject_s22 {
    font-size: 22px;
}

.item_recommend li {
    float: left;
    width: 155px;
    text-align: center;
    margin-right: 24px;
    margin-bottom: 24px;
    line-height: 1;
}

.item_recommend li:nth-child(6),
.item_recommend li:nth-child(12) {
    margin-right: 0;
}

.item_recommend li a {
    letter-spacing: 1px;
    font-size: 11px;
    display: block;
    color: #000000;
}

.item_recommend li a>img {
    padding: 0;
    margin: 0 0 8px 0;
}

p.intro {
    margin: 0 auto 50px;
}

#manualBox {
    color: #c30d23;
    margin: 100px auto;
}

#manualBox li {
    display: inline-block;
    float: left;
    width: 48%;
    margin-right: 3%;
    text-align: center;
}

#manualBox li:last-child {
    margin-right: 0;
}

#manualBox a {
    color: #c30d23;
    border: 1px solid;
    display: block;
    padding: 12px 0;
}

#manualBox a:hover {
    color: #FFFFFF;
    border: 1px solid;
    background-color: #c30d23;
}

#manualBox span {
    margin-right: 1em;
}


#searchform {
    /*検索フォーム*/
    width: 760px;
    margin: 60px auto 80px;
}

#content #searchform input {
    background-color: #fff;
    border: 2px solid #c9caca;
    max-width: 600px;
    display: inline-block;
    margin: 1px 0 0 0;
    padding: 0;
    height: 56px;
    vertical-align: top;
}

#searchform p {
    font-size: 18px;
    letter-spacing: 4px;
    margin: 0;
}

#searchform button {
    border: 0;
    background: none;
    margin: 0;
    padding: 0;
    vertical-align: bottom;
    line-height: 1;
}

.down_btn {
    /* PDFダウンロード */
    display: inline-block;
    margin-left: 1em;
    line-height: 1;
}

.down_btn a {
    color: #c30d23;
}

.down_btn a:hover {
    text-decoration: underline;
}

.down_btn img {
    margin-left: 0.5em;
}

.product-content a {
    /*製品詳細*/
    color: #c30d23;
}

.product-content a:hover {
    /*color:#2EA7E0;*/
    color: #c30d23;
}

.fl60 {
    float: left;
    width: 620px;
}

.tell {
    background: url(/lib/img/products/tell.png) no-repeat;
    height: 71px;
    margin: 20px auto;
    float: left;
}

.tell p {
    margin-left: 86px;
    margin-top: 0;
}

.tell span {
    display: block;
    /*margin-bottom:0.6em;*/
    font-size: 15px;
}

.tell a,
.mail a {
    display: block;
}

.tell a.gidole {
    font-size: 48px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 2px;
}

.eng .tell a {
    font-size: 48px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: -2px;
    color: #c30d23;
}


.fr40 {
    float: right;
    width: 430px;
    margin-top: -10px;
}

.fr40 span img {
    margin-right: 1em;
}

#case {
    /*使用例*/
    margin: 50px auto 100px;
}

.mb50 {
    margin-bottom: 50px;
}

.ds_block {
    display: block;
}

.s1of4 {
    width: 24%;
}

.mr1 {
    margin-right: 1.3%;
}

.icon {
    vertical-align: middle;
    /*margin-right:20px;*/
}

.relative {
    position: relative;
}

.mainIMG_txt {
    display: block;
}


/*******  ここから下は、風間さんのCSS  *******/
/*********************
TECHNIQUE
*********************/
#technique .entry-content a {
    color: #c30d23;
}

.circle-title {
    font-size: 20px;
}

.circle-title:before {
    content: "●";
    margin-right: 5px;
    display: inline-block;
    color: #c30d23;
    font-size: 1.4em;
}

#technique #manualBox {
    text-align: center;
}

#technique #manualBox a:after {
    content: "▼";
    margin-left: 10px;
    display: inline-block;
    transform: rotate(-90deg);
}

#technique #manualBox a:hover {
    background-color: #c30d23;
    color: #fff;
}

.fl50 {
    float: left;
    width: 500px;
}

.fr50 {
    float: right;
    width: 500px;
}

.pt22 {
    padding-top: 22px;
}

p.desc {
    margin: 40px auto;
}

/*********************
ENVIRONMENT
*********************/
#environment .entry-content a {
    color: #c30d23;
}

#environment .subject {
    margin-bottom: 10px;
}

.environment-img {
    float: right;
    margin: 10px 0 0 50px;
}

#environment .ds_block img {
    margin-right: 1em;
}

/*********************
FAQ
*********************/
#faq .entry-content a {
    color: #c30d23;
}

dl.faq-list {
    margin-bottom: 50px;
}

dl.faq-list dt {
    padding-left: 35px;
    font-size: 20px;
    color: #c30d23;
    letter-spacing: 4px;
    position: relative;
}

dl.faq-list dt:before {
    position: absolute;
    top: 5px;
    left: 0;
    content: url(http://www.alphaplus.link/db/wp-content/uploads/2017/01/Q.png);
    width: 25px;
    height: 25px;
}

dl.faq-list dd {
    margin: 10px 0 30px 0;
    padding-left: 35px;
    position: relative;
}

dl.faq-list dd:before {
    position: absolute;
    top: 0;
    left: 0;
    content: url(http://www.alphaplus.link/db/wp-content/uploads/2017/01/A.png);
    width: 25px;
    height: 25px;
}


/*********************
CONTACT
*********************/
.contact_intro {
    margin: 0 auto 50px;
}

.annotation {
    padding: 2px 10px;
    margin-right: 20px;
    background-color: #c30d23;
    color: #fff;
}

#contact .tell img,
#contact_confirm .tell img,
#contact_thanks .tell img {
    margin-right: 20px;
    float: left;
}

#contact .tell {
    max-width: 40%;
}

#contact .tell a {
    display: inline;
}

#contact .eng .tell {
    max-width: 50%;
    width: 45%;
}

/*#contact .tell p,
#contact_confirm .tell p,
#contact_thanks .tell p {
	margin: 0;
}*/

/*英文対応*********************/
article.en-US .tell {
    width: 45%;
}

article.en-US .tell p {
    margin-top: -10px;
}

article.en-US .tell p a {
    margin: 0 50px 0 0;
    font-size: 40px;
    color: #c30d23;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 2px;
}

/*英文対応*********************/

.red-back {
    margin-right: 10px;
    font-size: 0.8em;
    background-color: #c30d23;
    color: #fff;
    display: inline-block;
    padding: .2em 1em;
    letter-spacing: 1px;
}

.seg_title {
    margin: 30px 0 0;
    /*	font-size: 20px;*/
}

#mw_wp_form_mw-wp-form-114 form {
    width: 85%;
    margin: 0 auto;
}

.form_box dt {
    width: 180px;
    margin-bottom: 10px;
    padding: 5px 10px;
    background-color: #c30d23;
    color: #fff;
    float: left;
    min-height: 37px;
}

.eng .form_box dt {
    width: 200px
}

.form_box dt span {
    background-color: #ffffff;
    color: #c30d23;
    display: inline-block;
    padding: 0 0.2em 0 0.3em;
    margin-left: 10px;
    font-size: 11px;
    border-radius: 5px;
    letter-spacing: 2px;
    vertical-align: middle;
}

.eng .form_box dt span {
    letter-spacing: 0px;
}

.form_box dd {
    padding: 5px 10px;
    margin: 0 0 10px 190px;
    border: #000 1px solid;
    min-height: 37px;
}

.eng .form_box dd {
    margin: 0 0 10px 210px;
}

#content input,
#content select,
#content textarea {
    margin: 0;
}

#submit_btn button {
    width: 100%;
    margin: 30px 0 50px;
    padding: 1em 0;
    color: #c30d23;
    text-align: center;
    border: 1px solid #c30d23;
    background-color: transparent;
}

#submit_btn button:after {
    content: "▼";
    margin-left: 10px;
    display: inline-block;
    transform: rotate(-90deg);
}

#submit_btn button:hover {
    background-color: #c30d23;
    color: #fff;
}

form p {
    margin: 0;
    font-weight: 500;
}

.form_box {
    margin: 0;
}

form input[type="text"],
form input[type="email"],
form select,
form textarea {
    max-width: 100%;
    height: 25px;
    line-height: 25px;
    background-color: #ffffff;
}

form .text_inquiry {
    min-height: 132px;
}

form .sub_btn input[type="submit"] {
    background: none;
    border: 2px solid;
    width: 100%;
    padding: 15px 0;
    color: #c30d23;
    font-size: 19px;
    letter-spacing: 6px;
    margin: 0 0 15px 0 !important;
}

form .sub_btn input[type="submit"]:hover {
    background: #c30d23;
    color: #ffffff;
}




/*********************
COMPANY
*********************/
#message #main,
#group #main,
#philosophy #main,
#outline #main,
#history #main,
#base #main,
#factory1 #main,
#factory2 #main,
#factory3 #main,
#factory4 #main,
#factory5 #main,
#factory6 #main {
    width: 75%;
    float: left;
}

#factory1 .parent_title,
#factory2 .parent_title,
#factory3 .parent_title,
#factory4 .parent_title,
#factory5 .parent_title,
#factory6 .parent_title {
    border-bottom: none;
    padding-left: 125px;
    color: #000;
    position: relative;
}

#factory1 .eng .parent_title,
#factory2 .eng .parent_title,
#factory3 .eng .parent_title,
#factory4 .eng .parent_title,
#factory5 .eng .parent_title,
#factory6 .eng .parent_title {
    padding-left: 185px;
}

#factory1 .parent_title:before,
#factory2 .parent_title:before,
#factory3 .parent_title:before,
#factory4 .parent_title:before,
#factory5 .parent_title:before,
#factory6 .parent_title:before {
    padding: 5px 15px;
    color: #fff;
    font-size: 0.6em;
    font-weight: normal;
    content: '製造拠点';
    top: 4px;
    left: 0;
    position: absolute;
    background-color: #C30D23;
}

#factory1 .eng .parent_title:before,
#factory2 .eng .parent_title:before,
#factory3 .eng .parent_title:before,
#factory4 .eng .parent_title:before,
#factory5 .eng .parent_title:before,
#factory6 .eng .parent_title:before {
    content: 'Manufacturing Locations';
}

.company-table {
    margin: 30px auto 50px;
    width: 90%;
    text-align: left;
    border: 1px solid #000;
}

.company-table th {
    width: 18%;
    padding: 5px 10px;
    font-weight: normal;
    text-align: left;
    background-color: #f3f3f3;
    vertical-align: top;
    border: 1px solid #000;
}

.eng .company-table th {
    width: 25%;
}

.company-table td {
    padding: 5px 10px;
    border-bottom: 1px solid #000;
    vertical-align: top;
}

.eng .company-table td:nth-child(3) {
    width: 20%;
}

.philosophy-fl {
    float: left;
    margin: 20px 40px 0 0;
}

.philosophy-list {
    margin-top: 130px;
    line-height: 2.5;
}

.philosophy-list li img {
    margin-right: 10px;
    vertical-align: sub;
}

.eng .philosophy-list li {
    margin-bottom: 1em;
}

.eng .philosophy-list li img {
    display: inline-block;
    float: left;
    margin: 0;
}

.eng .philosophy-list li span {
    display: inline-block;
    margin-left: 15px;
    line-height: 1.5;
    vertical-align: top;
    letter-spacing: -1px;
}

@media screen and (max-width:767px) {
    .eng .philosophy-list li span {
        display: block;
        margin-left: 30px;
    }
}

.base-photo {
    width: 30%;
    margin: 20px 0 0 5%;
    float: left;
    font-size: 11px;
}

.base-photo p {
    margin: 0;
}

.base-photo img.base-img {
    width: 100%;
    height: auto;
}

.base-photo:nth-child(3n+1) {
    margin-left: 0;
    clear: both;
}

#factory1 .entry-content .taC img,
#factory2 .entry-content .taC img,
#factory3 .entry-content .taC img,
#factory4 .entry-content .taC img,
#factory5 .entry-content .taC img,
#factory6 .entry-content .taC img {
    width: 100%;
}

.bgc-g {
    background-color: #f3f3f3;
}

.bgc-g p {
    margin: 0 20px;
    padding-bottom: 20px;
}

.bgc-g p.subject_s {
    margin: 5px 20px 0;
    padding: 0;
}

.bgc-g p.taC {
    margin: 0;
    padding: 0;
}

.bgc-g p.taL {
    margin: 0;
    padding: 0;
    text-align: left;
    display: inline-block;
}

.text_R {}

.base-box-wrap {
    width: 100%;
    min-height: 100%;
    overflow: hidden;
    margin-bottom: 50px;
}

.base-box {
    width: 47%;
    margin-left: 6%;
    float: left;
    padding-bottom: 32767px;
    margin-bottom: -32767px;
}

.base-box img {
    width: 100%;
}

.base-box:first-child {
    margin-left: 0;
}

.bgc-g p.subject_s.pb20 {
    padding-bottom: 20px;
}


#video {
    width: 100%;
    margin: 30px auto 50px;
}

#video>video {
    width: 100%;
    height: auto;
    margin: auto;
    background-color: #000000;
    padding: 0 5%;
}

/*********************
ABOUT
*********************/
#about #main,
#mind #main,
#bridgehead #main,
#system #main,
#challenge #main {
    width: 75%;
    float: left;
}

.about-imgL {
    margin: 20px 30px 10px 0;
    float: left;
}

.about-imgR {
    margin: 20px 0 10px 30px;
    float: right;
}

.circle-list {}

.circle-list li {
    padding-left: 1em;
    text-indent: -0.4em;
}

.circle-list li:before {
    content: "●";
    display: inline-block;
    color: #c30d23;
    font-size: 1.4em;
}

.map-wrap {
    margin-bottom: 50px;
    position: relative;
}

.map-base {
    position: absolute;
    z-index: 10;
}

.map-base dt {
    margin-top: 10px;
    font-weight: bold;
    font-size: 18px;
}

.map-base dt:first-of-type span {
    color: #5cad61;
}

.map-base dt:last-of-type span {
    color: #7487c3;
    ;
}

.map-img {
    margin: 30px 0 0 0;
    z-index: -10;
}

#post-321 .subject_s span {
    font-size: 0.9em;
    margin-left: 2em;
    color: #000;
}

/*********************
RECRUIT
*********************/
#recruit #main,
#stance #main,
#welfare #main,
#activity #main,
#new_requirements #main,
#new_schedule #main,
#new_status #main,
#entry #main,
#career_requirements #main,
#career_schedule #main,
#career_status #main {

    width: 75%;
    float: left;
}

#manualBox.entry-btn {
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.5em;
}

#manualBox.entry-btn a:after {
    content: "▼";
    margin-left: 10px;
    display: inline-block;
    transform: rotate(-90deg);
    top: -0.3em;
    position: relative;
}

#manualBox.entry-btn a:hover {
    background-color: #c30d23;
    color: #fff;
}

#welfare ul {
    margin: 0 0 50px;
}

#welfare ul li img {
    position: relative;
    top: 0.2em;
    margin-right: 10px;
}

#container .company-table {
    width: 100%;
}


.mr50 {
    margin-right: 50px !important;
}

.mt0 {
    margin-top: 0;
}

.mt20 {
    margin-top: 20px !important;
}

.mt50 {
    margin-top: 50px !important;
}

.mb0 {
    margin-bottom: 0;
}

.mb70 {
    margin-bottom: 70px;
}

.fz20 {
    font-size: 20px;
}

.fz18 {
    font-size: 18px;
}

.taR {
    text-align: right;
}


/*******  ここから上は、風間さんのCSS  *******/


/******************************************************************
PAGE NAVI STYLES
******************************************************************/
.pagination,
.wp-prev-next {
    margin: 1.5em 0;
}

.pagination {
    text-align: center;
}

.pagination ul {
    display: inline-block;
    background-color: white;
    white-space: nowrap;
    padding: 0;
    clear: both;
    border-radius: 3px;
}

.pagination li {
    padding: 0;
    margin: 0;
    float: left;
    display: inline;
    overflow: hidden;
    border-right: 1px solid #eaedf2;
}

.pagination a,
.pagination span {
    margin: 0;
    text-decoration: none;
    padding: 0;
    line-height: 1em;
    font-size: 1em;
    font-weight: normal;
    padding: 0.75em;
    min-width: 1em;
    display: block;
    color: #2980b9;
}

.pagination a:hover,
.pagination a:focus,
.pagination span:hover,
.pagination span:focus {
    background-color: #2980b9;
    color: white;
}

.pagination .current {
    cursor: default;
    color: #5c6b80;
}

.pagination .current:hover,
.pagination .current:focus {
    background-color: white;
    color: #5c6b80;
}

/* end .bones_page_navi */
/* fallback previous & next links */
.wp-prev-next .prev-link {
    float: left;
}

.wp-prev-next .next-link {
    float: right;
}


/*********************
SIDEBARS & ASIDES
*********************/
.widget ul li {
    /* deep nesting */
}

.no-widgets {
    background-color: white;
    padding: 1.5em;
    text-align: center;
    border: 1px solid #cccccc;
    border-radius: 2px;
    margin-bottom: 1.5em;
}

/*********************
  SIDEBARS & ASIDES
  *********************/
.sidebar {
    margin-top: 2.2em;
}

.widgettitle {
    border-bottom: 2px solid #444;
    margin-bottom: 0.75em;
}

.widget {
    padding: 0 10px;
    margin: 2.2em 0;
}

.widget ul li {
    margin-bottom: 0.75em;
    /* deep nesting */
}

.widget ul li ul {
    margin-top: 0.75em;
    padding-left: 1em;
}



#sidebar1 {
    width: 20%;
    margin-top: 85px;
}

#sidebar1 ul {
    margin: 0;
}

#sidebar1 ul.children li {
    font-size: 13px;
    text-indent: 1em;
}

#sidebar1 li a,
#sidebar1 li.current_page_item ul.children li a {
    padding: 5px 10px;
    background-color: #efefef;
    display: block;
    border-bottom: 2px solid #fff;
    cursor: pointer;
    font-weight: normal;
    color: #000000;
}

#sidebar1 li.current_page_item a,
#sidebar1 li a:hover {
    color: #fff;
    background-color: #c30d23;
}

#sidebar1 li.current_page_item a:after,
#sidebar1 li a:hover:after {
    content: "";
    background: url(/lib/img/common/link_aicon_on.png) no-repeat;
}

#sidebar1 li a:after {
    content: "";
    background: url(/lib/img/common/link_aicon_off.png) no-repeat;
    width: 19px;
    height: 19px;
    float: right;
    display: inline-block;
    margin-right: .5em;
    margin-top: 4px;
}

.page-item-76 a {
    letter-spacing: 1px;
}

li.page_item.page-item-2048 a {
    letter-spacing: 0px;
}




/* ==========================================================================
   Mobile Grid Styles
   ========================================================================== */
@media screen and (max-width: 767px) {
    .m-all {
        float: left;
        padding-right: 0.75em;
        width: 100%;
        padding-right: 0;
    }

    .m-1of2 {
        float: left;
        padding-right: 0.75em;
        width: 50%;
    }

    .m-1of3 {
        float: left;
        padding-right: 0.75em;
        width: 33.33%;
    }

    .m-2of3 {
        float: left;
        padding-right: 0.75em;
        width: 66.66%;
    }

    .m-1of4 {
        float: left;
        padding-right: 0.75em;
        width: 25%;
    }

    .m-3of4 {
        float: left;
        padding-right: 0.75em;
        width: 75%;
    }
}


/* ==========================================================================
   PRINT STYLESHEET
   ========================================================================== */
@media print {
    * {
        background: transparent !important;
        color: black !important;
        text-shadow: none !important;
        filter: none !important;
        -ms-filter: none !important;
    }

    a,
    a:visited {
        color: #444 !important;
        text-decoration: underline;
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }

    .sidebar,
    .page-navigation,
    .wp-prev-next,
    .respond-form {
        display: none;
    }


}





/*スマホ用*/
a#pull {
    display: none;
}

.toggle-caret i {
    display: none;
}

.toggle-menu ul ul {
    display: none;
}

/*コンタクトボタン*/
.contact_link_sp {
    display: none;
}

/*英語ボタン*/
.englis_btn_sp {
    display: none;
}

.sp_view {
    display: none;
}


/*humberger*/
@media screen and (max-width:865px) {
    .site-header {
        position: relative;
        margin: 0 auto;
        width: 100%;
        z-index: 99;
        max-width: 1000px;
        float: none;
        display: block;
        min-height: 115px;
    }

    .site-branding .toggle-caret i {
        display: none
    }

    /*--------------------------------------------------------------
# Toggle menu
--------------------------------------------------------------*/
    .toggle-menu ul ul {
        display: none;
    }

    .toggle-menu .toggle-menu-item-parent {
        position: relative;
    }

    .toggle-menu .toggle-caret {
        position: absolute;
        top: 0;
        right: 0;
        text-align: center;
        cursor: pointer;
        line-height: inherit;
    }

    .toggle-menu .toggle-caret .fa {
        text-align: center;
        font-size: inherit;
        color: inherit;
    }

    .toggle-menu .active>.toggle-caret .fa:before {
        content: "\f068"
    }

    /*minus*/
    .toggle-menu .toggle-caret:hover .fa {}

    #top a#pull {
        color: #fff;
    }

    a#pull {
        display: inline-block !important;
        color: #c30d23;
        text-align: left;
        text-transform: uppercase;
        font-size: 25px;
        position: relative;
        float: right;
    }

    /*スマホメニュー*/
    .slick-slider {
        position: relative;
        display: block;
        box-sizing: border-box;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        -webkit-touch-callout: none;
        -khtml-user-select: none;
        -ms-touch-action: pan-y;
        touch-action: pan-y;
        -webkit-tap-highlight-color: transparent;
        width: 90%;
        margin: auto;
    }

    .slick-list {
        width: 100%;
    }

    div#inner-header nav {
        margin-left: 0;
        float: none;
        margin-top: 0;
    }

    div#inner-header .nav li ul.sub-menu,
    div#inner-header .nav li ul.children {
        border-top: 0;
        position: inherit !important;
        visibility: inherit !important;
        width: 100% !important;
    }

    #navigation ul ul li .toggle-caret {
        line-height: 36px;
    }


    #page,
    .main-container {
        max-width: 96%
    }

    #site-footer .main-container {
        padding: 0 2%
    }

    .site-branding {
        padding: 0;
        text-align: center;
    }

    /*    .site-branding h1, .site-branding h2 { float: none!important }*/
    .site-branding h1 span,
    .site-branding h2 span {
        display: block;
    }

    #navigation {
        width: 100%;
        border: none;
        display: none;
    }

    #navigation .menu a,
    #navigation .menu .fa>a,
    #navigation .menu .fa>a {
        color: #fff !important;
        background: transparent;
    }

    #navigation .menu {
        display: block !important;
        background: transparent;
        float: left;
        width: 100%;
    }

    #navigation ul ul {
        visibility: visible !important;
        opacity: 1 !important;
        position: relative;
        left: 0 !important;
        border: 0;
        width: 100%;
        display: none;
    }

    #navigation ul li li {
        background: transparent;
        border: 0;
    }

    #navigation {
        height: auto
    }

    #navigation li,
    #navigation ul li li {
        width: 100% !important;
        float: left;
        position: relative;
    }

    #navigation ul li:after {
        display: none
    }

    #navigation ul li:before {
        display: none
    }

    #navigation li a {
        border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
        width: 100% !important;
        box-sizing: border-box;
    }

    #navigation a {
        text-align: left;
        width: 100%;
    }

    #navigation a .sub {
        display: none
    }

    #navigation ul .sfHover a,
    #navigation ul li:hover,
    #navigation ul .sfHover ul li {
        background: transparent
    }

    /*disable flayout*/
    #catcher {
        height: 0 !important
    }

    .sticky-navigation-active {
        position: relative !important;
        top: 0 !important;
    }

    /*-[ Responsive Navigation ]--------------------------------*/
    .main-container {
        position: relative;
        left: 0;
        transition: left 500ms ease;
    }

    .mobile-menu-active .main-container {
        left: 250px;
        transition: left 500ms ease;
    }

    #navigation.mobile-menu-wrapper {
        display: block;
        position: fixed;
        top: 0;
        left: -250px;
        width: 250px;
        height: 100%;
        border-right: 1px solid rgba(0, 0, 0, 0.15);
        overflow: auto;
        transition: left 500ms ease;
        -webkit-backface-visibility: hidden;
        background: #002d64;
        margin: 0;
    }

    .mobile-menu-active #navigation.mobile-menu-wrapper {
        left: 0;
        z-index: 1111111;
    }

    #navigation ul li {
        width: 100%;
        display: block;
    }

    #navigation ul li:hover {
        background: none
    }

    #navigation ul li a,
    #navigation ul ul a {
        padding: 11px 20px;
        width: 100%;
        border: none;
        min-height: auto;
        border-right: 0 !Important;
    }

    #navigation ul li:hover>ul {
        display: none
    }

    #navigation ul ul {
        position: static;
        width: 100%;
        border: none;
        background: none;
        float: left;
    }

    #navigation ul ul li {
        background: none;
        width: 100%;
        padding: 0;
    }

    #navigation>ul li:first-child a {
        border-left: none !important
    }

    .primary-navigation {
        display: block;
        margin: 0 auto;
        max-width: 100%;
    }

    .primary-navigation .menu .current-menu-item>a:after {
        background: none
    }

    #navigation ul ul li:hover {
        background: none
    }

    #navigation i {
        display: inline;
    }

    #navigation ul ul a {
        text-indent: 1em;
        width: 100% !important;
        letter-spacing: 0;
    }

    #navigation ul ul ul a {
        text-indent: 2em;
    }

    #navigation ul ul ul ul a {
        padding: 9px 60px !important
    }

    #navigation .toggle-caret {
        display: block;
        width: 44px;
        color: #ffffff;
        border-left: 1px solid rgba(0, 0, 0, 0.2);
    }

    #navigation .menu-item-has-children>a:after {
        content: ''
    }

    #mobile-menu-overlay {
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 999;
        cursor: pointer;
        display: none;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        background: rgba(0, 0, 0, .5);
    }

    html.noscroll {
        position: fixed;
        overflow-y: scroll;
        width: 100%;
    }

    /*-[ Mega Menu ]--------------------------------*/
    #wpmm-megamenu .wpmm-subcategories {
        width: 100%;
        text-indent: 0;
    }

    #wpmm-megamenu .wpmm-posts {
        width: 100%
    }

    #wpmm-megamenu .wpmm-post {
        width: 100% !important;
        padding: 0 10px !important;
        text-align: center !important;
    }

    #wpmm-megamenu .wpmm-thumbnail img {
        float: left
    }

    .slider li {
        margin: 0;
        height: 250px;
    }




    #site-menu.vertical {
        position: relative !important;
        min-width: 100%;
        max-width: 100%;
        z-index: 999 !important;
        float: left;
        background-color: #FFF;
        top: 0;
        overflow: visible !important;
        bottom: 0;
        box-shadow: none !important;
        -moz-box-shadow: none !important;
        -webkit-box-shadow: none !important;
        -o-box-shadow: none !important;
        -ms-box-shadow: none !important;
        border-left: none;
        margin-bottom: 1em;
    }

    .logoWrap {
        position: absolute !important;
        top: 0;
        margin: 0 0 0 15px;
    }

    .slicknav_btn {
        position: relative;
        display: block;
        vertical-align: middle;
        float: right;
        padding: 0.438em 0.625em 0.438em 0.625em;
        line-height: 1.125em;
        cursor: pointer;
    }

    .slicknav_btn .slicknav_icon-bar+.slicknav_icon-bar {
        margin-top: 0.188em;
    }

    .slicknav_menu {
        *zoom: 1;
    }

    .slicknav_menu .slicknav_menutxt {
        display: block;
        line-height: 1.188em;
        float: left;
    }

    .slicknav_menu .slicknav_icon {
        float: left;
        margin: 0.188em 0 0 0.438em;
    }

    .slicknav_menu .slicknav_no-text {
        margin: 0;
    }

    .slicknav_menu .slicknav_icon-bar {
        display: block;
        width: 1.125em;
        height: 0.125em;
        border: thin solid #6C6C6C;
        -webkit-border-radius: 1px;
        -moz-border-radius: 1px;
        border-radius: 1px;
        -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.55);
        -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.55);
        box-shadow: 0 1px 0 rgba(0, 0, 0, 0.55);
    }

    .slicknav_menu:before {
        content: " ";
        display: table;
    }

    .slicknav_menu:after {
        content: " ";
        display: table;
        clear: both;
    }

    .slicknav_nav {
        clear: both;
    }

    .slicknav_nav ul {
        display: block;
    }

    .slicknav_nav li {
        display: block;
        border-top: 1px solid #636363;
    }

    .slicknav_nav .slicknav_arrow {
        font-size: 0.8em;
        margin: 0 0 0 0.4em;
        font-family: Helvetica, Arial, sans-serif;
    }

    .slicknav_nav .slicknav_item {
        cursor: pointer;
    }

    .slicknav_nav .slicknav_item a {
        display: inline;
    }

    .slicknav_nav .slicknav_row {
        display: block;
    }

    .slicknav_nav a {
        display: block;
    }

    .slicknav_nav .slicknav_parent-link a {
        display: inline;
    }

    .slicknav_brand {
        float: left;
    }

    .slicknav_menu {
        font-size: 16px;
        box-sizing: border-box;
        padding: 5px 0;
    }

    .slicknav_menu * {
        box-sizing: border-box;
    }

    .slicknav_menu .slicknav_menutxt {
        color: #fff;
        font-weight: bold;
        text-shadow: 0 1px 3px #000;
    }

    .slicknav_menu .slicknav_icon-bar {
        background-color: #fff;
    }

    .slicknav_btn {
        margin: 10px 15px 10px 5px;
        text-decoration: none;
        text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        border: 1px solid #666;
    }

    .slicknav_nav {
        color: #fff;
        margin: 0;
        padding: 0;
        font-size: 0.875em;
        list-style: none;
        overflow: hidden;
        background: #6e6e6e;
    }

    .slicknav_nav ul {
        list-style: none;
        overflow: hidden;
        padding: 0;
        margin: 0 15px;
    }

    .slicknav_nav .slicknav_row {
        padding: 10px;
        margin: 2px 5px;
    }

    .slicknav_nav .slicknav_row:hover {
        -webkit-border-radius: 6px;
        -moz-border-radius: 6px;
        border-radius: 6px;
        background: #ccc;
        color: #fff;
    }

    .slicknav_nav a {
        padding: 10px;
        margin: 2px 5px;
        text-decoration: none;
        color: #fff !important;
    }

    .slicknav_nav a:hover {
        -webkit-border-radius: 6px;
        -moz-border-radius: 6px;
        border-radius: 6px;
        background: #ccc;
        color: #222;
    }

    .slicknav_nav .slicknav_txtnode {
        margin-left: 15px;
    }

    .slicknav_nav .slicknav_item a {
        padding: 0;
        margin: 0;
    }

    .slicknav_nav .slicknav_parent-link a {
        padding: 0;
        margin: 0;
    }

    .slicknav_brand {
        color: #fff;
        font-size: 18px;
        line-height: 30px;
        padding: 7px 12px;
        height: 44px;
    }
}

/*sp.css*/
@media screen and (max-width:865px) {
    .pc_view {
        display: none;
    }

    .sp_view {
        display: block;
    }

    img {
        max-width: 100%;
        width: auto;
        height: auto;
    }

    /*ヘッダーボックス内*/
    #top div#inner-header,
    div#inner-header {
        position: relative;
        border-bottom: 0 !important;
        background-color: initial;
        height: auto;
    }

    #top div#header-box {
        border-bottom: none !important;
        background-color: #c30d23;
        padding: 15px 20px;
        margin: 0 auto;
    }

    div#header-box {
        border-bottom: 5px solid #c30d23;
        padding: 15px 20px;
        margin: 0 auto;
    }

    div#inner-header p#logo {
        margin: 8px;
    }

    #top .n2-ss-align {
        /*TOP PAGE スライドショー*/
        padding-top: 82px;
    }

    /*コンタクトボタン*/
    .contact_link {
        display: none;
    }

    .contact_link_sp {
        margin: 0;
        display: block !important;
        border-bottom: 1px solid rgba(255, 255, 255, .15);
    }

    .contact_link_sp a {
        padding: 0 .75em;
        color: #fff;
        line-height: 70px;
    }

    /*英語ボタン*/
    .englis_btn {
        display: none;
    }

    .englis_btn_sp {
        margin: 0;
        display: block !important;
    }

    .englis_btn_sp a {
        padding: 0 .75em;
        color: #fff;
        line-height: 70px;
    }



    /*幅規制解除*/

    div#inner-header .nav li {
        margin: 0 !important;
    }

    .wrap {
        width: 100% !important;
    }

    #copy {
        width: auto !important;
        left: 5% !important;
    }

    #movieBtn {
        width: auto !important;
        right: 5%;
        left: auto;
    }

    #menu_aion li {
        width: auto !important;
        display: table-cell;
    }

    ul#menu_aion {
        display: table;
    }

    #menu_aion li {
        float: none !important;
    }

    #contact_box {
        text-align: center;
        float: none !important;
        margin: 0 !important;
    }

    .footer-nav {
        float: none !important;
    }

    .footer .nav>li {
        margin-left: 70px !important;
    }

    .h2-title {
        max-width: 304px !important;
        width: inherit !important;
        max-height: 146px !important;
        height: inherit !important;
    }

    .eng .h2-title {
        max-height: 50px !important;
    }





    /*採用、企業情報*/
    #recruit #main,
    #stance #main,
    #welfare #main,
    #activity #main,
    #new_requirements #main,
    #new_schedule #main,
    #new_status #main,
    #entry #main,
    #career_requirements #main,
    #career_schedule #main,
    #career_status #main,
    #message #main,
    #group #main,
    #philosophy #main,
    #outline #main,
    #history #main,
    #base #main,
    #factory1 #main,
    #factory2 #main,
    #factory3 #main,
    #factory4 #main,
    #factory5 #main,
    #factory6 #main {
        width: 90% !important;
        float: none !important;
        margin: auto;
    }

    #sidebar1 {
        width: 90% !important;
        float: none !important;
        margin: auto !important;
    }

    .about-imgR {
        margin: 20px auto 10px 30px;
        float: none;
    }

    .form_box dt {
        width: 100%;
        float: none;
    }

    .form_box dd {
        margin: 0 0 30px;
    }

    .mwform-tel-field input[type="text"] {
        width: 30%;
    }

    form .text_inquiry {
        min-height: 37px;
    }
}

@media screen and (max-width:414px) {
    #copy {
        position: relative !important;
        width: 75% !important;
        top: 0 !important;
        left: 0 !important;
    }

    #movieBtn {
        position: relative !important;
        width: 45% !important;
        top: 0 !important;
        left: 0 !important;
        text-align: center;
    }

    #product_category {
        margin: 20px auto !important;
    }

    .fl,
    .fr {
        width: 50% !important;
    }

    .fl img,
    .fr img {
        width: auto !important;
    }

    ul#menu_aion {
        margin: 0 auto !important;
    }

    #menu_aion li a {
        font-size: 11px !important;
    }

    #inner-footer {
        padding: 35px 0 !important;
    }

    .footer-nav {
        display: none;
    }



    /*採用、企業情報*/
    .company-table th,
    .company-table td {
        width: 100% !important;
        display: block;
        border: none !important;
    }

    .base-photo {
        width: 100% !important;
        margin: 20px 0 0 0 !important;
        float: none;
    }
}

/*mobile.css*/
div#inner-header {
    position: absolute !important;
}

/*　固有 */
.logo-img {
    width: 200px;
}

/*page.css*/

/* =========================
共通スタイル
   ========================= */
.iwaki__container {
    width: 1050px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 40px;
}


@media screen and (max-width: 865px) {
    .iwaki__container {
        padding: 0 20px;
    }
}

.iwaki .h1-title,
.iwaki .parent_title.page-title {
    display: none;
}

.iwaki .anchorArea__list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

.iwaki .anchorArea__list li:not(:last-of-type) {
    margin-right: 18px;
}

.iwaki .anchorArea__list li a {
    position: relative;
}

.iwaki .anchorArea__list li a::after {
    position: absolute;
    content: '▼';
    color: #c30d23;
    font-size: 12px;
    right: 8px;
    top: 9px;
    transform: rotate(-90deg);
}

.iwaki .anchorArea__list li a:hover::after {
    color: #fff;
}

.iwaki .anchorArea__list li a:hover {
    background-color: #c30d23;
    color: #fff;
    transition: .3s;
}

.iwaki .anchorArea__list .btn--contact {
    padding: 12px 28px 12px 10px;
    background-color: #fff;
    font-size: 13px;
    color: #c30d23;
    border: 1px solid #c30d23;
}

.iwaki .anchorArea__list .fa-solid {
    font-size: 10px;
}

@media screen and (max-width: 865px) {
    .iwaki .anchorArea__list {
        justify-content: flex-start;
        flex-wrap: wrap;
        margin: 0;
        gap: 12px;
    }

    .iwaki .anchorArea__list li {
        height: 45px;
    }

    .iwaki main .anchorArea__list li:not(:last-of-type) {
        margin-bottom: 0;
    }

    .iwaki .anchorArea__list li:not(:last-of-type) {
        margin-right: 0;
    }
}

.iwaki .leadTxt {
    text-align: center;
    font-size: 18px;
    margin-bottom: 40px;
}

.iwaki .h02 {
    font-size: 24px;
    font-weight: bold;
}

.iwaki .h03 {
    font-size: 18px;
    font-weight: bold;
}

.iwaki img {
    max-width: 100%;
    height: auto;
}

.iwaki main li:not(:last-of-type) {
    margin-bottom: 40px;
}

.iwaki .img__flex {
    display: flex;
    justify-content: center;
    gap: 20px;
    max-width: 100%;
}

.iwaki .img__flex img {
    width: calc(50% - 10px);
    height: auto;
}

.iwaki .img--center {
    text-align: center;
}

.iwaki .listTtl {
    padding-left: 20px;
    position: relative;
}

.iwaki .listTtl::before {
    position: absolute;
    content: '◆';
    color: orange;
    left: 0;
}

.iwaki .txtBox--right {
    text-align: right;
}

.iwaki .iwaki__table--company {
    margin: 0 auto;
}

.iwaki .tableTtl {
    background-color: #03035c;
    color: #fff;
    font-weight: bold;
    padding: 10px 20px;
}

.iwaki .tableContent {
    padding: 10px 20px;
    border: 1px solid #ddd;
}

.iwaki .tableContent p {
    margin: 0;
}

.iwaki .tableTtl--history {
    padding-left: 20px;
}

.iwaki .iwaki__table--equipment {
    margin: 0 auto 40px;
}

.iwaki thead tr {
    background-color: #03035c;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 0 10px;
}

.iwaki tbody tr {
    border: 1px solid #ddd;
}

.iwaki tbody td {
    padding: 0 10px;
}

.iwaki tbody td:not(:last-of-type) {
    border-right: 1px solid #ddd;
}

.iwaki main li:not(:last-of-type) {
    margin-bottom: 40px;
}

.iwaki .img__flex,
.iwaki .box__flex {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 20px;
    max-width: 900px;
    width: 100%;
    margin: 30px auto;
}

.iwaki .img__flex img {
    width: calc(50% - 20px);
    height: auto;
}

.iwaki .contact__wrapper {
    margin-top: 60px;
    margin-bottom: 100px;
    text-align: center;
}

.iwaki .btn--contact {
    padding: 16px 32px;
    background-color: #c30d23;
    color: #fff;
}

.iwaki a.btn--contact:hover {
    /* ← ::hover を修正 */
    opacity: .6;
    transition: .4s;
}

.iwaki #main {
    width: 75%;
    float: left;
}

.iwaki section {
    margin-bottom: 40px;
}

@media screen and (max-width: 865px) {
    .iwaki #main {
        width: 90% !important;
        float: none !important;
        margin: auto;
    }
}

.iwaki .contentList li {
    margin-bottom: 30px;
}

.iwaki .video__box {
    width: 680px;
    max-width: 100%;
    margin: 0 auto;
}

.iwaki .video__box video {
    width: 100%;
}

.iwaki .img--flow {
    width: 500px;
    max-width: 100%;
    margin: 0 auto;
}

.iwaki .iwaki__table--history tbody tr {
    display: block;
    padding-bottom: 10px;
}

.iwaki .iwaki__table--history tbody tr,
.iwaki .iwaki__table--history tbody td:not(:last-of-type) {
    border: none;
}

#iwaki_about.iwaki .listTtl,
#iwaki_access.iwaki .listTtl {
    margin-bottom: 30px;
}

#iwaki_about.iwaki .img--chart {
    width: 780px;
    max-width: 100%;
    margin: 0 auto;
}

.iwaki .box__flex--access ul,
.iwaki .box__flex--access .img--center {
    width: calc(50% - 10px);
}

.iwaki .box__flex--access li {
    margin-bottom: 20px;
}

iframe {
    width: 100%;
}

@media screen and (max-width: 865px) {
    .iwaki .iwaki__table--history tbody td {
        padding: 0;
    }

    .iwaki .tableTtl--history {
        padding-left: 0;
        min-width: 142px;
    }

    .iwaki .box__flex--access ul,
    .iwaki .box__flex--access .img--center {
        width: 100%;
    }

    #iwaki_equipment #box1 {
        overflow-y: scroll
    }
}

/* =========================
   ヒーロー帯 .h01--bg
   ========================= */

.iwaki .h01--bg {
    margin-bottom: 40px;
}

#iwaki .h01--bg span,
#iwaki_about .h01--bg span,
#iwaki_company .h01--bg span,
#iwaki_equipment .h01--bg span,
#iwaki_access .h01--bg span {
    padding: 20px;
    background-color: rgba(255, 255, 255, .6);
    min-width: 500px;
    display: inline-block;
}

/* --- /TOP/ --- */
#iwaki_top .h01--bg {
    background: rgba(0, 0, 0, .4);
    background-image: url(http://www.taiyo-sp.co.jp/db/wp-content/uploads/2025/06/title_1.jpg);
    background-size: cover;
    background-position: center bottom;
    background-blend-mode: multiply;
    padding: 80px 0 300px;
    font-size: 48px;
    line-height: 1.6;
    letter-spacing: .1em;
    color: #fff;
    width: 100vw;
    margin: 0 auto;
    left: calc(50% - 50vw);
    position: relative;
}

#iwaki_top .h01--bg span {
    display: block;
    width: 1050px;
    max-width: 100%;
    margin: 0 auto;
    font-weight: bold;
}

#iwaki_top .h01--bg span span.h01--sub {
    display: inline-block;
    font-size: 32px;
}

@media screen and (max-width: 865px) {
    #iwaki_top .h01--bg {
        background-position: center;
        padding: 24px 20px 96px;
        font-size: 28px;
    }

    #iwaki_top .h01--bg span span.h01--sub {
        font-size: 20px;
    }
}

/* --- /iwaki/ --- */
#iwaki .h01--bg {
    background-image: url(http://www.taiyo-sp.co.jp/db/wp-content/uploads/2025/06/title_1.jpg);
    background-size: cover;
    background-position: center bottom -40px;
    padding: 100px 0;
    font-size: 32px;
    margin-top: 0;
}

@media screen and (max-width: 865px) {
    #iwaki .h01--bg {
        background-position: center;
        padding: 60px 0;
        font-size: 24px;
    }
}

/* --- /about/ --- */
#iwaki_about .h01--bg {
    background-image: url(http://www.taiyo-sp.co.jp/db/wp-content/uploads/2025/06/title_2.png);
    background-size: cover;
    background-position: center top;
    padding: 100px 0;
    font-size: 32px;
    margin-top: 0;
}

@media screen and (max-width: 865px) {
    #iwaki_about .h01--bg {
        background-position: center;
        padding: 60px 0;
        font-size: 24px;
    }
}

/* --- /company/ --- */
#iwaki_company .h01--bg {
    background-image: url(http://www.taiyo-sp.co.jp/db/wp-content/uploads/2025/06/title_3.png);
    background-size: cover;
    background-position: center top;
    padding: 100px 0;
    font-size: 32px;
    margin-top: 0;
}

@media screen and (max-width: 768px) {
    #iwaki_company .h01--bg {
        background-image: url(http://www.taiyo-sp.co.jp/db/wp-content/uploads/2025/06/title_3.png);
        background-size: cover;
        background-position: center bottom;
        padding: 60px 0;
        font-size: 24px;
    }
}

/* --- /equipment/ --- */
#iwaki_equipment .h01--bg {
    background-image: url(http://www.taiyo-sp.co.jp/db/wp-content/uploads/2025/06/title_4.png);
    background-size: cover;
    background-position: center bottom -40px;
    padding: 100px 0;
    font-size: 32px;
    margin-top: 0;
}

@media screen and (max-width: 865px) {
    #iwaki_equipment .h01--bg {
        background-position: center;
        padding: 60px 0;
        font-size: 24px;
    }
}

/* --- /access/ --- */
#iwaki_access .h01--bg {
    background-image: url(http://www.taiyo-sp.co.jp/db/wp-content/uploads/2025/06/title_1.jpg);
    background-size: cover;
    background-position: center bottom -40px;
    padding: 100px 0;
    font-size: 32px;
    margin-top: 0;
}

@media screen and (max-width: 865px) {
    #iwaki_access .h01--bg {
        background-position: center;
        padding: 60px 0;
        font-size: 24px;
    }
}

/*top news*/
#iwaki_top .h02 span {
    color: #9B9B9B;
    font-weight: bold;
    font-size: 18px;
    padding-left: 14px;
}

.iwaki .iwaki__news {
    padding-bottom: 30px;
    border-bottom: 1px solid #000;
}

.iwaki .news__item {
    margin-bottom: 14px;
}

.iwaki .news__date {
    font-weight: bold;
    font-size: 12px;
    margin-top: 4px;
    min-width: 66px;
}

.iwaki .news__link {
    display: flex;
    gap: 20px;
}

.iwaki .news__genre {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 11px;
    color: #fff;
    background-color: #c30d23;
    padding: 0 8px;
    line-height: 1;
    height: 24px;
    margin-top: 2px;
    white-space: nowrap;
}

.iwaki .news__genre--blue {
    background-color: #1880c5;
}

#iwaki_news section {
    margin-top: 40px;
}

#iwaki_news .h02 {
    margin-bottom: 40px;
}

#iwaki_news .h03 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 30px;
    border-bottom: 1px solid #c30d23;
    padding-bottom: 14px;
    color: #c30d23;
    font-weight: bold;
}

#iwaki_news .btn--contact,
#iwaki_top .btn--contact {
    color: #c30d23;
    border: 1px solid #c30d23;
    background-color: #fff;
    font-size: 12px;
    padding: 10px 24px;
}

#iwaki_news .newsList {
    border-bottom: none;
}

#iwaki_top .contact__wrapper {
    margin-top: 40px;
    margin-bottom: 20px;
    text-align: right;
}

#iwaki_top .contentList {
    display: flex;
    gap: 24px;
}

#iwaki_top .contentList li {
    width: calc(100% / 3 - 16px);
}

#iwaki_top .contentList li .h03 {
    position: relative;
    font-weight: normal;
    font-size: 15px;
    margin-top: 8px;
}

#iwaki_top .contentList li .h03::before {
    position: absolute;
    content: '';
    width: 24px;
    height: 1px;
    background-color: #c30d23;
    top: 16px;
    right: 0;
}

#iwaki_top .contentList li .h03::after {
    position: absolute;
    content: '';
    width: 8px;
    height: 1px;
    background-color: #c30d23;
    top: 13px;
    right: 0;
    transform: rotate(45deg);
}

#iwaki_top .iwaki__news {
    position: relative;
}

#iwaki_top .iwaki__news .contact__wrapper {
    position: absolute;
    top: 20px;
    right: 0;
    margin-top: 0;
}

@media screen and (max-width: 865px) {
    #iwaki_news .h03 {
        flex-wrap: wrap;
    }

    #iwaki_top .contentList {
        flex-wrap: wrap;
    }

    #iwaki_top .contentList li {
        width: 100%;
    }

    #iwaki_top .iwaki__news {
        padding-bottom: 60px;
    }

    #iwaki_top .iwaki__news .contact__wrapper {
        top: unset;
        right: 0;
        bottom: 0;
    }

    .iwaki .news__link {
        flex-wrap: wrap;
        gap: 6px 20px;
    }

    .iwaki .news__subject {
        width: 100%;
    }

}