﻿@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: 4px 0 0 4px;
    -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 print,
screen and (min-width: 769px) and (max-width: 1000px) {
    body {
        width: 1000px;
    }
}

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


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

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

.small {
    font-size: 85%;
}

strong {
    color: #000;
}


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

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;
}

a:link>strong {
    color: #2b3095;
}

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

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

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


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

.window {
    display: inline-block;
    font-size: 62.5%;
    font-weight: normal;
    background: #e0f4ff;
    color: #333;
    border-radius: 4px;
    padding: 1px 4px;
    margin: 0 4px;
    border: 1px solid #88c9ea;
    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 #999;
    font-size: 85%;
}


/* text,textarea */

#body input[type="text"],
#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: #d5e6a6;
    border-radius: 4px;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    padding: 6px 16px;
    border: none;
    font-size: 95%;
}

#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: #c3e16f;
}


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

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

.date {
    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 {
    padding: 0 12px;
    max-width: 1280px;
    margin: 0 auto;
}

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

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


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

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

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

.inbody .main_header {
    background: #fff;
    width: 100%;
    background: url(img/pro_head_jag.png) repeat-x bottom, url(img/pro_head_bg01.png);
    padding: 0 0 32px;
}

@media only screen and (max-width: 768px) {
    .inbody .main_header {
        margin-bottom: -4px;
    }
    .inbody .main_header {
        background: #fff;
        width: 100%;
        background: url(img/pro_head_jag.png) repeat-x bottom, url(img/pro_head_bg01.png);
        padding: 0 0 104px;
    }
}

@media only screen and (max-width: 480px) {
    .inbody .main_header {
        background: url(img/pro_head_jag.png) repeat-x bottom, url(img/pro_head_bg01.png);
        padding: 0 0 80px;
    }
}


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

.h_top_wrap {
    background: #02A1E6;
    font-size: 85%;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.4);
    z-index: 1;
    position: relative;
}

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

.h_top .mainsite {
    margin: 0;
    position: relative;
    padding-left: 16px;
}

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

.h_top .mainsite a {
    color: #fff;
    text-shadow: 1px 1px 0 #0276A8, -1px 1px 0 #0276A8, 1px -1px 0 #0276A8, -1px -1px 0 #0276A8;
}

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

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

.h_top .h_toplist01>li {
    margin: 0 16px 0 0;
    padding: 0 0 0 14px;
    position: relative;
}

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

.h_top .h_toplist02>li {
    margin: 0 0 0 16px;
}

.h_top .h_toplist02>li a {
    display: block;
    border-radius: 4px;
    background: #D5E6A6;
    text-decoration: none;
    padding: 2px 4px;
}

.h_top .h_toplist02>li.lang a {
    background: transparent;
    border-radius: 0;
    text-decoration: inherit;
    padding: 0;
    display: inline;
}

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


/* フォントサイズ */

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

.font_tit {
    margin: 1px 6px 0 0;
    color: #fff;
    text-shadow: 1px 1px 0 #0276A8, -1px 1px 0 #0276A8, 1px -1px 0 #0276A8, -1px -1px 0 #0276A8;
}

.h_top .h_toplist02 .font_list li {
    margin-top: 0;
}

.h_top .h_toplist02 .font_list li a {
    background: #fff;
    border-radius: 3px 0 0 3px;
    padding: 3px 8px;
}

.h_top .h_toplist02 .font_list li:last-child a {
    background: #D5E6A6;
    border-radius: 0 3px 3px 0;
}


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

.head_in {
    max-width: 1280px;
    margin: 0 auto;
    z-index: 1;
    width: 100%;
    position: relative;
}

.head_in .h1 {
    width: 100%;
    text-align: center;
    position: absolute;
}

.inbody .h_main {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
}

.inbody .head_in .h1 {
    width: 580px;
}

.inbody .head_in .navi_home {
    position: absolute;
    left: 580px;
    margin-top: 44px;
}

.inbody .head_in .navi_home a {
    padding: 4px 8px;
    text-decoration: none;
    border: 2px #02A1E6 solid;
    border-radius: 12px;
    background: #fff;
}

.inbody .head_in .navi_home a:hover {
    padding: 4px 8px;
    text-decoration: none;
    border: 2px #02A1E6 solid;
    border-radius: 12px;
    background: #02A1E6;
}

.head_in .mainsite {
    margin: 0;
}

.head_in .mainsite a {
    display: block;
    border: 1px solid #ccc;
    background: #444;
    color: #fff;
    font-size: 85%;
    padding: 3px 10px 2px;
    text-decoration: none;
    border-radius: 4px;
}

.head_in .mainsite li a:hover {
    background: #555;
}

@media only screen and (max-width: 768px) {
    .head_in {
        padding: 0;
        width: 100%;
        border-top: 5px solid #02a1e6;
        position: relative;
        z-index: 1;
    }
    .head_in .h1 {
        max-width: 700px;
        padding-right: 56px;
    }
    .head_in .mainsite {
        display: none;
    }
    .inbody .head_in .h1 {
        width: 95%;
    }
    .inbody .head_in .navi_home {
        display: none;
    }
}


/* 検索ボックス */

.src_box {
    margin: 0 0 0 8px;
}

.src_box .q {
    float: left;
    width: calc(100% - 48px) !important;
    margin: 0;
    height: 28px !important;
    padding: 0 6px !important;
    border: none !important;
    border-right: none;
}

.src_box #search_button,
.src_box #search_button_sp {
    width: 48px;
    min-height: 28px;
    margin: 0;
    padding: 0;
    font-size: 95%;
    cursor: pointer;
    border-radius: 0 4px 4px 0;
    color: #2a2f94;
}

