@charset "UTF-8";

/******************** CSS RESET ********************/

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

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;
    background: transparent;
}

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

body {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

img {
    max-width: 100%;
    vertical-align: bottom;
}

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

blockquote,
q {
    quotes: none;
}

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

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

address {
    font-style: normal;
}

input:not([type="radio"]):not([type="checkbox"]),
button,
textarea {
    padding: 0;
    margin: 0;
    background: none;
    border: none;
    border-radius: 0;
    -webkit-appearance: none;
}

input[type="radio"] {
    margin-top: 0;
    padding-top: 0;
}

input,
label {
    vertical-align: middle;
}

legend {
    width: 100%;
}


/******************** 共通設定 ********************/

body {
    font-family: arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #333;
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-overflow-scrolling: touch;
}

@media (min-width: 769px) {
    body {
        position: static !important;
        width: 100% !important;
    }
}


/**** テキスト ****/

p,
li {
    margin-top: 12px;
}

.small {
    font-size: 85%;
}


/**** リンク ****/

a:link {
    text-decoration: underline;
    color: #2b3095;
}

a:visited {
    text-decoration: underline;
    color: #791e78;
}

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

a:active {
    text-decoration: none;
    color: #9f0000;
}

.link_white:link {
    text-decoration: underline;
    color: #fff;
}

.link_white:visited {
    text-decoration: underline;
    color: #eee;
}

.link_white:hover {
    text-decoration: underline;
    color: #ffff00;
}

.link_white:active {
    text-decoration: underline;
    color: #ffff00;
}


/**** 別ウィンドウで開く ****/

.window {
    display: inline-block;
    font-size: 62.5%;
    font-weight: normal;
    background: #fdffd1;
    color: #333;
    border-radius: 4px;
    padding: 1px 4px;
    margin: 0 4px;
    border: 1px solid #d9d9d9;
    vertical-align: text-bottom;
    word-wrap: break-word;
}

h2 .window {
    font-size: 56.25%;
}

.main_naka h2 .window {
    font-size: 49%;
}


/**** 本文へ_スキップ用リンク ****/

.skip {
    position: relative;
    text-align: center;
    width: 100%;
    margin: 0;
}

.skip a {
    background-color: #fff;
    width: 1px;
    font-size: 0.1%;
    line-height: 0.1;
    position: absolute;
    top: auto;
    left: -3000px;
    z-index: 9999;
    padding: 4px 0;
}

.skip a:active,
.skip a:focus {
    display: block;
    width: 100%;
    margin: 0 auto;
    font-size: 100%;
    left: 0;
    right: 0;
    top: 0;
    line-height: 1.5;
}

.skip_sp {
    display: none;
}

@media only screen and (max-width: 768px) {
    .skip_sp {
        z-index: -1;
        position: absolute;
        margin: 0;
        display: block;
    }
}


/**** フォーム ****/

#body input,
header button,
#main_outline button,
footer button,
#body textarea {
    background: #fff;
    border: 1px solid #D9D9D9;
    font-size: 85%;
}


/* text,textarea */

#body input[type="text"],
#body input[type="file"],
#body textarea,
#body input[type="password"] {
    font-family: arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    background: #fff;
    border: 1px solid #999;
    padding: 8px 6px;
}


/* select */

#body select[size],
#body select[multiple],
#body select[size][multiple] {
    padding: 6px;
}


/* submit,reset,button */

#body input[type="submit"],
#body input[type="reset"],
header button[type="button"],
#main_outline button[type="button"],
footer button[type="button"],
header button,
#main_outline button,
footer button {
    background: #ffb100;
    cursor: pointer;
    color: #2b3095;
    display: inline-block;
    text-align: center;
    padding: 6px 16px;
}

#body input[type="submit"]:hover,
#body input[type="reset"]:hover,
header button[type="button"]:hover,
#main_outline button[type="button"]:hover,
footer button[type="button"]:hover,
header button:hover,
#main_outline button:hover,
footer button:hover {
    background: #ffdf98;
}


/**** その他 ****/

.anchor,
.notit {
    display: block;
    height: 1px;
    margin-top: -1px;
}

.date {
    font-size: 100%;
    color: #555;
    display: inline-block;
    margin-left: 12px;
}

.noscript {
    font-size: 85%;
    color: #a90000;
}

.none {
    display: none;
}


/******************** レイアウトCSS ********************/


/********************************************
2カラムの場合ここにliguid.cssをの中身をコピーして、
liguid.cssは削除する
********************************************/

.design {
    clear: both;
}

.zone01_in,
.zone02_in,
.zone03_in,
.zone04_in {
    padding: 0 12px;
    margin: 0 auto;
    max-width: 1220px;
}

@media only screen and (max-width: 768px) {
    .zone01 {
        float: none;
        width: 100%;
    }

    .zone02 {
        float: none;
        width: 100%;
    }
}


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

.main_header {
    background: #fff;
    width: 100%;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .main_header {
        overflow: hidden;
        margin-bottom: -4px;
    }
}


/**** ヘッダー上段リンク ****/

.h_top_wrap {
    background: #e8f4f9;
    border-bottom: 3px solid #007bbb;
    font-size: 75%;
    overflow: hidden;
}

.h_top {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 8px 0 0px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
}

.inbody .h_top {
    padding: 1px 0 0px;
}

.h_top .h_toplist01 {
    display: flex;
    align-items: center;
    margin: 4px auto 4px 0;
    margin: 4px 0 4px 0;
    justify-content: flex-end;
}

.h_top .h_toplist01>li {
    padding: 24px 9px 2px 9px;
    position: relative;
    border-left: 1px solid #FEB100;
    margin: 0;
}

.h_top .h_toplist01>li:nth-child(1) {
    background: url("img/h_top_img01.png") no-repeat center -10%;
}

.h_top .h_toplist01>li:nth-child(2) {
    background: url("img/h_top_img02.png") no-repeat center -10%;
}

.h_top .h_toplist01>li:nth-child(3) {
    background: url("img/h_top_img03.png") no-repeat center -10%;
}

.h_top .h_toplist01>li:nth-child(4) {
    background: url("img/h_top_img04.png") no-repeat center -10%;
}

.h_top .h_toplist01>li:last-child {
    margin: 0;
    padding: 24px 0 2px 8px;
    /*	padding: 12px 0px 12px 8px; 220715修正削除 */
    width: 210px;
    /* ▼ 220715修正追加 */
    background: url("img/h_top_img05.png") no-repeat center -10%;
    /* ▲ 220715修正追加 */
}

.h_top .h_toplist01>li a {
    font-size: 90%;
    letter-spacing: initial;
}

@media only screen and (max-width: 768px) {
    .h_top {
        display: none;
    }
}


/* フォントサイズ */

.font_size,
.font_tit,
.font,
.font_list,
.font_list li {
    float: left;
}

.font_size {
    font-size: 90%;
}

.font_tit {
    margin: 1px 2px 0 0;
}

.font_list li {
    margin: 0;
}

.font_list>li a {
    font-size: 90%;
    letter-spacing: initial;
    background-color: #FFB100;
    border: 1px solid #D9D9D9;
    padding: 3px;
    text-decoration: none;
}

.font_list>li:last-child a {
    background-color: #FDFFD1;
    border-left: none;
}


/* 言語選択 */

.lang_box {
    position: relative;
    margin: 0;
}

.lang_btn {
    padding: 0;
    margin: 0;
}

.lang_btn a {
    background: #FDFFD1;
    border: 1px solid #D9D9D9;
    display: inline-block;
    text-decoration: none;
    padding: 0px 35px 0px 9px;
    position: relative;
}

.lang_btn a::before {
    content: '';
    position: absolute;
    right: 6px;
    top: 50%;
    margin-top: -2px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 5px 0 5px;
    border-color: #FFB100 transparent transparent transparent;
}

.lang_btn a::after {
    content: '';
    position: absolute;
    right: 23px;
    background: #ffd984;
    width: 1px;
    height: 100%;
}

.lang_list {
    display: none;
    background: #fff;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 100;
    font-size: 75%;
    width: 100%;
}

.lang_list li {
    border: 1px solid #ccc;
    border-bottom: 0;
    padding: 0;
    margin: 0;
}

.lang_list li:last-child {
    border: 1px solid #ccc;
}

.lang_list li a {
    display: inline-block;
    padding: 6px 10px;
    width: 100%;
}


/**** ヘッダーメイン ****/

.head {
    padding: 0 12px;
}

.head_in {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.h_main {
    display: flex;
    align-items: center;
    padding: 12px 0 18px;
}

.inbody .h_main {
    padding: 12px 0px 12px;
}

.h_main .h1 {
    margin: 8px 0 0;
    width: 297px;
}

.inbody .h_main .h1 {
    margin: 0px 0 0;
    width: 230px;
}

.inbody .h_main .h1 a {
    text-decoration: none;
    display: block;
}

.inbody .h_main .h1 span {
    display: block;
    background-color: #ffb100;
    text-align: center;
    font-size: 80%;
    border: 1px solid #D9D9D9;
    margin-top: 4px;
}

.inbody .h_main .h1 a:hover span {
    background: #FDFFD1;
}

.h1_catch {
    margin: 9px auto 0px 16px;
    padding-right: 16px;
    width: 300px;
}

.h1_catch a {
    border: 1px solid #D9D9D9;
    display: block;
    border-radius: 4px;
    padding: 8px 8px;
    background-color: #FBFBFB;
    border-bottom: 3px solid #D9D9D9;
}

.h1_catch a:hover {
    background: #fdffd1;
}

@media only screen and (max-width: 768px) {
    .head {
        padding: 0;
    }

    .head_in {
        padding: 0;
        width: 100%;
    }

    .h_main {
        padding: 12px 12px;
        border-top: 3px solid #FFB100;
        z-index: 1;
        position: relative;
    }

    .inbody .h_main {
        border-bottom: 1px solid #d9d9d9;
    }

    .h_main .h1 {
        width: 170px;
        margin-top: 0;
    }

    .inbody .h_main .h1 {
        width: 170px;
    }

    .inbody .h_main .h1 span {
        display: none;
    }

    .h1_catch {
        margin: 0px auto 0px 16px;
        padding-right: 64px;
    }
}

@media only screen and (max-width: 480px) {
    .h_main {
        padding: 16px 60px 20px 12px;
    }

    .inbody .h_main {
        padding: 16px 60px 20px 12px;
    }

    .h1_catch {
        margin: 0px 10px 0px 16px;
        max-width: 120px;
        padding: 0;
    }
}


/* 検索ボックス */

.h_main .src_box {
    width: 100%;
}

.src_box .q {
    float: left;
    width: calc(100% - 57px) !important;
    margin: 0;
    height: 22px !important;
    padding: 0 6px !important;
    border: 1px solid #D9D9D9 !important;
    border-right: none;
    background-color: #FDFFD1 !important;
}

.h_main .src_box #search_button,
.src_box #search_button_sp {
    width: 57px;
    min-height: 22px;
    margin: 0;
    padding: 0 0 0 12px;
    color: #1A1F86;
    font-size: 80%;
    cursor: pointer;
    border: 1px solid #D9D9D9;
    border-left: none;
    white-space: normal;
    border-radius: 0;
    top: -2px;
    position: relative;
    background: #FFB100 url("img/search.png") no-repeat 17% center;
}

.h_main .src_box #search_button:hover,
.src_box #search_button_sp:hover {
    background: #ffdf98 url("img/search.png") no-repeat 17% center;
}

@media only screen and (max-width: 768px) {
    .h_main .src_box {
        display: none;
    }

    .src_box .q {
        width: calc(100% - 54px) !important;
        height: 32px !important;
    }

    .src_box #search_button_sp {
        width: 54px;
        height: 32px;
        top: 0px;
    }
}


/**** グローバルナビ ****/

.g_navi {
    border-top: 3px solid #FFB100;
    letter-spacing: 0.1em;
    position: relative;
    z-index: 1;
    padding: 0 12px;
}

.inbody .g_navi {
    border-bottom: 1px solid #D9D9D9;
}

.g_navi_in {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: flex;
}

.g_navi_in>li {
    width: 20%;
    border-right: 1px solid #D9D9D9;
    margin: 0;
    display: flex;
    position: relative;
}

.g_navi_in>li:nth-of-type(1) {
    border-left: 1px solid #D9D9D9;
}

.g_navi_in>li>a {
    display: block;
    position: relative;
    z-index: 2;
    border-bottom: 8px solid #FF4A4A;
    color: #333333;
    text-align: center;
    text-decoration: none;
    line-height: 1.5;
    font-size: 100%;
    padding-top: 14px;
    padding-bottom: 11px;
    width: 100%;
    letter-spacing: normal;
}

.g_navi_in>li:nth-child(2)>a {
    border-color: #FFA91F;
}

.g_navi_in>li:nth-child(3)>a {
    border-color: #F7E82B;
}

.g_navi_in>li:nth-child(4)>a {
    border-color: #30D144;
}

.g_navi_in>li:nth-child(5)>a {
    border-color: #39D4E3;
}

.g_navi_in>li:nth-child(6)>a {
    border-color: #4B74FF;
}

.g_navi_in>li:nth-child(7)>a {
    border-color: #C74BFF;
}

.g_navi_in>li>a>strong {
    display: block;
}

.g_navi_in>li:nth-child(1)>a:hover,
.g_navi_in>li:nth-child(1).active>a {
    background: #FFCFCF;
}

.g_navi_in>li:nth-child(2)>a:hover,
.g_navi_in>li:nth-child(2).active>a {
    background: #FFDEAA;
}

.g_navi_in>li:nth-child(3)>a:hover,
.g_navi_in>li:nth-child(3).active>a {
    background: #FFF8A5;
}

.g_navi_in>li:nth-child(4)>a:hover,
.g_navi_in>li:nth-child(4).active>a {
    background: #C1EEC7;
}

.g_navi_in>li:nth-child(5)>a:hover,
.g_navi_in>li:nth-child(5).active>a {
    background: #B6F5FB;
}

.g_navi_in>li:nth-child(6)>a:hover,
.g_navi_in>li:nth-child(6).active>a {
    background: #D0DBFF;
}

.g_navi_in>li:nth-child(7)>a:hover,
.g_navi_in>li:nth-child(7).active>a {
    background: #F0CEFF;
}

