@charset "utf-8";

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

/* 基本
----------------------------------------------------------*/
html {
    overflow-y: scroll;
}
body {
    min-width: 980px;
    background: #fbf8f3 url("../img/body_bg01.jpg");
    color: #333333;
    font-size: 14px;
    line-height: 1.4;
    -webkit-text-size-adjust: 100%;
}
@media screen and (max-width: 480px) {
    body {
        min-width: 100%;
    }
}
body, button, input, select, textarea {
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
}
ul {
    list-style: none;
}
img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom; /*■■■*/
    line-height: 0;
}
input, select, textarea {
    font-size: 14px;
    vertical-align: middle;
}

/* 一般的なリンク */
a:link,
a:visited {
    color: #2d3c95;
    text-decoration: underline;
    outline: none;
}
a:hover,
a:focus,
a:active {
    text-decoration: none;
}
a:hover img,
a:focus img,
a:active img {
    opacity: .7;
}



/* clearfixなど
----------------------------------------------------------*/
.clearfix:after {
    content: "";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both;
}

/**/
@media screen and (max-width: 480px) {
    .mode_pc {
        display: none;
    }
}
@media screen and (min-width: 481px) {
    .mode_sp {
        display: none;
    }
}



/* top
----------------------------------------------------------*/
#top {
    visibility: hidden;
    width: 0;
    height: 0;
}



/* header
----------------------------------------------------------*/
#header {
    position: relative;
    width: 980px;
    min-height: 110px;
    margin: 0 auto 10px;
    padding: 10px 10px 0;
    box-sizing: border-box;
    font-size: 12px;
}
@media screen and (max-width: 480px) {
    #header {
        display: table;
        width: 100%;
        min-height: 0;
        margin: 0;
        padding: 0;
    }
}
#header #header_lead {
    margin: 0 0 5px;
    font-size: 10px;
    text-align: right;
}
@media screen and (max-width: 480px) {
    #header #header_lead {
        display: none;
    }
}
#header #header_intro {
    position: absolute;
    left: 9px;
    top: 36px;
    z-index: 10;
}
@media screen and (max-width: 480px) {
    #header #header_intro {
        display: table-cell;
        width: 28%;
        position: static;
        padding: 9px 5px 9px 9px;
        vertical-align: middle;
    }
}
#header #header_intro img {
    width: 100%;
}
#header #header_mainlogo {
    position: absolute;
    left: 190px;
    top: 46px;
    z-index: 10;
}
@media screen and (max-width: 480px) {
    #header #header_mainlogo {
        display: table-cell;
        position: static;
        padding: 10px 10px 10px 0;
        vertical-align: middle;
    }
}
#header #header_mainlogo img {
    width: 100%;
}
#header #header_tel {
    position: absolute;
    left: 592px;
    top: 56px;
    z-index: 10;
}
@media screen and (max-width: 480px) {
    #header #header_tel {
        display: none;
    }
}
#header #header_booking {
    position: absolute;
    left: 842px;
    top: 54px;
    z-index: 10;
}
@media screen and (max-width: 480px) {
    #header #header_booking {
        display: none;
    }
}
#header #header_nav {
    width: 780px;
    margin: 0 0 0 auto;
    text-align: right;
}
@media screen and (max-width: 480px) {
    #header #header_nav {
        display: none;
    }
}
#header #header_nav li {
    display: inline;
}
#header #header_nav li:after {
    content: "｜";
    margin: 0 8px 0 12px;
}
#header #header_nav li:last-child:after {
    content: "";
    margin: 0;
}

/**/
#header #header_nav_sp_btn {
    display: none;
}
@media screen and (max-width: 480px) {
    #header #header_nav_sp_btn {
        display: table-cell;
        width: 12%;
        padding: 5px 5px 4px 0;
        text-align: right;
        vertical-align: middle;
    }
}
#header #header_nav_sp_btn img {
    display: inline-block;
    height: 34px;
    padding: 5px;
}



/* global_nav
----------------------------------------------------------*/
#global_nav {
    width: 980px;
    margin: 0 auto 10px;
    padding: 0 9px;
    box-sizing: border-box;
}
@media screen and (max-width: 480px) {
    #global_nav {
        display: none;
    }
}
#global_nav > ul {
    display: table;
    width: 100%;
    border: solid 1px #ffffff;
    border-radius: 3px;
    box-sizing: border-box;
    box-shadow: 0 -1px 3px rgba(0, 0, 0, 0.25);
    background: #720C15;
    background: -ms-linear-gradient(top, #720C15e 30%, #d16691 100%);
    background: linear-gradient(to bottom, #720C15 30%, #d16691 100%);
}
#global_nav > ul > li {
    display: table-cell;
    position: relative;
    border-left: dotted 1px #ffffff;
}
#global_nav > ul > li:first-child {
    border-left: none 0;
}
#global_nav > ul > li > a:link,
#global_nav > ul > li > a:visited {
    display: block;
    padding: 15px 4px 12px;
    background: #8a0e1e;
    background: -ms-linear-gradient(top, #8a0e1e 30%, #d16691 100%);
    background: linear-gradient(to bottom, #8a0e1e 30%, #d16691 100%);
    color: #ffffff;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
}
#global_nav > ul > li > a:hover,
#global_nav > ul > li > a:focus,
#global_nav > ul > li > a:active {
    background: url("../img/global_nav_bg01.png") 50% 94% no-repeat;
    background-size: 92% 2px;
}
#global_nav > ul > li:first-child > a {
    border-radius: 3px 0 0 3px;
}
#global_nav > ul > li:last-child > a {
    border-radius: 0 3px 3px 0;
}
#global_nav ul ul {
    display: none;
    position: absolute;
    top: 100%;
    left: -1px;
    z-index: 10;
    width: 220px;
    border: solid 1px #ffffff;
    background: #ffffff;
    font-size: 12px;
}
#global_nav ul .item07 ul {
    left: auto;
    right: -1px;
}
#global_nav ul ul li {
    border-top: solid 1px #ffffff;
}
#global_nav ul ul li:first-child {
    border-top: none 0;
}
#global_nav ul ul li a:link,
#global_nav ul ul li a:visited {
    display: block;
    padding: 10px 6px 8px 14px;
    background: #fbe9e8;
    color: #cc315d;
    text-decoration: none;
}
#global_nav ul ul li a:hover,
#global_nav ul ul li a:focus,
#global_nav ul ul li a:active {
    background: #fcc4d3;
    color: #333333;
}