.src_box #search_button:hover,
.src_box #search_button_sp:hover {
    background: #c3e16f;
}

@media only screen and (max-width: 768px) {
    .h_main .src_box {
        display: none;
    }
    .src_box .q {
        width: calc(100% - 54px) !important;
    }
    .src_box #search_button_sp {
        width: 54px;
    }
}


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

.g_navi {
    letter-spacing: 0.1em;
    position: relative;
    overflow: hidden;
}

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

.g_navi_in>li {
    width: calc(100% / 6);
    width: 15.5%;
    border: none;
    margin: 0;
    display: flex;
    padding: 4px;
}

.g_navi_in>li:nth-of-type(6) {
    width: 22.5%;
}

.g_navi_in>li>a {
    display: block;
    position: relative;
    z-index: 2;
    background: #02A1E6;
    border: 4px solid #02A1E6;
    text-align: center;
    text-decoration: none;
    line-height: 1.5;
    font-size: 100%;
    padding-top: 13px;
    padding-bottom: 11px;
    width: 100%;
    transition: all 0.3s;
    border-radius: 16px;
}

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

.g_navi_in>li>a:hover,
.g_navi_in>li.active>a {
    background-color: #fff;
    border-color: #02A1E6;
}

.g_navi_in>li>a:hover>strong,
.g_navi_in>li.active>a>strong {
    color: #000;
}

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


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

#menu_button {
    float: right;
    margin: 6px 10px 0;
    display: inline-block;
    position: absolute;
    right: 0px;
}

#menu_button a {
    position: relative;
    background: #d5e6a6;
    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;
    border-radius: 4px;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.4);
}

#menu_button a .icon_ham {
    position: absolute;
    top: 10px;
    left: 50%;
    margin-left: -15px;
    display: inline-block;
    background: #646464;
    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: #646464;
    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 #bbd76e;
    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: #bbd76e;
    display: inline-block;
    padding: 14px 10px 14px 32px;
    position: relative;
    width: 100%;
}

#sidr .close a:before,
#sidr .close a:after {
    content: '';
    background: #646464;
    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 #d5e6a6;
    margin: 0;
    background: #F9FFEA;
}

#sidr .src_box #cse-search-box-sp {
    border: 1px solid #d5e6a6;
    border-radius: 4px;
}

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

#sidr ul li {
    background: none;
    border-bottom: 1px solid #d5e6a6;
    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 li.mainsite {
    background: #F9FFEA;
    border-top: 2px solid #d5e6a6;
    font-size: 85%;
}

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

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


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

.main_footer {
    width: 100%;
}

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


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

.online_strage_a {
    padding: 24px 0 64px;
}

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

.online_strage_a .mypage_h2_wrapper {
    background-color: #02A1E6;
    ;
    padding-left: 16px;
    position: relative;
    border-radius: 16px 16px 0 0;
}

.online_strage_a .mypage_title {
    float: left;
    color: #fff;
    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: #ceeef8;
    padding: 4px 16px 16px;
    border-radius: 0 0 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 #02A1E6;
    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: 24px 0 64px;
    }
    .online_strage_a .mypage {
        width: 100%;
    }
}


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

.foot_modori .modoriin {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 0 12px;
    text-align: right;
    position: relative;
}

.foot_modori a {
    display: inline-block;
    text-decoration: none;
    background: #B0E3FF;
    border-bottom: 0;
    line-height: 1;
    padding: 12px 10px 10px;
    font-size: 85%;
    border-radius: 4px 4px 0 0;
    position: absolute;
    right: 0;
    margin-right: 12px;
    bottom: 0;
}

.foot_modori a::before {
    content: "";
    display: inline-block;
    background: url(img/pro_pagetop.svg) no-repeat;
    width: 12px;
    height: 12px;
    margin-right: 8px;
}

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


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

.foot_wrap {
    background: #fff url(img/pro_foot_bg.jpg) 500px top no-repeat;
    padding: 0;
    border-top: 1px solid #B0E3FF;
}

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

.foot_link {
    padding: 12px 12px;
    text-align: center;
    font-size: 85%;
}

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

.foot_link li::after {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: -14px;
    width: 1px;
    height: 16px;
    border-left: 1px solid #B2C3CE;
    transform: rotate(20deg);
}

.foot_link li:last-child::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    right: -14px;
    width: 1px;
    height: 16px;
    border-left: 1px solid #B2C3CE;
    transform: rotate(20deg);
}

.foot_id {
    margin-top: 16px;
    display: flex;
    align-items: flex-end;
    padding-right: 180px;
}

.foot_id_home a {
    text-decoration: none;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 220px;
}

.foot_id_home a img {
    width: 100%;
    height: 100%;
}

.foot_id_home a p {
    background: #1CBBFF url(img/pro_foot_home.svg) no-repeat 16px;
    padding: 8px 0 8px 35px;
    min-width: 220px;
    display: block;
    border-radius: 6px;
    font-size: 85%;
    text-align: center;
    margin-top: -36px;
    z-index: 1;
    position: relative;
    text-shadow: 1px 1px 0 #0276A8, -1px 1px 0 #0276A8, 1px -1px 0 #0276A8, -1px -1px 0 #0276A8;
}

.foot_id_home a:hover p {
    background: #03B0FA url(img/pro_foot_home.svg) no-repeat 16px;
}

.foot_id_text {
    margin-left: 42px;
    margin-bottom: 40px;
}

.foot .address {
    margin-top: 8px;
    text-shadow: #fff 1px 1px 0, #fff -1px -1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff 0px 1px 0, #fff 0 -1px 0, #fff -1px 0 0, #fff 1px 0 0;
}

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

.foot_amippe {
    position: absolute;
    right: 0;
    top: 30%;
}