.g_navi_in_sub {
    opacity: 0;
    display: none;
}

.g_navi_in li.addactive .g_navi_in_sub {
    display: block;
    width: 200%;
    max-width: 592px;
    position: absolute;
    padding-top: 12px;
    top: 100%;
    left: 0;
}

.g_navi_in li:nth-child(3n).addactive .g_navi_in_sub {
    max-width: 600px;
}

.g_navi_in li:nth-child(7n).addactive .g_navi_in_sub {
    max-width: 600px;
    right: 0;
    left: auto;
}

.g_navi_in_sub::before {
    content: '';
    position: absolute;
    top: -3px;
    left: 24%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 14px 10px 0;
    border-color: transparent #FFB100 transparent transparent;
    transform: rotate(90deg);
}

.g_navi_in_sub div {
    position: absolute;
    background-color: #fff;
    padding: 0px 10px 10px 0;
    border: 1px solid #FFB100;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
    border-radius: 7px;
    left: auto;
    width: 100%;
    z-index: 1000;
}

.g_navi_in li:nth-child(7n).addactive .g_navi_in_sub::before {
    left: 75%;
}

.g_navi_in_sub li {
    margin-left: 20px;
}

.g_navi_in_sub a {
    position: relative;
    padding-left: 10px;
    display: block;
}

.g_navi_in_sub a::before {
    display: block;
    content: '';
    position: absolute;
    top: .45em;
    left: -6px;
    width: 8px;
    height: 8px;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    transform: rotate(-45deg);
}

@media only screen and (max-width: 768px) {
    .g_navi {
        display: none;
    }
}


/**** スマホメニューに関するスタイル ****/

#menu_button {
    display: inline-block;
    top: 17px;
    right: 12px;
    position: absolute;
    margin: 0;
}

#menu_button a {
    position: relative;
    background: #FFB100;
    color: #fff;
    font-size: 70%;
    display: inline-block;
    text-decoration: none;
    letter-spacing: -0.5px;
    text-align: center;
    padding-top: 34px;
    min-height: 54px;
    width: 54px;
    z-index: 2;
    text-shadow: #a46a0e 1px 1px 0, #a46a0e -1px -1px 0, #a46a0e -1px 1px 0, #a46a0e 1px -1px 0, #a46a0e 0px 1px 0, #a46a0e 0 -1px 0, #a46a0e -1px 0 0, #a46a0e 1px 0 0;
}

#menu_button a .icon_ham {
    position: absolute;
    top: 10px;
    left: 50%;
    margin-left: -15px;
    display: inline-block;
    background: #fff;
    height: 3px;
    width: 30px;
}

#menu_button a .icon_ham:before,
#menu_button a .icon_ham:after {
    content: '';
    position: absolute;
    left: 50%;
    margin-left: -15px;
    background: #fff;
    height: 3px;
    width: 30px;
}

#menu_button a .icon_ham:before {
    top: 8px;
}

#menu_button a .icon_ham:after {
    top: 16px;
}

@media print,
screen and (min-width: 769px) {

    #menu_button,
    #lan_drop {
        display: none !important;
    }
}

#sidr {
    position: fixed;
    top: 0;
    height: 100%;
    z-index: 9999;
    width: 260px;
    overflow-x: hidden;
    overflow-y: auto;
    font-size: 100%;
    background: #fff;
    border-left: 4px solid #FFB100;
    box-sizing: border-box;
    color: #333;
}

@media print,
screen and (min-width: 769px) {
    #sidr {
        display: none !important;
    }
}

#sidr .sidr-inner {
    padding: 0 0 15px;
}

.sidr.right {
    left: auto;
    right: -260px;
}

#sidr .close {
    text-align: left;
    position: relative;
    padding: 0;
    margin: 0;
}

#sidr .close a {
    background: #FFB100;
    display: inline-block;
    color: #fff;
    padding: 14px 10px 14px 32px;
    position: relative;
    width: 100%;
    text-shadow: #a46a0e 1px 1px 0, #a46a0e -1px -1px 0, #a46a0e -1px 1px 0, #a46a0e 1px -1px 0, #a46a0e 0px 1px 0, #a46a0e 0 -1px 0, #a46a0e -1px 0 0, #a46a0e 1px 0 0;
}

#sidr .close a:before,
#sidr .close a:after {
    content: '';
    background: #fff;
    height: 2px;
    width: 16px;
    position: absolute;
    left: 10px;
    top: 50%;
    margin-top: 0;
    transform: rotate(-45deg);
}

#sidr .close a:after {
    transform: rotate(45deg);
}

#sidr .src_box {
    padding: 10px;
    border-bottom: 3px solid #FFB100;
}

#sidr ul {
    display: block;
    border-bottom: 3px solid #FFB100;
    margin: 0;
    padding: 0;
}

#sidr ul li {
    background: none;
    border-bottom: 1px solid #FFB100;
    display: block;
    text-align: left;
    margin: 0;
    padding: 0;
    position: relative;
}

#sidr ul li::before {
    content: '';
    position: absolute;
    right: 12px;
    top: 50%;
    margin-top: -4px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    transform: rotate(45deg);
}

#sidr ul li:last-child {
    border-bottom: none;
}

#sidr ul li a {
    display: inline-block;
    padding: 12px 24px 12px 12px;
    text-decoration: none;
    width: 100%;
}

#sidr ul.sidr_navi_sub {
    display: flex;
}

#sidr ul.sidr_navi_sub li {
    border-bottom: 0;
    font-size: 85%;
    width: 50%;
}

#sidr ul.sidr_navi_sub li a {
    letter-spacing: -0.01em;
}

#sidr ul.sidr_navi_sub li:nth-child(odd) {
    border-right: 1px solid #FFB100;
}


/**** 支援機能 ****/

#sidr .side_shien {
    background: #FDFFD1;
    border-bottom: 3px solid #FFB100;
}

#sidr ul.sidr_navi02 {
    border-bottom: 0;
    padding: 10px 10px 4px;
    display: flex;
    flex-wrap: wrap;
}

#sidr ul.sidr_navi02 li {
    border: 0;
    margin-right: 1.25%;
    margin-bottom: 6px;
    width: 24%;
}

#sidr ul.sidr_navi02 li:nth-of-type(4n) {
    margin-right: 0;
}

#sidr ul.sidr_navi02 li::before {
    display: none;
}

#sidr ul.sidr_navi02 li a {
    display: inline-block;
    background: #fff;
    border: 1px solid #bbb;
    border-radius: 4px;
    font-size: 70%;
    letter-spacing: -0.01em;
    padding: 6px 2px;
    text-align: center;
}

#sidr ul.sidr_navi03 {
    display: flex;
    border-top: 1px solid #bbb;
}

#sidr ul.sidr_navi03 li {
    border-bottom: 0;
    font-size: 85%;
    width: 50%;
}

#sidr ul.sidr_navi03 li:nth-child(odd) {
    border-right: 1px solid #bbb;
}


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

.main_footer {
    background: #fff;
    overflow: hidden;
    width: 100%;
}

@media only screen and (max-width: 768px) {
    .main_footer {
        min-width: 100%;
    }
}


/**** マイページのスタイル ****/

.online_strage_a {
    padding-bottom: 24px;
}

.online_strage_a .mypage {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 0 12px;
}

.online_strage_a .mypage_h2_wrapper {
    background-color: #cbfced;
    padding-left: 16px;
    position: relative;
}

.online_strage_a .mypage_title {
    float: left;
    margin: 0;
    padding: 0;
    position: absolute;
    z-index: -1;
}

.online_strage_a .mypage_h2_wrapper p {
    float: right;
}

.online_strage_a .mypage_contents {
    background-color: #e2fff9;
    padding: 4px 16px 16px;
}

.online_strage_a .mypage_list li {
    display: inline-block;
    font-size: 85%;
}

.online_strage_a .mypage_list li p.online_strage_title {
    background: #fff;
    border: 1px solid #ccc;
    padding: 2px 8px;
    margin: 0;
    border-radius: 4px;
}

.online_strage_a .online_strage button {
    background: #fff;
    color: #333;
    font-size: 68.75%;
    padding: 2px 4px;
    margin: 12px 0;
    vertical-align: bottom;
}

#body .online_strage_a .online_strage button[type="button"] {
    background: #fff;
    color: #2b3095;
    font-size: 75%;
    padding: 4px 6px;
}

#body .online_strage_a .online_strage button[type="button"]:hover {
    background: #efefef;
    color: #9f0000;
}

@media only screen and (max-width: 768px) {
    .online_strage_a {
        padding: 0 0 24px;
    }

    .online_strage_a .mypage {
        width: 100%;
    }
}


/**** トップへ戻る ****/

.foot_modori {
    margin: 36px auto 20px;
    padding: 0 12px;
    max-width: 1224px;
    width: 100%;
}

.foot_modori .modoriin {
    text-align: right;
}

.foot_modori a {
    display: inline-block;
    text-decoration: none;
    background: #FEB100;
    border-bottom: 0;
    line-height: 1;
    padding: 15px 20px 15px;
    position: relative;
}

.foot_modori a::after {
    content: "";
    display: block;
    border: none;
    border-left: 3px solid #61594A;
    height: 21px;
    position: absolute;
    right: 50%;
    top: -13px;
}

.foot_modori a::before {
    content: "";
    display: block;
    border: none;
    border-top: 3px solid #61594A;
    width: 9px;
    transform: rotate(135deg);
    position: absolute;
    right: 50%;
    left: auto;
    top: -10px;
    height: 0;
}

.foot_modori a:hover {
    background: #ffcf62;
}

@media only screen and (max-width: 768px) {
    .foot_modori .modoriin {
        padding: 0 10px;
        width: 100%;
    }
}


/**** メインフッター ****/

.foot_wrap {
    border-top: 3px solid #FFB100;
    background: #fff;
    padding: 0;
}

.foot_link {
    border-bottom: 1px solid #D9D9D9;
}

.foot_link_in {
    padding: 10px 12px;
    max-width: 1224px;
    width: 100%;
    margin: 0 auto;
}

.foot_link li {
    padding: 0;
    display: inline-block;
    position: relative;
    margin: 8px 16px;
}

.foot_link li::after {
    display: block;
    content: '';
    position: absolute;
    top: .5em;
    left: -16px;
    width: 8px;
    height: 8px;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    transform: rotate(-45deg);
}

.foot_id {
    padding: 16px 12px;
    max-width: 1224px;
    width: 100%;
    margin: 0 auto;
}

.foot_id .foot_name {
    font-size: 120%;
}

.foot .address {
    margin-top: 8px;
}

.foot .address a[href^="tel:"] {
    cursor: default;
    color: #222;
    text-decoration: none;
}

.foot_copy {
    background: #FEB100;
    font-size: 85%;
    padding: 8px 12px;
    margin-top: 16px;
    text-align: center;
}

.foot_copyin {
    width: 1000px;
    margin: 0 auto;
}

@media only screen and (max-width: 768px) {
    .foot {
        width: 100%;
    }

    .foot_copyin {
        padding: 0 10px;
        width: 100%;
    }

    .foot .address a[href^="tel:"] {
        cursor: pointer;
        color: #2b3095;
        text-decoration: underline;
    }
}


/********************** 領域共通のスタイル **********************/

.main {
    width: 100%;
    padding: 0 0 24px;
    background-color: #fff;
    position: relative;
    overflow: hidden;
}

.main h2 {
    background: #fff;
    padding: 19px 16px;
    font-size: 120%;
    text-align: center;
    border-bottom: 3px solid #FFB100;
    display: flex;
    justify-content: center;
    align-items: center;
}

.main h2 a {
    display: block;
}

.main .h2 {
    background: #fff;
    overflow: hidden;
    border-bottom: 3px solid #ffb100;
}

.main .h2 p {
    float: right;
    padding: 18px 16px 14px 8px;
    margin: 0;
}

.main .h2 h2 {
    float: left;
    border-bottom: none;
}

.main li {
    position: relative;
    padding-left: 16px;
    border: none;
}

.main li::before {
    display: block;
    content: '';
    position: absolute;
    top: .5em;
    left: 2px;
    width: 8px;
    height: 8px;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    transform: rotate(-45deg);
}

.main li .list_icon img {
    vertical-align: middle;
    margin-top: -5px;
    margin-right: 4px;
    max-height: 18px;
}

@media only screen and (max-width: 768px) {
    .main {
        padding: 0 0 24px;
    }
}


/**** タイトル要素 アコーディオンのスタイル ****/

.ac_display {
    display: none;
}

@media print,
screen and (min-width: 769px) {
    .ac_box {
        pointer-events: none !important;
    }

    .ac_box+div {
        display: block !important;
    }
}

@media only screen and (max-width: 768px) {
    .ac_box h2 {
        padding-right: 72px;
    }

    .ac_display {
        display: inline-block;
        position: absolute;
        top: 50%;
        margin: -14px 0 0;
        right: 12px;
        font-size: 72%;
        background: #fff;
        border: 1px solid #ccc;
        z-index: 100;
    }

    .ac_display a {
        display: inline-block;
        position: relative;
        text-decoration: none;
        padding: 4px 4px 4px 18px;
    }

    .ac_display::before,
    .ac_display::after {
        content: '';
        background: #555;
        position: absolute;
        left: 4px;
        top: 11px;
        height: 2px;
        width: 10px;
    }

    .ac_display::after {
        transform: rotate(90deg);
    }

    .ac_box+div {
        display: none;
    }

    .ac_box {
        position: relative;
        width: 100%;
        overflow: hidden;
    }

    .ac_box.active p::after {
        display: none;
    }
}


/**** 緊急情報のスタイル ****/

.emergency {
    margin-top: 24px;
}

.main_header .emergency {
    max-width: 1224px;
    margin: 0 auto 16px;
    padding: 0 12px;
}

.main_header .emergency .h2 {
    overflow: hidden;
    background: #ce2626;
}

.main_header .emergency .h2 p {
    float: right;
    padding: 14px 16px 14px 8px;
    margin: 0;
}

.main_header .emergency .rss_icon2 {
    margin-left: auto;
}

.main_header .emergency h2 {
    background: #ce2626;
    color: #fff;
    padding: 12px 16px;
    font-size: 120%;
    float: left;
}

.main_header .emergency_lower {
    border: 1px solid #ce2626;
    border-top: none;
    padding: 4px 16px 16px;
}