/* global_nav_sp
----------------------------------------------------------*/
#global_nav_sp {
    display: none;
}
@media screen and (max-width: 480px) {
    #global_nav_sp {
        position: fixed;
        width: 100%;
        left: 0;
        top: 0;
        z-index: 9999;
        background: #ffffff;
        font-size: 12px;
    }
}
#global_nav_sp #global_nav_sp_close {
    display: table;
    width: 100%;
    height: 58px;
    padding: 10px;
    box-sizing: border-box;
    background: #cc315d;
    color: #ffffff;
    line-height: 1.0;
}
#global_nav_sp #global_nav_sp_close span {
    display: table-cell;
    vertical-align: middle;
}
#global_nav_sp #global_nav_sp_close span:first-child {
    font-size: 14px;
}
#global_nav_sp #global_nav_sp_close span:last-child {
    font-size: 20px;
    text-align: right;
}
#global_nav_sp ul {}
#global_nav_sp ul li {
    border-bottom: solid 1px #cc315d;
}
#global_nav_sp ul li:last-child {
    border-bottom: solid 5px #cc315d;
}
#global_nav_sp ul li a {
    display: block;
    padding: 14px 10px 11px;
    background: #ffffff;
    color: #333333;
    text-align: center;
    text-decoration: none;
}
#global_nav_sp ul li:nth-child(2n) a {
    background: #f7e1e4;
}

/**/
#overlay {
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 100%;
    background: #000000;
    opacity: 0.6;
    z-index: 999;
}


#right-menu{display:none;}
#sidr-right{display:none;}
@media screen and (max-width: 480px) {
	#right-menu{display:block;}
	.close_btn{width:11%;max-width:47px;position:absolute;right:3%; top:1.5%;}

	ul.accordion a { display:block;}
	ul.accordion ul {display:none;}
	ul.accordion > li > a span { background:url(../img/open.png) right center no-repeat;padding:5px 45px 5px 0;background-size:16px;}
	ul.accordion > li > a span.open { background:url(../img/close.png) right center no-repeat;background-size:16px;}

  #sidr-right .spnavtel{width:70%;margin:15px 15px 15px 15px;}

}

/* contents
----------------------------------------------------------*/
#contents {
    width: 980px;
    margin: 0 auto;
    padding: 0 10px;
    box-sizing: border-box;
}
@media screen and (max-width: 480px) {
    #contents {
        width: auto;
        padding: 0;
    }
}
#contents_inner {
    margin: 0 auto 10px;
    padding: 20px 10px 10px 20px;
    box-sizing: border-box;
    background: #ffffff;
}
@media screen and (max-width: 480px) {
    #contents_inner {
        margin: 0;
        padding: 0;
    }
}



/* main
----------------------------------------------------------*/
#main {
    float: left;
    width: 685px;
    line-height: 1.6;
}
@media screen and (max-width: 480px) {
    #main {
        float: none;
        width: auto;
        padding: 20px 0 0;
    }
}

/* ボックス */
#main .content_box00 {
    clear: both;
}
@media screen and (max-width: 480px) {
    #main .content_box00 {
        padding: 0 10px;
    }
}
#main .content_box01 {
    clear: both;
    margin: 0 0 20px;
    padding: 20px 20px 1px;
    border-radius: 3px;
    box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
    background: #fbf8f3 url("../img/body_bg01.jpg");
}
@media screen and (max-width: 480px) {
    #main .content_box01 {
        padding: 15px 10px 1px;
    }
}
#main .content_box02 {
    clear: both;
    margin: 0 0 20px;
    padding: 20px 20px 1px;
    border: solid 5px #cc315d;
    border-radius: 3px;
}
@media screen and (max-width: 480px) {
    #main .content_box02 {
        padding: 15px 10px 1px;
    }
}
#main .content_box03 {
    clear: both;
    margin: 0 0 20px;
    padding: 20px 20px 1px;
    border: solid 5px #000066;
    border-radius: 3px;
}
@media screen and (max-width: 480px) {
    #main .content_box03 {
        padding: 15px 10px 1px;
    }
}
#main .scroll_box { }
@media screen and (max-width: 480px) {
    #main .scroll_box {
        width: 100%;
        overflow-x: auto;
        margin: 0 0 20px;
        box-sizing: border-box;
    }
    #main .scroll_box {
        overflow-x: auto;
    }
    #main .scroll_box::-webkit-scrollbar {
        height: 20px;
    }
    #main .scroll_box::-webkit-scrollbar-track {
        background: #f7f7f1;
    }
    #main .scroll_box::-webkit-scrollbar-thumb {
        background: #c0ccd2;
    }
}

#main .content_box04 {
    clear: both;
    margin: 0 0 20px;
    padding: 20px 20px 1px;
    border-radius: 3px;
    box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
    background: #d9eef9;
}
@media screen and (max-width: 480px) {
    #main .content_box04 {
        padding: 15px 10px 1px;
    }
}



/* 見出し */
#main .content_title01 {
    margin: 0 0 18px;
    background: #fff;
    color: #ffffff;
    font-size: 21px;
    text-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
    line-height: 1.2;
}
#main .content_title01 h2 {
	padding: .6em 1em;
	background: -webkit-linear-gradient(top, #eee 0%, #ccc 100%);
	background: linear-gradient(to bottom, #eee 0%, #ccc 100%);
	border-top: 1px solid #888;
	border-right: 10px solid #aaa;
	border-bottom: 1px solid #888;
	border-left: 30px double #aaa;
	border-radius: 5px;
	color: #FF0066;
	font-weight: bold;
	font-size: 1.00em;
}

#main h3 {
    margin: 0 0 18px;
    padding: 0 0 3px;
    border-bottom: solid 4px #d33360;
    color: #942343;
    font-size: 18px;
    line-height: 1.2;
}
#main h4 {
    margin: -2px 0 18px;
    padding: 2px 0 0 25px;
    background: url("../img/icon_circle_red01.png") 0 0 no-repeat;
    color: #942343;
    font-size: 16px;
    line-height: 1.2;
}

/* テキスト・リンク */
#main p {
    margin: 0 0 18px;
}
#main ul {
    margin: 0 0 18px;
}
#main li {
    margin: 0 0 5px;
    padding: 0 0 0 10px;
    background: url("../img/icon_disc_black01.png") 0 0.5em no-repeat;
}
#main ul.link li,
#main li.link {
    background: url("../img/icon_arrow_right_black01.png") 0 0.5em no-repeat;
}
#main a.pdf {
    padding-right: 20px;
    background: url("../img/icon_pdf01.png") 100% 0 no-repeat;
}
@media screen and (max-width: 480px) {
    #main a.pdf {
        background-size: auto 13px;
    }
}
#main a.blank {
    padding-right: 20px;
    background: url("../img/icon_blank_blue01.png") 100% 0.1em no-repeat;
}

/* カラー */
#main .color_red01 {
    color: #cc315d;
}
#main .color_blue01 {
    color: #3836a5;
}
#main .color_green01 {
    color: #3a8c1a;
}

