/*
Theme Name: ibicon
Theme URI: http://h-proton.com/
Author: PROTON.co.,Ltd
*/

/* =Notes
--------------------------------------------------------------
This stylesheet uses rem values with a pixel fallback. The rem
values (and line heights) are calculated using two variables:

$rembase:     14;
$line-height: 24;

---------- Examples

* Use a pixel value with a rem fallback for font-size, padding, margins, etc.
	padding: 5px 0;
	padding: 0.357142857rem 0; (5 / $rembase)

* Set a font-size and then set a line-height based on the font-size
	font-size: 16px
	font-size: 1.142857143rem; (16 / $rembase)
	line-height: 1.5; ($line-height / 16)

---------- Vertical spacing

Vertical spacing between most elements should use 24px or 48px
to maintain vertical rhythm:

.my-new-div {
	margin: 24px 0;
	margin: 1.714285714rem 0; ( 24 / $rembase )
}

---------- Further reading

http://snook.ca/archives/html_and_css/font-size-with-rem
http://blog.typekit.com/2011/11/09/type-study-sizing-the-legible-letter/


 /*=Reset
-------------------------------------------------------------- */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
}

body {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

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

table {
    border-collapse: collapse;
    border-spacing: 0;
}

caption,
th,
td {
    font-weight: normal;
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    clear: both;
}

html {
    overflow-y: scroll;
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

a:focus {
    outline: thin dotted;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
    display: block;
}

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

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

del {
    color: #333;
}

ins {
    background: #fff9c0;
    text-decoration: none;
}

hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    margin: 24px;
    margin-bottom: 1.714285714rem;
}

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

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

small {
    font-size: smaller;
}

img {
    border: 0;
    -ms-interpolation-mode: bicubic;
}

/* Clearing floats */

.clear:after,
.wrapper:after,
.format-status .entry-header:after {
    clear: both;
}

.clear:before,
.clear:after,
.wrapper:before,
.wrapper:after,
.format-status .entry-header:before,
.format-status .entry-header:after {
    display: table;
    content: "";
}


/* =Repeatable patterns
-------------------------------------------------------------- */

/* Small headers */

.archive-title,
.page-title,
.widget-title,
.entry-content th,
.comment-content th {
    line-height: 2.181818182;
    font-weight: bold;
    text-transform: uppercase;
    color: #636363;
}

/* Shared Post Format styling */

article.format-quote footer.entry-meta,
article.format-link footer.entry-meta,
article.format-status footer.entry-meta {
    font-size: 11px;
    font-size: 0.785714286rem;
    line-height: 2.181818182;
}

/* Form fields, general styles first */

button,
input,
select,
textarea {
    border: 1px solid #ccc;
    border-radius: 3px;
    font-family: inherit;
    padding: 6px;
    padding: 0.428571429rem;
}

button,
input {
    line-height: normal;
}

textarea {
    font-size: 100%;
    overflow: auto;
    vertical-align: top;
}

/* Reset non-text input types */

input[type="checkbox"],
input[type="radio"],
input[type="file"],
input[type="hidden"],
input[type="image"],
input[type="color"] {
    border: 0;
    border-radius: 0;
    padding: 0;
}

/* Buttons */

.menu-toggle,
input[type="submit"],
input[type="button"],
input[type="reset"],
article.post-password-required input[type=submit],
.bypostauthor cite span {
    padding: 6px 10px;
    padding: 0.428571429rem 0.714285714rem;
    font-size: 11px;
    font-size: 0.785714286rem;
    line-height: 1.428571429;
    font-weight: normal;
    color: #7c7c7c;
    background-color: #e6e6e6;
    background-repeat: repeat-x;
    background-image: -moz-linear-gradient(top, #f4f4f4, #e6e6e6);
    background-image: -ms-linear-gradient(top, #f4f4f4, #e6e6e6);
    background-image: -webkit-linear-gradient(top, #f4f4f4, #e6e6e6);
    background-image: -o-linear-gradient(top, #f4f4f4, #e6e6e6);
    background-image: linear-gradient(top, #f4f4f4, #e6e6e6);
    border: 1px solid #d2d2d2;
    border-radius: 3px;
    box-shadow: 0 1px 2px rgba(64, 64, 64, 0.1);
}

.menu-toggle,
button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
    cursor: pointer;
}

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

.menu-toggle:hover,
.menu-toggle:focus,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
article.post-password-required input[type=submit]:hover {
    color: #5e5e5e;
    background-color: #ebebeb;
    background-repeat: repeat-x;
    background-image: -moz-linear-gradient(top, #f9f9f9, #ebebeb);
    background-image: -ms-linear-gradient(top, #f9f9f9, #ebebeb);
    background-image: -webkit-linear-gradient(top, #f9f9f9, #ebebeb);
    background-image: -o-linear-gradient(top, #f9f9f9, #ebebeb);
    background-image: linear-gradient(top, #f9f9f9, #ebebeb);
}

.menu-toggle:active,
.menu-toggle.toggled-on,
button:active,
input[type="submit"]:active,
input[type="button"]:active,
input[type="reset"]:active {
    color: #757575;
    background-color: #e1e1e1;
    background-repeat: repeat-x;
    background-image: -moz-linear-gradient(top, #ebebeb, #e1e1e1);
    background-image: -ms-linear-gradient(top, #ebebeb, #e1e1e1);
    background-image: -webkit-linear-gradient(top, #ebebeb, #e1e1e1);
    background-image: -o-linear-gradient(top, #ebebeb, #e1e1e1);
    background-image: linear-gradient(top, #ebebeb, #e1e1e1);
    box-shadow: inset 0 0 8px 2px #c6c6c6, 0 1px 0 0 #f4f4f4;
    border-color: transparent;
}

.bypostauthor cite span {
    color: #fff;
    background-color: #21759b;
    background-image: none;
    border: 1px solid #1f6f93;
    border-radius: 2px;
    box-shadow: none;
    padding: 0;
}

/* Responsive images */

.entry-content img,
.comment-content img,
.widget img {
    max-width: 100%;
    /* Fluid images for posts, comments, and widgets */
}

img[class*="align"],
img[class*="wp-image-"],
img[class*="attachment-"] {
    height: auto;
    /* Make sure images with WordPress-added height and width attributes are scaled correctly */
}

img.size-full,
img.size-large,
img.header-image,
img.wp-post-image {
    max-width: 100%;
    height: auto;
    /* Make sure images with WordPress-added height and width attributes are scaled correctly */
}

/* Make sure videos and embeds fit their containers */

embed,
iframe,
object,
video {
    max-width: 100%;
}

.entry-content .twitter-tweet-rendered {
    max-width: 100% !important;
    /* Override the Twitter embed fixed width */
}

/* Images */

.alignleft {
    float: left;
}

.alignright {
    float: right;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.entry-content img,
.comment-content img,
.widget img,
img.header-image,
.author-avatar img,
img.wp-post-image {
    /* Add fancy borders to all WordPress-added images but not things like badges and icons and the like */
    /* border-radius: 3px; */
    /* box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2); */
    margin: 0;
    padding: 0;
    vertical-align: bottom;
}

.wp-caption {
    max-width: 100%;
    /* Keep wide captions from overflowing their container. */
    padding: 4px;
}

.wp-caption .wp-caption-text,
.gallery-caption,
.entry-caption {
    font-style: italic;
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 2;
    color: #757575;
}

img.wp-smiley,
.rsswidget img {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
}

.entry-content dl.gallery-item {
    margin: 0;
}

.gallery-item a,
.gallery-caption {
    width: 90%;
}

.gallery-item a {
    display: block;
}

.gallery-caption a {
    display: inline;
}

.gallery-columns-1 .gallery-item a {
    max-width: 100%;
    width: auto;
}

.gallery .gallery-icon img {
    height: auto;
    /* max-width: 90%; */
    /* padding: 5%; */
}

.gallery-columns-1 .gallery-icon img {
    padding: 3%;
}

/* Navigation */

.site-content nav {
    clear: both;
    line-height: 2;
    overflow: hidden;
}

#nav-above {
    padding: 24px 0;
    padding: 1.714285714rem 0;
}

#nav-above {
    display: none;
}

.paged #nav-above {
    display: block;
}

.nav-previous,
.previous-image {
    float: left;
    width: 50%;
}

.nav-next,
.next-image {
    float: right;
    text-align: right;
    width: 50%;
}

.nav-single + .comments-area,
#comment-nav-above {
    margin: 48px 0;
    margin: 3.428571429rem 0;
}

/* Author profiles */

.author .archive-header {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

.author-info {
    border-top: 1px solid #ededed;
    margin: 24px 0;
    margin: 1.714285714rem 0;
    padding-top: 24px;
    padding-top: 1.714285714rem;
    overflow: hidden;
}

.author-description p {
    color: #757575;
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
}

.author.archive .author-info {
    border-top: 0;
    margin: 0 0 48px;
    margin: 0 0 3.428571429rem;
}

.author.archive .author-avatar {
    margin-top: 0;
}


/* =Basic structure
-------------------------------------------------------------- */

/* Body, links, basics */

html {
    font-size: 87.5%;
}

body {
    font-size: 14px;
    font-size: 1rem;
    font-family: Helvetica, Arial, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-rendering: optimizeLegibility;
    color: #444;
}

body.custom-font-enabled,
.ui-tabs-nav,
.ui-tabs-panel {
    font-family: Helvetica, Arial, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}

body.custom-background {
    background-color: #fff;
}

a {
    outline: none;
    color: #161A85;
}

a:hover {
    color: #C83E3C;
    text-decoration: none;
}

/* Assistive text */

.assistive-text,
.site .screen-reader-text {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px);
    overflow: hidden;
    height: 1px;
    width: 1px;
}

.main-navigation .assistive-text:focus,
.site .screen-reader-text:hover,
.site .screen-reader-text:active,
.site .screen-reader-text:focus {
    background: #fff;
    border: 2px solid #333;
    border-radius: 3px;
    clip: auto !important;
    color: #000;
    display: block;
    font-size: 12px;
    height: auto;
    padding: 12px;
    position: absolute;
    top: 5px;
    left: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar */
}

/* Page structure */

.site {
    padding: 0 24px;
    padding: 0 1.714285714rem;
    background-color: #fff;
}

.site-content {
    margin: 24px 0 0;
    margin: 1.714285714rem 0 0;
}

.widget-area {
    margin: 24px 0 0;
    margin: 1.714285714rem 0 0;
}

/* Header */

.site-header {
    padding: 24px 0;
    padding: 1.714285714rem 0;
}

.site-header h1,
.site-header h2 {
    text-align: center;
}

.site-header h1 a,
.site-header h2 a {
    color: #515151;
    display: inline-block;
    text-decoration: none;
}

.site-header h1 a:hover,
.site-header h2 a:hover {
    color: #21759b;
}

.site-header h1 {
    font-size: 24px;
    font-size: 1.714285714rem;
    line-height: 1.285714286;
    margin-bottom: 14px;
    margin-bottom: 1rem;
}

.site-header h2 {
    font-weight: normal;
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
    color: #757575;
}

.header-image {
    margin-top: 24px;
    margin-top: 1.714285714rem;
}

/* Navigation Menu */

.main-navigation {
    margin-top: 24px;
    margin-top: 1.714285714rem;
    text-align: center;
}

.main-navigation li {
    margin-top: 24px;
    margin-top: 1.714285714rem;
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 1.42857143;
}

.main-navigation a {
    color: #5e5e5e;
}

.main-navigation a:hover,
.main-navigation a:focus {
    color: #21759b;
}

.main-navigation ul.nav-menu,
.main-navigation div.nav-menu > ul {
    display: none;
}

.main-navigation ul.nav-menu.toggled-on,
.menu-toggle {
    display: inline-block;
}

/* Banner */

section[role="banner"] {
    margin-bottom: 48px;
    margin-bottom: 3.428571429rem;
}

/* Sidebar */

.widget-area .widget {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
    margin-bottom: 48px;
    margin-bottom: 3.428571429rem;
    word-wrap: break-word;
}

.widget-area .widget h3 {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

.widget-area .widget p,
.widget-area .widget li,
.widget-area .widget .textwidget {
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
}

.widget-area .widget p {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

.widget-area .textwidget ul {
    list-style: disc outside;
    margin: 0 0 24px;
    margin: 0 0 1.714285714rem;
}

.widget-area .textwidget li {
    margin-left: 36px;
    margin-left: 2.571428571rem;
}

.widget-area .widget a {
    color: #757575;
}

.widget-area .widget a:hover {
    color: #21759b;
}

.widget-area .widget a:visited {
    color: #9f9f9f;
}

.widget-area #s {
    width: 53.66666666666%;
    /* define a width to avoid dropping a wider submit button */
}

/* Footer */

footer[role="contentinfo"] {
    /* border-top: 1px solid #ededed; */
    /* clear: both; */
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 2;
    /* max-width: 960px; */
    /* max-width: 68.571428571rem; */
    /* margin-top: 24px; */
    /* margin-top: 1.714285714rem; */
    /* margin-left: auto; */
    /* margin-right: auto; */
    padding: 24px 0;
    padding: 1.714285714rem 0;
}

footer[role="contentinfo"] a {
    color: #686868;
}

footer[role="contentinfo"] a:hover {
    color: #21759b;
}


/* =Main content and comment content
-------------------------------------------------------------- */

.entry-meta {
    clear: both;
}

.entry-header {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

.entry-header img.wp-post-image {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

.entry-header .entry-title {
    font-size: 20px;
    font-size: 1.428571429rem;
    line-height: 1.2;
    font-weight: normal;
    color: #fff;
    padding: 30px 0;
}

.entry-header .entry-title a {
    text-decoration: none;
}

.entry-header .entry-format {
    margin-top: 24px;
    margin-top: 1.714285714rem;
    font-weight: normal;
}

.entry-header .comments-link {
    margin-top: 24px;
    margin-top: 1.714285714rem;
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
    color: #757575;
}

.comments-link a,
.entry-meta a {
    color: #757575;
}

.comments-link a:hover,
.entry-meta a:hover {
    color: #21759b;
}

article.sticky .featured-post {
    border-top: 4px double #ededed;
    border-bottom: 4px double #ededed;
    color: #757575;
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 3.692307692;
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
    text-align: center;
}

.entry-content,
.entry-summary,
.mu_register {
    line-height: 1.714285714;
}

.entry-content h1,
.comment-content h1,
.entry-content h2,
.comment-content h2,
.entry-content h3,
.comment-content h3,
.entry-content h4,
.comment-content h4,
.entry-content h5,
.comment-content h5,
.entry-content h6,
.comment-content h6 {
    margin: 24px 0;
    margin: 1.714285714rem 0;
    /* line-height: 1.714285714; */
}

.entry-content h1,
.comment-content h1 {
    font-size: 21px;
    font-size: 1.5rem;
    line-height: 1.5;
}

.entry-content h2,
.comment-content h2,
.mu_register h2 {
    font-size: 18px;
    font-size: 1.285714286rem;
    /* line-height: 1.6; */
}

.entry-content h3,
.comment-content h3 {
    font-size: 16px;
    font-size: 1.142857143rem;
    line-height: 1.846153846;
}

.entry-content h4,
.comment-content h4 {
    font-size: 14px;
    font-size: 1rem;
    line-height: 1.846153846;
}

.entry-content h5,
.comment-content h5 {
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
}

.entry-content h6,
.comment-content h6 {
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 1.846153846;
}

.entry-content p,
.entry-summary p,
.comment-content p,
.mu_register p {
    margin: 0 0 24px;
    margin: 0 0 1.714285714rem;
    line-height: 1.714285714;
}

.entry-content a:visited,
.comment-content a:visited {
    color: #898A94;
}

.entry-content .more-link {
    white-space: nowrap;
}

.entry-content ol,
.comment-content ol,
.entry-content ul,
.comment-content ul,
.mu_register ul {
    margin: 0 0 24px;
    margin: 0 0 1.714285714rem;
    line-height: 1.714285714;
}

.entry-content ul ul,
.comment-content ul ul,
.entry-content ol ol,
.comment-content ol ol,
.entry-content ul ol,
.comment-content ul ol,
.entry-content ol ul,
.comment-content ol ul {
    margin-bottom: 0;
}

.entry-content ul,
.comment-content ul,
.mu_register ul {
    list-style: disc outside;
}

.entry-content ol,
.comment-content ol {
    list-style: decimal outside;
}

.entry-content li,
.comment-content li,
.mu_register li {
    margin: 0 0 0 36px;
    margin: 0 0 0 2.571428571rem;
}

.entry-content blockquote,
.comment-content blockquote {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
    padding: 24px;
    padding: 1.714285714rem;
    font-style: italic;
}

.entry-content blockquote p:last-child,
.comment-content blockquote p:last-child {
    margin-bottom: 0;
}

.entry-content code,
.comment-content code {
    font-family: Helvetica, Arial, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 2;
}

.entry-content pre,
.comment-content pre {
    border: 1px solid #ededed;
    color: #666;
    font-family: Helvetica, Arial, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 1.714285714;
    margin: 24px 0;
    margin: 1.714285714rem 0;
    overflow: auto;
    padding: 24px;
    padding: 1.714285714rem;
}

.entry-content pre code,
.comment-content pre code {
    display: block;
}

.entry-content abbr,
.comment-content abbr,
.entry-content dfn,
.comment-content dfn,
.entry-content acronym,
.comment-content acronym {
    border-bottom: 1px dotted #666;
    cursor: help;
}

.entry-content address,
.comment-content address {
    display: block;
    line-height: 1.714285714;
    margin: 0 0 24px;
    margin: 0 0 1.714285714rem;
}

img.alignleft,
.wp-caption.alignleft {
    margin: 12px 24px 12px 0;
    margin: 0.857142857rem 1.714285714rem 0.857142857rem 0;
}

img.alignright,
.wp-caption.alignright {
    margin: 12px 0 12px 24px;
    margin: 0.857142857rem 0 0.857142857rem 1.714285714rem;
}

img.aligncenter,
.wp-caption.aligncenter {
    clear: both;
    margin-top: 12px;
    margin-top: 0.857142857rem;
    margin-bottom: 12px;
    margin-bottom: 0.857142857rem;
}

.entry-content embed,
.entry-content iframe,
.entry-content object,
.entry-content video {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

.entry-content dl,
.comment-content dl {
    margin: 0 24px;
    margin: 0 1.714285714rem;
}

.entry-content dt,
.comment-content dt {
    font-weight: bold;
    line-height: 1.714285714;
}

.entry-content dd,
.comment-content dd {
    line-height: 1.714285714;
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

.entry-content table,
.comment-content table {
    /* border-bottom: 1px solid #ededed; */
    /* color: #757575; */
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 2;
    margin: 0 0 24px;
    margin: 0 0 1.714285714rem;
    width: 100%;
}

.entry-content table caption,
.comment-content table caption {
    font-size: 16px;
    font-size: 1.142857143rem;
    margin: 24px 0;
    margin: 1.714285714rem 0;
}

.entry-content td,
.comment-content td {
    border-top: 1px solid #ededed;
    padding: 6px 10px 6px 0;
}

.site-content article {
    border-bottom: 4px double #ededed;
    margin-bottom: 72px;
    margin-bottom: 5.142857143rem;
    padding-bottom: 24px;
    padding-bottom: 1.714285714rem;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
}

.page-links {
    clear: both;
    line-height: 1.714285714;
}

footer.entry-meta {
    margin-top: 24px;
    margin-top: 1.714285714rem;
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
    color: #757575;
}

.single-author .entry-meta .by-author {
    display: none;
}

.mu_register h2 {
    color: #757575;
    font-weight: normal;
}


/* =Archives
-------------------------------------------------------------- */

.archive-header,
.page-header {
    margin-bottom: 48px;
    margin-bottom: 3.428571429rem;
    padding-bottom: 22px;
    padding-bottom: 1.571428571rem;
    border-bottom: 1px solid #ededed;
}

.archive-meta {
    color: #757575;
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 2;
    margin-top: 22px;
    margin-top: 1.571428571rem;
}

/* =Single audio/video attachment view
-------------------------------------------------------------- */

.attachment .entry-content .mejs-audio {
    max-width: 400px;
}

.attachment .entry-content .mejs-container {
    margin-bottom: 24px;
}


/* =Single image attachment view
-------------------------------------------------------------- */

.article.attachment {
    overflow: hidden;
}

.image-attachment div.attachment {
    text-align: center;
}

.image-attachment div.attachment p {
    text-align: center;
}

.image-attachment div.attachment img {
    display: block;
    height: auto;
    margin: 0 auto;
    max-width: 100%;
}

.image-attachment .entry-caption {
    margin-top: 8px;
    margin-top: 0.571428571rem;
}


/* =Aside post format
-------------------------------------------------------------- */

article.format-aside h1 {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

article.format-aside h1 a {
    text-decoration: none;
    color: #4d525a;
}

article.format-aside h1 a:hover {
    color: #2e3542;
}

article.format-aside .aside {
    padding: 24px 24px 0;
    padding: 1.714285714rem;
    background: #d2e0f9;
    border-left: 22px solid #a8bfe8;
}

article.format-aside p {
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
    color: #4a5466;
}

article.format-aside blockquote:last-child,
article.format-aside p:last-child {
    margin-bottom: 0;
}


/* =Post formats
-------------------------------------------------------------- */

/* Image posts */

article.format-image footer h1 {
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
    font-weight: normal;
}

article.format-image footer h2 {
    font-size: 11px;
    font-size: 0.785714286rem;
    line-height: 2.181818182;
}

article.format-image footer a h2 {
    font-weight: normal;
}

/* Link posts */

article.format-link header {
    padding: 0 10px;
    padding: 0 0.714285714rem;
    float: right;
    font-size: 11px;
    font-size: 0.785714286rem;
    line-height: 2.181818182;
    font-weight: bold;
    font-style: italic;
    text-transform: uppercase;
    color: #848484;
    background-color: #ebebeb;
    border-radius: 3px;
}

article.format-link .entry-content {
    max-width: 80%;
    float: left;
}

article.format-link .entry-content a {
    font-size: 22px;
    font-size: 1.571428571rem;
    line-height: 1.090909091;
    text-decoration: none;
}

/* Quote posts */

article.format-quote .entry-content p {
    margin: 0;
    padding-bottom: 24px;
    padding-bottom: 1.714285714rem;
}

article.format-quote .entry-content blockquote {
    display: block;
    padding: 24px 24px 0;
    padding: 1.714285714rem 1.714285714rem 0;
    font-size: 15px;
    font-size: 1.071428571rem;
    line-height: 1.6;
    font-style: normal;
    color: #6a6a6a;
    background: #efefef;
}

/* Status posts */

.format-status .entry-header {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

.format-status .entry-header header {
    display: inline-block;
}

.format-status .entry-header h1 {
    font-size: 15px;
    font-size: 1.071428571rem;
    font-weight: normal;
    line-height: 1.6;
    margin: 0;
}

.format-status .entry-header h2 {
    font-size: 12px;
    font-size: 0.857142857rem;
    font-weight: normal;
    line-height: 2;
    margin: 0;
}

.format-status .entry-header header a {
    color: #757575;
}

.format-status .entry-header header a:hover {
    color: #21759b;
}

.format-status .entry-header img {
    float: left;
    margin-right: 21px;
    margin-right: 1.5rem;
}


/* =Comments
-------------------------------------------------------------- */

.comments-title {
    margin-bottom: 48px;
    margin-bottom: 3.428571429rem;
    font-size: 16px;
    font-size: 1.142857143rem;
    line-height: 1.5;
    font-weight: normal;
}

.comments-area article {
    margin: 24px 0;
    margin: 1.714285714rem 0;
}

.comments-area article header {
    margin: 0 0 48px;
    margin: 0 0 3.428571429rem;
    overflow: hidden;
    position: relative;
}

.comments-area article header img {
    float: left;
    padding: 0;
    line-height: 0;
}

.comments-area article header cite,
.comments-area article header time {
    display: block;
    margin-left: 85px;
    margin-left: 6.071428571rem;
}

.comments-area article header cite {
    font-style: normal;
    font-size: 15px;
    font-size: 1.071428571rem;
    line-height: 1.42857143;
}

.comments-area cite b {
    font-weight: normal;
}

.comments-area article header time {
    line-height: 1.714285714;
    text-decoration: none;
    font-size: 12px;
    font-size: 0.857142857rem;
    color: #5e5e5e;
}

.comments-area article header a {
    text-decoration: none;
    color: #5e5e5e;
}

.comments-area article header a:hover {
    color: #21759b;
}

.comments-area article header cite a {
    color: #444;
}

.comments-area article header cite a:hover {
    text-decoration: underline;
}

.comments-area article header h4 {
    position: absolute;
    top: 0;
    right: 0;
    padding: 6px 12px;
    padding: 0.428571429rem 0.857142857rem;
    font-size: 12px;
    font-size: 0.857142857rem;
    font-weight: normal;
    color: #fff;
    background-color: #0088d0;
    background-repeat: repeat-x;
    background-image: -moz-linear-gradient(top, #009cee, #0088d0);
    background-image: -ms-linear-gradient(top, #009cee, #0088d0);
    background-image: -webkit-linear-gradient(top, #009cee, #0088d0);
    background-image: -o-linear-gradient(top, #009cee, #0088d0);
    background-image: linear-gradient(top, #009cee, #0088d0);
    border-radius: 3px;
    border: 1px solid #007cbd;
}

.comments-area .bypostauthor cite span {
    position: absolute;
    margin-left: 5px;
    margin-left: 0.357142857rem;
    padding: 2px 5px;
    padding: 0.142857143rem 0.357142857rem;
    font-size: 10px;
    font-size: 0.714285714rem;
}

.comments-area .bypostauthor cite b {
    font-weight: bold;
}

a.comment-reply-link,
a.comment-edit-link {
    color: #686868;
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
}

a.comment-reply-link:hover,
a.comment-edit-link:hover {
    color: #21759b;
}

.commentlist .pingback {
    line-height: 1.714285714;
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

/* Comment form */

#respond {
    margin-top: 48px;
    margin-top: 3.428571429rem;
}

#respond h3#reply-title {
    font-size: 16px;
    font-size: 1.142857143rem;
    line-height: 1.5;
}

#respond h3#reply-title #cancel-comment-reply-link {
    margin-left: 10px;
    margin-left: 0.714285714rem;
    font-weight: normal;
    font-size: 12px;
    font-size: 0.857142857rem;
}

#respond form {
    margin: 24px 0;
    margin: 1.714285714rem 0;
}

#respond form p {
    margin: 11px 0;
    margin: 0.785714286rem 0;
}

#respond form p.logged-in-as {
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}

#respond form label {
    display: block;
    line-height: 1.714285714;
}

#respond form input[type="text"],
#respond form textarea {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 1.714285714;
    padding: 10px;
    padding: 0.714285714rem;
    width: 100%;
}

#respond form p.form-allowed-tags {
    margin: 0;
    font-size: 12px;
    font-size: 0.857142857rem;
    line-height: 2;
    color: #5e5e5e;
}

.required {
    color: red;
}


/* =Front page template
-------------------------------------------------------------- */

.entry-page-image {
    margin-bottom: 14px;
    margin-bottom: 1rem;
}

.template-front-page .site-content article {
    border: 0;
    margin-bottom: 0;
}

.template-front-page .widget-area {
    clear: both;
    float: none;
    width: auto;
    padding-top: 24px;
    padding-top: 1.714285714rem;
    border-top: 1px solid #ededed;
}

.template-front-page .widget-area .widget li {
    margin: 8px 0 0;
    margin: 0.571428571rem 0 0;
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.714285714;
    list-style-type: square;
    list-style-position: inside;
}

.template-front-page .widget-area .widget li a {
    color: #757575;
}

.template-front-page .widget-area .widget li a:hover {
    color: #21759b;
}

.template-front-page .widget-area .widget_text img {
    float: left;
    margin: 8px 24px 8px 0;
    margin: 0.571428571rem 1.714285714rem 0.571428571rem 0;
}


/* =Widgets
-------------------------------------------------------------- */

.widget-area .widget ul ul {
    margin-left: 12px;
    margin-left: 0.857142857rem;
}

.widget_rss li {
    margin: 12px 0;
    margin: 0.857142857rem 0;
}

.widget_recent_entries .post-date,
.widget_rss .rss-date {
    color: #aaa;
    font-size: 11px;
    font-size: 0.785714286rem;
    margin-left: 12px;
    margin-left: 0.857142857rem;
}

#wp-calendar {
    margin: 0;
    width: 100%;
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
    color: #686868;
}

#wp-calendar th,
#wp-calendar td,
#wp-calendar caption {
    text-align: left;
}

#wp-calendar #next {
    padding-right: 24px;
    padding-right: 1.714285714rem;
    text-align: right;
}

.widget_search label {
    display: block;
    font-size: 13px;
    font-size: 0.928571429rem;
    line-height: 1.846153846;
}

.widget_twitter li {
    list-style-type: none;
}

.widget_twitter .timesince {
    display: block;
    text-align: right;
}


/* =Plugins
----------------------------------------------- */

img#wpstats {
    display: block;
    margin: 0 auto 24px;
    margin: 0 auto 1.714285714rem;
}


/* =Media queries
-------------------------------------------------------------- */

/* Does the same thing as <meta name="viewport" content="width=device-width">,
 * but in the future W3C standard way. -ms- prefix is required for IE10+ to
 * render responsive styling in Windows 8 "snapped" views; IE10+ does not honor
 * the meta tag. See https://core.trac.wordpress.org/ticket/25888.
 */

@-ms-viewport {
    width: device-width;
}

@viewport {
    width: device-width;
}

/* Minimum width of 600 pixels. */

@media screen and (min-width: 600px) {
    .author-avatar {
        float: left;
        margin-top: 8px;
        margin-top: 0.571428571rem;
    }
    .author-description {
        float: right;
        width: 80%;
    }
    .site {
        margin: 0 auto;
        max-width: 960px;
        max-width: 68.571428571rem;
        overflow: hidden;
    }
    .site-content {
        float: left;
        width: 65.104166667%;
    }
    body.template-front-page .site-content,
    body.attachment .site-content,
    body.full-width .site-content {
        width: 100%;
    }
    .widget-area {
        float: right;
        width: 26.041666667%;
    }
    .site-header h1,
    .site-header h2 {
        text-align: left;
    }
    .site-header h1 {
        font-size: 26px;
        font-size: 1.857142857rem;
        line-height: 1.846153846;
        margin-bottom: 0;
    }
    .main-navigation ul.nav-menu,
    .main-navigation div.nav-menu > ul {
        border-bottom: 1px solid #ededed;
        border-top: 1px solid #ededed;
        display: inline-block !important;
        text-align: left;
        width: 100%;
    }
    .main-navigation ul {
        margin: 0;
        text-indent: 0;
    }
    .main-navigation li a,
    .main-navigation li {
        display: inline-block;
        text-decoration: none;
    }
    .main-navigation li a {
        border-bottom: 0;
        color: #6a6a6a;
        line-height: 3.692307692;
        text-transform: uppercase;
        white-space: nowrap;
    }
    .main-navigation li a:hover,
    .main-navigation li a:focus {
        color: #000;
    }
    .main-navigation li {
        margin: 0 40px 0 0;
        margin: 0 2.857142857rem 0 0;
        position: relative;
    }
    .main-navigation li ul {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 100%;
        z-index: 1;
        height: 1px;
        width: 1px;
        overflow: hidden;
        clip: rect(1px, 1px, 1px, 1px);
    }
    .main-navigation li ul ul {
        top: 0;
        left: 100%;
    }
    .main-navigation ul li:hover > ul,
    .main-navigation ul li:focus > ul,
    .main-navigation .focus > ul {
        border-left: 0;
        clip: inherit;
        overflow: inherit;
        height: inherit;
        width: inherit;
    }
    .main-navigation li ul li a {
        background: #efefef;
        border-bottom: 1px solid #ededed;
        display: block;
        font-size: 11px;
        font-size: 0.785714286rem;
        line-height: 2.181818182;
        padding: 8px 10px;
        padding: 0.571428571rem 0.714285714rem;
        width: 180px;
        width: 12.85714286rem;
        white-space: normal;
    }
    .main-navigation li ul li a:hover,
    .main-navigation li ul li a:focus {
        background: #e3e3e3;
        color: #444;
    }
    .main-navigation .current-menu-item > a,
    .main-navigation .current-menu-ancestor > a,
    .main-navigation .current_page_item > a,
    .main-navigation .current_page_ancestor > a {
        color: #636363;
        font-weight: bold;
    }
    .menu-toggle {
        display: none;
    }
    .entry-header .entry-title {
        font-size: 42px;
        font-size: 2.971428571rem;
    }
    #respond form input[type="text"] {
        width: 46.333333333%;
    }
    #respond form textarea.blog-textarea {
        width: 79.666666667%;
    }
    .template-front-page .site-content,
    .template-front-page article {
        overflow: hidden;
    }
    .template-front-page.has-post-thumbnail article {
        float: left;
        width: 47.916666667%;
    }
    .entry-page-image {
        float: right;
        margin-bottom: 0;
        width: 47.916666667%;
    }
    .template-front-page .widget-area .widget,
    .template-front-page.two-sidebars .widget-area .front-widgets {
        float: left;
        width: 51.875%;
        margin-bottom: 24px;
        margin-bottom: 1.714285714rem;
    }
    .template-front-page .widget-area .widget:nth-child(odd) {
        clear: right;
    }
    .template-front-page .widget-area .widget:nth-child(even),
    .template-front-page.two-sidebars .widget-area .front-widgets + .front-widgets {
        float: right;
        width: 39.0625%;
        margin: 0 0 24px;
        margin: 0 0 1.714285714rem;
    }
    .template-front-page.two-sidebars .widget,
    .template-front-page.two-sidebars .widget:nth-child(even) {
        float: none;
        width: auto;
    }
    .commentlist .children {
        margin-left: 48px;
        margin-left: 3.428571429rem;
    }
}

/* Minimum width of 960 pixels. */

@media screen and (min-width: 960px) {
    body {}
    body .site {
        padding: 0 40px;
        padding: 0 2.857142857rem;
        margin-top: 48px;
        margin-top: 3.428571429rem;
        margin-bottom: 48px;
        margin-bottom: 3.428571429rem;
        box-shadow: 0 2px 6px rgba(100, 100, 100, 0.3);
    }
    body.custom-background-empty {
        background-color: #fff;
    }
    body.custom-background-empty .site,
    body.custom-background-white .site {
        padding: 0;
        margin-top: 0;
        margin-bottom: 0;
        box-shadow: none;
    }
}

/***
*
* Original
*
**/

/**
* common
**/

body {
    font-family: Helvetica, Arial, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 15px;
    line-height: 1.6em;
    letter-spacing: 0.05em;
    color: #231815;
    /* text-align: justify; */
}

@media (max-width: 900px) {
    body {
        font-size: 14px;
    }
}

@media (max-width: 639px) {
    body {
        font-size: 13px;
        letter-spacing: 0em;
    }
}

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

/**
* header
**/

.site-title {
    display: inline-block;
    vertical-align: middle;
    padding: 20px 0;
}

h1.site-title-content {
    font-size: 0.75em;
    color: #888;
    display: inline-block;
    vertical-align: middle;
    margin: 0 10px;
}

#menu-main li a {
    font-size: 0.9em;
    padding: 10px;
    border-radius: 0;
    color: #000;
}

#menu-main li a:hover {
    background-color: #dedede;
}

#navbar-main {
    background-color: #EEEEEE;
}

#menu-main.nav-pills > li.active > a,
#menu-main.nav-pills > li.active > a:focus,
#menu-main.nav-pills > li.active > a:hover {
    color: #23339B;
    background-color: transparent;
}

hgroup {
    position: relative;
    margin-bottom: 20px;
}

.head_linknav {
    width: 25%;
    padding-left: 24px;
    position: absolute;
    top: 0;
    right: 0;
}

.head_linknav a {
    display: inline-block;
    width: 49%;
    margin-left: -1px;
}

#masthead .navbar-toggle {
    position: absolute;
    top: 20px;
    right: 5px;
    margin: 0;
    background-color: #fff;
    border: solid 1px #ccc;
    padding: 15px 10px;
}

#masthead .navbar-toggle .icon-bar {
    background-color: #aaa;
}

@media (max-width: 767px) {
    #menu-main li {
        display: block;
        width: 100%;
        text-align: center;
        border-bottom: solid 1px #fff;
    }
}

/**
* Footer
**/

.sec_blue {
    background-color: #161A85;
    color: #fff;
}

.mail_container {
    max-width: 484px;
    margin: 0 auto;
    padding-top: 20px;
}

.footer_contact {
    padding-left: 22%;
    position: relative;
    font-size: 1.2em;
    line-height: 1.9;
}

.footer_contact::before {
    content: '';
    position: absolute;
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icon_mail.png)no-repeat;
    left: 0;
    top: 0;
    width: 20%;
    height: 70px;
    background-size: contain;
    vertical-align: middle;
}

.telnum::before {
    content: "\e182";
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    vertical-align: middle;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.maillink a {
    background-color: #C83E3C;
    color: #fff;
    padding: 0 10px;
    display: inline-block;
    margin-left: 10px;
}

.maillink a:hover {
    text-decoration: none;
    background-color: #B20000;
}

#menu-footer {
    width: 90%;
    margin: 0 auto;
}

#menu-footer li {
    display: inline-block;
    margin: 0 5px;
}

#menu-footer li a:hover {
    text-decoration: none;
    color: #ccc;
}