/**** スライドショーのスタイル ****/

.vis {
    position: relative;
}

.vis h2 {
    padding: 0;
    margin: 0;
    height: 0;
    border: none;
}

.vis .vis_bg {
    position: relative;
}

.vis .slick-slide {
    position: relative;
}

.vis .slick-slide::after {
    position: absolute;
    content: "";
    background: url("img/wave.png") repeat-x;
    height: 24px;
    bottom: 5px;
    width: 100%;
}

.vis .vis_bg li {
    margin: 0;
    padding: 0;
}

.vis .vis_bg li::before {
    display: none;
}

.vis .vis_bg li a {
    display: block;
}

.kanko {
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    padding: 0 12px;
}

.kanko_link {
    position: absolute;
    bottom: 34px;
    right: 20px;
    height: auto;
    width: 248px;
    margin: 0 12px;
    transition: .2s;
}

.kanko_link:hover {
    transform: rotate(5deg);
}

@media only screen and (max-width:768px) {
    .kanko_link {
        position: relative;
        bottom: 0;
        right: auto;
        margin: 20px 0 0;
        width: 100%;
        text-align: center;
    }

    .kanko_link:hover {
        transform: none;
    }

}


/**** 画像リストのスタイル ****/

.ilist {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.zone04 .ilist {
    border: none;
}

.main .ilist_lower ul {
    display: flex;
    flex-flow: row wrap;
    background-color: #fff;
}

.main .ilist_lower ul>li {
    padding-left: 0;
    margin-right: 12px;
    text-align: center;
    width: calc((100% - 60.1px) / 6);
}

.main .ilist_lower ul>li:nth-of-type(6n) {
    margin-right: 0;
}

.main .ilist_lower ul>li::before {
    display: none;
}

.main .ilist_lower ul>li a {
    display: block;
    height: 100%;
    width: 100%;
    text-decoration: none;
}

.main .ilist_lower ul>li .ilist_in {
    padding: 16px;
    height: 100%;
    width: 100%;
}

.main .ilist_lower .ilist_right {
    margin-top: 8px
}

.main .ilist_lower ul>li .ilist_title {
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}

.main .ilist_lower ul>li .ilist_text {
    text-align: left;
    font-size: 85%;
    margin-top: 0;
}

.ilist .ilist_title {
    margin-top: 0;
}

@media only screen and (max-width: 768px) {
    .main .ilist_lower ul>li {
        width: calc((100% - 36.1px) / 3);
    }

    .main .ilist_lower ul>li:nth-of-type(3n) {
        margin-right: 0;
    }
}

@media only screen and (max-width: 480px) {
    .main .ilist_lower ul>li:nth-of-type(n) {
        margin-right: 0;
        width: 100%;
    }
}


/**** 画像リスト2のスタイル ****/

.ilist2 {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .ilist2_lower ul {
    display: flex;
    flex-flow: row wrap;
    margin-top: 8px;
}

.main .ilist2_lower ul>li {
    padding-left: 0;
    margin-right: 12px;
    width: calc((100% - 36.1px) / 4);
}

.main .ilist2_lower ul>li:nth-of-type(4n) {
    margin-right: 0;
}

.main .ilist2_lower ul>li::before {
    display: none;
}

.main .ilist2_lower ul>li a {
    display: block;
    height: 100%;
    width: 100%;
    text-decoration: none;
}

.main .ilist2_lower ul>li .ilist_in {
    padding: 16px;
    display: flex;
    height: 100%;
    width: 100%;
}

.main .ilist2_lower ul>li .ilist_left {
    align-self: center;
    width: 40%;
}

.main .ilist2_lower ul>li .ilist_right {
    align-self: center;
    width: 54%;
    margin-left: 6%;
}

.ilist2 .ilist_title {
    margin-top: 0;
}

.ilist2 .ilist_title strong {
    display: block;
    width: 100%;
}

@media only screen and (max-width: 768px) {
    .main .ilist2_lower ul {
        margin-top: 0;
    }

    .main .ilist2_lower ul>li {
        width: calc((100% - 24.1px) / 2);
    }

    .main .ilist2_lower ul>li:nth-of-type(3n) {
        margin-right: 12px;
    }

    .main .ilist2_lower ul>li:nth-of-type(even) {
        margin-right: 0;
    }
}

@media only screen and (max-width: 480px) {
    .main .ilist2_lower ul {
        display: block;
    }

    .main .ilist2_lower ul>li:nth-of-type(n) {
        margin-right: 0;
        width: 100%;
    }
}


/**** 分類のスタイル ****/

.category {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.category2 {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.category3 {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.category4 {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.category5 {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .category_3_ul {
    font-size: 85%;
}

.main .category_lower {
    border-top: none;
    padding: 4px 16px 16px;
}


/**** 各課の窓口のスタイル ****/

.kakuka {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}


/**** 催し物・講座のスタイル ****/

.event {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .event_lower {
    background: #fff;
    border-top: none;
    padding: 4px 16px 16px;
}

.main .event_lower li {
    padding-left: 0;
}

.main .event_lower li::before {
    display: none;
}

.main .event_lower li .eve_cate {
    display: inline-block;
    font-size: 85%;
    background: #007bbb;
    color: #fff;
    border-radius: 4px;
    padding: 4px 4px 2px;
    margin-right: 8px;
    text-align: center;
    vertical-align: top;
    line-height: 1;
    min-width: 80px;
}

.main .event_lower .event_month li {
    margin-right: 8px;
    display: inline-block;
    font-size: 130%;
    margin-top: 8px;
    margin-bottom: 4px;
}

.main .event_lower .event_month img {
    vertical-align: middle;
}

.event_month li.pre a,
.event_month li.next a {
    display: inline-block;
    background: #E6E6E6;
    border: 1px solid #aaa;
    font-size: 81.25%;
    margin-bottom: 10px;
    text-decoration: none;
    padding: 0 5px;
    position: relative;
}

.event_month li.pre a {
    padding-left: 16px;
}

.event_month li.next a {
    padding-right: 15px;
}

.event_month li.pre a::before,
.event_month li.next a::before {
    content: '';
    position: absolute;
    top: 50%;
    margin-top: -4px;
    width: 0;
    height: 0;
    border-style: solid;
}

.event_month li.pre a::before {
    left: 4px;
    border-width: 4px 6px 4px 0;
    border-color: transparent #555 transparent transparent;
}

.event_month li.next a::before {
    right: 4px;
    border-width: 4px 0 4px 6px;
    border-color: transparent transparent transparent #555;
}


/**** イベントカレンダーのスタイル ****/

.calendar {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .calendar_lower {
    overflow: auto;
    background: #fff;
    padding: 4px 16px 16px;
}

.main .calendar_lower li {
    padding-left: 0;
}

.main .calendar_lower li::before {
    display: none;
}

.main .calendar_lower .event_month li {
    margin-right: 8px;
    display: inline-block;
}

.main .calendar_lower .event_month img {
    vertical-align: middle;
}

.main .calendar table {
    width: 100%;
}

.main .calendar caption {
    display: none;
}

.main .calendar th {
    border: 1px solid #ccc;
    text-align: center;
}

.main .calendar th img {
    vertical-align: middle;
}

.main .calendar td {
    border: 1px solid #ccc;
    text-align: center;
}

.main .calendar .sun {
    background: #ffd8d6;
}

.main .calendar .sat {
    background: #d9e4fc;
}

.main .calendar .today {
    background: #ce2626;
    color: #fff;
}

.main .calendar .today a {
    color: #fff;
}


/**** 新着情報のスタイル ****/

.new {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .new_lower {
    border-top: none;
    padding: 4px 16px 16px;
    background: #fff;
}

.main .new div.date {
    margin-left: 0;
    padding-left: 16px;
}

.main .new ul li {
    margin-top: 16px;
    padding: 0;
    overflow: hidden;
}

.main .new ul li.catch_lst .new_lst {
    margin-right: 100px;
}

.main .new ul li.catch_lst .new_img {
    float: right;
    margin-top: 0;
}

.main .new .more li {
    margin: 0;
    padding-right: 24px;
}

@media only screen and (max-width: 480px) {
    .main .new .more li {
        padding-right: 0px;
        margin-top: 10px;
    }

    .main .new .more li:first-child {
        margin-top: 0;
    }
}


/**** トピックスのスタイル ****/

.topics {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .topics_lower {
    border-top: none;
    padding: 4px 16px 16px;
    background: #fff;
}

.main .topics div.date {
    margin-left: 0;
}

.main .topics ul li {
    overflow: hidden;
    margin-top: 16px;
}

.main .topics ul li.catch_lst .topics_lst {
    margin-right: 100px;
}

.main .topics ul li.catch_lst .topics_img {
    float: right;
    margin-top: 0;
}

.main .topics .more li {
    margin: 0;
    padding-right: 20px;
}

@media only screen and (max-width: 480px) {
    .main .topics .more li {
        padding: 0;
        margin-top: 10px;
    }

    .main .topics .more li:first-child {
        margin-top: 0;
    }
}


/**** 新着情報・トピックス一覧のスタイル ****/

.main .more {
    font-size: 85%;
    margin-top: 16px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-left: auto;
}

.main .more li {
    padding: 0 20px 0 0;
    margin: 8px 0 0 8px;
    min-width: 224px;
    overflow: hidden;
    font-size: 120%;
}

.main .more li::before {
    content: "";
    display: block;
    border: none;
    border-top: 2px solid #61594A;
    width: 18px;
    transform: rotate(-145deg);
    position: absolute;
    right: 2px;
    left: auto;
    top: calc(50% - 5px);
    height: 0;
}

.main .more li::after {
    content: "";
    display: block;
    border: none;
    border-top: 2px solid #61594A;
    width: 40px;
    position: absolute;
    right: 3px;
    top: 50%;
}

.main .more li a {
    background: #FFF14B;
    display: inline-block;
    padding: 10px 16px 10px 10px;
    text-align: center;
    text-decoration: none;
    width: 100%;
}

.main .more li a:hover {
    background: #fff68a;
}

.main .more li.rss span {
    background: url(../images/rss_o.svg) no-repeat left center;
    background-size: 12px 12px;
    padding-left: 20px;
}

@media only screen and (max-width: 480px) {
    .main .more {
        max-width: 100%;
    }

    .main .more li {
        margin-left: 0;
        width: 100%;
    }

    .main .more li a {
        padding: 10px;
    }
}


/**** タブ切り替えのスタイル ****/

.main .free_tab {
    margin-top: 20px;
}

.main .free_tab .tab_index {
    display: flex;
    justify-content: space-between;
    border-bottom: 3px solid #FFB100;
    margin-bottom: -25px;
}

.main .free_tab .tab_index .tab_change {
    text-align: center;
    display: flex;
    font-size: 120%;
    width: 49.5%;
}

.main .free_tab .tab_index .tab_change a {
    border: 1px solid #D9D9D9;
    border-right: none;
    border-bottom: 0;
    display: inline-block;
    padding: 18px 10px 18px;
    width: 100%;
    text-decoration: none;
    background-color: #FDFFD1;
}

.main .free_tab .tab_index .tab_change:last-child a {
    border-right: 1px solid #D9D9D9;
}

.main .free_tab .tab_index .tab_change.is-active a {
    background: #FFB100;
    color: #333;
    border: none;
}

.main .free_tab li.tab_panel {
    margin: 0;
    padding: 0;
}

.main .free_tab li.tab_panel::before {
    display: none;
}

.main .free_tab h2 {
    background: none;
    position: absolute;
    z-index: -1;
}

.main .free_tab .new_lower,
.main .free_tab .topics_lower,
.main .ranking_lower {
    background: #fff;
    border-top: none;
}

@media only screen and (max-width: 768px) {
    .main .free_tab .tab_index .tab_change a {
        padding: 10px 0;
        font-size: 80%;
    }
}


/**** ピックアップ1のスタイル ****/

.pickup {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .pickup_lower {
    padding: 8px 18px 14px;
    background: #fff;
}

.main .pickup_lower .pickup_sub {
    margin-top: 16px;
}

.main .pickup_lower .pickup_sub:first-child {
    margin-top: 12px;
}

.main .pickup_lower .pickup_sub h3 {
    background: #CBFCED;
    padding: 11px 16px;
    font-size: 100%;
}

.main .pickup_lower .pickup_sub p {
    font-size: 85%;
    margin-top: 6px;
}


/**** ピックアップ2のスタイル ****/

.pickup2 {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .pickup2_lower {
    border-top: none;
    padding: 4px 16px 16px;
    background: #fff;
}

.main .pickup2_lower .pickup_sub {
    margin-top: 20px;
}

.main .pickup2_lower .pickup_sub:first-child {
    margin-top: 12px;
}

.main .pickup2_lower .pickup_sub h3 {
    background: #CBFCED;
    padding: 11px 16px;
    font-size: 110%;
}

.main .pickup2_lower .pickup_sub p {
    font-size: 85%;
    margin-top: 6px;
}


/**** ランキングのスタイル ****/

.ranking {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .ranking_lower {
    border-top: none;
    padding: 4px 16px 16px 16px;
}

.main .ranking_lower ol {
    margin-left: 24px;
}

.main .ranking_lower ol li {
    list-style-type: decimal;
    padding-left: 0;
}

.main .ranking_lower ol li::before {
    display: none;
}


/**** 人口・世帯数のスタイル ****/

.j_s {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .j_s_lower {
    border-top: none;
    padding: 4px 16px 16px;
    background: #fff;
}

.main .j_s li {
    padding-left: 0;
}

.main .j_s li::before {
    display: none;
}

.main .j_s li strong {
    margin-right: 8px;
}

.main .j_s p {
    font-size: 85%;
}

@media only screen and (max-width: 480px) {
    .main .j_s li strong {
        width: 100%;
        display: block;
    }
}


/**** バナー広告のスタイル ****/

.bana {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.bana_lower {
    border-top: none;
    padding: 4px 16px 16px;
    text-align: center;
    background: #fff;
}

.bana .bana_img {
    display: inline-block;
}

.main .bana ul {
    display: flex;
    flex-wrap: wrap;
}

.main .bana li {
    padding-left: 0;
    width: 154px;
    margin-right: 4px;
    margin-left: 4px;
}

.main .bana li::before {
    display: none;
}

.main .bana li img {
    width: 100%;
}

.main .bana li .window {
    margin-top: 5px;
}

@media only screen and (max-width: 768px) {
    .main .bana li {
        margin: 12px 0 0;
        padding: 0 4px;
        width: calc(100% / 3);
    }
}

@media only screen and (max-width: 480px) {
    .main .bana li {
        width: 50%;
    }
}


/**** RSSのスタイル ****/

.rss {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.rss .rss_lower {
    background: #fff;
    border-top: none;
    padding: 4px 16px 16px;
}

.main .rss li {
    padding-left: 0;
}

.main .rss li::before {
    display: none;
}

.rss_body .rss_icon {
    margin-left: 10px;
}

.rss_body h2 a.rss_icon {
    font-size: 68.75%;
    font-weight: normal;
    margin-bottom: 4px;
}


/**** 外部RSSのスタイル ****/

.rssfide {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .rssfide .h3 {
    overflow: hidden;
}

.main .rssfide .h3 h3 {
    float: left;
    margin: 10px 12px 10px 0;
}

.main .rssfide .h3 p {
    float: left;
    padding: 8px 0;
    margin: 0;
}

.rssfide .rssfide_lower {
    background: #fff;
    border-top: none;
    padding: 4px 16px 16px;
}

.rssfide .rssfide_management {
    background: #e7fffa;
    font-size: 85%;
    padding: 8px;
    margin-top: 12px;
}

.rssfide .rssfide_management .title {
    margin: 0 0 8px;
    padding: 0 0 4px;
    border-bottom: 1px solid #aaa;
}

.rssfide .rssfide_management .rssfide_copy {
    margin-top: 6px;
}

.main .rssfide .rssfide_management li {
    padding: 0;
    margin: 0;
}

.main .rssfide .rssfide_management li::before {
    display: none;
}

.main .rssfide .rssfide_list li p {
    padding: 0;
    margin: 0;
}

.main .rssfide .rssfide_list li .list p {
    font-size: 85%;
    margin-top: 4px;
}


/**** RSSアイコンのスタイル ****/

a.rss_icon,
a.rss_icon2 {
    background: #FF8F21;
    display: inline-block;
    color: #fff;
    text-decoration: none;
    text-shadow: 1px 1px 1px #b45c00, -1px 1px 1px #b45c00, 1px -1px 1px #b45c00, -1px -1px 1px #b45c00, 1px 0 1px #b45c00, 0px 1px 1px #b45c00, -1px 0 1px #b45c00, 0 -1px 1px #b45c00;
    vertical-align: middle;
    padding: 5px 5px 5px 7px;
    line-height: 1.1;
    position: relative;
    vertical-align: middle;
}

a.rss_icon {
    font-size: 90%;
}

a.rss_icon2 {
    font-size: 68.75%;
    padding: 3px 28px 1px 6px;
}

a.rss_icon img {
    margin-left: 4px;
    margin-top: -3px;
    height: auto;
    width: 16px;
    vertical-align: middle;
}

a.rss_icon2 img {
    position: absolute;
    top: 50%;
    margin-top: -9px;
    right: 6px;
    height: auto;
    width: 16px;
    vertical-align: middle;
}


/**** リンク・画像領域（画像）のスタイル ****/

.image {
    text-align: center;
    margin-top: 20px;
}

.main .image h2 {
    background: none;
    padding: 0;
    border: none;
    display: block;
}

.image .image_img {
    display: block;
}


/**** リンク・画像領域（テキスト）のスタイル ****/

.link {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}


/**** RSS一覧のスタイル ****/

.rss_list {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}


/**** オプションのスタイル ****/

.option {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .option_lower {
    border-top: none;
    padding: 4px 16px 16px;
    background: #fff;
}


/**** FAQ（よくある質問）のスタイル ****/

.faq {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}


/**** 新着FAQ ****/

.faq_new {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .faq_new_lower {
    border-top: none;
    padding: 4px 16px 16px;
    background: #fff;
}

.main .faq_new div.date {
    margin-left: 0;
}

.main .faq_new_lower p {
    font-size: 85%;
    margin-top: 4px;
}


/**** 見られているFAQのスタイル ****/

.popular {
    margin-top: 24px;
    border: 1px solid #D9D9D9;
}

.main .popular_lower {
    background: #fff;
    border-top: none;
    padding: 4px 16px 16px;
}

.main .popular_lower p {
    font-size: 85%;
    margin-top: 4px;
}


/********************** 領域1個別のスタイル **********************/

.zone01_in_cover {
    overflow: hidden;
}

.zone01_left {
    width: 65.5%;
    float: left;
}

.zone01_right {
    width: calc(35% - 36px);
    float: right;
    padding-top: 4px;
}

@media only screen and (max-width: 768px) {
    .zone01_left {
        float: none;
        width: 100%;
    }

    .zone01_right {
        width: 100%;
        float: none;
        padding: 0;
    }
}


/****大切なお知らせのスタイル ****/

.main .important h2::before {
    content: "";
    background: url("img/h2_icon_imp.png") no-repeat;
    height: 40px;
    min-width: 40px;
    display: inline-block;
    margin-right: 8px;
}


/**** 領域1右側のスタイル ****/

.free {
    margin-top: 20px;
    border: 1px solid #D9D9D9;
}

.main .safety h2::before {
    content: "";
    background: url("img/h2_icon_saf.png") no-repeat;
    height: 40px;
    min-width: 40px;
    display: inline-block;
    margin-right: 8px;
}

.main .onlineser h2::before {
    content: "";
    background: url("img/h2_icon_onl.png") no-repeat;
    height: 40px;
    min-width: 40px;
    display: inline-block;
    margin-right: 8px;
}

.main .infosearch h2::before {
    content: "";
    background: url("img/h2_icon_inf.png") no-repeat;
    height: 40px;
    min-width: 40px;
    display: inline-block;
    margin-right: 8px;
}

.free_lower {
    padding: 6px 18px 14px;
    background: #fff;
}

@media only screen and (max-width: 768px) {
    .free_lower ul {
        overflow: hidden;
    }

    .free_lower li {
        width: calc(50% - 16px);
        float: left;
        margin-right: 16px;
    }

    .free_lower li:nth-child(2n) {
        margin-right: 0;
    }
}


/**** 領域1ピックアップスライドのスタイル ****/

.free_pickup {
    margin-top: 40px;
    margin-bottom: 40px;
}

.free_pickup h2 {
    padding: 0;
    border: none;
}

.free_pickup .slick-list {
    max-width: 1110px;
    left: calc(50% - 565px);
}

.free_pickup .slick_nav {
    bottom: 0;
    padding: 8px 0;
    position: relative;
    justify-content: flex-end;
    left: auto;
}

#body .free_pickup .slick-dots li.slick-active button {
    border: none;
}

#body .free_pickup .slick-dots li button {
    border: 1px solid #D9D9D9;
}

@media only screen and (max-width: 1000px) {
    .free_pickup .slick-list {
        left: auto;
        margin: 0 50px 0 30px;
        max-width: 100%;
        width: calc(100% - 80px);
        padding: 0 1px 0 0;
    }
}

@media only screen and (min-width: 769px) {
    .main .zone0102 .zone01 .ilist_lower ul>li {
        margin-right: 0;
        width: 100%;
    }

    .main .zone0102 .zone01 .ilist2_lower ul>li {
        margin-right: 0;
        width: 100%;
    }

    .main .zone0102 .zone01 .more li {
        margin-left: 0;
        width: 100%;
    }

    .main .zone0102 .zone01 .bana ul {
        justify-content: center;
    }
}


/********************** 領域2個別のスタイル **********************/

.zone02 {
    background: #FFF5F5;
    padding-top: 30px;
    padding-bottom: 48px;
}


/**** 南房総市のいまのスタイル ****/

.zone02 .free_lower {
    overflow: hidden;
}

.free .j_s {
    width: 32.5%;
    float: left;
    margin-top: 14px;
    border: none;
}

.free .j_s h3 {
    background: #CBFCED;
    padding: 8px 0;
    text-align: center;
}

.main .free .j_s_lower {
    border: none;
    padding: 0;
}

.main .free .j_s_lower ul {
    padding: 0px 26px 10px 36px;
    overflow: hidden;
}

.main .free .j_s li {
    width: calc(50% - 16px);
    float: left;
    margin-right: 16px;
}

.main .free .j_s li:nth-child(2n) {
    margin-right: 0px;
}

.main .free .j_s p {
    text-align: right;
    margin: 0;
}

.free_lower .ilist2 {
    float: right;
    width: calc(67.5% - 20px);
    margin-top: 14px;
    border: none;
}

.free_lower .ilist2 h3 {
    background: #CBFCED;
    padding: 8px 0;
    text-align: center;
}

.main .free_lower .ilist2_lower ul>li {
    width: calc((100% - 24.1px) / 3);
    padding: 0px 0px 0px 22px;
}

.main .free_lower .ilist2_lower ul>li:last-child {
    margin-right: 0;
}

.free_lower .ilist2_lower ul>li .ilist_in {
    padding: 0px;
}

.main .free_lower .ilist2_lower ul>li .ilist_left {
    width: 50%;
}

.main .free_lower .ilist2_lower ul>li .ilist_right {
    width: 100%;
    margin-left: 12px;
}

@media only screen and (max-width: 768px) {
    .free .j_s {
        width: 100%;
        float: none;
    }

    .free_lower .ilist2 {
        width: 100%;
        float: none;
    }

    .main .free_lower .ilist2_lower ul>li {
        margin-top: 6px;
    }
}

@media only screen and (max-width: 480px) {
    .main .free_lower .ilist2_lower ul>li {
        width: 100%;
        margin-top: 18px;
    }

    .main .free_lower .ilist2_lower ul>li .ilist_left {
        text-align: center;
    }

    .main .ilist2_lower ul {
        padding-bottom: 10px;
    }

    .main .free .j_s_lower ul {
        padding: 0 16px 10px 16px;
    }
}


/**** 南房総市の話題のスタイル ****/

.main .free_news {
    position: relative;
}

.main .free_news h2 {
    background: none;
    border: none;
    position: absolute;
    padding: 0;
    top: -80px;
}

.main .free_news .pickup_bg {
    background: #fff;
    padding: 90px 0 20px;
    margin-top: 100px;
}

.main .free_news .slick-list {
    max-width: 1110px;
    left: calc(50% - 565px);
}

.main .free_news .slick-slide li a {
    border: 1px solid #D9D9D9;
}

.main .free_news .slick-prev,
.main .free_news .slick-next {
    top: 100px;
}

.main .free_news .slick_nav {
    bottom: 0;
    padding: 16px 0 8px;
    position: relative;
    justify-content: flex-end;
    left: auto;
    max-width: 1090px;
}

#body .free_news .slick-dots li button {
    border: 1px solid #D9D9D9;
}

#body .free_news .slick-dots li.slick-active button {
    border: none;
}

@media only screen and (max-width: 1000px) {
    .main .free_news .slick-list {
        left: auto;
        margin: 0 50px 0 30px;
        max-width: 100%;
        width: calc(100% - 80px);
        padding: 0 1px 0 0;
    }

    .main .free_news .slick_nav {
        padding: 16px 50px 8px;
    }
}

@media only screen and (min-width: 769px) {
    .main .zone0102 .zone02 .ilist_lower ul>li {
        width: calc((100% - 24.1px) / 3);
    }

    .main .zone0102 .zone02 .ilist_lower ul>li:nth-of-type(3n) {
        margin-right: 0;
    }

    .main .zone0102 .zone02 .ilist2_lower ul>li {
        width: calc((100% - 12.1px) / 2);
    }

    .main .zone0102 .zone02 .ilist2_lower ul>li:nth-of-type(even) {
        margin-right: 0;
    }
}

@media only screen and (max-width: 480px) {
    .main .free_news .pickup_bg {
        padding: 60px 0 20px;
    }

    .zone02 {
        padding: 10px 0 30px;
    }
}


/********************** 領域3個別のスタイル **********************/

.zone03 {
    background: #DAFCF5;
    padding: 24px 0 48px;
}

@media only screen and (max-width: 480px) {
    .zone03 {
        padding: 4px 0 24px;
    }
}


/**** 南房総市でこんな時はのスタイル ****/

.konnatoki .ilist {
    border: 1px solid #D9D9D9;
}

.main .konnatoki .ilist_lower ul {
    padding: 0 20px 20px;
}

.main .konnatoki .ilist_lower ul>li {
    width: calc((100% - 56.1px) / 8);
    margin-right: 8px;
    margin-top: 14px;
}

.main .konnatoki .ilist_lower ul>li:nth-of-type(6n) {
    margin-right: 8px;
}

.main .konnatoki .ilist_lower ul>li:nth-of-type(8n) {
    margin-right: 0px;
}

.main .konnatoki .ilist_lower ul>li a {
    padding-bottom: 30px;
}

.main .konnatoki .ilist_lower ul>li .ilist_in {
    padding: 0;
    position: relative
}

.main .konnatoki .ilist_lower .ilist_right {
    min-height: 60px;
    position: absolute;
    padding: 0px 21px 0px 5px;
    background-color: #FEB100;
    bottom: -30px;
    width: 100%;
    display: flex;
    justify-content: center;
}

.main .konnatoki .ilist_lower .ilist_right::before {
    content: "";
    display: block;
    border: none;
    border-top: 2px solid #61594A;
    width: 7px;
    transform: rotate(-145deg);
    position: absolute;
    right: 2px;
    left: auto;
    top: calc(50% - 2px);
    height: 0;
}

.main .konnatoki .ilist_lower .ilist_right::after {
    content: "";
    display: block;
    border: none;
    border-top: 2px solid #61594A;
    width: 20px;
    position: absolute;
    right: 3px;
    top: 50%;
}

.main .konnatoki .ilist_lower .ilist_title {
    min-height: 60px;
}

.main .konnatoki .ilist_lower a:hover .ilist_right {
    background-color: #ffdf98;
}

.main .konnatoki .ilist_lower ul>li a:focus img {
    width: calc(100% - 1px);
    padding: 1px;
}

@media only screen and (max-width: 768px) {
    .main .konnatoki .ilist_lower ul>li {
        width: calc((100% - 24.1px) / 4);
        margin-right: 8px;
        margin-top: 14px;
    }

    .main .konnatoki .ilist_lower ul>li:nth-child(4n) {
        margin-right: 0;
    }

    .main .konnatoki .ilist_lower ul>li .ilist_left {
        width: 100%;
    }

    .main .konnatoki .ilist_lower ul>li .ilist_left img {
        width: 100%;
    }
}

@media only screen and (max-width: 480px) {
    .main .konnatoki .ilist_lower ul {
        padding-top: 6px;
    }

    .main .konnatoki .ilist_lower ul>li {
        width: calc((100% - 12.1px) / 2);
        margin-right: 12px;
        margin-top: 12px;
    }

    .main .konnatoki .ilist_lower ul>li:nth-child(2n) {
        margin-right: 0;
    }
}


/**** 南房総市でこんな時はのスタイル ****/

.shisei .ilist {
    border: 1px solid #D9D9D9;
}

.main .shisei .ilist_lower ul {
    padding: 4px 20px 20px;
}

.main .shisei .ilist_lower ul>li {
    width: calc((100% - 71.1px) / 4);
    margin-right: 0;
    margin-left: 21px;
}

.main .shisei .ilist_lower ul>li:first-child {
    margin-left: 8px;
}

.main .shisei .ilist_lower ul>li a {
    padding-bottom: 23px;
}

.main .shisei .ilist_lower ul>li .ilist_in {
    padding: 0;
    position: relative;
    display: flex;
    flex-wrap: wrap;
}

.main .shisei .ilist_lower ul>li .ilist_in .ilist_left {
    width: 100%;
}

.main .shisei .ilist_lower .ilist_right {
    background-color: #FFF14B;
    margin: 0;
    position: absolute;
    padding: 0 5px;
    bottom: -23px;
    width: 85%;
    display: flex;
    justify-content: center;
    left: -12px;
    min-height: 46px;
}

.main .shisei .ilist_lower .ilist_right::after {
    content: "";
    display: block;
    border: none;
    border-top: 2px solid #61594A;
    width: 20px;
    position: absolute;
    right: 5px;
    bottom: 8px;
}

.main .shisei .ilist_lower .ilist_right::before {
    content: "";
    display: block;
    border: none;
    border-top: 2px solid #61594A;
    width: 7px;
    transform: rotate(-145deg);
    position: absolute;
    right: 5px;
    left: auto;
    bottom: 10px;
    height: 0;
}

.main .shisei .ilist_lower .ilist_title {
    min-height: 46px;
}

.main .shisei .ilist_lower a:hover .ilist_right {
    background-color: #fff68a;
}

.main .shisei .ilist_lower ul>li a:focus img {
    width: calc(100% - 1px);
    padding: 1px;
}

@media only screen and (max-width: 768px) {
    .main .shisei .ilist_lower ul {
        padding: 4px 24px 20px 8px;
    }

    .main .shisei .ilist_lower ul>li {
        width: calc((100% - 42.1px) / 2);
    }

    .main .shisei .ilist_lower ul>li:first-child {
        margin-left: 21px;
    }

    .main .shisei .ilist_lower ul>li .ilist_left {
        width: 100%;
    }

    .main .shisei .ilist_lower ul>li .ilist_left img {
        width: 100%;
    }
}

@media only screen and (max-width: 480px) {
    .main .shisei .ilist_lower ul>li {
        width: 100%;
        margin-left: 21px;
    }
}


/********************** 領域4個別のスタイル **********************/

.zone04 {
    padding: 20px 0;
}


/**** 関連情報のスタイル ****/

.main .kanren h2 {
    padding: 0 0 8px 8px;
    border-bottom: 1px solid #D9D9D9;
    justify-content: inherit;
}

.main .kanren .ilist_lower ul {
    padding-top: 10px;
}

.main .kanren .ilist_lower ul>li {
    width: calc((100% - 48.1px) / 5);
    margin-right: 12px;
}

.main .kanren .ilist_lower ul>li:nth-of-type(5n) {
    margin-right: 0;
}

.main .kanren .ilist_lower ul>li .ilist_in {
    padding: 0;
}

.main .kanren .ilist_lower ul>li .ilist_in img {
    width: 100%;
}

@media only screen and (max-width: 768px) {
    .main .kanren .ilist_lower ul>li {
        width: calc((100% - 12.1px) / 2);
        margin-right: 12px;
    }

    .main .kanren .ilist_lower ul>li:nth-child(5n) {
        margin-right: 12px;
    }

    .main .kanren .ilist_lower ul>li:nth-child(2n) {
        margin-right: 0px;
    }
}


/********************** 中ページのスタイル **********************/

body.inbody {}

body.inbody.faq {
    margin-top: 0;
}


/**** パンくずリスト・あしあとのスタイル ****/

.pankuzu {
    margin-top: 12px;
}

.footstep {
    margin-bottom: 12px;
}

.pankuzu_lower,
.footstep_lower {
    font-size: 85%;
    display: flex;
    align-items: flex-start;
    margin: 8px auto;
    padding: 0 12px;
    max-width: 1200px;
    width: 100%;
}

.pankuzu_tit,
.footstep_tit {
    background: #fdffd1;
    border-radius: 2px;
    flex-shrink: 0;
    display: inline-block;
    font-size: 85%;
    padding: 3px;
    text-align: center;
    margin: 4px 12px 4px 0;
    width: 72px;
}

.pankuzu li,
.footstep li {
    margin: 6px 0;
    padding: 0 24px 0 0;
    border: 0;
    list-style-type: none;
    background: none;
    display: inline-block;
    height: auto;
    position: relative;
}

.pankuzu li::after,
.footstep li::after {
    display: block;
    content: '';
    position: absolute;
    top: .5em;
    right: 7px;
    width: 6px;
    height: 6px;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    transform: rotate(-45deg);
}

.pankuzu li:last-child::after,
.footstep li:last-child::after {
    display: none;
}

@media only screen and (max-width: 768px) {
    .pankuzu {
        overflow: hidden;
        background: #fff;
        margin-top: 3px;
        padding-top: 9px;
    }

    .pankuzu_lower {
        flex-wrap: wrap;
        margin: 16px 0;
        padding: 0 10px;
        width: 100%;
    }

    .footstep {
        display: none;
    }
}


/**** 中ページメインのスタイル ****/

.main_naka_h1 {
    margin: 12px auto;
    max-width: 1200px;
    padding: 0 12px;
    width: 100%;
}

.main_naka {
    margin: 0 auto 24px;
    max-width: 1200px;
    width: 100%;
    padding: 0 12px;
    overflow: hidden;
}

.main_naka_top {
    overflow: hidden;
}

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

.main_naka_h1 h1 {
    padding: 8px 46px 8px 16px;
    font-size: 220%;
    border: 1px solid #D9D9D9;
    border-bottom: 3px solid #FFB100;
}

.main_naka_h1_img {
    margin: 12px auto 24px;
    max-width: 1176px;
    width: 100%;
    position: relative;
    overflow: hidden;
    display: flex;
}

.main_naka_h1_img .h1_img {
    display: flex;
    align-items: center;
    padding: 10px 0;
    min-height: 180px;
}

.main_naka_h1_img h1 {
    font-size: 180%;
    text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px;
    margin-left: 40px;
    width: 100%;
    border-bottom: 3px solid #ffa91f;
}

.main_naka_h1_img img {
    position: absolute;
    top: 0;
    left: 0;
    height: auto;
    width: 100%;
    z-index: -1;
}

@media only screen and (max-width: 768px) {
    .main_naka_h1_img {
        width: 100%;
    }

    .main_naka_h1_img .h1_img {
        min-height: 100px;
    }
}

@media only screen and (max-width: 480px) {
    .main_naka_h1_img .h1_img {
        min-height: 50px;
    }

    .main_naka_h1_img h1 {
        font-size: 160%;
    }
}

@media only screen and (max-width: 370px) {
    .main_naka_h1_img .h1_img {
        padding: 4.5% 0;
    }
}

.main_naka h2 {
    font-size: 136%;
    width: 100%;
    padding: 0px 2px 10px 34px;
    margin: 16px 0 0;
    position: relative;
    border-bottom: 1px solid #FFB100;
}

.main_naka h2::after {
    position: absolute;
    bottom: -3px;
    left: 6px;
    z-index: 2;
    content: '';
    width: 20px;
    height: 20px;
    background-color: #ffb100;
    border-radius: 50%;
    top: 14%;
}

.main_naka h3 {
    margin: 16px 0 0;
    padding: 2px;
    border-bottom: 1px solid #39d4e3;
    font-size: 120%;
}

.main_naka h4 {
    margin: 16px 0 0;
    padding: 2px;
    border-bottom: 1px solid #FFF14B;
    font-size: 110%;
}

.main_naka h5 {
    margin: 16px 0 0;
    padding: 4px 8px;
    background-color: #DAFCF5;
}

.main_naka h6 {
    margin: 16px 0 0;
}

.main_naka li {
    position: relative;
    padding-left: 16px;
}

.main_naka li::before {
    display: block;
    content: '';
    position: absolute;
    top: .5em;
    left: 0;
    width: 6px;
    height: 6px;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    transform: rotate(-45deg);
}

.main_naka li p {
    margin-top: 4px;
    font-size: 85%;
}

.main_naka li p button {
    vertical-align: middle;
}

.main_naka li .list_icon img {
    vertical-align: middle;
    margin-top: -5px;
    margin-right: 4px;
    max-height: 18px;
}

@media only screen and (max-width: 768px) {
    .main_naka_h1 {
        padding: 0 12px;
        width: 100%;
    }

    .main_naka {
        padding: 0 12px;
        width: 100%;
        background: #fff;
        position: relative;
    }
}


/* ページャーのスタイル */

.main_naka .page_head {
    background: #fdffd1;
    font-size: 85%;
    margin-top: 24px;
    padding: 6px 16px 16px;
}

.main_naka .page_head .pager p {
    display: inline-block;
}

.main_naka .page_head .pager ul {
    display: inline-block;
}

.main_naka .page_head .pager ul li {
    border-left: 1px solid #999;
    display: inline-block;
    margin: 0 8px 0 0;
    padding-left: 8px;
}

.main_naka .page_head .pager ul li:first-child {
    border: 0;
}

.main_naka .page_head .pager ul li::before {
    display: none;
}


/**** 新着情報のスタイル ****/

.design .main_naka .main_naka_new {
    border: 1px solid #D9D9D9;
    padding: 16px;
    margin-top: 24px;
}

.design .main_naka .main_naka_new h2 {
    margin-top: 0;
    border-bottom: 1px solid #39D4E3;
}

.design .main_naka .main_naka_new h2::after {
    background: #39d4e3;
}

.design .main_naka .main_naka_new li {
    overflow: hidden;
}

.design .main_naka .main_naka_new .date {
    display: block;
    float: left;
    margin-top: 2px;
    margin-left: 0;
    width: 6em;
    font-size: 85%;
}

.design .main_naka .main_naka_new .list {
    padding-left: 82px;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .main_naka_new .date {
        float: none;
        width: 100%;
    }

    .design .main_naka .main_naka_new .list {
        padding-left: 0;
        float: none;
        width: 100%;
    }
}


/**** 注目情報のスタイル ****/

.design .main_naka .main_naka_new.cat_topics {}


/**** 緊急情報のスタイル ****/

.design .main_naka .main_naka_eme {
    margin-top: 24px;
}

.design .main_naka .main_naka_eme h2 {
    background: #ce2626;
    color: #fff;
    border: 0;
    padding: 14px 16px;
}

.design .main_naka .main_naka_eme h2::after {
    display: none;
}

.design .main_naka .main_naka_eme .h2 {
    border: 0;
    background: #ce2626;
    overflow: hidden;
}

.design .main_naka .main_naka_eme .h2 h2 {
    float: left;
    margin: 0;
    width: auto;
}

.design .main_naka .main_naka_eme .h2 p {
    float: right;
    padding: 15px 16px 14px 8px;
    margin: 0;
}

.design .main_naka .main_naka_eme ul {
    border: 1px solid #ce2626;
    border-top: none;
    overflow: hidden;
    padding: 4px 16px 16px;
    margin: 0;
}


/**** 各課の窓口一覧のスタイル ****/

.design .main_naka .kakuka_wrap {
    border: 1px solid #eee;
    padding: 0 20px 20px;
    margin-top: 24px;
    overflow: hidden;
}

.design .main_naka .kakuka_wrap_tab {
    margin-left: 30px;
}

.design .main_naka table {
    background: #fff;
    margin: 16px 0 0;
    width: 100%;
}

.design .main_naka caption {
    display: none;
}

.design .main_naka .th01 {
    padding: 12px 12px 10px;
    border: 1px solid #D9D9D9;
    text-align: center;
    vertical-align: middle;
    background: #ffa91f;
    width: 240px;
}

.design .main_naka .th02 {
    padding: 12px 12px 10px;
    border: 1px solid #ffa91f;
    text-align: left;
    background: #e8f4f9;
    font-size: 85%;
}

.design .main_naka td {
    border: 1px solid #D9D9D9;
}

.design .main_naka .t_tel {
    padding: 12px 12px 10px;
    text-align: left;
    font-size: 85%;
}

.design .main_naka .t_fax {
    padding: 12px 12px 10px;
    text-align: left;
    font-size: 85%;
}

.design .main_naka .table03 .t_mail {
    padding: 12px 12px 10px;
    text-align: left;
    font-size: 85%;
}

.design .main_naka .t_gyomu {
    padding: 12px 12px 10px;
    text-align: left;
    font-size: 85%;
}

.design .main_naka .t_address {
    padding: 12px 12px 10px;
    text-align: left;
    font-size: 85%;
}

.design .main_naka .kakuka_link {
    background: #fdffd1;
    padding: 4px 16px 14px;
    margin: 24px 0 8px;
    overflow: hidden;
}

.design .main_naka .kakuka_link li {
    float: left;
    margin-right: 16px;
}

.design .main_naka .lnk_top {
    font-size: 85%;
    text-align: right;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .kakuka_wrap {
        border: 3px solid #eee;
        padding: 0 12px 12px;
    }

    .design .main_naka .kakuka_wrap_tab {
        margin-left: 0;
    }

    .design .main_naka .kakuka_post .th01 {
        width: 140px;
    }
}


/**** 各課のホームページのスタイル ****/


/* メニューセレクト */

.kakuka_head .kakuka_syosai {
    padding-left: 2px;
}

.kakuka_head select {
    font-size: 85%;
    margin-right: 12px;
}


/* 親子ジャンル */

.design .main_naka .kakuka_box {
    margin-top: 24px;
}

.design .main_naka .kakuka_box h2 {
    margin-top: 0;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .kakuka_box {
        float: none;
        margin-top: 24px;
        width: 100%;
    }

    .design .main_naka .th01 {
        width: 40%;
    }
}


/* お問い合わせ */

.design .main_naka .toiawase {
    background: #E8FFFA;
    margin-top: 24px;
    padding: 16px;
}

.design .main_naka .toiawase h2 {
    background: #CBFCED;
    border: 0;
    padding: 10px 12px 8px;
    margin: -16px 0 0 -16px;
    width: calc(100% + 32px);
}

.design .main_naka .toiawase h2::after {
    display: none;
}


/**** 各課のホームページ・カテゴリごとの緊急情報のスタイル ****/

.design .main_naka #emergency {
    margin-top: 24px;
}

.design .main_naka #emergency .h2 {
    background: #a90000;
    color: #fff;
}

.design .main_naka #emergency h2 {
    color: #fff;
    padding: 8px 16px 6px;
    margin: 0;
    border-bottom: none;
    width: auto;
    float: left;
}

.design .main_naka #emergency h2::after {
    display: none;
}

.design .main_naka #emergency .h2 a {
    float: right;
    margin: 10px 16px 10px 8px;
}

.design .main_naka #emergency .h2 img {
    vertical-align: middle;
}

.design .main_naka #emergency #emergency_lower {
    border: 2px solid #a90000;
    border-top: none;
    padding: 4px 16px 16px;
}


/**** 分類のスタイル ****/

.design .main_naka_cat {
    overflow: hidden;
    margin-bottom: 24px;
}

.design .main_naka .category_p01 {
    margin-top: -8px;
}

.design .main_naka .page_left {
    margin: 24px 0 0;
    width: 100%;
}

.design .main_naka .page_left_box {
    float: left;
    width: calc(100% - 280px);
    overflow: hidden;
}

.design .main_naka .page_left_box .cate_post01,
.design .main_naka .page_left_box .cate_post02 {
    margin: 24px 0;
}

.design .main_naka .page_left_box .cate_post01:first-child,
.design .main_naka .page_left_box .cate_post02:first-child {
    margin-top: 0;
}

.design .main_naka .page_left_box .cate_post01:last-child,
.design .main_naka .page_left_box .cate_post02:last-child {
    margin-bottom: 0;
}

.design .main_naka .page_left_box .cate_post01:first-child h2,
.design .main_naka .page_left_box .cate_post02:first-child h2 {
    margin-top: 0;
}

.design .main_naka .page_left .page_left_float {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -8px;
}

.design .main_naka .page_left .page_left_float .cate_post01 {
    border: 1px solid #d9d9d9;
    margin-top: 0;
    margin-bottom: 24px;
    margin-right: 2%;
    width: 49%;
}

.design .main_naka .page_left .page_left_float .cate_post01:nth-child(even) {
    margin-right: 0;
}

.design .main_naka .page_left .page_left_float .cate_post01 h2 {
    background: #fdffd1;
    border-bottom: 3px solid #ffa91f;
    margin: 0;
    padding: 10px 16px;
}

.design .main_naka .page_left .page_left_float .cate_post01 h2::after {
    display: none;
}

.design .main_naka .page_left .page_left_float .category_p02 {
    padding: 0 16px 8px;
    margin-top: 16px;
}

.design .main_naka .page_left .page_left_float .category01 {
    padding: 0 16px 16px;
}

.design .main_naka .page_right {
    float: right;
    width: 240px;
    margin-top: 24px;
    overflow: hidden;
}

.design .main_naka .page_right ul {
    padding: 0 8px 12px;
    margin-top: 24px;
    border: 1px solid #d9d9d9;
    border-top: 3px solid #ffa91f;
}

.design .main_naka .page_right ul:first-child {
    margin-top: 0;
}

.design .main_naka .category01 li {
    display: inline-block;
    margin-right: 12px;
}

.design .main_naka .category_p02 {
    font-size: 85%;
    margin: 12px 0 24px;
    overflow: hidden;
}

.design .main_naka .category_p02 p {
    margin-top: 0;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .page_left {
        margin-right: 0;
    }

    .design .main_naka .page_left_box {
        float: none;
        width: 100%;
    }

    .design .main_naka .page_left .page_left_float {
        margin-bottom: 0;
    }

    .design .main_naka .page_left .page_left_float .cate_post01 {
        margin-right: 0;
        width: 100%;
    }

    .design .main_naka .page_left .page_left_float .cate_post01:last-child {
        margin-bottom: 0;
    }

    .design .main_naka .page_right {
        float: none;
        width: 100%;
    }
}


/* アイキャッチあり */

.design .main_naka .category_p02 .cat_lst {
    margin-right: 112px;
}

.design .main_naka .category_p02 .cat_img {
    float: right;
    width: 96px;
    margin-top: 0;
}


/* 分類（先頭ページ以下）のスタイル */

.design .main_naka .cate_post02 li,
.design .main_naka .category_end li {
    border-bottom: 1px dashed #bbb;
    margin-top: 16px;
    padding: 0 0 16px;
    overflow: hidden;
}

.design .main_naka .cate_post02 li::before,
.design .main_naka .category_end li::before {
    display: none;
}

.design .main_naka .category_end li:first-child {
    margin-top: 0;
}

.design .main_naka .category_end .cat_lst {
    margin-right: 112px;
}

.design .main_naka .category_end .catch_lst .cat_img {
    float: right;
    width: 96px;
    margin-top: 0;
}


/* 分類に関連するスタイル */

.design .main_naka .cat_aside {
    background: #fff;
    margin-bottom: 24px;
    border: 1px solid #D9D9D9;
}

.design .main_naka .cat_aside h2 {
    background: #fff;
    border: 0;
    padding: 10px 12px 5px;
    margin-top: 0;
    border-bottom: 3px solid #feb100;
}

.design .main_naka .cat_aside h2::after {
    display: none;
}

.design .main_naka .cat_aside_lower {
    padding: 0 16px 16px;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .cat_aside h2 {
        padding-right: 70px;
    }
}


/* バナー広告 */

.design .main_naka .bana {
    margin-top: 24px;
    border: none;
}

.design .main_naka .bana h2 {
    padding: 8px 16px 6px;
    margin-top: 0;
    border-bottom: 1px solid #e2e2e2;
}

.design .main_naka .bana h2::after {
    display: none;
}

.design .main_naka .bana_lower {
    text-align: center;
    border: 0;
}

.design .main_naka .bana .bana_img {
    display: inline-block;
}

.design .main_naka .bana .bana_img img {
    width: 100%;
}

.design .main_naka .bana ul {
    display: flex;
    flex-wrap: wrap;
}

.design .main_naka .bana li {
    width: 160px;
    margin-right: 8px;
    padding-left: 0;
}

.design .main_naka .bana li::before {
    display: none;
}

.design .main_naka .bana li:nth-of-type(6n) {
    margin-right: 0;
}

.design .main_naka .bana li .window {
    margin-top: 5px;
}


/**** 催し物・講座のスタイル ****/

.design .main_naka .event_navi_box {
    margin-top: 24px;
    margin-bottom: -12px;
}

.design .main_naka .event_navi li {
    display: inline-block;
    border-right: 2px solid #ffa91f;
    margin: 0 16px 8px 0;
    padding: 0 16px 0 0;
}

.design .main_naka .event_navi li:first-child {
    border-left: 2px solid #ffa91f;
    padding-left: 16px;
}

.design .main_naka .event_navi li::before {
    display: none;
}

.design .main_naka .month_lst_box {
    margin-top: 24px;
}

.design .main_naka .month_lst {
    display: flex;
    text-align: center;
}

.design .main_naka .month_lst li {
    padding-left: 0;
    margin-top: 0;
    width: 20%;
    border: 2px solid #ffa91f;
    border-left: none;
}

.design .main_naka .month_lst li:first-child {
    border-left: 2px solid #ffa91f;
}

.design .main_naka .month_lst li::before {
    display: none;
}

.design .main_naka .month_lst .month_select {
    background: #ffa91f;
}

.design .main_naka .month_lst .month_select strong {
    display: block;
    padding: 8px;
}

.design .main_naka .month_lst li a {
    display: block;
    padding: 8px;
}

.design .main_naka .event_list li {
    border-bottom: 1px dashed #e2e2e2;
    margin-top: 16px;
    padding: 0 0 16px;
}

.design .main_naka .event_post {
    margin-top: 24px;
}

.design .main_naka .event_list li::before {
    display: none;
}

.design .main_naka .event_repeat {
    margin-top: 0;
}

.design .main_naka .event_period {
    border: 1px solid #D9D9D9;
    background: #fff;
    padding: 4px 16px 16px;
}

.design .main_naka .event_period .event_post:first-child {
    margin-top: 0;
}


/**** 催し物・講座カレンダー表示のスタイル ****/

.design .main_naka .calendar_month {
    margin-top: 24px;
}

.design .main_naka .calendar_month caption {
    display: none;
}

.design .main_naka .calendar_month th {
    padding: 16px;
    border: 1px solid #D9D9D9;
    border-right: none;
    font-size: 85%;
    text-align: center;
    vertical-align: middle;
}

.design .main_naka .calendar_month td {
    padding: 16px;
    border: 1px solid #D9D9D9;
}

.design .main_naka .calendar_month td li {
    margin-top: 16px;
}

.design .main_naka .calendar_month td li:first-child {
    margin-top: 0;
}

.design .main_naka .calendar_month td.cal_day {
    text-align: center;
    padding: 16px 20px;
    font-size: 85%;
    vertical-align: middle;
    width: 60px;
}

.design .main_naka .calendar_month td.cal_day img {
    max-width: none;
    vertical-align: middle;
}

.design .main_naka .calendar_month .cal_sun {
    background-color: #ffefee;
}

.design .main_naka .calendar_month .cal_sat {
    background-color: #f3f7ff;
}

.design .main_naka .calendar_month .cal_date {
    width: 60px;
}

.design .main_naka .calendar_month .cal_today .cal_date {
    background: #ce2626;
    color: #fff;
}

.design .main_naka .calendar_month .hdy {
    margin: 0 0.6em 8px 0;
    padding: 3px 4px 1px 5px;
    background: #ce2626;
    color: #fff;
    font-size: 85%;
    display: inline-block;
    vertical-align: middle;
}

.design .main_naka .calendar_month .eve_cate {
    display: inline-block;
    font-size: 85%;
    background: #ffa91f;
    border-radius: 4px;
    padding: 4px 4px 2px;
    margin: 2px 8px 0 0;
    text-align: center;
    vertical-align: top;
    line-height: 1;
    min-width: 80px;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .calendar_month th {
        padding: 10px;
    }

    .design .main_naka .calendar_month .cal_date {
        width: 46px;
    }

    .design .main_naka .calendar_month td.cal_day {
        padding: 10px;
        width: 46px;
    }

    .design .main_naka .calendar_month td {
        padding: 10px;
    }
}


/**** 新着情報のスタイル ****/

.innew .design .main_naka .new_post {
    margin-top: 24px;
}

.innew .design .main_naka .new_post:first-child {
    margin-top: 0;
}

.innew .design .main_naka .new_post li {
    border-bottom: 1px dashed #bbb;
    margin-top: 16px;
    padding: 0 0 16px;
    overflow: hidden;
}

.innew .design .main_naka .new_post li::before {
    display: none;
}


/* アイキャッチあり */

.innew .design .main_naka .catch_lst .new_lst {
    margin-right: 110px;
}

.innew .design .main_naka .catch_lst .new_img {
    float: right;
    width: 96px;
    margin-top: 0;
}


/**** ごみカレンダーのスタイル ****/

.design .main_naka .garbage_body .garbage_box {
    margin-top: 24px;
}

.garbage_box h2 {
    padding: 12px 2px 10px 6px;
}

.main_naka .garbage_box h2::after {
    display: none;
}

.design .main_naka .garbage_body .garbage_select {
    margin-top: 12px;
}

.design .main_naka .garbage_body .garbage_select p {
    display: inline-block;
    vertical-align: middle;
    margin-top: 0;
}

.design .main_naka .garbage_body .garbage_select #garbage_area {
    font-size: 85%;
    margin-right: 12px;
    vertical-align: middle;
}

.design .main_naka .garbage_body .garbage_select #garbage_num {
    font-size: 85%;
    vertical-align: middle;
}

#body .main_naka .garbage_body .garbage_select .garbage_select_syosai {
    display: inline-block;
    margin-right: 16px;
}

.design .main_naka .garbage_body .garbage_cal h2 img {
    padding: 0 8px 3px 0;
    vertical-align: middle;
}

.design .main_naka .garbage_body .garbage_cal h2 span {
    vertical-align: middle;
}

.design .main_naka .garbage_body .garbage_cal table {
    margin-top: 24px;
    width: 100%;
    table-layout: fixed;
}

.design .main_naka #calendar_month th {
    padding: 8px;
    border: 1px solid #D9D9D9;
    border-right: none;
    font-size: 85%;
    text-align: center;
    vertical-align: middle;
    width: 60px;
}

.design .main_naka #calendar_month td {
    padding: 16px;
    border: 1px solid #D9D9D9;
}

.design .main_naka .garbage_body .garbage_cal td .cal_icon {
    margin: 8px 0 0;
    background: #000;
    color: #fff;
    text-align: center;
    width: 120px
}

.design .main_naka .garbage_body .garbage_cal td .cal_icon p {
    margin: 0 auto;
    padding: 8px 8px 0;
}

.design .main_naka .garbage_body .garbage_cal td .cal_icon img {
    padding: 2px 0 8px;
    vertical-align: bottom;
    height: auto;
    width: 36px;
    box-sizing: content-box;
}

.design .main_naka #calendar_month td li {
    margin-top: 16px;
    padding-left: 0;
}

.design .main_naka #calendar_month td li::before {
    display: none;
}

.design .main_naka #calendar_month td li:first-child {
    margin-top: 0;
}

.design .main_naka #calendar_month td.cal_day {
    text-align: center;
    padding: 10px;
    font-size: 85%;
    vertical-align: middle;
    width: 60px;
}