/* 画像 */
#main img {
    margin: 0 0 10px;
    border: solid 3px #ffffff;
    box-sizing: border-box;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
}
#main .img_no_border {
    border: none 0;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}
#main .img_left {
    float: left;
    margin: 0 20px 18px 0;
    width: 224px;
}
@media screen and (max-width: 480px) {
    #main .img_left {
        display: block;
        float: none;
        width: 100%;
        margin: 0 0 18px;
    }
}
#main .img_right {
    float: right;
    margin: 0 0 18px 20px;
    width: 224px;
}
@media screen and (max-width: 480px) {
    #main .img_right {
        display: block;
        float: none;
        width: 100%;
        margin: 0 0 18px;
    }
}

/* テーブル */
#main table {
    margin: 0 0 20px;
}

/**/
#main .table01 {
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse;
}
#main .table01 tr {}
#main .table01 tr th {
    padding: 10px 10px 8px;
    border: solid 1px #dddddd;
    background: #fceaea;
    font-weight: normal;
    text-align: left;
    white-space: nowrap;
}
#main .table01 tr td {
    padding: 10px 10px 8px;
    border: solid 1px #dddddd;
    background: #ffffff;
}

/* カテゴリ内ナビ */
#main .local_link {
    clear: both;
    margin: 0 0 30px 0;
    padding: 20px 20px 1px 20px;
    background: #fbf8f3 url("../img/body_bg01.jpg");
}
@media screen and (max-width: 480px) {
    #main .local_link {
        padding: 0;
        background: none;
    }
}
#main .local_link h5 {
    margin: 0 0 10px;
    color: #942343;
    font-size: 16px;
}
@media screen and (max-width: 480px) {
    #main .local_link h5 {
        margin: 0 0 5px;
        padding: 0 10px;
    }
}
#main .local_link ul {
    padding: 0 0 0 10px;
}
@media screen and (max-width: 480px) {
    #main .local_link ul {
        padding: 0;
    }
}
#main .local_link ul li {
    display: inline-block;
    margin: 0 30px 5px 0;
}
@media screen and (max-width: 480px) {
    #main .local_link ul li {
        display: block;
        margin: 0;
        padding: 0;
        border-bottom: solid 1px #fcc4d3;
        background: none;
    }
}
#main .local_link ul li:first-child {}
@media screen and (max-width: 480px) {
    #main .local_link ul li:first-child {
        border-top: solid 1px #fcc4d3;
    }
}
#main .local_link ul li a {}
@media screen and (max-width: 480px) {
    #main .local_link ul li a {
        display: block;
        padding: 15px 24px 12px 20px;
        background: #fbe9e8 url("../img/icon_arrow_right_red02.png") 97% 50% no-repeat;
        background-size: 8px auto;
        color: #333333;
        font-size: 12px;
        font-weight: normal;
        text-decoration: none;
    }
}

/* サイトマップ */
#main .sitemap_box {
    display: table;
    clear: both;
    width: 100%;
    margin: 0 0 20px;
    padding: 20px;
    box-sizing: border-box;
    background: #fbf8f3 url("../img/body_bg01.jpg");
}
@media screen and (max-width: 480px) {
    #main .sitemap_box {
        display: block;
        background: transparent;
        padding: 0;
        border: none 0;
    }
}
#main .sitemap_box .left {
    display: table-cell;
    width: 50%;
    padding: 0 20px 0 0;
    border-right: solid 1px #dddddd;
    box-sizing: border-box;
}
@media screen and (max-width: 480px) {
    #main .sitemap_box .left {
        display: block;
        width: auto;
        padding: 0;
        border-right: none 0;
    }
}
#main .sitemap_box .right {
    display: table-cell;
    width: 50%;
    padding: 0 0 0 20px;
    box-sizing: border-box;
}
@media screen and (max-width: 480px) {
    #main .sitemap_box .right {
        display: block;
        width: auto;
        padding: 0;
    }
}
#main .sitemap_box .sitemap_title {
    margin: 0 0 5px;
    font-weight: bold;
}
@media screen and (max-width: 480px) {
    #main .sitemap_box .sitemap_title {
        padding: 0 0 0 10px;
    }
}
@media screen and (max-width: 480px) {
    #main .sitemap_box ul.link {}
    #main .sitemap_box ul.link li {
        margin: 0;
        padding: 0;
        border-bottom: solid 1px #fcc4d3;
        background: none;
    }
    #main .sitemap_box ul.link li:first-child {
        border-top: solid 1px #fcc4d3;
    }
    #main .sitemap_box ul.link li a {
        display: block;
        padding: 15px 24px 12px 20px;
        background: #fbe9e8 url("../img/icon_arrow_right_red02.png") 97% 50% no-repeat;
        background-size: 8px auto;
        color: #333333;
        font-size: 12px;
        font-weight: normal;
        text-decoration: none;
    }
}



/* side
----------------------------------------------------------*/
#side {
    float: right;
    width: 225px;
    font-size: 12px;
}
@media screen and (max-width: 480px) {
    #side {
        float: none;
        width: auto;
    }
}

/**/
#side #side_main {
    margin: 0 0 10px;
    padding: 15px 10px 1px;
    border: solid 1px #dddddd;
    border-radius: 2px;
    box-sizing: border-box;
    background: #ffffff;
    background: -ms-linear-gradient(top, #fceaea 0%, #ffffff 12%);
    background: linear-gradient(to bottom, #fceaea 0%, #ffffff 12%);
}
@media screen and (max-width: 480px) {
    #side #side_main {
        padding: 0;
        border: none 0;
        border-radius: 0;
        background: none;
    }
}

/**/
#side #side_main #side_lead01 {
    margin: 0 0 10px;
}
@media screen and (max-width: 480px) {
    #side #side_main #side_lead01 {
        display: none;
    }
}
#side #side_main #side_lead01 img {
    display: block;
    margin: 0 auto 10px;
}
#side #side_main #side_lead01 img:last-child {
    margin: 0 auto;
}