@media (max-width: 767px) {
    .mail_container {
        padding: 10px 15px;
    }
    .footer_contact {
        padding: 0;
        text-align: center;
    }
    .footer_contact::before {
        content: none;
    }
}

/**
* Sidebar
**/

#sidebar h3 {
    background-color: #eee;
    padding: 10px 10px 5px;
}

#childlist,
#catlist,
#monthlylist,
#blogcatlist {
    border: solid 6px #eee;
    margin-bottom: 30px;
}

#childlist li,
#catlist li {
    border-bottom: dashed 1px #eee;
}

#childlist li:last-child,
#catlist li:last-child {
    border-bottom: none;
}

#childlist li a,
#catlist li a,
#monthlylist li,
#blogcatlist li {
    padding: 7px 12px;
    display: block;
    color: #000;
}

#childlist li a::before,
#catlist li a::before,
.entry-content .pagelist ul li a:before,
#monthlylist li::before,
#blogcatlist li::before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 4px dashed #C6C7DE;
    border-top: 4px solid\9;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    margin-right: 5px;
}

#childlist li a:hover,
#catlist li a:hover {
    text-decoration: none;
    background-color: #F4F5FF;
}


/**
* Page
**/

section {
    padding: 30px 0 60px;
}

.sec_gray {
    background-color: #E5E5E5;
}