.design .main_naka #calendar_month td.cal_day img {
    max-width: none;
    vertical-align: middle;
}

.design .main_naka #calendar_month .cal_sun {
    background-color: #ffefee;
}

.design .main_naka #calendar_month .cal_sat {
    background-color: #f3f7ff;
}

.design .main_naka #calendar_month .cal_today .cal_date {
    background: #ce2626;
    color: #fff;
}

.design .main_naka #calendar_month .hdy {
    margin: 0 0.6em 4px 0;
    padding: 3px 4px 1px 5px;
    background: #ce2626;
    color: #fff;
    font-size: 85%;
    display: inline-block;
    vertical-align: middle;
}

.design .main_naka #calendar_month .eve_cate {
    display: inline-block;
    font-size: 85%;
    background: #007bbb;
    color: #fff;
    border-radius: 4px;
    padding: 4px 4px 2px;
    margin: 2px 8px 0 0;
    text-align: center;
    vertical-align: top;
    line-height: 1;
    min-width: 80px;
}

@media only screen and (max-width: 768px) {

    .design .main_naka .garbage_body .garbage_select p,
    .design .main_naka .garbage_body .garbage_select #garbage_area {
        font-size: 100%;
    }

    .design .main_naka #calendar_month th,
    .design .main_naka #calendar_month td.cal_day {
        width: 36px;
    }

    .design .main_naka #calendar_month td {
        padding: 8px 16px;
    }

    .design .main_naka .garbage_body .garbage_cal td .cal_icon img {
        height: auto;
        width: 34px;
    }

    .design .main_naka .garbage_body .garbage_cal td .cal_icon p {
        padding: 6px 6px 0;
    }
}