/**/
#side #side_main #side_nav01 {
    margin: 0 0 10px;
}
#side #side_main #side_nav01 li {
    margin: 0 0 10px;
    border: solid 1px #dddddd;
    border-radius: 2px;
    box-sizing: border-box;
}
@media screen and (max-width: 480px) {
    #side #side_main #side_nav01 li {
        margin: 0;
        border: none 0;
        border-bottom: solid 1px #fcc4d3;
        border-radius: 0;
    }
}
#side #side_main #side_nav01 li:first-child {}
@media screen and (max-width: 480px) {
    #side #side_main #side_nav01 li:first-child {
        border-top: solid 1px #fcc4d3;
    }
}
#side #side_main #side_nav01 li a {
    display: block;
    padding: 10px 30px 7px 10px;
    border-radius: 2px 2px 0 0;
    background: #ce315e;
    background: -ms-linear-gradient(#ce315e, #f13a6e);
    background: linear-gradient(#ce315e, #f13a6e);
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
    text-decoration: none;
}
@media screen and (max-width: 480px) {
    #side #side_main #side_nav01 li a {
        padding: 15px 24px 12px 20px;
        background: #fbe9e8 url("../img/icon_arrow_right_red02.png") 97% 50% no-repeat;
        background-size: 8px auto;
        color: #333333;
        font-size: 12px;
        font-weight: normal;
    }
}
#side #side_main #side_nav01 li a:hover {
    text-decoration: underline;
}
#side #side_main #side_nav01 li ul {
    padding: 5px 0;
    background: #ffffff;
}
@media screen and (max-width: 480px) {
    #side #side_main #side_nav01 li ul {
        display: none;
    }
}
#side #side_main #side_nav01 li ul li {
    margin: 0;
    border: none 0;
    border-bottom: dotted 1px #e4dadb;
}
#side #side_main #side_nav01 li ul a {
    padding: 7px 10px 5px 10px;
    background: transparent;
    color: #333333;
    font-size: 12px;
    font-weight: normal;
}

/**/
#side #side_bnr {
    margin: 0 0 10px;
}
@media screen and (max-width: 480px) {
    #side #side_bnr {
        padding: 0 10px;
    }
}
#side #side_bnr li {
    margin: 0 0 10px;
    padding: 0;
    background: none;
}
#side #side_bnr li:last-child {
    margin-bottom: 0;
}
#side #side_bnr li a {}
#side #side_bnr li a img {}

/**/
#side #side_sub {
    padding: 10px;
    border-top: dotted 1px #e4dadb;
}
@media screen and (max-width: 480px) {
    #side #side_sub {
        display: none;
    }
}
#side #side_sub h3 {
    margin: 0 0 5px;
    font-size: 16px;
    font-weight: bold;
}
#side #side_sub p {
    margin: 0 0 12px;
}
#side #side_sub strong {
    color: #cc315d;
    font-weight: bold;
}
#side #side_sub #side_location_image {
    margin: 0 0 15px;
    text-align: center;
}
#side #side_sub #side_location_image img {
    border: solid 3px #ffffff;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
}
#side #side_sub #side_access_btn {
    margin: 0 -10px 10px;
}



/* footer
----------------------------------------------------------*/
#footer {
    display: table;
    position: relative;
    width: 980px;
    margin: 0 auto 20px;
    padding: 55px 10px 0;
    box-sizing: border-box;
    font-size: 12px;
}
@media screen and (max-width: 480px) {
    #footer {
        display: block;
        width: auto;
        margin: 0;
        padding: 10px;
    }
}

/**/
#footer .col {
    display: table-cell;
    box-sizing: border-box;
    vertical-align: top;
}
@media screen and (max-width: 480px) {
    #footer .col {
        display: block;
        width: auto;
    }
}

/**/
#footer #footer_summary {
    width: 350px;
    padding: 0 25px 0 0;
}
@media screen and (max-width: 480px) {
    #footer #footer_summary {
        display: table;
        width: 100%;
        margin: 0 0 10px;
        padding: 0;
    }
}
#footer #footer_summary img {}
@media screen and (max-width: 480px) {
    #footer #footer_summary img {
        width: 100%;
    }
}
#footer #footer_summary #footer_intro {
    display: none;
}
@media screen and (max-width: 480px) {
    #footer #footer_summary #footer_intro {
        display: table-cell;
        width: 35%;
        padding: 0 10px 0 0;
        vertical-align: middle;
    }
}
#footer #footer_summary #footer_mainlogo {
    display: block;
    margin: 0 0 10px;
}
@media screen and (max-width: 480px) {
    #footer #footer_summary #footer_mainlogo {
        display: table-cell;
        padding: 0;
        vertical-align: middle;
    }
}
#footer #footer_summary #footer_address {}
@media screen and (max-width: 480px) {
    #footer #footer_summary #footer_address {
        display: none;
    }
}
#footer #footer_summary #footer_address a {
    font-size: 14px;
}

/**/
#footer #footer_image {
    width: 205px;
    padding: 0 15px 0 0;
}
@media screen and (max-width: 480px) {
    #footer #footer_image {
        display: none;
    }
}

/**/
#footer #footer_nav {
    width: 170px;
    padding: 0 10px 0 0;
}
@media screen and (max-width: 480px) {
    #footer #footer_nav {
        display: none;
    }
}
#footer #footer_nav ul {}
#footer #footer_nav ul li {
    margin: 0 0 5px;
}
#footer #footer_nav ul li a {
    display: block;
    padding: 0 0 0 10px;
    background: url("../img/icon_arrow_right_black01.png") 0 0.4em no-repeat;
}

/**/
#footer #footer_contact {
    width: 235px;
    padding: 15px 0 0;
}
@media screen and (max-width: 480px) {
    #footer #footer_contact {
        width: auto;
        border-top: solid 1px #d3c6c4;
    }
}
#footer #footer_contact #footer_tel {
    margin: 0 0 10px;
    text-align: center;
}
#footer #footer_contact #footer_tel img {
    width: 98%;
}
@media screen and (max-width: 480px) {
    #footer #footer_contact #footer_tel img {
        width: 75%;
    }
}
#footer #footer_contact #footer_booking {}
@media screen and (max-width: 480px) {
    #footer #footer_contact #footer_booking {
        display: none;
    }
}
#footer #footer_contact #footer_booking img {
    width: 100%;
}

/**/
#footer #footer_to_pagetop {
    position: absolute;
    right: 10px;
    top: 0;
}
@media screen and (max-width: 480px) {
    #footer #footer_to_pagetop {
        display: none;
    }
}



/*********************************************************************
 * ページごとの設定
 *********************************************************************/

/* トップページ
----------------------------------------------------------*/
body.p_home {}

/* メインイメージ */
body.p_home #home_mainimage {
    width: 980px;
    margin: 0 auto 30px;
    padding: 0 10px;
    box-sizing: border-box;
}
@media screen and (max-width: 480px) {
    body.p_home #home_mainimage {
        width: auto;
        margin: 0;
        padding: 0 0 2px;
        color: #062b4d;
        font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        font-size: 10px;
        font-weight: bold;
    }
}
body.p_home #home_mainimage .mode_pc {}
body.p_home #home_mainimage .mode_sp {}
body.p_home #home_mainimage .mode_sp img {
    width: 100%;
    margin: 0 0 10px;
}
body.p_home #home_mainimage .mode_sp p {
    margin: 0 0 7px;
    text-align: center;
}