#main p {
    margin-bottom: 15px;
}

#main a,
#main a img {
    -webkit-backface-visibility: hidden;
    /* 追加 */
    backface-visibility: hidden;
    /* 追加 */
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    width: 100%;
    height: auto;
}

#main a img:hover {
    -webkit-opacity: .6;
    -moz-opacity: .6;
    opacity: .6;
}

.breadcrumbs {
    font-size: 0.85em;
    margin-bottom: 20px;
}

/* Top */

.home #main h2 {
    font-size: 1.3em;
    font-weight: 600;
    border-bottom: solid 1px #ccc;
    padding-bottom: 15px;
    margin: 30px 0;
}

.home #main h2 span {
    font-weight: normal;
    font-size: 0.6em;
    display: inline-block;
    margin-left: 10px;
    color: #ccc;
}

.home #main .sec_gray h2 span {
    color: #fff;
}

#tabs .ui-tabs-nav {
    padding: 0;
}

#tabs .ui-tabs-nav li {
    margin: 0 1px 0 0;
}

#tabs .ui-tabs-nav a {
    background-color: #161A85;
    color: #fff;
    padding: 15px 20px;
    font-size: 1.15em;
}

#tabs .ui-tabs-nav .ui-tabs-selected a {
    background-color: #fff;
    color: #000;
}

