@charset "UTF-8";
html {
    color: #434343;
    font-size: 18px;
    line-height: 1.5;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

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

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
    overflow: hidden;
}

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}


/* ==========================================================================
   Author's custom styles
   ========================================================================== */

body {
    font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    color: #626262;
    background: url(../img/back_texture.gif);
}

.wrapper {
    width: 960px;
    margin: 0 auto;
    background-color: white;
    box-shadow: -10px 10px 10px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: -10px 10px 10px rgba(0, 0, 0, 0.4);
    -webkit-box-shadow: -10px 10px 10px rgba(0, 0, 0, 0.4);
    -o-box-shadow: -10px 10px 10px rgba(0, 0, 0, 0.4);
    -ms-box-shadow: -10px 10px 10px rgba(0, 0, 0, 0.4);
}


/* リンク設定
------------------------------------------------------------*/

a {
    color: #1e2ac4;
    text-decoration: none;
    transition: all 2s ease 0s;
    -moz-transition: all 1s ease 0s;
    -webkit-transition: all 1s ease 0s;
    -o-transition: all 1s ease 0s;
    -ms-transition: all 1s ease 0s;
}

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

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

img {
    -webkit-transition: 0.6s;
    transition: 0.6s;
}

a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    /* Ie用 */
}


/* common
------------------------------------------------------------*/

.clear {
    clear: both;
}

.center {
    text-align: center;
}

.alignright {
    float: right;
    margin: 0;
}

.alignleft {
    float: left;
    margin: 0 1.5em;
}

ul {
    padding: 0;
}

ul li {
    list-style: none;
}

h1 {
    margin: 0;
    text-align: center;
    display: block;
}

h2 {
    clear: both;
    text-align: center;
    margin: 0;
}


/*************
/* ヘッダー
*************/

#header {
    width: 100%;
    background: #1b1b1b;
}


/*************
/* contents
*************/


/*  本紹介  */

.ad {
    background: url(../img/ad_back.png) no-repeat center top;
    width: 960px;
    height: 702px;
    margin-bottom: 20px;
}

.ad h2 {
    padding-top: 56px;
}

.ad .alignright {
    padding: 20px 50px 0 0;
}

.ad .ad_contents {
    padding: 20px 0 0 60px;
    overflow: hidden;
    font-weight: bold;
    color: #434343;
}

.ad .ad_contents dt {
    float: left;
    background: #f90417;
    margin-right: 12px;
    margin-bottom: 4px;
    padding: 0 4px;
    color: white;
}

.ad .ad_contents dd {
    margin-bottom: 4px;
    }

.ad .ad_contents .yellow {
    background: #f5e812;
    color: black;
}

.pub_form {
    clear: both;
    width: 780px;
    margin: 0 auto 20px;
    overflow: hidden;
    padding: 30px 0 0 60px;
    font-size: 24px;
    font-weight: bold;
    line-height: 2;
    color: black;
}

.pub_form dt {
    float: left;
    margin-right: 16px;
}

input:::-webkit-input-placeholder {
    color: #313131;
}

input::-moz-placeholder {
    color: #313131;
}

input[type="email"] {
    width: 500px;
    height: 50px;
    border-radius: 8px;
    border: #ccc 1px solid;
    padding-left: 4px;
    box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.4) inset;
    -moz-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.4) inset;
    -webkit-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.4) inset;
    -o-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.4) inset;
    box-shadow: -ms-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.4) inset;
    -webkit-appearance: none;
    /*iphone */
}

.bt_submit {
    width: 687px;
    height: 92px;
    background: url(../img/bt_submit.png) no-repeat center top;
    cursor: pointer;
    /*カーソルを指先型にします*/
    font-size: 0;
    border: none;
}

.bt_submit:hover {
    background: url(../img/bt_submit_a.png) no-repeat center top;
}


/*  その他  */

.text {
    padding: 10px 30px 0;
    line-height: 1.7;
}

.gray_back {
    margin: 40px 20px 30px;
    padding: 30px 20px;
    background: #eee;
    border: #626262 1px solid;
    color: #313131;
}

.gray_back h2 {
    margin: 10px 0 20px;
}

.gray_back .list01,
.gray_back .list02 {
    padding-left: 20px;
    font-weight: bold;
    line-height: 1.7;
}

.gray_back .list01 li {
    background: url(../img/list_style_r.gif) no-repeat left center;
    padding-left: 20px;
}

.gray_back .list02 li {
    background: url(../img/list_style_y.gif) no-repeat left center;
    padding-left: 20px;
}

.gray_back .list03 li {
    background: url(../img/check.gif) no-repeat left center;
    padding-left: 20px;
    font-size: 20px;
    border-bottom: #ad0310 1px dotted;
    line-height: 1.7;
    font-weight: bold;
}

.faq {
    margin: 20px;
}

.faq dt {
    background: url(../img/q_image.gif) no-repeat left top;
    min-height: 76px;
    padding: 0 0 0 90px;
    margin-top: 20px;
    font-size: 24px;
    color: #ad0310;
    font-weight: bold;
}

.faq dd {
    background: url(../img/a_image.gif) no-repeat left top;
    min-height: 76px;
    padding: 0 0 0 90px;
    margin: 20px 0 0 0;
    border-bottom: #ad0310 1px solid;
}

.yellow_back {
    margin: 40px 20px;
    padding: 30px 20px;
    background: #f8f7db;
    border: #626262 1px solid;
    color: #313131;
    line-height: 1.7;
}

.yellow_back h2 {
    margin-bottom: 40px;
}

.h2_syousai {
    text-align: left;
    margin: 20px 0 20px 20px;
    font-size: 20px;
}

.gaiyou_table {
    width: 920px;
    margin: 0 auto 30px;
    border-collapse: separate;
    border-spacing: 0px;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
}

.gaiyou_table th {
    width: 25%;
    padding: 4px;
    text-align: left;
    vertical-align: top;
    color: #444;
    background-color: #ccc;
    border-left: 3px double #999;
    border-top: 1px solid #fff;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.gaiyou_table td {
    width: 75%;
    padding: 4px 0 4px 8px;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.scroll_box {
    width: 900px;
    height: 70px;
    margin: 0 auto 30px;
    padding: 10px;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    /*スマホ用*/
    border: #ccc 1px solid;
    font-size: 14px;
}

.scroll_box dl dt {
    font-weight: bold;
}


/*************
/* フッター
*************/

footer {
    text-align: center;
}


/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}


/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }
    a,
    a:visited {
        text-decoration: underline;
    }
    a[href]:after {
        content: " (" attr(href) ")";
    }
    abbr[title]:after {
        content: " (" attr(title) ")";
    }
    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }
    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }
    thead {
        display: table-header-group;
    }
    tr,
    img {
        page-break-inside: avoid;
    }
    img {
        max-width: 100% !important;
    }
    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }
    h2,
    h3 {
        page-break-after: avoid;
    }
}