/* 導入文のところ */
body.p_home #main #intro {
    margin: 0 0 30px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #intro {
        margin: -5px 0;
        padding: 0 10px;
        font-size: 12px;
    }
}
body.p_home #main #intro img {}
@media screen and (max-width: 480px) {
    body.p_home #main #intro img {
        float: right;
        width: 35%;
        margin: 0 0 10px 20px;
    }
}

/* メインメニュー */
body.p_home #main #menu {
    margin: 0 0 30px;
    background: #DCF1FC;
    background: -ms-linear-gradient(#DCF1FC, #E7EEF4);
    background: linear-gradient(#DCF1FC, #E7EEF4);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 480px) {
    body.p_home #main #menu {
        margin: 0 0 10px;
    }
}
body.p_home #main #menu h2 {
    margin: 0;
    padding: 13px 10px 5px;

    color: #234395;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 25px;
    text-align: center;
    text-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
    line-height: 1.2;
}
@media screen and (max-width: 480px) {
    body.p_home #main #menu h2 {
        padding: 22px 10px 0;
        background-size: 70px auto;
        font-size: 12px;
        font-weight: bold;
    }
}
body.p_home #main #menu ul {
    margin: -5px 0 0;
    padding: 10px 10px 0;
    box-sizing: border-box;
}
@media screen and (max-width: 480px) {
    body.p_home #main #menu ul {
        padding: 10px 10px 1px;
    }
}
body.p_home #main #menu ul li {
    float: left;
    width: 215px;
    margin: 0 10px 10px 0;
    padding: 0;
    border-radius: 3px;
    background: #ffffff none;
}
@media screen and (max-width: 480px) {
    body.p_home #main #menu ul li {
        float: none;
        width: auto;
        margin: 0 0 10px;
    }
}
body.p_home #main #menu ul li:nth-child(3n) {
    margin-right: 0;
}
body.p_home #main #menu ul li a {
    display: block;
    color: #333333;
    text-decoration: none;
}
@media screen and (max-width: 480px) {
    body.p_home #main #menu ul li a {
        display: table;
        width: 100%;
    }
}
body.p_home #main #menu ul li a:hover {
    opacity: .7;
}
body.p_home #main #menu ul li a .title {
    display: block;
    padding: 6px 10px 118px;
    box-sizing: border-box;
    background-position: left bottom;
    background-repeat: no-repeat;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: bold;
    text-align: center;
}
@media screen and (max-width: 480px) {
    body.p_home #main #menu ul li a .title {
        display: table-cell;
        width: 100%;
        height: 62px;
        padding: 5px 5px 5px 130px;
        background-position: 0 center;
        background-size: 120px 100%;
        border-radius: 3px 0 0 3px;
        text-align: left;
        vertical-align: middle;
    }
}
body.p_home #main #menu ul li.item01 a .title { background-image: url("/img/top-lead01.jpg"); }
body.p_home #main #menu ul li.item02 a .title { background-image: url("/img/top-lead02.jpg"); }
body.p_home #main #menu ul li.item03 a .title { background-image: url("/img/top-lead03.jpg"); }
body.p_home #main #menu ul li.item04 a .title { background-image: url("/img/top-lead04.jpg"); }
body.p_home #main #menu ul li.item05 a .title { background-image: url("/img/top-lead05.jpg"); }
body.p_home #main #menu ul li.item06 a .title { background-image: url("/img/top-lead06.jpg"); }
body.p_home #main #menu ul li a .detail {
    display: block;
    padding: 10px 10px 8px;
    box-sizing: border-box;
    font-size: 11px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #menu ul li a .detail {
        display: none;
    }
}
body.p_home #main #menu ul li a .more {
    display: block;
    padding: 7px 10px 6px;
    border-radius: 0 0 2px 2px;
    background: #657bb4;
    background: -ms-linear-gradient(#657bb4, #234395);
    background: linear-gradient(#657bb4, #234395);
    color: #ffffff;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    text-align: center;
    text-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 480px) {
    body.p_home #main #menu ul li a .more {
        display: none;
    }
}
body.p_home #main #menu ul li a .more span {
    padding: 0 0 0 10px;
    background: url("../img/icon_arrow_right_white01.png") 0 0.25em no-repeat;
}

/* 夫婦カウンセリング・サービスについて */
body.p_home #main #service {
    margin: 0 0 20px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #service {
        margin: 0 0 2px;
        padding: 0 10px;
    }
}
body.p_home #main #service h2 {
    margin: 0 0 15px;
    background: url("../../img/home_service_bg01.png") 0 5px no-repeat;
    color: #942343;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 22px;
    text-align: center;
}
@media screen and (max-width: 480px) {
    body.p_home #main #service h2 {
        margin: 0 0 5px;
        background: none;
        font-size: 12px;
        font-weight: bold;
    }
}
body.p_home #main #service ul {
    margin: 0;
}
body.p_home #main #service ul li {
    display: table;
    float: left;
    width: 337px;
    margin: 0 10px 10px 0;
    padding: 0;
    border-radius: 3px;
    box-sizing: border-box;
    box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
    background: #fbf8f3 url("../img/body_bg01.jpg");
}
@media screen and (max-width: 480px) {
    body.p_home #main #service ul li {
        display: block;
        width: 48.5%;
        margin: 0 3% 8px 0;
        font-size: 12px;
    }
}
body.p_home #main #service ul li:nth-child(2n) {
    margin-right: 0;
}
body.p_home #main #service ul li a {
    display: table-cell;
    height: 110px;
    padding: 10px 10px 10px 145px;
    box-sizing: border-box;
    background: none 10px 50% no-repeat;
    color: #333333;
    text-decoration: none;
    vertical-align: middle;
}
@media screen and (max-width: 480px) {
    body.p_home #main #service ul li a {
        display: table;
        width: 100%;
        height: 50px;
        padding: 5px 5px 5px 66px;
        background: none 5px 50% no-repeat;
        background-size: 56px auto;
        line-height: 1.4;
    }
}
body.p_home #main #service ul li.item01 a { background-image: url("/img/topic-lead01.jpg"); }
body.p_home #main #service ul li.item02 a { background-image: url("/img/topic-lead06.jpg"); }
body.p_home #main #service ul li.item03 a { background-image: url("/img/topic-lead03.jpg"); }
body.p_home #main #service ul li.item04 a { background-image: url("/img/topic-lead04.jpg"); }
body.p_home #main #service ul li.item05 a { background-image: url("/img/topic-lead05.jpg"); }
body.p_home #main #service ul li.item06 a { background-image: url("/img/topic-lead02.jpg"); }
body.p_home #main #service ul li a:hover {
    opacity: .7;
}
body.p_home #main #service ul li a .title {
    display: block;
}
@media screen and (max-width: 480px) {
    body.p_home #main #service ul li a .title {
        display: table-cell;
        vertical-align: middle;
    }
}
body.p_home #main #service ul li a .detail {
    display: block;
    font-size: 11px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #service ul li a .detail {
        display: none;
    }
}