#tabs .ui-tabs-nav a::before {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-right: 3px;
}

#tab1::before {
    content: "\e084";
}

#tab2::before {
    content: "\e024";
}

#tab3::before {
    content: "\e012";
}

#tabs .ui-tabs-panel {
    border: 0;
    padding: 20px 20px 0;
}

#tabs h3 {
    font-size: 1.4em;
    border: solid 1px #161A85;
    padding: 15px;
    box-shadow: 4px 4px rgba(22, 26, 133, 0.2);
    margin-bottom: 25px;
}

#tabs .ui-tabs-panel ul li {
    margin-bottom: 15px;
}

.ui-tabs-panel .animate_link_text {
    padding-top: 16%;
}

.examplelist {
    margin-bottom: 30px;
}

.examplelist li {
    lidt-style: none;
    margin-bottom: 20px;
}

.examplelist li a {
    display: block;
    background-color: #8687B5;
}

.examplelist li:nth-child(odd) a {
    background-color: #221B6B;
}

.examplelist li figure {
    position: relative;
}

.examplelist li a .area {
    position: absolute;
    background-color: #fff;
    display: inline-block;
    color: #000;
    font-size: 0.8em;
    bottom: -12px;
    left: 10px;
    padding: 0 8px;
}

.examplelist li a .problem {
    color: #fff;
    padding: 20px 10px 10px;
    display: block;
    font-size: 0.85em;
}