/* アイコン毎の効果 */

.design .main_naka .garbage_body .garbage_cal td .cal_red,
.design .main_naka .garbage_body .garbage_cal th .cal_red {
    background: #d50404;
    border: 1px solid #fff;
    box-shadow: rgba(213, 4, 4, 0.3) 0 0 1px 2px;
}

.design .main_naka .garbage_body .garbage_cal td .cal_bla,
.design .main_naka .garbage_body .garbage_cal th .cal_bla {
    background: #222;
    border: 1px solid #fff;
    box-shadow: rgba(0, 0, 0, 0.3) 0 0 1px 2px;
}

.design .main_naka .garbage_body .garbage_cal td .cal_blu,
.design .main_naka .garbage_body .garbage_cal th .cal_blu {
    background: #0274cc;
    border: 1px solid #fff;
    box-shadow: rgba(4, 150, 213, 0.3) 0 0 1px 2px;
}

.design .main_naka .garbage_body .garbage_cal td .cal_pap,
.design .main_naka .garbage_body .garbage_cal th .cal_pap {
    background: #892dbd;
    border: 1px solid #fff;
    box-shadow: rgba(136, 45, 189, 0.3) 0 0 1px 2px;
}

.design .main_naka .garbage_body .garbage_cal td .cal_gre,
.design .main_naka .garbage_body .garbage_cal th .cal_gre {
    background: #09820c;
    border: 1px solid #fff;
    box-shadow: rgba(16, 156, 18, 0.3) 0 0 1px 2px;
}