/* ご予約はお電話（スマホのみ） */
body.p_home #main #tel {
    display: none;
}
@media screen and (max-width: 480px) {
    body.p_home #main #tel {
        display: block;
        margin: 0 0 10px;
        padding: 0 10px;
    }
}
body.p_home #main #tel img {
    width: 100%;
    margin: 0;
    padding: 0;
    border: none 0;
    box-shadow: none;
}

/* 桜木町相談室について */
body.p_home #main #room {
    margin: 0 0 30px;
    padding: 10px;
    background: #e7eef4 url("../../img/home_room_bg01.jpg");
}
@media screen and (max-width: 480px) {
    body.p_home #main #room {
        margin: 0 0 20px;
    }
}
body.p_home #main #room h2 {
    margin: 0 0 5px;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 22px;
    text-align: center;
}
@media screen and (max-width: 480px) {
    body.p_home #main #room h2 {
        font-size: 12px;
        font-weight: bold;
    }
}
body.p_home #main #room .row {
    display: table;
    width: 100%;
    font-size: 12px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #room .row {
        display: block;
    }
}
body.p_home #main #room .row .col {}
body.p_home #main #room .row .col.left {
    display: table-cell;
    width: 204px;
    padding: 0 10px 0 0;
    box-sizing: border-box;
    vertical-align: top;
}
@media screen and (max-width: 480px) {
    body.p_home #main #room .row .col.left {
        display: block;
        width: auto;
        margin: 0 0 10px;
        padding: 0;
    }
}
body.p_home #main #room .row .col.left a {}
body.p_home #main #room .row .col.left img {
    margin: 0;
}
@media screen and (max-width: 480px) {
    body.p_home #main #room .row .col.left img {
        width: 100%;
    }
}
body.p_home #main #room .row .col.right {
    display: table-cell;
    vertical-align: top;
}
@media screen and (max-width: 480px) {
    body.p_home #main #room .row .col.right {
        display: block;
        width: auto;
    }
}
body.p_home #main #room .row .col.right p {}
body.p_home #main #room .row .col.right .text {
    margin: 0 0 9px;
    line-height: 1.5;
}
@media screen and (max-width: 480px) {
    body.p_home #main #room .row .col.right .text {
        margin: 0;
        font-size: 10px;
    }
}
body.p_home #main #room .row .col.right .image {
    margin: 0;
}
@media screen and (max-width: 480px) {
    body.p_home #main #room .row .col.right .image {
        display: none;
    }
}
body.p_home #main #room .row .col.right .image img {
    margin: 0 0 0 10px;
}
body.p_home #main #room .row .col.right .image img:first-child {
    margin-left: 0;
}

/* カウンセリングの流れ */
body.p_home #main #flow {
    margin: 0 0 30px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #flow {
        display: none;
    }
}
body.p_home #main #flow h2 {
    margin: 0 0 2px;
    background: url("../../img/home_flow_bg01.png") 50% 5px no-repeat;
    color: #942343;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 22px;
    text-align: center;
}
body.p_home #main #flow .lead {
    margin: 0 0 10px;
    color: #942343;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: bold;
    text-align: center;
}
body.p_home #main #flow ul {
    margin: 0 0 10px;
}
body.p_home #main #flow ul li {
    float: left;
    width: 168px;
    margin: 0 4px 0 0;
    padding: 0;
    border: solid 1px #dddddd;
    border-radius: 3px;
    box-sizing: border-box;
    background: none;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
body.p_home #main #flow ul li:last-child {
    margin-right: 0;
}
body.p_home #main #flow ul li .title {
    display: block;
    padding: 2px 6px 2px 10px;
    border-radius: 2px 2px 0 0;
    background: #DCF1FC;
    background: -ms-linear-gradient(#DCF1FC, #DCF1FC);
    background: linear-gradient(#DCF1FC, #99CCFF);
    color: #000066;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 1px;
}
body.p_home #main #flow ul li .title span {
    font-size: 24px;
}
body.p_home #main #flow ul li .detail {
    display: block;
    padding: 86px 6px 6px;
    background-repeat: no-repeat;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.4;
}
body.p_home #main #flow ul li.item01 .detail { background-image: url("../../img/home_flow_img01_01.jpg"); }
body.p_home #main #flow ul li.item02 .detail { background-image: url("../../img/home_flow_img01_02.jpg"); }
body.p_home #main #flow ul li.item03 .detail { background-image: url("../../img/home_flow_img01_03.jpg"); }
body.p_home #main #flow ul li.item04 .detail { background-image: url("../../img/home_flow_img01_04.jpg"); }
body.p_home #main #flow .note {
    margin: 0;
    font-size: 12px;
}

/* ご相談者の声 */
body.p_home #main #voice {
    float: left;
    width: 333px;
    margin: 0 0 30px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #voice {
        float: none;
        width: auto;
        margin: 0 0 20px;
    }
}
body.p_home #main #voice h2 {
    margin: 0 0 5px;
    padding: 30px 0 0;
    background: url("../../img/_xxx01.png") center top no-repeat;
    color: #942343;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 18px;
    text-align: center;
}
@media screen and (max-width: 480px) {
    body.p_home #main #voice h2 {
        background-size: 50% auto;
        font-size: 12px;
        font-weight: bold;
    }
}
body.p_home #main #voice .cards {
    border-radius: 3px;
    box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
    background: #fbf8f3 url("../img/body_bg01.jpg");
}
@media screen and (max-width: 480px) {
    body.p_home #main #voice .cards {
        border-top: solid 1px #d6cacb;
        border-bottom: solid 1px #d6cacb;
        border-radius: 0;
        box-shadow: none;
    }
}
body.p_home #main #voice .cards article {
    padding: 15px;
    border-top: dotted 1px #e4dadb;
}
@media screen and (max-width: 480px) {
    body.p_home #main #voice .cards article {
        padding: 15px 20px;
        border-top: solid 1px #d6cacb;
    }
}
body.p_home #main #voice .cards article:first-child {
    border-top: none 0;
}
body.p_home #main #voice .cards article h3 {
    margin: 0 0 10px;
    padding: 0;
    border-bottom: none 0;
    font-size: 14px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #voice .cards article h3 {
        font-size: 12px;
    }
}
body.p_home #main #voice .cards article .date {
    margin: 0;
    font-size: 11px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #voice .cards article .date {
        font-size: 10px;
    }
}
body.p_home #main #voice .cards article .detail {
    margin: 0;
    font-size: 12px;
}