.pickupimg {
    position: relative;
}

.pickupimg span {
    font-size: 0.75em;
    letter-spacing: 0.1rem;
    color: #fff;
    display: inline-block;
    position: absolute;
    padding: 2px 10px;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.1);
    top: 5px;
    left: -8px;
    background-color: #C83E3C;

}

.pickupimg span:after {
    content: " ";
    position: absolute;
    top: 100%;
    left: 0;
    width: 0;
    height: 0;
    border-width: 5px 0 0 8px;
    border-style: solid;
    border-color: transparent;
    border-top-color: #B20000;
}

.pickupbox {
    background-color: #EEEEEE;
    margin-bottom: 20px;
}

.pickuptext h3 {
    font-size: 1.2em;
    font-weight: 600;
    margin: 12px;
}

#main .pickuptext p {
    margin: 10px 12px;
    font-size: 0.95em;
    letter-spacing: 0.01em;
}

#main .pickuplink p {
    margin-bottom: 0;
}

.pickuplink p a {
    display: block;
    color: #fff;
    text-align: center;
    padding: 10px;
}

.pickuplink p a.link_product {
    background-color: #161A85;
}

.pickuplink p a.link_example {
    background-color: #8687B5;
}

#tabs .ui-tabs-nav a:hover,
.examplelist li a:hover,
.pickuplink p a:hover {
    text-decoration: none;
    background-color: #000;
    color: #fff;
}

.newslist {
    height: 269px;
    overflow-y: scroll;
    margin-bottom: 30px;
    padding: 10px 15px;
    background-color: rgba(255, 255, 255, 0.5);
}

.newslist li {
    margin-bottom: 15px;
    border-bottom: solid 1px #ddd;
    font-size: 0.9em;
}

.date {
    color: #4C51A5;
    font-size: 0.9em;
    margin-right: 10px;
}

.blogbox {
    background-color: #fff;
    margin-bottom: 20px;
}

.blogtext {
    padding: 10px;
}

.blogtext h3 a {
    color: #000;
    font-weight: 600;
    margin-bottom: 10px;
    display: block;
}

#main .blogtext > p {
    margin-bottom: 0;
    font-size: 0.85em;
    letter-spacing: 0.01em;
}

.blogbox .more-link {
    bottom: 15px;
    right: 15px;
    font-size: 0.85em;
}

#banabox {
    text-align: center;
}

#banabox p {
    display: inline-block;
    max-width: 220px;
    margin: 10px;
}

#banabox p.foot_hidden {
    display: none;
}

.entry-content table {
    margin: 0 auto 30px;
    border-collapse: separate;
    border-spacing: 2px;
}

.entry-content table th,
.entry-content table td {
    padding: 10px;
}

.entry-content table th {
    background-color: #8687B5;
    text-align: center;
    vertical-align: middle;
    color: #fff;
    font-weight: normal;
}

.entry-content table.product_guide th,
.entry-content table.pdf_guide th,
.page-id-79 .entry-content table th {
    background: #161A85;
    text-align: left;
    overflow: visible;
    position: relative;
    border-top: solid 1px #0F125D;
}

.entry-content table.product_guide th:after,
.entry-content table.pdf_guide th:after,
.page-id-79 .entry-content table th:after {
    left: 100%;
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(136, 183, 213, 0);
    border-left-color: #161A85;
    border-width: 6px;
    margin-top: -6px;
}

.page-id-79 .entry-content table th {
    width: 150px;
}

.entry-content .pdf_guide table th {
    background: #8687B5;
    border-top: solid 1px #6B6C92;
}

.entry-content .pdf_guide table th:after {
    border-left-color: #8687B5;
}

.entry-content table td {
    background: #f8f8f8;
    padding-left: 20px;
}

.entry-content table td.addline input {
    margin-bottom: 5px;
}

@media (max-width: 767px) {
    #tabs .ui-tabs-nav a {
        padding: 15px 10px;
        font-size: 1em;
    }
    table.table_sp {
        table-layout: fixed;
    }
    table.table_sp th,
    table.table_sp td {
        width: 100%;
        display: block;
        padding: 5px;
        border: none;
    }
    table.table_sp input[type="email"],
    table.table_sp textarea,
    table.table_sp input[type="submit"] {
        width: 95%;
    }
    .entry-content table th:after {
        content: none;
    }
    .examplelist li a,
    .pickupbox {
        position: relative;
    }
    .examplelist li a .area {
        margin-top: 15px;
        left: 52%;
        top: 0;
        bottom: auto;
    }
    .examplelist li a .problem {
        position: absolute;
        right: 0;
        top: 30px;
        left: 50%;
    }
    .examplelist li figure img,
    .pickupimg {
        width: 50%;
    }
    .pickupbox .pickuptext {
        position: absolute;
        right: 0;
        top: 0;
        left: 50%;
        font-size: 0.85em;
    }
    #main .pickupbox .pickuptext h3 {
        margin-bottom: 3px;
    }
    #main .pickupbox .pickuptext p {
        margin-top: 0;
    }
}

#main h2.single-title,
.pdf_guide h2 {
    background-color: #161A85;
    color: #fff;
    padding: 12px 10px 12px 30px;
    font-size: 1.25em;
    font-weight: normal;
    position: relative;
    border-bottom: solid 1px #0F125D;
    border-right: solid 1px #0F125D;
    margin: 0 0 20px;
}

#main h2.single-title:before,
.pdf_guide h2:before {
    content: '';
    width: 8px;
    height: 8px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 8px;
    margin-top: -4px;
    border-radius: 50%;
}

#main h2.single-title:after,
.pdf_guide h2:after {
    content: '';
    width: 8px;
    height: 8px;
    background-color: #C83E3C;
    position: absolute;
    top: 50%;
    left: 16px;
    margin-top: -4px;
    border-radius: 50%;
}

.single-product #main h2.single-title,
#main h3.single-title {
    color: #000;
    font-size: 1.18em;
    position: relative;
    padding: 8px 10px 8px 30px;
    background-color: #eee;
    margin: 30px 0 20px;
    border-bottom: solid 1px #E6E6E6;
    border-right: solid 1px #E6E6E6;
}

.single-product #main h2.single-title:before,
#main h3.single-title:before {
    content: '';
    width: 8px;
    height: 8px;
    background-color: #161A85;
    position: absolute;
    top: 50%;
    left: 8px;
    margin-top: -4px;
    border-radius: 50%;
}

.single-product #main h2.single-title:after,
#main h3.single-title:after {
    content: '';
    width: 8px;
    height: 8px;
    background-color: #C83E3C;
    position: absolute;
    top: 50%;
    left: 16px;
    margin-top: -4px;
    border-radius: 50%;
}

.parent-pageid-12 .entry-content h2,
.page-id-16 .entry-content h2,
.entry-content h3 {
    position: relative;
    padding-left: 20px;
    border-bottom: solid 2px #CCCCCC;
    margin: 30px 0 20px;
}

.parent-pageid-12 .entry-content h2:before,
.page-id-16 .entry-content h2:before,
.entry-content h3:before {
    content: '';
    width: 8px;
    height: 8px;
    background-color: #161A85;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -4px;
    border-radius: 50%;
}

.parent-pageid-12 .entry-content h2:after,
.page-id-16 .entry-content h2:after,
.entry-content h3:after {
    content: '';
    width: 8px;
    height: 8px;
    background-color: #C83E3C;
    position: absolute;
    top: 50%;
    left: 8px;
    margin-top: -4px;
    border-radius: 50%;
}