.design .main_naka .garbage_body .garbage_cal td .cal_pin,
.design .main_naka .garbage_body .garbage_cal th .cal_pin {
    background: #b4156b;
    border: 1px solid #fff;
    box-shadow: rgba(180, 21, 106, 0.3) 0 0 1px 2px;
}

.design .main_naka .garbage_body .garbage_cal td .cal_ora,
.design .main_naka .garbage_body .garbage_cal th .cal_ora {
    background: #f7bb2d;
    border: 1px solid #fff;
    color: #333;
    box-shadow: rgba(247, 186, 45, 0.66) 0 0 1px 2px;
}

.design .main_naka .garbage_body .garbage_cal .sun {
    background: #ffd8d6;
}

.design .main_naka .garbage_body .garbage_cal .sat {
    background: #d9e4fc;
}

.design .main_naka .garbage_body .garbage_cal th.sun {
    background: transparent;
}

.design .main_naka .garbage_body .garbage_cal th.sat {
    background: transparent;
}

.design .main_naka .garbage_body .garbage_cal .today {
    background: #fffab0;
}

.design .main_naka .garbage_body .garbage_cal .today a:LINK {
    text-decoration: underline;
    color: #fff;
}

.design .main_naka .garbage_body .garbage_cal .today a:VISITED {
    text-decoration: underline;
    color: #eee;
}

