@charset "UTF-8";
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}
body {
    margin: 0;
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
    background: #fff;
    color: #333;
    -webkit-font-smoothing: antialiased;
}
article,
aside,
body.home .home_visual h2.item_title img,
body.home .home_visual_text p img,
details,
figcaption,
figure,
footer,
header,
header .site_title a,
header h1 a,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
}
audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}
audio:not([controls]) {
    display: none;
    height: 0;
}
[hidden],
body.home .home_visual h2.item_title span,
template {
    display: none;
}
a {
    background-color: transparent;
    color: #0075c2;
    transition: all 0.3s;
    text-decoration: none;
}
a:active,
a:hover {
    outline: 0;
}
abbr[title] {
    border-bottom: 1px dotted;
}
b,
strong {
    font-weight: 700;
}
dfn {
    font-style: italic;
}
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}
mark {
    background: #ff0;
    color: #000;
}
small {
    font-size: 80%;
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup {
    top: -.5em;
}
sub {
    bottom: -.25em;
}
img {
    border: 0;
}
svg:not(:root) {
    overflow: hidden;
}
figure {
    margin: 1em 40px;
}
hr {
    box-sizing: content-box;
    height: 0;
}
pre {
    overflow: auto;
}
code,
kbd,
pre,
samp {
    font-family: monospace,monospace;
    font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}
button {
    overflow: visible;
}
button,
select {
    text-transform: none;
}
button,
html input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer;
}
button[disabled],
html input[disabled] {
    cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}
input {
    line-height: normal;
}
input[type=checkbox],
input[type=radio] {
    box-sizing: border-box;
    padding: 0;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    height: auto;
}
input[type=search] {
    -webkit-appearance: textfield;
    box-sizing: content-box;
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
}
fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}
legend {
    border: 0;
}
textarea {
    overflow: auto;
}
optgroup {
    font-weight: 700;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
legend,
td,
th {
    padding: 0;
}
body.home .home_message_inner,
body.products_view .products_view_item {
    transition: opacity 1s;
}
body.products_view .products_sub_item {
    transition: all 1s;
}
body.products_idea .products_idea_content,
body.products_idea .products_idea_title {
    transition: opacity 1s;
}
body.products_idea .products_idea_img {
    transition: transform 1s;
}
body.history_top .history_content {
    transition: opacity 1s;
}
body.products_modal #modal {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1000;
}
body.products_modal #modal .products_topics_bg {
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: rgba(60,65,74,.5);
}
body.products_modal #modal .products_topics {
    position: relative;
    margin-left: 10%;
    width: 80%;
    height: 80%;
    margin-top: 10%;
    z-index: 2000;
}
@media (max-width:768px) {
    body.products_modal #modal .products_topics {
        margin-top: 5%;
        margin-left: 5%;
        width: 90%;
        height: 90%;
    }
}
header {
    padding-bottom: 30px;
    background: #fff;
    border-bottom: 1px solid #e1e2e2;
    z-index: 300;
}
@media (max-width:768px) {
    header {
        padding-bottom: 0;
        border-bottom: none;
    }
}
header,
header .headbox {
    position: relative;
}
header .site_title,
header h1 {
    margin: 0 0 0 45px;
    padding-top: 30px;
    padding-bottom: 15px;
}
@media (max-width:768px) {
      header h1,
      header .site_title {
        margin-left: 0;
        margin-bottom: 8px;
        padding-top: 15px;
        /*2018.10.09追記*/
        max-width: 60%;
        padding-right: 20px;
        padding-left: 20px;
        box-sizing: border-box;} }
header .site_title img,
header h1 img {
    vertical-align: middle;
}
@media (max-width:768px) {
    header .site_title img,
    header h1 img {
        max-width: 100%;
    }
}
header .head_rightbox {
    position: absolute;
    top: 14px;
    right: 45px;
}
@media (max-width:768px) {
    header .head_rightbox {
        top: 12px;
        right: 7px;
    }
}
header .head_rightbox img {
    width: 121px;
}
@media (max-width:768px) {
    header .head_rightbox img {
        width: 120px;
    }
}

@media (max-width:768px) {
    header #global_navi {
        position: static;
    }
}
footer .copyright_area aside ul,
header #global_navi ul {
    margin: 0;
    padding: 0;
}
@media (max-width:768px) {
    header #global_navi ul {
        border-bottom: 1px solid #FFECDC;
        *zoom: 1;
    }
    header #global_navi ul:after,
    header #global_navi ul:before {
        display: table;
        content: " ";
    }
    header #global_navi ul:after {
        clear: both;
    }
}
header #global_navi li {
    margin-right: 17px;
    list-style: none;
    display: inline-block;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 700;
}
@media (max-width:768px) {
    header #global_navi li {
        font-weight: 400;
        margin-right: 0;
        width: 100%;
        box-sizing: border-box;
    }
}
header #global_navi li a {
    display: block;
    color: #f09c11;
    padding: 18px 0 18px 55px;
    background-repeat: no-repeat;
    background-position: 0 50%;
}
@media (max-width:768px) {
    header #global_navi li a {
        border-top: 1px solid #FFECDC;
        padding: 12px 10px 12px 50px;
        background-size: 26px auto;
        background-position: 18px 50%;
    }
    header #global_navi li#here a{
    color: #a56501; 
    }
}
header #global_navi li a.home {
    background-image: url("../../share/img/nav_home.png");
}