.foot_copy {
    background: #444;
    font-size: 85%;
    color: #fff;
    padding: 6px 12px;
    margin-top: 16px;
    text-align: center;
}

.foot_copyin {
    margin: 0 auto;
}

@media only screen and (max-width: 768px) {
    .foot {
        padding: 10px;
        width: 100%;
    }
    .foot_id {
        display: block;
        padding: 0;
    }
    .foot_amippe {
        top: 5%;
    }
    .foot_wrap {
        background: #fff url(img/pro_foot_bg.jpg) 0px top no-repeat;
    }
    .foot_id_text {
        margin: 16px 0 0;
    }
    .foot_copyin {
        padding: 0 10px;
        width: 100%;
    }
    .foot .address a[href^="tel:"] {
        cursor: pointer;
        color: #2b3095;
        text-decoration: underline;
    }
}

@media only screen and (max-width: 480px) {
    .foot_id_home a {
        max-width: 140px;
        position: relative;
    }
    .foot_id_home a p {
        left: 0;
        position: absolute;
        bottom: -12px;
    }
    .foot_amippe {
        width: 140px;
    }
}


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

.main {
    padding: 0;
    background-color: #fff;
    position: relative;
    overflow: hidden;
}

.main h2 {
    font-size: 150%;
    text-align: center;
    margin-bottom: 16px;
    text-shadow: #fff 1px 1px 0, #fff -1px -1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff 0px 1px 0, #fff 0 -1px 0, #fff -1px 0 0, #fff 1px 0 0;
}

.main h2::after {
    content: "";
    display: block;
    height: 8px;
    border-radius: 10px;
    width: 100%;
    background: #02A1E6;
    margin-top: 6px;
}

h2 {
    font-size: 120%;
    text-align: center;
    margin-bottom: 16px;
    text-shadow: #fff 1px 1px 0, #fff -1px -1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff 0px 1px 0, #fff 0 -1px 0, #fff -1px 0 0, #fff 1px 0 0;
}

h2::after {
    content: "";
    display: block;
    height: 8px;
    border-radius: 10px;
    width: 100%;
    background: #02A1E6;
    margin-top: 6px;
}

.main h2 a {
    display: block;
}

.main .h2 {
    overflow: hidden;
}

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

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

.main 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 li .list_icon img {
    vertical-align: middle;
    margin-top: -5px;
    margin-right: 4px;
    max-height: 18px;
}

.inkiji h2 {
    font-size: 120%;
    text-align: left;
    margin-bottom: 16px;
    text-shadow: #fff 1px 1px 0, #fff -1px -1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff 0px 1px 0, #fff 0 -1px 0, #fff -1px 0 0, #fff 1px 0 0;
}


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

.ac_display {
    display: none;
}

.ac_box h2::after {
    background: #02A1E6;
}

@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;
        margin: 0 0 0 0;
    }
    .ac_display {
        display: inline-block;
        position: absolute;
        top: 50%;
        margin: -18px 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;
    }
}


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

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


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

.emergency {
    margin-top: 24px;
}

.main .emergency h2,
.main .emergency .h2 {
    background: #a90000;
    color: #fff;
    text-shadow: none;
    padding: 8px 8px 4px 8px;
    border-radius: 30px 30px 0 0;
}

.main .emergency .h2 {
    overflow: hidden;
}

.main .emergency .h2 p {
    padding: 8px 16px 8px 8px;
    margin: 0;
}

.main .emergency_lower {
    border: 2px solid #a90000;
    border-top: none;
    padding: 16px 24px 32px 24px;
    border-radius: 0 0 30px 30px;
}

.main .emergency h2::after {
    background: none;
    margin-top: -20px;
}


/**** リード文 ****/

.main_naka .lead_sentence {
    margin: 15px 0;
    padding: 0 20px;
    font-size: 125%;
    font-weight: bold;
}

.main_naka .lead_sentence span {
    display: inline-block;
}


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

.ilist {
    margin-top: 24px;
}

.main .ilist_lower ul {
    display: flex;
    flex-flow: row wrap;
}

.main .ilist_lower ul>li {
    display: flex;
    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;
    background: linear-gradient(140deg, #fff 93%, #AFE9FF 0%);
    width: 100%;
    text-decoration: none;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2);
    border-radius: 10px;
    overflow: hidden;
}

.main .ilist_lower ul>li a:hover {
    background: linear-gradient(140deg, #AFE9FF 93%, #fff 0%);
}

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

.main .ilist_lower ul>li .ilist_title {
    text-align: center;
}

.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;
}

.main .ilist2_lower ul {
    display: flex;
    flex-flow: row wrap;
}

.main .ilist2_lower ul>li {
    display: flex;
    padding-left: 0;
    margin-right: 12px;
    text-align: center;
    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 {
    padding: 16px;
    width: 100%;
    background: #e8f4f9;
    display: flex;
    text-decoration: none;
}

.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;
}

@media only screen and (max-width: 768px) {
    .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>li:nth-of-type(n) {
        margin-right: 0;
        width: 100%;
    }
}


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

.category {
    margin-top: 24px;
}

.category2 {
    margin-top: 24px;
    background: linear-gradient(140deg, #ceeef8 94%, #69D1F0 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
}

.category2 h2::after {
    background: #02A1E6;
}

.category3 {
    margin-top: 24px;
}

.category4 {
    margin-top: 24px;
}

.category5 {
    margin-top: 24px;
}

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

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


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

.kakuka {
    margin-top: 24px;
}


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

.event {
    margin-top: 24px;
    background: linear-gradient(140deg, #ceeef8 94%, #69D1F0 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
}

.event h2::after {
    background: #02A1E6;
}

.main .event_lower {
    padding: 4px 0;
}

.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: #02A1E6;
    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;
    background: linear-gradient(140deg, #ceeef8 94%, #69D1F0 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
}

.calendar h2::after {
    background: #02A1E6;
}

.main .calendar_lower {
    padding: 4px 0;
}

.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: baseline;
}

.main .calendar table {
    width: 100%;
    background: #fff;
}

.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: #cbd9f9;
}

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