.design .main_naka .garbage_body .garbage_cal .today a:ACTIVE {
    text-decoration: underline;
    color: #ffff00;
}

.design .main_naka .garbage_body .garbage_cal .today a:HOVER {
    text-decoration: underline;
    color: #ffff00;
}

.design .main_naka .garbage_foot {
    margin-top: 24px;
}


/* ゴミカレンダー凡例 */

.design .main_naka .garbage_category_hanrei caption {
    background: #feb100;
    padding: 6px 12px 4px;
    display: table-caption;
    width: 100%;
}

.garbage_category_hanrei th {
    border: 1px solid #D9D9D9;
    color: #fff;
    vertical-align: middle;
    padding: 8px;
}

.garbage_category_hanrei td {
    vertical-align: middle;
    padding: 8px;
}


/**** サイトマップのスタイル ****/

.sitemap_body article {
    border: none;
}

.design .main_naka .kakuka01 li {
    margin: 3px 20px 2px 0;
    padding: 0;
    border: 0;
    display: inline-block;
    height: auto;
    background-image: none;
    font-size: 85%;
}

.design .main_naka .event_month li {
    display: inline-block;
    margin-right: 4px;
    padding-left: 0;
}

.design .main_naka .event_month li::before {
    display: none;
}

.design .main_naka .event_month img {
    position: relative;
    top: -2px;
}


/**** RSS一覧のスタイル ****/

.rss_body article {
    border: none;
}

.design .main_naka .rss {
    margin: 0 8px 0 8px;
    vertical-align: middle;
    height: 20px;
}


/**** マイページ管理画面のスタイル ****/

.online_strage_edit_a {
    margin-top: 16px;
}

.online_strage_edit_a .mypage h2 {
    margin: 0;
    padding: 0;
    height: 0;
    background: none;
    border: none;
}

.online_strage_edit_a .mypage h2::after {
    display: none;
}

.online_strage_edit_a div.online_strage_list_item {
    border-bottom: 1px dashed #bbb;
    padding: 7px 0;
    overflow: hidden;
}

.online_strage_edit_a div.online_strage_title {
    float: left;
    max-width: 872px;
    padding: 8px 0;
}

.online_strage_edit_a div.online_strage_list_item>p {
    font-size: 85%;
}

.online_strage_edit_a div.edit_btn {
    float: right;
}

.online_strage_edit_a div.online_strage_commandbox {
    float: left;
}

.online_strage_edit_a div.online_strage_updown {
    float: left;
}

.online_strage_edit_a .online_strage_list button {
    background: #fff;
    color: #333;
    padding: 4px 10px;
    margin: 6px 6px 6px 0;
    vertical-align: top;
}


/**** エラーページのスタイル ****/

.design .main_naka .error h1 {
    margin: 24px 0;
    font-size: 200%;
}

.design .main_naka .error ul {
    margin-top: 24px;
}


/**** ピックアップのスタイル ****/

.design .main_naka .pickup_post {
    margin-top: 25px;
}

.design .main_naka .pickup_post .category_p01 {
    margin-top: 0;
}


/**** 組織検索機能 ****/

.csv_search {
    margin-top: 16px;
    background: #fdffd1;
    padding: 16px;
}

.csv_search h2 {
    padding: 10px 12px 8px;
    border-color: #ffb100;
    margin: 0 0 16px;
}

.csv_search h2::after {
    display: none;
}

#csv_search_word {
    width: 300px;
}

#csv_search_word {
    margin-right: 16px;
    margin-bottom: 8px;
}

.csv_search_input_form fieldset {
    overflow: hidden;
    vertical-align: middle;
    margin-bottom: 8px;
}

.csv_search_input_form fieldset legend {
    float: left;
    width: auto;
}

.csv_search_input_form fieldset input[type="radio"] {
    margin-top: 1px;
    padding-top: 0;
}

.csv_search_form_submit_btn_wrapper {
    text-align: center;
    margin-top: 8px;
}

#body .csv_search_form_submit_btn_wrapper .csv_search_form_submit_btn {
    display: inline-block;
    font-size: 81.25%;
    padding: 5px 15px;
}

.csv_search_input_form fieldset {
    display: inline-block;
}

.csv_search_result_table th,
.csv_search_result_table td {
    border: 1px solid #ccc;
    font-size: 85%;
    padding: 6px 4px 4px
}

.csv_search_result_table th {
    background: #e8f4f9;
    text-align: center;
    vertical-align: middle;
}

@media only screen and (max-width: 768px) {
    #csv_search_word {
        width: 100%;
    }
}


/**** お問い合わせフォームのスタイル ****/

#body.inform .main_naka li p input,
#body.inform .main_naka li p button,
#body.inform .main_naka li p textarea {
    font-size: 100%;
}

.inform .design .main_naka form {
    margin-top: 24px;
    padding: 8px 16px 16px;
    background: #fdffd1;
}

.design .main_naka .syosai {
    overflow: hidden;
}

.inform .design .main_naka .syosai_hiduke {
    float: none;
}

.inform .design .main_naka form li {
    border-bottom: 1px dashed #bbb;
    margin-top: 16px;
    padding: 0 0 16px;
}

.inform .design .main_naka form li::before {
    display: none;
}

.inform .att {
    color: #a90000;
}

.inform .design .main_naka form li:first-child,
.inform .design .main_naka form h3:first-child {
    margin-top: 8px;
}

.inform .design .main_naka form .tyui li {
    border: none;
    margin-top: 8px;
    padding: 0;
}

.inform .design .main_naka form fieldset {
    margin-top: 8px;
}

.inform .design .main_naka form h2 {
    background: #eee;
    color: #222;
    font-size: 120%;
    margin: 16px 0;
}

.inform .design .main_naka form h2::after {
    width: 100%;
}

.inform .design .main_naka form .radio_p {
    font-size: 85%;
    display: inline-block;
    margin-right: 12px;
}

.inform .design .main_naka form .input_btn {
    text-align: center;
    margin-top: 16px;
}

.inform .design .main_naka form .px100 {
    max-width: 100px;
    width: 100%;
}

.inform .design .main_naka form .px200 {
    max-width: 200px;
    width: 100%;
}

.inform .design .main_naka form .px300 {
    max-width: 300px;
    width: 100%;
}

.inform .design .main_naka form .px400 {
    max-width: 400px;
    width: 100%;
}

.inform .design .main_naka form .px500 {
    max-width: 500px;
    width: 100%;
}

@media only screen and (max-width: 768px) {

    #body.inform .design .main_naka form input[type="text"],
    #body.inform .design .main_naka form input[type="password"],
    #body.inform .design .main_naka form textarea {
        width: 100% !important;
    }

    #body.inform .design .main_naka form input[type="text"]#postal_code,
    #body.inform .design .main_naka form input[type="file"]#upfile {
        width: 60% !important;
    }

    #body.inform .design .main_naka form input[type="text"]#yuubin1,
    #body.inform .design .main_naka form input[type="text"]#yuubin2 {
        width: 90px !important;
    }

    #body.inform .design .main_naka form input[type="radio"]+label {
        line-height: 2;
    }
}


/** お問い合わせフォームのスタイル　エラー **/

.inform .design .main_naka form .form_error {
    background: #f8e6e6;
    border: 2px solid #ce2626;
    color: #a90000;
    padding: 12px 16px 6px;
    margin: 10px 0 24px;
}

.inform .design .main_naka form .form_error p {
    font-size: 120%;
    margin: 5px 0 10px;
    border-bottom: none;
    font-size: 120%;
    padding-left: 12px;
    border-left: 4px solid #ce2626;
}

.inform .design .main_naka form .form_error ul {
    padding: 0 4px;
}

.inform .design .main_naka form .form_error li {
    padding: 3px 0 3px 14px;
    margin: 0 0 5px 0;
}

.inform .design .main_naka form .form_error li::before {
    display: inline-block;
    top: 11px;
    border-color: #ce2626;
}


/**** アンケートのスタイル ****/

.design .main_naka .question_box {
    margin-bottom: 24px;
}

.design .main_naka .question_box li {
    border-bottom: 1px dashed #bbb;
    margin-top: 16px;
    padding: 0 0 16px;
}

.design .main_naka .question_box li::before {
    display: none;
}

.design .main_naka #qa_tmp {
    border: 1px solid #D9D9D9;
    margin-top: 24px;
    padding: 16px;
}

.inform .design .main_naka form select {
    font-size: 100%;
}


/**** 動的版検索結果のスタイル ****/

.design .main_naka .keyword_post li {
    border-bottom: 1px dashed #bbb;
    margin-top: 16px;
    padding: 0 0 12px;
}

.design .main_naka .keyword_post li::before {
    display: none;
}


/********************** 記事ページのスタイル **********************/

.inkiji .main_naka_h1 {
    margin-bottom: 0;
}

.inkiji .main_naka {
    margin-bottom: 8px;
}

.waku {
    margin: 0 auto 24px;
    overflow: hidden;
}

.waku_top {
    clear: both;
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 12px;
    width: 100%;
}

.main_naka_kiji {
    float: left;
    margin-right: 40px;
    width: calc(100% - 280px);
}

.waku .kiji_sub {
    margin-top: 8px;
    float: right;
    width: 240px;
}

@media only screen and (max-width: 768px) {
    .main_naka_kiji {
        float: none;
        overflow: hidden;
        width: 100%;
    }

    .waku .kiji_sub {
        float: none;
        width: 100%;
    }
}


/**** 詳細ページのスタイル ****/

.design .main_naka .syosai_hiduke {
    margin-top: 8px;
    font-size: 85%;
    float: left;
}

.design .main_naka .syosai_hiduke li {
    display: inline-block;
    margin: 0;
    padding: 0 16px 0 0;
}