header #global_navi li a.products {
    background-image: url("../../share/img/nav_products.png");
}

header #global_navi li a.history {
    background-image: url("../../share/img/nav_history.png");
}

header #global_navi li a.ad {
    background-image: url("../../share/img/nav_ad.png");
}


header #global_navi li a.cm {
    background-image: url("../../share/img/nav_cm.png");
}


header #global_navi li a.home:hover,
header #global_navi li#here a.home {
    background-image: url("../../share/img/nav_home_here.png");
}

header #global_navi li a.products:hover,
header #global_navi li#here a.products {
    background-image: url("../../share/img/nav_products_here.png");
}

header #global_navi li a.history:hover,
header #global_navi li#here a.history {
    background-image: url("../../share/img/nav_history_here.png");
}

header #global_navi li a.ad:hover,
header #global_navi li#here a.ad {
    background-image: url("../../share/img/nav_ad_here.png");
}


header #global_navi li a.cm:hover,
header #global_navi li#here a.cm {
    background-image: url("../../share/img/nav_cm_here.png");
}


footer {
    padding-bottom: 50px;
    background: #e8e9e8;
}
@media (max-width:768px) {
    footer {
        margin-top: 55px;
        padding-bottom: 30px;
    }
}
footer #gototop,
footer .sns_area {
    position: relative;
}
footer #gototop a {
    display: block;
    position: absolute;
    right: 0;
    top: -60px;
}
@media (max-width:768px) {
    footer #gototop a {
        top: -27px;
        width: 100%;
        height: 27px;
        background: #f39501;
    }
    footer #gototop a:before {
        content: "";
        position: absolute;
        top: 8px;
        left: 50%;
        margin-left: -10px;
        width: 20px;
        height: 12px;
        background: url("../../share/img/totop_sp.png") no-repeat 0 0/20px auto;
    }
    footer #gototop a img {
        display: none;
    }
}
footer .sns_area {
    z-index: 3000;
}
footer .sns_button {
    position: absolute;
    right: 40px;
    top: 40px;
}
@media (max-width:768px) {
    footer .sns_button {
        top: -80px;
        right: auto;
        left: 0;
        width: 100%;
    }
}
footer .sns_button_facebook {
    position: absolute;
    top: 0;
    right: 120px;
}
@media (max-width:768px) {
    footer .sns_button_facebook {
        top: -1px;
        right: auto;
        left: 50%;
        margin-left: -100px;
    }
}
footer .sns_button_twitter {
    position: absolute;
    top: 0;
    right: 0;
}
@media (max-width:768px) {
    footer .sns_button_twitter {
        right: 50%;
        margin-right: -100px;
    }
}
footer .copyright_area {
    position: relative;
}
footer .copyright_area aside {
    padding-left: 40px;
    padding-top: 79px;
    font-size: 14px;
    font-size: 0.875rem;
}
@media (max-width:768px) {
    footer .copyright_area aside {
        padding-left: 0;
        padding-top: 0;
        font-size: 18px;
        font-size: 1.125rem;
    }
    footer .copyright_area aside ul {
        border-bottom: 1px solid #c1c1c1;
    }
}
footer .copyright_area aside li {
    margin-right: 30px;
    display: inline-block;
    list-style: none;
}
@media (max-width:768px) {
    footer .copyright_area aside li {
        margin-right: 0;
        display: block;
        border-top: 1px solid #c1c1c1;
    }
}
footer .copyright_area aside li a {
    color: #393737;
    padding-left: 15px;
    background: url("../../share/img/ico_arrow.png") no-repeat 0 50%/10px auto;
}
@media (max-width:768px) {
    footer .copyright_area aside li a {
        padding-right: 25px;
        padding-top: 12px;
        padding-bottom: 12px;
        display: block;
        background-image: url("../../share/img/ico_arrow_sp.png");
        background-position: 96% 50%;
        background-size: 7px auto;
    }
}
footer .copyright_area .copyright {
    position: absolute;
    top: 33px;
    left: 40px;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 700;
}
@media (max-width:768px) {
    footer .copyright_area .copyright {
        padding-top: 30px;
        position: static;
        text-align: center;
    }
}
footer .copyright_area .copyright a {
    color: #393737;
}
footer .copyright_area .copyright img {
    margin-right: 8px;
    vertical-align: -2px;
}
@media (max-width:768px) {
    footer .copyright_area .copyright img {
        margin-right: 2px;
        width: 146px;
    }
}