/* page header */

.entry-header .entry-title span {
    font-size: 0.35em;
    vertical-align: baseline;
    display: inline-block;
    margin-left: 8px;
    font-weight: normal;
}

.post-type-archive-solving .entry-header,
.tax-solving-cat .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_solving.jpg)no-repeat center top;
    background-size: cover;
}

.post-type-archive-example .entry-header,
.tax-examples .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_example.jpg)no-repeat center top;
    background-size: cover;
}

.page-id-77 .entry-header,
.parent-pageid-77 .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_company.jpg)no-repeat center top;
    background-size: cover;
}
.page-id-81 .entry-header,
.parent-pageid-81 .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_company.jpg)no-repeat center top;
    background-size: cover;
}

.page-id-46 .entry-header,
.page-id-18 .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_inquiry.jpg)no-repeat center top;
    background-size: cover;
}

.page-id-16 .entry-header,
.parent-pageid-16 .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_recruit.jpg)no-repeat center top;
    background-size: cover;
}
.page-id-12 .entry-header,
.parent-pageid-12 .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_company.jpg)no-repeat center top;
    background-size: cover;
}

.post-type-archive-product .entry-header,
.single-product .entry-header,
.tax-products .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_products.jpg)no-repeat center top;
    background-size: cover;
}

.post-type-archive-blog-post .entry-header,
.single-blog-post .entry-header,
.tax-blogs .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_blog.jpg)no-repeat center top;
    background-size: cover;
}

.page-id-10 .entry-header,
.parent-pageid-10 .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_pdf.jpg)no-repeat center top;
    background-size: cover;
}

.post-type-archive-staffvoice .entry-header {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/icatch_staffvoice.jpg)no-repeat center top;
    background-size: cover;
}

/* company */

.panel_blue {
    background-color: #161A85;
    color: #fff;
    padding: 35px 0 20px;
}

.panel_blue > * {
    padding: 0 25px;
}

.panel_group {
    display: table;
    width: 100%;
}

.panel_blue,
.panel_image {
    display: table-cell;
    vertical-align: middle;
    width: 50%;
}

#company_philosophy .panel_image {
    background: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2016/01/company_img4.jpg)no-repeat center;
    background-size: cover;
}

#company_message .panel_image {
    background: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2016/01/company_img6.jpg)no-repeat left bottom;
    background-size: cover;
}

@media (max-width: 767px) {
    .panel_blue {
        display: block;
        width: 100%;
    }
    .panel_image {
        display: none;
    }
    #company_philosophy .panel_blue {
        background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/blue.png)repeat, url(http://www.ibicon.co.jp/wp/wp-content/uploads/2016/01/company_img4.jpg)no-repeat center;
        background-size: cover;
    }
    #company_message .panel_blue {
        background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/blue.png)repeat, url(http://www.ibicon.co.jp/wp/wp-content/uploads/2016/01/company_img6.jpg)no-repeat left bottom;
        background-size: cover;
    }
}

.pagelist p {
    font-size: 0.9em;
}

.animate_link {
    display: block;
    position: relative;
    margin-bottom: 10px;
    overflow: hidden;
}

.animate_link img {
    vertical-align: top;
}

.animate_link_text {
    display: block;
    position: absolute;
    background-color: rgba(36, 39, 107, 0.8);
    top: 0;
    left: 0;
    height: 100%;
    width: 50%;
    color: #fff;
    text-align: center;
    padding: 24% 10px 0;
    z-index: 1;
}

.animate_link_text span {
    display: block;
    font-size: 0.7em;
}

.thumb_mini .animate_link_text {
    padding-top: 15%;
}

#main a.animate_link:hover img {
    -webkit-opacity: 1;
    -moz-opacity: 1;
    opacity: 1;
}

.animate_link_text {
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.animate_link:hover .animate_link_text {
    width: 100%;
}

.animate_link .animate_link_text::after {
    content: "\e258";
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 60px;
    margin: -30px 0 0 -30px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-opacity: 0;
    -moz-opacity: 0;
    opacity: 0;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.animate_link:hover .animate_link_text::after {
    -webkit-opacity: 0.4;
    -moz-opacity: 0.4;
    opacity: 0.4;
}

.tax-solving-cat .entry-content,
.tax-products .entry-content {
    border: solid 2px #161A85;
    padding: 20px 20px 10px;
    margin-top: -22px;
}

@media (max-width: 767px) {
    .animate_link_text,
    .animate_link .animate_link_text::after {
        -webkit-transition: all 0s;
        -moz-transition: all 0s;
        -ms-transition: all 0s;
        -o-transition: all 0s;
        transition: all 0s;
    }
    .animate_link:hover .animate_link_text {
        width: 50%;
    }
}

/* products */

.product_pagelist .animate_link_text {
    background-color: rgba(14, 16, 76, 0.8);
}

.product_guide td {
    font-size: 1.1em;
}

.product_guide a,
.pdf_guide td a {
    position: relative;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-right: 5px;
}

.product_guide a:before {
    content: "\e158";
    vertical-align: middle;
    margin-right: 1px;
}

.product_guide .extarnal_link a:before {
    content: "\e164";
}

.product_guide .pdf_link a:before,
.pdf_guide .pdf_link a:before {
    content: "\e022";
}

.entry-content .pagelist ul li {
    list-style: none;
    margin: 0;
    border-bottom: solid 1px #EEE;
    font-size: 0.95em;
}

.entry-content .pagelist ul li a {
    display: block;
    padding: 5px 0;
    color: #000;
}

.entry-content .pagelist ul li a:hover {
    padding-left: 5px;
    background-color: #F5F5F5;
}

article.product {
    margin-bottom: 80px;
}

article.product .entry-content img.size-full {
    margin: 20px 0;
}

#product_cat {
    border-top: solid 3px #161A85;
    color: #161A85;
    font-size: 1.8em;
    line-height: 1.8;
    position: relative;
    text-shadow: 2px 2px 0 #EFEFEF;
}

#product_cat:before {
    content: '';
    border-bottom: solid 1px #C83E3C;
    width: 100%;
    height: 3px;
    display: block;
}

.featurebox {
    background-color: #F8F8F8;
    padding: 50px 20px 5px;
    border: solid 3px #161A85;
    position: relative;
}

.featurebox h3 {
    border: 0;
    font-size: 0.95em;
    letter-spacing: 0.1rem;
    color: #fff;
    display: inline-block;
    position: absolute;
    padding: 2px 10px;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.1);
    top: 10px;
    left: -8px;
    margin: 0;
    background-color: #161A85;
}

.featurebox h3:before {
    content: none;
}

.featurebox h3:after {
    content: " ";
    position: absolute;
    top: 100%;
    left: 0;
    width: 0;
    height: 0;
    margin: 0;
    border-width: 5px 0 0 8px;
    border-style: solid;
    border-color: transparent;
    border-top-color: #161A85;
    border-radius: 0;
    background: transparent;
}

#slb_viewer_wrap .slb_theme_slb_baseline * {
    font-family: Helvetica, Arial, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 14px;
}

#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
    display: none;
}

/* Solving */

.solving_pagelist .animate_link_text {
    background-color: rgba(22, 26, 133, 0.8);
}

article.solving {
    margin-bottom: 60px;
}

#main .s_problem h3:before,
#main .s_problem h3:after,
#main .s_solving h3:before,
#main .s_solving h3:after,
#main .s_task h3:after {
    content: none;
}

.s_problem {
    margin-bottom: 30px;
    padding: 20px;
    border: double 6px #CA3C37;
    box-shadow: 0 0 4px #E4E4E4 inset;
}

.s_problem h3 {
    margin-top: 0;
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/solving_img1.png)no-repeat left bottom;
    padding: 10px 10px 2px 60px;
    border-bottom-color: #CA3C37;
}

.s_problem ul li {
    margin-left: 17px;
}

.s_task {
    background-color: #F1F1F1;
    color: #161A85;
    padding: 45px 15px 30px;
    position: relative;
}

.s_task:after {
    content: '';
    position: absolute;
    bottom: -65px;
    left: 50%;
    margin-left: -40px;
    border: solid 40px;
    border-color: rgba(22, 26, 133, 0.2) transparent transparent;
}

.s_task h3 {
    margin-top: 0;
    border-bottom: 0;
    padding-left: 80px;
    font-size: 1.4em;
    color: #161A85;
    position: absolute;
    top: 6px;
}

.s_task h3:before {
    content: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/solving_img2_2.png);
    background-color: transparent !important;
    top: -17px;
}

.s_task p {
    text-align: center;
    font-size: 1.2em;
    font-weight: 600;
}

.s_solving h3 {
    background: url(http://www.ibicon.co.jp/wp/wp-content/themes/ibicon/img/solving_img3.png)no-repeat left bottom;
    padding: 10px 10px 2px 60px;
}

.s_solving h4 {
    background-color: #7779B3;
    color: #fff;
    padding: 20px;
    font-size: 1.1em;
    border-left: double 8px #161A85;
}

.s_solving h4 a,
.s_solving h4 a:visited {
    color: #fff;
    text-decoration: underline;
}

.s_solving img {
    display: block;
    margin: 0 auto 10px;
}

.s_solving .solving_box {
    display: inline-block;
    padding: 20px 30px;
    margin-bottom: 20px;
    background-color: #F8F8F8;
    border: solid 3px #7779B3;
    font-size: 1.05em;
    font-weight: 600;
}

.s_solving .product_link a:before {
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\e158";
    vertical-align: middle;
    margin-right: 1px;
}

/* Example */

.example_pagelist .animate_link_text {
    background-color: rgba(53, 56, 138, 0.8);
}

.post-type-archive-example #catlist > li > span,
.tax-examples #catlist > li > span {
    background-color: #8A89C3;
    color: #fff;
    font-size: 0.9em;
    display: block;
    padding: 4px 10px;
    margin-top: -1px;
}