.main .calendar .today>strong {
    color: #fff;
}


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

.new {
    margin-top: 24px;
    background: linear-gradient(140deg, #E7FFCC 94%, #4AAB1A 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
}

.new h2::after {
    background: #59AB1A;
}

.main .new_lower {
    padding: 4px 0;
}

.main .new div.date {
    margin-left: 0;
    min-width: 90px;
}

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

.main .new ul li::before {
    display: none;
}

.main .new .new_lst {
    display: flex;
}

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

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

@media only screen and (max-width: 480px) {
    .main .new ul li {
        margin-top: 12px;
    }
    .main .new .new_lst {
        display: block;
    }
}


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

.topics {
    margin-top: 24px;
    border-radius: 30px;
    background: linear-gradient(140deg, #FFDFDF 94%, #E84081 0%);
    padding: 24px 32px 32px;
}

.topics h2::after {
    background: #E84081;
}

.main .topics_lower {
    padding: 4px 0;
}

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

.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 .more {
    font-size: 85%;
    margin-top: 16px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-left: auto;
}

.main .more li {
    padding: 0;
    margin: 8px 0 0 8px;
    min-width: 200px;
}

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

.main .more li a {
    background: #F9FFEA;
    border: 2px solid #59ab1a;
    display: inline-block;
    padding: 12px;
    text-align: center;
    text-decoration: none;
    width: 100%;
    border-radius: 4px;
}

.main .topics_lower .more li a {
    background: #FFF2EA;
    border: 2px solid #E84081;
    display: inline-block;
    padding: 12px;
    text-align: center;
    text-decoration: none;
    width: 100%;
    border-radius: 4px;
}

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

.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;
    }
}


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

.pickup {
    margin-top: 24px;
    border-radius: 30px;
    background: linear-gradient(140deg, #FFDFDF 94%, #E84081 0%);
    padding: 24px 32px 32px;
}

.pickup h2::after {
    background: #E84081;
}

.main .pickup_lower {
    padding: 4px 0;
}

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

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

.main .pickup_lower .pickup_sub h3 {
    background: #f9b1cd;
    padding: 4px 6px;
    font-size: 110%;
}

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


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

.pickup2 {
    margin-top: 24px;
    background: linear-gradient(140deg, #ceeef8 94%, #69D1F0 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
}

.pickup2 h2::after {
    background: #02A1E6;
}

.main .pickup2_lower {
    padding: 4px 0;
}

.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: #8ddaf1;
    padding: 4px 6px;
    font-size: 110%;
}

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


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

.ranking {
    margin-top: 24px;
    background: linear-gradient(140deg, #fff 94%, #bce8fc 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
    border: 8px solid #02A1E6;
}

.ranking h2::after {
    background: #aae1fb;
}

.main .ranking_lower {
    padding: 4px 0;
}

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

.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;
    background: linear-gradient(140deg, #fff 94%, #bce8fc 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
    border: 8px solid #02A1E6;
}

.j_s h2::after {
    background: #aae1fb;
}

.main .j_s_lower {
    padding: 4px 0;
}

.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%;
}


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

.bana {
    margin-top: 24px;
}

.bana_lower {
    padding: 4px 16px 16px;
    text-align: center;
}

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

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

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

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

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

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

.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;
}

.rss .rss_lower {
    border: 2px solid #02A1E6;
    border-top: none;
    padding: 4px 16px 16px;
}

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

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


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