/* facebook */
body.p_home #main #facebook {
    float: right;
    width: 332px;
    margin: 0 0 30px;
}
@media screen and (max-width: 480px) {
    body.p_home #main #facebook {
        display: none;
    }
}
body.p_home #main #facebook h2 {
    margin: 0 0 7px;
    padding: 30px 0 0;
    background: url("../../img/_xxx01.png") center top no-repeat;
    color: #942343;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 18px;
    text-align: center;
}

/* Googleマップレスポンシブ */
.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


/*********************************************************************
 * 汎用クラス
 *********************************************************************/

/* レイアウト関連 */
.fl_l { float: left !important; }
.fl_r { float: right !important; }
.cl { clear: both !important; }
.cl_l { clear: left !important; }
.cl_r { clear: right !important; }

/* 幅・高さ */
.w_5p { width: 5% !important; }
.w_10p { width: 10% !important; }
.w_15p { width: 15% !important; }
.w_20p { width: 20% !important; }
.w_25p { width: 25% !important; }
.w_30p { width: 30% !important; }
.w_35p { width: 35% !important; }
.w_40p { width: 40% !important; }
.w_45p { width: 45% !important; }
.w_50p { width: 50% !important; }
.w_55p { width: 55% !important; }
.w_60p { width: 60% !important; }
.w_65p { width: 65% !important; }
.w_70p { width: 70% !important; }
.w_75p { width: 75% !important; }
.w_80p { width: 80% !important; }
.w_85p { width: 85% !important; }
.w_90p { width: 90% !important; }
.w_95p { width: 95% !important; }
.w_100p { width: 100% !important; }

/* マージン */
.m_0 { margin: 0 !important; }
.m_t0 { margin-top: 0 !important; }
.m_t5 { margin-top: 5px !important; }
.m_t10 { margin-top: 10px !important; }
.m_t15 { margin-top: 15px !important; }
.m_t20 { margin-top: 20px !important; }
.m_t25 { margin-top: 25px !important; }
.m_t30 { margin-top: 30px !important; }
.m_t35 { margin-top: 35px !important; }
.m_t40 { margin-top: 40px !important; }
.m_t45 { margin-top: 45px !important; }
.m_t50 { margin-top: 50px !important; }
.m_t55 { margin-top: 55px !important; }
.m_t60 { margin-top: 60px !important; }
.m_t65 { margin-top: 65px !important; }
.m_t70 { margin-top: 70px !important; }
.m_t75 { margin-top: 75px !important; }
.m_t80 { margin-top: 80px !important; }
.m_t85 { margin-top: 85px !important; }
.m_t90 { margin-top: 90px !important; }
.m_t95 { margin-top: 95px !important; }
.m_t100 { margin-top: 100px !important; }
.m_r0 { margin-right: 0 !important; }
.m_r5 { margin-right: 5px !important; }
.m_r10 { margin-right: 10px !important; }
.m_r15 { margin-right: 15px !important; }
.m_r20 { margin-right: 20px !important; }
.m_r25 { margin-right: 25px !important; }
.m_r30 { margin-right: 30px !important; }
.m_r35 { margin-right: 35px !important; }
.m_r40 { margin-right: 40px !important; }
.m_r45 { margin-right: 45px !important; }
.m_r50 { margin-right: 50px !important; }
.m_r55 { margin-right: 55px !important; }
.m_r60 { margin-right: 60px !important; }
.m_r65 { margin-right: 65px !important; }
.m_r70 { margin-right: 70px !important; }
.m_r75 { margin-right: 75px !important; }
.m_r80 { margin-right: 80px !important; }
.m_r85 { margin-right: 85px !important; }
.m_r90 { margin-right: 90px !important; }
.m_r95 { margin-right: 95px !important; }
.m_r100 { margin-right: 100px !important; }
.m_b0 { margin-bottom: 0 !important; }
.m_b5 { margin-bottom: 5px !important; }
.m_b10 { margin-bottom: 10px !important; }
.m_b15 { margin-bottom: 15px !important; }
.m_b20 { margin-bottom: 20px !important; }
.m_b25 { margin-bottom: 25px !important; }
.m_b30 { margin-bottom: 30px !important; }
.m_b35 { margin-bottom: 35px !important; }
.m_b40 { margin-bottom: 40px !important; }
.m_b45 { margin-bottom: 45px !important; }
.m_b50 { margin-bottom: 50px !important; }
.m_b55 { margin-bottom: 55px !important; }
.m_b60 { margin-bottom: 60px !important; }
.m_b65 { margin-bottom: 65px !important; }
.m_b70 { margin-bottom: 70px !important; }
.m_b75 { margin-bottom: 75px !important; }
.m_b80 { margin-bottom: 80px !important; }
.m_b85 { margin-bottom: 85px !important; }
.m_b90 { margin-bottom: 90px !important; }
.m_b95 { margin-bottom: 95px !important; }
.m_b100 { margin-bottom: 100px !important; }
.m_l0 { margin-left: 0 !important; }
.m_l5 { margin-left: 5px !important; }
.m_l10 { margin-left: 10px !important; }
.m_l15 { margin-left: 15px !important; }
.m_l20 { margin-left: 20px !important; }
.m_l25 { margin-left: 25px !important; }
.m_l30 { margin-left: 30px !important; }
.m_l35 { margin-left: 35px !important; }
.m_l40 { margin-left: 40px !important; }
.m_l45 { margin-left: 45px !important; }
.m_l50 { margin-left: 50px !important; }
.m_l55 { margin-left: 55px !important; }
.m_l60 { margin-left: 60px !important; }
.m_l65 { margin-left: 65px !important; }
.m_l70 { margin-left: 70px !important; }
.m_l75 { margin-left: 75px !important; }
.m_l80 { margin-left: 80px !important; }
.m_l85 { margin-left: 85px !important; }
.m_l90 { margin-left: 90px !important; }
.m_l95 { margin-left: 95px !important; }
.m_l100 { margin-left: 100px !important; }