.post-type-archive-example #catlist > li > a:before,
.tax-examples #catlist > li > a:before {
    content: none;
}

#main .example-category {
    background-color: #161A85;
    margin-top: 40px;
    height: 12px;
    position: relative;
}

#main .example-category:first-child {
    margin-top: 0;
}

.example-category span {
    position: absolute;
    display: inline-block;
    background-color: #fff;
    font-size: 1.2em;
    top: -5px;
    left: 30px;
    padding: 0 5px;
    color: #4E4E4E;
}

.example-category span:before,
.example-category span:after {
    position: absolute;
    height: 20px;
    width: 20px;
    top: 50%;
    margin-top: -10px;
}

.example-category span:before {
    content: '';
    border: solid 10px;
    border-color: transparent #fff #fff transparent;
    left: -20px;
}

.example-category span:after {
    content: '';
    border: solid 10px;
    border-color: #fff transparent transparent #fff;
    right: -20px;
}

article.example {
    margin-bottom: 40px;
}

.example .entry-content table th {
    width: 80px;
}

/* Blog */

.nav-single {
    margin: 50px 0;
    border-top: solid 1px #ddd;
    padding-top: 20px;
}

/* Staff voice */

.type-staffvoice {
    border: solid 1px #ddd;
    padding: 7px;
    margin-bottom: 30px;
    box-shadow: 8px 10px 0 rgba(0, 0, 0, 0.05);
}

.entry-content table.resume {
    border-collapse: collapse;
    margin-bottom: 0;
    table-layout: fixed;
}

.entry-content table.resume th,
.entry-content table.resume td {
    background-color: #fff;
    color: #444;
    border: solid 1px #ddd;
    text-align: left;
    font-size: 1.1em;
    vertical-align: top;
}

.entry-content table.resume th {
    font-weight: 600;
}

#main .entry-content table.resume th p,
#main .entry-content table.resume td p {
    margin-bottom: 0;
}


/* =Print
----------------------------------------------- */

@media print {
    body {
        background: none !important;
        color: #000;
        font-size: 10pt;
    }
    footer a[rel=bookmark]:link:after,
    footer a[rel=bookmark]:visited:after {
        content: " [" attr(href) "] ";
        /* Show URLs */
    }
    a {
        text-decoration: none;
    }
    .entry-content img,
    .comment-content img,
    .author-avatar img,
    img.wp-post-image {
        border-radius: 0;
        box-shadow: none;
    }
    .site {
        clear: both !important;
        display: block !important;
        float: none !important;
        max-width: 100%;
        position: relative !important;
    }
    .site-header {
        margin-bottom: 72px;
        margin-bottom: 5.142857143rem;
        text-align: left;
    }
    .site-header h1 {
        font-size: 21pt;
        line-height: 1;
        text-align: left;
    }
    .site-header h2 {
        color: #000;
        font-size: 10pt;
        text-align: left;
    }
    .site-header h1 a,
    .site-header h2 a {
        color: #000;
    }
    .author-avatar,
    #colophon,
    #respond,
    .commentlist .comment-edit-link,
    .commentlist .reply,
    .entry-header .comments-link,
    .entry-meta .edit-link a,
    .page-link,
    .site-content nav,
    .widget-area,
    img.header-image,
    .main-navigation {
        display: none;
    }
    .wrapper {
        border-top: none;
        box-shadow: none;
    }
    .site-content {
        margin: 0;
        width: auto;
    }

    .entry-header .entry-title,
    .entry-title {
        font-size: 21pt;
    }
    footer.entry-meta,
    footer.entry-meta a {
        color: #444;
        font-size: 10pt;
    }
    .author-description {
        float: none;
        width: auto;
    }

    /* Comments */
    .commentlist > li.comment {
        background: none;
        position: relative;
        width: auto;
    }
    .commentlist .avatar {
        height: 39px;
        left: 2.2em;
        top: 2.2em;
        width: 39px;
    }
    .comments-area article header cite,
    .comments-area article header time {
        margin-left: 50px;
        margin-left: 3.57142857rem;
    }
}

/*philosophy renewal 2018.07.31*/

#philosophy_r {}

#philosophy_r > div {
    background-image: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2018/08/izumi.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 551px 387px;
    padding: 40px 32px;
    position: relative;
}

#philosophy_r > div:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0) 75%, rgba(255, 255, 255, 1) 100%);
}

#philosophy_r > div:nth-child(2):before {
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.5) 25%, rgba(255, 255, 255, 0.5) 75%, rgba(255, 255, 255, 1) 100%);
}

#philosophy_r > div:nth-child(2) {
    background-image: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2018/08/company_img4.jpg);
    background-size: 100% auto;
}

#philosophy_r > div h2,
#philosophy_r > div h3 {
    position: inherit;
    padding-left: 0;
    border-bottom: none;
}

#philosophy_r > div h2:before,
#philosophy_r > div h2:after,
#philosophy_r > div h3:before,
#philosophy_r > div h3:after {
    content: none !important;
}

#philosophy_r > div h2 {
    display: block;
    width: 95px;
    height: 22px;
    background-image: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2018/08/philosophy_h2_1.png);
    background-repeat: no-repeat;
    background-size: 100%;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 0 auto 1.666666666666667em;
    font-size: 24px;
}

#philosophy_r > div:nth-child(2) h2 {
    width: 47px;
    background-image: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2018/08/philosophy_h2_2.png);
}

#philosophy_r > div:nth-child(3) h2 {
    width: 164px;
    background-image: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2018/08/philosophy_h2_3.png);
}

#philosophy_r > div h3 {
    display: block;
    width: 283px;
    height: 30px;
    background-image: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2018/08/philosophy_h3_1.png);
    background-repeat: no-repeat;
    background-size: 100%;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 0 auto 1.25em;
    font-size: 32px;
}

#philosophy_r > div:nth-child(2) h3 {
    width: 363px;
    background-image: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2018/08/philosophy_h3_2.png);
}

#philosophy_r > div:nth-child(3) h3 {
    width: 187px;
    background-image: url(http://www.ibicon.co.jp/wp/wp-content/uploads/2018/08/philosophy_h3_3.png);
}

#philosophy_r > div p {
    white-space: pre-line;
    text-align: center;
    font-size: 14px;
    position: relative;
}


@media (max-width: 767px) {
    #philosophy_r > div {
        background-size: 100% auto;
        background-position: center top;
        padding: 32px 16px;
    }

    #philosophy_r > div h2 {
        width: 72px;
        height: 18px;
        font-size: 18px;
    }

    #philosophy_r > div:nth-child(2) h2 {
        width: 36px;
    }

    #philosophy_r > div:nth-child(3) h2 {
        width: 126px;
    }

    #philosophy_r > div h3 {
        width: 216px;
        height: 24px;
        font-size: 24px;
    }

    #philosophy_r > div:nth-child(2) h3 {
        width: 274px;
    }

    #philosophy_r > div:nth-child(3) h3 {
        width: 144px;
    }

    #philosophy_r > div:nth-child(2) {
        background-size: auto 100%;
    }
}

section.bana {
    padding: 30px 0;
}

.row-6 {
    margin-right: -15px;
    margin-left: -15px;
    width: 600px;
    margin: auto;
}

.row-6::after {
    clear: both;
    display: block;
    content: "";
}

div#metaslider_container_18 .theme-default a.nivo-prevNav {
    left: 50%;
    opacity: 1;
    background: url(img/arrow_l.png) no-repeat;
    width: 44px;
    height: 44px;
    transform: translateX(-510px);
}

div#metaslider_container_18 .theme-default a.nivo-nextNav {
    right: 50%;
    opacity: 1;
    background: url(img/arrow_r.png) no-repeat;
    width: 44px;
    height: 44px;
    transform: translateX(510px);
}

div#metaslider_container_1714 .theme-default a.nivo-prevNav {
    left: 50%;
    opacity: 1;
    background: url(img/arrow_l.png) no-repeat;
    width: 44px;
    height: 44px;
    transform: translateX(-510px);
}

div#metaslider_container_1714 .theme-default a.nivo-nextNav {
    right: 50%;
    opacity: 1;
    background: url(img/arrow_r.png) no-repeat;
    width: 44px;
    height: 44px;
    transform: translateX(510px);
}

div#philosophy_p > div:nth-of-type(1) h4 {
    display: block;
    width: auto;
    height: 44px;
    background-image: url(img/philosophy_h4_1.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto;
    font-size: 32px;
}

div#philosophy_p > div:nth-of-type(2) h4 {
    display: block;
    width: auto;
    height: 44px;
    background-image: url(img/philosophy_h4_2n.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto;
    font-size: 32px;
}

div#philosophy_p > div:nth-of-type(3) h4 {
    display: block;
    width: auto;
    height: 120px;
    background-image: url(img/philosophy_h4_3n.jpg);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto;
    font-size: 32px;
}

div#philosophy_p > div:nth-of-type(4) h4 {
    display: block;
    width: auto;
    height: 88px;
    background-image: url(img/philosophy_h4_4.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto;
    font-size: 32px;
}

div#philosophy_p > div:nth-of-type(5) h4 {
    display: block;
    width: auto;
    height: 135px;
    background-image: url(img/philosophy_h4_5.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto;
    font-size: 32px;
}

div#philosophy_p > div:nth-of-type(6) h4:nth-of-type(1) {
    display: block;
    width: auto;
    height: 29px;
    background-image: url(img/philosophy_h4_6.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto 10px;
    font-size: 32px;
}

div#philosophy_p > div:nth-of-type(6) h4:nth-of-type(2) {
    display: block;
    width: auto;
    height: 29px;
    background-image: url(img/philosophy_h4_7.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto 10px;
    font-size: 32px;
}