.rssfide {
    margin-top: 24px;
    background: linear-gradient(140deg, #fff 94%, #bce8fc 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
    border: 8px solid #02A1E6;
}

.inbody .rssfide {
    border: none;
}

.rssfide h2::after {
    background: #aae1fb;
}

.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 {
    padding: 4px 0;
}

.rssfide .rssfide_management {
    background: #bce8fc;
    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: 24px;
    background: linear-gradient(140deg, #fff 94%, #bce8fc 0%);
    border-radius: 30px;
    padding: 32px 32px 0;
    border: 8px solid #02A1E6;
}

.image h2::after {
    display: none;
}

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

.image .image_img {
    display: block;
}


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

.link {
    margin-top: 24px;
    background: linear-gradient(140deg, #fff 94%, #bce8fc 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
    border: 8px solid #02A1E6;
}

.link h2::after {
    background: #aae1fb;
}


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

.rss_list {
    margin-top: 24px;
}


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

.option {
    margin-top: 24px;
    background: linear-gradient(140deg, #fff 94%, #bce8fc 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
    border: 8px solid #02A1E6;
}

.option h2::after {
    background: #aae1fb;
}

.main .option_lower {
    padding: 4px 0;
}


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

.faq {
    margin-top: 24px;
}


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

.faq_new {
    margin-top: 24px;
}

.main .faq_new_lower {
    border: 2px solid #02A1E6;
    border-top: none;
    padding: 4px 16px 16px;
}

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


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

.popular {
    margin-top: 24px;
}

.main .popular_lower {
    border: 2px solid #02A1E6;
    border-top: none;
    padding: 4px 16px 16px;
}

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


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

.zone01 {
    background: url(img/pro_head_jag.png) repeat-x bottom, url(img/pro_head_bg01.png);
    padding: 0 12px 77px;
}

.zone01_in {
    background: url(img/pro_head_bg02.jpg) no-repeat;
    background-size: cover;
    border-radius: 0 0 30px 30px;
    padding: 180px 0 0 0;
    overflow: hidden;
}

@media only screen and (max-width: 1000px) {
    .zone01 {
        padding: 0 12px 20px;
    }
    .zone01_in {
        display: block;
        padding: 130px 0 0 0;
        background-image: none;
    }
}

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


/**** youtubeのスタイル ****/

.head_youtube {
    background: url(img/pro_youtube_bg.png) no-repeat;
    padding: 15px 54px 87px;
    width: 670px;
    height: 420px;
    float: left;
    background-size: contain;
    margin: 0 0 32px 40px;
}

.head_youtube iframe {
    width: 100%;
    height: 100%;
}

@media only screen and (max-width: 1000px) {
    .head_youtube {
        float: none;
        margin: 24px auto;
    }
}

@media only screen and (max-width: 768px) {
    .head_youtube {
        background-size: contain;
        width: 456px;
        height: 298px;
        padding: 10px 38px 72px;
    }
}

@media only screen and (max-width: 480px) {
    .head_youtube {
        width: 296px;
        height: 186px;
        padding: 7px 25px 38px;
    }
}


/**** あみっぺのスタイル ****/

.head_amippe {
    position: relative;
    width: calc(100% - 710px);
    float: right;
}

.head_amippe img {
    max-height: 410px;
    margin-left: 16px;
}

.head_amippe_text {
    max-width: 267px;
    text-align: left;
    display: flex;
    align-items: flex-end;
    position: relative;
    margin-bottom: 36px;
    margin-right: 36px;
    position: absolute;
    right: 0;
    bottom: 0;
}

.head_amippe_text::before {
    content: '';
    position: absolute;
    left: -14px;
    bottom: 80px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 64px 0 22px 28px;
    border-color: transparent transparent transparent #fff;
    transform: rotate(-62deg);
}

.head_amippe_text p {
    margin-top: 0;
    position: relative;
    padding: 24px 16px;
    background: #fff;
    border-radius: 30px;
}

@media only screen and (max-width: 1000px) {
    .head_amippe {
        float: none;
        width: 100%;
        text-align: center;
        display: flex;
        align-content: flex-end;
        justify-content: center;
    }
    .head_amippe img {
        max-height: 340px;
    }
    .head_amippe_text {
        margin-right: 0;
        position: relative;
    }
}

@media only screen and (max-width: 480px) {
    .head_amippe img {
        max-height: 200px;
        margin-left: 0;
    }
    .head_amippe_text {
        max-width: inherit;
        margin-bottom: 0;
    }
    .head_amippe_text::before {
        border-width: 15px 0 10px 19px;
        top: 50px;
    }
}


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

.zone02_in {
    padding: 48px 12px 72px;
}

.new_menu {
    display: flex;
}

@media only screen and (max-width: 768px) {
    .zone02_in {
        padding: 48px 12px 54px;
    }
    .new_menu {
        display: block;
    }
}


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

.new_menu .new {
    width: 50%;
    margin-right: 16px;
    background: linear-gradient(140deg, #E7FFCC 90%, #4AAB1A 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
    margin-top: 32px;
}

.new_menu .new .h2 {
    overflow: inherit;
}

.new_menu .new .h2 h2 {
    float: none;
    position: relative;
    z-index: 1;
}

.new_menu .new .h2 h2::before {
    content: "";
    position: absolute;
    background: url(img/pro_new_h2.png) no-repeat;
    display: block;
    width: 174px;
    height: 99px;
    left: calc(50% - 87px);
    z-index: -1;
    bottom: 0;
}

.main .new_menu .new .new_lower {
    border: none;
    padding: 1px 0 0;
}

.main .new_menu .new .more li a {
    padding: 12px 20px 12px 58px;
    background: #F9FFEA url(img/pro_new_icon.png) no-repeat 12px center;
}

.main .new_menu .new .more li a:hover {
    background: #DBF2A2 url(img/pro_new_icon.png) no-repeat 12px center;
}

@media only screen and (max-width: 768px) {
    .new_menu .new {
        width: 100%;
        margin-right: 0px;
    }
}

@media only screen and (max-width: 480px) {
    .new_menu .new {
        padding: 24px 16px 16px;
    }
}


/**** あみっぺメニューのスタイル ****/

.new_menu .amippemenu {
    width: 50%;
    margin-top: 32px;
    margin-left: 16px;
    border-radius: 30px;
    background: linear-gradient(140deg, #FFCCCC 90%, #D6135E 0%);
    padding: 24px 32px 32px;
}

.new_menu .amippemenu h2 {
    float: none;
    position: relative;
    z-index: 1;
}

.new_menu .amippemenu h2::after {
    background-color: #D6135E;
}

.new_menu .amippemenu h2::before {
    content: "";
    position: absolute;
    background: url(img/pro_menu_h2.png) no-repeat;
    display: block;
    width: 174px;
    height: 99px;
    left: calc(50% - 87px);
    z-index: -1;
    bottom: 0;
}

.amippemenu_lower {
    display: flex;
    margin-top: 32px;
}

.amippemenu_img {
    margin-right: 8px;
    width: 163px;
}

.amippemenu_img img {
    border-radius: 25px;
}

.amippemenu_list {
    background: #fff;
    border-radius: 25px;
    padding: 0 12px 12px;
    width: 100%;
}

.amippemenu_list li {
    padding: 4px 0 4px 50px;
    background: url(img/pro_menu_list.png) no-repeat 2px 2px;
    margin-top: 20px;
}

.amippemenu_list li::before {
    display: none;
}

@media only screen and (max-width: 768px) {
    .new_menu .amippemenu {
        width: 100%;
        margin-left: 0;
        margin-top: 48px;
    }
}

@media only screen and (max-width: 480px) {
    .amippemenu_lower {
        display: block;
        margin-top: 12px;
    }
    .amippemenu_img {
        width: auto;
        text-align: center;
    }
    .amippemenu_list {
        padding: 1px 12px 12px;
        margin-top: 12px;
    }
    .new_menu .amippemenu {
        padding: 24px 16px 16px;
    }
}


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

.zone03 {
    background: url(img/pro_zone03_bg.png);
    padding: 0 12px 64px;
}

.zone03_in {
    padding: 16px 12px;
}

.main_menu h2 {
    position: absolute;
    z-index: -1;
}

.main .main_menu .ilist_lower ul>li {
    width: calc((100% - 70.1px) / 3);
    margin-right: 35px;
    margin-top: 35px;
}

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

.main .main_menu .ilist_lower ul>li a {
    border: 8px solid #02A1E6;
    border-radius: 20px;
}

.main .main_menu .ilist_lower .ilist_right {
    padding: 12px;
    margin-top: 0;
    font-size: 120%;
}

@media only screen and (max-width: 768px) {
    .zone03 {
        padding: 0 12px 32px;
    }
    .main .main_menu .ilist_lower ul>li:nth-of-type(n) {
        width: calc((100% - 16.1px) / 2);
        margin-right: 16px;
        margin-top: 16px;
    }
    .main .main_menu .ilist_lower ul>li:nth-of-type(2n) {
        margin-right: 0px;
    }
}

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


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

.zone04 {
    background: url(img/pro_zone04_bg.png);
    padding: 52px 12px 125px;
}

.main .kanren h2 {
    max-width: 520px;
    margin: 0 auto;
    position: relative;
}

.main .kanren h2::before {
    content: "";
    background: url(img/pro_kanren_h2.png) no-repeat;
    background-size: contain;
    display: inline-block;
    width: 66px;
    height: 40px;
    position: absolute;
    right: 14px;
}

.main .kanren h2::after {
    margin: 6px auto 0;
}

.main .kanren .ilist_lower {
    max-width: 838px;
    margin: 32px auto 0;
}

.main .kanren .ilist_lower ul>li {
    width: calc((100% - 124.1px) / 3);
    margin-right: 62px;
    margin-top: 24px;
}

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

.main .kanren .ilist_lower ul>li a {
    border-radius: 0;
    box-shadow: none;
    background: transparent;
}

@media only screen and (max-width: 768px) {
    .zone04 {
        padding: 24px 12px 100px;
    }
    .main .kanren .ilist_lower {
        margin: 0px auto 0;
    }
    .main .kanren .ilist_lower ul>li {
        width: calc((100% - 24.1px) / 2);
        margin-right: 24px;
    }
    .main .kanren .ilist_lower ul>li:nth-of-type(2n) {
        margin-right: 0;
    }
}


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

body.inbody {}


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

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

.pankuzu_tit,
.footstep_tit {
    background: #efefef;
    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:after {
    content: "";
    display: block;
    clear: both;
}

.main_naka_h1 h1 {
    background: #02A1E6;
    color: #000;
    padding: 14px 16px;
    font-size: 180%;
    border-radius: 16px;
}

.main_naka h2 {
    font-size: 136%;
    width: 100%;
    padding: 0 0 8px;
    margin: 24px 0 8px;
    position: relative;
}

.main_naka h2::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: '';
    background-color: #02A1E6;
}

.main_naka h3 {
    margin: 16px 0 0;
    padding: 2px 2px 2px 12px;
    border-left: 4px solid #02A1E6;
    font-size: 120%;
}

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

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

.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 #666;
    border-bottom: 1px solid #666;
    transform: rotate(-45deg);
}

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

.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 10px;
        width: 100%;
    }
    .main_naka {
        padding: 0 10px;
        width: 100%;
    }
    .main_naka .kiji_aside h2 {
        font-size: 136%;
        width: 100%;
        padding: 0 0 8px;
        margin: 24px 0 8px;
        position: relative;
    }
}


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

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

.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 .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: 32px;
}

.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: 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 {
    margin-bottom: 24px;
    margin-right: 2%;
    width: 49%;
    background: linear-gradient(140deg, #ceeef8 93%, #69D1F0 0%);
    border-radius: 30px;
    padding: 8px 24px 8px;
}

.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 {
    border-bottom: 3px solid #02A1E6;
    margin: 0;
    padding: 10px 16px;
}

.design .main_naka .page_left .page_left_float .cate_post01 h2::after {
    height: 8px;
    border-radius: 10px;
}

.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 {
    background: linear-gradient(140deg, #fff 91%, #ceeef8 0%);
    border-radius: 27px;
    padding: 24px 24px 32px;
    margin-top: 24px;
    border: 4px solid #69D1F0;
}

.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 {
        width: 100%;
        margin-right: 0;
    }
    .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 .main_naka_new {
    margin-top: 24px;
    background: linear-gradient(140deg, #E7FFCC 94%, #4AAB1A 0%);
    border-radius: 30px;
    padding: 24px 32px 32px;
}

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

.design .main_naka .main_naka_new h2::after {
    background: #4AAB1A;
}

.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_eme {
    margin-top: 24px;
}

.design .main_naka .main_naka_eme h2 {
    background: #a90000;
    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: #a90000;
    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: 2px solid #a90000;
    border-top: none;
    overflow: hidden;
    padding: 4px 16px 16px;
    margin: 0;
}


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

.design .main_naka .cat_aside {
    margin-bottom: 24px;
    margin-top: 24px;
    background: linear-gradient(140deg, #ceeef8 94%, #69D1F0 0%);
    border-radius: 30px;
    padding: 32px 24px 24px;
}

.design .main_naka .cat_aside h2 {
    background: #69D1F0;
    border: 0;
    color: #000;
    padding: 10px 12px 8px;
    padding-right: 12px;
    margin-top: 0;
    border-radius: 12px;
}

.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 .cat_aside {
        margin-bottom: 24px;
        margin-top: 0;
        background: none;
        border-radius: 30px;
        padding: 0;
    }
    .design .main_naka .cat_aside_lower {
        padding: 0 16px 8px;
    }
}


/* バナー広告 */

.design .main_naka .bana {
    margin-top: 24px;
    background: linear-gradient(140deg, #ceeef8 94%, #69D1F0 0%);
    border-radius: 30px;
    padding: 32px 24px 16px;
}

.design .main_naka .bana h2 {
    background: #69D1F0;
    border-bottom: 0;
    color: #000;
    padding: 8px 16px 6px;
    margin-top: 0;
    border-radius: 12px;
}

.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;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .bana {
        margin-top: 0;
        background: none;
        padding: 0;
    }
}


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

.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 .pickup_post {
    margin-top: 24px;
    background: linear-gradient(140deg, #ceeef8 94%, #69D1F0 0%);
    border-radius: 30px;
    padding: 1px 32px 32px;
}

.design .main_naka .pickup_post .category_p01 {
    margin-top: 0;
}


/********************** 記事ページのスタイル **********************/

.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: #efefef;
        border: 1px solid #ccc;
        padding-left: 0;
        padding: 5px;
        margin: 12px 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 #ccc;
    padding: 1px;
    vertical-align: bottom;
}


/*お問い合わせフォーム*/

.waku .kiji_sub .kiji_aside.syosai_sonota {
    margin-top: 16px;
    font-size: 85%;
    text-align: center;
    word-wrap: break-word;
    background: linear-gradient(140deg, #fff 91%, #ceeef8 0%);
    border-radius: 27px;
    padding: 8px 12px 16px;
    border: 4px solid #69D1F0;
}

.waku .kiji_sub .kiji_aside.syosai_sonota h2 {
    display: inline-block;
    padding: 6px 4px 4px;
    border: 0;
    width: 100%;
    text-align: center;
}

.waku .kiji_sub .kiji_aside.syosai_sonota p {
    text-align: left;
    padding: 0 8px;
}

.waku .kiji_sub .kiji_aside.syosai_sonota .for_img {
    text-align: center;
    background: #d5e6a6;
    font-size: 85%;
    display: inline-block;
    border-radius: 4px;
    width: 100%;
}

.waku .kiji_sub .kiji_aside.syosai_sonota .for_img a {
    display: block;
    padding: 8px 5px 7px;
    color: #000;
    text-decoration: none;
    width: 100%;
}


/*共通スタイル*/

.waku .kiji_sub .kiji_aside {
    margin-top: 16px;
    background: linear-gradient(140deg, #fff 91%, #ceeef8 0%);
    border-radius: 27px;
    padding: 8px 8px 16px;
    border: 4px solid #69D1F0;
}

.waku .kiji_sub .kiji_aside_lower {
    padding: 0 16px 16px;
}

.waku .kiji_sub .kiji_aside h2 {
    padding: 10px 8px 8px;
}

.waku .kiji_sub .kiji_aside>ul {
    border: 1px solid #ccc;
    padding: 0 8px 12px;
}

.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: 1px solid #666;
    border-bottom: 1px solid #666;
    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;
    }
}


/**** 別ルートのスタイル ****/

.design .main_naka .route_box {
    margin-bottom: 24px;
}

.design .main_naka .route_box h2 {
    background: #fff;
    border-bottom: 2px solid #ccc;
    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 {
    margin-bottom: 24px;
    background: linear-gradient(140deg, #ceeef8 94%, #69D1F0 0%);
    border-radius: 30px;
    padding: 1px 32px 32px;
}

@media only screen and (max-width: 768px) {
    .inkiji .main_naka .kiji_aside,
    .infaq .main_naka .kiji_aside {
        margin-bottom: 24px;
        margin-top: 0;
        background: none;
        border-radius: 30px;
        padding: 0;
    }
    .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: #69D1F0;
        border: 0;
        padding: 10px 12px 8px;
        margin-top: 0;
        border-radius: 12px;
    }
    .inkiji .main_naka .kiji_aside h2::after,
    .infaq .main_naka .kiji_aside h2::after {
        display: none;
    }
    .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 {
        margin-bottom: 24px;
        margin-top: 0;
        background: none;
        border-radius: 30px;
        padding: 0;
    }
    /* 外部RSS */
    .inkiji .main_naka .kiji_aside.rssfide h2 {}
    /* 同じ分類の記事 */
    .inkiji .main_naka .kiji_aside.kanrencon h2 {
        color: #222;
    }
    /* 組織内ジャンル */
    .inkiji .main_naka .kiji_aside.kakuka h2 {
        color: #222;
    }
    /* 関連コンテンツ */
    .inkiji .main_naka .kiji_aside.kanren h2 {
        color: #222;
    }
    /* 関連している可能性のある記事 */
    .inkiji .main_naka .kiji_aside.kanren2 h2 {
        color: #222;
    }
    /* お問い合わせフォーム */
    .main_naka .kiji_aside.syosai_sonota h2 {
        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: #a90000;
        color: #fff;
        padding: 6px 8px 4px;
    }
}


/**** 分類ページリストのスタイル ****/

.design .main_naka .img_cat .page_left {
    margin-top: 0;
}

.design .main_naka .img_cat .category_end {
    display: flex;
    flex-wrap: wrap;
}

.design .main_naka .img_cat .category_end li {
    background: #fff;
    border: 4px solid #02a1e6;
    margin-right: calc(2.5% / 2);
    margin-top: 14px;
    width: 32.5%;
    border-radius: 20px;
    text-align: center;
}

.design .main_naka .img_cat .category_end li:nth-of-type(3n) {
    margin-right: 0;
}

.design .main_naka .img_cat .category_end li a {
    text-decoration: none;
}

.design .main_naka .img_cat .category_end img {
    max-height: 250px;
}

.design .main_naka .img_cat .category_end .text {
    padding: 10px 4px;
}

.design .main_naka .img_cat .category_end .date {
    width: 100%;
}

@media only screen and (max-width: 768px) {
    .design .main_naka .img_cat .category_end li:nth-of-type(n) {
        width: 49.3%;
        margin-right: calc(2.5% / 2);
    }
    .design .main_naka .img_cat .category_end li:nth-of-type(2n) {
        margin-right: 0;
    }
}

@media only screen and (max-width: 480px) {
    .design .main_naka .img_cat .category_end li:nth-of-type(n) {
        width: 100%;
        margin-right: 0;
        text-align: left;
        padding-bottom: 0;
    }
    .design .main_naka .img_cat .category_end li a {
        display: flex;
        align-items: flex-start;
    }
    .design .main_naka .img_cat .category_end .text {
        width: calc(100% - 160px);
        margin: 0 0 0 4px;
        padding: 5px;
    }
    .design .main_naka .img_cat .category_end img {
        width: 160px;
    }
}


/**** 記事ページさわやかフェアのスタイル ****/

.inkiji .sawayaka_wrap .h2_ttl {
    background: #a8f2e8 url(img/pro_ttlbg_sawayaka.png);
    min-height: 150px;
    font-size: 200%;
    padding: 7px 10px;
    display: flex;
    align-items: center;
    line-height: 1.3;
    margin-bottom: 8px;
    border-radius: 20px;
    background-size: 140px;
}

.inkiji .sawayaka_wrap .h2_ttl img {
    width: 140px;
    margin-right: 24px;
}

.inkiji .sawayaka_wrap .h2_ttl strong {
    color: #000;
}

.inkiji .sawayaka_img_bg .mol_imageblock_img {
    background: #dbfffa;
    padding: 20px;
}

.inkiji .sawayaka_img_bg img {
    background: #fff;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);
    padding: 4px;
    border: 1px solid #ccc;
}

.inkiji .sawayaka_img {
    background: #dbfffa;
    padding: 20px 20px 10px 20px;
    margin-top: 24px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.mol_contents .sawayaka_img .mol_imageblock {
    margin-top: 0;
    margin-bottom: 10px;
    width: 49.5%;
}

.mol_contents .sawayaka_img .mol_imageblock_img_al_left {
    min-width: auto;
}

.mol_contents .sawayaka_img .mol_imageblock img {
    background: #fff;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);
    padding: 4px;
    border: 1px solid #ccc;
    width: 100%;
}

@media only screen and (max-width: 480px) {
    .inkiji .sawayaka_wrap .h2_ttl {
        background-size: 100px;
        font-size: 160%;
        padding: 18px 10px;
        min-height: 110px;
    }
    .inkiji .sawayaka_wrap .h2_ttl img {
        width: 100px;
    }
    .mol_contents .sawayaka_img .mol_imageblock {
        width: 100%;
    }
}


/**** 記事ページあみ大使のスタイル ****/

.inkiji .taishi_wrap .h2_ttl {
    background: #ffd17b url(img/pro_ttlbg_taishi.png);
    min-height: 150px;
    font-size: 200%;
    padding: 7px 10px;
    display: flex;
    align-items: center;
    line-height: 1.3;
    margin-bottom: 8px;
    border-radius: 20px;
    background-size: 140px;
}

.inkiji .taishi_wrap .h2_ttl img {
    width: 140px;
    margin-right: 24px;
}

.inkiji .taishi_wrap .h2_ttl strong {
    color: #000;
}

.inkiji .taishi_img_bg .mol_imageblock_img {
    background: #ffebc5;
    padding: 20px;
}

.inkiji .taishi_img_bg img {
    background: #fff;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);
    padding: 4px;
    border: 1px solid #ccc;
}

.inkiji .taishi_img {
    background: #ffebc5;
    padding: 20px 20px 10px 20px;
    margin-top: 24px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.mol_contents .taishi_img .mol_imageblock {
    margin-top: 0;
    margin-bottom: 10px;
    width: 49.5%;
}

.mol_contents .taishi_img .mol_imageblock_img_al_left {
    min-width: auto;
}

.mol_contents .taishi_img .mol_imageblock img {
    background: #fff;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);
    padding: 4px;
    border: 1px solid #ccc;
    width: 100%;
}

@media only screen and (max-width: 480px) {
    .inkiji .taishi_wrap .h2_ttl {
        background-size: 100px;
        font-size: 160%;
        padding: 18px 10px;
        min-height: 110px;
    }
    .inkiji .taishi_wrap .h2_ttl img {
        width: 100px;
    }
    .mol_contents .taishi_img .mol_imageblock {
        width: 100%;
    }
}


/**** 記事ページあみ大使のスタイル ****/

.channel_img_bg {
    background: #d9ffff;
    padding: 20px 20px 10px 20px;
    margin-top: 24px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

@media only screen and (max-width: 768px) {
    .channel_img_bg {
        width: 456px;
        margin: 0 auto;
    }
    .channel_img_bg iframe {
        width: 100%;
        height: 100%;
    }
}

@media only screen and (max-width: 480px) {
    .channel_img_bg {
        width: 296px;
    }
}