a:focus,
a:hover {
    color: #007bd0;
    text-decoration: underline;
}
h1 a,
h1 a:hover,
h2 a,
h2 a:hover,
h3 a,
h3 a:hover,
h4 a,
h4 a:hover,
h5 a,
h5 a:hover,
h6 a,
h6 a:hover {
    color: #333;
    text-decoration: none;
}
#container,
#contents_title .page_description,
#contents_title h1 span,
footer #gototop,
footer .copyright_area,
footer .sns_area,
header .headbox {
    width: 1080px;
    margin-right: auto;
    margin-left: auto;
}
@media (max-width:768px) {
    #container,
    #contents_title .page_description,
    #contents_title h1 span,
    footer #gototop,
    footer .copyright_area,
    footer .sns_area,
    header .headbox {
        width: auto;
        margin-right: 0;
        margin-left: 0;
    }
}

#contents_title h1 {
    margin: 0;
    padding: 0;
    font-size: 40px;
    font-size: 2.5rem;
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: contain;
}

#contents_title h1 span img{
    width: 100%;
}
@media (max-width:768px) {
    #contents_title h1 {
        font-size: 30px;
        font-size: 1.875rem;
    }
}
#contents_title h1 span {
    display: block;
    padding-left: 40px;
    box-sizing: border-box;
}
@media (max-width:768px) {
    #contents_title h1 span {
        padding: 0;
        text-align: center;
    }
}
#container {
    padding-bottom: 70px;
}
@media (max-width:768px) {
    #container {
        padding-bottom: 90px;
    }
}
#container h2.page_title {
    margin: 0;
    padding: 100px 0 80px;
    font-size: 42px;
    font-size: 2.625rem;
    font-weight: 400;
    text-align: center;
}
@media (max-width:768px) {
    #container h2.page_title {
        padding-top: 47px;
        padding-bottom: 30px;
        font-size: 24px;
        font-size: 1.5rem;
        position: relative;
        box-sizing: border-box;
    }
}
#container h2.page_title span {
    padding: 34px 0 0;
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: auto 19px;
}
@media (max-width:768px) {
    #container h2.page_title span {
        margin-top: -21px;
        padding-top: 21px;
        background-position: 50% 0;
        padding-right: 15px;
        padding-left: 15px;
        display: block;
        background-size: auto 13px;
    }
}

/*----ここから----*/

body.ad #container .sp-comic-area{
    margin-bottom: 30px;
    text-align: center;
}

body.ad #container .sp-comic-area img{
    max-width: 100%;
    height: auto;
}

body.ad #container .sp-comic-area .sp-comic-caution{
    text-align: left;
}

body.ad #container .other-comic-list{
    padding: 0 15px;
    max-width: 700px;
    margin: 0 auto;
}

body.ad #container .other-comic-list h3{
    text-align: center;
}

body.ad #container .other-comic-list ul{
    list-style-type: none;
    padding-left: 15px;
}

body.ad #container .other-comic-list li{
    margin: 15px 0;
}

body.ad #container .other-comic-list li a{
    color: #393737;
    padding-left: 15px;
    background: url("../../share/img/ico_arrow.png") no-repeat 0 50%/10px auto;
}

/*--1812衣替え追記--*/
/*--トグルボタン--*/

#global_navi{
    display: none;
}

.headbox:after{
    content: "";
    display: block;
    clear: both;
}

@media (max-width:768px){
    
    header h1, header .site_title{
        float: left;
        margin-top: 20px;
    }    

    #toggle_menu{
        float: right;
        display: block;
        width: 50px;
        height: 50px;
        cursor: pointer;
        color: #fff;
        text-align: center;
        padding: 10px 0 10px 0;
        margin-top: 30px;
        margin-right: 15px;
        font-weight: 700;
        font-size: 1.2em;
        position: relative;
    }
    #toggle_menu .toggle_parts{
        display: block;
        width: 30px;
        height: 2px;
        background: #f39801;
        position: absolute;
        right: 10px;
    }
    #toggle_menu .toggle_parts:nth-of-type(1){
        top: 25px;
        
    }
    #toggle_menu .toggle_parts:nth-of-type(2){
        top: 35px;
    }
    #toggle_menu .toggle_parts:nth-of-type(3){
        top: 45px;
    }
    
    /*開いた後*/
    #toggle_menu.off .toggle_parts:nth-of-type(1){
        transform: rotate(45deg);
        top: 35px;
    }
    #toggle_menu.off .toggle_parts:nth-of-type(2){
        display: none;
    }
    #toggle_menu.off .toggle_parts:nth-of-type(3){
        transform: rotate(-45deg);
        top: 35px;
    }
    
    #toggle_menu.off .toggle_parts{
        background: #a56501;
    }
    
    #global_navi{
        clear: both;
    }
}