/* パディング */
.p_0 { padding: 0 !important; }
.p_t0 { padding-top: 0 !important; }
.p_t5 { padding-top: 5px !important; }
.p_t10 { padding-top: 10px !important; }
.p_t15 { padding-top: 15px !important; }
.p_t20 { padding-top: 20px !important; }
.p_t25 { padding-top: 25px !important; }
.p_t30 { padding-top: 30px !important; }
.p_t35 { padding-top: 35px !important; }
.p_t40 { padding-top: 40px !important; }
.p_t45 { padding-top: 45px !important; }
.p_t50 { padding-top: 50px !important; }
.p_t55 { padding-top: 55px !important; }
.p_t60 { padding-top: 60px !important; }
.p_t65 { padding-top: 65px !important; }
.p_t70 { padding-top: 70px !important; }
.p_t75 { padding-top: 75px !important; }
.p_t80 { padding-top: 80px !important; }
.p_t85 { padding-top: 85px !important; }
.p_t90 { padding-top: 90px !important; }
.p_t95 { padding-top: 95px !important; }
.p_t100 { padding-top: 100px !important; }
.p_r0 { padding-right: 0 !important; }
.p_r5 { padding-right: 5px !important; }
.p_r10 { padding-right: 10px !important; }
.p_r15 { padding-right: 15px !important; }
.p_r20 { padding-right: 20px !important; }
.p_r25 { padding-right: 25px !important; }
.p_r30 { padding-right: 30px !important; }
.p_r35 { padding-right: 35px !important; }
.p_r40 { padding-right: 40px !important; }
.p_r45 { padding-right: 45px !important; }
.p_r50 { padding-right: 50px !important; }
.p_r55 { padding-right: 55px !important; }
.p_r60 { padding-right: 60px !important; }
.p_r65 { padding-right: 65px !important; }
.p_r70 { padding-right: 70px !important; }
.p_r75 { padding-right: 75px !important; }
.p_r80 { padding-right: 80px !important; }
.p_r85 { padding-right: 85px !important; }
.p_r90 { padding-right: 90px !important; }
.p_r95 { padding-right: 95px !important; }
.p_r100 { padding-right: 100px !important; }
.p_b0 { padding-bottom: 0 !important; }
.p_b5 { padding-bottom: 5px !important; }
.p_b10 { padding-bottom: 10px !important; }
.p_b15 { padding-bottom: 15px !important; }
.p_b20 { padding-bottom: 20px !important; }
.p_b25 { padding-bottom: 25px !important; }
.p_b30 { padding-bottom: 30px !important; }
.p_b35 { padding-bottom: 35px !important; }
.p_b40 { padding-bottom: 40px !important; }
.p_b45 { padding-bottom: 45px !important; }
.p_b50 { padding-bottom: 50px !important; }
.p_b55 { padding-bottom: 55px !important; }
.p_b60 { padding-bottom: 60px !important; }
.p_b65 { padding-bottom: 65px !important; }
.p_b70 { padding-bottom: 70px !important; }
.p_b75 { padding-bottom: 75px !important; }
.p_b80 { padding-bottom: 80px !important; }
.p_b85 { padding-bottom: 85px !important; }
.p_b90 { padding-bottom: 90px !important; }
.p_b95 { padding-bottom: 95px !important; }
.p_b100 { padding-bottom: 100px !important; }
.p_l0 { padding-left: 0 !important; }
.p_l5 { padding-left: 5px !important; }
.p_l10 { padding-left: 10px !important; }
.p_l15 { padding-left: 15px !important; }
.p_l20 { padding-left: 20px !important; }
.p_l25 { padding-left: 25px !important; }
.p_l30 { padding-left: 30px !important; }
.p_l35 { padding-left: 35px !important; }
.p_l40 { padding-left: 40px !important; }
.p_l45 { padding-left: 45px !important; }
.p_l50 { padding-left: 50px !important; }
.p_l55 { padding-left: 55px !important; }
.p_l60 { padding-left: 60px !important; }
.p_l65 { padding-left: 65px !important; }
.p_l70 { padding-left: 70px !important; }
.p_l75 { padding-left: 75px !important; }
.p_l80 { padding-left: 80px !important; }
.p_l85 { padding-left: 85px !important; }
.p_l90 { padding-left: 90px !important; }
.p_l95 { padding-left: 95px !important; }
.p_l100 { padding-left: 100px !important; }

/* フォント・テキスト */
@media screen and (min-width: 481px) {
    .fs_xs { font-size: 10px !important; }
    .fs_s { font-size: 12px !important; }
    .fs_m { font-size: 14px !important; }
    .fs_l { font-size: 16px !important; }
    .fs_xl { font-size: 18px !important; }
}
@media screen and (max-width: 480px) {
    .fs_xs { font-size: 10px !important; }
    .fs_s { font-size: 11px !important; }
    .fs_m { font-size: 12px !important; }
    .fs_l { font-size: 14px !important; }
    .fs_xl { font-size: 16px !important; }
}

.fw_n { font-weight: normal !important; }
.fw_b { font-weight: bold !important; }

.td_u { text-decoration: underline !important; }

.ta_l { text-align: left !important; }
.ta_c { text-align: center !important; }
.ta_r { text-align: right !important; }

.va_t { vertical-align: top !important; }
.va_m { vertical-align: middle !important; }
.va_b { vertical-align: bottom !important; }

.ws_normal { white-space: normal !important; }
.ws_nowrap { white-space: nowrap !important; }

.lh_10 { line-height: 1.0 !important; }
.lh_11 { line-height: 1.1 !important; }
.lh_12 { line-height: 1.2 !important; }
.lh_13 { line-height: 1.3 !important; }
.lh_14 { line-height: 1.4 !important; }
.lh_15 { line-height: 1.5 !important; }
.lh_16 { line-height: 1.6 !important; }
.lh_17 { line-height: 1.7 !important; }
.lh_18 { line-height: 1.8 !important; }
.lh_19 { line-height: 1.9 !important; }
.lh_20 { line-height: 2.0 !important; }




/* 2016.10.28追記 養成講座 */
.blue_bg {
	background-color: #B3D4FC;
	vertical-align: 0.3em;
	font-weight: bold;
	padding: 0.5em;
	border-color: #B3D4FC;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
}

/* 20180516 パンくず用レイアウト　トータル横浜より移植、および修正  */



#historylink {
	padding: 0;
	margin-left: 0;
}
#historylink ul {
	list-style: none;
	margin-left: 0;
}
#historylink ul li {
	float: left;
	font-size: 0.9em;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
}
#historylink ul li a {
	background: url(../../image/style_line_historylink.gif) right center no-repeat;
	padding-right: 1.7em;
	margin-right: 0em;
}


/* 2020.3.3追記 コンポーネント追加（画像2並び） */
.img2_boxarea {
  overflow:hidden;
  margin:0 0 0 -2.5%;
}
.img2_boxarea a{
  text-decoration:none;
  color:#333333;
}
.img2_boxarea div{
  float:left;
  width:47.5%;
  padding:0 0 2.5% 2.5%;
}
.img2_boxarea div img{
  width:100%;
}
.img_boxarea_ti{
  font-weight:bold;
  text-align:center;
  margin:0 0 10px 0!important;
}


/* 2020.3.3追記 コンポーネント追加（画像3並び） */
.img3_boxarea {
  overflow:hidden;
  margin:0 0 0 -2.5%;
}
.img3_boxarea a{
  text-decoration:none;
  color:#333333;
}
.img3_boxarea div{
  float:left;
  width:30.8%;
  padding:0 0 2.5% 2.5%;
}
.img3_boxarea div img{
  width:100%;
}
@media screen and (max-width: 480px) {

  .img3_boxarea div{
    width:47.5%;
  }



}