div#philosophy_p > div:nth-of-type(6) h4:nth-of-type(3) {
    display: block;
    width: auto;
    height: 29px;
    background-image: url(img/philosophy_h4_8.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto 10px;
    font-size: 32px;
}

div#philosophy_p > div:nth-of-type(6) h4:nth-of-type(4) {
    display: block;
    width: auto;
    height: 29px;
    background-image: url(img/philosophy_h4_9.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto 10px;
    font-size: 32px;
}

div#philosophy_p > div img {
    margin-bottom: 55px;
}

div#philosophy_p > div img.sp-view {
    display: none;
}

div#philosophy_p > div p:last-of-type {
    margin-bottom: 90px;
}

div#philosophy_p > div:nth-of-type(6) p:last-of-type {
    margin-bottom: 15px;
}

div#philosophy_p > div .w60 {
    width: 50%;
    margin: 50px auto;
    display: block;
}

#business > h4:nth-of-type(1) {
    display: block;
    width: auto;
    height: 44px;
    background-image: url(img/business_h4_1.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto;
    font-size: 32px;
}

#business > div:nth-of-type(1) h4 {
    display: block;
    width: auto;
    height: 44px;
    background-image: url(img/business_h4_2.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto;
    font-size: 32px;
}

#business img {
    margin-bottom: 20px;
}

#business > img.sp-view {
    display: none;
}

div#content.sixty-years {
    margin: auto;
    padding-right: 15px;
    padding-left: 15px;
}

div#content.sixty-years h2 {
    margin-bottom: 10px;
}

div#content.sixty-years h2 img {
    display: block;
    width: 100%;
}

div#content.sixty-years div > img {
    margin-bottom: 20px;
}

div#content.sixty-years img.sp-view {
    display: block;
}

div#content.sixty-years img.pc-view {
    display: none;
}

div#content.sixty-years .inner h3 {
    font-size: 20px;
    color: #fff;
    background-color: #d8001b;
    line-height: 1;
    padding: 10px 20px;
    margin: 60px auto 20px;
}

div#content.sixty-years .inner h4 {
    font-size: 20px;
    line-height: 1;
    margin: 50px auto 20px;
    font-weight: bold;
}

div#content.sixty-years .inner img {
    margin: 30px auto 30px;
    display: block;
}

div#content.sixty-years .inner img.w80 {
    width: 80%;
}

div#content.sixty-years .inner img.w60 {
    width: 60%;
}

div#content.sixty-years .inner a {
    display: block;
    width: 60%;
    line-height: 1;
    text-align: center;
    padding: 20px 0;
    font-size: 24px;
    color: #fff;
    background-color: #d8001b;
    margin: 50px auto;
    border: 2px solid #d8001b;
    box-sizing: border-box;
}

div#content.sixty-years .inner a:hover {
    color: #d8001b;
    background-color: #fff;
}

.row-201 {
    margin-left: -10px;
    margin-right: -10px;
}

.col-sm-60 {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
}

.col-sm-60 .animate_link_text {
    padding: 25% 10px 0;
    width: 50%;
}

.col-sm-60 .animate_link img.pc-view {
    display: none;
}

.col-sm-60 .animate_link img.sp-view {
    display: block;
}

.container img.sp-view {
    display: none;
}

.metaslider.metaslider-nivo.metaslider-1714.ml-slider {
    display: none;
}

@media screen and (min-width: 768px) {
    div#content.sixty-years {
        width: 750px;
    }
    div#metaslider_container_18 .theme-default a.nivo-prevNav {
        transform: translateX(-360px);
    }
    div#metaslider_container_18 .theme-default a.nivo-nextNav {
        transform: translateX(360px);
    }
    .col-sm-60 {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
    }
    .col-sm-60 .animate_link_text {
        padding: 12% 10px 0;
        width: 25%;
    }
    .col-sm-60 .animate_link img.sp-view {
        display: none;
    }
    .col-sm-60 .animate_link img.pc-view {
        display: block;
    }
    div#content.sixty-years img.sp-view {
        display: none;
    }
    div#content.sixty-years img.pc-view {
        display: block;
    }
}

@media screen and (min-width: 992px) {
    div#content.sixty-years {
        width: 970px;
    }

    div#metaslider_container_18 .theme-default a.nivo-prevNav {
        transform: translateX(-470px);
    }
    div#metaslider_container_18 .theme-default a.nivo-nextNav {
        transform: translateX(470px);
    }
}

@media screen and (min-width: 1200px) {
    div#content.sixty-years {
        width: 1050px;
    }
    div#content.sixty-years .inner {
        margin: 50px auto;
        box-sizing: border-box;
    }
    div#content.sixty-years .inner img.w80 {
        width: 800px;
    }
    div#content.sixty-years .inner img.w60 {
        width: 600px;
    }

    div#metaslider_container_18 .theme-default a.nivo-prevNav {
        transform: translateX(-510px);
    }
    div#metaslider_container_18 .theme-default a.nivo-nextNav {
        transform: translateX(510px);
    }
}

@media screen and (max-width: 600px) {
    div#content.sixty-years .inner a {
        width: 100%;
        padding: 10px 0;
        font-size: 18px;
    }

    div#content.sixty-years .inner h3 {
        font-size: 18px;
        line-height: 1.3;
        padding: 10px 5px;
        margin: 30px auto 15px;
    }
    div#content.sixty-years .inner h4 {
        font-size: 18px;
        line-height: 1.3;
    }

    .container img.sp-view {
        display: block;
    }
    .container img.pc-view {
        display: none;
    }

    div#philosophy_p > div:nth-of-type(1) h4,
    div#philosophy_p > div:nth-of-type(2) h4 {
        height: 26px;
        margin: 25px auto;
    }
    div#philosophy_p > div:nth-of-type(4) h4 {
        height: 55px;
        margin: 25px auto;
    }
    div#philosophy_p > div:nth-of-type(5) h4 {
        height: 80px;
    }
    div#philosophy_p > div:nth-of-type(6) h4:nth-of-type(1),
    div#philosophy_p > div:nth-of-type(6) h4:nth-of-type(2),
    div#philosophy_p > div:nth-of-type(6) h4:nth-of-type(3),
    div#philosophy_p > div:nth-of-type(6) h4:nth-of-type(4) {
        height: 20px;
    }
    div#philosophy_p > div:nth-of-type(3) h4 {
        height: 65px;
        margin: 25px auto;
    }
    div#philosophy_p > div img {
        margin-bottom: 30px;
    }
    div#philosophy_p > div img.sp-view {
        display: block;
    }
    div#philosophy_p > div img.pc-view {
        display: none;
    }

    #business > h4:nth-of-type(1),
    #business > div:nth-of-type(1) h4 {
        height: 26px;
        margin: 25px auto;
    }
    #business > img.pc-view {
        display: none;
    }
    #business > img.sp-view {
        display: block;
    }

    .row-6 {
        width: 60%;
    }
    .row-6 .col-sm-6 {
        width: 100%;
    }

    .metaslider.metaslider-nivo.metaslider-1714.ml-slider {
        display: block;
    }
    .metaslider.metaslider-nivo.metaslider-18.ml-slider {
        display: none;
    }
}

div#philosophy_p > div.interview img:first-of-type {
    margin-top: 0;
}

div#philosophy_p > div.interview img {
    margin-bottom: 20px;
    margin-top: 50px;
}

div#philosophy_p > div.interview img:first-of-type {
    margin-top: 0;
}

div#philosophy_p > div.interview h4 {
    display: block;
    width: auto;
    height: 29px;
    background-image: url(img/philosophy_h4_10.png);
    background-repeat: no-repeat;
    background-size: contain;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    margin: 35px auto 10px;
    font-size: 32px;
}

.interview {
    margin-bottom: 50px;
}

.interview .b {
    margin-bottom: 30px;
}

.interview .q {
    padding: 10px 7px;
    background-color: #dfe0ed;
    text-align: left;
    margin-bottom: 10px;
    font-size: 18px;
    line-height: 1;
}

@media screen and (max-width: 600px) {
    div#philosophy_p > div.interview h4 {
        height: 20px;
    }
    .interview .q {
        font-size: 100%;
        line-height: 1.3;
    }
}

.slider-block img.pc-hide {
    display: none;
}

.slider-block .slick-prev {
    z-index: 30002;
    left: 50%;
    opacity: 1;
    background: url(img/arrow_l.png) no-repeat;
    width: 44px;
    height: 44px;
    transform: translateX(-510px);
}

.slider-block .slick-prev::before {
    display: none;
}

.slider-block .slick-next {
    z-index: 30002;
    right: 50%;
    opacity: 1;
    background: url(img/arrow_r.png) no-repeat;
    width: 44px;
    height: 44px;
    transform: translateX(510px);
}

.slider-block .slick-next::before {
    display: none;
}

.slick-slider li a:hover img {
    opacity: 1 !important;
}


@media screen and (min-width: 768px) {
    .slider-block .slick-prev {
        transform: translateX(-360px);
    }
    .slider-block .slick-next {
        transform: translateX(360px);
    }
}

@media screen and (min-width: 992px) {
    .slider-block .slick-prev {
        transform: translateX(-470px);
    }
    .slider-block .slick-next {
        transform: translateX(470px);
    }
}

@media screen and (min-width: 1200px) {
    .slider-block .slick-prev {
        transform: translateX(-510px);
    }
    .slider-block .slick-next {
        transform: translateX(510px);
    }
    .slider-block img.pc-hide {
        display: none;
    }
}

@media screen and (max-width: 600px) {
    .slider-block img.sp-hide {
        display: none;
    }
    .slider-block img.pc-hide {
        display: block;
    }
    .slider-block .slick-prev {
        transform: translateX(-180px);
        width: 33px;
        height: 33px;
        background-size: cover;
    }
    .slider-block .slick-next {
        transform: translateX(180px);
        width: 33px;
        height: 33px;
        background-size: cover;
    }
}

section.slider-block {
    padding: 30px 0 0;
}