.design .main_naka .syosai_hiduke li::before {
    display: none;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .syosai_hiduke {
        margin-bottom: 16px;
    }
}

@media only screen and (max-width: 480px) {
    .design .main_naka .syosai_hiduke li.syosai_id {
        display: block;
    }
}


/* SNSボタン */

.inbody .design .sns_box {
    margin-top: 4px;
    padding-left: 16px;
    vertical-align: middle;
    float: right;
}

.inbody .design .sns_box ul {
    display: inline;
}

.inbody .design .sns_box li::before {
    display: none;
}

.inbody .design .sns_btn {
    padding-left: 4px;
    display: inline;
    line-height: 0;
    vertical-align: middle;
}

.inbody .design .sns_btn img {
    vertical-align: middle;
}

.inbody .design p.sns_btn {
    padding: 3px;
    background-color: #fff;
    font-size: 85%;
    vertical-align: middle;
}

@media only screen and (max-width: 768px) {
    .inbody .design .sns_box {
        background: #fdffd1;
        border: 1px solid #D9D9D9;
        padding-left: 0;
        padding: 5px;
        margin: 0;
        float: none;
        line-height: 1.5;
        clear: both;
    }

    .inbody .design p.sns_btn {
        background: none;
        padding: 0;
        margin: 0;
    }

    .inbody .design .sns_box ul li {
        display: inline-block;
        margin: 0;
        padding: 0;
    }
}


/**** 記事ページ右メニューのスタイル ****/


/*アイキャッチ画像*/

.waku .kiji_sub .catch {
    margin-top: 16px;
}

.waku .kiji_sub .catch p {
    margin-top: 0;
    text-align: center;
}

.waku .kiji_sub .catch img {
    border: 1px solid #D9D9D9;
    padding: 1px;
    vertical-align: bottom;
}


/*お問い合わせフォーム*/

.waku .kiji_sub .kiji_aside.syosai_sonota {
    margin-top: 16px;
    padding: 12px;
    border: 1px solid #D9D9D9;
    font-size: 85%;
    text-align: center;
    word-wrap: break-word;
}

.waku .kiji_sub .kiji_aside.syosai_sonota h2 {
    display: inline-block;
    padding: 3px 4px 4px;
    background: #fff;
    border: 0;
    width: 100%;
    border-bottom: 3px solid #ffb100;
}

.waku .kiji_sub .kiji_aside.syosai_sonota p {
    text-align: left;
}

.waku .kiji_sub .kiji_aside.syosai_sonota .for_img {
    text-align: center;
    background: #ffb100;
    font-size: 85%;
    display: inline-block;
    width: 100%;
    border: 1px solid #D9D9D9;
}

.waku .kiji_sub .kiji_aside.syosai_sonota .for_img a {
    display: block;
    padding: 8px 5px 7px;
    text-decoration: none;
    width: 100%;
}


/*共通スタイル*/

.waku .kiji_sub .kiji_aside {
    margin-top: 16px;
    background: #fff;
    border: 1px solid #D9D9D9;
}

.waku .kiji_sub .kiji_aside_lower {
    padding: 0 16px 16px;
}

.waku .kiji_sub .kiji_aside h2 {
    padding: 10px 8px 8px;
    background: #fdffd1;
}

.waku .kiji_sub .kiji_aside>ul {
    padding: 0;
    margin: 0;
}

.waku .kiji_sub .kiji_aside li {
    position: relative;
    padding-left: 16px;
}

.waku .kiji_sub .kiji_aside li::before {
    display: block;
    content: '';
    position: absolute;
    top: .5em;
    left: 0;
    width: 6px;
    height: 6px;
    border-right: 2px solid #999;
    border-bottom: 2px solid #999;
    transform: rotate(-45deg);
}

.waku .kiji_sub .kiji_aside li li {
    font-size: 85%;
}


/*コンテンツページ_組織内ジャンル*/

.waku .kiji_sub .kiji_aside.kakuka {}


/*関連コンテンツ*/

.waku .kiji_sub .kiji_aside.kanren {}


/*この記事を見ている人*/

.waku .kiji_sub .kiji_aside.kanren2 {}


/**** コンテンツ評価のスタイル ****/

.design .main_naka .kiji_aside.syosai_qa {
    background: #fff;
}

.design .main_naka .kiji_aside.syosai_qa li {
    padding-left: 0;
}

.design .main_naka .kiji_aside.syosai_qa li::before {
    display: none;
}

.design .main_naka .kiji_aside.syosai_qa li p {
    padding: 5px 1%;
    border: 1px dashed #bbb;
}

.design .main_naka .kiji_aside.syosai_qa #opinion {
    width: 100%;
}

.design .main_naka .kiji_aside.syosai_qa .comment {
    font-size: 85%;
}

.design .main_naka .kiji_aside.syosai_qa .qa_button {
    margin-top: 8px;
    padding-top: 16px;
    border-top: 1px solid #ccc;
    text-align: center;
}

.design .main_naka .kiji_aside.syosai_qa .qa_button2 {
    margin-top: 8px;
    padding: 8px 0;
    text-align: center;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .kiji_aside.syosai_qa form p span {
        display: block;
        line-height: 2;
    }
}


/** コンテンツ評価のスタイル 確認画面 **/

.inform .design .main_naka .kiji_aside.syosai_qa {
    background-color: #fdffd1;
    border: none;
    padding: 16px 16px 5px;
    margin: 0;
}

.inform .design .main_naka .kiji_aside.syosai_qa li p {
    border: none;
    padding: 0;
}

.inform .design .main_naka .kiji_aside.syosai_qa>p {
    margin: 0;
    border-bottom: 1px dashed #bbb;
    padding-bottom: 16px;
}

.inform .design .main_naka .kiji_aside.syosai_qa form {
    margin-top: 0;
    padding: 0;
}


/**** 別ルートのスタイル ****/

.design .main_naka .route_box {
    margin-bottom: 24px;
}

.design .main_naka .route_box h2 {
    background: #fff;
    border-bottom: 1px solid #D9D9D9;
    font-size: 125%;
    padding: 2px;
    margin: 0 0 12px;
}

.design .main_naka .route_box h2::after {
    display: none;
}

.design .route {
    margin-top: 8px;
}

.design .route li {
    font-size: 85%;
    margin: 0;
    padding: 0 28px 0 0;
    border: 0;
    list-style-type: none;
    background: none;
    display: inline-block;
    height: auto;
    position: relative;
}

.design .route li::before {
    display: none;
}

.design .route li::after {
    display: block;
    content: "";
    position: absolute;
    top: .3em;
    right: 2px;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-left: 8px solid #999;
}

.design .route li:last-child::after {
    display: none;
}


/**** 記事ページ下メニューのスタイル ****/

.inkiji .main_naka .kiji_aside,
.infaq .main_naka .kiji_aside {
    background: #fff;
    margin-bottom: 24px;
    border: 1px solid #D9D9D9;
}

.inkiji .main_naka .kiji_aside_lower,
.infaq .main_naka .kiji_aside_lower {
    padding: 0 16px 16px;
}

.inkiji .main_naka .kiji_aside h2,
.infaq .main_naka .kiji_aside h2 {
    background: #fff;
    border: 0;
    padding: 10px 12px 8px;
    margin-top: 0;
    border-bottom: 3px solid #FFB100;
}

.inkiji .main_naka .kiji_aside h2::after,
.infaq .main_naka .kiji_aside h2::after {
    display: none;
}

.inkiji .main_naka .kiji_aside h3,
.infaq .main_naka .kiji_aside h3 {
    background: none;
    border: 0;
    border-left: 4px solid #007bbb;
    padding: 0 0 0 12px;
    margin-left: 16px;
    margin-right: 16px;
}

.inkiji .main_naka .kiji_aside li li,
.infaq .main_naka .kiji_aside li li {
    font-size: 85%;
}

@media only screen and (max-width: 768px) {

    .inkiji .main_naka .kiji_aside.kanrenlink h2,
    .infaq .main_naka .kiji_aside.kanrenlink h2,
    .inkiji .main_naka .kiji_aside.rssfide h2,
    .infaq .main_naka .kiji_aside.rssfide h2 {
        padding-right: 70px;
    }
}


/* 関連リンク */

.inkiji .main_naka .kiji_aside.kanrenlink {}


/* 外部RSS */

.inkiji .main_naka .kiji_aside.rssfide h2 {}


/* 同じ分類の記事 */

.inkiji .main_naka .kiji_aside.kanrencon h2 {
    background: #fff;
    color: #222;
}


/* 組織内ジャンル */

.inkiji .main_naka .kiji_aside.kakuka h2 {
    background: #fff;
    color: #222;
}


/* 関連コンテンツ */

.inkiji .main_naka .kiji_aside.kanren h2 {
    background: #fff;
    color: #222;
}


/* 関連している可能性のある記事 */

.inkiji .main_naka .kiji_aside.kanren2 h2 {
    background: #fff;
    color: #222;
}


/* お問い合わせフォーム */

.main_naka .kiji_aside.syosai_sonota h2 {
    background: #fff;
    color: #222;
}

.main_naka .kiji_aside.syosai_sonota p.for_txt {
    padding: 0 0 8px 0;
    border-bottom: 1px solid #ccc;
    font-size: 85%;
}


/**** 記事ページ緊急情報のスタイル ****/

.kiji_emergency .main_naka_h1 h1 {
    border-left: none;
    background: #ce2626;
    color: #fff;
    padding: 6px 8px 4px;
    border: none;
}


/* チャットボット */

.dsn-widget {
    width: 160px !important;
    height: 160px !important;
    position: fixed;
    bottom: 0;
    right: 0;
    margin: 0 !important;
    cursor: pointer;
    z-index: 10001;
}

@media only screen and (max-width: 768px) {
    .dsn-widget {
        display: none;
    }

    #sidr ul.sidr_navi_chat li:last-child a {
        padding: 12px 24px 12px 44px;
    }

    #sidr ul.sidr_navi_chat li:last-child::after {
        content: '';
        position: absolute;
        background: transparent url(img/chara_s.png) no-repeat;
        background-position: left bottom;
        background-size: 100% auto;
        left: 10px;
        top: 5px;
        width: 24px;
        height: 38px;
    }
}


/* ▼20211223 伝えるweb 追加css▼ */

.tsutaeru-menu {
    /*    display:none; */
    background: #fff !important;
    padding: 7px 0 3px 10px !important font-size: 86%;
}

.tsutaeru-menu ul {
    max-width: 1224px;
    margin: 0 auto !important;
    padding: 0 12px !important
}

.tsutaeru-menu ul li .tsutaeru-button:hover,
.tsutaeru-menu ul li .tsutaeru-button:focus {
    background-color: #FFB100 !important;
}

.tsutaeru-menu ul li .tsutaeru-button {
    color: #333 !important;
    border: 1px solid #FFB100 !important;
}

.tsutaeru-menu ul li.tsutaeru-li-easy .tsutaeru-button {
    background-image: url(img/icon_easy.png);
}

.tsutaeru-menu ul li.tsutaeru-li-easy-off .tsutaeru-button {
    background-image: url(img/icon_easy_off.png);
}

.tsutaeru-speech {
    font-size: 100% !important;
    line-height: 1 !important;
    text-align: center !important;
    padding: 0 !important
}

.tsutaeru-speech-buttons {
    padding: 0 !important
}

button.tsutaeru-button.tsutaeru-button-config.tsutaeru-button-speech-config {
    margin: 0 0 0 10px
}

#body button.tsutaeru-button.tsutaeru-button-speech-start,
#body button.tsutaeru-button.tsutaeru-button-speech-control,
#body button.tsutaeru-button.tsutaeru-button-config.tsutaeru-button-speech-config {
    background: #fff !important;
    color: #2b3095 !important;
    border: 1px solid #FFB100 !important;
    border-radius: 2px !important;
    font-size: 75% !important;
    display: inline-block;
    text-decoration: none;
    padding: 4px 6px !important;
    height: 28px;
}

.tsutaeru-speech-audio {
    max-width: 214px !important;
    height: 32px
}

#body button.tsutaeru-button.tsutaeru-button-speech-start:hover,
#body button.tsutaeru-button.tsutaeru-button-config.tsutaeru-button-speech-config:hover {
    color: #9f0000 !important;
}


/* 追加 2021/02/26 ▼*/

#body button.tsutaeru-button.tsutaeru-button-speech-start:visited,
#body button.tsutaeru-button.tsutaeru-button-config.tsutaeru-button-speech-config:visited {
    color: #791e78 !important;
}

#body .tsutaeru-config.tsutaeru-config-header {
    background: #FFB100 !important
}

#body .tsutaeru-config .tsutaeru-config-header button.tsutaeru-config-close {
    display: block;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    width: 1em;
    height: 1em;
    overflow: hidden;
    text-indent: -1000px;
    background: none;
    padding: 0;
    border: none;
    cursor: pointer
}

#body .tsutaeru-text .tsutaeru-text-close {
    display: block;
    position: absolute;
    top: 5px;
    right: 5px;
    width: 1em;
    height: 1em;
    overflow: hidden;
    text-indent: -1000px;
    background: none;
    padding: 0;
    border: none;
    cursor: pointer
}

.tsutaeru-speech-audio-container {
    padding: 0;
    position: relative;
    top: 2px;
    left: 0
}

#sidr .sidr_navi_sub2 button.tsutaeru-button.tsutaeru-button-config.tsutaeru-button-speech-config {
    margin: 0 0 0 0;
}

#sidr .sidr_navi_sub2 button.tsutaeru-button.tsutaeru-button-speech-start,
#sidr .sidr_navi_sub2 button.tsutaeru-button.tsutaeru-button-speech-control,
#sidr .sidr_navi_sub2 button.tsutaeru-button.tsutaeru-button-config.tsutaeru-button-speech-config {
    background: #fff !important;
    color: #2b3095 !important;
    border: 1px solid #FFB100 !important;
    border-radius: 2px !important;
    font-size: 75% !important;
    display: inline-block;
    text-decoration: none;
    height: 45px;
    width: 50%;
}


/* ▲ 2021/12/23 伝えるweb ▲ */

/* ▼ 【2022/10/24】チャットボットボタン ▼ */
#body .bot #input-field input#chat-button {
    background: #1070D2;
}

/* ▲ 【2022/10/24】チャットボットボタン ▲ */